40 lines
1.2 KiB
C
40 lines
1.2 KiB
C
/* MessageServer_Release_x64.exe sha256 7911b15c4379625eaa12ff227708aa3a033bc6ac2cf6b34283136e3a62df25f1
|
|
* Ghidra 12.1.2 decompiler output for 0x1400ddee0 FUN_1400ddee0
|
|
* Pseudocode, not original source. */
|
|
|
|
ulonglong FUN_1400ddee0(longlong param_1,int param_2,undefined8 param_3,int param_4)
|
|
|
|
{
|
|
int iVar1;
|
|
ulonglong in_RAX;
|
|
undefined8 uVar2;
|
|
longlong lVar3;
|
|
int iVar4;
|
|
ulonglong uVar5;
|
|
longlong lVar6;
|
|
|
|
iVar1 = *(int *)(param_1 + 0x18);
|
|
uVar5 = 0;
|
|
lVar6 = 0;
|
|
if (0 < iVar1) {
|
|
in_RAX = 0;
|
|
lVar3 = param_1;
|
|
do {
|
|
if ((lVar6 < 0) || (iVar4 = (int)uVar5, iVar1 <= iVar4)) {
|
|
/* WARNING: Subroutine does not return */
|
|
FUN_14006be30(lVar3,uVar5,param_3,param_1);
|
|
}
|
|
lVar3 = *(longlong *)(param_1 + 0x10);
|
|
if (((*(int *)(in_RAX + 4 + lVar3) == param_2) && (*(int *)(in_RAX + lVar3) == (int)param_3))
|
|
&& (*(int *)(in_RAX + 8 + lVar3) == param_4)) {
|
|
uVar2 = FUN_14007afc0(param_1,iVar4,1,param_1);
|
|
return CONCAT71((int7)((ulonglong)uVar2 >> 8),1);
|
|
}
|
|
uVar5 = (ulonglong)(iVar4 + 1U);
|
|
lVar6 = lVar6 + 1;
|
|
in_RAX = in_RAX + 0x18;
|
|
} while ((int)(iVar4 + 1U) < iVar1);
|
|
}
|
|
return in_RAX & 0xffffffffffffff00;
|
|
}
|
|
|