VfTargetDriversEnableVerifier
INT64 __fastcall VfTargetDriversEnableVerifier(VOID *Address, _VF_SUSPECT_DRIVER_ENTRY *SuspectDriverEntry){
unsigned int v2;
_VF_TARGET_VERIFIED_DRIVER_DATA *VerifiedData;
CHAR *v5;
__int128 v7;
v2 = 0;
v7 = 0i64;
if( !VfSafeMode )
{
if( ViTargetInitialized )
{
VerifiedData = ViTargetDriversAllocateVerifiedData(SuspectDriverEntry);
if( VerifiedData )
{
VfAvlInitializeLockContext((INT64)&v7, 0i64);
v5 = VfAvlLookupTreeNode(&ViTargetDriversAvl, (INT64)&v7, (UINT64)Address, 1i64);
if( v5 )
{
*((_QWORD *)v5 + 7) = VerifiedData;
v2 = 1;
++dword_140C1CEE8;
}
VfAvlCleanupLockContext((INT64)&v7);
if( !v2 )
ExFreePoolWithTag(VerifiedData, 0x44566656u);
}
}
}
return v2;
}Referenced by:
VfSuspectDriversLoadCallback