Advertisement
Guest User

Untitled

a guest
Jun 24th, 2017
59
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. proc VMexit
  2.  
  3.     ;; 2 - save debug controls
  4.     ;; 9 - host address-space size
  5.     ;; 12 - load IA32_PERF_GLOBAL_CTRL
  6.     ;; 15 - исключение на выходе
  7.     ;; 18 - save IA32_PAT
  8.     ;; 19 - load IA32_PAT
  9.     ;; 20 - save IA32_EFER
  10.     ;; 21 - load IA32_EFER
  11.     ;; 22 - save VMX-preemption timer value
  12.  
  13.     ; проверить VMX_SUPPORT
  14.     mov rax, [VMX_SUPPORT]
  15.     and eax, BASE_TRUE
  16.     jnz @F
  17.    
  18.     mov ecx, IA32_VMX_EXIT_CTLS         ; 483h
  19.     jmp Vmexit1
  20.  
  21. @@:
  22.     mov ecx, IA32_VMX_TRUE_EXIT_CTLS    ; 48fh
  23.    
  24. Vmexit1:
  25.     rdmsr
  26.    
  27.     and edx, 300200h
  28.     or eax, edx
  29.     mov dword [vm_mem.ctrl_vm_exit_contr], eax
  30.    
  31.     ;; msr store count
  32.     ;; msr load count
  33.    
  34.     ;; msr store address
  35.     ;; msr load address
  36.    
  37.     ret
  38. endp
  39.  
  40.  
  41. proc VMentry
  42.    
  43.     ;; 2 - load debug controls
  44.     ;; 9 - IA-32e mode guest
  45.     ;; 10 - entry SMM
  46.     ;; 11 - deactivate dual-monitor
  47.     ;; 13 - load IA32_PERF_GLOBAL_CTRL
  48.     ;; 14 - load IA32_PAT
  49.     ;; 15 - load IA32_EFER
  50.  
  51.     ; проверить VMX_SUPPORT
  52.     mov rax, [VMX_SUPPORT]
  53.     and eax, BASE_TRUE
  54.     jnz @F
  55.    
  56.     mov ecx, IA32_VMX_ENTRY_CTLS
  57.    
  58.     jmp VMentry1
  59. @@:
  60.     mov ecx, IA32_VMX_TRUE_ENTRY_CTLS
  61.  
  62. VMentry1:
  63.     rdmsr  
  64.     and edx, 8200h
  65.     or eax, edx
  66.     mov dword [vm_mem.ctrl_vm_entry_contr], eax
  67.    
  68.    
  69.     ;; msr load count
  70.     ;; msr load address
  71.    
  72.     ;; interruption information
  73.    
  74.     ;; exception error
  75.    
  76.     ;; instruction length
  77.  
  78.     ret
  79. endp
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement