B_TREE<_SM_PAGE_KEY,ST_STORE::_ST_PAGE_ENTRY,4096,NP_CONTEXT,B_TREE_KEY_COMPARATOR<_SM_PAGE_KEY>>::BTreeFindNextEntry

__int64 __fastcall B_TREE<_SM_PAGE_KEY,ST_STORE::_ST_PAGE_ENTRY,4096,NP_CONTEXT,B_TREE_KEY_COMPARATOR<_SM_PAGE_KEY>>::BTreeFindNextEntry(
        __int64 a1,
        __int64 a2){
  int v2; 
  __int64 v3; 
  __int64 v5; 
  int v6; 
  unsigned __int64 v7; 
  __int64 v9; 
  struct B_TREE_NODE_HDR *LeafSibling; 
  v2 = *(_DWORD *)(a2 + 24);
  v3 = 0i64;
  if( v2 )
  {
    v5 = *(_QWORD *)a2 + 16i64 * (unsigned int)(v2 - 1);
    *(_QWORD *)(v5 + 8) += 8i64;
    v6 = **(_DWORD **)v5;
    v7 = *(_QWORD *)v5 + 8 * ((unsigned __int16)v6 + 2i64);
    if( *(_QWORD *)(v5 + 8) >= v7 )
    {
      v9 = *(_QWORD *)v5 + 16i64;
      if( (_WORD)v6 )
        v9 = v7 - 8;
      *(_QWORD *)(v5 + 8) = v9;
      LeafSibling = B_TREE<_SM_PAGE_KEY,ST_STORE::_ST_PAGE_ENTRY,4096,NP_CONTEXT,B_TREE_KEY_COMPARATOR<_SM_PAGE_KEY>>::BTreeFindLeafSiblingEx(
                      a1,
                      a2);
      if( LeafSibling )
      {
        v3 = -1i64;
        if( LeafSibling != (struct B_TREE_NODE_HDR *)-1i64 )
        {
          v3 = (__int64)LeafSibling + 16;
          *(_QWORD *)(v5 + 8) = (char *)LeafSibling + 16;
        }
      }
    }
    else
    {
      return *(_QWORD *)(v5 + 8);
    }
  }
  return v3;
}

Referenced by:

No references.