/* MessageServer_Release_x64.exe sha256 7911b15c4379625eaa12ff227708aa3a033bc6ac2cf6b34283136e3a62df25f1 * Ghidra 12.1.2 decompiler output for 0x1400b5ca0 FUN_1400b5ca0 * Pseudocode, not original source. */ undefined8 FUN_1400b5ca0(char *param_1,uint *param_2,longlong *param_3) { uint uVar1; ulonglong uVar2; uint *puVar3; undefined8 uVar4; uVar1 = *(uint *)(param_1 + 0x28); uVar2 = (ulonglong)*param_2 % (ulonglong)uVar1; if (*(longlong *)(param_1 + 8) != 0) { for (puVar3 = *(uint **)(*(longlong *)(param_1 + 8) + uVar2 * 8); (puVar3 != (uint *)0x0 && ((uint)uVar2 == puVar3[8] % uVar1)); puVar3 = *(uint **)(puVar3 + 4)) { if (*puVar3 == *param_2) { return (ulonglong)puVar3[8] / (ulonglong)uVar1 & 0xffffff00; } } } puVar3 = FUN_1400b1ac0(param_1,param_2); uVar4 = FUN_1400b2ed0((longlong *)puVar3,param_3); return CONCAT71((int7)((ulonglong)uVar4 >> 8),1); }