/* DBCServer_Release_x64.exe sha256 d9e4fccdf3482e50247686d4452c0b13c75a53efc4bd7320668eece8d1ce828c * Ghidra 12.1.2 decompiler output for 0x1401abab0 FUN_1401abab0 * Pseudocode, not original source. */ void FUN_1401abab0(longlong param_1,undefined8 param_2,longlong param_3,undefined8 param_4) { int iVar1; longlong lVar2; int iVar3; iVar3 = 0; while( true ) { if (iVar3 == *(int *)(param_3 + 0x18)) { return; } if ((iVar3 < 0) || (*(int *)(param_3 + 0x18) <= iVar3)) break; lVar2 = *(longlong *)(param_3 + 0x10); iVar1 = *(int *)(lVar2 + (longlong)iVar3 * 0x48); if ((int)(iVar1 + (iVar1 >> 0x1f & 7U)) >> 3 != 0) { FUN_140193740(*(undefined8 *)(param_1 + 0x148),param_2, "ri.m_unsafeMessage.GetReadOffset() == 0",2); } FUN_1401ab350(param_1,lVar2 + (longlong)iVar3 * 0x48,param_2,param_4); if (*(int *)(param_3 + 0x18) <= iVar3) { /* WARNING: Subroutine does not return */ FUN_14016d6e0(); } iVar3 = iVar3 + 1; } /* WARNING: Subroutine does not return */ FUN_14016d6e0(); }