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
106
decomp/DBCServer_Release_x64/full/functions/0x1401f4cd0.c
Normal file
106
decomp/DBCServer_Release_x64/full/functions/0x1401f4cd0.c
Normal file
|
|
@ -0,0 +1,106 @@
|
|||
/* DBCServer_Release_x64.exe sha256 d9e4fccdf3482e50247686d4452c0b13c75a53efc4bd7320668eece8d1ce828c
|
||||
* Ghidra 12.1.2 decompiler output for 0x1401f4cd0 FUN_1401f4cd0
|
||||
* Pseudocode, not original source. */
|
||||
|
||||
/* WARNING: Removing unreachable block (ram,0x0001401f4ece) */
|
||||
|
||||
void FUN_1401f4cd0(longlong param_1,undefined8 param_2,undefined8 param_3,undefined8 param_4)
|
||||
|
||||
{
|
||||
longlong lVar1;
|
||||
ulonglong *puVar2;
|
||||
char cVar3;
|
||||
ulonglong uVar4;
|
||||
longlong lVar5;
|
||||
ulonglong uVar6;
|
||||
int iVar7;
|
||||
ulonglong uVar8;
|
||||
undefined8 uVar9;
|
||||
longlong lVar10;
|
||||
undefined1 uVar11;
|
||||
undefined8 local_40;
|
||||
undefined **local_38;
|
||||
undefined4 local_30;
|
||||
undefined2 local_2c;
|
||||
undefined4 local_28;
|
||||
|
||||
uVar9 = 0xfffffffffffffffe;
|
||||
lVar1 = param_1 + 0x10;
|
||||
uVar8 = 0;
|
||||
while( true ) {
|
||||
lVar10 = lVar1;
|
||||
FUN_14016db50(lVar1);
|
||||
uVar11 = 1;
|
||||
lVar5 = lVar1;
|
||||
if (DAT_14034c8c0 != '\0') break;
|
||||
local_38 = Proud::AddrPort::vftable;
|
||||
local_28 = 0;
|
||||
local_40 = 0;
|
||||
local_30 = DAT_140344450;
|
||||
local_2c = DAT_140344454;
|
||||
uVar6 = uVar8;
|
||||
lVar5 = lVar10;
|
||||
while (iVar7 = (int)uVar6, iVar7 != *(int *)(param_1 + 0x118)) {
|
||||
if ((iVar7 < 0) || (*(int *)(param_1 + 0x118) <= iVar7)) {
|
||||
/* WARNING: Subroutine does not return */
|
||||
FUN_14016d6e0();
|
||||
}
|
||||
puVar2 = *(ulonglong **)(*(longlong *)(param_1 + 0x110) + (longlong)iVar7 * 8);
|
||||
uVar6 = uVar8;
|
||||
if (puVar2 != (ulonglong *)0x0) {
|
||||
uVar6 = *puVar2;
|
||||
}
|
||||
if ((*(longlong **)(uVar6 + 0x10) != (longlong *)0x0) &&
|
||||
(lVar10 = **(longlong **)(uVar6 + 0x10), lVar10 != 0)) {
|
||||
cVar3 = FUN_14019c2f0(lVar10,0,&local_40,param_4,uVar9,lVar5,uVar11);
|
||||
if (cVar3 != '\0') {
|
||||
*(undefined1 *)(uVar6 + 0xc0) = 0;
|
||||
}
|
||||
uVar4 = uVar8;
|
||||
if (*(ulonglong **)(uVar6 + 0x10) != (ulonglong *)0x0) {
|
||||
uVar4 = **(ulonglong **)(uVar6 + 0x10);
|
||||
}
|
||||
cVar3 = FUN_14019c560(uVar4,0,&local_40);
|
||||
if (cVar3 != '\0') {
|
||||
*(undefined1 *)(uVar6 + 0x80) = 0;
|
||||
}
|
||||
}
|
||||
if (((*(longlong **)(uVar6 + 0x10) != (longlong *)0x0) && (**(longlong **)(uVar6 + 0x10) != 0)
|
||||
) && ((cVar3 = FUN_14019c8d0(), cVar3 == '\0' ||
|
||||
((*(char *)(uVar6 + 0xc0) != '\0' || (*(char *)(uVar6 + 0x80) != '\0'))))))
|
||||
goto LAB_1401f4ea7;
|
||||
if (*(int *)(param_1 + 0x118) <= iVar7) {
|
||||
/* WARNING: Subroutine does not return */
|
||||
FUN_14016d6e0();
|
||||
}
|
||||
uVar6 = (ulonglong)(iVar7 + 1);
|
||||
}
|
||||
uVar6 = uVar8;
|
||||
if (*(longlong *)(param_1 + 0x70) != 0) {
|
||||
uVar6 = *(ulonglong *)(param_1 + 0x60);
|
||||
}
|
||||
while( true ) {
|
||||
uVar4 = uVar6;
|
||||
if (uVar4 == 0) goto LAB_1401f4ee3;
|
||||
uVar6 = uVar8;
|
||||
if (*(ulonglong **)(uVar4 + 8) != (ulonglong *)0x0) {
|
||||
uVar6 = **(ulonglong **)(uVar4 + 8);
|
||||
}
|
||||
if (((*(longlong **)(uVar6 + 0x2480) != (longlong *)0x0) &&
|
||||
(**(longlong **)(uVar6 + 0x2480) != 0)) &&
|
||||
((cVar3 = FUN_14019c8d0(), cVar3 == '\0' ||
|
||||
((*(char *)(uVar6 + 0x2500) != '\0' || (*(char *)(uVar6 + 0x24c0) != '\0')))))) break;
|
||||
uVar6 = uVar8;
|
||||
if (uVar4 != 0) {
|
||||
uVar6 = *(ulonglong *)(uVar4 + 0x10);
|
||||
}
|
||||
}
|
||||
LAB_1401f4ea7:
|
||||
FUN_14016dbe0(lVar5);
|
||||
Sleep(10);
|
||||
}
|
||||
LAB_1401f4ee3:
|
||||
FUN_14016dbe0(lVar5);
|
||||
return;
|
||||
}
|
||||
|
||||
Loading…
Add table
Add a link
Reference in a new issue