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,84 @@
/* AgentManager_Release_x64.exe sha256 8fd8ca91725858651a7839d34257b10c2970ac16c97e60c523b8b0c983fcb186
* Ghidra 12.1.2 decompiler output for 0x1400ea828 FUN_1400ea828
* Pseudocode, not original source. */
uint FUN_1400ea828(uint param_1,uint *param_2,uint param_3)
{
uint uVar1;
uint *puVar2;
ulonglong uVar3;
uint uVar4;
uVar4 = ~param_1;
for (; (param_3 != 0 && (((ulonglong)param_2 & 3) != 0));
param_2 = (uint *)((longlong)param_2 + 1)) {
uVar4 = *(uint *)(&DAT_14012b940 + (ulonglong)(byte)((byte)*param_2 ^ (byte)uVar4) * 4) ^
uVar4 >> 8;
param_3 = param_3 - 1;
}
if (0x1f < param_3) {
uVar3 = (ulonglong)(param_3 >> 5);
puVar2 = param_2;
do {
uVar4 = uVar4 ^ *puVar2;
uVar4 = *(uint *)(&DAT_14012bd40 + (ulonglong)(byte)(uVar4 >> 0x10) * 4) ^
*(uint *)(&DAT_14012c140 + (ulonglong)(byte)(uVar4 >> 8) * 4) ^
*(uint *)(&DAT_14012b940 + (ulonglong)(uVar4 >> 0x18) * 4) ^
*(uint *)(&DAT_14012c540 + (ulonglong)(uVar4 & 0xff) * 4) ^ puVar2[1];
uVar4 = *(uint *)(&DAT_14012bd40 + (ulonglong)(byte)(uVar4 >> 0x10) * 4) ^
*(uint *)(&DAT_14012c140 + (ulonglong)(byte)(uVar4 >> 8) * 4) ^
*(uint *)(&DAT_14012b940 + (ulonglong)(uVar4 >> 0x18) * 4) ^
*(uint *)(&DAT_14012c540 + (ulonglong)(uVar4 & 0xff) * 4) ^ puVar2[2];
uVar4 = *(uint *)(&DAT_14012bd40 + (ulonglong)(byte)(uVar4 >> 0x10) * 4) ^
*(uint *)(&DAT_14012c140 + (ulonglong)(byte)(uVar4 >> 8) * 4) ^
*(uint *)(&DAT_14012b940 + (ulonglong)(uVar4 >> 0x18) * 4) ^
*(uint *)(&DAT_14012c540 + (ulonglong)(uVar4 & 0xff) * 4) ^ puVar2[3];
uVar4 = *(uint *)(&DAT_14012bd40 + (ulonglong)(byte)(uVar4 >> 0x10) * 4) ^
*(uint *)(&DAT_14012c140 + (ulonglong)(byte)(uVar4 >> 8) * 4) ^
*(uint *)(&DAT_14012b940 + (ulonglong)(uVar4 >> 0x18) * 4) ^
*(uint *)(&DAT_14012c540 + (ulonglong)(uVar4 & 0xff) * 4) ^ puVar2[4];
uVar4 = *(uint *)(&DAT_14012bd40 + (ulonglong)(byte)(uVar4 >> 0x10) * 4) ^
*(uint *)(&DAT_14012c140 + (ulonglong)(byte)(uVar4 >> 8) * 4) ^
*(uint *)(&DAT_14012b940 + (ulonglong)(uVar4 >> 0x18) * 4) ^
*(uint *)(&DAT_14012c540 + (ulonglong)(uVar4 & 0xff) * 4) ^ puVar2[5];
param_2 = puVar2 + 8;
param_3 = param_3 - 0x20;
uVar4 = *(uint *)(&DAT_14012bd40 + (ulonglong)(byte)(uVar4 >> 0x10) * 4) ^
*(uint *)(&DAT_14012c140 + (ulonglong)(byte)(uVar4 >> 8) * 4) ^
*(uint *)(&DAT_14012b940 + (ulonglong)(uVar4 >> 0x18) * 4) ^
*(uint *)(&DAT_14012c540 + (ulonglong)(uVar4 & 0xff) * 4) ^ puVar2[6];
uVar4 = *(uint *)(&DAT_14012bd40 + (ulonglong)(byte)(uVar4 >> 0x10) * 4) ^
*(uint *)(&DAT_14012c140 + (ulonglong)(byte)(uVar4 >> 8) * 4) ^
*(uint *)(&DAT_14012b940 + (ulonglong)(uVar4 >> 0x18) * 4) ^
*(uint *)(&DAT_14012c540 + (ulonglong)(uVar4 & 0xff) * 4) ^ puVar2[7];
uVar4 = *(uint *)(&DAT_14012bd40 + (ulonglong)(byte)(uVar4 >> 0x10) * 4) ^
*(uint *)(&DAT_14012c140 + (ulonglong)(byte)(uVar4 >> 8) * 4) ^
*(uint *)(&DAT_14012b940 + (ulonglong)(uVar4 >> 0x18) * 4) ^
*(uint *)(&DAT_14012c540 + (ulonglong)(uVar4 & 0xff) * 4);
uVar3 = uVar3 - 1;
puVar2 = param_2;
} while (uVar3 != 0);
}
if (3 < param_3) {
uVar3 = (ulonglong)(param_3 >> 2);
do {
uVar4 = uVar4 ^ *param_2;
param_3 = param_3 - 4;
param_2 = param_2 + 1;
uVar4 = *(uint *)(&DAT_14012bd40 + (ulonglong)(byte)(uVar4 >> 0x10) * 4) ^
*(uint *)(&DAT_14012c140 + (ulonglong)(byte)(uVar4 >> 8) * 4) ^
*(uint *)(&DAT_14012b940 + (ulonglong)(uVar4 >> 0x18) * 4) ^
*(uint *)(&DAT_14012c540 + (ulonglong)(uVar4 & 0xff) * 4);
uVar3 = uVar3 - 1;
} while (uVar3 != 0);
}
for (; param_3 != 0; param_3 = param_3 - 1) {
uVar1 = *param_2;
param_2 = (uint *)((longlong)param_2 + 1);
uVar4 = *(uint *)(&DAT_14012b940 + (ulonglong)(byte)((byte)uVar1 ^ (byte)uVar4) * 4) ^
uVar4 >> 8;
}
return ~uVar4;
}