/* Agent_Release_x64.exe sha256 6f2be7b8eb799ba51b359d1958720aac5baee5b7ee0d1d36684d3cbd72d45469 * Ghidra 12.1.2 decompiler output for 0x1400c1440 FUN_1400c1440 * Pseudocode, not original source. */ /* WARNING: Globals starting with '_' overlap smaller symbols at the same address */ void FUN_1400c1440(longlong *param_1,undefined8 param_2,ulonglong param_3,undefined8 param_4) { double dVar1; longlong lVar2; double dVar3; dVar3 = (double)(**(code **)(**(longlong **)*param_1 + 0x18))(); if ((double)param_1[0x16] == 0.0) { param_1[0x16] = (longlong)dVar3; } dVar1 = (double)param_1[0x16]; if (_DAT_1401572a8 < dVar3 - dVar1) { lVar2 = param_1[0x15]; param_1[0x16] = (longlong)dVar3; *(undefined4 *)(param_1 + 0x15) = 0; *(int *)(param_1 + 0x17) = (int)(((double)(int)lVar2 - (double)(int)param_1[0x17]) * (0.1 / (dVar3 - dVar1)) + (double)(int)param_1[0x17]); } if (DAT_1401572b8 * 0.2 < dVar3 - (double)param_1[1]) { FUN_1400c1110(param_1,param_2,param_3,param_4); param_1[1] = (longlong)dVar3; } return; }