VfCheckPoolType
VOID __stdcall VfCheckPoolType(_POOL_TYPE PoolType, PVOID CallerAddress, UINT64 PoolTag){
UINT64 Param4;
UINT64 v5;
const CHAR *v6;
if( (MmVerifierData & 0x2000000) != 0 && (PoolType & 1) == 0 && (PoolType & 0x200) == 0 )
{
Param4 = (unsigned int)PoolTag;
v5 = PoolType;
v6 = "The caller 0x%p specified an executable pool type 0x%x.";
if( (_DWORD)PoolTag )
v6 = "The caller 0x%p specified an executable pool type 0x%x(tag 0x%x).";
ViCiPreprocessOptions(&byte_140C12C90, v6, 0x2000ui64, (UINT64)CallerAddress, PoolType, (unsigned int)PoolTag);
VfReportIssueWithOptions(0xC4ui64, 0x2000ui64, (UINT64)CallerAddress, v5, Param4, &byte_140C12C90);
if( (MmVerifierData & 0x1000) != 0 )
ViTargetIncrementCounter(CallerAddress, 0x110ui64);
_InterlockedIncrement(&dword_140C2A6B0);
}
}Referenced by:
VerifierExAllocateCacheAwareRundownProtection
VerifierExAllocatePool
VerifierExAllocatePool2
VerifierExAllocatePool3
VerifierExAllocatePoolEx
VerifierExAllocatePoolWithQuota
VerifierExAllocatePoolWithQuotaTag
VerifierExAllocatePoolWithTag
VerifierExAllocatePoolWithTagPriority
VerifierExInitializeLookasideListEx
VerifierExInitializeNPagedLookasideList
VfCheckNxPoolType