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
124
decomp/DBCServer_Release_x64/full/functions/0x14013c210.c
Normal file
124
decomp/DBCServer_Release_x64/full/functions/0x14013c210.c
Normal file
|
|
@ -0,0 +1,124 @@
|
|||
/* DBCServer_Release_x64.exe sha256 d9e4fccdf3482e50247686d4452c0b13c75a53efc4bd7320668eece8d1ce828c
|
||||
* Ghidra 12.1.2 decompiler output for 0x14013c210 FUN_14013c210
|
||||
* Pseudocode, not original source. */
|
||||
|
||||
/* WARNING: Function: __security_check_cookie replaced with injection: security_check_cookie */
|
||||
|
||||
void FUN_14013c210(longlong param_1,undefined4 param_2,undefined8 *param_3,undefined8 param_4)
|
||||
|
||||
{
|
||||
undefined *puVar1;
|
||||
int *piVar2;
|
||||
int iVar3;
|
||||
int iVar4;
|
||||
undefined8 uVar5;
|
||||
undefined *puVar6;
|
||||
int iVar7;
|
||||
undefined1 auStack_c8 [32];
|
||||
undefined **local_a8;
|
||||
undefined4 *local_a0;
|
||||
undefined *local_98;
|
||||
undefined8 local_90;
|
||||
undefined4 local_88;
|
||||
undefined2 local_84;
|
||||
undefined4 local_82 [2];
|
||||
undefined8 local_78;
|
||||
undefined1 local_70;
|
||||
undefined8 local_68;
|
||||
undefined2 local_60;
|
||||
undefined2 uStack_5e;
|
||||
undefined4 uStack_5c;
|
||||
undefined4 local_58;
|
||||
undefined2 local_54;
|
||||
undefined8 local_52;
|
||||
undefined8 local_4a;
|
||||
ulonglong local_40;
|
||||
|
||||
local_68 = 0xfffffffffffffffe;
|
||||
local_40 = DAT_1403463c0 ^ (ulonglong)auStack_c8;
|
||||
local_54 = 0;
|
||||
local_82[0] = 0;
|
||||
uStack_5e = 0x504;
|
||||
local_60 = 0x1e;
|
||||
uStack_5c = 0;
|
||||
local_52 = *param_3;
|
||||
local_4a = param_3[1];
|
||||
local_84 = 1;
|
||||
local_90 = 0x5040012;
|
||||
local_88 = param_2;
|
||||
local_58 = param_2;
|
||||
FUN_1400d55f0(*(undefined8 *)(param_1 + 0xe0),&local_60,&local_90);
|
||||
*(int *)(param_1 + 0x6a4) = *(int *)(param_1 + 0x6a4) + 1;
|
||||
FUN_14016d8c0();
|
||||
local_98 = PTR_DAT_1403440a0;
|
||||
iVar3 = FUN_14016d740(param_4);
|
||||
iVar7 = 0;
|
||||
if ((local_98 != (undefined *)0x0) && (iVar7 = 0, local_98 != PTR_DAT_1403440a0)) {
|
||||
iVar7 = *(int *)(local_98 + -8);
|
||||
}
|
||||
iVar4 = iVar3;
|
||||
if (((iVar3 <= iVar7) && (iVar4 = 0, local_98 != (undefined *)0x0)) &&
|
||||
(local_98 != PTR_DAT_1403440a0)) {
|
||||
iVar4 = *(int *)(local_98 + -8);
|
||||
}
|
||||
iVar7 = 1;
|
||||
if (1 < iVar4) {
|
||||
iVar7 = iVar4;
|
||||
}
|
||||
iVar4 = 0;
|
||||
if ((local_98 != (undefined *)0x0) && (iVar4 = 0, local_98 != PTR_DAT_1403440a0)) {
|
||||
iVar4 = *(int *)(local_98 + -8);
|
||||
}
|
||||
if (iVar4 < iVar7) {
|
||||
FUN_14004e770(&local_98,iVar7);
|
||||
}
|
||||
FUN_14004e850(&local_98);
|
||||
puVar6 = local_98;
|
||||
if (local_98 == (undefined *)0x0) {
|
||||
puVar6 = PTR_DAT_1403440a0;
|
||||
}
|
||||
FUN_14016d770(puVar6,param_4,iVar3);
|
||||
puVar6 = local_98;
|
||||
if (local_98 == (undefined *)0x0) {
|
||||
puVar6 = PTR_DAT_1403440a0;
|
||||
}
|
||||
iVar3 = FUN_14016d740(puVar6);
|
||||
iVar7 = 0;
|
||||
if (0 < iVar3) {
|
||||
iVar7 = iVar3;
|
||||
}
|
||||
iVar3 = 0;
|
||||
if ((local_98 != (undefined *)0x0) && (local_98 != PTR_DAT_1403440a0)) {
|
||||
iVar3 = *(int *)(local_98 + -8);
|
||||
}
|
||||
if ((iVar3 <= iVar7) && (iVar7 = 0, local_98 != (undefined *)0x0)) {
|
||||
if (local_98 == PTR_DAT_1403440a0) goto LAB_14013c3b0;
|
||||
iVar7 = *(int *)(local_98 + -8);
|
||||
}
|
||||
if (((local_98 != PTR_DAT_1403440a0) && (local_98 != (undefined *)0x0)) &&
|
||||
((int *)(local_98 + -8) != (int *)0x0)) {
|
||||
*(int *)(local_98 + -8) = iVar7;
|
||||
*(undefined2 *)(local_98 + (longlong)iVar7 * 2) = 0;
|
||||
}
|
||||
LAB_14013c3b0:
|
||||
local_a0 = local_82;
|
||||
local_a8 = &local_98;
|
||||
(**(code **)(*(longlong *)(param_1 + 0xa8) + 0x420))
|
||||
((longlong *)(param_1 + 0xa8),param_2,&DAT_1403440f0,&local_52);
|
||||
puVar6 = local_98;
|
||||
if (((local_98 != (undefined *)0x0) && (local_98 != PTR_DAT_1403440a0)) &&
|
||||
(puVar1 = local_98 + -8, puVar1 != (undefined *)0x0)) {
|
||||
uVar5 = FUN_14016d8c0();
|
||||
local_78 = uVar5;
|
||||
FUN_14016db50(uVar5);
|
||||
local_70 = 1;
|
||||
piVar2 = (int *)(puVar6 + -4);
|
||||
*piVar2 = *piVar2 + -1;
|
||||
if (*piVar2 == 0) {
|
||||
FUN_14016d970(puVar1);
|
||||
}
|
||||
FUN_14016dbe0(uVar5);
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
||||
Loading…
Add table
Add a link
Reference in a new issue