/* MessageServer_Release_x64.exe sha256 7911b15c4379625eaa12ff227708aa3a033bc6ac2cf6b34283136e3a62df25f1 * Ghidra 12.1.2 decompiler output for 0x1400b2dd0 FUN_1400b2dd0 * Pseudocode, not original source. */ undefined8 FUN_1400b2dd0(char *param_1,ushort *param_2,longlong *param_3) { uint uVar1; ulonglong uVar2; ushort *puVar3; undefined8 uVar4; uVar1 = *(uint *)(param_1 + 0x28); uVar2 = (ulonglong)*param_2 % (ulonglong)uVar1; if (*(longlong *)(param_1 + 8) != 0) { for (puVar3 = *(ushort **)(*(longlong *)(param_1 + 8) + uVar2 * 8); (puVar3 != (ushort *)0x0 && ((uint)uVar2 == *(uint *)(puVar3 + 0x10) % uVar1)); puVar3 = *(ushort **)(puVar3 + 8)) { if (*puVar3 == *param_2) { return (ulonglong)*(uint *)(puVar3 + 0x10) / (ulonglong)uVar1 & 0xffffff00; } } } puVar3 = FUN_1400b1b30(param_1,param_2); uVar4 = FUN_1400a2a80((longlong *)puVar3,param_3); return CONCAT71((int7)((ulonglong)uVar4 >> 8),1); }