/* DBCServer_Release_x64.exe sha256 d9e4fccdf3482e50247686d4452c0b13c75a53efc4bd7320668eece8d1ce828c * Ghidra 12.1.2 decompiler output for 0x140002290 FUN_140002290 * Pseudocode, not original source. */ undefined8 FUN_140002290(longlong *param_1,undefined8 param_2,undefined8 param_3,byte *param_4) { int iVar1; longlong *plVar2; undefined8 uVar3; undefined4 local_98; undefined4 uStack_94; undefined1 local_90 [24]; longlong *local_78; undefined1 local_70 [24]; undefined2 local_58 [4]; undefined8 local_50; undefined8 local_40; undefined1 local_38 [32]; local_40 = 0xfffffffffffffffe; local_98 = 0; Ordinal_8(local_90); local_58[0] = 8; local_50 = FUN_1402182d0(param_3); if (*param_1 == 0) { /* WARNING: Subroutine does not return */ FUN_140218220(0x80004003); } plVar2 = (longlong *)FUN_140002100(*param_1,&local_78); if (*plVar2 == 0) { /* WARNING: Subroutine does not return */ FUN_140218220(0x80004003); } plVar2 = (longlong *)FUN_140002070(*plVar2,&local_98,local_58); if (*plVar2 == 0) { /* WARNING: Subroutine does not return */ FUN_140218220(0x80004003); } uVar3 = FUN_140002000(*plVar2,local_38); Ordinal_8(local_70); iVar1 = Ordinal_10(local_70,uVar3); if (iVar1 < 0) { /* WARNING: Subroutine does not return */ FUN_140218220(iVar1); } iVar1 = Ordinal_10(local_90,local_70); if (iVar1 < 0) { /* WARNING: Subroutine does not return */ FUN_140218220(iVar1); } Ordinal_9(local_70); Ordinal_9(local_38); if ((longlong *)CONCAT44(uStack_94,local_98) != (longlong *)0x0) { (**(code **)(*(longlong *)CONCAT44(uStack_94,local_98) + 0x10))(); } if (local_78 != (longlong *)0x0) { (**(code **)(*local_78 + 0x10))(); } Ordinal_9(local_58); *param_4 = *param_4 & 1; Ordinal_8(param_2); iVar1 = Ordinal_10(param_2,local_90); if (iVar1 < 0) { /* WARNING: Subroutine does not return */ FUN_140218220(iVar1); } Ordinal_9(local_90); return param_2; }