server-re/decomp/DBCServer_Release_x64/full/functions/0x14019b4e0.c

40 lines
1.4 KiB
C

/* DBCServer_Release_x64.exe sha256 d9e4fccdf3482e50247686d4452c0b13c75a53efc4bd7320668eece8d1ce828c
* Ghidra 12.1.2 decompiler output for 0x14019b4e0 FUN_14019b4e0
* Pseudocode, not original source. */
void FUN_14019b4e0(longlong *param_1,longlong *param_2)
{
int iVar1;
undefined1 local_98 [72];
undefined1 local_50 [80];
iVar1 = (int)param_1[1];
if (*(int *)((longlong)param_2 + 0xc) < iVar1) {
/* WARNING: Subroutine does not return */
FUN_14016d6b0();
}
if (*param_1 == 0) {
FUN_14016d300(local_50,PTR_u_ArrayWithExternalBuffer_is_unini_1403440d0);
/* WARNING: Subroutine does not return */
_CxxThrowException(local_50,(ThrowInfo *)&DAT_1403417f8);
}
if (*param_2 == 0) {
FUN_14016d300(local_98,PTR_u_ArrayWithExternalBuffer_is_unini_1403440d0);
/* WARNING: Subroutine does not return */
_CxxThrowException(local_98,(ThrowInfo *)&DAT_1403417f8);
}
if ((-1 < iVar1) && (iVar1 <= *(int *)((longlong)param_2 + 0xc))) {
*(int *)(param_2 + 1) = iVar1;
if (*param_1 == 0) {
FUN_14016d300(local_98,PTR_u_ArrayWithExternalBuffer_is_unini_1403440d0);
/* WARNING: Subroutine does not return */
_CxxThrowException(local_98,(ThrowInfo *)&DAT_1403417f8);
}
FUN_14004f1a0(*param_2,*param_1,(longlong)(int)param_1[1] << 4);
return;
}
/* WARNING: Subroutine does not return */
FUN_14016d6b0();
}