public class sun.io.ByteToCharJISAutoDetect extends sun.io.ByteToCharConverter
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: sun.io.ByteToCharJISAutoDetect
  super_class: sun.io.ByteToCharConverter
{
  private static final int EUCJP_MASK;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 1

  private static final int SJIS2B_MASK;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 2

  private static final int SJIS1B_MASK;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 4

  private static final int EUCJP_KANA1_MASK;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 8

  private static final int EUCJP_KANA2_MASK;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 16

  private static byte[] maskTable1;
    descriptor: [B
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  private static byte[] maskTable2;
    descriptor: [B
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  private static final int SS2;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 142

  private static final int SS3;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 143

  private static final sun.nio.cs.ext.JISAutoDetect nioCoder;
    descriptor: Lsun/nio/cs/ext/JISAutoDetect;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private java.lang.String SJISName;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  private java.lang.String EUCJPName;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  private java.lang.String convName;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  private sun.io.ByteToCharConverter detectedConv;
    descriptor: Lsun/io/ByteToCharConverter;
    flags: (0x0002) ACC_PRIVATE

  private sun.io.ByteToCharConverter defaultConv;
    descriptor: Lsun/io/ByteToCharConverter;
    flags: (0x0002) ACC_PRIVATE

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 43
            new sun.nio.cs.ext.JISAutoDetect
            dup
            invokespecial sun.nio.cs.ext.JISAutoDetect.<init>:()V
            putstatic sun.io.ByteToCharJISAutoDetect.nioCoder:Lsun/nio/cs/ext/JISAutoDetect;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // sun.io.ByteToCharJISAutoDetect this
         0: .line 54
            aload 0 /* this */
            invokespecial sun.io.ByteToCharConverter.<init>:()V
         1: .line 49
            aload 0 /* this */
            aconst_null
            putfield sun.io.ByteToCharJISAutoDetect.convName:Ljava/lang/String;
         2: .line 50
            aload 0 /* this */
            aconst_null
            putfield sun.io.ByteToCharJISAutoDetect.detectedConv:Lsun/io/ByteToCharConverter;
         3: .line 51
            aload 0 /* this */
            aconst_null
            putfield sun.io.ByteToCharJISAutoDetect.defaultConv:Lsun/io/ByteToCharConverter;
         4: .line 55
            aload 0 /* this */
            invokestatic sun.io.CharacterEncoding.getSJISName:()Ljava/lang/String;
            putfield sun.io.ByteToCharJISAutoDetect.SJISName:Ljava/lang/String;
         5: .line 56
            aload 0 /* this */
            invokestatic sun.io.CharacterEncoding.getEUCJPName:()Ljava/lang/String;
            putfield sun.io.ByteToCharJISAutoDetect.EUCJPName:Ljava/lang/String;
         6: .line 57
            aload 0 /* this */
            new sun.io.ByteToCharISO8859_1
            dup
            invokespecial sun.io.ByteToCharISO8859_1.<init>:()V
            putfield sun.io.ByteToCharJISAutoDetect.defaultConv:Lsun/io/ByteToCharConverter;
         7: .line 58
            aload 0 /* this */
            getfield sun.io.ByteToCharJISAutoDetect.defaultConv:Lsun/io/ByteToCharConverter;
            aload 0 /* this */
            getfield sun.io.ByteToCharJISAutoDetect.subChars:[C
            putfield sun.io.ByteToCharConverter.subChars:[C
         8: .line 59
            aload 0 /* this */
            getfield sun.io.ByteToCharJISAutoDetect.defaultConv:Lsun/io/ByteToCharConverter;
            aload 0 /* this */
            getfield sun.io.ByteToCharJISAutoDetect.subMode:Z
            putfield sun.io.ByteToCharConverter.subMode:Z
         9: .line 60
            getstatic sun.io.ByteToCharJISAutoDetect.nioCoder:Lsun/nio/cs/ext/JISAutoDetect;
            invokevirtual sun.nio.cs.ext.JISAutoDetect.getByteMask1:()[B
            putstatic sun.io.ByteToCharJISAutoDetect.maskTable1:[B
        10: .line 61
            getstatic sun.io.ByteToCharJISAutoDetect.nioCoder:Lsun/nio/cs/ext/JISAutoDetect;
            invokevirtual sun.nio.cs.ext.JISAutoDetect.getByteMask2:()[B
            putstatic sun.io.ByteToCharJISAutoDetect.maskTable2:[B
        11: .line 62
            return
        end local 0 // sun.io.ByteToCharJISAutoDetect this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   12     0  this  Lsun/io/ByteToCharJISAutoDetect;

  public int flush(char[], int, int);
    descriptor: ([CII)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // sun.io.ByteToCharJISAutoDetect this
        start local 1 // char[] output
        start local 2 // int outStart
        start local 3 // int outEnd
         0: .line 67
            aload 0 /* this */
            iconst_0
            putfield sun.io.ByteToCharJISAutoDetect.badInputLength:I
         1: .line 68
            aload 0 /* this */
            getfield sun.io.ByteToCharJISAutoDetect.detectedConv:Lsun/io/ByteToCharConverter;
            ifnull 3
         2: .line 69
            aload 0 /* this */
            getfield sun.io.ByteToCharJISAutoDetect.detectedConv:Lsun/io/ByteToCharConverter;
            aload 1 /* output */
            iload 2 /* outStart */
            iload 3 /* outEnd */
            invokevirtual sun.io.ByteToCharConverter.flush:([CII)I
            ireturn
         3: .line 71
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.io.ByteToCharJISAutoDetect.defaultConv:Lsun/io/ByteToCharConverter;
            aload 1 /* output */
            iload 2 /* outStart */
            iload 3 /* outEnd */
            invokevirtual sun.io.ByteToCharConverter.flush:([CII)I
            ireturn
        end local 3 // int outEnd
        end local 2 // int outStart
        end local 1 // char[] output
        end local 0 // sun.io.ByteToCharJISAutoDetect this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0      this  Lsun/io/ByteToCharJISAutoDetect;
            0    4     1    output  [C
            0    4     2  outStart  I
            0    4     3    outEnd  I
    Exceptions:
      throws sun.io.MalformedInputException, sun.io.ConversionBufferFullException
    MethodParameters:
          Name  Flags
      output    
      outStart  
      outEnd    

  public int convert(byte[], int, int, char[], int, int);
    descriptor: ([BII[CII)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=18, args_size=7
        start local 0 // sun.io.ByteToCharJISAutoDetect this
        start local 1 // byte[] input
        start local 2 // int inOff
        start local 3 // int inEnd
        start local 4 // char[] output
        start local 5 // int outOff
        start local 6 // int outEnd
         0: .line 83
            iconst_0
            istore 7 /* num */
        start local 7 // int num
         1: .line 85
            aload 0 /* this */
            iload 5 /* outOff */
            putfield sun.io.ByteToCharJISAutoDetect.charOff:I
         2: .line 86
            aload 0 /* this */
            iload 2 /* inOff */
            putfield sun.io.ByteToCharJISAutoDetect.byteOff:I
         3: .line 89
            aload 0 /* this */
            getfield sun.io.ByteToCharJISAutoDetect.detectedConv:Lsun/io/ByteToCharConverter;
            ifnonnull 72
         4: .line 90
            iconst_0
            istore 8 /* euckana */
        start local 8 // int euckana
         5: .line 91
            iconst_0
            istore 9 /* ss2count */
        start local 9 // int ss2count
         6: .line 92
            iconst_0
            istore 10 /* firstmask */
        start local 10 // int firstmask
         7: .line 93
            iconst_0
            istore 11 /* secondmask */
        start local 11 // int secondmask
         8: .line 95
            iconst_0
            istore 13 /* nonAsciiFound */
        start local 13 // boolean nonAsciiFound
         9: .line 97
            iload 2 /* inOff */
            istore 12 /* cnt */
        start local 12 // int cnt
        10: goto 54
        11: .line 98
      StackMap locals: sun.io.ByteToCharJISAutoDetect byte[] int int char[] int int int int int int int int int
      StackMap stack:
            iconst_0
            istore 10 /* firstmask */
        12: .line 99
            iconst_0
            istore 11 /* secondmask */
        13: .line 100
            aload 1 /* input */
            iload 12 /* cnt */
            baload
            sipush 255
            iand
            istore 14 /* byte1 */
        start local 14 // int byte1
        14: .line 104
            iload 14 /* byte1 */
            bipush 27
            if_icmpne 17
        15: .line 105
            aload 0 /* this */
            ldc "ISO2022JP"
            putfield sun.io.ByteToCharJISAutoDetect.convName:Ljava/lang/String;
        16: .line 106
            goto 55
        17: .line 110
      StackMap locals: int
      StackMap stack:
            iload 13 /* nonAsciiFound */
            ifne 24
            iload 14 /* byte1 */
            sipush 128
            if_icmpge 24
        18: .line 111
            aload 0 /* this */
            getfield sun.io.ByteToCharJISAutoDetect.charOff:I
            iload 6 /* outEnd */
            if_icmplt 20
        19: .line 112
            new sun.io.ConversionBufferFullException
            dup
            invokespecial sun.io.ConversionBufferFullException.<init>:()V
            athrow
        20: .line 113
      StackMap locals:
      StackMap stack:
            aload 4 /* output */
            aload 0 /* this */
            dup
            getfield sun.io.ByteToCharJISAutoDetect.charOff:I
            dup_x1
            iconst_1
            iadd
            putfield sun.io.ByteToCharJISAutoDetect.charOff:I
            iload 14 /* byte1 */
            i2c
            castore
        21: .line 114
            aload 0 /* this */
            dup
            getfield sun.io.ByteToCharJISAutoDetect.byteOff:I
            iconst_1
            iadd
            putfield sun.io.ByteToCharJISAutoDetect.byteOff:I
        22: .line 115
            iinc 7 /* num */ 1
        23: .line 116
            goto 53
        24: .line 120
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 13 /* nonAsciiFound */
        25: .line 122
            getstatic sun.io.ByteToCharJISAutoDetect.maskTable1:[B
            iload 14 /* byte1 */
            baload
            istore 10 /* firstmask */
        26: .line 123
            iload 14 /* byte1 */
            sipush 142
            if_icmpne 28
        27: .line 124
            iinc 9 /* ss2count */ 1
        28: .line 126
      StackMap locals:
      StackMap stack:
            iload 10 /* firstmask */
            ifeq 53
        29: .line 127
            iload 12 /* cnt */
            iconst_1
            iadd
            iload 3 /* inEnd */
            if_icmpge 50
        30: .line 128
            aload 1 /* input */
            iinc 12 /* cnt */ 1
            iload 12 /* cnt */
            baload
            sipush 255
            iand
            istore 15 /* byte2 */
        start local 15 // int byte2
        31: .line 129
            getstatic sun.io.ByteToCharJISAutoDetect.maskTable2:[B
            iload 15 /* byte2 */
            baload
            istore 11 /* secondmask */
        32: .line 130
            iload 10 /* firstmask */
            iload 11 /* secondmask */
            iand
            istore 16 /* mask */
        start local 16 // int mask
        33: .line 131
            iload 16 /* mask */
            iconst_1
            if_icmpne 36
        34: .line 132
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.io.ByteToCharJISAutoDetect.EUCJPName:Ljava/lang/String;
            putfield sun.io.ByteToCharJISAutoDetect.convName:Ljava/lang/String;
        35: .line 133
            goto 55
        36: .line 135
      StackMap locals: int int
      StackMap stack:
            iload 16 /* mask */
            iconst_2
            if_icmpeq 38
            iload 16 /* mask */
            iconst_4
            if_icmpeq 38
        37: .line 136
            iload 10 /* firstmask */
            invokestatic sun.nio.cs.ext.JISAutoDetect.canBeSJIS1B:(I)Z
            ifeq 40
            iload 11 /* secondmask */
            ifne 40
        38: .line 137
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.io.ByteToCharJISAutoDetect.SJISName:Ljava/lang/String;
            putfield sun.io.ByteToCharJISAutoDetect.convName:Ljava/lang/String;
        39: .line 138
            goto 55
        40: .line 148
      StackMap locals:
      StackMap stack:
            iload 14 /* byte1 */
            sipush 143
            if_icmpne 47
            iload 11 /* secondmask */
            invokestatic sun.nio.cs.ext.JISAutoDetect.canBeEUCJP:(I)Z
            ifeq 47
        41: .line 149
            iload 12 /* cnt */
            iconst_1
            iadd
            iload 3 /* inEnd */
            if_icmpge 46
        42: .line 150
            aload 1 /* input */
            iload 12 /* cnt */
            iconst_1
            iadd
            baload
            sipush 255
            iand
            istore 17 /* nextbyte */
        start local 17 // int nextbyte
        43: .line 151
            getstatic sun.io.ByteToCharJISAutoDetect.maskTable2:[B
            iload 17 /* nextbyte */
            baload
            invokestatic sun.nio.cs.ext.JISAutoDetect.canBeEUCJP:(I)Z
            ifne 47
        44: .line 152
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.io.ByteToCharJISAutoDetect.SJISName:Ljava/lang/String;
            putfield sun.io.ByteToCharJISAutoDetect.convName:Ljava/lang/String;
        end local 17 // int nextbyte
        45: .line 153
            goto 47
        46: .line 154
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.io.ByteToCharJISAutoDetect.SJISName:Ljava/lang/String;
            putfield sun.io.ByteToCharJISAutoDetect.convName:Ljava/lang/String;
        47: .line 156
      StackMap locals:
      StackMap stack:
            iload 10 /* firstmask */
            iload 11 /* secondmask */
            invokestatic sun.nio.cs.ext.JISAutoDetect.canBeEUCKana:(II)Z
            ifeq 53
        48: .line 157
            iinc 8 /* euckana */ 1
        end local 16 // int mask
        49: .line 158
            goto 53
        end local 15 // int byte2
        50: .line 159
      StackMap locals:
      StackMap stack:
            iload 10 /* firstmask */
            iconst_4
            iand
            ifeq 53
        51: .line 160
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.io.ByteToCharJISAutoDetect.SJISName:Ljava/lang/String;
            putfield sun.io.ByteToCharJISAutoDetect.convName:Ljava/lang/String;
        52: .line 161
            goto 55
        end local 14 // int byte1
        53: .line 97
      StackMap locals:
      StackMap stack:
            iinc 12 /* cnt */ 1
      StackMap locals:
      StackMap stack:
        54: iload 12 /* cnt */
            iload 3 /* inEnd */
            if_icmplt 11
        55: .line 167
      StackMap locals:
      StackMap stack:
            iload 13 /* nonAsciiFound */
            ifeq 59
            aload 0 /* this */
            getfield sun.io.ByteToCharJISAutoDetect.convName:Ljava/lang/String;
            ifnonnull 59
        56: .line 168
            iload 8 /* euckana */
            iconst_1
            if_icmpgt 57
            iload 9 /* ss2count */
            iconst_1
            if_icmple 58
        57: .line 169
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.io.ByteToCharJISAutoDetect.EUCJPName:Ljava/lang/String;
            putfield sun.io.ByteToCharJISAutoDetect.convName:Ljava/lang/String;
            goto 59
        58: .line 171
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.io.ByteToCharJISAutoDetect.SJISName:Ljava/lang/String;
            putfield sun.io.ByteToCharJISAutoDetect.convName:Ljava/lang/String;
        59: .line 174
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.io.ByteToCharJISAutoDetect.convName:Ljava/lang/String;
            ifnull 72
        60: .line 176
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.io.ByteToCharJISAutoDetect.convName:Ljava/lang/String;
            invokestatic sun.io.ByteToCharConverter.getConverter:(Ljava/lang/String;)Lsun/io/ByteToCharConverter;
            putfield sun.io.ByteToCharJISAutoDetect.detectedConv:Lsun/io/ByteToCharConverter;
        61: .line 177
            aload 0 /* this */
            getfield sun.io.ByteToCharJISAutoDetect.detectedConv:Lsun/io/ByteToCharConverter;
            aload 0 /* this */
            getfield sun.io.ByteToCharJISAutoDetect.subChars:[C
            putfield sun.io.ByteToCharConverter.subChars:[C
        62: .line 178
            aload 0 /* this */
            getfield sun.io.ByteToCharJISAutoDetect.detectedConv:Lsun/io/ByteToCharConverter;
            aload 0 /* this */
            getfield sun.io.ByteToCharJISAutoDetect.subMode:Z
            putfield sun.io.ByteToCharConverter.subMode:Z
        63: .line 179
            goto 72
      StackMap locals:
      StackMap stack: java.io.UnsupportedEncodingException
        64: pop
        65: .line 180
            aload 0 /* this */
            aconst_null
            putfield sun.io.ByteToCharJISAutoDetect.detectedConv:Lsun/io/ByteToCharConverter;
        66: .line 181
            aload 0 /* this */
            aconst_null
            putfield sun.io.ByteToCharJISAutoDetect.convName:Ljava/lang/String;
        end local 13 // boolean nonAsciiFound
        end local 12 // int cnt
        end local 11 // int secondmask
        end local 10 // int firstmask
        end local 9 // int ss2count
        end local 8 // int euckana
        67: .line 185
            goto 72
      StackMap locals: sun.io.ByteToCharJISAutoDetect byte[] int int char[] int int int
      StackMap stack: sun.io.ConversionBufferFullException
        68: astore 8 /* bufferFullException */
        start local 8 // sun.io.ConversionBufferFullException bufferFullException
        69: .line 186
            aload 8 /* bufferFullException */
            athrow
        end local 8 // sun.io.ConversionBufferFullException bufferFullException
        70: .line 187
      StackMap locals:
      StackMap stack: java.lang.Exception
            pop
        71: .line 190
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.io.ByteToCharJISAutoDetect.defaultConv:Lsun/io/ByteToCharConverter;
            putfield sun.io.ByteToCharJISAutoDetect.detectedConv:Lsun/io/ByteToCharConverter;
        72: .line 194
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.io.ByteToCharJISAutoDetect.byteOff:I
            iload 3 /* inEnd */
            if_icmpne 74
        73: .line 195
            iload 7 /* num */
            ireturn
        74: .line 198
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.io.ByteToCharJISAutoDetect.detectedConv:Lsun/io/ByteToCharConverter;
            ifnull 88
        75: .line 200
            iload 7 /* num */
            aload 0 /* this */
            getfield sun.io.ByteToCharJISAutoDetect.detectedConv:Lsun/io/ByteToCharConverter;
            aload 1 /* input */
            iload 2 /* inOff */
            iload 7 /* num */
            iadd
            iload 3 /* inEnd */
        76: .line 201
            aload 4 /* output */
            iload 5 /* outOff */
            iload 7 /* num */
            iadd
            iload 6 /* outEnd */
        77: .line 200
            invokevirtual sun.io.ByteToCharConverter.convert:([BII[CII)I
            iadd
            istore 7 /* num */
        78: .line 202
            goto 84
      StackMap locals:
      StackMap stack: java.lang.Throwable
        79: astore 8
        80: .line 203
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.io.ByteToCharJISAutoDetect.detectedConv:Lsun/io/ByteToCharConverter;
            invokevirtual sun.io.ByteToCharConverter.nextCharIndex:()I
            putfield sun.io.ByteToCharJISAutoDetect.charOff:I
        81: .line 204
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.io.ByteToCharJISAutoDetect.detectedConv:Lsun/io/ByteToCharConverter;
            invokevirtual sun.io.ByteToCharConverter.nextByteIndex:()I
            putfield sun.io.ByteToCharJISAutoDetect.byteOff:I
        82: .line 205
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.io.ByteToCharJISAutoDetect.detectedConv:Lsun/io/ByteToCharConverter;
            getfield sun.io.ByteToCharConverter.badInputLength:I
            putfield sun.io.ByteToCharJISAutoDetect.badInputLength:I
        83: .line 206
            aload 8
            athrow
        84: .line 203
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.io.ByteToCharJISAutoDetect.detectedConv:Lsun/io/ByteToCharConverter;
            invokevirtual sun.io.ByteToCharConverter.nextCharIndex:()I
            putfield sun.io.ByteToCharJISAutoDetect.charOff:I
        85: .line 204
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.io.ByteToCharJISAutoDetect.detectedConv:Lsun/io/ByteToCharConverter;
            invokevirtual sun.io.ByteToCharConverter.nextByteIndex:()I
            putfield sun.io.ByteToCharJISAutoDetect.byteOff:I
        86: .line 205
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.io.ByteToCharJISAutoDetect.detectedConv:Lsun/io/ByteToCharConverter;
            getfield sun.io.ByteToCharConverter.badInputLength:I
            putfield sun.io.ByteToCharJISAutoDetect.badInputLength:I
        87: .line 207
            goto 100
        88: .line 209
      StackMap locals:
      StackMap stack:
            iload 7 /* num */
            aload 0 /* this */
            getfield sun.io.ByteToCharJISAutoDetect.defaultConv:Lsun/io/ByteToCharConverter;
            aload 1 /* input */
            iload 2 /* inOff */
            iload 7 /* num */
            iadd
            iload 3 /* inEnd */
        89: .line 210
            aload 4 /* output */
            iload 5 /* outOff */
            iload 7 /* num */
            iadd
            iload 6 /* outEnd */
        90: .line 209
            invokevirtual sun.io.ByteToCharConverter.convert:([BII[CII)I
            iadd
            istore 7 /* num */
        91: .line 211
            goto 97
      StackMap locals:
      StackMap stack: java.lang.Throwable
        92: astore 8
        93: .line 212
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.io.ByteToCharJISAutoDetect.defaultConv:Lsun/io/ByteToCharConverter;
            invokevirtual sun.io.ByteToCharConverter.nextCharIndex:()I
            putfield sun.io.ByteToCharJISAutoDetect.charOff:I
        94: .line 213
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.io.ByteToCharJISAutoDetect.defaultConv:Lsun/io/ByteToCharConverter;
            invokevirtual sun.io.ByteToCharConverter.nextByteIndex:()I
            putfield sun.io.ByteToCharJISAutoDetect.byteOff:I
        95: .line 214
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.io.ByteToCharJISAutoDetect.defaultConv:Lsun/io/ByteToCharConverter;
            getfield sun.io.ByteToCharConverter.badInputLength:I
            putfield sun.io.ByteToCharJISAutoDetect.badInputLength:I
        96: .line 215
            aload 8
            athrow
        97: .line 212
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.io.ByteToCharJISAutoDetect.defaultConv:Lsun/io/ByteToCharConverter;
            invokevirtual sun.io.ByteToCharConverter.nextCharIndex:()I
            putfield sun.io.ByteToCharJISAutoDetect.charOff:I
        98: .line 213
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.io.ByteToCharJISAutoDetect.defaultConv:Lsun/io/ByteToCharConverter;
            invokevirtual sun.io.ByteToCharConverter.nextByteIndex:()I
            putfield sun.io.ByteToCharJISAutoDetect.byteOff:I
        99: .line 214
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.io.ByteToCharJISAutoDetect.defaultConv:Lsun/io/ByteToCharConverter;
            getfield sun.io.ByteToCharConverter.badInputLength:I
            putfield sun.io.ByteToCharJISAutoDetect.badInputLength:I
       100: .line 217
      StackMap locals:
      StackMap stack:
            iload 7 /* num */
            ireturn
        end local 7 // int num
        end local 6 // int outEnd
        end local 5 // int outOff
        end local 4 // char[] output
        end local 3 // int inEnd
        end local 2 // int inOff
        end local 1 // byte[] input
        end local 0 // sun.io.ByteToCharJISAutoDetect this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0  101     0                 this  Lsun/io/ByteToCharJISAutoDetect;
            0  101     1                input  [B
            0  101     2                inOff  I
            0  101     3                inEnd  I
            0  101     4               output  [C
            0  101     5               outOff  I
            0  101     6               outEnd  I
            1  101     7                  num  I
            5   67     8              euckana  I
            6   67     9             ss2count  I
            7   67    10            firstmask  I
            8   67    11           secondmask  I
           10   67    12                  cnt  I
            9   67    13        nonAsciiFound  Z
           14   53    14                byte1  I
           31   50    15                byte2  I
           33   49    16                 mask  I
           43   45    17             nextbyte  I
           69   70     8  bufferFullException  Lsun/io/ConversionBufferFullException;
      Exception table:
        from    to  target  type
          60    63      64  Class java.io.UnsupportedEncodingException
           3    67      68  Class sun.io.ConversionBufferFullException
           3    67      70  Class java.lang.Exception
          75    79      79  any
          88    92      92  any
    Exceptions:
      throws sun.io.UnknownCharacterException, sun.io.MalformedInputException, sun.io.ConversionBufferFullException
    MethodParameters:
        Name  Flags
      input   
      inOff   
      inEnd   
      output  
      outOff  
      outEnd  

  public void reset();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // sun.io.ByteToCharJISAutoDetect this
         0: .line 221
            aload 0 /* this */
            getfield sun.io.ByteToCharJISAutoDetect.detectedConv:Lsun/io/ByteToCharConverter;
            ifnull 5
         1: .line 222
            aload 0 /* this */
            getfield sun.io.ByteToCharJISAutoDetect.detectedConv:Lsun/io/ByteToCharConverter;
            invokevirtual sun.io.ByteToCharConverter.reset:()V
         2: .line 223
            aload 0 /* this */
            aconst_null
            putfield sun.io.ByteToCharJISAutoDetect.detectedConv:Lsun/io/ByteToCharConverter;
         3: .line 224
            aload 0 /* this */
            aconst_null
            putfield sun.io.ByteToCharJISAutoDetect.convName:Ljava/lang/String;
         4: .line 225
            goto 6
         5: .line 226
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.io.ByteToCharJISAutoDetect.defaultConv:Lsun/io/ByteToCharConverter;
            invokevirtual sun.io.ByteToCharConverter.reset:()V
         6: .line 227
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            iconst_0
            dup_x1
            putfield sun.io.ByteToCharJISAutoDetect.byteOff:I
            putfield sun.io.ByteToCharJISAutoDetect.charOff:I
         7: .line 228
            return
        end local 0 // sun.io.ByteToCharJISAutoDetect this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Lsun/io/ByteToCharJISAutoDetect;

  public java.lang.String getCharacterEncoding();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.io.ByteToCharJISAutoDetect this
         0: .line 231
            ldc "JISAutoDetect"
            areturn
        end local 0 // sun.io.ByteToCharJISAutoDetect this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/io/ByteToCharJISAutoDetect;

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // sun.io.ByteToCharJISAutoDetect this
         0: .line 235
            aload 0 /* this */
            invokevirtual sun.io.ByteToCharJISAutoDetect.getCharacterEncoding:()Ljava/lang/String;
            astore 1 /* s */
        start local 1 // java.lang.String s
         1: .line 236
            aload 0 /* this */
            getfield sun.io.ByteToCharJISAutoDetect.detectedConv:Lsun/io/ByteToCharConverter;
            ifnull 4
         2: .line 237
            new java.lang.StringBuilder
            dup
            aload 1 /* s */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "["
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield sun.io.ByteToCharJISAutoDetect.detectedConv:Lsun/io/ByteToCharConverter;
            invokevirtual sun.io.ByteToCharConverter.getCharacterEncoding:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "]"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 1 /* s */
         3: .line 238
            goto 5
         4: .line 239
      StackMap locals: java.lang.String
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 1 /* s */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "[unknown]"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 1 /* s */
         5: .line 241
      StackMap locals:
      StackMap stack:
            aload 1 /* s */
            areturn
        end local 1 // java.lang.String s
        end local 0 // sun.io.ByteToCharJISAutoDetect this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lsun/io/ByteToCharJISAutoDetect;
            1    6     1     s  Ljava/lang/String;
}
SourceFile: "ByteToCharJISAutoDetect.java"