server-re/decomp/Agent_Release_x64/full/functions/0x1400eac70.c
2026-10-14 16:45:19 -04:00

47 lines
1.5 KiB
C

/* Agent_Release_x64.exe sha256 6f2be7b8eb799ba51b359d1958720aac5baee5b7ee0d1d36684d3cbd72d45469
* Ghidra 12.1.2 decompiler output for 0x1400eac70 Catch@1400eac70
* Pseudocode, not original source. */
undefined *
Catch_1400eac70(undefined8 param_1,longlong param_2,undefined8 param_3,undefined8 param_4)
{
int *piVar1;
longlong lVar2;
undefined *puVar3;
int *piVar4;
longlong *plVar5;
undefined8 uVar6;
undefined8 uVar7;
longlong **pplVar8;
FUN_140030200(param_1,param_2,param_3,param_4);
*(undefined **)(param_2 + 0xe8) = PTR_DAT_140155010;
lVar2 = *(longlong *)(param_2 + 0x28);
pplVar8 = (longlong **)(param_2 + 0xe8);
uVar6 = 5;
uVar7 = 3;
plVar5 = *(longlong **)(lVar2 + 0x108);
FUN_14007dca0(plVar5,5,(undefined *)0x3,pplVar8);
puVar3 = *(undefined **)(param_2 + 0xe8);
if (((puVar3 != (undefined *)0x0) && (puVar3 != PTR_DAT_140155010)) &&
(puVar3 + -8 != (undefined *)0x0)) {
piVar4 = (int *)FUN_140030200(plVar5,uVar6,uVar7,pplVar8);
*(int **)(param_2 + 0x1d0) = piVar4;
FUN_14002e6e0(piVar4);
*(undefined1 *)(param_2 + 0x1d8) = 1;
piVar1 = (int *)(puVar3 + -4);
*piVar1 = *piVar1 + -1;
if (*piVar1 == 0) {
FUN_1400302f0(puVar3 + -8);
}
FUN_14002e770((longlong)piVar4);
}
if (*(longlong *)(*(longlong *)(lVar2 + 0x108) + 0x1580) != 0) {
plVar5 = *(longlong **)(*(longlong *)(lVar2 + 0x108) + 0x1580);
(**(code **)(*plVar5 + 0x20))(plVar5,*(undefined8 *)(param_2 + 0x1f0));
}
FUN_1400a36a0(lVar2,4);
return &DAT_1400a752c;
}