server-re/decomp/AgentManager_Release_x64/full/functions/0x1400c8300.c
2026-10-15 09:58:24 -04:00

49 lines
1.6 KiB
C

/* AgentManager_Release_x64.exe sha256 8fd8ca91725858651a7839d34257b10c2970ac16c97e60c523b8b0c983fcb186
* Ghidra 12.1.2 decompiler output for 0x1400c8300 FUN_1400c8300
* Pseudocode, not original source. */
void FUN_1400c8300(longlong *param_1,ulonglong param_2,longlong param_3,undefined8 *param_4)
{
longlong *plVar1;
char cVar2;
undefined1 uVar3;
ushort uVar4;
longlong lVar5;
undefined8 *puVar6;
double dVar7;
undefined **local_38;
undefined4 local_30;
undefined2 local_2c;
SIZE_T local_28;
undefined1 local_20;
puVar6 = param_4;
(**(code **)(*(longlong *)(*param_1 + 0x78) + 0x10))(*param_1 + 0x78);
if ((char)param_1[0x10] != '\0') {
lVar5 = FUN_14009c0d0(*param_1);
cVar2 = (**(code **)(*(longlong *)(lVar5 + 0x40) + 0x10))(lVar5 + 0x40);
if (cVar2 == '\0') {
if (*(char *)(param_4 + 3) == '\0') {
*(int *)(*param_1 + 0x508) = *(int *)(*param_1 + 0x508) + 1;
}
local_38 = Proud::AddrPort::vftable;
local_30 = (undefined4)param_1[0x1a];
local_2c = *(undefined2 *)((longlong)param_1 + 0xd4);
plVar1 = (longlong *)*param_1;
dVar7 = (double)(**(code **)(plVar1[0xe] + 0x1c0))();
uVar3 = (**(code **)(*plVar1 + 0x30))(plVar1);
uVar4 = FUN_14008be40(uVar3,1);
lVar5 = FUN_14009c0d0(*param_1);
FUN_1400d3030(lVar5,param_2 & 0xffffffff,(ulonglong)uVar4,(longlong)&local_38,param_3,dVar7,
param_4);
return;
}
}
local_28 = param_4[1];
local_20 = *(undefined1 *)(param_4 + 2);
lVar5 = FUN_14009c0f0(*param_1);
FUN_1400ceb20(lVar5,param_3,&local_28,puVar6);
return;
}