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,72 @@
/* AgentManager_Release_x64.exe sha256 8fd8ca91725858651a7839d34257b10c2970ac16c97e60c523b8b0c983fcb186
* Ghidra 12.1.2 decompiler output for 0x1400c78f0 FUN_1400c78f0
* Pseudocode, not original source. */
undefined8 FUN_1400c78f0(longlong param_1,undefined **param_2)
{
longlong *plVar1;
undefined8 *puVar2;
bool bVar3;
uint uVar4;
IMAGE_DOS_HEADER *pIVar5;
undefined8 uVar6;
undefined *puVar7;
int *piVar8;
wchar_t *pwVar9;
IMAGE_DOS_HEADER *pIVar10;
TypeDescriptor *pTVar11;
ulonglong uVar12;
TypeDescriptor *pTVar13;
int *piVar14;
IMAGE_DOS_HEADER *local_res18 [2];
pIVar10 = (IMAGE_DOS_HEADER *)0x0;
pTVar13 = &Proud::CUdpSocket_C::RTTI_Type_Descriptor;
pTVar11 = &Proud::ICompletionContext::RTTI_Type_Descriptor;
uVar6 = 0;
pIVar5 = (IMAGE_DOS_HEADER *)__RTDynamicCast(*param_2);
if (pIVar5 == (IMAGE_DOS_HEADER *)0x0) {
uVar6 = 0;
}
else {
piVar14 = (int *)(param_1 + 0x10);
local_res18[0] = pIVar5;
FUN_14003d040(piVar14);
bVar3 = true;
if (*(int *)(param_2 + 2) == 1) {
plVar1 = *(longlong **)(*(longlong *)&pIVar5[2].e_lfarlc + 0x5d0);
if (plVar1 != (longlong *)0x0) {
pIVar10 = (IMAGE_DOS_HEADER *)*plVar1;
}
uVar6 = FUN_1400bf490((longlong)pIVar10,(longlong)pIVar5,(longlong)param_2,pTVar13);
}
else if (*(int *)(param_2 + 2) == 2) {
puVar2 = *(undefined8 **)(*(longlong *)&pIVar5[2].e_lfarlc + 0x5d0);
if (puVar2 != (undefined8 *)0x0) {
pIVar10 = (IMAGE_DOS_HEADER *)*puVar2;
}
uVar6 = FUN_1400c6ad0(pIVar10,pIVar5,param_2,&pTVar13->pVFTable);
}
else {
piVar8 = piVar14;
FUN_14003d0d0((longlong)piVar14);
bVar3 = false;
FUN_14003e7c0(piVar8,uVar6,pTVar11,pTVar13);
local_res18[0] = (IMAGE_DOS_HEADER *)PTR_DAT_14016f010;
uVar4 = FUN_14003e620(L"Unexpected at Client IOCP UDP completion!");
puVar7 = FUN_140001ee0((longlong *)local_res18,uVar4);
uVar12 = (ulonglong)uVar4;
pwVar9 = L"Unexpected at Client IOCP UDP completion!";
FUN_14003e650(puVar7,L"Unexpected at Client IOCP UDP completion!",uVar4);
FUN_140001fc0((longlong *)local_res18);
uVar6 = FUN_1400416f0((longlong *)local_res18,pwVar9,uVar12,pTVar13);
}
if (bVar3) {
uVar6 = FUN_14003d0d0((longlong)piVar14);
}
uVar6 = CONCAT71((int7)((ulonglong)uVar6 >> 8),1);
}
return uVar6;
}