public class sun.jvm.hotspot.tools.jcore.ByteCodeRewriter
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: sun.jvm.hotspot.tools.jcore.ByteCodeRewriter
  super_class: java.lang.Object
{
  private sun.jvm.hotspot.oops.Method method;
    descriptor: Lsun/jvm/hotspot/oops/Method;
    flags: (0x0002) ACC_PRIVATE

  private sun.jvm.hotspot.oops.ConstantPool cpool;
    descriptor: Lsun/jvm/hotspot/oops/ConstantPool;
    flags: (0x0002) ACC_PRIVATE

  private sun.jvm.hotspot.oops.ConstantPoolCache cpCache;
    descriptor: Lsun/jvm/hotspot/oops/ConstantPoolCache;
    flags: (0x0002) ACC_PRIVATE

  private byte[] code;
    descriptor: [B
    flags: (0x0002) ACC_PRIVATE

  private sun.jvm.hotspot.runtime.Bytes bytes;
    descriptor: Lsun/jvm/hotspot/runtime/Bytes;
    flags: (0x0002) ACC_PRIVATE

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

  public static final boolean DEBUG;
    descriptor: Z
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=1, args_size=0
         0: .line 51
            new sun.jvm.hotspot.tools.jcore.ByteCodeRewriter$1
            dup
            invokespecial sun.jvm.hotspot.tools.jcore.ByteCodeRewriter$1.<init>:()V
         1: .line 50
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            checkcast java.lang.String
            astore 0 /* debug */
        start local 0 // java.lang.String debug
         2: .line 57
            aload 0 /* debug */
            ifnull 3
            aload 0 /* debug */
            ldc "true"
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            goto 4
      StackMap locals: java.lang.String
      StackMap stack:
         3: iconst_0
      StackMap locals:
      StackMap stack: int
         4: putstatic sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.DEBUG:Z
        end local 0 // java.lang.String debug
         5: .line 58
            return
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            2    5     0  debug  Ljava/lang/String;

  protected void debugMessage(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // sun.jvm.hotspot.tools.jcore.ByteCodeRewriter this
        start local 1 // java.lang.String message
         0: .line 62
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            aload 1 /* message */
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
         1: .line 63
            return
        end local 1 // java.lang.String message
        end local 0 // sun.jvm.hotspot.tools.jcore.ByteCodeRewriter this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lsun/jvm/hotspot/tools/jcore/ByteCodeRewriter;
            0    2     1  message  Ljava/lang/String;
    MethodParameters:
         Name  Flags
      message  

  public void <init>(sun.jvm.hotspot.oops.Method, sun.jvm.hotspot.oops.ConstantPool, byte[]);
    descriptor: (Lsun/jvm/hotspot/oops/Method;Lsun/jvm/hotspot/oops/ConstantPool;[B)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=4
        start local 0 // sun.jvm.hotspot.tools.jcore.ByteCodeRewriter this
        start local 1 // sun.jvm.hotspot.oops.Method method
        start local 2 // sun.jvm.hotspot.oops.ConstantPool cpool
        start local 3 // byte[] code
         0: .line 65
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 66
            aload 0 /* this */
            aload 1 /* method */
            putfield sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.method:Lsun/jvm/hotspot/oops/Method;
         2: .line 67
            aload 0 /* this */
            aload 2 /* cpool */
            putfield sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.cpool:Lsun/jvm/hotspot/oops/ConstantPool;
         3: .line 68
            aload 0 /* this */
            aload 2 /* cpool */
            invokevirtual sun.jvm.hotspot.oops.ConstantPool.getCache:()Lsun/jvm/hotspot/oops/ConstantPoolCache;
            putfield sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.cpCache:Lsun/jvm/hotspot/oops/ConstantPoolCache;
         4: .line 69
            aload 0 /* this */
            aload 3 /* code */
            putfield sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.code:[B
         5: .line 70
            aload 0 /* this */
            invokestatic sun.jvm.hotspot.runtime.VM.getVM:()Lsun/jvm/hotspot/runtime/VM;
            invokevirtual sun.jvm.hotspot.runtime.VM.getBytes:()Lsun/jvm/hotspot/runtime/Bytes;
            putfield sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.bytes:Lsun/jvm/hotspot/runtime/Bytes;
         6: .line 72
            return
        end local 3 // byte[] code
        end local 2 // sun.jvm.hotspot.oops.ConstantPool cpool
        end local 1 // sun.jvm.hotspot.oops.Method method
        end local 0 // sun.jvm.hotspot.tools.jcore.ByteCodeRewriter this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    7     0    this  Lsun/jvm/hotspot/tools/jcore/ByteCodeRewriter;
            0    7     1  method  Lsun/jvm/hotspot/oops/Method;
            0    7     2   cpool  Lsun/jvm/hotspot/oops/ConstantPool;
            0    7     3    code  [B
    MethodParameters:
        Name  Flags
      method  
      cpool   
      code    

  protected short getConstantPoolIndexFromRefMap(int, int);
    descriptor: (II)S
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=5, args_size=3
        start local 0 // sun.jvm.hotspot.tools.jcore.ByteCodeRewriter this
        start local 1 // int rawcode
        start local 2 // int bci
         0: .line 76
            iload 1 /* rawcode */
            invokestatic sun.jvm.hotspot.interpreter.Bytecodes.format:(I)Ljava/lang/String;
            astore 4 /* fmt */
        start local 4 // java.lang.String fmt
         1: .line 77
            aload 4 /* fmt */
            invokevirtual java.lang.String.length:()I
            tableswitch { // 2 - 3
                    2: 2
                    3: 4
              default: 6
          }
         2: .line 78
      StackMap locals: sun.jvm.hotspot.tools.jcore.ByteCodeRewriter int int top java.lang.String
      StackMap stack:
            sipush 255
            aload 0 /* this */
            getfield sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.method:Lsun/jvm/hotspot/oops/Method;
            iload 2 /* bci */
            invokevirtual sun.jvm.hotspot.oops.Method.getBytecodeByteArg:(I)B
            iand
            istore 3 /* refIndex */
        start local 3 // int refIndex
         3: goto 7
        end local 3 // int refIndex
         4: .line 79
      StackMap locals:
      StackMap stack:
            ldc 65535
            aload 0 /* this */
            getfield sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.bytes:Lsun/jvm/hotspot/runtime/Bytes;
            aload 0 /* this */
            getfield sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.method:Lsun/jvm/hotspot/oops/Method;
            iload 2 /* bci */
            invokevirtual sun.jvm.hotspot.oops.Method.getBytecodeShortArg:(I)S
            invokevirtual sun.jvm.hotspot.runtime.Bytes.swapShort:(S)S
            iand
            istore 3 /* refIndex */
        start local 3 // int refIndex
         5: goto 7
        end local 3 // int refIndex
         6: .line 80
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            invokespecial java.lang.IllegalArgumentException.<init>:()V
            athrow
        start local 3 // int refIndex
         7: .line 83
      StackMap locals: sun.jvm.hotspot.tools.jcore.ByteCodeRewriter int int int java.lang.String
      StackMap stack:
            aload 0 /* this */
            getfield sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.cpool:Lsun/jvm/hotspot/oops/ConstantPool;
            iload 3 /* refIndex */
            invokevirtual sun.jvm.hotspot.oops.ConstantPool.objectToCPIndex:(I)I
            i2s
            ireturn
        end local 4 // java.lang.String fmt
        end local 3 // int refIndex
        end local 2 // int bci
        end local 1 // int rawcode
        end local 0 // sun.jvm.hotspot.tools.jcore.ByteCodeRewriter this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    8     0      this  Lsun/jvm/hotspot/tools/jcore/ByteCodeRewriter;
            0    8     1   rawcode  I
            0    8     2       bci  I
            3    4     3  refIndex  I
            5    6     3  refIndex  I
            7    8     3  refIndex  I
            1    8     4       fmt  Ljava/lang/String;
    MethodParameters:
         Name  Flags
      rawcode  
      bci      

  protected short getConstantPoolIndex(int, int);
    descriptor: (II)S
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=5, args_size=3
        start local 0 // sun.jvm.hotspot.tools.jcore.ByteCodeRewriter this
        start local 1 // int rawcode
        start local 2 // int bci
         0: .line 88
            iload 1 /* rawcode */
            invokestatic sun.jvm.hotspot.interpreter.Bytecodes.format:(I)Ljava/lang/String;
            astore 3 /* fmt */
        start local 3 // java.lang.String fmt
         1: .line 90
            aload 3 /* fmt */
            invokevirtual java.lang.String.length:()I
            tableswitch { // 2 - 5
                    2: 2
                    3: 4
                    4: 11
                    5: 6
              default: 11
          }
         2: .line 91
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* this */
            getfield sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.method:Lsun/jvm/hotspot/oops/Method;
            iload 2 /* bci */
            invokevirtual sun.jvm.hotspot.oops.Method.getBytecodeByteArg:(I)B
            istore 4 /* cpCacheIndex */
        start local 4 // int cpCacheIndex
         3: goto 12
        end local 4 // int cpCacheIndex
         4: .line 92
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.method:Lsun/jvm/hotspot/oops/Method;
            iload 2 /* bci */
            invokevirtual sun.jvm.hotspot.oops.Method.getBytecodeShortArg:(I)S
            istore 4 /* cpCacheIndex */
        start local 4 // int cpCacheIndex
         5: goto 12
        end local 4 // int cpCacheIndex
         6: .line 94
      StackMap locals:
      StackMap stack:
            aload 3 /* fmt */
            ldc "__"
            invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
            iflt 9
         7: .line 95
            aload 0 /* this */
            getfield sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.method:Lsun/jvm/hotspot/oops/Method;
            iload 2 /* bci */
            invokevirtual sun.jvm.hotspot.oops.Method.getBytecodeShortArg:(I)S
            istore 4 /* cpCacheIndex */
        start local 4 // int cpCacheIndex
         8: goto 12
        end local 4 // int cpCacheIndex
         9: .line 97
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.method:Lsun/jvm/hotspot/oops/Method;
            iload 2 /* bci */
            invokevirtual sun.jvm.hotspot.oops.Method.getBytecodeIntArg:(I)I
            istore 4 /* cpCacheIndex */
        start local 4 // int cpCacheIndex
        10: .line 98
            goto 12
        end local 4 // int cpCacheIndex
        11: .line 99
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            invokespecial java.lang.IllegalArgumentException.<init>:()V
            athrow
        start local 4 // int cpCacheIndex
        12: .line 102
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.cpCache:Lsun/jvm/hotspot/oops/ConstantPoolCache;
            ifnonnull 14
        13: .line 103
            iload 4 /* cpCacheIndex */
            i2s
            ireturn
        14: .line 104
      StackMap locals:
      StackMap stack:
            aload 3 /* fmt */
            ldc "JJJJ"
            invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
            iflt 18
        15: .line 106
            iload 4 /* cpCacheIndex */
            iconst_m1
            ixor
            istore 4 /* cpCacheIndex */
        16: .line 107
            aload 0 /* this */
            getfield sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.bytes:Lsun/jvm/hotspot/runtime/Bytes;
            iload 4 /* cpCacheIndex */
            invokevirtual sun.jvm.hotspot.runtime.Bytes.swapInt:(I)I
            istore 4 /* cpCacheIndex */
        17: .line 108
            aload 0 /* this */
            getfield sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.cpCache:Lsun/jvm/hotspot/oops/ConstantPoolCache;
            iload 4 /* cpCacheIndex */
            invokevirtual sun.jvm.hotspot.oops.ConstantPoolCache.getEntryAt:(I)Lsun/jvm/hotspot/oops/ConstantPoolCacheEntry;
            invokevirtual sun.jvm.hotspot.oops.ConstantPoolCacheEntry.getConstantPoolIndex:()I
            i2s
            ireturn
        18: .line 109
      StackMap locals:
      StackMap stack:
            aload 3 /* fmt */
            ldc "JJ"
            invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
            iflt 20
        19: .line 111
            aload 0 /* this */
            getfield sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.cpCache:Lsun/jvm/hotspot/oops/ConstantPoolCache;
            ldc 65535
            aload 0 /* this */
            getfield sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.bytes:Lsun/jvm/hotspot/runtime/Bytes;
            iload 4 /* cpCacheIndex */
            i2s
            invokevirtual sun.jvm.hotspot.runtime.Bytes.swapShort:(S)S
            iand
            invokevirtual sun.jvm.hotspot.oops.ConstantPoolCache.getEntryAt:(I)Lsun/jvm/hotspot/oops/ConstantPoolCacheEntry;
            invokevirtual sun.jvm.hotspot.oops.ConstantPoolCacheEntry.getConstantPoolIndex:()I
            i2s
            ireturn
        20: .line 112
      StackMap locals:
      StackMap stack:
            aload 3 /* fmt */
            ldc "j"
            invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
            iflt 22
        21: .line 114
            aload 0 /* this */
            getfield sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.cpCache:Lsun/jvm/hotspot/oops/ConstantPoolCache;
            sipush 255
            iload 4 /* cpCacheIndex */
            iand
            invokevirtual sun.jvm.hotspot.oops.ConstantPoolCache.getEntryAt:(I)Lsun/jvm/hotspot/oops/ConstantPoolCacheEntry;
            invokevirtual sun.jvm.hotspot.oops.ConstantPoolCacheEntry.getConstantPoolIndex:()I
            i2s
            ireturn
        22: .line 116
      StackMap locals:
      StackMap stack:
            iload 4 /* cpCacheIndex */
            i2s
            ireturn
        end local 4 // int cpCacheIndex
        end local 3 // java.lang.String fmt
        end local 2 // int bci
        end local 1 // int rawcode
        end local 0 // sun.jvm.hotspot.tools.jcore.ByteCodeRewriter this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   23     0          this  Lsun/jvm/hotspot/tools/jcore/ByteCodeRewriter;
            0   23     1       rawcode  I
            0   23     2           bci  I
            1   23     3           fmt  Ljava/lang/String;
            3    4     4  cpCacheIndex  I
            5    6     4  cpCacheIndex  I
            8    9     4  cpCacheIndex  I
           10   11     4  cpCacheIndex  I
           12   23     4  cpCacheIndex  I
    MethodParameters:
         Name  Flags
      rawcode  
      bci      

  private static void writeShort(byte[], int, short);
    descriptor: ([BIS)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // byte[] buf
        start local 1 // int index
        start local 2 // short value
         0: .line 121
            aload 0 /* buf */
            iload 1 /* index */
            iload 2 /* value */
            bipush 8
            ishr
            sipush 255
            iand
            i2b
            bastore
         1: .line 122
            aload 0 /* buf */
            iload 1 /* index */
            iconst_1
            iadd
            iload 2 /* value */
            sipush 255
            iand
            i2b
            bastore
         2: .line 123
            return
        end local 2 // short value
        end local 1 // int index
        end local 0 // byte[] buf
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0    buf  [B
            0    3     1  index  I
            0    3     2  value  S
    MethodParameters:
       Name  Flags
      buf    
      index  
      value  

  public void rewrite();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=8, args_size=1
        start local 0 // sun.jvm.hotspot.tools.jcore.ByteCodeRewriter this
         0: .line 126
            iconst_m1
            istore 1 /* bytecode */
        start local 1 // int bytecode
         1: .line 127
            iconst_m1
            istore 2 /* hotspotcode */
        start local 2 // int hotspotcode
         2: .line 128
            iconst_0
            istore 3 /* len */
        start local 3 // int len
         3: .line 130
            getstatic sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.DEBUG:Z
            ifeq 9
         4: .line 131
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            getfield sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.method:Lsun/jvm/hotspot/oops/Method;
            invokevirtual sun.jvm.hotspot.oops.Method.getMethodHolder:()Lsun/jvm/hotspot/oops/InstanceKlass;
            invokevirtual sun.jvm.hotspot.oops.InstanceKlass.getName:()Lsun/jvm/hotspot/oops/Symbol;
            invokevirtual sun.jvm.hotspot.oops.Symbol.asString:()Ljava/lang/String;
            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;
         5: .line 132
            aload 0 /* this */
            getfield sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.method:Lsun/jvm/hotspot/oops/Method;
            invokevirtual sun.jvm.hotspot.oops.Method.getName:()Lsun/jvm/hotspot/oops/Symbol;
            invokevirtual sun.jvm.hotspot.oops.Symbol.asString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         6: .line 133
            aload 0 /* this */
            getfield sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.method:Lsun/jvm/hotspot/oops/Method;
            invokevirtual sun.jvm.hotspot.oops.Method.getSignature:()Lsun/jvm/hotspot/oops/Symbol;
            invokevirtual sun.jvm.hotspot.oops.Symbol.asString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         7: .line 131
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 4 /* msg */
        start local 4 // java.lang.String msg
         8: .line 134
            aload 0 /* this */
            aload 4 /* msg */
            invokevirtual sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.debugMessage:(Ljava/lang/String;)V
        end local 4 // java.lang.String msg
         9: .line 136
      StackMap locals: int int int
      StackMap stack:
            iconst_0
            istore 4 /* bci */
        start local 4 // int bci
        10: goto 57
        11: .line 137
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.method:Lsun/jvm/hotspot/oops/Method;
            iload 4 /* bci */
            invokestatic sun.jvm.hotspot.interpreter.Bytecodes.codeAt:(Lsun/jvm/hotspot/oops/Method;I)I
            istore 2 /* hotspotcode */
        12: .line 138
            iload 2 /* hotspotcode */
            invokestatic sun.jvm.hotspot.interpreter.Bytecodes.javaCode:(I)I
            istore 1 /* bytecode */
        13: .line 140
            getstatic sun.jvm.hotspot.utilities.Assert.ASSERTS_ENABLED:Z
            ifeq 20
        14: .line 141
            sipush 255
            aload 0 /* this */
            getfield sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.code:[B
            iload 4 /* bci */
            baload
            iand
            istore 5 /* code_from_buffer */
        start local 5 // int code_from_buffer
        15: .line 142
            iload 5 /* code_from_buffer */
            iload 2 /* hotspotcode */
            if_icmpeq 17
        16: .line 143
            iload 5 /* code_from_buffer */
            sipush 202
            if_icmpeq 17
            iconst_0
            goto 18
      StackMap locals: int
      StackMap stack:
        17: iconst_1
        18: .line 144
      StackMap locals:
      StackMap stack: int
            ldc "Unexpected bytecode found in method bytecode buffer!"
        19: .line 142
            invokestatic sun.jvm.hotspot.utilities.Assert.that:(ZLjava/lang/String;)V
        end local 5 // int code_from_buffer
        20: .line 148
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.code:[B
            iload 4 /* bci */
            sipush 255
            iload 1 /* bytecode */
            iand
            i2b
            bastore
        21: .line 150
            iconst_0
            istore 5 /* cpoolIndex */
        start local 5 // short cpoolIndex
        22: .line 151
            iload 1 /* bytecode */
            lookupswitch { // 11
                   18: 34
                   19: 30
                  178: 23
                  179: 23
                  180: 23
                  181: 23
                  182: 23
                  183: 23
                  184: 23
                  185: 23
                  186: 26
              default: 37
          }
        23: .line 161
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            iload 2 /* hotspotcode */
            iload 4 /* bci */
            iconst_1
            iadd
            invokevirtual sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.getConstantPoolIndex:(II)S
            istore 5 /* cpoolIndex */
        24: .line 162
            aload 0 /* this */
            getfield sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.code:[B
            iload 4 /* bci */
            iconst_1
            iadd
            iload 5 /* cpoolIndex */
            invokestatic sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.writeShort:([BIS)V
        25: .line 163
            goto 37
        26: .line 167
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 2 /* hotspotcode */
            iload 4 /* bci */
            iconst_1
            iadd
            invokevirtual sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.getConstantPoolIndex:(II)S
            istore 5 /* cpoolIndex */
        27: .line 168
            aload 0 /* this */
            getfield sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.code:[B
            iload 4 /* bci */
            iconst_1
            iadd
            iload 5 /* cpoolIndex */
            invokestatic sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.writeShort:([BIS)V
        28: .line 169
            aload 0 /* this */
            getfield sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.code:[B
            iload 4 /* bci */
            iconst_3
            iadd
            iconst_0
            invokestatic sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.writeShort:([BIS)V
        29: .line 170
            goto 37
        30: .line 173
      StackMap locals:
      StackMap stack:
            iload 2 /* hotspotcode */
            iload 1 /* bytecode */
            if_icmpeq 37
        31: .line 175
            aload 0 /* this */
            iload 2 /* hotspotcode */
            iload 4 /* bci */
            iconst_1
            iadd
            invokevirtual sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.getConstantPoolIndexFromRefMap:(II)S
            istore 5 /* cpoolIndex */
        32: .line 176
            aload 0 /* this */
            getfield sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.code:[B
            iload 4 /* bci */
            iconst_1
            iadd
            iload 5 /* cpoolIndex */
            invokestatic sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.writeShort:([BIS)V
        33: .line 178
            goto 37
        34: .line 180
      StackMap locals:
      StackMap stack:
            iload 2 /* hotspotcode */
            iload 1 /* bytecode */
            if_icmpeq 37
        35: .line 182
            aload 0 /* this */
            iload 2 /* hotspotcode */
            iload 4 /* bci */
            iconst_1
            iadd
            invokevirtual sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.getConstantPoolIndexFromRefMap:(II)S
            istore 5 /* cpoolIndex */
        36: .line 183
            aload 0 /* this */
            getfield sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.code:[B
            iload 4 /* bci */
            iconst_1
            iadd
            iload 5 /* cpoolIndex */
            i2b
            bastore
        37: .line 188
      StackMap locals:
      StackMap stack:
            iload 1 /* bytecode */
            invokestatic sun.jvm.hotspot.interpreter.Bytecodes.lengthFor:(I)I
            istore 3 /* len */
        38: .line 189
            iload 3 /* len */
            ifgt 39
            aload 0 /* this */
            getfield sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.method:Lsun/jvm/hotspot/oops/Method;
            iload 4 /* bci */
            invokestatic sun.jvm.hotspot.interpreter.Bytecodes.lengthAt:(Lsun/jvm/hotspot/oops/Method;I)I
            istore 3 /* len */
        39: .line 191
      StackMap locals:
      StackMap stack:
            getstatic sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.DEBUG:Z
            ifeq 56
        40: .line 192
            ldc ""
            astore 6 /* operand */
        start local 6 // java.lang.String operand
        41: .line 193
            iload 3 /* len */
            tableswitch { // 2 - 5
                    2: 42
                    3: 44
                    4: 50
                    5: 49
              default: 50
          }
        42: .line 195
      StackMap locals: java.lang.String
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 6 /* operand */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.code:[B
            iload 4 /* bci */
            iconst_1
            iadd
            baload
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 6 /* operand */
        43: .line 196
            goto 50
        44: .line 198
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 6 /* operand */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 5 /* cpoolIndex */
            ifeq 45
            iload 5 /* cpoolIndex */
            goto 46
        45: .line 199
      StackMap locals:
      StackMap stack: java.lang.StringBuilder
            aload 0 /* this */
            getfield sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.method:Lsun/jvm/hotspot/oops/Method;
            iload 4 /* bci */
            iconst_1
            iadd
            invokevirtual sun.jvm.hotspot.oops.Method.getBytecodeShortArg:(I)S
      StackMap locals: sun.jvm.hotspot.tools.jcore.ByteCodeRewriter int int int int int java.lang.String
      StackMap stack: java.lang.StringBuilder int
        46: invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
        47: .line 198
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 6 /* operand */
        48: .line 200
            goto 50
        49: .line 202
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 6 /* operand */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.method:Lsun/jvm/hotspot/oops/Method;
            iload 4 /* bci */
            iconst_1
            iadd
            invokevirtual sun.jvm.hotspot.oops.Method.getBytecodeIntArg:(I)I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 6 /* operand */
        50: .line 211
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            ldc "\t\t"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 4 /* bci */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc " "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 1 /* bytecode */
            invokestatic sun.jvm.hotspot.interpreter.Bytecodes.name:(I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 7 /* message */
        start local 7 // java.lang.String message
        51: .line 212
            iload 2 /* hotspotcode */
            iload 1 /* bytecode */
            if_icmpeq 53
        52: .line 213
            new java.lang.StringBuilder
            dup
            aload 7 /* message */
            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;
            iload 2 /* hotspotcode */
            invokestatic sun.jvm.hotspot.interpreter.Bytecodes.name:(I)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 7 /* message */
        53: .line 214
      StackMap locals: java.lang.String
      StackMap stack:
            aload 6 /* operand */
            ldc ""
            if_acmpeq 55
        54: .line 215
            new java.lang.StringBuilder
            dup
            aload 7 /* message */
            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 6 /* operand */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 7 /* message */
        55: .line 217
      StackMap locals:
      StackMap stack:
            getstatic sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.DEBUG:Z
            ifeq 56
            aload 0 /* this */
            aload 7 /* message */
            invokevirtual sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.debugMessage:(Ljava/lang/String;)V
        end local 7 // java.lang.String message
        end local 6 // java.lang.String operand
        56: .line 220
      StackMap locals:
      StackMap stack:
            iload 4 /* bci */
            iload 3 /* len */
            iadd
            istore 4 /* bci */
        end local 5 // short cpoolIndex
        57: .line 136
      StackMap locals:
      StackMap stack:
            iload 4 /* bci */
            aload 0 /* this */
            getfield sun.jvm.hotspot.tools.jcore.ByteCodeRewriter.code:[B
            arraylength
            if_icmplt 11
        end local 4 // int bci
        58: .line 222
            return
        end local 3 // int len
        end local 2 // int hotspotcode
        end local 1 // int bytecode
        end local 0 // sun.jvm.hotspot.tools.jcore.ByteCodeRewriter this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   59     0              this  Lsun/jvm/hotspot/tools/jcore/ByteCodeRewriter;
            1   59     1          bytecode  I
            2   59     2       hotspotcode  I
            3   59     3               len  I
            8    9     4               msg  Ljava/lang/String;
           10   58     4               bci  I
           15   20     5  code_from_buffer  I
           22   57     5        cpoolIndex  S
           41   56     6           operand  Ljava/lang/String;
           51   56     7           message  Ljava/lang/String;
}
SourceFile: "ByteCodeRewriter.java"
NestMembers:
  sun.jvm.hotspot.tools.jcore.ByteCodeRewriter$1
InnerClasses:
  sun.jvm.hotspot.tools.jcore.ByteCodeRewriter$1