/* MessageServer_Release_x64.exe sha256 7911b15c4379625eaa12ff227708aa3a033bc6ac2cf6b34283136e3a62df25f1 * Ghidra 12.1.2 decompiler output for 0x1400fde60 FUN_1400fde60 * Pseudocode, not original source. */ /* WARNING: Globals starting with '_' overlap smaller symbols at the same address */ void FUN_1400fde60(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_1401ae2a8 < 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_1401ae2b8 * 0.2 < dVar3 - (double)param_1[1]) { FUN_1400fdb30(param_1,param_2,param_3,param_4); param_1[1] = (longlong)dVar3; } return; }