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
176
decomp/DBCServer_Release_x64/full/functions/0x1401f5340.c
Normal file
176
decomp/DBCServer_Release_x64/full/functions/0x1401f5340.c
Normal file
|
|
@ -0,0 +1,176 @@
|
|||
/* DBCServer_Release_x64.exe sha256 d9e4fccdf3482e50247686d4452c0b13c75a53efc4bd7320668eece8d1ce828c
|
||||
* Ghidra 12.1.2 decompiler output for 0x1401f5340 FUN_1401f5340
|
||||
* Pseudocode, not original source. */
|
||||
|
||||
/* WARNING: Function: __security_check_cookie replaced with injection: security_check_cookie */
|
||||
|
||||
undefined8 FUN_1401f5340(longlong param_1,longlong *param_2)
|
||||
|
||||
{
|
||||
int *piVar1;
|
||||
int iVar2;
|
||||
char *pcVar3;
|
||||
undefined *puVar4;
|
||||
longlong *plVar5;
|
||||
undefined8 uVar6;
|
||||
undefined8 uVar7;
|
||||
char *pcVar8;
|
||||
undefined *puVar9;
|
||||
int iVar10;
|
||||
undefined1 auStack_1a8 [32];
|
||||
undefined8 local_188;
|
||||
undefined1 local_180;
|
||||
undefined *local_178;
|
||||
undefined *local_170;
|
||||
longlong *local_168;
|
||||
undefined8 local_160;
|
||||
undefined8 local_158;
|
||||
undefined1 local_150;
|
||||
undefined1 *local_148;
|
||||
undefined1 local_140 [264];
|
||||
ulonglong local_38;
|
||||
|
||||
local_160 = 0xfffffffffffffffe;
|
||||
local_38 = DAT_1403463c0 ^ (ulonglong)auStack_1a8;
|
||||
local_168 = param_2;
|
||||
FUN_14016d8c0();
|
||||
puVar9 = PTR_DAT_140344098;
|
||||
local_178 = PTR_DAT_140344098;
|
||||
pcVar3 = (char *)*param_2;
|
||||
pcVar8 = PTR_DAT_140344098;
|
||||
if (((pcVar3 == (char *)0x0) || (pcVar8 = pcVar3, pcVar3 == PTR_DAT_140344098)) ||
|
||||
(-1 < *(int *)(pcVar3 + -8))) {
|
||||
pcVar3 = strstr(pcVar8,"http");
|
||||
iVar2 = -1;
|
||||
if (pcVar3 != (char *)0x0) {
|
||||
puVar4 = (undefined *)*param_2;
|
||||
if ((undefined *)*param_2 == (undefined *)0x0) {
|
||||
puVar4 = PTR_DAT_140344098;
|
||||
}
|
||||
iVar2 = (int)pcVar3 - (int)puVar4;
|
||||
}
|
||||
}
|
||||
else {
|
||||
iVar2 = -1;
|
||||
}
|
||||
pcVar3 = (char *)*param_2;
|
||||
pcVar8 = PTR_DAT_140344098;
|
||||
if ((((pcVar3 == (char *)0x0) || (pcVar8 = pcVar3, pcVar3 == PTR_DAT_140344098)) ||
|
||||
(iVar10 = -1, -1 < *(int *)(pcVar3 + -8))) &&
|
||||
(pcVar3 = strstr(pcVar8,".xml"), iVar10 = -1, pcVar3 != (char *)0x0)) {
|
||||
puVar4 = (undefined *)*param_2;
|
||||
if ((undefined *)*param_2 == (undefined *)0x0) {
|
||||
puVar4 = PTR_DAT_140344098;
|
||||
}
|
||||
iVar10 = (int)pcVar3 - (int)puVar4;
|
||||
}
|
||||
if ((iVar2 < iVar10) && (-1 < iVar2)) {
|
||||
plVar5 = (longlong *)FUN_1401f5030(param_2,&local_170,iVar2,(iVar10 - iVar2) + 4);
|
||||
if (puVar9 == (undefined *)0x0) {
|
||||
puVar9 = PTR_DAT_140344098;
|
||||
}
|
||||
local_178 = puVar9;
|
||||
if ((undefined *)*plVar5 != puVar9) {
|
||||
uVar6 = FUN_14016d8c0();
|
||||
local_158 = uVar6;
|
||||
FUN_14016db50(uVar6);
|
||||
local_150 = 1;
|
||||
if (((puVar9 != (undefined *)0x0) && (puVar9 != PTR_DAT_140344098)) &&
|
||||
(puVar9 + -8 != (undefined *)0x0)) {
|
||||
uVar7 = FUN_14016d8c0();
|
||||
local_188 = uVar7;
|
||||
FUN_14016db50(uVar7);
|
||||
local_180 = 1;
|
||||
piVar1 = (int *)(puVar9 + -4);
|
||||
*piVar1 = *piVar1 + -1;
|
||||
if (*piVar1 == 0) {
|
||||
FUN_14016d970(puVar9 + -8);
|
||||
}
|
||||
FUN_14016dbe0(uVar7);
|
||||
}
|
||||
puVar9 = (undefined *)*plVar5;
|
||||
if (((puVar9 != PTR_DAT_140344098) && (puVar9 != (undefined *)0x0)) &&
|
||||
(puVar9 != (undefined *)0x8)) {
|
||||
*(int *)(puVar9 + -4) = *(int *)(puVar9 + -4) + 1;
|
||||
}
|
||||
local_178 = puVar9;
|
||||
FUN_14016dbe0(uVar6);
|
||||
}
|
||||
if (((local_170 != (undefined *)0x0) && (local_170 != PTR_DAT_140344098)) &&
|
||||
(local_170 + -8 != (undefined *)0x0)) {
|
||||
uVar6 = FUN_14016d8c0();
|
||||
local_188 = uVar6;
|
||||
FUN_14016db50(uVar6);
|
||||
local_180 = 1;
|
||||
piVar1 = (int *)(local_170 + -4);
|
||||
*piVar1 = *piVar1 + -1;
|
||||
if (*piVar1 == 0) {
|
||||
FUN_14016d970(local_170 + -8);
|
||||
}
|
||||
FUN_14016dbe0(uVar6);
|
||||
}
|
||||
}
|
||||
puVar4 = puVar9;
|
||||
if (puVar9 == (undefined *)0x0) {
|
||||
puVar4 = PTR_DAT_140344098;
|
||||
}
|
||||
local_148 = local_140;
|
||||
FUN_14015b060(&local_148,puVar4,3);
|
||||
iVar2 = FUN_1401f5200(param_1 + 0x10,local_148,0);
|
||||
if (local_148 != local_140) {
|
||||
free(local_148);
|
||||
}
|
||||
if (iVar2 == 0) {
|
||||
if (((puVar9 != (undefined *)0x0) && (puVar9 != PTR_DAT_140344098)) &&
|
||||
(puVar9 + -8 != (undefined *)0x0)) {
|
||||
uVar6 = FUN_14016d8c0();
|
||||
local_188 = uVar6;
|
||||
FUN_14016db50(uVar6);
|
||||
local_180 = 1;
|
||||
piVar1 = (int *)(puVar9 + -4);
|
||||
*piVar1 = *piVar1 + -1;
|
||||
if (*piVar1 == 0) {
|
||||
FUN_14016d970(puVar9 + -8);
|
||||
}
|
||||
FUN_14016dbe0(uVar6);
|
||||
}
|
||||
FUN_14004f5a0(param_2);
|
||||
uVar6 = 0;
|
||||
}
|
||||
else if (param_1 == 0x1402a4a4e) {
|
||||
if (((puVar9 != (undefined *)0x0) && (puVar9 != PTR_DAT_140344098)) &&
|
||||
(puVar9 + -8 != (undefined *)0x0)) {
|
||||
uVar6 = FUN_14016d8c0();
|
||||
local_188 = uVar6;
|
||||
FUN_14016db50(uVar6);
|
||||
local_180 = 1;
|
||||
piVar1 = (int *)(puVar9 + -4);
|
||||
*piVar1 = *piVar1 + -1;
|
||||
if (*piVar1 == 0) {
|
||||
FUN_14016d970(puVar9 + -8);
|
||||
}
|
||||
FUN_14016dbe0(uVar6);
|
||||
}
|
||||
FUN_14004f5a0(param_2);
|
||||
uVar6 = 0;
|
||||
}
|
||||
else {
|
||||
if (((puVar9 != (undefined *)0x0) && (puVar9 != PTR_DAT_140344098)) &&
|
||||
(puVar9 + -8 != (undefined *)0x0)) {
|
||||
uVar6 = FUN_14016d8c0();
|
||||
local_188 = uVar6;
|
||||
FUN_14016db50(uVar6);
|
||||
local_180 = 1;
|
||||
piVar1 = (int *)(puVar9 + -4);
|
||||
*piVar1 = *piVar1 + -1;
|
||||
if (*piVar1 == 0) {
|
||||
FUN_14016d970(puVar9 + -8);
|
||||
}
|
||||
FUN_14016dbe0(uVar6);
|
||||
}
|
||||
FUN_14004f5a0(param_2);
|
||||
uVar6 = 1;
|
||||
}
|
||||
return uVar6;
|
||||
}
|
||||
|
||||
Loading…
Add table
Add a link
Reference in a new issue