server-re/decomp/Agent_Release_x64/full/functions/0x1400d9a6c.c
2026-10-14 16:45:19 -04:00

28 lines
817 B
C

/* Agent_Release_x64.exe sha256 6f2be7b8eb799ba51b359d1958720aac5baee5b7ee0d1d36684d3cbd72d45469
* Ghidra 12.1.2 decompiler output for 0x1400d9a6c FUN_1400d9a6c
* Pseudocode, not original source. */
uint FUN_1400d9a6c(uint param_1,uint param_2,uint param_3)
{
uint uVar1;
uint uVar2;
uint uVar3;
uVar1 = (param_1 & 0xffff) + 0xfff0 + (param_2 & 0xffff);
uVar3 = (param_1 & 0xffff) * (param_3 % 0xfff1);
uVar3 = uVar3 + 0xfff1 +
(((param_1 >> 0x10) + (uVar3 / 0xfff1) * -0xfff1 + (param_2 >> 0x10)) - param_3 % 0xfff1);
uVar2 = uVar1;
if ((0xfff1 < uVar1) && (uVar2 = uVar1 - 0xfff1, 0xfff1 < uVar2)) {
uVar2 = uVar1 - 0x1ffe2;
}
if (0x1ffe2 < uVar3) {
uVar3 = uVar3 - 0x1ffe2;
}
if (0xfff1 < uVar3) {
uVar3 = uVar3 - 0xfff1;
}
return uVar3 << 0x10 | uVar2;
}