/* 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; }