REDIVIVUS

Proposals / #1199

Mac Q36_CheckWorldstoneChamber: BOOL __cdecl fpExecuteOnUnitFunction (pGame, pUnit, pArg)

approved · by KierTaylor · submitted 2026-11-05, approved 2026-11-05

Mac 0x002442fe is "undefined (void)", convention unknown. Its only code use is as the pfnCallback (fpExecuteOnUnitFunction = BOOL __cdecl (D2GameStrc*, D2UnitStrc*, int32_t)) argument of IteratePlayerOrMonsterUnits (0x0027a083): Q36_Callback_08_CompleteQuest loads its address into [ESP+0xc] at 0x0024309d/0x002430a3 before CALL 0x0027a083 at 0x002430b6. The body reads [EBP+8] (game: act byte +0x6d) and [EBP+0xc] (unit: passed to 0x00191451), no ECX/EDX on entry. Windows twin 0x0058dea0 is BOOL (pGame, D2UnitStrc* pUnit, void* pArg).

Changes 1, applied together

  1. Set prototype mac 0x002442fe

    signatureundefined Q36_CheckWorldstoneChamber(void)→BOOL Q36_CheckWorldstoneChamber(D2GameStrc * pGame, D2UnitStrc * pUnit, void * pArg)
    conventionunknown→__cdecl