add agent manager release decomp
This commit is contained in:
parent
31ff800b2a
commit
fac6117145
7019 changed files with 254032 additions and 5 deletions
258
decomp/AgentManager_Release_x64/full/functions/0x1400054f0.c
Normal file
258
decomp/AgentManager_Release_x64/full/functions/0x1400054f0.c
Normal file
|
|
@ -0,0 +1,258 @@
|
|||
/* AgentManager_Release_x64.exe sha256 8fd8ca91725858651a7839d34257b10c2970ac16c97e60c523b8b0c983fcb186
|
||||
* Ghidra 12.1.2 decompiler output for 0x1400054f0 FUN_1400054f0
|
||||
* Pseudocode, not original source. */
|
||||
|
||||
/* WARNING: Function: __security_check_cookie replaced with injection: security_check_cookie */
|
||||
|
||||
void FUN_1400054f0(longlong param_1,double param_2,undefined8 param_3,ulonglong param_4)
|
||||
|
||||
{
|
||||
int iVar1;
|
||||
int *piVar2;
|
||||
int *piVar3;
|
||||
longlong lVar4;
|
||||
undefined8 **ppuVar5;
|
||||
int **ppiVar6;
|
||||
_SYSTEMTIME *p_Var7;
|
||||
undefined8 uVar8;
|
||||
undefined8 uVar9;
|
||||
ulonglong uVar10;
|
||||
undefined8 uVar11;
|
||||
undefined8 uVar12;
|
||||
int *piVar13;
|
||||
int *piVar14;
|
||||
int iVar15;
|
||||
int *piVar16;
|
||||
uint uVar17;
|
||||
int *piVar18;
|
||||
int iVar19;
|
||||
uint uVar20;
|
||||
uint uVar21;
|
||||
undefined1 auStackY_138 [32];
|
||||
undefined8 *local_f0;
|
||||
undefined8 local_e8;
|
||||
int *local_e0;
|
||||
undefined8 local_d8;
|
||||
undefined8 *local_d0;
|
||||
undefined8 local_c8;
|
||||
int *local_c0;
|
||||
undefined8 local_b8;
|
||||
int *local_b0;
|
||||
int *local_a8;
|
||||
undefined8 local_a0;
|
||||
undefined8 *local_90;
|
||||
undefined8 local_88;
|
||||
undefined8 *local_80;
|
||||
undefined8 local_78;
|
||||
undefined8 *local_70;
|
||||
undefined8 local_68;
|
||||
undefined8 local_60;
|
||||
_SYSTEMTIME local_58;
|
||||
ulonglong local_48;
|
||||
|
||||
local_60 = 0xfffffffffffffffe;
|
||||
local_48 = DAT_14016f5a0 ^ (ulonglong)auStackY_138;
|
||||
if (20.0 <= param_2 - *(double *)(param_1 + 0x88)) {
|
||||
local_b0 = (int *)0x0;
|
||||
local_a8 = (int *)0x0;
|
||||
local_a0 = 0;
|
||||
FUN_140039a40(DAT_14017cf20,(longlong *)&local_b0);
|
||||
piVar14 = local_b0;
|
||||
if (local_b0 != local_a8) {
|
||||
do {
|
||||
piVar18 = (int *)0x0;
|
||||
iVar1 = *piVar14;
|
||||
uVar20 = 0;
|
||||
if (*(longlong *)(DAT_14017cf20 + 0x58) == 0) {
|
||||
local_70 = (undefined8 *)0x0;
|
||||
local_68 = 0;
|
||||
ppuVar5 = &local_70;
|
||||
}
|
||||
else {
|
||||
local_f0 = *(undefined8 **)(DAT_14017cf20 + 0x68);
|
||||
if (local_f0 == (undefined8 *)0x0) {
|
||||
local_e8 = 0;
|
||||
}
|
||||
else {
|
||||
local_e8 = *local_f0;
|
||||
}
|
||||
ppuVar5 = &local_f0;
|
||||
}
|
||||
piVar13 = (int *)*ppuVar5;
|
||||
piVar3 = (int *)ppuVar5[1];
|
||||
piVar16 = piVar18;
|
||||
uVar21 = uVar20;
|
||||
while (piVar3 != (int *)0x0) {
|
||||
piVar2 = *(int **)(piVar3 + 4);
|
||||
if (((piVar2 != (int *)0x0) && (*piVar2 == iVar1)) && ((char)piVar2[3] == '\b')) {
|
||||
piVar16 = (int *)(ulonglong)(uint)((int)piVar16 + piVar2[0x2e]);
|
||||
}
|
||||
uVar21 = (uint)piVar16;
|
||||
piVar3 = *(int **)piVar3;
|
||||
while (piVar3 == (int *)0x0) {
|
||||
piVar13 = piVar13 + 2;
|
||||
piVar3 = *(int **)piVar13;
|
||||
}
|
||||
if (piVar13 == piVar3) {
|
||||
piVar3 = piVar18;
|
||||
}
|
||||
}
|
||||
if (*(longlong *)(DAT_14017cf20 + 0x58) == 0) {
|
||||
local_80 = (undefined8 *)0x0;
|
||||
local_78 = 0;
|
||||
ppuVar5 = &local_80;
|
||||
}
|
||||
else {
|
||||
local_90 = *(undefined8 **)(DAT_14017cf20 + 0x68);
|
||||
if (local_90 == (undefined8 *)0x0) {
|
||||
local_88 = 0;
|
||||
}
|
||||
else {
|
||||
local_88 = *local_90;
|
||||
}
|
||||
ppuVar5 = &local_90;
|
||||
}
|
||||
piVar13 = (int *)*ppuVar5;
|
||||
piVar3 = (int *)ppuVar5[1];
|
||||
piVar16 = piVar18;
|
||||
while (piVar3 != (int *)0x0) {
|
||||
piVar2 = *(int **)(piVar3 + 4);
|
||||
if (((piVar2 != (int *)0x0) && (*piVar2 == iVar1)) && ((char)piVar2[3] == '\x01')) {
|
||||
piVar16 = (int *)(ulonglong)(uint)((int)piVar16 + piVar2[0x2e]);
|
||||
}
|
||||
uVar20 = (uint)piVar16;
|
||||
piVar3 = *(int **)piVar3;
|
||||
while (piVar3 == (int *)0x0) {
|
||||
piVar13 = piVar13 + 2;
|
||||
piVar3 = *(int **)piVar13;
|
||||
}
|
||||
if (piVar13 == piVar3) {
|
||||
piVar3 = piVar18;
|
||||
}
|
||||
}
|
||||
if (*(longlong *)(DAT_14017cf20 + 0x58) == 0) {
|
||||
local_e0 = (int *)0x0;
|
||||
local_d8 = 0;
|
||||
ppiVar6 = &local_e0;
|
||||
}
|
||||
else {
|
||||
local_c0 = *(int **)(DAT_14017cf20 + 0x68);
|
||||
if (local_c0 == (int *)0x0) {
|
||||
local_b8 = 0;
|
||||
}
|
||||
else {
|
||||
local_b8 = *(undefined8 *)local_c0;
|
||||
}
|
||||
ppiVar6 = &local_c0;
|
||||
}
|
||||
piVar13 = *ppiVar6;
|
||||
piVar3 = ppiVar6[1];
|
||||
piVar16 = piVar18;
|
||||
while (iVar19 = (int)piVar16, piVar3 != (int *)0x0) {
|
||||
piVar2 = *(int **)(piVar3 + 4);
|
||||
if (((piVar2 != (int *)0x0) && (*piVar2 == iVar1)) && ((char)piVar2[3] == '\x02')) {
|
||||
piVar16 = (int *)(ulonglong)(uint)(iVar19 + piVar2[0x2e]);
|
||||
}
|
||||
piVar3 = *(int **)piVar3;
|
||||
while (piVar3 == (int *)0x0) {
|
||||
piVar13 = piVar13 + 2;
|
||||
piVar3 = *(int **)piVar13;
|
||||
}
|
||||
if (piVar13 == piVar3) {
|
||||
piVar3 = piVar18;
|
||||
}
|
||||
}
|
||||
iVar15 = 0;
|
||||
if (*(longlong *)(DAT_14017cf20 + 0x58) == 0) {
|
||||
local_58.wYear = 0;
|
||||
local_58.wMonth = 0;
|
||||
local_58.wDayOfWeek = 0;
|
||||
local_58.wDay = 0;
|
||||
local_58.wHour = 0;
|
||||
local_58.wMinute = 0;
|
||||
local_58.wSecond = 0;
|
||||
local_58.wMilliseconds = 0;
|
||||
p_Var7 = &local_58;
|
||||
}
|
||||
else {
|
||||
local_d0 = *(undefined8 **)(DAT_14017cf20 + 0x68);
|
||||
if (local_d0 == (undefined8 *)0x0) {
|
||||
local_c8._0_2_ = 0;
|
||||
local_c8._2_2_ = 0;
|
||||
local_c8._4_2_ = 0;
|
||||
local_c8._6_2_ = 0;
|
||||
}
|
||||
else {
|
||||
local_c8 = *local_d0;
|
||||
}
|
||||
p_Var7 = (_SYSTEMTIME *)&local_d0;
|
||||
}
|
||||
piVar13 = *(int **)p_Var7;
|
||||
piVar3 = *(int **)&p_Var7->wHour;
|
||||
piVar16 = piVar18;
|
||||
while (piVar3 != (int *)0x0) {
|
||||
piVar2 = *(int **)(piVar3 + 4);
|
||||
if (((piVar2 != (int *)0x0) && (*piVar2 == iVar1)) && ((char)piVar2[3] == '\x03')) {
|
||||
piVar16 = (int *)(ulonglong)(uint)((int)piVar16 + piVar2[0x2e]);
|
||||
}
|
||||
iVar15 = (int)piVar16;
|
||||
piVar3 = *(int **)piVar3;
|
||||
while (piVar3 == (int *)0x0) {
|
||||
piVar13 = piVar13 + 2;
|
||||
piVar3 = *(int **)piVar13;
|
||||
}
|
||||
if (piVar13 == piVar3) {
|
||||
piVar3 = piVar18;
|
||||
}
|
||||
}
|
||||
uVar17 = iVar15 + iVar19 + uVar20 + uVar21;
|
||||
if (*(char *)(DAT_14017cf28 + 0x180) != '\0') {
|
||||
FUN_14000d4a0(param_1,iVar1,(ulonglong)uVar17,param_4);
|
||||
if (*(longlong *)(param_1 + 0x70) != 0) {
|
||||
param_4 = (ulonglong)uVar20;
|
||||
FUN_14000b1c0(*(longlong *)(param_1 + 0x70),iVar1,uVar21,param_4,iVar19,iVar15,uVar17);
|
||||
}
|
||||
}
|
||||
piVar14 = piVar14 + 1;
|
||||
} while (piVar14 != local_a8);
|
||||
}
|
||||
*(double *)(param_1 + 0x88) = param_2;
|
||||
if (local_b0 != (int *)0x0) {
|
||||
operator_delete(local_b0);
|
||||
}
|
||||
}
|
||||
if (5.0 <= param_2 - *(double *)(param_1 + 0x90)) {
|
||||
*(double *)(param_1 + 0x90) = param_2;
|
||||
FUN_140039230(DAT_14017cf20);
|
||||
}
|
||||
if (*(char *)(DAT_14017cf28 + 0x180) != '\0') {
|
||||
GetLocalTime(&local_58);
|
||||
lVar4 = DAT_14017cf48;
|
||||
if (*(uint *)(param_1 + 0x98) != (uint)local_58.wHour) {
|
||||
if (*(uint *)(param_1 + 0x98) != 0xffffffff) {
|
||||
piVar14 = (int *)(DAT_14017cf48 + 0x48);
|
||||
local_e0 = piVar14;
|
||||
FUN_14003d040(piVar14);
|
||||
local_d8 = CONCAT71(local_d8._1_7_,1);
|
||||
uVar8 = FUN_14000bf50(lVar4,0);
|
||||
uVar9 = FUN_14000bf50(lVar4,1);
|
||||
uVar10 = FUN_14000bf50(lVar4,2);
|
||||
uVar11 = FUN_14000bf50(lVar4,3);
|
||||
uVar12 = FUN_14000bf50(lVar4,4);
|
||||
local_f0 = (undefined8 *)FUN_14000bf50(lVar4,5);
|
||||
FUN_14003d0d0((longlong)piVar14);
|
||||
lVar4 = DAT_14017cf48;
|
||||
FUN_14003d040((int *)(DAT_14017cf48 + 0x48));
|
||||
FUN_14003b460((undefined8 *)(lVar4 + 8));
|
||||
FUN_14003d0d0(lVar4 + 0x48);
|
||||
if (*(longlong *)(param_1 + 0x70) != 0) {
|
||||
FUN_14000b980(*(longlong *)(param_1 + 0x70),(int)uVar8,(int)uVar9,uVar10 & 0xffffffff,
|
||||
(int)uVar12,(int)local_f0,(int)uVar11);
|
||||
}
|
||||
}
|
||||
*(uint *)(param_1 + 0x98) = (uint)local_58.wHour;
|
||||
}
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
||||
Loading…
Add table
Add a link
Reference in a new issue