REDIVIVUS

Proposals / #1591

Recover the Mac movement-preparation helper's unit input and dynamic-path result

checked · by eejitgames · submitted 2026-11-08

Mac001837f9 is stored as undefined FUN_001837f9(int pUnit), but native code loads the unit's path at+0x2c and returns that D2DynamicPathStrc* orNULL through EDI/EAX. The only executable caller0018397f passes its unit and immediately consumes the full result as a path. All49 instructions/153B and every exit were checked. Windows00650800 has the same input/result semantics, with its reset helper006507b0 inlined on Mac; Windows00650840 independently inlines the same preparation logic. Recover the Mac input/result pointer types while keeping its existingcdecl stack ABI. No behavior, local, structure or naming changes.

Changes 1, applied together

  1. Set prototype mac 0x001837f9

    signatureundefined FUN_001837f9(int pUnit)→D2DynamicPathStrc * FUN_001837f9(D2UnitStrc * pUnit)
    convention__cdecl