public class sun.security.pkcs.PKCS7
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: sun.security.pkcs.PKCS7
  super_class: java.lang.Object
{
  private sun.security.util.ObjectIdentifier contentType;
    descriptor: Lsun/security/util/ObjectIdentifier;
    flags: (0x0002) ACC_PRIVATE

  private java.math.BigInteger version;
    descriptor: Ljava/math/BigInteger;
    flags: (0x0002) ACC_PRIVATE

  private sun.security.x509.AlgorithmId[] digestAlgorithmIds;
    descriptor: [Lsun/security/x509/AlgorithmId;
    flags: (0x0002) ACC_PRIVATE

  private sun.security.pkcs.ContentInfo contentInfo;
    descriptor: Lsun/security/pkcs/ContentInfo;
    flags: (0x0002) ACC_PRIVATE

  private java.security.cert.X509Certificate[] certificates;
    descriptor: [Ljava/security/cert/X509Certificate;
    flags: (0x0002) ACC_PRIVATE

  private java.security.cert.X509CRL[] crls;
    descriptor: [Ljava/security/cert/X509CRL;
    flags: (0x0002) ACC_PRIVATE

  private sun.security.pkcs.SignerInfo[] signerInfos;
    descriptor: [Lsun/security/pkcs/SignerInfo;
    flags: (0x0002) ACC_PRIVATE

  private boolean oldStyle;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private java.security.Principal[] certIssuerNames;
    descriptor: [Ljava/security/Principal;
    flags: (0x0002) ACC_PRIVATE

  public void <init>(java.io.InputStream);
    descriptor: (Ljava/io/InputStream;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // sun.security.pkcs.PKCS7 this
        start local 1 // java.io.InputStream in
         0: .line 95
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 59
            aload 0 /* this */
            aconst_null
            putfield sun.security.pkcs.PKCS7.version:Ljava/math/BigInteger;
         2: .line 60
            aload 0 /* this */
            aconst_null
            putfield sun.security.pkcs.PKCS7.digestAlgorithmIds:[Lsun/security/x509/AlgorithmId;
         3: .line 61
            aload 0 /* this */
            aconst_null
            putfield sun.security.pkcs.PKCS7.contentInfo:Lsun/security/pkcs/ContentInfo;
         4: .line 62
            aload 0 /* this */
            aconst_null
            putfield sun.security.pkcs.PKCS7.certificates:[Ljava/security/cert/X509Certificate;
         5: .line 63
            aload 0 /* this */
            aconst_null
            putfield sun.security.pkcs.PKCS7.crls:[Ljava/security/cert/X509CRL;
         6: .line 64
            aload 0 /* this */
            aconst_null
            putfield sun.security.pkcs.PKCS7.signerInfos:[Lsun/security/pkcs/SignerInfo;
         7: .line 66
            aload 0 /* this */
            iconst_0
            putfield sun.security.pkcs.PKCS7.oldStyle:Z
         8: .line 96
            new java.io.DataInputStream
            dup
            aload 1 /* in */
            invokespecial java.io.DataInputStream.<init>:(Ljava/io/InputStream;)V
            astore 2 /* dis */
        start local 2 // java.io.DataInputStream dis
         9: .line 97
            aload 2 /* dis */
            invokevirtual java.io.DataInputStream.available:()I
            newarray 8
            astore 3 /* data */
        start local 3 // byte[] data
        10: .line 98
            aload 2 /* dis */
            aload 3 /* data */
            invokevirtual java.io.DataInputStream.readFully:([B)V
        11: .line 100
            aload 0 /* this */
            new sun.security.util.DerInputStream
            dup
            aload 3 /* data */
            invokespecial sun.security.util.DerInputStream.<init>:([B)V
            invokevirtual sun.security.pkcs.PKCS7.parse:(Lsun/security/util/DerInputStream;)V
        12: .line 101
            return
        end local 3 // byte[] data
        end local 2 // java.io.DataInputStream dis
        end local 1 // java.io.InputStream in
        end local 0 // sun.security.pkcs.PKCS7 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   13     0  this  Lsun/security/pkcs/PKCS7;
            0   13     1    in  Ljava/io/InputStream;
            9   13     2   dis  Ljava/io/DataInputStream;
           10   13     3  data  [B
    Exceptions:
      throws sun.security.pkcs.ParsingException, java.io.IOException
    MethodParameters:
      Name  Flags
      in    

  public void <init>(sun.security.util.DerInputStream);
    descriptor: (Lsun/security/util/DerInputStream;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // sun.security.pkcs.PKCS7 this
        start local 1 // sun.security.util.DerInputStream derin
         0: .line 110
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 59
            aload 0 /* this */
            aconst_null
            putfield sun.security.pkcs.PKCS7.version:Ljava/math/BigInteger;
         2: .line 60
            aload 0 /* this */
            aconst_null
            putfield sun.security.pkcs.PKCS7.digestAlgorithmIds:[Lsun/security/x509/AlgorithmId;
         3: .line 61
            aload 0 /* this */
            aconst_null
            putfield sun.security.pkcs.PKCS7.contentInfo:Lsun/security/pkcs/ContentInfo;
         4: .line 62
            aload 0 /* this */
            aconst_null
            putfield sun.security.pkcs.PKCS7.certificates:[Ljava/security/cert/X509Certificate;
         5: .line 63
            aload 0 /* this */
            aconst_null
            putfield sun.security.pkcs.PKCS7.crls:[Ljava/security/cert/X509CRL;
         6: .line 64
            aload 0 /* this */
            aconst_null
            putfield sun.security.pkcs.PKCS7.signerInfos:[Lsun/security/pkcs/SignerInfo;
         7: .line 66
            aload 0 /* this */
            iconst_0
            putfield sun.security.pkcs.PKCS7.oldStyle:Z
         8: .line 111
            aload 0 /* this */
            aload 1 /* derin */
            invokevirtual sun.security.pkcs.PKCS7.parse:(Lsun/security/util/DerInputStream;)V
         9: .line 112
            return
        end local 1 // sun.security.util.DerInputStream derin
        end local 0 // sun.security.pkcs.PKCS7 this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   10     0   this  Lsun/security/pkcs/PKCS7;
            0   10     1  derin  Lsun/security/util/DerInputStream;
    Exceptions:
      throws sun.security.pkcs.ParsingException
    MethodParameters:
       Name  Flags
      derin  

  public void <init>(byte[]);
    descriptor: ([B)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // sun.security.pkcs.PKCS7 this
        start local 1 // byte[] bytes
         0: .line 121
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 59
            aload 0 /* this */
            aconst_null
            putfield sun.security.pkcs.PKCS7.version:Ljava/math/BigInteger;
         2: .line 60
            aload 0 /* this */
            aconst_null
            putfield sun.security.pkcs.PKCS7.digestAlgorithmIds:[Lsun/security/x509/AlgorithmId;
         3: .line 61
            aload 0 /* this */
            aconst_null
            putfield sun.security.pkcs.PKCS7.contentInfo:Lsun/security/pkcs/ContentInfo;
         4: .line 62
            aload 0 /* this */
            aconst_null
            putfield sun.security.pkcs.PKCS7.certificates:[Ljava/security/cert/X509Certificate;
         5: .line 63
            aload 0 /* this */
            aconst_null
            putfield sun.security.pkcs.PKCS7.crls:[Ljava/security/cert/X509CRL;
         6: .line 64
            aload 0 /* this */
            aconst_null
            putfield sun.security.pkcs.PKCS7.signerInfos:[Lsun/security/pkcs/SignerInfo;
         7: .line 66
            aload 0 /* this */
            iconst_0
            putfield sun.security.pkcs.PKCS7.oldStyle:Z
         8: .line 123
            new sun.security.util.DerInputStream
            dup
            aload 1 /* bytes */
            invokespecial sun.security.util.DerInputStream.<init>:([B)V
            astore 2 /* derin */
        start local 2 // sun.security.util.DerInputStream derin
         9: .line 124
            aload 0 /* this */
            aload 2 /* derin */
            invokevirtual sun.security.pkcs.PKCS7.parse:(Lsun/security/util/DerInputStream;)V
        end local 2 // sun.security.util.DerInputStream derin
        10: .line 125
            goto 17
      StackMap locals: sun.security.pkcs.PKCS7 byte[]
      StackMap stack: java.io.IOException
        11: astore 2 /* ioe1 */
        start local 2 // java.io.IOException ioe1
        12: .line 126
            new sun.security.pkcs.ParsingException
            dup
        13: .line 127
            ldc "Unable to parse the encoded bytes"
        14: .line 126
            invokespecial sun.security.pkcs.ParsingException.<init>:(Ljava/lang/String;)V
            astore 3 /* pe */
        start local 3 // sun.security.pkcs.ParsingException pe
        15: .line 128
            aload 3 /* pe */
            aload 2 /* ioe1 */
            invokevirtual sun.security.pkcs.ParsingException.initCause:(Ljava/lang/Throwable;)Ljava/lang/Throwable;
            pop
        16: .line 129
            aload 3 /* pe */
            athrow
        end local 3 // sun.security.pkcs.ParsingException pe
        end local 2 // java.io.IOException ioe1
        17: .line 131
      StackMap locals:
      StackMap stack:
            return
        end local 1 // byte[] bytes
        end local 0 // sun.security.pkcs.PKCS7 this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   18     0   this  Lsun/security/pkcs/PKCS7;
            0   18     1  bytes  [B
            9   10     2  derin  Lsun/security/util/DerInputStream;
           12   17     2   ioe1  Ljava/io/IOException;
           15   17     3     pe  Lsun/security/pkcs/ParsingException;
      Exception table:
        from    to  target  type
           8    10      11  Class java.io.IOException
    Exceptions:
      throws sun.security.pkcs.ParsingException
    MethodParameters:
       Name  Flags
      bytes  

  private void parse(sun.security.util.DerInputStream);
    descriptor: (Lsun/security/util/DerInputStream;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // sun.security.pkcs.PKCS7 this
        start local 1 // sun.security.util.DerInputStream derin
         0: .line 140
            aload 1 /* derin */
            aload 1 /* derin */
            invokevirtual sun.security.util.DerInputStream.available:()I
            invokevirtual sun.security.util.DerInputStream.mark:(I)V
         1: .line 142
            aload 0 /* this */
            aload 1 /* derin */
            iconst_0
            invokevirtual sun.security.pkcs.PKCS7.parse:(Lsun/security/util/DerInputStream;Z)V
         2: .line 143
            goto 15
      StackMap locals:
      StackMap stack: java.io.IOException
         3: astore 2 /* ioe */
        start local 2 // java.io.IOException ioe
         4: .line 145
            aload 1 /* derin */
            invokevirtual sun.security.util.DerInputStream.reset:()V
         5: .line 147
            aload 0 /* this */
            aload 1 /* derin */
            iconst_1
            invokevirtual sun.security.pkcs.PKCS7.parse:(Lsun/security/util/DerInputStream;Z)V
         6: .line 148
            aload 0 /* this */
            iconst_1
            putfield sun.security.pkcs.PKCS7.oldStyle:Z
         7: .line 149
            goto 15
      StackMap locals: sun.security.pkcs.PKCS7 sun.security.util.DerInputStream java.io.IOException
      StackMap stack: java.io.IOException
         8: astore 3 /* ioe1 */
        start local 3 // java.io.IOException ioe1
         9: .line 150
            new sun.security.pkcs.ParsingException
            dup
        10: .line 151
            aload 3 /* ioe1 */
            invokevirtual java.io.IOException.getMessage:()Ljava/lang/String;
        11: .line 150
            invokespecial sun.security.pkcs.ParsingException.<init>:(Ljava/lang/String;)V
            astore 4 /* pe */
        start local 4 // sun.security.pkcs.ParsingException pe
        12: .line 152
            aload 4 /* pe */
            aload 2 /* ioe */
            invokevirtual sun.security.pkcs.ParsingException.initCause:(Ljava/lang/Throwable;)Ljava/lang/Throwable;
            pop
        13: .line 153
            aload 4 /* pe */
            aload 3 /* ioe1 */
            invokevirtual sun.security.pkcs.ParsingException.addSuppressed:(Ljava/lang/Throwable;)V
        14: .line 154
            aload 4 /* pe */
            athrow
        end local 4 // sun.security.pkcs.ParsingException pe
        end local 3 // java.io.IOException ioe1
        end local 2 // java.io.IOException ioe
        15: .line 157
      StackMap locals:
      StackMap stack:
            return
        end local 1 // sun.security.util.DerInputStream derin
        end local 0 // sun.security.pkcs.PKCS7 this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   16     0   this  Lsun/security/pkcs/PKCS7;
            0   16     1  derin  Lsun/security/util/DerInputStream;
            4   15     2    ioe  Ljava/io/IOException;
            9   15     3   ioe1  Ljava/io/IOException;
           12   15     4     pe  Lsun/security/pkcs/ParsingException;
      Exception table:
        from    to  target  type
           0     2       3  Class java.io.IOException
           4     7       8  Class java.io.IOException
    Exceptions:
      throws sun.security.pkcs.ParsingException
    MethodParameters:
       Name  Flags
      derin  

  private void parse(sun.security.util.DerInputStream, boolean);
    descriptor: (Lsun/security/util/DerInputStream;Z)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=5, args_size=3
        start local 0 // sun.security.pkcs.PKCS7 this
        start local 1 // sun.security.util.DerInputStream derin
        start local 2 // boolean oldStyle
         0: .line 169
            new sun.security.pkcs.ContentInfo
            dup
            aload 1 /* derin */
            iload 2 /* oldStyle */
            invokespecial sun.security.pkcs.ContentInfo.<init>:(Lsun/security/util/DerInputStream;Z)V
            astore 3 /* block */
        start local 3 // sun.security.pkcs.ContentInfo block
         1: .line 170
            aload 0 /* this */
            aload 3 /* block */
            getfield sun.security.pkcs.ContentInfo.contentType:Lsun/security/util/ObjectIdentifier;
            putfield sun.security.pkcs.PKCS7.contentType:Lsun/security/util/ObjectIdentifier;
         2: .line 171
            aload 3 /* block */
            invokevirtual sun.security.pkcs.ContentInfo.getContent:()Lsun/security/util/DerValue;
            astore 4 /* content */
        start local 4 // sun.security.util.DerValue content
         3: .line 173
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.contentType:Lsun/security/util/ObjectIdentifier;
            getstatic sun.security.pkcs.ContentInfo.SIGNED_DATA_OID:Lsun/security/util/ObjectIdentifier;
            invokevirtual sun.security.util.ObjectIdentifier.equals:(Ljava/lang/Object;)Z
            ifeq 6
         4: .line 174
            aload 0 /* this */
            aload 4 /* content */
            invokevirtual sun.security.pkcs.PKCS7.parseSignedData:(Lsun/security/util/DerValue;)V
         5: .line 175
            goto 16
      StackMap locals: sun.security.pkcs.ContentInfo sun.security.util.DerValue
      StackMap stack:
         6: aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.contentType:Lsun/security/util/ObjectIdentifier;
            getstatic sun.security.pkcs.ContentInfo.OLD_SIGNED_DATA_OID:Lsun/security/util/ObjectIdentifier;
            invokevirtual sun.security.util.ObjectIdentifier.equals:(Ljava/lang/Object;)Z
            ifeq 9
         7: .line 177
            aload 0 /* this */
            aload 4 /* content */
            invokevirtual sun.security.pkcs.PKCS7.parseOldSignedData:(Lsun/security/util/DerValue;)V
         8: .line 178
            goto 16
      StackMap locals:
      StackMap stack:
         9: aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.contentType:Lsun/security/util/ObjectIdentifier;
            getstatic sun.security.pkcs.ContentInfo.NETSCAPE_CERT_SEQUENCE_OID:Lsun/security/util/ObjectIdentifier;
            invokevirtual sun.security.util.ObjectIdentifier.equals:(Ljava/lang/Object;)Z
            ifeq 13
        10: .line 179
            aload 0 /* this */
            aload 4 /* content */
            invokevirtual sun.security.pkcs.PKCS7.parseNetscapeCertChain:(Lsun/security/util/DerValue;)V
        11: .line 180
            aload 0 /* this */
            aload 3 /* block */
            putfield sun.security.pkcs.PKCS7.contentInfo:Lsun/security/pkcs/ContentInfo;
        12: .line 181
            goto 16
        13: .line 182
      StackMap locals:
      StackMap stack:
            new sun.security.pkcs.ParsingException
            dup
            new java.lang.StringBuilder
            dup
            ldc "content type "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.contentType:Lsun/security/util/ObjectIdentifier;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
        14: .line 183
            ldc " not supported."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        15: .line 182
            invokespecial sun.security.pkcs.ParsingException.<init>:(Ljava/lang/String;)V
            athrow
        16: .line 185
      StackMap locals:
      StackMap stack:
            return
        end local 4 // sun.security.util.DerValue content
        end local 3 // sun.security.pkcs.ContentInfo block
        end local 2 // boolean oldStyle
        end local 1 // sun.security.util.DerInputStream derin
        end local 0 // sun.security.pkcs.PKCS7 this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   17     0      this  Lsun/security/pkcs/PKCS7;
            0   17     1     derin  Lsun/security/util/DerInputStream;
            0   17     2  oldStyle  Z
            1   17     3     block  Lsun/security/pkcs/ContentInfo;
            3   17     4   content  Lsun/security/util/DerValue;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
          Name  Flags
      derin     
      oldStyle  

  public void <init>(sun.security.x509.AlgorithmId[], sun.security.pkcs.ContentInfo, java.security.cert.X509Certificate[], java.security.cert.X509CRL[], sun.security.pkcs.SignerInfo[]);
    descriptor: ([Lsun/security/x509/AlgorithmId;Lsun/security/pkcs/ContentInfo;[Ljava/security/cert/X509Certificate;[Ljava/security/cert/X509CRL;[Lsun/security/pkcs/SignerInfo;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=6, args_size=6
        start local 0 // sun.security.pkcs.PKCS7 this
        start local 1 // sun.security.x509.AlgorithmId[] digestAlgorithmIds
        start local 2 // sun.security.pkcs.ContentInfo contentInfo
        start local 3 // java.security.cert.X509Certificate[] certificates
        start local 4 // java.security.cert.X509CRL[] crls
        start local 5 // sun.security.pkcs.SignerInfo[] signerInfos
         0: .line 196
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 59
            aload 0 /* this */
            aconst_null
            putfield sun.security.pkcs.PKCS7.version:Ljava/math/BigInteger;
         2: .line 60
            aload 0 /* this */
            aconst_null
            putfield sun.security.pkcs.PKCS7.digestAlgorithmIds:[Lsun/security/x509/AlgorithmId;
         3: .line 61
            aload 0 /* this */
            aconst_null
            putfield sun.security.pkcs.PKCS7.contentInfo:Lsun/security/pkcs/ContentInfo;
         4: .line 62
            aload 0 /* this */
            aconst_null
            putfield sun.security.pkcs.PKCS7.certificates:[Ljava/security/cert/X509Certificate;
         5: .line 63
            aload 0 /* this */
            aconst_null
            putfield sun.security.pkcs.PKCS7.crls:[Ljava/security/cert/X509CRL;
         6: .line 64
            aload 0 /* this */
            aconst_null
            putfield sun.security.pkcs.PKCS7.signerInfos:[Lsun/security/pkcs/SignerInfo;
         7: .line 66
            aload 0 /* this */
            iconst_0
            putfield sun.security.pkcs.PKCS7.oldStyle:Z
         8: .line 202
            aload 0 /* this */
            getstatic java.math.BigInteger.ONE:Ljava/math/BigInteger;
            putfield sun.security.pkcs.PKCS7.version:Ljava/math/BigInteger;
         9: .line 203
            aload 0 /* this */
            aload 1 /* digestAlgorithmIds */
            putfield sun.security.pkcs.PKCS7.digestAlgorithmIds:[Lsun/security/x509/AlgorithmId;
        10: .line 204
            aload 0 /* this */
            aload 2 /* contentInfo */
            putfield sun.security.pkcs.PKCS7.contentInfo:Lsun/security/pkcs/ContentInfo;
        11: .line 205
            aload 0 /* this */
            aload 3 /* certificates */
            putfield sun.security.pkcs.PKCS7.certificates:[Ljava/security/cert/X509Certificate;
        12: .line 206
            aload 0 /* this */
            aload 4 /* crls */
            putfield sun.security.pkcs.PKCS7.crls:[Ljava/security/cert/X509CRL;
        13: .line 207
            aload 0 /* this */
            aload 5 /* signerInfos */
            putfield sun.security.pkcs.PKCS7.signerInfos:[Lsun/security/pkcs/SignerInfo;
        14: .line 208
            return
        end local 5 // sun.security.pkcs.SignerInfo[] signerInfos
        end local 4 // java.security.cert.X509CRL[] crls
        end local 3 // java.security.cert.X509Certificate[] certificates
        end local 2 // sun.security.pkcs.ContentInfo contentInfo
        end local 1 // sun.security.x509.AlgorithmId[] digestAlgorithmIds
        end local 0 // sun.security.pkcs.PKCS7 this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   15     0                this  Lsun/security/pkcs/PKCS7;
            0   15     1  digestAlgorithmIds  [Lsun/security/x509/AlgorithmId;
            0   15     2         contentInfo  Lsun/security/pkcs/ContentInfo;
            0   15     3        certificates  [Ljava/security/cert/X509Certificate;
            0   15     4                crls  [Ljava/security/cert/X509CRL;
            0   15     5         signerInfos  [Lsun/security/pkcs/SignerInfo;
    MethodParameters:
                    Name  Flags
      digestAlgorithmIds  
      contentInfo         
      certificates        
      crls                
      signerInfos         

  public void <init>(sun.security.x509.AlgorithmId[], sun.security.pkcs.ContentInfo, java.security.cert.X509Certificate[], sun.security.pkcs.SignerInfo[]);
    descriptor: ([Lsun/security/x509/AlgorithmId;Lsun/security/pkcs/ContentInfo;[Ljava/security/cert/X509Certificate;[Lsun/security/pkcs/SignerInfo;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=5, args_size=5
        start local 0 // sun.security.pkcs.PKCS7 this
        start local 1 // sun.security.x509.AlgorithmId[] digestAlgorithmIds
        start local 2 // sun.security.pkcs.ContentInfo contentInfo
        start local 3 // java.security.cert.X509Certificate[] certificates
        start local 4 // sun.security.pkcs.SignerInfo[] signerInfos
         0: .line 214
            aload 0 /* this */
            aload 1 /* digestAlgorithmIds */
            aload 2 /* contentInfo */
            aload 3 /* certificates */
            aconst_null
            aload 4 /* signerInfos */
            invokespecial sun.security.pkcs.PKCS7.<init>:([Lsun/security/x509/AlgorithmId;Lsun/security/pkcs/ContentInfo;[Ljava/security/cert/X509Certificate;[Ljava/security/cert/X509CRL;[Lsun/security/pkcs/SignerInfo;)V
         1: .line 215
            return
        end local 4 // sun.security.pkcs.SignerInfo[] signerInfos
        end local 3 // java.security.cert.X509Certificate[] certificates
        end local 2 // sun.security.pkcs.ContentInfo contentInfo
        end local 1 // sun.security.x509.AlgorithmId[] digestAlgorithmIds
        end local 0 // sun.security.pkcs.PKCS7 this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0    2     0                this  Lsun/security/pkcs/PKCS7;
            0    2     1  digestAlgorithmIds  [Lsun/security/x509/AlgorithmId;
            0    2     2         contentInfo  Lsun/security/pkcs/ContentInfo;
            0    2     3        certificates  [Ljava/security/cert/X509Certificate;
            0    2     4         signerInfos  [Lsun/security/pkcs/SignerInfo;
    MethodParameters:
                    Name  Flags
      digestAlgorithmIds  
      contentInfo         
      certificates        
      signerInfos         

  private void parseNetscapeCertChain(sun.security.util.DerValue);
    descriptor: (Lsun/security/util/DerValue;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=10, args_size=2
        start local 0 // sun.security.pkcs.PKCS7 this
        start local 1 // sun.security.util.DerValue val
         0: .line 219
            new sun.security.util.DerInputStream
            dup
            aload 1 /* val */
            invokevirtual sun.security.util.DerValue.toByteArray:()[B
            invokespecial sun.security.util.DerInputStream.<init>:([B)V
            astore 2 /* dis */
        start local 2 // sun.security.util.DerInputStream dis
         1: .line 220
            aload 2 /* dis */
            iconst_2
            invokevirtual sun.security.util.DerInputStream.getSequence:(I)[Lsun/security/util/DerValue;
            astore 3 /* contents */
        start local 3 // sun.security.util.DerValue[] contents
         2: .line 221
            aload 0 /* this */
            aload 3 /* contents */
            arraylength
            anewarray java.security.cert.X509Certificate
            putfield sun.security.pkcs.PKCS7.certificates:[Ljava/security/cert/X509Certificate;
         3: .line 223
            aconst_null
            astore 4 /* certfac */
        start local 4 // java.security.cert.CertificateFactory certfac
         4: .line 225
            ldc "X.509"
            invokestatic java.security.cert.CertificateFactory.getInstance:(Ljava/lang/String;)Ljava/security/cert/CertificateFactory;
            astore 4 /* certfac */
         5: .line 226
            goto 7
      StackMap locals: sun.security.pkcs.PKCS7 sun.security.util.DerValue sun.security.util.DerInputStream sun.security.util.DerValue[] java.security.cert.CertificateFactory
      StackMap stack: java.security.cert.CertificateException
         6: pop
         7: .line 230
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         8: goto 35
         9: .line 231
      StackMap locals: int
      StackMap stack:
            aconst_null
            astore 6 /* bais */
        start local 6 // java.io.ByteArrayInputStream bais
        10: .line 233
            aload 4 /* certfac */
            ifnonnull 12
        11: .line 234
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.certificates:[Ljava/security/cert/X509Certificate;
            iload 5 /* i */
            new sun.security.x509.X509CertImpl
            dup
            aload 3 /* contents */
            iload 5 /* i */
            aaload
            invokespecial sun.security.x509.X509CertImpl.<init>:(Lsun/security/util/DerValue;)V
            aastore
            goto 32
        12: .line 236
      StackMap locals: java.io.ByteArrayInputStream
      StackMap stack:
            aload 3 /* contents */
            iload 5 /* i */
            aaload
            invokevirtual sun.security.util.DerValue.toByteArray:()[B
            astore 7 /* encoded */
        start local 7 // byte[] encoded
        13: .line 237
            new java.io.ByteArrayInputStream
            dup
            aload 7 /* encoded */
            invokespecial java.io.ByteArrayInputStream.<init>:([B)V
            astore 6 /* bais */
        14: .line 238
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.certificates:[Ljava/security/cert/X509Certificate;
            iload 5 /* i */
        15: .line 239
            aload 4 /* certfac */
            aload 6 /* bais */
            invokevirtual java.security.cert.CertificateFactory.generateCertificate:(Ljava/io/InputStream;)Ljava/security/cert/Certificate;
            checkcast java.security.cert.X509Certificate
        16: .line 238
            aastore
        17: .line 240
            aload 6 /* bais */
            invokevirtual java.io.ByteArrayInputStream.close:()V
        18: .line 241
            aconst_null
            astore 6 /* bais */
        end local 7 // byte[] encoded
        19: .line 243
            goto 32
      StackMap locals:
      StackMap stack: java.security.cert.CertificateException
        20: astore 7 /* ce */
        start local 7 // java.security.cert.CertificateException ce
        21: .line 244
            new sun.security.pkcs.ParsingException
            dup
            aload 7 /* ce */
            invokevirtual java.security.cert.CertificateException.getMessage:()Ljava/lang/String;
            invokespecial sun.security.pkcs.ParsingException.<init>:(Ljava/lang/String;)V
            astore 8 /* pe */
        start local 8 // sun.security.pkcs.ParsingException pe
        22: .line 245
            aload 8 /* pe */
            aload 7 /* ce */
            invokevirtual sun.security.pkcs.ParsingException.initCause:(Ljava/lang/Throwable;)Ljava/lang/Throwable;
            pop
        23: .line 246
            aload 8 /* pe */
            athrow
        end local 8 // sun.security.pkcs.ParsingException pe
        end local 7 // java.security.cert.CertificateException ce
        24: .line 247
      StackMap locals:
      StackMap stack: java.io.IOException
            astore 7 /* ioe */
        start local 7 // java.io.IOException ioe
        25: .line 248
            new sun.security.pkcs.ParsingException
            dup
            aload 7 /* ioe */
            invokevirtual java.io.IOException.getMessage:()Ljava/lang/String;
            invokespecial sun.security.pkcs.ParsingException.<init>:(Ljava/lang/String;)V
            astore 8 /* pe */
        start local 8 // sun.security.pkcs.ParsingException pe
        26: .line 249
            aload 8 /* pe */
            aload 7 /* ioe */
            invokevirtual sun.security.pkcs.ParsingException.initCause:(Ljava/lang/Throwable;)Ljava/lang/Throwable;
            pop
        27: .line 250
            aload 8 /* pe */
            athrow
        end local 8 // sun.security.pkcs.ParsingException pe
        end local 7 // java.io.IOException ioe
        28: .line 251
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 9
        29: .line 252
            aload 6 /* bais */
            ifnull 31
        30: .line 253
            aload 6 /* bais */
            invokevirtual java.io.ByteArrayInputStream.close:()V
        31: .line 254
      StackMap locals: sun.security.pkcs.PKCS7 sun.security.util.DerValue sun.security.util.DerInputStream sun.security.util.DerValue[] java.security.cert.CertificateFactory int java.io.ByteArrayInputStream top top java.lang.Throwable
      StackMap stack:
            aload 9
            athrow
        32: .line 252
      StackMap locals: sun.security.pkcs.PKCS7 sun.security.util.DerValue sun.security.util.DerInputStream sun.security.util.DerValue[] java.security.cert.CertificateFactory int java.io.ByteArrayInputStream
      StackMap stack:
            aload 6 /* bais */
            ifnull 34
        33: .line 253
            aload 6 /* bais */
            invokevirtual java.io.ByteArrayInputStream.close:()V
        end local 6 // java.io.ByteArrayInputStream bais
        34: .line 230
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        35: iload 5 /* i */
            aload 3 /* contents */
            arraylength
            if_icmplt 9
        end local 5 // int i
        36: .line 256
            return
        end local 4 // java.security.cert.CertificateFactory certfac
        end local 3 // sun.security.util.DerValue[] contents
        end local 2 // sun.security.util.DerInputStream dis
        end local 1 // sun.security.util.DerValue val
        end local 0 // sun.security.pkcs.PKCS7 this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   37     0      this  Lsun/security/pkcs/PKCS7;
            0   37     1       val  Lsun/security/util/DerValue;
            1   37     2       dis  Lsun/security/util/DerInputStream;
            2   37     3  contents  [Lsun/security/util/DerValue;
            4   37     4   certfac  Ljava/security/cert/CertificateFactory;
            8   36     5         i  I
           10   34     6      bais  Ljava/io/ByteArrayInputStream;
           13   19     7   encoded  [B
           21   24     7        ce  Ljava/security/cert/CertificateException;
           22   24     8        pe  Lsun/security/pkcs/ParsingException;
           25   28     7       ioe  Ljava/io/IOException;
           26   28     8        pe  Lsun/security/pkcs/ParsingException;
      Exception table:
        from    to  target  type
           4     5       6  Class java.security.cert.CertificateException
          10    19      20  Class java.security.cert.CertificateException
          10    19      24  Class java.io.IOException
          10    28      28  any
    Exceptions:
      throws sun.security.pkcs.ParsingException, java.io.IOException
    MethodParameters:
      Name  Flags
      val   

  private void parseSignedData(sun.security.util.DerValue);
    descriptor: (Lsun/security/util/DerValue;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=13, args_size=2
        start local 0 // sun.security.pkcs.PKCS7 this
        start local 1 // sun.security.util.DerValue val
         0: .line 261
            aload 1 /* val */
            invokevirtual sun.security.util.DerValue.toDerInputStream:()Lsun/security/util/DerInputStream;
            astore 2 /* dis */
        start local 2 // sun.security.util.DerInputStream dis
         1: .line 264
            aload 0 /* this */
            aload 2 /* dis */
            invokevirtual sun.security.util.DerInputStream.getBigInteger:()Ljava/math/BigInteger;
            putfield sun.security.pkcs.PKCS7.version:Ljava/math/BigInteger;
         2: .line 267
            aload 2 /* dis */
            iconst_1
            invokevirtual sun.security.util.DerInputStream.getSet:(I)[Lsun/security/util/DerValue;
            astore 3 /* digestAlgorithmIdVals */
        start local 3 // sun.security.util.DerValue[] digestAlgorithmIdVals
         3: .line 268
            aload 3 /* digestAlgorithmIdVals */
            arraylength
            istore 4 /* len */
        start local 4 // int len
         4: .line 269
            aload 0 /* this */
            iload 4 /* len */
            anewarray sun.security.x509.AlgorithmId
            putfield sun.security.pkcs.PKCS7.digestAlgorithmIds:[Lsun/security/x509/AlgorithmId;
         5: .line 271
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         6: goto 10
         7: .line 272
      StackMap locals: sun.security.pkcs.PKCS7 sun.security.util.DerValue sun.security.util.DerInputStream sun.security.util.DerValue[] int int
      StackMap stack:
            aload 3 /* digestAlgorithmIdVals */
            iload 5 /* i */
            aaload
            astore 6 /* oid */
        start local 6 // sun.security.util.DerValue oid
         8: .line 273
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.digestAlgorithmIds:[Lsun/security/x509/AlgorithmId;
            iload 5 /* i */
            aload 6 /* oid */
            invokestatic sun.security.x509.AlgorithmId.parse:(Lsun/security/util/DerValue;)Lsun/security/x509/AlgorithmId;
            aastore
        end local 6 // sun.security.util.DerValue oid
         9: .line 271
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        10: iload 5 /* i */
            iload 4 /* len */
            if_icmplt 7
        end local 5 // int i
        11: .line 276
            goto 19
      StackMap locals: sun.security.pkcs.PKCS7 sun.security.util.DerValue sun.security.util.DerInputStream sun.security.util.DerValue[] int
      StackMap stack: java.io.IOException
        12: astore 5 /* e */
        start local 5 // java.io.IOException e
        13: .line 278
            new sun.security.pkcs.ParsingException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Error parsing digest AlgorithmId IDs: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        14: .line 279
            aload 5 /* e */
            invokevirtual java.io.IOException.getMessage:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        15: .line 278
            invokespecial sun.security.pkcs.ParsingException.<init>:(Ljava/lang/String;)V
        16: .line 277
            astore 6 /* pe */
        start local 6 // sun.security.pkcs.ParsingException pe
        17: .line 280
            aload 6 /* pe */
            aload 5 /* e */
            invokevirtual sun.security.pkcs.ParsingException.initCause:(Ljava/lang/Throwable;)Ljava/lang/Throwable;
            pop
        18: .line 281
            aload 6 /* pe */
            athrow
        end local 6 // sun.security.pkcs.ParsingException pe
        end local 5 // java.io.IOException e
        19: .line 284
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new sun.security.pkcs.ContentInfo
            dup
            aload 2 /* dis */
            invokespecial sun.security.pkcs.ContentInfo.<init>:(Lsun/security/util/DerInputStream;)V
            putfield sun.security.pkcs.PKCS7.contentInfo:Lsun/security/pkcs/ContentInfo;
        20: .line 286
            aconst_null
            astore 5 /* certfac */
        start local 5 // java.security.cert.CertificateFactory certfac
        21: .line 288
            ldc "X.509"
            invokestatic java.security.cert.CertificateFactory.getInstance:(Ljava/lang/String;)Ljava/security/cert/CertificateFactory;
            astore 5 /* certfac */
        22: .line 289
            goto 24
      StackMap locals: sun.security.pkcs.PKCS7 sun.security.util.DerValue sun.security.util.DerInputStream sun.security.util.DerValue[] int java.security.cert.CertificateFactory
      StackMap stack: java.security.cert.CertificateException
        23: pop
        24: .line 297
      StackMap locals:
      StackMap stack:
            aload 2 /* dis */
            invokevirtual sun.security.util.DerInputStream.peekByte:()I
            i2b
            bipush -96
            if_icmpne 64
        25: .line 298
            aload 2 /* dis */
            iconst_2
            iconst_1
            invokevirtual sun.security.util.DerInputStream.getSet:(IZ)[Lsun/security/util/DerValue;
            astore 6 /* certVals */
        start local 6 // sun.security.util.DerValue[] certVals
        26: .line 300
            aload 6 /* certVals */
            arraylength
            istore 4 /* len */
        27: .line 301
            aload 0 /* this */
            iload 4 /* len */
            anewarray java.security.cert.X509Certificate
            putfield sun.security.pkcs.PKCS7.certificates:[Ljava/security/cert/X509Certificate;
        28: .line 302
            iconst_0
            istore 7 /* count */
        start local 7 // int count
        29: .line 304
            iconst_0
            istore 8 /* i */
        start local 8 // int i
        30: goto 61
        31: .line 305
      StackMap locals: sun.security.util.DerValue[] int int
      StackMap stack:
            aconst_null
            astore 9 /* bais */
        start local 9 // java.io.ByteArrayInputStream bais
        32: .line 307
            aload 6 /* certVals */
            iload 8 /* i */
            aaload
            invokevirtual sun.security.util.DerValue.getTag:()B
            istore 10 /* tag */
        start local 10 // byte tag
        33: .line 310
            iload 10 /* tag */
            bipush 48
            if_icmpne 58
        34: .line 311
            aload 5 /* certfac */
            ifnonnull 37
        35: .line 312
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.certificates:[Ljava/security/cert/X509Certificate;
            iload 7 /* count */
            new sun.security.x509.X509CertImpl
            dup
            aload 6 /* certVals */
            iload 8 /* i */
            aaload
            invokespecial sun.security.x509.X509CertImpl.<init>:(Lsun/security/util/DerValue;)V
            aastore
        36: .line 313
            goto 44
        37: .line 314
      StackMap locals: java.io.ByteArrayInputStream int
      StackMap stack:
            aload 6 /* certVals */
            iload 8 /* i */
            aaload
            invokevirtual sun.security.util.DerValue.toByteArray:()[B
            astore 11 /* encoded */
        start local 11 // byte[] encoded
        38: .line 315
            new java.io.ByteArrayInputStream
            dup
            aload 11 /* encoded */
            invokespecial java.io.ByteArrayInputStream.<init>:([B)V
            astore 9 /* bais */
        39: .line 316
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.certificates:[Ljava/security/cert/X509Certificate;
            iload 7 /* count */
        40: .line 317
            aload 5 /* certfac */
            aload 9 /* bais */
            invokevirtual java.security.cert.CertificateFactory.generateCertificate:(Ljava/io/InputStream;)Ljava/security/cert/Certificate;
            checkcast java.security.cert.X509Certificate
        41: .line 316
            aastore
        42: .line 318
            aload 9 /* bais */
            invokevirtual java.io.ByteArrayInputStream.close:()V
        43: .line 319
            aconst_null
            astore 9 /* bais */
        end local 11 // byte[] encoded
        44: .line 321
      StackMap locals:
      StackMap stack:
            iinc 7 /* count */ 1
        end local 10 // byte tag
        45: .line 323
            goto 58
      StackMap locals: sun.security.pkcs.PKCS7 sun.security.util.DerValue sun.security.util.DerInputStream sun.security.util.DerValue[] int java.security.cert.CertificateFactory sun.security.util.DerValue[] int int java.io.ByteArrayInputStream
      StackMap stack: java.security.cert.CertificateException
        46: astore 10 /* ce */
        start local 10 // java.security.cert.CertificateException ce
        47: .line 324
            new sun.security.pkcs.ParsingException
            dup
            aload 10 /* ce */
            invokevirtual java.security.cert.CertificateException.getMessage:()Ljava/lang/String;
            invokespecial sun.security.pkcs.ParsingException.<init>:(Ljava/lang/String;)V
            astore 11 /* pe */
        start local 11 // sun.security.pkcs.ParsingException pe
        48: .line 325
            aload 11 /* pe */
            aload 10 /* ce */
            invokevirtual sun.security.pkcs.ParsingException.initCause:(Ljava/lang/Throwable;)Ljava/lang/Throwable;
            pop
        49: .line 326
            aload 11 /* pe */
            athrow
        end local 11 // sun.security.pkcs.ParsingException pe
        end local 10 // java.security.cert.CertificateException ce
        50: .line 327
      StackMap locals:
      StackMap stack: java.io.IOException
            astore 10 /* ioe */
        start local 10 // java.io.IOException ioe
        51: .line 328
            new sun.security.pkcs.ParsingException
            dup
            aload 10 /* ioe */
            invokevirtual java.io.IOException.getMessage:()Ljava/lang/String;
            invokespecial sun.security.pkcs.ParsingException.<init>:(Ljava/lang/String;)V
            astore 11 /* pe */
        start local 11 // sun.security.pkcs.ParsingException pe
        52: .line 329
            aload 11 /* pe */
            aload 10 /* ioe */
            invokevirtual sun.security.pkcs.ParsingException.initCause:(Ljava/lang/Throwable;)Ljava/lang/Throwable;
            pop
        53: .line 330
            aload 11 /* pe */
            athrow
        end local 11 // sun.security.pkcs.ParsingException pe
        end local 10 // java.io.IOException ioe
        54: .line 331
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 12
        55: .line 332
            aload 9 /* bais */
            ifnull 57
        56: .line 333
            aload 9 /* bais */
            invokevirtual java.io.ByteArrayInputStream.close:()V
        57: .line 334
      StackMap locals: sun.security.pkcs.PKCS7 sun.security.util.DerValue sun.security.util.DerInputStream sun.security.util.DerValue[] int java.security.cert.CertificateFactory sun.security.util.DerValue[] int int java.io.ByteArrayInputStream top top java.lang.Throwable
      StackMap stack:
            aload 12
            athrow
        58: .line 332
      StackMap locals: sun.security.pkcs.PKCS7 sun.security.util.DerValue sun.security.util.DerInputStream sun.security.util.DerValue[] int java.security.cert.CertificateFactory sun.security.util.DerValue[] int int java.io.ByteArrayInputStream
      StackMap stack:
            aload 9 /* bais */
            ifnull 60
        59: .line 333
            aload 9 /* bais */
            invokevirtual java.io.ByteArrayInputStream.close:()V
        end local 9 // java.io.ByteArrayInputStream bais
        60: .line 304
      StackMap locals:
      StackMap stack:
            iinc 8 /* i */ 1
      StackMap locals:
      StackMap stack:
        61: iload 8 /* i */
            iload 4 /* len */
            if_icmplt 31
        end local 8 // int i
        62: .line 336
            iload 7 /* count */
            iload 4 /* len */
            if_icmpeq 64
        63: .line 337
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.certificates:[Ljava/security/cert/X509Certificate;
            iload 7 /* count */
            invokestatic java.util.Arrays.copyOf:([Ljava/lang/Object;I)[Ljava/lang/Object;
            checkcast java.security.cert.X509Certificate[]
            putfield sun.security.pkcs.PKCS7.certificates:[Ljava/security/cert/X509Certificate;
        end local 7 // int count
        end local 6 // sun.security.util.DerValue[] certVals
        64: .line 342
      StackMap locals:
      StackMap stack:
            aload 2 /* dis */
            invokevirtual sun.security.util.DerInputStream.peekByte:()I
            i2b
            bipush -95
            if_icmpne 92
        65: .line 343
            aload 2 /* dis */
            iconst_1
            iconst_1
            invokevirtual sun.security.util.DerInputStream.getSet:(IZ)[Lsun/security/util/DerValue;
            astore 6 /* crlVals */
        start local 6 // sun.security.util.DerValue[] crlVals
        66: .line 345
            aload 6 /* crlVals */
            arraylength
            istore 4 /* len */
        67: .line 346
            aload 0 /* this */
            iload 4 /* len */
            anewarray java.security.cert.X509CRL
            putfield sun.security.pkcs.PKCS7.crls:[Ljava/security/cert/X509CRL;
        68: .line 348
            iconst_0
            istore 7 /* i */
        start local 7 // int i
        69: goto 91
        70: .line 349
      StackMap locals: sun.security.util.DerValue[] int
      StackMap stack:
            aconst_null
            astore 8 /* bais */
        start local 8 // java.io.ByteArrayInputStream bais
        71: .line 351
            aload 5 /* certfac */
            ifnonnull 73
        72: .line 352
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.crls:[Ljava/security/cert/X509CRL;
            iload 7 /* i */
            new sun.security.x509.X509CRLImpl
            dup
            aload 6 /* crlVals */
            iload 7 /* i */
            aaload
            invokespecial sun.security.x509.X509CRLImpl.<init>:(Lsun/security/util/DerValue;)V
            aastore
            goto 88
        73: .line 354
      StackMap locals: java.io.ByteArrayInputStream
      StackMap stack:
            aload 6 /* crlVals */
            iload 7 /* i */
            aaload
            invokevirtual sun.security.util.DerValue.toByteArray:()[B
            astore 9 /* encoded */
        start local 9 // byte[] encoded
        74: .line 355
            new java.io.ByteArrayInputStream
            dup
            aload 9 /* encoded */
            invokespecial java.io.ByteArrayInputStream.<init>:([B)V
            astore 8 /* bais */
        75: .line 356
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.crls:[Ljava/security/cert/X509CRL;
            iload 7 /* i */
            aload 5 /* certfac */
            aload 8 /* bais */
            invokevirtual java.security.cert.CertificateFactory.generateCRL:(Ljava/io/InputStream;)Ljava/security/cert/CRL;
            checkcast java.security.cert.X509CRL
            aastore
        76: .line 357
            aload 8 /* bais */
            invokevirtual java.io.ByteArrayInputStream.close:()V
        77: .line 358
            aconst_null
            astore 8 /* bais */
        end local 9 // byte[] encoded
        78: .line 360
            goto 88
      StackMap locals:
      StackMap stack: java.security.cert.CRLException
        79: astore 9 /* e */
        start local 9 // java.security.cert.CRLException e
        80: .line 362
            new sun.security.pkcs.ParsingException
            dup
            aload 9 /* e */
            invokevirtual java.security.cert.CRLException.getMessage:()Ljava/lang/String;
            invokespecial sun.security.pkcs.ParsingException.<init>:(Ljava/lang/String;)V
        81: .line 361
            astore 10 /* pe */
        start local 10 // sun.security.pkcs.ParsingException pe
        82: .line 363
            aload 10 /* pe */
            aload 9 /* e */
            invokevirtual sun.security.pkcs.ParsingException.initCause:(Ljava/lang/Throwable;)Ljava/lang/Throwable;
            pop
        83: .line 364
            aload 10 /* pe */
            athrow
        end local 10 // sun.security.pkcs.ParsingException pe
        end local 9 // java.security.cert.CRLException e
        84: .line 365
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 11
        85: .line 366
            aload 8 /* bais */
            ifnull 87
        86: .line 367
            aload 8 /* bais */
            invokevirtual java.io.ByteArrayInputStream.close:()V
        87: .line 368
      StackMap locals: sun.security.pkcs.PKCS7 sun.security.util.DerValue sun.security.util.DerInputStream sun.security.util.DerValue[] int java.security.cert.CertificateFactory sun.security.util.DerValue[] int java.io.ByteArrayInputStream top top java.lang.Throwable
      StackMap stack:
            aload 11
            athrow
        88: .line 366
      StackMap locals: sun.security.pkcs.PKCS7 sun.security.util.DerValue sun.security.util.DerInputStream sun.security.util.DerValue[] int java.security.cert.CertificateFactory sun.security.util.DerValue[] int java.io.ByteArrayInputStream
      StackMap stack:
            aload 8 /* bais */
            ifnull 90
        89: .line 367
            aload 8 /* bais */
            invokevirtual java.io.ByteArrayInputStream.close:()V
        end local 8 // java.io.ByteArrayInputStream bais
        90: .line 348
      StackMap locals:
      StackMap stack:
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        91: iload 7 /* i */
            iload 4 /* len */
            if_icmplt 70
        end local 7 // int i
        end local 6 // sun.security.util.DerValue[] crlVals
        92: .line 373
      StackMap locals:
      StackMap stack:
            aload 2 /* dis */
            iconst_1
            invokevirtual sun.security.util.DerInputStream.getSet:(I)[Lsun/security/util/DerValue;
            astore 6 /* signerInfoVals */
        start local 6 // sun.security.util.DerValue[] signerInfoVals
        93: .line 375
            aload 6 /* signerInfoVals */
            arraylength
            istore 4 /* len */
        94: .line 376
            aload 0 /* this */
            iload 4 /* len */
            anewarray sun.security.pkcs.SignerInfo
            putfield sun.security.pkcs.PKCS7.signerInfos:[Lsun/security/pkcs/SignerInfo;
        95: .line 378
            iconst_0
            istore 7 /* i */
        start local 7 // int i
        96: goto 100
        97: .line 379
      StackMap locals: sun.security.util.DerValue[] int
      StackMap stack:
            aload 6 /* signerInfoVals */
            iload 7 /* i */
            aaload
            invokevirtual sun.security.util.DerValue.toDerInputStream:()Lsun/security/util/DerInputStream;
            astore 8 /* in */
        start local 8 // sun.security.util.DerInputStream in
        98: .line 380
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.signerInfos:[Lsun/security/pkcs/SignerInfo;
            iload 7 /* i */
            new sun.security.pkcs.SignerInfo
            dup
            aload 8 /* in */
            invokespecial sun.security.pkcs.SignerInfo.<init>:(Lsun/security/util/DerInputStream;)V
            aastore
        end local 8 // sun.security.util.DerInputStream in
        99: .line 378
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
       100: iload 7 /* i */
            iload 4 /* len */
            if_icmplt 97
        end local 7 // int i
       101: .line 382
            return
        end local 6 // sun.security.util.DerValue[] signerInfoVals
        end local 5 // java.security.cert.CertificateFactory certfac
        end local 4 // int len
        end local 3 // sun.security.util.DerValue[] digestAlgorithmIdVals
        end local 2 // sun.security.util.DerInputStream dis
        end local 1 // sun.security.util.DerValue val
        end local 0 // sun.security.pkcs.PKCS7 this
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0  102     0                   this  Lsun/security/pkcs/PKCS7;
            0  102     1                    val  Lsun/security/util/DerValue;
            1  102     2                    dis  Lsun/security/util/DerInputStream;
            3  102     3  digestAlgorithmIdVals  [Lsun/security/util/DerValue;
            4  102     4                    len  I
            6   11     5                      i  I
            8    9     6                    oid  Lsun/security/util/DerValue;
           13   19     5                      e  Ljava/io/IOException;
           17   19     6                     pe  Lsun/security/pkcs/ParsingException;
           21  102     5                certfac  Ljava/security/cert/CertificateFactory;
           26   64     6               certVals  [Lsun/security/util/DerValue;
           29   64     7                  count  I
           30   62     8                      i  I
           32   60     9                   bais  Ljava/io/ByteArrayInputStream;
           33   45    10                    tag  B
           38   44    11                encoded  [B
           47   50    10                     ce  Ljava/security/cert/CertificateException;
           48   50    11                     pe  Lsun/security/pkcs/ParsingException;
           51   54    10                    ioe  Ljava/io/IOException;
           52   54    11                     pe  Lsun/security/pkcs/ParsingException;
           66   92     6                crlVals  [Lsun/security/util/DerValue;
           69   92     7                      i  I
           71   90     8                   bais  Ljava/io/ByteArrayInputStream;
           74   78     9                encoded  [B
           80   84     9                      e  Ljava/security/cert/CRLException;
           82   84    10                     pe  Lsun/security/pkcs/ParsingException;
           93  102     6         signerInfoVals  [Lsun/security/util/DerValue;
           96  101     7                      i  I
           98   99     8                     in  Lsun/security/util/DerInputStream;
      Exception table:
        from    to  target  type
           5    11      12  Class java.io.IOException
          21    22      23  Class java.security.cert.CertificateException
          32    45      46  Class java.security.cert.CertificateException
          32    45      50  Class java.io.IOException
          32    54      54  any
          71    78      79  Class java.security.cert.CRLException
          71    84      84  any
    Exceptions:
      throws sun.security.pkcs.ParsingException, java.io.IOException
    MethodParameters:
      Name  Flags
      val   

  private void parseOldSignedData(sun.security.util.DerValue);
    descriptor: (Lsun/security/util/DerValue;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=12, args_size=2
        start local 0 // sun.security.pkcs.PKCS7 this
        start local 1 // sun.security.util.DerValue val
         0: .line 391
            aload 1 /* val */
            invokevirtual sun.security.util.DerValue.toDerInputStream:()Lsun/security/util/DerInputStream;
            astore 2 /* dis */
        start local 2 // sun.security.util.DerInputStream dis
         1: .line 394
            aload 0 /* this */
            aload 2 /* dis */
            invokevirtual sun.security.util.DerInputStream.getBigInteger:()Ljava/math/BigInteger;
            putfield sun.security.pkcs.PKCS7.version:Ljava/math/BigInteger;
         2: .line 397
            aload 2 /* dis */
            iconst_1
            invokevirtual sun.security.util.DerInputStream.getSet:(I)[Lsun/security/util/DerValue;
            astore 3 /* digestAlgorithmIdVals */
        start local 3 // sun.security.util.DerValue[] digestAlgorithmIdVals
         3: .line 398
            aload 3 /* digestAlgorithmIdVals */
            arraylength
            istore 4 /* len */
        start local 4 // int len
         4: .line 400
            aload 0 /* this */
            iload 4 /* len */
            anewarray sun.security.x509.AlgorithmId
            putfield sun.security.pkcs.PKCS7.digestAlgorithmIds:[Lsun/security/x509/AlgorithmId;
         5: .line 402
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         6: goto 10
         7: .line 403
      StackMap locals: sun.security.pkcs.PKCS7 sun.security.util.DerValue sun.security.util.DerInputStream sun.security.util.DerValue[] int int
      StackMap stack:
            aload 3 /* digestAlgorithmIdVals */
            iload 5 /* i */
            aaload
            astore 6 /* oid */
        start local 6 // sun.security.util.DerValue oid
         8: .line 404
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.digestAlgorithmIds:[Lsun/security/x509/AlgorithmId;
            iload 5 /* i */
            aload 6 /* oid */
            invokestatic sun.security.x509.AlgorithmId.parse:(Lsun/security/util/DerValue;)Lsun/security/x509/AlgorithmId;
            aastore
        end local 6 // sun.security.util.DerValue oid
         9: .line 402
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        10: iload 5 /* i */
            iload 4 /* len */
            if_icmplt 7
        end local 5 // int i
        11: .line 406
            goto 14
      StackMap locals: sun.security.pkcs.PKCS7 sun.security.util.DerValue sun.security.util.DerInputStream sun.security.util.DerValue[] int
      StackMap stack: java.io.IOException
        12: pop
        13: .line 407
            new sun.security.pkcs.ParsingException
            dup
            ldc "Error parsing digest AlgorithmId IDs"
            invokespecial sun.security.pkcs.ParsingException.<init>:(Ljava/lang/String;)V
            athrow
        14: .line 411
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new sun.security.pkcs.ContentInfo
            dup
            aload 2 /* dis */
            iconst_1
            invokespecial sun.security.pkcs.ContentInfo.<init>:(Lsun/security/util/DerInputStream;Z)V
            putfield sun.security.pkcs.PKCS7.contentInfo:Lsun/security/pkcs/ContentInfo;
        15: .line 414
            aconst_null
            astore 5 /* certfac */
        start local 5 // java.security.cert.CertificateFactory certfac
        16: .line 416
            ldc "X.509"
            invokestatic java.security.cert.CertificateFactory.getInstance:(Ljava/lang/String;)Ljava/security/cert/CertificateFactory;
            astore 5 /* certfac */
        17: .line 417
            goto 19
      StackMap locals: sun.security.pkcs.PKCS7 sun.security.util.DerValue sun.security.util.DerInputStream sun.security.util.DerValue[] int java.security.cert.CertificateFactory
      StackMap stack: java.security.cert.CertificateException
        18: pop
        19: .line 420
      StackMap locals:
      StackMap stack:
            aload 2 /* dis */
            iconst_2
            invokevirtual sun.security.util.DerInputStream.getSet:(I)[Lsun/security/util/DerValue;
            astore 6 /* certVals */
        start local 6 // sun.security.util.DerValue[] certVals
        20: .line 421
            aload 6 /* certVals */
            arraylength
            istore 4 /* len */
        21: .line 422
            aload 0 /* this */
            iload 4 /* len */
            anewarray java.security.cert.X509Certificate
            putfield sun.security.pkcs.PKCS7.certificates:[Ljava/security/cert/X509Certificate;
        22: .line 424
            iconst_0
            istore 7 /* i */
        start local 7 // int i
        23: goto 50
        24: .line 425
      StackMap locals: sun.security.util.DerValue[] int
      StackMap stack:
            aconst_null
            astore 8 /* bais */
        start local 8 // java.io.ByteArrayInputStream bais
        25: .line 427
            aload 5 /* certfac */
            ifnonnull 27
        26: .line 428
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.certificates:[Ljava/security/cert/X509Certificate;
            iload 7 /* i */
            new sun.security.x509.X509CertImpl
            dup
            aload 6 /* certVals */
            iload 7 /* i */
            aaload
            invokespecial sun.security.x509.X509CertImpl.<init>:(Lsun/security/util/DerValue;)V
            aastore
            goto 47
        27: .line 430
      StackMap locals: java.io.ByteArrayInputStream
      StackMap stack:
            aload 6 /* certVals */
            iload 7 /* i */
            aaload
            invokevirtual sun.security.util.DerValue.toByteArray:()[B
            astore 9 /* encoded */
        start local 9 // byte[] encoded
        28: .line 431
            new java.io.ByteArrayInputStream
            dup
            aload 9 /* encoded */
            invokespecial java.io.ByteArrayInputStream.<init>:([B)V
            astore 8 /* bais */
        29: .line 432
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.certificates:[Ljava/security/cert/X509Certificate;
            iload 7 /* i */
        30: .line 433
            aload 5 /* certfac */
            aload 8 /* bais */
            invokevirtual java.security.cert.CertificateFactory.generateCertificate:(Ljava/io/InputStream;)Ljava/security/cert/Certificate;
            checkcast java.security.cert.X509Certificate
        31: .line 432
            aastore
        32: .line 434
            aload 8 /* bais */
            invokevirtual java.io.ByteArrayInputStream.close:()V
        33: .line 435
            aconst_null
            astore 8 /* bais */
        end local 9 // byte[] encoded
        34: .line 437
            goto 47
      StackMap locals:
      StackMap stack: java.security.cert.CertificateException
        35: astore 9 /* ce */
        start local 9 // java.security.cert.CertificateException ce
        36: .line 438
            new sun.security.pkcs.ParsingException
            dup
            aload 9 /* ce */
            invokevirtual java.security.cert.CertificateException.getMessage:()Ljava/lang/String;
            invokespecial sun.security.pkcs.ParsingException.<init>:(Ljava/lang/String;)V
            astore 10 /* pe */
        start local 10 // sun.security.pkcs.ParsingException pe
        37: .line 439
            aload 10 /* pe */
            aload 9 /* ce */
            invokevirtual sun.security.pkcs.ParsingException.initCause:(Ljava/lang/Throwable;)Ljava/lang/Throwable;
            pop
        38: .line 440
            aload 10 /* pe */
            athrow
        end local 10 // sun.security.pkcs.ParsingException pe
        end local 9 // java.security.cert.CertificateException ce
        39: .line 441
      StackMap locals:
      StackMap stack: java.io.IOException
            astore 9 /* ioe */
        start local 9 // java.io.IOException ioe
        40: .line 442
            new sun.security.pkcs.ParsingException
            dup
            aload 9 /* ioe */
            invokevirtual java.io.IOException.getMessage:()Ljava/lang/String;
            invokespecial sun.security.pkcs.ParsingException.<init>:(Ljava/lang/String;)V
            astore 10 /* pe */
        start local 10 // sun.security.pkcs.ParsingException pe
        41: .line 443
            aload 10 /* pe */
            aload 9 /* ioe */
            invokevirtual sun.security.pkcs.ParsingException.initCause:(Ljava/lang/Throwable;)Ljava/lang/Throwable;
            pop
        42: .line 444
            aload 10 /* pe */
            athrow
        end local 10 // sun.security.pkcs.ParsingException pe
        end local 9 // java.io.IOException ioe
        43: .line 445
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 11
        44: .line 446
            aload 8 /* bais */
            ifnull 46
        45: .line 447
            aload 8 /* bais */
            invokevirtual java.io.ByteArrayInputStream.close:()V
        46: .line 448
      StackMap locals: sun.security.pkcs.PKCS7 sun.security.util.DerValue sun.security.util.DerInputStream sun.security.util.DerValue[] int java.security.cert.CertificateFactory sun.security.util.DerValue[] int java.io.ByteArrayInputStream top top java.lang.Throwable
      StackMap stack:
            aload 11
            athrow
        47: .line 446
      StackMap locals: sun.security.pkcs.PKCS7 sun.security.util.DerValue sun.security.util.DerInputStream sun.security.util.DerValue[] int java.security.cert.CertificateFactory sun.security.util.DerValue[] int java.io.ByteArrayInputStream
      StackMap stack:
            aload 8 /* bais */
            ifnull 49
        48: .line 447
            aload 8 /* bais */
            invokevirtual java.io.ByteArrayInputStream.close:()V
        end local 8 // java.io.ByteArrayInputStream bais
        49: .line 424
      StackMap locals:
      StackMap stack:
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        50: iload 7 /* i */
            iload 4 /* len */
            if_icmplt 24
        end local 7 // int i
        51: .line 452
            aload 2 /* dis */
            iconst_0
            invokevirtual sun.security.util.DerInputStream.getSet:(I)[Lsun/security/util/DerValue;
            pop
        52: .line 455
            aload 2 /* dis */
            iconst_1
            invokevirtual sun.security.util.DerInputStream.getSet:(I)[Lsun/security/util/DerValue;
            astore 7 /* signerInfoVals */
        start local 7 // sun.security.util.DerValue[] signerInfoVals
        53: .line 456
            aload 7 /* signerInfoVals */
            arraylength
            istore 4 /* len */
        54: .line 457
            aload 0 /* this */
            iload 4 /* len */
            anewarray sun.security.pkcs.SignerInfo
            putfield sun.security.pkcs.PKCS7.signerInfos:[Lsun/security/pkcs/SignerInfo;
        55: .line 458
            iconst_0
            istore 8 /* i */
        start local 8 // int i
        56: goto 60
        57: .line 459
      StackMap locals: sun.security.pkcs.PKCS7 sun.security.util.DerValue sun.security.util.DerInputStream sun.security.util.DerValue[] int java.security.cert.CertificateFactory sun.security.util.DerValue[] sun.security.util.DerValue[] int
      StackMap stack:
            aload 7 /* signerInfoVals */
            iload 8 /* i */
            aaload
            invokevirtual sun.security.util.DerValue.toDerInputStream:()Lsun/security/util/DerInputStream;
            astore 9 /* in */
        start local 9 // sun.security.util.DerInputStream in
        58: .line 460
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.signerInfos:[Lsun/security/pkcs/SignerInfo;
            iload 8 /* i */
            new sun.security.pkcs.SignerInfo
            dup
            aload 9 /* in */
            iconst_1
            invokespecial sun.security.pkcs.SignerInfo.<init>:(Lsun/security/util/DerInputStream;Z)V
            aastore
        end local 9 // sun.security.util.DerInputStream in
        59: .line 458
            iinc 8 /* i */ 1
      StackMap locals:
      StackMap stack:
        60: iload 8 /* i */
            iload 4 /* len */
            if_icmplt 57
        end local 8 // int i
        61: .line 462
            return
        end local 7 // sun.security.util.DerValue[] signerInfoVals
        end local 6 // sun.security.util.DerValue[] certVals
        end local 5 // java.security.cert.CertificateFactory certfac
        end local 4 // int len
        end local 3 // sun.security.util.DerValue[] digestAlgorithmIdVals
        end local 2 // sun.security.util.DerInputStream dis
        end local 1 // sun.security.util.DerValue val
        end local 0 // sun.security.pkcs.PKCS7 this
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0   62     0                   this  Lsun/security/pkcs/PKCS7;
            0   62     1                    val  Lsun/security/util/DerValue;
            1   62     2                    dis  Lsun/security/util/DerInputStream;
            3   62     3  digestAlgorithmIdVals  [Lsun/security/util/DerValue;
            4   62     4                    len  I
            6   11     5                      i  I
            8    9     6                    oid  Lsun/security/util/DerValue;
           16   62     5                certfac  Ljava/security/cert/CertificateFactory;
           20   62     6               certVals  [Lsun/security/util/DerValue;
           23   51     7                      i  I
           25   49     8                   bais  Ljava/io/ByteArrayInputStream;
           28   34     9                encoded  [B
           36   39     9                     ce  Ljava/security/cert/CertificateException;
           37   39    10                     pe  Lsun/security/pkcs/ParsingException;
           40   43     9                    ioe  Ljava/io/IOException;
           41   43    10                     pe  Lsun/security/pkcs/ParsingException;
           53   62     7         signerInfoVals  [Lsun/security/util/DerValue;
           56   61     8                      i  I
           58   59     9                     in  Lsun/security/util/DerInputStream;
      Exception table:
        from    to  target  type
           5    11      12  Class java.io.IOException
          16    17      18  Class java.security.cert.CertificateException
          25    34      35  Class java.security.cert.CertificateException
          25    34      39  Class java.io.IOException
          25    43      43  any
    Exceptions:
      throws sun.security.pkcs.ParsingException, java.io.IOException
    MethodParameters:
      Name  Flags
      val   

  public void encodeSignedData(java.io.OutputStream);
    descriptor: (Ljava/io/OutputStream;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // sun.security.pkcs.PKCS7 this
        start local 1 // java.io.OutputStream out
         0: .line 471
            new sun.security.util.DerOutputStream
            dup
            invokespecial sun.security.util.DerOutputStream.<init>:()V
            astore 2 /* derout */
        start local 2 // sun.security.util.DerOutputStream derout
         1: .line 472
            aload 0 /* this */
            aload 2 /* derout */
            invokevirtual sun.security.pkcs.PKCS7.encodeSignedData:(Lsun/security/util/DerOutputStream;)V
         2: .line 473
            aload 1 /* out */
            aload 2 /* derout */
            invokevirtual sun.security.util.DerOutputStream.toByteArray:()[B
            invokevirtual java.io.OutputStream.write:([B)V
         3: .line 474
            return
        end local 2 // sun.security.util.DerOutputStream derout
        end local 1 // java.io.OutputStream out
        end local 0 // sun.security.pkcs.PKCS7 this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0    this  Lsun/security/pkcs/PKCS7;
            0    4     1     out  Ljava/io/OutputStream;
            1    4     2  derout  Lsun/security/util/DerOutputStream;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      out   

  public void encodeSignedData(sun.security.util.DerOutputStream);
    descriptor: (Lsun/security/util/DerOutputStream;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=9, args_size=2
        start local 0 // sun.security.pkcs.PKCS7 this
        start local 1 // sun.security.util.DerOutputStream out
         0: .line 485
            new sun.security.util.DerOutputStream
            dup
            invokespecial sun.security.util.DerOutputStream.<init>:()V
            astore 2 /* signedData */
        start local 2 // sun.security.util.DerOutputStream signedData
         1: .line 488
            aload 2 /* signedData */
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.version:Ljava/math/BigInteger;
            invokevirtual sun.security.util.DerOutputStream.putInteger:(Ljava/math/BigInteger;)V
         2: .line 491
            aload 2 /* signedData */
            bipush 49
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.digestAlgorithmIds:[Lsun/security/x509/AlgorithmId;
            invokevirtual sun.security.util.DerOutputStream.putOrderedSetOf:(B[Lsun/security/util/DerEncoder;)V
         3: .line 494
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.contentInfo:Lsun/security/pkcs/ContentInfo;
            aload 2 /* signedData */
            invokevirtual sun.security.pkcs.ContentInfo.encode:(Lsun/security/util/DerOutputStream;)V
         4: .line 497
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.certificates:[Ljava/security/cert/X509Certificate;
            ifnull 18
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.certificates:[Ljava/security/cert/X509Certificate;
            arraylength
            ifeq 18
         5: .line 499
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.certificates:[Ljava/security/cert/X509Certificate;
            arraylength
            anewarray sun.security.x509.X509CertImpl
            astore 3 /* implCerts */
        start local 3 // sun.security.x509.X509CertImpl[] implCerts
         6: .line 500
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         7: goto 16
         8: .line 501
      StackMap locals: sun.security.util.DerOutputStream sun.security.x509.X509CertImpl[] int
      StackMap stack:
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.certificates:[Ljava/security/cert/X509Certificate;
            iload 4 /* i */
            aaload
            instanceof sun.security.x509.X509CertImpl
            ifeq 10
         9: .line 502
            aload 3 /* implCerts */
            iload 4 /* i */
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.certificates:[Ljava/security/cert/X509Certificate;
            iload 4 /* i */
            aaload
            checkcast sun.security.x509.X509CertImpl
            aastore
            goto 15
        10: .line 505
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.certificates:[Ljava/security/cert/X509Certificate;
            iload 4 /* i */
            aaload
            invokevirtual java.security.cert.X509Certificate.getEncoded:()[B
            astore 5 /* encoded */
        start local 5 // byte[] encoded
        11: .line 506
            aload 3 /* implCerts */
            iload 4 /* i */
            new sun.security.x509.X509CertImpl
            dup
            aload 5 /* encoded */
            invokespecial sun.security.x509.X509CertImpl.<init>:([B)V
            aastore
        end local 5 // byte[] encoded
        12: .line 507
            goto 15
      StackMap locals:
      StackMap stack: java.security.cert.CertificateException
        13: astore 5 /* ce */
        start local 5 // java.security.cert.CertificateException ce
        14: .line 508
            new java.io.IOException
            dup
            aload 5 /* ce */
            invokespecial java.io.IOException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 5 // java.security.cert.CertificateException ce
        15: .line 500
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        16: iload 4 /* i */
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.certificates:[Ljava/security/cert/X509Certificate;
            arraylength
            if_icmplt 8
        end local 4 // int i
        17: .line 515
            aload 2 /* signedData */
            bipush -96
            aload 3 /* implCerts */
            invokevirtual sun.security.util.DerOutputStream.putOrderedSetOf:(B[Lsun/security/util/DerEncoder;)V
        end local 3 // sun.security.x509.X509CertImpl[] implCerts
        18: .line 519
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.crls:[Ljava/security/cert/X509CRL;
            ifnull 34
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.crls:[Ljava/security/cert/X509CRL;
            arraylength
            ifeq 34
        19: .line 521
            new java.util.HashSet
            dup
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.crls:[Ljava/security/cert/X509CRL;
            arraylength
            invokespecial java.util.HashSet.<init>:(I)V
            astore 3 /* implCRLs */
        start local 3 // java.util.Set implCRLs
        20: .line 522
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.crls:[Ljava/security/cert/X509CRL;
            dup
            astore 7
            arraylength
            istore 6
            iconst_0
            istore 5
            goto 30
      StackMap locals: sun.security.pkcs.PKCS7 sun.security.util.DerOutputStream sun.security.util.DerOutputStream java.util.Set top int int java.security.cert.X509CRL[]
      StackMap stack:
        21: aload 7
            iload 5
            aaload
            astore 4 /* crl */
        start local 4 // java.security.cert.X509CRL crl
        22: .line 523
            aload 4 /* crl */
            instanceof sun.security.x509.X509CRLImpl
            ifeq 24
        23: .line 524
            aload 3 /* implCRLs */
            aload 4 /* crl */
            checkcast sun.security.x509.X509CRLImpl
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
            goto 29
        24: .line 527
      StackMap locals: sun.security.pkcs.PKCS7 sun.security.util.DerOutputStream sun.security.util.DerOutputStream java.util.Set java.security.cert.X509CRL int int java.security.cert.X509CRL[]
      StackMap stack:
            aload 4 /* crl */
            invokevirtual java.security.cert.X509CRL.getEncoded:()[B
            astore 8 /* encoded */
        start local 8 // byte[] encoded
        25: .line 528
            aload 3 /* implCRLs */
            new sun.security.x509.X509CRLImpl
            dup
            aload 8 /* encoded */
            invokespecial sun.security.x509.X509CRLImpl.<init>:([B)V
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        end local 8 // byte[] encoded
        26: .line 529
            goto 29
      StackMap locals:
      StackMap stack: java.security.cert.CRLException
        27: astore 8 /* ce */
        start local 8 // java.security.cert.CRLException ce
        28: .line 530
            new java.io.IOException
            dup
            aload 8 /* ce */
            invokespecial java.io.IOException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 8 // java.security.cert.CRLException ce
        end local 4 // java.security.cert.X509CRL crl
        29: .line 522
      StackMap locals: sun.security.pkcs.PKCS7 sun.security.util.DerOutputStream sun.security.util.DerOutputStream java.util.Set top int int java.security.cert.X509CRL[]
      StackMap stack:
            iinc 5 1
      StackMap locals:
      StackMap stack:
        30: iload 5
            iload 6
            if_icmplt 21
        31: .line 537
            aload 2 /* signedData */
            bipush -95
        32: .line 538
            aload 3 /* implCRLs */
            aload 3 /* implCRLs */
            invokeinterface java.util.Set.size:()I
            anewarray sun.security.x509.X509CRLImpl
            invokeinterface java.util.Set.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast sun.security.util.DerEncoder[]
        33: .line 537
            invokevirtual sun.security.util.DerOutputStream.putOrderedSetOf:(B[Lsun/security/util/DerEncoder;)V
        end local 3 // java.util.Set implCRLs
        34: .line 542
      StackMap locals: sun.security.pkcs.PKCS7 sun.security.util.DerOutputStream sun.security.util.DerOutputStream
      StackMap stack:
            aload 2 /* signedData */
            bipush 49
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.signerInfos:[Lsun/security/pkcs/SignerInfo;
            invokevirtual sun.security.util.DerOutputStream.putOrderedSetOf:(B[Lsun/security/util/DerEncoder;)V
        35: .line 545
            new sun.security.util.DerValue
            dup
            bipush 48
        36: .line 546
            aload 2 /* signedData */
            invokevirtual sun.security.util.DerOutputStream.toByteArray:()[B
        37: .line 545
            invokespecial sun.security.util.DerValue.<init>:(B[B)V
            astore 3 /* signedDataSeq */
        start local 3 // sun.security.util.DerValue signedDataSeq
        38: .line 549
            new sun.security.pkcs.ContentInfo
            dup
            getstatic sun.security.pkcs.ContentInfo.SIGNED_DATA_OID:Lsun/security/util/ObjectIdentifier;
        39: .line 550
            aload 3 /* signedDataSeq */
        40: .line 549
            invokespecial sun.security.pkcs.ContentInfo.<init>:(Lsun/security/util/ObjectIdentifier;Lsun/security/util/DerValue;)V
            astore 4 /* block */
        start local 4 // sun.security.pkcs.ContentInfo block
        41: .line 553
            aload 4 /* block */
            aload 1 /* out */
            invokevirtual sun.security.pkcs.ContentInfo.encode:(Lsun/security/util/DerOutputStream;)V
        42: .line 554
            return
        end local 4 // sun.security.pkcs.ContentInfo block
        end local 3 // sun.security.util.DerValue signedDataSeq
        end local 2 // sun.security.util.DerOutputStream signedData
        end local 1 // sun.security.util.DerOutputStream out
        end local 0 // sun.security.pkcs.PKCS7 this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   43     0           this  Lsun/security/pkcs/PKCS7;
            0   43     1            out  Lsun/security/util/DerOutputStream;
            1   43     2     signedData  Lsun/security/util/DerOutputStream;
            6   18     3      implCerts  [Lsun/security/x509/X509CertImpl;
            7   17     4              i  I
           11   12     5        encoded  [B
           14   15     5             ce  Ljava/security/cert/CertificateException;
           20   34     3       implCRLs  Ljava/util/Set<Lsun/security/x509/X509CRLImpl;>;
           22   29     4            crl  Ljava/security/cert/X509CRL;
           25   26     8        encoded  [B
           28   29     8             ce  Ljava/security/cert/CRLException;
           38   43     3  signedDataSeq  Lsun/security/util/DerValue;
           41   43     4          block  Lsun/security/pkcs/ContentInfo;
      Exception table:
        from    to  target  type
          10    12      13  Class java.security.cert.CertificateException
          24    26      27  Class java.security.cert.CRLException
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      out   

  public sun.security.pkcs.SignerInfo verify(sun.security.pkcs.SignerInfo, byte[]);
    descriptor: (Lsun/security/pkcs/SignerInfo;[B)Lsun/security/pkcs/SignerInfo;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // sun.security.pkcs.PKCS7 this
        start local 1 // sun.security.pkcs.SignerInfo info
        start local 2 // byte[] bytes
         0: .line 567
            aload 1 /* info */
            aload 0 /* this */
            aload 2 /* bytes */
            invokevirtual sun.security.pkcs.SignerInfo.verify:(Lsun/security/pkcs/PKCS7;[B)Lsun/security/pkcs/SignerInfo;
            areturn
        end local 2 // byte[] bytes
        end local 1 // sun.security.pkcs.SignerInfo info
        end local 0 // sun.security.pkcs.PKCS7 this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lsun/security/pkcs/PKCS7;
            0    1     1   info  Lsun/security/pkcs/SignerInfo;
            0    1     2  bytes  [B
    Exceptions:
      throws java.security.NoSuchAlgorithmException, java.security.SignatureException
    MethodParameters:
       Name  Flags
      info   
      bytes  

  public sun.security.pkcs.SignerInfo[] verify(byte[]);
    descriptor: ([B)[Lsun/security/pkcs/SignerInfo;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // sun.security.pkcs.PKCS7 this
        start local 1 // byte[] bytes
         0: .line 581
            new java.util.Vector
            dup
            invokespecial java.util.Vector.<init>:()V
            astore 2 /* intResult */
        start local 2 // java.util.Vector intResult
         1: .line 582
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         2: goto 7
         3: .line 584
      StackMap locals: java.util.Vector int
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.signerInfos:[Lsun/security/pkcs/SignerInfo;
            iload 3 /* i */
            aaload
            aload 1 /* bytes */
            invokevirtual sun.security.pkcs.PKCS7.verify:(Lsun/security/pkcs/SignerInfo;[B)Lsun/security/pkcs/SignerInfo;
            astore 4 /* signerInfo */
        start local 4 // sun.security.pkcs.SignerInfo signerInfo
         4: .line 585
            aload 4 /* signerInfo */
            ifnull 6
         5: .line 586
            aload 2 /* intResult */
            aload 4 /* signerInfo */
            invokevirtual java.util.Vector.addElement:(Ljava/lang/Object;)V
        end local 4 // sun.security.pkcs.SignerInfo signerInfo
         6: .line 582
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         7: iload 3 /* i */
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.signerInfos:[Lsun/security/pkcs/SignerInfo;
            arraylength
            if_icmplt 3
        end local 3 // int i
         8: .line 589
            aload 2 /* intResult */
            invokevirtual java.util.Vector.isEmpty:()Z
            ifne 12
         9: .line 591
            aload 2 /* intResult */
            invokevirtual java.util.Vector.size:()I
            anewarray sun.security.pkcs.SignerInfo
            astore 3 /* result */
        start local 3 // sun.security.pkcs.SignerInfo[] result
        10: .line 592
            aload 2 /* intResult */
            aload 3 /* result */
            invokevirtual java.util.Vector.copyInto:([Ljava/lang/Object;)V
        11: .line 593
            aload 3 /* result */
            areturn
        end local 3 // sun.security.pkcs.SignerInfo[] result
        12: .line 595
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 2 // java.util.Vector intResult
        end local 1 // byte[] bytes
        end local 0 // sun.security.pkcs.PKCS7 this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   13     0        this  Lsun/security/pkcs/PKCS7;
            0   13     1       bytes  [B
            1   13     2   intResult  Ljava/util/Vector<Lsun/security/pkcs/SignerInfo;>;
            2    8     3           i  I
            4    6     4  signerInfo  Lsun/security/pkcs/SignerInfo;
           10   12     3      result  [Lsun/security/pkcs/SignerInfo;
    Exceptions:
      throws java.security.NoSuchAlgorithmException, java.security.SignatureException
    MethodParameters:
       Name  Flags
      bytes  

  public sun.security.pkcs.SignerInfo[] verify();
    descriptor: ()[Lsun/security/pkcs/SignerInfo;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // sun.security.pkcs.PKCS7 this
         0: .line 606
            aload 0 /* this */
            aconst_null
            invokevirtual sun.security.pkcs.PKCS7.verify:([B)[Lsun/security/pkcs/SignerInfo;
            areturn
        end local 0 // sun.security.pkcs.PKCS7 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/security/pkcs/PKCS7;
    Exceptions:
      throws java.security.NoSuchAlgorithmException, java.security.SignatureException

  public java.math.BigInteger getVersion();
    descriptor: ()Ljava/math/BigInteger;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.security.pkcs.PKCS7 this
         0: .line 615
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.version:Ljava/math/BigInteger;
            areturn
        end local 0 // sun.security.pkcs.PKCS7 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/security/pkcs/PKCS7;

  public sun.security.x509.AlgorithmId[] getDigestAlgorithmIds();
    descriptor: ()[Lsun/security/x509/AlgorithmId;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.security.pkcs.PKCS7 this
         0: .line 624
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.digestAlgorithmIds:[Lsun/security/x509/AlgorithmId;
            areturn
        end local 0 // sun.security.pkcs.PKCS7 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/security/pkcs/PKCS7;

  public sun.security.pkcs.ContentInfo getContentInfo();
    descriptor: ()Lsun/security/pkcs/ContentInfo;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.security.pkcs.PKCS7 this
         0: .line 631
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.contentInfo:Lsun/security/pkcs/ContentInfo;
            areturn
        end local 0 // sun.security.pkcs.PKCS7 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/security/pkcs/PKCS7;

  public java.security.cert.X509Certificate[] getCertificates();
    descriptor: ()[Ljava/security/cert/X509Certificate;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.security.pkcs.PKCS7 this
         0: .line 640
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.certificates:[Ljava/security/cert/X509Certificate;
            ifnull 2
         1: .line 641
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.certificates:[Ljava/security/cert/X509Certificate;
            invokevirtual java.security.cert.X509Certificate[].clone:()Ljava/lang/Object;
            checkcast java.security.cert.X509Certificate[]
            areturn
         2: .line 643
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 0 // sun.security.pkcs.PKCS7 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lsun/security/pkcs/PKCS7;

  public java.security.cert.X509CRL[] getCRLs();
    descriptor: ()[Ljava/security/cert/X509CRL;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.security.pkcs.PKCS7 this
         0: .line 652
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.crls:[Ljava/security/cert/X509CRL;
            ifnull 2
         1: .line 653
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.crls:[Ljava/security/cert/X509CRL;
            invokevirtual java.security.cert.X509CRL[].clone:()Ljava/lang/Object;
            checkcast java.security.cert.X509CRL[]
            areturn
         2: .line 655
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 0 // sun.security.pkcs.PKCS7 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lsun/security/pkcs/PKCS7;

  public sun.security.pkcs.SignerInfo[] getSignerInfos();
    descriptor: ()[Lsun/security/pkcs/SignerInfo;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.security.pkcs.PKCS7 this
         0: .line 664
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.signerInfos:[Lsun/security/pkcs/SignerInfo;
            areturn
        end local 0 // sun.security.pkcs.PKCS7 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/security/pkcs/PKCS7;

  public java.security.cert.X509Certificate getCertificate(java.math.BigInteger, sun.security.x509.X500Name);
    descriptor: (Ljava/math/BigInteger;Lsun/security/x509/X500Name;)Ljava/security/cert/X509Certificate;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=6, args_size=3
        start local 0 // sun.security.pkcs.PKCS7 this
        start local 1 // java.math.BigInteger serial
        start local 2 // sun.security.x509.X500Name issuerName
         0: .line 676
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.certificates:[Ljava/security/cert/X509Certificate;
            ifnull 12
         1: .line 677
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.certIssuerNames:[Ljava/security/Principal;
            ifnonnull 3
         2: .line 678
            aload 0 /* this */
            invokevirtual sun.security.pkcs.PKCS7.populateCertIssuerNames:()V
         3: .line 679
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         4: goto 11
         5: .line 680
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.certificates:[Ljava/security/cert/X509Certificate;
            iload 3 /* i */
            aaload
            astore 4 /* cert */
        start local 4 // java.security.cert.X509Certificate cert
         6: .line 681
            aload 4 /* cert */
            invokevirtual java.security.cert.X509Certificate.getSerialNumber:()Ljava/math/BigInteger;
            astore 5 /* thisSerial */
        start local 5 // java.math.BigInteger thisSerial
         7: .line 682
            aload 1 /* serial */
            aload 5 /* thisSerial */
            invokevirtual java.math.BigInteger.equals:(Ljava/lang/Object;)Z
            ifeq 10
         8: .line 683
            aload 2 /* issuerName */
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.certIssuerNames:[Ljava/security/Principal;
            iload 3 /* i */
            aaload
            invokevirtual sun.security.x509.X500Name.equals:(Ljava/lang/Object;)Z
            ifeq 10
         9: .line 685
            aload 4 /* cert */
            areturn
        end local 5 // java.math.BigInteger thisSerial
        end local 4 // java.security.cert.X509Certificate cert
        10: .line 679
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        11: iload 3 /* i */
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.certificates:[Ljava/security/cert/X509Certificate;
            arraylength
            if_icmplt 5
        end local 3 // int i
        12: .line 689
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 2 // sun.security.x509.X500Name issuerName
        end local 1 // java.math.BigInteger serial
        end local 0 // sun.security.pkcs.PKCS7 this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   13     0        this  Lsun/security/pkcs/PKCS7;
            0   13     1      serial  Ljava/math/BigInteger;
            0   13     2  issuerName  Lsun/security/x509/X500Name;
            4   12     3           i  I
            6   10     4        cert  Ljava/security/cert/X509Certificate;
            7   10     5  thisSerial  Ljava/math/BigInteger;
    MethodParameters:
            Name  Flags
      serial      
      issuerName  

  private void populateCertIssuerNames();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=5, args_size=1
        start local 0 // sun.security.pkcs.PKCS7 this
         0: .line 698
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.certificates:[Ljava/security/cert/X509Certificate;
            ifnonnull 2
         1: .line 699
            return
         2: .line 701
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.certificates:[Ljava/security/cert/X509Certificate;
            arraylength
            anewarray java.security.Principal
            putfield sun.security.pkcs.PKCS7.certIssuerNames:[Ljava/security/Principal;
         3: .line 702
            iconst_0
            istore 1 /* i */
        start local 1 // int i
         4: goto 16
         5: .line 703
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.certificates:[Ljava/security/cert/X509Certificate;
            iload 1 /* i */
            aaload
            astore 2 /* cert */
        start local 2 // java.security.cert.X509Certificate cert
         6: .line 704
            aload 2 /* cert */
            invokevirtual java.security.cert.X509Certificate.getIssuerDN:()Ljava/security/Principal;
            astore 3 /* certIssuerName */
        start local 3 // java.security.Principal certIssuerName
         7: .line 705
            aload 3 /* certIssuerName */
            instanceof sun.security.x509.X500Name
            ifne 14
         8: .line 712
            new sun.security.x509.X509CertInfo
            dup
            aload 2 /* cert */
            invokevirtual java.security.cert.X509Certificate.getTBSCertificate:()[B
            invokespecial sun.security.x509.X509CertInfo.<init>:([B)V
         9: .line 711
            astore 4 /* tbsCert */
        start local 4 // sun.security.x509.X509CertInfo tbsCert
        10: .line 714
            aload 4 /* tbsCert */
            ldc "issuer.dname"
            invokevirtual sun.security.x509.X509CertInfo.get:(Ljava/lang/String;)Ljava/lang/Object;
        11: .line 713
            checkcast java.security.Principal
            astore 3 /* certIssuerName */
        end local 4 // sun.security.x509.X509CertInfo tbsCert
        12: .line 716
            goto 14
      StackMap locals: sun.security.pkcs.PKCS7 int java.security.cert.X509Certificate java.security.Principal
      StackMap stack: java.lang.Exception
        13: pop
        14: .line 721
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.certIssuerNames:[Ljava/security/Principal;
            iload 1 /* i */
            aload 3 /* certIssuerName */
            aastore
        end local 3 // java.security.Principal certIssuerName
        end local 2 // java.security.cert.X509Certificate cert
        15: .line 702
            iinc 1 /* i */ 1
      StackMap locals:
      StackMap stack:
        16: iload 1 /* i */
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.certificates:[Ljava/security/cert/X509Certificate;
            arraylength
            if_icmplt 5
        end local 1 // int i
        17: .line 723
            return
        end local 0 // sun.security.pkcs.PKCS7 this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   18     0            this  Lsun/security/pkcs/PKCS7;
            4   17     1               i  I
            6   15     2            cert  Ljava/security/cert/X509Certificate;
            7   15     3  certIssuerName  Ljava/security/Principal;
           10   12     4         tbsCert  Lsun/security/x509/X509CertInfo;
      Exception table:
        from    to  target  type
           8    12      13  Class java.lang.Exception

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // sun.security.pkcs.PKCS7 this
         0: .line 729
            ldc ""
            astore 1 /* out */
        start local 1 // java.lang.String out
         1: .line 731
            new java.lang.StringBuilder
            dup
            aload 1 /* out */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.contentInfo:Lsun/security/pkcs/ContentInfo;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc "\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 1 /* out */
         2: .line 732
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.version:Ljava/math/BigInteger;
            ifnull 4
         3: .line 733
            new java.lang.StringBuilder
            dup
            aload 1 /* out */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "PKCS7 :: version: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.version:Ljava/math/BigInteger;
            invokestatic sun.security.util.Debug.toHexString:(Ljava/math/BigInteger;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 1 /* out */
         4: .line 734
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.digestAlgorithmIds:[Lsun/security/x509/AlgorithmId;
            ifnull 11
         5: .line 735
            new java.lang.StringBuilder
            dup
            aload 1 /* out */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "PKCS7 :: digest AlgorithmIds: \n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 1 /* out */
         6: .line 736
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         7: goto 10
         8: .line 737
      StackMap locals: int
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 1 /* out */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "\t"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.digestAlgorithmIds:[Lsun/security/x509/AlgorithmId;
            iload 2 /* i */
            aaload
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc "\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 1 /* out */
         9: .line 736
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
        10: iload 2 /* i */
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.digestAlgorithmIds:[Lsun/security/x509/AlgorithmId;
            arraylength
            if_icmplt 8
        end local 2 // int i
        11: .line 739
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.certificates:[Ljava/security/cert/X509Certificate;
            ifnull 18
        12: .line 740
            new java.lang.StringBuilder
            dup
            aload 1 /* out */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "PKCS7 :: certificates: \n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 1 /* out */
        13: .line 741
            iconst_0
            istore 2 /* i */
        start local 2 // int i
        14: goto 17
        15: .line 742
      StackMap locals: int
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 1 /* out */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "\t"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 2 /* i */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc ".   "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.certificates:[Ljava/security/cert/X509Certificate;
            iload 2 /* i */
            aaload
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc "\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 1 /* out */
        16: .line 741
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
        17: iload 2 /* i */
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.certificates:[Ljava/security/cert/X509Certificate;
            arraylength
            if_icmplt 15
        end local 2 // int i
        18: .line 744
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.crls:[Ljava/security/cert/X509CRL;
            ifnull 25
        19: .line 745
            new java.lang.StringBuilder
            dup
            aload 1 /* out */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "PKCS7 :: crls: \n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 1 /* out */
        20: .line 746
            iconst_0
            istore 2 /* i */
        start local 2 // int i
        21: goto 24
        22: .line 747
      StackMap locals: int
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 1 /* out */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "\t"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 2 /* i */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc ".   "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.crls:[Ljava/security/cert/X509CRL;
            iload 2 /* i */
            aaload
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc "\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 1 /* out */
        23: .line 746
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
        24: iload 2 /* i */
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.crls:[Ljava/security/cert/X509CRL;
            arraylength
            if_icmplt 22
        end local 2 // int i
        25: .line 749
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.signerInfos:[Lsun/security/pkcs/SignerInfo;
            ifnull 32
        26: .line 750
            new java.lang.StringBuilder
            dup
            aload 1 /* out */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "PKCS7 :: signer infos: \n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 1 /* out */
        27: .line 751
            iconst_0
            istore 2 /* i */
        start local 2 // int i
        28: goto 31
        29: .line 752
      StackMap locals: int
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 1 /* out */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "\t"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 2 /* i */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc ".  "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.signerInfos:[Lsun/security/pkcs/SignerInfo;
            iload 2 /* i */
            aaload
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc "\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 1 /* out */
        30: .line 751
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
        31: iload 2 /* i */
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.signerInfos:[Lsun/security/pkcs/SignerInfo;
            arraylength
            if_icmplt 29
        end local 2 // int i
        32: .line 754
      StackMap locals:
      StackMap stack:
            aload 1 /* out */
            areturn
        end local 1 // java.lang.String out
        end local 0 // sun.security.pkcs.PKCS7 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   33     0  this  Lsun/security/pkcs/PKCS7;
            1   33     1   out  Ljava/lang/String;
            7   11     2     i  I
           14   18     2     i  I
           21   25     2     i  I
           28   32     2     i  I

  public boolean isOldStyle();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.security.pkcs.PKCS7 this
         0: .line 762
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.oldStyle:Z
            ireturn
        end local 0 // sun.security.pkcs.PKCS7 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/security/pkcs/PKCS7;

  public static byte[] generateNewSignedData(java.lang.String, java.security.Provider, java.security.PrivateKey, java.security.cert.X509Certificate[], byte[], boolean, boolean, java.util.function.Function<byte[], sun.security.pkcs.PKCS9Attributes>);
    descriptor: (Ljava/lang/String;Ljava/security/Provider;Ljava/security/PrivateKey;[Ljava/security/cert/X509Certificate;[BZZLjava/util/function/Function;)[B
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=10, locals=17, args_size=8
        start local 0 // java.lang.String sigalg
        start local 1 // java.security.Provider sigProvider
        start local 2 // java.security.PrivateKey privateKey
        start local 3 // java.security.cert.X509Certificate[] signerChain
        start local 4 // byte[] content
        start local 5 // boolean internalsf
        start local 6 // boolean directsign
        start local 7 // java.util.function.Function ts
         0: .line 790
            aload 0 /* sigalg */
            aload 2 /* privateKey */
            aload 1 /* sigProvider */
            invokestatic sun.security.util.SignatureUtil.fromKey:(Ljava/lang/String;Ljava/security/Key;Ljava/security/Provider;)Ljava/security/Signature;
            astore 8 /* signer */
        start local 8 // java.security.Signature signer
         1: .line 793
            aload 8 /* signer */
            aload 0 /* sigalg */
            aload 2 /* privateKey */
            iload 6 /* directsign */
         2: .line 792
            invokestatic sun.security.util.SignatureUtil.getDigestAlgInPkcs7SignerInfo:(Ljava/security/Signature;Ljava/lang/String;Ljava/security/PrivateKey;Z)Lsun/security/x509/AlgorithmId;
            astore 9 /* digAlgID */
        start local 9 // sun.security.x509.AlgorithmId digAlgID
         3: .line 794
            aload 8 /* signer */
            aload 2 /* privateKey */
            invokestatic sun.security.util.SignatureUtil.fromSignature:(Ljava/security/Signature;Ljava/security/PrivateKey;)Lsun/security/x509/AlgorithmId;
            astore 10 /* sigAlgID */
        start local 10 // sun.security.x509.AlgorithmId sigAlgID
         4: .line 796
            aconst_null
            astore 11 /* authAttrs */
        start local 11 // sun.security.pkcs.PKCS9Attributes authAttrs
         5: .line 797
            iload 6 /* directsign */
            ifne 38
         6: .line 800
            aload 9 /* digAlgID */
            invokevirtual sun.security.x509.AlgorithmId.getName:()Ljava/lang/String;
            astore 13 /* digAlgName */
        start local 13 // java.lang.String digAlgName
         7: .line 801
            aload 13 /* digAlgName */
            ldc "SHAKE256"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 8
            aload 13 /* digAlgName */
            ldc "SHAKE256-LEN"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 12
         8: .line 803
      StackMap locals: java.lang.String java.security.Provider java.security.PrivateKey java.security.cert.X509Certificate[] byte[] int int java.util.function.Function java.security.Signature sun.security.x509.AlgorithmId sun.security.x509.AlgorithmId sun.security.pkcs.PKCS9Attributes top java.lang.String
      StackMap stack:
            new sun.security.provider.SHAKE256
            dup
            bipush 64
            invokespecial sun.security.provider.SHAKE256.<init>:(I)V
            astore 14 /* shaker */
        start local 14 // sun.security.provider.SHAKE256 shaker
         9: .line 804
            aload 14 /* shaker */
            aload 4 /* content */
            iconst_0
            aload 4 /* content */
            arraylength
            invokevirtual sun.security.provider.SHAKE256.update:([BII)V
        10: .line 805
            aload 14 /* shaker */
            invokevirtual sun.security.provider.SHAKE256.digest:()[B
            astore 12 /* md */
        end local 14 // sun.security.provider.SHAKE256 shaker
        start local 12 // byte[] md
        11: .line 806
            goto 15
        end local 12 // byte[] md
        12: .line 807
      StackMap locals:
      StackMap stack:
            aload 13 /* digAlgName */
            invokestatic java.security.MessageDigest.getInstance:(Ljava/lang/String;)Ljava/security/MessageDigest;
        13: .line 808
            aload 4 /* content */
            invokevirtual java.security.MessageDigest.digest:([B)[B
        14: .line 807
            astore 12 /* md */
        start local 12 // byte[] md
        15: .line 811
      StackMap locals: java.lang.String java.security.Provider java.security.PrivateKey java.security.cert.X509Certificate[] byte[] int int java.util.function.Function java.security.Signature sun.security.x509.AlgorithmId sun.security.x509.AlgorithmId sun.security.pkcs.PKCS9Attributes byte[] java.lang.String
      StackMap stack:
            new sun.security.util.DerOutputStream
            dup
            invokespecial sun.security.util.DerOutputStream.<init>:()V
            astore 14 /* derAp */
        start local 14 // sun.security.util.DerOutputStream derAp
        16: .line 812
            new sun.security.util.DerOutputStream
            dup
            invokespecial sun.security.util.DerOutputStream.<init>:()V
            astore 15 /* derAlgs */
        start local 15 // sun.security.util.DerOutputStream derAlgs
        17: .line 813
            aload 9 /* digAlgID */
            aload 15 /* derAlgs */
            invokevirtual sun.security.x509.AlgorithmId.derEncode:(Ljava/io/OutputStream;)V
        18: .line 814
            new sun.security.util.DerOutputStream
            dup
            invokespecial sun.security.util.DerOutputStream.<init>:()V
            astore 16 /* derSigAlg */
        start local 16 // sun.security.util.DerOutputStream derSigAlg
        19: .line 815
            aload 10 /* sigAlgID */
            aload 16 /* derSigAlg */
            invokevirtual sun.security.x509.AlgorithmId.derEncode:(Ljava/io/OutputStream;)V
        20: .line 816
            aload 15 /* derAlgs */
            bipush -95
            aload 16 /* derSigAlg */
            invokevirtual sun.security.util.DerOutputStream.writeImplicit:(BLsun/security/util/DerOutputStream;)V
        21: .line 817
            aload 14 /* derAp */
            bipush 48
            aload 15 /* derAlgs */
            invokevirtual sun.security.util.DerOutputStream.write:(BLsun/security/util/DerOutputStream;)V
        22: .line 818
            new sun.security.pkcs.PKCS9Attributes
            dup
            iconst_4
            anewarray sun.security.pkcs.PKCS9Attribute
            dup
            iconst_0
        23: .line 819
            new sun.security.pkcs.PKCS9Attribute
            dup
            getstatic sun.security.pkcs.PKCS9Attribute.CONTENT_TYPE_OID:Lsun/security/util/ObjectIdentifier;
        24: .line 820
            getstatic sun.security.pkcs.ContentInfo.DATA_OID:Lsun/security/util/ObjectIdentifier;
        25: .line 819
            invokespecial sun.security.pkcs.PKCS9Attribute.<init>:(Lsun/security/util/ObjectIdentifier;Ljava/lang/Object;)V
            aastore
            dup
            iconst_1
        26: .line 821
            new sun.security.pkcs.PKCS9Attribute
            dup
            getstatic sun.security.pkcs.PKCS9Attribute.SIGNING_TIME_OID:Lsun/security/util/ObjectIdentifier;
        27: .line 822
            new java.util.Date
            dup
            invokespecial java.util.Date.<init>:()V
        28: .line 821
            invokespecial sun.security.pkcs.PKCS9Attribute.<init>:(Lsun/security/util/ObjectIdentifier;Ljava/lang/Object;)V
            aastore
            dup
            iconst_2
        29: .line 823
            new sun.security.pkcs.PKCS9Attribute
            dup
            getstatic sun.security.pkcs.PKCS9Attribute.CMS_ALGORITHM_PROTECTION_OID:Lsun/security/util/ObjectIdentifier;
        30: .line 824
            aload 14 /* derAp */
            invokevirtual sun.security.util.DerOutputStream.toByteArray:()[B
        31: .line 823
            invokespecial sun.security.pkcs.PKCS9Attribute.<init>:(Lsun/security/util/ObjectIdentifier;Ljava/lang/Object;)V
            aastore
            dup
            iconst_3
        32: .line 825
            new sun.security.pkcs.PKCS9Attribute
            dup
            getstatic sun.security.pkcs.PKCS9Attribute.MESSAGE_DIGEST_OID:Lsun/security/util/ObjectIdentifier;
        33: .line 826
            aload 12 /* md */
        34: .line 825
            invokespecial sun.security.pkcs.PKCS9Attribute.<init>:(Lsun/security/util/ObjectIdentifier;Ljava/lang/Object;)V
            aastore
        35: .line 818
            invokespecial sun.security.pkcs.PKCS9Attributes.<init>:([Lsun/security/pkcs/PKCS9Attribute;)V
            astore 11 /* authAttrs */
        36: .line 828
            aload 8 /* signer */
            aload 11 /* authAttrs */
            invokevirtual sun.security.pkcs.PKCS9Attributes.getDerEncoding:()[B
            invokevirtual java.security.Signature.update:([B)V
        end local 16 // sun.security.util.DerOutputStream derSigAlg
        end local 15 // sun.security.util.DerOutputStream derAlgs
        end local 14 // sun.security.util.DerOutputStream derAp
        end local 13 // java.lang.String digAlgName
        end local 12 // byte[] md
        37: .line 829
            goto 39
        38: .line 830
      StackMap locals:
      StackMap stack:
            aload 8 /* signer */
            aload 4 /* content */
            invokevirtual java.security.Signature.update:([B)V
        39: .line 833
      StackMap locals:
      StackMap stack:
            aload 8 /* signer */
            invokevirtual java.security.Signature.sign:()[B
            astore 12 /* signature */
        start local 12 // byte[] signature
        40: .line 835
            aload 12 /* signature */
            aload 3 /* signerChain */
        41: .line 836
            iload 5 /* internalsf */
            ifeq 42
            aload 4 /* content */
            goto 43
      StackMap locals: java.lang.String java.security.Provider java.security.PrivateKey java.security.cert.X509Certificate[] byte[] int int java.util.function.Function java.security.Signature sun.security.x509.AlgorithmId sun.security.x509.AlgorithmId sun.security.pkcs.PKCS9Attributes byte[]
      StackMap stack: byte[] java.security.cert.X509Certificate[]
        42: aconst_null
        43: .line 837
      StackMap locals: java.lang.String java.security.Provider java.security.PrivateKey java.security.cert.X509Certificate[] byte[] int int java.util.function.Function java.security.Signature sun.security.x509.AlgorithmId sun.security.x509.AlgorithmId sun.security.pkcs.PKCS9Attributes byte[]
      StackMap stack: byte[] java.security.cert.X509Certificate[] byte[]
            aload 11 /* authAttrs */
        44: .line 838
            aload 7 /* ts */
            ifnonnull 45
            aconst_null
            goto 46
      StackMap locals: java.lang.String java.security.Provider java.security.PrivateKey java.security.cert.X509Certificate[] byte[] int int java.util.function.Function java.security.Signature sun.security.x509.AlgorithmId sun.security.x509.AlgorithmId sun.security.pkcs.PKCS9Attributes byte[]
      StackMap stack: byte[] java.security.cert.X509Certificate[] byte[] sun.security.pkcs.PKCS9Attributes
        45: aload 7 /* ts */
            aload 12 /* signature */
            invokeinterface java.util.function.Function.apply:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast sun.security.pkcs.PKCS9Attributes
        46: .line 839
      StackMap locals: java.lang.String java.security.Provider java.security.PrivateKey java.security.cert.X509Certificate[] byte[] int int java.util.function.Function java.security.Signature sun.security.x509.AlgorithmId sun.security.x509.AlgorithmId sun.security.pkcs.PKCS9Attributes byte[]
      StackMap stack: byte[] java.security.cert.X509Certificate[] byte[] sun.security.pkcs.PKCS9Attributes sun.security.pkcs.PKCS9Attributes
            aload 9 /* digAlgID */
        47: .line 840
            aload 10 /* sigAlgID */
        48: .line 835
            invokestatic sun.security.pkcs.PKCS7.constructToken:([B[Ljava/security/cert/X509Certificate;[BLsun/security/pkcs/PKCS9Attributes;Lsun/security/pkcs/PKCS9Attributes;Lsun/security/x509/AlgorithmId;Lsun/security/x509/AlgorithmId;)[B
            areturn
        end local 12 // byte[] signature
        end local 11 // sun.security.pkcs.PKCS9Attributes authAttrs
        end local 10 // sun.security.x509.AlgorithmId sigAlgID
        end local 9 // sun.security.x509.AlgorithmId digAlgID
        end local 8 // java.security.Signature signer
        end local 7 // java.util.function.Function ts
        end local 6 // boolean directsign
        end local 5 // boolean internalsf
        end local 4 // byte[] content
        end local 3 // java.security.cert.X509Certificate[] signerChain
        end local 2 // java.security.PrivateKey privateKey
        end local 1 // java.security.Provider sigProvider
        end local 0 // java.lang.String sigalg
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   49     0       sigalg  Ljava/lang/String;
            0   49     1  sigProvider  Ljava/security/Provider;
            0   49     2   privateKey  Ljava/security/PrivateKey;
            0   49     3  signerChain  [Ljava/security/cert/X509Certificate;
            0   49     4      content  [B
            0   49     5   internalsf  Z
            0   49     6   directsign  Z
            0   49     7           ts  Ljava/util/function/Function<[BLsun/security/pkcs/PKCS9Attributes;>;
            1   49     8       signer  Ljava/security/Signature;
            3   49     9     digAlgID  Lsun/security/x509/AlgorithmId;
            4   49    10     sigAlgID  Lsun/security/x509/AlgorithmId;
            5   49    11    authAttrs  Lsun/security/pkcs/PKCS9Attributes;
           11   12    12           md  [B
           15   37    12           md  [B
            7   37    13   digAlgName  Ljava/lang/String;
            9   11    14       shaker  Lsun/security/provider/SHAKE256;
           16   37    14        derAp  Lsun/security/util/DerOutputStream;
           17   37    15      derAlgs  Lsun/security/util/DerOutputStream;
           19   37    16    derSigAlg  Lsun/security/util/DerOutputStream;
           40   49    12    signature  [B
    Exceptions:
      throws java.security.SignatureException, java.security.InvalidKeyException, java.io.IOException, java.security.NoSuchAlgorithmException
    Signature: (Ljava/lang/String;Ljava/security/Provider;Ljava/security/PrivateKey;[Ljava/security/cert/X509Certificate;[BZZLjava/util/function/Function<[BLsun/security/pkcs/PKCS9Attributes;>;)[B
    MethodParameters:
             Name  Flags
      sigalg       
      sigProvider  
      privateKey   
      signerChain  
      content      
      internalsf   
      directsign   
      ts           

  private static byte[] constructToken(byte[], java.security.cert.X509Certificate[], byte[], sun.security.pkcs.PKCS9Attributes, sun.security.pkcs.PKCS9Attributes, sun.security.x509.AlgorithmId, sun.security.x509.AlgorithmId);
    descriptor: ([B[Ljava/security/cert/X509Certificate;[BLsun/security/pkcs/PKCS9Attributes;Lsun/security/pkcs/PKCS9Attributes;Lsun/security/x509/AlgorithmId;Lsun/security/x509/AlgorithmId;)[B
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=9, locals=15, args_size=7
        start local 0 // byte[] signature
        start local 1 // java.security.cert.X509Certificate[] signerChain
        start local 2 // byte[] content
        start local 3 // sun.security.pkcs.PKCS9Attributes authAttrs
        start local 4 // sun.security.pkcs.PKCS9Attributes unauthAttrs
        start local 5 // sun.security.x509.AlgorithmId digAlgID
        start local 6 // sun.security.x509.AlgorithmId encAlgID
         0: .line 865
            aload 1 /* signerChain */
            iconst_0
            aaload
            invokevirtual java.security.cert.X509Certificate.getIssuerX500Principal:()Ljavax/security/auth/x500/X500Principal;
            invokestatic sun.security.x509.X500Name.asX500Name:(Ljavax/security/auth/x500/X500Principal;)Lsun/security/x509/X500Name;
         1: .line 864
            astore 7 /* issuerName */
        start local 7 // sun.security.x509.X500Name issuerName
         2: .line 866
            aload 1 /* signerChain */
            iconst_0
            aaload
            invokevirtual java.security.cert.X509Certificate.getSerialNumber:()Ljava/math/BigInteger;
            astore 8 /* serialNumber */
        start local 8 // java.math.BigInteger serialNumber
         3: .line 867
            new sun.security.pkcs.SignerInfo
            dup
            aload 7 /* issuerName */
            aload 8 /* serialNumber */
         4: .line 868
            aload 5 /* digAlgID */
            aload 3 /* authAttrs */
         5: .line 869
            aload 6 /* encAlgID */
         6: .line 870
            aload 0 /* signature */
            aload 4 /* unauthAttrs */
         7: .line 867
            invokespecial sun.security.pkcs.SignerInfo.<init>:(Lsun/security/x509/X500Name;Ljava/math/BigInteger;Lsun/security/x509/AlgorithmId;Lsun/security/pkcs/PKCS9Attributes;Lsun/security/x509/AlgorithmId;[BLsun/security/pkcs/PKCS9Attributes;)V
            astore 9 /* signerInfo */
        start local 9 // sun.security.pkcs.SignerInfo signerInfo
         8: .line 873
            iconst_1
            anewarray sun.security.pkcs.SignerInfo
            dup
            iconst_0
            aload 9 /* signerInfo */
            aastore
            astore 10 /* signerInfos */
        start local 10 // sun.security.pkcs.SignerInfo[] signerInfos
         9: .line 874
            iconst_1
            anewarray sun.security.x509.AlgorithmId
            dup
            iconst_0
            aload 9 /* signerInfo */
            invokevirtual sun.security.pkcs.SignerInfo.getDigestAlgorithmId:()Lsun/security/x509/AlgorithmId;
            aastore
            astore 11 /* algorithms */
        start local 11 // sun.security.x509.AlgorithmId[] algorithms
        10: .line 876
            aload 2 /* content */
            ifnonnull 12
        11: .line 877
            new sun.security.pkcs.ContentInfo
            dup
            getstatic sun.security.pkcs.ContentInfo.DATA_OID:Lsun/security/util/ObjectIdentifier;
            aconst_null
            invokespecial sun.security.pkcs.ContentInfo.<init>:(Lsun/security/util/ObjectIdentifier;Lsun/security/util/DerValue;)V
            goto 13
        12: .line 878
      StackMap locals: byte[] java.security.cert.X509Certificate[] byte[] sun.security.pkcs.PKCS9Attributes sun.security.pkcs.PKCS9Attributes sun.security.x509.AlgorithmId sun.security.x509.AlgorithmId sun.security.x509.X500Name java.math.BigInteger sun.security.pkcs.SignerInfo sun.security.pkcs.SignerInfo[] sun.security.x509.AlgorithmId[]
      StackMap stack:
            new sun.security.pkcs.ContentInfo
            dup
            aload 2 /* content */
            invokespecial sun.security.pkcs.ContentInfo.<init>:([B)V
        13: .line 876
      StackMap locals:
      StackMap stack: sun.security.pkcs.ContentInfo
            astore 12 /* contentInfo */
        start local 12 // sun.security.pkcs.ContentInfo contentInfo
        14: .line 879
            new sun.security.pkcs.PKCS7
            dup
            aload 11 /* algorithms */
            aload 12 /* contentInfo */
        15: .line 880
            aload 1 /* signerChain */
            aload 10 /* signerInfos */
        16: .line 879
            invokespecial sun.security.pkcs.PKCS7.<init>:([Lsun/security/x509/AlgorithmId;Lsun/security/pkcs/ContentInfo;[Ljava/security/cert/X509Certificate;[Lsun/security/pkcs/SignerInfo;)V
            astore 13 /* pkcs7 */
        start local 13 // sun.security.pkcs.PKCS7 pkcs7
        17: .line 881
            new java.io.ByteArrayOutputStream
            dup
            invokespecial java.io.ByteArrayOutputStream.<init>:()V
            astore 14 /* p7out */
        start local 14 // java.io.ByteArrayOutputStream p7out
        18: .line 882
            aload 13 /* pkcs7 */
            aload 14 /* p7out */
            invokevirtual sun.security.pkcs.PKCS7.encodeSignedData:(Ljava/io/OutputStream;)V
        19: .line 884
            aload 14 /* p7out */
            invokevirtual java.io.ByteArrayOutputStream.toByteArray:()[B
            areturn
        end local 14 // java.io.ByteArrayOutputStream p7out
        end local 13 // sun.security.pkcs.PKCS7 pkcs7
        end local 12 // sun.security.pkcs.ContentInfo contentInfo
        end local 11 // sun.security.x509.AlgorithmId[] algorithms
        end local 10 // sun.security.pkcs.SignerInfo[] signerInfos
        end local 9 // sun.security.pkcs.SignerInfo signerInfo
        end local 8 // java.math.BigInteger serialNumber
        end local 7 // sun.security.x509.X500Name issuerName
        end local 6 // sun.security.x509.AlgorithmId encAlgID
        end local 5 // sun.security.x509.AlgorithmId digAlgID
        end local 4 // sun.security.pkcs.PKCS9Attributes unauthAttrs
        end local 3 // sun.security.pkcs.PKCS9Attributes authAttrs
        end local 2 // byte[] content
        end local 1 // java.security.cert.X509Certificate[] signerChain
        end local 0 // byte[] signature
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   20     0     signature  [B
            0   20     1   signerChain  [Ljava/security/cert/X509Certificate;
            0   20     2       content  [B
            0   20     3     authAttrs  Lsun/security/pkcs/PKCS9Attributes;
            0   20     4   unauthAttrs  Lsun/security/pkcs/PKCS9Attributes;
            0   20     5      digAlgID  Lsun/security/x509/AlgorithmId;
            0   20     6      encAlgID  Lsun/security/x509/AlgorithmId;
            2   20     7    issuerName  Lsun/security/x509/X500Name;
            3   20     8  serialNumber  Ljava/math/BigInteger;
            8   20     9    signerInfo  Lsun/security/pkcs/SignerInfo;
            9   20    10   signerInfos  [Lsun/security/pkcs/SignerInfo;
           10   20    11    algorithms  [Lsun/security/x509/AlgorithmId;
           14   20    12   contentInfo  Lsun/security/pkcs/ContentInfo;
           17   20    13         pkcs7  Lsun/security/pkcs/PKCS7;
           18   20    14         p7out  Ljava/io/ByteArrayOutputStream;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
             Name  Flags
      signature    
      signerChain  
      content      
      authAttrs    
      unauthAttrs  
      digAlgID     
      encAlgID     

  public static byte[] generateSignedData(byte[], java.security.cert.X509Certificate[], byte[], java.lang.String, java.net.URI, java.lang.String, java.lang.String);
    descriptor: ([B[Ljava/security/cert/X509Certificate;[BLjava/lang/String;Ljava/net/URI;Ljava/lang/String;Ljava/lang/String;)[B
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=9, locals=10, args_size=7
        start local 0 // byte[] signature
        start local 1 // java.security.cert.X509Certificate[] signerChain
        start local 2 // byte[] content
        start local 3 // java.lang.String signatureAlgorithm
        start local 4 // java.net.URI tsaURI
        start local 5 // java.lang.String tSAPolicyID
        start local 6 // java.lang.String tSADigestAlg
         0: .line 923
            aconst_null
            astore 7 /* unauthAttrs */
        start local 7 // sun.security.pkcs.PKCS9Attributes unauthAttrs
         1: .line 924
            aload 4 /* tsaURI */
            ifnull 12
         2: .line 926
            new sun.security.timestamp.HttpTimestamper
            dup
            aload 4 /* tsaURI */
            invokespecial sun.security.timestamp.HttpTimestamper.<init>:(Ljava/net/URI;)V
            astore 8 /* tsa */
        start local 8 // sun.security.timestamp.HttpTimestamper tsa
         3: .line 928
            aload 8 /* tsa */
            aload 5 /* tSAPolicyID */
            aload 6 /* tSADigestAlg */
            aload 0 /* signature */
         4: .line 927
            invokestatic sun.security.pkcs.PKCS7.generateTimestampToken:(Lsun/security/timestamp/Timestamper;Ljava/lang/String;Ljava/lang/String;[B)[B
            astore 9 /* tsToken */
        start local 9 // byte[] tsToken
         5: .line 933
            new sun.security.pkcs.PKCS9Attributes
            dup
            iconst_1
            anewarray sun.security.pkcs.PKCS9Attribute
            dup
            iconst_0
         6: .line 934
            new sun.security.pkcs.PKCS9Attribute
            dup
         7: .line 935
            getstatic sun.security.pkcs.PKCS9Attribute.SIGNATURE_TIMESTAMP_TOKEN_OID:Lsun/security/util/ObjectIdentifier;
         8: .line 936
            aload 9 /* tsToken */
         9: .line 934
            invokespecial sun.security.pkcs.PKCS9Attribute.<init>:(Lsun/security/util/ObjectIdentifier;Ljava/lang/Object;)V
            aastore
        10: .line 933
            invokespecial sun.security.pkcs.PKCS9Attributes.<init>:([Lsun/security/pkcs/PKCS9Attribute;)V
        11: .line 932
            astore 7 /* unauthAttrs */
        end local 9 // byte[] tsToken
        end local 8 // sun.security.timestamp.HttpTimestamper tsa
        12: .line 939
      StackMap locals: sun.security.pkcs.PKCS9Attributes
      StackMap stack:
            aload 0 /* signature */
            aload 1 /* signerChain */
            aload 2 /* content */
        13: .line 940
            aconst_null
        14: .line 941
            aload 7 /* unauthAttrs */
        15: .line 942
            aload 3 /* signatureAlgorithm */
            invokestatic sun.security.util.SignatureUtil.extractDigestAlgFromDwithE:(Ljava/lang/String;)Ljava/lang/String;
            invokestatic sun.security.x509.AlgorithmId.get:(Ljava/lang/String;)Lsun/security/x509/AlgorithmId;
        16: .line 943
            aload 3 /* signatureAlgorithm */
            invokestatic sun.security.x509.AlgorithmId.get:(Ljava/lang/String;)Lsun/security/x509/AlgorithmId;
        17: .line 939
            invokestatic sun.security.pkcs.PKCS7.constructToken:([B[Ljava/security/cert/X509Certificate;[BLsun/security/pkcs/PKCS9Attributes;Lsun/security/pkcs/PKCS9Attributes;Lsun/security/x509/AlgorithmId;Lsun/security/x509/AlgorithmId;)[B
            areturn
        end local 7 // sun.security.pkcs.PKCS9Attributes unauthAttrs
        end local 6 // java.lang.String tSADigestAlg
        end local 5 // java.lang.String tSAPolicyID
        end local 4 // java.net.URI tsaURI
        end local 3 // java.lang.String signatureAlgorithm
        end local 2 // byte[] content
        end local 1 // java.security.cert.X509Certificate[] signerChain
        end local 0 // byte[] signature
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   18     0           signature  [B
            0   18     1         signerChain  [Ljava/security/cert/X509Certificate;
            0   18     2             content  [B
            0   18     3  signatureAlgorithm  Ljava/lang/String;
            0   18     4              tsaURI  Ljava/net/URI;
            0   18     5         tSAPolicyID  Ljava/lang/String;
            0   18     6        tSADigestAlg  Ljava/lang/String;
            1   18     7         unauthAttrs  Lsun/security/pkcs/PKCS9Attributes;
            3   12     8                 tsa  Lsun/security/timestamp/HttpTimestamper;
            5   12     9             tsToken  [B
    Exceptions:
      throws java.security.cert.CertificateException, java.io.IOException, java.security.NoSuchAlgorithmException
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated(since = "16", forRemoval = true)
    MethodParameters:
                    Name  Flags
      signature           
      signerChain         
      content             
      signatureAlgorithm  
      tsaURI              
      tSAPolicyID         
      tSADigestAlg        

  public static java.net.URI getTimestampingURI(java.security.cert.X509Certificate);
    descriptor: (Ljava/security/cert/X509Certificate;)Ljava/net/URI;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=8, args_size=1
        start local 0 // java.security.cert.X509Certificate tsaCertificate
         0: .line 958
            aload 0 /* tsaCertificate */
            ifnonnull 2
         1: .line 959
            aconst_null
            areturn
         2: .line 963
      StackMap locals:
      StackMap stack:
            aload 0 /* tsaCertificate */
         3: .line 964
            getstatic sun.security.util.KnownOIDs.SubjectInfoAccess:Lsun/security/util/KnownOIDs;
            invokevirtual sun.security.util.KnownOIDs.value:()Ljava/lang/String;
         4: .line 963
            invokevirtual java.security.cert.X509Certificate.getExtensionValue:(Ljava/lang/String;)[B
            astore 1 /* extensionValue */
        start local 1 // byte[] extensionValue
         5: .line 965
            aload 1 /* extensionValue */
            ifnonnull 7
         6: .line 966
            aconst_null
            areturn
         7: .line 968
      StackMap locals: byte[]
      StackMap stack:
            new sun.security.util.DerInputStream
            dup
            aload 1 /* extensionValue */
            invokespecial sun.security.util.DerInputStream.<init>:([B)V
            astore 2 /* der */
        start local 2 // sun.security.util.DerInputStream der
         8: .line 969
            new sun.security.util.DerInputStream
            dup
            aload 2 /* der */
            invokevirtual sun.security.util.DerInputStream.getOctetString:()[B
            invokespecial sun.security.util.DerInputStream.<init>:([B)V
            astore 2 /* der */
         9: .line 970
            aload 2 /* der */
            iconst_5
            invokevirtual sun.security.util.DerInputStream.getSequence:(I)[Lsun/security/util/DerValue;
            astore 3 /* derValue */
        start local 3 // sun.security.util.DerValue[] derValue
        10: .line 974
            iconst_0
            istore 7 /* i */
        start local 7 // int i
        11: goto 23
        12: .line 975
      StackMap locals: java.security.cert.X509Certificate byte[] sun.security.util.DerInputStream sun.security.util.DerValue[] top top top int
      StackMap stack:
            new sun.security.x509.AccessDescription
            dup
            aload 3 /* derValue */
            iload 7 /* i */
            aaload
            invokespecial sun.security.x509.AccessDescription.<init>:(Lsun/security/util/DerValue;)V
            astore 4 /* description */
        start local 4 // sun.security.x509.AccessDescription description
        13: .line 976
            aload 4 /* description */
            invokevirtual sun.security.x509.AccessDescription.getAccessMethod:()Lsun/security/util/ObjectIdentifier;
        14: .line 977
            getstatic sun.security.util.KnownOIDs.AD_TimeStamping:Lsun/security/util/KnownOIDs;
            invokestatic sun.security.util.ObjectIdentifier.of:(Lsun/security/util/KnownOIDs;)Lsun/security/util/ObjectIdentifier;
            invokevirtual sun.security.util.ObjectIdentifier.equals:(Ljava/lang/Object;)Z
            ifeq 22
        15: .line 978
            aload 4 /* description */
            invokevirtual sun.security.x509.AccessDescription.getAccessLocation:()Lsun/security/x509/GeneralName;
            astore 5 /* location */
        start local 5 // sun.security.x509.GeneralName location
        16: .line 979
            aload 5 /* location */
            invokevirtual sun.security.x509.GeneralName.getType:()I
            bipush 6
            if_icmpne 22
        17: .line 980
            aload 5 /* location */
            invokevirtual sun.security.x509.GeneralName.getName:()Lsun/security/x509/GeneralNameInterface;
            checkcast sun.security.x509.URIName
            astore 6 /* uri */
        start local 6 // sun.security.x509.URIName uri
        18: .line 981
            aload 6 /* uri */
            invokevirtual sun.security.x509.URIName.getScheme:()Ljava/lang/String;
            ldc "http"
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifne 20
        19: .line 982
            aload 6 /* uri */
            invokevirtual sun.security.x509.URIName.getScheme:()Ljava/lang/String;
            ldc "https"
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifeq 22
        20: .line 983
      StackMap locals: java.security.cert.X509Certificate byte[] sun.security.util.DerInputStream sun.security.util.DerValue[] sun.security.x509.AccessDescription sun.security.x509.GeneralName sun.security.x509.URIName int
      StackMap stack:
            aload 6 /* uri */
            invokevirtual sun.security.x509.URIName.getURI:()Ljava/net/URI;
        21: areturn
        end local 6 // sun.security.x509.URIName uri
        end local 5 // sun.security.x509.GeneralName location
        22: .line 974
      StackMap locals: java.security.cert.X509Certificate byte[] sun.security.util.DerInputStream sun.security.util.DerValue[] sun.security.x509.AccessDescription top top int
      StackMap stack:
            iinc 7 /* i */ 1
        end local 4 // sun.security.x509.AccessDescription description
      StackMap locals: java.security.cert.X509Certificate byte[] sun.security.util.DerInputStream sun.security.util.DerValue[] top top top int
      StackMap stack:
        23: iload 7 /* i */
            aload 3 /* derValue */
            arraylength
            if_icmplt 12
        end local 7 // int i
        end local 3 // sun.security.util.DerValue[] derValue
        end local 2 // sun.security.util.DerInputStream der
        end local 1 // byte[] extensionValue
        24: .line 988
            goto 26
      StackMap locals: java.security.cert.X509Certificate
      StackMap stack: java.io.IOException
        25: pop
        26: .line 991
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 0 // java.security.cert.X509Certificate tsaCertificate
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   27     0  tsaCertificate  Ljava/security/cert/X509Certificate;
            5   24     1  extensionValue  [B
            8   24     2             der  Lsun/security/util/DerInputStream;
           10   24     3        derValue  [Lsun/security/util/DerValue;
           13   23     4     description  Lsun/security/x509/AccessDescription;
           16   22     5        location  Lsun/security/x509/GeneralName;
           18   22     6             uri  Lsun/security/x509/URIName;
           11   24     7               i  I
      Exception table:
        from    to  target  type
           2     6      25  Class java.io.IOException
           7    21      25  Class java.io.IOException
          22    24      25  Class java.io.IOException
    MethodParameters:
                Name  Flags
      tsaCertificate  

  public static byte[] generateTimestampToken(sun.security.timestamp.Timestamper, java.lang.String, java.lang.String, byte[]);
    descriptor: (Lsun/security/timestamp/Timestamper;Ljava/lang/String;Ljava/lang/String;[B)[B
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=18, args_size=4
        start local 0 // sun.security.timestamp.Timestamper tsa
        start local 1 // java.lang.String tSAPolicyID
        start local 2 // java.lang.String tSADigestAlg
        start local 3 // byte[] toBeTimestamped
         0: .line 1020
            aconst_null
            astore 4 /* messageDigest */
        start local 4 // java.security.MessageDigest messageDigest
         1: .line 1021
            aconst_null
            astore 5 /* tsQuery */
        start local 5 // sun.security.timestamp.TSRequest tsQuery
         2: .line 1023
            aload 2 /* tSADigestAlg */
            invokestatic java.security.MessageDigest.getInstance:(Ljava/lang/String;)Ljava/security/MessageDigest;
            astore 4 /* messageDigest */
         3: .line 1024
            new sun.security.timestamp.TSRequest
            dup
            aload 1 /* tSAPolicyID */
            aload 3 /* toBeTimestamped */
            aload 4 /* messageDigest */
            invokespecial sun.security.timestamp.TSRequest.<init>:(Ljava/lang/String;[BLjava/security/MessageDigest;)V
            astore 5 /* tsQuery */
         4: .line 1025
            goto 7
      StackMap locals: sun.security.timestamp.Timestamper java.lang.String java.lang.String byte[] java.security.MessageDigest sun.security.timestamp.TSRequest
      StackMap stack: java.security.NoSuchAlgorithmException
         5: astore 6 /* e */
        start local 6 // java.security.NoSuchAlgorithmException e
         6: .line 1026
            new java.lang.IllegalArgumentException
            dup
            aload 6 /* e */
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 6 // java.security.NoSuchAlgorithmException e
         7: .line 1030
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 6 /* nonce */
        start local 6 // java.math.BigInteger nonce
         8: .line 1031
            getstatic sun.security.pkcs.PKCS7$SecureRandomHolder.RANDOM:Ljava/security/SecureRandom;
            ifnull 11
         9: .line 1032
            new java.math.BigInteger
            dup
            bipush 64
            getstatic sun.security.pkcs.PKCS7$SecureRandomHolder.RANDOM:Ljava/security/SecureRandom;
            invokespecial java.math.BigInteger.<init>:(ILjava/util/Random;)V
            astore 6 /* nonce */
        10: .line 1033
            aload 5 /* tsQuery */
            aload 6 /* nonce */
            invokevirtual sun.security.timestamp.TSRequest.setNonce:(Ljava/math/BigInteger;)V
        11: .line 1035
      StackMap locals: java.math.BigInteger
      StackMap stack:
            aload 5 /* tsQuery */
            iconst_1
            invokevirtual sun.security.timestamp.TSRequest.requestCertificate:(Z)V
        12: .line 1037
            aload 0 /* tsa */
            aload 5 /* tsQuery */
            invokeinterface sun.security.timestamp.Timestamper.generateTimestamp:(Lsun/security/timestamp/TSRequest;)Lsun/security/timestamp/TSResponse;
            astore 7 /* tsReply */
        start local 7 // sun.security.timestamp.TSResponse tsReply
        13: .line 1038
            aload 7 /* tsReply */
            invokevirtual sun.security.timestamp.TSResponse.getStatusCode:()I
            istore 8 /* status */
        start local 8 // int status
        14: .line 1040
            iload 8 /* status */
            ifeq 19
            iload 8 /* status */
            iconst_1
            if_icmpeq 19
        15: .line 1041
            new java.io.IOException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Error generating timestamp: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        16: .line 1042
            aload 7 /* tsReply */
            invokevirtual sun.security.timestamp.TSResponse.getStatusCodeAsText:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        17: .line 1043
            aload 7 /* tsReply */
            invokevirtual sun.security.timestamp.TSResponse.getFailureCodeAsText:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        18: .line 1041
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
        19: .line 1046
      StackMap locals: sun.security.timestamp.TSResponse int
      StackMap stack:
            aload 1 /* tSAPolicyID */
            ifnull 22
        20: .line 1047
            aload 1 /* tSAPolicyID */
            aload 7 /* tsReply */
            invokevirtual sun.security.timestamp.TSResponse.getTimestampToken:()Lsun/security/timestamp/TimestampToken;
            invokevirtual sun.security.timestamp.TimestampToken.getPolicyID:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 22
        21: .line 1048
            new java.io.IOException
            dup
            ldc "TSAPolicyID changed in timestamp token"
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
        22: .line 1051
      StackMap locals:
      StackMap stack:
            aload 7 /* tsReply */
            invokevirtual sun.security.timestamp.TSResponse.getToken:()Lsun/security/pkcs/PKCS7;
            astore 9 /* tsToken */
        start local 9 // sun.security.pkcs.PKCS7 tsToken
        23: .line 1053
            aload 7 /* tsReply */
            invokevirtual sun.security.timestamp.TSResponse.getTimestampToken:()Lsun/security/timestamp/TimestampToken;
            astore 10 /* tst */
        start local 10 // sun.security.timestamp.TimestampToken tst
        24: .line 1055
            aload 10 /* tst */
            invokevirtual sun.security.timestamp.TimestampToken.getHashAlgorithm:()Lsun/security/x509/AlgorithmId;
            aload 2 /* tSADigestAlg */
            invokestatic sun.security.x509.AlgorithmId.get:(Ljava/lang/String;)Lsun/security/x509/AlgorithmId;
            invokevirtual sun.security.x509.AlgorithmId.equals:(Lsun/security/x509/AlgorithmId;)Z
            ifne 30
        25: .line 1056
            new java.io.IOException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Digest algorithm not "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* tSADigestAlg */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " in "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        26: .line 1057
            ldc "timestamp token"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        27: .line 1056
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
        28: .line 1059
      StackMap locals: sun.security.timestamp.Timestamper java.lang.String java.lang.String byte[] java.security.MessageDigest sun.security.timestamp.TSRequest java.math.BigInteger sun.security.timestamp.TSResponse int sun.security.pkcs.PKCS7 sun.security.timestamp.TimestampToken
      StackMap stack: java.security.NoSuchAlgorithmException
            pop
        29: .line 1060
            new java.lang.IllegalArgumentException
            dup
            invokespecial java.lang.IllegalArgumentException.<init>:()V
            athrow
        30: .line 1062
      StackMap locals:
      StackMap stack:
            aload 10 /* tst */
            invokevirtual sun.security.timestamp.TimestampToken.getHashedMessage:()[B
        31: .line 1063
            aload 5 /* tsQuery */
            invokevirtual sun.security.timestamp.TSRequest.getHashedMessage:()[B
        32: .line 1062
            invokestatic java.security.MessageDigest.isEqual:([B[B)Z
        33: .line 1063
            ifne 35
        34: .line 1064
            new java.io.IOException
            dup
            ldc "Digest octets changed in timestamp token"
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
        35: .line 1067
      StackMap locals:
      StackMap stack:
            aload 10 /* tst */
            invokevirtual sun.security.timestamp.TimestampToken.getNonce:()Ljava/math/BigInteger;
            astore 11 /* replyNonce */
        start local 11 // java.math.BigInteger replyNonce
        36: .line 1068
            aload 11 /* replyNonce */
            ifnonnull 38
            aload 6 /* nonce */
            ifnull 38
        37: .line 1069
            new java.io.IOException
            dup
            ldc "Nonce missing in timestamp token"
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
        38: .line 1071
      StackMap locals: java.math.BigInteger
      StackMap stack:
            aload 11 /* replyNonce */
            ifnull 40
            aload 11 /* replyNonce */
            aload 6 /* nonce */
            invokevirtual java.math.BigInteger.equals:(Ljava/lang/Object;)Z
            ifne 40
        39: .line 1072
            new java.io.IOException
            dup
            ldc "Nonce changed in timestamp token"
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
        40: .line 1076
      StackMap locals:
      StackMap stack:
            aload 9 /* tsToken */
            invokevirtual sun.security.pkcs.PKCS7.getSignerInfos:()[Lsun/security/pkcs/SignerInfo;
            dup
            astore 15
            arraylength
            istore 14
            iconst_0
            istore 13
            goto 61
      StackMap locals: sun.security.timestamp.Timestamper java.lang.String java.lang.String byte[] java.security.MessageDigest sun.security.timestamp.TSRequest java.math.BigInteger sun.security.timestamp.TSResponse int sun.security.pkcs.PKCS7 sun.security.timestamp.TimestampToken java.math.BigInteger top int int sun.security.pkcs.SignerInfo[]
      StackMap stack:
        41: aload 15
            iload 13
            aaload
            astore 12 /* si */
        start local 12 // sun.security.pkcs.SignerInfo si
        42: .line 1077
            aload 12 /* si */
            aload 9 /* tsToken */
            invokevirtual sun.security.pkcs.SignerInfo.getCertificate:(Lsun/security/pkcs/PKCS7;)Ljava/security/cert/X509Certificate;
            astore 16 /* cert */
        start local 16 // java.security.cert.X509Certificate cert
        43: .line 1078
            aload 16 /* cert */
            ifnonnull 47
        44: .line 1080
            new java.security.cert.CertificateException
            dup
        45: .line 1081
            ldc "Certificate not included in timestamp token"
        46: .line 1080
            invokespecial java.security.cert.CertificateException.<init>:(Ljava/lang/String;)V
            athrow
        47: .line 1083
      StackMap locals: sun.security.timestamp.Timestamper java.lang.String java.lang.String byte[] java.security.MessageDigest sun.security.timestamp.TSRequest java.math.BigInteger sun.security.timestamp.TSResponse int sun.security.pkcs.PKCS7 sun.security.timestamp.TimestampToken java.math.BigInteger sun.security.pkcs.SignerInfo int int sun.security.pkcs.SignerInfo[] java.security.cert.X509Certificate
      StackMap stack:
            aload 16 /* cert */
            invokevirtual java.security.cert.X509Certificate.getCriticalExtensionOIDs:()Ljava/util/Set;
        48: .line 1084
            getstatic sun.security.util.KnownOIDs.extendedKeyUsage:Lsun/security/util/KnownOIDs;
            invokevirtual sun.security.util.KnownOIDs.value:()Ljava/lang/String;
        49: .line 1083
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
        50: .line 1084
            ifne 54
        51: .line 1085
            new java.security.cert.CertificateException
            dup
        52: .line 1086
            ldc "Certificate is not valid for timestamping"
        53: .line 1085
            invokespecial java.security.cert.CertificateException.<init>:(Ljava/lang/String;)V
            athrow
        54: .line 1088
      StackMap locals:
      StackMap stack:
            aload 16 /* cert */
            invokevirtual java.security.cert.X509Certificate.getExtendedKeyUsage:()Ljava/util/List;
            astore 17 /* keyPurposes */
        start local 17 // java.util.List keyPurposes
        55: .line 1089
            aload 17 /* keyPurposes */
            ifnull 57
        56: .line 1090
            aload 17 /* keyPurposes */
            getstatic sun.security.util.KnownOIDs.KP_TimeStamping:Lsun/security/util/KnownOIDs;
            invokevirtual sun.security.util.KnownOIDs.value:()Ljava/lang/String;
            invokeinterface java.util.List.contains:(Ljava/lang/Object;)Z
            ifne 60
        57: .line 1091
      StackMap locals: java.util.List
      StackMap stack:
            new java.security.cert.CertificateException
            dup
        58: .line 1092
            ldc "Certificate is not valid for timestamping"
        59: .line 1091
            invokespecial java.security.cert.CertificateException.<init>:(Ljava/lang/String;)V
            athrow
        end local 17 // java.util.List keyPurposes
        end local 16 // java.security.cert.X509Certificate cert
        end local 12 // sun.security.pkcs.SignerInfo si
        60: .line 1076
      StackMap locals: sun.security.timestamp.Timestamper java.lang.String java.lang.String byte[] java.security.MessageDigest sun.security.timestamp.TSRequest java.math.BigInteger sun.security.timestamp.TSResponse int sun.security.pkcs.PKCS7 sun.security.timestamp.TimestampToken java.math.BigInteger top int int sun.security.pkcs.SignerInfo[]
      StackMap stack:
            iinc 13 1
      StackMap locals:
      StackMap stack:
        61: iload 13
            iload 14
            if_icmplt 41
        62: .line 1096
            aload 7 /* tsReply */
            invokevirtual sun.security.timestamp.TSResponse.getEncodedToken:()[B
            areturn
        end local 11 // java.math.BigInteger replyNonce
        end local 10 // sun.security.timestamp.TimestampToken tst
        end local 9 // sun.security.pkcs.PKCS7 tsToken
        end local 8 // int status
        end local 7 // sun.security.timestamp.TSResponse tsReply
        end local 6 // java.math.BigInteger nonce
        end local 5 // sun.security.timestamp.TSRequest tsQuery
        end local 4 // java.security.MessageDigest messageDigest
        end local 3 // byte[] toBeTimestamped
        end local 2 // java.lang.String tSADigestAlg
        end local 1 // java.lang.String tSAPolicyID
        end local 0 // sun.security.timestamp.Timestamper tsa
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   63     0              tsa  Lsun/security/timestamp/Timestamper;
            0   63     1      tSAPolicyID  Ljava/lang/String;
            0   63     2     tSADigestAlg  Ljava/lang/String;
            0   63     3  toBeTimestamped  [B
            1   63     4    messageDigest  Ljava/security/MessageDigest;
            2   63     5          tsQuery  Lsun/security/timestamp/TSRequest;
            6    7     6                e  Ljava/security/NoSuchAlgorithmException;
            8   63     6            nonce  Ljava/math/BigInteger;
           13   63     7          tsReply  Lsun/security/timestamp/TSResponse;
           14   63     8           status  I
           23   63     9          tsToken  Lsun/security/pkcs/PKCS7;
           24   63    10              tst  Lsun/security/timestamp/TimestampToken;
           36   63    11       replyNonce  Ljava/math/BigInteger;
           42   60    12               si  Lsun/security/pkcs/SignerInfo;
           43   60    16             cert  Ljava/security/cert/X509Certificate;
           55   60    17      keyPurposes  Ljava/util/List<Ljava/lang/String;>;
      Exception table:
        from    to  target  type
           2     4       5  Class java.security.NoSuchAlgorithmException
          24    28      28  Class java.security.NoSuchAlgorithmException
    Exceptions:
      throws java.io.IOException, java.security.cert.CertificateException
    MethodParameters:
                 Name  Flags
      tsa              
      tSAPolicyID      
      tSADigestAlg     
      toBeTimestamped  
}
SourceFile: "PKCS7.java"
NestMembers:
  sun.security.pkcs.PKCS7$SecureRandomHolder
InnerClasses:
  private SecureRandomHolder = sun.security.pkcs.PKCS7$SecureRandomHolder of sun.security.pkcs.PKCS7