add agent manager release decomp
This commit is contained in:
parent
31ff800b2a
commit
fac6117145
7019 changed files with 254032 additions and 5 deletions
244
decomp/AgentManager_Release_x64/full/functions/0x140017ba0.c
Normal file
244
decomp/AgentManager_Release_x64/full/functions/0x140017ba0.c
Normal file
|
|
@ -0,0 +1,244 @@
|
|||
/* AgentManager_Release_x64.exe sha256 8fd8ca91725858651a7839d34257b10c2970ac16c97e60c523b8b0c983fcb186
|
||||
* Ghidra 12.1.2 decompiler output for 0x140017ba0 FUN_140017ba0
|
||||
* Pseudocode, not original source. */
|
||||
|
||||
/* WARNING: Function: __security_check_cookie replaced with injection: security_check_cookie */
|
||||
|
||||
ulonglong FUN_140017ba0(longlong param_1,longlong param_2)
|
||||
|
||||
{
|
||||
uint uVar1;
|
||||
uint uVar2;
|
||||
int iVar3;
|
||||
longlong lVar4;
|
||||
ulonglong uVar5;
|
||||
void **ppvVar6;
|
||||
undefined8 uVar7;
|
||||
undefined8 extraout_RAX;
|
||||
undefined8 extraout_RAX_00;
|
||||
undefined8 extraout_RAX_01;
|
||||
undefined8 extraout_RAX_02;
|
||||
longlong lVar8;
|
||||
undefined **ppuVar9;
|
||||
undefined1 auStackY_228 [32];
|
||||
undefined4 in_stack_fffffffffffffdfc;
|
||||
longlong local_1f0;
|
||||
undefined *local_1e8;
|
||||
undefined1 local_1d8;
|
||||
undefined1 local_1d7;
|
||||
longlong local_1d0;
|
||||
undefined4 local_1c8;
|
||||
undefined8 local_1c0;
|
||||
undefined8 local_1b8;
|
||||
longlong local_1b0;
|
||||
undefined *local_1a8;
|
||||
undefined1 local_198;
|
||||
undefined1 local_197;
|
||||
longlong local_190;
|
||||
undefined4 local_188;
|
||||
undefined8 local_180;
|
||||
undefined8 local_178;
|
||||
longlong local_170;
|
||||
undefined *local_168;
|
||||
undefined1 local_158;
|
||||
undefined1 local_157;
|
||||
longlong local_150;
|
||||
undefined4 local_148;
|
||||
undefined8 local_140;
|
||||
undefined8 local_138;
|
||||
undefined8 local_130;
|
||||
longlong local_128;
|
||||
undefined *local_120;
|
||||
byte local_110;
|
||||
undefined1 auStack_10f [7];
|
||||
longlong local_108;
|
||||
undefined4 local_100;
|
||||
undefined8 local_f8;
|
||||
undefined8 local_f0;
|
||||
void *local_e8 [2];
|
||||
undefined8 local_d8;
|
||||
ulonglong local_d0;
|
||||
undefined2 local_c0;
|
||||
undefined6 uStack_be;
|
||||
undefined8 local_b0;
|
||||
ulonglong local_a8;
|
||||
undefined1 local_98;
|
||||
undefined7 uStack_97;
|
||||
undefined8 local_88;
|
||||
ulonglong local_80;
|
||||
undefined2 local_70;
|
||||
undefined6 uStack_6e;
|
||||
undefined8 local_60;
|
||||
ulonglong local_58;
|
||||
ulonglong local_48;
|
||||
|
||||
local_130 = 0xfffffffffffffffe;
|
||||
local_48 = DAT_14016f5a0 ^ (ulonglong)auStackY_228;
|
||||
ppuVar9 = (undefined **)&DAT_1401303d0;
|
||||
lVar8 = 0x28;
|
||||
do {
|
||||
lVar4 = lVar8 / 2;
|
||||
if (ppuVar9[lVar4] < (undefined *)0xb) {
|
||||
ppuVar9 = ppuVar9 + lVar4 + 1;
|
||||
lVar4 = lVar8 + (-1 - lVar4);
|
||||
}
|
||||
lVar8 = lVar4;
|
||||
} while (0 < lVar4);
|
||||
if (ppuVar9 == &MBISingleton<MagiStatistics>::vftable_meta_ptr) {
|
||||
ppuVar9 = (undefined **)&UNK_140130508;
|
||||
}
|
||||
local_120 = *ppuVar9;
|
||||
local_128 = 0;
|
||||
local_110 = 0;
|
||||
local_108 = 0;
|
||||
local_100 = 0x3f800000;
|
||||
local_f8 = 0;
|
||||
local_f0 = 0;
|
||||
uVar5 = FUN_14000e610((char *)(param_2 + 8),&local_128);
|
||||
local_150 = local_108;
|
||||
if ((char)uVar5 == '\0') {
|
||||
if (local_128 != 0) {
|
||||
uVar5 = FUN_140010570(&local_128);
|
||||
}
|
||||
uVar5 = uVar5 & 0xffffffffffffff00;
|
||||
}
|
||||
else {
|
||||
local_168 = FUN_140037260((longlong)&local_128,local_108);
|
||||
local_170 = 0;
|
||||
local_158 = 0;
|
||||
local_157 = auStack_10f[local_110];
|
||||
local_148 = local_100;
|
||||
local_140 = 0;
|
||||
local_138 = 0;
|
||||
if (local_150 != 0) {
|
||||
FUN_14001a640(&local_128,&local_170);
|
||||
FUN_140011050(&local_170);
|
||||
}
|
||||
FUN_14000f2a0((void **)&local_70,&local_170,"Account");
|
||||
lVar8 = local_108;
|
||||
local_1e8 = FUN_140037260((longlong)&local_128,local_108);
|
||||
local_1f0 = 0;
|
||||
local_1d8 = 0;
|
||||
local_1d7 = auStack_10f[local_110];
|
||||
local_1d0 = lVar8;
|
||||
local_1c8 = local_100;
|
||||
local_1c0 = 0;
|
||||
local_1b8 = 0;
|
||||
if (lVar8 != 0) {
|
||||
FUN_14001a640(&local_128,&local_1f0);
|
||||
FUN_140011050(&local_1f0);
|
||||
}
|
||||
FUN_14000f2a0((void **)&local_c0,&local_1f0,"charid");
|
||||
lVar8 = local_108;
|
||||
local_168 = FUN_140037260((longlong)&local_128,local_108);
|
||||
local_170 = 0;
|
||||
local_158 = 0;
|
||||
local_157 = auStack_10f[local_110];
|
||||
local_150 = lVar8;
|
||||
local_148 = local_100;
|
||||
local_140 = 0;
|
||||
local_138 = 0;
|
||||
if (lVar8 != 0) {
|
||||
FUN_14001a640(&local_128,&local_170);
|
||||
FUN_140011050(&local_170);
|
||||
}
|
||||
FUN_14000f130((longlong *)&local_98,&local_170);
|
||||
lVar8 = local_108;
|
||||
local_1e8 = FUN_140037260((longlong)&local_128,local_108);
|
||||
local_1f0 = 0;
|
||||
local_1d8 = 0;
|
||||
local_1d7 = auStack_10f[local_110];
|
||||
local_1d0 = lVar8;
|
||||
local_1c8 = local_100;
|
||||
local_1c0 = 0;
|
||||
local_1b8 = 0;
|
||||
if (lVar8 != 0) {
|
||||
FUN_14001a640(&local_128,&local_1f0);
|
||||
FUN_140011050(&local_1f0);
|
||||
}
|
||||
uVar1 = FUN_14000efc0(&local_1f0,"type");
|
||||
lVar8 = local_108;
|
||||
local_1a8 = FUN_140037260((longlong)&local_128,local_108);
|
||||
local_1b0 = 0;
|
||||
local_198 = 0;
|
||||
local_197 = auStack_10f[local_110];
|
||||
local_190 = lVar8;
|
||||
local_188 = local_100;
|
||||
local_180 = 0;
|
||||
local_178 = 0;
|
||||
if (lVar8 != 0) {
|
||||
FUN_14001a640(&local_128,&local_1b0);
|
||||
FUN_140011050(&local_1b0);
|
||||
}
|
||||
uVar2 = FUN_14000efc0(&local_1b0,"server");
|
||||
lVar8 = local_108;
|
||||
local_1e8 = FUN_140037260((longlong)&local_128,local_108);
|
||||
local_1f0 = 0;
|
||||
local_1d8 = 0;
|
||||
local_1d7 = auStack_10f[local_110];
|
||||
local_1d0 = lVar8;
|
||||
local_1c8 = local_100;
|
||||
local_1c0 = 0;
|
||||
local_1b8 = 0;
|
||||
if (lVar8 != 0) {
|
||||
FUN_14001a640(&local_128,&local_1f0);
|
||||
FUN_140011050(&local_1f0);
|
||||
}
|
||||
iVar3 = FUN_14000efc0(&local_1f0,"messagetype");
|
||||
lVar8 = local_108;
|
||||
local_1a8 = FUN_140037260((longlong)&local_128,local_108);
|
||||
local_1b0 = 0;
|
||||
local_198 = 0;
|
||||
local_197 = auStack_10f[local_110];
|
||||
local_190 = lVar8;
|
||||
local_188 = local_100;
|
||||
local_180 = 0;
|
||||
local_178 = 0;
|
||||
if (lVar8 != 0) {
|
||||
FUN_14001a640(&local_128,&local_1b0);
|
||||
FUN_140011050(&local_1b0);
|
||||
}
|
||||
FUN_14000f2a0(local_e8,&local_1b0,"message");
|
||||
ppvVar6 = local_e8;
|
||||
if (7 < local_d0) {
|
||||
ppvVar6 = (void **)CONCAT62(local_e8[0]._2_6_,local_e8[0]._0_2_);
|
||||
}
|
||||
uVar7 = FUN_140014f40(*(longlong *)(param_1 + 0x98),(ulonglong)*(uint *)(param_2 + 0x208),
|
||||
(ulonglong)uVar2,(ulonglong)uVar1,
|
||||
CONCAT44(in_stack_fffffffffffffdfc,iVar3),(short *)ppvVar6);
|
||||
if (7 < local_d0) {
|
||||
operator_delete((void *)CONCAT62(local_e8[0]._2_6_,local_e8[0]._0_2_));
|
||||
uVar7 = extraout_RAX;
|
||||
}
|
||||
local_d0 = 7;
|
||||
local_d8 = 0;
|
||||
local_e8[0]._0_2_ = 0;
|
||||
if (0xf < local_80) {
|
||||
operator_delete((void *)CONCAT71(uStack_97,local_98));
|
||||
uVar7 = extraout_RAX_00;
|
||||
}
|
||||
local_80 = 0xf;
|
||||
local_88 = 0;
|
||||
local_98 = 0;
|
||||
if (7 < local_a8) {
|
||||
operator_delete((void *)CONCAT62(uStack_be,local_c0));
|
||||
uVar7 = extraout_RAX_01;
|
||||
}
|
||||
local_a8 = 7;
|
||||
local_b0 = 0;
|
||||
local_c0 = 0;
|
||||
if (7 < local_58) {
|
||||
operator_delete((void *)CONCAT62(uStack_6e,local_70));
|
||||
uVar7 = extraout_RAX_02;
|
||||
}
|
||||
local_58 = 7;
|
||||
local_60 = 0;
|
||||
local_70 = 0;
|
||||
if (local_128 != 0) {
|
||||
uVar7 = FUN_140010570(&local_128);
|
||||
}
|
||||
uVar5 = CONCAT71((int7)((ulonglong)uVar7 >> 8),1);
|
||||
}
|
||||
return uVar5;
|
||||
}
|
||||
|
||||
Loading…
Add table
Add a link
Reference in a new issue