CcShouldLazyWriteCacheMap
VOID __fastcall CcShouldLazyWriteCacheMap(
UINT64 *SharedCacheMap,
UINT64 PagesToWrite,
INT64 a3,
INT64 a4,
_FILE_OBJECT *FileObject,
UINT64 ReasonForFlush){
int v8;
int v10;
int v12;
UINT8 *Partition;
v8 = *((_DWORD *)SharedCacheMap + 38);
if( (v8 & 0x400820) == 0 && (v8 & 0x10000) == 0 && !*((_DWORD *)SharedCacheMap + 129) )
{
v10 = *((_DWORD *)SharedCacheMap + 1);
if( (v10 || *((_DWORD *)SharedCacheMap + 28) && SharedCacheMap[1]) && (v8 & 0x40000000) == 0 )
{
if( *((_DWORD *)SharedCacheMap + 28) )
{
if( PagesToWrite )
{
v12 = *((_DWORD *)SharedCacheMap + 67) + 1;
*((_DWORD *)SharedCacheMap + 67) = v12;
if( (v8 & 0x1000000) == 0 && (v8 & 0x200) == 0 && (*(_DWORD *)(a3 + 80) & 0x8000) != 0 )
{
if( v10 )
{
Partition = (UINT8 *)CcGetPartition(SharedCacheMap);
CcCanIWriteStreamEx(Partition, a3, 0x1000000ui64, 0i64, 8, 0i64);
}
}
}
}
}
}
}Referenced by:
CcLazyWriteScan