REDIVIVUS

Proposals / #1222

Mac ITEM_FallbackToSuperiorQuality: BOOL __fastcc (pItemGenContext ECX, ppUnit EDX, pSeed stack)

checked · by KierTaylor · submitted 2026-11-05

Mac 0x001c336f is "undefined (void)", convention unknown. Entry: ESI=ECX (item-gen context: +0x30 quality set to 3 at 0x001c33c9, passed as EDX to 0x001c2cb0 and as [ESP+4] later), EDI=EDX (pointer to the item: [EDI] read repeatedly as the item unit), EBX=[EBP+8] (seed: [EBX] read, then overwritten by 0x00184e95's result at 0x001c33e2). [EBP+8] is the only stack read. Same three values as Windows twin 0x00557320 BOOL (int* pnSeed, D2ItemGenContextStrc* pItemGenContext, D2UnitStrc** ppUnit), in Mac register order; pn prefix dropped as the checker refuses it.

Changes 1, applied together

  1. Set prototype mac 0x001c336f

    signatureundefined ITEM_FallbackToSuperiorQuality(void)→BOOL ITEM_FallbackToSuperiorQuality(D2ItemGenContextStrc * pItemGenContext, D2UnitStrc * * ppUnit, int * pSeed)
    conventionunknown→__fastcc