39 lines
1.1 KiB
C
39 lines
1.1 KiB
C
/* DBCServer_Release_x64.exe sha256 d9e4fccdf3482e50247686d4452c0b13c75a53efc4bd7320668eece8d1ce828c
|
|
* Ghidra 12.1.2 decompiler output for 0x1401c1c60 FUN_1401c1c60
|
|
* Pseudocode, not original source. */
|
|
|
|
ulonglong FUN_1401c1c60(longlong param_1,int param_2,int param_3)
|
|
|
|
{
|
|
int iVar1;
|
|
longlong lVar2;
|
|
ulonglong in_RAX;
|
|
uint uVar3;
|
|
ulonglong uVar4;
|
|
ulonglong uVar5;
|
|
ulonglong uVar6;
|
|
|
|
uVar4 = 0;
|
|
iVar1 = *(int *)(param_1 + 0x18);
|
|
uVar5 = uVar4;
|
|
uVar6 = uVar4;
|
|
if (0 < iVar1) {
|
|
do {
|
|
if (((longlong)uVar5 < 0) || (iVar1 <= (int)uVar4)) {
|
|
/* WARNING: Subroutine does not return */
|
|
FUN_14016d6e0();
|
|
}
|
|
lVar2 = *(longlong *)(param_1 + 0x10);
|
|
in_RAX = *(ulonglong *)(uVar6 + 0x10 + lVar2);
|
|
if ((*(int *)(uVar6 + lVar2) == param_2) && (*(int *)(uVar6 + 8 + lVar2) == param_3)) {
|
|
return CONCAT71((int7)(in_RAX >> 8),1);
|
|
}
|
|
uVar3 = (int)uVar4 + 1;
|
|
uVar4 = (ulonglong)uVar3;
|
|
uVar5 = uVar5 + 1;
|
|
uVar6 = uVar6 + 0x18;
|
|
} while ((int)uVar3 < iVar1);
|
|
}
|
|
return in_RAX & 0xffffffffffffff00;
|
|
}
|
|
|