PnpFreeResourceRequirementsForAssignTable
void __fastcall PnpFreeResourceRequirementsForAssignTable(unsigned __int64 a1, unsigned __int64 a2){
_REQ_LIST **v2;
unsigned __int64 v3;
void *v4;
if( a1 < a2 )
{
v2 = (_REQ_LIST **)(a1 + 32);
v3 = ((a2 - a1 - 1) >> 6) + 1;
do
{
IopFreeReqList(*v2);
*v2 = 0i64;
if( (*(_DWORD *)(v2 - 3) & 0x200) != 0 )
{
v4 = *(v2 - 1);
if( v4 )
{
ExFreePoolWithTag(v4, 0);
*(v2 - 1) = 0i64;
}
}
v2 += 8;
--v3;
}
while( v3 );
}
}Referenced by:
PnpAllocateResources
PnpGetResourceRequirementsForAssignTable
PnpReallocateResources
PnpRebalance
PnpRestoreResourcesInternal