IovpExamineDevObjForwarding
__int64 __fastcall IovpExamineDevObjForwarding(__int64 a1, __int64 a2){
void *UpperDeviceObjectWithTag;
void *v5;
int v6;
v6 = 0;
if( !a2 )
{
UpperDeviceObjectWithTag = IovUtilGetUpperDeviceObjectWithTag(a1);
if( !UpperDeviceObjectWithTag )
return 1i64;
ObfDereferenceObjectWithTag(UpperDeviceObjectWithTag, 0x49667256ui64);
return 4i64;
}
IovUtilRelateDeviceObjects(a1, a2, &v6);
switch( v6 )
{
case 0:
return 2i64;
case 1:
return 3i64;
case 2:
return 2i64;
case 3:
case 4:
return 3i64;
}
if( v6 != 5 )
return 2i64;
v5 = IovUtilGetUpperDeviceObjectWithTag(a1);
if( !v5 )
return 5i64;
ObfDereferenceObjectWithTag(v5, 0x49667256ui64);
return 6i64;
}Referenced by:
IovpCallDriver1