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

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

Referenced by:

No references.