IovpBuildDriverObjectList
UINT8 __stdcall IovpBuildDriverObjectList(
PVOID Object,
_UNICODE_STRING *ObjectName,
UINT64 HandleCount,
UINT64 PointerCount,
PVOID Parameter){
_QWORD *PoolWithTag;
_QWORD *v7;
if( !(unsigned int)PnpIsLegacyDriver((DRIVER_OBJECT *)Object) )
goto LABEL_6;
PoolWithTag = ExAllocatePoolWithTag(NonPagedPoolNx, 0x10ui64, 0x6F7649ui64);
v7 = PoolWithTag;
if( PoolWithTag )
{
if( ObReferenceObjectSafe(Object) )
{
v7[1] = Object;
*v7 = IovDriverListHead;
IovDriverListHead = v7;
}
else
{
ExFreePoolWithTag(v7, 0);
}
LABEL_6:
LOBYTE(PoolWithTag) = 1;
}
return(unsigned __int8)PoolWithTag;
}Referenced by:
ObEnumerateObjectsByType