/* MessageServer_Release_x64.exe sha256 7911b15c4379625eaa12ff227708aa3a033bc6ac2cf6b34283136e3a62df25f1 * Ghidra 12.1.2 decompiler output for 0x14008f9e0 FUN_14008f9e0 * Pseudocode, not original source. */ int * FUN_14008f9e0(char *param_1,int *param_2) { int *piVar1; ulonglong uVar2; undefined8 *puVar3; uint uVar4; uint uVar5; uVar4 = *param_2 << 0x10 ^ param_2[1]; uVar2 = (ulonglong)uVar4 % (ulonglong)*(uint *)(param_1 + 0x28); uVar5 = (uint)uVar2; if (*(longlong *)(param_1 + 8) != 0) { for (piVar1 = *(int **)(*(longlong *)(param_1 + 8) + uVar2 * 8); (piVar1 != (int *)0x0 && (uVar5 == (uint)piVar1[8] % *(uint *)(param_1 + 0x28))); piVar1 = *(int **)(piVar1 + 4)) { if ((*piVar1 == *param_2) && (piVar1[1] == param_2[1])) { return piVar1 + 2; } } } puVar3 = FUN_14008efa0(param_1,(undefined8 *)param_2,uVar5,uVar4); return (int *)(puVar3 + 1); }