27 #define TRAMP_X64_STOP 11 28 #define TRAMP_X64_VMCALL1 1 29 #define TRAMP_X64_VMCALL2 11 46 #define TRAMP_X86_STOP 11 47 #define TRAMP_X86_VMCALL1 1 48 #define TRAMP_X86_VMCALL2 11 50 #define TRAMPOLINE_MAX_SIZE \ 51 (sizeof(gTrampolineAgentx64) > sizeof(gTrampolineAgentx86)) ? sizeof(gTrampolineAgentx64) : sizeof(gTrampolineAgentx86) 58 0x50, 0x51, 0x52, 0x53, 0x55, 0x56, 0x57, 0x41, 0x50, 0x41, 0x51, 0x41, 0x52, 0x41, 0x53, 0x41,
59 0x54, 0x41, 0x55, 0x41, 0x56, 0x41, 0x57, 0x4d, 0x31, 0xf6, 0x48, 0xf7, 0xc4, 0x0f, 0x00, 0x00,
60 0x00, 0x74, 0x09, 0x41, 0xbe, 0x08, 0x00, 0x00, 0x00, 0x4c, 0x29, 0xf4, 0x31, 0xc9, 0x8b, 0x15,
61 0x14, 0x01, 0x00, 0x00, 0x44, 0x8b, 0x05, 0x11, 0x01, 0x00, 0x00, 0x48, 0x83, 0xec, 0x20, 0xff,
62 0x15, 0xeb, 0x00, 0x00, 0x00, 0x48, 0x83, 0xc4, 0x20, 0x4c, 0x01, 0xf4, 0x48, 0x31, 0xf6, 0x48,
63 0x85, 0xc0, 0x75, 0x05, 0xbe, 0x9a, 0x00, 0x00, 0xc0, 0x48, 0x89, 0xc1, 0x48, 0x8b, 0x15, 0xf5,
64 0x00, 0x00, 0x00, 0xcc, 0x4c, 0x29, 0xf4, 0x49, 0x89, 0xcf, 0x4d, 0x89, 0xfd, 0x44, 0x8b, 0x05,
65 0xdc, 0x00, 0x00, 0x00, 0x4d, 0x01, 0xc7, 0x48, 0x83, 0xec, 0x08, 0x48, 0x89, 0xe1, 0xba, 0x00,
66 0x00, 0x1f, 0x00, 0x4d, 0x31, 0xc0, 0x4d, 0x31, 0xc9, 0x41, 0x57, 0x48, 0x8d, 0x05, 0x3c, 0x00,
67 0x00, 0x00, 0x50, 0x6a, 0x00, 0x48, 0x83, 0xec, 0x20, 0xff, 0x15, 0xa1, 0x00, 0x00, 0x00, 0x48,
68 0x83, 0xc4, 0x40, 0x85, 0xc0, 0x79, 0x19, 0x50, 0x48, 0x83, 0xec, 0x28, 0x4c, 0x89, 0xe9, 0x8b,
69 0x15, 0x97, 0x00, 0x00, 0x00, 0xff, 0x15, 0x7d, 0x00, 0x00, 0x00, 0x48, 0x83, 0xc4, 0x28, 0x58,
70 0x4c, 0x01, 0xf4, 0x48, 0x89, 0xc1, 0x48, 0x8b, 0x15, 0x93, 0x00, 0x00, 0x00, 0xcc, 0xf3, 0x90,
71 0x83, 0x3d, 0x7d, 0x00, 0x00, 0x00, 0x00, 0x74, 0xf5, 0x51, 0x48, 0x83, 0xec, 0x20, 0xff, 0xd1,
72 0x48, 0x8b, 0x4c, 0x24, 0x20, 0x57, 0x48, 0x89, 0xcf, 0x8b, 0x0d, 0x61, 0x00, 0x00, 0x00, 0x48,
73 0x29, 0xcf, 0x49, 0x89, 0xf8, 0x8b, 0x0d, 0x4d, 0x00, 0x00, 0x00, 0x31, 0xc0, 0xf3, 0xaa, 0x4c,
74 0x89, 0xc1, 0x5f, 0x8b, 0x15, 0x43, 0x00, 0x00, 0x00, 0xff, 0x15, 0x29, 0x00, 0x00, 0x00, 0x48,
75 0x83, 0xc4, 0x28, 0x48, 0x8b, 0x15, 0x4e, 0x00, 0x00, 0x00, 0xcc, 0xff, 0x25, 0x4f, 0x00, 0x00,
76 0x00, 0x90, 0x90, 0x90, 0x90, 0x90, 0x90, 0x90, 0x90, 0x90, 0x90, 0x90, 0x90, 0x90, 0x90, 0x90,
77 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
78 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
79 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
80 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
81 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
84 #define OFFSET_WIN_X64_ALLOC 0x130 85 #define OFFSET_WIN_X64_FREE 0x138 86 #define OFFSET_WIN_X64_THREAD 0x140 87 #define OFFSET_WIN_X64_AGENT_SIZE 0x148 88 #define OFFSET_WIN_X64_AGENT_TAG 0x14C 89 #define OFFSET_WIN_X64_AGENT_EP 0x150 90 #define OFFSET_WIN_X64_SEMAPHORE 0x154 91 #define OFFSET_WIN_X64_TOKEN1 0x158 92 #define OFFSET_WIN_X64_TOKEN2 0x160 93 #define OFFSET_WIN_X64_TOKEN3 0x168 94 #define OFFSET_WIN_X64_JUMPBACK 0x170 103 0x60, 0xbd, 0xbd, 0xbd, 0xbd, 0xbd, 0x90, 0x90, 0x90, 0x90, 0x90, 0x90, 0x90, 0xff, 0xb5, 0x00,
104 0x01, 0x00, 0x00, 0xff, 0xb5, 0xfc, 0x00, 0x00, 0x00, 0x6a, 0x00, 0xff, 0x95, 0xf0, 0x00, 0x00,
105 0x00, 0x31, 0xf6, 0x85, 0xc0, 0x75, 0x05, 0xbe, 0x9a, 0x00, 0x00, 0xc0, 0x89, 0xc1, 0x8b, 0x95,
106 0x0c, 0x01, 0x00, 0x00, 0xcc, 0x89, 0xc8, 0x89, 0xc6, 0x8b, 0x9d, 0x04, 0x01, 0x00, 0x00, 0x01,
107 0xd8, 0x83, 0xec, 0x08, 0x50, 0x8d, 0x8d, 0x81, 0x00, 0x00, 0x00, 0x51, 0x6a, 0x00, 0x6a, 0x00,
108 0x6a, 0x00, 0x68, 0x00, 0x00, 0x1f, 0x00, 0x8d, 0x4c, 0x24, 0x18, 0x51, 0xff, 0x95, 0xf8, 0x00,
109 0x00, 0x00, 0x83, 0xc4, 0x08, 0x85, 0xc0, 0x79, 0x0f, 0x50, 0xff, 0xb5, 0x00, 0x01, 0x00, 0x00,
110 0x56, 0xff, 0x95, 0xf4, 0x00, 0x00, 0x00, 0x58, 0x89, 0xc1, 0x8b, 0x95, 0x10, 0x01, 0x00, 0x00,
111 0xcc, 0x60, 0xe8, 0x00, 0x00, 0x00, 0x00, 0x5d, 0x81, 0xed, 0x87, 0x00, 0x00, 0x00, 0xf3, 0x90,
112 0x83, 0xbd, 0x08, 0x01, 0x00, 0x00, 0x00, 0x74, 0xf5, 0x8b, 0x4c, 0x24, 0x24, 0x51, 0x83, 0xec,
113 0x08, 0xff, 0xd1, 0x8b, 0x0c, 0x24, 0x89, 0xcf, 0x2b, 0xbd, 0x04, 0x01, 0x00, 0x00, 0x89, 0xfe,
114 0x8b, 0x8d, 0xfc, 0x00, 0x00, 0x00, 0x31, 0xc0, 0xf3, 0xaa, 0xff, 0xb5, 0x00, 0x01, 0x00, 0x00,
115 0x56, 0xff, 0x95, 0xf4, 0x00, 0x00, 0x00, 0x83, 0xc4, 0x04, 0x8b, 0x95, 0x14, 0x01, 0x00, 0x00,
116 0xcc, 0x8b, 0x85, 0x18, 0x01, 0x00, 0x00, 0x89, 0x44, 0x24, 0x1c, 0x61, 0xff, 0xe0, 0x90, 0x90,
117 0x90, 0x90, 0x90, 0x90, 0x90, 0x90, 0x90, 0x90, 0x90, 0x90, 0x90, 0x90, 0x90, 0x90, 0x90, 0x90,
118 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
119 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
120 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
123 #define OFFSET_WIN_X86_RELOC 0x002 124 #define OFFSET_WIN_X86_ALLOC 0xF0 125 #define OFFSET_WIN_X86_FREE 0xF4 126 #define OFFSET_WIN_X86_THREAD 0xF8 127 #define OFFSET_WIN_X86_AGENT_SIZE 0xFC 128 #define OFFSET_WIN_X86_AGENT_TAG 0x100 129 #define OFFSET_WIN_X86_AGENT_EP 0x104 130 #define OFFSET_WIN_X86_SEMAPHORE 0x108 131 #define OFFSET_WIN_X86_TOKEN1 0x10C 132 #define OFFSET_WIN_X86_TOKEN2 0x110 133 #define OFFSET_WIN_X86_TOKEN3 0x114 134 #define OFFSET_WIN_X86_JUMPBACK 0x118 137 #endif // _WINSTUBS_H_
BYTE gWindowsBootstrapAgentx64[0x180]
BYTE gTrampolineAgentx64[15]
BYTE gWindowsBootstrapAgentx86[0x120]
BYTE gTrampolineAgentx86[15]