Type Mac NET_SID_CLIENT_Send_0x58_AuthAccountUpgradeProof as int __cdecl (uint32_t)
Mac body reads one stack arg [EBP+8] (the server token, stored into the proof packet at 0x000588dc) and no registers; it explicitly returns 0 (XOR EAX,EAX at 0x00058aa0) with plain RET. The caller NET_SID_CLIENT_Incoming_AuthAccountUpgrade pushes one dword (0x000522d2). Windows twin 0x005223f0 is int (uint32_t nServerToken).
Changes 1, applied together
Set prototype
mac 0x000588b4signatureundefined NET_SID_CLIENT_Send_0x58_AuthAccountUpgradeProof(void)→int NET_SID_CLIENT_Send_0x58_AuthAccountUpgradeProof(uint32_t nServerToken)conventionunknown→__cdecl