#ifndef __MAIN_H #define __MAIN_H #define FetchCall(dwSig) ((dwSig+5)+*(int*)((char*)dwSig+1)) #define ISVALIDMODEL_SIG "\x51\x55\x8B\x6C\x24\x0C\x8B\xC5\x8D\x50\x01\xEB\x03\x8D\x49\x00\x8A\x08\x40\x84\xC9\x75\xF9\x2B\xC2\x83\xF8\x04\x73\x05\x32\xC0\x5D\x59\xC3\x53\x56\x57\x55\xE8\x00\x00\x00\x00\x8B\xD8\xA1\x00\x00\x00\x00\x83\xC4\x04\x33\xFF\x85\xC0" #define ISVALIDMODEL_MASK "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx????xxx????xxxxxxx" #define ISVALIDMODEL_HOOKSIZE 0x06 typedef bool (*IsValidModel_t)(const char*); #define GAMESERVER_SIG "\xB9\x00\x00\x00\x00\xE8\x00\x00\x00\x00\xE8\x00\x00\x00\x00\x5F\x5E\x81\xC4\x00\x00\x00\x00\xC3" #define GAMESERVER_MASK "x????x????x????xxxx????x" #define GAMESERVER_OFFSET 0x01 #define SETCONVAR_SIG "\x55\x56\x57\x8B\x7C\x24\x10\x33\xF6\x39\x77\x1C" #define SETCONVAR_MASK "xxxxxxxxxxxx" #define SETCONVAR_HOOKSIZE 0x07 #define PCALL_SIG "\xE8\x00\x00\x00\x00\x83\xC4\x08\x8D\x54\x24\x14\x52\x6A\x00\x8B\xCF\xC7\x44\x24\x00\x00\x00\x00\x00\xE8\x00\x00\x00\x00" #define PCALL_MASK "x????xxxxxxxxxxxxxxx?????x????" #define PCALL_HOOKSIZE 0x05 #define CLCPROCESS_SIG "\x8B\xC1\x8B\x48\x0C\x8B\x11\x50\xFF\x52\x00\xC3\xCC\xCC\xCC\xCC\x6A\xFF\x68\x00\x00\x00\x00\x64\xA1\x00\x00\x00\x00\x50\x64\x89\x25\x00\x00\x00\x00\x51\x8B\xC1\x89\x04\x24\xC7\x00\x00\x00\x00\x00\x33\xD2\x89\x54\x24\x0C\xB9\x00\x00\x00\x00\xC7\x00\x00\x00\x00\x00\x88\x48\x04\x89\x50\x08\x89\x4C\x24\x0C\xC7\x00\x00\x00\x00\x00\x33\xC9" #define CLCPROCESS_MASK "xxxxxxxxxx?xxxxxxxx????xx????xxxx????xxxxxxxx????xxxxxxx????xx????xxxxxxxxxxxx????xx" #define CLCPROCESS_HOOKSIZE 0x07 #define CLDISCONNECT_SIG "\x81\xEC\x00\x00\x00\x00\x56\x8B\xB4\x24\x00\x00\x00\x00\x83\xBE\xD8\x00\x00\x00\x00" #define CLDISCONNECT_MASK "xx????xxxx????xxxxxxx" #endif