/* Agent_Release_x64.exe sha256 6f2be7b8eb799ba51b359d1958720aac5baee5b7ee0d1d36684d3cbd72d45469 * Ghidra 12.1.2 decompiler output for 0x1400db6f8 FUN_1400db6f8 * Pseudocode, not original source. */ /* WARNING: Function: __security_check_cookie replaced with injection: security_check_cookie */ void FUN_1400db6f8(longlong param_1,int param_2,longlong param_3) { ushort uVar1; uint uVar2; ushort uVar3; longlong lVar4; longlong lVar5; undefined1 auStack_58 [32]; ushort auStack_38 [16]; ulonglong local_18; local_18 = DAT_1401555a0 ^ (ulonglong)auStack_58; lVar5 = 0; uVar3 = 0; lVar4 = 1; do { uVar3 = (uVar3 + *(short *)(param_3 + -2 + lVar4 * 2)) * 2; auStack_38[lVar4] = uVar3; lVar4 = lVar4 + 1; } while (lVar4 < 0x10); lVar4 = (longlong)param_2; if (-1 < param_2) { do { uVar3 = *(ushort *)(param_1 + 2 + lVar5 * 4); if (uVar3 != 0) { uVar1 = auStack_38[uVar3]; auStack_38[uVar3] = uVar1 + 1; uVar2 = FUN_1400db4c8((uint)uVar1,(uint)uVar3); *(short *)(param_1 + lVar5 * 4) = (short)uVar2; } lVar5 = lVar5 + 1; } while (lVar5 <= lVar4); } return; }