REDIVIVUS

Proposals / #1195

Mac Q33_SpawnAnyaAndPortal: void __fastcc (pQuestData ECX, pQuestSpecificData EDX)

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

Mac 0x0023ee27 is "undefined (void)", convention unknown. Entry: EDI=EDX (A5Q3 quest-specific block: [EDI+0xe4], [EDI+0x104] = pDrlgMap slots also typed on Q33_OnPresetObjectLoad1/2), ECX saved to [EBP-0x28] and later read as quest data ([ECX+4] = pGame passed as arg 1 at 0x0023eedd-0x0023eeef). No positive [EBP+n] reads at all; plain RET 0x0023f076. Its tail-caller Q33_StartAnyaRescuePhase sets ECX = GetQuestDataByQuestNoInternal(pGame, 0x21) and EDX = [quest data+0x18] (pQuestSpecificData) before JMP 0x0023ee27, and is itself void.

Changes 1, applied together

  1. Set prototype mac 0x0023ee27

    signatureundefined Q33_SpawnAnyaAndPortal(void)→void Q33_SpawnAnyaAndPortal(D2QuestDataStrc * pQuestData, D2QuestDataA5Q3Strc * pQuestSpecificData)
    conventionunknown→__fastcc