40 lines
1.2 KiB
C
40 lines
1.2 KiB
C
/* AgentManager_Release_x64.exe sha256 8fd8ca91725858651a7839d34257b10c2970ac16c97e60c523b8b0c983fcb186
|
|
* Ghidra 12.1.2 decompiler output for 0x1400ca4c0 FUN_1400ca4c0
|
|
* Pseudocode, not original source. */
|
|
|
|
void FUN_1400ca4c0(undefined8 *param_1,undefined8 param_2,longlong *param_3,undefined8 param_4)
|
|
|
|
{
|
|
undefined8 *puVar1;
|
|
longlong *plVar2;
|
|
LPVOID pvVar3;
|
|
|
|
*param_1 = Proud::CDiscoveringNatDevice::vftable;
|
|
FUN_140006e80(param_1 + 0x4a7);
|
|
param_1[0x4a2] = Proud::CFastArray<unsigned_char,0>::vftable;
|
|
pvVar3 = (LPVOID)param_1[0x4a4];
|
|
if (pvVar3 != (LPVOID)0x0) {
|
|
if ((longlong *)param_1[0x4a3] == (longlong *)0x0) {
|
|
FUN_14003e8b0(pvVar3);
|
|
}
|
|
else {
|
|
(**(code **)(*(longlong *)param_1[0x4a3] + 0x18))();
|
|
}
|
|
}
|
|
FUN_140006e80(param_1 + 0x491);
|
|
if ((param_1[0x490] != 0) &&
|
|
(*(longlong *)(param_1[0x490] + 8) = *(longlong *)(param_1[0x490] + 8) + -1,
|
|
*(longlong *)(param_1[0x490] + 8) == 0)) {
|
|
puVar1 = (undefined8 *)param_1[0x490];
|
|
plVar2 = (longlong *)*puVar1;
|
|
if (plVar2 != (longlong *)0x0) {
|
|
FUN_140043e60(plVar2,pvVar3,param_3,param_4);
|
|
FUN_14003e8b0(plVar2);
|
|
}
|
|
FUN_14003e8b0(puVar1);
|
|
}
|
|
FUN_140006e80(param_1 + 1);
|
|
*param_1 = Proud::IFastSocketDelegate::vftable;
|
|
return;
|
|
}
|
|
|