MmWaitForCacheManagerPrefetch
NTSTATUS __stdcall MmWaitForCacheManagerPrefetch(_SINGLE_LIST_ENTRY *OpaqueWaitBlock){
CHAR v1;
int Next;
_SINGLE_LIST_ENTRY *v3;
NTSTATUS v4;
_SINGLE_LIST_ENTRY *v5;
int v6;
int v7;
UINT64 v8;
Next = (int)OpaqueWaitBlock[13].Next;
v3 = OpaqueWaitBlock;
v4 = 0;
do
{
v5 = v3->Next;
MiPfCompletePrefetchIos((_LIST_ENTRY *)&v3[15], 0i64, 0i64, v1);
v7 = v6;
MiReleaseReadListResources((_MI_READ_LIST *)v3, v8);
ExFreePoolWithTag(v3, 0);
v3 = v5;
if( v7 < 0 )
v4 = v7;
}
while( v5 );
if( (Next & 1) != 0 )
KiLeaveGuardedRegionUnsafe((__int64)KeGetCurrentThread());
return v4;
}Referenced by:
CcPerformReadAhead