Type three integer parameters as the overlay node, drlg map and LAN game entry their bodies fill
GFX_RemoveStateOverlayAndReprioritize's pOverlay (EAX) is an overlay list node: both callers pass a node of pGfxInfo->pOverlayList (GFX_RemoveOverlayFromUnit only after testing nOverlayType == 8), and the body reads its state at +0x38 and clears nValue0 at +0x8, then walks the same list comparing the same +0x38 and the type at +0x0, following pNext at +0xA4. That is D2GfxUnknown_0xa8, already used for overlays by GFXUTIL_GetOverlayFrameDelay. CreatePresetObject_Unused's pDrlgMap (ESI) is used only as D2DrlgMapStrc: it pushes the new preset unit onto pPresetUnit at +0x38 (read, link through the unit's +0xC, write back). OOGUTIL_HandleGameListEntry's pEntry is the address of the caller's D2LanGameEntryStrc local sGameEntry; the body writes nPort at +0x33, dwIpAddress at +0x37, and copies the name to +0x1 (szGameName) and the description to +0x11 (szGameDesc), which the caller then reads by those field names.
Changes 3, applied together
Retype variable
win 0x0046df40 EAXtypeint32_t→D2GfxUnknown_0xa8 *Retype variable
win 0x00666170 ESItypeint32_t→D2DrlgMapStrc *Retype variable
win 0x004438e0 Stack[0x4]typeint32_t→D2LanGameEntryStrc *