61 lines
1.7 KiB
C
61 lines
1.7 KiB
C
/* DBCServer_Release_x64.exe sha256 d9e4fccdf3482e50247686d4452c0b13c75a53efc4bd7320668eece8d1ce828c
|
|
* Ghidra 12.1.2 decompiler output for 0x1401d21a0 FUN_1401d21a0
|
|
* Pseudocode, not original source. */
|
|
|
|
undefined1 FUN_1401d21a0(longlong *param_1,undefined4 param_2,undefined8 param_3,longlong param_4)
|
|
|
|
{
|
|
int iVar1;
|
|
undefined1 uVar2;
|
|
undefined8 uVar3;
|
|
undefined4 local_res10 [4];
|
|
longlong *local_res20;
|
|
undefined1 local_40 [4];
|
|
undefined4 local_3c;
|
|
longlong local_38;
|
|
longlong local_30;
|
|
int local_24;
|
|
|
|
local_res10[0] = param_2;
|
|
FUN_14016b440(local_40);
|
|
FUN_14016abe0(local_40);
|
|
FUN_14004f3c0(local_40,0xfa06);
|
|
iVar1 = *(int *)(param_4 + 0x18);
|
|
FUN_14016cac0(local_40,(longlong)iVar1);
|
|
if (*(int *)(param_4 + 0x18) == 0) {
|
|
uVar3 = 0;
|
|
}
|
|
else {
|
|
uVar3 = *(undefined8 *)(param_4 + 0x10);
|
|
}
|
|
if (iVar1 == 0) goto LAB_1401d2261;
|
|
local_3c = 0;
|
|
if (local_38 == 0) {
|
|
if (local_30 == 0) {
|
|
/* WARNING: Subroutine does not return */
|
|
FUN_14016d1e0(0,uVar3);
|
|
}
|
|
LAB_1401d2233:
|
|
FUN_14004efd0(&local_30,uVar3,iVar1);
|
|
}
|
|
else {
|
|
if (local_30 != 0) goto LAB_1401d2233;
|
|
if (local_38 == 0) {
|
|
/* WARNING: Subroutine does not return */
|
|
FUN_14016d1e0(0,uVar3);
|
|
}
|
|
FUN_14004f200(local_38,uVar3,iVar1);
|
|
}
|
|
FUN_14004f270(local_40);
|
|
LAB_1401d2261:
|
|
uVar2 = (**(code **)(*param_1 + 0x18))
|
|
(param_1,local_res10,1,param_3,local_40,PTR_DAT_140345930,0xfa06);
|
|
local_res20 = &local_38;
|
|
FUN_14016d0e0(&local_38);
|
|
if ((local_30 != 0) && (local_24 < 0)) {
|
|
/* WARNING: Subroutine does not return */
|
|
FUN_14016d6b0();
|
|
}
|
|
return uVar2;
|
|
}
|
|
|