Mac SLogPend: void __cdecl (uint32_t nHandle, char* szFormat, void* pArgList)
There are three cdecl stack args and no register args. [EBP+8] = the log handle (ECX for LockLog 0x00017ccf), [EBP+0xc] = the format, [EBP+0x10] = a va_list. It is passed straight to vsprintf 0x0030b4c2 as [ESP+8] (0x000189bb-0x000189d0), so on Mac this is the va_list form, not the Windows "..." form. The only caller, SLogWrite 0x00018a8c, passes [ESP+8] = its own va_list. It ends in an unlock call and a plain RET; EAX is only that call's leftover. Same handle/format roles as Windows twin 0x00420070.
Changes 1, applied together
Set prototype
mac 0x00018965signatureundefined SLogPend(void)→void SLogPend(uint32_t nHandle, char* szFormat, void* pArgList)conventionunknown→__cdecl