final class org.xnio.ssl.JsseStreamConduit implements org.xnio.conduits.StreamSourceConduit, org.xnio.conduits.StreamSinkConduit, java.lang.Runnable
  minor version: 0
  major version: 59
  flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
  this_class: org.xnio.ssl.JsseStreamConduit
  super_class: java.lang.Object
{
  private static final boolean TRACE_SSL;
    descriptor: Z
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private final org.xnio.ssl.JsseSslConnection connection;
    descriptor: Lorg/xnio/ssl/JsseSslConnection;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final javax.net.ssl.SSLEngine engine;
    descriptor: Ljavax/net/ssl/SSLEngine;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.xnio.conduits.StreamSourceConduit sourceConduit;
    descriptor: Lorg/xnio/conduits/StreamSourceConduit;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.xnio.conduits.StreamSinkConduit sinkConduit;
    descriptor: Lorg/xnio/conduits/StreamSinkConduit;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.xnio.Pooled<java.nio.ByteBuffer> receiveBuffer;
    descriptor: Lorg/xnio/Pooled;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Lorg/xnio/Pooled<Ljava/nio/ByteBuffer;>;

  private final org.xnio.Pooled<java.nio.ByteBuffer> sendBuffer;
    descriptor: Lorg/xnio/Pooled;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Lorg/xnio/Pooled<Ljava/nio/ByteBuffer;>;

  private final org.xnio.Pooled<java.nio.ByteBuffer> readBuffer;
    descriptor: Lorg/xnio/Pooled;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Lorg/xnio/Pooled<Ljava/nio/ByteBuffer;>;

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

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

  private org.xnio.conduits.ReadReadyHandler readReadyHandler;
    descriptor: Lorg/xnio/conduits/ReadReadyHandler;
    flags: (0x0002) ACC_PRIVATE

  private org.xnio.conduits.WriteReadyHandler writeReadyHandler;
    descriptor: Lorg/xnio/conduits/WriteReadyHandler;
    flags: (0x0002) ACC_PRIVATE

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  private final org.xnio.conduits.WriteReadyHandler writeReady;
    descriptor: Lorg/xnio/conduits/WriteReadyHandler;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.xnio.conduits.ReadReadyHandler readReady;
    descriptor: Lorg/xnio/conduits/ReadReadyHandler;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.nio.ByteBuffer[] readBufferHolder;
    descriptor: [Ljava/nio/ByteBuffer;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.nio.ByteBuffer[] writeBufferHolder;
    descriptor: [Ljava/nio/ByteBuffer;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private static final java.nio.ByteBuffer[] NO_BUFFERS;
    descriptor: [Ljava/nio/ByteBuffer;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

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

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

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

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

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

  private static volatile int[] $SWITCH_TABLE$javax$net$ssl$SSLEngineResult$Status;
    descriptor: [I
    flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC

  private static volatile int[] $SWITCH_TABLE$javax$net$ssl$SSLEngineResult$HandshakeStatus;
    descriptor: [I
    flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 60
            ldc Lorg/xnio/ssl/JsseStreamConduit;
            invokevirtual java.lang.Class.desiredAssertionStatus:()Z
            ifne 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: putstatic org.xnio.ssl.JsseStreamConduit.$assertionsDisabled:Z
         3: .line 62
            ldc "org.xnio.ssl.TRACE_SSL"
            invokestatic java.lang.Boolean.getBoolean:(Ljava/lang/String;)Z
            putstatic org.xnio.ssl.JsseStreamConduit.TRACE_SSL:Z
         4: .line 1142
            iconst_0
            anewarray java.nio.ByteBuffer
            putstatic org.xnio.ssl.JsseStreamConduit.NO_BUFFERS:[Ljava/nio/ByteBuffer;
         5: .line 1147
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  void <init>(org.xnio.ssl.JsseSslConnection, javax.net.ssl.SSLEngine, org.xnio.conduits.StreamSourceConduit, org.xnio.conduits.StreamSinkConduit, org.xnio.Pool<java.nio.ByteBuffer>, org.xnio.Pool<java.nio.ByteBuffer>);
    descriptor: (Lorg/xnio/ssl/JsseSslConnection;Ljavax/net/ssl/SSLEngine;Lorg/xnio/conduits/StreamSourceConduit;Lorg/xnio/conduits/StreamSinkConduit;Lorg/xnio/Pool;Lorg/xnio/Pool;)V
    flags: (0x0000) 
    Code:
      stack=4, locals=17, args_size=7
        start local 0 // org.xnio.ssl.JsseStreamConduit this
        start local 1 // org.xnio.ssl.JsseSslConnection connection
        start local 2 // javax.net.ssl.SSLEngine engine
        start local 3 // org.xnio.conduits.StreamSourceConduit sourceConduit
        start local 4 // org.xnio.conduits.StreamSinkConduit sinkConduit
        start local 5 // org.xnio.Pool socketBufferPool
        start local 6 // org.xnio.Pool applicationBufferPool
         0: .line 102
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 88
            aload 0 /* this */
            ldc 262144
            putfield org.xnio.ssl.JsseStreamConduit.state:I
         2: .line 259
            aload 0 /* this */
            new org.xnio.ssl.JsseStreamConduit$1
            dup
            aload 0 /* this */
            invokespecial org.xnio.ssl.JsseStreamConduit$1.<init>:(Lorg/xnio/ssl/JsseStreamConduit;)V
            putfield org.xnio.ssl.JsseStreamConduit.writeReady:Lorg/xnio/conduits/WriteReadyHandler;
         3: .line 291
            aload 0 /* this */
            new org.xnio.ssl.JsseStreamConduit$2
            dup
            aload 0 /* this */
            invokespecial org.xnio.ssl.JsseStreamConduit$2.<init>:(Lorg/xnio/ssl/JsseStreamConduit;)V
            putfield org.xnio.ssl.JsseStreamConduit.readReady:Lorg/xnio/conduits/ReadReadyHandler;
         4: .line 933
            aload 0 /* this */
            iconst_1
            anewarray java.nio.ByteBuffer
            putfield org.xnio.ssl.JsseStreamConduit.readBufferHolder:[Ljava/nio/ByteBuffer;
         5: .line 1031
            aload 0 /* this */
            iconst_1
            anewarray java.nio.ByteBuffer
            putfield org.xnio.ssl.JsseStreamConduit.writeBufferHolder:[Ljava/nio/ByteBuffer;
         6: .line 106
            iconst_0
            istore 10 /* ok */
        start local 10 // boolean ok
         7: .line 107
            aload 2 /* engine */
            invokevirtual javax.net.ssl.SSLEngine.getSession:()Ljavax/net/ssl/SSLSession;
            astore 11 /* session */
        start local 11 // javax.net.ssl.SSLSession session
         8: .line 108
            aload 11 /* session */
            invokeinterface javax.net.ssl.SSLSession.getPacketBufferSize:()I
            istore 12 /* packetBufferSize */
        start local 12 // int packetBufferSize
         9: .line 109
            aload 5 /* socketBufferPool */
            invokeinterface org.xnio.Pool.allocate:()Lorg/xnio/Pooled;
            astore 7 /* receiveBuffer */
        start local 7 // org.xnio.Pooled receiveBuffer
        10: .line 111
            aload 7 /* receiveBuffer */
            invokeinterface org.xnio.Pooled.getResource:()Ljava/lang/Object;
            checkcast java.nio.ByteBuffer
            invokevirtual java.nio.ByteBuffer.flip:()Ljava/nio/Buffer;
            pop
        11: .line 112
            aload 5 /* socketBufferPool */
            invokeinterface org.xnio.Pool.allocate:()Lorg/xnio/Pooled;
            astore 8 /* sendBuffer */
        start local 8 // org.xnio.Pooled sendBuffer
        12: .line 114
            aload 7 /* receiveBuffer */
            invokeinterface org.xnio.Pooled.getResource:()Ljava/lang/Object;
            checkcast java.nio.ByteBuffer
            invokevirtual java.nio.ByteBuffer.capacity:()I
            iload 12 /* packetBufferSize */
            if_icmplt 13
            aload 8 /* sendBuffer */
            invokeinterface org.xnio.Pooled.getResource:()Ljava/lang/Object;
            checkcast java.nio.ByteBuffer
            invokevirtual java.nio.ByteBuffer.capacity:()I
            iload 12 /* packetBufferSize */
            if_icmpge 14
        13: .line 115
      StackMap locals: org.xnio.ssl.JsseStreamConduit org.xnio.ssl.JsseSslConnection javax.net.ssl.SSLEngine org.xnio.conduits.StreamSourceConduit org.xnio.conduits.StreamSinkConduit org.xnio.Pool org.xnio.Pool org.xnio.Pooled org.xnio.Pooled top int javax.net.ssl.SSLSession int
      StackMap stack:
            getstatic org.xnio._private.Messages.msg:Lorg/xnio/_private/Messages;
            invokeinterface org.xnio._private.Messages.socketBufferTooSmall:()Ljava/lang/IllegalArgumentException;
            athrow
        14: .line 117
      StackMap locals:
      StackMap stack:
            aload 11 /* session */
            invokeinterface javax.net.ssl.SSLSession.getApplicationBufferSize:()I
            istore 13 /* applicationBufferSize */
        start local 13 // int applicationBufferSize
        15: .line 118
            aload 6 /* applicationBufferPool */
            invokeinterface org.xnio.Pool.allocate:()Lorg/xnio/Pooled;
            astore 9 /* readBuffer */
        start local 9 // org.xnio.Pooled readBuffer
        16: .line 120
            aload 9 /* readBuffer */
            invokeinterface org.xnio.Pooled.getResource:()Ljava/lang/Object;
            checkcast java.nio.ByteBuffer
            invokevirtual java.nio.ByteBuffer.capacity:()I
            iload 13 /* applicationBufferSize */
            if_icmpge 18
        17: .line 121
            getstatic org.xnio._private.Messages.msg:Lorg/xnio/_private/Messages;
            invokeinterface org.xnio._private.Messages.appBufferTooSmall:()Ljava/lang/IllegalArgumentException;
            athrow
        18: .line 123
      StackMap locals: org.xnio.ssl.JsseStreamConduit org.xnio.ssl.JsseSslConnection javax.net.ssl.SSLEngine org.xnio.conduits.StreamSourceConduit org.xnio.conduits.StreamSinkConduit org.xnio.Pool org.xnio.Pool org.xnio.Pooled org.xnio.Pooled org.xnio.Pooled int javax.net.ssl.SSLSession int int
      StackMap stack:
            iconst_1
            istore 10 /* ok */
        19: .line 124
            goto 23
      StackMap locals:
      StackMap stack: java.lang.Throwable
        20: astore 14
        21: .line 125
            iload 10 /* ok */
            ifne 22
            aload 9 /* readBuffer */
            invokeinterface org.xnio.Pooled.free:()V
        22: .line 126
      StackMap locals: java.lang.Throwable
      StackMap stack:
            aload 14
            athrow
        23: .line 125
      StackMap locals:
      StackMap stack:
            iload 10 /* ok */
            ifne 28
            aload 9 /* readBuffer */
            invokeinterface org.xnio.Pooled.free:()V
        end local 13 // int applicationBufferSize
        24: .line 127
            goto 28
        end local 9 // org.xnio.Pooled readBuffer
      StackMap locals: org.xnio.ssl.JsseStreamConduit org.xnio.ssl.JsseSslConnection javax.net.ssl.SSLEngine org.xnio.conduits.StreamSourceConduit org.xnio.conduits.StreamSinkConduit org.xnio.Pool org.xnio.Pool org.xnio.Pooled org.xnio.Pooled top int javax.net.ssl.SSLSession int
      StackMap stack: java.lang.Throwable
        25: astore 15
        26: .line 128
            iload 10 /* ok */
            ifne 27
            aload 8 /* sendBuffer */
            invokeinterface org.xnio.Pooled.free:()V
        27: .line 129
      StackMap locals: org.xnio.ssl.JsseStreamConduit org.xnio.ssl.JsseSslConnection javax.net.ssl.SSLEngine org.xnio.conduits.StreamSourceConduit org.xnio.conduits.StreamSinkConduit org.xnio.Pool org.xnio.Pool org.xnio.Pooled org.xnio.Pooled top int javax.net.ssl.SSLSession int top top java.lang.Throwable
      StackMap stack:
            aload 15
            athrow
        start local 9 // org.xnio.Pooled readBuffer
        28: .line 128
      StackMap locals: org.xnio.ssl.JsseStreamConduit org.xnio.ssl.JsseSslConnection javax.net.ssl.SSLEngine org.xnio.conduits.StreamSourceConduit org.xnio.conduits.StreamSinkConduit org.xnio.Pool org.xnio.Pool org.xnio.Pooled org.xnio.Pooled org.xnio.Pooled int javax.net.ssl.SSLSession int
      StackMap stack:
            iload 10 /* ok */
            ifne 33
            aload 8 /* sendBuffer */
            invokeinterface org.xnio.Pooled.free:()V
        29: .line 130
            goto 33
        end local 9 // org.xnio.Pooled readBuffer
        end local 8 // org.xnio.Pooled sendBuffer
      StackMap locals: org.xnio.ssl.JsseStreamConduit org.xnio.ssl.JsseSslConnection javax.net.ssl.SSLEngine org.xnio.conduits.StreamSourceConduit org.xnio.conduits.StreamSinkConduit org.xnio.Pool org.xnio.Pool org.xnio.Pooled top top int javax.net.ssl.SSLSession int
      StackMap stack: java.lang.Throwable
        30: astore 16
        31: .line 131
            iload 10 /* ok */
            ifne 32
            aload 7 /* receiveBuffer */
            invokeinterface org.xnio.Pooled.free:()V
        32: .line 132
      StackMap locals: org.xnio.ssl.JsseStreamConduit org.xnio.ssl.JsseSslConnection javax.net.ssl.SSLEngine org.xnio.conduits.StreamSourceConduit org.xnio.conduits.StreamSinkConduit org.xnio.Pool org.xnio.Pool org.xnio.Pooled top top int javax.net.ssl.SSLSession int top top top java.lang.Throwable
      StackMap stack:
            aload 16
            athrow
        start local 8 // org.xnio.Pooled sendBuffer
        start local 9 // org.xnio.Pooled readBuffer
        33: .line 131
      StackMap locals: org.xnio.ssl.JsseStreamConduit org.xnio.ssl.JsseSslConnection javax.net.ssl.SSLEngine org.xnio.conduits.StreamSourceConduit org.xnio.conduits.StreamSinkConduit org.xnio.Pool org.xnio.Pool org.xnio.Pooled org.xnio.Pooled org.xnio.Pooled int javax.net.ssl.SSLSession int
      StackMap stack:
            iload 10 /* ok */
            ifne 34
            aload 7 /* receiveBuffer */
            invokeinterface org.xnio.Pooled.free:()V
        34: .line 133
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 7 /* receiveBuffer */
            putfield org.xnio.ssl.JsseStreamConduit.receiveBuffer:Lorg/xnio/Pooled;
        35: .line 134
            aload 0 /* this */
            aload 8 /* sendBuffer */
            putfield org.xnio.ssl.JsseStreamConduit.sendBuffer:Lorg/xnio/Pooled;
        36: .line 135
            aload 0 /* this */
            aload 9 /* readBuffer */
            putfield org.xnio.ssl.JsseStreamConduit.readBuffer:Lorg/xnio/Pooled;
        37: .line 136
            aload 7 /* receiveBuffer */
            invokeinterface org.xnio.Pooled.getResource:()Ljava/lang/Object;
            checkcast java.nio.ByteBuffer
            invokevirtual java.nio.ByteBuffer.clear:()Ljava/nio/Buffer;
            iconst_0
            invokevirtual java.nio.Buffer.limit:(I)Ljava/nio/Buffer;
            pop
        38: .line 137
            aload 3 /* sourceConduit */
            invokeinterface org.xnio.conduits.StreamSourceConduit.getReadThread:()Lorg/xnio/XnioIoThread;
            aload 4 /* sinkConduit */
            invokeinterface org.xnio.conduits.StreamSinkConduit.getWriteThread:()Lorg/xnio/XnioIoThread;
            if_acmpeq 40
        39: .line 138
            new java.lang.IllegalArgumentException
            dup
            ldc "Source and sink thread mismatch"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        40: .line 140
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* connection */
            putfield org.xnio.ssl.JsseStreamConduit.connection:Lorg/xnio/ssl/JsseSslConnection;
        41: .line 141
            aload 0 /* this */
            aload 2 /* engine */
            putfield org.xnio.ssl.JsseStreamConduit.engine:Ljavax/net/ssl/SSLEngine;
        42: .line 142
            aload 0 /* this */
            aload 3 /* sourceConduit */
            putfield org.xnio.ssl.JsseStreamConduit.sourceConduit:Lorg/xnio/conduits/StreamSourceConduit;
        43: .line 143
            aload 0 /* this */
            aload 4 /* sinkConduit */
            putfield org.xnio.ssl.JsseStreamConduit.sinkConduit:Lorg/xnio/conduits/StreamSinkConduit;
        44: .line 144
            aload 3 /* sourceConduit */
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.readReady:Lorg/xnio/conduits/ReadReadyHandler;
            invokeinterface org.xnio.conduits.StreamSourceConduit.setReadReadyHandler:(Lorg/xnio/conduits/ReadReadyHandler;)V
        45: .line 145
            aload 4 /* sinkConduit */
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.writeReady:Lorg/xnio/conduits/WriteReadyHandler;
            invokeinterface org.xnio.conduits.StreamSinkConduit.setWriteReadyHandler:(Lorg/xnio/conduits/WriteReadyHandler;)V
        46: .line 146
            return
        end local 12 // int packetBufferSize
        end local 11 // javax.net.ssl.SSLSession session
        end local 10 // boolean ok
        end local 9 // org.xnio.Pooled readBuffer
        end local 8 // org.xnio.Pooled sendBuffer
        end local 7 // org.xnio.Pooled receiveBuffer
        end local 6 // org.xnio.Pool applicationBufferPool
        end local 5 // org.xnio.Pool socketBufferPool
        end local 4 // org.xnio.conduits.StreamSinkConduit sinkConduit
        end local 3 // org.xnio.conduits.StreamSourceConduit sourceConduit
        end local 2 // javax.net.ssl.SSLEngine engine
        end local 1 // org.xnio.ssl.JsseSslConnection connection
        end local 0 // org.xnio.ssl.JsseStreamConduit this
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0   47     0                   this  Lorg/xnio/ssl/JsseStreamConduit;
            0   47     1             connection  Lorg/xnio/ssl/JsseSslConnection;
            0   47     2                 engine  Ljavax/net/ssl/SSLEngine;
            0   47     3          sourceConduit  Lorg/xnio/conduits/StreamSourceConduit;
            0   47     4            sinkConduit  Lorg/xnio/conduits/StreamSinkConduit;
            0   47     5       socketBufferPool  Lorg/xnio/Pool<Ljava/nio/ByteBuffer;>;
            0   47     6  applicationBufferPool  Lorg/xnio/Pool<Ljava/nio/ByteBuffer;>;
           10   47     7          receiveBuffer  Lorg/xnio/Pooled<Ljava/nio/ByteBuffer;>;
           12   30     8             sendBuffer  Lorg/xnio/Pooled<Ljava/nio/ByteBuffer;>;
           33   47     8             sendBuffer  Lorg/xnio/Pooled<Ljava/nio/ByteBuffer;>;
           16   25     9             readBuffer  Lorg/xnio/Pooled<Ljava/nio/ByteBuffer;>;
           28   30     9             readBuffer  Lorg/xnio/Pooled<Ljava/nio/ByteBuffer;>;
           33   47     9             readBuffer  Lorg/xnio/Pooled<Ljava/nio/ByteBuffer;>;
            7   47    10                     ok  Z
            8   47    11                session  Ljavax/net/ssl/SSLSession;
            9   47    12       packetBufferSize  I
           15   24    13  applicationBufferSize  I
      Exception table:
        from    to  target  type
          16    20      20  any
          12    25      25  any
          10    30      30  any
    Signature: (Lorg/xnio/ssl/JsseSslConnection;Ljavax/net/ssl/SSLEngine;Lorg/xnio/conduits/StreamSourceConduit;Lorg/xnio/conduits/StreamSinkConduit;Lorg/xnio/Pool<Ljava/nio/ByteBuffer;>;Lorg/xnio/Pool<Ljava/nio/ByteBuffer;>;)V
    MethodParameters:
                       Name  Flags
      connection             final
      engine                 final
      sourceConduit          final
      sinkConduit            final
      socketBufferPool       final
      applicationBufferPool  final

  public java.lang.String getStatus();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // org.xnio.ssl.JsseStreamConduit this
         0: .line 207
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 1 /* b */
        start local 1 // java.lang.StringBuilder b
         1: .line 208
            aload 1 /* b */
            ldc "General flags:"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         2: .line 209
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.state:I
            istore 2 /* state */
        start local 2 // int state
         3: .line 210
            iload 2 /* state */
            ldc 131072
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 4
            aload 1 /* b */
            ldc " TLS"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         4: .line 211
      StackMap locals: java.lang.StringBuilder int
      StackMap stack:
            iload 2 /* state */
            ldc 262144
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 5
            aload 1 /* b */
            ldc " INLINE_TASKS"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         5: .line 212
      StackMap locals:
      StackMap stack:
            iload 2 /* state */
            ldc 524288
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 6
            aload 1 /* b */
            ldc " TASK_QUEUED"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         6: .line 213
      StackMap locals:
      StackMap stack:
            iload 2 /* state */
            ldc 1048576
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 7
            aload 1 /* b */
            ldc " NEED_ENGINE_TASK"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         7: .line 214
      StackMap locals:
      StackMap stack:
            iload 2 /* state */
            ldc 2097152
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 8
            aload 1 /* b */
            ldc " FLUSH_NEEDED"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         8: .line 215
      StackMap locals:
      StackMap stack:
            aload 1 /* b */
            ldc "\nRead flags:"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         9: .line 216
            iload 2 /* state */
            iconst_1
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 10
            aload 1 /* b */
            ldc " SHUTDOWN"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        10: .line 217
      StackMap locals:
      StackMap stack:
            iload 2 /* state */
            iconst_2
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 11
            aload 1 /* b */
            ldc " EOF"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        11: .line 218
      StackMap locals:
      StackMap stack:
            iload 2 /* state */
            iconst_4
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 12
            aload 1 /* b */
            ldc " RESUMED"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        12: .line 219
      StackMap locals:
      StackMap stack:
            iload 2 /* state */
            bipush 8
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 13
            aload 1 /* b */
            ldc " UP_RESUMED"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        13: .line 220
      StackMap locals:
      StackMap stack:
            iload 2 /* state */
            bipush 16
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 14
            aload 1 /* b */
            ldc " WAKEUP"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        14: .line 221
      StackMap locals:
      StackMap stack:
            iload 2 /* state */
            bipush 32
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 15
            aload 1 /* b */
            ldc " READY"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        15: .line 222
      StackMap locals:
      StackMap stack:
            iload 2 /* state */
            bipush 64
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 16
            aload 1 /* b */
            ldc " NEEDS_WRITE"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        16: .line 223
      StackMap locals:
      StackMap stack:
            aload 1 /* b */
            ldc "\nWrite flags:"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        17: .line 224
            iload 2 /* state */
            sipush 256
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 18
            aload 1 /* b */
            ldc " SHUTDOWN"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        18: .line 225
      StackMap locals:
      StackMap stack:
            iload 2 /* state */
            sipush 512
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 19
            aload 1 /* b */
            ldc " SHUTDOWN2"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        19: .line 226
      StackMap locals:
      StackMap stack:
            iload 2 /* state */
            sipush 1024
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 20
            aload 1 /* b */
            ldc " SHUTDOWN3"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        20: .line 227
      StackMap locals:
      StackMap stack:
            iload 2 /* state */
            sipush 2048
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 21
            aload 1 /* b */
            ldc " FINISHED"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        21: .line 228
      StackMap locals:
      StackMap stack:
            iload 2 /* state */
            sipush 4096
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 22
            aload 1 /* b */
            ldc " RESUMED"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        22: .line 229
      StackMap locals:
      StackMap stack:
            iload 2 /* state */
            sipush 8192
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 23
            aload 1 /* b */
            ldc " UP_RESUMED"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        23: .line 230
      StackMap locals:
      StackMap stack:
            iload 2 /* state */
            sipush 16384
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 24
            aload 1 /* b */
            ldc " WAKEUP"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        24: .line 231
      StackMap locals:
      StackMap stack:
            iload 2 /* state */
            ldc 32768
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 25
            aload 1 /* b */
            ldc " READY"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        25: .line 232
      StackMap locals:
      StackMap stack:
            iload 2 /* state */
            ldc 65536
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 26
            aload 1 /* b */
            ldc " NEEDS_READ"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        26: .line 233
      StackMap locals:
      StackMap stack:
            aload 1 /* b */
            bipush 10
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        27: .line 234
            aload 1 /* b */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 2 // int state
        end local 1 // java.lang.StringBuilder b
        end local 0 // org.xnio.ssl.JsseStreamConduit this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   28     0   this  Lorg/xnio/ssl/JsseStreamConduit;
            1   28     1      b  Ljava/lang/StringBuilder;
            3   28     2  state  I

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // org.xnio.ssl.JsseStreamConduit this
         0: .line 238
            ldc "JSSE Stream Conduit for %s, status:%n%s"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.connection:Lorg/xnio/ssl/JsseSslConnection;
            aastore
            dup
            iconst_1
            aload 0 /* this */
            invokevirtual org.xnio.ssl.JsseStreamConduit.getStatus:()Ljava/lang/String;
            aastore
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            areturn
        end local 0 // org.xnio.ssl.JsseStreamConduit this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/xnio/ssl/JsseStreamConduit;

  public org.xnio.XnioWorker getWorker();
    descriptor: ()Lorg/xnio/XnioWorker;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.xnio.ssl.JsseStreamConduit this
         0: .line 248
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.connection:Lorg/xnio/ssl/JsseSslConnection;
            invokevirtual org.xnio.ssl.JsseSslConnection.getIoThread:()Lorg/xnio/XnioIoThread;
            invokevirtual org.xnio.XnioIoThread.getWorker:()Lorg/xnio/XnioWorker;
            areturn
        end local 0 // org.xnio.ssl.JsseStreamConduit this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/xnio/ssl/JsseStreamConduit;

  public org.xnio.XnioIoThread getReadThread();
    descriptor: ()Lorg/xnio/XnioIoThread;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.xnio.ssl.JsseStreamConduit this
         0: .line 252
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.connection:Lorg/xnio/ssl/JsseSslConnection;
            invokevirtual org.xnio.ssl.JsseSslConnection.getIoThread:()Lorg/xnio/XnioIoThread;
            areturn
        end local 0 // org.xnio.ssl.JsseStreamConduit this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/xnio/ssl/JsseStreamConduit;

  public org.xnio.XnioIoThread getWriteThread();
    descriptor: ()Lorg/xnio/XnioIoThread;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.xnio.ssl.JsseStreamConduit this
         0: .line 256
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.connection:Lorg/xnio/ssl/JsseSslConnection;
            invokevirtual org.xnio.ssl.JsseSslConnection.getIoThread:()Lorg/xnio/XnioIoThread;
            areturn
        end local 0 // org.xnio.ssl.JsseStreamConduit this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/xnio/ssl/JsseStreamConduit;

  void beginHandshake();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // org.xnio.ssl.JsseStreamConduit this
         0: .line 326
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.state:I
            istore 1 /* state */
        start local 1 // int state
         1: .line 327
            iload 1 /* state */
            sipush 258
            invokestatic org.xnio.Bits.anyAreSet:(II)Z
            ifeq 3
         2: .line 328
            new java.nio.channels.ClosedChannelException
            dup
            invokespecial java.nio.channels.ClosedChannelException.<init>:()V
            athrow
         3: .line 330
      StackMap locals: int
      StackMap stack:
            iload 1 /* state */
            ldc 131072
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            ifeq 5
         4: .line 331
            aload 0 /* this */
            iload 1 /* state */
            ldc 131072
            ior
            putfield org.xnio.ssl.JsseStreamConduit.state:I
         5: .line 333
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.engine:Ljavax/net/ssl/SSLEngine;
            invokevirtual javax.net.ssl.SSLEngine.beginHandshake:()V
         6: .line 334
            return
        end local 1 // int state
        end local 0 // org.xnio.ssl.JsseStreamConduit this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    7     0   this  Lorg/xnio/ssl/JsseStreamConduit;
            1    7     1  state  I
    Exceptions:
      throws java.io.IOException

  javax.net.ssl.SSLSession getSslSession();
    descriptor: ()Ljavax/net/ssl/SSLSession;
    flags: (0x0000) 
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.xnio.ssl.JsseStreamConduit this
         0: .line 337
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.state:I
            ldc 131072
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 1
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.engine:Ljavax/net/ssl/SSLEngine;
            invokevirtual javax.net.ssl.SSLEngine.getSession:()Ljavax/net/ssl/SSLSession;
            goto 2
      StackMap locals:
      StackMap stack:
         1: aconst_null
      StackMap locals:
      StackMap stack: javax.net.ssl.SSLSession
         2: areturn
        end local 0 // org.xnio.ssl.JsseStreamConduit this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/xnio/ssl/JsseStreamConduit;

  javax.net.ssl.SSLEngine getEngine();
    descriptor: ()Ljavax/net/ssl/SSLEngine;
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.xnio.ssl.JsseStreamConduit this
         0: .line 341
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.engine:Ljavax/net/ssl/SSLEngine;
            areturn
        end local 0 // org.xnio.ssl.JsseStreamConduit this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/xnio/ssl/JsseStreamConduit;

  boolean isTls();
    descriptor: ()Z
    flags: (0x0000) 
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.xnio.ssl.JsseStreamConduit this
         0: .line 345
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.state:I
            ldc 131072
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ireturn
        end local 0 // org.xnio.ssl.JsseStreamConduit this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/xnio/ssl/JsseStreamConduit;

  boolean markTerminated();
    descriptor: ()Z
    flags: (0x0000) 
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.xnio.ssl.JsseStreamConduit this
         0: .line 349
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.readBuffer:Lorg/xnio/Pooled;
            invokeinterface org.xnio.Pooled.free:()V
         1: .line 350
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.receiveBuffer:Lorg/xnio/Pooled;
            invokeinterface org.xnio.Pooled.free:()V
         2: .line 351
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.sendBuffer:Lorg/xnio/Pooled;
            invokeinterface org.xnio.Pooled.free:()V
         3: .line 352
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.state:I
            sipush 2049
            invokestatic org.xnio.Bits.anyAreClear:(II)Z
            ifeq 6
         4: .line 353
            aload 0 /* this */
            dup
            getfield org.xnio.ssl.JsseStreamConduit.state:I
            sipush 3841
            ior
            putfield org.xnio.ssl.JsseStreamConduit.state:I
         5: .line 354
            iconst_1
            ireturn
         6: .line 356
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 0 // org.xnio.ssl.JsseStreamConduit this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lorg/xnio/ssl/JsseStreamConduit;

  public void run();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=8, args_size=1
        start local 0 // org.xnio.ssl.JsseStreamConduit this
         0: .line 367
            getstatic org.xnio.ssl.JsseStreamConduit.$assertionsDisabled:Z
            ifne 1
            invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
            aload 0 /* this */
            invokevirtual org.xnio.ssl.JsseStreamConduit.getWriteThread:()Lorg/xnio/XnioIoThread;
            if_acmpeq 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 368
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.state:I
            istore 1 /* state */
        start local 1 // int state
         2: .line 369
            iload 1 /* state */
            ldc 524288
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            istore 2 /* flagTaskQueued */
        start local 2 // boolean flagTaskQueued
         3: .line 370
            iload 2 /* flagTaskQueued */
            istore 3 /* modify */
        start local 3 // boolean modify
         4: .line 371
            iconst_0
            istore 4 /* queueTask */
        start local 4 // boolean queueTask
         5: .line 372
            iload 1 /* state */
            ldc -524289
            iand
            istore 1 /* state */
         6: .line 375
            iload 1 /* state */
            ldc 1048576
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 8
         7: .line 376
            new java.lang.UnsupportedOperationException
            dup
            invokespecial java.lang.UnsupportedOperationException.<init>:()V
            athrow
         8: .line 379
      StackMap locals: org.xnio.ssl.JsseStreamConduit int int int int
      StackMap stack:
            iload 1 /* state */
            sipush 16384
            invokestatic org.xnio.Bits.anyAreSet:(II)Z
            ifne 9
            iload 1 /* state */
            ldc 36864
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 49
         9: .line 380
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.writeReadyHandler:Lorg/xnio/conduits/WriteReadyHandler;
            astore 5 /* writeReadyHandler */
        start local 5 // org.xnio.conduits.WriteReadyHandler writeReadyHandler
        10: .line 381
            iload 1 /* state */
            sipush 16384
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 13
        11: .line 382
            iload 1 /* state */
            sipush -16385
            iand
            sipush 4096
            ior
            istore 1 /* state */
        12: .line 383
            iconst_1
            istore 3 /* modify */
        13: .line 385
      StackMap locals: org.xnio.conduits.WriteReadyHandler
      StackMap stack:
            aload 5 /* writeReadyHandler */
            ifnull 43
        14: .line 386
            iload 1 /* state */
            sipush 4096
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 38
        15: .line 389
            iload 3 /* modify */
            ifeq 18
        16: .line 390
            iconst_0
            istore 3 /* modify */
        17: .line 391
            aload 0 /* this */
            iload 1 /* state */
            putfield org.xnio.ssl.JsseStreamConduit.state:I
        18: .line 393
      StackMap locals:
      StackMap stack:
            aload 5 /* writeReadyHandler */
            invokeinterface org.xnio.conduits.WriteReadyHandler.writeReady:()V
        19: .line 394
            goto 27
      StackMap locals:
      StackMap stack: java.lang.Throwable
        20: pop
        21: .line 398
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.state:I
            ldc -524289
            iand
            istore 1 /* state */
        22: .line 400
            iconst_1
            istore 3 /* modify */
            goto 29
        23: .line 395
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 6
        24: .line 398
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.state:I
            ldc -524289
            iand
            istore 1 /* state */
        25: .line 400
            iconst_1
            istore 3 /* modify */
        26: .line 401
            aload 6
            athrow
        27: .line 398
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.state:I
            ldc -524289
            iand
            istore 1 /* state */
        28: .line 400
            iconst_1
            istore 3 /* modify */
        29: .line 406
      StackMap locals:
      StackMap stack:
            iload 1 /* state */
            sipush 4096
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 49
        30: .line 407
            iload 1 /* state */
            ldc 32768
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifne 35
            iload 1 /* state */
            ldc 65536
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 35
            iload 1 /* state */
            bipush 8
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            ifeq 35
        31: .line 408
            iload 1 /* state */
            bipush 8
            ior
            istore 1 /* state */
        32: .line 409
            iconst_1
            istore 3 /* modify */
        33: .line 410
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.sourceConduit:Lorg/xnio/conduits/StreamSourceConduit;
            invokeinterface org.xnio.conduits.StreamSourceConduit.resumeReads:()V
        34: .line 411
            goto 49
      StackMap locals:
      StackMap stack:
        35: iload 1 /* state */
            sipush 8192
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            ifeq 49
        36: .line 412
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.sinkConduit:Lorg/xnio/conduits/StreamSinkConduit;
            invokeinterface org.xnio.conduits.StreamSinkConduit.resumeWrites:()V
        37: .line 415
            goto 49
        38: .line 416
      StackMap locals:
      StackMap stack:
            iload 1 /* state */
            bipush 68
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            ifeq 49
            iload 1 /* state */
            sipush 8192
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 49
        39: .line 417
            iload 1 /* state */
            sipush -8193
            iand
            istore 1 /* state */
        40: .line 418
            iconst_1
            istore 3 /* modify */
        41: .line 419
            aload 0 /* this */
            invokevirtual org.xnio.ssl.JsseStreamConduit.suspendWrites:()V
        42: .line 422
            goto 49
        43: .line 424
      StackMap locals:
      StackMap stack:
            iload 1 /* state */
            sipush -4097
            iand
            istore 1 /* state */
        44: .line 425
            iconst_1
            istore 3 /* modify */
        45: .line 426
            iload 1 /* state */
            bipush 68
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            ifeq 49
            iload 1 /* state */
            sipush 8192
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 49
        46: .line 427
            iload 1 /* state */
            sipush -8193
            iand
            istore 1 /* state */
        47: .line 428
            iconst_1
            istore 3 /* modify */
        48: .line 429
            aload 0 /* this */
            invokevirtual org.xnio.ssl.JsseStreamConduit.suspendWrites:()V
        end local 5 // org.xnio.conduits.WriteReadyHandler writeReadyHandler
        49: .line 434
      StackMap locals:
      StackMap stack:
            iload 1 /* state */
            bipush 16
            invokestatic org.xnio.Bits.anyAreSet:(II)Z
            ifne 50
            iload 1 /* state */
            bipush 36
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 100
        50: .line 435
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.readReadyHandler:Lorg/xnio/conduits/ReadReadyHandler;
            astore 5 /* readReadyHandler */
        start local 5 // org.xnio.conduits.ReadReadyHandler readReadyHandler
        51: .line 436
            iload 1 /* state */
            bipush 16
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 54
        52: .line 437
            iload 1 /* state */
            bipush -17
            iand
            iconst_4
            ior
            istore 1 /* state */
        53: .line 438
            iconst_1
            istore 3 /* modify */
        54: .line 440
      StackMap locals: org.xnio.conduits.ReadReadyHandler
      StackMap stack:
            aload 5 /* readReadyHandler */
            ifnull 89
        55: .line 441
            iload 1 /* state */
            iconst_4
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 84
        56: .line 444
            iload 3 /* modify */
            ifeq 59
        57: .line 445
            iconst_0
            istore 3 /* modify */
        58: .line 446
            aload 0 /* this */
            iload 1 /* state */
            putfield org.xnio.ssl.JsseStreamConduit.state:I
        59: .line 448
      StackMap locals:
      StackMap stack:
            aload 5 /* readReadyHandler */
            invokeinterface org.xnio.conduits.ReadReadyHandler.readReady:()V
        60: .line 449
            goto 68
      StackMap locals:
      StackMap stack: java.lang.Throwable
        61: pop
        62: .line 453
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.state:I
            ldc -524289
            iand
            istore 1 /* state */
        63: .line 454
            iconst_1
            istore 3 /* modify */
            goto 70
        64: .line 450
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 6
        65: .line 453
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.state:I
            ldc -524289
            iand
            istore 1 /* state */
        66: .line 454
            iconst_1
            istore 3 /* modify */
        67: .line 455
            aload 6
            athrow
        68: .line 453
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.state:I
            ldc -524289
            iand
            istore 1 /* state */
        69: .line 454
            iconst_1
            istore 3 /* modify */
        70: .line 460
      StackMap locals:
      StackMap stack:
            iload 1 /* state */
            iconst_4
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 100
        71: .line 461
            iload 1 /* state */
            bipush 32
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 76
        72: .line 462
            iload 2 /* flagTaskQueued */
            ifne 100
        73: .line 463
            iload 1 /* state */
            ldc 524288
            ior
            istore 1 /* state */
        74: .line 464
            iconst_1
            dup
            istore 4 /* queueTask */
            istore 3 /* modify */
        75: .line 466
            goto 100
      StackMap locals:
      StackMap stack:
        76: iload 1 /* state */
            bipush 64
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 81
            iload 1 /* state */
            sipush 8192
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            ifeq 81
        77: .line 467
            iload 1 /* state */
            sipush 8192
            ior
            istore 1 /* state */
        78: .line 468
            iconst_1
            istore 3 /* modify */
        79: .line 469
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.sinkConduit:Lorg/xnio/conduits/StreamSinkConduit;
            invokeinterface org.xnio.conduits.StreamSinkConduit.resumeWrites:()V
        80: .line 470
            goto 100
      StackMap locals:
      StackMap stack:
        81: iload 1 /* state */
            bipush 8
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            ifeq 100
        82: .line 471
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.sourceConduit:Lorg/xnio/conduits/StreamSourceConduit;
            invokeinterface org.xnio.conduits.StreamSourceConduit.resumeReads:()V
        83: .line 474
            goto 100
        84: .line 475
      StackMap locals:
      StackMap stack:
            iload 1 /* state */
            ldc 69632
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            ifeq 100
            iload 1 /* state */
            bipush 8
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 100
        85: .line 476
            iload 1 /* state */
            bipush -9
            iand
            istore 1 /* state */
        86: .line 477
            iconst_1
            istore 3 /* modify */
        87: .line 478
            aload 0 /* this */
            invokevirtual org.xnio.ssl.JsseStreamConduit.suspendReads:()V
        88: .line 481
            goto 100
        89: .line 483
      StackMap locals:
      StackMap stack:
            iload 1 /* state */
            bipush -5
            iand
            istore 1 /* state */
        90: .line 484
            iconst_1
            istore 3 /* modify */
        91: .line 485
            iload 1 /* state */
            ldc 69632
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            ifeq 100
            iload 1 /* state */
            bipush 8
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 100
        92: .line 486
            iload 1 /* state */
            bipush -9
            iand
            istore 1 /* state */
        93: .line 487
            aload 0 /* this */
            invokevirtual org.xnio.ssl.JsseStreamConduit.suspendReads:()V
        end local 5 // org.xnio.conduits.ReadReadyHandler readReadyHandler
        94: .line 491
            goto 100
      StackMap locals: org.xnio.ssl.JsseStreamConduit int int int int
      StackMap stack: java.lang.Throwable
        95: astore 7
        96: .line 492
            iload 3 /* modify */
            ifeq 99
        97: .line 493
            aload 0 /* this */
            iload 1 /* state */
            putfield org.xnio.ssl.JsseStreamConduit.state:I
        98: .line 495
            iload 4 /* queueTask */
            ifeq 99
            aload 0 /* this */
            invokevirtual org.xnio.ssl.JsseStreamConduit.getReadThread:()Lorg/xnio/XnioIoThread;
            aload 0 /* this */
            invokevirtual org.xnio.XnioIoThread.execute:(Ljava/lang/Runnable;)V
        99: .line 497
      StackMap locals: org.xnio.ssl.JsseStreamConduit int int int int top top java.lang.Throwable
      StackMap stack:
            aload 7
            athrow
       100: .line 492
      StackMap locals: org.xnio.ssl.JsseStreamConduit int int int int
      StackMap stack:
            iload 3 /* modify */
            ifeq 103
       101: .line 493
            aload 0 /* this */
            iload 1 /* state */
            putfield org.xnio.ssl.JsseStreamConduit.state:I
       102: .line 495
            iload 4 /* queueTask */
            ifeq 103
            aload 0 /* this */
            invokevirtual org.xnio.ssl.JsseStreamConduit.getReadThread:()Lorg/xnio/XnioIoThread;
            aload 0 /* this */
            invokevirtual org.xnio.XnioIoThread.execute:(Ljava/lang/Runnable;)V
       103: .line 498
      StackMap locals:
      StackMap stack:
            return
        end local 4 // boolean queueTask
        end local 3 // boolean modify
        end local 2 // boolean flagTaskQueued
        end local 1 // int state
        end local 0 // org.xnio.ssl.JsseStreamConduit this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0  104     0               this  Lorg/xnio/ssl/JsseStreamConduit;
            2  104     1              state  I
            3  104     2     flagTaskQueued  Z
            4  104     3             modify  Z
            5  104     4          queueTask  Z
           10   49     5  writeReadyHandler  Lorg/xnio/conduits/WriteReadyHandler;
           51   94     5   readReadyHandler  Lorg/xnio/conduits/ReadReadyHandler;
      Exception table:
        from    to  target  type
          15    19      20  Class java.lang.Throwable
          15    21      23  any
          56    60      61  Class java.lang.Throwable
          56    62      64  any
           6    95      95  any

  public void setWriteReadyHandler(org.xnio.conduits.WriteReadyHandler);
    descriptor: (Lorg/xnio/conduits/WriteReadyHandler;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.xnio.ssl.JsseStreamConduit this
        start local 1 // org.xnio.conduits.WriteReadyHandler handler
         0: .line 508
            aload 0 /* this */
            aload 1 /* handler */
            putfield org.xnio.ssl.JsseStreamConduit.writeReadyHandler:Lorg/xnio/conduits/WriteReadyHandler;
         1: .line 509
            return
        end local 1 // org.xnio.conduits.WriteReadyHandler handler
        end local 0 // org.xnio.ssl.JsseStreamConduit this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/xnio/ssl/JsseStreamConduit;
            0    2     1  handler  Lorg/xnio/conduits/WriteReadyHandler;
    MethodParameters:
         Name  Flags
      handler  final

  public void setReadReadyHandler(org.xnio.conduits.ReadReadyHandler);
    descriptor: (Lorg/xnio/conduits/ReadReadyHandler;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.xnio.ssl.JsseStreamConduit this
        start local 1 // org.xnio.conduits.ReadReadyHandler handler
         0: .line 512
            aload 0 /* this */
            aload 1 /* handler */
            putfield org.xnio.ssl.JsseStreamConduit.readReadyHandler:Lorg/xnio/conduits/ReadReadyHandler;
         1: .line 513
            return
        end local 1 // org.xnio.conduits.ReadReadyHandler handler
        end local 0 // org.xnio.ssl.JsseStreamConduit this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/xnio/ssl/JsseStreamConduit;
            0    2     1  handler  Lorg/xnio/conduits/ReadReadyHandler;
    MethodParameters:
         Name  Flags
      handler  final

  public void writeReady();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.xnio.ssl.JsseStreamConduit this
         0: .line 519
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.state:I
            istore 1 /* state */
        start local 1 // int state
         1: .line 520
            iload 1 /* state */
            ldc 32768
            ior
            istore 1 /* state */
         2: .line 521
            iload 1 /* state */
            bipush 64
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 4
         3: .line 522
            iload 1 /* state */
            bipush 32
            ior
            istore 1 /* state */
         4: .line 524
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            iload 1 /* state */
            putfield org.xnio.ssl.JsseStreamConduit.state:I
         5: .line 526
            iload 1 /* state */
            ldc 524288
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            ifeq 7
         6: .line 527
            aload 0 /* this */
            invokevirtual org.xnio.ssl.JsseStreamConduit.run:()V
         7: .line 529
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.state:I
            istore 1 /* state */
         8: .line 530
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.sinkConduit:Lorg/xnio/conduits/StreamSinkConduit;
            invokeinterface org.xnio.conduits.StreamSinkConduit.isWriteResumed:()Z
            ifeq 10
            iload 1 /* state */
            sipush 4160
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            ifeq 10
         9: .line 531
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.sinkConduit:Lorg/xnio/conduits/StreamSinkConduit;
            invokeinterface org.xnio.conduits.StreamSinkConduit.suspendWrites:()V
        10: .line 533
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.sourceConduit:Lorg/xnio/conduits/StreamSourceConduit;
            invokeinterface org.xnio.conduits.StreamSourceConduit.isReadResumed:()Z
            ifeq 12
            iload 1 /* state */
            ldc 65540
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            ifeq 12
        11: .line 534
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.sourceConduit:Lorg/xnio/conduits/StreamSourceConduit;
            invokeinterface org.xnio.conduits.StreamSourceConduit.suspendReads:()V
        12: .line 536
      StackMap locals:
      StackMap stack:
            return
        end local 1 // int state
        end local 0 // org.xnio.ssl.JsseStreamConduit this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   13     0   this  Lorg/xnio/ssl/JsseStreamConduit;
            1   13     1  state  I

  public void readReady();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.xnio.ssl.JsseStreamConduit this
         0: .line 542
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.state:I
            istore 1 /* state */
        start local 1 // int state
         1: .line 543
            iload 1 /* state */
            bipush 32
            ior
            istore 1 /* state */
         2: .line 544
            iload 1 /* state */
            ldc 65536
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 4
         3: .line 545
            iload 1 /* state */
            ldc 32768
            ior
            istore 1 /* state */
         4: .line 547
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            iload 1 /* state */
            putfield org.xnio.ssl.JsseStreamConduit.state:I
         5: .line 549
            iload 1 /* state */
            ldc 524288
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            ifeq 7
         6: .line 550
            aload 0 /* this */
            invokevirtual org.xnio.ssl.JsseStreamConduit.run:()V
         7: .line 552
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.state:I
            istore 1 /* state */
         8: .line 553
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.sourceConduit:Lorg/xnio/conduits/StreamSourceConduit;
            invokeinterface org.xnio.conduits.StreamSourceConduit.isReadResumed:()Z
            ifeq 10
            iload 1 /* state */
            ldc 65540
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            ifeq 10
         9: .line 554
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.sourceConduit:Lorg/xnio/conduits/StreamSourceConduit;
            invokeinterface org.xnio.conduits.StreamSourceConduit.suspendReads:()V
        10: .line 556
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.sinkConduit:Lorg/xnio/conduits/StreamSinkConduit;
            invokeinterface org.xnio.conduits.StreamSinkConduit.isWriteResumed:()Z
            ifeq 12
            iload 1 /* state */
            sipush 4160
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            ifeq 12
        11: .line 557
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.sinkConduit:Lorg/xnio/conduits/StreamSinkConduit;
            invokeinterface org.xnio.conduits.StreamSinkConduit.suspendWrites:()V
        12: .line 559
      StackMap locals:
      StackMap stack:
            return
        end local 1 // int state
        end local 0 // org.xnio.ssl.JsseStreamConduit this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   13     0   this  Lorg/xnio/ssl/JsseStreamConduit;
            1   13     1  state  I

  public void suspendWrites();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // org.xnio.ssl.JsseStreamConduit this
         0: .line 570
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.state:I
            istore 1 /* state */
        start local 1 // int state
         1: .line 572
            iload 1 /* state */
            sipush 4096
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 13
         2: .line 573
            iload 1 /* state */
            sipush -4097
            iand
            istore 1 /* state */
         3: .line 574
            iload 1 /* state */
            sipush 8192
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 6
            iload 1 /* state */
            bipush 64
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            ifeq 6
         4: .line 576
            iload 1 /* state */
            sipush -8193
            iand
            istore 1 /* state */
         5: .line 577
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.sinkConduit:Lorg/xnio/conduits/StreamSinkConduit;
            invokeinterface org.xnio.conduits.StreamSinkConduit.suspendWrites:()V
         6: .line 579
      StackMap locals: int
      StackMap stack:
            iload 1 /* state */
            bipush 8
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 13
            iload 1 /* state */
            iconst_4
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            ifeq 13
         7: .line 581
            iload 1 /* state */
            bipush -9
            iand
            istore 1 /* state */
         8: .line 582
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.sourceConduit:Lorg/xnio/conduits/StreamSourceConduit;
            invokeinterface org.xnio.conduits.StreamSourceConduit.suspendReads:()V
         9: .line 585
            goto 13
      StackMap locals:
      StackMap stack: java.lang.Throwable
        10: astore 2
        11: .line 586
            aload 0 /* this */
            iload 1 /* state */
            putfield org.xnio.ssl.JsseStreamConduit.state:I
        12: .line 587
            aload 2
            athrow
        13: .line 586
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* state */
            putfield org.xnio.ssl.JsseStreamConduit.state:I
        14: .line 588
            return
        end local 1 // int state
        end local 0 // org.xnio.ssl.JsseStreamConduit this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   15     0   this  Lorg/xnio/ssl/JsseStreamConduit;
            1   15     1  state  I
      Exception table:
        from    to  target  type
           1    10      10  any

  public void resumeWrites();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=1
        start local 0 // org.xnio.ssl.JsseStreamConduit this
         0: .line 591
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.state:I
            istore 1 /* state */
        start local 1 // int state
         1: .line 592
            iload 1 /* state */
            sipush 4096
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            ifeq 25
         2: .line 593
            iload 1 /* state */
            sipush 2048
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 5
         3: .line 595
            aload 0 /* this */
            invokevirtual org.xnio.ssl.JsseStreamConduit.wakeupWrites:()V
         4: .line 596
            return
         5: .line 598
      StackMap locals: int
      StackMap stack:
            iconst_0
            istore 2 /* queueTask */
        start local 2 // boolean queueTask
         6: .line 600
            iload 1 /* state */
            sipush 4096
            ior
            istore 1 /* state */
         7: .line 601
            iload 1 /* state */
            ldc 32768
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 11
         8: .line 602
            iload 1 /* state */
            ldc 524288
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            dup
            istore 2 /* queueTask */
            ifeq 23
         9: .line 603
            iload 1 /* state */
            ldc 524288
            ior
            istore 1 /* state */
        10: .line 605
            goto 23
      StackMap locals: int
      StackMap stack:
        11: iload 1 /* state */
            ldc 65536
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 15
            iload 1 /* state */
            bipush 8
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            ifeq 15
        12: .line 607
            iload 1 /* state */
            bipush 8
            ior
            istore 1 /* state */
        13: .line 608
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.sourceConduit:Lorg/xnio/conduits/StreamSourceConduit;
            invokeinterface org.xnio.conduits.StreamSourceConduit.resumeReads:()V
        14: .line 609
            goto 23
      StackMap locals:
      StackMap stack:
        15: iload 1 /* state */
            sipush 8192
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            ifeq 23
        16: .line 611
            iload 1 /* state */
            sipush 8192
            ior
            istore 1 /* state */
        17: .line 612
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.sinkConduit:Lorg/xnio/conduits/StreamSinkConduit;
            invokeinterface org.xnio.conduits.StreamSinkConduit.resumeWrites:()V
        18: .line 614
            goto 23
      StackMap locals:
      StackMap stack: java.lang.Throwable
        19: astore 3
        20: .line 615
            aload 0 /* this */
            iload 1 /* state */
            putfield org.xnio.ssl.JsseStreamConduit.state:I
        21: .line 617
            iload 2 /* queueTask */
            ifeq 22
            aload 0 /* this */
            invokevirtual org.xnio.ssl.JsseStreamConduit.getReadThread:()Lorg/xnio/XnioIoThread;
            aload 0 /* this */
            invokevirtual org.xnio.XnioIoThread.execute:(Ljava/lang/Runnable;)V
        22: .line 618
      StackMap locals: java.lang.Throwable
      StackMap stack:
            aload 3
            athrow
        23: .line 615
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* state */
            putfield org.xnio.ssl.JsseStreamConduit.state:I
        24: .line 617
            iload 2 /* queueTask */
            ifeq 25
            aload 0 /* this */
            invokevirtual org.xnio.ssl.JsseStreamConduit.getReadThread:()Lorg/xnio/XnioIoThread;
            aload 0 /* this */
            invokevirtual org.xnio.XnioIoThread.execute:(Ljava/lang/Runnable;)V
        end local 2 // boolean queueTask
        25: .line 620
      StackMap locals:
      StackMap stack:
            return
        end local 1 // int state
        end local 0 // org.xnio.ssl.JsseStreamConduit this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   26     0       this  Lorg/xnio/ssl/JsseStreamConduit;
            1   26     1      state  I
            6   25     2  queueTask  Z
      Exception table:
        from    to  target  type
           6    19      19  any

  public void wakeupWrites();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // org.xnio.ssl.JsseStreamConduit this
         0: .line 623
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.state:I
            istore 1 /* state */
        start local 1 // int state
         1: .line 624
            iload 1 /* state */
            sipush 16384
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            ifeq 7
         2: .line 625
            iload 1 /* state */
            ldc 524288
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            ifeq 6
         3: .line 626
            aload 0 /* this */
            iload 1 /* state */
            sipush 16384
            ior
            ldc 524288
            ior
            putfield org.xnio.ssl.JsseStreamConduit.state:I
         4: .line 627
            aload 0 /* this */
            invokevirtual org.xnio.ssl.JsseStreamConduit.getReadThread:()Lorg/xnio/XnioIoThread;
            aload 0 /* this */
            invokevirtual org.xnio.XnioIoThread.execute:(Ljava/lang/Runnable;)V
         5: .line 628
            goto 7
         6: .line 629
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            iload 1 /* state */
            sipush 16384
            ior
            putfield org.xnio.ssl.JsseStreamConduit.state:I
         7: .line 632
      StackMap locals:
      StackMap stack:
            return
        end local 1 // int state
        end local 0 // org.xnio.ssl.JsseStreamConduit this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    8     0   this  Lorg/xnio/ssl/JsseStreamConduit;
            1    8     1  state  I

  public void terminateWrites();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=4, args_size=1
        start local 0 // org.xnio.ssl.JsseStreamConduit this
         0: .line 635
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.state:I
            istore 1 /* state */
        start local 1 // int state
         1: .line 636
            iload 1 /* state */
            sipush 2048
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            ifeq 18
         2: .line 637
            aload 0 /* this */
            iload 1 /* state */
            sipush 256
            ior
            putfield org.xnio.ssl.JsseStreamConduit.state:I
         3: .line 638
            iload 1 /* state */
            ldc 131072
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 17
         4: .line 639
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.engine:Ljavax/net/ssl/SSLEngine;
            invokevirtual javax.net.ssl.SSLEngine.getHandshakeStatus:()Ljavax/net/ssl/SSLEngineResult$HandshakeStatus;
            getstatic javax.net.ssl.SSLEngineResult$HandshakeStatus.NOT_HANDSHAKING:Ljavax/net/ssl/SSLEngineResult$HandshakeStatus;
            if_acmpne 6
         5: .line 640
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.engine:Ljavax/net/ssl/SSLEngine;
            invokevirtual javax.net.ssl.SSLEngine.closeOutbound:()V
         6: .line 642
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            iconst_2
            getstatic org.xnio.ssl.JsseStreamConduit.NO_BUFFERS:[Ljava/nio/ByteBuffer;
            iconst_0
            iconst_0
            getstatic org.xnio.ssl.JsseStreamConduit.NO_BUFFERS:[Ljava/nio/ByteBuffer;
            iconst_0
            iconst_0
            invokevirtual org.xnio.ssl.JsseStreamConduit.performIO:(I[Ljava/nio/ByteBuffer;II[Ljava/nio/ByteBuffer;II)J
            pop2
         7: .line 643
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.state:I
            sipush 2048
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 18
         8: .line 644
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.sinkConduit:Lorg/xnio/conduits/StreamSinkConduit;
            invokeinterface org.xnio.conduits.StreamSinkConduit.terminateWrites:()V
         9: .line 646
            goto 18
      StackMap locals:
      StackMap stack: java.lang.Throwable
        10: astore 2 /* t */
        start local 2 // java.lang.Throwable t
        11: .line 647
            aload 0 /* this */
            dup
            getfield org.xnio.ssl.JsseStreamConduit.state:I
            sipush 2048
            ior
            putfield org.xnio.ssl.JsseStreamConduit.state:I
        12: .line 649
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.sinkConduit:Lorg/xnio/conduits/StreamSinkConduit;
            invokeinterface org.xnio.conduits.StreamSinkConduit.truncateWrites:()V
        13: .line 650
            goto 16
      StackMap locals: org.xnio.ssl.JsseStreamConduit int java.lang.Throwable
      StackMap stack: java.lang.Throwable
        14: astore 3 /* t2 */
        start local 3 // java.lang.Throwable t2
        15: .line 651
            aload 2 /* t */
            aload 3 /* t2 */
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
        end local 3 // java.lang.Throwable t2
        16: .line 653
      StackMap locals:
      StackMap stack:
            aload 2 /* t */
            athrow
        end local 2 // java.lang.Throwable t
        17: .line 655
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.sinkConduit:Lorg/xnio/conduits/StreamSinkConduit;
            invokeinterface org.xnio.conduits.StreamSinkConduit.terminateWrites:()V
        18: .line 658
      StackMap locals:
      StackMap stack:
            return
        end local 1 // int state
        end local 0 // org.xnio.ssl.JsseStreamConduit this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   19     0   this  Lorg/xnio/ssl/JsseStreamConduit;
            1   19     1  state  I
           11   17     2      t  Ljava/lang/Throwable;
           15   16     3     t2  Ljava/lang/Throwable;
      Exception table:
        from    to  target  type
           4     9      10  Class java.lang.Throwable
          12    13      14  Class java.lang.Throwable
    Exceptions:
      throws java.io.IOException

  public void truncateWrites();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=1
        start local 0 // org.xnio.ssl.JsseStreamConduit this
         0: .line 661
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.state:I
            istore 1 /* state */
        start local 1 // int state
         1: .line 662
            iload 1 /* state */
            sipush 256
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            ifeq 21
         2: .line 663
            iload 1 /* state */
            ldc 131072
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 19
         3: .line 664
            iload 1 /* state */
            sipush 3328
            ior
            istore 1 /* state */
         4: .line 666
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.engine:Ljavax/net/ssl/SSLEngine;
            invokevirtual javax.net.ssl.SSLEngine.closeOutbound:()V
         5: .line 667
            goto 12
      StackMap locals: org.xnio.ssl.JsseStreamConduit int
      StackMap stack: java.lang.Throwable
         6: astore 2 /* t */
        start local 2 // java.lang.Throwable t
         7: .line 669
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.sinkConduit:Lorg/xnio/conduits/StreamSinkConduit;
            invokeinterface org.xnio.conduits.StreamSinkConduit.truncateWrites:()V
         8: .line 670
            goto 11
      StackMap locals: org.xnio.ssl.JsseStreamConduit int java.lang.Throwable
      StackMap stack: java.lang.Throwable
         9: astore 3 /* t2 */
        start local 3 // java.lang.Throwable t2
        10: .line 671
            aload 2 /* t */
            aload 3 /* t2 */
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
        end local 3 // java.lang.Throwable t2
        11: .line 673
      StackMap locals:
      StackMap stack:
            aload 2 /* t */
            athrow
        end local 2 // java.lang.Throwable t
        12: .line 675
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.sinkConduit:Lorg/xnio/conduits/StreamSinkConduit;
            invokeinterface org.xnio.conduits.StreamSinkConduit.truncateWrites:()V
        13: .line 676
            goto 17
      StackMap locals:
      StackMap stack: java.lang.Throwable
        14: astore 4
        15: .line 677
            aload 0 /* this */
            iload 1 /* state */
            putfield org.xnio.ssl.JsseStreamConduit.state:I
        16: .line 678
            aload 4
            athrow
        17: .line 677
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* state */
            putfield org.xnio.ssl.JsseStreamConduit.state:I
        18: .line 678
            goto 21
        19: .line 679
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* state */
            sipush 256
            ior
            sipush 1024
            ior
            sipush 2048
            ior
            putfield org.xnio.ssl.JsseStreamConduit.state:I
        20: .line 680
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.sinkConduit:Lorg/xnio/conduits/StreamSinkConduit;
            invokeinterface org.xnio.conduits.StreamSinkConduit.truncateWrites:()V
        21: .line 683
      StackMap locals:
      StackMap stack:
            return
        end local 1 // int state
        end local 0 // org.xnio.ssl.JsseStreamConduit this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   22     0   this  Lorg/xnio/ssl/JsseStreamConduit;
            1   22     1  state  I
            7   12     2      t  Ljava/lang/Throwable;
           10   11     3     t2  Ljava/lang/Throwable;
      Exception table:
        from    to  target  type
           4     5       6  Class java.lang.Throwable
           7     8       9  Class java.lang.Throwable
           3    14      14  any
    Exceptions:
      throws java.io.IOException

  public boolean isWriteResumed();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.xnio.ssl.JsseStreamConduit this
         0: .line 688
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.state:I
            sipush 20480
            invokestatic org.xnio.Bits.anyAreSet:(II)Z
            ireturn
        end local 0 // org.xnio.ssl.JsseStreamConduit this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/xnio/ssl/JsseStreamConduit;

  public boolean isWriteShutdown();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.xnio.ssl.JsseStreamConduit this
         0: .line 692
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.state:I
            sipush 256
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ireturn
        end local 0 // org.xnio.ssl.JsseStreamConduit this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/xnio/ssl/JsseStreamConduit;

  public void awaitWritable();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // org.xnio.ssl.JsseStreamConduit this
         0: .line 698
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.state:I
            istore 1 /* state */
        start local 1 // int state
         1: .line 699
            goto 16
         2: .line 700
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            dup
            astore 2
            monitorenter
         3: .line 701
            goto 9
         4: .line 703
      StackMap locals: org.xnio.ssl.JsseStreamConduit
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.lang.Object.wait:()V
         5: .line 704
            goto 9
      StackMap locals:
      StackMap stack: java.lang.InterruptedException
         6: pop
         7: .line 705
            invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
            invokevirtual java.lang.Thread.interrupt:()V
         8: .line 706
            new java.io.InterruptedIOException
            dup
            invokespecial java.io.InterruptedIOException.<init>:()V
            athrow
         9: .line 701
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.tasks:I
            ifne 4
        10: .line 709
            iload 1 /* state */
            ldc -1048577
            iand
            istore 1 /* state */
        11: .line 710
            aload 0 /* this */
            iload 1 /* state */
            putfield org.xnio.ssl.JsseStreamConduit.state:I
        12: .line 700
            aload 2
            monitorexit
        13: goto 16
      StackMap locals:
      StackMap stack: java.lang.Throwable
        14: aload 2
            monitorexit
        15: athrow
        16: .line 699
      StackMap locals:
      StackMap stack:
            iload 1 /* state */
            ldc 1048576
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifne 2
        17: .line 713
            iload 1 /* state */
            ldc 32768
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            ifeq 22
        18: .line 714
            iload 1 /* state */
            ldc 65536
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 21
        19: .line 715
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.sourceConduit:Lorg/xnio/conduits/StreamSourceConduit;
            invokeinterface org.xnio.conduits.StreamSourceConduit.awaitReadable:()V
        20: .line 716
            goto 22
        21: .line 717
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.sinkConduit:Lorg/xnio/conduits/StreamSinkConduit;
            invokeinterface org.xnio.conduits.StreamSinkConduit.awaitWritable:()V
        22: .line 720
      StackMap locals:
      StackMap stack:
            return
        end local 1 // int state
        end local 0 // org.xnio.ssl.JsseStreamConduit this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   23     0   this  Lorg/xnio/ssl/JsseStreamConduit;
            1   23     1  state  I
      Exception table:
        from    to  target  type
           4     5       6  Class java.lang.InterruptedException
           3    13      14  any
          14    15      14  any
    Exceptions:
      throws java.io.IOException

  public void awaitWritable(long, java.util.concurrent.TimeUnit);
    descriptor: (JLjava/util/concurrent/TimeUnit;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=10, args_size=3
        start local 0 // org.xnio.ssl.JsseStreamConduit this
        start local 1 // long time
        start local 3 // java.util.concurrent.TimeUnit timeUnit
         0: .line 723
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.state:I
            istore 4 /* state */
        start local 4 // int state
         1: .line 724
            aload 3 /* timeUnit */
            lload 1 /* time */
            invokevirtual java.util.concurrent.TimeUnit.toNanos:(J)J
            lstore 5 /* nanos */
        start local 5 // long nanos
         2: .line 725
            goto 22
         3: .line 726
      StackMap locals: int long
      StackMap stack:
            aload 0 /* this */
            dup
            astore 7
            monitorenter
         4: .line 727
            invokestatic java.lang.System.nanoTime:()J
            lstore 8 /* start */
        start local 8 // long start
         5: .line 728
            goto 15
         6: .line 730
      StackMap locals: org.xnio.ssl.JsseStreamConduit long
      StackMap stack:
            lload 5 /* nanos */
            lconst_0
            lcmp
            ifgt 9
         7: .line 731
            aload 7
            monitorexit
         8: return
         9: .line 733
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            lload 5 /* nanos */
            ldc 1000000
            ldiv
            lload 5 /* nanos */
            ldc 1000000
            lrem
            l2i
            invokevirtual java.lang.Object.wait:(JI)V
        10: .line 734
            lload 5 /* nanos */
            lload 8 /* start */
            lneg
            invokestatic java.lang.System.nanoTime:()J
            dup2
            lstore 8 /* start */
            ladd
            lsub
            lstore 5 /* nanos */
        11: .line 735
            goto 15
      StackMap locals:
      StackMap stack: java.lang.InterruptedException
        12: pop
        13: .line 736
            invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
            invokevirtual java.lang.Thread.interrupt:()V
        14: .line 737
            new java.io.InterruptedIOException
            dup
            invokespecial java.io.InterruptedIOException.<init>:()V
            athrow
        15: .line 728
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.tasks:I
            ifne 6
        16: .line 740
            iload 4 /* state */
            ldc -1048577
            iand
            istore 4 /* state */
        17: .line 741
            aload 0 /* this */
            iload 4 /* state */
            putfield org.xnio.ssl.JsseStreamConduit.state:I
        end local 8 // long start
        18: .line 726
            aload 7
            monitorexit
        19: goto 22
      StackMap locals: org.xnio.ssl.JsseStreamConduit long java.util.concurrent.TimeUnit int long org.xnio.ssl.JsseStreamConduit
      StackMap stack: java.lang.Throwable
        20: aload 7
            monitorexit
        21: athrow
        22: .line 725
      StackMap locals:
      StackMap stack:
            iload 4 /* state */
            ldc 1048576
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifne 3
        23: .line 744
            iload 4 /* state */
            ldc 32768
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            ifeq 28
        24: .line 745
            iload 4 /* state */
            ldc 65536
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 27
        25: .line 746
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.sourceConduit:Lorg/xnio/conduits/StreamSourceConduit;
            lload 5 /* nanos */
            getstatic java.util.concurrent.TimeUnit.NANOSECONDS:Ljava/util/concurrent/TimeUnit;
            invokeinterface org.xnio.conduits.StreamSourceConduit.awaitReadable:(JLjava/util/concurrent/TimeUnit;)V
        26: .line 747
            goto 28
        27: .line 748
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.sinkConduit:Lorg/xnio/conduits/StreamSinkConduit;
            lload 5 /* nanos */
            getstatic java.util.concurrent.TimeUnit.NANOSECONDS:Ljava/util/concurrent/TimeUnit;
            invokeinterface org.xnio.conduits.StreamSinkConduit.awaitWritable:(JLjava/util/concurrent/TimeUnit;)V
        28: .line 751
      StackMap locals:
      StackMap stack:
            return
        end local 5 // long nanos
        end local 4 // int state
        end local 3 // java.util.concurrent.TimeUnit timeUnit
        end local 1 // long time
        end local 0 // org.xnio.ssl.JsseStreamConduit this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   29     0      this  Lorg/xnio/ssl/JsseStreamConduit;
            0   29     1      time  J
            0   29     3  timeUnit  Ljava/util/concurrent/TimeUnit;
            1   29     4     state  I
            2   29     5     nanos  J
            5   18     8     start  J
      Exception table:
        from    to  target  type
           6     7      12  Class java.lang.InterruptedException
           9    11      12  Class java.lang.InterruptedException
           4     8      20  any
           9    19      20  any
          20    21      20  any
    Exceptions:
      throws java.io.IOException
    MethodParameters:
          Name  Flags
      time      final
      timeUnit  final

  public void suspendReads();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // org.xnio.ssl.JsseStreamConduit this
         0: .line 756
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.state:I
            istore 1 /* state */
        start local 1 // int state
         1: .line 758
            iload 1 /* state */
            iconst_4
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 13
         2: .line 759
            iload 1 /* state */
            bipush -5
            iand
            istore 1 /* state */
         3: .line 760
            iload 1 /* state */
            bipush 8
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 6
            iload 1 /* state */
            ldc 65536
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            ifeq 6
         4: .line 762
            iload 1 /* state */
            bipush -9
            iand
            istore 1 /* state */
         5: .line 763
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.sourceConduit:Lorg/xnio/conduits/StreamSourceConduit;
            invokeinterface org.xnio.conduits.StreamSourceConduit.suspendReads:()V
         6: .line 765
      StackMap locals: int
      StackMap stack:
            iload 1 /* state */
            sipush 8192
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 13
            iload 1 /* state */
            sipush 4096
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            ifeq 13
         7: .line 767
            iload 1 /* state */
            sipush -8193
            iand
            istore 1 /* state */
         8: .line 768
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.sinkConduit:Lorg/xnio/conduits/StreamSinkConduit;
            invokeinterface org.xnio.conduits.StreamSinkConduit.suspendWrites:()V
         9: .line 771
            goto 13
      StackMap locals:
      StackMap stack: java.lang.Throwable
        10: astore 2
        11: .line 772
            aload 0 /* this */
            iload 1 /* state */
            putfield org.xnio.ssl.JsseStreamConduit.state:I
        12: .line 773
            aload 2
            athrow
        13: .line 772
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* state */
            putfield org.xnio.ssl.JsseStreamConduit.state:I
        14: .line 774
            return
        end local 1 // int state
        end local 0 // org.xnio.ssl.JsseStreamConduit this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   15     0   this  Lorg/xnio/ssl/JsseStreamConduit;
            1   15     1  state  I
      Exception table:
        from    to  target  type
           1    10      10  any

  public void resumeReads();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=1
        start local 0 // org.xnio.ssl.JsseStreamConduit this
         0: .line 777
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.state:I
            istore 1 /* state */
        start local 1 // int state
         1: .line 778
            iconst_0
            istore 2 /* queueTask */
        start local 2 // boolean queueTask
         2: .line 779
            iload 1 /* state */
            iconst_4
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            ifeq 24
         3: .line 780
            iload 1 /* state */
            iconst_4
            ior
            istore 1 /* state */
         4: .line 784
            iload 1 /* state */
            sipush 4096
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            ifeq 6
         5: .line 785
            iload 1 /* state */
            bipush 32
            ior
            istore 1 /* state */
         6: .line 787
      StackMap locals: int int
      StackMap stack:
            iload 1 /* state */
            bipush 32
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 10
         7: .line 788
            iload 1 /* state */
            ldc 524288
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            dup
            istore 2 /* queueTask */
            ifeq 22
         8: .line 789
            iload 1 /* state */
            ldc 524288
            ior
            istore 1 /* state */
         9: .line 791
            goto 22
      StackMap locals:
      StackMap stack:
        10: iload 1 /* state */
            bipush 64
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 14
            iload 1 /* state */
            sipush 8192
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            ifeq 14
        11: .line 793
            iload 1 /* state */
            sipush 8192
            ior
            istore 1 /* state */
        12: .line 794
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.sinkConduit:Lorg/xnio/conduits/StreamSinkConduit;
            invokeinterface org.xnio.conduits.StreamSinkConduit.resumeWrites:()V
        13: .line 795
            goto 22
      StackMap locals:
      StackMap stack:
        14: iload 1 /* state */
            bipush 8
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            ifeq 22
        15: .line 797
            iload 1 /* state */
            bipush 8
            ior
            istore 1 /* state */
        16: .line 798
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.sourceConduit:Lorg/xnio/conduits/StreamSourceConduit;
            invokeinterface org.xnio.conduits.StreamSourceConduit.resumeReads:()V
        17: .line 800
            goto 22
      StackMap locals:
      StackMap stack: java.lang.Throwable
        18: astore 3
        19: .line 801
            aload 0 /* this */
            iload 1 /* state */
            putfield org.xnio.ssl.JsseStreamConduit.state:I
        20: .line 803
            iload 2 /* queueTask */
            ifeq 21
            aload 0 /* this */
            invokevirtual org.xnio.ssl.JsseStreamConduit.getReadThread:()Lorg/xnio/XnioIoThread;
            aload 0 /* this */
            invokevirtual org.xnio.XnioIoThread.execute:(Ljava/lang/Runnable;)V
        21: .line 804
      StackMap locals: java.lang.Throwable
      StackMap stack:
            aload 3
            athrow
        22: .line 801
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* state */
            putfield org.xnio.ssl.JsseStreamConduit.state:I
        23: .line 803
            iload 2 /* queueTask */
            ifeq 24
            aload 0 /* this */
            invokevirtual org.xnio.ssl.JsseStreamConduit.getReadThread:()Lorg/xnio/XnioIoThread;
            aload 0 /* this */
            invokevirtual org.xnio.XnioIoThread.execute:(Ljava/lang/Runnable;)V
        24: .line 805
      StackMap locals:
      StackMap stack:
            return
        end local 2 // boolean queueTask
        end local 1 // int state
        end local 0 // org.xnio.ssl.JsseStreamConduit this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   25     0       this  Lorg/xnio/ssl/JsseStreamConduit;
            1   25     1      state  I
            2   25     2  queueTask  Z
      Exception table:
        from    to  target  type
           3    18      18  any

  public void wakeupReads();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // org.xnio.ssl.JsseStreamConduit this
         0: .line 808
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.state:I
            istore 1 /* state */
        start local 1 // int state
         1: .line 809
            iload 1 /* state */
            bipush 16
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            ifeq 7
         2: .line 810
            iload 1 /* state */
            ldc 524288
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            ifeq 6
         3: .line 811
            aload 0 /* this */
            iload 1 /* state */
            bipush 16
            ior
            ldc 524288
            ior
            putfield org.xnio.ssl.JsseStreamConduit.state:I
         4: .line 812
            aload 0 /* this */
            invokevirtual org.xnio.ssl.JsseStreamConduit.getReadThread:()Lorg/xnio/XnioIoThread;
            aload 0 /* this */
            invokevirtual org.xnio.XnioIoThread.execute:(Ljava/lang/Runnable;)V
         5: .line 813
            goto 7
         6: .line 814
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            iload 1 /* state */
            bipush 16
            ior
            putfield org.xnio.ssl.JsseStreamConduit.state:I
         7: .line 817
      StackMap locals:
      StackMap stack:
            return
        end local 1 // int state
        end local 0 // org.xnio.ssl.JsseStreamConduit this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    8     0   this  Lorg/xnio/ssl/JsseStreamConduit;
            1    8     1  state  I

  public void terminateReads();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=4, args_size=1
        start local 0 // org.xnio.ssl.JsseStreamConduit this
         0: .line 820
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.state:I
            istore 1 /* state */
        start local 1 // int state
         1: .line 821
            iload 1 /* state */
            iconst_1
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            ifeq 24
         2: .line 822
            iload 1 /* state */
            ldc 131072
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            ifeq 5
         3: .line 824
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.sourceConduit:Lorg/xnio/conduits/StreamSourceConduit;
            invokeinterface org.xnio.conduits.StreamSourceConduit.terminateReads:()V
         4: .line 825
            goto 24
         5: .line 827
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            iload 1 /* state */
            iconst_1
            ior
            putfield org.xnio.ssl.JsseStreamConduit.state:I
         6: .line 828
            iload 1 /* state */
            iconst_2
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            ifeq 16
         7: .line 829
            aload 0 /* this */
            iconst_2
            getstatic org.xnio.ssl.JsseStreamConduit.NO_BUFFERS:[Ljava/nio/ByteBuffer;
            iconst_0
            iconst_0
            getstatic org.xnio.ssl.JsseStreamConduit.NO_BUFFERS:[Ljava/nio/ByteBuffer;
            iconst_0
            iconst_0
            invokevirtual org.xnio.ssl.JsseStreamConduit.performIO:(I[Ljava/nio/ByteBuffer;II[Ljava/nio/ByteBuffer;II)J
            pop2
         8: .line 830
            iload 1 /* state */
            ldc 65536
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 11
         9: .line 831
            iload 1 /* state */
            iconst_2
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            ifeq 11
        10: .line 832
            return
        11: .line 835
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.engine:Ljavax/net/ssl/SSLEngine;
            invokevirtual javax.net.ssl.SSLEngine.isInboundDone:()Z
            ifne 13
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.engine:Ljavax/net/ssl/SSLEngine;
            invokevirtual javax.net.ssl.SSLEngine.getHandshakeStatus:()Ljavax/net/ssl/SSLEngineResult$HandshakeStatus;
            getstatic javax.net.ssl.SSLEngineResult$HandshakeStatus.NOT_HANDSHAKING:Ljavax/net/ssl/SSLEngineResult$HandshakeStatus;
            if_acmpne 13
        12: .line 836
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.engine:Ljavax/net/ssl/SSLEngine;
            invokevirtual javax.net.ssl.SSLEngine.closeInbound:()V
        13: .line 838
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_0
            getstatic org.xnio.ssl.JsseStreamConduit.NO_BUFFERS:[Ljava/nio/ByteBuffer;
            iconst_0
            iconst_0
            getstatic org.xnio.ssl.JsseStreamConduit.NO_BUFFERS:[Ljava/nio/ByteBuffer;
            iconst_0
            iconst_0
            invokevirtual org.xnio.ssl.JsseStreamConduit.performIO:(I[Ljava/nio/ByteBuffer;II[Ljava/nio/ByteBuffer;II)J
            lstore 2 /* res */
        start local 2 // long res
        14: .line 839
            lload 2 /* res */
            ldc -1
            lcmp
            ifne 16
        15: .line 840
            aload 0 /* this */
            dup
            getfield org.xnio.ssl.JsseStreamConduit.state:I
            iconst_2
            ior
            putfield org.xnio.ssl.JsseStreamConduit.state:I
        end local 2 // long res
        16: .line 843
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.state:I
            iconst_2
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            ifne 17
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.receiveBuffer:Lorg/xnio/Pooled;
            invokeinterface org.xnio.Pooled.getResource:()Ljava/lang/Object;
            checkcast java.nio.ByteBuffer
            invokevirtual java.nio.ByteBuffer.hasRemaining:()Z
            ifeq 23
        17: .line 845
      StackMap locals:
      StackMap stack:
            getstatic org.xnio._private.Messages.msg:Lorg/xnio/_private/Messages;
            invokeinterface org.xnio._private.Messages.connectionClosedEarly:()Ljava/io/EOFException;
            astore 2 /* exception */
        start local 2 // java.io.EOFException exception
        18: .line 847
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.sourceConduit:Lorg/xnio/conduits/StreamSourceConduit;
            invokeinterface org.xnio.conduits.StreamSourceConduit.terminateReads:()V
        19: .line 848
            goto 22
      StackMap locals: org.xnio.ssl.JsseStreamConduit int java.io.EOFException
      StackMap stack: java.io.IOException
        20: astore 3 /* e */
        start local 3 // java.io.IOException e
        21: .line 849
            aload 2 /* exception */
            aload 3 /* e */
            invokevirtual java.io.EOFException.addSuppressed:(Ljava/lang/Throwable;)V
        end local 3 // java.io.IOException e
        22: .line 851
      StackMap locals:
      StackMap stack:
            aload 2 /* exception */
            athrow
        end local 2 // java.io.EOFException exception
        23: .line 853
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.sourceConduit:Lorg/xnio/conduits/StreamSourceConduit;
            invokeinterface org.xnio.conduits.StreamSourceConduit.terminateReads:()V
        24: .line 857
      StackMap locals:
      StackMap stack:
            return
        end local 1 // int state
        end local 0 // org.xnio.ssl.JsseStreamConduit this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   25     0       this  Lorg/xnio/ssl/JsseStreamConduit;
            1   25     1      state  I
           14   16     2        res  J
           18   23     2  exception  Ljava/io/EOFException;
           21   22     3          e  Ljava/io/IOException;
      Exception table:
        from    to  target  type
          18    19      20  Class java.io.IOException
    Exceptions:
      throws java.io.IOException

  public boolean isReadResumed();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.xnio.ssl.JsseStreamConduit this
         0: .line 862
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.state:I
            bipush 20
            invokestatic org.xnio.Bits.anyAreSet:(II)Z
            ireturn
        end local 0 // org.xnio.ssl.JsseStreamConduit this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/xnio/ssl/JsseStreamConduit;

  public boolean isReadShutdown();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.xnio.ssl.JsseStreamConduit this
         0: .line 866
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.state:I
            iconst_1
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ireturn
        end local 0 // org.xnio.ssl.JsseStreamConduit this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/xnio/ssl/JsseStreamConduit;

  public void awaitReadable();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // org.xnio.ssl.JsseStreamConduit this
         0: .line 872
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.state:I
            istore 1 /* state */
        start local 1 // int state
         1: .line 873
            goto 16
         2: .line 874
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            dup
            astore 2
            monitorenter
         3: .line 875
            goto 9
         4: .line 877
      StackMap locals: org.xnio.ssl.JsseStreamConduit
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.lang.Object.wait:()V
         5: .line 878
            goto 9
      StackMap locals:
      StackMap stack: java.lang.InterruptedException
         6: pop
         7: .line 879
            invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
            invokevirtual java.lang.Thread.interrupt:()V
         8: .line 880
            new java.io.InterruptedIOException
            dup
            invokespecial java.io.InterruptedIOException.<init>:()V
            athrow
         9: .line 875
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.tasks:I
            ifne 4
        10: .line 883
            iload 1 /* state */
            ldc -1048577
            iand
            istore 1 /* state */
        11: .line 884
            aload 0 /* this */
            iload 1 /* state */
            putfield org.xnio.ssl.JsseStreamConduit.state:I
        12: .line 874
            aload 2
            monitorexit
        13: goto 16
      StackMap locals:
      StackMap stack: java.lang.Throwable
        14: aload 2
            monitorexit
        15: athrow
        16: .line 873
      StackMap locals:
      StackMap stack:
            iload 1 /* state */
            ldc 1048576
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifne 2
        17: .line 887
            iload 1 /* state */
            bipush 32
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            ifeq 22
        18: .line 888
            iload 1 /* state */
            bipush 64
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 21
        19: .line 889
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.sinkConduit:Lorg/xnio/conduits/StreamSinkConduit;
            invokeinterface org.xnio.conduits.StreamSinkConduit.awaitWritable:()V
        20: .line 890
            goto 22
        21: .line 891
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.sourceConduit:Lorg/xnio/conduits/StreamSourceConduit;
            invokeinterface org.xnio.conduits.StreamSourceConduit.awaitReadable:()V
        22: .line 894
      StackMap locals:
      StackMap stack:
            return
        end local 1 // int state
        end local 0 // org.xnio.ssl.JsseStreamConduit this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   23     0   this  Lorg/xnio/ssl/JsseStreamConduit;
            1   23     1  state  I
      Exception table:
        from    to  target  type
           4     5       6  Class java.lang.InterruptedException
           3    13      14  any
          14    15      14  any
    Exceptions:
      throws java.io.IOException

  public void awaitReadable(long, java.util.concurrent.TimeUnit);
    descriptor: (JLjava/util/concurrent/TimeUnit;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=10, args_size=3
        start local 0 // org.xnio.ssl.JsseStreamConduit this
        start local 1 // long time
        start local 3 // java.util.concurrent.TimeUnit timeUnit
         0: .line 897
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.state:I
            istore 4 /* state */
        start local 4 // int state
         1: .line 898
            aload 3 /* timeUnit */
            lload 1 /* time */
            invokevirtual java.util.concurrent.TimeUnit.toNanos:(J)J
            lstore 5 /* nanos */
        start local 5 // long nanos
         2: .line 899
            goto 22
         3: .line 900
      StackMap locals: int long
      StackMap stack:
            aload 0 /* this */
            dup
            astore 7
            monitorenter
         4: .line 901
            invokestatic java.lang.System.nanoTime:()J
            lstore 8 /* start */
        start local 8 // long start
         5: .line 902
            goto 15
         6: .line 904
      StackMap locals: org.xnio.ssl.JsseStreamConduit long
      StackMap stack:
            lload 5 /* nanos */
            lconst_0
            lcmp
            ifgt 9
         7: .line 905
            aload 7
            monitorexit
         8: return
         9: .line 907
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            lload 5 /* nanos */
            ldc 1000000
            ldiv
            lload 5 /* nanos */
            ldc 1000000
            lrem
            l2i
            invokevirtual java.lang.Object.wait:(JI)V
        10: .line 908
            lload 5 /* nanos */
            lload 8 /* start */
            lneg
            invokestatic java.lang.System.nanoTime:()J
            dup2
            lstore 8 /* start */
            ladd
            lsub
            lstore 5 /* nanos */
        11: .line 909
            goto 15
      StackMap locals:
      StackMap stack: java.lang.InterruptedException
        12: pop
        13: .line 910
            invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
            invokevirtual java.lang.Thread.interrupt:()V
        14: .line 911
            new java.io.InterruptedIOException
            dup
            invokespecial java.io.InterruptedIOException.<init>:()V
            athrow
        15: .line 902
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.tasks:I
            ifne 6
        16: .line 914
            iload 4 /* state */
            ldc -1048577
            iand
            istore 4 /* state */
        17: .line 915
            aload 0 /* this */
            iload 4 /* state */
            putfield org.xnio.ssl.JsseStreamConduit.state:I
        end local 8 // long start
        18: .line 900
            aload 7
            monitorexit
        19: goto 22
      StackMap locals: org.xnio.ssl.JsseStreamConduit long java.util.concurrent.TimeUnit int long org.xnio.ssl.JsseStreamConduit
      StackMap stack: java.lang.Throwable
        20: aload 7
            monitorexit
        21: athrow
        22: .line 899
      StackMap locals:
      StackMap stack:
            iload 4 /* state */
            ldc 1048576
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifne 3
        23: .line 918
            iload 4 /* state */
            bipush 32
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            ifeq 28
        24: .line 919
            iload 4 /* state */
            bipush 64
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 27
        25: .line 920
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.sinkConduit:Lorg/xnio/conduits/StreamSinkConduit;
            lload 5 /* nanos */
            getstatic java.util.concurrent.TimeUnit.NANOSECONDS:Ljava/util/concurrent/TimeUnit;
            invokeinterface org.xnio.conduits.StreamSinkConduit.awaitWritable:(JLjava/util/concurrent/TimeUnit;)V
        26: .line 921
            goto 28
        27: .line 922
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.sourceConduit:Lorg/xnio/conduits/StreamSourceConduit;
            lload 5 /* nanos */
            getstatic java.util.concurrent.TimeUnit.NANOSECONDS:Ljava/util/concurrent/TimeUnit;
            invokeinterface org.xnio.conduits.StreamSourceConduit.awaitReadable:(JLjava/util/concurrent/TimeUnit;)V
        28: .line 925
      StackMap locals:
      StackMap stack:
            return
        end local 5 // long nanos
        end local 4 // int state
        end local 3 // java.util.concurrent.TimeUnit timeUnit
        end local 1 // long time
        end local 0 // org.xnio.ssl.JsseStreamConduit this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   29     0      this  Lorg/xnio/ssl/JsseStreamConduit;
            0   29     1      time  J
            0   29     3  timeUnit  Ljava/util/concurrent/TimeUnit;
            1   29     4     state  I
            2   29     5     nanos  J
            5   18     8     start  J
      Exception table:
        from    to  target  type
           6     7      12  Class java.lang.InterruptedException
           9    11      12  Class java.lang.InterruptedException
           4     8      20  any
           9    19      20  any
          20    21      20  any
    Exceptions:
      throws java.io.IOException
    MethodParameters:
          Name  Flags
      time      final
      timeUnit  final

  public int read(java.nio.ByteBuffer);
    descriptor: (Ljava/nio/ByteBuffer;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=6, args_size=2
        start local 0 // org.xnio.ssl.JsseStreamConduit this
        start local 1 // java.nio.ByteBuffer dst
         0: .line 936
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.state:I
            istore 2 /* state */
        start local 2 // int state
         1: .line 937
            iload 2 /* state */
            iconst_1
            invokestatic org.xnio.Bits.anyAreSet:(II)Z
            ifeq 3
         2: .line 938
            iconst_m1
            ireturn
         3: .line 940
      StackMap locals: int
      StackMap stack:
            iload 2 /* state */
            iconst_2
            invokestatic org.xnio.Bits.anyAreSet:(II)Z
            ifeq 15
         4: .line 942
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.readBuffer:Lorg/xnio/Pooled;
            invokeinterface org.xnio.Pooled.getResource:()Ljava/lang/Object;
            checkcast java.nio.ByteBuffer
            invokevirtual java.nio.ByteBuffer.position:()I
            ifle 14
         5: .line 943
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.readBuffer:Lorg/xnio/Pooled;
            invokeinterface org.xnio.Pooled.getResource:()Ljava/lang/Object;
            checkcast java.nio.ByteBuffer
            astore 3 /* readBufferResource */
        start local 3 // java.nio.ByteBuffer readBufferResource
         6: .line 944
            aload 3 /* readBufferResource */
            invokevirtual java.nio.ByteBuffer.flip:()Ljava/nio/Buffer;
            pop
         7: .line 946
            getstatic org.xnio.ssl.JsseStreamConduit.TRACE_SSL:Z
            ifeq 8
            getstatic org.xnio._private.Messages.msg:Lorg/xnio/_private/Messages;
            ldc "TLS copy unwrapped data from %s to %s"
            aload 3 /* readBufferResource */
            invokestatic org.xnio.Buffers.debugString:(Ljava/nio/ByteBuffer;)Ljava/lang/String;
            aload 1 /* dst */
            invokestatic org.xnio.Buffers.debugString:(Ljava/nio/ByteBuffer;)Ljava/lang/String;
            invokeinterface org.xnio._private.Messages.tracef:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
         8: .line 947
      StackMap locals: java.nio.ByteBuffer
      StackMap stack:
            aload 1 /* dst */
            aload 3 /* readBufferResource */
            invokestatic org.xnio.Buffers.copy:(Ljava/nio/ByteBuffer;Ljava/nio/ByteBuffer;)I
            istore 5
         9: .line 949
            aload 3 /* readBufferResource */
            invokevirtual java.nio.ByteBuffer.compact:()Ljava/nio/ByteBuffer;
            pop
        10: .line 947
            iload 5
            ireturn
        11: .line 948
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 4
        12: .line 949
            aload 3 /* readBufferResource */
            invokevirtual java.nio.ByteBuffer.compact:()Ljava/nio/ByteBuffer;
            pop
        13: .line 950
            aload 4
            athrow
        end local 3 // java.nio.ByteBuffer readBufferResource
        14: .line 952
      StackMap locals:
      StackMap stack:
            iconst_m1
            ireturn
        15: .line 954
      StackMap locals:
      StackMap stack:
            iload 2 /* state */
            ldc 131072
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            ifeq 24
        16: .line 955
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.sourceConduit:Lorg/xnio/conduits/StreamSourceConduit;
            aload 1 /* dst */
            invokeinterface org.xnio.conduits.StreamSourceConduit.read:(Ljava/nio/ByteBuffer;)I
            istore 3 /* res */
        start local 3 // int res
        17: .line 956
            iload 3 /* res */
            ifne 21
        18: .line 957
            iload 2 /* state */
            bipush 32
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 23
        19: .line 958
            aload 0 /* this */
            iload 2 /* state */
            bipush -33
            iand
            putfield org.xnio.ssl.JsseStreamConduit.state:I
        20: .line 960
            goto 23
      StackMap locals: int
      StackMap stack:
        21: iload 3 /* res */
            iconst_m1
            if_icmpne 23
        22: .line 961
            aload 0 /* this */
            iload 2 /* state */
            iconst_2
            ior
            bipush -33
            iand
            putfield org.xnio.ssl.JsseStreamConduit.state:I
        23: .line 963
      StackMap locals:
      StackMap stack:
            iload 3 /* res */
            ireturn
        end local 3 // int res
        24: .line 966
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.readBufferHolder:[Ljava/nio/ByteBuffer;
            astore 3 /* readBufferHolder */
        start local 3 // java.nio.ByteBuffer[] readBufferHolder
        25: .line 967
            aload 3 /* readBufferHolder */
            iconst_0
            aload 1 /* dst */
            aastore
        26: .line 969
            aload 0 /* this */
            iconst_0
            getstatic org.xnio.ssl.JsseStreamConduit.NO_BUFFERS:[Ljava/nio/ByteBuffer;
            iconst_0
            iconst_0
            aload 3 /* readBufferHolder */
            iconst_0
            iconst_1
            invokevirtual org.xnio.ssl.JsseStreamConduit.performIO:(I[Ljava/nio/ByteBuffer;II[Ljava/nio/ByteBuffer;II)J
            l2i
            istore 5
        27: .line 971
            aload 3 /* readBufferHolder */
            iconst_0
            aconst_null
            aastore
        28: .line 969
            iload 5
            ireturn
        29: .line 970
      StackMap locals: org.xnio.ssl.JsseStreamConduit java.nio.ByteBuffer int java.nio.ByteBuffer[]
      StackMap stack: java.lang.Throwable
            astore 4
        30: .line 971
            aload 3 /* readBufferHolder */
            iconst_0
            aconst_null
            aastore
        31: .line 972
            aload 4
            athrow
        end local 3 // java.nio.ByteBuffer[] readBufferHolder
        end local 2 // int state
        end local 1 // java.nio.ByteBuffer dst
        end local 0 // org.xnio.ssl.JsseStreamConduit this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   32     0                this  Lorg/xnio/ssl/JsseStreamConduit;
            0   32     1                 dst  Ljava/nio/ByteBuffer;
            1   32     2               state  I
            6   14     3  readBufferResource  Ljava/nio/ByteBuffer;
           17   24     3                 res  I
           25   32     3    readBufferHolder  [Ljava/nio/ByteBuffer;
      Exception table:
        from    to  target  type
           7     9      11  any
          26    27      29  any
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      dst   final

  public long read(java.nio.ByteBuffer[], int, int);
    descriptor: ([Ljava/nio/ByteBuffer;II)J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=9, args_size=4
        start local 0 // org.xnio.ssl.JsseStreamConduit this
        start local 1 // java.nio.ByteBuffer[] dsts
        start local 2 // int offs
        start local 3 // int len
         0: .line 977
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.state:I
            istore 4 /* state */
        start local 4 // int state
         1: .line 978
            iload 4 /* state */
            iconst_1
            invokestatic org.xnio.Bits.anyAreSet:(II)Z
            ifeq 3
         2: .line 979
            ldc -1
            lreturn
         3: .line 980
      StackMap locals: int
      StackMap stack:
            iload 4 /* state */
            iconst_2
            invokestatic org.xnio.Bits.anyAreSet:(II)Z
            ifeq 15
         4: .line 981
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.readBuffer:Lorg/xnio/Pooled;
            invokeinterface org.xnio.Pooled.getResource:()Ljava/lang/Object;
            checkcast java.nio.ByteBuffer
            invokevirtual java.nio.ByteBuffer.position:()I
            ifle 14
         5: .line 982
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.readBuffer:Lorg/xnio/Pooled;
            invokeinterface org.xnio.Pooled.getResource:()Ljava/lang/Object;
            checkcast java.nio.ByteBuffer
            astore 5 /* readBufferResource */
        start local 5 // java.nio.ByteBuffer readBufferResource
         6: .line 983
            aload 5 /* readBufferResource */
            invokevirtual java.nio.ByteBuffer.flip:()Ljava/nio/Buffer;
            pop
         7: .line 985
            getstatic org.xnio.ssl.JsseStreamConduit.TRACE_SSL:Z
            ifeq 8
            getstatic org.xnio._private.Messages.msg:Lorg/xnio/_private/Messages;
            ldc "TLS copy unwrapped data from %s to %s"
            aload 5 /* readBufferResource */
            invokestatic org.xnio.Buffers.debugString:(Ljava/nio/ByteBuffer;)Ljava/lang/String;
            aload 1 /* dsts */
            iload 2 /* offs */
            iload 3 /* len */
            invokestatic org.xnio.Buffers.debugString:([Ljava/nio/ByteBuffer;II)Ljava/lang/String;
            invokeinterface org.xnio._private.Messages.tracef:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
         8: .line 986
      StackMap locals: java.nio.ByteBuffer
      StackMap stack:
            aload 1 /* dsts */
            iload 2 /* offs */
            iload 3 /* len */
            aload 5 /* readBufferResource */
            invokestatic org.xnio.Buffers.copy:([Ljava/nio/ByteBuffer;IILjava/nio/ByteBuffer;)I
            i2l
            lstore 7
         9: .line 988
            aload 5 /* readBufferResource */
            invokevirtual java.nio.ByteBuffer.compact:()Ljava/nio/ByteBuffer;
            pop
        10: .line 986
            lload 7
            lreturn
        11: .line 987
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 6
        12: .line 988
            aload 5 /* readBufferResource */
            invokevirtual java.nio.ByteBuffer.compact:()Ljava/nio/ByteBuffer;
            pop
        13: .line 989
            aload 6
            athrow
        end local 5 // java.nio.ByteBuffer readBufferResource
        14: .line 991
      StackMap locals:
      StackMap stack:
            ldc -1
            lreturn
        15: .line 992
      StackMap locals:
      StackMap stack:
            iload 4 /* state */
            ldc 131072
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            ifeq 24
        16: .line 993
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.sourceConduit:Lorg/xnio/conduits/StreamSourceConduit;
            aload 1 /* dsts */
            iload 2 /* offs */
            iload 3 /* len */
            invokeinterface org.xnio.conduits.StreamSourceConduit.read:([Ljava/nio/ByteBuffer;II)J
            lstore 5 /* res */
        start local 5 // long res
        17: .line 994
            lload 5 /* res */
            lconst_0
            lcmp
            ifne 21
        18: .line 995
            iload 4 /* state */
            bipush 32
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 23
        19: .line 996
            aload 0 /* this */
            iload 4 /* state */
            bipush -33
            iand
            putfield org.xnio.ssl.JsseStreamConduit.state:I
        20: .line 998
            goto 23
      StackMap locals: long
      StackMap stack:
        21: lload 5 /* res */
            ldc -1
            lcmp
            ifne 23
        22: .line 999
            aload 0 /* this */
            iload 4 /* state */
            iconst_2
            ior
            bipush -33
            iand
            putfield org.xnio.ssl.JsseStreamConduit.state:I
        23: .line 1001
      StackMap locals:
      StackMap stack:
            lload 5 /* res */
            lreturn
        end local 5 // long res
        24: .line 1004
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_0
            getstatic org.xnio.ssl.JsseStreamConduit.NO_BUFFERS:[Ljava/nio/ByteBuffer;
            iconst_0
            iconst_0
            aload 1 /* dsts */
            iload 2 /* offs */
            iload 3 /* len */
            invokevirtual org.xnio.ssl.JsseStreamConduit.performIO:(I[Ljava/nio/ByteBuffer;II[Ljava/nio/ByteBuffer;II)J
            lreturn
        end local 4 // int state
        end local 3 // int len
        end local 2 // int offs
        end local 1 // java.nio.ByteBuffer[] dsts
        end local 0 // org.xnio.ssl.JsseStreamConduit this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   25     0                this  Lorg/xnio/ssl/JsseStreamConduit;
            0   25     1                dsts  [Ljava/nio/ByteBuffer;
            0   25     2                offs  I
            0   25     3                 len  I
            1   25     4               state  I
            6   14     5  readBufferResource  Ljava/nio/ByteBuffer;
           17   24     5                 res  J
      Exception table:
        from    to  target  type
           7     9      11  any
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      dsts  final
      offs  final
      len   final

  public long transferTo(long, long, java.nio.channels.FileChannel);
    descriptor: (JJLjava/nio/channels/FileChannel;)J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=6, args_size=4
        start local 0 // org.xnio.ssl.JsseStreamConduit this
        start local 1 // long position
        start local 3 // long count
        start local 5 // java.nio.channels.FileChannel target
         0: .line 1009
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.state:I
            ldc 131072
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            ifeq 2
         1: .line 1010
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.sourceConduit:Lorg/xnio/conduits/StreamSourceConduit;
            lload 1 /* position */
            lload 3 /* count */
            aload 5 /* target */
            invokeinterface org.xnio.conduits.StreamSourceConduit.transferTo:(JJLjava/nio/channels/FileChannel;)J
            lreturn
         2: .line 1012
      StackMap locals:
      StackMap stack:
            aload 5 /* target */
            new org.xnio.conduits.ConduitReadableByteChannel
            dup
            aload 0 /* this */
            invokespecial org.xnio.conduits.ConduitReadableByteChannel.<init>:(Lorg/xnio/conduits/StreamSourceConduit;)V
            lload 1 /* position */
            lload 3 /* count */
            invokevirtual java.nio.channels.FileChannel.transferFrom:(Ljava/nio/channels/ReadableByteChannel;JJ)J
            lreturn
        end local 5 // java.nio.channels.FileChannel target
        end local 3 // long count
        end local 1 // long position
        end local 0 // org.xnio.ssl.JsseStreamConduit this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    3     0      this  Lorg/xnio/ssl/JsseStreamConduit;
            0    3     1  position  J
            0    3     3     count  J
            0    3     5    target  Ljava/nio/channels/FileChannel;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
          Name  Flags
      position  final
      count     final
      target    final

  public long transferTo(long, java.nio.ByteBuffer, org.xnio.channels.StreamSinkChannel);
    descriptor: (JLjava/nio/ByteBuffer;Lorg/xnio/channels/StreamSinkChannel;)J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=4
        start local 0 // org.xnio.ssl.JsseStreamConduit this
        start local 1 // long count
        start local 3 // java.nio.ByteBuffer throughBuffer
        start local 4 // org.xnio.channels.StreamSinkChannel target
         0: .line 1017
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.state:I
            ldc 131072
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            ifeq 2
         1: .line 1018
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.sourceConduit:Lorg/xnio/conduits/StreamSourceConduit;
            lload 1 /* count */
            aload 3 /* throughBuffer */
            aload 4 /* target */
            invokeinterface org.xnio.conduits.StreamSourceConduit.transferTo:(JLjava/nio/ByteBuffer;Lorg/xnio/channels/StreamSinkChannel;)J
            lreturn
         2: .line 1021
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            lload 1 /* count */
            aload 3 /* throughBuffer */
            aload 4 /* target */
            invokestatic org.xnio.conduits.Conduits.transfer:(Lorg/xnio/conduits/StreamSourceConduit;JLjava/nio/ByteBuffer;Ljava/nio/channels/WritableByteChannel;)J
            lreturn
        end local 4 // org.xnio.channels.StreamSinkChannel target
        end local 3 // java.nio.ByteBuffer throughBuffer
        end local 1 // long count
        end local 0 // org.xnio.ssl.JsseStreamConduit this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    3     0           this  Lorg/xnio/ssl/JsseStreamConduit;
            0    3     1          count  J
            0    3     3  throughBuffer  Ljava/nio/ByteBuffer;
            0    3     4         target  Lorg/xnio/channels/StreamSinkChannel;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
               Name  Flags
      count          final
      throughBuffer  final
      target         final

  public int write(java.nio.ByteBuffer);
    descriptor: (Ljava/nio/ByteBuffer;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=2
        start local 0 // org.xnio.ssl.JsseStreamConduit this
        start local 1 // java.nio.ByteBuffer src
         0: .line 1034
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.state:I
            sipush 256
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 2
         1: .line 1035
            new java.nio.channels.ClosedChannelException
            dup
            invokespecial java.nio.channels.ClosedChannelException.<init>:()V
            athrow
         2: .line 1037
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.state:I
            ldc 131072
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            ifeq 4
         3: .line 1038
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.sinkConduit:Lorg/xnio/conduits/StreamSinkConduit;
            aload 1 /* src */
            invokeinterface org.xnio.conduits.StreamSinkConduit.write:(Ljava/nio/ByteBuffer;)I
            ireturn
         4: .line 1040
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.writeBufferHolder:[Ljava/nio/ByteBuffer;
            astore 2 /* writeBufferHolder */
        start local 2 // java.nio.ByteBuffer[] writeBufferHolder
         5: .line 1041
            aload 2 /* writeBufferHolder */
            iconst_0
            aload 1 /* src */
            aastore
         6: .line 1043
            aload 0 /* this */
            aload 2 /* writeBufferHolder */
            iconst_0
            iconst_1
            invokevirtual org.xnio.ssl.JsseStreamConduit.write:([Ljava/nio/ByteBuffer;II)J
            l2i
            istore 4
         7: .line 1045
            aload 2 /* writeBufferHolder */
            iconst_0
            aconst_null
            aastore
         8: .line 1043
            iload 4
            ireturn
         9: .line 1044
      StackMap locals: org.xnio.ssl.JsseStreamConduit java.nio.ByteBuffer java.nio.ByteBuffer[]
      StackMap stack: java.lang.Throwable
            astore 3
        10: .line 1045
            aload 2 /* writeBufferHolder */
            iconst_0
            aconst_null
            aastore
        11: .line 1046
            aload 3
            athrow
        end local 2 // java.nio.ByteBuffer[] writeBufferHolder
        end local 1 // java.nio.ByteBuffer src
        end local 0 // org.xnio.ssl.JsseStreamConduit this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   12     0               this  Lorg/xnio/ssl/JsseStreamConduit;
            0   12     1                src  Ljava/nio/ByteBuffer;
            5   12     2  writeBufferHolder  [Ljava/nio/ByteBuffer;
      Exception table:
        from    to  target  type
           6     7       9  any
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      src   final

  public int writeFinal(java.nio.ByteBuffer);
    descriptor: (Ljava/nio/ByteBuffer;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=2
        start local 0 // org.xnio.ssl.JsseStreamConduit this
        start local 1 // java.nio.ByteBuffer src
         0: .line 1051
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.state:I
            sipush 256
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 2
         1: .line 1052
            new java.nio.channels.ClosedChannelException
            dup
            invokespecial java.nio.channels.ClosedChannelException.<init>:()V
            athrow
         2: .line 1054
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.state:I
            ldc 131072
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            ifeq 4
         3: .line 1055
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.sinkConduit:Lorg/xnio/conduits/StreamSinkConduit;
            aload 1 /* src */
            invokeinterface org.xnio.conduits.StreamSinkConduit.writeFinal:(Ljava/nio/ByteBuffer;)I
            ireturn
         4: .line 1057
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.writeBufferHolder:[Ljava/nio/ByteBuffer;
            astore 2 /* writeBufferHolder */
        start local 2 // java.nio.ByteBuffer[] writeBufferHolder
         5: .line 1058
            aload 2 /* writeBufferHolder */
            iconst_0
            aload 1 /* src */
            aastore
         6: .line 1060
            aload 0 /* this */
            aload 2 /* writeBufferHolder */
            iconst_0
            iconst_1
            invokevirtual org.xnio.ssl.JsseStreamConduit.writeFinal:([Ljava/nio/ByteBuffer;II)J
            l2i
            istore 4
         7: .line 1062
            aload 2 /* writeBufferHolder */
            iconst_0
            aconst_null
            aastore
         8: .line 1060
            iload 4
            ireturn
         9: .line 1061
      StackMap locals: org.xnio.ssl.JsseStreamConduit java.nio.ByteBuffer java.nio.ByteBuffer[]
      StackMap stack: java.lang.Throwable
            astore 3
        10: .line 1062
            aload 2 /* writeBufferHolder */
            iconst_0
            aconst_null
            aastore
        11: .line 1063
            aload 3
            athrow
        end local 2 // java.nio.ByteBuffer[] writeBufferHolder
        end local 1 // java.nio.ByteBuffer src
        end local 0 // org.xnio.ssl.JsseStreamConduit this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   12     0               this  Lorg/xnio/ssl/JsseStreamConduit;
            0   12     1                src  Ljava/nio/ByteBuffer;
            5   12     2  writeBufferHolder  [Ljava/nio/ByteBuffer;
      Exception table:
        from    to  target  type
           6     7       9  any
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      src   final

  public long write(java.nio.ByteBuffer[], int, int);
    descriptor: ([Ljava/nio/ByteBuffer;II)J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=6, args_size=4
        start local 0 // org.xnio.ssl.JsseStreamConduit this
        start local 1 // java.nio.ByteBuffer[] srcs
        start local 2 // int offs
        start local 3 // int len
         0: .line 1068
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.state:I
            sipush 256
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 2
         1: .line 1069
            new java.nio.channels.ClosedChannelException
            dup
            invokespecial java.nio.channels.ClosedChannelException.<init>:()V
            athrow
         2: .line 1071
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.state:I
            ldc 131072
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            ifeq 4
         3: .line 1072
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.sinkConduit:Lorg/xnio/conduits/StreamSinkConduit;
            aload 1 /* srcs */
            iload 2 /* offs */
            iload 3 /* len */
            invokeinterface org.xnio.conduits.StreamSinkConduit.write:([Ljava/nio/ByteBuffer;II)J
            lreturn
         4: .line 1074
      StackMap locals:
      StackMap stack:
            aload 1 /* srcs */
            iload 2 /* offs */
            iload 3 /* len */
            invokestatic org.xnio.Buffers.remaining:([Ljava/nio/Buffer;II)J
            lstore 4 /* r1 */
        start local 4 // long r1
         5: .line 1075
            aload 0 /* this */
            iconst_1
            aload 1 /* srcs */
            iload 2 /* offs */
            iload 3 /* len */
            getstatic org.xnio.ssl.JsseStreamConduit.NO_BUFFERS:[Ljava/nio/ByteBuffer;
            iconst_0
            iconst_0
            invokevirtual org.xnio.ssl.JsseStreamConduit.performIO:(I[Ljava/nio/ByteBuffer;II[Ljava/nio/ByteBuffer;II)J
            pop2
         6: .line 1076
            lload 4 /* r1 */
            aload 1 /* srcs */
            iload 2 /* offs */
            iload 3 /* len */
            invokestatic org.xnio.Buffers.remaining:([Ljava/nio/Buffer;II)J
            lsub
            lreturn
        end local 4 // long r1
        end local 3 // int len
        end local 2 // int offs
        end local 1 // java.nio.ByteBuffer[] srcs
        end local 0 // org.xnio.ssl.JsseStreamConduit this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lorg/xnio/ssl/JsseStreamConduit;
            0    7     1  srcs  [Ljava/nio/ByteBuffer;
            0    7     2  offs  I
            0    7     3   len  I
            5    7     4    r1  J
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      srcs  final
      offs  final
      len   final

  public long writeFinal(java.nio.ByteBuffer[], int, int);
    descriptor: ([Ljava/nio/ByteBuffer;II)J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=6, args_size=4
        start local 0 // org.xnio.ssl.JsseStreamConduit this
        start local 1 // java.nio.ByteBuffer[] srcs
        start local 2 // int offs
        start local 3 // int len
         0: .line 1081
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.state:I
            sipush 256
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 2
         1: .line 1082
            new java.nio.channels.ClosedChannelException
            dup
            invokespecial java.nio.channels.ClosedChannelException.<init>:()V
            athrow
         2: .line 1084
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.state:I
            ldc 131072
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            ifeq 4
         3: .line 1085
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.sinkConduit:Lorg/xnio/conduits/StreamSinkConduit;
            aload 1 /* srcs */
            iload 2 /* offs */
            iload 3 /* len */
            invokeinterface org.xnio.conduits.StreamSinkConduit.writeFinal:([Ljava/nio/ByteBuffer;II)J
            lreturn
         4: .line 1087
      StackMap locals:
      StackMap stack:
            aload 1 /* srcs */
            iload 2 /* offs */
            iload 3 /* len */
            invokestatic org.xnio.Buffers.remaining:([Ljava/nio/Buffer;II)J
            lstore 4 /* r1 */
        start local 4 // long r1
         5: .line 1088
            aload 0 /* this */
            iconst_3
            aload 1 /* srcs */
            iload 2 /* offs */
            iload 3 /* len */
            getstatic org.xnio.ssl.JsseStreamConduit.NO_BUFFERS:[Ljava/nio/ByteBuffer;
            iconst_0
            iconst_0
            invokevirtual org.xnio.ssl.JsseStreamConduit.performIO:(I[Ljava/nio/ByteBuffer;II[Ljava/nio/ByteBuffer;II)J
            pop2
         6: .line 1089
            lload 4 /* r1 */
            aload 1 /* srcs */
            iload 2 /* offs */
            iload 3 /* len */
            invokestatic org.xnio.Buffers.remaining:([Ljava/nio/Buffer;II)J
            lsub
            lreturn
        end local 4 // long r1
        end local 3 // int len
        end local 2 // int offs
        end local 1 // java.nio.ByteBuffer[] srcs
        end local 0 // org.xnio.ssl.JsseStreamConduit this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lorg/xnio/ssl/JsseStreamConduit;
            0    7     1  srcs  [Ljava/nio/ByteBuffer;
            0    7     2  offs  I
            0    7     3   len  I
            5    7     4    r1  J
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      srcs  final
      offs  final
      len   final

  public boolean flush();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=3, args_size=1
        start local 0 // org.xnio.ssl.JsseStreamConduit this
         0: .line 1094
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.state:I
            istore 1 /* state */
        start local 1 // int state
         1: .line 1095
            iload 1 /* state */
            sipush 2048
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 3
         2: .line 1096
            iconst_1
            ireturn
         3: .line 1097
      StackMap locals: int
      StackMap stack:
            iload 1 /* state */
            sipush 1024
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 8
         4: .line 1099
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.sinkConduit:Lorg/xnio/conduits/StreamSinkConduit;
            invokeinterface org.xnio.conduits.StreamSinkConduit.flush:()Z
            ifeq 7
         5: .line 1100
            aload 0 /* this */
            iload 1 /* state */
            sipush 2048
            ior
            putfield org.xnio.ssl.JsseStreamConduit.state:I
         6: .line 1101
            iconst_1
            ireturn
         7: .line 1103
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
         8: .line 1105
      StackMap locals:
      StackMap stack:
            iload 1 /* state */
            ldc 131072
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            ifeq 13
         9: .line 1106
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.sinkConduit:Lorg/xnio/conduits/StreamSinkConduit;
            invokeinterface org.xnio.conduits.StreamSinkConduit.flush:()Z
            istore 2 /* flushed */
        start local 2 // boolean flushed
        10: .line 1107
            iload 1 /* state */
            sipush 256
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 12
            iload 2 /* flushed */
            ifeq 12
        11: .line 1108
            aload 0 /* this */
            iload 1 /* state */
            sipush 512
            ior
            sipush 1024
            ior
            sipush 2048
            ior
            putfield org.xnio.ssl.JsseStreamConduit.state:I
        12: .line 1110
      StackMap locals: int
      StackMap stack:
            iload 2 /* flushed */
            ireturn
        end local 2 // boolean flushed
        13: .line 1111
      StackMap locals:
      StackMap stack:
            iload 1 /* state */
            sipush 256
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 16
        14: .line 1113
            aload 0 /* this */
            iconst_2
            getstatic org.xnio.ssl.JsseStreamConduit.NO_BUFFERS:[Ljava/nio/ByteBuffer;
            iconst_0
            iconst_0
            getstatic org.xnio.ssl.JsseStreamConduit.NO_BUFFERS:[Ljava/nio/ByteBuffer;
            iconst_0
            iconst_0
            invokevirtual org.xnio.ssl.JsseStreamConduit.performIO:(I[Ljava/nio/ByteBuffer;II[Ljava/nio/ByteBuffer;II)J
            lconst_0
            lcmp
            ifeq 15
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
        15: iconst_0
            ireturn
        16: .line 1116
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_2
            getstatic org.xnio.ssl.JsseStreamConduit.NO_BUFFERS:[Ljava/nio/ByteBuffer;
            iconst_0
            iconst_0
            getstatic org.xnio.ssl.JsseStreamConduit.NO_BUFFERS:[Ljava/nio/ByteBuffer;
            iconst_0
            iconst_0
            invokevirtual org.xnio.ssl.JsseStreamConduit.performIO:(I[Ljava/nio/ByteBuffer;II[Ljava/nio/ByteBuffer;II)J
            lconst_0
            lcmp
            ifeq 17
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
        17: iconst_0
            ireturn
        end local 1 // int state
        end local 0 // org.xnio.ssl.JsseStreamConduit this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   18     0     this  Lorg/xnio/ssl/JsseStreamConduit;
            1   18     1    state  I
           10   13     2  flushed  Z
    Exceptions:
      throws java.io.IOException

  public long transferFrom(java.nio.channels.FileChannel, long, long);
    descriptor: (Ljava/nio/channels/FileChannel;JJ)J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=6, args_size=4
        start local 0 // org.xnio.ssl.JsseStreamConduit this
        start local 1 // java.nio.channels.FileChannel src
        start local 2 // long position
        start local 4 // long count
         0: .line 1121
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.state:I
            ldc 131072
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            ifeq 2
         1: .line 1122
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.sinkConduit:Lorg/xnio/conduits/StreamSinkConduit;
            aload 1 /* src */
            lload 2 /* position */
            lload 4 /* count */
            invokeinterface org.xnio.conduits.StreamSinkConduit.transferFrom:(Ljava/nio/channels/FileChannel;JJ)J
            lreturn
         2: .line 1124
      StackMap locals:
      StackMap stack:
            aload 1 /* src */
            lload 2 /* position */
            lload 4 /* count */
            new org.xnio.conduits.ConduitWritableByteChannel
            dup
            aload 0 /* this */
            invokespecial org.xnio.conduits.ConduitWritableByteChannel.<init>:(Lorg/xnio/conduits/StreamSinkConduit;)V
            invokevirtual java.nio.channels.FileChannel.transferTo:(JJLjava/nio/channels/WritableByteChannel;)J
            lreturn
        end local 4 // long count
        end local 2 // long position
        end local 1 // java.nio.channels.FileChannel src
        end local 0 // org.xnio.ssl.JsseStreamConduit this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    3     0      this  Lorg/xnio/ssl/JsseStreamConduit;
            0    3     1       src  Ljava/nio/channels/FileChannel;
            0    3     2  position  J
            0    3     4     count  J
    Exceptions:
      throws java.io.IOException
    MethodParameters:
          Name  Flags
      src       final
      position  final
      count     final

  public long transferFrom(org.xnio.channels.StreamSourceChannel, long, java.nio.ByteBuffer);
    descriptor: (Lorg/xnio/channels/StreamSourceChannel;JLjava/nio/ByteBuffer;)J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=4
        start local 0 // org.xnio.ssl.JsseStreamConduit this
        start local 1 // org.xnio.channels.StreamSourceChannel source
        start local 2 // long count
        start local 4 // java.nio.ByteBuffer throughBuffer
         0: .line 1129
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.state:I
            ldc 131072
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            ifeq 2
         1: .line 1130
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.sinkConduit:Lorg/xnio/conduits/StreamSinkConduit;
            aload 1 /* source */
            lload 2 /* count */
            aload 4 /* throughBuffer */
            invokeinterface org.xnio.conduits.StreamSinkConduit.transferFrom:(Lorg/xnio/channels/StreamSourceChannel;JLjava/nio/ByteBuffer;)J
            lreturn
         2: .line 1132
      StackMap locals:
      StackMap stack:
            aload 1 /* source */
            lload 2 /* count */
            aload 4 /* throughBuffer */
            aload 0 /* this */
            invokestatic org.xnio.conduits.Conduits.transfer:(Ljava/nio/channels/ReadableByteChannel;JLjava/nio/ByteBuffer;Lorg/xnio/conduits/StreamSinkConduit;)J
            lreturn
        end local 4 // java.nio.ByteBuffer throughBuffer
        end local 2 // long count
        end local 1 // org.xnio.channels.StreamSourceChannel source
        end local 0 // org.xnio.ssl.JsseStreamConduit this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    3     0           this  Lorg/xnio/ssl/JsseStreamConduit;
            0    3     1         source  Lorg/xnio/channels/StreamSourceChannel;
            0    3     2          count  J
            0    3     4  throughBuffer  Ljava/nio/ByteBuffer;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
               Name  Flags
      source         final
      count          final
      throughBuffer  final

  private static long actualIOResult(long, int, boolean, boolean);
    descriptor: (JIZZ)J
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=7, args_size=4
        start local 0 // long xfer
        start local 2 // int goal
        start local 3 // boolean flushed
        start local 4 // boolean eof
         0: .line 1150
            iload 2 /* goal */
            iconst_2
            if_icmpne 1
            iload 3 /* flushed */
            ifeq 1
            lconst_1
            goto 3
      StackMap locals:
      StackMap stack:
         1: iload 2 /* goal */
            ifne 2
            iload 4 /* eof */
            ifeq 2
            lload 0 /* xfer */
            lconst_0
            lcmp
            ifne 2
            ldc -1
            goto 3
      StackMap locals:
      StackMap stack:
         2: lload 0 /* xfer */
      StackMap locals:
      StackMap stack: long
         3: lstore 5 /* result */
        start local 5 // long result
         4: .line 1151
            getstatic org.xnio.ssl.JsseStreamConduit.TRACE_SSL:Z
            ifeq 5
            getstatic org.xnio._private.Messages.msg:Lorg/xnio/_private/Messages;
            ldc "returned TLS result %d"
            lload 5 /* result */
            invokeinterface org.xnio._private.Messages.tracef:(Ljava/lang/String;J)V
         5: .line 1152
      StackMap locals: long
      StackMap stack:
            lload 5 /* result */
            lreturn
        end local 5 // long result
        end local 4 // boolean eof
        end local 3 // boolean flushed
        end local 2 // int goal
        end local 0 // long xfer
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    6     0     xfer  J
            0    6     2     goal  I
            0    6     3  flushed  Z
            0    6     4      eof  Z
            4    6     5   result  J
    MethodParameters:
         Name  Flags
      xfer     final
      goal     final
      flushed  final
      eof      final

  private static java.lang.String decodeGoal(int);
    descriptor: (I)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // int goal
         0: .line 1156
            iload 0 /* goal */
            tableswitch { // 0 - 3
                    0: 1
                    1: 2
                    2: 3
                    3: 4
              default: 5
          }
         1: .line 1157
      StackMap locals:
      StackMap stack:
            ldc "READ"
            areturn
         2: .line 1158
      StackMap locals:
      StackMap stack:
            ldc "WRITE"
            areturn
         3: .line 1159
      StackMap locals:
      StackMap stack:
            ldc "FLUSH"
            areturn
         4: .line 1160
      StackMap locals:
      StackMap stack:
            ldc "WRITE_FINAL"
            areturn
         5: .line 1161
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            ldc "UNKNOWN("
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 0 /* goal */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc ")"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 0 // int goal
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  goal  I
    MethodParameters:
      Name  Flags
      goal  

  private long performIO(int, java.nio.ByteBuffer[], int, int, java.nio.ByteBuffer[], int, int);
    descriptor: (I[Ljava/nio/ByteBuffer;II[Ljava/nio/ByteBuffer;II)J
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=40, args_size=8
        start local 0 // org.xnio.ssl.JsseStreamConduit this
        start local 1 // int goal
        start local 2 // java.nio.ByteBuffer[] srcs
        start local 3 // int srcOff
        start local 4 // int srcLen
        start local 5 // java.nio.ByteBuffer[] dsts
        start local 6 // int dstOff
        start local 7 // int dstLen
         0: .line 1166
            getstatic org.xnio.ssl.JsseStreamConduit.TRACE_SSL:Z
            ifeq 1
            getstatic org.xnio._private.Messages.msg:Lorg/xnio/_private/Messages;
            ldc "performing TLS I/O operation, goal %s, src: %s, dst: %s"
            iload 1 /* goal */
            invokestatic org.xnio.ssl.JsseStreamConduit.decodeGoal:(I)Ljava/lang/String;
            aload 2 /* srcs */
            iload 3 /* srcOff */
            iload 4 /* srcLen */
            invokestatic org.xnio.Buffers.debugString:([Ljava/nio/ByteBuffer;II)Ljava/lang/String;
            aload 5 /* dsts */
            iload 6 /* dstOff */
            iload 7 /* dstLen */
            invokestatic org.xnio.Buffers.debugString:([Ljava/nio/ByteBuffer;II)Ljava/lang/String;
            invokeinterface org.xnio._private.Messages.tracef:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 1168
      StackMap locals:
      StackMap stack:
            getstatic org.xnio.ssl.JsseStreamConduit.$assertionsDisabled:Z
            ifne 2
            aload 2 /* srcs */
            getstatic org.xnio.ssl.JsseStreamConduit.NO_BUFFERS:[Ljava/nio/ByteBuffer;
            if_acmpeq 2
            aload 5 /* dsts */
            getstatic org.xnio.ssl.JsseStreamConduit.NO_BUFFERS:[Ljava/nio/ByteBuffer;
            if_acmpeq 2
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 1169
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.state:I
            istore 8 /* state */
        start local 8 // int state
         3: .line 1171
            getstatic org.xnio.ssl.JsseStreamConduit.$assertionsDisabled:Z
            ifne 4
            iload 8 /* state */
            ldc 65600
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 4
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         4: .line 1172
      StackMap locals: int
      StackMap stack:
            iload 8 /* state */
            ldc 1048576
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 6
         5: .line 1174
            lconst_0
            lreturn
         6: .line 1176
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.engine:Ljavax/net/ssl/SSLEngine;
            astore 9 /* engine */
        start local 9 // javax.net.ssl.SSLEngine engine
         7: .line 1177
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.sendBuffer:Lorg/xnio/Pooled;
            invokeinterface org.xnio.Pooled.getResource:()Ljava/lang/Object;
            checkcast java.nio.ByteBuffer
            astore 10 /* sendBuffer */
        start local 10 // java.nio.ByteBuffer sendBuffer
         8: .line 1178
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.receiveBuffer:Lorg/xnio/Pooled;
            invokeinterface org.xnio.Pooled.getResource:()Ljava/lang/Object;
            checkcast java.nio.ByteBuffer
            astore 11 /* receiveBuffer */
        start local 11 // java.nio.ByteBuffer receiveBuffer
         9: .line 1179
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.readBuffer:Lorg/xnio/Pooled;
            invokeinterface org.xnio.Pooled.getResource:()Ljava/lang/Object;
            checkcast java.nio.ByteBuffer
            astore 12 /* readBuffer */
        start local 12 // java.nio.ByteBuffer readBuffer
        10: .line 1181
            aload 5 /* dsts */
            iload 6 /* dstOff */
            iload 7 /* dstLen */
            iconst_1
            iadd
            invokestatic java.util.Arrays.copyOfRange:([Ljava/lang/Object;II)[Ljava/lang/Object;
            checkcast java.nio.ByteBuffer[]
            astore 13 /* realDsts */
        start local 13 // java.nio.ByteBuffer[] realDsts
        11: .line 1182
            aload 13 /* realDsts */
            iload 7 /* dstLen */
            aload 12 /* readBuffer */
            aastore
        12: .line 1184
            aload 2 /* srcs */
            iload 3 /* srcOff */
            iload 4 /* srcLen */
            invokestatic org.xnio.Buffers.remaining:([Ljava/nio/Buffer;II)J
            aload 5 /* dsts */
            iload 6 /* dstOff */
            iload 7 /* dstLen */
            invokestatic org.xnio.Buffers.remaining:([Ljava/nio/Buffer;II)J
            invokestatic java.lang.Math.max:(JJ)J
            lstore 14 /* remaining */
        start local 14 // long remaining
        13: .line 1185
            iload 1 /* goal */
            ifne 14
            iload 8 /* state */
            ldc 2097216
            invokestatic org.xnio.Bits.anyAreSet:(II)Z
            goto 16
      StackMap locals: org.xnio.ssl.JsseStreamConduit int java.nio.ByteBuffer[] int int java.nio.ByteBuffer[] int int int javax.net.ssl.SSLEngine java.nio.ByteBuffer java.nio.ByteBuffer java.nio.ByteBuffer java.nio.ByteBuffer[] long
      StackMap stack:
        14: iload 8 /* state */
            ldc 2097152
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifne 15
            iload 8 /* state */
            ldc 65536
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            ifne 15
            iconst_0
            goto 16
      StackMap locals:
      StackMap stack:
        15: iconst_1
      StackMap locals:
      StackMap stack: int
        16: istore 16 /* wrap */
        start local 16 // boolean wrap
        17: .line 1186
            iload 16 /* wrap */
            ifeq 18
            iconst_0
            goto 19
      StackMap locals: int
      StackMap stack:
        18: iconst_1
      StackMap locals:
      StackMap stack: int
        19: istore 17 /* unwrap */
        start local 17 // boolean unwrap
        20: .line 1187
            iconst_0
            istore 18 /* flushed */
        start local 18 // boolean flushed
        21: .line 1188
            iconst_0
            istore 19 /* eof */
        start local 19 // boolean eof
        22: .line 1189
            iconst_0
            istore 20 /* readBlocked */
        start local 20 // boolean readBlocked
        23: .line 1190
            iconst_0
            istore 21 /* writeBlocked */
        start local 21 // boolean writeBlocked
        24: .line 1191
            iconst_0
            istore 22 /* copiedUnwrappedBytes */
        start local 22 // boolean copiedUnwrappedBytes
        25: .line 1192
            iconst_0
            istore 23 /* wakeupReads */
        start local 23 // boolean wakeupReads
        26: .line 1195
            iconst_0
            istore 26 /* rv */
        start local 26 // int rv
        27: .line 1197
            lconst_0
            lstore 27 /* xfer */
        start local 27 // long xfer
        28: .line 1198
            getstatic org.xnio.ssl.JsseStreamConduit.TRACE_SSL:Z
            ifeq 29
            getstatic org.xnio._private.Messages.msg:Lorg/xnio/_private/Messages;
            ldc "TLS perform IO"
            invokeinterface org.xnio._private.Messages.trace:(Ljava/lang/Object;)V
        29: .line 1201
      StackMap locals: org.xnio.ssl.JsseStreamConduit int java.nio.ByteBuffer[] int int java.nio.ByteBuffer[] int int int javax.net.ssl.SSLEngine java.nio.ByteBuffer java.nio.ByteBuffer java.nio.ByteBuffer java.nio.ByteBuffer[] long int int int int int int int int top top int long
      StackMap stack:
            getstatic org.xnio.ssl.JsseStreamConduit.TRACE_SSL:Z
            ifeq 30
            getstatic org.xnio._private.Messages.msg:Lorg/xnio/_private/Messages;
            ldc "TLS begin IO operation"
            invokeinterface org.xnio._private.Messages.trace:(Ljava/lang/Object;)V
        30: .line 1202
      StackMap locals:
      StackMap stack:
            iload 1 /* goal */
            ifne 48
            lload 14 /* remaining */
            lconst_0
            lcmp
            ifle 48
            aload 12 /* readBuffer */
            invokevirtual java.nio.ByteBuffer.position:()I
            ifle 48
        31: .line 1204
            aload 12 /* readBuffer */
            invokevirtual java.nio.ByteBuffer.flip:()Ljava/nio/Buffer;
            pop
        32: .line 1206
            getstatic org.xnio.ssl.JsseStreamConduit.TRACE_SSL:Z
            ifeq 33
            getstatic org.xnio._private.Messages.msg:Lorg/xnio/_private/Messages;
            ldc "TLS copy unwrapped data from %s to %s"
            aload 12 /* readBuffer */
            invokestatic org.xnio.Buffers.debugString:(Ljava/nio/ByteBuffer;)Ljava/lang/String;
            aload 5 /* dsts */
            iload 6 /* dstOff */
            iload 7 /* dstLen */
            invokestatic org.xnio.Buffers.debugString:([Ljava/nio/ByteBuffer;II)Ljava/lang/String;
            invokeinterface org.xnio._private.Messages.tracef:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
        33: .line 1207
      StackMap locals:
      StackMap stack:
            aload 5 /* dsts */
            iload 6 /* dstOff */
            iload 7 /* dstLen */
            aload 12 /* readBuffer */
            invokestatic org.xnio.Buffers.copy:([Ljava/nio/ByteBuffer;IILjava/nio/ByteBuffer;)I
            istore 26 /* rv */
        34: .line 1208
            goto 38
      StackMap locals:
      StackMap stack: java.lang.Throwable
        35: astore 29
        36: .line 1209
            aload 12 /* readBuffer */
            invokevirtual java.nio.ByteBuffer.compact:()Ljava/nio/ByteBuffer;
            pop
        37: .line 1210
            aload 29
            athrow
        38: .line 1209
      StackMap locals:
      StackMap stack:
            aload 12 /* readBuffer */
            invokevirtual java.nio.ByteBuffer.compact:()Ljava/nio/ByteBuffer;
            pop
        39: .line 1211
            iload 26 /* rv */
            ifle 48
        40: .line 1212
            iconst_1
            istore 22 /* copiedUnwrappedBytes */
        41: .line 1213
            lload 27 /* xfer */
            iload 26 /* rv */
            i2l
            ladd
            lstore 27 /* xfer */
        42: .line 1214
            lload 14 /* remaining */
            iload 26 /* rv */
            i2l
            lsub
            dup2
            lstore 14 /* remaining */
            lconst_0
            lcmp
            ifne 48
        43: .line 1215
            lload 27 /* xfer */
            iload 1 /* goal */
            iload 18 /* flushed */
            iload 19 /* eof */
            invokestatic org.xnio.ssl.JsseStreamConduit.actualIOResult:(JIZZ)J
            lstore 38
        44: .line 1603
            aload 0 /* this */
            iload 8 /* state */
            putfield org.xnio.ssl.JsseStreamConduit.state:I
        45: .line 1604
            iload 23 /* wakeupReads */
            ifeq 47
        46: .line 1605
            aload 0 /* this */
            invokevirtual org.xnio.ssl.JsseStreamConduit.wakeupReads:()V
        47: .line 1215
      StackMap locals: org.xnio.ssl.JsseStreamConduit int java.nio.ByteBuffer[] int int java.nio.ByteBuffer[] int int int javax.net.ssl.SSLEngine java.nio.ByteBuffer java.nio.ByteBuffer java.nio.ByteBuffer java.nio.ByteBuffer[] long int int int int int int int int top top int long top top top top top top top top top long
      StackMap stack:
            lload 38
            lreturn
        48: .line 1219
      StackMap locals: org.xnio.ssl.JsseStreamConduit int java.nio.ByteBuffer[] int int java.nio.ByteBuffer[] int int int javax.net.ssl.SSLEngine java.nio.ByteBuffer java.nio.ByteBuffer java.nio.ByteBuffer java.nio.ByteBuffer[] long int int int int int int int int top top int long
      StackMap stack:
            getstatic org.xnio.ssl.JsseStreamConduit.$assertionsDisabled:Z
            ifne 49
            iload 16 /* wrap */
            ifeq 49
            iload 17 /* unwrap */
            ifeq 49
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        49: .line 1220
      StackMap locals:
      StackMap stack:
            iload 16 /* wrap */
            ifeq 149
        50: .line 1221
            getstatic org.xnio.ssl.JsseStreamConduit.TRACE_SSL:Z
            ifeq 51
            getstatic org.xnio._private.Messages.msg:Lorg/xnio/_private/Messages;
            ldc "TLS wrap from %s to %s"
            aload 2 /* srcs */
            iload 3 /* srcOff */
            iload 4 /* srcLen */
            invokestatic org.xnio.Buffers.debugString:([Ljava/nio/ByteBuffer;II)Ljava/lang/String;
            aload 10 /* sendBuffer */
            invokestatic org.xnio.Buffers.debugString:(Ljava/nio/ByteBuffer;)Ljava/lang/String;
            invokeinterface org.xnio._private.Messages.tracef:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
        51: .line 1222
      StackMap locals:
      StackMap stack:
            aload 9 /* engine */
            aload 2 /* srcs */
            iload 3 /* srcOff */
            iload 4 /* srcLen */
            aload 10 /* sendBuffer */
            invokevirtual javax.net.ssl.SSLEngine.wrap:([Ljava/nio/ByteBuffer;IILjava/nio/ByteBuffer;)Ljavax/net/ssl/SSLEngineResult;
            astore 24 /* result */
        start local 24 // javax.net.ssl.SSLEngineResult result
        52: .line 1223
            invokestatic org.xnio.ssl.JsseStreamConduit.$SWITCH_TABLE$javax$net$ssl$SSLEngineResult$Status:()[I
            aload 24 /* result */
            invokevirtual javax.net.ssl.SSLEngineResult.getStatus:()Ljavax/net/ssl/SSLEngineResult$Status;
            invokevirtual javax.net.ssl.SSLEngineResult$Status.ordinal:()I
            iaload
            tableswitch { // 1 - 4
                    1: 53
                    2: 57
                    3: 104
                    4: 86
              default: 148
          }
        53: .line 1225
      StackMap locals: org.xnio.ssl.JsseStreamConduit int java.nio.ByteBuffer[] int int java.nio.ByteBuffer[] int int int javax.net.ssl.SSLEngine java.nio.ByteBuffer java.nio.ByteBuffer java.nio.ByteBuffer java.nio.ByteBuffer[] long int int int int int int int int javax.net.ssl.SSLEngineResult top int long
      StackMap stack:
            getstatic org.xnio.ssl.JsseStreamConduit.$assertionsDisabled:Z
            ifne 54
            aload 24 /* result */
            invokevirtual javax.net.ssl.SSLEngineResult.bytesConsumed:()I
            ifeq 54
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        54: .line 1226
      StackMap locals:
      StackMap stack:
            getstatic org.xnio.ssl.JsseStreamConduit.$assertionsDisabled:Z
            ifne 55
            aload 24 /* result */
            invokevirtual javax.net.ssl.SSLEngineResult.bytesProduced:()I
            ifeq 55
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        55: .line 1228
      StackMap locals:
      StackMap stack:
            getstatic org.xnio.ssl.JsseStreamConduit.TRACE_SSL:Z
            ifeq 263
            getstatic org.xnio._private.Messages.msg:Lorg/xnio/_private/Messages;
            ldc "TLS wrap operation UNDERFLOW"
            invokeinterface org.xnio._private.Messages.trace:(Ljava/lang/Object;)V
        56: .line 1229
            goto 263
        57: .line 1232
      StackMap locals:
      StackMap stack:
            getstatic org.xnio.ssl.JsseStreamConduit.$assertionsDisabled:Z
            ifne 58
            aload 24 /* result */
            invokevirtual javax.net.ssl.SSLEngineResult.bytesConsumed:()I
            ifeq 58
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        58: .line 1233
      StackMap locals:
      StackMap stack:
            getstatic org.xnio.ssl.JsseStreamConduit.$assertionsDisabled:Z
            ifne 59
            aload 24 /* result */
            invokevirtual javax.net.ssl.SSLEngineResult.bytesProduced:()I
            ifeq 59
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        59: .line 1234
      StackMap locals:
      StackMap stack:
            getstatic org.xnio.ssl.JsseStreamConduit.TRACE_SSL:Z
            ifeq 60
            getstatic org.xnio._private.Messages.msg:Lorg/xnio/_private/Messages;
            ldc "TLS wrap operation OVERFLOW"
            invokeinterface org.xnio._private.Messages.trace:(Ljava/lang/Object;)V
        60: .line 1235
      StackMap locals:
      StackMap stack:
            aload 10 /* sendBuffer */
            invokevirtual java.nio.ByteBuffer.position:()I
            ifne 62
        61: .line 1237
            getstatic org.xnio._private.Messages.msg:Lorg/xnio/_private/Messages;
            invokeinterface org.xnio._private.Messages.wrongBufferExpansion:()Ljava/io/IOException;
            athrow
        62: .line 1240
      StackMap locals:
      StackMap stack:
            aload 10 /* sendBuffer */
            invokevirtual java.nio.ByteBuffer.flip:()Ljava/nio/Buffer;
            pop
        63: .line 1242
            goto 74
        64: .line 1243
      StackMap locals:
      StackMap stack:
            getstatic org.xnio.ssl.JsseStreamConduit.TRACE_SSL:Z
            ifeq 65
            getstatic org.xnio._private.Messages.msg:Lorg/xnio/_private/Messages;
            ldc "TLS wrap operation send %s"
            aload 10 /* sendBuffer */
            invokestatic org.xnio.Buffers.debugString:(Ljava/nio/ByteBuffer;)Ljava/lang/String;
            invokeinterface org.xnio._private.Messages.tracef:(Ljava/lang/String;Ljava/lang/Object;)V
        65: .line 1244
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.sinkConduit:Lorg/xnio/conduits/StreamSinkConduit;
            aload 10 /* sendBuffer */
            invokeinterface org.xnio.conduits.StreamSinkConduit.write:(Ljava/nio/ByteBuffer;)I
            istore 29 /* res */
        start local 29 // int res
        66: .line 1245
            iload 29 /* res */
            ifne 74
        67: .line 1246
            iconst_1
            istore 21 /* writeBlocked */
        68: .line 1247
            iload 8 /* state */
            ldc -32769
            iand
            istore 8 /* state */
        69: .line 1249
            getstatic org.xnio.ssl.JsseStreamConduit.$assertionsDisabled:Z
            ifne 70
            iload 1 /* goal */
            iconst_2
            if_icmpne 70
            lload 27 /* xfer */
            lconst_0
            lcmp
            ifeq 70
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        70: .line 1250
      StackMap locals: int
      StackMap stack:
            iconst_0
            istore 18 /* flushed */
        71: .line 1251
            iconst_0
            istore 16 /* wrap */
        72: .line 1256
            aload 10 /* sendBuffer */
            invokevirtual java.nio.ByteBuffer.compact:()Ljava/nio/ByteBuffer;
            pop
        73: .line 1252
            goto 263
        end local 29 // int res
        74: .line 1242
      StackMap locals:
      StackMap stack:
            aload 10 /* sendBuffer */
            invokevirtual java.nio.ByteBuffer.hasRemaining:()Z
            ifne 64
        75: .line 1255
            goto 79
      StackMap locals:
      StackMap stack: java.lang.Throwable
        76: astore 30
        77: .line 1256
            aload 10 /* sendBuffer */
            invokevirtual java.nio.ByteBuffer.compact:()Ljava/nio/ByteBuffer;
            pop
        78: .line 1257
            aload 30
            athrow
        79: .line 1256
      StackMap locals:
      StackMap stack:
            aload 10 /* sendBuffer */
            invokevirtual java.nio.ByteBuffer.compact:()Ljava/nio/ByteBuffer;
            pop
        80: .line 1258
            iload 1 /* goal */
            iconst_2
            if_icmpeq 81
            iload 8 /* state */
            ldc 2097152
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 83
        81: .line 1259
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.sinkConduit:Lorg/xnio/conduits/StreamSinkConduit;
            invokeinterface org.xnio.conduits.StreamSinkConduit.flush:()Z
            dup
            istore 18 /* flushed */
            ifeq 83
        82: .line 1260
            iload 8 /* state */
            ldc -2097153
            iand
            istore 8 /* state */
        83: .line 1263
      StackMap locals:
      StackMap stack:
            iload 1 /* goal */
            iconst_2
            if_icmpne 263
            iload 8 /* state */
            sipush 256
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 263
        84: .line 1264
            iload 8 /* state */
            sipush 512
            ior
            istore 8 /* state */
        85: .line 1268
            goto 263
        86: .line 1271
      StackMap locals:
      StackMap stack:
            getstatic org.xnio.ssl.JsseStreamConduit.TRACE_SSL:Z
            ifeq 87
            getstatic org.xnio._private.Messages.msg:Lorg/xnio/_private/Messages;
            ldc "TLS wrap operation CLOSED"
            invokeinterface org.xnio._private.Messages.trace:(Ljava/lang/Object;)V
        87: .line 1272
      StackMap locals:
      StackMap stack:
            iload 8 /* state */
            sipush 256
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            ifeq 102
            aload 24 /* result */
            invokevirtual javax.net.ssl.SSLEngineResult.bytesProduced:()I
            ifne 102
        88: .line 1273
            iload 1 /* goal */
            iconst_2
            if_icmpne 94
        89: .line 1276
            iconst_0
            istore 16 /* wrap */
        90: .line 1277
            iload 1 /* goal */
            iconst_2
            if_icmpeq 91
            iload 8 /* state */
            ldc 2097152
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 263
        91: .line 1278
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.sinkConduit:Lorg/xnio/conduits/StreamSinkConduit;
            invokeinterface org.xnio.conduits.StreamSinkConduit.flush:()Z
            dup
            istore 18 /* flushed */
            ifeq 263
        92: .line 1279
            iload 8 /* state */
            ldc -2097153
            iand
            istore 8 /* state */
        93: .line 1282
            goto 263
        94: .line 1285
      StackMap locals:
      StackMap stack:
            iload 8 /* state */
            ldc -65601
            iand
            istore 8 /* state */
        95: .line 1286
            iload 8 /* state */
            sipush 3840
            ior
            istore 8 /* state */
        96: .line 1287
            new java.nio.channels.ClosedChannelException
            dup
            invokespecial java.nio.channels.ClosedChannelException.<init>:()V
            astore 29 /* exception */
        start local 29 // java.nio.channels.ClosedChannelException exception
        97: .line 1289
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.sinkConduit:Lorg/xnio/conduits/StreamSinkConduit;
            invokeinterface org.xnio.conduits.StreamSinkConduit.truncateWrites:()V
        98: .line 1290
            goto 101
      StackMap locals: org.xnio.ssl.JsseStreamConduit int java.nio.ByteBuffer[] int int java.nio.ByteBuffer[] int int int javax.net.ssl.SSLEngine java.nio.ByteBuffer java.nio.ByteBuffer java.nio.ByteBuffer java.nio.ByteBuffer[] long int int int int int int int int javax.net.ssl.SSLEngineResult top int long java.nio.channels.ClosedChannelException
      StackMap stack: java.io.IOException
        99: astore 30 /* e */
        start local 30 // java.io.IOException e
       100: .line 1291
            aload 29 /* exception */
            aload 30 /* e */
            invokevirtual java.nio.channels.ClosedChannelException.addSuppressed:(Ljava/lang/Throwable;)V
        end local 30 // java.io.IOException e
       101: .line 1293
      StackMap locals:
      StackMap stack:
            aload 29 /* exception */
            athrow
        end local 29 // java.nio.channels.ClosedChannelException exception
       102: .line 1295
      StackMap locals:
      StackMap stack:
            iload 8 /* state */
            sipush 512
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 104
       103: .line 1296
            iload 8 /* state */
            sipush 1024
            ior
            istore 8 /* state */
       104: .line 1302
      StackMap locals:
      StackMap stack:
            getstatic org.xnio.ssl.JsseStreamConduit.TRACE_SSL:Z
            ifeq 105
            getstatic org.xnio._private.Messages.msg:Lorg/xnio/_private/Messages;
            ldc "TLS wrap operation OK consumed: %d produced: %d"
            aload 24 /* result */
            invokevirtual javax.net.ssl.SSLEngineResult.bytesConsumed:()I
            aload 24 /* result */
            invokevirtual javax.net.ssl.SSLEngineResult.bytesProduced:()I
            invokeinterface org.xnio._private.Messages.tracef:(Ljava/lang/String;II)V
       105: .line 1303
      StackMap locals:
      StackMap stack:
            iload 8 /* state */
            ldc -65601
            iand
            istore 8 /* state */
       106: .line 1304
            aload 24 /* result */
            invokevirtual javax.net.ssl.SSLEngineResult.bytesConsumed:()I
            istore 29 /* consumed */
        start local 29 // int consumed
       107: .line 1305
            iload 1 /* goal */
            ifne 112
       108: .line 1307
            getstatic org.xnio.ssl.JsseStreamConduit.$assertionsDisabled:Z
            ifne 109
            iload 29 /* consumed */
            ifeq 109
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
       109: .line 1308
      StackMap locals: int
      StackMap stack:
            iconst_0
            istore 16 /* wrap */
       110: .line 1309
            iconst_1
            istore 17 /* unwrap */
       111: .line 1310
            goto 117
       112: .line 1311
      StackMap locals:
      StackMap stack:
            iload 29 /* consumed */
            ifgt 113
            lload 14 /* remaining */
            lconst_0
            lcmp
            ifne 115
       113: .line 1313
      StackMap locals:
      StackMap stack:
            getstatic org.xnio.ssl.JsseStreamConduit.$assertionsDisabled:Z
            ifne 114
            lload 14 /* remaining */
            lconst_0
            lcmp
            ifne 114
            iload 29 /* consumed */
            ifeq 114
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
       114: .line 1315
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 16 /* wrap */
       115: .line 1317
      StackMap locals:
      StackMap stack:
            lload 27 /* xfer */
            iload 29 /* consumed */
            i2l
            ladd
            lstore 27 /* xfer */
       116: .line 1318
            lload 14 /* remaining */
            iload 29 /* consumed */
            i2l
            lsub
            lstore 14 /* remaining */
       117: .line 1321
      StackMap locals:
      StackMap stack:
            aload 10 /* sendBuffer */
            invokevirtual java.nio.ByteBuffer.flip:()Ljava/nio/Buffer;
            pop
       118: .line 1323
            iconst_0
            istore 18 /* flushed */
       119: .line 1324
            goto 127
       120: .line 1325
      StackMap locals:
      StackMap stack:
            iload 8 /* state */
            sipush 1024
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 121
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.sinkConduit:Lorg/xnio/conduits/StreamSinkConduit;
            aload 10 /* sendBuffer */
            invokeinterface org.xnio.conduits.StreamSinkConduit.writeFinal:(Ljava/nio/ByteBuffer;)I
            goto 122
      StackMap locals:
      StackMap stack:
       121: aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.sinkConduit:Lorg/xnio/conduits/StreamSinkConduit;
            aload 10 /* sendBuffer */
            invokeinterface org.xnio.conduits.StreamSinkConduit.write:(Ljava/nio/ByteBuffer;)I
      StackMap locals:
      StackMap stack: int
       122: istore 30 /* res */
        start local 30 // int res
       123: .line 1326
            iload 30 /* res */
            ifne 127
       124: .line 1328
            iconst_1
            istore 21 /* writeBlocked */
       125: .line 1329
            iconst_0
            istore 16 /* wrap */
       126: .line 1330
            goto 132
        end local 30 // int res
       127: .line 1324
      StackMap locals:
      StackMap stack:
            aload 10 /* sendBuffer */
            invokevirtual java.nio.ByteBuffer.hasRemaining:()Z
            ifne 120
       128: .line 1333
            goto 132
      StackMap locals:
      StackMap stack: java.lang.Throwable
       129: astore 31
       130: .line 1334
            aload 10 /* sendBuffer */
            invokevirtual java.nio.ByteBuffer.compact:()Ljava/nio/ByteBuffer;
            pop
       131: .line 1335
            aload 31
            athrow
       132: .line 1334
      StackMap locals:
      StackMap stack:
            aload 10 /* sendBuffer */
            invokevirtual java.nio.ByteBuffer.compact:()Ljava/nio/ByteBuffer;
            pop
       133: .line 1337
            aload 10 /* sendBuffer */
            invokevirtual java.nio.ByteBuffer.position:()I
            ifne 263
       134: .line 1338
            iload 1 /* goal */
            iconst_2
            if_icmpeq 135
            iload 8 /* state */
            ldc 2097152
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 137
       135: .line 1339
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.sinkConduit:Lorg/xnio/conduits/StreamSinkConduit;
            invokeinterface org.xnio.conduits.StreamSinkConduit.flush:()Z
            dup
            istore 18 /* flushed */
            ifeq 137
       136: .line 1340
            iload 8 /* state */
            ldc -2097153
            iand
            istore 8 /* state */
       137: .line 1343
      StackMap locals:
      StackMap stack:
            iload 8 /* state */
            sipush 256
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 263
       138: .line 1344
            iload 8 /* state */
            sipush 512
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            ifeq 143
       139: .line 1346
            getstatic org.xnio.ssl.JsseStreamConduit.$assertionsDisabled:Z
            ifne 140
            aload 10 /* sendBuffer */
            invokevirtual java.nio.ByteBuffer.position:()I
            ifeq 140
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
       140: .line 1347
      StackMap locals:
      StackMap stack:
            iload 8 /* state */
            sipush 512
            ior
            istore 8 /* state */
       141: .line 1348
            aload 24 /* result */
            invokevirtual javax.net.ssl.SSLEngineResult.getHandshakeStatus:()Ljavax/net/ssl/SSLEngineResult$HandshakeStatus;
            getstatic javax.net.ssl.SSLEngineResult$HandshakeStatus.NOT_HANDSHAKING:Ljavax/net/ssl/SSLEngineResult$HandshakeStatus;
            if_acmpne 143
       142: .line 1350
            iload 8 /* state */
            sipush 1024
            ior
            istore 8 /* state */
       143: .line 1353
      StackMap locals:
      StackMap stack:
            iload 8 /* state */
            sipush 1024
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 263
       144: .line 1355
            iload 1 /* goal */
            iconst_2
            if_icmpeq 145
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.sinkConduit:Lorg/xnio/conduits/StreamSinkConduit;
            invokeinterface org.xnio.conduits.StreamSinkConduit.flush:()Z
            ifeq 146
       145: .line 1356
      StackMap locals:
      StackMap stack:
            iload 8 /* state */
            sipush 2048
            ior
            istore 8 /* state */
       146: .line 1358
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.sinkConduit:Lorg/xnio/conduits/StreamSinkConduit;
            invokeinterface org.xnio.conduits.StreamSinkConduit.terminateWrites:()V
       147: .line 1363
            goto 263
        end local 29 // int consumed
       148: .line 1366
      StackMap locals:
      StackMap stack:
            getstatic org.xnio._private.Messages.msg:Lorg/xnio/_private/Messages;
            aload 24 /* result */
            invokevirtual javax.net.ssl.SSLEngineResult.getStatus:()Ljavax/net/ssl/SSLEngineResult$Status;
            invokeinterface org.xnio._private.Messages.unexpectedWrapResult:(Ljavax/net/ssl/SSLEngineResult$Status;)Ljava/io/IOException;
            athrow
        end local 24 // javax.net.ssl.SSLEngineResult result
       149: .line 1369
      StackMap locals: org.xnio.ssl.JsseStreamConduit int java.nio.ByteBuffer[] int int java.nio.ByteBuffer[] int int int javax.net.ssl.SSLEngine java.nio.ByteBuffer java.nio.ByteBuffer java.nio.ByteBuffer java.nio.ByteBuffer[] long int int int int int int int int top top int long
      StackMap stack:
            iload 17 /* unwrap */
            ifeq 258
       150: .line 1370
            getstatic org.xnio.ssl.JsseStreamConduit.TRACE_SSL:Z
            ifeq 151
            getstatic org.xnio._private.Messages.msg:Lorg/xnio/_private/Messages;
            ldc "TLS unwrap from %s to %s"
            aload 11 /* receiveBuffer */
            invokestatic org.xnio.Buffers.debugString:(Ljava/nio/ByteBuffer;)Ljava/lang/String;
            aload 13 /* realDsts */
            iconst_0
            iload 7 /* dstLen */
            iconst_1
            iadd
            invokestatic org.xnio.Buffers.debugString:([Ljava/nio/ByteBuffer;II)Ljava/lang/String;
            invokeinterface org.xnio._private.Messages.tracef:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
       151: .line 1373
      StackMap locals:
      StackMap stack:
            getstatic org.xnio.ssl.JsseStreamConduit.$assertionsDisabled:Z
            ifne 152
            aload 13 /* realDsts */
            arraylength
            iconst_1
            if_icmpeq 152
            aload 13 /* realDsts */
            iconst_0
            aaload
            aload 5 /* dsts */
            iload 6 /* dstOff */
            aaload
            if_acmpeq 152
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
       152: .line 1374
      StackMap locals:
      StackMap stack:
            getstatic org.xnio.ssl.JsseStreamConduit.$assertionsDisabled:Z
            ifne 153
            aload 13 /* realDsts */
            iload 7 /* dstLen */
            aaload
            aload 12 /* readBuffer */
            if_acmpeq 153
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
       153: .line 1376
      StackMap locals:
      StackMap stack:
            aload 5 /* dsts */
            iload 6 /* dstOff */
            iload 7 /* dstLen */
            invokestatic org.xnio.Buffers.remaining:([Ljava/nio/Buffer;II)J
            lstore 29 /* preRem */
        start local 29 // long preRem
       154: .line 1377
            aload 9 /* engine */
            aload 11 /* receiveBuffer */
            aload 13 /* realDsts */
            iconst_0
            iload 7 /* dstLen */
            iconst_1
            iadd
            invokevirtual javax.net.ssl.SSLEngine.unwrap:(Ljava/nio/ByteBuffer;[Ljava/nio/ByteBuffer;II)Ljavax/net/ssl/SSLEngineResult;
            astore 24 /* result */
        start local 24 // javax.net.ssl.SSLEngineResult result
       155: .line 1378
            lload 29 /* preRem */
            aload 5 /* dsts */
            iload 6 /* dstOff */
            iload 7 /* dstLen */
            invokestatic org.xnio.Buffers.remaining:([Ljava/nio/Buffer;II)J
            lsub
            lstore 31 /* userProduced */
        start local 31 // long userProduced
       156: .line 1379
            invokestatic org.xnio.ssl.JsseStreamConduit.$SWITCH_TABLE$javax$net$ssl$SSLEngineResult$Status:()[I
            aload 24 /* result */
            invokevirtual javax.net.ssl.SSLEngineResult.getStatus:()Ljavax/net/ssl/SSLEngineResult$Status;
            invokevirtual javax.net.ssl.SSLEngineResult$Status.ordinal:()I
            iaload
            tableswitch { // 1 - 4
                    1: 169
                    2: 157
                    3: 243
                    4: 196
              default: 256
          }
       157: .line 1381
      StackMap locals: org.xnio.ssl.JsseStreamConduit int java.nio.ByteBuffer[] int int java.nio.ByteBuffer[] int int int javax.net.ssl.SSLEngine java.nio.ByteBuffer java.nio.ByteBuffer java.nio.ByteBuffer java.nio.ByteBuffer[] long int int int int int int int int javax.net.ssl.SSLEngineResult top int long long long
      StackMap stack:
            getstatic org.xnio.ssl.JsseStreamConduit.$assertionsDisabled:Z
            ifne 158
            aload 24 /* result */
            invokevirtual javax.net.ssl.SSLEngineResult.bytesConsumed:()I
            ifeq 158
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
       158: .line 1382
      StackMap locals:
      StackMap stack:
            getstatic org.xnio.ssl.JsseStreamConduit.$assertionsDisabled:Z
            ifne 159
            aload 24 /* result */
            invokevirtual javax.net.ssl.SSLEngineResult.bytesProduced:()I
            ifeq 159
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
       159: .line 1383
      StackMap locals:
      StackMap stack:
            getstatic org.xnio.ssl.JsseStreamConduit.$assertionsDisabled:Z
            ifne 160
            lload 31 /* userProduced */
            lconst_0
            lcmp
            ifeq 160
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
       160: .line 1384
      StackMap locals:
      StackMap stack:
            getstatic org.xnio.ssl.JsseStreamConduit.TRACE_SSL:Z
            ifeq 161
            getstatic org.xnio._private.Messages.msg:Lorg/xnio/_private/Messages;
            ldc "TLS unwrap operation OVERFLOW"
            invokeinterface org.xnio._private.Messages.trace:(Ljava/lang/Object;)V
       161: .line 1386
      StackMap locals:
      StackMap stack:
            iload 22 /* copiedUnwrappedBytes */
            ifne 167
       162: .line 1387
            lload 27 /* xfer */
            iload 1 /* goal */
            iload 18 /* flushed */
            iload 19 /* eof */
            invokestatic org.xnio.ssl.JsseStreamConduit.actualIOResult:(JIZZ)J
            lstore 38
       163: .line 1603
            aload 0 /* this */
            iload 8 /* state */
            putfield org.xnio.ssl.JsseStreamConduit.state:I
       164: .line 1604
            iload 23 /* wakeupReads */
            ifeq 166
       165: .line 1605
            aload 0 /* this */
            invokevirtual org.xnio.ssl.JsseStreamConduit.wakeupReads:()V
       166: .line 1387
      StackMap locals: org.xnio.ssl.JsseStreamConduit int java.nio.ByteBuffer[] int int java.nio.ByteBuffer[] int int int javax.net.ssl.SSLEngine java.nio.ByteBuffer java.nio.ByteBuffer java.nio.ByteBuffer java.nio.ByteBuffer[] long int int int int int int int int javax.net.ssl.SSLEngineResult top int long long long top top top top top long
      StackMap stack:
            lload 38
            lreturn
       167: .line 1389
      StackMap locals: org.xnio.ssl.JsseStreamConduit int java.nio.ByteBuffer[] int int java.nio.ByteBuffer[] int int int javax.net.ssl.SSLEngine java.nio.ByteBuffer java.nio.ByteBuffer java.nio.ByteBuffer java.nio.ByteBuffer[] long int int int int int int int int javax.net.ssl.SSLEngineResult top int long long long
      StackMap stack:
            iconst_0
            istore 17 /* unwrap */
       168: .line 1390
            goto 263
       169: .line 1393
      StackMap locals:
      StackMap stack:
            getstatic org.xnio.ssl.JsseStreamConduit.$assertionsDisabled:Z
            ifne 170
            aload 24 /* result */
            invokevirtual javax.net.ssl.SSLEngineResult.bytesConsumed:()I
            ifeq 170
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
       170: .line 1394
      StackMap locals:
      StackMap stack:
            getstatic org.xnio.ssl.JsseStreamConduit.$assertionsDisabled:Z
            ifne 171
            aload 24 /* result */
            invokevirtual javax.net.ssl.SSLEngineResult.bytesProduced:()I
            ifeq 171
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
       171: .line 1395
      StackMap locals:
      StackMap stack:
            getstatic org.xnio.ssl.JsseStreamConduit.$assertionsDisabled:Z
            ifne 172
            lload 31 /* userProduced */
            lconst_0
            lcmp
            ifeq 172
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
       172: .line 1396
      StackMap locals:
      StackMap stack:
            getstatic org.xnio.ssl.JsseStreamConduit.TRACE_SSL:Z
            ifeq 173
            getstatic org.xnio._private.Messages.msg:Lorg/xnio/_private/Messages;
            ldc "TLS unwrap operation UNDERFLOW"
            invokeinterface org.xnio._private.Messages.trace:(Ljava/lang/Object;)V
       173: .line 1398
      StackMap locals:
      StackMap stack:
            aload 11 /* receiveBuffer */
            invokevirtual java.nio.ByteBuffer.compact:()Ljava/nio/ByteBuffer;
            pop
       174: .line 1401
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.sourceConduit:Lorg/xnio/conduits/StreamSourceConduit;
            aload 11 /* receiveBuffer */
            invokeinterface org.xnio.conduits.StreamSourceConduit.read:(Ljava/nio/ByteBuffer;)I
            istore 33 /* res */
        start local 33 // int res
       175: .line 1402
            getstatic org.xnio.ssl.JsseStreamConduit.TRACE_SSL:Z
            ifeq 176
            getstatic org.xnio._private.Messages.msg:Lorg/xnio/_private/Messages;
            ldc "TLS unwrap operation read %s"
            aload 11 /* receiveBuffer */
            invokestatic org.xnio.Buffers.debugString:(Ljava/nio/ByteBuffer;)Ljava/lang/String;
            invokeinterface org.xnio._private.Messages.tracef:(Ljava/lang/String;Ljava/lang/Object;)V
       176: .line 1403
      StackMap locals: int
      StackMap stack:
            iload 33 /* res */
            iconst_m1
            if_icmpne 180
       177: .line 1404
            iload 8 /* state */
            bipush -33
            iand
            istore 8 /* state */
       178: .line 1405
            aload 9 /* engine */
            invokevirtual javax.net.ssl.SSLEngine.closeInbound:()V
       179: .line 1406
            goto 194
      StackMap locals:
      StackMap stack:
       180: iload 33 /* res */
            ifne 185
       181: .line 1407
            iconst_1
            istore 20 /* readBlocked */
       182: .line 1408
            iload 8 /* state */
            bipush -33
            iand
            istore 8 /* state */
       183: .line 1409
            iconst_0
            istore 17 /* unwrap */
       184: .line 1410
            goto 194
      StackMap locals:
      StackMap stack:
       185: aload 11 /* receiveBuffer */
            invokevirtual java.nio.ByteBuffer.hasRemaining:()Z
            ifeq 194
       186: .line 1413
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.sourceConduit:Lorg/xnio/conduits/StreamSourceConduit;
            aload 11 /* receiveBuffer */
            invokeinterface org.xnio.conduits.StreamSourceConduit.read:(Ljava/nio/ByteBuffer;)I
            istore 33 /* res */
       187: .line 1414
            iload 33 /* res */
            ifle 188
            aload 11 /* receiveBuffer */
            invokevirtual java.nio.ByteBuffer.hasRemaining:()Z
            ifne 186
       188: .line 1415
      StackMap locals:
      StackMap stack:
            iload 33 /* res */
            ifne 194
       189: .line 1416
            iload 8 /* state */
            bipush -33
            iand
            istore 8 /* state */
        end local 33 // int res
       190: .line 1419
            goto 194
      StackMap locals: org.xnio.ssl.JsseStreamConduit int java.nio.ByteBuffer[] int int java.nio.ByteBuffer[] int int int javax.net.ssl.SSLEngine java.nio.ByteBuffer java.nio.ByteBuffer java.nio.ByteBuffer java.nio.ByteBuffer[] long int int int int int int int int javax.net.ssl.SSLEngineResult top int long long long
      StackMap stack: java.lang.Throwable
       191: astore 34
       192: .line 1420
            aload 11 /* receiveBuffer */
            invokevirtual java.nio.ByteBuffer.flip:()Ljava/nio/Buffer;
            pop
       193: .line 1421
            aload 34
            athrow
       194: .line 1420
      StackMap locals:
      StackMap stack:
            aload 11 /* receiveBuffer */
            invokevirtual java.nio.ByteBuffer.flip:()Ljava/nio/Buffer;
            pop
       195: .line 1423
            goto 263
       196: .line 1426
      StackMap locals:
      StackMap stack:
            aload 24 /* result */
            invokevirtual javax.net.ssl.SSLEngineResult.getHandshakeStatus:()Ljavax/net/ssl/SSLEngineResult$HandshakeStatus;
            getstatic javax.net.ssl.SSLEngineResult$HandshakeStatus.NEED_UNWRAP:Ljavax/net/ssl/SSLEngineResult$HandshakeStatus;
            if_acmpne 230
       197: .line 1429
            aload 11 /* receiveBuffer */
            invokevirtual java.nio.ByteBuffer.compact:()Ljava/nio/ByteBuffer;
            pop
       198: .line 1432
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.sourceConduit:Lorg/xnio/conduits/StreamSourceConduit;
            aload 11 /* receiveBuffer */
            invokeinterface org.xnio.conduits.StreamSourceConduit.read:(Ljava/nio/ByteBuffer;)I
            istore 33 /* res */
        start local 33 // int res
       199: .line 1433
            getstatic org.xnio.ssl.JsseStreamConduit.TRACE_SSL:Z
            ifeq 200
            getstatic org.xnio._private.Messages.msg:Lorg/xnio/_private/Messages;
            ldc "TLS unwrap operation read %s"
            aload 11 /* receiveBuffer */
            invokestatic org.xnio.Buffers.debugString:(Ljava/nio/ByteBuffer;)Ljava/lang/String;
            invokeinterface org.xnio._private.Messages.tracef:(Ljava/lang/String;Ljava/lang/Object;)V
       200: .line 1434
      StackMap locals: int
      StackMap stack:
            iload 33 /* res */
            iconst_m1
            if_icmpne 209
       201: .line 1435
            iload 8 /* state */
            bipush -33
            iand
            istore 8 /* state */
       202: .line 1436
            aload 9 /* engine */
            invokevirtual javax.net.ssl.SSLEngine.closeInbound:()V
       203: .line 1437
            lload 27 /* xfer */
            iload 1 /* goal */
            iload 18 /* flushed */
            iload 19 /* eof */
            invokestatic org.xnio.ssl.JsseStreamConduit.actualIOResult:(JIZZ)J
            lstore 35
       204: .line 1453
            aload 11 /* receiveBuffer */
            invokevirtual java.nio.ByteBuffer.flip:()Ljava/nio/Buffer;
            pop
       205: .line 1603
            aload 0 /* this */
            iload 8 /* state */
            putfield org.xnio.ssl.JsseStreamConduit.state:I
       206: .line 1604
            iload 23 /* wakeupReads */
            ifeq 208
       207: .line 1605
            aload 0 /* this */
            invokevirtual org.xnio.ssl.JsseStreamConduit.wakeupReads:()V
       208: .line 1437
      StackMap locals: org.xnio.ssl.JsseStreamConduit int java.nio.ByteBuffer[] int int java.nio.ByteBuffer[] int int int javax.net.ssl.SSLEngine java.nio.ByteBuffer java.nio.ByteBuffer java.nio.ByteBuffer java.nio.ByteBuffer[] long int int int int int int int int javax.net.ssl.SSLEngineResult top int long long long int top long
      StackMap stack:
            lload 35
            lreturn
       209: .line 1438
      StackMap locals: org.xnio.ssl.JsseStreamConduit int java.nio.ByteBuffer[] int int java.nio.ByteBuffer[] int int int javax.net.ssl.SSLEngine java.nio.ByteBuffer java.nio.ByteBuffer java.nio.ByteBuffer java.nio.ByteBuffer[] long int int int int int int int int javax.net.ssl.SSLEngineResult top int long long long int
      StackMap stack:
            iload 33 /* res */
            ifne 219
       210: .line 1439
            iconst_1
            istore 20 /* readBlocked */
       211: .line 1440
            iload 8 /* state */
            bipush -33
            iand
            istore 8 /* state */
       212: .line 1441
            iconst_0
            istore 17 /* unwrap */
       213: .line 1442
            lload 27 /* xfer */
            iload 1 /* goal */
            iload 18 /* flushed */
            iload 19 /* eof */
            invokestatic org.xnio.ssl.JsseStreamConduit.actualIOResult:(JIZZ)J
            lstore 35
       214: .line 1453
            aload 11 /* receiveBuffer */
            invokevirtual java.nio.ByteBuffer.flip:()Ljava/nio/Buffer;
            pop
       215: .line 1603
            aload 0 /* this */
            iload 8 /* state */
            putfield org.xnio.ssl.JsseStreamConduit.state:I
       216: .line 1604
            iload 23 /* wakeupReads */
            ifeq 218
       217: .line 1605
            aload 0 /* this */
            invokevirtual org.xnio.ssl.JsseStreamConduit.wakeupReads:()V
       218: .line 1442
      StackMap locals: org.xnio.ssl.JsseStreamConduit int java.nio.ByteBuffer[] int int java.nio.ByteBuffer[] int int int javax.net.ssl.SSLEngine java.nio.ByteBuffer java.nio.ByteBuffer java.nio.ByteBuffer java.nio.ByteBuffer[] long int int int int int int int int javax.net.ssl.SSLEngineResult top int long long long int top long
      StackMap stack:
            lload 35
            lreturn
       219: .line 1443
      StackMap locals: org.xnio.ssl.JsseStreamConduit int java.nio.ByteBuffer[] int int java.nio.ByteBuffer[] int int int javax.net.ssl.SSLEngine java.nio.ByteBuffer java.nio.ByteBuffer java.nio.ByteBuffer java.nio.ByteBuffer[] long int int int int int int int int javax.net.ssl.SSLEngineResult top int long long long int
      StackMap stack:
            aload 11 /* receiveBuffer */
            invokevirtual java.nio.ByteBuffer.hasRemaining:()Z
            ifeq 228
       220: .line 1446
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.sourceConduit:Lorg/xnio/conduits/StreamSourceConduit;
            aload 11 /* receiveBuffer */
            invokeinterface org.xnio.conduits.StreamSourceConduit.read:(Ljava/nio/ByteBuffer;)I
            istore 33 /* res */
       221: .line 1447
            iload 33 /* res */
            ifle 222
            aload 11 /* receiveBuffer */
            invokevirtual java.nio.ByteBuffer.hasRemaining:()Z
            ifne 220
       222: .line 1448
      StackMap locals:
      StackMap stack:
            iload 33 /* res */
            ifne 228
       223: .line 1449
            iload 8 /* state */
            bipush -33
            iand
            istore 8 /* state */
        end local 33 // int res
       224: .line 1452
            goto 228
      StackMap locals: org.xnio.ssl.JsseStreamConduit int java.nio.ByteBuffer[] int int java.nio.ByteBuffer[] int int int javax.net.ssl.SSLEngine java.nio.ByteBuffer java.nio.ByteBuffer java.nio.ByteBuffer java.nio.ByteBuffer[] long int int int int int int int int javax.net.ssl.SSLEngineResult top int long long long
      StackMap stack: java.lang.Throwable
       225: astore 34
       226: .line 1453
            aload 11 /* receiveBuffer */
            invokevirtual java.nio.ByteBuffer.flip:()Ljava/nio/Buffer;
            pop
       227: .line 1454
            aload 34
            athrow
       228: .line 1453
      StackMap locals:
      StackMap stack:
            aload 11 /* receiveBuffer */
            invokevirtual java.nio.ByteBuffer.flip:()Ljava/nio/Buffer;
            pop
       229: .line 1456
            goto 263
       230: .line 1458
      StackMap locals:
      StackMap stack:
            getstatic org.xnio.ssl.JsseStreamConduit.TRACE_SSL:Z
            ifeq 231
            getstatic org.xnio._private.Messages.msg:Lorg/xnio/_private/Messages;
            ldc "TLS unwrap operation CLOSED"
            invokeinterface org.xnio._private.Messages.trace:(Ljava/lang/Object;)V
       231: .line 1459
      StackMap locals:
      StackMap stack:
            iload 8 /* state */
            ldc -65601
            iand
            istore 8 /* state */
       232: .line 1460
            iload 1 /* goal */
            ifne 237
       233: .line 1461
            lload 27 /* xfer */
            lload 31 /* userProduced */
            ladd
            lstore 27 /* xfer */
       234: .line 1462
            lload 14 /* remaining */
            lload 31 /* userProduced */
            lsub
            lstore 14 /* remaining */
       235: .line 1465
            iload 8 /* state */
            bipush -33
            iand
            iconst_2
            ior
            istore 8 /* state */
       236: .line 1466
            goto 238
       237: .line 1467
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 23 /* wakeupReads */
       238: .line 1470
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 19 /* eof */
       239: .line 1471
            iconst_0
            istore 17 /* unwrap */
       240: .line 1472
            iload 1 /* goal */
            iconst_2
            if_icmpne 263
       241: .line 1473
            iconst_1
            istore 16 /* wrap */
       242: .line 1475
            goto 263
       243: .line 1478
      StackMap locals:
      StackMap stack:
            getstatic org.xnio.ssl.JsseStreamConduit.TRACE_SSL:Z
            ifeq 244
            getstatic org.xnio._private.Messages.msg:Lorg/xnio/_private/Messages;
            ldc "TLS unwrap operation OK consumed: %d produced: %d"
            aload 24 /* result */
            invokevirtual javax.net.ssl.SSLEngineResult.bytesConsumed:()I
            aload 24 /* result */
            invokevirtual javax.net.ssl.SSLEngineResult.bytesProduced:()I
            invokeinterface org.xnio._private.Messages.tracef:(Ljava/lang/String;II)V
       244: .line 1479
      StackMap locals:
      StackMap stack:
            iload 8 /* state */
            bipush 32
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            ifeq 246
       245: .line 1481
            iload 8 /* state */
            bipush 32
            ior
            istore 8 /* state */
       246: .line 1483
      StackMap locals:
      StackMap stack:
            iload 8 /* state */
            ldc -65601
            iand
            istore 8 /* state */
       247: .line 1484
            iload 1 /* goal */
            ifne 251
       248: .line 1485
            lload 27 /* xfer */
            lload 31 /* userProduced */
            ladd
            lstore 27 /* xfer */
       249: .line 1486
            lload 14 /* remaining */
            lload 31 /* userProduced */
            lsub
            lstore 14 /* remaining */
       250: .line 1487
            goto 263
       251: .line 1488
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 16 /* wrap */
       252: .line 1489
            iconst_0
            istore 17 /* unwrap */
       253: .line 1490
            aload 24 /* result */
            invokevirtual javax.net.ssl.SSLEngineResult.bytesProduced:()I
            ifle 263
       254: .line 1491
            iconst_1
            istore 23 /* wakeupReads */
       255: .line 1495
            goto 263
       256: .line 1498
      StackMap locals:
      StackMap stack:
            getstatic org.xnio._private.Messages.msg:Lorg/xnio/_private/Messages;
            aload 24 /* result */
            invokevirtual javax.net.ssl.SSLEngineResult.getStatus:()Ljavax/net/ssl/SSLEngineResult$Status;
            invokeinterface org.xnio._private.Messages.unexpectedUnwrapResult:(Ljavax/net/ssl/SSLEngineResult$Status;)Ljava/io/IOException;
            athrow
        end local 31 // long userProduced
        end local 29 // long preRem
       257: .line 1501
      StackMap locals:
      StackMap stack:
            goto 263
        end local 24 // javax.net.ssl.SSLEngineResult result
       258: .line 1503
      StackMap locals: org.xnio.ssl.JsseStreamConduit int java.nio.ByteBuffer[] int int java.nio.ByteBuffer[] int int int javax.net.ssl.SSLEngine java.nio.ByteBuffer java.nio.ByteBuffer java.nio.ByteBuffer java.nio.ByteBuffer[] long int int int int int int int int top top int long
      StackMap stack:
            lload 27 /* xfer */
            iload 1 /* goal */
            iload 18 /* flushed */
            iload 19 /* eof */
            invokestatic org.xnio.ssl.JsseStreamConduit.actualIOResult:(JIZZ)J
            lstore 38
       259: .line 1603
            aload 0 /* this */
            iload 8 /* state */
            putfield org.xnio.ssl.JsseStreamConduit.state:I
       260: .line 1604
            iload 23 /* wakeupReads */
            ifeq 262
       261: .line 1605
            aload 0 /* this */
            invokevirtual org.xnio.ssl.JsseStreamConduit.wakeupReads:()V
       262: .line 1503
      StackMap locals: org.xnio.ssl.JsseStreamConduit int java.nio.ByteBuffer[] int int java.nio.ByteBuffer[] int int int javax.net.ssl.SSLEngine java.nio.ByteBuffer java.nio.ByteBuffer java.nio.ByteBuffer java.nio.ByteBuffer[] long int int int int int int int int top top int long top top top top top top top top top long
      StackMap stack:
            lload 38
            lreturn
        start local 24 // javax.net.ssl.SSLEngineResult result
       263: .line 1506
      StackMap locals: org.xnio.ssl.JsseStreamConduit int java.nio.ByteBuffer[] int int java.nio.ByteBuffer[] int int int javax.net.ssl.SSLEngine java.nio.ByteBuffer java.nio.ByteBuffer java.nio.ByteBuffer java.nio.ByteBuffer[] long int int int int int int int int javax.net.ssl.SSLEngineResult top int long
      StackMap stack:
            aload 24 /* result */
            invokevirtual javax.net.ssl.SSLEngineResult.getHandshakeStatus:()Ljavax/net/ssl/SSLEngineResult$HandshakeStatus;
            astore 25 /* handshakeStatus */
        start local 25 // javax.net.ssl.SSLEngineResult$HandshakeStatus handshakeStatus
       264: .line 1508
      StackMap locals: org.xnio.ssl.JsseStreamConduit int java.nio.ByteBuffer[] int int java.nio.ByteBuffer[] int int int javax.net.ssl.SSLEngine java.nio.ByteBuffer java.nio.ByteBuffer java.nio.ByteBuffer java.nio.ByteBuffer[] long int int int int int int int int javax.net.ssl.SSLEngineResult javax.net.ssl.SSLEngineResult$HandshakeStatus int long
      StackMap stack:
            invokestatic org.xnio.ssl.JsseStreamConduit.$SWITCH_TABLE$javax$net$ssl$SSLEngineResult$HandshakeStatus:()[I
            aload 25 /* handshakeStatus */
            invokevirtual javax.net.ssl.SSLEngineResult$HandshakeStatus.ordinal:()I
            iaload
            tableswitch { // 1 - 5
                    1: 267
                    2: 265
                    3: 270
                    4: 310
                    5: 321
              default: 334
          }
       265: .line 1511
      StackMap locals:
      StackMap stack:
            getstatic org.xnio.ssl.JsseStreamConduit.TRACE_SSL:Z
            ifeq 266
            getstatic org.xnio._private.Messages.msg:Lorg/xnio/_private/Messages;
            ldc "TLS handshake FINISHED"
            invokeinterface org.xnio._private.Messages.trace:(Ljava/lang/Object;)V
       266: .line 1512
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.connection:Lorg/xnio/ssl/JsseSslConnection;
            invokevirtual org.xnio.ssl.JsseSslConnection.invokeHandshakeListener:()V
       267: .line 1517
      StackMap locals:
      StackMap stack:
            iload 8 /* state */
            sipush 256
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 29
       268: .line 1518
            aload 9 /* engine */
            invokevirtual javax.net.ssl.SSLEngine.closeOutbound:()V
       269: .line 1521
            goto 29
       270: .line 1524
      StackMap locals:
      StackMap stack:
            getstatic org.xnio.ssl.JsseStreamConduit.TRACE_SSL:Z
            ifeq 271
            getstatic org.xnio._private.Messages.msg:Lorg/xnio/_private/Messages;
            ldc "TLS handshake NEED_TASK"
            invokeinterface org.xnio._private.Messages.trace:(Ljava/lang/Object;)V
       271: .line 1525
      StackMap locals:
      StackMap stack:
            lload 27 /* xfer */
            lconst_0
            lcmp
            ifeq 277
       272: .line 1527
            lload 27 /* xfer */
            iload 1 /* goal */
            iload 18 /* flushed */
            iload 19 /* eof */
            invokestatic org.xnio.ssl.JsseStreamConduit.actualIOResult:(JIZZ)J
            lstore 38
       273: .line 1603
            aload 0 /* this */
            iload 8 /* state */
            putfield org.xnio.ssl.JsseStreamConduit.state:I
       274: .line 1604
            iload 23 /* wakeupReads */
            ifeq 276
       275: .line 1605
            aload 0 /* this */
            invokevirtual org.xnio.ssl.JsseStreamConduit.wakeupReads:()V
       276: .line 1527
      StackMap locals: org.xnio.ssl.JsseStreamConduit int java.nio.ByteBuffer[] int int java.nio.ByteBuffer[] int int int javax.net.ssl.SSLEngine java.nio.ByteBuffer java.nio.ByteBuffer java.nio.ByteBuffer java.nio.ByteBuffer[] long int int int int int int int int javax.net.ssl.SSLEngineResult javax.net.ssl.SSLEngineResult$HandshakeStatus int long top top top top top top top top top long
      StackMap stack:
            lload 38
            lreturn
       277: .line 1529
      StackMap locals: org.xnio.ssl.JsseStreamConduit int java.nio.ByteBuffer[] int int java.nio.ByteBuffer[] int int int javax.net.ssl.SSLEngine java.nio.ByteBuffer java.nio.ByteBuffer java.nio.ByteBuffer java.nio.ByteBuffer[] long int int int int int int int int javax.net.ssl.SSLEngineResult javax.net.ssl.SSLEngineResult$HandshakeStatus int long
      StackMap stack:
            iload 8 /* state */
            ldc 262144
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 287
       278: .line 1532
      StackMap locals:
      StackMap stack:
            aload 9 /* engine */
            invokevirtual javax.net.ssl.SSLEngine.getDelegatedTask:()Ljava/lang/Runnable;
            astore 29 /* task */
        start local 29 // java.lang.Runnable task
       279: .line 1533
            aload 29 /* task */
            ifnonnull 281
       280: .line 1534
            goto 285
       281: .line 1537
      StackMap locals: java.lang.Runnable
      StackMap stack:
            aload 29 /* task */
            invokeinterface java.lang.Runnable.run:()V
       282: .line 1538
            goto 278
      StackMap locals:
      StackMap stack: java.lang.Throwable
       283: astore 30 /* cause */
        start local 30 // java.lang.Throwable cause
       284: .line 1539
            new javax.net.ssl.SSLException
            dup
            ldc "Delegated task threw an exception"
            aload 30 /* cause */
            invokespecial javax.net.ssl.SSLException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 30 // java.lang.Throwable cause
       285: .line 1543
      StackMap locals:
      StackMap stack:
            aload 9 /* engine */
            invokevirtual javax.net.ssl.SSLEngine.getHandshakeStatus:()Ljavax/net/ssl/SSLEngineResult$HandshakeStatus;
            astore 25 /* handshakeStatus */
       286: .line 1545
            goto 264
        end local 29 // java.lang.Runnable task
       287: .line 1547
      StackMap locals:
      StackMap stack:
            iload 8 /* state */
            ldc 1048576
            ior
            istore 8 /* state */
       288: .line 1549
            new java.util.ArrayList
            dup
            iconst_4
            invokespecial java.util.ArrayList.<init>:(I)V
            astore 29 /* tasks */
        start local 29 // java.util.ArrayList tasks
       289: .line 1552
      StackMap locals: java.util.ArrayList
      StackMap stack:
            aload 9 /* engine */
            invokevirtual javax.net.ssl.SSLEngine.getDelegatedTask:()Ljava/lang/Runnable;
            astore 30 /* task */
        start local 30 // java.lang.Runnable task
       290: .line 1553
            aload 30 /* task */
            ifnull 293
       291: .line 1554
            aload 29 /* tasks */
            aload 30 /* task */
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        end local 30 // java.lang.Runnable task
       292: .line 1551
            goto 289
        start local 30 // java.lang.Runnable task
       293: .line 1559
      StackMap locals: java.lang.Runnable
      StackMap stack:
            aload 29 /* tasks */
            invokevirtual java.util.ArrayList.size:()I
            istore 31 /* size */
        start local 31 // int size
       294: .line 1560
            aload 0 /* this */
            dup
            astore 32
            monitorenter
       295: .line 1561
            aload 0 /* this */
            iload 31 /* size */
            putfield org.xnio.ssl.JsseStreamConduit.tasks:I
       296: .line 1560
            aload 32
            monitorexit
       297: goto 300
      StackMap locals: org.xnio.ssl.JsseStreamConduit int java.nio.ByteBuffer[] int int java.nio.ByteBuffer[] int int int javax.net.ssl.SSLEngine java.nio.ByteBuffer java.nio.ByteBuffer java.nio.ByteBuffer java.nio.ByteBuffer[] long int int int int int int int int javax.net.ssl.SSLEngineResult javax.net.ssl.SSLEngineResult$HandshakeStatus int long java.util.ArrayList java.lang.Runnable int org.xnio.ssl.JsseStreamConduit
      StackMap stack: java.lang.Throwable
       298: aload 32
            monitorexit
       299: athrow
       300: .line 1565
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 32 /* i */
        start local 32 // int i
       301: goto 304
       302: .line 1566
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.xnio.ssl.JsseStreamConduit.getWorker:()Lorg/xnio/XnioWorker;
            new org.xnio.ssl.JsseStreamConduit$TaskWrapper
            dup
            aload 0 /* this */
            aload 29 /* tasks */
            iload 32 /* i */
            invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
            checkcast java.lang.Runnable
            invokespecial org.xnio.ssl.JsseStreamConduit$TaskWrapper.<init>:(Lorg/xnio/ssl/JsseStreamConduit;Ljava/lang/Runnable;)V
            invokevirtual org.xnio.XnioWorker.execute:(Ljava/lang/Runnable;)V
       303: .line 1565
            iinc 32 /* i */ 1
      StackMap locals:
      StackMap stack:
       304: iload 32 /* i */
            iload 31 /* size */
            if_icmplt 302
        end local 32 // int i
       305: .line 1568
            lload 27 /* xfer */
            iload 1 /* goal */
            iload 18 /* flushed */
            iload 19 /* eof */
            invokestatic org.xnio.ssl.JsseStreamConduit.actualIOResult:(JIZZ)J
            lstore 38
       306: .line 1603
            aload 0 /* this */
            iload 8 /* state */
            putfield org.xnio.ssl.JsseStreamConduit.state:I
       307: .line 1604
            iload 23 /* wakeupReads */
            ifeq 309
       308: .line 1605
            aload 0 /* this */
            invokevirtual org.xnio.ssl.JsseStreamConduit.wakeupReads:()V
       309: .line 1568
      StackMap locals: org.xnio.ssl.JsseStreamConduit int java.nio.ByteBuffer[] int int java.nio.ByteBuffer[] int int int javax.net.ssl.SSLEngine java.nio.ByteBuffer java.nio.ByteBuffer java.nio.ByteBuffer java.nio.ByteBuffer[] long int int int int int int int int javax.net.ssl.SSLEngineResult javax.net.ssl.SSLEngineResult$HandshakeStatus int long java.util.ArrayList java.lang.Runnable int top top top top top top long
      StackMap stack:
            lload 38
            lreturn
        end local 31 // int size
        end local 30 // java.lang.Runnable task
        end local 29 // java.util.ArrayList tasks
       310: .line 1572
      StackMap locals: org.xnio.ssl.JsseStreamConduit int java.nio.ByteBuffer[] int int java.nio.ByteBuffer[] int int int javax.net.ssl.SSLEngine java.nio.ByteBuffer java.nio.ByteBuffer java.nio.ByteBuffer java.nio.ByteBuffer[] long int int int int int int int int javax.net.ssl.SSLEngineResult javax.net.ssl.SSLEngineResult$HandshakeStatus int long
      StackMap stack:
            getstatic org.xnio.ssl.JsseStreamConduit.TRACE_SSL:Z
            ifeq 311
            getstatic org.xnio._private.Messages.msg:Lorg/xnio/_private/Messages;
            ldc "TLS handshake NEED_WRAP"
            invokeinterface org.xnio._private.Messages.trace:(Ljava/lang/Object;)V
       311: .line 1573
      StackMap locals:
      StackMap stack:
            iload 8 /* state */
            ldc 2097216
            ior
            istore 8 /* state */
       312: .line 1574
            iload 21 /* writeBlocked */
            ifeq 318
       313: .line 1575
            lload 27 /* xfer */
            iload 1 /* goal */
            iload 18 /* flushed */
            iload 19 /* eof */
            invokestatic org.xnio.ssl.JsseStreamConduit.actualIOResult:(JIZZ)J
            lstore 38
       314: .line 1603
            aload 0 /* this */
            iload 8 /* state */
            putfield org.xnio.ssl.JsseStreamConduit.state:I
       315: .line 1604
            iload 23 /* wakeupReads */
            ifeq 317
       316: .line 1605
            aload 0 /* this */
            invokevirtual org.xnio.ssl.JsseStreamConduit.wakeupReads:()V
       317: .line 1575
      StackMap locals: org.xnio.ssl.JsseStreamConduit int java.nio.ByteBuffer[] int int java.nio.ByteBuffer[] int int int javax.net.ssl.SSLEngine java.nio.ByteBuffer java.nio.ByteBuffer java.nio.ByteBuffer java.nio.ByteBuffer[] long int int int int int int int int javax.net.ssl.SSLEngineResult javax.net.ssl.SSLEngineResult$HandshakeStatus int long top top top top top top top top top long
      StackMap stack:
            lload 38
            lreturn
       318: .line 1577
      StackMap locals: org.xnio.ssl.JsseStreamConduit int java.nio.ByteBuffer[] int int java.nio.ByteBuffer[] int int int javax.net.ssl.SSLEngine java.nio.ByteBuffer java.nio.ByteBuffer java.nio.ByteBuffer java.nio.ByteBuffer[] long int int int int int int int int javax.net.ssl.SSLEngineResult javax.net.ssl.SSLEngineResult$HandshakeStatus int long
      StackMap stack:
            iconst_1
            istore 16 /* wrap */
       319: .line 1578
            iconst_0
            istore 17 /* unwrap */
       320: .line 1579
            goto 29
       321: .line 1582
      StackMap locals:
      StackMap stack:
            getstatic org.xnio.ssl.JsseStreamConduit.TRACE_SSL:Z
            ifeq 322
            getstatic org.xnio._private.Messages.msg:Lorg/xnio/_private/Messages;
            ldc "TLS handshake NEED_UNWRAP"
            invokeinterface org.xnio._private.Messages.trace:(Ljava/lang/Object;)V
       322: .line 1583
      StackMap locals:
      StackMap stack:
            iload 16 /* wrap */
            ifeq 324
            iload 18 /* flushed */
            ifne 324
            aload 0 /* this */
            getfield org.xnio.ssl.JsseStreamConduit.sinkConduit:Lorg/xnio/conduits/StreamSinkConduit;
            invokeinterface org.xnio.conduits.StreamSinkConduit.flush:()Z
            ifne 324
       323: .line 1586
            iload 8 /* state */
            ldc 2097152
            ior
            istore 8 /* state */
       324: .line 1588
      StackMap locals:
      StackMap stack:
            iload 8 /* state */
            ldc 65536
            ior
            istore 8 /* state */
       325: .line 1589
            iload 20 /* readBlocked */
            ifeq 331
       326: .line 1590
            lload 27 /* xfer */
            iload 1 /* goal */
            iload 18 /* flushed */
            iload 19 /* eof */
            invokestatic org.xnio.ssl.JsseStreamConduit.actualIOResult:(JIZZ)J
            lstore 38
       327: .line 1603
            aload 0 /* this */
            iload 8 /* state */
            putfield org.xnio.ssl.JsseStreamConduit.state:I
       328: .line 1604
            iload 23 /* wakeupReads */
            ifeq 330
       329: .line 1605
            aload 0 /* this */
            invokevirtual org.xnio.ssl.JsseStreamConduit.wakeupReads:()V
       330: .line 1590
      StackMap locals: org.xnio.ssl.JsseStreamConduit int java.nio.ByteBuffer[] int int java.nio.ByteBuffer[] int int int javax.net.ssl.SSLEngine java.nio.ByteBuffer java.nio.ByteBuffer java.nio.ByteBuffer java.nio.ByteBuffer[] long int int int int int int int int javax.net.ssl.SSLEngineResult javax.net.ssl.SSLEngineResult$HandshakeStatus int long top top top top top top top top top long
      StackMap stack:
            lload 38
            lreturn
       331: .line 1592
      StackMap locals: org.xnio.ssl.JsseStreamConduit int java.nio.ByteBuffer[] int int java.nio.ByteBuffer[] int int int javax.net.ssl.SSLEngine java.nio.ByteBuffer java.nio.ByteBuffer java.nio.ByteBuffer java.nio.ByteBuffer[] long int int int int int int int int javax.net.ssl.SSLEngineResult javax.net.ssl.SSLEngineResult$HandshakeStatus int long
      StackMap stack:
            iconst_0
            istore 16 /* wrap */
       332: .line 1593
            iconst_1
            istore 17 /* unwrap */
       333: .line 1594
            goto 29
       334: .line 1597
      StackMap locals:
      StackMap stack:
            getstatic org.xnio._private.Messages.msg:Lorg/xnio/_private/Messages;
            aload 24 /* result */
            invokevirtual javax.net.ssl.SSLEngineResult.getHandshakeStatus:()Ljavax/net/ssl/SSLEngineResult$HandshakeStatus;
            invokeinterface org.xnio._private.Messages.unexpectedHandshakeStatus:(Ljavax/net/ssl/SSLEngineResult$HandshakeStatus;)Ljava/io/IOException;
            athrow
        end local 25 // javax.net.ssl.SSLEngineResult$HandshakeStatus handshakeStatus
        end local 24 // javax.net.ssl.SSLEngineResult result
       335: .line 1602
      StackMap locals: org.xnio.ssl.JsseStreamConduit int java.nio.ByteBuffer[] int int java.nio.ByteBuffer[] int int int javax.net.ssl.SSLEngine java.nio.ByteBuffer java.nio.ByteBuffer java.nio.ByteBuffer java.nio.ByteBuffer[] long int int int int int int int int top top int long
      StackMap stack: java.lang.Throwable
            astore 37
       336: .line 1603
            aload 0 /* this */
            iload 8 /* state */
            putfield org.xnio.ssl.JsseStreamConduit.state:I
       337: .line 1604
            iload 23 /* wakeupReads */
            ifeq 339
       338: .line 1605
            aload 0 /* this */
            invokevirtual org.xnio.ssl.JsseStreamConduit.wakeupReads:()V
       339: .line 1607
      StackMap locals: org.xnio.ssl.JsseStreamConduit int java.nio.ByteBuffer[] int int java.nio.ByteBuffer[] int int int javax.net.ssl.SSLEngine java.nio.ByteBuffer java.nio.ByteBuffer java.nio.ByteBuffer java.nio.ByteBuffer[] long int int int int int int int int top top int long top top top top top top top top java.lang.Throwable
      StackMap stack:
            aload 37
            athrow
        end local 27 // long xfer
        end local 26 // int rv
        end local 23 // boolean wakeupReads
        end local 22 // boolean copiedUnwrappedBytes
        end local 21 // boolean writeBlocked
        end local 20 // boolean readBlocked
        end local 19 // boolean eof
        end local 18 // boolean flushed
        end local 17 // boolean unwrap
        end local 16 // boolean wrap
        end local 14 // long remaining
        end local 13 // java.nio.ByteBuffer[] realDsts
        end local 12 // java.nio.ByteBuffer readBuffer
        end local 11 // java.nio.ByteBuffer receiveBuffer
        end local 10 // java.nio.ByteBuffer sendBuffer
        end local 9 // javax.net.ssl.SSLEngine engine
        end local 8 // int state
        end local 7 // int dstLen
        end local 6 // int dstOff
        end local 5 // java.nio.ByteBuffer[] dsts
        end local 4 // int srcLen
        end local 3 // int srcOff
        end local 2 // java.nio.ByteBuffer[] srcs
        end local 1 // int goal
        end local 0 // org.xnio.ssl.JsseStreamConduit this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0  340     0                  this  Lorg/xnio/ssl/JsseStreamConduit;
            0  340     1                  goal  I
            0  340     2                  srcs  [Ljava/nio/ByteBuffer;
            0  340     3                srcOff  I
            0  340     4                srcLen  I
            0  340     5                  dsts  [Ljava/nio/ByteBuffer;
            0  340     6                dstOff  I
            0  340     7                dstLen  I
            3  340     8                 state  I
            7  340     9                engine  Ljavax/net/ssl/SSLEngine;
            8  340    10            sendBuffer  Ljava/nio/ByteBuffer;
            9  340    11         receiveBuffer  Ljava/nio/ByteBuffer;
           10  340    12            readBuffer  Ljava/nio/ByteBuffer;
           11  340    13              realDsts  [Ljava/nio/ByteBuffer;
           13  340    14             remaining  J
           17  340    16                  wrap  Z
           20  340    17                unwrap  Z
           21  340    18               flushed  Z
           22  340    19                   eof  Z
           23  340    20           readBlocked  Z
           24  340    21          writeBlocked  Z
           25  340    22  copiedUnwrappedBytes  Z
           26  340    23           wakeupReads  Z
           52  149    24                result  Ljavax/net/ssl/SSLEngineResult;
          155  258    24                result  Ljavax/net/ssl/SSLEngineResult;
          263  335    24                result  Ljavax/net/ssl/SSLEngineResult;
          264  335    25       handshakeStatus  Ljavax/net/ssl/SSLEngineResult$HandshakeStatus;
           27  340    26                    rv  I
           28  340    27                  xfer  J
           66   74    29                   res  I
           97  102    29             exception  Ljava/nio/channels/ClosedChannelException;
          100  101    30                     e  Ljava/io/IOException;
          107  148    29              consumed  I
          123  127    30                   res  I
          154  257    29                preRem  J
          156  257    31          userProduced  J
          175  190    33                   res  I
          199  224    33                   res  I
          279  287    29                  task  Ljava/lang/Runnable;
          284  285    30                 cause  Ljava/lang/Throwable;
          289  310    29                 tasks  Ljava/util/ArrayList<Ljava/lang/Runnable;>;
          290  292    30                  task  Ljava/lang/Runnable;
          293  310    30                  task  Ljava/lang/Runnable;
          294  310    31                  size  I
          301  305    32                     i  I
      Exception table:
        from    to  target  type
          32    35      35  any
          63    72      76  any
          74    76      76  any
          97    98      99  Class java.io.IOException
         118   129     129  any
         174   191     191  any
         198   204     225  any
         209   214     225  any
         219   225     225  any
         281   282     283  Class java.lang.Throwable
         295   297     298  any
         298   299     298  any
          29    44     335  any
          48   163     335  any
         167   205     335  any
         209   215     335  any
         219   259     335  any
         263   273     335  any
         277   306     335  any
         310   314     335  any
         318   327     335  any
         331   335     335  any
    Exceptions:
      throws java.io.IOException
    MethodParameters:
        Name  Flags
      goal    final
      srcs    final
      srcOff  final
      srcLen  final
      dsts    final
      dstOff  final
      dstLen  final

  static int[] $SWITCH_TABLE$javax$net$ssl$SSLEngineResult$Status();
    descriptor: ()[I
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=0
         0: .line 60
            getstatic org.xnio.ssl.JsseStreamConduit.$SWITCH_TABLE$javax$net$ssl$SSLEngineResult$Status:[I
            dup
            ifnull 1
            areturn
      StackMap locals:
      StackMap stack: int[]
         1: pop
            invokestatic javax.net.ssl.SSLEngineResult$Status.values:()[Ljavax/net/ssl/SSLEngineResult$Status;
            arraylength
            newarray 10
            astore 0
         2: aload 0
            getstatic javax.net.ssl.SSLEngineResult$Status.BUFFER_OVERFLOW:Ljavax/net/ssl/SSLEngineResult$Status;
            invokevirtual javax.net.ssl.SSLEngineResult$Status.ordinal:()I
            iconst_2
            iastore
         3: goto 5
      StackMap locals: int[]
      StackMap stack: java.lang.NoSuchFieldError
         4: pop
      StackMap locals:
      StackMap stack:
         5: aload 0
            getstatic javax.net.ssl.SSLEngineResult$Status.BUFFER_UNDERFLOW:Ljavax/net/ssl/SSLEngineResult$Status;
            invokevirtual javax.net.ssl.SSLEngineResult$Status.ordinal:()I
            iconst_1
            iastore
         6: goto 8
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
         7: pop
      StackMap locals:
      StackMap stack:
         8: aload 0
            getstatic javax.net.ssl.SSLEngineResult$Status.CLOSED:Ljavax/net/ssl/SSLEngineResult$Status;
            invokevirtual javax.net.ssl.SSLEngineResult$Status.ordinal:()I
            iconst_4
            iastore
         9: goto 11
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        10: pop
      StackMap locals:
      StackMap stack:
        11: aload 0
            getstatic javax.net.ssl.SSLEngineResult$Status.OK:Ljavax/net/ssl/SSLEngineResult$Status;
            invokevirtual javax.net.ssl.SSLEngineResult$Status.ordinal:()I
            iconst_3
            iastore
        12: goto 14
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        13: pop
      StackMap locals:
      StackMap stack:
        14: aload 0
            dup
            putstatic org.xnio.ssl.JsseStreamConduit.$SWITCH_TABLE$javax$net$ssl$SSLEngineResult$Status:[I
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
      Exception table:
        from    to  target  type
           2     3       4  Class java.lang.NoSuchFieldError
           5     6       7  Class java.lang.NoSuchFieldError
           8     9      10  Class java.lang.NoSuchFieldError
          11    12      13  Class java.lang.NoSuchFieldError

  static int[] $SWITCH_TABLE$javax$net$ssl$SSLEngineResult$HandshakeStatus();
    descriptor: ()[I
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=0
         0: .line 60
            getstatic org.xnio.ssl.JsseStreamConduit.$SWITCH_TABLE$javax$net$ssl$SSLEngineResult$HandshakeStatus:[I
            dup
            ifnull 1
            areturn
      StackMap locals:
      StackMap stack: int[]
         1: pop
            invokestatic javax.net.ssl.SSLEngineResult$HandshakeStatus.values:()[Ljavax/net/ssl/SSLEngineResult$HandshakeStatus;
            arraylength
            newarray 10
            astore 0
         2: aload 0
            getstatic javax.net.ssl.SSLEngineResult$HandshakeStatus.FINISHED:Ljavax/net/ssl/SSLEngineResult$HandshakeStatus;
            invokevirtual javax.net.ssl.SSLEngineResult$HandshakeStatus.ordinal:()I
            iconst_2
            iastore
         3: goto 5
      StackMap locals: int[]
      StackMap stack: java.lang.NoSuchFieldError
         4: pop
      StackMap locals:
      StackMap stack:
         5: aload 0
            getstatic javax.net.ssl.SSLEngineResult$HandshakeStatus.NEED_TASK:Ljavax/net/ssl/SSLEngineResult$HandshakeStatus;
            invokevirtual javax.net.ssl.SSLEngineResult$HandshakeStatus.ordinal:()I
            iconst_3
            iastore
         6: goto 8
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
         7: pop
      StackMap locals:
      StackMap stack:
         8: aload 0
            getstatic javax.net.ssl.SSLEngineResult$HandshakeStatus.NEED_UNWRAP:Ljavax/net/ssl/SSLEngineResult$HandshakeStatus;
            invokevirtual javax.net.ssl.SSLEngineResult$HandshakeStatus.ordinal:()I
            iconst_5
            iastore
         9: goto 11
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        10: pop
      StackMap locals:
      StackMap stack:
        11: aload 0
            getstatic javax.net.ssl.SSLEngineResult$HandshakeStatus.NEED_WRAP:Ljavax/net/ssl/SSLEngineResult$HandshakeStatus;
            invokevirtual javax.net.ssl.SSLEngineResult$HandshakeStatus.ordinal:()I
            iconst_4
            iastore
        12: goto 14
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        13: pop
      StackMap locals:
      StackMap stack:
        14: aload 0
            getstatic javax.net.ssl.SSLEngineResult$HandshakeStatus.NOT_HANDSHAKING:Ljavax/net/ssl/SSLEngineResult$HandshakeStatus;
            invokevirtual javax.net.ssl.SSLEngineResult$HandshakeStatus.ordinal:()I
            iconst_1
            iastore
        15: goto 17
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        16: pop
      StackMap locals:
      StackMap stack:
        17: aload 0
            dup
            putstatic org.xnio.ssl.JsseStreamConduit.$SWITCH_TABLE$javax$net$ssl$SSLEngineResult$HandshakeStatus:[I
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
      Exception table:
        from    to  target  type
           2     3       4  Class java.lang.NoSuchFieldError
           5     6       7  Class java.lang.NoSuchFieldError
           8     9      10  Class java.lang.NoSuchFieldError
          11    12      13  Class java.lang.NoSuchFieldError
          14    15      16  Class java.lang.NoSuchFieldError
}
SourceFile: "JsseStreamConduit.java"
NestMembers:
  org.xnio.ssl.JsseStreamConduit$1  org.xnio.ssl.JsseStreamConduit$2  org.xnio.ssl.JsseStreamConduit$TaskWrapper
InnerClasses:
  public final HandshakeStatus = javax.net.ssl.SSLEngineResult$HandshakeStatus of javax.net.ssl.SSLEngineResult
  public final Status = javax.net.ssl.SSLEngineResult$Status of javax.net.ssl.SSLEngineResult
  org.xnio.ssl.JsseStreamConduit$1
  org.xnio.ssl.JsseStreamConduit$2
  TaskWrapper = org.xnio.ssl.JsseStreamConduit$TaskWrapper of org.xnio.ssl.JsseStreamConduit