public final class sun.security.util.ObjectIdentifier implements java.io.Serializable
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: sun.security.util.ObjectIdentifier
  super_class: java.lang.Object
{
  private byte[] encoding;
    descriptor: [B
    flags: (0x0002) ACC_PRIVATE

  private volatile transient java.lang.String stringForm;
    descriptor: Ljava/lang/String;
    flags: (0x00c2) ACC_PRIVATE, ACC_VOLATILE, ACC_TRANSIENT

  private static final long serialVersionUID;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 8697030238860181294

  private java.lang.Object components;
    descriptor: Ljava/lang/Object;
    flags: (0x0002) ACC_PRIVATE

  private int componentLen;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private transient boolean componentsCalculated;
    descriptor: Z
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT

  static final boolean $assertionsDisabled;
    descriptor: Z
    flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 54
            ldc Lsun/security/util/ObjectIdentifier;
            invokevirtual java.lang.Class.desiredAssertionStatus:()Z
            ifne 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: putstatic sun.security.util.ObjectIdentifier.$assertionsDisabled:Z
         3: .line 94
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private void readObject(java.io.ObjectInputStream);
    descriptor: (Ljava/io/ObjectInputStream;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // sun.security.util.ObjectIdentifier this
        start local 1 // java.io.ObjectInputStream is
         0: .line 111
            aload 1 /* is */
            invokevirtual java.io.ObjectInputStream.defaultReadObject:()V
         1: .line 113
            aload 0 /* this */
            getfield sun.security.util.ObjectIdentifier.encoding:[B
            ifnonnull 6
         2: .line 114
            aload 0 /* this */
            getfield sun.security.util.ObjectIdentifier.components:Ljava/lang/Object;
            checkcast int[]
            astore 2 /* comp */
        start local 2 // int[] comp
         3: .line 115
            aload 0 /* this */
            getfield sun.security.util.ObjectIdentifier.componentLen:I
            aload 2 /* comp */
            arraylength
            if_icmple 5
         4: .line 116
            aload 0 /* this */
            aload 2 /* comp */
            arraylength
            putfield sun.security.util.ObjectIdentifier.componentLen:I
         5: .line 118
      StackMap locals: int[]
      StackMap stack:
            aload 0 /* this */
            aload 2 /* comp */
            aload 0 /* this */
            getfield sun.security.util.ObjectIdentifier.componentLen:I
            invokevirtual sun.security.util.ObjectIdentifier.init:([II)V
        end local 2 // int[] comp
         6: .line 120
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.io.ObjectInputStream is
        end local 0 // sun.security.util.ObjectIdentifier this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lsun/security/util/ObjectIdentifier;
            0    7     1    is  Ljava/io/ObjectInputStream;
            3    6     2  comp  [I
    Exceptions:
      throws java.io.IOException, java.lang.ClassNotFoundException
    MethodParameters:
      Name  Flags
      is    

  private void writeObject(java.io.ObjectOutputStream);
    descriptor: (Ljava/io/ObjectOutputStream;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // sun.security.util.ObjectIdentifier this
        start local 1 // java.io.ObjectOutputStream os
         0: .line 124
            aload 0 /* this */
            getfield sun.security.util.ObjectIdentifier.componentsCalculated:Z
            ifne 8
         1: .line 125
            aload 0 /* this */
            invokevirtual sun.security.util.ObjectIdentifier.toIntArray:()[I
            astore 2 /* comps */
        start local 2 // int[] comps
         2: .line 126
            aload 2 /* comps */
            ifnull 6
         3: .line 127
            aload 0 /* this */
            aload 2 /* comps */
            putfield sun.security.util.ObjectIdentifier.components:Ljava/lang/Object;
         4: .line 128
            aload 0 /* this */
            aload 2 /* comps */
            arraylength
            putfield sun.security.util.ObjectIdentifier.componentLen:I
         5: .line 129
            goto 7
         6: .line 130
      StackMap locals: int[]
      StackMap stack:
            aload 0 /* this */
            getstatic sun.security.util.ObjectIdentifier$HugeOidNotSupportedByOldJDK.theOne:Lsun/security/util/ObjectIdentifier$HugeOidNotSupportedByOldJDK;
            putfield sun.security.util.ObjectIdentifier.components:Ljava/lang/Object;
         7: .line 132
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield sun.security.util.ObjectIdentifier.componentsCalculated:Z
        end local 2 // int[] comps
         8: .line 134
      StackMap locals:
      StackMap stack:
            aload 1 /* os */
            invokevirtual java.io.ObjectOutputStream.defaultWriteObject:()V
         9: .line 135
            return
        end local 1 // java.io.ObjectOutputStream os
        end local 0 // sun.security.util.ObjectIdentifier this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   10     0   this  Lsun/security/util/ObjectIdentifier;
            0   10     1     os  Ljava/io/ObjectOutputStream;
            2    8     2  comps  [I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      os    

  public void <init>(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=12, args_size=2
        start local 0 // sun.security.util.ObjectIdentifier this
        start local 1 // java.lang.String oid
         0: .line 146
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 60
            aload 0 /* this */
            aconst_null
            putfield sun.security.util.ObjectIdentifier.encoding:[B
         2: .line 100
            aload 0 /* this */
            aconst_null
            putfield sun.security.util.ObjectIdentifier.components:Ljava/lang/Object;
         3: .line 104
            aload 0 /* this */
            iconst_m1
            putfield sun.security.util.ObjectIdentifier.componentLen:I
         4: .line 107
            aload 0 /* this */
            iconst_0
            putfield sun.security.util.ObjectIdentifier.componentsCalculated:Z
         5: .line 148
            bipush 46
            istore 2 /* ch */
        start local 2 // int ch
         6: .line 149
            iconst_0
            istore 3 /* start */
        start local 3 // int start
         7: .line 150
            iconst_0
            istore 4 /* end */
        start local 4 // int end
         8: .line 152
            iconst_0
            istore 5 /* pos */
        start local 5 // int pos
         9: .line 153
            aload 1 /* oid */
            invokevirtual java.lang.String.length:()I
            newarray 8
            astore 6 /* tmp */
        start local 6 // byte[] tmp
        10: .line 154
            iconst_0
            istore 7 /* first */
        start local 7 // int first
        11: .line 155
            iconst_0
            istore 8 /* count */
        start local 8 // int count
        12: .line 158
            aconst_null
            astore 9 /* comp */
        start local 9 // java.lang.String comp
        13: .line 160
      StackMap locals: sun.security.util.ObjectIdentifier java.lang.String int int int int byte[] int int java.lang.String
      StackMap stack:
            iconst_0
            istore 10 /* length */
        start local 10 // int length
        14: .line 161
            aload 1 /* oid */
            iload 2 /* ch */
            iload 3 /* start */
            invokevirtual java.lang.String.indexOf:(II)I
            istore 4 /* end */
        15: .line 162
            iload 4 /* end */
            iconst_m1
            if_icmpne 19
        16: .line 163
            aload 1 /* oid */
            iload 3 /* start */
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            astore 9 /* comp */
        17: .line 164
            aload 1 /* oid */
            invokevirtual java.lang.String.length:()I
            iload 3 /* start */
            isub
            istore 10 /* length */
        18: .line 165
            goto 21
        19: .line 166
      StackMap locals: int
      StackMap stack:
            aload 1 /* oid */
            iload 3 /* start */
            iload 4 /* end */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 9 /* comp */
        20: .line 167
            iload 4 /* end */
            iload 3 /* start */
            isub
            istore 10 /* length */
        21: .line 170
      StackMap locals:
      StackMap stack:
            iload 10 /* length */
            bipush 9
            if_icmple 34
        22: .line 171
            new java.math.BigInteger
            dup
            aload 9 /* comp */
            invokespecial java.math.BigInteger.<init>:(Ljava/lang/String;)V
            astore 11 /* bignum */
        start local 11 // java.math.BigInteger bignum
        23: .line 172
            iload 8 /* count */
            ifne 27
        24: .line 173
            aload 11 /* bignum */
            invokestatic sun.security.util.ObjectIdentifier.checkFirstComponent:(Ljava/math/BigInteger;)V
        25: .line 174
            aload 11 /* bignum */
            invokevirtual java.math.BigInteger.intValue:()I
            istore 7 /* first */
        26: .line 175
            goto 45
        27: .line 176
      StackMap locals: java.math.BigInteger
      StackMap stack:
            iload 8 /* count */
            iconst_1
            if_icmpne 31
        28: .line 177
            iload 7 /* first */
            aload 11 /* bignum */
            invokestatic sun.security.util.ObjectIdentifier.checkSecondComponent:(ILjava/math/BigInteger;)V
        29: .line 178
            aload 11 /* bignum */
            bipush 40
            iload 7 /* first */
            imul
            i2l
            invokestatic java.math.BigInteger.valueOf:(J)Ljava/math/BigInteger;
            invokevirtual java.math.BigInteger.add:(Ljava/math/BigInteger;)Ljava/math/BigInteger;
            astore 11 /* bignum */
        30: .line 179
            goto 32
        31: .line 180
      StackMap locals:
      StackMap stack:
            iload 8 /* count */
            aload 11 /* bignum */
            invokestatic sun.security.util.ObjectIdentifier.checkOtherComponent:(ILjava/math/BigInteger;)V
        32: .line 182
      StackMap locals:
      StackMap stack:
            iload 5 /* pos */
            aload 11 /* bignum */
            aload 6 /* tmp */
            iload 5 /* pos */
            invokestatic sun.security.util.ObjectIdentifier.pack7Oid:(Ljava/math/BigInteger;[BI)I
            iadd
            istore 5 /* pos */
        end local 11 // java.math.BigInteger bignum
        33: .line 184
            goto 45
        34: .line 185
      StackMap locals:
      StackMap stack:
            aload 9 /* comp */
            invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
            istore 11 /* num */
        start local 11 // int num
        35: .line 186
            iload 8 /* count */
            ifne 39
        36: .line 187
            iload 11 /* num */
            invokestatic sun.security.util.ObjectIdentifier.checkFirstComponent:(I)V
        37: .line 188
            iload 11 /* num */
            istore 7 /* first */
        38: .line 189
            goto 45
        39: .line 190
      StackMap locals: int
      StackMap stack:
            iload 8 /* count */
            iconst_1
            if_icmpne 43
        40: .line 191
            iload 7 /* first */
            iload 11 /* num */
            invokestatic sun.security.util.ObjectIdentifier.checkSecondComponent:(II)V
        41: .line 192
            iload 11 /* num */
            bipush 40
            iload 7 /* first */
            imul
            iadd
            istore 11 /* num */
        42: .line 193
            goto 44
        43: .line 194
      StackMap locals:
      StackMap stack:
            iload 8 /* count */
            iload 11 /* num */
            invokestatic sun.security.util.ObjectIdentifier.checkOtherComponent:(II)V
        44: .line 196
      StackMap locals:
      StackMap stack:
            iload 5 /* pos */
            iload 11 /* num */
            aload 6 /* tmp */
            iload 5 /* pos */
            invokestatic sun.security.util.ObjectIdentifier.pack7Oid:(I[BI)I
            iadd
            istore 5 /* pos */
        end local 11 // int num
        45: .line 199
      StackMap locals:
      StackMap stack:
            iload 4 /* end */
            iconst_1
            iadd
            istore 3 /* start */
        46: .line 200
            iinc 8 /* count */ 1
        end local 10 // int length
        47: .line 201
            iload 4 /* end */
            iconst_m1
            if_icmpne 13
        48: .line 203
            iload 8 /* count */
            invokestatic sun.security.util.ObjectIdentifier.checkCount:(I)V
        49: .line 204
            aload 0 /* this */
            iload 5 /* pos */
            newarray 8
            putfield sun.security.util.ObjectIdentifier.encoding:[B
        50: .line 205
            aload 6 /* tmp */
            iconst_0
            aload 0 /* this */
            getfield sun.security.util.ObjectIdentifier.encoding:[B
            iconst_0
            iload 5 /* pos */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        51: .line 206
            aload 0 /* this */
            aload 1 /* oid */
            putfield sun.security.util.ObjectIdentifier.stringForm:Ljava/lang/String;
        end local 9 // java.lang.String comp
        52: .line 207
            goto 59
      StackMap locals: sun.security.util.ObjectIdentifier java.lang.String int int int int byte[] int int
      StackMap stack: java.io.IOException
        53: astore 9 /* ioe */
        start local 9 // java.io.IOException ioe
        54: .line 208
            aload 9 /* ioe */
            athrow
        end local 9 // java.io.IOException ioe
        55: .line 209
      StackMap locals:
      StackMap stack: java.lang.Exception
            astore 9 /* e */
        start local 9 // java.lang.Exception e
        56: .line 210
            new java.io.IOException
            dup
            new java.lang.StringBuilder
            dup
            ldc "ObjectIdentifier() -- Invalid format: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        57: .line 211
            aload 9 /* e */
            invokevirtual java.lang.Exception.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 9 /* e */
        58: .line 210
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 9 // java.lang.Exception e
        59: .line 213
      StackMap locals:
      StackMap stack:
            return
        end local 8 // int count
        end local 7 // int first
        end local 6 // byte[] tmp
        end local 5 // int pos
        end local 4 // int end
        end local 3 // int start
        end local 2 // int ch
        end local 1 // java.lang.String oid
        end local 0 // sun.security.util.ObjectIdentifier this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   60     0    this  Lsun/security/util/ObjectIdentifier;
            0   60     1     oid  Ljava/lang/String;
            6   60     2      ch  I
            7   60     3   start  I
            8   60     4     end  I
            9   60     5     pos  I
           10   60     6     tmp  [B
           11   60     7   first  I
           12   60     8   count  I
           13   52     9    comp  Ljava/lang/String;
           14   47    10  length  I
           23   33    11  bignum  Ljava/math/BigInteger;
           35   45    11     num  I
           54   55     9     ioe  Ljava/io/IOException;
           56   59     9       e  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
          12    52      53  Class java.io.IOException
          12    52      55  Class java.lang.Exception
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      oid   

  public void <init>(int[]);
    descriptor: ([I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // sun.security.util.ObjectIdentifier this
        start local 1 // int[] values
         0: .line 219
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 60
            aload 0 /* this */
            aconst_null
            putfield sun.security.util.ObjectIdentifier.encoding:[B
         2: .line 100
            aload 0 /* this */
            aconst_null
            putfield sun.security.util.ObjectIdentifier.components:Ljava/lang/Object;
         3: .line 104
            aload 0 /* this */
            iconst_m1
            putfield sun.security.util.ObjectIdentifier.componentLen:I
         4: .line 107
            aload 0 /* this */
            iconst_0
            putfield sun.security.util.ObjectIdentifier.componentsCalculated:Z
         5: .line 221
            aload 1 /* values */
            arraylength
            invokestatic sun.security.util.ObjectIdentifier.checkCount:(I)V
         6: .line 222
            aload 1 /* values */
            iconst_0
            iaload
            invokestatic sun.security.util.ObjectIdentifier.checkFirstComponent:(I)V
         7: .line 223
            aload 1 /* values */
            iconst_0
            iaload
            aload 1 /* values */
            iconst_1
            iaload
            invokestatic sun.security.util.ObjectIdentifier.checkSecondComponent:(II)V
         8: .line 224
            iconst_2
            istore 2 /* i */
        start local 2 // int i
         9: goto 12
        10: .line 225
      StackMap locals: sun.security.util.ObjectIdentifier int[] int
      StackMap stack:
            iload 2 /* i */
            aload 1 /* values */
            iload 2 /* i */
            iaload
            invokestatic sun.security.util.ObjectIdentifier.checkOtherComponent:(II)V
        11: .line 224
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
        12: iload 2 /* i */
            aload 1 /* values */
            arraylength
            if_icmplt 10
        end local 2 // int i
        13: .line 226
            aload 0 /* this */
            aload 1 /* values */
            aload 1 /* values */
            arraylength
            invokevirtual sun.security.util.ObjectIdentifier.init:([II)V
        14: .line 227
            return
        end local 1 // int[] values
        end local 0 // sun.security.util.ObjectIdentifier this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   15     0    this  Lsun/security/util/ObjectIdentifier;
            0   15     1  values  [I
            9   13     2       i  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
        Name  Flags
      values  

  public void <init>(sun.security.util.DerInputStream);
    descriptor: (Lsun/security/util/DerInputStream;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=2
        start local 0 // sun.security.util.ObjectIdentifier this
        start local 1 // sun.security.util.DerInputStream in
         0: .line 241
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 60
            aload 0 /* this */
            aconst_null
            putfield sun.security.util.ObjectIdentifier.encoding:[B
         2: .line 100
            aload 0 /* this */
            aconst_null
            putfield sun.security.util.ObjectIdentifier.components:Ljava/lang/Object;
         3: .line 104
            aload 0 /* this */
            iconst_m1
            putfield sun.security.util.ObjectIdentifier.componentLen:I
         4: .line 107
            aload 0 /* this */
            iconst_0
            putfield sun.security.util.ObjectIdentifier.componentsCalculated:Z
         5: .line 255
            aload 1 /* in */
            invokevirtual sun.security.util.DerInputStream.getByte:()I
            i2b
            istore 2 /* type_id */
        start local 2 // byte type_id
         6: .line 256
            iload 2 /* type_id */
            bipush 6
            if_icmpeq 12
         7: .line 257
            new java.io.IOException
            dup
         8: .line 258
            new java.lang.StringBuilder
            dup
            ldc "ObjectIdentifier() -- data isn't an object ID (tag = "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         9: .line 259
            iload 2 /* type_id */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc ")"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        10: .line 258
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        11: .line 257
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
        12: .line 262
      StackMap locals: sun.security.util.ObjectIdentifier sun.security.util.DerInputStream int
      StackMap stack:
            aload 1 /* in */
            invokevirtual sun.security.util.DerInputStream.getDefiniteLength:()I
            istore 3 /* len */
        start local 3 // int len
        13: .line 263
            iload 3 /* len */
            aload 1 /* in */
            invokevirtual sun.security.util.DerInputStream.available:()I
            if_icmple 18
        14: .line 264
            new java.io.IOException
            dup
            new java.lang.StringBuilder
            dup
            ldc "ObjectIdentifier() -- length exceedsdata available.  Length: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        15: .line 265
            iload 3 /* len */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc ", Available: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        16: .line 266
            aload 1 /* in */
            invokevirtual sun.security.util.DerInputStream.available:()I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        17: .line 264
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
        18: .line 268
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            iload 3 /* len */
            newarray 8
            putfield sun.security.util.ObjectIdentifier.encoding:[B
        19: .line 269
            aload 1 /* in */
            aload 0 /* this */
            getfield sun.security.util.ObjectIdentifier.encoding:[B
            invokevirtual sun.security.util.DerInputStream.getBytes:([B)V
        20: .line 270
            aload 0 /* this */
            getfield sun.security.util.ObjectIdentifier.encoding:[B
            invokestatic sun.security.util.ObjectIdentifier.check:([B)V
        21: .line 271
            return
        end local 3 // int len
        end local 2 // byte type_id
        end local 1 // sun.security.util.DerInputStream in
        end local 0 // sun.security.util.ObjectIdentifier this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   22     0     this  Lsun/security/util/ObjectIdentifier;
            0   22     1       in  Lsun/security/util/DerInputStream;
            6   22     2  type_id  B
           13   22     3      len  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      in    

  void <init>(sun.security.util.DerInputBuffer);
    descriptor: (Lsun/security/util/DerInputBuffer;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // sun.security.util.ObjectIdentifier this
        start local 1 // sun.security.util.DerInputBuffer buf
         0: .line 278
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 60
            aload 0 /* this */
            aconst_null
            putfield sun.security.util.ObjectIdentifier.encoding:[B
         2: .line 100
            aload 0 /* this */
            aconst_null
            putfield sun.security.util.ObjectIdentifier.components:Ljava/lang/Object;
         3: .line 104
            aload 0 /* this */
            iconst_m1
            putfield sun.security.util.ObjectIdentifier.componentLen:I
         4: .line 107
            aload 0 /* this */
            iconst_0
            putfield sun.security.util.ObjectIdentifier.componentsCalculated:Z
         5: .line 280
            new sun.security.util.DerInputStream
            dup
            aload 1 /* buf */
            invokespecial sun.security.util.DerInputStream.<init>:(Lsun/security/util/DerInputBuffer;)V
            astore 2 /* in */
        start local 2 // sun.security.util.DerInputStream in
         6: .line 281
            aload 0 /* this */
            aload 2 /* in */
            invokevirtual sun.security.util.DerInputStream.available:()I
            newarray 8
            putfield sun.security.util.ObjectIdentifier.encoding:[B
         7: .line 282
            aload 2 /* in */
            aload 0 /* this */
            getfield sun.security.util.ObjectIdentifier.encoding:[B
            invokevirtual sun.security.util.DerInputStream.getBytes:([B)V
         8: .line 283
            aload 0 /* this */
            getfield sun.security.util.ObjectIdentifier.encoding:[B
            invokestatic sun.security.util.ObjectIdentifier.check:([B)V
         9: .line 284
            return
        end local 2 // sun.security.util.DerInputStream in
        end local 1 // sun.security.util.DerInputBuffer buf
        end local 0 // sun.security.util.ObjectIdentifier this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0  this  Lsun/security/util/ObjectIdentifier;
            0   10     1   buf  Lsun/security/util/DerInputBuffer;
            6   10     2    in  Lsun/security/util/DerInputStream;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      buf   

  private void init(int[], int);
    descriptor: ([II)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=6, args_size=3
        start local 0 // sun.security.util.ObjectIdentifier this
        start local 1 // int[] components
        start local 2 // int length
         0: .line 287
            iconst_0
            istore 3 /* pos */
        start local 3 // int pos
         1: .line 288
            iload 2 /* length */
            iconst_5
            imul
            iconst_1
            iadd
            newarray 8
            astore 4 /* tmp */
        start local 4 // byte[] tmp
         2: .line 290
            aload 1 /* components */
            iconst_1
            iaload
            ldc 2147483647
            aload 1 /* components */
            iconst_0
            iaload
            bipush 40
            imul
            isub
            if_icmpge 4
         3: .line 291
            iload 3 /* pos */
            aload 1 /* components */
            iconst_0
            iaload
            bipush 40
            imul
            aload 1 /* components */
            iconst_1
            iaload
            iadd
            aload 4 /* tmp */
            iload 3 /* pos */
            invokestatic sun.security.util.ObjectIdentifier.pack7Oid:(I[BI)I
            iadd
            istore 3 /* pos */
            goto 7
         4: .line 293
      StackMap locals: int byte[]
      StackMap stack:
            aload 1 /* components */
            iconst_1
            iaload
            i2l
            invokestatic java.math.BigInteger.valueOf:(J)Ljava/math/BigInteger;
            astore 5 /* big */
        start local 5 // java.math.BigInteger big
         5: .line 294
            aload 5 /* big */
            aload 1 /* components */
            iconst_0
            iaload
            bipush 40
            imul
            i2l
            invokestatic java.math.BigInteger.valueOf:(J)Ljava/math/BigInteger;
            invokevirtual java.math.BigInteger.add:(Ljava/math/BigInteger;)Ljava/math/BigInteger;
            astore 5 /* big */
         6: .line 295
            iload 3 /* pos */
            aload 5 /* big */
            aload 4 /* tmp */
            iload 3 /* pos */
            invokestatic sun.security.util.ObjectIdentifier.pack7Oid:(Ljava/math/BigInteger;[BI)I
            iadd
            istore 3 /* pos */
        end local 5 // java.math.BigInteger big
         7: .line 298
      StackMap locals:
      StackMap stack:
            iconst_2
            istore 5 /* i */
        start local 5 // int i
         8: goto 11
         9: .line 299
      StackMap locals: int
      StackMap stack:
            iload 3 /* pos */
            aload 1 /* components */
            iload 5 /* i */
            iaload
            aload 4 /* tmp */
            iload 3 /* pos */
            invokestatic sun.security.util.ObjectIdentifier.pack7Oid:(I[BI)I
            iadd
            istore 3 /* pos */
        10: .line 298
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        11: iload 5 /* i */
            iload 2 /* length */
            if_icmplt 9
        end local 5 // int i
        12: .line 301
            aload 0 /* this */
            iload 3 /* pos */
            newarray 8
            putfield sun.security.util.ObjectIdentifier.encoding:[B
        13: .line 302
            aload 4 /* tmp */
            iconst_0
            aload 0 /* this */
            getfield sun.security.util.ObjectIdentifier.encoding:[B
            iconst_0
            iload 3 /* pos */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        14: .line 303
            return
        end local 4 // byte[] tmp
        end local 3 // int pos
        end local 2 // int length
        end local 1 // int[] components
        end local 0 // sun.security.util.ObjectIdentifier this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   15     0        this  Lsun/security/util/ObjectIdentifier;
            0   15     1  components  [I
            0   15     2      length  I
            1   15     3         pos  I
            2   15     4         tmp  [B
            5    7     5         big  Ljava/math/BigInteger;
            8   12     5           i  I
    MethodParameters:
            Name  Flags
      components  
      length      

  public static sun.security.util.ObjectIdentifier newInternal(int[]);
    descriptor: ([I)Lsun/security/util/ObjectIdentifier;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // int[] values
         0: .line 316
            new sun.security.util.ObjectIdentifier
            dup
            aload 0 /* values */
            invokespecial sun.security.util.ObjectIdentifier.<init>:([I)V
         1: areturn
         2: .line 317
      StackMap locals:
      StackMap stack: java.io.IOException
            astore 1 /* ex */
        start local 1 // java.io.IOException ex
         3: .line 318
            new java.lang.RuntimeException
            dup
            aload 1 /* ex */
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 1 // java.io.IOException ex
        end local 0 // int[] values
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0  values  [I
            3    4     1      ex  Ljava/io/IOException;
      Exception table:
        from    to  target  type
           0     1       2  Class java.io.IOException
    MethodParameters:
        Name  Flags
      values  

  void encode(sun.security.util.DerOutputStream);
    descriptor: (Lsun/security/util/DerOutputStream;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // sun.security.util.ObjectIdentifier this
        start local 1 // sun.security.util.DerOutputStream out
         0: .line 328
            aload 1 /* out */
            bipush 6
            aload 0 /* this */
            getfield sun.security.util.ObjectIdentifier.encoding:[B
            invokevirtual sun.security.util.DerOutputStream.write:(B[B)V
         1: .line 329
            return
        end local 1 // sun.security.util.DerOutputStream out
        end local 0 // sun.security.util.ObjectIdentifier this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/security/util/ObjectIdentifier;
            0    2     1   out  Lsun/security/util/DerOutputStream;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      out   

  public boolean equals(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // sun.security.util.ObjectIdentifier this
        start local 1 // java.lang.Object obj
         0: .line 338
            aload 0 /* this */
            aload 1 /* obj */
            if_acmpne 2
         1: .line 339
            iconst_1
            ireturn
         2: .line 341
      StackMap locals:
      StackMap stack:
            aload 1 /* obj */
            instanceof sun.security.util.ObjectIdentifier
            ifne 4
         3: .line 342
            iconst_0
            ireturn
         4: .line 344
      StackMap locals:
      StackMap stack:
            aload 1 /* obj */
            checkcast sun.security.util.ObjectIdentifier
            astore 2 /* other */
        start local 2 // sun.security.util.ObjectIdentifier other
         5: .line 345
            aload 0 /* this */
            getfield sun.security.util.ObjectIdentifier.encoding:[B
            aload 2 /* other */
            getfield sun.security.util.ObjectIdentifier.encoding:[B
            invokestatic java.util.Arrays.equals:([B[B)Z
            ireturn
        end local 2 // sun.security.util.ObjectIdentifier other
        end local 1 // java.lang.Object obj
        end local 0 // sun.security.util.ObjectIdentifier this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    6     0   this  Lsun/security/util/ObjectIdentifier;
            0    6     1    obj  Ljava/lang/Object;
            5    6     2  other  Lsun/security/util/ObjectIdentifier;
    MethodParameters:
      Name  Flags
      obj   

  public int hashCode();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.security.util.ObjectIdentifier this
         0: .line 350
            aload 0 /* this */
            getfield sun.security.util.ObjectIdentifier.encoding:[B
            invokestatic java.util.Arrays.hashCode:([B)I
            ireturn
        end local 0 // sun.security.util.ObjectIdentifier this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/security/util/ObjectIdentifier;

  private int[] toIntArray();
    descriptor: ()[I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=9, args_size=1
        start local 0 // sun.security.util.ObjectIdentifier this
         0: .line 360
            aload 0 /* this */
            getfield sun.security.util.ObjectIdentifier.encoding:[B
            arraylength
            istore 1 /* length */
        start local 1 // int length
         1: .line 361
            bipush 20
            newarray 10
            astore 2 /* result */
        start local 2 // int[] result
         2: .line 362
            iconst_0
            istore 3 /* which */
        start local 3 // int which
         3: .line 363
            iconst_0
            istore 4 /* fromPos */
        start local 4 // int fromPos
         4: .line 364
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         5: goto 41
         6: .line 365
      StackMap locals: sun.security.util.ObjectIdentifier int int[] int int int
      StackMap stack:
            aload 0 /* this */
            getfield sun.security.util.ObjectIdentifier.encoding:[B
            iload 5 /* i */
            baload
            sipush 128
            iand
            ifne 38
         7: .line 367
            iload 5 /* i */
            iload 4 /* fromPos */
            isub
            iconst_1
            iadd
            iconst_4
            if_icmple 20
         8: .line 368
            new java.math.BigInteger
            dup
            aload 0 /* this */
            getfield sun.security.util.ObjectIdentifier.encoding:[B
            iload 4 /* fromPos */
            iload 5 /* i */
            iload 4 /* fromPos */
            isub
            iconst_1
            iadd
            bipush 7
            bipush 8
            invokestatic sun.security.util.ObjectIdentifier.pack:([BIIII)[B
            invokespecial java.math.BigInteger.<init>:([B)V
            astore 6 /* big */
        start local 6 // java.math.BigInteger big
         9: .line 369
            iload 4 /* fromPos */
            ifne 16
        10: .line 370
            aload 2 /* result */
            iload 3 /* which */
            iinc 3 /* which */ 1
            iconst_2
            iastore
        11: .line 371
            aload 6 /* big */
            ldc 80
            invokestatic java.math.BigInteger.valueOf:(J)Ljava/math/BigInteger;
            invokevirtual java.math.BigInteger.subtract:(Ljava/math/BigInteger;)Ljava/math/BigInteger;
            astore 7 /* second */
        start local 7 // java.math.BigInteger second
        12: .line 372
            aload 7 /* second */
            ldc 2147483647
            invokestatic java.math.BigInteger.valueOf:(J)Ljava/math/BigInteger;
            invokevirtual java.math.BigInteger.compareTo:(Ljava/math/BigInteger;)I
            iconst_1
            if_icmpne 14
        13: .line 373
            aconst_null
            areturn
        14: .line 375
      StackMap locals: java.math.BigInteger java.math.BigInteger
      StackMap stack:
            aload 2 /* result */
            iload 3 /* which */
            iinc 3 /* which */ 1
            aload 7 /* second */
            invokevirtual java.math.BigInteger.intValue:()I
            iastore
        end local 7 // java.math.BigInteger second
        15: .line 377
            goto 37
        16: .line 378
      StackMap locals:
      StackMap stack:
            aload 6 /* big */
            ldc 2147483647
            invokestatic java.math.BigInteger.valueOf:(J)Ljava/math/BigInteger;
            invokevirtual java.math.BigInteger.compareTo:(Ljava/math/BigInteger;)I
            iconst_1
            if_icmpne 18
        17: .line 379
            aconst_null
            areturn
        18: .line 381
      StackMap locals:
      StackMap stack:
            aload 2 /* result */
            iload 3 /* which */
            iinc 3 /* which */ 1
            aload 6 /* big */
            invokevirtual java.math.BigInteger.intValue:()I
            iastore
        end local 6 // java.math.BigInteger big
        19: .line 384
            goto 37
        20: .line 385
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 6 /* retval */
        start local 6 // int retval
        21: .line 386
            iload 4 /* fromPos */
            istore 7 /* j */
        start local 7 // int j
        22: goto 27
        23: .line 387
      StackMap locals: int int
      StackMap stack:
            iload 6 /* retval */
            bipush 7
            ishl
            istore 6 /* retval */
        24: .line 388
            aload 0 /* this */
            getfield sun.security.util.ObjectIdentifier.encoding:[B
            iload 7 /* j */
            baload
            istore 8 /* tmp */
        start local 8 // byte tmp
        25: .line 389
            iload 6 /* retval */
            iload 8 /* tmp */
            bipush 127
            iand
            ior
            istore 6 /* retval */
        end local 8 // byte tmp
        26: .line 386
            iinc 7 /* j */ 1
      StackMap locals:
      StackMap stack:
        27: iload 7 /* j */
            iload 5 /* i */
            if_icmple 23
        end local 7 // int j
        28: .line 391
            iload 4 /* fromPos */
            ifne 36
        29: .line 392
            iload 6 /* retval */
            bipush 80
            if_icmpge 33
        30: .line 393
            aload 2 /* result */
            iload 3 /* which */
            iinc 3 /* which */ 1
            iload 6 /* retval */
            bipush 40
            idiv
            iastore
        31: .line 394
            aload 2 /* result */
            iload 3 /* which */
            iinc 3 /* which */ 1
            iload 6 /* retval */
            bipush 40
            irem
            iastore
        32: .line 395
            goto 37
        33: .line 396
      StackMap locals:
      StackMap stack:
            aload 2 /* result */
            iload 3 /* which */
            iinc 3 /* which */ 1
            iconst_2
            iastore
        34: .line 397
            aload 2 /* result */
            iload 3 /* which */
            iinc 3 /* which */ 1
            iload 6 /* retval */
            bipush 80
            isub
            iastore
        35: .line 399
            goto 37
        36: .line 400
      StackMap locals:
      StackMap stack:
            aload 2 /* result */
            iload 3 /* which */
            iinc 3 /* which */ 1
            iload 6 /* retval */
            iastore
        end local 6 // int retval
        37: .line 403
      StackMap locals:
      StackMap stack:
            iload 5 /* i */
            iconst_1
            iadd
            istore 4 /* fromPos */
        38: .line 405
      StackMap locals:
      StackMap stack:
            iload 3 /* which */
            aload 2 /* result */
            arraylength
            if_icmplt 40
        39: .line 406
            aload 2 /* result */
            iload 3 /* which */
            bipush 10
            iadd
            invokestatic java.util.Arrays.copyOf:([II)[I
            astore 2 /* result */
        40: .line 364
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        41: iload 5 /* i */
            iload 1 /* length */
            if_icmplt 6
        end local 5 // int i
        42: .line 409
            aload 2 /* result */
            iload 3 /* which */
            invokestatic java.util.Arrays.copyOf:([II)[I
            areturn
        end local 4 // int fromPos
        end local 3 // int which
        end local 2 // int[] result
        end local 1 // int length
        end local 0 // sun.security.util.ObjectIdentifier this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   43     0     this  Lsun/security/util/ObjectIdentifier;
            1   43     1   length  I
            2   43     2   result  [I
            3   43     3    which  I
            4   43     4  fromPos  I
            5   42     5        i  I
            9   19     6      big  Ljava/math/BigInteger;
           12   15     7   second  Ljava/math/BigInteger;
           21   37     6   retval  I
           22   28     7        j  I
           25   26     8      tmp  B

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=9, args_size=1
        start local 0 // sun.security.util.ObjectIdentifier this
         0: .line 420
            aload 0 /* this */
            getfield sun.security.util.ObjectIdentifier.stringForm:Ljava/lang/String;
            astore 1 /* s */
        start local 1 // java.lang.String s
         1: .line 421
            aload 1 /* s */
            ifnonnull 41
         2: .line 422
            aload 0 /* this */
            getfield sun.security.util.ObjectIdentifier.encoding:[B
            arraylength
            istore 2 /* length */
        start local 2 // int length
         3: .line 423
            new java.lang.StringBuilder
            dup
            iload 2 /* length */
            iconst_4
            imul
            invokespecial java.lang.StringBuilder.<init>:(I)V
            astore 3 /* sb */
        start local 3 // java.lang.StringBuilder sb
         4: .line 425
            iconst_0
            istore 4 /* fromPos */
        start local 4 // int fromPos
         5: .line 426
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         6: goto 38
         7: .line 427
      StackMap locals: sun.security.util.ObjectIdentifier java.lang.String int java.lang.StringBuilder int int
      StackMap stack:
            aload 0 /* this */
            getfield sun.security.util.ObjectIdentifier.encoding:[B
            iload 5 /* i */
            baload
            sipush 128
            iand
            ifne 37
         8: .line 429
            iload 4 /* fromPos */
            ifeq 10
         9: .line 430
            aload 3 /* sb */
            bipush 46
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        10: .line 432
      StackMap locals:
      StackMap stack:
            iload 5 /* i */
            iload 4 /* fromPos */
            isub
            iconst_1
            iadd
            iconst_4
            if_icmple 18
        11: .line 433
            new java.math.BigInteger
            dup
            aload 0 /* this */
            getfield sun.security.util.ObjectIdentifier.encoding:[B
            iload 4 /* fromPos */
            iload 5 /* i */
            iload 4 /* fromPos */
            isub
            iconst_1
            iadd
            bipush 7
            bipush 8
            invokestatic sun.security.util.ObjectIdentifier.pack:([BIIII)[B
            invokespecial java.math.BigInteger.<init>:([B)V
            astore 6 /* big */
        start local 6 // java.math.BigInteger big
        12: .line 434
            iload 4 /* fromPos */
            ifne 16
        13: .line 437
            aload 3 /* sb */
            ldc "2."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        14: .line 438
            aload 3 /* sb */
            aload 6 /* big */
            ldc 80
            invokestatic java.math.BigInteger.valueOf:(J)Ljava/math/BigInteger;
            invokevirtual java.math.BigInteger.subtract:(Ljava/math/BigInteger;)Ljava/math/BigInteger;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            pop
        15: .line 439
            goto 36
        16: .line 440
      StackMap locals: java.math.BigInteger
      StackMap stack:
            aload 3 /* sb */
            aload 6 /* big */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            pop
        end local 6 // java.math.BigInteger big
        17: .line 442
            goto 36
        18: .line 443
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 6 /* retval */
        start local 6 // int retval
        19: .line 444
            iload 4 /* fromPos */
            istore 7 /* j */
        start local 7 // int j
        20: goto 25
        21: .line 445
      StackMap locals: int int
      StackMap stack:
            iload 6 /* retval */
            bipush 7
            ishl
            istore 6 /* retval */
        22: .line 446
            aload 0 /* this */
            getfield sun.security.util.ObjectIdentifier.encoding:[B
            iload 7 /* j */
            baload
            istore 8 /* tmp */
        start local 8 // byte tmp
        23: .line 447
            iload 6 /* retval */
            iload 8 /* tmp */
            bipush 127
            iand
            ior
            istore 6 /* retval */
        end local 8 // byte tmp
        24: .line 444
            iinc 7 /* j */ 1
      StackMap locals:
      StackMap stack:
        25: iload 7 /* j */
            iload 5 /* i */
            if_icmple 21
        end local 7 // int j
        26: .line 449
            iload 4 /* fromPos */
            ifne 35
        27: .line 450
            iload 6 /* retval */
            bipush 80
            if_icmpge 32
        28: .line 451
            aload 3 /* sb */
            iload 6 /* retval */
            bipush 40
            idiv
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            pop
        29: .line 452
            aload 3 /* sb */
            bipush 46
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        30: .line 453
            aload 3 /* sb */
            iload 6 /* retval */
            bipush 40
            irem
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            pop
        31: .line 454
            goto 36
        32: .line 455
      StackMap locals:
      StackMap stack:
            aload 3 /* sb */
            ldc "2."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        33: .line 456
            aload 3 /* sb */
            iload 6 /* retval */
            bipush 80
            isub
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            pop
        34: .line 458
            goto 36
        35: .line 459
      StackMap locals:
      StackMap stack:
            aload 3 /* sb */
            iload 6 /* retval */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            pop
        end local 6 // int retval
        36: .line 462
      StackMap locals:
      StackMap stack:
            iload 5 /* i */
            iconst_1
            iadd
            istore 4 /* fromPos */
        37: .line 426
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        38: iload 5 /* i */
            iload 2 /* length */
            if_icmplt 7
        end local 5 // int i
        39: .line 465
            aload 3 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 1 /* s */
        40: .line 466
            aload 0 /* this */
            aload 1 /* s */
            putfield sun.security.util.ObjectIdentifier.stringForm:Ljava/lang/String;
        end local 4 // int fromPos
        end local 3 // java.lang.StringBuilder sb
        end local 2 // int length
        41: .line 468
      StackMap locals: sun.security.util.ObjectIdentifier java.lang.String
      StackMap stack:
            aload 1 /* s */
            areturn
        end local 1 // java.lang.String s
        end local 0 // sun.security.util.ObjectIdentifier this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   42     0     this  Lsun/security/util/ObjectIdentifier;
            1   42     1        s  Ljava/lang/String;
            3   41     2   length  I
            4   41     3       sb  Ljava/lang/StringBuilder;
            5   41     4  fromPos  I
            6   39     5        i  I
           12   17     6      big  Ljava/math/BigInteger;
           19   36     6   retval  I
           20   26     7        j  I
           23   24     8      tmp  B

  private static byte[] pack(byte[], int, int, int, int);
    descriptor: ([BIIII)[B
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=7, locals=10, args_size=5
        start local 0 // byte[] in
        start local 1 // int ioffset
        start local 2 // int ilength
        start local 3 // int iw
        start local 4 // int ow
         0: .line 497
            getstatic sun.security.util.ObjectIdentifier.$assertionsDisabled:Z
            ifne 2
            iload 3 /* iw */
            ifle 1
            iload 3 /* iw */
            bipush 8
            if_icmple 2
      StackMap locals:
      StackMap stack:
         1: new java.lang.AssertionError
            dup
            ldc "input NUB must be between 1 and 8"
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         2: .line 498
      StackMap locals:
      StackMap stack:
            getstatic sun.security.util.ObjectIdentifier.$assertionsDisabled:Z
            ifne 4
            iload 4 /* ow */
            ifle 3
            iload 4 /* ow */
            bipush 8
            if_icmple 4
      StackMap locals:
      StackMap stack:
         3: new java.lang.AssertionError
            dup
            ldc "output NUB must be between 1 and 8"
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         4: .line 500
      StackMap locals:
      StackMap stack:
            iload 3 /* iw */
            iload 4 /* ow */
            if_icmpne 6
         5: .line 501
            aload 0 /* in */
            invokevirtual byte[].clone:()Ljava/lang/Object;
            checkcast byte[]
            areturn
         6: .line 504
      StackMap locals:
      StackMap stack:
            iload 2 /* ilength */
            iload 3 /* iw */
            imul
            istore 5 /* bits */
        start local 5 // int bits
         7: .line 505
            iload 5 /* bits */
            iload 4 /* ow */
            iadd
            iconst_1
            isub
            iload 4 /* ow */
            idiv
            newarray 8
            astore 6 /* out */
        start local 6 // byte[] out
         8: .line 508
            iconst_0
            istore 7 /* ipos */
        start local 7 // int ipos
         9: .line 511
            iload 5 /* bits */
            iload 4 /* ow */
            iadd
            iconst_1
            isub
            iload 4 /* ow */
            idiv
            iload 4 /* ow */
            imul
            iload 5 /* bits */
            isub
            istore 8 /* opos */
        start local 8 // int opos
        10: .line 513
            goto 25
        11: .line 514
      StackMap locals: byte[] int int int int int byte[] int int
      StackMap stack:
            iload 3 /* iw */
            iload 7 /* ipos */
            iload 3 /* iw */
            irem
            isub
            istore 9 /* count */
        start local 9 // int count
        12: .line 515
            iload 9 /* count */
            iload 4 /* ow */
            iload 8 /* opos */
            iload 4 /* ow */
            irem
            isub
            if_icmple 14
        13: .line 516
            iload 4 /* ow */
            iload 8 /* opos */
            iload 4 /* ow */
            irem
            isub
            istore 9 /* count */
        14: .line 519
      StackMap locals: int
      StackMap stack:
            aload 6 /* out */
            iload 8 /* opos */
            iload 4 /* ow */
            idiv
            dup2
            baload
        15: .line 520
            aload 0 /* in */
            iload 1 /* ioffset */
            iload 7 /* ipos */
            iload 3 /* iw */
            idiv
            iadd
            baload
            sipush 256
            iadd
        16: .line 521
            iload 3 /* iw */
            iload 7 /* ipos */
            iload 3 /* iw */
            irem
            isub
            iload 9 /* count */
            isub
        17: .line 520
            ishr
        18: .line 522
            iconst_1
            iload 9 /* count */
            ishl
            iconst_1
            isub
        19: .line 520
            iand
        20: .line 523
            iload 4 /* ow */
            iload 8 /* opos */
            iload 4 /* ow */
            irem
            isub
            iload 9 /* count */
            isub
        21: .line 520
            ishl
        22: .line 519
            ior
            i2b
            bastore
        23: .line 524
            iload 7 /* ipos */
            iload 9 /* count */
            iadd
            istore 7 /* ipos */
        24: .line 525
            iload 8 /* opos */
            iload 9 /* count */
            iadd
            istore 8 /* opos */
        end local 9 // int count
        25: .line 513
      StackMap locals:
      StackMap stack:
            iload 7 /* ipos */
            iload 5 /* bits */
            if_icmplt 11
        26: .line 527
            aload 6 /* out */
            areturn
        end local 8 // int opos
        end local 7 // int ipos
        end local 6 // byte[] out
        end local 5 // int bits
        end local 4 // int ow
        end local 3 // int iw
        end local 2 // int ilength
        end local 1 // int ioffset
        end local 0 // byte[] in
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   27     0       in  [B
            0   27     1  ioffset  I
            0   27     2  ilength  I
            0   27     3       iw  I
            0   27     4       ow  I
            7   27     5     bits  I
            8   27     6      out  [B
            9   27     7     ipos  I
           10   27     8     opos  I
           12   25     9    count  I
    MethodParameters:
         Name  Flags
      in       
      ioffset  
      ilength  
      iw       
      ow       

  private static int pack7Oid(byte[], int, int, byte[], int);
    descriptor: ([BII[BI)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=6, locals=8, args_size=5
        start local 0 // byte[] in
        start local 1 // int ioffset
        start local 2 // int ilength
        start local 3 // byte[] out
        start local 4 // int ooffset
         0: .line 540
            aload 0 /* in */
            iload 1 /* ioffset */
            iload 2 /* ilength */
            bipush 8
            bipush 7
            invokestatic sun.security.util.ObjectIdentifier.pack:([BIIII)[B
            astore 5 /* pack */
        start local 5 // byte[] pack
         1: .line 541
            aload 5 /* pack */
            arraylength
            iconst_1
            isub
            istore 6 /* firstNonZero */
        start local 6 // int firstNonZero
         2: .line 542
            aload 5 /* pack */
            arraylength
            iconst_2
            isub
            istore 7 /* i */
        start local 7 // int i
         3: goto 8
         4: .line 543
      StackMap locals: byte[] int int
      StackMap stack:
            aload 5 /* pack */
            iload 7 /* i */
            baload
            ifeq 6
         5: .line 544
            iload 7 /* i */
            istore 6 /* firstNonZero */
         6: .line 546
      StackMap locals:
      StackMap stack:
            aload 5 /* pack */
            iload 7 /* i */
            dup2
            baload
            sipush 128
            ior
            i2b
            bastore
         7: .line 542
            iinc 7 /* i */ -1
      StackMap locals:
      StackMap stack:
         8: iload 7 /* i */
            ifge 4
        end local 7 // int i
         9: .line 548
            aload 5 /* pack */
            iload 6 /* firstNonZero */
            aload 3 /* out */
            iload 4 /* ooffset */
            aload 5 /* pack */
            arraylength
            iload 6 /* firstNonZero */
            isub
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        10: .line 549
            aload 5 /* pack */
            arraylength
            iload 6 /* firstNonZero */
            isub
            ireturn
        end local 6 // int firstNonZero
        end local 5 // byte[] pack
        end local 4 // int ooffset
        end local 3 // byte[] out
        end local 2 // int ilength
        end local 1 // int ioffset
        end local 0 // byte[] in
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   11     0            in  [B
            0   11     1       ioffset  I
            0   11     2       ilength  I
            0   11     3           out  [B
            0   11     4       ooffset  I
            1   11     5          pack  [B
            2   11     6  firstNonZero  I
            3    9     7             i  I
    MethodParameters:
         Name  Flags
      in       
      ioffset  
      ilength  
      out      
      ooffset  

  private static int pack8(byte[], int, int, byte[], int);
    descriptor: ([BII[BI)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=6, locals=8, args_size=5
        start local 0 // byte[] in
        start local 1 // int ioffset
        start local 2 // int ilength
        start local 3 // byte[] out
        start local 4 // int ooffset
         0: .line 560
            aload 0 /* in */
            iload 1 /* ioffset */
            iload 2 /* ilength */
            bipush 7
            bipush 8
            invokestatic sun.security.util.ObjectIdentifier.pack:([BIIII)[B
            astore 5 /* pack */
        start local 5 // byte[] pack
         1: .line 561
            aload 5 /* pack */
            arraylength
            iconst_1
            isub
            istore 6 /* firstNonZero */
        start local 6 // int firstNonZero
         2: .line 562
            aload 5 /* pack */
            arraylength
            iconst_2
            isub
            istore 7 /* i */
        start local 7 // int i
         3: goto 7
         4: .line 563
      StackMap locals: byte[] int int
      StackMap stack:
            aload 5 /* pack */
            iload 7 /* i */
            baload
            ifeq 6
         5: .line 564
            iload 7 /* i */
            istore 6 /* firstNonZero */
         6: .line 562
      StackMap locals:
      StackMap stack:
            iinc 7 /* i */ -1
      StackMap locals:
      StackMap stack:
         7: iload 7 /* i */
            ifge 4
        end local 7 // int i
         8: .line 567
            aload 5 /* pack */
            iload 6 /* firstNonZero */
            aload 3 /* out */
            iload 4 /* ooffset */
            aload 5 /* pack */
            arraylength
            iload 6 /* firstNonZero */
            isub
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
         9: .line 568
            aload 5 /* pack */
            arraylength
            iload 6 /* firstNonZero */
            isub
            ireturn
        end local 6 // int firstNonZero
        end local 5 // byte[] pack
        end local 4 // int ooffset
        end local 3 // byte[] out
        end local 2 // int ilength
        end local 1 // int ioffset
        end local 0 // byte[] in
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   10     0            in  [B
            0   10     1       ioffset  I
            0   10     2       ilength  I
            0   10     3           out  [B
            0   10     4       ooffset  I
            1   10     5          pack  [B
            2   10     6  firstNonZero  I
            3    8     7             i  I
    MethodParameters:
         Name  Flags
      in       
      ioffset  
      ilength  
      out      
      ooffset  

  private static int pack7Oid(int, byte[], int);
    descriptor: (I[BI)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=4, args_size=3
        start local 0 // int input
        start local 1 // byte[] out
        start local 2 // int ooffset
         0: .line 575
            iconst_4
            newarray 8
            astore 3 /* b */
        start local 3 // byte[] b
         1: .line 576
            aload 3 /* b */
            iconst_0
            iload 0 /* input */
            bipush 24
            ishr
            i2b
            bastore
         2: .line 577
            aload 3 /* b */
            iconst_1
            iload 0 /* input */
            bipush 16
            ishr
            i2b
            bastore
         3: .line 578
            aload 3 /* b */
            iconst_2
            iload 0 /* input */
            bipush 8
            ishr
            i2b
            bastore
         4: .line 579
            aload 3 /* b */
            iconst_3
            iload 0 /* input */
            i2b
            bastore
         5: .line 580
            aload 3 /* b */
            iconst_0
            iconst_4
            aload 1 /* out */
            iload 2 /* ooffset */
            invokestatic sun.security.util.ObjectIdentifier.pack7Oid:([BII[BI)I
            ireturn
        end local 3 // byte[] b
        end local 2 // int ooffset
        end local 1 // byte[] out
        end local 0 // int input
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    6     0    input  I
            0    6     1      out  [B
            0    6     2  ooffset  I
            1    6     3        b  [B
    MethodParameters:
         Name  Flags
      input    
      out      
      ooffset  

  private static int pack7Oid(java.math.BigInteger, byte[], int);
    descriptor: (Ljava/math/BigInteger;[BI)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=4, args_size=3
        start local 0 // java.math.BigInteger input
        start local 1 // byte[] out
        start local 2 // int ooffset
         0: .line 587
            aload 0 /* input */
            invokevirtual java.math.BigInteger.toByteArray:()[B
            astore 3 /* b */
        start local 3 // byte[] b
         1: .line 588
            aload 3 /* b */
            iconst_0
            aload 3 /* b */
            arraylength
            aload 1 /* out */
            iload 2 /* ooffset */
            invokestatic sun.security.util.ObjectIdentifier.pack7Oid:([BII[BI)I
            ireturn
        end local 3 // byte[] b
        end local 2 // int ooffset
        end local 1 // byte[] out
        end local 0 // java.math.BigInteger input
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0    input  Ljava/math/BigInteger;
            0    2     1      out  [B
            0    2     2  ooffset  I
            1    2     3        b  [B
    MethodParameters:
         Name  Flags
      input    
      out      
      ooffset  

  private static void check(byte[]);
    descriptor: ([B)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // byte[] encoding
         0: .line 604
            aload 0 /* encoding */
            arraylength
            istore 1 /* length */
        start local 1 // int length
         1: .line 605
            iload 1 /* length */
            iconst_1
            if_icmplt 3
         2: .line 606
            aload 0 /* encoding */
            iload 1 /* length */
            iconst_1
            isub
            baload
            sipush 128
            iand
            ifeq 4
         3: .line 607
      StackMap locals: int
      StackMap stack:
            new java.io.IOException
            dup
            ldc "ObjectIdentifier() -- Invalid DER encoding, not ended"
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 610
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         5: goto 10
         6: .line 612
      StackMap locals: int
      StackMap stack:
            aload 0 /* encoding */
            iload 2 /* i */
            baload
            bipush -128
            if_icmpne 9
         7: .line 613
            iload 2 /* i */
            ifeq 8
            aload 0 /* encoding */
            iload 2 /* i */
            iconst_1
            isub
            baload
            sipush 128
            iand
            ifne 9
         8: .line 614
      StackMap locals:
      StackMap stack:
            new java.io.IOException
            dup
            ldc "ObjectIdentifier() -- Invalid DER encoding, useless extra octet detected"
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
         9: .line 610
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
        10: iload 2 /* i */
            iload 1 /* length */
            if_icmplt 6
        end local 2 // int i
        11: .line 618
            return
        end local 1 // int length
        end local 0 // byte[] encoding
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   12     0  encoding  [B
            1   12     1    length  I
            5   11     2         i  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
          Name  Flags
      encoding  

  private static void checkCount(int);
    descriptor: (I)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // int count
         0: .line 620
            iload 0 /* count */
            iconst_2
            if_icmpge 2
         1: .line 621
            new java.io.IOException
            dup
            ldc "ObjectIdentifier() -- Must be at least two oid components "
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 624
      StackMap locals:
      StackMap stack:
            return
        end local 0 // int count
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0  count  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
       Name  Flags
      count  

  private static void checkFirstComponent(int);
    descriptor: (I)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // int first
         0: .line 626
            iload 0 /* first */
            iflt 1
            iload 0 /* first */
            iconst_2
            if_icmple 2
         1: .line 627
      StackMap locals:
      StackMap stack:
            new java.io.IOException
            dup
            ldc "ObjectIdentifier() -- First oid component is invalid "
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 630
      StackMap locals:
      StackMap stack:
            return
        end local 0 // int first
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0  first  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
       Name  Flags
      first  

  private static void checkFirstComponent(java.math.BigInteger);
    descriptor: (Ljava/math/BigInteger;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.math.BigInteger first
         0: .line 632
            aload 0 /* first */
            invokevirtual java.math.BigInteger.signum:()I
            iconst_m1
            if_icmpeq 1
            aload 0 /* first */
            getstatic java.math.BigInteger.TWO:Ljava/math/BigInteger;
            invokevirtual java.math.BigInteger.compareTo:(Ljava/math/BigInteger;)I
            ifle 2
         1: .line 633
      StackMap locals:
      StackMap stack:
            new java.io.IOException
            dup
            ldc "ObjectIdentifier() -- First oid component is invalid "
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 636
      StackMap locals:
      StackMap stack:
            return
        end local 0 // java.math.BigInteger first
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0  first  Ljava/math/BigInteger;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
       Name  Flags
      first  

  private static void checkSecondComponent(int, int);
    descriptor: (II)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // int first
        start local 1 // int second
         0: .line 638
            iload 1 /* second */
            iflt 1
            iload 0 /* first */
            iconst_2
            if_icmpeq 2
            iload 1 /* second */
            bipush 39
            if_icmple 2
         1: .line 639
      StackMap locals:
      StackMap stack:
            new java.io.IOException
            dup
            ldc "ObjectIdentifier() -- Second oid component is invalid "
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 642
      StackMap locals:
      StackMap stack:
            return
        end local 1 // int second
        end local 0 // int first
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0   first  I
            0    3     1  second  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
        Name  Flags
      first   
      second  

  private static void checkSecondComponent(int, java.math.BigInteger);
    descriptor: (ILjava/math/BigInteger;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // int first
        start local 1 // java.math.BigInteger second
         0: .line 644
            aload 1 /* second */
            invokevirtual java.math.BigInteger.signum:()I
            iconst_m1
            if_icmpeq 3
         1: .line 645
            iload 0 /* first */
            iconst_2
            if_icmpeq 4
         2: .line 646
            aload 1 /* second */
            ldc 39
            invokestatic java.math.BigInteger.valueOf:(J)Ljava/math/BigInteger;
            invokevirtual java.math.BigInteger.compareTo:(Ljava/math/BigInteger;)I
            iconst_1
            if_icmpne 4
         3: .line 647
      StackMap locals:
      StackMap stack:
            new java.io.IOException
            dup
            ldc "ObjectIdentifier() -- Second oid component is invalid "
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 650
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.math.BigInteger second
        end local 0 // int first
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0   first  I
            0    5     1  second  Ljava/math/BigInteger;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
        Name  Flags
      first   
      second  

  private static void checkOtherComponent(int, int);
    descriptor: (II)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // int i
        start local 1 // int num
         0: .line 652
            iload 1 /* num */
            ifge 4
         1: .line 653
            new java.io.IOException
            dup
            new java.lang.StringBuilder
            dup
            ldc "ObjectIdentifier() -- oid component #"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         2: .line 654
            iload 0 /* i */
            iconst_1
            iadd
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc " must be non-negative "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         3: .line 653
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 656
      StackMap locals:
      StackMap stack:
            return
        end local 1 // int num
        end local 0 // int i
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0     i  I
            0    5     1   num  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      i     
      num   

  private static void checkOtherComponent(int, java.math.BigInteger);
    descriptor: (ILjava/math/BigInteger;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // int i
        start local 1 // java.math.BigInteger num
         0: .line 658
            aload 1 /* num */
            invokevirtual java.math.BigInteger.signum:()I
            iconst_m1
            if_icmpne 4
         1: .line 659
            new java.io.IOException
            dup
            new java.lang.StringBuilder
            dup
            ldc "ObjectIdentifier() -- oid component #"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         2: .line 660
            iload 0 /* i */
            iconst_1
            iadd
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc " must be non-negative "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         3: .line 659
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 662
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.math.BigInteger num
        end local 0 // int i
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0     i  I
            0    5     1   num  Ljava/math/BigInteger;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      i     
      num   
}
SourceFile: "ObjectIdentifier.java"
NestMembers:
  sun.security.util.ObjectIdentifier$HugeOidNotSupportedByOldJDK
InnerClasses:
  HugeOidNotSupportedByOldJDK = sun.security.util.ObjectIdentifier$HugeOidNotSupportedByOldJDK of sun.security.util.ObjectIdentifier