REDIVIVUS

Proposals / #1327

Mac COMCALLBACK_RemoveUserFromChannelList: BOOL __cdecl (dwCbArg1, dwCbArg2, char* szUsername, char* szText)

checked · by KierTaylor · submitted 2026-11-06

This is entry [3] of the COMCALLBACK dispatch table at 0x003ce678 (0x003ce684 holds 0x002d5a7a). Its siblings are typed BOOL __cdecl (uint32_t, uint32_t, char*, char*), e.g. COMCALLBACK_HandleChannelJoin [9]. The body reads [EBP+0x10] (the username, passed as EDX to COMCALLBACK_CompareUserNames at 0x002d5abd while walking the user list) and returns MOV EAX,1 with a plain RET. The callback type passes four args, so all four slots are kept.

Changes 1, applied together

  1. Set prototype mac 0x002d5a7a

    signatureundefined4 COMCALLBACK_RemoveUserFromChannelList(void)→BOOL COMCALLBACK_RemoveUserFromChannelList(uint32_t dwCbArg1, uint32_t dwCbArg2, char* szUsername, char* szText)
    convention__cdecl