Mac PARTY_AddUnitToParty: int __cdecl (D2GameStrc* pGame, int16_t nPartyId, D2UnitStrc* pUnit)
The Mac body reads [EBP+8] pGame and the word [EBP+0xc] nPartyId, and passes both to FindPartyControlSub (ECX/EDX) at 0x00276a95. [EBP+0x10] is pUnit (NULL-checked, type at +0 must be 0 = player, GUID at +0xc). There are no other stack reads. The result is set explicitly (ECX -> EAX at 0x00276b29), then a plain RET. All three PARTYSCREEN_AcceptPartyInvite call sites store [ESP], [ESP+4] (MOVZX of the party id) and [ESP+8]. Same as the Windows twin 0x00540320, except that the Windows ESI halt-line argument has no Mac counterpart.
Changes 1, applied together
Set prototype
mac 0x00276a7dsignatureundefined PARTY_AddUnitToParty(void)→int PARTY_AddUnitToParty(D2GameStrc* pGame, int16_t nPartyId, D2UnitStrc* pUnit)conventionunknown→__cdecl