/* AgentManager_Release_x64.exe sha256 8fd8ca91725858651a7839d34257b10c2970ac16c97e60c523b8b0c983fcb186 * Ghidra 12.1.2 decompiler output for 0x140001df0 FUN_140001df0 * Pseudocode, not original source. */ void FUN_140001df0(longlong *param_1) { int iVar1; undefined *puVar2; undefined8 *puVar3; uint *puVar4; uint uVar5; uint uVar6; undefined *puVar7; ulonglong uVar8; undefined8 in_R9; puVar7 = (undefined *)*param_1; if (puVar7 == (undefined *)0x0) { *param_1 = (longlong)PTR_DAT_14016f010; } else if ((puVar7 != PTR_DAT_14016f010) && ((int *)(puVar7 + -8) != (int *)0x0)) { if (*(int *)(puVar7 + -4) < 2) { return; } iVar1 = *(int *)(puVar7 + -8); if (iVar1 < 0) { /* WARNING: Subroutine does not return */ FUN_14003dec0(); } puVar4 = (uint *)FUN_14003e840((longlong)iVar1 * 2 + 10); uVar5 = 0; if (puVar4 != (uint *)0x0) { *puVar4 = 0; puVar4[1] = 1; } puVar2 = PTR_DAT_14016f010; puVar7 = (undefined *)*param_1; if (puVar7 == (undefined *)0x0) { uVar6 = 0; } else { uVar6 = uVar5; if (puVar7 != PTR_DAT_14016f010) { uVar6 = *(uint *)(puVar7 + -8); } } *puVar4 = uVar6; puVar7 = (undefined *)*param_1; if ((puVar7 != (undefined *)0x0) && (puVar7 != puVar2)) { uVar5 = *(uint *)(puVar7 + -8); } if (puVar7 == (undefined *)0x0) { puVar7 = puVar2; } uVar8 = (ulonglong)uVar5; FUN_14003e650(puVar4 + 2,puVar7,uVar5); FUN_140002190(param_1,puVar7,uVar8,in_R9); *param_1 = (longlong)(puVar4 + 2); return; } puVar3 = (undefined8 *)FUN_14003e840(10); *puVar3 = 0; *(undefined2 *)(puVar3 + 1) = 0; if (puVar3 != (undefined8 *)0x0) { *(undefined4 *)puVar3 = 0; *(undefined4 *)((longlong)puVar3 + 4) = 1; } *(undefined2 *)(puVar3 + 1) = 0; *param_1 = (longlong)(puVar3 + 1); return; }