77 lines
2.4 KiB
C
77 lines
2.4 KiB
C
/* AgentManager_Release_x64.exe sha256 8fd8ca91725858651a7839d34257b10c2970ac16c97e60c523b8b0c983fcb186
|
|
* Ghidra 12.1.2 decompiler output for 0x14000db30 FUN_14000db30
|
|
* Pseudocode, not original source. */
|
|
|
|
void FUN_14000db30(longlong param_1)
|
|
|
|
{
|
|
undefined8 *puVar1;
|
|
longlong lVar2;
|
|
ulonglong *puVar3;
|
|
ulonglong *puVar4;
|
|
longlong lVar5;
|
|
undefined8 *puVar6;
|
|
undefined8 *puVar7;
|
|
undefined8 *puVar8;
|
|
undefined8 *local_38;
|
|
undefined8 *puStack_30;
|
|
|
|
FUN_14003d040((int *)(param_1 + 0x78));
|
|
if (*(longlong *)(param_1 + 0x58) == 0) {
|
|
local_38 = (undefined8 *)0x0;
|
|
}
|
|
else {
|
|
local_38 = *(undefined8 **)(param_1 + 0x68);
|
|
if (local_38 != (undefined8 *)0x0) {
|
|
puStack_30 = (undefined8 *)*local_38;
|
|
goto joined_r0x00014000db89;
|
|
}
|
|
}
|
|
puStack_30 = (undefined8 *)0x0;
|
|
joined_r0x00014000db89:
|
|
do {
|
|
if (puStack_30 == (undefined8 *)0x0) {
|
|
if (*(longlong *)(param_1 + 0x58) != 0) {
|
|
puVar8 = *(undefined8 **)(param_1 + 0x38);
|
|
puVar1 = puVar8 + *(longlong *)(param_1 + 0x40);
|
|
for (; puVar8 != puVar1; puVar8 = puVar8 + 1) {
|
|
puVar6 = (undefined8 *)*puVar8;
|
|
*puVar8 = 0;
|
|
while (puVar6 != (undefined8 *)0x0) {
|
|
puVar7 = (undefined8 *)*puVar6;
|
|
operator_delete(puVar6);
|
|
puVar6 = puVar7;
|
|
}
|
|
}
|
|
*(undefined8 **)(param_1 + 0x68) = puVar1;
|
|
*(undefined8 *)(param_1 + 0x58) = 0;
|
|
}
|
|
FUN_14003d0d0(param_1 + 0x78);
|
|
return;
|
|
}
|
|
puVar3 = (ulonglong *)puStack_30[2];
|
|
if (puVar3 != (ulonglong *)0x0) {
|
|
lVar5 = *(longlong *)(param_1 + 0x18);
|
|
for (puVar4 = *(ulonglong **)(param_1 + 0x10); puVar4 != (ulonglong *)0x0;
|
|
puVar4 = *(ulonglong **)(lVar2 + (longlong)puVar4)) {
|
|
if ((puVar4 <= puVar3) && (puVar3 < (ulonglong *)(lVar5 + -0x10 + (longlong)puVar4))) {
|
|
if (puVar4 != (ulonglong *)0x0) {
|
|
FUN_14000e040((undefined8 *)(param_1 + 8),puVar3);
|
|
}
|
|
break;
|
|
}
|
|
lVar2 = lVar5 + -0x10;
|
|
lVar5 = *(longlong *)(lVar5 + -8 + (longlong)puVar4);
|
|
}
|
|
}
|
|
for (puStack_30 = (undefined8 *)*puStack_30; puStack_30 == (undefined8 *)0x0;
|
|
puStack_30 = (undefined8 *)*puStack_30) {
|
|
puStack_30 = local_38 + 1;
|
|
local_38 = local_38 + 1;
|
|
}
|
|
if (local_38 == puStack_30) {
|
|
puStack_30 = (undefined8 *)0x0;
|
|
}
|
|
} while( true );
|
|
}
|
|
|