server-re/decomp/AgentManager_Release_x64/full/functions/0x1400ea77c.c
2026-10-15 09:58:24 -04:00

28 lines
824 B
C

/* AgentManager_Release_x64.exe sha256 8fd8ca91725858651a7839d34257b10c2970ac16c97e60c523b8b0c983fcb186
* Ghidra 12.1.2 decompiler output for 0x1400ea77c FUN_1400ea77c
* Pseudocode, not original source. */
uint FUN_1400ea77c(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;
}