/* DBCServer_Release_x64.exe sha256 d9e4fccdf3482e50247686d4452c0b13c75a53efc4bd7320668eece8d1ce828c * Ghidra 12.1.2 decompiler output for 0x1401fe130 FUN_1401fe130 * Pseudocode, not original source. */ void FUN_1401fe130(longlong param_1) { int iVar1; longlong lVar2; longlong lVar3; longlong lVar4; longlong lVar5; undefined **local_18; int local_10; undefined2 local_c; lVar5 = 0; lVar3 = lVar5; if (*(longlong **)(param_1 + 0x100) != (longlong *)0x0) { lVar3 = **(longlong **)(param_1 + 0x100); } FUN_14019c210(lVar3,0); lVar3 = FUN_1401c71f0(*(undefined8 *)(param_1 + 0x118)); local_10 = *(int *)(lVar3 + 0x118); if ((local_10 == 0) || (local_10 == -1)) { FUN_14016f090(&DAT_14028f380); } local_18 = Proud::AddrPort::vftable; local_c = 0; lVar3 = lVar5; if (*(longlong **)(param_1 + 0x100) != (longlong *)0x0) { lVar3 = **(longlong **)(param_1 + 0x100); } FUN_14019e180(lVar3,&local_18); lVar3 = lVar5; if (*(longlong **)(param_1 + 0x100) != (longlong *)0x0) { lVar3 = **(longlong **)(param_1 + 0x100); } lVar3 = FUN_14019bbd0(lVar3,&local_18); iVar1 = *(int *)(lVar3 + 8); *(int *)(param_1 + 0x130) = iVar1; *(undefined2 *)(param_1 + 0x134) = *(undefined2 *)(lVar3 + 0xc); if ((iVar1 == 0) || (iVar1 == -1)) { FUN_14016f090(&DAT_140294ea0); } (**(code **)(*(longlong *)(*(longlong *)(param_1 + 0x118) + 0x78) + 0x10)) (*(longlong *)(param_1 + 0x118) + 0x78); lVar3 = lVar5; if (*(longlong **)(param_1 + 0x100) != (longlong *)0x0) { lVar3 = **(longlong **)(param_1 + 0x100); } lVar2 = *(longlong *)(*(longlong *)(param_1 + 0x118) + 0x5d8); lVar4 = lVar5; if (lVar2 != 0) { lVar4 = *(longlong *)(lVar2 + 0x38); } FUN_1401a33f0(*(undefined8 *)(lVar4 + 0x2b8),lVar3); if (*(longlong **)(param_1 + 0x100) != (longlong *)0x0) { lVar5 = **(longlong **)(param_1 + 0x100); } FUN_1401bedb0(lVar5); FUN_1401fdf10(param_1); return; }