61 lines
1.8 KiB
C
61 lines
1.8 KiB
C
/* DBCServer_Release_x64.exe sha256 d9e4fccdf3482e50247686d4452c0b13c75a53efc4bd7320668eece8d1ce828c
|
|
* Ghidra 12.1.2 decompiler output for 0x1401c8f90 FUN_1401c8f90
|
|
* Pseudocode, not original source. */
|
|
|
|
void FUN_1401c8f90(longlong param_1,longlong param_2)
|
|
|
|
{
|
|
undefined4 uVar1;
|
|
undefined4 uVar2;
|
|
int iVar3;
|
|
longlong lVar4;
|
|
longlong lVar5;
|
|
int iVar6;
|
|
longlong lVar7;
|
|
longlong lVar8;
|
|
int iVar9;
|
|
longlong lVar10;
|
|
longlong lVar11;
|
|
|
|
FUN_14016add0(param_2,0);
|
|
iVar3 = *(int *)(param_1 + 0x18);
|
|
iVar9 = 0;
|
|
lVar10 = 0;
|
|
if (0 < iVar3) {
|
|
lVar11 = 0;
|
|
do {
|
|
if ((lVar10 < 0) || (iVar3 <= iVar9)) {
|
|
/* WARNING: Subroutine does not return */
|
|
FUN_14016d6e0();
|
|
}
|
|
iVar3 = *(int *)(param_2 + 0x18);
|
|
uVar1 = *(undefined4 *)(lVar11 + 8 + *(longlong *)(param_1 + 0x10));
|
|
uVar2 = *(undefined4 *)(*(longlong *)(lVar11 + *(longlong *)(param_1 + 0x10)) + 0x56c);
|
|
if (iVar3 < 0) {
|
|
/* WARNING: Subroutine does not return */
|
|
FUN_14016d6b0();
|
|
}
|
|
iVar6 = *(int *)(param_2 + 0x18);
|
|
FUN_14016add0(param_2,iVar6 + 1);
|
|
iVar6 = iVar6 - iVar3;
|
|
if ((0 < iVar6) && (iVar6 = iVar6 + -1, lVar8 = (longlong)iVar6, -1 < iVar6)) {
|
|
lVar7 = (lVar8 + iVar3) * 8 + 8;
|
|
do {
|
|
lVar4 = FUN_14016ab80(param_2);
|
|
lVar5 = FUN_14016ab80(param_2);
|
|
*(undefined8 *)(lVar5 + lVar7) = *(undefined8 *)(lVar4 + -8 + lVar7);
|
|
lVar7 = lVar7 + -8;
|
|
lVar8 = lVar8 + -1;
|
|
} while (-1 < lVar8);
|
|
}
|
|
lVar8 = FUN_14016ab80(param_2);
|
|
*(ulonglong *)(lVar8 + (longlong)iVar3 * 8) = CONCAT44(uVar1,uVar2);
|
|
iVar3 = *(int *)(param_1 + 0x18);
|
|
iVar9 = iVar9 + 1;
|
|
lVar10 = lVar10 + 1;
|
|
lVar11 = lVar11 + 0x10;
|
|
} while (iVar9 < iVar3);
|
|
}
|
|
return;
|
|
}
|
|
|