server-re/decomp/AgentManager_Release_x64/full/functions/0x14003c6e0.c
2026-10-15 09:58:24 -04:00

64 lines
1.7 KiB
C

/* AgentManager_Release_x64.exe sha256 8fd8ca91725858651a7839d34257b10c2970ac16c97e60c523b8b0c983fcb186
* Ghidra 12.1.2 decompiler output for 0x14003c6e0 FUN_14003c6e0
* Pseudocode, not original source. */
void FUN_14003c6e0(undefined8 *param_1)
{
ulonglong uVar1;
undefined8 *puVar2;
longlong lVar3;
void *pvVar4;
ulonglong uVar5;
ulonglong uVar6;
ulonglong uVar7;
undefined8 *puVar8;
undefined8 *puVar9;
void *local_48;
longlong lStack_40;
undefined8 *local_38;
longlong lStack_30;
if (param_1[1] != 0) {
uVar1 = param_1[3];
puVar9 = (undefined8 *)*param_1;
uVar5 = uVar1;
uVar7 = 8;
do {
uVar6 = uVar7;
uVar7 = uVar5 % uVar6;
uVar5 = uVar6;
} while (uVar7 != 0);
local_38 = (undefined8 *)param_1[1];
lStack_30 = param_1[2];
do {
puVar2 = *(undefined8 **)(lStack_30 + -0x10 + (longlong)local_38);
lVar3 = *(longlong *)(lStack_30 + -8 + (longlong)local_38);
for (puVar8 = local_38; puVar8 != (undefined8 *)(lStack_30 + -0x10 + (longlong)local_38);
puVar8 = puVar8 + uVar1 / uVar6) {
if (puVar8 == puVar9) {
puVar9 = (undefined8 *)*puVar9;
}
}
operator_delete__(local_38);
local_38 = puVar2;
lStack_30 = lVar3;
} while (puVar2 != (undefined8 *)0x0);
param_1[1] = 0;
}
lStack_40 = param_1[2];
local_48 = (void *)param_1[1];
if ((void *)param_1[1] != (void *)0x0) {
do {
pvVar4 = *(void **)(lStack_40 + -0x10 + (longlong)local_48);
lStack_40 = *(longlong *)(lStack_40 + -8 + (longlong)local_48);
operator_delete__(local_48);
local_48 = pvVar4;
} while (pvVar4 != (void *)0x0);
param_1[1] = 0;
*param_1 = 0;
param_1[4] = param_1[5];
}
return;
}