/* DBCServer_Release_x64.exe sha256 d9e4fccdf3482e50247686d4452c0b13c75a53efc4bd7320668eece8d1ce828c * Ghidra 12.1.2 decompiler output for 0x1401d22e0 FUN_1401d22e0 * Pseudocode, not original source. */ undefined1 FUN_1401d22e0(longlong *param_1,undefined8 param_2,undefined4 param_3,undefined8 param_4, longlong param_5) { int iVar1; undefined1 uVar2; undefined8 uVar3; undefined1 local_40 [4]; undefined4 local_3c; longlong local_38; longlong local_30; int local_24; FUN_14016b440(local_40); FUN_14016abe0(local_40); FUN_14004f3c0(local_40,0xfa06); iVar1 = *(int *)(param_5 + 0x18); FUN_14016cac0(local_40,(longlong)iVar1); if (*(int *)(param_5 + 0x18) == 0) { uVar3 = 0; } else { uVar3 = *(undefined8 *)(param_5 + 0x10); } if (iVar1 == 0) goto LAB_1401d23b0; local_3c = 0; if (local_38 == 0) { if (local_30 == 0) { /* WARNING: Subroutine does not return */ FUN_14016d1e0(0,uVar3); } LAB_1401d2382: FUN_14004efd0(&local_30,uVar3,iVar1); } else { if (local_30 != 0) goto LAB_1401d2382; if (local_38 == 0) { /* WARNING: Subroutine does not return */ FUN_14016d1e0(0,uVar3); } FUN_14004f200(local_38,uVar3,iVar1); } FUN_14004f270(local_40); LAB_1401d23b0: uVar2 = (**(code **)(*param_1 + 0x18)) (param_1,param_2,param_3,param_4,local_40,PTR_DAT_140345930,0xfa06); FUN_14016d0e0(&local_38); if ((local_30 != 0) && (local_24 < 0)) { /* WARNING: Subroutine does not return */ FUN_14016d6b0(); } return uVar2; }