70 lines
2.1 KiB
C
70 lines
2.1 KiB
C
/* DBCServer_Release_x64.exe sha256 d9e4fccdf3482e50247686d4452c0b13c75a53efc4bd7320668eece8d1ce828c
|
|
* Ghidra 12.1.2 decompiler output for 0x14014d8b0 FUN_14014d8b0
|
|
* Pseudocode, not original source. */
|
|
|
|
void FUN_14014d8b0(undefined8 param_1,longlong param_2)
|
|
|
|
{
|
|
int *piVar1;
|
|
longlong *plVar2;
|
|
longlong *plVar3;
|
|
undefined *puVar4;
|
|
undefined *puVar5;
|
|
undefined *local_res10;
|
|
undefined *local_res18;
|
|
undefined *local_res20;
|
|
undefined8 uVar6;
|
|
|
|
uVar6 = 0xfffffffffffffffe;
|
|
FUN_14016d8c0();
|
|
local_res10 = PTR_DAT_1403440a0;
|
|
plVar2 = (longlong *)FUN_14014a400(&local_res20,param_2 + 0x78);
|
|
plVar3 = (longlong *)FUN_14014a400(&local_res18,param_2 + 0xb4);
|
|
puVar5 = (undefined *)*plVar2;
|
|
if ((undefined *)*plVar2 == (undefined *)0x0) {
|
|
puVar5 = PTR_DAT_1403440a0;
|
|
}
|
|
puVar4 = (undefined *)*plVar3;
|
|
if ((undefined *)*plVar3 == (undefined *)0x0) {
|
|
puVar4 = PTR_DAT_1403440a0;
|
|
}
|
|
FUN_14004c020(&local_res10,L"{ %s %s }",puVar4,puVar5,uVar6);
|
|
if (((local_res18 != (undefined *)0x0) && (local_res18 != PTR_DAT_1403440a0)) &&
|
|
(local_res18 + -8 != (undefined *)0x0)) {
|
|
uVar6 = FUN_14016d8c0();
|
|
FUN_14016db50(uVar6);
|
|
piVar1 = (int *)(local_res18 + -4);
|
|
*piVar1 = *piVar1 + -1;
|
|
if (*piVar1 == 0) {
|
|
FUN_14016d970(local_res18 + -8);
|
|
}
|
|
FUN_14016dbe0(uVar6);
|
|
}
|
|
local_res18 = PTR_DAT_1403440a0;
|
|
if (((local_res20 != (undefined *)0x0) && (local_res20 != PTR_DAT_1403440a0)) &&
|
|
(local_res20 + -8 != (undefined *)0x0)) {
|
|
uVar6 = FUN_14016d8c0();
|
|
FUN_14016db50(uVar6);
|
|
piVar1 = (int *)(local_res20 + -4);
|
|
*piVar1 = *piVar1 + -1;
|
|
if (*piVar1 == 0) {
|
|
FUN_14016d970(local_res20 + -8);
|
|
}
|
|
FUN_14016dbe0(uVar6);
|
|
}
|
|
FUN_14004be20(param_1,&local_res10);
|
|
puVar5 = local_res10;
|
|
if (((local_res10 != (undefined *)0x0) && (local_res10 != PTR_DAT_1403440a0)) &&
|
|
(puVar4 = local_res10 + -8, puVar4 != (undefined *)0x0)) {
|
|
uVar6 = FUN_14016d8c0();
|
|
FUN_14016db50(uVar6);
|
|
piVar1 = (int *)(puVar5 + -4);
|
|
*piVar1 = *piVar1 + -1;
|
|
if (*piVar1 == 0) {
|
|
FUN_14016d970(puVar4);
|
|
}
|
|
FUN_14016dbe0(uVar6);
|
|
}
|
|
return;
|
|
}
|
|
|