PiSwValidatePropertyArray

NTSTATUS __stdcall PiSwValidatePropertyArray(DEVPROPERTY *Properties, UINT64 PropertyCount){
  NTSTATUS result; 
  int v3; 
  unsigned int v4; 
  DEVPROPTYPE *i; 
  result = 0;
  v3 = 0;
  v4 = PropertyCount;
  if( (_DWORD)PropertyCount )
  {
    for( i = &Properties->Type; !*(i - 3); i += 12 )
    {
      result = PnpValidatePropertyData(*((PSECURITY_DESCRIPTOR *)i + 1), i[1], *i);
      if( result < 0 )
        break;
      if( ++v3 >= v4 )
        return result;
    }
    return -1073741811;
  }
  return result;
}

Referenced by:

PiSwIrpInterfacePropertySet
PiSwIrpInterfaceRegister
PiSwIrpPropertySet
PiSwValidateCreateData