/* MessageServer_Release_x64.exe sha256 7911b15c4379625eaa12ff227708aa3a033bc6ac2cf6b34283136e3a62df25f1 * Ghidra 12.1.2 decompiler output for 0x1400d1a90 FUN_1400d1a90 * Pseudocode, not original source. */ void FUN_1400d1a90(wchar_t *param_1) { double dVar1; char *pcVar2; undefined1 *puVar3; double dVar4; double dVar5; double dVar6; if (*(longlong *)(param_1 + 0x3a8) != 0) { dVar5 = *(double *)(*(longlong *)(param_1 + 0x3a8) + 8); dVar4 = (double)(**(code **)(*(longlong *)(*(longlong *)(param_1 + 0x11c) + 0x118) + 8))(); pcVar2 = *(char **)(param_1 + 0x3a8); if (*(double *)(pcVar2 + 0x10) == 0.0) { *(double *)(pcVar2 + 0x10) = dVar4; *(double *)(*(longlong *)(param_1 + 0x3a8) + 8) = dVar4; return; } if (*pcVar2 == '\0') { dVar1 = *(double *)(*(longlong *)(param_1 + 0x11c) + 0x17f8); dVar6 = 0.9; if ((dVar1 <= 0.9) && (dVar6 = dVar1, dVar1 < 0.2)) { dVar6 = 0.2; } dVar5 = dVar4 - dVar5; *(double *)(*(longlong *)(param_1 + 0x3a8) + 0x18) = (*(double *)(*(longlong *)(param_1 + 0x3a8) + 0x18) - dVar5) * dVar6 + dVar5; puVar3 = *(undefined1 **)(param_1 + 0x3a8); if ((5.8999999999999995 < dVar4 - *(double *)(puVar3 + 0x10)) && (*(double *)(puVar3 + 0x18) <= 0.413 && *(double *)(puVar3 + 0x18) != 0.413)) { *puVar3 = 1; } if (**(char **)(param_1 + 0x3a8) != '\0') { FUN_14009b0d0(*(longlong **)(param_1 + 0x11c),param_1,"Speedhack",1); } *(double *)(*(longlong *)(param_1 + 0x3a8) + 8) = dVar4; } } return; }