/* DBCServer_Release_x64.exe sha256 d9e4fccdf3482e50247686d4452c0b13c75a53efc4bd7320668eece8d1ce828c * Ghidra 12.1.2 decompiler output for 0x14015b810 FUN_14015b810 * Pseudocode, not original source. */ void FUN_14015b810(longlong param_1,int *param_2) { int *piVar1; undefined *puVar2; longlong lVar3; undefined4 local_res8; undefined4 uStackX_c; longlong local_20; undefined4 local_18; undefined8 local_10; *(undefined1 *)(param_1 + 0x19) = 0; if (*param_2 == 0) { *(undefined2 *)(param_1 + 0x1a) = 1; *(undefined1 *)(param_1 + 0x1c) = 0; local_18 = 0x80bf; local_20 = (ulonglong)*(uint *)(DAT_140353190 + 0x1ec) << 0x20; local_10 = *(undefined8 *)(DAT_140353190 + 0x1f0); local_res8 = *(undefined4 *)(DAT_140353190 + 0x154); (**(code **)(*(longlong *)(param_1 + 0x68) + 0x30)) ((longlong *)(param_1 + 0x68),1,&DAT_1403440f0,&local_res8,&local_20); if (*(longlong **)(param_1 + 0x10) != (longlong *)0x0) { (**(code **)(**(longlong **)(param_1 + 0x10) + 0x30))(); wprintf(L"Agent Connect Succeed: HostID[%d] \n"); } } else { *(undefined1 *)(param_1 + 0x1b) = 1; FUN_1401990a0(param_2,&local_res8); wprintf(L"Agent Connect Failed [%s] \n"); puVar2 = (undefined *)CONCAT44(uStackX_c,local_res8); if (((puVar2 != (undefined *)0x0) && (puVar2 != PTR_DAT_1403440a0)) && (puVar2 + -8 != (undefined *)0x0)) { lVar3 = FUN_14016d8c0(); local_20 = lVar3; FUN_14016db50(lVar3); local_18 = CONCAT31(local_18._1_3_,1); piVar1 = (int *)(puVar2 + -4); *piVar1 = *piVar1 + -1; if (*piVar1 == 0) { FUN_14016d970(puVar2 + -8); } FUN_14016dbe0(lVar3); } } return; }