/* MessageServer_Release_x64.exe sha256 7911b15c4379625eaa12ff227708aa3a033bc6ac2cf6b34283136e3a62df25f1 * Ghidra 12.1.2 decompiler output for 0x1400d5b10 FUN_1400d5b10 * Pseudocode, not original source. */ uint * FUN_1400d5b10(char *param_1,uint *param_2,undefined8 *param_3) { uint uVar1; ulonglong uVar2; uint *puVar3; uint uVar4; uVar1 = *param_2; uVar2 = (ulonglong)uVar1 % (ulonglong)*(uint *)(param_1 + 0x28); uVar4 = (uint)uVar2; if (*(longlong *)(param_1 + 8) != 0) { for (puVar3 = *(uint **)(*(longlong *)(param_1 + 8) + uVar2 * 8); (puVar3 != (uint *)0x0 && (uVar4 == puVar3[8] % *(uint *)(param_1 + 0x28))); puVar3 = *(uint **)(puVar3 + 4)) { if (*puVar3 == uVar1) { *(undefined8 *)(puVar3 + 2) = *param_3; return puVar3; } } } puVar3 = FUN_1400d5440(param_1,param_2,uVar4,uVar1); *(undefined8 *)(puVar3 + 2) = *param_3; return puVar3; }