52 lines
1.6 KiB
C
52 lines
1.6 KiB
C
/* DBCServer_Release_x64.exe sha256 d9e4fccdf3482e50247686d4452c0b13c75a53efc4bd7320668eece8d1ce828c
|
|
* Ghidra 12.1.2 decompiler output for 0x1401aae30 FUN_1401aae30
|
|
* Pseudocode, not original source. */
|
|
|
|
void FUN_1401aae30(longlong param_1,longlong param_2,longlong param_3,undefined8 param_4,
|
|
char param_5)
|
|
|
|
{
|
|
undefined8 uVar1;
|
|
undefined4 local_170 [2];
|
|
undefined1 local_168 [8];
|
|
undefined1 local_160 [8];
|
|
longlong local_158;
|
|
int local_14c;
|
|
undefined1 local_140 [232];
|
|
undefined1 local_58 [80];
|
|
|
|
if ((param_2 != 0) && (param_5 == '\x01')) {
|
|
*(int *)(param_2 + 0x1dc) = *(int *)(param_2 + 0x1dc) + 1;
|
|
}
|
|
if (*(longlong *)(param_3 + 8) == 0) {
|
|
FUN_14016d300(local_58,PTR_u_exception_due_to_not_using_Inter_140344010);
|
|
/* WARNING: Subroutine does not return */
|
|
_CxxThrowException(local_58,(ThrowInfo *)&DAT_1403417f8);
|
|
}
|
|
FUN_14016b470(local_168,param_3,param_3,param_4,0xfffffffffffffffe);
|
|
FUN_14018b960(local_140);
|
|
local_170[0] = (undefined4)param_4;
|
|
uVar1 = FUN_14018ec30(param_2 + 0x268,local_170,*(undefined8 *)(param_2 + 0x278),0);
|
|
if (*(undefined8 **)(param_2 + 0x278) == (undefined8 *)0x0) {
|
|
*(undefined8 *)(param_2 + 0x270) = uVar1;
|
|
}
|
|
else {
|
|
**(undefined8 **)(param_2 + 0x278) = uVar1;
|
|
}
|
|
*(undefined8 *)(param_2 + 0x278) = uVar1;
|
|
FUN_14018ba10(local_140);
|
|
FUN_14016d0e0(local_160);
|
|
if ((local_158 != 0) && (local_14c < 0)) {
|
|
/* WARNING: Subroutine does not return */
|
|
FUN_14016d6b0();
|
|
}
|
|
if (param_2 == 0) {
|
|
param_2 = 0;
|
|
}
|
|
else {
|
|
param_2 = param_2 + 8;
|
|
}
|
|
FUN_1401c2710(param_1 + 0x160,param_2);
|
|
return;
|
|
}
|
|
|