/* DBCServer_Release_x64.exe sha256 d9e4fccdf3482e50247686d4452c0b13c75a53efc4bd7320668eece8d1ce828c * Ghidra 12.1.2 decompiler output for 0x1401c30d0 FUN_1401c30d0 * Pseudocode, not original source. */ longlong * FUN_1401c30d0(longlong *param_1,longlong *param_2) { undefined4 uVar1; longlong lVar2; int iVar3; undefined8 uVar4; undefined1 local_50 [72]; uVar4 = 0xfffffffffffffffe; if (param_1[1] != 0) { FUN_14016d300(local_50,PTR_u_exception_due_to_using_external_b_140344018); /* WARNING: Subroutine does not return */ _CxxThrowException(local_50,(ThrowInfo *)&DAT_1403417f8); } param_2[2] = 0; param_2[1] = 0; *param_2 = 0; if (*param_1 != 0) { FUN_14016ab90(param_2); if (*param_1 == 0) { if (param_1[1] == 0) { /* WARNING: Subroutine does not return */ FUN_14016d1e0(); } iVar3 = (int)param_1[2]; } else { iVar3 = *(int *)(*param_1 + 0x18); } if (iVar3 < 0) { /* WARNING: Subroutine does not return */ FUN_14016d6b0(); } if (param_2[1] == 0) { lVar2 = *param_2; if (iVar3 < 1) { if (lVar2 == 0) goto LAB_1401c3198; iVar3 = 0; } else if (lVar2 == 0) { /* WARNING: Subroutine does not return */ FUN_14016d1e0(); } FUN_14004f0e0(lVar2,iVar3); } else { if (*(int *)((longlong)param_2 + 0x14) < iVar3) { /* WARNING: Subroutine does not return */ FUN_14016d6b0(); } *(int *)(param_2 + 2) = iVar3; } LAB_1401c3198: if (*param_1 != 0) { uVar1 = *(undefined4 *)(*param_1 + 0x18); goto LAB_1401c31b7; } } if (param_1[1] == 0) { /* WARNING: Subroutine does not return */ FUN_14016d1e0(); } uVar1 = (undefined4)param_1[2]; LAB_1401c31b7: FUN_1401c2e90(param_1,param_2,0,uVar1,uVar4); return param_2; }