VMTClientMode.Initialise((DWORD*)Interfaces::ClientMode); // This Crashes It
class IClientModeShared
{
public:
};
DWORD* ppClientMode;
ppClientMode = nullptr; // before "scripts/vgui_screens.txt"
DWORD p = Utilities::Memory::FindPattern("client.dll", (BYTE*)"\xC7\x05\x00\x00\x00\x00\x00\x00\x00\x00\xA8\x01\x75\x1A\x83\xC8\x01\xA3\x00\x00\x00\x00\xE8\x00\x00\x00\x00\x68\x00\x00\x00\x00\xE8\x00\x00\x00\x00\x83\xC4\x04\xA1\x00\x00\x00\x00\xB9\x00\x00\x00\x00\x56", "xx????????xxxxxxxx????x????x????x????xxxx????x????x");
if (p)
{
ppClientMode = **(DWORD***)(p + 2);
ClientMode = ppClientMode;
}
clientmode = **(IClientModeShared***)((*(uintptr_t**)client)[10] + 0x5);
DWORD *clientmode;
IClientModeShared *clientmode;

DWORD* ppClientMode;
ppClientMode = nullptr; // before "scripts/vgui_screens.txt"
DWORD p = Utilities::Memory::FindPattern("client.dll", (BYTE*)"\xC7\x05\x00\x00\x00\x00\x00\x00\x00\x00\xA8\x01\x75\x1A\x83\xC8\x01\xA3\x00\x00\x00\x00\xE8\x00\x00\x00\x00\x68\x00\x00\x00\x00\xE8\x00\x00\x00\x00\x83\xC4\x04\xA1\x00\x00\x00\x00\xB9\x00\x00\x00\x00\x56", "xx????????xxxxxxxx????x????x????x????xxxx????x????x");
if (p)
{
ppClientMode = **(DWORD***)(p + 2);
ClientMode = ppClientMode;
}
ClientMode = **(DWORD***)((*(uintptr_t**)client)[10] + 0x5);
VMTClientMode.bInitialize((PDWORD*)Interfaces::ClientMode);
VMTClientMode.dwHookMethod((DWORD)&CreateMoveClient_Hooked, 24);
Utilities::Log("CreateMove Hooked");