public class org.bouncycastle.cms.CMSEnvelopedData implements org.bouncycastle.util.Encodable
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.bouncycastle.cms.CMSEnvelopedData
  super_class: java.lang.Object
{
  org.bouncycastle.cms.RecipientInformationStore recipientInfoStore;
    descriptor: Lorg/bouncycastle/cms/RecipientInformationStore;
    flags: (0x0000) 

  org.bouncycastle.asn1.cms.ContentInfo contentInfo;
    descriptor: Lorg/bouncycastle/asn1/cms/ContentInfo;
    flags: (0x0000) 

  private org.bouncycastle.asn1.x509.AlgorithmIdentifier encAlg;
    descriptor: Lorg/bouncycastle/asn1/x509/AlgorithmIdentifier;
    flags: (0x0002) ACC_PRIVATE

  private org.bouncycastle.asn1.ASN1Set unprotectedAttributes;
    descriptor: Lorg/bouncycastle/asn1/ASN1Set;
    flags: (0x0002) ACC_PRIVATE

  private org.bouncycastle.cms.OriginatorInformation originatorInfo;
    descriptor: Lorg/bouncycastle/cms/OriginatorInformation;
    flags: (0x0002) ACC_PRIVATE

  public void <init>(byte[]);
    descriptor: ([B)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.bouncycastle.cms.CMSEnvelopedData this
        start local 1 // byte[] envelopedData
         0: .line 51
            aload 0 /* this */
            aload 1 /* envelopedData */
            invokestatic org.bouncycastle.cms.CMSUtils.readContentInfo:([B)Lorg/bouncycastle/asn1/cms/ContentInfo;
            invokespecial org.bouncycastle.cms.CMSEnvelopedData.<init>:(Lorg/bouncycastle/asn1/cms/ContentInfo;)V
         1: .line 52
            return
        end local 1 // byte[] envelopedData
        end local 0 // org.bouncycastle.cms.CMSEnvelopedData this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    2     0           this  Lorg/bouncycastle/cms/CMSEnvelopedData;
            0    2     1  envelopedData  [B
    Exceptions:
      throws org.bouncycastle.cms.CMSException
    MethodParameters:
               Name  Flags
      envelopedData  

  public void <init>(java.io.InputStream);
    descriptor: (Ljava/io/InputStream;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.bouncycastle.cms.CMSEnvelopedData this
        start local 1 // java.io.InputStream envelopedData
         0: .line 58
            aload 0 /* this */
            aload 1 /* envelopedData */
            invokestatic org.bouncycastle.cms.CMSUtils.readContentInfo:(Ljava/io/InputStream;)Lorg/bouncycastle/asn1/cms/ContentInfo;
            invokespecial org.bouncycastle.cms.CMSEnvelopedData.<init>:(Lorg/bouncycastle/asn1/cms/ContentInfo;)V
         1: .line 59
            return
        end local 1 // java.io.InputStream envelopedData
        end local 0 // org.bouncycastle.cms.CMSEnvelopedData this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    2     0           this  Lorg/bouncycastle/cms/CMSEnvelopedData;
            0    2     1  envelopedData  Ljava/io/InputStream;
    Exceptions:
      throws org.bouncycastle.cms.CMSException
    MethodParameters:
               Name  Flags
      envelopedData  

  public void <init>(org.bouncycastle.asn1.cms.ContentInfo);
    descriptor: (Lorg/bouncycastle/asn1/cms/ContentInfo;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=7, args_size=2
        start local 0 // org.bouncycastle.cms.CMSEnvelopedData this
        start local 1 // org.bouncycastle.asn1.cms.ContentInfo contentInfo
         0: .line 67
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 71
            aload 0 /* this */
            aload 1 /* contentInfo */
            putfield org.bouncycastle.cms.CMSEnvelopedData.contentInfo:Lorg/bouncycastle/asn1/cms/ContentInfo;
         2: .line 75
            aload 1 /* contentInfo */
            invokevirtual org.bouncycastle.asn1.cms.ContentInfo.getContent:()Lorg/bouncycastle/asn1/ASN1Encodable;
            invokestatic org.bouncycastle.asn1.cms.EnvelopedData.getInstance:(Ljava/lang/Object;)Lorg/bouncycastle/asn1/cms/EnvelopedData;
            astore 2 /* envData */
        start local 2 // org.bouncycastle.asn1.cms.EnvelopedData envData
         3: .line 77
            aload 2 /* envData */
            invokevirtual org.bouncycastle.asn1.cms.EnvelopedData.getOriginatorInfo:()Lorg/bouncycastle/asn1/cms/OriginatorInfo;
            ifnull 5
         4: .line 79
            aload 0 /* this */
            new org.bouncycastle.cms.OriginatorInformation
            dup
            aload 2 /* envData */
            invokevirtual org.bouncycastle.asn1.cms.EnvelopedData.getOriginatorInfo:()Lorg/bouncycastle/asn1/cms/OriginatorInfo;
            invokespecial org.bouncycastle.cms.OriginatorInformation.<init>:(Lorg/bouncycastle/asn1/cms/OriginatorInfo;)V
            putfield org.bouncycastle.cms.CMSEnvelopedData.originatorInfo:Lorg/bouncycastle/cms/OriginatorInformation;
         5: .line 85
      StackMap locals: org.bouncycastle.cms.CMSEnvelopedData org.bouncycastle.asn1.cms.ContentInfo org.bouncycastle.asn1.cms.EnvelopedData
      StackMap stack:
            aload 2 /* envData */
            invokevirtual org.bouncycastle.asn1.cms.EnvelopedData.getRecipientInfos:()Lorg/bouncycastle/asn1/ASN1Set;
            astore 3 /* recipientInfos */
        start local 3 // org.bouncycastle.asn1.ASN1Set recipientInfos
         6: .line 90
            aload 2 /* envData */
            invokevirtual org.bouncycastle.asn1.cms.EnvelopedData.getEncryptedContentInfo:()Lorg/bouncycastle/asn1/cms/EncryptedContentInfo;
            astore 4 /* encInfo */
        start local 4 // org.bouncycastle.asn1.cms.EncryptedContentInfo encInfo
         7: .line 91
            aload 0 /* this */
            aload 4 /* encInfo */
            invokevirtual org.bouncycastle.asn1.cms.EncryptedContentInfo.getContentEncryptionAlgorithm:()Lorg/bouncycastle/asn1/x509/AlgorithmIdentifier;
            putfield org.bouncycastle.cms.CMSEnvelopedData.encAlg:Lorg/bouncycastle/asn1/x509/AlgorithmIdentifier;
         8: .line 92
            new org.bouncycastle.cms.CMSProcessableByteArray
            dup
            aload 4 /* encInfo */
            invokevirtual org.bouncycastle.asn1.cms.EncryptedContentInfo.getEncryptedContent:()Lorg/bouncycastle/asn1/ASN1OctetString;
            invokevirtual org.bouncycastle.asn1.ASN1OctetString.getOctets:()[B
            invokespecial org.bouncycastle.cms.CMSProcessableByteArray.<init>:([B)V
            astore 5 /* readable */
        start local 5 // org.bouncycastle.cms.CMSReadable readable
         9: .line 93
            new org.bouncycastle.cms.CMSEnvelopedHelper$CMSEnvelopedSecureReadable
            dup
        10: .line 94
            aload 0 /* this */
            getfield org.bouncycastle.cms.CMSEnvelopedData.encAlg:Lorg/bouncycastle/asn1/x509/AlgorithmIdentifier;
            aload 5 /* readable */
        11: .line 93
            invokespecial org.bouncycastle.cms.CMSEnvelopedHelper$CMSEnvelopedSecureReadable.<init>:(Lorg/bouncycastle/asn1/x509/AlgorithmIdentifier;Lorg/bouncycastle/cms/CMSReadable;)V
            astore 6 /* secureReadable */
        start local 6 // org.bouncycastle.cms.CMSSecureReadable secureReadable
        12: .line 99
            aload 0 /* this */
        13: .line 100
            aload 3 /* recipientInfos */
            aload 0 /* this */
            getfield org.bouncycastle.cms.CMSEnvelopedData.encAlg:Lorg/bouncycastle/asn1/x509/AlgorithmIdentifier;
            aload 6 /* secureReadable */
        14: .line 99
            invokestatic org.bouncycastle.cms.CMSEnvelopedHelper.buildRecipientInformationStore:(Lorg/bouncycastle/asn1/ASN1Set;Lorg/bouncycastle/asn1/x509/AlgorithmIdentifier;Lorg/bouncycastle/cms/CMSSecureReadable;)Lorg/bouncycastle/cms/RecipientInformationStore;
            putfield org.bouncycastle.cms.CMSEnvelopedData.recipientInfoStore:Lorg/bouncycastle/cms/RecipientInformationStore;
        15: .line 102
            aload 0 /* this */
            aload 2 /* envData */
            invokevirtual org.bouncycastle.asn1.cms.EnvelopedData.getUnprotectedAttrs:()Lorg/bouncycastle/asn1/ASN1Set;
            putfield org.bouncycastle.cms.CMSEnvelopedData.unprotectedAttributes:Lorg/bouncycastle/asn1/ASN1Set;
        end local 6 // org.bouncycastle.cms.CMSSecureReadable secureReadable
        end local 5 // org.bouncycastle.cms.CMSReadable readable
        end local 4 // org.bouncycastle.asn1.cms.EncryptedContentInfo encInfo
        end local 3 // org.bouncycastle.asn1.ASN1Set recipientInfos
        end local 2 // org.bouncycastle.asn1.cms.EnvelopedData envData
        16: .line 103
            goto 21
        17: .line 104
      StackMap locals: org.bouncycastle.cms.CMSEnvelopedData org.bouncycastle.asn1.cms.ContentInfo
      StackMap stack: java.lang.ClassCastException
            astore 2 /* e */
        start local 2 // java.lang.ClassCastException e
        18: .line 106
            new org.bouncycastle.cms.CMSException
            dup
            ldc "Malformed content."
            aload 2 /* e */
            invokespecial org.bouncycastle.cms.CMSException.<init>:(Ljava/lang/String;Ljava/lang/Exception;)V
            athrow
        end local 2 // java.lang.ClassCastException e
        19: .line 108
      StackMap locals:
      StackMap stack: java.lang.IllegalArgumentException
            astore 2 /* e */
        start local 2 // java.lang.IllegalArgumentException e
        20: .line 110
            new org.bouncycastle.cms.CMSException
            dup
            ldc "Malformed content."
            aload 2 /* e */
            invokespecial org.bouncycastle.cms.CMSException.<init>:(Ljava/lang/String;Ljava/lang/Exception;)V
            athrow
        end local 2 // java.lang.IllegalArgumentException e
        21: .line 112
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.bouncycastle.asn1.cms.ContentInfo contentInfo
        end local 0 // org.bouncycastle.cms.CMSEnvelopedData this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   22     0            this  Lorg/bouncycastle/cms/CMSEnvelopedData;
            0   22     1     contentInfo  Lorg/bouncycastle/asn1/cms/ContentInfo;
            3   16     2         envData  Lorg/bouncycastle/asn1/cms/EnvelopedData;
            6   16     3  recipientInfos  Lorg/bouncycastle/asn1/ASN1Set;
            7   16     4         encInfo  Lorg/bouncycastle/asn1/cms/EncryptedContentInfo;
            9   16     5        readable  Lorg/bouncycastle/cms/CMSReadable;
           12   16     6  secureReadable  Lorg/bouncycastle/cms/CMSSecureReadable;
           18   19     2               e  Ljava/lang/ClassCastException;
           20   21     2               e  Ljava/lang/IllegalArgumentException;
      Exception table:
        from    to  target  type
           2    16      17  Class java.lang.ClassCastException
           2    16      19  Class java.lang.IllegalArgumentException
    Exceptions:
      throws org.bouncycastle.cms.CMSException
    MethodParameters:
             Name  Flags
      contentInfo  

  private byte[] encodeObj(org.bouncycastle.asn1.ASN1Encodable);
    descriptor: (Lorg/bouncycastle/asn1/ASN1Encodable;)[B
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // org.bouncycastle.cms.CMSEnvelopedData this
        start local 1 // org.bouncycastle.asn1.ASN1Encodable obj
         0: .line 118
            aload 1 /* obj */
            ifnull 2
         1: .line 120
            aload 1 /* obj */
            invokeinterface org.bouncycastle.asn1.ASN1Encodable.toASN1Primitive:()Lorg/bouncycastle/asn1/ASN1Primitive;
            invokevirtual org.bouncycastle.asn1.ASN1Primitive.getEncoded:()[B
            areturn
         2: .line 123
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 1 // org.bouncycastle.asn1.ASN1Encodable obj
        end local 0 // org.bouncycastle.cms.CMSEnvelopedData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/bouncycastle/cms/CMSEnvelopedData;
            0    3     1   obj  Lorg/bouncycastle/asn1/ASN1Encodable;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      obj   

  public org.bouncycastle.cms.OriginatorInformation getOriginatorInfo();
    descriptor: ()Lorg/bouncycastle/cms/OriginatorInformation;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.bouncycastle.cms.CMSEnvelopedData this
         0: .line 133
            aload 0 /* this */
            getfield org.bouncycastle.cms.CMSEnvelopedData.originatorInfo:Lorg/bouncycastle/cms/OriginatorInformation;
            areturn
        end local 0 // org.bouncycastle.cms.CMSEnvelopedData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/bouncycastle/cms/CMSEnvelopedData;

  public org.bouncycastle.asn1.x509.AlgorithmIdentifier getContentEncryptionAlgorithm();
    descriptor: ()Lorg/bouncycastle/asn1/x509/AlgorithmIdentifier;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.bouncycastle.cms.CMSEnvelopedData this
         0: .line 143
            aload 0 /* this */
            getfield org.bouncycastle.cms.CMSEnvelopedData.encAlg:Lorg/bouncycastle/asn1/x509/AlgorithmIdentifier;
            areturn
        end local 0 // org.bouncycastle.cms.CMSEnvelopedData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/bouncycastle/cms/CMSEnvelopedData;

  public java.lang.String getEncryptionAlgOID();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.bouncycastle.cms.CMSEnvelopedData this
         0: .line 151
            aload 0 /* this */
            getfield org.bouncycastle.cms.CMSEnvelopedData.encAlg:Lorg/bouncycastle/asn1/x509/AlgorithmIdentifier;
            invokevirtual org.bouncycastle.asn1.x509.AlgorithmIdentifier.getAlgorithm:()Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;
            invokevirtual org.bouncycastle.asn1.ASN1ObjectIdentifier.getId:()Ljava/lang/String;
            areturn
        end local 0 // org.bouncycastle.cms.CMSEnvelopedData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/bouncycastle/cms/CMSEnvelopedData;

  public byte[] getEncryptionAlgParams();
    descriptor: ()[B
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // org.bouncycastle.cms.CMSEnvelopedData this
         0: .line 162
            aload 0 /* this */
            aload 0 /* this */
            getfield org.bouncycastle.cms.CMSEnvelopedData.encAlg:Lorg/bouncycastle/asn1/x509/AlgorithmIdentifier;
            invokevirtual org.bouncycastle.asn1.x509.AlgorithmIdentifier.getParameters:()Lorg/bouncycastle/asn1/ASN1Encodable;
            invokevirtual org.bouncycastle.cms.CMSEnvelopedData.encodeObj:(Lorg/bouncycastle/asn1/ASN1Encodable;)[B
         1: areturn
         2: .line 164
      StackMap locals:
      StackMap stack: java.lang.Exception
            astore 1 /* e */
        start local 1 // java.lang.Exception e
         3: .line 166
            new java.lang.RuntimeException
            dup
            new java.lang.StringBuilder
            dup
            ldc "exception getting encryption parameters "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* e */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
            athrow
        end local 1 // java.lang.Exception e
        end local 0 // org.bouncycastle.cms.CMSEnvelopedData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/bouncycastle/cms/CMSEnvelopedData;
            3    4     1     e  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           0     1       2  Class java.lang.Exception

  public org.bouncycastle.cms.RecipientInformationStore getRecipientInfos();
    descriptor: ()Lorg/bouncycastle/cms/RecipientInformationStore;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.bouncycastle.cms.CMSEnvelopedData this
         0: .line 175
            aload 0 /* this */
            getfield org.bouncycastle.cms.CMSEnvelopedData.recipientInfoStore:Lorg/bouncycastle/cms/RecipientInformationStore;
            areturn
        end local 0 // org.bouncycastle.cms.CMSEnvelopedData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/bouncycastle/cms/CMSEnvelopedData;

  public org.bouncycastle.asn1.cms.ContentInfo toASN1Structure();
    descriptor: ()Lorg/bouncycastle/asn1/cms/ContentInfo;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.bouncycastle.cms.CMSEnvelopedData this
         0: .line 183
            aload 0 /* this */
            getfield org.bouncycastle.cms.CMSEnvelopedData.contentInfo:Lorg/bouncycastle/asn1/cms/ContentInfo;
            areturn
        end local 0 // org.bouncycastle.cms.CMSEnvelopedData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/bouncycastle/cms/CMSEnvelopedData;

  public org.bouncycastle.asn1.cms.AttributeTable getUnprotectedAttributes();
    descriptor: ()Lorg/bouncycastle/asn1/cms/AttributeTable;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.bouncycastle.cms.CMSEnvelopedData this
         0: .line 192
            aload 0 /* this */
            getfield org.bouncycastle.cms.CMSEnvelopedData.unprotectedAttributes:Lorg/bouncycastle/asn1/ASN1Set;
            ifnonnull 2
         1: .line 194
            aconst_null
            areturn
         2: .line 197
      StackMap locals:
      StackMap stack:
            new org.bouncycastle.asn1.cms.AttributeTable
            dup
            aload 0 /* this */
            getfield org.bouncycastle.cms.CMSEnvelopedData.unprotectedAttributes:Lorg/bouncycastle/asn1/ASN1Set;
            invokespecial org.bouncycastle.asn1.cms.AttributeTable.<init>:(Lorg/bouncycastle/asn1/ASN1Set;)V
            areturn
        end local 0 // org.bouncycastle.cms.CMSEnvelopedData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/bouncycastle/cms/CMSEnvelopedData;

  public byte[] getEncoded();
    descriptor: ()[B
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.bouncycastle.cms.CMSEnvelopedData this
         0: .line 206
            aload 0 /* this */
            getfield org.bouncycastle.cms.CMSEnvelopedData.contentInfo:Lorg/bouncycastle/asn1/cms/ContentInfo;
            invokevirtual org.bouncycastle.asn1.cms.ContentInfo.getEncoded:()[B
            areturn
        end local 0 // org.bouncycastle.cms.CMSEnvelopedData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/bouncycastle/cms/CMSEnvelopedData;
    Exceptions:
      throws java.io.IOException
}
SourceFile: "CMSEnvelopedData.java"
InnerClasses:
  CMSEnvelopedSecureReadable = org.bouncycastle.cms.CMSEnvelopedHelper$CMSEnvelopedSecureReadable of org.bouncycastle.cms.CMSEnvelopedHelper