Mac PickingGold: void __fastcc (pGame, pUnit, pItem) prototype
Mac 0x001b7699 is "undefined (void)", convention unknown. Entry: ESI=EDX (player: passed to 0x001927a7 and to the stat getter 0x001949e8(ESI, 0xe, 0) = gold), ECX saved to [EBP-0x18] (game); the only stack argument read is [EBP+8] (the gold item; 0x001b76cb, 0x001b7702, 0x001b77b9); plain RET 0x001b7864, no result. Caller SERVER_PickToCursor, after checking the item type == 4, stores [ESP]=EBX (item) and loads ECX=[EBP+8] (pGame), EDX=ESI (player) before CALL at 0x001b751e. Same three values as Windows twin 0x0055c850 void (pGame, D2UnitStrc* pUnit, D2UnitStrc* pUnit2); third named for its item use.
Changes 1, applied together
Set prototype
mac 0x001b7699signatureundefined PickingGold(void)→void PickingGold(D2GameStrc * pGame, D2UnitStrc * pUnit, D2UnitStrc * pItem)conventionunknown→__fastcc