diff --git a/saco/game/util.cpp b/saco/game/util.cpp index d7dee99..26ee99c 100644 --- a/saco/game/util.cpp +++ b/saco/game/util.cpp @@ -364,6 +364,30 @@ void __stdcall FUNC_100B42B0(DWORD *pdwEntity) } } +//----------------------------------------------------------- + +DWORD __stdcall FUNC_100B4430(int a1, int a2) +{ + DWORD *pFound = NULL; + DWORD dwResult = 0; + + _asm push a2 + _asm push a1 + _asm mov edx, 0x4D3A60 + _asm call edx + _asm mov pFound, eax + _asm pop edx + _asm pop edx + + if(pFound) + { + _asm mov edx, [eax+0x10] + _asm mov eax, [edx] + _asm mov dwResult, eax + } + + return dwResult; +} //----------------------------------------------------------- diff --git a/saco/game/util.h b/saco/game/util.h index f1e6c59..ec16d60 100644 --- a/saco/game/util.h +++ b/saco/game/util.h @@ -107,6 +107,7 @@ bool FUNC_100B3D30(int nModelIndex); // .text:100B3D30 int FUNC_100B41F0(void *pData); // .text:100B41F0 int __stdcall FUNC_100B4240(DWORD *pdwIn, DWORD dwParam); // .text:100B4240 void __stdcall FUNC_100B42B0(DWORD *pdwEntity); // .text:100B42B0 +DWORD __stdcall FUNC_100B4430(int a1, int a2); // .text:100B4430 void FUNC_100B5210(int a1, void *a2); // .text:100B5210, __cdecl: the caller's // stack cleanup is folded into the next call's argument setup