/* AgentManager_Release_x64.exe sha256 8fd8ca91725858651a7839d34257b10c2970ac16c97e60c523b8b0c983fcb186 * Ghidra 12.1.2 decompiler output for 0x1400fc290 Catch@1400fc290 * Pseudocode, not original source. */ undefined * Catch_1400fc290(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_14003e7c0(param_1,param_2,param_3,param_4); *(undefined **)(param_2 + 0xe8) = PTR_DAT_14016f010; lVar2 = *(longlong *)(param_2 + 0x28); pplVar8 = (longlong **)(param_2 + 0xe8); uVar6 = 5; uVar7 = 3; plVar5 = *(longlong **)(lVar2 + 0x108); FUN_1400b4a80(plVar5,5,(undefined *)0x3,pplVar8); puVar3 = *(undefined **)(param_2 + 0xe8); if (((puVar3 != (undefined *)0x0) && (puVar3 != PTR_DAT_14016f010)) && (puVar3 + -8 != (undefined *)0x0)) { piVar4 = (int *)FUN_14003e7c0(plVar5,uVar6,uVar7,pplVar8); *(int **)(param_2 + 0x1d0) = piVar4; FUN_14003d040(piVar4); *(undefined1 *)(param_2 + 0x1d8) = 1; piVar1 = (int *)(puVar3 + -4); *piVar1 = *piVar1 + -1; if (*piVar1 == 0) { FUN_14003e8b0(puVar3 + -8); } FUN_14003d0d0((longlong)piVar4); } if (*(longlong *)(*(longlong *)(lVar2 + 0x108) + 0x1580) != 0) { plVar5 = *(longlong **)(*(longlong *)(lVar2 + 0x108) + 0x1580); (**(code **)(*plVar5 + 0x20))(plVar5,*(undefined8 *)(param_2 + 0x1f0)); } FUN_1400bf180(lVar2,4); return &DAT_1400c306c; }