/* Agent_Release_x64.exe sha256 6f2be7b8eb799ba51b359d1958720aac5baee5b7ee0d1d36684d3cbd72d45469 * Ghidra 12.1.2 decompiler output for 0x140005620 FUN_140005620 * Pseudocode, not original source. */ void FUN_140005620(longlong param_1,undefined8 *param_2,undefined8 param_3,undefined8 param_4) { int *piVar1; longlong *plVar2; int *piVar3; wchar_t *pwVar4; ulonglong uVar5; undefined *puVar6; undefined *local_res8; FUN_14002e6e0((int *)(param_1 + 0x70)); plVar2 = (longlong *)(**(code **)*param_2)(param_2,&local_res8); puVar6 = (undefined *)*plVar2; if ((undefined *)*plVar2 == (undefined *)0x0) { puVar6 = PTR_DAT_140155010; } uVar5 = (ulonglong)*(uint *)(param_2 + 6); pwVar4 = L"NEW SERVER : HostID:[%d][%s] \n"; wprintf(L"NEW SERVER : HostID:[%d][%s] \n"); if (((local_res8 != (undefined *)0x0) && (local_res8 != PTR_DAT_140155010)) && (local_res8 + -8 != (undefined *)0x0)) { piVar3 = (int *)FUN_140030200(pwVar4,uVar5,puVar6,param_4); FUN_14002e6e0(piVar3); piVar1 = (int *)(local_res8 + -4); *piVar1 = *piVar1 + -1; if (*piVar1 == 0) { FUN_1400302f0(local_res8 + -8); } FUN_14002e770((longlong)piVar3); } FUN_14002e770(param_1 + 0x70); return; }