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

  private static final java.lang.String KP_TIMESTAMPING_OID;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "1.3.6.1.5.5.7.3.8"

  private static final java.lang.String EXTENDED_KEY_USAGE_OID;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "2.5.29.37"

  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 109
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 63
            aload 0 /* this */
            aconst_null
            putfield sun.security.pkcs.PKCS7.version:Ljava/math/BigInteger;
         2: .line 64
            aload 0 /* this */
            aconst_null
            putfield sun.security.pkcs.PKCS7.digestAlgorithmIds:[Lsun/security/x509/AlgorithmId;
         3: .line 65
            aload 0 /* this */
            aconst_null
            putfield sun.security.pkcs.PKCS7.contentInfo:Lsun/security/pkcs/ContentInfo;
         4: .line 66
            aload 0 /* this */
            aconst_null
            putfield sun.security.pkcs.PKCS7.certificates:[Ljava/security/cert/X509Certificate;
         5: .line 67
            aload 0 /* this */
            aconst_null
            putfield sun.security.pkcs.PKCS7.crls:[Ljava/security/cert/X509CRL;
         6: .line 68
            aload 0 /* this */
            aconst_null
            putfield sun.security.pkcs.PKCS7.signerInfos:[Lsun/security/pkcs/SignerInfo;
         7: .line 70
            aload 0 /* this */
            iconst_0
            putfield sun.security.pkcs.PKCS7.oldStyle:Z
         8: .line 110
            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 111
            aload 2 /* dis */
            invokevirtual java.io.DataInputStream.available:()I
            newarray 8
            astore 3 /* data */
        start local 3 // byte[] data
        10: .line 112
            aload 2 /* dis */
            aload 3 /* data */
            invokevirtual java.io.DataInputStream.readFully:([B)V
        11: .line 114
            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 115
            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 124
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 63
            aload 0 /* this */
            aconst_null
            putfield sun.security.pkcs.PKCS7.version:Ljava/math/BigInteger;
         2: .line 64
            aload 0 /* this */
            aconst_null
            putfield sun.security.pkcs.PKCS7.digestAlgorithmIds:[Lsun/security/x509/AlgorithmId;
         3: .line 65
            aload 0 /* this */
            aconst_null
            putfield sun.security.pkcs.PKCS7.contentInfo:Lsun/security/pkcs/ContentInfo;
         4: .line 66
            aload 0 /* this */
            aconst_null
            putfield sun.security.pkcs.PKCS7.certificates:[Ljava/security/cert/X509Certificate;
         5: .line 67
            aload 0 /* this */
            aconst_null
            putfield sun.security.pkcs.PKCS7.crls:[Ljava/security/cert/X509CRL;
         6: .line 68
            aload 0 /* this */
            aconst_null
            putfield sun.security.pkcs.PKCS7.signerInfos:[Lsun/security/pkcs/SignerInfo;
         7: .line 70
            aload 0 /* this */
            iconst_0
            putfield sun.security.pkcs.PKCS7.oldStyle:Z
         8: .line 125
            aload 0 /* this */
            aload 1 /* derin */
            invokevirtual sun.security.pkcs.PKCS7.parse:(Lsun/security/util/DerInputStream;)V
         9: .line 126
            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 135
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 63
            aload 0 /* this */
            aconst_null
            putfield sun.security.pkcs.PKCS7.version:Ljava/math/BigInteger;
         2: .line 64
            aload 0 /* this */
            aconst_null
            putfield sun.security.pkcs.PKCS7.digestAlgorithmIds:[Lsun/security/x509/AlgorithmId;
         3: .line 65
            aload 0 /* this */
            aconst_null
            putfield sun.security.pkcs.PKCS7.contentInfo:Lsun/security/pkcs/ContentInfo;
         4: .line 66
            aload 0 /* this */
            aconst_null
            putfield sun.security.pkcs.PKCS7.certificates:[Ljava/security/cert/X509Certificate;
         5: .line 67
            aload 0 /* this */
            aconst_null
            putfield sun.security.pkcs.PKCS7.crls:[Ljava/security/cert/X509CRL;
         6: .line 68
            aload 0 /* this */
            aconst_null
            putfield sun.security.pkcs.PKCS7.signerInfos:[Lsun/security/pkcs/SignerInfo;
         7: .line 70
            aload 0 /* this */
            iconst_0
            putfield sun.security.pkcs.PKCS7.oldStyle:Z
         8: .line 137
            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 138
            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 139
            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 140
            new sun.security.pkcs.ParsingException
            dup
        13: .line 141
            ldc "Unable to parse the encoded bytes"
        14: .line 140
            invokespecial sun.security.pkcs.ParsingException.<init>:(Ljava/lang/String;)V
            astore 3 /* pe */
        start local 3 // sun.security.pkcs.ParsingException pe
        15: .line 142
            aload 3 /* pe */
            aload 2 /* ioe1 */
            invokevirtual sun.security.pkcs.ParsingException.initCause:(Ljava/lang/Throwable;)Ljava/lang/Throwable;
            pop
        16: .line 143
            aload 3 /* pe */
            athrow
        end local 3 // sun.security.pkcs.ParsingException pe
        end local 2 // java.io.IOException ioe1
        17: .line 145
      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=4, args_size=2
        start local 0 // sun.security.pkcs.PKCS7 this
        start local 1 // sun.security.util.DerInputStream derin
         0: .line 154
            aload 1 /* derin */
            aload 1 /* derin */
            invokevirtual sun.security.util.DerInputStream.available:()I
            invokevirtual sun.security.util.DerInputStream.mark:(I)V
         1: .line 156
            aload 0 /* this */
            aload 1 /* derin */
            iconst_0
            invokevirtual sun.security.pkcs.PKCS7.parse:(Lsun/security/util/DerInputStream;Z)V
         2: .line 157
            goto 14
      StackMap locals:
      StackMap stack: java.io.IOException
         3: pop
         4: .line 159
            aload 1 /* derin */
            invokevirtual sun.security.util.DerInputStream.reset:()V
         5: .line 161
            aload 0 /* this */
            aload 1 /* derin */
            iconst_1
            invokevirtual sun.security.pkcs.PKCS7.parse:(Lsun/security/util/DerInputStream;Z)V
         6: .line 162
            aload 0 /* this */
            iconst_1
            putfield sun.security.pkcs.PKCS7.oldStyle:Z
         7: .line 163
            goto 14
      StackMap locals:
      StackMap stack: java.io.IOException
         8: astore 2 /* ioe1 */
        start local 2 // java.io.IOException ioe1
         9: .line 164
            new sun.security.pkcs.ParsingException
            dup
        10: .line 165
            aload 2 /* ioe1 */
            invokevirtual java.io.IOException.getMessage:()Ljava/lang/String;
        11: .line 164
            invokespecial sun.security.pkcs.ParsingException.<init>:(Ljava/lang/String;)V
            astore 3 /* pe */
        start local 3 // sun.security.pkcs.ParsingException pe
        12: .line 166
            aload 3 /* pe */
            aload 2 /* ioe1 */
            invokevirtual sun.security.pkcs.ParsingException.initCause:(Ljava/lang/Throwable;)Ljava/lang/Throwable;
            pop
        13: .line 167
            aload 3 /* pe */
            athrow
        end local 3 // sun.security.pkcs.ParsingException pe
        end local 2 // java.io.IOException ioe1
        14: .line 170
      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   15     0   this  Lsun/security/pkcs/PKCS7;
            0   15     1  derin  Lsun/security/util/DerInputStream;
            9   14     2   ioe1  Ljava/io/IOException;
           12   14     3     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=4, 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 182
            aload 0 /* this */
            new sun.security.pkcs.ContentInfo
            dup
            aload 1 /* derin */
            iload 2 /* oldStyle */
            invokespecial sun.security.pkcs.ContentInfo.<init>:(Lsun/security/util/DerInputStream;Z)V
            putfield sun.security.pkcs.PKCS7.contentInfo:Lsun/security/pkcs/ContentInfo;
         1: .line 183
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.contentInfo:Lsun/security/pkcs/ContentInfo;
            getfield sun.security.pkcs.ContentInfo.contentType:Lsun/security/util/ObjectIdentifier;
            putfield sun.security.pkcs.PKCS7.contentType:Lsun/security/util/ObjectIdentifier;
         2: .line 184
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.contentInfo:Lsun/security/pkcs/ContentInfo;
            invokevirtual sun.security.pkcs.ContentInfo.getContent:()Lsun/security/util/DerValue;
            astore 3 /* content */
        start local 3 // sun.security.util.DerValue content
         3: .line 186
            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 187
            aload 0 /* this */
            aload 3 /* content */
            invokevirtual sun.security.pkcs.PKCS7.parseSignedData:(Lsun/security/util/DerValue;)V
         5: .line 188
            goto 18
      StackMap locals: 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 190
            aload 0 /* this */
            aload 3 /* content */
            invokevirtual sun.security.pkcs.PKCS7.parseOldSignedData:(Lsun/security/util/DerValue;)V
         8: .line 191
            goto 18
      StackMap locals:
      StackMap stack:
         9: aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.contentType:Lsun/security/util/ObjectIdentifier;
        10: .line 192
            getstatic sun.security.pkcs.ContentInfo.NETSCAPE_CERT_SEQUENCE_OID:Lsun/security/util/ObjectIdentifier;
        11: .line 191
            invokevirtual sun.security.util.ObjectIdentifier.equals:(Ljava/lang/Object;)Z
        12: .line 192
            ifeq 15
        13: .line 193
            aload 0 /* this */
            aload 3 /* content */
            invokevirtual sun.security.pkcs.PKCS7.parseNetscapeCertChain:(Lsun/security/util/DerValue;)V
        14: .line 194
            goto 18
        15: .line 195
      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;
        16: .line 196
            ldc " not supported."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        17: .line 195
            invokespecial sun.security.pkcs.ParsingException.<init>:(Ljava/lang/String;)V
            athrow
        18: .line 198
      StackMap locals:
      StackMap stack:
            return
        end local 3 // sun.security.util.DerValue content
        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   19     0      this  Lsun/security/pkcs/PKCS7;
            0   19     1     derin  Lsun/security/util/DerInputStream;
            0   19     2  oldStyle  Z
            3   19     3   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[], 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=2, 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 208
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 63
            aload 0 /* this */
            aconst_null
            putfield sun.security.pkcs.PKCS7.version:Ljava/math/BigInteger;
         2: .line 64
            aload 0 /* this */
            aconst_null
            putfield sun.security.pkcs.PKCS7.digestAlgorithmIds:[Lsun/security/x509/AlgorithmId;
         3: .line 65
            aload 0 /* this */
            aconst_null
            putfield sun.security.pkcs.PKCS7.contentInfo:Lsun/security/pkcs/ContentInfo;
         4: .line 66
            aload 0 /* this */
            aconst_null
            putfield sun.security.pkcs.PKCS7.certificates:[Ljava/security/cert/X509Certificate;
         5: .line 67
            aload 0 /* this */
            aconst_null
            putfield sun.security.pkcs.PKCS7.crls:[Ljava/security/cert/X509CRL;
         6: .line 68
            aload 0 /* this */
            aconst_null
            putfield sun.security.pkcs.PKCS7.signerInfos:[Lsun/security/pkcs/SignerInfo;
         7: .line 70
            aload 0 /* this */
            iconst_0
            putfield sun.security.pkcs.PKCS7.oldStyle:Z
         8: .line 213
            aload 0 /* this */
            getstatic java.math.BigInteger.ONE:Ljava/math/BigInteger;
            putfield sun.security.pkcs.PKCS7.version:Ljava/math/BigInteger;
         9: .line 214
            aload 0 /* this */
            aload 1 /* digestAlgorithmIds */
            putfield sun.security.pkcs.PKCS7.digestAlgorithmIds:[Lsun/security/x509/AlgorithmId;
        10: .line 215
            aload 0 /* this */
            aload 2 /* contentInfo */
            putfield sun.security.pkcs.PKCS7.contentInfo:Lsun/security/pkcs/ContentInfo;
        11: .line 216
            aload 0 /* this */
            aload 3 /* certificates */
            putfield sun.security.pkcs.PKCS7.certificates:[Ljava/security/cert/X509Certificate;
        12: .line 217
            aload 0 /* this */
            aload 4 /* signerInfos */
            putfield sun.security.pkcs.PKCS7.signerInfos:[Lsun/security/pkcs/SignerInfo;
        13: .line 218
            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   14     0                this  Lsun/security/pkcs/PKCS7;
            0   14     1  digestAlgorithmIds  [Lsun/security/x509/AlgorithmId;
            0   14     2         contentInfo  Lsun/security/pkcs/ContentInfo;
            0   14     3        certificates  [Ljava/security/cert/X509Certificate;
            0   14     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 222
            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 223
            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 224
            aload 0 /* this */
            aload 3 /* contents */
            arraylength
            anewarray java.security.cert.X509Certificate
            putfield sun.security.pkcs.PKCS7.certificates:[Ljava/security/cert/X509Certificate;
         3: .line 226
            aconst_null
            astore 4 /* certfac */
        start local 4 // java.security.cert.CertificateFactory certfac
         4: .line 228
            ldc "X.509"
            invokestatic java.security.cert.CertificateFactory.getInstance:(Ljava/lang/String;)Ljava/security/cert/CertificateFactory;
            astore 4 /* certfac */
         5: .line 229
            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 233
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         8: goto 35
         9: .line 234
      StackMap locals: int
      StackMap stack:
            aconst_null
            astore 6 /* bais */
        start local 6 // java.io.ByteArrayInputStream bais
        10: .line 236
            aload 4 /* certfac */
            ifnonnull 12
        11: .line 237
            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 239
      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 240
            new java.io.ByteArrayInputStream
            dup
            aload 7 /* encoded */
            invokespecial java.io.ByteArrayInputStream.<init>:([B)V
            astore 6 /* bais */
        14: .line 241
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.certificates:[Ljava/security/cert/X509Certificate;
            iload 5 /* i */
        15: .line 242
            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 241
            aastore
        17: .line 243
            aload 6 /* bais */
            invokevirtual java.io.ByteArrayInputStream.close:()V
        18: .line 244
            aconst_null
            astore 6 /* bais */
        end local 7 // byte[] encoded
        19: .line 246
            goto 32
      StackMap locals:
      StackMap stack: java.security.cert.CertificateException
        20: astore 7 /* ce */
        start local 7 // java.security.cert.CertificateException ce
        21: .line 247
            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 248
            aload 8 /* pe */
            aload 7 /* ce */
            invokevirtual sun.security.pkcs.ParsingException.initCause:(Ljava/lang/Throwable;)Ljava/lang/Throwable;
            pop
        23: .line 249
            aload 8 /* pe */
            athrow
        end local 8 // sun.security.pkcs.ParsingException pe
        end local 7 // java.security.cert.CertificateException ce
        24: .line 250
      StackMap locals:
      StackMap stack: java.io.IOException
            astore 7 /* ioe */
        start local 7 // java.io.IOException ioe
        25: .line 251
            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 252
            aload 8 /* pe */
            aload 7 /* ioe */
            invokevirtual sun.security.pkcs.ParsingException.initCause:(Ljava/lang/Throwable;)Ljava/lang/Throwable;
            pop
        27: .line 253
            aload 8 /* pe */
            athrow
        end local 8 // sun.security.pkcs.ParsingException pe
        end local 7 // java.io.IOException ioe
        28: .line 254
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 9
        29: .line 255
            aload 6 /* bais */
            ifnull 31
        30: .line 256
            aload 6 /* bais */
            invokevirtual java.io.ByteArrayInputStream.close:()V
        31: .line 257
      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 255
      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 256
            aload 6 /* bais */
            invokevirtual java.io.ByteArrayInputStream.close:()V
        end local 6 // java.io.ByteArrayInputStream bais
        34: .line 233
      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 259
            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=12, args_size=2
        start local 0 // sun.security.pkcs.PKCS7 this
        start local 1 // sun.security.util.DerValue val
         0: .line 264
            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 267
            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 270
            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 271
            aload 3 /* digestAlgorithmIdVals */
            arraylength
            istore 4 /* len */
        start local 4 // int len
         4: .line 272
            aload 0 /* this */
            iload 4 /* len */
            anewarray sun.security.x509.AlgorithmId
            putfield sun.security.pkcs.PKCS7.digestAlgorithmIds:[Lsun/security/x509/AlgorithmId;
         5: .line 274
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         6: goto 10
         7: .line 275
      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 276
            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 274
            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 279
            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 281
            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 282
            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 281
            invokespecial sun.security.pkcs.ParsingException.<init>:(Ljava/lang/String;)V
        16: .line 280
            astore 6 /* pe */
        start local 6 // sun.security.pkcs.ParsingException pe
        17: .line 283
            aload 6 /* pe */
            aload 5 /* e */
            invokevirtual sun.security.pkcs.ParsingException.initCause:(Ljava/lang/Throwable;)Ljava/lang/Throwable;
            pop
        18: .line 284
            aload 6 /* pe */
            athrow
        end local 6 // sun.security.pkcs.ParsingException pe
        end local 5 // java.io.IOException e
        19: .line 287
      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 289
            aconst_null
            astore 5 /* certfac */
        start local 5 // java.security.cert.CertificateFactory certfac
        21: .line 291
            ldc "X.509"
            invokestatic java.security.cert.CertificateFactory.getInstance:(Ljava/lang/String;)Ljava/security/cert/CertificateFactory;
            astore 5 /* certfac */
        22: .line 292
            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 300
      StackMap locals:
      StackMap stack:
            aload 2 /* dis */
            invokevirtual sun.security.util.DerInputStream.peekByte:()I
            i2b
            bipush -96
            if_icmpne 57
        25: .line 301
            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 303
            aload 6 /* certVals */
            arraylength
            istore 4 /* len */
        27: .line 304
            aload 0 /* this */
            iload 4 /* len */
            anewarray java.security.cert.X509Certificate
            putfield sun.security.pkcs.PKCS7.certificates:[Ljava/security/cert/X509Certificate;
        28: .line 306
            iconst_0
            istore 7 /* i */
        start local 7 // int i
        29: goto 56
        30: .line 307
      StackMap locals: sun.security.util.DerValue[] int
      StackMap stack:
            aconst_null
            astore 8 /* bais */
        start local 8 // java.io.ByteArrayInputStream bais
        31: .line 309
            aload 5 /* certfac */
            ifnonnull 33
        32: .line 310
            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 53
        33: .line 312
      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
        34: .line 313
            new java.io.ByteArrayInputStream
            dup
            aload 9 /* encoded */
            invokespecial java.io.ByteArrayInputStream.<init>:([B)V
            astore 8 /* bais */
        35: .line 314
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.certificates:[Ljava/security/cert/X509Certificate;
            iload 7 /* i */
        36: .line 315
            aload 5 /* certfac */
            aload 8 /* bais */
            invokevirtual java.security.cert.CertificateFactory.generateCertificate:(Ljava/io/InputStream;)Ljava/security/cert/Certificate;
            checkcast java.security.cert.X509Certificate
        37: .line 314
            aastore
        38: .line 316
            aload 8 /* bais */
            invokevirtual java.io.ByteArrayInputStream.close:()V
        39: .line 317
            aconst_null
            astore 8 /* bais */
        end local 9 // byte[] encoded
        40: .line 319
            goto 53
      StackMap locals:
      StackMap stack: java.security.cert.CertificateException
        41: astore 9 /* ce */
        start local 9 // java.security.cert.CertificateException ce
        42: .line 320
            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
        43: .line 321
            aload 10 /* pe */
            aload 9 /* ce */
            invokevirtual sun.security.pkcs.ParsingException.initCause:(Ljava/lang/Throwable;)Ljava/lang/Throwable;
            pop
        44: .line 322
            aload 10 /* pe */
            athrow
        end local 10 // sun.security.pkcs.ParsingException pe
        end local 9 // java.security.cert.CertificateException ce
        45: .line 323
      StackMap locals:
      StackMap stack: java.io.IOException
            astore 9 /* ioe */
        start local 9 // java.io.IOException ioe
        46: .line 324
            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
        47: .line 325
            aload 10 /* pe */
            aload 9 /* ioe */
            invokevirtual sun.security.pkcs.ParsingException.initCause:(Ljava/lang/Throwable;)Ljava/lang/Throwable;
            pop
        48: .line 326
            aload 10 /* pe */
            athrow
        end local 10 // sun.security.pkcs.ParsingException pe
        end local 9 // java.io.IOException ioe
        49: .line 327
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 11
        50: .line 328
            aload 8 /* bais */
            ifnull 52
        51: .line 329
            aload 8 /* bais */
            invokevirtual java.io.ByteArrayInputStream.close:()V
        52: .line 330
      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
        53: .line 328
      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 55
        54: .line 329
            aload 8 /* bais */
            invokevirtual java.io.ByteArrayInputStream.close:()V
        end local 8 // java.io.ByteArrayInputStream bais
        55: .line 306
      StackMap locals:
      StackMap stack:
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        56: iload 7 /* i */
            iload 4 /* len */
            if_icmplt 30
        end local 7 // int i
        end local 6 // sun.security.util.DerValue[] certVals
        57: .line 335
      StackMap locals:
      StackMap stack:
            aload 2 /* dis */
            invokevirtual sun.security.util.DerInputStream.peekByte:()I
            i2b
            bipush -95
            if_icmpne 85
        58: .line 336
            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
        59: .line 338
            aload 6 /* crlVals */
            arraylength
            istore 4 /* len */
        60: .line 339
            aload 0 /* this */
            iload 4 /* len */
            anewarray java.security.cert.X509CRL
            putfield sun.security.pkcs.PKCS7.crls:[Ljava/security/cert/X509CRL;
        61: .line 341
            iconst_0
            istore 7 /* i */
        start local 7 // int i
        62: goto 84
        63: .line 342
      StackMap locals: sun.security.util.DerValue[] int
      StackMap stack:
            aconst_null
            astore 8 /* bais */
        start local 8 // java.io.ByteArrayInputStream bais
        64: .line 344
            aload 5 /* certfac */
            ifnonnull 66
        65: .line 345
            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 81
        66: .line 347
      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
        67: .line 348
            new java.io.ByteArrayInputStream
            dup
            aload 9 /* encoded */
            invokespecial java.io.ByteArrayInputStream.<init>:([B)V
            astore 8 /* bais */
        68: .line 349
            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
        69: .line 350
            aload 8 /* bais */
            invokevirtual java.io.ByteArrayInputStream.close:()V
        70: .line 351
            aconst_null
            astore 8 /* bais */
        end local 9 // byte[] encoded
        71: .line 353
            goto 81
      StackMap locals:
      StackMap stack: java.security.cert.CRLException
        72: astore 9 /* e */
        start local 9 // java.security.cert.CRLException e
        73: .line 355
            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
        74: .line 354
            astore 10 /* pe */
        start local 10 // sun.security.pkcs.ParsingException pe
        75: .line 356
            aload 10 /* pe */
            aload 9 /* e */
            invokevirtual sun.security.pkcs.ParsingException.initCause:(Ljava/lang/Throwable;)Ljava/lang/Throwable;
            pop
        76: .line 357
            aload 10 /* pe */
            athrow
        end local 10 // sun.security.pkcs.ParsingException pe
        end local 9 // java.security.cert.CRLException e
        77: .line 358
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 11
        78: .line 359
            aload 8 /* bais */
            ifnull 80
        79: .line 360
            aload 8 /* bais */
            invokevirtual java.io.ByteArrayInputStream.close:()V
        80: .line 361
      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
        81: .line 359
      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 83
        82: .line 360
            aload 8 /* bais */
            invokevirtual java.io.ByteArrayInputStream.close:()V
        end local 8 // java.io.ByteArrayInputStream bais
        83: .line 341
      StackMap locals:
      StackMap stack:
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        84: iload 7 /* i */
            iload 4 /* len */
            if_icmplt 63
        end local 7 // int i
        end local 6 // sun.security.util.DerValue[] crlVals
        85: .line 366
      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
        86: .line 368
            aload 6 /* signerInfoVals */
            arraylength
            istore 4 /* len */
        87: .line 369
            aload 0 /* this */
            iload 4 /* len */
            anewarray sun.security.pkcs.SignerInfo
            putfield sun.security.pkcs.PKCS7.signerInfos:[Lsun/security/pkcs/SignerInfo;
        88: .line 371
            iconst_0
            istore 7 /* i */
        start local 7 // int i
        89: goto 93
        90: .line 372
      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
        91: .line 373
            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
        92: .line 371
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        93: iload 7 /* i */
            iload 4 /* len */
            if_icmplt 90
        end local 7 // int i
        94: .line 375
            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   95     0                   this  Lsun/security/pkcs/PKCS7;
            0   95     1                    val  Lsun/security/util/DerValue;
            1   95     2                    dis  Lsun/security/util/DerInputStream;
            3   95     3  digestAlgorithmIdVals  [Lsun/security/util/DerValue;
            4   95     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   95     5                certfac  Ljava/security/cert/CertificateFactory;
           26   57     6               certVals  [Lsun/security/util/DerValue;
           29   57     7                      i  I
           31   55     8                   bais  Ljava/io/ByteArrayInputStream;
           34   40     9                encoded  [B
           42   45     9                     ce  Ljava/security/cert/CertificateException;
           43   45    10                     pe  Lsun/security/pkcs/ParsingException;
           46   49     9                    ioe  Ljava/io/IOException;
           47   49    10                     pe  Lsun/security/pkcs/ParsingException;
           59   85     6                crlVals  [Lsun/security/util/DerValue;
           62   85     7                      i  I
           64   83     8                   bais  Ljava/io/ByteArrayInputStream;
           67   71     9                encoded  [B
           73   77     9                      e  Ljava/security/cert/CRLException;
           75   77    10                     pe  Lsun/security/pkcs/ParsingException;
           86   95     6         signerInfoVals  [Lsun/security/util/DerValue;
           89   94     7                      i  I
           91   92     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
          31    40      41  Class java.security.cert.CertificateException
          31    40      45  Class java.io.IOException
          31    49      49  any
          64    71      72  Class java.security.cert.CRLException
          64    77      77  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 384
            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 387
            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 390
            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 391
            aload 3 /* digestAlgorithmIdVals */
            arraylength
            istore 4 /* len */
        start local 4 // int len
         4: .line 393
            aload 0 /* this */
            iload 4 /* len */
            anewarray sun.security.x509.AlgorithmId
            putfield sun.security.pkcs.PKCS7.digestAlgorithmIds:[Lsun/security/x509/AlgorithmId;
         5: .line 395
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         6: goto 10
         7: .line 396
      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 397
            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 395
            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 399
            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 400
            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 404
      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 407
            aconst_null
            astore 5 /* certfac */
        start local 5 // java.security.cert.CertificateFactory certfac
        16: .line 409
            ldc "X.509"
            invokestatic java.security.cert.CertificateFactory.getInstance:(Ljava/lang/String;)Ljava/security/cert/CertificateFactory;
            astore 5 /* certfac */
        17: .line 410
            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 413
      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 414
            aload 6 /* certVals */
            arraylength
            istore 4 /* len */
        21: .line 415
            aload 0 /* this */
            iload 4 /* len */
            anewarray java.security.cert.X509Certificate
            putfield sun.security.pkcs.PKCS7.certificates:[Ljava/security/cert/X509Certificate;
        22: .line 417
            iconst_0
            istore 7 /* i */
        start local 7 // int i
        23: goto 50
        24: .line 418
      StackMap locals: sun.security.util.DerValue[] int
      StackMap stack:
            aconst_null
            astore 8 /* bais */
        start local 8 // java.io.ByteArrayInputStream bais
        25: .line 420
            aload 5 /* certfac */
            ifnonnull 27
        26: .line 421
            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 423
      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 424
            new java.io.ByteArrayInputStream
            dup
            aload 9 /* encoded */
            invokespecial java.io.ByteArrayInputStream.<init>:([B)V
            astore 8 /* bais */
        29: .line 425
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.certificates:[Ljava/security/cert/X509Certificate;
            iload 7 /* i */
        30: .line 426
            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 425
            aastore
        32: .line 427
            aload 8 /* bais */
            invokevirtual java.io.ByteArrayInputStream.close:()V
        33: .line 428
            aconst_null
            astore 8 /* bais */
        end local 9 // byte[] encoded
        34: .line 430
            goto 47
      StackMap locals:
      StackMap stack: java.security.cert.CertificateException
        35: astore 9 /* ce */
        start local 9 // java.security.cert.CertificateException ce
        36: .line 431
            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 432
            aload 10 /* pe */
            aload 9 /* ce */
            invokevirtual sun.security.pkcs.ParsingException.initCause:(Ljava/lang/Throwable;)Ljava/lang/Throwable;
            pop
        38: .line 433
            aload 10 /* pe */
            athrow
        end local 10 // sun.security.pkcs.ParsingException pe
        end local 9 // java.security.cert.CertificateException ce
        39: .line 434
      StackMap locals:
      StackMap stack: java.io.IOException
            astore 9 /* ioe */
        start local 9 // java.io.IOException ioe
        40: .line 435
            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 436
            aload 10 /* pe */
            aload 9 /* ioe */
            invokevirtual sun.security.pkcs.ParsingException.initCause:(Ljava/lang/Throwable;)Ljava/lang/Throwable;
            pop
        42: .line 437
            aload 10 /* pe */
            athrow
        end local 10 // sun.security.pkcs.ParsingException pe
        end local 9 // java.io.IOException ioe
        43: .line 438
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 11
        44: .line 439
            aload 8 /* bais */
            ifnull 46
        45: .line 440
            aload 8 /* bais */
            invokevirtual java.io.ByteArrayInputStream.close:()V
        46: .line 441
      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 439
      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 440
            aload 8 /* bais */
            invokevirtual java.io.ByteArrayInputStream.close:()V
        end local 8 // java.io.ByteArrayInputStream bais
        49: .line 417
      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 445
            aload 2 /* dis */
            iconst_0
            invokevirtual sun.security.util.DerInputStream.getSet:(I)[Lsun/security/util/DerValue;
            pop
        52: .line 448
            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 449
            aload 7 /* signerInfoVals */
            arraylength
            istore 4 /* len */
        54: .line 450
            aload 0 /* this */
            iload 4 /* len */
            anewarray sun.security.pkcs.SignerInfo
            putfield sun.security.pkcs.PKCS7.signerInfos:[Lsun/security/pkcs/SignerInfo;
        55: .line 451
            iconst_0
            istore 8 /* i */
        start local 8 // int i
        56: goto 60
        57: .line 452
      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 453
            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 451
            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 455
            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 464
            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 465
            aload 0 /* this */
            aload 2 /* derout */
            invokevirtual sun.security.pkcs.PKCS7.encodeSignedData:(Lsun/security/util/DerOutputStream;)V
         2: .line 466
            aload 1 /* out */
            aload 2 /* derout */
            invokevirtual sun.security.util.DerOutputStream.toByteArray:()[B
            invokevirtual java.io.OutputStream.write:([B)V
         3: .line 467
            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=6, args_size=2
        start local 0 // sun.security.pkcs.PKCS7 this
        start local 1 // sun.security.util.DerOutputStream out
         0: .line 478
            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 481
            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 484
            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 487
            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 490
            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 492
            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 493
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         7: goto 16
         8: .line 494
      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 495
            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 498
      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 499
            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 500
            goto 15
      StackMap locals:
      StackMap stack: java.security.cert.CertificateException
        13: astore 5 /* ce */
        start local 5 // java.security.cert.CertificateException ce
        14: .line 501
            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 493
      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 508
            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 514
      StackMap locals:
      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
        19: .line 517
            new sun.security.util.DerValue
            dup
            bipush 48
        20: .line 518
            aload 2 /* signedData */
            invokevirtual sun.security.util.DerOutputStream.toByteArray:()[B
        21: .line 517
            invokespecial sun.security.util.DerValue.<init>:(B[B)V
            astore 3 /* signedDataSeq */
        start local 3 // sun.security.util.DerValue signedDataSeq
        22: .line 521
            new sun.security.pkcs.ContentInfo
            dup
            getstatic sun.security.pkcs.ContentInfo.SIGNED_DATA_OID:Lsun/security/util/ObjectIdentifier;
        23: .line 522
            aload 3 /* signedDataSeq */
        24: .line 521
            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
        25: .line 525
            aload 4 /* block */
            aload 1 /* out */
            invokevirtual sun.security.pkcs.ContentInfo.encode:(Lsun/security/util/DerOutputStream;)V
        26: .line 526
            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   27     0           this  Lsun/security/pkcs/PKCS7;
            0   27     1            out  Lsun/security/util/DerOutputStream;
            1   27     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;
           22   27     3  signedDataSeq  Lsun/security/util/DerValue;
           25   27     4          block  Lsun/security/pkcs/ContentInfo;
      Exception table:
        from    to  target  type
          10    12      13  Class java.security.cert.CertificateException
    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 539
            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 553
            new java.util.Vector
            dup
            invokespecial java.util.Vector.<init>:()V
            astore 2 /* intResult */
        start local 2 // java.util.Vector intResult
         1: .line 554
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         2: goto 7
         3: .line 556
      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 557
            aload 4 /* signerInfo */
            ifnull 6
         5: .line 558
            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 554
      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 561
            aload 2 /* intResult */
            invokevirtual java.util.Vector.isEmpty:()Z
            ifne 12
         9: .line 563
            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 564
            aload 2 /* intResult */
            aload 3 /* result */
            invokevirtual java.util.Vector.copyInto:([Ljava/lang/Object;)V
        11: .line 565
            aload 3 /* result */
            areturn
        end local 3 // sun.security.pkcs.SignerInfo[] result
        12: .line 567
      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 578
            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 587
            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 596
            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 603
            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 612
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.certificates:[Ljava/security/cert/X509Certificate;
            ifnull 2
         1: .line 613
            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 615
      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 624
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.crls:[Ljava/security/cert/X509CRL;
            ifnull 2
         1: .line 625
            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 627
      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 636
            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 648
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.certificates:[Ljava/security/cert/X509Certificate;
            ifnull 12
         1: .line 649
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.certIssuerNames:[Ljava/security/Principal;
            ifnonnull 3
         2: .line 650
            aload 0 /* this */
            invokevirtual sun.security.pkcs.PKCS7.populateCertIssuerNames:()V
         3: .line 651
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         4: goto 11
         5: .line 652
      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 653
            aload 4 /* cert */
            invokevirtual java.security.cert.X509Certificate.getSerialNumber:()Ljava/math/BigInteger;
            astore 5 /* thisSerial */
        start local 5 // java.math.BigInteger thisSerial
         7: .line 654
            aload 1 /* serial */
            aload 5 /* thisSerial */
            invokevirtual java.math.BigInteger.equals:(Ljava/lang/Object;)Z
            ifeq 10
         8: .line 655
            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 657
            aload 4 /* cert */
            areturn
        end local 5 // java.math.BigInteger thisSerial
        end local 4 // java.security.cert.X509Certificate cert
        10: .line 651
      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 661
      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 669
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.certificates:[Ljava/security/cert/X509Certificate;
            ifnonnull 2
         1: .line 670
            return
         2: .line 672
      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 673
            iconst_0
            istore 1 /* i */
        start local 1 // int i
         4: goto 16
         5: .line 674
      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 675
            aload 2 /* cert */
            invokevirtual java.security.cert.X509Certificate.getIssuerDN:()Ljava/security/Principal;
            astore 3 /* certIssuerName */
        start local 3 // java.security.Principal certIssuerName
         7: .line 676
            aload 3 /* certIssuerName */
            instanceof sun.security.x509.X500Name
            ifne 14
         8: .line 683
            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 682
            astore 4 /* tbsCert */
        start local 4 // sun.security.x509.X509CertInfo tbsCert
        10: .line 685
            aload 4 /* tbsCert */
            ldc "issuer.dname"
            invokevirtual sun.security.x509.X509CertInfo.get:(Ljava/lang/String;)Ljava/lang/Object;
        11: .line 684
            checkcast java.security.Principal
            astore 3 /* certIssuerName */
        end local 4 // sun.security.x509.X509CertInfo tbsCert
        12: .line 687
            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 692
      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 673
            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 694
            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 700
            ldc ""
            astore 1 /* out */
        start local 1 // java.lang.String out
         1: .line 702
            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 703
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.version:Ljava/math/BigInteger;
            ifnull 4
         3: .line 704
            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 705
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.digestAlgorithmIds:[Lsun/security/x509/AlgorithmId;
            ifnull 11
         5: .line 706
            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 707
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         7: goto 10
         8: .line 708
      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 707
            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 710
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.certificates:[Ljava/security/cert/X509Certificate;
            ifnull 18
        12: .line 711
            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 712
            iconst_0
            istore 2 /* i */
        start local 2 // int i
        14: goto 17
        15: .line 713
      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 712
            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 715
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.crls:[Ljava/security/cert/X509CRL;
            ifnull 25
        19: .line 716
            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 717
            iconst_0
            istore 2 /* i */
        start local 2 // int i
        21: goto 24
        22: .line 718
      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 717
            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 720
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS7.signerInfos:[Lsun/security/pkcs/SignerInfo;
            ifnull 32
        26: .line 721
            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 722
            iconst_0
            istore 2 /* i */
        start local 2 // int i
        28: goto 31
        29: .line 723
      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 722
            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 725
      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 733
            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[] 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=18, 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 771
            aconst_null
            astore 7 /* unauthAttrs */
        start local 7 // sun.security.pkcs.PKCS9Attributes unauthAttrs
         1: .line 772
            aload 4 /* tsaURI */
            ifnull 12
         2: .line 774
            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 776
            aload 8 /* tsa */
            aload 5 /* tSAPolicyID */
            aload 6 /* tSADigestAlg */
            aload 0 /* signature */
         4: .line 775
            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 781
            new sun.security.pkcs.PKCS9Attributes
            dup
            iconst_1
            anewarray sun.security.pkcs.PKCS9Attribute
            dup
            iconst_0
         6: .line 782
            new sun.security.pkcs.PKCS9Attribute
            dup
         7: .line 783
            ldc "SignatureTimestampToken"
         8: .line 784
            aload 9 /* tsToken */
         9: .line 782
            invokespecial sun.security.pkcs.PKCS9Attribute.<init>:(Ljava/lang/String;Ljava/lang/Object;)V
            aastore
        10: .line 781
            invokespecial sun.security.pkcs.PKCS9Attributes.<init>:([Lsun/security/pkcs/PKCS9Attribute;)V
        11: .line 780
            astore 7 /* unauthAttrs */
        end local 9 // byte[] tsToken
        end local 8 // sun.security.timestamp.HttpTimestamper tsa
        12: .line 789
      StackMap locals: sun.security.pkcs.PKCS9Attributes
      StackMap stack:
            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;
        13: .line 788
            astore 8 /* issuerName */
        start local 8 // sun.security.x509.X500Name issuerName
        14: .line 790
            aload 1 /* signerChain */
            iconst_0
            aaload
            invokevirtual java.security.cert.X509Certificate.getSerialNumber:()Ljava/math/BigInteger;
            astore 9 /* serialNumber */
        start local 9 // java.math.BigInteger serialNumber
        15: .line 791
            aload 3 /* signatureAlgorithm */
            invokestatic sun.security.x509.AlgorithmId.getEncAlgFromSigAlg:(Ljava/lang/String;)Ljava/lang/String;
            astore 10 /* encAlg */
        start local 10 // java.lang.String encAlg
        16: .line 792
            aload 3 /* signatureAlgorithm */
            invokestatic sun.security.x509.AlgorithmId.getDigAlgFromSigAlg:(Ljava/lang/String;)Ljava/lang/String;
            astore 11 /* digAlg */
        start local 11 // java.lang.String digAlg
        17: .line 793
            new sun.security.pkcs.SignerInfo
            dup
            aload 8 /* issuerName */
            aload 9 /* serialNumber */
        18: .line 794
            aload 11 /* digAlg */
            invokestatic sun.security.x509.AlgorithmId.get:(Ljava/lang/String;)Lsun/security/x509/AlgorithmId;
            aconst_null
        19: .line 795
            aload 10 /* encAlg */
            invokestatic sun.security.x509.AlgorithmId.get:(Ljava/lang/String;)Lsun/security/x509/AlgorithmId;
        20: .line 796
            aload 0 /* signature */
            aload 7 /* unauthAttrs */
        21: .line 793
            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 12 /* signerInfo */
        start local 12 // sun.security.pkcs.SignerInfo signerInfo
        22: .line 799
            iconst_1
            anewarray sun.security.pkcs.SignerInfo
            dup
            iconst_0
            aload 12 /* signerInfo */
            aastore
            astore 13 /* signerInfos */
        start local 13 // sun.security.pkcs.SignerInfo[] signerInfos
        23: .line 800
            iconst_1
            anewarray sun.security.x509.AlgorithmId
            dup
            iconst_0
            aload 12 /* signerInfo */
            invokevirtual sun.security.pkcs.SignerInfo.getDigestAlgorithmId:()Lsun/security/x509/AlgorithmId;
            aastore
            astore 14 /* algorithms */
        start local 14 // sun.security.x509.AlgorithmId[] algorithms
        24: .line 802
            aload 2 /* content */
            ifnonnull 26
        25: .line 803
            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 27
        26: .line 804
      StackMap locals: byte[] java.security.cert.X509Certificate[] byte[] java.lang.String java.net.URI java.lang.String java.lang.String sun.security.pkcs.PKCS9Attributes sun.security.x509.X500Name java.math.BigInteger java.lang.String java.lang.String 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
        27: .line 802
      StackMap locals:
      StackMap stack: sun.security.pkcs.ContentInfo
            astore 15 /* contentInfo */
        start local 15 // sun.security.pkcs.ContentInfo contentInfo
        28: .line 805
            new sun.security.pkcs.PKCS7
            dup
            aload 14 /* algorithms */
            aload 15 /* contentInfo */
        29: .line 806
            aload 1 /* signerChain */
            aload 13 /* signerInfos */
        30: .line 805
            invokespecial sun.security.pkcs.PKCS7.<init>:([Lsun/security/x509/AlgorithmId;Lsun/security/pkcs/ContentInfo;[Ljava/security/cert/X509Certificate;[Lsun/security/pkcs/SignerInfo;)V
            astore 16 /* pkcs7 */
        start local 16 // sun.security.pkcs.PKCS7 pkcs7
        31: .line 807
            new java.io.ByteArrayOutputStream
            dup
            invokespecial java.io.ByteArrayOutputStream.<init>:()V
            astore 17 /* p7out */
        start local 17 // java.io.ByteArrayOutputStream p7out
        32: .line 808
            aload 16 /* pkcs7 */
            aload 17 /* p7out */
            invokevirtual sun.security.pkcs.PKCS7.encodeSignedData:(Ljava/io/OutputStream;)V
        33: .line 810
            aload 17 /* p7out */
            invokevirtual java.io.ByteArrayOutputStream.toByteArray:()[B
            areturn
        end local 17 // java.io.ByteArrayOutputStream p7out
        end local 16 // sun.security.pkcs.PKCS7 pkcs7
        end local 15 // sun.security.pkcs.ContentInfo contentInfo
        end local 14 // sun.security.x509.AlgorithmId[] algorithms
        end local 13 // sun.security.pkcs.SignerInfo[] signerInfos
        end local 12 // sun.security.pkcs.SignerInfo signerInfo
        end local 11 // java.lang.String digAlg
        end local 10 // java.lang.String encAlg
        end local 9 // java.math.BigInteger serialNumber
        end local 8 // sun.security.x509.X500Name issuerName
        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   34     0           signature  [B
            0   34     1         signerChain  [Ljava/security/cert/X509Certificate;
            0   34     2             content  [B
            0   34     3  signatureAlgorithm  Ljava/lang/String;
            0   34     4              tsaURI  Ljava/net/URI;
            0   34     5         tSAPolicyID  Ljava/lang/String;
            0   34     6        tSADigestAlg  Ljava/lang/String;
            1   34     7         unauthAttrs  Lsun/security/pkcs/PKCS9Attributes;
            3   12     8                 tsa  Lsun/security/timestamp/HttpTimestamper;
            5   12     9             tsToken  [B
           14   34     8          issuerName  Lsun/security/x509/X500Name;
           15   34     9        serialNumber  Ljava/math/BigInteger;
           16   34    10              encAlg  Ljava/lang/String;
           17   34    11              digAlg  Ljava/lang/String;
           22   34    12          signerInfo  Lsun/security/pkcs/SignerInfo;
           23   34    13         signerInfos  [Lsun/security/pkcs/SignerInfo;
           24   34    14          algorithms  [Lsun/security/x509/AlgorithmId;
           28   34    15         contentInfo  Lsun/security/pkcs/ContentInfo;
           31   34    16               pkcs7  Lsun/security/pkcs/PKCS7;
           32   34    17               p7out  Ljava/io/ByteArrayOutputStream;
    Exceptions:
      throws java.security.cert.CertificateException, java.io.IOException, java.security.NoSuchAlgorithmException
    MethodParameters:
                    Name  Flags
      signature           
      signerChain         
      content             
      signatureAlgorithm  
      tsaURI              
      tSAPolicyID         
      tSADigestAlg        

  private 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: (0x000a) ACC_PRIVATE, 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 839
            aconst_null
            astore 4 /* messageDigest */
        start local 4 // java.security.MessageDigest messageDigest
         1: .line 840
            aconst_null
            astore 5 /* tsQuery */
        start local 5 // sun.security.timestamp.TSRequest tsQuery
         2: .line 842
            aload 2 /* tSADigestAlg */
            invokestatic java.security.MessageDigest.getInstance:(Ljava/lang/String;)Ljava/security/MessageDigest;
            astore 4 /* messageDigest */
         3: .line 843
            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 844
            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 845
            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 849
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 6 /* nonce */
        start local 6 // java.math.BigInteger nonce
         8: .line 850
            getstatic sun.security.pkcs.PKCS7$SecureRandomHolder.RANDOM:Ljava/security/SecureRandom;
            ifnull 11
         9: .line 851
            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 852
            aload 5 /* tsQuery */
            aload 6 /* nonce */
            invokevirtual sun.security.timestamp.TSRequest.setNonce:(Ljava/math/BigInteger;)V
        11: .line 854
      StackMap locals: java.math.BigInteger
      StackMap stack:
            aload 5 /* tsQuery */
            iconst_1
            invokevirtual sun.security.timestamp.TSRequest.requestCertificate:(Z)V
        12: .line 856
            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 857
            aload 7 /* tsReply */
            invokevirtual sun.security.timestamp.TSResponse.getStatusCode:()I
            istore 8 /* status */
        start local 8 // int status
        14: .line 859
            iload 8 /* status */
            ifeq 19
            iload 8 /* status */
            iconst_1
            if_icmpeq 19
        15: .line 860
            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 861
            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 862
            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 860
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
        19: .line 865
      StackMap locals: sun.security.timestamp.TSResponse int
      StackMap stack:
            aload 1 /* tSAPolicyID */
            ifnull 22
        20: .line 866
            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 867
            new java.io.IOException
            dup
            ldc "TSAPolicyID changed in timestamp token"
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
        22: .line 870
      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 872
            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 874
            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 875
            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 876
            ldc "timestamp token"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        27: .line 875
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
        28: .line 878
      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 879
            new java.lang.IllegalArgumentException
            dup
            invokespecial java.lang.IllegalArgumentException.<init>:()V
            athrow
        30: .line 881
      StackMap locals:
      StackMap stack:
            aload 10 /* tst */
            invokevirtual sun.security.timestamp.TimestampToken.getHashedMessage:()[B
        31: .line 882
            aload 5 /* tsQuery */
            invokevirtual sun.security.timestamp.TSRequest.getHashedMessage:()[B
        32: .line 881
            invokestatic java.security.MessageDigest.isEqual:([B[B)Z
        33: .line 882
            ifne 35
        34: .line 883
            new java.io.IOException
            dup
            ldc "Digest octets changed in timestamp token"
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
        35: .line 886
      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 887
            aload 11 /* replyNonce */
            ifnonnull 38
            aload 6 /* nonce */
            ifnull 38
        37: .line 888
            new java.io.IOException
            dup
            ldc "Nonce missing in timestamp token"
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
        38: .line 890
      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 891
            new java.io.IOException
            dup
            ldc "Nonce changed in timestamp token"
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
        40: .line 895
      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 896
            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 897
            aload 16 /* cert */
            ifnonnull 47
        44: .line 899
            new java.security.cert.CertificateException
            dup
        45: .line 900
            ldc "Certificate not included in timestamp token"
        46: .line 899
            invokespecial java.security.cert.CertificateException.<init>:(Ljava/lang/String;)V
            athrow
        47: .line 902
      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 903
            ldc "2.5.29.37"
        49: .line 902
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
        50: .line 903
            ifne 54
        51: .line 904
            new java.security.cert.CertificateException
            dup
        52: .line 905
            ldc "Certificate is not valid for timestamping"
        53: .line 904
            invokespecial java.security.cert.CertificateException.<init>:(Ljava/lang/String;)V
            athrow
        54: .line 907
      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 908
            aload 17 /* keyPurposes */
            ifnull 57
        56: .line 909
            aload 17 /* keyPurposes */
            ldc "1.3.6.1.5.5.7.3.8"
            invokeinterface java.util.List.contains:(Ljava/lang/Object;)Z
            ifne 60
        57: .line 910
      StackMap locals: java.util.List
      StackMap stack:
            new java.security.cert.CertificateException
            dup
        58: .line 911
            ldc "Certificate is not valid for timestamping"
        59: .line 910
            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 895
      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 915
            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