/* MessageServer_Release_x64.exe sha256 7911b15c4379625eaa12ff227708aa3a033bc6ac2cf6b34283136e3a62df25f1 * Ghidra 12.1.2 decompiler output for 0x14007fe60 FUN_14007fe60 * Pseudocode, not original source. */ longlong FUN_14007fe60(longlong param_1,uint param_2) { longlong *plVar1; uint *puVar2; ulonglong uVar3; plVar1 = (longlong *)(param_1 + -0x120); if (DAT_1401b42cf != '\0') { (**(code **)(*plVar1 + 200))(plVar1); } if (param_2 == 1) { if (plVar1 != (longlong *)0x0) { return param_1 + -0xa8; } } else { uVar3 = (ulonglong)param_2 % (ulonglong)*(uint *)(param_1 + 0xb80); if (*(longlong *)(param_1 + 0xb60) != 0) { puVar2 = *(uint **)(*(longlong *)(param_1 + 0xb60) + uVar3 * 8); while( true ) { if (puVar2 == (uint *)0x0) { return 0; } if ((uint)uVar3 != puVar2[8] % *(uint *)(param_1 + 0xb80)) { return 0; } if (*puVar2 == param_2) break; puVar2 = *(uint **)(puVar2 + 4); } if (*(longlong *)(puVar2 + 2) != 0) { return *(longlong *)(puVar2 + 2) + 8; } } } return 0; }