55 lines
1.9 KiB
C
55 lines
1.9 KiB
C
/* AgentManager_Release_x64.exe sha256 8fd8ca91725858651a7839d34257b10c2970ac16c97e60c523b8b0c983fcb186
|
|
* Ghidra 12.1.2 decompiler output for 0x14008bca0 FUN_14008bca0
|
|
* Pseudocode, not original source. */
|
|
|
|
void FUN_14008bca0(longlong param_1,undefined4 *param_2,SIZE_T param_3,undefined8 param_4)
|
|
|
|
{
|
|
undefined8 uVar1;
|
|
undefined8 *puVar2;
|
|
undefined4 local_128 [2];
|
|
longlong local_120;
|
|
longlong local_118;
|
|
int local_10c;
|
|
undefined4 local_100 [58];
|
|
|
|
if ((*(longlong *)(param_1 + 0x238) != 0) &&
|
|
(*(longlong *)(*(longlong *)(param_1 + 0x238) + 0x3e0) != 0)) {
|
|
FUN_140074fb0(local_128);
|
|
FUN_1400660e0(local_100,param_2,param_3,param_4);
|
|
uVar1 = *(undefined8 *)(param_1 + 0x278);
|
|
if (*(longlong **)(param_1 + 0x268) == (longlong *)0x0) {
|
|
puVar2 = (undefined8 *)FUN_14003e840(0x128);
|
|
}
|
|
else {
|
|
param_2 = (undefined4 *)0x128;
|
|
puVar2 = (undefined8 *)(**(code **)(**(longlong **)(param_1 + 0x268) + 8))();
|
|
}
|
|
if (puVar2 != (undefined8 *)0x0) {
|
|
*(undefined4 *)(puVar2 + 2) = 0;
|
|
FUN_140074fe0((undefined4 *)(puVar2 + 3),local_128);
|
|
param_2 = local_100;
|
|
FUN_1400660e0((undefined4 *)(puVar2 + 8),param_2,param_3,param_4);
|
|
}
|
|
puVar2[1] = uVar1;
|
|
*puVar2 = 0;
|
|
*(longlong *)(param_1 + 0x280) = *(longlong *)(param_1 + 0x280) + 1;
|
|
if (*(undefined8 **)(param_1 + 0x278) == (undefined8 *)0x0) {
|
|
*(undefined8 **)(param_1 + 0x270) = puVar2;
|
|
}
|
|
else {
|
|
**(undefined8 **)(param_1 + 0x278) = puVar2;
|
|
}
|
|
*(undefined8 **)(param_1 + 0x278) = puVar2;
|
|
FUN_1400645f0((longlong)local_100,param_2,param_3,param_4);
|
|
FUN_14008a320(&local_120);
|
|
if ((local_118 != 0) && (local_10c < 0)) {
|
|
/* WARNING: Subroutine does not return */
|
|
FUN_14003dec0();
|
|
}
|
|
FUN_140097680(*(longlong *)(*(longlong *)(param_1 + 0x238) + 0x3e0) + 0x160,param_1 + 8,param_3,
|
|
param_4);
|
|
}
|
|
return;
|
|
}
|
|
|