Type Mac MESSAGE_UnregisterEventHandlerBatch as void __cdecl (void*, D2UIFlagInitStrc*, int)
Mac body reads three stack args: [EBP+8] window (asserted non-NULL, line 0x166), [EBP+0xc] array of 12-byte {type, message, handler} entries, [EBP+0x10] count; it calls MESSAGE_UnregisterEventHandler (0x0005e4b8) per entry. Plain RET, EAX leftover. Windows twin 0x00451e10 is void (HWND hWnd, D2UIFlagInitStrc* pEventHandlers, int32_t nCount); HWND is void* on Mac.
Changes 1, applied together
Set prototype
mac 0x0005e604signatureundefined MESSAGE_UnregisterEventHandlerBatch(void)→void MESSAGE_UnregisterEventHandlerBatch(void* hWnd, D2UIFlagInitStrc* pEventHandlers, int nCount)conventionunknown→__cdecl