34 lines
974 B
C
34 lines
974 B
C
/* Agent_Release_x64.exe sha256 6f2be7b8eb799ba51b359d1958720aac5baee5b7ee0d1d36684d3cbd72d45469
|
|
* Ghidra 12.1.2 decompiler output for 0x14003aaf4 _onexit
|
|
* Pseudocode, not original source. */
|
|
|
|
/* Library Function - Single Match
|
|
_onexit
|
|
|
|
Libraries: Visual Studio 2008 Release, Visual Studio 2010 Release, Visual Studio 2012 Release */
|
|
|
|
_onexit_t __cdecl _onexit(_onexit_t _Func)
|
|
|
|
{
|
|
_onexit_t p_Var1;
|
|
PVOID pvVar2;
|
|
PVOID local_res10;
|
|
PVOID local_res18 [2];
|
|
|
|
local_res10 = DecodePointer(DAT_140163448);
|
|
if (local_res10 == (PVOID)0xffffffffffffffff) {
|
|
p_Var1 = _onexit(_Func);
|
|
}
|
|
else {
|
|
_lock(8);
|
|
local_res10 = DecodePointer(DAT_140163448);
|
|
local_res18[0] = DecodePointer(DAT_140163440);
|
|
pvVar2 = EncodePointer(_Func);
|
|
p_Var1 = (_onexit_t)__dllonexit(pvVar2,&local_res10,local_res18);
|
|
DAT_140163448 = EncodePointer(local_res10);
|
|
DAT_140163440 = EncodePointer(local_res18[0]);
|
|
_unlock(8);
|
|
}
|
|
return p_Var1;
|
|
}
|
|
|