#ifndef __VIRTUAL_MACHINE_H #define __VIRTUAL_MACHINE_H #include "Windas.h" #include "XedWrap.h" typedef struct _VM_DATA { PVOID RegisterFile[32]; }VM_DATA, *PVM_DATA; /* * VmEnter: * Move all x86 8 byte registers into storage inside of VM_DATA structure. * Move address of VM_DATA structure into rcx * Move virtual instruction pointer into rdx */ PUCHAR VmEmitVmEnter(PULONG Size); PUCHAR VmEmitVmExit(PULONG Size); #endif