VfUtilPrintCheckinString
VOID __fastcall VfUtilPrintCheckinString(_UNICODE_STRING *DriverName){
unsigned int v1;
unsigned int v2;
wchar_t *Buffer;
unsigned int v4;
unsigned int v5;
unsigned int v6;
int v7;
_BYTE *v8;
__int64 v9;
__int64 v10;
unsigned int v11;
unsigned int v12;
int v13;
__int64 v14;
__int64 *v15;
_DWORD v16[4];
__int16 v17[40];
v1 = 0;
v16[1] = MmVerifierData;
v2 = 0;
v16[0] = NtBuildNumber;
Buffer = DriverName->Buffer;
v4 = DriverName->Length >> 1;
v5 = v4;
v16[2] = 0;
v16[3] = 123456789 * NtBuildNumber * (MmVerifierData + 1);
if( v4 < 0x10 )
v5 = 16;
if( v5 )
{
do
{
*((_BYTE *)v16 + (v2 & 0xF)) ^= RtlUpcaseUnicodeChar(Buffer[v2 % v4]);
++v2;
}
while( v2 < v5 );
}
v6 = 0;
while( 1 )
{
v7 = 1;
v8 = v16;
LODWORD(v9) = 0;
v10 = 16i64;
do
{
v11 = (unsigned __int8)*v8 + ((_DWORD)v9 << 8);
v12 = v11 / 0x3E;
*v8 = v11 / 0x3E;
v9 = v11 % 0x3E;
v13 = 0;
if( !(_BYTE)v12 )
v13 = v7;
++v8;
v7 = v13;
--v10;
}
while( v10 );
v14 = v6++;
v17[v14] = Printable[v9];
if( v6 >= 0x21 )
break;
if( v13 )
{
if( 2 * (unsigned __int64)v6 >= 0x42 )
_report_rangecheckfailure();
v17[v6] = 0;
if( (VfRuleClasses & 0x100000) != 0 )
{
VfUtilDbgPrint((INT8 *)"Driver Verifier: Enabled for %wZ");
v15 = &VfRuleClasses;
do
{
VfUtilDbgPrint((INT8 *)", %d:0x%x");
++v1;
v15 = (__int64 *)((char *)v15 + 4);
}
while( v1 < 2 );
VfUtilDbgPrint((INT8 *)", build %ld, key %wZ\n");
}
else
{
VfUtilDbgPrint((INT8 *)"Driver Verifier: Enabled for %wZ, flags 0x%x, build %ld, key %wZ\n");
}
return;
}
}
}Referenced by:
VfSuspectDriversLoadCallback