#define MSGBOX 0xF78CE7C9 {
PUSH 0x0
PUSH 0x74
PUSH 0x22
ADD ESP, 0x10
}
DWORD FPMSGBOX = FindPattern((DWORD)CShell, 0xFFFFFF,(PBYTE)"\x80\x3D\x00\x00\x00\x00\x00\x74\x21\x83\x7C\x24\x00\x00\xC6\x05\x00\x00\x00\x00\x00\x75\x13", "xx?????xxxxx??xx?????xx");
if(FPMSGBOX!=NULL){
MSGBOX = (*(DWORD*)(FPMSGBOX + 35)) - CShell;
MSGBOX_1Push = (*(BYTE*)(FPMSGBOX + 29));
MSGBOX_2Push = (*(BYTE*)(FPMSGBOX + 31));
MSGBOX_3Push = (*(BYTE*)(FPMSGBOX + 33));
MSGBOX_Add = (*(BYTE*)(FPMSGBOX + 41)) ;
}
#define MSGBOX 0xF78CE7C9 {
PUSH 0x0
PUSH 0x74
PUSH 0x22
ADD ESP, 0x10
}
FoundedAddress = *(DWORD*)(FoundedAddress + 0x1) + (FoundedAddress + 0x5);
#define MSGBOX 0xD3C4E {
PUSH 0x0
PUSH 0x74
PUSH 0x22
ADD ESP, 0x10
}


void PushMessage(DWORD CShell, const char *szMessage)
{
typedef void(__cdecl *pGameMsgBox_t)(DWORD, DWORD, DWORD, const char*);
pGameMsgBox_t pGameMsgBox = (pGameMsgBox_t)(CallAddress + CShell);
pGameMsgBox(0x22, 0x74, 0, szMessage);
}
