1912 lines
83 KiB
C
1912 lines
83 KiB
C
/* MessageServer_Release_x64.exe sha256 7911b15c4379625eaa12ff227708aa3a033bc6ac2cf6b34283136e3a62df25f1
|
|
* Ghidra 12.1.2 decompiler output for 0x140080a20 FUN_140080a20
|
|
* Pseudocode, not original source. */
|
|
|
|
ulonglong FUN_140080a20(longlong *param_1,uint *param_2,SIZE_T param_3,undefined8 param_4)
|
|
|
|
{
|
|
int *piVar1;
|
|
uint uVar2;
|
|
uint uVar3;
|
|
longlong ****pppplVar4;
|
|
char cVar5;
|
|
int iVar6;
|
|
DWORD DVar7;
|
|
DWORD DVar8;
|
|
undefined8 uVar9;
|
|
short *psVar10;
|
|
longlong *****ppppplVar11;
|
|
undefined **ppuVar12;
|
|
undefined *puVar13;
|
|
longlong *****ppppplVar14;
|
|
undefined **ppuVar15;
|
|
undefined *puVar16;
|
|
longlong *****ppppplVar17;
|
|
int *piVar18;
|
|
wchar_t *pwVar19;
|
|
longlong *plVar20;
|
|
longlong *plVar21;
|
|
ulonglong uVar22;
|
|
undefined4 uVar23;
|
|
undefined1 *puVar24;
|
|
undefined1 uVar25;
|
|
IMAGE_DOS_HEADER *pIVar26;
|
|
undefined ***pppuVar27;
|
|
SIZE_T SVar28;
|
|
undefined8 uVar29;
|
|
longlong ****local_res10 [2];
|
|
longlong ****local_res20;
|
|
longlong ****local_358;
|
|
longlong ****local_350;
|
|
undefined **local_348;
|
|
undefined *local_340;
|
|
undefined8 local_338;
|
|
SIZE_T local_330;
|
|
undefined8 local_328;
|
|
int *local_320;
|
|
undefined *local_318;
|
|
uint local_310;
|
|
SIZE_T local_308;
|
|
int local_300;
|
|
longlong ****local_2f8;
|
|
undefined4 local_2f0;
|
|
undefined2 local_2ec;
|
|
undefined **local_2e8;
|
|
undefined4 local_2e0;
|
|
undefined2 local_2dc;
|
|
undefined4 local_2d8 [2];
|
|
undefined **local_2d0;
|
|
undefined4 local_2c8;
|
|
undefined2 local_2c4;
|
|
undefined1 local_2b8 [4];
|
|
uint local_2b4;
|
|
SIZE_T local_280;
|
|
longlong ****local_258;
|
|
longlong ****local_250;
|
|
longlong ****local_248;
|
|
undefined **local_240;
|
|
undefined4 local_238;
|
|
undefined2 local_234;
|
|
longlong ****local_230;
|
|
longlong ***local_228;
|
|
longlong ***local_220;
|
|
longlong ***local_218;
|
|
undefined4 local_210;
|
|
longlong ***local_208;
|
|
undefined *local_200;
|
|
longlong ***local_1f8;
|
|
undefined *local_1f0;
|
|
longlong ***local_1e8;
|
|
longlong ***local_1e0;
|
|
longlong ***local_1d8;
|
|
longlong ***local_1d0;
|
|
longlong ***local_1c8;
|
|
longlong ***local_1c0;
|
|
longlong ***local_1b8;
|
|
undefined4 local_1b0;
|
|
undefined4 local_1ac;
|
|
undefined *local_1a8;
|
|
undefined4 local_1a0;
|
|
longlong ***local_198;
|
|
undefined4 local_190;
|
|
longlong ***local_188;
|
|
undefined4 local_180;
|
|
undefined4 local_17c;
|
|
undefined4 local_178;
|
|
undefined *local_170;
|
|
uint local_168 [2];
|
|
longlong ***local_160;
|
|
undefined4 local_158;
|
|
undefined *local_150;
|
|
undefined *local_148;
|
|
undefined *local_140;
|
|
undefined *local_138;
|
|
longlong local_130;
|
|
longlong local_128;
|
|
longlong local_120;
|
|
longlong local_118;
|
|
longlong local_110;
|
|
longlong local_108;
|
|
longlong local_100;
|
|
longlong local_f8;
|
|
longlong local_f0;
|
|
longlong local_e8;
|
|
longlong local_e0;
|
|
longlong local_d8;
|
|
longlong local_d0;
|
|
longlong local_c8;
|
|
longlong local_c0;
|
|
longlong local_b8;
|
|
longlong local_b0;
|
|
longlong local_a8;
|
|
longlong local_a0;
|
|
longlong local_98;
|
|
longlong local_90;
|
|
longlong local_88;
|
|
longlong local_80;
|
|
longlong local_78;
|
|
longlong local_70;
|
|
longlong local_68 [3];
|
|
longlong local_50;
|
|
longlong local_48;
|
|
longlong local_40;
|
|
|
|
local_68[1] = 0xfffffffffffffffe;
|
|
uVar2 = param_2[10];
|
|
SVar28 = param_3;
|
|
if (uVar2 == 0) {
|
|
FUN_1400cf890();
|
|
}
|
|
uVar3 = *param_2;
|
|
uVar9 = FUN_1400bd2e0(param_2,local_168,SVar28,param_4);
|
|
if ((char)uVar9 == '\0') {
|
|
switchD_140080ab3_default:
|
|
uVar22 = FUN_1400bc600((int *)param_2,
|
|
(ulonglong)(uint)((int)(((int)uVar3 >> 0x1f & 7U) + uVar3) >> 3),SVar28,
|
|
param_4);
|
|
uVar22 = uVar22 & 0xffffffffffffff00;
|
|
}
|
|
else {
|
|
pIVar26 = &IMAGE_DOS_HEADER_140000000;
|
|
local_280 = param_3;
|
|
switch(local_168[0]) {
|
|
case 0xfa01:
|
|
FUN_140078060(local_2b8);
|
|
local_2b4 = param_2[10];
|
|
local_2b8[0] = (undefined1)param_2[0x10];
|
|
uVar9 = FUN_1400bc930(param_2,&local_res20,4);
|
|
if ((char)uVar9 != '\0') {
|
|
local_res10[0] = (longlong ****)CONCAT44(local_res10[0]._4_4_,(uint)local_res20);
|
|
}
|
|
plVar21 = (longlong *)param_1[2];
|
|
puVar16 = PTR_DAT_1401ac8c8;
|
|
(**(code **)(*plVar21 + 0x48))();
|
|
DVar7 = 0;
|
|
if (*(char *)((longlong)param_1 + 0x19) == '\0') {
|
|
if ((char)param_1[3] == '\0') {
|
|
(**(code **)(*(longlong *)param_1[2] + 0x70))
|
|
((longlong *)param_1[2],uVar2,0xfa01,PTR_DAT_1401ac8c8,&DAT_14015cd00);
|
|
}
|
|
}
|
|
else if ((char)param_1[3] == '\0') {
|
|
FUN_14006cb70(plVar21,param_2,puVar16,param_4);
|
|
local_res20 = (longlong ****)PTR_DAT_1401ac010;
|
|
FUN_1400d9f00((longlong *)&local_res20);
|
|
FUN_1400141f0((longlong *)&local_res20,(short *)&DAT_14015cacc);
|
|
iVar6 = 0;
|
|
if (((longlong *****)local_res20 != (longlong *****)0x0) &&
|
|
(local_res20 != (longlong ****)PTR_DAT_1401ac010)) {
|
|
iVar6 = *(int *)(local_res20 + -1);
|
|
}
|
|
uVar22 = (ulonglong)(iVar6 - 2U);
|
|
local_358 = (longlong ****)
|
|
FUN_140014170((longlong *)&local_res20,(longlong *)&local_148,iVar6 - 2U);
|
|
ppppplVar14 = (longlong *****)local_res20;
|
|
if ((longlong *****)local_res20 == (longlong *****)0x0) {
|
|
ppppplVar14 = (longlong *****)PTR_DAT_1401ac010;
|
|
}
|
|
local_res20 = (longlong ****)ppppplVar14;
|
|
if ((longlong *****)*local_358 != ppppplVar14) {
|
|
ppppplVar14 = (longlong *****)FUN_14006cb70(ppppplVar14,PTR_DAT_1401ac010,uVar22,param_4);
|
|
local_2f8 = (longlong ****)ppppplVar14;
|
|
FUN_14006b350((int *)ppppplVar14);
|
|
pppplVar4 = local_res20;
|
|
local_2f0 = CONCAT31(local_2f0._1_3_,1);
|
|
if ((((longlong *****)local_res20 != (longlong *****)0x0) &&
|
|
(local_res20 != (longlong ****)PTR_DAT_1401ac010)) &&
|
|
(ppppplVar17 = (longlong *****)(local_res20 + -1), ppppplVar17 != (longlong *****)0x0))
|
|
{
|
|
ppuVar15 = (undefined **)FUN_14006cb70(local_res20,PTR_DAT_1401ac010,uVar22,param_4);
|
|
local_2d0 = ppuVar15;
|
|
FUN_14006b350((int *)ppuVar15);
|
|
local_2c8 = CONCAT31(local_2c8._1_3_,1);
|
|
piVar1 = (int *)((longlong)pppplVar4 + -4);
|
|
*piVar1 = *piVar1 + -1;
|
|
if (*piVar1 == 0) {
|
|
FUN_14006cc60(ppppplVar17);
|
|
}
|
|
FUN_14006b3e0((longlong)ppuVar15);
|
|
}
|
|
local_res20 = (longlong ****)*local_358;
|
|
if (((local_res20 != (longlong ****)PTR_DAT_1401ac010) &&
|
|
((longlong *****)local_res20 != (longlong *****)0x0)) &&
|
|
((longlong *****)local_res20 != (longlong *****)0x8)) {
|
|
*(int *)((longlong)local_res20 + -4) = *(int *)((longlong)local_res20 + -4) + 1;
|
|
}
|
|
FUN_14006b3e0((longlong)ppppplVar14);
|
|
}
|
|
if (((local_148 != (undefined *)0x0) && (local_148 != PTR_DAT_1401ac010)) &&
|
|
(local_148 + -8 != (undefined *)0x0)) {
|
|
ppppplVar14 = (longlong *****)FUN_14006cb70(ppppplVar14,PTR_DAT_1401ac010,uVar22,param_4);
|
|
local_2f8 = (longlong ****)ppppplVar14;
|
|
FUN_14006b350((int *)ppppplVar14);
|
|
local_2f0 = CONCAT31(local_2f0._1_3_,1);
|
|
piVar1 = (int *)(local_148 + -4);
|
|
*piVar1 = *piVar1 + -1;
|
|
if (*piVar1 == 0) {
|
|
FUN_14006cc60(local_148 + -8);
|
|
}
|
|
FUN_14006b3e0((longlong)ppppplVar14);
|
|
}
|
|
local_350 = (longlong ****)&local_230;
|
|
puVar16 = PTR_DAT_1401ac010;
|
|
local_148 = PTR_DAT_1401ac010;
|
|
FUN_14006cb70(ppppplVar14,PTR_DAT_1401ac010,uVar22,param_4);
|
|
local_230 = (longlong ****)PTR_DAT_1401ac010;
|
|
if (PTR_DAT_1401ac010 == (undefined *)0x0) {
|
|
local_230 = (longlong ****)(longlong *****)0x0;
|
|
}
|
|
if (local_res20 != (longlong ****)PTR_DAT_1401ac010) {
|
|
ppppplVar14 = (longlong *****)FUN_14006cb70(ppppplVar14,puVar16,uVar22,param_4);
|
|
local_2f8 = (longlong ****)ppppplVar14;
|
|
FUN_14006b350((int *)ppppplVar14);
|
|
local_2f0 = CONCAT31(local_2f0._1_3_,1);
|
|
FUN_1400031e0((longlong *)&local_230,puVar16,uVar22,param_4);
|
|
local_230 = local_res20;
|
|
if (((local_res20 != (longlong ****)PTR_DAT_1401ac010) &&
|
|
((longlong *****)local_res20 != (longlong *****)0x0)) &&
|
|
((longlong *****)local_res20 != (longlong *****)0x8)) {
|
|
*(int *)((longlong)local_res20 + -4) = *(int *)((longlong)local_res20 + -4) + 1;
|
|
}
|
|
FUN_14006b3e0((longlong)ppppplVar14);
|
|
}
|
|
puVar13 = PTR_DAT_1401ac8c8;
|
|
FUN_14006cb70(ppppplVar14,puVar16,uVar22,param_4);
|
|
local_170 = PTR_DAT_1401ac010;
|
|
iVar6 = FUN_14006c9f0((short *)puVar13);
|
|
puVar16 = FUN_140002f30((longlong *)&local_170,iVar6);
|
|
FUN_14006ca20(puVar16,puVar13,iVar6);
|
|
FUN_140003010((longlong *)&local_170);
|
|
(**(code **)(*param_1 + 0x28))(param_1,0xfa01,&local_170,&local_230);
|
|
plVar21 = (longlong *)param_1[2];
|
|
uVar9 = 0xfa01;
|
|
uVar22 = (ulonglong)uVar2;
|
|
puVar16 = PTR_DAT_1401ac8c8;
|
|
(**(code **)(*plVar21 + 0x70))();
|
|
pppplVar4 = local_res20;
|
|
if ((((longlong *****)local_res20 != (longlong *****)0x0) &&
|
|
(local_res20 != (longlong ****)PTR_DAT_1401ac010)) &&
|
|
(ppppplVar14 = (longlong *****)(local_res20 + -1), ppppplVar14 != (longlong *****)0x0)) {
|
|
ppppplVar17 = (longlong *****)FUN_14006cb70(plVar21,uVar22,uVar9,puVar16);
|
|
local_2f8 = (longlong ****)ppppplVar17;
|
|
FUN_14006b350((int *)ppppplVar17);
|
|
local_2f0 = CONCAT31(local_2f0._1_3_,1);
|
|
piVar1 = (int *)((longlong)pppplVar4 + -4);
|
|
*piVar1 = *piVar1 + -1;
|
|
if (*piVar1 == 0) {
|
|
FUN_14006cc60(ppppplVar14);
|
|
}
|
|
FUN_14006b3e0((longlong)ppppplVar17);
|
|
}
|
|
}
|
|
if (((char)param_1[3] == '\0') && (*(char *)((longlong)param_1 + 0x1a) != '\0')) {
|
|
local_320 = (int *)CONCAT44(local_320._4_4_,0xfa01);
|
|
local_318 = PTR_DAT_1401ac8c8;
|
|
local_310 = uVar2;
|
|
local_308 = param_3;
|
|
(**(code **)(*param_1 + 0x20))(param_1,&local_320);
|
|
DVar7 = GetTickCount();
|
|
}
|
|
uVar9 = (**(code **)(*param_1 + 0x38))(param_1,uVar2,local_2b8,local_res10);
|
|
if ((char)uVar9 == '\0') {
|
|
uVar9 = (**(code **)(*(longlong *)param_1[2] + 0x40))
|
|
((longlong *)param_1[2],PTR_DAT_1401ac8c8);
|
|
}
|
|
if (((char)param_1[3] == '\0') && (*(char *)((longlong)param_1 + 0x1a) != '\0')) {
|
|
local_348 = (undefined **)CONCAT44(local_348._4_4_,0xfa01);
|
|
local_340 = PTR_DAT_1401ac8c8;
|
|
LAB_1400844f5:
|
|
local_338 = CONCAT44(local_338._4_4_,uVar2);
|
|
local_330 = param_3;
|
|
DVar8 = GetTickCount();
|
|
local_328 = CONCAT44(local_328._4_4_,DVar8 - DVar7);
|
|
uVar9 = (**(code **)(*param_1 + 0x18))(param_1,&local_348);
|
|
}
|
|
break;
|
|
case 0xfa02:
|
|
FUN_140078060(local_2b8);
|
|
local_2b4 = param_2[10];
|
|
local_2b8[0] = (undefined1)param_2[0x10];
|
|
FUN_1400bd3c0(param_2,(undefined4 *)&local_res20,SVar28,param_4);
|
|
uVar9 = FUN_1400bc930(param_2,&local_358,4);
|
|
uVar23 = (uint)local_res10[0];
|
|
if ((char)uVar9 != '\0') {
|
|
uVar23 = local_358._0_4_;
|
|
}
|
|
local_res10[0] = (longlong ****)CONCAT44(local_res10[0]._4_4_,uVar23);
|
|
plVar21 = (longlong *)param_1[2];
|
|
puVar16 = PTR_DAT_1401ac8d0;
|
|
(**(code **)(*plVar21 + 0x48))();
|
|
DVar7 = 0;
|
|
if (*(char *)((longlong)param_1 + 0x19) == '\0') {
|
|
if ((char)param_1[3] == '\0') {
|
|
(**(code **)(*(longlong *)param_1[2] + 0x70))
|
|
((longlong *)param_1[2],uVar2,0xfa02,PTR_DAT_1401ac8d0,&DAT_14015cd00);
|
|
}
|
|
}
|
|
else if ((char)param_1[3] == '\0') {
|
|
FUN_14006cb70(plVar21,param_2,puVar16,param_4);
|
|
local_358 = (longlong ****)PTR_DAT_1401ac010;
|
|
local_158 = (uint)local_res20;
|
|
FUN_1400d9de0((longlong *)&local_358);
|
|
FUN_1400141f0((longlong *)&local_358,(short *)&DAT_14015cacc);
|
|
psVar10 = (short *)FUN_1400789a0((uint)local_res10[0]);
|
|
FUN_1400141f0((longlong *)&local_358,psVar10);
|
|
FUN_1400141f0((longlong *)&local_358,(short *)&DAT_14015cacc);
|
|
iVar6 = 0;
|
|
if (((longlong *****)local_358 != (longlong *****)0x0) &&
|
|
(local_358 != (longlong ****)PTR_DAT_1401ac010)) {
|
|
iVar6 = *(int *)(local_358 + -1);
|
|
}
|
|
uVar22 = (ulonglong)(iVar6 - 2U);
|
|
local_2e8 = (undefined **)
|
|
FUN_140014170((longlong *)&local_358,(longlong *)&local_140,iVar6 - 2U);
|
|
ppppplVar14 = (longlong *****)local_358;
|
|
if ((longlong *****)local_358 == (longlong *****)0x0) {
|
|
ppppplVar14 = (longlong *****)PTR_DAT_1401ac010;
|
|
}
|
|
local_358 = (longlong ****)ppppplVar14;
|
|
if ((longlong *****)*local_2e8 != ppppplVar14) {
|
|
ppppplVar14 = (longlong *****)FUN_14006cb70(ppppplVar14,PTR_DAT_1401ac010,uVar22,param_4);
|
|
local_2f8 = (longlong ****)ppppplVar14;
|
|
FUN_14006b350((int *)ppppplVar14);
|
|
pppplVar4 = local_358;
|
|
local_2f0 = CONCAT31(local_2f0._1_3_,1);
|
|
if ((((longlong *****)local_358 != (longlong *****)0x0) &&
|
|
(local_358 != (longlong ****)PTR_DAT_1401ac010)) &&
|
|
(ppppplVar17 = (longlong *****)(local_358 + -1), ppppplVar17 != (longlong *****)0x0)) {
|
|
ppuVar15 = (undefined **)FUN_14006cb70(local_358,PTR_DAT_1401ac010,uVar22,param_4);
|
|
local_2d0 = ppuVar15;
|
|
FUN_14006b350((int *)ppuVar15);
|
|
local_2c8 = CONCAT31(local_2c8._1_3_,1);
|
|
piVar1 = (int *)((longlong)pppplVar4 + -4);
|
|
*piVar1 = *piVar1 + -1;
|
|
if (*piVar1 == 0) {
|
|
FUN_14006cc60(ppppplVar17);
|
|
}
|
|
FUN_14006b3e0((longlong)ppuVar15);
|
|
}
|
|
local_358 = (longlong ****)*local_2e8;
|
|
if (((local_358 != (longlong ****)PTR_DAT_1401ac010) &&
|
|
((longlong *****)local_358 != (longlong *****)0x0)) &&
|
|
((longlong *****)local_358 != (longlong *****)0x8)) {
|
|
*(int *)((longlong)local_358 + -4) = *(int *)((longlong)local_358 + -4) + 1;
|
|
}
|
|
FUN_14006b3e0((longlong)ppppplVar14);
|
|
}
|
|
if (((local_140 != (undefined *)0x0) && (local_140 != PTR_DAT_1401ac010)) &&
|
|
(local_140 + -8 != (undefined *)0x0)) {
|
|
ppppplVar14 = (longlong *****)FUN_14006cb70(ppppplVar14,PTR_DAT_1401ac010,uVar22,param_4);
|
|
local_2f8 = (longlong ****)ppppplVar14;
|
|
FUN_14006b350((int *)ppppplVar14);
|
|
local_2f0 = CONCAT31(local_2f0._1_3_,1);
|
|
piVar1 = (int *)(local_140 + -4);
|
|
*piVar1 = *piVar1 + -1;
|
|
if (*piVar1 == 0) {
|
|
FUN_14006cc60(local_140 + -8);
|
|
}
|
|
FUN_14006b3e0((longlong)ppppplVar14);
|
|
}
|
|
local_350 = (longlong ****)&local_250;
|
|
puVar16 = PTR_DAT_1401ac010;
|
|
local_140 = PTR_DAT_1401ac010;
|
|
FUN_14006cb70(ppppplVar14,PTR_DAT_1401ac010,uVar22,param_4);
|
|
local_250 = (longlong ****)PTR_DAT_1401ac010;
|
|
if (PTR_DAT_1401ac010 == (undefined *)0x0) {
|
|
local_250 = (longlong ****)(longlong *****)0x0;
|
|
}
|
|
if (local_358 != (longlong ****)PTR_DAT_1401ac010) {
|
|
ppppplVar14 = (longlong *****)FUN_14006cb70(ppppplVar14,puVar16,uVar22,param_4);
|
|
local_2f8 = (longlong ****)ppppplVar14;
|
|
FUN_14006b350((int *)ppppplVar14);
|
|
local_2f0 = CONCAT31(local_2f0._1_3_,1);
|
|
FUN_1400031e0((longlong *)&local_250,puVar16,uVar22,param_4);
|
|
local_250 = local_358;
|
|
if (((local_358 != (longlong ****)PTR_DAT_1401ac010) &&
|
|
((longlong *****)local_358 != (longlong *****)0x0)) &&
|
|
((longlong *****)local_358 != (longlong *****)0x8)) {
|
|
*(int *)((longlong)local_358 + -4) = *(int *)((longlong)local_358 + -4) + 1;
|
|
}
|
|
FUN_14006b3e0((longlong)ppppplVar14);
|
|
}
|
|
puVar13 = PTR_DAT_1401ac8d0;
|
|
FUN_14006cb70(ppppplVar14,puVar16,uVar22,param_4);
|
|
local_200 = PTR_DAT_1401ac010;
|
|
iVar6 = FUN_14006c9f0((short *)puVar13);
|
|
puVar16 = FUN_140002f30((longlong *)&local_200,iVar6);
|
|
FUN_14006ca20(puVar16,puVar13,iVar6);
|
|
FUN_140003010((longlong *)&local_200);
|
|
(**(code **)(*param_1 + 0x28))(param_1,0xfa02,&local_200,&local_250);
|
|
plVar21 = (longlong *)param_1[2];
|
|
uVar9 = 0xfa02;
|
|
uVar22 = (ulonglong)uVar2;
|
|
puVar16 = PTR_DAT_1401ac8d0;
|
|
(**(code **)(*plVar21 + 0x70))();
|
|
pppplVar4 = local_358;
|
|
if ((((longlong *****)local_358 != (longlong *****)0x0) &&
|
|
(local_358 != (longlong ****)PTR_DAT_1401ac010)) &&
|
|
(ppppplVar14 = (longlong *****)(local_358 + -1), ppppplVar14 != (longlong *****)0x0)) {
|
|
ppppplVar17 = (longlong *****)FUN_14006cb70(plVar21,uVar22,uVar9,puVar16);
|
|
local_2f8 = (longlong ****)ppppplVar17;
|
|
FUN_14006b350((int *)ppppplVar17);
|
|
local_2f0 = CONCAT31(local_2f0._1_3_,1);
|
|
piVar1 = (int *)((longlong)pppplVar4 + -4);
|
|
*piVar1 = *piVar1 + -1;
|
|
if (*piVar1 == 0) {
|
|
FUN_14006cc60(ppppplVar14);
|
|
}
|
|
FUN_14006b3e0((longlong)ppppplVar17);
|
|
}
|
|
}
|
|
if (((char)param_1[3] == '\0') && (*(char *)((longlong)param_1 + 0x1a) != '\0')) {
|
|
local_320 = (int *)CONCAT44(local_320._4_4_,0xfa02);
|
|
local_318 = PTR_DAT_1401ac8d0;
|
|
local_310 = uVar2;
|
|
local_308 = param_3;
|
|
(**(code **)(*param_1 + 0x20))(param_1,&local_320);
|
|
DVar7 = GetTickCount();
|
|
}
|
|
uVar9 = (**(code **)(*param_1 + 0x40))(param_1,uVar2,local_2b8,&local_res20,local_res10);
|
|
if ((char)uVar9 == '\0') {
|
|
uVar9 = (**(code **)(*(longlong *)param_1[2] + 0x40))
|
|
((longlong *)param_1[2],PTR_DAT_1401ac8d0);
|
|
}
|
|
if (((char)param_1[3] == '\0') && (*(char *)((longlong)param_1 + 0x1a) != '\0')) {
|
|
local_348 = (undefined **)CONCAT44(local_348._4_4_,0xfa02);
|
|
local_340 = PTR_DAT_1401ac8d0;
|
|
goto LAB_1400844f5;
|
|
}
|
|
break;
|
|
case 0xfa03:
|
|
FUN_140078060(local_2b8);
|
|
local_2b4 = param_2[10];
|
|
local_2b8[0] = (undefined1)param_2[0x10];
|
|
plVar21 = (longlong *)param_1[2];
|
|
puVar16 = PTR_DAT_1401ac8d8;
|
|
(**(code **)(*plVar21 + 0x48))();
|
|
DVar7 = 0;
|
|
if (*(char *)((longlong)param_1 + 0x19) == '\0') {
|
|
if ((char)param_1[3] == '\0') {
|
|
(**(code **)(*(longlong *)param_1[2] + 0x70))
|
|
((longlong *)param_1[2],uVar2,0xfa03,PTR_DAT_1401ac8d8,&DAT_14015cd00);
|
|
}
|
|
}
|
|
else if ((char)param_1[3] == '\0') {
|
|
FUN_14006cb70(plVar21,param_2,puVar16,param_4);
|
|
ppppplVar14 = (longlong *****)PTR_DAT_1401ac010;
|
|
local_res10[0] = (longlong ****)PTR_DAT_1401ac010;
|
|
uVar9 = 0xfffffffe;
|
|
ppuVar15 = &local_150;
|
|
local_res20 = (longlong ****)
|
|
FUN_140014170((longlong *)local_res10,(longlong *)ppuVar15,0xfffffffe);
|
|
if (ppppplVar14 == (longlong *****)0x0) {
|
|
ppppplVar14 = (longlong *****)PTR_DAT_1401ac010;
|
|
}
|
|
local_res10[0] = (longlong ****)ppppplVar14;
|
|
if ((longlong *****)*local_res20 != ppppplVar14) {
|
|
ppppplVar11 = (longlong *****)FUN_14006cb70(PTR_DAT_1401ac010,ppuVar15,uVar9,param_4);
|
|
ppppplVar17 = ppppplVar11;
|
|
local_2f8 = (longlong ****)ppppplVar11;
|
|
FUN_14006b350((int *)ppppplVar11);
|
|
local_2f0 = CONCAT31(local_2f0._1_3_,1);
|
|
if (((ppppplVar14 != (longlong *****)0x0) &&
|
|
(ppppplVar14 != (longlong *****)PTR_DAT_1401ac010)) &&
|
|
(ppppplVar14 + -1 != (longlong *****)0x0)) {
|
|
ppuVar12 = (undefined **)FUN_14006cb70(ppppplVar17,ppuVar15,uVar9,param_4);
|
|
local_2d0 = ppuVar12;
|
|
FUN_14006b350((int *)ppuVar12);
|
|
local_2c8 = CONCAT31(local_2c8._1_3_,1);
|
|
piVar1 = (int *)((longlong)ppppplVar14 + -4);
|
|
*piVar1 = *piVar1 + -1;
|
|
if (*piVar1 == 0) {
|
|
FUN_14006cc60(ppppplVar14 + -1);
|
|
}
|
|
FUN_14006b3e0((longlong)ppuVar12);
|
|
}
|
|
ppppplVar14 = (longlong *****)*local_res20;
|
|
if (((ppppplVar14 != (longlong *****)PTR_DAT_1401ac010) &&
|
|
(ppppplVar14 != (longlong *****)0x0)) && (ppppplVar14 != (longlong *****)0x8)) {
|
|
*(int *)((longlong)ppppplVar14 + -4) = *(int *)((longlong)ppppplVar14 + -4) + 1;
|
|
}
|
|
local_res10[0] = (longlong ****)ppppplVar14;
|
|
FUN_14006b3e0((longlong)ppppplVar11);
|
|
}
|
|
if (((local_150 != (undefined *)0x0) && (local_150 != PTR_DAT_1401ac010)) &&
|
|
(local_150 + -8 != (undefined *)0x0)) {
|
|
ppppplVar17 = (longlong *****)FUN_14006cb70(PTR_DAT_1401ac010,ppuVar15,uVar9,param_4);
|
|
local_2f8 = (longlong ****)ppppplVar17;
|
|
FUN_14006b350((int *)ppppplVar17);
|
|
local_2f0 = CONCAT31(local_2f0._1_3_,1);
|
|
piVar1 = (int *)(local_150 + -4);
|
|
*piVar1 = *piVar1 + -1;
|
|
if (*piVar1 == 0) {
|
|
FUN_14006cc60(local_150 + -8);
|
|
}
|
|
FUN_14006b3e0((longlong)ppppplVar17);
|
|
}
|
|
local_res20 = (longlong ****)&local_248;
|
|
ppppplVar17 = (longlong *****)PTR_DAT_1401ac010;
|
|
local_150 = PTR_DAT_1401ac010;
|
|
FUN_14006cb70(PTR_DAT_1401ac010,ppuVar15,uVar9,param_4);
|
|
local_248 = (longlong ****)PTR_DAT_1401ac010;
|
|
if (PTR_DAT_1401ac010 == (undefined *)0x0) {
|
|
local_248 = (longlong ****)(longlong *****)0x0;
|
|
}
|
|
if (ppppplVar14 != (longlong *****)PTR_DAT_1401ac010) {
|
|
ppppplVar17 = (longlong *****)FUN_14006cb70(ppppplVar17,ppuVar15,uVar9,param_4);
|
|
local_2f8 = (longlong ****)ppppplVar17;
|
|
FUN_14006b350((int *)ppppplVar17);
|
|
local_2f0 = CONCAT31(local_2f0._1_3_,1);
|
|
FUN_1400031e0((longlong *)&local_248,ppuVar15,uVar9,param_4);
|
|
if (((ppppplVar14 != (longlong *****)PTR_DAT_1401ac010) &&
|
|
(ppppplVar14 != (longlong *****)0x0)) && (ppppplVar14 != (longlong *****)0x8)) {
|
|
*(int *)((longlong)ppppplVar14 + -4) = *(int *)((longlong)ppppplVar14 + -4) + 1;
|
|
}
|
|
local_248 = (longlong ****)ppppplVar14;
|
|
FUN_14006b3e0((longlong)ppppplVar17);
|
|
}
|
|
puVar16 = PTR_DAT_1401ac8d8;
|
|
FUN_14006cb70(ppppplVar17,ppuVar15,uVar9,param_4);
|
|
local_1a8 = PTR_DAT_1401ac010;
|
|
iVar6 = FUN_14006c9f0((short *)puVar16);
|
|
puVar13 = FUN_140002f30((longlong *)&local_1a8,iVar6);
|
|
FUN_14006ca20(puVar13,puVar16,iVar6);
|
|
FUN_140003010((longlong *)&local_1a8);
|
|
(**(code **)(*param_1 + 0x28))(param_1,0xfa03,&local_1a8,&local_248);
|
|
plVar21 = (longlong *)param_1[2];
|
|
uVar9 = 0xfa03;
|
|
uVar22 = (ulonglong)uVar2;
|
|
puVar16 = PTR_DAT_1401ac8d8;
|
|
(**(code **)(*plVar21 + 0x70))();
|
|
if (((ppppplVar14 != (longlong *****)0x0) &&
|
|
(ppppplVar14 != (longlong *****)PTR_DAT_1401ac010)) &&
|
|
(ppppplVar14 + -1 != (longlong *****)0x0)) {
|
|
ppppplVar17 = (longlong *****)FUN_14006cb70(plVar21,uVar22,uVar9,puVar16);
|
|
local_2f8 = (longlong ****)ppppplVar17;
|
|
FUN_14006b350((int *)ppppplVar17);
|
|
local_2f0 = CONCAT31(local_2f0._1_3_,1);
|
|
piVar1 = (int *)((longlong)ppppplVar14 + -4);
|
|
*piVar1 = *piVar1 + -1;
|
|
if (*piVar1 == 0) {
|
|
FUN_14006cc60(ppppplVar14 + -1);
|
|
}
|
|
FUN_14006b3e0((longlong)ppppplVar17);
|
|
}
|
|
}
|
|
if (((char)param_1[3] == '\0') && (*(char *)((longlong)param_1 + 0x1a) != '\0')) {
|
|
local_320 = (int *)CONCAT44(local_320._4_4_,0xfa03);
|
|
local_318 = PTR_DAT_1401ac8d8;
|
|
local_310 = uVar2;
|
|
local_308 = param_3;
|
|
(**(code **)(*param_1 + 0x20))(param_1,&local_320);
|
|
DVar7 = GetTickCount();
|
|
}
|
|
uVar9 = (**(code **)(*param_1 + 0x48))(param_1,uVar2,local_2b8);
|
|
if ((char)uVar9 == '\0') {
|
|
uVar9 = (**(code **)(*(longlong *)param_1[2] + 0x40))
|
|
((longlong *)param_1[2],PTR_DAT_1401ac8d8);
|
|
}
|
|
if (((char)param_1[3] == '\0') && (*(char *)((longlong)param_1 + 0x1a) != '\0')) {
|
|
local_348 = (undefined **)CONCAT44(local_348._4_4_,0xfa03);
|
|
local_340 = PTR_DAT_1401ac8d8;
|
|
goto LAB_1400844f5;
|
|
}
|
|
break;
|
|
case 0xfa04:
|
|
FUN_140078060(local_2b8);
|
|
local_2b4 = param_2[10];
|
|
local_2b8[0] = (undefined1)param_2[0x10];
|
|
FUN_1400bd3c0(param_2,(undefined4 *)&local_358,SVar28,param_4);
|
|
FUN_1400bd3c0(param_2,(undefined4 *)&local_2e8,SVar28,param_4);
|
|
uVar9 = FUN_1400bc930(param_2,&local_res20,4);
|
|
if ((char)uVar9 != '\0') {
|
|
local_2d8[0] = (uint)local_res20;
|
|
}
|
|
uVar9 = FUN_1400bc930(param_2,&local_res20,1);
|
|
uVar25 = (byte)local_res10[0];
|
|
if ((char)uVar9 != '\0') {
|
|
uVar25 = local_res20._0_1_;
|
|
}
|
|
local_res10[0] = (longlong ****)CONCAT71(local_res10[0]._1_7_,uVar25);
|
|
plVar21 = (longlong *)param_1[2];
|
|
puVar16 = PTR_DAT_1401ac8e0;
|
|
(**(code **)(*plVar21 + 0x48))();
|
|
DVar7 = 0;
|
|
if (*(char *)((longlong)param_1 + 0x19) == '\0') {
|
|
if ((char)param_1[3] == '\0') {
|
|
(**(code **)(*(longlong *)param_1[2] + 0x70))
|
|
((longlong *)param_1[2],uVar2,0xfa04,PTR_DAT_1401ac8e0,&DAT_14015cd00);
|
|
}
|
|
}
|
|
else if ((char)param_1[3] == '\0') {
|
|
FUN_14006cb70(plVar21,param_2,puVar16,param_4);
|
|
local_res20 = (longlong ****)PTR_DAT_1401ac010;
|
|
local_1b0 = local_358._0_4_;
|
|
FUN_1400d9de0((longlong *)&local_res20);
|
|
FUN_1400141f0((longlong *)&local_res20,(short *)&DAT_14015cacc);
|
|
local_210 = local_2e8._0_4_;
|
|
FUN_1400d9de0((longlong *)&local_res20);
|
|
FUN_1400141f0((longlong *)&local_res20,(short *)&DAT_14015cacc);
|
|
FUN_1400d9e40((longlong *)&local_res20);
|
|
FUN_1400141f0((longlong *)&local_res20,(short *)&DAT_14015cacc);
|
|
FUN_1400d9c40((longlong *)&local_res20,(char *)local_res10);
|
|
FUN_1400141f0((longlong *)&local_res20,(short *)&DAT_14015cacc);
|
|
iVar6 = 0;
|
|
if (((longlong *****)local_res20 != (longlong *****)0x0) &&
|
|
(local_res20 != (longlong ****)PTR_DAT_1401ac010)) {
|
|
iVar6 = *(int *)(local_res20 + -1);
|
|
}
|
|
uVar22 = (ulonglong)(iVar6 - 2U);
|
|
local_350 = (longlong ****)
|
|
FUN_140014170((longlong *)&local_res20,(longlong *)&local_138,iVar6 - 2U);
|
|
ppppplVar14 = (longlong *****)local_res20;
|
|
if ((longlong *****)local_res20 == (longlong *****)0x0) {
|
|
ppppplVar14 = (longlong *****)PTR_DAT_1401ac010;
|
|
}
|
|
local_res20 = (longlong ****)ppppplVar14;
|
|
if ((longlong *****)*local_350 != ppppplVar14) {
|
|
ppppplVar14 = (longlong *****)FUN_14006cb70(ppppplVar14,PTR_DAT_1401ac010,uVar22,param_4);
|
|
local_2f8 = (longlong ****)ppppplVar14;
|
|
FUN_14006b350((int *)ppppplVar14);
|
|
pppplVar4 = local_res20;
|
|
local_2f0 = CONCAT31(local_2f0._1_3_,1);
|
|
if ((((longlong *****)local_res20 != (longlong *****)0x0) &&
|
|
(local_res20 != (longlong ****)PTR_DAT_1401ac010)) &&
|
|
(ppppplVar17 = (longlong *****)(local_res20 + -1), ppppplVar17 != (longlong *****)0x0))
|
|
{
|
|
ppuVar15 = (undefined **)FUN_14006cb70(local_res20,PTR_DAT_1401ac010,uVar22,param_4);
|
|
local_2d0 = ppuVar15;
|
|
FUN_14006b350((int *)ppuVar15);
|
|
local_2c8 = CONCAT31(local_2c8._1_3_,1);
|
|
piVar1 = (int *)((longlong)pppplVar4 + -4);
|
|
*piVar1 = *piVar1 + -1;
|
|
if (*piVar1 == 0) {
|
|
FUN_14006cc60(ppppplVar17);
|
|
}
|
|
FUN_14006b3e0((longlong)ppuVar15);
|
|
}
|
|
local_res20 = (longlong ****)*local_350;
|
|
if (((local_res20 != (longlong ****)PTR_DAT_1401ac010) &&
|
|
((longlong *****)local_res20 != (longlong *****)0x0)) &&
|
|
((longlong *****)local_res20 != (longlong *****)0x8)) {
|
|
*(int *)((longlong)local_res20 + -4) = *(int *)((longlong)local_res20 + -4) + 1;
|
|
}
|
|
FUN_14006b3e0((longlong)ppppplVar14);
|
|
}
|
|
if (((local_138 != (undefined *)0x0) && (local_138 != PTR_DAT_1401ac010)) &&
|
|
(local_138 + -8 != (undefined *)0x0)) {
|
|
ppppplVar14 = (longlong *****)FUN_14006cb70(ppppplVar14,PTR_DAT_1401ac010,uVar22,param_4);
|
|
local_2f8 = (longlong ****)ppppplVar14;
|
|
FUN_14006b350((int *)ppppplVar14);
|
|
local_2f0 = CONCAT31(local_2f0._1_3_,1);
|
|
piVar1 = (int *)(local_138 + -4);
|
|
*piVar1 = *piVar1 + -1;
|
|
if (*piVar1 == 0) {
|
|
FUN_14006cc60(local_138 + -8);
|
|
}
|
|
FUN_14006b3e0((longlong)ppppplVar14);
|
|
}
|
|
local_350 = (longlong ****)&local_258;
|
|
puVar16 = PTR_DAT_1401ac010;
|
|
local_138 = PTR_DAT_1401ac010;
|
|
FUN_14006cb70(ppppplVar14,PTR_DAT_1401ac010,uVar22,param_4);
|
|
local_258 = (longlong ****)PTR_DAT_1401ac010;
|
|
if (PTR_DAT_1401ac010 == (undefined *)0x0) {
|
|
local_258 = (longlong ****)(longlong *****)0x0;
|
|
}
|
|
if (local_res20 != (longlong ****)PTR_DAT_1401ac010) {
|
|
ppppplVar14 = (longlong *****)FUN_14006cb70(ppppplVar14,puVar16,uVar22,param_4);
|
|
local_2f8 = (longlong ****)ppppplVar14;
|
|
FUN_14006b350((int *)ppppplVar14);
|
|
local_2f0 = CONCAT31(local_2f0._1_3_,1);
|
|
FUN_1400031e0((longlong *)&local_258,puVar16,uVar22,param_4);
|
|
local_258 = local_res20;
|
|
if (((local_res20 != (longlong ****)PTR_DAT_1401ac010) &&
|
|
((longlong *****)local_res20 != (longlong *****)0x0)) &&
|
|
((longlong *****)local_res20 != (longlong *****)0x8)) {
|
|
*(int *)((longlong)local_res20 + -4) = *(int *)((longlong)local_res20 + -4) + 1;
|
|
}
|
|
FUN_14006b3e0((longlong)ppppplVar14);
|
|
}
|
|
puVar13 = PTR_DAT_1401ac8e0;
|
|
FUN_14006cb70(ppppplVar14,puVar16,uVar22,param_4);
|
|
local_1f0 = PTR_DAT_1401ac010;
|
|
iVar6 = FUN_14006c9f0((short *)puVar13);
|
|
puVar16 = FUN_140002f30((longlong *)&local_1f0,iVar6);
|
|
FUN_14006ca20(puVar16,puVar13,iVar6);
|
|
FUN_140003010((longlong *)&local_1f0);
|
|
(**(code **)(*param_1 + 0x28))(param_1,0xfa04,&local_1f0,&local_258);
|
|
plVar21 = (longlong *)param_1[2];
|
|
uVar9 = 0xfa04;
|
|
uVar22 = (ulonglong)uVar2;
|
|
puVar16 = PTR_DAT_1401ac8e0;
|
|
(**(code **)(*plVar21 + 0x70))();
|
|
pppplVar4 = local_res20;
|
|
if ((((longlong *****)local_res20 != (longlong *****)0x0) &&
|
|
(local_res20 != (longlong ****)PTR_DAT_1401ac010)) &&
|
|
(ppppplVar14 = (longlong *****)(local_res20 + -1), ppppplVar14 != (longlong *****)0x0)) {
|
|
ppppplVar17 = (longlong *****)FUN_14006cb70(plVar21,uVar22,uVar9,puVar16);
|
|
local_2f8 = (longlong ****)ppppplVar17;
|
|
FUN_14006b350((int *)ppppplVar17);
|
|
local_2f0 = CONCAT31(local_2f0._1_3_,1);
|
|
piVar1 = (int *)((longlong)pppplVar4 + -4);
|
|
*piVar1 = *piVar1 + -1;
|
|
if (*piVar1 == 0) {
|
|
FUN_14006cc60(ppppplVar14);
|
|
}
|
|
FUN_14006b3e0((longlong)ppppplVar17);
|
|
}
|
|
}
|
|
if (((char)param_1[3] == '\0') && (*(char *)((longlong)param_1 + 0x1a) != '\0')) {
|
|
local_320 = (int *)CONCAT44(local_320._4_4_,0xfa04);
|
|
local_318 = PTR_DAT_1401ac8e0;
|
|
local_310 = uVar2;
|
|
local_308 = param_3;
|
|
(**(code **)(*param_1 + 0x20))(param_1,&local_320);
|
|
DVar7 = GetTickCount();
|
|
}
|
|
uVar9 = (**(code **)(*param_1 + 0x50))
|
|
(param_1,uVar2,local_2b8,&local_358,&local_2e8,local_2d8,local_res10);
|
|
if ((char)uVar9 == '\0') {
|
|
uVar9 = (**(code **)(*(longlong *)param_1[2] + 0x40))
|
|
((longlong *)param_1[2],PTR_DAT_1401ac8e0);
|
|
}
|
|
if (((char)param_1[3] == '\0') && (*(char *)((longlong)param_1 + 0x1a) != '\0')) {
|
|
local_348 = (undefined **)CONCAT44(local_348._4_4_,0xfa04);
|
|
local_340 = PTR_DAT_1401ac8e0;
|
|
goto LAB_1400844f5;
|
|
}
|
|
break;
|
|
case 0xfa05:
|
|
FUN_140078060(local_2b8);
|
|
local_2b4 = param_2[10];
|
|
local_2b8[0] = (undefined1)param_2[0x10];
|
|
FUN_1400bd3c0(param_2,(undefined4 *)&local_358,SVar28,param_4);
|
|
FUN_1400bd3c0(param_2,(undefined4 *)&local_res20,SVar28,param_4);
|
|
local_2f8 = (longlong ****)Proud::AddrPort::vftable;
|
|
DVar7 = 0;
|
|
local_2f0 = 0;
|
|
local_2ec = 0;
|
|
uVar9 = FUN_1400bc930(param_2,local_res10,4);
|
|
if ((char)uVar9 != '\0') {
|
|
local_2f0 = (uint)local_res10[0];
|
|
}
|
|
uVar9 = FUN_1400bc930(param_2,local_res10,2);
|
|
if ((char)uVar9 != '\0') {
|
|
local_2ec = local_res10[0]._0_2_;
|
|
}
|
|
local_2d0 = Proud::AddrPort::vftable;
|
|
local_2c8 = 0;
|
|
local_2c4 = 0;
|
|
uVar9 = FUN_1400bc930(param_2,local_res10,4);
|
|
if ((char)uVar9 != '\0') {
|
|
local_2c8 = (uint)local_res10[0];
|
|
}
|
|
uVar9 = FUN_1400bc930(param_2,local_res10,2);
|
|
if ((char)uVar9 != '\0') {
|
|
local_2c4 = local_res10[0]._0_2_;
|
|
}
|
|
local_240 = Proud::AddrPort::vftable;
|
|
local_238 = 0;
|
|
local_234 = 0;
|
|
uVar9 = FUN_1400bc930(param_2,local_res10,4);
|
|
if ((char)uVar9 != '\0') {
|
|
local_238 = (uint)local_res10[0];
|
|
}
|
|
uVar9 = FUN_1400bc930(param_2,local_res10,2);
|
|
if ((char)uVar9 != '\0') {
|
|
local_234 = local_res10[0]._0_2_;
|
|
}
|
|
local_2e8 = Proud::AddrPort::vftable;
|
|
local_2e0 = 0;
|
|
local_2dc = 0;
|
|
uVar9 = FUN_1400bc930(param_2,local_res10,4);
|
|
if ((char)uVar9 != '\0') {
|
|
local_2e0 = (uint)local_res10[0];
|
|
}
|
|
uVar9 = FUN_1400bc930(param_2,local_res10,2);
|
|
if ((char)uVar9 != '\0') {
|
|
local_2dc = local_res10[0]._0_2_;
|
|
}
|
|
plVar21 = (longlong *)param_1[2];
|
|
puVar16 = PTR_DAT_1401ac8e8;
|
|
(**(code **)(*plVar21 + 0x48))();
|
|
if (*(char *)((longlong)param_1 + 0x19) == '\0') {
|
|
if ((char)param_1[3] == '\0') {
|
|
(**(code **)(*(longlong *)param_1[2] + 0x70))
|
|
((longlong *)param_1[2],uVar2,0xfa05,PTR_DAT_1401ac8e8,&DAT_14015cd00);
|
|
}
|
|
}
|
|
else if ((char)param_1[3] == '\0') {
|
|
FUN_14006cb70(plVar21,param_2,puVar16,param_4);
|
|
local_res10[0] = (longlong ****)PTR_DAT_1401ac010;
|
|
local_17c = local_358._0_4_;
|
|
FUN_1400d9de0((longlong *)local_res10);
|
|
FUN_1400141f0((longlong *)local_res10,(short *)&DAT_14015cacc);
|
|
local_1ac = (uint)local_res20;
|
|
FUN_1400d9de0((longlong *)local_res10);
|
|
FUN_1400141f0((longlong *)local_res10,(short *)&DAT_14015cacc);
|
|
plVar21 = (longlong *)(*(code *)*local_2f8)(&local_2f8,&local_350);
|
|
ppppplVar14 = local_res10;
|
|
FUN_140053b20((longlong *)ppppplVar14,plVar21);
|
|
pppplVar4 = local_350;
|
|
if ((((longlong *****)local_350 != (longlong *****)0x0) &&
|
|
(local_350 != (longlong ****)PTR_DAT_1401ac010)) &&
|
|
(ppppplVar17 = (longlong *****)(local_350 + -1), ppppplVar17 != (longlong *****)0x0)) {
|
|
piVar18 = (int *)FUN_14006cb70(ppppplVar14,plVar21,puVar16,param_4);
|
|
local_320 = piVar18;
|
|
FUN_14006b350(piVar18);
|
|
local_318 = (undefined *)CONCAT71(local_318._1_7_,1);
|
|
piVar1 = (int *)((longlong)pppplVar4 + -4);
|
|
*piVar1 = *piVar1 + -1;
|
|
if (*piVar1 == 0) {
|
|
FUN_14006cc60(ppppplVar17);
|
|
}
|
|
FUN_14006b3e0((longlong)piVar18);
|
|
}
|
|
FUN_1400141f0((longlong *)local_res10,(short *)&DAT_14015cacc);
|
|
plVar21 = (longlong *)(*(code *)*local_2d0)(&local_2d0,&local_350);
|
|
ppppplVar14 = local_res10;
|
|
FUN_140053b20((longlong *)ppppplVar14,plVar21);
|
|
pppplVar4 = local_350;
|
|
if ((((longlong *****)local_350 != (longlong *****)0x0) &&
|
|
(local_350 != (longlong ****)PTR_DAT_1401ac010)) &&
|
|
(ppppplVar17 = (longlong *****)(local_350 + -1), ppppplVar17 != (longlong *****)0x0)) {
|
|
piVar18 = (int *)FUN_14006cb70(ppppplVar14,plVar21,puVar16,param_4);
|
|
local_320 = piVar18;
|
|
FUN_14006b350(piVar18);
|
|
local_318 = (undefined *)CONCAT71(local_318._1_7_,1);
|
|
piVar1 = (int *)((longlong)pppplVar4 + -4);
|
|
*piVar1 = *piVar1 + -1;
|
|
if (*piVar1 == 0) {
|
|
FUN_14006cc60(ppppplVar17);
|
|
}
|
|
FUN_14006b3e0((longlong)piVar18);
|
|
}
|
|
FUN_1400141f0((longlong *)local_res10,(short *)&DAT_14015cacc);
|
|
plVar21 = (longlong *)(*(code *)*local_240)(&local_240,&local_350);
|
|
ppppplVar14 = local_res10;
|
|
FUN_140053b20((longlong *)ppppplVar14,plVar21);
|
|
pppplVar4 = local_350;
|
|
if ((((longlong *****)local_350 != (longlong *****)0x0) &&
|
|
(local_350 != (longlong ****)PTR_DAT_1401ac010)) &&
|
|
(ppppplVar17 = (longlong *****)(local_350 + -1), ppppplVar17 != (longlong *****)0x0)) {
|
|
piVar18 = (int *)FUN_14006cb70(ppppplVar14,plVar21,puVar16,param_4);
|
|
local_320 = piVar18;
|
|
FUN_14006b350(piVar18);
|
|
local_318 = (undefined *)CONCAT71(local_318._1_7_,1);
|
|
piVar1 = (int *)((longlong)pppplVar4 + -4);
|
|
*piVar1 = *piVar1 + -1;
|
|
if (*piVar1 == 0) {
|
|
FUN_14006cc60(ppppplVar17);
|
|
}
|
|
FUN_14006b3e0((longlong)piVar18);
|
|
}
|
|
FUN_1400141f0((longlong *)local_res10,(short *)&DAT_14015cacc);
|
|
plVar21 = (longlong *)(*(code *)*local_2e8)(&local_2e8,&local_350);
|
|
ppppplVar14 = local_res10;
|
|
FUN_140053b20((longlong *)ppppplVar14,plVar21);
|
|
if ((((longlong *****)local_350 != (longlong *****)0x0) &&
|
|
(local_350 != (longlong ****)PTR_DAT_1401ac010)) &&
|
|
((longlong *****)(local_350 + -1) != (longlong *****)0x0)) {
|
|
piVar18 = (int *)FUN_14006cb70(ppppplVar14,plVar21,puVar16,param_4);
|
|
local_320 = piVar18;
|
|
FUN_14006b350(piVar18);
|
|
local_318 = (undefined *)CONCAT71(local_318._1_7_,1);
|
|
piVar1 = (int *)((longlong)local_350 + -4);
|
|
*piVar1 = *piVar1 + -1;
|
|
if (*piVar1 == 0) {
|
|
FUN_14006cc60(local_350 + -1);
|
|
}
|
|
FUN_14006b3e0((longlong)piVar18);
|
|
}
|
|
FUN_1400141f0((longlong *)local_res10,(short *)&DAT_14015cacc);
|
|
iVar6 = 0;
|
|
if (((longlong *****)local_res10[0] != (longlong *****)0x0) &&
|
|
(local_res10[0] != (longlong ****)PTR_DAT_1401ac010)) {
|
|
iVar6 = *(int *)(local_res10[0] + -1);
|
|
}
|
|
uVar22 = (ulonglong)(iVar6 - 2U);
|
|
plVar20 = FUN_140014170((longlong *)local_res10,&local_d0,iVar6 - 2U);
|
|
FUN_140003110((longlong *)local_res10,plVar20,uVar22,param_4);
|
|
plVar21 = &local_d0;
|
|
FUN_1400031e0(plVar21,plVar20,uVar22,param_4);
|
|
local_350 = &local_228;
|
|
FUN_14006cb70(plVar21,plVar20,uVar22,param_4);
|
|
local_228 = (longlong ***)PTR_DAT_1401ac010;
|
|
FUN_140003110((longlong *)&local_228,(longlong *)local_res10,uVar22,param_4);
|
|
plVar21 = FUN_140003090(&local_90,(short *)PTR_DAT_1401ac8e8,0,param_4);
|
|
(**(code **)(*param_1 + 0x28))(param_1,0xfa05,plVar21,&local_228);
|
|
uVar9 = 0xfa05;
|
|
uVar22 = (ulonglong)uVar2;
|
|
puVar16 = PTR_DAT_1401ac8e8;
|
|
(**(code **)(*(longlong *)param_1[2] + 0x70))();
|
|
FUN_1400031e0((longlong *)local_res10,uVar22,uVar9,puVar16);
|
|
}
|
|
if (((char)param_1[3] == '\0') && (*(char *)((longlong)param_1 + 0x1a) != '\0')) {
|
|
local_320 = (int *)CONCAT44(local_320._4_4_,0xfa05);
|
|
local_318 = PTR_DAT_1401ac8e8;
|
|
local_310 = uVar2;
|
|
local_308 = param_3;
|
|
(**(code **)(*param_1 + 0x20))(param_1,&local_320);
|
|
DVar7 = GetTickCount();
|
|
}
|
|
uVar9 = (**(code **)(*param_1 + 0x58))
|
|
(param_1,uVar2,local_2b8,&local_358,&local_res20,&local_2f8,&local_2d0,
|
|
&local_240,&local_2e8);
|
|
if ((char)uVar9 == '\0') {
|
|
uVar9 = (**(code **)(*(longlong *)param_1[2] + 0x40))
|
|
((longlong *)param_1[2],PTR_DAT_1401ac8e8);
|
|
}
|
|
if (((char)param_1[3] == '\0') && (*(char *)((longlong)param_1 + 0x1a) != '\0')) {
|
|
local_348 = (undefined **)CONCAT44(local_348._4_4_,0xfa05);
|
|
local_340 = PTR_DAT_1401ac8e8;
|
|
goto LAB_1400844f5;
|
|
}
|
|
break;
|
|
case 0xfa06:
|
|
FUN_140078060(local_2b8);
|
|
local_2b4 = param_2[10];
|
|
local_2b8[0] = (undefined1)param_2[0x10];
|
|
DVar8 = 0;
|
|
DVar7 = 0;
|
|
local_340 = (undefined *)0x0;
|
|
local_338 = 0;
|
|
local_330 = 0;
|
|
local_328 = 0;
|
|
local_348 = Proud::ByteArray::vftable;
|
|
FUN_14007c620(param_2,(longlong)&local_348,SVar28,param_4);
|
|
plVar21 = (longlong *)param_1[2];
|
|
puVar16 = PTR_DAT_1401ac8f0;
|
|
(**(code **)(*plVar21 + 0x48))();
|
|
if (*(char *)((longlong)param_1 + 0x19) == '\0') {
|
|
if ((char)param_1[3] == '\0') {
|
|
(**(code **)(*(longlong *)param_1[2] + 0x70))
|
|
((longlong *)param_1[2],uVar2,0xfa06,PTR_DAT_1401ac8f0,&DAT_14015cd00);
|
|
goto LAB_1400823c7;
|
|
}
|
|
}
|
|
else {
|
|
DVar7 = DVar8;
|
|
if ((char)param_1[3] == '\0') {
|
|
FUN_14006cb70(plVar21,param_2,puVar16,param_4);
|
|
local_res10[0] = (longlong ****)PTR_DAT_1401ac010;
|
|
FUN_1400da0e0((longlong *)local_res10);
|
|
FUN_1400141f0((longlong *)local_res10,(short *)&DAT_14015cacc);
|
|
iVar6 = 0;
|
|
if (((longlong *****)local_res10[0] != (longlong *****)0x0) &&
|
|
(local_res10[0] != (longlong ****)PTR_DAT_1401ac010)) {
|
|
iVar6 = *(int *)(local_res10[0] + -1);
|
|
}
|
|
uVar22 = (ulonglong)(iVar6 - 2U);
|
|
plVar20 = FUN_140014170((longlong *)local_res10,&local_c0,iVar6 - 2U);
|
|
FUN_140003110((longlong *)local_res10,plVar20,uVar22,param_4);
|
|
plVar21 = &local_c0;
|
|
FUN_1400031e0(plVar21,plVar20,uVar22,param_4);
|
|
local_res20 = &local_1e0;
|
|
FUN_14006cb70(plVar21,plVar20,uVar22,param_4);
|
|
local_1e0 = (longlong ***)PTR_DAT_1401ac010;
|
|
FUN_140003110((longlong *)&local_1e0,(longlong *)local_res10,uVar22,param_4);
|
|
plVar21 = FUN_140003090(&local_80,(short *)PTR_DAT_1401ac8f0,0,param_4);
|
|
(**(code **)(*param_1 + 0x28))(param_1,0xfa06,plVar21,&local_1e0);
|
|
uVar9 = 0xfa06;
|
|
uVar22 = (ulonglong)uVar2;
|
|
puVar16 = PTR_DAT_1401ac8f0;
|
|
(**(code **)(*(longlong *)param_1[2] + 0x70))();
|
|
FUN_1400031e0((longlong *)local_res10,uVar22,uVar9,puVar16);
|
|
LAB_1400823c7:
|
|
DVar7 = DVar8;
|
|
if (((char)param_1[3] == '\0') && (*(char *)((longlong)param_1 + 0x1a) != '\0')) {
|
|
local_320 = (int *)CONCAT44(local_320._4_4_,0xfa06);
|
|
local_318 = PTR_DAT_1401ac8f0;
|
|
local_310 = uVar2;
|
|
local_308 = param_3;
|
|
(**(code **)(*param_1 + 0x20))(param_1,&local_320);
|
|
DVar7 = GetTickCount();
|
|
}
|
|
}
|
|
}
|
|
cVar5 = (**(code **)(*param_1 + 0x60))(param_1,uVar2,local_2b8,&local_348);
|
|
if (cVar5 == '\0') {
|
|
(**(code **)(*(longlong *)param_1[2] + 0x40))((longlong *)param_1[2],PTR_DAT_1401ac8f0);
|
|
}
|
|
if (((char)param_1[3] == '\0') && (*(char *)((longlong)param_1 + 0x1a) != '\0')) {
|
|
local_320 = (int *)CONCAT44(local_320._4_4_,0xfa06);
|
|
local_318 = PTR_DAT_1401ac8f0;
|
|
local_310 = uVar2;
|
|
local_308 = param_3;
|
|
DVar8 = GetTickCount();
|
|
local_300 = DVar8 - DVar7;
|
|
(**(code **)(*param_1 + 0x18))(param_1,&local_320);
|
|
}
|
|
uVar9 = FUN_140078360(&local_348);
|
|
break;
|
|
case 0xfa07:
|
|
FUN_140078060(local_2b8);
|
|
local_2b4 = param_2[10];
|
|
local_2b8[0] = (undefined1)param_2[0x10];
|
|
plVar21 = (longlong *)param_1[2];
|
|
puVar16 = PTR_DAT_1401ac8f8;
|
|
(**(code **)(*plVar21 + 0x48))();
|
|
if (*(char *)((longlong)param_1 + 0x19) == '\0') {
|
|
if ((char)param_1[3] == '\0') {
|
|
(**(code **)(*(longlong *)param_1[2] + 0x70))
|
|
((longlong *)param_1[2],uVar2,0xfa07,PTR_DAT_1401ac8f8,&DAT_14015cd00);
|
|
}
|
|
}
|
|
else if ((char)param_1[3] == '\0') {
|
|
FUN_14006cb70(plVar21,param_2,puVar16,param_4);
|
|
local_res10[0] = (longlong ****)PTR_DAT_1401ac010;
|
|
uVar9 = 0xfffffffe;
|
|
plVar20 = FUN_140014170((longlong *)local_res10,&local_c8,0xfffffffe);
|
|
FUN_140003110((longlong *)local_res10,plVar20,uVar9,param_4);
|
|
plVar21 = &local_c8;
|
|
FUN_1400031e0(plVar21,plVar20,uVar9,param_4);
|
|
local_res20 = &local_198;
|
|
FUN_14006cb70(plVar21,plVar20,uVar9,param_4);
|
|
local_198 = (longlong ***)PTR_DAT_1401ac010;
|
|
FUN_140003110((longlong *)&local_198,(longlong *)local_res10,uVar9,param_4);
|
|
plVar21 = FUN_140003090(&local_70,(short *)PTR_DAT_1401ac8f8,0,param_4);
|
|
(**(code **)(*param_1 + 0x28))(param_1,0xfa07,plVar21,&local_198);
|
|
uVar9 = 0xfa07;
|
|
uVar22 = (ulonglong)uVar2;
|
|
puVar16 = PTR_DAT_1401ac8f8;
|
|
(**(code **)(*(longlong *)param_1[2] + 0x70))();
|
|
FUN_1400031e0((longlong *)local_res10,uVar22,uVar9,puVar16);
|
|
}
|
|
DVar7 = 0;
|
|
if (((char)param_1[3] == '\0') && (*(char *)((longlong)param_1 + 0x1a) != '\0')) {
|
|
local_320 = (int *)CONCAT44(local_320._4_4_,0xfa07);
|
|
local_318 = PTR_DAT_1401ac8f8;
|
|
local_310 = uVar2;
|
|
local_308 = param_3;
|
|
(**(code **)(*param_1 + 0x20))(param_1,&local_320);
|
|
DVar7 = GetTickCount();
|
|
}
|
|
uVar9 = (**(code **)(*param_1 + 0x68))(param_1,uVar2,local_2b8);
|
|
if ((char)uVar9 == '\0') {
|
|
uVar9 = (**(code **)(*(longlong *)param_1[2] + 0x40))
|
|
((longlong *)param_1[2],PTR_DAT_1401ac8f8);
|
|
}
|
|
if (((char)param_1[3] == '\0') && (*(char *)((longlong)param_1 + 0x1a) != '\0')) {
|
|
local_348 = (undefined **)CONCAT44(local_348._4_4_,0xfa07);
|
|
local_340 = PTR_DAT_1401ac8f8;
|
|
goto LAB_1400844f5;
|
|
}
|
|
break;
|
|
case 0xfa08:
|
|
FUN_140078060(local_2b8);
|
|
local_2b4 = param_2[10];
|
|
local_2b8[0] = (undefined1)param_2[0x10];
|
|
uVar9 = 1;
|
|
FUN_1400bc930(param_2,local_res10,1);
|
|
local_res20 = (longlong ****)CONCAT44(local_res20._4_4_,(uint)(byte)local_res10[0]);
|
|
FUN_14006cb70((ulonglong)local_res10[0] & 0xff,(ulonglong)local_res10[0] & 0xff,uVar9,param_4)
|
|
;
|
|
local_358 = (longlong ****)PTR_DAT_1401ac010;
|
|
thunk_FUN_1400bda70(param_2,(longlong *)&local_358,uVar9,param_4);
|
|
plVar21 = (longlong *)param_1[2];
|
|
puVar16 = PTR_DAT_1401ac900;
|
|
(**(code **)(*plVar21 + 0x48))();
|
|
if (*(char *)((longlong)param_1 + 0x19) == '\0') {
|
|
if ((char)param_1[3] == '\0') {
|
|
(**(code **)(*(longlong *)param_1[2] + 0x70))
|
|
((longlong *)param_1[2],uVar2,0xfa08,PTR_DAT_1401ac900,&DAT_14015cd00);
|
|
}
|
|
}
|
|
else if ((char)param_1[3] == '\0') {
|
|
FUN_14006cb70(plVar21,param_2,puVar16,param_4);
|
|
local_res10[0] = (longlong ****)PTR_DAT_1401ac010;
|
|
pwVar19 = FUN_1400d9a00((uint)local_res20);
|
|
FUN_1400141f0((longlong *)local_res10,pwVar19);
|
|
FUN_1400141f0((longlong *)local_res10,(short *)&DAT_14015cacc);
|
|
FUN_1400da0a0((longlong *)local_res10,(longlong *)&local_358);
|
|
FUN_1400141f0((longlong *)local_res10,(short *)&DAT_14015cacc);
|
|
iVar6 = 0;
|
|
if (((longlong *****)local_res10[0] != (longlong *****)0x0) &&
|
|
(local_res10[0] != (longlong ****)PTR_DAT_1401ac010)) {
|
|
iVar6 = *(int *)(local_res10[0] + -1);
|
|
}
|
|
uVar22 = (ulonglong)(iVar6 - 2U);
|
|
plVar20 = FUN_140014170((longlong *)local_res10,&local_110,iVar6 - 2U);
|
|
FUN_140003110((longlong *)local_res10,plVar20,uVar22,param_4);
|
|
plVar21 = &local_110;
|
|
FUN_1400031e0(plVar21,plVar20,uVar22,param_4);
|
|
local_350 = &local_1d0;
|
|
FUN_14006cb70(plVar21,plVar20,uVar22,param_4);
|
|
local_1d0 = (longlong ***)PTR_DAT_1401ac010;
|
|
FUN_140003110((longlong *)&local_1d0,(longlong *)local_res10,uVar22,param_4);
|
|
plVar21 = FUN_140003090(&local_b8,(short *)PTR_DAT_1401ac900,0,param_4);
|
|
(**(code **)(*param_1 + 0x28))(param_1,0xfa08,plVar21,&local_1d0);
|
|
uVar9 = 0xfa08;
|
|
uVar22 = (ulonglong)uVar2;
|
|
puVar16 = PTR_DAT_1401ac900;
|
|
(**(code **)(*(longlong *)param_1[2] + 0x70))();
|
|
FUN_1400031e0((longlong *)local_res10,uVar22,uVar9,puVar16);
|
|
}
|
|
DVar7 = 0;
|
|
if (((char)param_1[3] == '\0') && (DVar7 = 0, *(char *)((longlong)param_1 + 0x1a) != '\0')) {
|
|
local_320 = (int *)CONCAT44(local_320._4_4_,0xfa08);
|
|
local_318 = PTR_DAT_1401ac900;
|
|
local_310 = uVar2;
|
|
local_308 = param_3;
|
|
(**(code **)(*param_1 + 0x20))(param_1,&local_320);
|
|
DVar7 = GetTickCount();
|
|
}
|
|
ppppplVar14 = &local_res20;
|
|
puVar24 = local_2b8;
|
|
pppuVar27 = (undefined ***)(ulonglong)uVar2;
|
|
cVar5 = (**(code **)(*param_1 + 0x70))(param_1);
|
|
if (cVar5 == '\0') {
|
|
pppuVar27 = (undefined ***)PTR_DAT_1401ac900;
|
|
(**(code **)(*(longlong *)param_1[2] + 0x40))();
|
|
}
|
|
if (((char)param_1[3] == '\0') && (*(char *)((longlong)param_1 + 0x1a) != '\0')) {
|
|
local_348 = (undefined **)CONCAT44(local_348._4_4_,0xfa08);
|
|
local_340 = PTR_DAT_1401ac900;
|
|
local_338 = CONCAT44(local_338._4_4_,uVar2);
|
|
local_330 = param_3;
|
|
DVar8 = GetTickCount();
|
|
local_328 = CONCAT44(local_328._4_4_,DVar8 - DVar7);
|
|
pppuVar27 = &local_348;
|
|
(**(code **)(*param_1 + 0x18))(param_1);
|
|
}
|
|
uVar9 = FUN_1400031e0((longlong *)&local_358,pppuVar27,puVar24,ppppplVar14);
|
|
break;
|
|
case 0xfa09:
|
|
FUN_140078060(local_2b8);
|
|
local_2b4 = param_2[10];
|
|
local_2b8[0] = (undefined1)param_2[0x10];
|
|
uVar29 = 4;
|
|
ppppplVar14 = &local_res20;
|
|
uVar9 = FUN_1400bc930(param_2,ppppplVar14,4);
|
|
uVar3 = (uint)local_res10[0];
|
|
if ((char)uVar9 != '\0') {
|
|
uVar3 = (uint)local_res20;
|
|
}
|
|
local_res10[0] = (longlong ****)CONCAT44(local_res10[0]._4_4_,uVar3);
|
|
FUN_14006cb70((ulonglong)uVar3,ppppplVar14,uVar29,param_4);
|
|
local_358 = (longlong ****)PTR_DAT_1401ac010;
|
|
thunk_FUN_1400bda70(param_2,(longlong *)&local_358,uVar29,param_4);
|
|
plVar21 = (longlong *)param_1[2];
|
|
puVar16 = PTR_DAT_1401ac908;
|
|
(**(code **)(*plVar21 + 0x48))();
|
|
if (*(char *)((longlong)param_1 + 0x19) == '\0') {
|
|
if ((char)param_1[3] == '\0') {
|
|
(**(code **)(*(longlong *)param_1[2] + 0x70))
|
|
((longlong *)param_1[2],uVar2,0xfa09,PTR_DAT_1401ac908,&DAT_14015cd00);
|
|
}
|
|
}
|
|
else if ((char)param_1[3] == '\0') {
|
|
FUN_14006cb70(plVar21,param_2,puVar16,param_4);
|
|
local_res20 = (longlong ****)PTR_DAT_1401ac010;
|
|
FUN_1400d9de0((longlong *)&local_res20);
|
|
FUN_1400141f0((longlong *)&local_res20,(short *)&DAT_14015cacc);
|
|
FUN_1400da0a0((longlong *)&local_res20,(longlong *)&local_358);
|
|
FUN_1400141f0((longlong *)&local_res20,(short *)&DAT_14015cacc);
|
|
iVar6 = 0;
|
|
if (((longlong *****)local_res20 != (longlong *****)0x0) &&
|
|
(local_res20 != (longlong ****)PTR_DAT_1401ac010)) {
|
|
iVar6 = *(int *)(local_res20 + -1);
|
|
}
|
|
uVar22 = (ulonglong)(iVar6 - 2U);
|
|
plVar20 = FUN_140014170((longlong *)&local_res20,&local_100,iVar6 - 2U);
|
|
FUN_140003110((longlong *)&local_res20,plVar20,uVar22,param_4);
|
|
plVar21 = &local_100;
|
|
FUN_1400031e0(plVar21,plVar20,uVar22,param_4);
|
|
local_350 = &local_160;
|
|
FUN_14006cb70(plVar21,plVar20,uVar22,param_4);
|
|
local_160 = (longlong ***)PTR_DAT_1401ac010;
|
|
FUN_140003110((longlong *)&local_160,(longlong *)&local_res20,uVar22,param_4);
|
|
plVar21 = FUN_140003090(&local_50,(short *)PTR_DAT_1401ac908,0,param_4);
|
|
(**(code **)(*param_1 + 0x28))(param_1,0xfa09,plVar21,&local_160);
|
|
uVar9 = 0xfa09;
|
|
uVar22 = (ulonglong)uVar2;
|
|
puVar16 = PTR_DAT_1401ac908;
|
|
(**(code **)(*(longlong *)param_1[2] + 0x70))();
|
|
FUN_1400031e0((longlong *)&local_res20,uVar22,uVar9,puVar16);
|
|
}
|
|
DVar7 = 0;
|
|
if (((char)param_1[3] == '\0') && (DVar7 = 0, *(char *)((longlong)param_1 + 0x1a) != '\0')) {
|
|
local_320 = (int *)CONCAT44(local_320._4_4_,0xfa09);
|
|
local_318 = PTR_DAT_1401ac908;
|
|
local_310 = uVar2;
|
|
local_308 = param_3;
|
|
(**(code **)(*param_1 + 0x20))(param_1,&local_320);
|
|
DVar7 = GetTickCount();
|
|
}
|
|
ppppplVar14 = local_res10;
|
|
puVar24 = local_2b8;
|
|
pppuVar27 = (undefined ***)(ulonglong)uVar2;
|
|
cVar5 = (**(code **)(*param_1 + 0x78))(param_1);
|
|
if (cVar5 == '\0') {
|
|
pppuVar27 = (undefined ***)PTR_DAT_1401ac908;
|
|
(**(code **)(*(longlong *)param_1[2] + 0x40))();
|
|
}
|
|
if (((char)param_1[3] == '\0') && (*(char *)((longlong)param_1 + 0x1a) != '\0')) {
|
|
local_348 = (undefined **)CONCAT44(local_348._4_4_,0xfa09);
|
|
local_340 = PTR_DAT_1401ac908;
|
|
local_338 = CONCAT44(local_338._4_4_,uVar2);
|
|
local_330 = param_3;
|
|
DVar8 = GetTickCount();
|
|
local_328 = CONCAT44(local_328._4_4_,DVar8 - DVar7);
|
|
pppuVar27 = &local_348;
|
|
(**(code **)(*param_1 + 0x18))(param_1);
|
|
}
|
|
uVar9 = FUN_1400031e0((longlong *)&local_358,pppuVar27,puVar24,ppppplVar14);
|
|
break;
|
|
case 0xfa0a:
|
|
puVar24 = local_2b8;
|
|
FUN_140078060(puVar24);
|
|
local_2b4 = param_2[10];
|
|
local_2b8[0] = (undefined1)param_2[0x10];
|
|
FUN_14006cb70(puVar24,pIVar26,SVar28,param_4);
|
|
local_res20 = (longlong ****)PTR_DAT_1401ac010;
|
|
thunk_FUN_1400bda70(param_2,(longlong *)&local_res20,SVar28,param_4);
|
|
plVar21 = (longlong *)param_1[2];
|
|
puVar16 = PTR_DAT_1401ac910;
|
|
(**(code **)(*plVar21 + 0x48))();
|
|
if (*(char *)((longlong)param_1 + 0x19) == '\0') {
|
|
if ((char)param_1[3] == '\0') {
|
|
(**(code **)(*(longlong *)param_1[2] + 0x70))
|
|
((longlong *)param_1[2],uVar2,0xfa0a,PTR_DAT_1401ac910,&DAT_14015cd00);
|
|
}
|
|
}
|
|
else if ((char)param_1[3] == '\0') {
|
|
FUN_14006cb70(plVar21,param_2,puVar16,param_4);
|
|
local_res10[0] = (longlong ****)PTR_DAT_1401ac010;
|
|
FUN_1400da0a0((longlong *)local_res10,(longlong *)&local_res20);
|
|
FUN_1400141f0((longlong *)local_res10,(short *)&DAT_14015cacc);
|
|
iVar6 = 0;
|
|
if (((longlong *****)local_res10[0] != (longlong *****)0x0) &&
|
|
(local_res10[0] != (longlong ****)PTR_DAT_1401ac010)) {
|
|
iVar6 = *(int *)(local_res10[0] + -1);
|
|
}
|
|
uVar22 = (ulonglong)(iVar6 - 2U);
|
|
plVar20 = FUN_140014170((longlong *)local_res10,&local_f0,iVar6 - 2U);
|
|
FUN_140003110((longlong *)local_res10,plVar20,uVar22,param_4);
|
|
plVar21 = &local_f0;
|
|
FUN_1400031e0(plVar21,plVar20,uVar22,param_4);
|
|
local_350 = &local_1c0;
|
|
FUN_14006cb70(plVar21,plVar20,uVar22,param_4);
|
|
local_1c0 = (longlong ***)PTR_DAT_1401ac010;
|
|
FUN_140003110((longlong *)&local_1c0,(longlong *)local_res10,uVar22,param_4);
|
|
plVar21 = FUN_140003090(&local_40,(short *)PTR_DAT_1401ac910,0,param_4);
|
|
(**(code **)(*param_1 + 0x28))(param_1,0xfa0a,plVar21,&local_1c0);
|
|
uVar9 = 0xfa0a;
|
|
uVar22 = (ulonglong)uVar2;
|
|
puVar16 = PTR_DAT_1401ac910;
|
|
(**(code **)(*(longlong *)param_1[2] + 0x70))();
|
|
FUN_1400031e0((longlong *)local_res10,uVar22,uVar9,puVar16);
|
|
}
|
|
DVar7 = 0;
|
|
if (((char)param_1[3] == '\0') && (DVar7 = 0, *(char *)((longlong)param_1 + 0x1a) != '\0')) {
|
|
local_320 = (int *)CONCAT44(local_320._4_4_,0xfa0a);
|
|
local_318 = PTR_DAT_1401ac910;
|
|
local_310 = uVar2;
|
|
local_308 = param_3;
|
|
(**(code **)(*param_1 + 0x20))(param_1,&local_320);
|
|
DVar7 = GetTickCount();
|
|
}
|
|
ppppplVar14 = &local_res20;
|
|
puVar24 = local_2b8;
|
|
pppuVar27 = (undefined ***)(ulonglong)uVar2;
|
|
cVar5 = (**(code **)(*param_1 + 0x80))(param_1);
|
|
if (cVar5 == '\0') {
|
|
pppuVar27 = (undefined ***)PTR_DAT_1401ac910;
|
|
(**(code **)(*(longlong *)param_1[2] + 0x40))();
|
|
}
|
|
if (((char)param_1[3] == '\0') && (*(char *)((longlong)param_1 + 0x1a) != '\0')) {
|
|
local_348 = (undefined **)CONCAT44(local_348._4_4_,0xfa0a);
|
|
local_340 = PTR_DAT_1401ac910;
|
|
local_338 = CONCAT44(local_338._4_4_,uVar2);
|
|
local_330 = param_3;
|
|
DVar8 = GetTickCount();
|
|
local_328 = CONCAT44(local_328._4_4_,DVar8 - DVar7);
|
|
pppuVar27 = &local_348;
|
|
(**(code **)(*param_1 + 0x18))(param_1);
|
|
}
|
|
uVar9 = FUN_1400031e0((longlong *)&local_res20,pppuVar27,puVar24,ppppplVar14);
|
|
break;
|
|
case 0xfa0b:
|
|
FUN_140078060(local_2b8);
|
|
local_2b4 = param_2[10];
|
|
local_2b8[0] = (undefined1)param_2[0x10];
|
|
FUN_1400bd3c0(param_2,(undefined4 *)local_res10,SVar28,param_4);
|
|
plVar21 = (longlong *)param_1[2];
|
|
puVar16 = PTR_DAT_1401ac918;
|
|
(**(code **)(*plVar21 + 0x48))();
|
|
DVar7 = 0;
|
|
if (*(char *)((longlong)param_1 + 0x19) == '\0') {
|
|
if ((char)param_1[3] == '\0') {
|
|
(**(code **)(*(longlong *)param_1[2] + 0x70))
|
|
((longlong *)param_1[2],uVar2,0xfa0b,PTR_DAT_1401ac918,&DAT_14015cd00);
|
|
}
|
|
}
|
|
else if ((char)param_1[3] == '\0') {
|
|
FUN_14006cb70(plVar21,param_2,puVar16,param_4);
|
|
local_res20 = (longlong ****)PTR_DAT_1401ac010;
|
|
local_1a0 = (uint)local_res10[0];
|
|
FUN_1400d9de0((longlong *)&local_res20);
|
|
FUN_1400141f0((longlong *)&local_res20,(short *)&DAT_14015cacc);
|
|
iVar6 = 0;
|
|
if (((longlong *****)local_res20 != (longlong *****)0x0) &&
|
|
(local_res20 != (longlong ****)PTR_DAT_1401ac010)) {
|
|
iVar6 = *(int *)(local_res20 + -1);
|
|
}
|
|
uVar22 = (ulonglong)(iVar6 - 2U);
|
|
plVar20 = FUN_140014170((longlong *)&local_res20,&local_e0,iVar6 - 2U);
|
|
FUN_140003110((longlong *)&local_res20,plVar20,uVar22,param_4);
|
|
plVar21 = &local_e0;
|
|
FUN_1400031e0(plVar21,plVar20,uVar22,param_4);
|
|
local_350 = &local_188;
|
|
FUN_14006cb70(plVar21,plVar20,uVar22,param_4);
|
|
local_188 = (longlong ***)PTR_DAT_1401ac010;
|
|
FUN_140003110((longlong *)&local_188,(longlong *)&local_res20,uVar22,param_4);
|
|
plVar21 = FUN_140003090(&local_a8,(short *)PTR_DAT_1401ac918,0,param_4);
|
|
(**(code **)(*param_1 + 0x28))(param_1,0xfa0b,plVar21,&local_188);
|
|
uVar9 = 0xfa0b;
|
|
uVar22 = (ulonglong)uVar2;
|
|
puVar16 = PTR_DAT_1401ac918;
|
|
(**(code **)(*(longlong *)param_1[2] + 0x70))();
|
|
FUN_1400031e0((longlong *)&local_res20,uVar22,uVar9,puVar16);
|
|
}
|
|
if (((char)param_1[3] == '\0') && (*(char *)((longlong)param_1 + 0x1a) != '\0')) {
|
|
local_320 = (int *)CONCAT44(local_320._4_4_,0xfa0b);
|
|
local_318 = PTR_DAT_1401ac918;
|
|
local_310 = uVar2;
|
|
local_308 = param_3;
|
|
(**(code **)(*param_1 + 0x20))(param_1,&local_320);
|
|
DVar7 = GetTickCount();
|
|
}
|
|
uVar9 = (**(code **)(*param_1 + 0x88))(param_1,uVar2,local_2b8,local_res10);
|
|
if ((char)uVar9 == '\0') {
|
|
uVar9 = (**(code **)(*(longlong *)param_1[2] + 0x40))
|
|
((longlong *)param_1[2],PTR_DAT_1401ac918);
|
|
}
|
|
if (((char)param_1[3] == '\0') && (*(char *)((longlong)param_1 + 0x1a) != '\0')) {
|
|
local_348 = (undefined **)CONCAT44(local_348._4_4_,0xfa0b);
|
|
local_340 = PTR_DAT_1401ac918;
|
|
goto LAB_1400844f5;
|
|
}
|
|
break;
|
|
case 0xfa0c:
|
|
FUN_140078060(local_2b8);
|
|
local_2b4 = param_2[10];
|
|
local_2b8[0] = (undefined1)param_2[0x10];
|
|
FUN_1400bd3c0(param_2,(undefined4 *)local_res10,SVar28,param_4);
|
|
plVar21 = (longlong *)param_1[2];
|
|
puVar16 = PTR_DAT_1401ac920;
|
|
(**(code **)(*plVar21 + 0x48))();
|
|
DVar7 = 0;
|
|
if (*(char *)((longlong)param_1 + 0x19) == '\0') {
|
|
if ((char)param_1[3] == '\0') {
|
|
(**(code **)(*(longlong *)param_1[2] + 0x70))
|
|
((longlong *)param_1[2],uVar2,0xfa0c,PTR_DAT_1401ac920,&DAT_14015cd00);
|
|
}
|
|
}
|
|
else if ((char)param_1[3] == '\0') {
|
|
FUN_14006cb70(plVar21,param_2,puVar16,param_4);
|
|
local_res20 = (longlong ****)PTR_DAT_1401ac010;
|
|
local_190 = (uint)local_res10[0];
|
|
FUN_1400d9de0((longlong *)&local_res20);
|
|
FUN_1400141f0((longlong *)&local_res20,(short *)&DAT_14015cacc);
|
|
iVar6 = 0;
|
|
if (((longlong *****)local_res20 != (longlong *****)0x0) &&
|
|
(local_res20 != (longlong ****)PTR_DAT_1401ac010)) {
|
|
iVar6 = *(int *)(local_res20 + -1);
|
|
}
|
|
uVar22 = (ulonglong)(iVar6 - 2U);
|
|
plVar20 = FUN_140014170((longlong *)&local_res20,&local_d8,iVar6 - 2U);
|
|
FUN_140003110((longlong *)&local_res20,plVar20,uVar22,param_4);
|
|
plVar21 = &local_d8;
|
|
FUN_1400031e0(plVar21,plVar20,uVar22,param_4);
|
|
local_350 = &local_220;
|
|
FUN_14006cb70(plVar21,plVar20,uVar22,param_4);
|
|
local_220 = (longlong ***)PTR_DAT_1401ac010;
|
|
FUN_140003110((longlong *)&local_220,(longlong *)&local_res20,uVar22,param_4);
|
|
plVar21 = FUN_140003090(local_68 + 2,(short *)PTR_DAT_1401ac920,0,param_4);
|
|
(**(code **)(*param_1 + 0x28))(param_1,0xfa0c,plVar21,&local_220);
|
|
uVar9 = 0xfa0c;
|
|
uVar22 = (ulonglong)uVar2;
|
|
puVar16 = PTR_DAT_1401ac920;
|
|
(**(code **)(*(longlong *)param_1[2] + 0x70))();
|
|
FUN_1400031e0((longlong *)&local_res20,uVar22,uVar9,puVar16);
|
|
}
|
|
if (((char)param_1[3] == '\0') && (*(char *)((longlong)param_1 + 0x1a) != '\0')) {
|
|
local_320 = (int *)CONCAT44(local_320._4_4_,0xfa0c);
|
|
local_318 = PTR_DAT_1401ac920;
|
|
local_310 = uVar2;
|
|
local_308 = param_3;
|
|
(**(code **)(*param_1 + 0x20))(param_1,&local_320);
|
|
DVar7 = GetTickCount();
|
|
}
|
|
uVar9 = (**(code **)(*param_1 + 0x90))(param_1,uVar2,local_2b8,local_res10);
|
|
if ((char)uVar9 == '\0') {
|
|
uVar9 = (**(code **)(*(longlong *)param_1[2] + 0x40))
|
|
((longlong *)param_1[2],PTR_DAT_1401ac920);
|
|
}
|
|
if (((char)param_1[3] == '\0') && (*(char *)((longlong)param_1 + 0x1a) != '\0')) {
|
|
local_348 = (undefined **)CONCAT44(local_348._4_4_,0xfa0c);
|
|
local_340 = PTR_DAT_1401ac920;
|
|
goto LAB_1400844f5;
|
|
}
|
|
break;
|
|
case 0xfa0d:
|
|
puVar24 = local_2b8;
|
|
FUN_140078060(puVar24);
|
|
local_2b4 = param_2[10];
|
|
local_2b8[0] = (undefined1)param_2[0x10];
|
|
FUN_14006cb70(puVar24,pIVar26,SVar28,param_4);
|
|
local_res20 = (longlong ****)PTR_DAT_1401ac010;
|
|
thunk_FUN_1400bda70(param_2,(longlong *)&local_res20,SVar28,param_4);
|
|
plVar21 = (longlong *)param_1[2];
|
|
puVar16 = PTR_DAT_1401ac928;
|
|
(**(code **)(*plVar21 + 0x48))();
|
|
if (*(char *)((longlong)param_1 + 0x19) == '\0') {
|
|
if ((char)param_1[3] == '\0') {
|
|
(**(code **)(*(longlong *)param_1[2] + 0x70))
|
|
((longlong *)param_1[2],uVar2,0xfa0d,PTR_DAT_1401ac928,&DAT_14015cd00);
|
|
}
|
|
}
|
|
else if ((char)param_1[3] == '\0') {
|
|
FUN_14006cb70(plVar21,param_2,puVar16,param_4);
|
|
local_res10[0] = (longlong ****)PTR_DAT_1401ac010;
|
|
FUN_1400da0a0((longlong *)local_res10,(longlong *)&local_res20);
|
|
FUN_1400141f0((longlong *)local_res10,(short *)&DAT_14015cacc);
|
|
iVar6 = 0;
|
|
if (((longlong *****)local_res10[0] != (longlong *****)0x0) &&
|
|
(local_res10[0] != (longlong ****)PTR_DAT_1401ac010)) {
|
|
iVar6 = *(int *)(local_res10[0] + -1);
|
|
}
|
|
uVar22 = (ulonglong)(iVar6 - 2U);
|
|
plVar20 = FUN_140014170((longlong *)local_res10,&local_118,iVar6 - 2U);
|
|
FUN_140003110((longlong *)local_res10,plVar20,uVar22,param_4);
|
|
plVar21 = &local_118;
|
|
FUN_1400031e0(plVar21,plVar20,uVar22,param_4);
|
|
local_350 = &local_218;
|
|
FUN_14006cb70(plVar21,plVar20,uVar22,param_4);
|
|
local_218 = (longlong ***)PTR_DAT_1401ac010;
|
|
FUN_140003110((longlong *)&local_218,(longlong *)local_res10,uVar22,param_4);
|
|
plVar21 = FUN_140003090(&local_98,(short *)PTR_DAT_1401ac928,0,param_4);
|
|
(**(code **)(*param_1 + 0x28))(param_1,0xfa0d,plVar21,&local_218);
|
|
uVar9 = 0xfa0d;
|
|
uVar22 = (ulonglong)uVar2;
|
|
puVar16 = PTR_DAT_1401ac928;
|
|
(**(code **)(*(longlong *)param_1[2] + 0x70))();
|
|
FUN_1400031e0((longlong *)local_res10,uVar22,uVar9,puVar16);
|
|
}
|
|
DVar7 = 0;
|
|
if (((char)param_1[3] == '\0') && (DVar7 = 0, *(char *)((longlong)param_1 + 0x1a) != '\0')) {
|
|
local_320 = (int *)CONCAT44(local_320._4_4_,0xfa0d);
|
|
local_318 = PTR_DAT_1401ac928;
|
|
local_310 = uVar2;
|
|
local_308 = param_3;
|
|
(**(code **)(*param_1 + 0x20))(param_1,&local_320);
|
|
DVar7 = GetTickCount();
|
|
}
|
|
ppppplVar14 = &local_res20;
|
|
puVar24 = local_2b8;
|
|
pppuVar27 = (undefined ***)(ulonglong)uVar2;
|
|
cVar5 = (**(code **)(*param_1 + 0x98))(param_1);
|
|
if (cVar5 == '\0') {
|
|
pppuVar27 = (undefined ***)PTR_DAT_1401ac928;
|
|
(**(code **)(*(longlong *)param_1[2] + 0x40))();
|
|
}
|
|
if (((char)param_1[3] == '\0') && (*(char *)((longlong)param_1 + 0x1a) != '\0')) {
|
|
local_348 = (undefined **)CONCAT44(local_348._4_4_,0xfa0d);
|
|
local_340 = PTR_DAT_1401ac928;
|
|
local_338 = CONCAT44(local_338._4_4_,uVar2);
|
|
local_330 = param_3;
|
|
DVar8 = GetTickCount();
|
|
local_328 = CONCAT44(local_328._4_4_,DVar8 - DVar7);
|
|
pppuVar27 = &local_348;
|
|
(**(code **)(*param_1 + 0x18))(param_1);
|
|
}
|
|
uVar9 = FUN_1400031e0((longlong *)&local_res20,pppuVar27,puVar24,ppppplVar14);
|
|
break;
|
|
case 0xfa0e:
|
|
FUN_140078060(local_2b8);
|
|
local_2b4 = param_2[10];
|
|
local_2b8[0] = (undefined1)param_2[0x10];
|
|
uVar9 = FUN_1400bc930(param_2,local_res10,8);
|
|
if ((char)uVar9 != '\0') {
|
|
local_res20 = local_res10[0];
|
|
}
|
|
plVar21 = (longlong *)param_1[2];
|
|
puVar16 = PTR_DAT_1401ac930;
|
|
(**(code **)(*plVar21 + 0x48))();
|
|
DVar7 = 0;
|
|
if (*(char *)((longlong)param_1 + 0x19) == '\0') {
|
|
if ((char)param_1[3] == '\0') {
|
|
(**(code **)(*(longlong *)param_1[2] + 0x70))
|
|
((longlong *)param_1[2],uVar2,0xfa0e,PTR_DAT_1401ac930,&DAT_14015cd00);
|
|
}
|
|
}
|
|
else if ((char)param_1[3] == '\0') {
|
|
FUN_14006cb70(plVar21,param_2,puVar16,param_4);
|
|
local_res10[0] = (longlong ****)PTR_DAT_1401ac010;
|
|
FUN_1400d9f70((longlong *)local_res10);
|
|
FUN_1400141f0((longlong *)local_res10,(short *)&DAT_14015cacc);
|
|
iVar6 = 0;
|
|
if (((longlong *****)local_res10[0] != (longlong *****)0x0) &&
|
|
(local_res10[0] != (longlong ****)PTR_DAT_1401ac010)) {
|
|
iVar6 = *(int *)(local_res10[0] + -1);
|
|
}
|
|
uVar22 = (ulonglong)(iVar6 - 2U);
|
|
plVar20 = FUN_140014170((longlong *)local_res10,&local_e8,iVar6 - 2U);
|
|
FUN_140003110((longlong *)local_res10,plVar20,uVar22,param_4);
|
|
plVar21 = &local_e8;
|
|
FUN_1400031e0(plVar21,plVar20,uVar22,param_4);
|
|
local_350 = &local_208;
|
|
FUN_14006cb70(plVar21,plVar20,uVar22,param_4);
|
|
local_208 = (longlong ***)PTR_DAT_1401ac010;
|
|
FUN_140003110((longlong *)&local_208,(longlong *)local_res10,uVar22,param_4);
|
|
plVar21 = FUN_140003090(local_68,(short *)PTR_DAT_1401ac930,0,param_4);
|
|
(**(code **)(*param_1 + 0x28))(param_1,0xfa0e,plVar21,&local_208);
|
|
uVar9 = 0xfa0e;
|
|
uVar22 = (ulonglong)uVar2;
|
|
puVar16 = PTR_DAT_1401ac930;
|
|
(**(code **)(*(longlong *)param_1[2] + 0x70))();
|
|
FUN_1400031e0((longlong *)local_res10,uVar22,uVar9,puVar16);
|
|
}
|
|
if (((char)param_1[3] == '\0') && (*(char *)((longlong)param_1 + 0x1a) != '\0')) {
|
|
local_320 = (int *)CONCAT44(local_320._4_4_,0xfa0e);
|
|
local_318 = PTR_DAT_1401ac930;
|
|
local_310 = uVar2;
|
|
local_308 = param_3;
|
|
(**(code **)(*param_1 + 0x20))(param_1,&local_320);
|
|
DVar7 = GetTickCount();
|
|
}
|
|
uVar9 = (**(code **)(*param_1 + 0xa0))(param_1,uVar2,local_2b8,&local_res20);
|
|
if ((char)uVar9 == '\0') {
|
|
uVar9 = (**(code **)(*(longlong *)param_1[2] + 0x40))
|
|
((longlong *)param_1[2],PTR_DAT_1401ac930);
|
|
}
|
|
if (((char)param_1[3] == '\0') && (*(char *)((longlong)param_1 + 0x1a) != '\0')) {
|
|
local_348 = (undefined **)CONCAT44(local_348._4_4_,0xfa0e);
|
|
local_340 = PTR_DAT_1401ac930;
|
|
goto LAB_1400844f5;
|
|
}
|
|
break;
|
|
case 0xfa0f:
|
|
FUN_140078060(local_2b8);
|
|
local_2b4 = param_2[10];
|
|
local_2b8[0] = (undefined1)param_2[0x10];
|
|
FUN_1400bd3c0(param_2,(undefined4 *)&local_res20,SVar28,param_4);
|
|
uVar9 = FUN_1400bc930(param_2,&local_358,4);
|
|
uVar23 = (uint)local_res10[0];
|
|
if ((char)uVar9 != '\0') {
|
|
uVar23 = local_358._0_4_;
|
|
}
|
|
local_res10[0] = (longlong ****)CONCAT44(local_res10[0]._4_4_,uVar23);
|
|
plVar21 = (longlong *)param_1[2];
|
|
puVar16 = PTR_DAT_1401ac938;
|
|
(**(code **)(*plVar21 + 0x48))();
|
|
DVar7 = 0;
|
|
if (*(char *)((longlong)param_1 + 0x19) == '\0') {
|
|
if ((char)param_1[3] == '\0') {
|
|
(**(code **)(*(longlong *)param_1[2] + 0x70))
|
|
((longlong *)param_1[2],uVar2,0xfa0f,PTR_DAT_1401ac938,&DAT_14015cd00);
|
|
}
|
|
}
|
|
else if ((char)param_1[3] == '\0') {
|
|
FUN_14006cb70(plVar21,param_2,puVar16,param_4);
|
|
local_358 = (longlong ****)PTR_DAT_1401ac010;
|
|
local_180 = (uint)local_res20;
|
|
FUN_1400d9de0((longlong *)&local_358);
|
|
FUN_1400141f0((longlong *)&local_358,(short *)&DAT_14015cacc);
|
|
FUN_1400d9e40((longlong *)&local_358);
|
|
FUN_1400141f0((longlong *)&local_358,(short *)&DAT_14015cacc);
|
|
iVar6 = 0;
|
|
if (((longlong *****)local_358 != (longlong *****)0x0) &&
|
|
(local_358 != (longlong ****)PTR_DAT_1401ac010)) {
|
|
iVar6 = *(int *)(local_358 + -1);
|
|
}
|
|
uVar22 = (ulonglong)(iVar6 - 2U);
|
|
plVar20 = FUN_140014170((longlong *)&local_358,&local_108,iVar6 - 2U);
|
|
FUN_140003110((longlong *)&local_358,plVar20,uVar22,param_4);
|
|
plVar21 = &local_108;
|
|
FUN_1400031e0(plVar21,plVar20,uVar22,param_4);
|
|
local_350 = &local_1f8;
|
|
FUN_14006cb70(plVar21,plVar20,uVar22,param_4);
|
|
local_1f8 = (longlong ***)PTR_DAT_1401ac010;
|
|
FUN_140003110((longlong *)&local_1f8,(longlong *)&local_358,uVar22,param_4);
|
|
plVar21 = FUN_140003090(&local_88,(short *)PTR_DAT_1401ac938,0,param_4);
|
|
(**(code **)(*param_1 + 0x28))(param_1,0xfa0f,plVar21,&local_1f8);
|
|
uVar9 = 0xfa0f;
|
|
uVar22 = (ulonglong)uVar2;
|
|
puVar16 = PTR_DAT_1401ac938;
|
|
(**(code **)(*(longlong *)param_1[2] + 0x70))();
|
|
FUN_1400031e0((longlong *)&local_358,uVar22,uVar9,puVar16);
|
|
}
|
|
if (((char)param_1[3] == '\0') && (*(char *)((longlong)param_1 + 0x1a) != '\0')) {
|
|
local_320 = (int *)CONCAT44(local_320._4_4_,0xfa0f);
|
|
local_318 = PTR_DAT_1401ac938;
|
|
local_310 = uVar2;
|
|
local_308 = param_3;
|
|
(**(code **)(*param_1 + 0x20))(param_1,&local_320);
|
|
DVar7 = GetTickCount();
|
|
}
|
|
uVar9 = (**(code **)(*param_1 + 0xa8))(param_1,uVar2,local_2b8,&local_res20,local_res10);
|
|
if ((char)uVar9 == '\0') {
|
|
uVar9 = (**(code **)(*(longlong *)param_1[2] + 0x40))
|
|
((longlong *)param_1[2],PTR_DAT_1401ac938);
|
|
}
|
|
if (((char)param_1[3] == '\0') && (*(char *)((longlong)param_1 + 0x1a) != '\0')) {
|
|
local_348 = (undefined **)CONCAT44(local_348._4_4_,0xfa0f);
|
|
local_340 = PTR_DAT_1401ac938;
|
|
goto LAB_1400844f5;
|
|
}
|
|
break;
|
|
case 0xfa10:
|
|
FUN_140078060(local_2b8);
|
|
local_2b4 = param_2[10];
|
|
local_2b8[0] = (undefined1)param_2[0x10];
|
|
plVar21 = (longlong *)param_1[2];
|
|
puVar16 = PTR_DAT_1401ac940;
|
|
(**(code **)(*plVar21 + 0x48))();
|
|
if (*(char *)((longlong)param_1 + 0x19) == '\0') {
|
|
if ((char)param_1[3] == '\0') {
|
|
(**(code **)(*(longlong *)param_1[2] + 0x70))
|
|
((longlong *)param_1[2],uVar2,0xfa10,PTR_DAT_1401ac940,&DAT_14015cd00);
|
|
}
|
|
}
|
|
else if ((char)param_1[3] == '\0') {
|
|
FUN_14006cb70(plVar21,param_2,puVar16,param_4);
|
|
local_res10[0] = (longlong ****)PTR_DAT_1401ac010;
|
|
uVar9 = 0xfffffffe;
|
|
plVar20 = FUN_140014170((longlong *)local_res10,&local_130,0xfffffffe);
|
|
FUN_140003110((longlong *)local_res10,plVar20,uVar9,param_4);
|
|
plVar21 = &local_130;
|
|
FUN_1400031e0(plVar21,plVar20,uVar9,param_4);
|
|
local_res20 = &local_1e8;
|
|
FUN_14006cb70(plVar21,plVar20,uVar9,param_4);
|
|
local_1e8 = (longlong ***)PTR_DAT_1401ac010;
|
|
FUN_140003110((longlong *)&local_1e8,(longlong *)local_res10,uVar9,param_4);
|
|
plVar21 = FUN_140003090(&local_48,(short *)PTR_DAT_1401ac940,0,param_4);
|
|
(**(code **)(*param_1 + 0x28))(param_1,0xfa10,plVar21,&local_1e8);
|
|
uVar9 = 0xfa10;
|
|
uVar22 = (ulonglong)uVar2;
|
|
puVar16 = PTR_DAT_1401ac940;
|
|
(**(code **)(*(longlong *)param_1[2] + 0x70))();
|
|
FUN_1400031e0((longlong *)local_res10,uVar22,uVar9,puVar16);
|
|
}
|
|
DVar7 = 0;
|
|
if (((char)param_1[3] == '\0') && (*(char *)((longlong)param_1 + 0x1a) != '\0')) {
|
|
local_320 = (int *)CONCAT44(local_320._4_4_,0xfa10);
|
|
local_318 = PTR_DAT_1401ac940;
|
|
local_310 = uVar2;
|
|
local_308 = param_3;
|
|
(**(code **)(*param_1 + 0x20))(param_1,&local_320);
|
|
DVar7 = GetTickCount();
|
|
}
|
|
uVar9 = (**(code **)(*param_1 + 0xb0))(param_1,uVar2,local_2b8);
|
|
if ((char)uVar9 == '\0') {
|
|
uVar9 = (**(code **)(*(longlong *)param_1[2] + 0x40))
|
|
((longlong *)param_1[2],PTR_DAT_1401ac940);
|
|
}
|
|
if (((char)param_1[3] == '\0') && (*(char *)((longlong)param_1 + 0x1a) != '\0')) {
|
|
local_348 = (undefined **)CONCAT44(local_348._4_4_,0xfa10);
|
|
local_340 = PTR_DAT_1401ac940;
|
|
goto LAB_1400844f5;
|
|
}
|
|
break;
|
|
case 0xfa11:
|
|
FUN_140078060(local_2b8);
|
|
local_2b4 = param_2[10];
|
|
local_2b8[0] = (undefined1)param_2[0x10];
|
|
uVar9 = FUN_1400bc930(param_2,&local_res20,1);
|
|
uVar25 = (byte)local_res10[0];
|
|
if ((char)uVar9 != '\0') {
|
|
uVar25 = local_res20._0_1_;
|
|
}
|
|
local_res10[0] = (longlong ****)CONCAT71(local_res10[0]._1_7_,uVar25);
|
|
plVar21 = (longlong *)param_1[2];
|
|
puVar16 = PTR_DAT_1401ac948;
|
|
(**(code **)(*plVar21 + 0x48))();
|
|
DVar7 = 0;
|
|
if (*(char *)((longlong)param_1 + 0x19) == '\0') {
|
|
if ((char)param_1[3] == '\0') {
|
|
(**(code **)(*(longlong *)param_1[2] + 0x70))
|
|
((longlong *)param_1[2],uVar2,0xfa11,PTR_DAT_1401ac948,&DAT_14015cd00);
|
|
}
|
|
}
|
|
else if ((char)param_1[3] == '\0') {
|
|
FUN_14006cb70(plVar21,param_2,puVar16,param_4);
|
|
local_res20 = (longlong ****)PTR_DAT_1401ac010;
|
|
FUN_1400d9c40((longlong *)&local_res20,(char *)local_res10);
|
|
FUN_1400141f0((longlong *)&local_res20,(short *)&DAT_14015cacc);
|
|
iVar6 = 0;
|
|
if (((longlong *****)local_res20 != (longlong *****)0x0) &&
|
|
(local_res20 != (longlong ****)PTR_DAT_1401ac010)) {
|
|
iVar6 = *(int *)(local_res20 + -1);
|
|
}
|
|
uVar22 = (ulonglong)(iVar6 - 2U);
|
|
plVar20 = FUN_140014170((longlong *)&local_res20,&local_f8,iVar6 - 2U);
|
|
FUN_140003110((longlong *)&local_res20,plVar20,uVar22,param_4);
|
|
plVar21 = &local_f8;
|
|
FUN_1400031e0(plVar21,plVar20,uVar22,param_4);
|
|
local_350 = &local_1d8;
|
|
FUN_14006cb70(plVar21,plVar20,uVar22,param_4);
|
|
local_1d8 = (longlong ***)PTR_DAT_1401ac010;
|
|
FUN_140003110((longlong *)&local_1d8,(longlong *)&local_res20,uVar22,param_4);
|
|
plVar21 = FUN_140003090(&local_78,(short *)PTR_DAT_1401ac948,0,param_4);
|
|
(**(code **)(*param_1 + 0x28))(param_1,0xfa11,plVar21,&local_1d8);
|
|
uVar9 = 0xfa11;
|
|
uVar22 = (ulonglong)uVar2;
|
|
puVar16 = PTR_DAT_1401ac948;
|
|
(**(code **)(*(longlong *)param_1[2] + 0x70))();
|
|
FUN_1400031e0((longlong *)&local_res20,uVar22,uVar9,puVar16);
|
|
}
|
|
if (((char)param_1[3] == '\0') && (*(char *)((longlong)param_1 + 0x1a) != '\0')) {
|
|
local_320 = (int *)CONCAT44(local_320._4_4_,0xfa11);
|
|
local_318 = PTR_DAT_1401ac948;
|
|
local_310 = uVar2;
|
|
local_308 = param_3;
|
|
(**(code **)(*param_1 + 0x20))(param_1,&local_320);
|
|
DVar7 = GetTickCount();
|
|
}
|
|
uVar9 = (**(code **)(*param_1 + 0xb8))(param_1,uVar2,local_2b8,local_res10);
|
|
if ((char)uVar9 == '\0') {
|
|
uVar9 = (**(code **)(*(longlong *)param_1[2] + 0x40))
|
|
((longlong *)param_1[2],PTR_DAT_1401ac948);
|
|
}
|
|
if (((char)param_1[3] == '\0') && (*(char *)((longlong)param_1 + 0x1a) != '\0')) {
|
|
local_348 = (undefined **)CONCAT44(local_348._4_4_,0xfa11);
|
|
local_340 = PTR_DAT_1401ac948;
|
|
goto LAB_1400844f5;
|
|
}
|
|
break;
|
|
case 0xfa12:
|
|
FUN_140078060(local_2b8);
|
|
local_2b4 = param_2[10];
|
|
local_2b8[0] = (undefined1)param_2[0x10];
|
|
FUN_1400bd3c0(param_2,(undefined4 *)&local_358,SVar28,param_4);
|
|
uVar9 = FUN_1400bc930(param_2,&local_2e8,4);
|
|
uVar23 = (uint)local_res20;
|
|
if ((char)uVar9 != '\0') {
|
|
uVar23 = local_2e8._0_4_;
|
|
}
|
|
local_res20 = (longlong ****)CONCAT44(local_res20._4_4_,uVar23);
|
|
uVar9 = FUN_1400bc930(param_2,(undefined8 *)local_2d8,4);
|
|
uVar23 = (uint)local_res10[0];
|
|
if ((char)uVar9 != '\0') {
|
|
uVar23 = local_2d8[0];
|
|
}
|
|
local_res10[0] = (longlong ****)CONCAT44(local_res10[0]._4_4_,uVar23);
|
|
plVar21 = (longlong *)param_1[2];
|
|
puVar16 = PTR_DAT_1401ac950;
|
|
(**(code **)(*plVar21 + 0x48))();
|
|
DVar7 = 0;
|
|
if (*(char *)((longlong)param_1 + 0x19) == '\0') {
|
|
if ((char)param_1[3] == '\0') {
|
|
(**(code **)(*(longlong *)param_1[2] + 0x70))
|
|
((longlong *)param_1[2],uVar2,0xfa12,PTR_DAT_1401ac950,&DAT_14015cd00);
|
|
}
|
|
}
|
|
else if ((char)param_1[3] == '\0') {
|
|
FUN_14006cb70(plVar21,param_2,puVar16,param_4);
|
|
local_2e8 = (undefined **)PTR_DAT_1401ac010;
|
|
local_178 = local_358._0_4_;
|
|
FUN_1400d9de0((longlong *)&local_2e8);
|
|
FUN_1400141f0((longlong *)&local_2e8,(short *)&DAT_14015cacc);
|
|
FUN_1400d9e40((longlong *)&local_2e8);
|
|
FUN_1400141f0((longlong *)&local_2e8,(short *)&DAT_14015cacc);
|
|
FUN_1400d9e40((longlong *)&local_2e8);
|
|
FUN_1400141f0((longlong *)&local_2e8,(short *)&DAT_14015cacc);
|
|
iVar6 = 0;
|
|
if ((local_2e8 != (undefined **)0x0) && (local_2e8 != (undefined **)PTR_DAT_1401ac010)) {
|
|
iVar6 = *(int *)(local_2e8 + -1);
|
|
}
|
|
uVar22 = (ulonglong)(iVar6 - 2U);
|
|
plVar20 = FUN_140014170((longlong *)&local_2e8,&local_128,iVar6 - 2U);
|
|
FUN_140003110((longlong *)&local_2e8,plVar20,uVar22,param_4);
|
|
plVar21 = &local_128;
|
|
FUN_1400031e0(plVar21,plVar20,uVar22,param_4);
|
|
local_350 = &local_1c8;
|
|
FUN_14006cb70(plVar21,plVar20,uVar22,param_4);
|
|
local_1c8 = (longlong ***)PTR_DAT_1401ac010;
|
|
FUN_140003110((longlong *)&local_1c8,(longlong *)&local_2e8,uVar22,param_4);
|
|
plVar21 = FUN_140003090(&local_b0,(short *)PTR_DAT_1401ac950,0,param_4);
|
|
(**(code **)(*param_1 + 0x28))(param_1,0xfa12,plVar21,&local_1c8);
|
|
uVar9 = 0xfa12;
|
|
uVar22 = (ulonglong)uVar2;
|
|
puVar16 = PTR_DAT_1401ac950;
|
|
(**(code **)(*(longlong *)param_1[2] + 0x70))();
|
|
FUN_1400031e0((longlong *)&local_2e8,uVar22,uVar9,puVar16);
|
|
}
|
|
if (((char)param_1[3] == '\0') && (*(char *)((longlong)param_1 + 0x1a) != '\0')) {
|
|
local_320 = (int *)CONCAT44(local_320._4_4_,0xfa12);
|
|
local_318 = PTR_DAT_1401ac950;
|
|
local_310 = uVar2;
|
|
local_308 = param_3;
|
|
(**(code **)(*param_1 + 0x20))(param_1,&local_320);
|
|
DVar7 = GetTickCount();
|
|
}
|
|
uVar9 = (**(code **)(*param_1 + 0xc0))
|
|
(param_1,uVar2,local_2b8,&local_358,&local_res20,local_res10);
|
|
if ((char)uVar9 == '\0') {
|
|
uVar9 = (**(code **)(*(longlong *)param_1[2] + 0x40))
|
|
((longlong *)param_1[2],PTR_DAT_1401ac950);
|
|
}
|
|
if (((char)param_1[3] == '\0') && (*(char *)((longlong)param_1 + 0x1a) != '\0')) {
|
|
local_348 = (undefined **)CONCAT44(local_348._4_4_,0xfa12);
|
|
local_340 = PTR_DAT_1401ac950;
|
|
goto LAB_1400844f5;
|
|
}
|
|
break;
|
|
case 0xfa13:
|
|
FUN_140078060(local_2b8);
|
|
local_2b4 = param_2[10];
|
|
local_2b8[0] = (undefined1)param_2[0x10];
|
|
uVar9 = FUN_1400bc930(param_2,&local_res20,4);
|
|
uVar23 = (uint)local_res10[0];
|
|
if ((char)uVar9 != '\0') {
|
|
uVar23 = (uint)local_res20;
|
|
}
|
|
local_res10[0] = (longlong ****)CONCAT44(local_res10[0]._4_4_,uVar23);
|
|
plVar21 = (longlong *)param_1[2];
|
|
puVar16 = PTR_DAT_1401ac958;
|
|
(**(code **)(*plVar21 + 0x48))();
|
|
DVar7 = 0;
|
|
if (*(char *)((longlong)param_1 + 0x19) == '\0') {
|
|
if ((char)param_1[3] == '\0') {
|
|
(**(code **)(*(longlong *)param_1[2] + 0x70))
|
|
((longlong *)param_1[2],uVar2,0xfa13,PTR_DAT_1401ac958,&DAT_14015cd00);
|
|
}
|
|
}
|
|
else if ((char)param_1[3] == '\0') {
|
|
FUN_14006cb70(plVar21,param_2,puVar16,param_4);
|
|
local_res20 = (longlong ****)PTR_DAT_1401ac010;
|
|
FUN_1400d9e40((longlong *)&local_res20);
|
|
FUN_1400141f0((longlong *)&local_res20,(short *)&DAT_14015cacc);
|
|
iVar6 = 0;
|
|
if (((longlong *****)local_res20 != (longlong *****)0x0) &&
|
|
(local_res20 != (longlong ****)PTR_DAT_1401ac010)) {
|
|
iVar6 = *(int *)(local_res20 + -1);
|
|
}
|
|
uVar22 = (ulonglong)(iVar6 - 2U);
|
|
plVar20 = FUN_140014170((longlong *)&local_res20,&local_120,iVar6 - 2U);
|
|
FUN_140003110((longlong *)&local_res20,plVar20,uVar22,param_4);
|
|
plVar21 = &local_120;
|
|
FUN_1400031e0(plVar21,plVar20,uVar22,param_4);
|
|
local_350 = &local_1b8;
|
|
FUN_14006cb70(plVar21,plVar20,uVar22,param_4);
|
|
local_1b8 = (longlong ***)PTR_DAT_1401ac010;
|
|
FUN_140003110((longlong *)&local_1b8,(longlong *)&local_res20,uVar22,param_4);
|
|
plVar21 = FUN_140003090(&local_a0,(short *)PTR_DAT_1401ac958,0,param_4);
|
|
(**(code **)(*param_1 + 0x28))(param_1,0xfa13,plVar21,&local_1b8);
|
|
uVar9 = 0xfa13;
|
|
uVar22 = (ulonglong)uVar2;
|
|
puVar16 = PTR_DAT_1401ac958;
|
|
(**(code **)(*(longlong *)param_1[2] + 0x70))();
|
|
FUN_1400031e0((longlong *)&local_res20,uVar22,uVar9,puVar16);
|
|
}
|
|
if (((char)param_1[3] == '\0') && (*(char *)((longlong)param_1 + 0x1a) != '\0')) {
|
|
local_320 = (int *)CONCAT44(local_320._4_4_,0xfa13);
|
|
local_318 = PTR_DAT_1401ac958;
|
|
local_310 = uVar2;
|
|
local_308 = param_3;
|
|
(**(code **)(*param_1 + 0x20))(param_1,&local_320);
|
|
DVar7 = GetTickCount();
|
|
}
|
|
uVar9 = (**(code **)(*param_1 + 200))(param_1,uVar2,local_2b8,local_res10);
|
|
if ((char)uVar9 == '\0') {
|
|
uVar9 = (**(code **)(*(longlong *)param_1[2] + 0x40))
|
|
((longlong *)param_1[2],PTR_DAT_1401ac958);
|
|
}
|
|
if (((char)param_1[3] == '\0') && (*(char *)((longlong)param_1 + 0x1a) != '\0')) {
|
|
local_348 = (undefined **)CONCAT44(local_348._4_4_,0xfa13);
|
|
local_340 = PTR_DAT_1401ac958;
|
|
goto LAB_1400844f5;
|
|
}
|
|
break;
|
|
default:
|
|
goto switchD_140080ab3_default;
|
|
}
|
|
uVar22 = CONCAT71((int7)((ulonglong)uVar9 >> 8),1);
|
|
}
|
|
return uVar22;
|
|
}
|
|
|