VerifierPortExAllocatePoolWithQuotaTag
VOID *__stdcall VerifierPortExAllocatePoolWithQuotaTag(
POOL_TYPE PoolType,
UINT64 NumberOfBytes,
UINT64 Tag,
VOID *CallerAddress){
unsigned int v5;
__int64 v8;
UINT64 v10;
v5 = Tag;
if( (MmVerifierData & 8) != 0 )
{
if( KeGetCurrentThread()->ApcState.Process == *(_EPROCESS **)&PsIdleProcess )
VerifierBugCheckIfAppropriate(0xC4ui64, 0x10Au, 0, 0, 0, v10);
if( (KeGetPcr()->Prcb.DpcRequestSummary & 1) != 0 )
VerifierBugCheckIfAppropriate(0xC4ui64, 0x10Bu, 0, 0, 0, v10);
}
v8 = PoolType & 0xFFFFFFF7;
if( (PoolType & 8) == 0 )
v8 = (unsigned int)PoolType;
if( (MmVerifierData & 0x400000) != 0 && (MmVerifierData & 1) == 0 )
return ExAllocatePoolWithQuotaTag((POOL_TYPE)v8, NumberOfBytes, v5);
LODWORD(v8) = v8 | 0x80;
return(VOID *)pXdvExAllocatePoolWithTagPriority(
v8,
NumberOfBytes,
v5,
32,
(__int64)CallerAddress,
(__int64)VeAllocatePoolWithTagPriority);
}Referenced by:
No references.