add agent manager release decomp

This commit is contained in:
Benjamin Palko 2026-10-15 09:58:24 -04:00
parent 31ff800b2a
commit fac6117145
7019 changed files with 254032 additions and 5 deletions

View file

@ -0,0 +1,74 @@
/* AgentManager_Release_x64.exe sha256 8fd8ca91725858651a7839d34257b10c2970ac16c97e60c523b8b0c983fcb186
* Ghidra 12.1.2 decompiler output for 0x14002a650 FUN_14002a650
* Pseudocode, not original source. */
undefined1 FUN_14002a650(longlong *param_1,undefined8 param_2,SIZE_T param_3,longlong *param_4)
{
undefined1 uVar1;
ulonglong *puVar2;
uint *puVar3;
ulonglong *puVar4;
SIZE_T SVar5;
longlong *plVar6;
undefined4 local_res10 [2];
undefined4 local_50 [2];
longlong local_48;
longlong local_40;
int local_34;
local_res10[0] = (undefined4)param_2;
SVar5 = param_3;
plVar6 = param_4;
FUN_140074fb0(local_50);
FUN_140074a40((longlong)local_50,param_2,SVar5,plVar6);
FUN_14002a2d0((longlong)local_50,0x86c6,SVar5,plVar6);
FUN_140029e60((longlong)local_50,(param_4[1] - *param_4) / 0xa0,SVar5,plVar6);
puVar3 = (uint *)*param_4;
if (puVar3 != (uint *)param_4[1]) {
puVar4 = (ulonglong *)(puVar3 + 0x1a);
do {
FUN_140029e60((longlong)local_50,(ulonglong)*puVar3,SVar5,plVar6);
FUN_140029e60((longlong)local_50,(ulonglong)*(uint *)((longlong)puVar4 + -100),SVar5,plVar6);
FUN_140029e60((longlong)local_50,(ulonglong)(uint)puVar4[-0xc],SVar5,plVar6);
FUN_140029d80((longlong)local_50,(ulonglong)*(byte *)((longlong)puVar4 + -0x5c),SVar5,plVar6);
FUN_140029e60((longlong)local_50,(ulonglong)(uint)puVar4[-0xb],SVar5,plVar6);
FUN_140029e60((longlong)local_50,(ulonglong)*(uint *)((longlong)puVar4 + -0x54),SVar5,plVar6);
FUN_140029e60((longlong)local_50,(ulonglong)(uint)puVar4[-10],SVar5,plVar6);
FUN_140029e60((longlong)local_50,(ulonglong)*(uint *)((longlong)puVar4 + -0x4c),SVar5,plVar6);
FUN_140029d80((longlong)local_50,(ulonglong)(byte)puVar4[-9],SVar5,plVar6);
if (puVar4[-5] < 8) {
puVar2 = puVar4 + -8;
}
else {
puVar2 = (ulonglong *)puVar4[-8];
}
FUN_1400767c0((longlong)local_50,(short *)puVar2);
if (*puVar4 < 8) {
puVar2 = puVar4 + -3;
}
else {
puVar2 = (ulonglong *)puVar4[-3];
}
FUN_1400767c0((longlong)local_50,(short *)puVar2);
if (puVar4[5] < 8) {
puVar2 = puVar4 + 2;
}
else {
puVar2 = (ulonglong *)puVar4[2];
}
FUN_1400767c0((longlong)local_50,(short *)puVar2);
puVar3 = puVar3 + 0x28;
puVar4 = puVar4 + 0x14;
} while (puVar3 != (uint *)param_4[1]);
}
uVar1 = (**(code **)(*param_1 + 0x18))
(param_1,local_res10,1,param_3,local_50,L"RESP_SERVER_OPTION",0x86c6);
FUN_14008a320(&local_48);
if ((local_40 != 0) && (local_34 < 0)) {
/* WARNING: Subroutine does not return */
FUN_14003dec0();
}
return uVar1;
}