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

struct B_TREE_NODE_HDR *__fastcall B_TREE<_SM_PAGE_KEY,ST_STORE::_ST_PAGE_ENTRY,4096,NP_CONTEXT,B_TREE_KEY_COMPARATOR<_SM_PAGE_KEY>>::BTreeFindLeafSibling(
        __int64 a1,
        __int64 a2){
  struct B_TREE_NODE_HDR *LeafSibling; 
  unsigned int v4; 
  unsigned __int64 v5; 
  __int64 v6; 
  signed __int64 v7; 
  void *v8; 
  unsigned int v9; 
  void *v10; 
  __int64 *v11; 
  __int64 *v12; 
  void **v13; 
  __int64 *v14; 
  void **v15; 
  __int64 *v17; 
  __int128 v18; 
  int v19; 
  unsigned int v20; 
  int v21; 
  int v22; 
  LeafSibling = 0i64;
  if( *(_QWORD *)a1 )
  {
    v4 = *(unsigned __int8 *)(*(_QWORD *)a1 + 2i64);
    if( v4 == 1 )
      return LeafSibling;
  }
  else
  {
    v4 = 0;
  }
  v5 = 16i64 * v4;
  v6 = v5 + 15;
  if( v5 + 15 <= v5 )
    v6 = 0xFFFFFFFFFFFFFF0i64;
  v7 = v6 & 0xFFFFFFFFFFFFFFF0ui64;
  v8 = alloca(v7);
  v9 = *(_DWORD *)(a2 + 16);
  v22 = 0;
  v10 = alloca(v7);
  v19 = 0;
  v21 = 1;
  v18 = 0i64;
  v20 = v4;
  v17 = (__int64 *)&v17;
  B_TREE<_SM_PAGE_KEY,ST_STORE::_ST_PAGE_ENTRY,4096,NP_CONTEXT,B_TREE_KEY_COMPARATOR<_SM_PAGE_KEY>>::BTreeSearchKey(
    a1,
    v9,
    (__int64)&v17);
  v11 = (&v17)[2 * v4 - 3];
  v12 = (&v17)[2 * v4 - 4];
  v13 = (void **)(v11 - 1);
  v14 = v12 + 2;
  v15 = (void **)(v12 + 1);
  if( v11 <= v14 )
    v13 = v15;
  LeafSibling = B_TREE<_SM_PAGE_KEY,ST_STORE::_ST_PAGE_ENTRY,4096,NP_CONTEXT,B_TREE_KEY_COMPARATOR<_SM_PAGE_KEY>>::BTreeFindLeafSiblingEx(
                  a1,
                  (__int64)&v17);
  if( v13 && **(_DWORD **)(a1 + 16) != -1 )
    NP_CONTEXT::NpLeafDerefInternal((struct NP_CONTEXT::NP_CTX *)(a1 + 16), v13);
  return LeafSibling;
}

Referenced by:

No references.