/* DBCServer_Release_x64.exe sha256 d9e4fccdf3482e50247686d4452c0b13c75a53efc4bd7320668eece8d1ce828c * Ghidra 12.1.2 decompiler output for 0x1401babf0 FUN_1401babf0 * Pseudocode, not original source. */ void FUN_1401babf0(longlong param_1) { undefined8 uVar1; undefined8 uVar2; char cVar3; int iVar4; longlong lVar5; longlong lVar6; undefined8 uVar7; undefined **local_18; undefined4 local_10; undefined2 local_c; FUN_1401b1b20(param_1 + 0x40); if (*(char *)(param_1 + 0x100) == '\0') { lVar6 = 0; lVar5 = lVar6; if (*(longlong **)(param_1 + 0x150) != (longlong *)0x0) { lVar5 = **(longlong **)(param_1 + 0x150); } if (*(char *)(lVar5 + 0x80) == '\0') { uVar1 = *(undefined8 *)(param_1 + 0x170); uVar2 = *(undefined8 *)(param_1 + 0x168); uVar7 = (**(code **)(*(longlong *)(*(longlong *)(param_1 + 0x148) + 0x118) + 8))(); cVar3 = FUN_1401b7920(uVar2,uVar1,uVar7); if ((cVar3 != '\0') && (0 < *(longlong *)(*(longlong *)(param_1 + 0x170) + 8))) { lVar5 = *(longlong *)(param_1 + 0x170); *(undefined1 *)(param_1 + 0x100) = 1; local_18 = Proud::AddrPort::vftable; local_10 = *(undefined4 *)(lVar5 + 0x6a8); local_c = *(undefined2 *)(lVar5 + 0x6ac); if (*(longlong **)(param_1 + 0x150) != (longlong *)0x0) { lVar6 = **(longlong **)(param_1 + 0x150); } iVar4 = FUN_14019e1d0(lVar6,lVar5,&local_18,*(undefined4 *)(lVar5 + 0x6b0)); if (iVar4 != 0) { *(undefined1 *)(param_1 + 0x100) = 0; } } } } return; }