/* DBCServer_Release_x64.exe sha256 d9e4fccdf3482e50247686d4452c0b13c75a53efc4bd7320668eece8d1ce828c * Ghidra 12.1.2 decompiler output for 0x1401b5720 FUN_1401b5720 * Pseudocode, not original source. */ void FUN_1401b5720(char *param_1) { longlong lVar1; longlong lVar2; longlong lVar3; int iVar4; undefined1 local_58 [88]; if (*param_1 != '\0') { iVar4 = 0; if ((*(longlong *)(param_1 + 0x20) != 0) && (*(longlong *)(param_1 + 8) == 0)) { FUN_14016d300(local_58,L"CFastMap consistency error #0!"); /* WARNING: Subroutine does not return */ _CxxThrowException(local_58,(ThrowInfo *)&DAT_1403417f8); } lVar1 = *(longlong *)(param_1 + 0x10); lVar3 = lVar1; while (lVar3 != 0) { lVar2 = *(longlong *)(lVar3 + 0x18); if ((lVar2 != 0) && (*(longlong *)(lVar2 + 0x20) != lVar3)) { FUN_14016d300(local_58,L"CFastMap consistency error #1!"); /* WARNING: Subroutine does not return */ _CxxThrowException(local_58,(ThrowInfo *)&DAT_1403417f8); } if ((lVar3 == lVar1) && (*(longlong *)(lVar3 + 0x20) != 0)) { FUN_14016d300(local_58,L"CFastMap consistency error #2!"); /* WARNING: Subroutine does not return */ _CxxThrowException(local_58,(ThrowInfo *)&DAT_1403417f8); } if ((lVar3 == *(longlong *)(param_1 + 0x18)) && (lVar2 != 0)) { FUN_14016d300(local_58,L"CFastMap consistency error #3!"); /* WARNING: Subroutine does not return */ _CxxThrowException(local_58,(ThrowInfo *)&DAT_1403417f8); } iVar4 = iVar4 + 1; lVar3 = lVar2; } if (iVar4 != *(int *)(param_1 + 0x20)) { for (; lVar1 != 0; lVar1 = *(longlong *)(lVar1 + 0x18)) { } FUN_14016d300(local_58,L"CFastMap consistency error #4!"); /* WARNING: Subroutine does not return */ _CxxThrowException(local_58,(ThrowInfo *)&DAT_1403417f8); } } return; }