VfFastIoCheckState
VOID __stdcall VfFastIoCheckState(VOID *State, VOID *FastIoRoutine){
ULONG_PTR v2;
char v4;
ULONG_PTR v5;
UINT64 v6;
v2 = (unsigned int)FastIoRoutine;
if( (MmVerifierData & 0x10) != 0 )
{
KeAreInterruptsEnabled((CHAR)State, FastIoRoutine);
if( !v4 )
VerifierBugCheckIfAppropriate(0xC4ui64, 0xC3u, v2, 0, 0, v6);
}
if( (MmVerifierData & 0x10) != 0 )
{
v5 = *(unsigned __int8 *)State;
if( (_BYTE)v5 != KeGetCurrentIrql() )
VerifierBugCheckIfAppropriate(0xC9ui64, 0x11u, v2, v5, KeGetCurrentIrql(), v6);
}
if( (MmVerifierData & 0x10) != 0 && *((_DWORD *)State + 1) != KeGetCurrentThread()->WaitBlock[3].SpareLong )
VerifierBugCheckIfAppropriate(
0xC4ui64,
0xC6u,
v2,
KeGetCurrentThread()->CombinedApcDisable,
*((_DWORD *)State + 1),
v6);
ExFreeToNPagedLookasideList(&ViIoCallbackStateLookaside, State);
}Referenced by:
IopCloseFile
IopCompleteUnloadOrDelete
IopGetBasicInformationFile
IopParseDevice
IopQueryInformation
IopXxxControlFile
NtLockFile
NtQueryInformationFile
NtReadFile
NtUnlockFile
NtWriteFile