public class sun.jvm.hotspot.utilities.CStringUtilities
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: sun.jvm.hotspot.utilities.CStringUtilities
  super_class: java.lang.Object
{
  private static java.lang.String encoding;
    descriptor: Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 47
            ldc "file.encoding"
            ldc "US-ASCII"
            invokestatic java.lang.System.getProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            putstatic sun.jvm.hotspot.utilities.CStringUtilities.encoding:Ljava/lang/String;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.jvm.hotspot.utilities.CStringUtilities this
         0: .line 36
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // sun.jvm.hotspot.utilities.CStringUtilities this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/jvm/hotspot/utilities/CStringUtilities;

  public static int getStringLength(sun.jvm.hotspot.debugger.Address);
    descriptor: (Lsun/jvm/hotspot/debugger/Address;)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=2, args_size=1
        start local 0 // sun.jvm.hotspot.debugger.Address addr
         0: .line 40
            iconst_0
            istore 1 /* i */
        start local 1 // int i
         1: .line 41
            goto 3
         2: .line 42
      StackMap locals: int
      StackMap stack:
            iinc 1 /* i */ 1
         3: .line 41
      StackMap locals:
      StackMap stack:
            aload 0 /* addr */
            iload 1 /* i */
            i2l
            lconst_1
            iconst_0
            invokeinterface sun.jvm.hotspot.debugger.Address.getCIntegerAt:(JJZ)J
            lconst_0
            lcmp
            ifne 2
         4: .line 44
            iload 1 /* i */
            ireturn
        end local 1 // int i
        end local 0 // sun.jvm.hotspot.debugger.Address addr
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  addr  Lsun/jvm/hotspot/debugger/Address;
            1    5     1     i  I
    MethodParameters:
      Name  Flags
      addr  

  public static java.lang.String getString(sun.jvm.hotspot.debugger.Address);
    descriptor: (Lsun/jvm/hotspot/debugger/Address;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // sun.jvm.hotspot.debugger.Address addr
         0: .line 50
            aload 0 /* addr */
            getstatic sun.jvm.hotspot.utilities.CStringUtilities.encoding:Ljava/lang/String;
            invokestatic java.nio.charset.Charset.forName:(Ljava/lang/String;)Ljava/nio/charset/Charset;
            invokestatic sun.jvm.hotspot.utilities.CStringUtilities.getString:(Lsun/jvm/hotspot/debugger/Address;Ljava/nio/charset/Charset;)Ljava/lang/String;
            areturn
        end local 0 // sun.jvm.hotspot.debugger.Address addr
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  addr  Lsun/jvm/hotspot/debugger/Address;
    MethodParameters:
      Name  Flags
      addr  

  public static java.lang.String getString(sun.jvm.hotspot.debugger.Address, java.nio.charset.Charset);
    descriptor: (Lsun/jvm/hotspot/debugger/Address;Ljava/nio/charset/Charset;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=7, args_size=2
        start local 0 // sun.jvm.hotspot.debugger.Address addr
        start local 1 // java.nio.charset.Charset charset
         0: .line 58
            aload 0 /* addr */
            ifnonnull 2
         1: .line 59
            aconst_null
            areturn
         2: .line 62
      StackMap locals:
      StackMap stack:
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 2 /* data */
        start local 2 // java.util.List data
         3: .line 63
            iconst_0
            istore 3 /* val */
        start local 3 // byte val
         4: .line 64
            lconst_0
            lstore 4 /* i */
        start local 4 // long i
         5: .line 66
      StackMap locals: java.util.List int long
      StackMap stack:
            aload 0 /* addr */
            lload 4 /* i */
            lconst_1
            iconst_0
            invokeinterface sun.jvm.hotspot.debugger.Address.getCIntegerAt:(JJZ)J
            l2i
            i2b
            istore 3 /* val */
         6: .line 67
            iload 3 /* val */
            ifeq 8
         7: .line 68
            aload 2 /* data */
            iload 3 /* val */
            invokestatic java.lang.Byte.valueOf:(B)Ljava/lang/Byte;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         8: .line 70
      StackMap locals:
      StackMap stack:
            lload 4 /* i */
            lconst_1
            ladd
            lstore 4 /* i */
         9: .line 71
            iload 3 /* val */
            ifne 5
        10: .line 74
            aload 2 /* data */
            invokeinterface java.util.List.size:()I
            newarray 8
            astore 6 /* bytes */
        start local 6 // byte[] bytes
        11: .line 75
            lconst_0
            lstore 4 /* i */
            goto 14
        12: .line 76
      StackMap locals: byte[]
      StackMap stack:
            aload 6 /* bytes */
            lload 4 /* i */
            l2i
            aload 2 /* data */
            lload 4 /* i */
            l2i
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast java.lang.Byte
            invokevirtual java.lang.Byte.byteValue:()B
            bastore
        13: .line 75
            lload 4 /* i */
            lconst_1
            ladd
            lstore 4 /* i */
      StackMap locals:
      StackMap stack:
        14: lload 4 /* i */
            aload 2 /* data */
            invokeinterface java.util.List.size:()I
            i2l
            lcmp
            iflt 12
        15: .line 81
            new java.lang.String
            dup
            aload 6 /* bytes */
            aload 1 /* charset */
            invokespecial java.lang.String.<init>:([BLjava/nio/charset/Charset;)V
            areturn
        end local 6 // byte[] bytes
        end local 4 // long i
        end local 3 // byte val
        end local 2 // java.util.List data
        end local 1 // java.nio.charset.Charset charset
        end local 0 // sun.jvm.hotspot.debugger.Address addr
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   16     0     addr  Lsun/jvm/hotspot/debugger/Address;
            0   16     1  charset  Ljava/nio/charset/Charset;
            3   16     2     data  Ljava/util/List<Ljava/lang/Byte;>;
            4   16     3      val  B
            5   16     4        i  J
           11   16     6    bytes  [B
    MethodParameters:
         Name  Flags
      addr     
      charset  
}
SourceFile: "CStringUtilities.java"