final class jdk.jfr.internal.instrument.SocketChannelImplInstrumentor
  minor version: 0
  major version: 59
  flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
  this_class: jdk.jfr.internal.instrument.SocketChannelImplInstrumentor
  super_class: java.lang.Object
{
  private java.net.InetSocketAddress remoteAddress;
    descriptor: Ljava/net/InetSocketAddress;
    flags: (0x0002) ACC_PRIVATE

  private void <init>();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.jfr.internal.instrument.SocketChannelImplInstrumentor this
         0: .line 41
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 42
            return
        end local 0 // jdk.jfr.internal.instrument.SocketChannelImplInstrumentor this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljdk/jfr/internal/instrument/SocketChannelImplInstrumentor;

  public int read(java.nio.ByteBuffer);
    descriptor: (Ljava/nio/ByteBuffer;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=13, locals=14, args_size=2
        start local 0 // jdk.jfr.internal.instrument.SocketChannelImplInstrumentor this
        start local 1 // java.nio.ByteBuffer dst
         0: .line 49
            getstatic jdk.jfr.events.Handlers.SOCKET_READ:Ljdk/jfr/internal/handlers/EventHandler;
            astore 2 /* handler */
        start local 2 // jdk.jfr.internal.handlers.EventHandler handler
         1: .line 50
            aload 2 /* handler */
            invokevirtual jdk.jfr.internal.handlers.EventHandler.isEnabled:()Z
            ifne 3
         2: .line 51
            aload 0 /* this */
            aload 1 /* dst */
            invokevirtual jdk.jfr.internal.instrument.SocketChannelImplInstrumentor.read:(Ljava/nio/ByteBuffer;)I
            ireturn
         3: .line 53
      StackMap locals: jdk.jfr.internal.handlers.EventHandler
      StackMap stack:
            iconst_0
            istore 3 /* bytesRead */
        start local 3 // int bytesRead
         4: .line 54
            lconst_0
            lstore 4 /* start */
        start local 4 // long start
         5: .line 56
            invokestatic jdk.jfr.internal.handlers.EventHandler.timestamp:()J
            lstore 4 /* start */
         6: .line 57
            aload 0 /* this */
            aload 1 /* dst */
            invokevirtual jdk.jfr.internal.instrument.SocketChannelImplInstrumentor.read:(Ljava/nio/ByteBuffer;)I
            istore 3 /* bytesRead */
         7: .line 58
            goto 21
      StackMap locals: jdk.jfr.internal.instrument.SocketChannelImplInstrumentor java.nio.ByteBuffer jdk.jfr.internal.handlers.EventHandler int long
      StackMap stack: java.lang.Throwable
         8: astore 6
         9: .line 59
            invokestatic jdk.jfr.internal.handlers.EventHandler.timestamp:()J
            lload 4 /* start */
            lsub
            lstore 7 /* duration */
        start local 7 // long duration
        10: .line 60
            aload 2 /* handler */
            lload 7 /* duration */
            invokevirtual jdk.jfr.internal.handlers.EventHandler.shouldCommit:(J)Z
            ifeq 20
        11: .line 61
            aload 0 /* this */
            getfield jdk.jfr.internal.instrument.SocketChannelImplInstrumentor.remoteAddress:Ljava/net/InetSocketAddress;
            invokevirtual java.net.InetSocketAddress.getAddress:()Ljava/net/InetAddress;
            invokevirtual java.net.InetAddress.toString:()Ljava/lang/String;
            astore 9 /* hostString */
        start local 9 // java.lang.String hostString
        12: .line 62
            aload 9 /* hostString */
            bipush 47
            invokevirtual java.lang.String.lastIndexOf:(I)I
            istore 10 /* delimiterIndex */
        start local 10 // int delimiterIndex
        13: .line 64
            aload 9 /* hostString */
            iconst_0
            iload 10 /* delimiterIndex */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 11 /* host */
        start local 11 // java.lang.String host
        14: .line 65
            aload 9 /* hostString */
            iload 10 /* delimiterIndex */
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            astore 12 /* address */
        start local 12 // java.lang.String address
        15: .line 66
            aload 0 /* this */
            getfield jdk.jfr.internal.instrument.SocketChannelImplInstrumentor.remoteAddress:Ljava/net/InetSocketAddress;
            invokevirtual java.net.InetSocketAddress.getPort:()I
            istore 13 /* port */
        start local 13 // int port
        16: .line 67
            iload 3 /* bytesRead */
            ifge 19
        17: .line 68
            aload 2 /* handler */
            lload 4 /* start */
            lload 7 /* duration */
            aload 11 /* host */
            aload 12 /* address */
            iload 13 /* port */
            lconst_0
            lconst_0
            iconst_1
            invokevirtual jdk.jfr.internal.handlers.EventHandler.write:(JJLjava/lang/String;Ljava/lang/String;IJJZ)V
        18: .line 69
            goto 20
        19: .line 70
      StackMap locals: jdk.jfr.internal.instrument.SocketChannelImplInstrumentor java.nio.ByteBuffer jdk.jfr.internal.handlers.EventHandler int long java.lang.Throwable long java.lang.String int java.lang.String java.lang.String int
      StackMap stack:
            aload 2 /* handler */
            lload 4 /* start */
            lload 7 /* duration */
            aload 11 /* host */
            aload 12 /* address */
            iload 13 /* port */
            lconst_0
            iload 3 /* bytesRead */
            i2l
            iconst_0
            invokevirtual jdk.jfr.internal.handlers.EventHandler.write:(JJLjava/lang/String;Ljava/lang/String;IJJZ)V
        end local 13 // int port
        end local 12 // java.lang.String address
        end local 11 // java.lang.String host
        end local 10 // int delimiterIndex
        end local 9 // java.lang.String hostString
        end local 7 // long duration
        20: .line 73
      StackMap locals: jdk.jfr.internal.instrument.SocketChannelImplInstrumentor java.nio.ByteBuffer jdk.jfr.internal.handlers.EventHandler int long java.lang.Throwable
      StackMap stack:
            aload 6
            athrow
        21: .line 59
      StackMap locals:
      StackMap stack:
            invokestatic jdk.jfr.internal.handlers.EventHandler.timestamp:()J
            lload 4 /* start */
            lsub
            lstore 7 /* duration */
        start local 7 // long duration
        22: .line 60
            aload 2 /* handler */
            lload 7 /* duration */
            invokevirtual jdk.jfr.internal.handlers.EventHandler.shouldCommit:(J)Z
            ifeq 32
        23: .line 61
            aload 0 /* this */
            getfield jdk.jfr.internal.instrument.SocketChannelImplInstrumentor.remoteAddress:Ljava/net/InetSocketAddress;
            invokevirtual java.net.InetSocketAddress.getAddress:()Ljava/net/InetAddress;
            invokevirtual java.net.InetAddress.toString:()Ljava/lang/String;
            astore 9 /* hostString */
        start local 9 // java.lang.String hostString
        24: .line 62
            aload 9 /* hostString */
            bipush 47
            invokevirtual java.lang.String.lastIndexOf:(I)I
            istore 10 /* delimiterIndex */
        start local 10 // int delimiterIndex
        25: .line 64
            aload 9 /* hostString */
            iconst_0
            iload 10 /* delimiterIndex */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 11 /* host */
        start local 11 // java.lang.String host
        26: .line 65
            aload 9 /* hostString */
            iload 10 /* delimiterIndex */
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            astore 12 /* address */
        start local 12 // java.lang.String address
        27: .line 66
            aload 0 /* this */
            getfield jdk.jfr.internal.instrument.SocketChannelImplInstrumentor.remoteAddress:Ljava/net/InetSocketAddress;
            invokevirtual java.net.InetSocketAddress.getPort:()I
            istore 13 /* port */
        start local 13 // int port
        28: .line 67
            iload 3 /* bytesRead */
            ifge 31
        29: .line 68
            aload 2 /* handler */
            lload 4 /* start */
            lload 7 /* duration */
            aload 11 /* host */
            aload 12 /* address */
            iload 13 /* port */
            lconst_0
            lconst_0
            iconst_1
            invokevirtual jdk.jfr.internal.handlers.EventHandler.write:(JJLjava/lang/String;Ljava/lang/String;IJJZ)V
        30: .line 69
            goto 32
        31: .line 70
      StackMap locals: jdk.jfr.internal.instrument.SocketChannelImplInstrumentor java.nio.ByteBuffer jdk.jfr.internal.handlers.EventHandler int long top long java.lang.String int java.lang.String java.lang.String int
      StackMap stack:
            aload 2 /* handler */
            lload 4 /* start */
            lload 7 /* duration */
            aload 11 /* host */
            aload 12 /* address */
            iload 13 /* port */
            lconst_0
            iload 3 /* bytesRead */
            i2l
            iconst_0
            invokevirtual jdk.jfr.internal.handlers.EventHandler.write:(JJLjava/lang/String;Ljava/lang/String;IJJZ)V
        end local 13 // int port
        end local 12 // java.lang.String address
        end local 11 // java.lang.String host
        end local 10 // int delimiterIndex
        end local 9 // java.lang.String hostString
        end local 7 // long duration
        32: .line 74
      StackMap locals: jdk.jfr.internal.instrument.SocketChannelImplInstrumentor java.nio.ByteBuffer jdk.jfr.internal.handlers.EventHandler int long
      StackMap stack:
            iload 3 /* bytesRead */
            ireturn
        end local 4 // long start
        end local 3 // int bytesRead
        end local 2 // jdk.jfr.internal.handlers.EventHandler handler
        end local 1 // java.nio.ByteBuffer dst
        end local 0 // jdk.jfr.internal.instrument.SocketChannelImplInstrumentor this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   33     0            this  Ljdk/jfr/internal/instrument/SocketChannelImplInstrumentor;
            0   33     1             dst  Ljava/nio/ByteBuffer;
            1   33     2         handler  Ljdk/jfr/internal/handlers/EventHandler;
            4   33     3       bytesRead  I
            5   33     4           start  J
           10   20     7        duration  J
           22   32     7        duration  J
           12   20     9      hostString  Ljava/lang/String;
           24   32     9      hostString  Ljava/lang/String;
           13   20    10  delimiterIndex  I
           25   32    10  delimiterIndex  I
           14   20    11            host  Ljava/lang/String;
           26   32    11            host  Ljava/lang/String;
           15   20    12         address  Ljava/lang/String;
           27   32    12         address  Ljava/lang/String;
           16   20    13            port  I
           28   32    13            port  I
      Exception table:
        from    to  target  type
           5     8       8  any
    Exceptions:
      throws java.io.IOException
    RuntimeVisibleAnnotations: 
      jdk.jfr.internal.instrument.JIInstrumentationMethod()
    MethodParameters:
      Name  Flags
      dst   

  public long read(java.nio.ByteBuffer[], int, int);
    descriptor: ([Ljava/nio/ByteBuffer;II)J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=13, locals=17, args_size=4
        start local 0 // jdk.jfr.internal.instrument.SocketChannelImplInstrumentor this
        start local 1 // java.nio.ByteBuffer[] dsts
        start local 2 // int offset
        start local 3 // int length
         0: .line 80
            getstatic jdk.jfr.events.Handlers.SOCKET_READ:Ljdk/jfr/internal/handlers/EventHandler;
            astore 4 /* handler */
        start local 4 // jdk.jfr.internal.handlers.EventHandler handler
         1: .line 81
            aload 4 /* handler */
            invokevirtual jdk.jfr.internal.handlers.EventHandler.isEnabled:()Z
            ifne 3
         2: .line 82
            aload 0 /* this */
            aload 1 /* dsts */
            iload 2 /* offset */
            iload 3 /* length */
            invokevirtual jdk.jfr.internal.instrument.SocketChannelImplInstrumentor.read:([Ljava/nio/ByteBuffer;II)J
            lreturn
         3: .line 85
      StackMap locals: jdk.jfr.internal.handlers.EventHandler
      StackMap stack:
            lconst_0
            lstore 5 /* bytesRead */
        start local 5 // long bytesRead
         4: .line 86
            lconst_0
            lstore 7 /* start */
        start local 7 // long start
         5: .line 88
            invokestatic jdk.jfr.internal.handlers.EventHandler.timestamp:()J
            lstore 7 /* start */
         6: .line 89
            aload 0 /* this */
            aload 1 /* dsts */
            iload 2 /* offset */
            iload 3 /* length */
            invokevirtual jdk.jfr.internal.instrument.SocketChannelImplInstrumentor.read:([Ljava/nio/ByteBuffer;II)J
            lstore 5 /* bytesRead */
         7: .line 90
            goto 21
      StackMap locals: jdk.jfr.internal.instrument.SocketChannelImplInstrumentor java.nio.ByteBuffer[] int int jdk.jfr.internal.handlers.EventHandler long long
      StackMap stack: java.lang.Throwable
         8: astore 9
         9: .line 91
            invokestatic jdk.jfr.internal.handlers.EventHandler.timestamp:()J
            lload 7 /* start */
            lsub
            lstore 10 /* duration */
        start local 10 // long duration
        10: .line 92
            aload 4 /* handler */
            lload 10 /* duration */
            invokevirtual jdk.jfr.internal.handlers.EventHandler.shouldCommit:(J)Z
            ifeq 20
        11: .line 93
            aload 0 /* this */
            getfield jdk.jfr.internal.instrument.SocketChannelImplInstrumentor.remoteAddress:Ljava/net/InetSocketAddress;
            invokevirtual java.net.InetSocketAddress.getAddress:()Ljava/net/InetAddress;
            invokevirtual java.net.InetAddress.toString:()Ljava/lang/String;
            astore 12 /* hostString */
        start local 12 // java.lang.String hostString
        12: .line 94
            aload 12 /* hostString */
            bipush 47
            invokevirtual java.lang.String.lastIndexOf:(I)I
            istore 13 /* delimiterIndex */
        start local 13 // int delimiterIndex
        13: .line 96
            aload 12 /* hostString */
            iconst_0
            iload 13 /* delimiterIndex */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 14 /* host */
        start local 14 // java.lang.String host
        14: .line 97
            aload 12 /* hostString */
            iload 13 /* delimiterIndex */
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            astore 15 /* address */
        start local 15 // java.lang.String address
        15: .line 98
            aload 0 /* this */
            getfield jdk.jfr.internal.instrument.SocketChannelImplInstrumentor.remoteAddress:Ljava/net/InetSocketAddress;
            invokevirtual java.net.InetSocketAddress.getPort:()I
            istore 16 /* port */
        start local 16 // int port
        16: .line 99
            lload 5 /* bytesRead */
            lconst_0
            lcmp
            ifge 19
        17: .line 100
            aload 4 /* handler */
            lload 7 /* start */
            lload 10 /* duration */
            aload 14 /* host */
            aload 15 /* address */
            iload 16 /* port */
            lconst_0
            lconst_0
            iconst_1
            invokevirtual jdk.jfr.internal.handlers.EventHandler.write:(JJLjava/lang/String;Ljava/lang/String;IJJZ)V
        18: .line 101
            goto 20
        19: .line 102
      StackMap locals: jdk.jfr.internal.instrument.SocketChannelImplInstrumentor java.nio.ByteBuffer[] int int jdk.jfr.internal.handlers.EventHandler long long java.lang.Throwable long java.lang.String int java.lang.String java.lang.String int
      StackMap stack:
            aload 4 /* handler */
            lload 7 /* start */
            lload 10 /* duration */
            aload 14 /* host */
            aload 15 /* address */
            iload 16 /* port */
            lconst_0
            lload 5 /* bytesRead */
            iconst_0
            invokevirtual jdk.jfr.internal.handlers.EventHandler.write:(JJLjava/lang/String;Ljava/lang/String;IJJZ)V
        end local 16 // int port
        end local 15 // java.lang.String address
        end local 14 // java.lang.String host
        end local 13 // int delimiterIndex
        end local 12 // java.lang.String hostString
        end local 10 // long duration
        20: .line 105
      StackMap locals: jdk.jfr.internal.instrument.SocketChannelImplInstrumentor java.nio.ByteBuffer[] int int jdk.jfr.internal.handlers.EventHandler long long java.lang.Throwable
      StackMap stack:
            aload 9
            athrow
        21: .line 91
      StackMap locals:
      StackMap stack:
            invokestatic jdk.jfr.internal.handlers.EventHandler.timestamp:()J
            lload 7 /* start */
            lsub
            lstore 10 /* duration */
        start local 10 // long duration
        22: .line 92
            aload 4 /* handler */
            lload 10 /* duration */
            invokevirtual jdk.jfr.internal.handlers.EventHandler.shouldCommit:(J)Z
            ifeq 32
        23: .line 93
            aload 0 /* this */
            getfield jdk.jfr.internal.instrument.SocketChannelImplInstrumentor.remoteAddress:Ljava/net/InetSocketAddress;
            invokevirtual java.net.InetSocketAddress.getAddress:()Ljava/net/InetAddress;
            invokevirtual java.net.InetAddress.toString:()Ljava/lang/String;
            astore 12 /* hostString */
        start local 12 // java.lang.String hostString
        24: .line 94
            aload 12 /* hostString */
            bipush 47
            invokevirtual java.lang.String.lastIndexOf:(I)I
            istore 13 /* delimiterIndex */
        start local 13 // int delimiterIndex
        25: .line 96
            aload 12 /* hostString */
            iconst_0
            iload 13 /* delimiterIndex */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 14 /* host */
        start local 14 // java.lang.String host
        26: .line 97
            aload 12 /* hostString */
            iload 13 /* delimiterIndex */
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            astore 15 /* address */
        start local 15 // java.lang.String address
        27: .line 98
            aload 0 /* this */
            getfield jdk.jfr.internal.instrument.SocketChannelImplInstrumentor.remoteAddress:Ljava/net/InetSocketAddress;
            invokevirtual java.net.InetSocketAddress.getPort:()I
            istore 16 /* port */
        start local 16 // int port
        28: .line 99
            lload 5 /* bytesRead */
            lconst_0
            lcmp
            ifge 31
        29: .line 100
            aload 4 /* handler */
            lload 7 /* start */
            lload 10 /* duration */
            aload 14 /* host */
            aload 15 /* address */
            iload 16 /* port */
            lconst_0
            lconst_0
            iconst_1
            invokevirtual jdk.jfr.internal.handlers.EventHandler.write:(JJLjava/lang/String;Ljava/lang/String;IJJZ)V
        30: .line 101
            goto 32
        31: .line 102
      StackMap locals: jdk.jfr.internal.instrument.SocketChannelImplInstrumentor java.nio.ByteBuffer[] int int jdk.jfr.internal.handlers.EventHandler long long top long java.lang.String int java.lang.String java.lang.String int
      StackMap stack:
            aload 4 /* handler */
            lload 7 /* start */
            lload 10 /* duration */
            aload 14 /* host */
            aload 15 /* address */
            iload 16 /* port */
            lconst_0
            lload 5 /* bytesRead */
            iconst_0
            invokevirtual jdk.jfr.internal.handlers.EventHandler.write:(JJLjava/lang/String;Ljava/lang/String;IJJZ)V
        end local 16 // int port
        end local 15 // java.lang.String address
        end local 14 // java.lang.String host
        end local 13 // int delimiterIndex
        end local 12 // java.lang.String hostString
        end local 10 // long duration
        32: .line 106
      StackMap locals: jdk.jfr.internal.instrument.SocketChannelImplInstrumentor java.nio.ByteBuffer[] int int jdk.jfr.internal.handlers.EventHandler long long
      StackMap stack:
            lload 5 /* bytesRead */
            lreturn
        end local 7 // long start
        end local 5 // long bytesRead
        end local 4 // jdk.jfr.internal.handlers.EventHandler handler
        end local 3 // int length
        end local 2 // int offset
        end local 1 // java.nio.ByteBuffer[] dsts
        end local 0 // jdk.jfr.internal.instrument.SocketChannelImplInstrumentor this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   33     0            this  Ljdk/jfr/internal/instrument/SocketChannelImplInstrumentor;
            0   33     1            dsts  [Ljava/nio/ByteBuffer;
            0   33     2          offset  I
            0   33     3          length  I
            1   33     4         handler  Ljdk/jfr/internal/handlers/EventHandler;
            4   33     5       bytesRead  J
            5   33     7           start  J
           10   20    10        duration  J
           22   32    10        duration  J
           12   20    12      hostString  Ljava/lang/String;
           24   32    12      hostString  Ljava/lang/String;
           13   20    13  delimiterIndex  I
           25   32    13  delimiterIndex  I
           14   20    14            host  Ljava/lang/String;
           26   32    14            host  Ljava/lang/String;
           15   20    15         address  Ljava/lang/String;
           27   32    15         address  Ljava/lang/String;
           16   20    16            port  I
           28   32    16            port  I
      Exception table:
        from    to  target  type
           5     8       8  any
    Exceptions:
      throws java.io.IOException
    RuntimeVisibleAnnotations: 
      jdk.jfr.internal.instrument.JIInstrumentationMethod()
    MethodParameters:
        Name  Flags
      dsts    
      offset  
      length  

  public int write(java.nio.ByteBuffer);
    descriptor: (Ljava/nio/ByteBuffer;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=10, locals=16, args_size=2
        start local 0 // jdk.jfr.internal.instrument.SocketChannelImplInstrumentor this
        start local 1 // java.nio.ByteBuffer buf
         0: .line 112
            getstatic jdk.jfr.events.Handlers.SOCKET_WRITE:Ljdk/jfr/internal/handlers/EventHandler;
            astore 2 /* handler */
        start local 2 // jdk.jfr.internal.handlers.EventHandler handler
         1: .line 113
            aload 2 /* handler */
            invokevirtual jdk.jfr.internal.handlers.EventHandler.isEnabled:()Z
            ifne 3
         2: .line 114
            aload 0 /* this */
            aload 1 /* buf */
            invokevirtual jdk.jfr.internal.instrument.SocketChannelImplInstrumentor.write:(Ljava/nio/ByteBuffer;)I
            ireturn
         3: .line 116
      StackMap locals: jdk.jfr.internal.handlers.EventHandler
      StackMap stack:
            iconst_0
            istore 3 /* bytesWritten */
        start local 3 // int bytesWritten
         4: .line 117
            lconst_0
            lstore 4 /* start */
        start local 4 // long start
         5: .line 119
            invokestatic jdk.jfr.internal.handlers.EventHandler.timestamp:()J
            lstore 4 /* start */
         6: .line 120
            aload 0 /* this */
            aload 1 /* buf */
            invokevirtual jdk.jfr.internal.instrument.SocketChannelImplInstrumentor.write:(Ljava/nio/ByteBuffer;)I
            istore 3 /* bytesWritten */
         7: .line 121
            goto 21
      StackMap locals: jdk.jfr.internal.instrument.SocketChannelImplInstrumentor java.nio.ByteBuffer jdk.jfr.internal.handlers.EventHandler int long
      StackMap stack: java.lang.Throwable
         8: astore 6
         9: .line 122
            invokestatic jdk.jfr.internal.handlers.EventHandler.timestamp:()J
            lload 4 /* start */
            lsub
            lstore 7 /* duration */
        start local 7 // long duration
        10: .line 123
            aload 2 /* handler */
            lload 7 /* duration */
            invokevirtual jdk.jfr.internal.handlers.EventHandler.shouldCommit:(J)Z
            ifeq 20
        11: .line 124
            aload 0 /* this */
            getfield jdk.jfr.internal.instrument.SocketChannelImplInstrumentor.remoteAddress:Ljava/net/InetSocketAddress;
            invokevirtual java.net.InetSocketAddress.getAddress:()Ljava/net/InetAddress;
            invokevirtual java.net.InetAddress.toString:()Ljava/lang/String;
            astore 9 /* hostString */
        start local 9 // java.lang.String hostString
        12: .line 125
            aload 9 /* hostString */
            bipush 47
            invokevirtual java.lang.String.lastIndexOf:(I)I
            istore 10 /* delimiterIndex */
        start local 10 // int delimiterIndex
        13: .line 127
            aload 9 /* hostString */
            iconst_0
            iload 10 /* delimiterIndex */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 11 /* host */
        start local 11 // java.lang.String host
        14: .line 128
            aload 9 /* hostString */
            iload 10 /* delimiterIndex */
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            astore 12 /* address */
        start local 12 // java.lang.String address
        15: .line 129
            aload 0 /* this */
            getfield jdk.jfr.internal.instrument.SocketChannelImplInstrumentor.remoteAddress:Ljava/net/InetSocketAddress;
            invokevirtual java.net.InetSocketAddress.getPort:()I
            istore 13 /* port */
        start local 13 // int port
        16: .line 130
            iload 3 /* bytesWritten */
            ifge 17
            iconst_0
            goto 18
      StackMap locals: jdk.jfr.internal.instrument.SocketChannelImplInstrumentor java.nio.ByteBuffer jdk.jfr.internal.handlers.EventHandler int long java.lang.Throwable long java.lang.String int java.lang.String java.lang.String int
      StackMap stack:
        17: iload 3 /* bytesWritten */
      StackMap locals:
      StackMap stack: int
        18: i2l
            lstore 14 /* bytes */
        start local 14 // long bytes
        19: .line 131
            aload 2 /* handler */
            lload 4 /* start */
            lload 7 /* duration */
            aload 11 /* host */
            aload 12 /* address */
            iload 13 /* port */
            lload 14 /* bytes */
            invokevirtual jdk.jfr.internal.handlers.EventHandler.write:(JJLjava/lang/String;Ljava/lang/String;IJ)V
        end local 14 // long bytes
        end local 13 // int port
        end local 12 // java.lang.String address
        end local 11 // java.lang.String host
        end local 10 // int delimiterIndex
        end local 9 // java.lang.String hostString
        end local 7 // long duration
        20: .line 133
      StackMap locals: jdk.jfr.internal.instrument.SocketChannelImplInstrumentor java.nio.ByteBuffer jdk.jfr.internal.handlers.EventHandler int long java.lang.Throwable
      StackMap stack:
            aload 6
            athrow
        21: .line 122
      StackMap locals:
      StackMap stack:
            invokestatic jdk.jfr.internal.handlers.EventHandler.timestamp:()J
            lload 4 /* start */
            lsub
            lstore 7 /* duration */
        start local 7 // long duration
        22: .line 123
            aload 2 /* handler */
            lload 7 /* duration */
            invokevirtual jdk.jfr.internal.handlers.EventHandler.shouldCommit:(J)Z
            ifeq 32
        23: .line 124
            aload 0 /* this */
            getfield jdk.jfr.internal.instrument.SocketChannelImplInstrumentor.remoteAddress:Ljava/net/InetSocketAddress;
            invokevirtual java.net.InetSocketAddress.getAddress:()Ljava/net/InetAddress;
            invokevirtual java.net.InetAddress.toString:()Ljava/lang/String;
            astore 9 /* hostString */
        start local 9 // java.lang.String hostString
        24: .line 125
            aload 9 /* hostString */
            bipush 47
            invokevirtual java.lang.String.lastIndexOf:(I)I
            istore 10 /* delimiterIndex */
        start local 10 // int delimiterIndex
        25: .line 127
            aload 9 /* hostString */
            iconst_0
            iload 10 /* delimiterIndex */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 11 /* host */
        start local 11 // java.lang.String host
        26: .line 128
            aload 9 /* hostString */
            iload 10 /* delimiterIndex */
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            astore 12 /* address */
        start local 12 // java.lang.String address
        27: .line 129
            aload 0 /* this */
            getfield jdk.jfr.internal.instrument.SocketChannelImplInstrumentor.remoteAddress:Ljava/net/InetSocketAddress;
            invokevirtual java.net.InetSocketAddress.getPort:()I
            istore 13 /* port */
        start local 13 // int port
        28: .line 130
            iload 3 /* bytesWritten */
            ifge 29
            iconst_0
            goto 30
      StackMap locals: jdk.jfr.internal.instrument.SocketChannelImplInstrumentor java.nio.ByteBuffer jdk.jfr.internal.handlers.EventHandler int long top long java.lang.String int java.lang.String java.lang.String int
      StackMap stack:
        29: iload 3 /* bytesWritten */
      StackMap locals:
      StackMap stack: int
        30: i2l
            lstore 14 /* bytes */
        start local 14 // long bytes
        31: .line 131
            aload 2 /* handler */
            lload 4 /* start */
            lload 7 /* duration */
            aload 11 /* host */
            aload 12 /* address */
            iload 13 /* port */
            lload 14 /* bytes */
            invokevirtual jdk.jfr.internal.handlers.EventHandler.write:(JJLjava/lang/String;Ljava/lang/String;IJ)V
        end local 14 // long bytes
        end local 13 // int port
        end local 12 // java.lang.String address
        end local 11 // java.lang.String host
        end local 10 // int delimiterIndex
        end local 9 // java.lang.String hostString
        end local 7 // long duration
        32: .line 134
      StackMap locals: jdk.jfr.internal.instrument.SocketChannelImplInstrumentor java.nio.ByteBuffer jdk.jfr.internal.handlers.EventHandler int long
      StackMap stack:
            iload 3 /* bytesWritten */
            ireturn
        end local 4 // long start
        end local 3 // int bytesWritten
        end local 2 // jdk.jfr.internal.handlers.EventHandler handler
        end local 1 // java.nio.ByteBuffer buf
        end local 0 // jdk.jfr.internal.instrument.SocketChannelImplInstrumentor this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   33     0            this  Ljdk/jfr/internal/instrument/SocketChannelImplInstrumentor;
            0   33     1             buf  Ljava/nio/ByteBuffer;
            1   33     2         handler  Ljdk/jfr/internal/handlers/EventHandler;
            4   33     3    bytesWritten  I
            5   33     4           start  J
           10   20     7        duration  J
           22   32     7        duration  J
           12   20     9      hostString  Ljava/lang/String;
           24   32     9      hostString  Ljava/lang/String;
           13   20    10  delimiterIndex  I
           25   32    10  delimiterIndex  I
           14   20    11            host  Ljava/lang/String;
           26   32    11            host  Ljava/lang/String;
           15   20    12         address  Ljava/lang/String;
           27   32    12         address  Ljava/lang/String;
           16   20    13            port  I
           28   32    13            port  I
           19   20    14           bytes  J
           31   32    14           bytes  J
      Exception table:
        from    to  target  type
           5     8       8  any
    Exceptions:
      throws java.io.IOException
    RuntimeVisibleAnnotations: 
      jdk.jfr.internal.instrument.JIInstrumentationMethod()
    MethodParameters:
      Name  Flags
      buf   

  public long write(java.nio.ByteBuffer[], int, int);
    descriptor: ([Ljava/nio/ByteBuffer;II)J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=10, locals=19, args_size=4
        start local 0 // jdk.jfr.internal.instrument.SocketChannelImplInstrumentor this
        start local 1 // java.nio.ByteBuffer[] srcs
        start local 2 // int offset
        start local 3 // int length
         0: .line 140
            getstatic jdk.jfr.events.Handlers.SOCKET_WRITE:Ljdk/jfr/internal/handlers/EventHandler;
            astore 4 /* handler */
        start local 4 // jdk.jfr.internal.handlers.EventHandler handler
         1: .line 141
            aload 4 /* handler */
            invokevirtual jdk.jfr.internal.handlers.EventHandler.isEnabled:()Z
            ifne 3
         2: .line 142
            aload 0 /* this */
            aload 1 /* srcs */
            iload 2 /* offset */
            iload 3 /* length */
            invokevirtual jdk.jfr.internal.instrument.SocketChannelImplInstrumentor.write:([Ljava/nio/ByteBuffer;II)J
            lreturn
         3: .line 144
      StackMap locals: jdk.jfr.internal.handlers.EventHandler
      StackMap stack:
            lconst_0
            lstore 5 /* bytesWritten */
        start local 5 // long bytesWritten
         4: .line 145
            lconst_0
            lstore 7 /* start */
        start local 7 // long start
         5: .line 147
            invokestatic jdk.jfr.internal.handlers.EventHandler.timestamp:()J
            lstore 7 /* start */
         6: .line 148
            aload 0 /* this */
            aload 1 /* srcs */
            iload 2 /* offset */
            iload 3 /* length */
            invokevirtual jdk.jfr.internal.instrument.SocketChannelImplInstrumentor.write:([Ljava/nio/ByteBuffer;II)J
            lstore 5 /* bytesWritten */
         7: .line 149
            goto 21
      StackMap locals: jdk.jfr.internal.instrument.SocketChannelImplInstrumentor java.nio.ByteBuffer[] int int jdk.jfr.internal.handlers.EventHandler long long
      StackMap stack: java.lang.Throwable
         8: astore 9
         9: .line 150
            invokestatic jdk.jfr.internal.handlers.EventHandler.timestamp:()J
            lload 7 /* start */
            lsub
            lstore 10 /* duration */
        start local 10 // long duration
        10: .line 151
            aload 4 /* handler */
            lload 10 /* duration */
            invokevirtual jdk.jfr.internal.handlers.EventHandler.shouldCommit:(J)Z
            ifeq 20
        11: .line 152
            aload 0 /* this */
            getfield jdk.jfr.internal.instrument.SocketChannelImplInstrumentor.remoteAddress:Ljava/net/InetSocketAddress;
            invokevirtual java.net.InetSocketAddress.getAddress:()Ljava/net/InetAddress;
            invokevirtual java.net.InetAddress.toString:()Ljava/lang/String;
            astore 12 /* hostString */
        start local 12 // java.lang.String hostString
        12: .line 153
            aload 12 /* hostString */
            bipush 47
            invokevirtual java.lang.String.lastIndexOf:(I)I
            istore 13 /* delimiterIndex */
        start local 13 // int delimiterIndex
        13: .line 155
            aload 12 /* hostString */
            iconst_0
            iload 13 /* delimiterIndex */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 14 /* host */
        start local 14 // java.lang.String host
        14: .line 156
            aload 12 /* hostString */
            iload 13 /* delimiterIndex */
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            astore 15 /* address */
        start local 15 // java.lang.String address
        15: .line 157
            aload 0 /* this */
            getfield jdk.jfr.internal.instrument.SocketChannelImplInstrumentor.remoteAddress:Ljava/net/InetSocketAddress;
            invokevirtual java.net.InetSocketAddress.getPort:()I
            istore 16 /* port */
        start local 16 // int port
        16: .line 158
            lload 5 /* bytesWritten */
            lconst_0
            lcmp
            ifge 17
            lconst_0
            goto 18
      StackMap locals: jdk.jfr.internal.instrument.SocketChannelImplInstrumentor java.nio.ByteBuffer[] int int jdk.jfr.internal.handlers.EventHandler long long java.lang.Throwable long java.lang.String int java.lang.String java.lang.String int
      StackMap stack:
        17: lload 5 /* bytesWritten */
      StackMap locals:
      StackMap stack: long
        18: lstore 17 /* bytes */
        start local 17 // long bytes
        19: .line 159
            aload 4 /* handler */
            lload 7 /* start */
            lload 10 /* duration */
            aload 14 /* host */
            aload 15 /* address */
            iload 16 /* port */
            lload 17 /* bytes */
            invokevirtual jdk.jfr.internal.handlers.EventHandler.write:(JJLjava/lang/String;Ljava/lang/String;IJ)V
        end local 17 // long bytes
        end local 16 // int port
        end local 15 // java.lang.String address
        end local 14 // java.lang.String host
        end local 13 // int delimiterIndex
        end local 12 // java.lang.String hostString
        end local 10 // long duration
        20: .line 161
      StackMap locals: jdk.jfr.internal.instrument.SocketChannelImplInstrumentor java.nio.ByteBuffer[] int int jdk.jfr.internal.handlers.EventHandler long long java.lang.Throwable
      StackMap stack:
            aload 9
            athrow
        21: .line 150
      StackMap locals:
      StackMap stack:
            invokestatic jdk.jfr.internal.handlers.EventHandler.timestamp:()J
            lload 7 /* start */
            lsub
            lstore 10 /* duration */
        start local 10 // long duration
        22: .line 151
            aload 4 /* handler */
            lload 10 /* duration */
            invokevirtual jdk.jfr.internal.handlers.EventHandler.shouldCommit:(J)Z
            ifeq 32
        23: .line 152
            aload 0 /* this */
            getfield jdk.jfr.internal.instrument.SocketChannelImplInstrumentor.remoteAddress:Ljava/net/InetSocketAddress;
            invokevirtual java.net.InetSocketAddress.getAddress:()Ljava/net/InetAddress;
            invokevirtual java.net.InetAddress.toString:()Ljava/lang/String;
            astore 12 /* hostString */
        start local 12 // java.lang.String hostString
        24: .line 153
            aload 12 /* hostString */
            bipush 47
            invokevirtual java.lang.String.lastIndexOf:(I)I
            istore 13 /* delimiterIndex */
        start local 13 // int delimiterIndex
        25: .line 155
            aload 12 /* hostString */
            iconst_0
            iload 13 /* delimiterIndex */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 14 /* host */
        start local 14 // java.lang.String host
        26: .line 156
            aload 12 /* hostString */
            iload 13 /* delimiterIndex */
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            astore 15 /* address */
        start local 15 // java.lang.String address
        27: .line 157
            aload 0 /* this */
            getfield jdk.jfr.internal.instrument.SocketChannelImplInstrumentor.remoteAddress:Ljava/net/InetSocketAddress;
            invokevirtual java.net.InetSocketAddress.getPort:()I
            istore 16 /* port */
        start local 16 // int port
        28: .line 158
            lload 5 /* bytesWritten */
            lconst_0
            lcmp
            ifge 29
            lconst_0
            goto 30
      StackMap locals: jdk.jfr.internal.instrument.SocketChannelImplInstrumentor java.nio.ByteBuffer[] int int jdk.jfr.internal.handlers.EventHandler long long top long java.lang.String int java.lang.String java.lang.String int
      StackMap stack:
        29: lload 5 /* bytesWritten */
      StackMap locals:
      StackMap stack: long
        30: lstore 17 /* bytes */
        start local 17 // long bytes
        31: .line 159
            aload 4 /* handler */
            lload 7 /* start */
            lload 10 /* duration */
            aload 14 /* host */
            aload 15 /* address */
            iload 16 /* port */
            lload 17 /* bytes */
            invokevirtual jdk.jfr.internal.handlers.EventHandler.write:(JJLjava/lang/String;Ljava/lang/String;IJ)V
        end local 17 // long bytes
        end local 16 // int port
        end local 15 // java.lang.String address
        end local 14 // java.lang.String host
        end local 13 // int delimiterIndex
        end local 12 // java.lang.String hostString
        end local 10 // long duration
        32: .line 162
      StackMap locals: jdk.jfr.internal.instrument.SocketChannelImplInstrumentor java.nio.ByteBuffer[] int int jdk.jfr.internal.handlers.EventHandler long long
      StackMap stack:
            lload 5 /* bytesWritten */
            lreturn
        end local 7 // long start
        end local 5 // long bytesWritten
        end local 4 // jdk.jfr.internal.handlers.EventHandler handler
        end local 3 // int length
        end local 2 // int offset
        end local 1 // java.nio.ByteBuffer[] srcs
        end local 0 // jdk.jfr.internal.instrument.SocketChannelImplInstrumentor this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   33     0            this  Ljdk/jfr/internal/instrument/SocketChannelImplInstrumentor;
            0   33     1            srcs  [Ljava/nio/ByteBuffer;
            0   33     2          offset  I
            0   33     3          length  I
            1   33     4         handler  Ljdk/jfr/internal/handlers/EventHandler;
            4   33     5    bytesWritten  J
            5   33     7           start  J
           10   20    10        duration  J
           22   32    10        duration  J
           12   20    12      hostString  Ljava/lang/String;
           24   32    12      hostString  Ljava/lang/String;
           13   20    13  delimiterIndex  I
           25   32    13  delimiterIndex  I
           14   20    14            host  Ljava/lang/String;
           26   32    14            host  Ljava/lang/String;
           15   20    15         address  Ljava/lang/String;
           27   32    15         address  Ljava/lang/String;
           16   20    16            port  I
           28   32    16            port  I
           19   20    17           bytes  J
           31   32    17           bytes  J
      Exception table:
        from    to  target  type
           5     8       8  any
    Exceptions:
      throws java.io.IOException
    RuntimeVisibleAnnotations: 
      jdk.jfr.internal.instrument.JIInstrumentationMethod()
    MethodParameters:
        Name  Flags
      srcs    
      offset  
      length  
}
SourceFile: "SocketChannelImplInstrumentor.java"
    RuntimeVisibleAnnotations: 
      jdk.jfr.internal.instrument.JIInstrumentationTarget(value = "sun.nio.ch.SocketChannelImpl")