server-re/decomp/AgentManager_Release_x64/full/functions/0x1400cc7b0.c
2026-10-15 09:58:24 -04:00

765 lines
31 KiB
C

/* AgentManager_Release_x64.exe sha256 8fd8ca91725858651a7839d34257b10c2970ac16c97e60c523b8b0c983fcb186
* Ghidra 12.1.2 decompiler output for 0x1400cc7b0 FUN_1400cc7b0
* Pseudocode, not original source. */
/* WARNING: Function: __security_check_cookie replaced with injection: security_check_cookie */
/* WARNING: Type propagation algorithm not settling */
void FUN_1400cc7b0(uint *******param_1,longlong param_2,undefined8 param_3,uint ******param_4)
{
uint ***********pppppppppppuVar1;
char cVar2;
uint ***********pppppppppppuVar3;
char *pcVar4;
uint uVar5;
uint uVar6;
uint uVar7;
uint uVar8;
int iVar9;
undefined8 uVar10;
int *piVar11;
undefined8 *puVar12;
void *_Src;
undefined8 *puVar13;
uint ************ppppppppppppuVar14;
int *piVar15;
uint *puVar16;
uint *************pppppppppppppuVar17;
longlong *plVar18;
uint *************pppppppppppppuVar19;
uint ***********pppppppppppuVar20;
char **ppcVar21;
uint *************pppppppppppppuVar22;
uint *************pppppppppppppuVar23;
uint *************pppppppppppppuVar24;
uint *************pppppppppppppuVar25;
undefined8 uVar26;
LPCWSTR pWVar27;
uint *************pppppppppppppuVar28;
uint *************pppppppppppppuVar29;
longlong lVar30;
size_t _Size;
uint uVar31;
uint uVar32;
ulonglong uVar33;
double dVar34;
undefined1 auStack_218 [32];
uint ***********local_1f8;
uint *************local_1f0;
uint *************local_1e8;
uint *************local_1e0;
uint *************local_1d8;
undefined8 local_1d0;
undefined **local_1c8;
undefined4 local_1c0;
undefined2 local_1bc;
int local_1b8;
longlong local_1b0;
longlong local_1a8;
longlong *local_1a0;
int *local_198;
undefined1 local_190;
int *local_188;
undefined1 local_180;
uint ***********local_178;
uint *************local_170;
uint ***********local_168;
uint *************local_160;
int *local_158;
undefined1 local_150;
int *local_148;
undefined1 local_140;
int *local_138;
undefined1 local_130;
int *local_128;
undefined1 local_120;
undefined8 local_118;
uint ************local_110;
uint *************local_108;
int *local_100;
undefined1 local_f8;
char *local_e8;
char local_e0 [136];
ulonglong local_58;
local_118 = 0xfffffffffffffffe;
local_58 = DAT_14016f5a0 ^ (ulonglong)auStack_218;
plVar18 = (longlong *)(param_2 + 0x10);
pppppppppppppuVar24 = (uint *************)0x0;
uVar31 = 0;
local_1d8 = (uint *************)param_1;
local_1b0 = param_2;
local_1a0 = plVar18;
do {
local_1c8 = Proud::AddrPort::vftable;
uVar32 = 0;
local_1b8 = 0;
local_1d0 = 0;
local_1c0 = DAT_14016f3d0;
local_1bc = DAT_14016f3d4;
pppppppppppppuVar28 = pppppppppppppuVar24;
if ((undefined8 *)*plVar18 != (undefined8 *)0x0) {
pppppppppppppuVar28 = *(uint **************)*plVar18;
}
puVar12 = &local_1d0;
uVar26 = 0;
uVar10 = FUN_140043710((longlong)pppppppppppppuVar28,0,(undefined4 *)puVar12);
if ((char)uVar10 == '\0') {
return;
}
*(undefined1 *)(param_2 + 0xc0) = 0;
if ((local_1d0._4_4_ != 0) || (local_1b8 == 0)) {
*(undefined4 *)(param_2 + 0x18) = 3;
local_1a8 = 0;
FUN_140040510(plVar18,&local_1a8);
return;
}
FUN_14003e7c0(pppppppppppppuVar28,uVar26,puVar12,param_4);
local_1f8 = (uint ***********)PTR_DAT_14016f008;
local_110 = &local_1f8;
uVar8 = local_1b8 + 2U;
if ((int)(local_1b8 + 2U) < 1) {
uVar8 = uVar32;
}
uVar5 = 1;
if (1 < (int)uVar8) {
uVar5 = uVar8;
}
pppppppppppppuVar28 = (uint *************)local_1f8;
if (0 < (int)uVar5) {
if ((int)uVar5 < 0) {
/* WARNING: Subroutine does not return */
FUN_14003dec0();
}
if (uVar5 == 0) {
pppppppppppppuVar28 = (uint *************)local_1f8;
}
else {
puVar16 = (uint *)FUN_14003e840((longlong)(int)uVar5 + 9);
if (puVar16 != (uint *)0x0) {
*puVar16 = 0;
puVar16[1] = 1;
}
*puVar16 = uVar5;
uVar8 = uVar32;
if ((local_1f8 != (uint ***********)0x0) &&
(local_1f8 != (uint ***********)PTR_DAT_14016f008)) {
uVar8 = *(uint *)(local_1f8 + -1);
}
pppppppppppuVar20 = (uint ***********)PTR_DAT_14016f008;
if ((int)uVar5 < (int)uVar8) {
LAB_1400cc927:
if (local_1f8 != (uint ***********)0x0) {
pppppppppppuVar20 = local_1f8;
}
}
else {
uVar5 = uVar32;
if (local_1f8 != (uint ***********)0x0) {
if (local_1f8 != (uint ***********)PTR_DAT_14016f008) {
uVar5 = *(uint *)(local_1f8 + -1);
}
goto LAB_1400cc927;
}
}
pppppppppppppuVar28 = (uint *************)(puVar16 + 2);
uVar33 = (ulonglong)uVar5;
pppppppppppppuVar29 = pppppppppppppuVar28;
param_4 = (uint ******)pppppppppppuVar20;
FUN_14003e710(pppppppppppppuVar28,pppppppppppuVar20,uVar5);
pppppppppppuVar3 = local_1f8;
if (((local_1f8 != (uint ***********)0x0) &&
(local_1f8 != (uint ***********)PTR_DAT_14016f008)) &&
(pppppppppppuVar1 = local_1f8 + -1, pppppppppppuVar1 != (uint ***********)0x0)) {
piVar11 = (int *)FUN_14003e7c0(pppppppppppppuVar29,pppppppppppuVar20,uVar33,param_4);
local_138 = piVar11;
FUN_14003d040(piVar11);
local_130 = 1;
piVar15 = (int *)((longlong)pppppppppppuVar3 + -4);
*piVar15 = *piVar15 + -1;
if (*piVar15 == 0) {
FUN_14003e8b0(pppppppppppuVar1);
}
FUN_14003d0d0((longlong)piVar11);
local_130 = 0;
}
}
}
local_1f8 = (uint ***********)pppppppppppppuVar28;
pppppppppppuVar20 = (uint ***********)PTR_DAT_14016f008;
if (((local_1f8 == (uint ***********)0x0) ||
(pppppppppppuVar20 = local_1f8, local_1f8 == (uint ***********)PTR_DAT_14016f008)) ||
(local_1f8 + -1 == (uint ***********)0x0)) {
local_1f8 = pppppppppppuVar20;
puVar12 = (undefined8 *)FUN_14003e840(9);
*puVar12 = 0;
*(undefined1 *)(puVar12 + 1) = 0;
if (puVar12 != (undefined8 *)0x0) {
*(undefined4 *)puVar12 = 0;
*(undefined4 *)((longlong)puVar12 + 4) = 1;
}
*(undefined1 *)(puVar12 + 1) = 0;
pppppppppppppuVar28 = (uint *************)(puVar12 + 1);
}
else {
pppppppppppppuVar28 = (uint *************)local_1f8;
if (1 < (int)*(uint *)((longlong)local_1f8 + -4)) {
uVar8 = *(uint *)(local_1f8 + -1);
if ((int)uVar8 < 0) {
/* WARNING: Subroutine does not return */
FUN_14003dec0();
}
puVar16 = (uint *)FUN_14003e840((longlong)(int)uVar8 + 9);
if (puVar16 != (uint *)0x0) {
*puVar16 = 0;
puVar16[1] = 1;
}
uVar8 = uVar31;
if ((local_1f8 != (uint ***********)0x0) &&
(local_1f8 != (uint ***********)PTR_DAT_14016f008)) {
uVar8 = *(uint *)(local_1f8 + -1);
}
*puVar16 = uVar8;
pppppppppppuVar20 = (uint ***********)PTR_DAT_14016f008;
pppppppppppppuVar29 = pppppppppppppuVar24;
if ((local_1f8 != (uint ***********)0x0) &&
(pppppppppppuVar20 = local_1f8, pppppppppppppuVar29 = (uint *************)0x0,
local_1f8 != (uint ***********)PTR_DAT_14016f008)) {
pppppppppppppuVar29 = (uint *************)(ulonglong)*(uint *)(local_1f8 + -1);
}
pppppppppppppuVar28 = (uint *************)(puVar16 + 2);
pppppppppppppuVar19 = pppppppppppppuVar28;
FUN_14003e710(pppppppppppppuVar28,pppppppppppuVar20,(int)pppppppppppppuVar29);
pppppppppppuVar3 = local_1f8;
if (((local_1f8 != (uint ***********)0x0) &&
(local_1f8 != (uint ***********)PTR_DAT_14016f008)) &&
(pppppppppppppuVar25 = (uint *************)(local_1f8 + -1),
pppppppppppppuVar25 != (uint *************)0x0)) {
piVar15 = (int *)FUN_14003e7c0(pppppppppppppuVar19,pppppppppppuVar20,pppppppppppppuVar29,
param_4);
local_198 = piVar15;
FUN_14003d040(piVar15);
local_190 = 1;
puVar16 = (uint *)((longlong)pppppppppppuVar3 + -4);
*puVar16 = *puVar16 - 1;
if (*puVar16 == 0) {
FUN_14003e8b0(pppppppppppppuVar25);
}
FUN_14003d0d0((longlong)piVar15);
local_190 = 0;
}
}
}
local_1f8 = (uint ***********)pppppppppppppuVar28;
pppppppppppuVar20 = local_1f8;
if (local_1f8 == (uint ***********)0x0) {
pppppppppppuVar20 = (uint ***********)PTR_DAT_14016f008;
}
pppppppppppppuVar28 = pppppppppppppuVar24;
if ((undefined8 *)*plVar18 != (undefined8 *)0x0) {
pppppppppppppuVar28 = *(uint **************)*plVar18;
}
_Size = (size_t)local_1b8;
local_108 = (uint *************)pppppppppppuVar20;
_Src = (void *)FUN_140043cd0((longlong)pppppppppppppuVar28);
memcpy(pppppppppppuVar20,_Src,_Size);
*(undefined1 *)((longlong)local_1b8 + (longlong)pppppppppppuVar20) = 0;
pppppppppppuVar20 = local_1f8;
if (local_1f8 == (uint ***********)0x0) {
pppppppppppuVar20 = (uint ***********)PTR_DAT_14016f008;
}
uVar5 = FUN_14003e6e0((char *)pppppppppppuVar20);
pppppppppppppuVar28 = (uint *************)PTR_DAT_14016f008;
uVar8 = uVar31;
if (0 < (int)uVar5) {
uVar8 = uVar5;
}
pppppppppppppuVar29 = pppppppppppppuVar24;
if ((local_1f8 != (uint ***********)0x0) &&
(pppppppppppppuVar29 = (uint *************)0x0,
local_1f8 != (uint ***********)PTR_DAT_14016f008)) {
pppppppppppppuVar29 = (uint *************)(ulonglong)*(uint *)(local_1f8 + -1);
}
if (((int)uVar8 < (int)pppppppppppppuVar29) ||
(uVar8 = uVar31, local_1f8 == (uint ***********)0x0)) {
LAB_1400ccb4a:
if (((local_1f8 != (uint ***********)PTR_DAT_14016f008) &&
(local_1f8 != (uint ***********)0x0)) &&
(pppppppppppppuVar29 = (uint *************)(local_1f8 + -1),
pppppppppppppuVar29 != (uint *************)0x0)) {
*(uint *)pppppppppppppuVar29 = uVar8;
*(undefined1 *)((longlong)(int)uVar8 + 8 + (longlong)pppppppppppppuVar29) = 0;
}
}
else if (local_1f8 != (uint ***********)PTR_DAT_14016f008) {
uVar8 = *(uint *)(local_1f8 + -1);
goto LAB_1400ccb4a;
}
puVar12 = (undefined8 *)0x2540;
puVar13 = operator_new(0x2540);
ppppppppppppuVar14 = (uint ************)pppppppppppppuVar24;
local_1e8 = (uint *************)puVar13;
if (puVar13 != (undefined8 *)0x0) {
ppppppppppppuVar14 =
(uint ************)FUN_1400ca5f0(puVar13,pppppppppppppuVar29,pppppppppppppuVar28,param_4)
;
puVar12 = puVar13;
}
if (ppppppppppppuVar14 == (uint ************)0x0) {
local_1e8 = (uint *************)0x0;
}
else {
puVar12 = (undefined8 *)0x10;
local_1e8 = (uint *************)FUN_14003e840(0x10);
local_1e8[1] = (uint ************)0x1;
*local_1e8 = ppppppppppppuVar14;
}
pppppppppppppuVar19 = local_1e8;
FUN_14003e7c0(puVar12,pppppppppppppuVar29,pppppppppppppuVar28,param_4);
local_1e0 = (uint *************)PTR_DAT_14016f008;
if (PTR_DAT_14016f008 == (undefined *)0x0) {
local_1e0 = pppppppppppppuVar24;
}
if (local_1f8 != (uint ***********)PTR_DAT_14016f008) {
piVar15 = (int *)FUN_14003e7c0(puVar12,pppppppppppppuVar29,pppppppppppppuVar28,param_4);
local_148 = piVar15;
FUN_14003d040(piVar15);
local_140 = 1;
FUN_140006e80((longlong *)&local_1e0);
local_1e0 = (uint *************)local_1f8;
if (((local_1f8 != (uint ***********)PTR_DAT_14016f008) &&
(local_1f8 != (uint ***********)0x0)) && (local_1f8 != (uint ***********)0x8)) {
*(uint *)((longlong)local_1f8 + -4) = *(uint *)((longlong)local_1f8 + -4) + 1;
}
FUN_14003d0d0((longlong)piVar15);
local_140 = 0;
}
ppppppppppppuVar14 = (uint ************)pppppppppppppuVar24;
if (pppppppppppppuVar19 != (uint *************)0x0) {
ppppppppppppuVar14 = *pppppppppppppuVar19;
}
pppppppppppppuVar29 = (uint *************)&local_1e0;
uVar10 = FUN_1400ca130((undefined *)ppppppppppppuVar14,(longlong *)pppppppppppppuVar29,
pppppppppppppuVar28,(ulonglong)param_4);
if (((char)uVar10 != '\0') && (param_1[0xe] < (uint ************)0x14)) {
ppppppppppppuVar14 = (uint ************)pppppppppppppuVar24;
if (pppppppppppppuVar19 != (uint *************)0x0) {
ppppppppppppuVar14 = *pppppppppppppuVar19;
}
local_e8 = local_e0;
pWVar27 = (LPCWSTR)((longlong)ppppppppppppuVar14 + 0x52);
uVar10 = 3;
ppcVar21 = &local_e8;
FUN_14003d280((longlong *)ppcVar21,pWVar27,3);
pcVar4 = local_e8;
FUN_14003e7c0(ppcVar21,pWVar27,uVar10,param_4);
pppppppppppppuVar28 = (uint *************)PTR_DAT_14016f008;
local_1f0 = (uint *************)PTR_DAT_14016f008;
uVar5 = FUN_14003e6e0(pcVar4);
uVar8 = uVar31;
if ((pppppppppppppuVar28 != (uint *************)0x0) &&
(pppppppppppppuVar28 != (uint *************)PTR_DAT_14016f008)) {
uVar8 = *(uint *)((longlong)pppppppppppppuVar28 + -8);
}
uVar6 = uVar5;
if ((((int)uVar5 <= (int)uVar8) &&
(uVar6 = uVar32, pppppppppppppuVar28 != (uint *************)0x0)) &&
(pppppppppppppuVar28 != (uint *************)PTR_DAT_14016f008)) {
uVar6 = *(uint *)((longlong)pppppppppppppuVar28 + -8);
}
uVar8 = 1;
if (1 < (int)uVar6) {
uVar8 = uVar6;
}
uVar7 = 0;
uVar6 = uVar7;
if ((pppppppppppppuVar28 != (uint *************)0x0) &&
(pppppppppppppuVar28 != (uint *************)PTR_DAT_14016f008)) {
uVar6 = *(uint *)((longlong)pppppppppppppuVar28 + -8);
}
if ((int)uVar6 < (int)uVar8) {
if (pppppppppppppuVar28 == (uint *************)0x0) {
pppppppppppppuVar28 = (uint *************)PTR_DAT_14016f008;
}
local_1f0 = pppppppppppppuVar28;
if ((int)uVar8 < 0) {
/* WARNING: Subroutine does not return */
FUN_14003dec0();
}
if (uVar8 == 0) {
FUN_140006e80((longlong *)&local_1f0);
pppppppppppppuVar28 = local_1f0;
}
else {
uVar6 = uVar7;
if ((pppppppppppppuVar28 != (uint *************)0x0) &&
(pppppppppppppuVar28 != (uint *************)PTR_DAT_14016f008)) {
uVar6 = *(uint *)(pppppppppppppuVar28 + -1);
}
if (uVar8 != uVar6) {
puVar16 = (uint *)FUN_14003e840((longlong)(int)uVar8 + 9);
if (puVar16 != (uint *)0x0) {
*puVar16 = 0;
puVar16[1] = 1;
}
*puVar16 = uVar8;
uVar6 = uVar7;
if ((pppppppppppppuVar28 != (uint *************)0x0) &&
(pppppppppppppuVar28 != (uint *************)PTR_DAT_14016f008)) {
uVar6 = *(uint *)(pppppppppppppuVar28 + -1);
}
pppppppppppppuVar29 = (uint *************)PTR_DAT_14016f008;
if ((int)uVar8 < (int)uVar6) {
LAB_1400ccd72:
if (pppppppppppppuVar28 != (uint *************)0x0) {
pppppppppppppuVar29 = pppppppppppppuVar28;
}
}
else {
uVar8 = uVar32;
if (pppppppppppppuVar28 != (uint *************)0x0) {
if (pppppppppppppuVar28 != (uint *************)PTR_DAT_14016f008) {
uVar8 = *(uint *)(pppppppppppppuVar28 + -1);
}
goto LAB_1400ccd72;
}
}
pppppppppppppuVar28 = (uint *************)(puVar16 + 2);
FUN_14003e710(pppppppppppppuVar28,pppppppppppppuVar29,uVar8);
FUN_140006e80((longlong *)&local_1f0);
local_1f0 = pppppppppppppuVar28;
}
}
}
if (((pppppppppppppuVar28 == (uint *************)0x0) ||
(pppppppppppppuVar28 == (uint *************)PTR_DAT_14016f008)) ||
(pppppppppppppuVar29 = pppppppppppppuVar28 + -1,
pppppppppppppuVar29 == (uint *************)0x0)) {
puVar12 = (undefined8 *)FUN_14003e840(9);
*puVar12 = 0;
*(undefined1 *)(puVar12 + 1) = 0;
if (puVar12 != (undefined8 *)0x0) {
*(undefined4 *)puVar12 = 0;
*(undefined4 *)((longlong)puVar12 + 4) = 1;
}
pppppppppppppuVar25 = (uint *************)(puVar12 + 1);
*(undefined1 *)pppppppppppppuVar25 = 0;
pppppppppppppuVar23 = pppppppppppppuVar25;
}
else {
pppppppppppppuVar25 = pppppppppppppuVar28;
pppppppppppppuVar23 = local_1f0;
if (1 < (int)*(uint *)((longlong)pppppppppppppuVar28 + -4)) {
if ((int)*(uint *)pppppppppppppuVar29 < 0) {
/* WARNING: Subroutine does not return */
FUN_14003dec0();
}
puVar16 = (uint *)FUN_14003e840((longlong)(int)*(uint *)pppppppppppppuVar29 + 9);
if (puVar16 != (uint *)0x0) {
*puVar16 = 0;
puVar16[1] = 1;
}
uVar32 = uVar7;
if (pppppppppppppuVar28 != (uint *************)PTR_DAT_14016f008) {
uVar32 = *(uint *)pppppppppppppuVar29;
}
*puVar16 = uVar32;
pppppppppppppuVar17 = pppppppppppppuVar24;
if (pppppppppppppuVar28 != (uint *************)PTR_DAT_14016f008) {
pppppppppppppuVar17 = (uint *************)(ulonglong)*(uint *)pppppppppppppuVar29;
}
pppppppppppppuVar25 = (uint *************)(puVar16 + 2);
pppppppppppppuVar22 = pppppppppppppuVar25;
FUN_14003e710(pppppppppppppuVar25,pppppppppppppuVar28,(int)pppppppppppppuVar17);
param_1 = (uint *******)local_1d8;
pppppppppppppuVar23 = pppppppppppppuVar25;
if ((pppppppppppppuVar28 != (uint *************)PTR_DAT_14016f008) &&
(pppppppppppppuVar29 != (uint *************)0x0)) {
piVar15 = (int *)FUN_14003e7c0(pppppppppppppuVar22,PTR_DAT_14016f008,pppppppppppppuVar17
,param_4);
local_158 = piVar15;
FUN_14003d040(piVar15);
local_150 = 1;
puVar16 = (uint *)((longlong)pppppppppppppuVar28 + -4);
*puVar16 = *puVar16 - 1;
if (*puVar16 == 0) {
FUN_14003e8b0(pppppppppppppuVar29);
}
FUN_14003d0d0((longlong)piVar15);
local_150 = 0;
param_1 = (uint *******)local_1d8;
}
}
}
local_1f0 = pppppppppppppuVar23;
pppppppppppppuVar28 = pppppppppppppuVar25;
if (pppppppppppppuVar25 == (uint *************)0x0) {
pppppppppppppuVar28 = (uint *************)PTR_DAT_14016f008;
}
FUN_14003e710(pppppppppppppuVar28,pcVar4,uVar5);
pppppppppppppuVar28 = pppppppppppppuVar25;
if (pppppppppppppuVar25 == (uint *************)0x0) {
pppppppppppppuVar28 = (uint *************)PTR_DAT_14016f008;
}
uVar8 = FUN_14003e6e0((char *)pppppppppppppuVar28);
uVar32 = uVar31;
if (0 < (int)uVar8) {
uVar32 = uVar8;
}
uVar8 = uVar7;
if ((pppppppppppppuVar25 != (uint *************)0x0) &&
(pppppppppppppuVar25 != (uint *************)PTR_DAT_14016f008)) {
uVar8 = *(uint *)(pppppppppppppuVar25 + -1);
}
if (((int)uVar32 < (int)uVar8) ||
(uVar32 = uVar7, pppppppppppppuVar25 == (uint *************)0x0)) {
LAB_1400ccefd:
if (((pppppppppppppuVar25 != (uint *************)PTR_DAT_14016f008) &&
(pppppppppppppuVar25 != (uint *************)0x0)) &&
(pppppppppppppuVar28 = pppppppppppppuVar25 + -1,
pppppppppppppuVar28 != (uint *************)0x0)) {
*(uint *)pppppppppppppuVar28 = uVar32;
*(undefined1 *)((longlong)(int)uVar32 + 8 + (longlong)pppppppppppppuVar28) = 0;
}
}
else if (pppppppppppppuVar25 != (uint *************)PTR_DAT_14016f008) {
uVar32 = *(uint *)(pppppppppppppuVar25 + -1);
goto LAB_1400ccefd;
}
if (local_e8 != local_e0) {
free(local_e8);
}
pppppppppppppuVar23 = (uint *************)(param_1 + 10);
pppppppppppppuVar28 = pppppppppppppuVar25;
if (pppppppppppppuVar25 == (uint *************)0x0) {
pppppppppppppuVar28 = (uint *************)PTR_DAT_14016f008;
}
local_170 = pppppppppppppuVar23;
if (pppppppppppppuVar28 == (uint *************)0x0) {
/* WARNING: Subroutine does not return */
FUN_1400050d0(0x80004005);
}
pppppppppppppuVar28 = pppppppppppppuVar25;
if (pppppppppppppuVar25 == (uint *************)0x0) {
pppppppppppppuVar28 = (uint *************)PTR_DAT_14016f008;
}
cVar2 = *(char *)pppppppppppppuVar28;
pppppppppppppuVar17 = pppppppppppppuVar24;
while (cVar2 != '\0') {
pppppppppppppuVar17 =
(uint *************)(ulonglong)(uint)((int)pppppppppppppuVar17 * 0x21 + (int)cVar2);
pppppppppppppuVar28 = (uint *************)((longlong)pppppppppppppuVar28 + 1);
cVar2 = *(char *)pppppppppppppuVar28;
}
uVar32 = *(uint *)(param_1 + 0xf);
if ((uint ************)param_1[0xb] != (uint ************)0x0) {
pppppppppppppuVar28 = (uint *************)PTR_DAT_14016f008;
for (pppppppppppuVar20 =
(uint ***********)param_1[0xb][(ulonglong)pppppppppppppuVar17 % (ulonglong)uVar32]
; (PTR_DAT_14016f008 = (undefined *)pppppppppppppuVar28,
pppppppppppuVar20 != (uint ***********)0x0 &&
((uint)((ulonglong)pppppppppppppuVar17 % (ulonglong)uVar32) ==
*(uint *)(pppppppppppuVar20 + 4) % *(uint *)(param_1 + 0xf)));
pppppppppppuVar20 = (uint ***********)pppppppppppuVar20[2]) {
pppppppppppppuVar29 = pppppppppppppuVar25;
if (pppppppppppppuVar25 == (uint *************)0x0) {
pppppppppppppuVar29 = pppppppppppppuVar28;
}
pppppppppppppuVar22 = (uint *************)*pppppppppppuVar20;
if ((uint *************)*pppppppppppuVar20 == (uint *************)0x0) {
pppppppppppppuVar22 = pppppppppppppuVar28;
}
iVar9 = FUN_14003e740((byte *)pppppppppppppuVar22,(longlong)pppppppppppppuVar29);
if (iVar9 == 0) {
local_178 = pppppppppppuVar20;
if (pppppppppppuVar20 != (uint ***********)0x0) goto LAB_1400cd132;
goto LAB_1400ccffb;
}
pppppppppppppuVar28 = (uint *************)PTR_DAT_14016f008;
}
}
local_178 = (uint ***********)0x0;
LAB_1400ccffb:
pppppppppppppuVar28 = pppppppppppppuVar25;
if (pppppppppppppuVar25 == (uint *************)0x0) {
pppppppppppppuVar28 = (uint *************)PTR_DAT_14016f008;
}
local_160 = pppppppppppppuVar23;
if (pppppppppppppuVar28 == (uint *************)0x0) {
/* WARNING: Subroutine does not return */
FUN_1400050d0(0x80004005);
}
pppppppppppppuVar28 = pppppppppppppuVar25;
if (pppppppppppppuVar25 == (uint *************)0x0) {
pppppppppppppuVar28 = (uint *************)PTR_DAT_14016f008;
}
cVar2 = *(char *)pppppppppppppuVar28;
pppppppppppppuVar17 = pppppppppppppuVar24;
while (cVar2 != '\0') {
pppppppppppppuVar17 =
(uint *************)(ulonglong)(uint)((int)pppppppppppppuVar17 * 0x21 + (int)cVar2);
pppppppppppppuVar28 = (uint *************)((longlong)pppppppppppppuVar28 + 1);
cVar2 = *(char *)pppppppppppppuVar28;
}
uVar32 = *(uint *)(param_1 + 0xf);
pppppppppppppuVar29 = (uint *************)PTR_DAT_14016f008;
if ((uint ************)param_1[0xb] != (uint ************)0x0) {
pppppppppppppuVar28 = (uint *************)PTR_DAT_14016f008;
for (pppppppppppuVar20 =
(uint ***********)param_1[0xb][(ulonglong)pppppppppppppuVar17 % (ulonglong)uVar32]
; (PTR_DAT_14016f008 = (undefined *)pppppppppppppuVar28,
pppppppppppuVar20 != (uint ***********)0x0 &&
(pppppppppppppuVar29 = pppppppppppppuVar28,
(uint)((ulonglong)pppppppppppppuVar17 % (ulonglong)uVar32) ==
*(uint *)(pppppppppppuVar20 + 4) % *(uint *)(param_1 + 0xf)));
pppppppppppuVar20 = (uint ***********)pppppppppppuVar20[2]) {
pppppppppppppuVar29 = pppppppppppppuVar25;
if (pppppppppppppuVar25 == (uint *************)0x0) {
pppppppppppppuVar29 = pppppppppppppuVar28;
}
pppppppppppppuVar22 = (uint *************)*pppppppppppuVar20;
if ((uint *************)*pppppppppppuVar20 == (uint *************)0x0) {
pppppppppppppuVar22 = pppppppppppppuVar28;
}
iVar9 = FUN_14003e740((byte *)pppppppppppppuVar22,(longlong)pppppppppppppuVar29);
if (iVar9 == 0) {
local_168 = pppppppppppuVar20;
if (pppppppppppuVar20 != (uint ***********)0x0) goto LAB_1400cd132;
goto LAB_1400cd0b4;
}
pppppppppppppuVar29 = pppppppppppppuVar28;
pppppppppppppuVar28 = (uint *************)PTR_DAT_14016f008;
}
}
pppppppppppppuVar28 = pppppppppppppuVar29;
local_168 = (uint ***********)0x0;
LAB_1400cd0b4:
pppppppppppppuVar29 = (uint *************)&local_1f0;
plVar18 = FUN_1400cc350((char *)pppppppppppppuVar23,(longlong *)pppppppppppppuVar29);
pppppppppppppuVar22 = pppppppppppppuVar23;
if (pppppppppppppuVar19 != (uint *************)*plVar18) {
if (pppppppppppppuVar19 != (uint *************)0x0) {
pppppppppppppuVar19[1] = (uint ************)((longlong)pppppppppppppuVar19[1] + 1);
pppppppppppppuVar25 = local_1f0;
pppppppppppppuVar19 = local_1e8;
}
pppppppppppppuVar22 = (uint *************)0x0;
pppppppppppppuVar23 = pppppppppppppuVar24;
if (*plVar18 != 0) {
*(longlong *)(*plVar18 + 8) = *(longlong *)(*plVar18 + 8) + -1;
pppppppppppppuVar22 = *(uint **************)(*plVar18 + 8);
pppppppppppppuVar25 = local_1f0;
pppppppppppppuVar19 = local_1e8;
if (pppppppppppppuVar22 == (uint *************)0x0) {
pppppppppppppuVar23 = (uint *************)*plVar18;
}
}
*plVar18 = (longlong)pppppppppppppuVar19;
if (pppppppppppppuVar23 != (uint *************)0x0) {
if (*pppppppppppppuVar23 != (uint ************)0x0) {
pppppppppppppuVar29 = (uint *************)0x1;
(*(code *)***pppppppppppppuVar23)();
}
FUN_14003e8b0(pppppppppppppuVar23);
pppppppppppppuVar22 = pppppppppppppuVar23;
}
}
LAB_1400cd132:
if (((pppppppppppppuVar25 != (uint *************)0x0) &&
(pppppppppppppuVar25 != (uint *************)PTR_DAT_14016f008)) &&
(pppppppppppppuVar25 + -1 != (uint *************)0x0)) {
piVar15 = (int *)FUN_14003e7c0(pppppppppppppuVar22,pppppppppppppuVar29,pppppppppppppuVar28,
param_4);
local_188 = piVar15;
FUN_14003d040(piVar15);
local_180 = 1;
puVar16 = (uint *)((longlong)pppppppppppppuVar25 + -4);
*puVar16 = *puVar16 - 1;
if (*puVar16 == 0) {
FUN_14003e8b0(pppppppppppppuVar25 + -1);
}
FUN_14003d0d0((longlong)piVar15);
local_180 = 0;
}
local_1f0 = (uint *************)PTR_DAT_14016f008;
param_1 = (uint *******)local_1d8;
plVar18 = local_1a0;
}
dVar34 = (double)FUN_1400bf740((longlong)param_1[1]);
param_2 = local_1b0;
if (3.0 < dVar34 - *(double *)(local_1b0 + 200)) {
if ((undefined8 *)*plVar18 != (undefined8 *)0x0) {
pppppppppppppuVar24 = *(uint **************)*plVar18;
}
FUN_140043a50((longlong *)pppppppppppppuVar24,pppppppppppppuVar29,pppppppppppppuVar28,param_4)
;
pppppppppppppuVar25 = local_1e8;
*(undefined4 *)(param_2 + 0x18) = 3;
if (pppppppppppppuVar19 != (uint *************)0x0) {
pppppppppppppuVar19 = pppppppppppppuVar19 + 1;
*pppppppppppppuVar19 = (uint ************)((longlong)*pppppppppppppuVar19 + -1);
if (*pppppppppppppuVar19 == (uint ************)0x0) {
if (*local_1e8 != (uint ************)0x0) {
pppppppppppppuVar29 = (uint *************)0x1;
(*(code *)***local_1e8)();
}
FUN_14003e8b0(pppppppppppppuVar25);
pppppppppppppuVar24 = pppppppppppppuVar25;
}
}
pppppppppppuVar20 = local_1f8;
if (((local_1f8 != (uint ***********)0x0) &&
(local_1f8 != (uint ***********)PTR_DAT_14016f008)) &&
(pppppppppppppuVar19 = (uint *************)(local_1f8 + -1),
pppppppppppppuVar19 != (uint *************)0x0)) {
piVar15 = (int *)FUN_14003e7c0(pppppppppppppuVar24,pppppppppppppuVar29,pppppppppppppuVar28,
param_4);
local_100 = piVar15;
FUN_14003d040(piVar15);
local_f8 = 1;
puVar16 = (uint *)((longlong)pppppppppppuVar20 + -4);
*puVar16 = *puVar16 - 1;
if (*puVar16 == 0) {
FUN_14003e8b0(pppppppppppppuVar19);
}
FUN_14003d0d0((longlong)piVar15);
}
return;
}
pppppppppppppuVar25 = (uint *************)param_1;
lVar30 = local_1b0;
FUN_1400cb280(param_1,local_1b0,(SIZE_T)pppppppppppppuVar28,param_4);
pppppppppppppuVar29 = local_1e8;
if (pppppppppppppuVar19 != (uint *************)0x0) {
pppppppppppppuVar19 = pppppppppppppuVar19 + 1;
*pppppppppppppuVar19 = (uint ************)((longlong)*pppppppppppppuVar19 + -1);
if (*pppppppppppppuVar19 == (uint ************)0x0) {
if (*local_1e8 != (uint ************)0x0) {
lVar30 = 1;
(*(code *)***local_1e8)();
}
FUN_14003e8b0(pppppppppppppuVar29);
pppppppppppppuVar25 = pppppppppppppuVar29;
}
}
pppppppppppuVar20 = local_1f8;
if (((local_1f8 != (uint ***********)0x0) && (local_1f8 != (uint ***********)PTR_DAT_14016f008))
&& (pppppppppppppuVar29 = (uint *************)(local_1f8 + -1),
pppppppppppppuVar29 != (uint *************)0x0)) {
piVar15 = (int *)FUN_14003e7c0(pppppppppppppuVar25,lVar30,pppppppppppppuVar28,param_4);
local_128 = piVar15;
FUN_14003d040(piVar15);
local_120 = 1;
puVar16 = (uint *)((longlong)pppppppppppuVar20 + -4);
*puVar16 = *puVar16 - 1;
if (*puVar16 == 0) {
FUN_14003e8b0(pppppppppppppuVar29);
}
FUN_14003d0d0((longlong)piVar15);
local_120 = 0;
}
local_1f8 = (uint ***********)PTR_DAT_14016f008;
} while( true );
}