/* AgentManager_Release_x64.exe sha256 8fd8ca91725858651a7839d34257b10c2970ac16c97e60c523b8b0c983fcb186 * Ghidra 12.1.2 decompiler output for 0x14000e0c0 FUN_14000e0c0 * Pseudocode, not original source. */ void FUN_14000e0c0(undefined8 *param_1) { ulonglong *puVar1; ulonglong uVar2; ulonglong *puVar3; longlong lVar4; void *pvVar5; ulonglong uVar6; ulonglong uVar7; ulonglong uVar8; ulonglong *puVar9; ulonglong *puVar10; void *local_68; longlong lStack_60; ulonglong *local_58; longlong lStack_50; if (param_1[1] != 0) { uVar2 = param_1[3]; puVar10 = (ulonglong *)*param_1; uVar6 = uVar2; uVar8 = 8; do { uVar7 = uVar8; uVar8 = uVar6 % uVar7; uVar6 = uVar7; } while (uVar8 != 0); local_58 = (ulonglong *)param_1[1]; lStack_50 = param_1[2]; do { puVar3 = *(ulonglong **)(lStack_50 + -0x10 + (longlong)local_58); lVar4 = *(longlong *)(lStack_50 + -8 + (longlong)local_58); puVar1 = (ulonglong *)(lStack_50 + -0x10 + (longlong)local_58); if (local_58 != puVar1) { puVar9 = local_58 + 4; do { if (puVar9 + -4 == puVar10) { puVar10 = (ulonglong *)*puVar10; } else { if (7 < *puVar9) { operator_delete((void *)puVar9[-3]); } *puVar9 = 7; puVar9[-1] = 0; *(undefined2 *)(puVar9 + -3) = 0; } puVar9 = puVar9 + uVar2 / uVar7; } while (puVar9 + -4 != puVar1); } operator_delete__(local_58); local_58 = puVar3; lStack_50 = lVar4; } while (puVar3 != (ulonglong *)0x0); param_1[1] = 0; } lStack_60 = param_1[2]; local_68 = (void *)param_1[1]; if ((void *)param_1[1] != (void *)0x0) { do { pvVar5 = *(void **)(lStack_60 + -0x10 + (longlong)local_68); lStack_60 = *(longlong *)(lStack_60 + -8 + (longlong)local_68); operator_delete__(local_68); local_68 = pvVar5; } while (pvVar5 != (void *)0x0); param_1[1] = 0; *param_1 = 0; param_1[4] = param_1[5]; } return; }