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
797
decomp/MessageServer_Release_x64/full/functions/0x14005ceb0.c
Normal file
797
decomp/MessageServer_Release_x64/full/functions/0x14005ceb0.c
Normal file
|
|
@ -0,0 +1,797 @@
|
|||
/* MessageServer_Release_x64.exe sha256 7911b15c4379625eaa12ff227708aa3a033bc6ac2cf6b34283136e3a62df25f1
|
||||
* Ghidra 12.1.2 decompiler output for 0x14005ceb0 FUN_14005ceb0
|
||||
* Pseudocode, not original source. */
|
||||
|
||||
/* WARNING: Function: __security_check_cookie replaced with injection: security_check_cookie */
|
||||
/* WARNING: Type propagation algorithm not settling */
|
||||
/* WARNING: Globals starting with '_' overlap smaller symbols at the same address */
|
||||
|
||||
undefined8 FUN_14005ceb0(longlong param_1,int param_2,undefined8 param_3,undefined8 param_4)
|
||||
|
||||
{
|
||||
short sVar1;
|
||||
int iVar2;
|
||||
undefined **ppuVar3;
|
||||
undefined **extraout_RAX;
|
||||
longlong lVar4;
|
||||
undefined **extraout_RAX_00;
|
||||
ulonglong uVar5;
|
||||
longlong lVar6;
|
||||
longlong lVar7;
|
||||
longlong lVar8;
|
||||
short *psVar9;
|
||||
char *******pppppppcVar10;
|
||||
longlong *plVar11;
|
||||
longlong *plVar12;
|
||||
char *pcVar13;
|
||||
char *pcVar14;
|
||||
char *pcVar15;
|
||||
char *pcVar16;
|
||||
char *pcVar17;
|
||||
char *pcVar18;
|
||||
short *psVar19;
|
||||
char *pcVar20;
|
||||
char *_Str;
|
||||
bool bVar21;
|
||||
undefined1 auStack_268 [32];
|
||||
undefined **local_248 [5];
|
||||
longlong *local_220;
|
||||
undefined8 *local_210;
|
||||
void *local_208;
|
||||
uint local_1ec;
|
||||
undefined8 *local_1e8;
|
||||
void *local_1e0;
|
||||
undefined ***local_1c8;
|
||||
undefined8 local_1c0;
|
||||
basic_ios<char,std::char_traits<char>_> *local_1b8;
|
||||
longlong local_1a8;
|
||||
undefined **local_1a0 [4];
|
||||
undefined8 *local_180;
|
||||
undefined8 *local_178;
|
||||
undefined8 *local_158;
|
||||
undefined4 *local_140;
|
||||
undefined8 local_130;
|
||||
uint local_128;
|
||||
basic_ios<char,std::char_traits<char>_> local_120 [104];
|
||||
WCHAR local_b8;
|
||||
undefined6 uStack_b6;
|
||||
undefined8 local_a8;
|
||||
ulonglong local_a0;
|
||||
void *local_90 [2];
|
||||
undefined8 local_80;
|
||||
ulonglong local_78;
|
||||
char *******local_68 [3];
|
||||
ulonglong local_50;
|
||||
ulonglong local_40;
|
||||
|
||||
local_1c0 = 0xfffffffffffffffe;
|
||||
local_40 = DAT_1401ac5a0 ^ (ulonglong)auStack_268;
|
||||
psVar9 = &DAT_1401b35a8;
|
||||
if (7 < DAT_1401b35c0) {
|
||||
psVar9 = _DAT_1401b35a8;
|
||||
}
|
||||
local_a0 = 7;
|
||||
_Str = (char *)0x0;
|
||||
local_a8 = 0;
|
||||
local_b8 = L'\0';
|
||||
uVar5 = 0xffffffffffffffff;
|
||||
psVar19 = psVar9;
|
||||
do {
|
||||
if (uVar5 == 0) break;
|
||||
uVar5 = uVar5 - 1;
|
||||
sVar1 = *psVar19;
|
||||
psVar19 = psVar19 + 1;
|
||||
} while (sVar1 != 0);
|
||||
FUN_140001830((ulonglong *)&local_b8,psVar9,~uVar5 - 1);
|
||||
FUN_140118aa0((ulonglong *)local_68,&local_b8);
|
||||
if (7 < local_a0) {
|
||||
operator_delete((void *)CONCAT62(uStack_b6,local_b8));
|
||||
}
|
||||
local_a0 = 7;
|
||||
local_a8 = 0;
|
||||
local_b8 = L'\0';
|
||||
pppppppcVar10 = (char *******)local_68;
|
||||
if (0xf < local_50) {
|
||||
pppppppcVar10 = local_68[0];
|
||||
}
|
||||
FUN_14000c2a0(local_248,(char *)pppppppcVar10);
|
||||
DAT_1401b33e8 = 0;
|
||||
uVar5 = FUN_14000c370((longlong *)local_248,(char *)(local_210 + 2));
|
||||
if ((char)uVar5 == '\0') {
|
||||
FUN_14000abd0("Error : %d - %s",(ulonglong)local_1ec,local_1e8 + 2,param_4);
|
||||
local_248[0] = TiXmlDocument::vftable;
|
||||
if (local_1e8 != &DAT_1401bcf30) {
|
||||
operator_delete__(local_1e0);
|
||||
}
|
||||
local_248[0] = TiXmlNode::vftable;
|
||||
while (local_220 != (longlong *)0x0) {
|
||||
plVar12 = (longlong *)local_220[10];
|
||||
(**(code **)*local_220)(local_220,1);
|
||||
local_220 = plVar12;
|
||||
}
|
||||
if (local_210 != &DAT_1401bcf30) {
|
||||
operator_delete__(local_208);
|
||||
}
|
||||
ppuVar3 = TiXmlBase::vftable;
|
||||
local_248[0] = TiXmlBase::vftable;
|
||||
if (0xf < local_50) {
|
||||
operator_delete(local_68[0]);
|
||||
ppuVar3 = extraout_RAX;
|
||||
}
|
||||
return (ulonglong)ppuVar3 & 0xffffffffffffff00;
|
||||
}
|
||||
if ((*(byte *)(param_1 + 0x1e8) < 0xd) ||
|
||||
(plVar12 = local_220, (byte)(*(byte *)(param_1 + 0x1e8) - 0x11) < 3)) {
|
||||
FUN_1400602b0(param_1);
|
||||
plVar12 = local_220;
|
||||
}
|
||||
for (; plVar12 != (longlong *)0x0; plVar12 = (longlong *)plVar12[10]) {
|
||||
bVar21 = (char *)(plVar12[7] + 0x10) == (char *)0x0;
|
||||
lVar6 = 0xd;
|
||||
pcVar13 = (char *)(plVar12[7] + 0x10);
|
||||
pcVar14 = "agentmanager";
|
||||
do {
|
||||
if (lVar6 == 0) break;
|
||||
lVar6 = lVar6 + -1;
|
||||
bVar21 = *pcVar13 == *pcVar14;
|
||||
pcVar13 = pcVar13 + 1;
|
||||
pcVar14 = pcVar14 + 1;
|
||||
} while (bVar21);
|
||||
if (bVar21) goto LAB_14005d0c3;
|
||||
}
|
||||
LAB_14005d124:
|
||||
*(int *)(param_1 + 0x154) = param_2;
|
||||
*(undefined1 *)(param_1 + 0x150) = 1;
|
||||
FUN_1400605f0((basic_ostream<char,std::char_traits<char>_> *)&local_1a8);
|
||||
std::basic_ostream<char,std::char_traits<char>_>::operator<<
|
||||
((basic_ostream<char,std::char_traits<char>_> *)&local_1a8,param_2);
|
||||
FUN_140060690((longlong)&local_1a8,local_90);
|
||||
for (plVar12 = local_220; plVar11 = local_220, plVar12 != (longlong *)0x0;
|
||||
plVar12 = (longlong *)plVar12[10]) {
|
||||
bVar21 = (char *)(plVar12[7] + 0x10) == (char *)0x0;
|
||||
lVar6 = 0xc;
|
||||
pcVar13 = (char *)(plVar12[7] + 0x10);
|
||||
pcVar14 = "each_option";
|
||||
do {
|
||||
if (lVar6 == 0) break;
|
||||
lVar6 = lVar6 + -1;
|
||||
bVar21 = *pcVar13 == *pcVar14;
|
||||
pcVar13 = pcVar13 + 1;
|
||||
pcVar14 = pcVar14 + 1;
|
||||
} while (bVar21);
|
||||
if (bVar21) goto LAB_14005d196;
|
||||
}
|
||||
joined_r0x00014005d31b:
|
||||
do {
|
||||
plVar12 = local_220;
|
||||
if (plVar11 == (longlong *)0x0) goto joined_r0x00014005d3e7;
|
||||
bVar21 = (char *)(plVar11[7] + 0x10) == (char *)0x0;
|
||||
lVar6 = 4;
|
||||
pcVar13 = (char *)(plVar11[7] + 0x10);
|
||||
pcVar14 = "dns";
|
||||
do {
|
||||
if (lVar6 == 0) break;
|
||||
lVar6 = lVar6 + -1;
|
||||
bVar21 = *pcVar13 == *pcVar14;
|
||||
pcVar13 = pcVar13 + 1;
|
||||
pcVar14 = pcVar14 + 1;
|
||||
} while (bVar21);
|
||||
if (bVar21) goto LAB_14005d347;
|
||||
plVar11 = (longlong *)plVar11[10];
|
||||
} while( true );
|
||||
LAB_14005d0c3:
|
||||
while (lVar6 = (**(code **)(*plVar12 + 0x30))(plVar12), lVar6 == 0) {
|
||||
do {
|
||||
plVar12 = (longlong *)plVar12[10];
|
||||
if (plVar12 == (longlong *)0x0) goto LAB_14005d124;
|
||||
bVar21 = (char *)(plVar12[7] + 0x10) == (char *)0x0;
|
||||
lVar6 = 0xd;
|
||||
pcVar13 = (char *)(plVar12[7] + 0x10);
|
||||
pcVar14 = "agentmanager";
|
||||
do {
|
||||
if (lVar6 == 0) break;
|
||||
lVar6 = lVar6 + -1;
|
||||
bVar21 = *pcVar13 == *pcVar14;
|
||||
pcVar13 = pcVar13 + 1;
|
||||
pcVar14 = pcVar14 + 1;
|
||||
} while (bVar21);
|
||||
} while (!bVar21);
|
||||
}
|
||||
lVar6 = (**(code **)(*plVar12 + 0x30))(plVar12);
|
||||
if ((lVar6 != 0) && (lVar6 = FUN_14000b9d0(lVar6,0x1401632d0), lVar6 != 0)) {
|
||||
FUN_14005fb60(param_1,lVar6,0x15);
|
||||
}
|
||||
goto LAB_14005d124;
|
||||
LAB_14005d196:
|
||||
while (lVar6 = (**(code **)(*plVar12 + 0x30))(plVar12), lVar6 == 0) {
|
||||
do {
|
||||
plVar12 = (longlong *)plVar12[10];
|
||||
plVar11 = local_220;
|
||||
if (plVar12 == (longlong *)0x0) goto joined_r0x00014005d31b;
|
||||
bVar21 = (char *)(plVar12[7] + 0x10) == (char *)0x0;
|
||||
lVar6 = 0xc;
|
||||
pcVar13 = (char *)(plVar12[7] + 0x10);
|
||||
pcVar14 = "each_option";
|
||||
do {
|
||||
if (lVar6 == 0) break;
|
||||
lVar6 = lVar6 + -1;
|
||||
bVar21 = *pcVar13 == *pcVar14;
|
||||
pcVar13 = pcVar13 + 1;
|
||||
pcVar14 = pcVar14 + 1;
|
||||
} while (bVar21);
|
||||
} while (!bVar21);
|
||||
}
|
||||
lVar6 = (**(code **)(*plVar12 + 0x30))(plVar12);
|
||||
plVar11 = local_220;
|
||||
if (lVar6 != 0) {
|
||||
for (plVar12 = *(longlong **)(lVar6 + 0x28); pcVar13 = _Str, plVar12 != (longlong *)0x0;
|
||||
plVar12 = (longlong *)plVar12[10]) {
|
||||
lVar6 = (**(code **)(*plVar12 + 0x30))(plVar12);
|
||||
if (lVar6 != 0) {
|
||||
pcVar13 = (char *)(**(code **)(*plVar12 + 0x30))(plVar12);
|
||||
break;
|
||||
}
|
||||
}
|
||||
joined_r0x00014005d213:
|
||||
plVar11 = local_220;
|
||||
if (pcVar13 != (char *)0x0) {
|
||||
pcVar14 = (char *)(*(longlong *)(pcVar13 + 0x38) + 0x10);
|
||||
if (pcVar14 != (char *)0x0) {
|
||||
for (pcVar15 = *(char **)(pcVar13 + 0xa0); pcVar15 != pcVar13 + 0x58;
|
||||
pcVar15 = *(char **)(pcVar15 + 0x48)) {
|
||||
bVar21 = (char *)(*(longlong *)(pcVar15 + 0x20) + 0x10) == (char *)0x0;
|
||||
lVar6 = 5;
|
||||
pcVar16 = (char *)(*(longlong *)(pcVar15 + 0x20) + 0x10);
|
||||
pcVar17 = "code";
|
||||
do {
|
||||
if (lVar6 == 0) break;
|
||||
lVar6 = lVar6 + -1;
|
||||
bVar21 = *pcVar16 == *pcVar17;
|
||||
pcVar16 = pcVar16 + 1;
|
||||
pcVar17 = pcVar17 + 1;
|
||||
} while (bVar21);
|
||||
if (bVar21) {
|
||||
if ((char *)(*(longlong *)(pcVar15 + 0x30) + 0x10) != (char *)0x0) {
|
||||
pcVar16 = (char *)local_90;
|
||||
if (0xf < local_78) {
|
||||
pcVar16 = (char *)CONCAT71(local_90[0]._1_7_,(char)local_90[0]);
|
||||
}
|
||||
iVar2 = _stricmp(pcVar16,(char *)(*(longlong *)(pcVar15 + 0x30) + 0x10));
|
||||
if (iVar2 == 0) {
|
||||
iVar2 = _stricmp(pcVar14,"guild");
|
||||
if (iVar2 == 0) {
|
||||
*(undefined4 *)(param_1 + 0x158) = 1;
|
||||
}
|
||||
else {
|
||||
iVar2 = _stricmp(pcVar14,"api");
|
||||
if (iVar2 == 0) {
|
||||
FUN_14005fb60(param_1,(longlong)pcVar13,0x17);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
for (plVar12 = *(longlong **)(pcVar13 + 0x50); pcVar13 = _Str, plVar12 != (longlong *)0x0;
|
||||
plVar12 = (longlong *)plVar12[10]) {
|
||||
lVar6 = (**(code **)(*plVar12 + 0x30))(plVar12);
|
||||
if (lVar6 != 0) {
|
||||
pcVar13 = (char *)(**(code **)(*plVar12 + 0x30))(plVar12);
|
||||
break;
|
||||
}
|
||||
}
|
||||
goto joined_r0x00014005d213;
|
||||
}
|
||||
}
|
||||
goto joined_r0x00014005d31b;
|
||||
LAB_14005d347:
|
||||
while (lVar6 = (**(code **)(*plVar11 + 0x30))(plVar11), lVar6 == 0) {
|
||||
do {
|
||||
plVar11 = (longlong *)plVar11[10];
|
||||
plVar12 = local_220;
|
||||
if (plVar11 == (longlong *)0x0) goto joined_r0x00014005d3e7;
|
||||
bVar21 = (char *)(plVar11[7] + 0x10) == (char *)0x0;
|
||||
lVar6 = 4;
|
||||
pcVar13 = (char *)(plVar11[7] + 0x10);
|
||||
pcVar14 = "dns";
|
||||
do {
|
||||
if (lVar6 == 0) break;
|
||||
lVar6 = lVar6 + -1;
|
||||
bVar21 = *pcVar13 == *pcVar14;
|
||||
pcVar13 = pcVar13 + 1;
|
||||
pcVar14 = pcVar14 + 1;
|
||||
} while (bVar21);
|
||||
} while (!bVar21);
|
||||
}
|
||||
lVar6 = (**(code **)(*plVar11 + 0x30))(plVar11);
|
||||
plVar12 = local_220;
|
||||
if (lVar6 != 0) {
|
||||
for (lVar8 = *(longlong *)(lVar6 + 0xa0); lVar8 != lVar6 + 0x58;
|
||||
lVar8 = *(longlong *)(lVar8 + 0x48)) {
|
||||
pcVar13 = (char *)(*(longlong *)(lVar8 + 0x20) + 0x10);
|
||||
bVar21 = pcVar13 == (char *)0x0;
|
||||
lVar4 = 4;
|
||||
pcVar14 = "dns";
|
||||
do {
|
||||
if (lVar4 == 0) break;
|
||||
lVar4 = lVar4 + -1;
|
||||
bVar21 = *pcVar13 == *pcVar14;
|
||||
pcVar13 = pcVar13 + 1;
|
||||
pcVar14 = pcVar14 + 1;
|
||||
} while (bVar21);
|
||||
if (bVar21) {
|
||||
pcVar13 = (char *)(*(longlong *)(lVar8 + 0x30) + 0x10);
|
||||
if (pcVar13 != (char *)0x0) {
|
||||
iVar2 = atoi(pcVar13);
|
||||
*(bool *)(param_1 + 0x151) = 0 < iVar2;
|
||||
plVar12 = local_220;
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
joined_r0x00014005d3e7:
|
||||
do {
|
||||
plVar11 = local_220;
|
||||
if (plVar12 == (longlong *)0x0) goto joined_r0x00014005d4b7;
|
||||
bVar21 = (char *)(plVar12[7] + 0x10) == (char *)0x0;
|
||||
lVar6 = 0xb;
|
||||
pcVar13 = (char *)(plVar12[7] + 0x10);
|
||||
pcVar14 = "code_start";
|
||||
do {
|
||||
if (lVar6 == 0) break;
|
||||
lVar6 = lVar6 + -1;
|
||||
bVar21 = *pcVar13 == *pcVar14;
|
||||
pcVar13 = pcVar13 + 1;
|
||||
pcVar14 = pcVar14 + 1;
|
||||
} while (bVar21);
|
||||
if (bVar21) break;
|
||||
plVar12 = (longlong *)plVar12[10];
|
||||
} while( true );
|
||||
while (lVar6 = (**(code **)(*plVar12 + 0x30))(plVar12), lVar6 == 0) {
|
||||
do {
|
||||
plVar12 = (longlong *)plVar12[10];
|
||||
plVar11 = local_220;
|
||||
if (plVar12 == (longlong *)0x0) goto joined_r0x00014005d4b7;
|
||||
bVar21 = (char *)(plVar12[7] + 0x10) == (char *)0x0;
|
||||
lVar6 = 0xb;
|
||||
pcVar13 = (char *)(plVar12[7] + 0x10);
|
||||
pcVar14 = "code_start";
|
||||
do {
|
||||
if (lVar6 == 0) break;
|
||||
lVar6 = lVar6 + -1;
|
||||
bVar21 = *pcVar13 == *pcVar14;
|
||||
pcVar13 = pcVar13 + 1;
|
||||
pcVar14 = pcVar14 + 1;
|
||||
} while (bVar21);
|
||||
} while (!bVar21);
|
||||
}
|
||||
lVar6 = (**(code **)(*plVar12 + 0x30))(plVar12);
|
||||
plVar11 = local_220;
|
||||
if (lVar6 != 0) {
|
||||
for (lVar8 = *(longlong *)(lVar6 + 0xa0); lVar8 != lVar6 + 0x58;
|
||||
lVar8 = *(longlong *)(lVar8 + 0x48)) {
|
||||
pcVar13 = (char *)(*(longlong *)(lVar8 + 0x20) + 0x10);
|
||||
bVar21 = pcVar13 == (char *)0x0;
|
||||
lVar4 = 0xb;
|
||||
pcVar14 = "code_start";
|
||||
do {
|
||||
if (lVar4 == 0) break;
|
||||
lVar4 = lVar4 + -1;
|
||||
bVar21 = *pcVar13 == *pcVar14;
|
||||
pcVar13 = pcVar13 + 1;
|
||||
pcVar14 = pcVar14 + 1;
|
||||
} while (bVar21);
|
||||
if (bVar21) {
|
||||
pcVar13 = (char *)(*(longlong *)(lVar8 + 0x30) + 0x10);
|
||||
if (pcVar13 != (char *)0x0) {
|
||||
iVar2 = atoi(pcVar13);
|
||||
*(bool *)(param_1 + 0x152) = 0 < iVar2;
|
||||
plVar11 = local_220;
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
joined_r0x00014005d4b7:
|
||||
do {
|
||||
if (plVar11 == (longlong *)0x0) goto LAB_14005d6fc;
|
||||
bVar21 = (char *)(plVar11[7] + 0x10) == (char *)0x0;
|
||||
lVar6 = 8;
|
||||
pcVar13 = (char *)(plVar11[7] + 0x10);
|
||||
pcVar14 = "setting";
|
||||
do {
|
||||
if (lVar6 == 0) break;
|
||||
lVar6 = lVar6 + -1;
|
||||
bVar21 = *pcVar13 == *pcVar14;
|
||||
pcVar13 = pcVar13 + 1;
|
||||
pcVar14 = pcVar14 + 1;
|
||||
} while (bVar21);
|
||||
if (bVar21) break;
|
||||
plVar11 = (longlong *)plVar11[10];
|
||||
} while( true );
|
||||
while (lVar6 = (**(code **)(*plVar11 + 0x30))(plVar11), lVar6 == 0) {
|
||||
do {
|
||||
plVar11 = (longlong *)plVar11[10];
|
||||
if (plVar11 == (longlong *)0x0) goto LAB_14005d6fc;
|
||||
bVar21 = (char *)(plVar11[7] + 0x10) == (char *)0x0;
|
||||
lVar6 = 8;
|
||||
pcVar13 = (char *)(plVar11[7] + 0x10);
|
||||
pcVar14 = "setting";
|
||||
do {
|
||||
if (lVar6 == 0) break;
|
||||
lVar6 = lVar6 + -1;
|
||||
bVar21 = *pcVar13 == *pcVar14;
|
||||
pcVar13 = pcVar13 + 1;
|
||||
pcVar14 = pcVar14 + 1;
|
||||
} while (bVar21);
|
||||
} while (!bVar21);
|
||||
}
|
||||
lVar6 = (**(code **)(*plVar11 + 0x30))(plVar11);
|
||||
if (lVar6 != 0) {
|
||||
lVar4 = lVar6 + 0x58;
|
||||
for (lVar8 = *(longlong *)(lVar6 + 0xa0); pcVar13 = _Str, lVar8 != lVar4;
|
||||
lVar8 = *(longlong *)(lVar8 + 0x48)) {
|
||||
pcVar13 = (char *)(*(longlong *)(lVar8 + 0x20) + 0x10);
|
||||
bVar21 = pcVar13 == (char *)0x0;
|
||||
lVar7 = 6;
|
||||
pcVar14 = "multi";
|
||||
do {
|
||||
if (lVar7 == 0) break;
|
||||
lVar7 = lVar7 + -1;
|
||||
bVar21 = *pcVar13 == *pcVar14;
|
||||
pcVar13 = pcVar13 + 1;
|
||||
pcVar14 = pcVar14 + 1;
|
||||
} while (bVar21);
|
||||
if (bVar21) {
|
||||
pcVar13 = (char *)(*(longlong *)(lVar8 + 0x30) + 0x10);
|
||||
break;
|
||||
}
|
||||
}
|
||||
for (lVar8 = *(longlong *)(lVar6 + 0xa0); pcVar14 = _Str, lVar8 != lVar4;
|
||||
lVar8 = *(longlong *)(lVar8 + 0x48)) {
|
||||
pcVar14 = (char *)(*(longlong *)(lVar8 + 0x20) + 0x10);
|
||||
bVar21 = pcVar14 == (char *)0x0;
|
||||
lVar7 = 5;
|
||||
pcVar15 = "lock";
|
||||
do {
|
||||
if (lVar7 == 0) break;
|
||||
lVar7 = lVar7 + -1;
|
||||
bVar21 = *pcVar14 == *pcVar15;
|
||||
pcVar14 = pcVar14 + 1;
|
||||
pcVar15 = pcVar15 + 1;
|
||||
} while (bVar21);
|
||||
if (bVar21) {
|
||||
pcVar14 = (char *)(*(longlong *)(lVar8 + 0x30) + 0x10);
|
||||
break;
|
||||
}
|
||||
}
|
||||
for (lVar8 = *(longlong *)(lVar6 + 0xa0); pcVar15 = _Str, lVar8 != lVar4;
|
||||
lVar8 = *(longlong *)(lVar8 + 0x48)) {
|
||||
pcVar15 = (char *)(*(longlong *)(lVar8 + 0x20) + 0x10);
|
||||
bVar21 = pcVar15 == (char *)0x0;
|
||||
lVar7 = 0xd;
|
||||
pcVar16 = "start_server";
|
||||
do {
|
||||
if (lVar7 == 0) break;
|
||||
lVar7 = lVar7 + -1;
|
||||
bVar21 = *pcVar15 == *pcVar16;
|
||||
pcVar15 = pcVar15 + 1;
|
||||
pcVar16 = pcVar16 + 1;
|
||||
} while (bVar21);
|
||||
if (bVar21) {
|
||||
pcVar15 = (char *)(*(longlong *)(lVar8 + 0x30) + 0x10);
|
||||
break;
|
||||
}
|
||||
}
|
||||
for (lVar8 = *(longlong *)(lVar6 + 0xa0); pcVar16 = _Str, lVar8 != lVar4;
|
||||
lVar8 = *(longlong *)(lVar8 + 0x48)) {
|
||||
pcVar16 = (char *)(*(longlong *)(lVar8 + 0x20) + 0x10);
|
||||
bVar21 = pcVar16 == (char *)0x0;
|
||||
lVar7 = 0xe;
|
||||
pcVar17 = "revive_server";
|
||||
do {
|
||||
if (lVar7 == 0) break;
|
||||
lVar7 = lVar7 + -1;
|
||||
bVar21 = *pcVar16 == *pcVar17;
|
||||
pcVar16 = pcVar16 + 1;
|
||||
pcVar17 = pcVar17 + 1;
|
||||
} while (bVar21);
|
||||
if (bVar21) {
|
||||
pcVar16 = (char *)(*(longlong *)(lVar8 + 0x30) + 0x10);
|
||||
break;
|
||||
}
|
||||
}
|
||||
for (lVar6 = *(longlong *)(lVar6 + 0xa0); pcVar17 = _Str, lVar6 != lVar4;
|
||||
lVar6 = *(longlong *)(lVar6 + 0x48)) {
|
||||
pcVar17 = (char *)(*(longlong *)(lVar6 + 0x20) + 0x10);
|
||||
bVar21 = pcVar17 == (char *)0x0;
|
||||
lVar8 = 0xd;
|
||||
pcVar18 = "open_channel";
|
||||
do {
|
||||
if (lVar8 == 0) break;
|
||||
lVar8 = lVar8 + -1;
|
||||
bVar21 = *pcVar17 == *pcVar18;
|
||||
pcVar17 = pcVar17 + 1;
|
||||
pcVar18 = pcVar18 + 1;
|
||||
} while (bVar21);
|
||||
if (bVar21) {
|
||||
pcVar17 = (char *)(*(longlong *)(lVar6 + 0x30) + 0x10);
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (pcVar13 != (char *)0x0) {
|
||||
iVar2 = atoi(pcVar13);
|
||||
*(bool *)(param_1 + 0x166) = 0 < iVar2;
|
||||
}
|
||||
if (pcVar16 != (char *)0x0) {
|
||||
iVar2 = atoi(pcVar16);
|
||||
*(bool *)(param_1 + 0x171) = 0 < iVar2;
|
||||
}
|
||||
if (pcVar17 != (char *)0x0) {
|
||||
iVar2 = atoi(pcVar17);
|
||||
*(bool *)(param_1 + 0x170) = 0 < iVar2;
|
||||
}
|
||||
if (pcVar14 != (char *)0x0) {
|
||||
iVar2 = atoi(pcVar14);
|
||||
*(double *)(param_1 + 0x168) = (double)iVar2;
|
||||
}
|
||||
if (pcVar15 != (char *)0x0) {
|
||||
iVar2 = atoi(pcVar15);
|
||||
*(double *)(param_1 + 0x178) = (double)iVar2;
|
||||
}
|
||||
}
|
||||
LAB_14005d6fc:
|
||||
DAT_1401bcf08 = 0;
|
||||
DAT_1401bcf09 = 0;
|
||||
DAT_1401bcf0a = 0;
|
||||
DAT_1401bcf0b = 0;
|
||||
DAT_1401bcf0c = 0;
|
||||
DAT_1401bcf0d = 1;
|
||||
DAT_1401bcf0e = 1;
|
||||
for (plVar12 = local_220; plVar12 != (longlong *)0x0; plVar12 = (longlong *)plVar12[10]) {
|
||||
bVar21 = (char *)(plVar12[7] + 0x10) == (char *)0x0;
|
||||
lVar6 = 8;
|
||||
pcVar13 = (char *)(plVar12[7] + 0x10);
|
||||
pcVar14 = "develop";
|
||||
do {
|
||||
if (lVar6 == 0) break;
|
||||
lVar6 = lVar6 + -1;
|
||||
bVar21 = *pcVar13 == *pcVar14;
|
||||
pcVar13 = pcVar13 + 1;
|
||||
pcVar14 = pcVar14 + 1;
|
||||
} while (bVar21);
|
||||
if (bVar21) goto LAB_14005d766;
|
||||
}
|
||||
goto LAB_14005da13;
|
||||
LAB_14005d766:
|
||||
while (lVar6 = (**(code **)(*plVar12 + 0x30))(plVar12), lVar6 == 0) {
|
||||
do {
|
||||
plVar12 = (longlong *)plVar12[10];
|
||||
if (plVar12 == (longlong *)0x0) goto LAB_14005da13;
|
||||
bVar21 = (char *)(plVar12[7] + 0x10) == (char *)0x0;
|
||||
lVar6 = 8;
|
||||
pcVar13 = (char *)(plVar12[7] + 0x10);
|
||||
pcVar14 = "develop";
|
||||
do {
|
||||
if (lVar6 == 0) break;
|
||||
lVar6 = lVar6 + -1;
|
||||
bVar21 = *pcVar13 == *pcVar14;
|
||||
pcVar13 = pcVar13 + 1;
|
||||
pcVar14 = pcVar14 + 1;
|
||||
} while (bVar21);
|
||||
} while (!bVar21);
|
||||
}
|
||||
lVar6 = (**(code **)(*plVar12 + 0x30))(plVar12);
|
||||
if (lVar6 != 0) {
|
||||
lVar4 = lVar6 + 0x58;
|
||||
for (lVar8 = *(longlong *)(lVar6 + 0xa0); pcVar13 = _Str, lVar8 != lVar4;
|
||||
lVar8 = *(longlong *)(lVar8 + 0x48)) {
|
||||
pcVar13 = (char *)(*(longlong *)(lVar8 + 0x20) + 0x10);
|
||||
bVar21 = pcVar13 == (char *)0x0;
|
||||
lVar7 = 8;
|
||||
pcVar14 = "preload";
|
||||
do {
|
||||
if (lVar7 == 0) break;
|
||||
lVar7 = lVar7 + -1;
|
||||
bVar21 = *pcVar13 == *pcVar14;
|
||||
pcVar13 = pcVar13 + 1;
|
||||
pcVar14 = pcVar14 + 1;
|
||||
} while (bVar21);
|
||||
if (bVar21) {
|
||||
pcVar13 = (char *)(*(longlong *)(lVar8 + 0x30) + 0x10);
|
||||
break;
|
||||
}
|
||||
}
|
||||
for (lVar8 = *(longlong *)(lVar6 + 0xa0); lVar8 != lVar4; lVar8 = *(longlong *)(lVar8 + 0x48)) {
|
||||
pcVar14 = (char *)(*(longlong *)(lVar8 + 0x20) + 0x10);
|
||||
bVar21 = pcVar14 == (char *)0x0;
|
||||
lVar7 = 0xd;
|
||||
pcVar15 = "preload_char";
|
||||
do {
|
||||
if (lVar7 == 0) break;
|
||||
lVar7 = lVar7 + -1;
|
||||
bVar21 = *pcVar14 == *pcVar15;
|
||||
pcVar14 = pcVar14 + 1;
|
||||
pcVar15 = pcVar15 + 1;
|
||||
} while (bVar21);
|
||||
if (bVar21) {
|
||||
_Str = (char *)(*(longlong *)(lVar8 + 0x30) + 0x10);
|
||||
break;
|
||||
}
|
||||
}
|
||||
for (lVar8 = *(longlong *)(lVar6 + 0xa0); lVar8 != lVar4; lVar8 = *(longlong *)(lVar8 + 0x48)) {
|
||||
pcVar14 = (char *)(*(longlong *)(lVar8 + 0x20) + 0x10);
|
||||
bVar21 = pcVar14 == (char *)0x0;
|
||||
lVar7 = 0xc;
|
||||
pcVar15 = "enemy_debug";
|
||||
do {
|
||||
if (lVar7 == 0) break;
|
||||
lVar7 = lVar7 + -1;
|
||||
bVar21 = *pcVar14 == *pcVar15;
|
||||
pcVar14 = pcVar14 + 1;
|
||||
pcVar15 = pcVar15 + 1;
|
||||
} while (bVar21);
|
||||
if (bVar21) {
|
||||
pcVar14 = (char *)(*(longlong *)(lVar8 + 0x30) + 0x10);
|
||||
goto LAB_14005d870;
|
||||
}
|
||||
}
|
||||
pcVar14 = (char *)0x0;
|
||||
LAB_14005d870:
|
||||
for (lVar8 = *(longlong *)(lVar6 + 0xa0); lVar8 != lVar4; lVar8 = *(longlong *)(lVar8 + 0x48)) {
|
||||
pcVar15 = (char *)(*(longlong *)(lVar8 + 0x20) + 0x10);
|
||||
bVar21 = pcVar15 == (char *)0x0;
|
||||
lVar7 = 10;
|
||||
pcVar16 = "enemy_one";
|
||||
do {
|
||||
if (lVar7 == 0) break;
|
||||
lVar7 = lVar7 + -1;
|
||||
bVar21 = *pcVar15 == *pcVar16;
|
||||
pcVar15 = pcVar15 + 1;
|
||||
pcVar16 = pcVar16 + 1;
|
||||
} while (bVar21);
|
||||
if (bVar21) {
|
||||
pcVar15 = (char *)(*(longlong *)(lVar8 + 0x30) + 0x10);
|
||||
goto LAB_14005d8b0;
|
||||
}
|
||||
}
|
||||
pcVar15 = (char *)0x0;
|
||||
LAB_14005d8b0:
|
||||
for (lVar8 = *(longlong *)(lVar6 + 0xa0); lVar8 != lVar4; lVar8 = *(longlong *)(lVar8 + 0x48)) {
|
||||
pcVar16 = (char *)(*(longlong *)(lVar8 + 0x20) + 0x10);
|
||||
bVar21 = pcVar16 == (char *)0x0;
|
||||
lVar7 = 0xd;
|
||||
pcVar17 = "player_debug";
|
||||
do {
|
||||
if (lVar7 == 0) break;
|
||||
lVar7 = lVar7 + -1;
|
||||
bVar21 = *pcVar16 == *pcVar17;
|
||||
pcVar16 = pcVar16 + 1;
|
||||
pcVar17 = pcVar17 + 1;
|
||||
} while (bVar21);
|
||||
if (bVar21) {
|
||||
pcVar16 = (char *)(*(longlong *)(lVar8 + 0x30) + 0x10);
|
||||
goto LAB_14005d8f0;
|
||||
}
|
||||
}
|
||||
pcVar16 = (char *)0x0;
|
||||
LAB_14005d8f0:
|
||||
for (lVar8 = *(longlong *)(lVar6 + 0xa0); lVar8 != lVar4; lVar8 = *(longlong *)(lVar8 + 0x48)) {
|
||||
pcVar17 = (char *)(*(longlong *)(lVar8 + 0x20) + 0x10);
|
||||
bVar21 = pcVar17 == (char *)0x0;
|
||||
lVar7 = 9;
|
||||
pcVar18 = "lua_text";
|
||||
do {
|
||||
if (lVar7 == 0) break;
|
||||
lVar7 = lVar7 + -1;
|
||||
bVar21 = *pcVar17 == *pcVar18;
|
||||
pcVar17 = pcVar17 + 1;
|
||||
pcVar18 = pcVar18 + 1;
|
||||
} while (bVar21);
|
||||
if (bVar21) {
|
||||
pcVar17 = (char *)(*(longlong *)(lVar8 + 0x30) + 0x10);
|
||||
goto LAB_14005d92f;
|
||||
}
|
||||
}
|
||||
pcVar17 = (char *)0x0;
|
||||
LAB_14005d92f:
|
||||
for (lVar6 = *(longlong *)(lVar6 + 0xa0); lVar6 != lVar4; lVar6 = *(longlong *)(lVar6 + 0x48)) {
|
||||
pcVar18 = (char *)(*(longlong *)(lVar6 + 0x20) + 0x10);
|
||||
bVar21 = pcVar18 == (char *)0x0;
|
||||
lVar8 = 9;
|
||||
pcVar20 = "lua_send";
|
||||
do {
|
||||
if (lVar8 == 0) break;
|
||||
lVar8 = lVar8 + -1;
|
||||
bVar21 = *pcVar18 == *pcVar20;
|
||||
pcVar18 = pcVar18 + 1;
|
||||
pcVar20 = pcVar20 + 1;
|
||||
} while (bVar21);
|
||||
if (bVar21) {
|
||||
pcVar18 = (char *)(*(longlong *)(lVar6 + 0x30) + 0x10);
|
||||
goto LAB_14005d96f;
|
||||
}
|
||||
}
|
||||
pcVar18 = (char *)0x0;
|
||||
LAB_14005d96f:
|
||||
if (pcVar13 != (char *)0x0) {
|
||||
iVar2 = atoi(pcVar13);
|
||||
DAT_1401bcf0d = 0 < iVar2;
|
||||
}
|
||||
if (_Str != (char *)0x0) {
|
||||
iVar2 = atoi(_Str);
|
||||
DAT_1401bcf0e = 0 < iVar2;
|
||||
}
|
||||
if (pcVar15 != (char *)0x0) {
|
||||
iVar2 = atoi(pcVar15);
|
||||
DAT_1401bcf09 = 0 < iVar2;
|
||||
}
|
||||
if (pcVar14 != (char *)0x0) {
|
||||
iVar2 = atoi(pcVar14);
|
||||
DAT_1401bcf08 = 0 < iVar2;
|
||||
}
|
||||
if (pcVar16 != (char *)0x0) {
|
||||
iVar2 = atoi(pcVar16);
|
||||
DAT_1401bcf0a = 0 < iVar2;
|
||||
}
|
||||
if (pcVar17 != (char *)0x0) {
|
||||
iVar2 = atoi(pcVar17);
|
||||
DAT_1401bcf0b = 0 < iVar2;
|
||||
}
|
||||
if (pcVar18 != (char *)0x0) {
|
||||
iVar2 = atoi(pcVar18);
|
||||
DAT_1401bcf0c = 0 < iVar2;
|
||||
}
|
||||
}
|
||||
LAB_14005da13:
|
||||
if (0xf < local_78) {
|
||||
operator_delete((void *)CONCAT71(local_90[0]._1_7_,(char)local_90[0]));
|
||||
}
|
||||
local_78 = 0xf;
|
||||
local_80 = 0;
|
||||
local_90[0]._0_1_ = '\0';
|
||||
local_1b8 = local_120;
|
||||
*(undefined ***)((longlong)local_1a0 + (longlong)*(int *)(local_1a8 + 4) + -8) =
|
||||
std::basic_ostringstream<char,std::char_traits<char>,std::allocator<char>_>::vftable;
|
||||
local_1c8 = local_1a0;
|
||||
local_1a0[0] = std::basic_stringbuf<char,std::char_traits<char>,std::allocator<char>_>::vftable;
|
||||
if ((local_128 & 1) != 0) {
|
||||
operator_delete((void *)*local_180);
|
||||
}
|
||||
std::basic_streambuf<char,std::char_traits<char>_>::setg
|
||||
((basic_streambuf<char,std::char_traits<char>_> *)local_1a0,(char *)0x0,(char *)0x0,
|
||||
(char *)0x0);
|
||||
*local_178 = 0;
|
||||
*local_158 = 0;
|
||||
*local_140 = 0;
|
||||
local_130 = 0;
|
||||
local_128 = local_128 & 0xfffffffe;
|
||||
std::basic_streambuf<char,std::char_traits<char>_>::~basic_streambuf<char,std::char_traits<char>_>
|
||||
((basic_streambuf<char,std::char_traits<char>_> *)local_1a0);
|
||||
*(code **)((longlong)local_1a0 + (longlong)*(int *)(local_1a8 + 4) + -8) = _vftable__exref;
|
||||
std::basic_ios<char,std::char_traits<char>_>::~basic_ios<char,std::char_traits<char>_>(local_120);
|
||||
local_248[0] = TiXmlDocument::vftable;
|
||||
if (local_1e8 != &DAT_1401bcf30) {
|
||||
operator_delete__(local_1e0);
|
||||
}
|
||||
local_248[0] = TiXmlNode::vftable;
|
||||
while (local_220 != (longlong *)0x0) {
|
||||
plVar12 = (longlong *)local_220[10];
|
||||
(**(code **)*local_220)(local_220,1);
|
||||
local_220 = plVar12;
|
||||
}
|
||||
if (local_210 != &DAT_1401bcf30) {
|
||||
operator_delete__(local_208);
|
||||
}
|
||||
ppuVar3 = TiXmlBase::vftable;
|
||||
local_248[0] = TiXmlBase::vftable;
|
||||
if (0xf < local_50) {
|
||||
operator_delete(local_68[0]);
|
||||
ppuVar3 = extraout_RAX_00;
|
||||
}
|
||||
return CONCAT71((int7)((ulonglong)ppuVar3 >> 8),1);
|
||||
}
|
||||
|
||||
Loading…
Add table
Add a link
Reference in a new issue