PiPnpRtlApplyMandatoryDeviceFilters

int __fastcall PiPnpRtlApplyMandatoryDeviceFilters(
        INT64 a1,
        void *a2,
        SECURITY_SUBJECT_CONTEXT *a3,
        UINT8 *a4,
        BYTE *a5){
  int result; 
  WCHAR *v9; 
  *a5 = 0;
  result = PiPnpRtlIsDeviceValidForSession(a1, (INT64)a2, (INT64)a3, (INT64)a4, a5);
  if( result < 0 )
    goto LABEL_5;
  if( *a5 )
    result = PiPnpRtlIsDeviceEnumerableForUser(v9, a2, a3, a4);
  if( result < 0 )
LABEL_5:
    *a5 = 0;
  return result;
}

Referenced by:

PiPnpRtlApplyMandatoryDeviceContainerFiltersCallback
PiPnpRtlApplyMandatoryDeviceInterfaceFilters
PiPnpRtlApplyMandatoryFilters