VfKeIrqlTransitionReserveLogEntry
_VI_TRACK_IRQL *__fastcall VfKeIrqlTransitionReserveLogEntry(UINT8 OldIrql, UINT8 NewIrql){
_VI_TRACK_IRQL *v2;
v2 = 0i64;
if( ViTrackIrqlQueue )
{
if( ViKeTrackIrqlDisabled )
{
_InterlockedIncrement(&ViKeTrackIrqlSkipped);
}
else
{
v2 = (_VI_TRACK_IRQL *)((char *)ViTrackIrqlQueue
+ 56
* (_InterlockedIncrement(&ViTrackIrqlIndex) & (unsigned int)(ViTrackIrqlQueueLength - 1)));
v2->OldIrql = OldIrql;
v2->NewIrql = NewIrql;
v2->Processor = *((_DWORD *)KeGetPcr() + 105);
}
}
return v2;
}Referenced by:
VerifierExAcquireFastMutex
VerifierExAcquireFastMutexNoReboot
ViExReleaseFastMutexCommon
ViExTryToAcquireFastMutexCommon
ViKeLowerIrqlSanityChecks
ViKeRaiseIrqlSanityChecks