/* Agent_Release_x64.exe sha256 6f2be7b8eb799ba51b359d1958720aac5baee5b7ee0d1d36684d3cbd72d45469 * Ghidra 12.1.2 decompiler output for 0x1400ad0c0 FUN_1400ad0c0 * Pseudocode, not original source. */ longlong FUN_1400ad0c0(undefined8 param_1,longlong param_2) { uint uVar1; undefined4 extraout_var; uint7 uVar2; longlong lVar3; int iVar4; undefined *puVar5; lVar3 = 0; puVar5 = *(undefined **)(param_2 + 0x2488); iVar4 = 0; if ((puVar5 != (undefined *)0x0) && (puVar5 != PTR_DAT_140155008)) { iVar4 = *(int *)(puVar5 + -8); } *(undefined1 *)(param_2 + 0x24c0) = 1; puVar5 = *(undefined **)(param_2 + 0x2488); if (*(undefined **)(param_2 + 0x2488) == (undefined *)0x0) { puVar5 = PTR_DAT_140155008; } if (*(longlong **)(param_2 + 0x2480) != (longlong *)0x0) { lVar3 = **(longlong **)(param_2 + 0x2480); } uVar1 = FUN_1400365f0(lVar3,(undefined8 *)(puVar5 + *(int *)(param_2 + 0x2504)), (undefined **)(ulonglong)((iVar4 - *(int *)(param_2 + 0x2504)) + 1),puVar5); uVar2 = (uint7)(CONCAT44(extraout_var,uVar1) >> 8); if (uVar1 != 0) { *(undefined1 *)(param_2 + 0x24c0) = 0; return (ulonglong)uVar2 << 8; } return CONCAT71(uVar2,1); }