ST_STORE::StDmCombinePageEntry

_DWORD *__fastcall ST_STORE::StDmCombinePageEntry(__int64 a1, __int64 a2){
  unsigned int v2; 
  _DWORD *v3; 
  __int64 v6; 
  __int64 v7; 
  _DWORD *v8; 
  v2 = *(_DWORD *)(a2 + 4);
  v3 = (_DWORD *)(a1 + 192);
  while( 1 )
  {
    v6 = v2 >> v3[66];
    _BitScanReverse((unsigned int *)&v7, v6);
    v8 = (_DWORD *)((unsigned int)v3[70]
                  + v3[68] * (v2 & v3[67])
                  + *(_QWORD *)(*(_QWORD *)&v3[2 * v7] + 16 * (v6 ^ (unsigned int)(1 << v7))));
    if( *v8 != -1 )
      break;
    v2 = v8[1];
    ST_STORE::StDmPageRecordUnprotect(a1, (__int64)v8);
    SmHpChunkFree(v3, (UINT64)v8);
    --*(_DWORD *)(a1 + 1896);
  }
  if( *(_DWORD *)(a2 + 4) != v2 )
    *(_DWORD *)(a2 + 4) = v2;
  return v8;
}

Referenced by:

No references.