REDIVIVUS

Proposals / #1676

Type Mac GFX_PrecacheRoomUnitSprites as void __cdecl (int32_t nAsyncBlockId)

checked · by KierTaylor · submitted 2026-11-08

Mac body reads one stack arg [EBP+8] (kept at [EBP-0x3c], zeroed by CMOVNZ in one branch) and forwards it as the async block id: as the stack arg of GFX_AsyncLoadUnitSprites (0x00067ab1-0x00067abc) and as EDX of GFX_PrecacheMonsterModeSprites (typed (D2UnitStrc* pUnit, int32_t nAsyncBlockId), 0x00067b69-0x00067b6c). No entry registers read, plain RET at 0x00067bb0, EAX leftover. Callers pass 0/1 (GFX_UpdateGfxThrottled 0x00068bd9/0x00068be5).

Changes 1, applied together

  1. Set prototype mac 0x000678dd

    signatureundefined GFX_PrecacheRoomUnitSprites(void)→void GFX_PrecacheRoomUnitSprites(int32_t nAsyncBlockId)
    conventionunknown→__cdecl