Mac DIALOG_HandleMouseUpEvent: __fastcc int32_t (D2DialogStrc * pDialog, D2UIMouseMsgStrc * pMsg)
Ghidra vmac 111 · 3c6740e
Mac body: ECX is null-checked and read as the dialog (+0x50 line count, +0x2c/+0x30/+0x34 box geometry, line records from +0x174, stride 0x110); EDX's +0xc is the packed mouse position (low word X, high word Y); it returns the hit line index or -1 in EAX; no stack arguments, plain RET. Windows twin DIALOG_HandleMouseUpEvent 0x004b7180 is int32_t (D2DialogStrc * pDialog, D2UIMouseMsgStrc * pMsg); same order on Mac.
Changes 1, applied together
Set prototype
mac 0x000a4aa2signatureundefined DIALOG_HandleMouseUpEvent(void)→int32_t DIALOG_HandleMouseUpEvent(D2DialogStrc * pDialog, D2UIMouseMsgStrc * pMsg)conventionunknown→__fastcc