You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
21 lines
428 B
21 lines
428 B
3 years ago
|
#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
|