/* AgentManager_Release_x64.exe sha256 8fd8ca91725858651a7839d34257b10c2970ac16c97e60c523b8b0c983fcb186 * Ghidra 12.1.2 decompiler output for 0x1400dbf60 FUN_1400dbf60 * Pseudocode, not original source. */ void FUN_1400dbf60(longlong param_1,longlong *param_2,undefined **param_3,undefined8 param_4) { uint uVar1; undefined8 uVar2; longlong lVar3; longlong local_40; undefined8 local_38; int local_30; undefined8 local_28; undefined4 local_20; undefined **local_18; undefined4 local_10; undefined2 local_c; if (*(char *)(param_1 + 0x380) != '\0') { do { FUN_1400dbe80(param_1,param_2,param_3,param_4); local_18 = Proud::AddrPort::vftable; local_40 = 0; local_28 = 0; local_38 = 0; local_30 = 5; local_20 = 0; local_10 = DAT_14016f3d0; local_c = DAT_14016f3d4; param_3 = (undefined **)0xa; param_2 = &local_40; uVar2 = FUN_140046e80(*(char **)(param_1 + 0x308),param_2,10,param_4); if ((char)uVar2 != '\0') { FUN_14003d040((int *)(param_1 + 0x310)); if ((int)local_38 < 1) { *(undefined1 *)(param_1 + 0x48) = 1; } if (local_30 == 1) { if (*(char *)(param_1 + 0x30) == '\0') { *(undefined1 *)(param_1 + 0x2c0) = 0; } else if (0 < (int)local_38) { *(int *)(param_1 + 0x38) = *(int *)(param_1 + 0x38) + (int)local_38; FUN_1400dbdb0(param_1); goto LAB_1400dc04b; } } else { LAB_1400dc04b: if (local_30 == 2) { if (*(char *)(param_1 + 0x30) == '\0') { LAB_1400dc0aa: *(undefined1 *)(param_1 + 0x300) = 0; } else { lVar3 = 0; if (*(longlong **)(param_1 + 0x20) != (longlong *)0x0) { lVar3 = **(longlong **)(param_1 + 0x20); } if (*(char *)(lVar3 + 0x80) == '\0') { *(undefined1 *)(param_1 + 0x300) = 1; lVar3 = 0; if (*(longlong **)(param_1 + 0x20) != (longlong *)0x0) { lVar3 = **(longlong **)(param_1 + 0x20); } param_2 = (longlong *)0x258; uVar1 = FUN_1400449f0(lVar3,600,param_3,param_4); if (uVar1 != 0) { *(undefined1 *)(param_1 + 0x30) = 0; goto LAB_1400dc0aa; } } } } } FUN_14003d0d0(param_1 + 0x310); } } while (*(char *)(param_1 + 0x380) != '\0'); } return; }