| 107 | |
| 108 | #ifdef _KERNEL_MODE |
| 109 | __forceinline PVOID LocateShellCode(PVOID func, size_t size = 500) |
| 110 | { |
| 111 | void* addr = ExAllocatePoolWithTag(NonPagedPool, size, (ULONG)"File"); |
| 112 | if (!addr) |
| 113 | return nullptr; |
| 114 | return memcpy(addr, func, size); |
| 115 | } |
| 116 | #else |
| 117 | __forceinline PVOID LocateShellCode(PVOID func, size_t size = SHELLCODE_GENERATOR_SIZE) |
| 118 | { |