code: def _find_cert_in_list(cert, issuer, certificate_list, crl_issuer):
      
  
      revoked_certificates = certificate_list['tbs_cert_list']['revoked_certificates']
  
      cert_serial = cert.serial_number
      issuer_name = issuer.subject
  
      known_extensions = set([
          'crl_reason',
          'hold_instruction_code',
          'invalidity_date',
          'certificate_issuer'
      ])
  
      last_issuer_name = crl_issuer.subject
      for revoked_cert in revoked_certificates:
          # If any unknown critical extensions, the entry can not be used
          if revoked_cert.critical_extensions - known_extensions:
              raise NotImplementedError()
  
          if revoked_cert.issuer_name and revoked_cert.issuer_name != last_issuer_name:
              last_issuer_name = revoked_cert.issuer_name
          if last_issuer_name != issuer_name:
              continue
  
          if revoked_cert['user_certificate'].native != cert_serial:
              continue
  
          if not revoked_cert.crl_reason_value:
              crl_reason = crl.CRLReason('unspecified')
          else:
              crl_reason = revoked_cert.crl_reason_value
  
          return (revoked_cert['revocation_date'], crl_reason)
  
      return (None, None)
docs: Looks for a cert in the list of revoked certificates
  
      :param cert:
          An asn1crypto.x509.Certificate object of the cert being checked
  
      :param issuer:
          An asn1crypto.x509.Certificate object of the cert issuer
  
      :param certificate_list:
          An ans1crypto.crl.CertificateList object to look in for the cert
  
      :param crl_issuer:
          An asn1crypto.x509.Certificate object of the CRL issuer
  
      :return:
          A tuple of (None, None) if not present, otherwise a tuple of
          (asn1crypto.x509.Time object, asn1crypto.crl.CRLReason object)
          representing the date/time the object was revoked and why