decomp DBCServer_Release and inspect/document database
This commit is contained in:
parent
4b267cbe05
commit
7834b98bf0
28222 changed files with 843300 additions and 144 deletions
110
decomp/DBCServer_Release_x64/full/functions/0x1401a97e0.c
Normal file
110
decomp/DBCServer_Release_x64/full/functions/0x1401a97e0.c
Normal file
|
|
@ -0,0 +1,110 @@
|
|||
/* DBCServer_Release_x64.exe sha256 d9e4fccdf3482e50247686d4452c0b13c75a53efc4bd7320668eece8d1ce828c
|
||||
* Ghidra 12.1.2 decompiler output for 0x1401a97e0 FUN_1401a97e0
|
||||
* Pseudocode, not original source. */
|
||||
|
||||
void FUN_1401a97e0(longlong param_1,longlong param_2,undefined8 param_3,undefined8 param_4)
|
||||
|
||||
{
|
||||
undefined *puVar1;
|
||||
int *piVar2;
|
||||
undefined *puVar3;
|
||||
undefined8 uVar4;
|
||||
undefined8 uVar5;
|
||||
undefined *local_res8;
|
||||
undefined8 in_stack_ffffffffffffff68;
|
||||
undefined4 uVar6;
|
||||
undefined8 local_70;
|
||||
undefined1 local_68;
|
||||
undefined8 local_60;
|
||||
undefined1 local_58;
|
||||
undefined **local_50;
|
||||
undefined8 local_48;
|
||||
undefined8 local_40;
|
||||
undefined8 local_38;
|
||||
undefined8 local_30;
|
||||
|
||||
uVar6 = (undefined4)((ulonglong)in_stack_ffffffffffffff68 >> 0x20);
|
||||
if (*(longlong *)(param_1 + 0x148) != 0) {
|
||||
uVar4 = (**(code **)(**(longlong **)(param_1 + 0x148) + 0x58))();
|
||||
local_60 = uVar4;
|
||||
FUN_14016db50(uVar4);
|
||||
local_58 = 1;
|
||||
if (DAT_14034c86f != '\0') {
|
||||
(**(code **)(**(longlong **)(param_1 + 0x148) + 200))
|
||||
(*(longlong **)(param_1 + 0x148),
|
||||
L"Proud::CNetThreads_S::ShowThreadExceptionAndPurgeClient");
|
||||
}
|
||||
if (param_2 == 0) {
|
||||
if (*(longlong *)(*(longlong *)(param_1 + 0x148) + 0x758) != 0) {
|
||||
FUN_14016d8c0();
|
||||
local_res8 = PTR_DAT_1403440a0;
|
||||
FUN_14004c020(&local_res8,&DAT_140282bc0,param_3,param_4);
|
||||
local_48 = 0;
|
||||
local_40 = 0;
|
||||
local_38 = 0;
|
||||
local_30 = 0;
|
||||
local_50 = Proud::ByteArray::vftable;
|
||||
uVar5 = FUN_140198f80(&local_70,1,0,&local_res8,&local_50);
|
||||
(**(code **)(**(longlong **)(param_1 + 0x148) + 0x80))
|
||||
(*(longlong **)(param_1 + 0x148),uVar5);
|
||||
FUN_14019a9e0(&local_50);
|
||||
puVar3 = local_res8;
|
||||
if (((local_res8 != (undefined *)0x0) && (local_res8 != PTR_DAT_1403440a0)) &&
|
||||
(puVar1 = local_res8 + -8, puVar1 != (undefined *)0x0)) {
|
||||
uVar5 = FUN_14016d8c0();
|
||||
local_70 = uVar5;
|
||||
FUN_14016db50(uVar5);
|
||||
local_68 = 1;
|
||||
piVar2 = (int *)(puVar3 + -4);
|
||||
*piVar2 = *piVar2 + -1;
|
||||
if (*piVar2 == 0) {
|
||||
FUN_14016d970(puVar1);
|
||||
}
|
||||
FUN_14016dbe0(uVar5);
|
||||
}
|
||||
}
|
||||
}
|
||||
else {
|
||||
if (*(longlong *)(*(longlong *)(param_1 + 0x148) + 0x758) != 0) {
|
||||
FUN_14016d8c0();
|
||||
local_res8 = PTR_DAT_1403440a0;
|
||||
FUN_14004c020(&local_res8,&DAT_140282c00,param_3,param_4,
|
||||
CONCAT44(uVar6,*(undefined4 *)(param_2 + 0x6f8)));
|
||||
local_48 = 0;
|
||||
local_40 = 0;
|
||||
local_38 = 0;
|
||||
local_30 = 0;
|
||||
local_50 = Proud::ByteArray::vftable;
|
||||
uVar5 = FUN_140198f80(&local_70,1,*(undefined4 *)(param_2 + 0x6f8),&local_res8,&local_50);
|
||||
(**(code **)(**(longlong **)(param_1 + 0x148) + 0x80))
|
||||
(*(longlong **)(param_1 + 0x148),uVar5);
|
||||
FUN_14019a9e0(&local_50);
|
||||
puVar3 = local_res8;
|
||||
if (((local_res8 != (undefined *)0x0) && (local_res8 != PTR_DAT_1403440a0)) &&
|
||||
(puVar1 = local_res8 + -8, puVar1 != (undefined *)0x0)) {
|
||||
uVar5 = FUN_14016d8c0();
|
||||
local_70 = uVar5;
|
||||
FUN_14016db50(uVar5);
|
||||
local_68 = 1;
|
||||
piVar2 = (int *)(puVar3 + -4);
|
||||
*piVar2 = *piVar2 + -1;
|
||||
if (*piVar2 == 0) {
|
||||
FUN_14016d970(puVar1);
|
||||
}
|
||||
FUN_14016dbe0(uVar5);
|
||||
}
|
||||
}
|
||||
local_48 = 0;
|
||||
local_40 = 0;
|
||||
local_38 = 0;
|
||||
local_30 = 0;
|
||||
local_50 = Proud::ByteArray::vftable;
|
||||
FUN_140196230(*(undefined8 *)(param_1 + 0x148),param_2,1,3,&local_50,
|
||||
L"Proud::CNetThreads_S::ShowThreadExceptionAndPurgeClient",0);
|
||||
FUN_14019a9e0(&local_50);
|
||||
}
|
||||
FUN_14016dbe0(uVar4);
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
||||
Loading…
Add table
Add a link
Reference in a new issue