64 lines
2 KiB
C
64 lines
2 KiB
C
/* AgentManager_Release_x64.exe sha256 8fd8ca91725858651a7839d34257b10c2970ac16c97e60c523b8b0c983fcb186
|
|
* Ghidra 12.1.2 decompiler output for 0x14008e950 FUN_14008e950
|
|
* Pseudocode, not original source. */
|
|
|
|
/* WARNING: Removing unreachable block (ram,0x00014008eaa7) */
|
|
|
|
void FUN_14008e950(longlong param_1,undefined8 param_2,undefined8 param_3,undefined *param_4)
|
|
|
|
{
|
|
longlong *plVar1;
|
|
longlong *plVar2;
|
|
LPVOID pvVar3;
|
|
LPVOID pvVar4;
|
|
undefined8 uVar5;
|
|
code *pcVar6;
|
|
|
|
if (*(longlong *)(param_1 + 0x40) == 0) {
|
|
pvVar4 = (LPVOID)0x0;
|
|
}
|
|
else {
|
|
pvVar4 = *(LPVOID *)(param_1 + 0x30);
|
|
}
|
|
while( true ) {
|
|
if (pvVar4 == (LPVOID)0x0) {
|
|
return;
|
|
}
|
|
if (pvVar4 == (LPVOID)0x0) break;
|
|
plVar1 = *(longlong **)((longlong)pvVar4 + 0x10);
|
|
if ((longlong *)plVar1[2] != (longlong *)0x0) {
|
|
FUN_14008bf30((longlong *)plVar1[2],plVar1,param_3,param_4);
|
|
}
|
|
plVar2 = *(longlong **)(param_1 + 0x78);
|
|
FUN_14008cb70((short *)plVar1);
|
|
plVar1[0x33] = (longlong)Proud::CFastArray<Proud::UdpPacketCtx*___ptr64,1>::vftable;
|
|
if ((LPVOID)plVar1[0x35] != (LPVOID)0x0) {
|
|
if ((longlong *)plVar1[0x34] == (longlong *)0x0) {
|
|
FUN_14003e8b0((LPVOID)plVar1[0x35]);
|
|
}
|
|
else {
|
|
(**(code **)(*(longlong *)plVar1[0x34] + 0x18))();
|
|
}
|
|
}
|
|
pcVar6 = FUN_14008cc00;
|
|
uVar5 = 6;
|
|
_eh_vector_destructor_iterator_(plVar1 + 3,0x38,6,FUN_14008cc00);
|
|
param_4 = pcVar6;
|
|
if ((longlong *)plVar1[2] != (longlong *)0x0) {
|
|
FUN_14008bf30((longlong *)plVar1[2],plVar1,uVar5,pcVar6);
|
|
param_4 = pcVar6;
|
|
}
|
|
(**(code **)(*plVar2 + 0x18))(plVar2,plVar1);
|
|
if (pvVar4 == (LPVOID)0x0) {
|
|
/* WARNING: Subroutine does not return */
|
|
FUN_1400050d0(0x80004005);
|
|
}
|
|
pvVar3 = *(LPVOID *)((longlong)pvVar4 + 0x18);
|
|
param_3 = 0;
|
|
FUN_14008cf20((char *)(param_1 + 0x20),pvVar4,'\0');
|
|
pvVar4 = pvVar3;
|
|
}
|
|
/* WARNING: Subroutine does not return */
|
|
FUN_1400050d0(0x80004005);
|
|
}
|
|
|