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

45 lines
1.3 KiB
C

/* AgentManager_Release_x64.exe sha256 8fd8ca91725858651a7839d34257b10c2970ac16c97e60c523b8b0c983fcb186
* Ghidra 12.1.2 decompiler output for 0x1400c4c60 FUN_1400c4c60
* Pseudocode, not original source. */
void FUN_1400c4c60(longlong param_1,longlong *param_2)
{
char cVar1;
undefined8 *puVar2;
longlong *plVar3;
longlong *plVar4;
plVar4 = (longlong *)0x0;
plVar3 = plVar4;
if ((undefined8 *)*param_2 != (undefined8 *)0x0) {
plVar3 = *(longlong **)*param_2;
}
cVar1 = (**(code **)(*plVar3 + 0x10))();
if (cVar1 == '\0') {
if ((undefined8 *)*param_2 != (undefined8 *)0x0) {
plVar4 = *(longlong **)*param_2;
}
(**(code **)(*plVar4 + 8))(plVar4);
}
puVar2 = FUN_1400a9310((longlong *)(param_1 + 0x228),param_2,*(undefined8 *)(param_1 + 0x238),0);
if (*(undefined8 **)(param_1 + 0x238) == (undefined8 *)0x0) {
*(undefined8 **)(param_1 + 0x230) = puVar2;
}
else {
**(undefined8 **)(param_1 + 0x238) = puVar2;
}
*(undefined8 **)(param_1 + 0x238) = puVar2;
if ((*param_2 != 0) &&
(*(longlong *)(*param_2 + 8) = *(longlong *)(*param_2 + 8) + -1,
*(longlong *)(*param_2 + 8) == 0)) {
plVar4 = (longlong *)*param_2;
puVar2 = (undefined8 *)*plVar4;
if (puVar2 != (undefined8 *)0x0) {
(**(code **)*puVar2)(puVar2,1);
}
FUN_14003e8b0(plVar4);
}
return;
}