void* syscall(LPCWSTR module, LPCWSTR name, Args... pee)
{
BYTE yyas{} =
{
0x4C, 0x8B, 0xD1,
0xB8, 0x00, 0x00, 0x00, 0x00,
0x0F, 0x05,
0xC3
};
static BYTE* poop = (BYTE*)VirtualAlloc(NULL, sizeof(yyas), MEM_COMMIT | MEM_RESERVE, PAGE_EXECUTE_READWRITE);
memcpy(poop, yyas, sizeof(yyas));
char* app;
wcstombs(app, name, wcslen(name));
*(DWORD*)(poop + 4) = *(DWORD*)((DWORD*)GetProcAddress(GetModuleHandleW(module), app) + 4);
auto fn = reinterpret_cast<void*(*)(Args...)>(&poop);
return fn(Args...);
}