VfPoolCheckForLeaks
VOID __stdcall VfPoolCheckForLeaks(
_VF_TARGET_VERIFIED_DRIVER_DATA *VerifiedData,
_KLDR_DATA_TABLE_ENTRY *DataTableEntry){
PSLIST_ENTRY v3;
UINT64 v4;
if( (*((_QWORD *)VerifiedData + 15) || *((_QWORD *)VerifiedData + 16)) && (MmVerifierData & 8) != 0 )
VerifierBugCheckIfAppropriate(
0xC4ui64,
0x62ui64,
*((_QWORD *)DataTableEntry + 12),
(UINT64)VerifiedData,
(unsigned int)(*((_DWORD *)VerifiedData + 27) + *((_DWORD *)VerifiedData + 26)),
v4);
while( 1 )
{
v3 = RtlpInterlockedPopEntrySList((PSLIST_HEADER)((char *)VerifiedData + 64));
if( !v3 )
break;
ExFreePoolWithTag(v3, 0);
}
}Referenced by:
VfTargetDriversRemove