typedef bool(__thiscall* ShowDialog)(int*, int, int, const char*, const char*, int, int, const char*);
ShowDialog oShowDialog = nullptr;
bool hkDialog(int* pThis, int a2, int a3, const char* a4, const char* a5, int a6, int a7, const char* a8) {
printf("[hkDialog] id: %d\n", a2);
return false;
//return oShowDialog(pThis, nId, nType, szCaption, szText, szLeftButton, szRightButton, bServerside);
}
...
DWORD hook_addr = (DWORD)GetModuleHandleW(L"samp.dll") + 0x6B9C0;
MH_CreateHook((void*)hook_addr, &hkDialog, (void**)&oShowDialog);
MH_EnableHook((void*)hook_addr);
...