public class io.undertow.protocols.ssl.SslConduit implements org.xnio.conduits.StreamSourceConduit, org.xnio.conduits.StreamSinkConduit
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: io.undertow.protocols.ssl.SslConduit
  super_class: java.lang.Object
{
  public static final int MAX_READ_LISTENER_INVOCATIONS;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  public static final java.nio.ByteBuffer EMPTY_BUFFER;
    descriptor: Ljava/nio/ByteBuffer;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  private final io.undertow.protocols.ssl.UndertowSslConnection connection;
    descriptor: Lio/undertow/protocols/ssl/UndertowSslConnection;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.xnio.StreamConnection delegate;
    descriptor: Lorg/xnio/StreamConnection;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private javax.net.ssl.SSLEngine engine;
    descriptor: Ljavax/net/ssl/SSLEngine;
    flags: (0x0002) ACC_PRIVATE

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

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

  private final io.undertow.connector.ByteBufferPool bufferPool;
    descriptor: Lio/undertow/connector/ByteBufferPool;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.lang.Runnable handshakeCallback;
    descriptor: Ljava/lang/Runnable;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private volatile int state;
    descriptor: I
    flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE

  private volatile int outstandingTasks;
    descriptor: I
    flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE

  private io.undertow.connector.PooledByteBuffer wrappedData;
    descriptor: Lio/undertow/connector/PooledByteBuffer;
    flags: (0x0002) ACC_PRIVATE

  private io.undertow.connector.PooledByteBuffer dataToUnwrap;
    descriptor: Lio/undertow/connector/PooledByteBuffer;
    flags: (0x0002) ACC_PRIVATE

  private io.undertow.connector.PooledByteBuffer unwrappedData;
    descriptor: Lio/undertow/connector/PooledByteBuffer;
    flags: (0x0002) ACC_PRIVATE

  private io.undertow.protocols.ssl.SslConduit$SslWriteReadyHandler writeReadyHandler;
    descriptor: Lio/undertow/protocols/ssl/SslConduit$SslWriteReadyHandler;
    flags: (0x0002) ACC_PRIVATE

  private io.undertow.protocols.ssl.SslConduit$SslReadReadyHandler readReadyHandler;
    descriptor: Lio/undertow/protocols/ssl/SslConduit$SslReadReadyHandler;
    flags: (0x0002) ACC_PRIVATE

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

  private boolean invokingReadListenerHandshake;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private final java.lang.Runnable runReadListenerCommand;
    descriptor: Ljava/lang/Runnable;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.lang.Runnable runReadListenerAndResumeCommand;
    descriptor: Ljava/lang/Runnable;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  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=2, locals=0, args_size=0
         0: .line 65
            ldc "io.undertow.ssl.max-read-listener-invocations"
            bipush 100
            invokestatic java.lang.Integer.getInteger:(Ljava/lang/String;I)Ljava/lang/Integer;
            invokevirtual java.lang.Integer.intValue:()I
            putstatic io.undertow.protocols.ssl.SslConduit.MAX_READ_LISTENER_INVOCATIONS:I
         1: .line 118
            iconst_0
            invokestatic java.nio.ByteBuffer.allocate:(I)Ljava/nio/ByteBuffer;
            putstatic io.undertow.protocols.ssl.SslConduit.EMPTY_BUFFER:Ljava/nio/ByteBuffer;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  void <init>(io.undertow.protocols.ssl.UndertowSslConnection, org.xnio.StreamConnection, javax.net.ssl.SSLEngine, io.undertow.connector.ByteBufferPool, java.lang.Runnable);
    descriptor: (Lio/undertow/protocols/ssl/UndertowSslConnection;Lorg/xnio/StreamConnection;Ljavax/net/ssl/SSLEngine;Lio/undertow/connector/ByteBufferPool;Ljava/lang/Runnable;)V
    flags: (0x0000) 
    Code:
      stack=6, locals=6, args_size=6
        start local 0 // io.undertow.protocols.ssl.SslConduit this
        start local 1 // io.undertow.protocols.ssl.UndertowSslConnection connection
        start local 2 // org.xnio.StreamConnection delegate
        start local 3 // javax.net.ssl.SSLEngine engine
        start local 4 // io.undertow.connector.ByteBufferPool bufferPool
        start local 5 // java.lang.Runnable handshakeCallback
         0: .line 187
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 129
            aload 0 /* this */
            iconst_0
            putfield io.undertow.protocols.ssl.SslConduit.state:I
         2: .line 131
            aload 0 /* this */
            iconst_0
            putfield io.undertow.protocols.ssl.SslConduit.outstandingTasks:I
         3: .line 159
            aload 0 /* this */
            iconst_0
            putfield io.undertow.protocols.ssl.SslConduit.invokingReadListenerHandshake:Z
         4: .line 163
            aload 0 /* this */
            new io.undertow.protocols.ssl.SslConduit$1
            dup
            aload 0 /* this */
            invokespecial io.undertow.protocols.ssl.SslConduit$1.<init>:(Lio/undertow/protocols/ssl/SslConduit;)V
            putfield io.undertow.protocols.ssl.SslConduit.runReadListenerCommand:Ljava/lang/Runnable;
         5: .line 177
            aload 0 /* this */
            new io.undertow.protocols.ssl.SslConduit$2
            dup
            aload 0 /* this */
            invokespecial io.undertow.protocols.ssl.SslConduit$2.<init>:(Lio/undertow/protocols/ssl/SslConduit;)V
            putfield io.undertow.protocols.ssl.SslConduit.runReadListenerAndResumeCommand:Ljava/lang/Runnable;
         6: .line 188
            aload 0 /* this */
            aload 1 /* connection */
            putfield io.undertow.protocols.ssl.SslConduit.connection:Lio/undertow/protocols/ssl/UndertowSslConnection;
         7: .line 189
            aload 0 /* this */
            aload 2 /* delegate */
            putfield io.undertow.protocols.ssl.SslConduit.delegate:Lorg/xnio/StreamConnection;
         8: .line 190
            aload 0 /* this */
            aload 5 /* handshakeCallback */
            putfield io.undertow.protocols.ssl.SslConduit.handshakeCallback:Ljava/lang/Runnable;
         9: .line 191
            aload 0 /* this */
            aload 2 /* delegate */
            invokevirtual org.xnio.StreamConnection.getSinkChannel:()Lorg/xnio/conduits/ConduitStreamSinkChannel;
            invokevirtual org.xnio.conduits.ConduitStreamSinkChannel.getConduit:()Lorg/xnio/conduits/StreamSinkConduit;
            putfield io.undertow.protocols.ssl.SslConduit.sink:Lorg/xnio/conduits/StreamSinkConduit;
        10: .line 192
            aload 0 /* this */
            aload 2 /* delegate */
            invokevirtual org.xnio.StreamConnection.getSourceChannel:()Lorg/xnio/conduits/ConduitStreamSourceChannel;
            invokevirtual org.xnio.conduits.ConduitStreamSourceChannel.getConduit:()Lorg/xnio/conduits/StreamSourceConduit;
            putfield io.undertow.protocols.ssl.SslConduit.source:Lorg/xnio/conduits/StreamSourceConduit;
        11: .line 193
            aload 0 /* this */
            aload 3 /* engine */
            putfield io.undertow.protocols.ssl.SslConduit.engine:Ljavax/net/ssl/SSLEngine;
        12: .line 194
            aload 0 /* this */
            aload 4 /* bufferPool */
            putfield io.undertow.protocols.ssl.SslConduit.bufferPool:Lio/undertow/connector/ByteBufferPool;
        13: .line 195
            aload 2 /* delegate */
            invokevirtual org.xnio.StreamConnection.getSourceChannel:()Lorg/xnio/conduits/ConduitStreamSourceChannel;
            invokevirtual org.xnio.conduits.ConduitStreamSourceChannel.getConduit:()Lorg/xnio/conduits/StreamSourceConduit;
            aload 0 /* this */
            new io.undertow.protocols.ssl.SslConduit$SslReadReadyHandler
            dup
            aload 0 /* this */
            aconst_null
            invokespecial io.undertow.protocols.ssl.SslConduit$SslReadReadyHandler.<init>:(Lio/undertow/protocols/ssl/SslConduit;Lorg/xnio/conduits/ReadReadyHandler;)V
            dup_x1
            putfield io.undertow.protocols.ssl.SslConduit.readReadyHandler:Lio/undertow/protocols/ssl/SslConduit$SslReadReadyHandler;
            invokeinterface org.xnio.conduits.StreamSourceConduit.setReadReadyHandler:(Lorg/xnio/conduits/ReadReadyHandler;)V
        14: .line 196
            aload 2 /* delegate */
            invokevirtual org.xnio.StreamConnection.getSinkChannel:()Lorg/xnio/conduits/ConduitStreamSinkChannel;
            invokevirtual org.xnio.conduits.ConduitStreamSinkChannel.getConduit:()Lorg/xnio/conduits/StreamSinkConduit;
            aload 0 /* this */
            new io.undertow.protocols.ssl.SslConduit$SslWriteReadyHandler
            dup
            aload 0 /* this */
            aconst_null
            invokespecial io.undertow.protocols.ssl.SslConduit$SslWriteReadyHandler.<init>:(Lio/undertow/protocols/ssl/SslConduit;Lorg/xnio/conduits/WriteReadyHandler;)V
            dup_x1
            putfield io.undertow.protocols.ssl.SslConduit.writeReadyHandler:Lio/undertow/protocols/ssl/SslConduit$SslWriteReadyHandler;
            invokeinterface org.xnio.conduits.StreamSinkConduit.setWriteReadyHandler:(Lorg/xnio/conduits/WriteReadyHandler;)V
        15: .line 197
            aload 3 /* engine */
            invokevirtual javax.net.ssl.SSLEngine.getUseClientMode:()Z
            ifeq 18
        16: .line 198
            aload 0 /* this */
            sipush 2049
            putfield io.undertow.protocols.ssl.SslConduit.state:I
        17: .line 199
            goto 19
        18: .line 200
      StackMap locals: io.undertow.protocols.ssl.SslConduit io.undertow.protocols.ssl.UndertowSslConnection org.xnio.StreamConnection javax.net.ssl.SSLEngine io.undertow.connector.ByteBufferPool java.lang.Runnable
      StackMap stack:
            aload 0 /* this */
            sipush 2050
            putfield io.undertow.protocols.ssl.SslConduit.state:I
        19: .line 202
      StackMap locals:
      StackMap stack:
            return
        end local 5 // java.lang.Runnable handshakeCallback
        end local 4 // io.undertow.connector.ByteBufferPool bufferPool
        end local 3 // javax.net.ssl.SSLEngine engine
        end local 2 // org.xnio.StreamConnection delegate
        end local 1 // io.undertow.protocols.ssl.UndertowSslConnection connection
        end local 0 // io.undertow.protocols.ssl.SslConduit this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   20     0               this  Lio/undertow/protocols/ssl/SslConduit;
            0   20     1         connection  Lio/undertow/protocols/ssl/UndertowSslConnection;
            0   20     2           delegate  Lorg/xnio/StreamConnection;
            0   20     3             engine  Ljavax/net/ssl/SSLEngine;
            0   20     4         bufferPool  Lio/undertow/connector/ByteBufferPool;
            0   20     5  handshakeCallback  Ljava/lang/Runnable;
    MethodParameters:
                   Name  Flags
      connection         
      delegate           
      engine             
      bufferPool         
      handshakeCallback  

  public void terminateReads();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // io.undertow.protocols.ssl.SslConduit this
         0: .line 206
            aload 0 /* this */
            dup
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            bipush 32
            ior
            putfield io.undertow.protocols.ssl.SslConduit.state:I
         1: .line 207
            aload 0 /* this */
            invokevirtual io.undertow.protocols.ssl.SslConduit.notifyReadClosed:()V
         2: .line 208
            return
        end local 0 // io.undertow.protocols.ssl.SslConduit this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lio/undertow/protocols/ssl/SslConduit;
    Exceptions:
      throws java.io.IOException

  public boolean isReadShutdown();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // io.undertow.protocols.ssl.SslConduit this
         0: .line 212
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            bipush 32
            invokestatic org.xnio.Bits.anyAreSet:(II)Z
            ireturn
        end local 0 // io.undertow.protocols.ssl.SslConduit this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/undertow/protocols/ssl/SslConduit;

  public void resumeReads();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // io.undertow.protocols.ssl.SslConduit this
         0: .line 217
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            iconst_4
            invokestatic org.xnio.Bits.anyAreSet:(II)Z
            ifeq 2
         1: .line 219
            return
         2: .line 221
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_0
            invokevirtual io.undertow.protocols.ssl.SslConduit.resumeReads:(Z)V
         3: .line 222
            return
        end local 0 // io.undertow.protocols.ssl.SslConduit this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lio/undertow/protocols/ssl/SslConduit;

  public void suspendReads();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // io.undertow.protocols.ssl.SslConduit this
         0: .line 225
            aload 0 /* this */
            dup
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            bipush -5
            iand
            putfield io.undertow.protocols.ssl.SslConduit.state:I
         1: .line 226
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            bipush 10
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifne 3
         2: .line 227
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.delegate:Lorg/xnio/StreamConnection;
            invokevirtual org.xnio.StreamConnection.getSourceChannel:()Lorg/xnio/conduits/ConduitStreamSourceChannel;
            invokevirtual org.xnio.conduits.ConduitStreamSourceChannel.suspendReads:()V
         3: .line 229
      StackMap locals:
      StackMap stack:
            return
        end local 0 // io.undertow.protocols.ssl.SslConduit this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lio/undertow/protocols/ssl/SslConduit;

  public void wakeupReads();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // io.undertow.protocols.ssl.SslConduit this
         0: .line 233
            aload 0 /* this */
            iconst_1
            invokevirtual io.undertow.protocols.ssl.SslConduit.resumeReads:(Z)V
         1: .line 234
            return
        end local 0 // io.undertow.protocols.ssl.SslConduit this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lio/undertow/protocols/ssl/SslConduit;

  private void resumeReads(boolean);
    descriptor: (Z)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // io.undertow.protocols.ssl.SslConduit this
        start local 1 // boolean wakeup
         0: .line 237
            aload 0 /* this */
            dup
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            iconst_4
            ior
            putfield io.undertow.protocols.ssl.SslConduit.state:I
         1: .line 238
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            iconst_1
            invokestatic org.xnio.Bits.anyAreSet:(II)Z
            ifeq 4
         2: .line 239
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.delegate:Lorg/xnio/StreamConnection;
            invokevirtual org.xnio.StreamConnection.getSinkChannel:()Lorg/xnio/conduits/ConduitStreamSinkChannel;
            invokevirtual org.xnio.conduits.ConduitStreamSinkChannel.resumeWrites:()V
         3: .line 240
            goto 8
         4: .line 241
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            bipush 16
            invokestatic org.xnio.Bits.anyAreSet:(II)Z
            ifne 5
            iload 1 /* wakeup */
            ifne 5
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.unwrappedData:Lio/undertow/connector/PooledByteBuffer;
            ifnull 7
         5: .line 242
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            invokevirtual io.undertow.protocols.ssl.SslConduit.runReadListener:(Z)V
         6: .line 243
            goto 8
         7: .line 244
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.delegate:Lorg/xnio/StreamConnection;
            invokevirtual org.xnio.StreamConnection.getSourceChannel:()Lorg/xnio/conduits/ConduitStreamSourceChannel;
            invokevirtual org.xnio.conduits.ConduitStreamSourceChannel.resumeReads:()V
         8: .line 247
      StackMap locals:
      StackMap stack:
            return
        end local 1 // boolean wakeup
        end local 0 // io.undertow.protocols.ssl.SslConduit this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    9     0    this  Lio/undertow/protocols/ssl/SslConduit;
            0    9     1  wakeup  Z
    MethodParameters:
        Name  Flags
      wakeup  

  private void runReadListener(boolean);
    descriptor: (Z)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // io.undertow.protocols.ssl.SslConduit this
        start local 1 // boolean resumeInListener
         0: .line 252
            aload 0 /* this */
            dup
            getfield io.undertow.protocols.ssl.SslConduit.readListenerInvocationCount:I
            dup_x1
            iconst_1
            iadd
            putfield io.undertow.protocols.ssl.SslConduit.readListenerInvocationCount:I
            getstatic io.undertow.protocols.ssl.SslConduit.MAX_READ_LISTENER_INVOCATIONS:I
            if_icmpne 5
         1: .line 253
            getstatic io.undertow.UndertowLogger.REQUEST_LOGGER:Lio/undertow/UndertowLogger;
            aload 0 /* this */
            invokeinterface io.undertow.UndertowLogger.sslReadLoopDetected:(Lio/undertow/protocols/ssl/SslConduit;)V
            iconst_2
            anewarray java.io.Closeable
            dup
            iconst_0
         2: .line 254
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.connection:Lio/undertow/protocols/ssl/UndertowSslConnection;
            aastore
            dup
            iconst_1
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.delegate:Lorg/xnio/StreamConnection;
            aastore
            invokestatic org.xnio.IoUtils.safeClose:([Ljava/io/Closeable;)V
         3: .line 255
            aload 0 /* this */
            invokevirtual io.undertow.protocols.ssl.SslConduit.close:()V
         4: .line 256
            return
         5: .line 258
      StackMap locals:
      StackMap stack:
            iload 1 /* resumeInListener */
            ifeq 8
         6: .line 259
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.delegate:Lorg/xnio/StreamConnection;
            invokevirtual org.xnio.StreamConnection.getIoThread:()Lorg/xnio/XnioIoThread;
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.runReadListenerAndResumeCommand:Ljava/lang/Runnable;
            invokevirtual org.xnio.XnioIoThread.execute:(Ljava/lang/Runnable;)V
         7: .line 260
            goto 14
         8: .line 261
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.delegate:Lorg/xnio/StreamConnection;
            invokevirtual org.xnio.StreamConnection.getIoThread:()Lorg/xnio/XnioIoThread;
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.runReadListenerCommand:Ljava/lang/Runnable;
            invokevirtual org.xnio.XnioIoThread.execute:(Ljava/lang/Runnable;)V
         9: .line 263
            goto 14
      StackMap locals:
      StackMap stack: java.lang.Throwable
        10: astore 2 /* e */
        start local 2 // java.lang.Throwable e
        11: iconst_2
            anewarray java.io.Closeable
            dup
            iconst_0
        12: .line 265
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.connection:Lio/undertow/protocols/ssl/UndertowSslConnection;
            aastore
            dup
            iconst_1
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.delegate:Lorg/xnio/StreamConnection;
            aastore
            invokestatic org.xnio.IoUtils.safeClose:([Ljava/io/Closeable;)V
        13: .line 266
            getstatic io.undertow.UndertowLogger.REQUEST_IO_LOGGER:Lio/undertow/UndertowLogger;
            aload 2 /* e */
            ldc "Failed to queue read listener invocation"
            iconst_0
            anewarray java.lang.Object
            invokeinterface io.undertow.UndertowLogger.debugf:(Ljava/lang/Throwable;Ljava/lang/String;[Ljava/lang/Object;)V
        end local 2 // java.lang.Throwable e
        14: .line 268
      StackMap locals:
      StackMap stack:
            return
        end local 1 // boolean resumeInListener
        end local 0 // io.undertow.protocols.ssl.SslConduit this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   15     0              this  Lio/undertow/protocols/ssl/SslConduit;
            0   15     1  resumeInListener  Z
           11   14     2                 e  Ljava/lang/Throwable;
      Exception table:
        from    to  target  type
           0     4      10  Class java.lang.Throwable
           5     9      10  Class java.lang.Throwable
    MethodParameters:
                  Name  Flags
      resumeInListener  final

  private void runWriteListener();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // io.undertow.protocols.ssl.SslConduit this
         0: .line 272
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.delegate:Lorg/xnio/StreamConnection;
            invokevirtual org.xnio.StreamConnection.getIoThread:()Lorg/xnio/XnioIoThread;
            new io.undertow.protocols.ssl.SslConduit$3
            dup
            aload 0 /* this */
            invokespecial io.undertow.protocols.ssl.SslConduit$3.<init>:(Lio/undertow/protocols/ssl/SslConduit;)V
            invokevirtual org.xnio.XnioIoThread.execute:(Ljava/lang/Runnable;)V
         1: .line 278
            goto 6
      StackMap locals:
      StackMap stack: java.lang.Throwable
         2: astore 1 /* e */
        start local 1 // java.lang.Throwable e
         3: iconst_2
            anewarray java.io.Closeable
            dup
            iconst_0
         4: .line 280
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.connection:Lio/undertow/protocols/ssl/UndertowSslConnection;
            aastore
            dup
            iconst_1
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.delegate:Lorg/xnio/StreamConnection;
            aastore
            invokestatic org.xnio.IoUtils.safeClose:([Ljava/io/Closeable;)V
         5: .line 281
            getstatic io.undertow.UndertowLogger.REQUEST_IO_LOGGER:Lio/undertow/UndertowLogger;
            aload 1 /* e */
            ldc "Failed to queue read listener invocation"
            iconst_0
            anewarray java.lang.Object
            invokeinterface io.undertow.UndertowLogger.debugf:(Ljava/lang/Throwable;Ljava/lang/String;[Ljava/lang/Object;)V
        end local 1 // java.lang.Throwable e
         6: .line 283
      StackMap locals:
      StackMap stack:
            return
        end local 0 // io.undertow.protocols.ssl.SslConduit this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lio/undertow/protocols/ssl/SslConduit;
            3    6     1     e  Ljava/lang/Throwable;
      Exception table:
        from    to  target  type
           0     1       2  Class java.lang.Throwable

  public boolean isReadResumed();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // io.undertow.protocols.ssl.SslConduit this
         0: .line 287
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            iconst_4
            invokestatic org.xnio.Bits.anyAreSet:(II)Z
            ireturn
        end local 0 // io.undertow.protocols.ssl.SslConduit this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/undertow/protocols/ssl/SslConduit;

  public void awaitReadable();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // io.undertow.protocols.ssl.SslConduit this
         0: .line 292
            aload 0 /* this */
            dup
            astore 1
            monitorenter
         1: .line 293
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.outstandingTasks:I
            ifle 7
         2: .line 295
            aload 0 /* this */
            invokevirtual java.lang.Object.wait:()V
         3: .line 296
            aload 1
            monitorexit
         4: return
         5: .line 297
      StackMap locals: io.undertow.protocols.ssl.SslConduit io.undertow.protocols.ssl.SslConduit
      StackMap stack: java.lang.InterruptedException
            pop
         6: .line 298
            new java.io.InterruptedIOException
            dup
            invokespecial java.io.InterruptedIOException.<init>:()V
            athrow
         7: .line 292
      StackMap locals:
      StackMap stack:
            aload 1
            monitorexit
         8: goto 11
      StackMap locals:
      StackMap stack: java.lang.Throwable
         9: aload 1
            monitorexit
        10: athrow
        11: .line 302
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.unwrappedData:Lio/undertow/connector/PooledByteBuffer;
            ifnull 13
        12: .line 303
            return
        13: .line 305
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            bipush 16
            invokestatic org.xnio.Bits.anyAreSet:(II)Z
            ifeq 15
        14: .line 306
            return
        15: .line 308
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            iconst_1
            invokestatic org.xnio.Bits.anyAreSet:(II)Z
            ifeq 18
        16: .line 309
            aload 0 /* this */
            invokevirtual io.undertow.protocols.ssl.SslConduit.awaitWritable:()V
        17: .line 310
            return
        18: .line 312
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.source:Lorg/xnio/conduits/StreamSourceConduit;
            invokeinterface org.xnio.conduits.StreamSourceConduit.awaitReadable:()V
        19: .line 313
            return
        end local 0 // io.undertow.protocols.ssl.SslConduit this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   20     0  this  Lio/undertow/protocols/ssl/SslConduit;
      Exception table:
        from    to  target  type
           2     3       5  Class java.lang.InterruptedException
           1     4       9  any
           5     8       9  any
           9    10       9  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=4, locals=5, args_size=3
        start local 0 // io.undertow.protocols.ssl.SslConduit this
        start local 1 // long time
        start local 3 // java.util.concurrent.TimeUnit timeUnit
         0: .line 317
            aload 0 /* this */
            dup
            astore 4
            monitorenter
         1: .line 318
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.outstandingTasks:I
            ifle 7
         2: .line 320
            aload 0 /* this */
            aload 3 /* timeUnit */
            lload 1 /* time */
            invokevirtual java.util.concurrent.TimeUnit.toMillis:(J)J
            invokevirtual java.lang.Object.wait:(J)V
         3: .line 321
            aload 4
            monitorexit
         4: return
         5: .line 322
      StackMap locals: io.undertow.protocols.ssl.SslConduit long java.util.concurrent.TimeUnit io.undertow.protocols.ssl.SslConduit
      StackMap stack: java.lang.InterruptedException
            pop
         6: .line 323
            new java.io.InterruptedIOException
            dup
            invokespecial java.io.InterruptedIOException.<init>:()V
            athrow
         7: .line 317
      StackMap locals:
      StackMap stack:
            aload 4
            monitorexit
         8: goto 11
      StackMap locals:
      StackMap stack: java.lang.Throwable
         9: aload 4
            monitorexit
        10: athrow
        11: .line 327
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.unwrappedData:Lio/undertow/connector/PooledByteBuffer;
            ifnull 13
        12: .line 328
            return
        13: .line 330
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            bipush 16
            invokestatic org.xnio.Bits.anyAreSet:(II)Z
            ifeq 15
        14: .line 331
            return
        15: .line 333
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            iconst_1
            invokestatic org.xnio.Bits.anyAreSet:(II)Z
            ifeq 18
        16: .line 334
            aload 0 /* this */
            lload 1 /* time */
            aload 3 /* timeUnit */
            invokevirtual io.undertow.protocols.ssl.SslConduit.awaitWritable:(JLjava/util/concurrent/TimeUnit;)V
        17: .line 335
            return
        18: .line 337
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.source:Lorg/xnio/conduits/StreamSourceConduit;
            lload 1 /* time */
            aload 3 /* timeUnit */
            invokeinterface org.xnio.conduits.StreamSourceConduit.awaitReadable:(JLjava/util/concurrent/TimeUnit;)V
        19: .line 338
            return
        end local 3 // java.util.concurrent.TimeUnit timeUnit
        end local 1 // long time
        end local 0 // io.undertow.protocols.ssl.SslConduit this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   20     0      this  Lio/undertow/protocols/ssl/SslConduit;
            0   20     1      time  J
            0   20     3  timeUnit  Ljava/util/concurrent/TimeUnit;
      Exception table:
        from    to  target  type
           2     3       5  Class java.lang.InterruptedException
           1     4       9  any
           5     8       9  any
           9    10       9  any
    Exceptions:
      throws java.io.IOException
    MethodParameters:
          Name  Flags
      time      
      timeUnit  

  public org.xnio.XnioIoThread getReadThread();
    descriptor: ()Lorg/xnio/XnioIoThread;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.undertow.protocols.ssl.SslConduit this
         0: .line 342
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.delegate:Lorg/xnio/StreamConnection;
            invokevirtual org.xnio.StreamConnection.getIoThread:()Lorg/xnio/XnioIoThread;
            areturn
        end local 0 // io.undertow.protocols.ssl.SslConduit this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/undertow/protocols/ssl/SslConduit;

  public void setReadReadyHandler(org.xnio.conduits.ReadReadyHandler);
    descriptor: (Lorg/xnio/conduits/ReadReadyHandler;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // io.undertow.protocols.ssl.SslConduit this
        start local 1 // org.xnio.conduits.ReadReadyHandler handler
         0: .line 347
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.delegate:Lorg/xnio/StreamConnection;
            invokevirtual org.xnio.StreamConnection.getSourceChannel:()Lorg/xnio/conduits/ConduitStreamSourceChannel;
            invokevirtual org.xnio.conduits.ConduitStreamSourceChannel.getConduit:()Lorg/xnio/conduits/StreamSourceConduit;
            aload 0 /* this */
            new io.undertow.protocols.ssl.SslConduit$SslReadReadyHandler
            dup
            aload 0 /* this */
            aload 1 /* handler */
            invokespecial io.undertow.protocols.ssl.SslConduit$SslReadReadyHandler.<init>:(Lio/undertow/protocols/ssl/SslConduit;Lorg/xnio/conduits/ReadReadyHandler;)V
            dup_x1
            putfield io.undertow.protocols.ssl.SslConduit.readReadyHandler:Lio/undertow/protocols/ssl/SslConduit$SslReadReadyHandler;
            invokeinterface org.xnio.conduits.StreamSourceConduit.setReadReadyHandler:(Lorg/xnio/conduits/ReadReadyHandler;)V
         1: .line 348
            return
        end local 1 // org.xnio.conduits.ReadReadyHandler handler
        end local 0 // io.undertow.protocols.ssl.SslConduit this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lio/undertow/protocols/ssl/SslConduit;
            0    2     1  handler  Lorg/xnio/conduits/ReadReadyHandler;
    MethodParameters:
         Name  Flags
      handler  

  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 // io.undertow.protocols.ssl.SslConduit this
        start local 1 // java.nio.channels.FileChannel src
        start local 2 // long position
        start local 4 // long count
         0: .line 352
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            bipush 64
            invokestatic org.xnio.Bits.anyAreSet:(II)Z
            ifeq 2
         1: .line 353
            new java.nio.channels.ClosedChannelException
            dup
            invokespecial java.nio.channels.ClosedChannelException.<init>:()V
            athrow
         2: .line 355
      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 // io.undertow.protocols.ssl.SslConduit this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    3     0      this  Lio/undertow/protocols/ssl/SslConduit;
            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       
      position  
      count     

  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=7, locals=5, args_size=4
        start local 0 // io.undertow.protocols.ssl.SslConduit this
        start local 1 // org.xnio.channels.StreamSourceChannel source
        start local 2 // long count
        start local 4 // java.nio.ByteBuffer throughBuffer
         0: .line 360
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            bipush 64
            invokestatic org.xnio.Bits.anyAreSet:(II)Z
            ifeq 2
         1: .line 361
            new java.nio.channels.ClosedChannelException
            dup
            invokespecial java.nio.channels.ClosedChannelException.<init>:()V
            athrow
         2: .line 363
      StackMap locals:
      StackMap stack:
            aload 1 /* source */
            lload 2 /* count */
            aload 4 /* throughBuffer */
            new org.xnio.conduits.ConduitWritableByteChannel
            dup
            aload 0 /* this */
            invokespecial org.xnio.conduits.ConduitWritableByteChannel.<init>:(Lorg/xnio/conduits/StreamSinkConduit;)V
            invokestatic org.xnio.IoUtils.transfer:(Ljava/nio/channels/ReadableByteChannel;JLjava/nio/ByteBuffer;Ljava/nio/channels/WritableByteChannel;)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 // io.undertow.protocols.ssl.SslConduit this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    3     0           this  Lio/undertow/protocols/ssl/SslConduit;
            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         
      count          
      throughBuffer  

  public int write(java.nio.ByteBuffer);
    descriptor: (Ljava/nio/ByteBuffer;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // io.undertow.protocols.ssl.SslConduit this
        start local 1 // java.nio.ByteBuffer src
         0: .line 368
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            bipush 64
            invokestatic org.xnio.Bits.anyAreSet:(II)Z
            ifeq 2
         1: .line 369
            new java.nio.channels.ClosedChannelException
            dup
            invokespecial java.nio.channels.ClosedChannelException.<init>:()V
            athrow
         2: .line 371
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            anewarray java.nio.ByteBuffer
            dup
            iconst_0
            aload 1 /* src */
            aastore
            iconst_0
            iconst_1
            invokevirtual io.undertow.protocols.ssl.SslConduit.doWrap:([Ljava/nio/ByteBuffer;II)J
            l2i
            ireturn
        end local 1 // java.nio.ByteBuffer src
        end local 0 // io.undertow.protocols.ssl.SslConduit this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lio/undertow/protocols/ssl/SslConduit;
            0    3     1   src  Ljava/nio/ByteBuffer;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      src   

  public long write(java.nio.ByteBuffer[], int, int);
    descriptor: ([Ljava/nio/ByteBuffer;II)J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // io.undertow.protocols.ssl.SslConduit this
        start local 1 // java.nio.ByteBuffer[] srcs
        start local 2 // int offs
        start local 3 // int len
         0: .line 376
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            bipush 64
            invokestatic org.xnio.Bits.anyAreSet:(II)Z
            ifeq 2
         1: .line 377
            new java.nio.channels.ClosedChannelException
            dup
            invokespecial java.nio.channels.ClosedChannelException.<init>:()V
            athrow
         2: .line 379
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* srcs */
            iload 2 /* offs */
            iload 3 /* len */
            invokevirtual io.undertow.protocols.ssl.SslConduit.doWrap:([Ljava/nio/ByteBuffer;II)J
            lreturn
        end local 3 // int len
        end local 2 // int offs
        end local 1 // java.nio.ByteBuffer[] srcs
        end local 0 // io.undertow.protocols.ssl.SslConduit this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lio/undertow/protocols/ssl/SslConduit;
            0    3     1  srcs  [Ljava/nio/ByteBuffer;
            0    3     2  offs  I
            0    3     3   len  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      srcs  
      offs  
      len   

  public int writeFinal(java.nio.ByteBuffer);
    descriptor: (Ljava/nio/ByteBuffer;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.undertow.protocols.ssl.SslConduit this
        start local 1 // java.nio.ByteBuffer src
         0: .line 384
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            bipush 64
            invokestatic org.xnio.Bits.anyAreSet:(II)Z
            ifeq 2
         1: .line 385
            new java.nio.channels.ClosedChannelException
            dup
            invokespecial java.nio.channels.ClosedChannelException.<init>:()V
            athrow
         2: .line 387
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* src */
            invokestatic org.xnio.conduits.Conduits.writeFinalBasic:(Lorg/xnio/conduits/StreamSinkConduit;Ljava/nio/ByteBuffer;)I
            ireturn
        end local 1 // java.nio.ByteBuffer src
        end local 0 // io.undertow.protocols.ssl.SslConduit this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lio/undertow/protocols/ssl/SslConduit;
            0    3     1   src  Ljava/nio/ByteBuffer;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      src   

  public long writeFinal(java.nio.ByteBuffer[], int, int);
    descriptor: ([Ljava/nio/ByteBuffer;II)J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // io.undertow.protocols.ssl.SslConduit this
        start local 1 // java.nio.ByteBuffer[] srcs
        start local 2 // int offset
        start local 3 // int length
         0: .line 392
            aload 0 /* this */
            aload 1 /* srcs */
            iload 2 /* offset */
            iload 3 /* length */
            invokestatic org.xnio.conduits.Conduits.writeFinalBasic:(Lorg/xnio/conduits/StreamSinkConduit;[Ljava/nio/ByteBuffer;II)J
            lreturn
        end local 3 // int length
        end local 2 // int offset
        end local 1 // java.nio.ByteBuffer[] srcs
        end local 0 // io.undertow.protocols.ssl.SslConduit this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lio/undertow/protocols/ssl/SslConduit;
            0    1     1    srcs  [Ljava/nio/ByteBuffer;
            0    1     2  offset  I
            0    1     3  length  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
        Name  Flags
      srcs    
      offset  
      length  

  public void terminateWrites();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // io.undertow.protocols.ssl.SslConduit this
         0: .line 397
            aload 0 /* this */
            dup
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            bipush 64
            ior
            putfield io.undertow.protocols.ssl.SslConduit.state:I
         1: .line 398
            return
        end local 0 // io.undertow.protocols.ssl.SslConduit this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lio/undertow/protocols/ssl/SslConduit;
    Exceptions:
      throws java.io.IOException

  public boolean isWriteShutdown();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.undertow.protocols.ssl.SslConduit this
         0: .line 402
            iconst_0
            ireturn
        end local 0 // io.undertow.protocols.ssl.SslConduit this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/undertow/protocols/ssl/SslConduit;

  public void resumeWrites();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // io.undertow.protocols.ssl.SslConduit this
         0: .line 407
            aload 0 /* this */
            dup
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            bipush 8
            ior
            putfield io.undertow.protocols.ssl.SslConduit.state:I
         1: .line 408
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            iconst_2
            invokestatic org.xnio.Bits.anyAreSet:(II)Z
            ifeq 4
         2: .line 409
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.delegate:Lorg/xnio/StreamConnection;
            invokevirtual org.xnio.StreamConnection.getSourceChannel:()Lorg/xnio/conduits/ConduitStreamSourceChannel;
            invokevirtual org.xnio.conduits.ConduitStreamSourceChannel.resumeReads:()V
         3: .line 410
            goto 5
         4: .line 411
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.delegate:Lorg/xnio/StreamConnection;
            invokevirtual org.xnio.StreamConnection.getSinkChannel:()Lorg/xnio/conduits/ConduitStreamSinkChannel;
            invokevirtual org.xnio.conduits.ConduitStreamSinkChannel.resumeWrites:()V
         5: .line 413
      StackMap locals:
      StackMap stack:
            return
        end local 0 // io.undertow.protocols.ssl.SslConduit this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lio/undertow/protocols/ssl/SslConduit;

  public void suspendWrites();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // io.undertow.protocols.ssl.SslConduit this
         0: .line 417
            aload 0 /* this */
            dup
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            bipush -9
            iand
            putfield io.undertow.protocols.ssl.SslConduit.state:I
         1: .line 418
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            iconst_5
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifne 3
         2: .line 419
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.delegate:Lorg/xnio/StreamConnection;
            invokevirtual org.xnio.StreamConnection.getSinkChannel:()Lorg/xnio/conduits/ConduitStreamSinkChannel;
            invokevirtual org.xnio.conduits.ConduitStreamSinkChannel.suspendWrites:()V
         3: .line 421
      StackMap locals:
      StackMap stack:
            return
        end local 0 // io.undertow.protocols.ssl.SslConduit this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lio/undertow/protocols/ssl/SslConduit;

  public void wakeupWrites();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // io.undertow.protocols.ssl.SslConduit this
         0: .line 425
            aload 0 /* this */
            dup
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            bipush 8
            ior
            putfield io.undertow.protocols.ssl.SslConduit.state:I
         1: .line 426
            aload 0 /* this */
            invokevirtual io.undertow.protocols.ssl.SslConduit.getWriteThread:()Lorg/xnio/XnioIoThread;
            new io.undertow.protocols.ssl.SslConduit$4
            dup
            aload 0 /* this */
            invokespecial io.undertow.protocols.ssl.SslConduit$4.<init>:(Lio/undertow/protocols/ssl/SslConduit;)V
            invokevirtual org.xnio.XnioIoThread.execute:(Ljava/lang/Runnable;)V
         2: .line 433
            return
        end local 0 // io.undertow.protocols.ssl.SslConduit this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lio/undertow/protocols/ssl/SslConduit;

  public boolean isWriteResumed();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // io.undertow.protocols.ssl.SslConduit this
         0: .line 437
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            bipush 8
            invokestatic org.xnio.Bits.anyAreSet:(II)Z
            ireturn
        end local 0 // io.undertow.protocols.ssl.SslConduit this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/undertow/protocols/ssl/SslConduit;

  public void awaitWritable();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // io.undertow.protocols.ssl.SslConduit this
         0: .line 442
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            bipush 64
            invokestatic org.xnio.Bits.anyAreSet:(II)Z
            ifeq 2
         1: .line 443
            return
         2: .line 445
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.outstandingTasks:I
            ifle 14
         3: .line 446
            aload 0 /* this */
            dup
            astore 1
            monitorenter
         4: .line 447
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.outstandingTasks:I
            ifle 10
         5: .line 449
            aload 0 /* this */
            invokevirtual java.lang.Object.wait:()V
         6: .line 450
            aload 1
            monitorexit
         7: return
         8: .line 451
      StackMap locals: io.undertow.protocols.ssl.SslConduit io.undertow.protocols.ssl.SslConduit
      StackMap stack: java.lang.InterruptedException
            pop
         9: .line 452
            new java.io.InterruptedIOException
            dup
            invokespecial java.io.InterruptedIOException.<init>:()V
            athrow
        10: .line 446
      StackMap locals:
      StackMap stack:
            aload 1
            monitorexit
        11: goto 14
      StackMap locals:
      StackMap stack: java.lang.Throwable
        12: aload 1
            monitorexit
        13: athrow
        14: .line 457
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            iconst_2
            invokestatic org.xnio.Bits.anyAreSet:(II)Z
            ifeq 17
        15: .line 458
            aload 0 /* this */
            invokevirtual io.undertow.protocols.ssl.SslConduit.awaitReadable:()V
        16: .line 459
            return
        17: .line 461
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.sink:Lorg/xnio/conduits/StreamSinkConduit;
            invokeinterface org.xnio.conduits.StreamSinkConduit.awaitWritable:()V
        18: .line 462
            return
        end local 0 // io.undertow.protocols.ssl.SslConduit this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   19     0  this  Lio/undertow/protocols/ssl/SslConduit;
      Exception table:
        from    to  target  type
           5     6       8  Class java.lang.InterruptedException
           4     7      12  any
           8    11      12  any
          12    13      12  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=4, locals=5, args_size=3
        start local 0 // io.undertow.protocols.ssl.SslConduit this
        start local 1 // long time
        start local 3 // java.util.concurrent.TimeUnit timeUnit
         0: .line 466
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            bipush 64
            invokestatic org.xnio.Bits.anyAreSet:(II)Z
            ifeq 2
         1: .line 467
            return
         2: .line 469
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.outstandingTasks:I
            ifle 14
         3: .line 470
            aload 0 /* this */
            dup
            astore 4
            monitorenter
         4: .line 471
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.outstandingTasks:I
            ifle 10
         5: .line 473
            aload 0 /* this */
            aload 3 /* timeUnit */
            lload 1 /* time */
            invokevirtual java.util.concurrent.TimeUnit.toMillis:(J)J
            invokevirtual java.lang.Object.wait:(J)V
         6: .line 474
            aload 4
            monitorexit
         7: return
         8: .line 475
      StackMap locals: io.undertow.protocols.ssl.SslConduit long java.util.concurrent.TimeUnit io.undertow.protocols.ssl.SslConduit
      StackMap stack: java.lang.InterruptedException
            pop
         9: .line 476
            new java.io.InterruptedIOException
            dup
            invokespecial java.io.InterruptedIOException.<init>:()V
            athrow
        10: .line 470
      StackMap locals:
      StackMap stack:
            aload 4
            monitorexit
        11: goto 14
      StackMap locals:
      StackMap stack: java.lang.Throwable
        12: aload 4
            monitorexit
        13: athrow
        14: .line 481
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            iconst_2
            invokestatic org.xnio.Bits.anyAreSet:(II)Z
            ifeq 17
        15: .line 482
            aload 0 /* this */
            lload 1 /* time */
            aload 3 /* timeUnit */
            invokevirtual io.undertow.protocols.ssl.SslConduit.awaitReadable:(JLjava/util/concurrent/TimeUnit;)V
        16: .line 483
            return
        17: .line 485
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.sink:Lorg/xnio/conduits/StreamSinkConduit;
            invokeinterface org.xnio.conduits.StreamSinkConduit.awaitWritable:()V
        18: .line 486
            return
        end local 3 // java.util.concurrent.TimeUnit timeUnit
        end local 1 // long time
        end local 0 // io.undertow.protocols.ssl.SslConduit this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   19     0      this  Lio/undertow/protocols/ssl/SslConduit;
            0   19     1      time  J
            0   19     3  timeUnit  Ljava/util/concurrent/TimeUnit;
      Exception table:
        from    to  target  type
           5     6       8  Class java.lang.InterruptedException
           4     7      12  any
           8    11      12  any
          12    13      12  any
    Exceptions:
      throws java.io.IOException
    MethodParameters:
          Name  Flags
      time      
      timeUnit  

  public org.xnio.XnioIoThread getWriteThread();
    descriptor: ()Lorg/xnio/XnioIoThread;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.undertow.protocols.ssl.SslConduit this
         0: .line 490
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.delegate:Lorg/xnio/StreamConnection;
            invokevirtual org.xnio.StreamConnection.getIoThread:()Lorg/xnio/XnioIoThread;
            areturn
        end local 0 // io.undertow.protocols.ssl.SslConduit this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/undertow/protocols/ssl/SslConduit;

  public void setWriteReadyHandler(org.xnio.conduits.WriteReadyHandler);
    descriptor: (Lorg/xnio/conduits/WriteReadyHandler;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // io.undertow.protocols.ssl.SslConduit this
        start local 1 // org.xnio.conduits.WriteReadyHandler handler
         0: .line 495
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.delegate:Lorg/xnio/StreamConnection;
            invokevirtual org.xnio.StreamConnection.getSinkChannel:()Lorg/xnio/conduits/ConduitStreamSinkChannel;
            invokevirtual org.xnio.conduits.ConduitStreamSinkChannel.getConduit:()Lorg/xnio/conduits/StreamSinkConduit;
            aload 0 /* this */
            new io.undertow.protocols.ssl.SslConduit$SslWriteReadyHandler
            dup
            aload 0 /* this */
            aload 1 /* handler */
            invokespecial io.undertow.protocols.ssl.SslConduit$SslWriteReadyHandler.<init>:(Lio/undertow/protocols/ssl/SslConduit;Lorg/xnio/conduits/WriteReadyHandler;)V
            dup_x1
            putfield io.undertow.protocols.ssl.SslConduit.writeReadyHandler:Lio/undertow/protocols/ssl/SslConduit$SslWriteReadyHandler;
            invokeinterface org.xnio.conduits.StreamSinkConduit.setWriteReadyHandler:(Lorg/xnio/conduits/WriteReadyHandler;)V
         1: .line 496
            return
        end local 1 // org.xnio.conduits.WriteReadyHandler handler
        end local 0 // io.undertow.protocols.ssl.SslConduit this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lio/undertow/protocols/ssl/SslConduit;
            0    2     1  handler  Lorg/xnio/conduits/WriteReadyHandler;
    MethodParameters:
         Name  Flags
      handler  

  public void truncateWrites();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=1
        start local 0 // io.undertow.protocols.ssl.SslConduit this
         0: .line 501
            aload 0 /* this */
            invokevirtual io.undertow.protocols.ssl.SslConduit.notifyWriteClosed:()V
         1: .line 502
            goto 5
      StackMap locals:
      StackMap stack: java.lang.Throwable
         2: astore 1
         3: .line 503
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.delegate:Lorg/xnio/StreamConnection;
            invokevirtual org.xnio.StreamConnection.getSinkChannel:()Lorg/xnio/conduits/ConduitStreamSinkChannel;
            invokevirtual org.xnio.conduits.ConduitStreamSinkChannel.close:()V
         4: .line 504
            aload 1
            athrow
         5: .line 503
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.delegate:Lorg/xnio/StreamConnection;
            invokevirtual org.xnio.StreamConnection.getSinkChannel:()Lorg/xnio/conduits/ConduitStreamSinkChannel;
            invokevirtual org.xnio.conduits.ConduitStreamSinkChannel.close:()V
         6: .line 505
            return
        end local 0 // io.undertow.protocols.ssl.SslConduit this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lio/undertow/protocols/ssl/SslConduit;
      Exception table:
        from    to  target  type
           0     2       2  any
    Exceptions:
      throws java.io.IOException

  public boolean flush();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // io.undertow.protocols.ssl.SslConduit this
         0: .line 509
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            sipush 512
            invokestatic org.xnio.Bits.anyAreSet:(II)Z
            ifeq 2
         1: .line 510
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.sink:Lorg/xnio/conduits/StreamSinkConduit;
            invokeinterface org.xnio.conduits.StreamSinkConduit.flush:()Z
            ireturn
         2: .line 512
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.wrappedData:Lio/undertow/connector/PooledByteBuffer;
            ifnull 6
         3: .line 513
            aload 0 /* this */
            aconst_null
            iconst_0
            iconst_0
            invokevirtual io.undertow.protocols.ssl.SslConduit.doWrap:([Ljava/nio/ByteBuffer;II)J
            pop2
         4: .line 514
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.wrappedData:Lio/undertow/connector/PooledByteBuffer;
            ifnull 6
         5: .line 515
            iconst_0
            ireturn
         6: .line 518
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            bipush 64
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 25
         7: .line 519
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            sipush 256
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            ifeq 13
         8: .line 520
            aload 0 /* this */
            dup
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            sipush 256
            ior
            putfield io.undertow.protocols.ssl.SslConduit.state:I
         9: .line 521
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.engine:Ljavax/net/ssl/SSLEngine;
            invokevirtual javax.net.ssl.SSLEngine.closeOutbound:()V
        10: .line 522
            aload 0 /* this */
            aconst_null
            iconst_0
            iconst_0
            invokevirtual io.undertow.protocols.ssl.SslConduit.doWrap:([Ljava/nio/ByteBuffer;II)J
            pop2
        11: .line 523
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.wrappedData:Lio/undertow/connector/PooledByteBuffer;
            ifnull 17
        12: .line 524
            iconst_0
            ireturn
        13: .line 526
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.wrappedData:Lio/undertow/connector/PooledByteBuffer;
            ifnull 17
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            sipush 512
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            ifeq 17
        14: .line 527
            aload 0 /* this */
            aconst_null
            iconst_0
            iconst_0
            invokevirtual io.undertow.protocols.ssl.SslConduit.doWrap:([Ljava/nio/ByteBuffer;II)J
            pop2
        15: .line 528
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.wrappedData:Lio/undertow/connector/PooledByteBuffer;
            ifnull 17
        16: .line 529
            iconst_0
            ireturn
        17: .line 532
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            sipush 512
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            ifeq 21
        18: .line 533
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.sink:Lorg/xnio/conduits/StreamSinkConduit;
            invokeinterface org.xnio.conduits.StreamSinkConduit.terminateWrites:()V
        19: .line 534
            aload 0 /* this */
            dup
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            sipush 512
            ior
            putfield io.undertow.protocols.ssl.SslConduit.state:I
        20: .line 535
            aload 0 /* this */
            invokevirtual io.undertow.protocols.ssl.SslConduit.notifyWriteClosed:()V
        21: .line 537
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.sink:Lorg/xnio/conduits/StreamSinkConduit;
            invokeinterface org.xnio.conduits.StreamSinkConduit.flush:()Z
            istore 1 /* result */
        start local 1 // boolean result
        22: .line 538
            iload 1 /* result */
            ifeq 24
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            sipush 16384
            invokestatic org.xnio.Bits.anyAreSet:(II)Z
            ifeq 24
        23: .line 539
            aload 0 /* this */
            invokevirtual io.undertow.protocols.ssl.SslConduit.closed:()V
        24: .line 541
      StackMap locals: int
      StackMap stack:
            iload 1 /* result */
            ireturn
        end local 1 // boolean result
        25: .line 543
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.sink:Lorg/xnio/conduits/StreamSinkConduit;
            invokeinterface org.xnio.conduits.StreamSinkConduit.flush:()Z
            ireturn
        end local 0 // io.undertow.protocols.ssl.SslConduit this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   26     0    this  Lio/undertow/protocols/ssl/SslConduit;
           22   25     1  result  Z
    Exceptions:
      throws java.io.IOException

  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 // io.undertow.protocols.ssl.SslConduit this
        start local 1 // long position
        start local 3 // long count
        start local 5 // java.nio.channels.FileChannel target
         0: .line 548
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            bipush 32
            invokestatic org.xnio.Bits.anyAreSet:(II)Z
            ifeq 2
         1: .line 549
            ldc -1
            lreturn
         2: .line 551
      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 // io.undertow.protocols.ssl.SslConduit this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    3     0      this  Lio/undertow/protocols/ssl/SslConduit;
            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  
      count     
      target    

  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 // io.undertow.protocols.ssl.SslConduit this
        start local 1 // long count
        start local 3 // java.nio.ByteBuffer throughBuffer
        start local 4 // org.xnio.channels.StreamSinkChannel target
         0: .line 556
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            bipush 32
            invokestatic org.xnio.Bits.anyAreSet:(II)Z
            ifeq 2
         1: .line 557
            ldc -1
            lreturn
         2: .line 559
      StackMap locals:
      StackMap stack:
            new org.xnio.conduits.ConduitReadableByteChannel
            dup
            aload 0 /* this */
            invokespecial org.xnio.conduits.ConduitReadableByteChannel.<init>:(Lorg/xnio/conduits/StreamSourceConduit;)V
            lload 1 /* count */
            aload 3 /* throughBuffer */
            aload 4 /* target */
            invokestatic org.xnio.IoUtils.transfer:(Ljava/nio/channels/ReadableByteChannel;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 // io.undertow.protocols.ssl.SslConduit this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    3     0           this  Lio/undertow/protocols/ssl/SslConduit;
            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          
      throughBuffer  
      target         

  public int read(java.nio.ByteBuffer);
    descriptor: (Ljava/nio/ByteBuffer;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // io.undertow.protocols.ssl.SslConduit this
        start local 1 // java.nio.ByteBuffer dst
         0: .line 564
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            bipush 32
            invokestatic org.xnio.Bits.anyAreSet:(II)Z
            ifeq 2
         1: .line 565
            iconst_m1
            ireturn
         2: .line 567
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            anewarray java.nio.ByteBuffer
            dup
            iconst_0
            aload 1 /* dst */
            aastore
            iconst_0
            iconst_1
            invokevirtual io.undertow.protocols.ssl.SslConduit.doUnwrap:([Ljava/nio/ByteBuffer;II)J
            l2i
            ireturn
        end local 1 // java.nio.ByteBuffer dst
        end local 0 // io.undertow.protocols.ssl.SslConduit this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lio/undertow/protocols/ssl/SslConduit;
            0    3     1   dst  Ljava/nio/ByteBuffer;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      dst   

  public long read(java.nio.ByteBuffer[], int, int);
    descriptor: ([Ljava/nio/ByteBuffer;II)J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // io.undertow.protocols.ssl.SslConduit this
        start local 1 // java.nio.ByteBuffer[] dsts
        start local 2 // int offs
        start local 3 // int len
         0: .line 572
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            bipush 32
            invokestatic org.xnio.Bits.anyAreSet:(II)Z
            ifeq 2
         1: .line 573
            ldc -1
            lreturn
         2: .line 575
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* dsts */
            iload 2 /* offs */
            iload 3 /* len */
            invokevirtual io.undertow.protocols.ssl.SslConduit.doUnwrap:([Ljava/nio/ByteBuffer;II)J
            lreturn
        end local 3 // int len
        end local 2 // int offs
        end local 1 // java.nio.ByteBuffer[] dsts
        end local 0 // io.undertow.protocols.ssl.SslConduit this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lio/undertow/protocols/ssl/SslConduit;
            0    3     1  dsts  [Ljava/nio/ByteBuffer;
            0    3     2  offs  I
            0    3     3   len  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      dsts  
      offs  
      len   

  public org.xnio.XnioWorker getWorker();
    descriptor: ()Lorg/xnio/XnioWorker;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.undertow.protocols.ssl.SslConduit this
         0: .line 580
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.delegate:Lorg/xnio/StreamConnection;
            invokevirtual org.xnio.StreamConnection.getWorker:()Lorg/xnio/XnioWorker;
            areturn
        end local 0 // io.undertow.protocols.ssl.SslConduit this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/undertow/protocols/ssl/SslConduit;

  void notifyWriteClosed();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // io.undertow.protocols.ssl.SslConduit this
         0: .line 584
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            sipush 8192
            invokestatic org.xnio.Bits.anyAreSet:(II)Z
            ifeq 2
         1: .line 585
            return
         2: .line 587
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual io.undertow.protocols.ssl.SslConduit.isWriteResumed:()Z
            ifeq 3
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            sipush 4096
            invokestatic org.xnio.Bits.anyAreSet:(II)Z
            ifeq 3
            iconst_1
            goto 4
      StackMap locals:
      StackMap stack:
         3: iconst_0
      StackMap locals:
      StackMap stack: int
         4: istore 1 /* runListener */
        start local 1 // boolean runListener
         5: .line 588
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.connection:Lio/undertow/protocols/ssl/UndertowSslConnection;
            invokevirtual io.undertow.protocols.ssl.UndertowSslConnection.writeClosed:()Z
            pop
         6: .line 589
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.engine:Ljavax/net/ssl/SSLEngine;
            invokevirtual javax.net.ssl.SSLEngine.closeOutbound:()V
         7: .line 590
            aload 0 /* this */
            dup
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            sipush 8448
            ior
            putfield io.undertow.protocols.ssl.SslConduit.state:I
         8: .line 591
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            sipush 16384
            invokestatic org.xnio.Bits.anyAreSet:(II)Z
            ifeq 10
         9: .line 592
            aload 0 /* this */
            invokevirtual io.undertow.protocols.ssl.SslConduit.closed:()V
        10: .line 594
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            iconst_1
            invokestatic org.xnio.Bits.anyAreSet:(II)Z
            ifeq 12
        11: .line 595
            aload 0 /* this */
            invokevirtual io.undertow.protocols.ssl.SslConduit.notifyReadClosed:()V
        12: .line 597
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            bipush -3
            iand
            putfield io.undertow.protocols.ssl.SslConduit.state:I
        13: .line 599
            iload 1 /* runListener */
            ifeq 15
        14: .line 600
            aload 0 /* this */
            invokevirtual io.undertow.protocols.ssl.SslConduit.runWriteListener:()V
        15: .line 602
      StackMap locals:
      StackMap stack:
            return
        end local 1 // boolean runListener
        end local 0 // io.undertow.protocols.ssl.SslConduit this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   16     0         this  Lio/undertow/protocols/ssl/SslConduit;
            5   16     1  runListener  Z

  void notifyReadClosed();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // io.undertow.protocols.ssl.SslConduit this
         0: .line 605
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            sipush 16384
            invokestatic org.xnio.Bits.anyAreSet:(II)Z
            ifeq 2
         1: .line 606
            return
         2: .line 608
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual io.undertow.protocols.ssl.SslConduit.isReadResumed:()Z
            ifeq 3
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            sipush 4096
            invokestatic org.xnio.Bits.anyAreSet:(II)Z
            ifeq 3
            iconst_1
            goto 4
      StackMap locals:
      StackMap stack:
         3: iconst_0
      StackMap locals:
      StackMap stack: int
         4: istore 1 /* runListener */
        start local 1 // boolean runListener
         5: .line 609
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.connection:Lio/undertow/protocols/ssl/UndertowSslConnection;
            invokevirtual io.undertow.protocols.ssl.UndertowSslConnection.readClosed:()Z
            pop
         6: .line 612
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.engine:Ljavax/net/ssl/SSLEngine;
            invokevirtual javax.net.ssl.SSLEngine.closeInbound:()V
         7: .line 613
            goto 12
      StackMap locals: io.undertow.protocols.ssl.SslConduit int
      StackMap stack: javax.net.ssl.SSLException
         8: astore 2 /* e */
        start local 2 // javax.net.ssl.SSLException e
         9: .line 614
            getstatic io.undertow.UndertowLogger.REQUEST_IO_LOGGER:Lio/undertow/UndertowLogger;
            ldc "Exception closing read side of SSL channel"
            aload 2 /* e */
            invokeinterface io.undertow.UndertowLogger.trace:(Ljava/lang/Object;Ljava/lang/Throwable;)V
        10: .line 615
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            sipush 8192
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            ifeq 12
            aload 0 /* this */
            invokevirtual io.undertow.protocols.ssl.SslConduit.isWriteResumed:()Z
            ifeq 12
        11: .line 616
            aload 0 /* this */
            invokevirtual io.undertow.protocols.ssl.SslConduit.runWriteListener:()V
        end local 2 // javax.net.ssl.SSLException e
        12: .line 620
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            sipush 16544
            ior
            putfield io.undertow.protocols.ssl.SslConduit.state:I
        13: .line 621
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            sipush 8192
            invokestatic org.xnio.Bits.anyAreSet:(II)Z
            ifeq 15
        14: .line 622
            aload 0 /* this */
            invokevirtual io.undertow.protocols.ssl.SslConduit.closed:()V
        15: .line 624
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            iconst_2
            invokestatic org.xnio.Bits.anyAreSet:(II)Z
            ifeq 17
        16: .line 625
            aload 0 /* this */
            invokevirtual io.undertow.protocols.ssl.SslConduit.notifyWriteClosed:()V
        17: .line 627
      StackMap locals:
      StackMap stack:
            iload 1 /* runListener */
            ifeq 19
        18: .line 628
            aload 0 /* this */
            iconst_0
            invokevirtual io.undertow.protocols.ssl.SslConduit.runReadListener:(Z)V
        19: .line 630
      StackMap locals:
      StackMap stack:
            return
        end local 1 // boolean runListener
        end local 0 // io.undertow.protocols.ssl.SslConduit this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   20     0         this  Lio/undertow/protocols/ssl/SslConduit;
            5   20     1  runListener  Z
            9   12     2            e  Ljavax/net/ssl/SSLException;
      Exception table:
        from    to  target  type
           6     7       8  Class javax.net.ssl.SSLException

  public void startHandshake();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // io.undertow.protocols.ssl.SslConduit this
         0: .line 633
            aload 0 /* this */
            dup
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            iconst_1
            ior
            putfield io.undertow.protocols.ssl.SslConduit.state:I
         1: .line 634
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.engine:Ljavax/net/ssl/SSLEngine;
            invokevirtual javax.net.ssl.SSLEngine.beginHandshake:()V
         2: .line 635
            return
        end local 0 // io.undertow.protocols.ssl.SslConduit this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lio/undertow/protocols/ssl/SslConduit;
    Exceptions:
      throws javax.net.ssl.SSLException

  public javax.net.ssl.SSLSession getSslSession();
    descriptor: ()Ljavax/net/ssl/SSLSession;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.undertow.protocols.ssl.SslConduit this
         0: .line 638
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.engine:Ljavax/net/ssl/SSLEngine;
            invokevirtual javax.net.ssl.SSLEngine.getSession:()Ljavax/net/ssl/SSLSession;
            areturn
        end local 0 // io.undertow.protocols.ssl.SslConduit this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/undertow/protocols/ssl/SslConduit;

  private void doHandshake();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // io.undertow.protocols.ssl.SslConduit this
         0: .line 648
            aload 0 /* this */
            aconst_null
            iconst_0
            iconst_0
            invokevirtual io.undertow.protocols.ssl.SslConduit.doUnwrap:([Ljava/nio/ByteBuffer;II)J
            pop2
         1: .line 649
            aload 0 /* this */
            aconst_null
            iconst_0
            iconst_0
            invokevirtual io.undertow.protocols.ssl.SslConduit.doWrap:([Ljava/nio/ByteBuffer;II)J
            pop2
         2: .line 650
            return
        end local 0 // io.undertow.protocols.ssl.SslConduit this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lio/undertow/protocols/ssl/SslConduit;
    Exceptions:
      throws java.io.IOException

  private long doUnwrap(java.nio.ByteBuffer[], int, int);
    descriptor: ([Ljava/nio/ByteBuffer;II)J
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=17, args_size=4
        start local 0 // io.undertow.protocols.ssl.SslConduit this
        start local 1 // java.nio.ByteBuffer[] userBuffers
        start local 2 // int off
        start local 3 // int len
         0: .line 664
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            sipush 4096
            invokestatic org.xnio.Bits.anyAreSet:(II)Z
            ifeq 2
         1: .line 665
            new java.nio.channels.ClosedChannelException
            dup
            invokespecial java.nio.channels.ClosedChannelException.<init>:()V
            athrow
         2: .line 667
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.outstandingTasks:I
            ifle 4
         3: .line 668
            lconst_0
            lreturn
         4: .line 670
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            iconst_1
            invokestatic org.xnio.Bits.anyAreSet:(II)Z
            ifeq 8
         5: .line 671
            aload 0 /* this */
            aconst_null
            iconst_0
            iconst_0
            invokevirtual io.undertow.protocols.ssl.SslConduit.doWrap:([Ljava/nio/ByteBuffer;II)J
            pop2
         6: .line 672
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            iconst_2
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            ifeq 8
         7: .line 673
            lconst_0
            lreturn
         8: .line 676
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 4 /* bytesProduced */
        start local 4 // boolean bytesProduced
         9: .line 677
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.unwrappedData:Lio/undertow/connector/PooledByteBuffer;
            astore 5 /* unwrappedData */
        start local 5 // io.undertow.connector.PooledByteBuffer unwrappedData
        10: .line 679
            aload 5 /* unwrappedData */
            ifnull 19
        11: .line 680
            aload 1 /* userBuffers */
            ifnull 19
        12: .line 681
            aload 1 /* userBuffers */
            iload 2 /* off */
            iload 3 /* len */
            aload 5 /* unwrappedData */
            invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
            invokestatic org.xnio.Buffers.copy:([Ljava/nio/ByteBuffer;IILjava/nio/ByteBuffer;)I
            i2l
            lstore 6 /* copied */
        start local 6 // long copied
        13: .line 682
            aload 5 /* unwrappedData */
            invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
            invokevirtual java.nio.ByteBuffer.hasRemaining:()Z
            ifne 16
        14: .line 683
            aload 5 /* unwrappedData */
            invokeinterface io.undertow.connector.PooledByteBuffer.close:()V
        15: .line 684
            aload 0 /* this */
            aconst_null
            putfield io.undertow.protocols.ssl.SslConduit.unwrappedData:Lio/undertow/connector/PooledByteBuffer;
        16: .line 686
      StackMap locals: int io.undertow.connector.PooledByteBuffer long
      StackMap stack:
            lload 6 /* copied */
            lconst_0
            lcmp
            ifle 18
        17: .line 687
            aload 0 /* this */
            iconst_0
            putfield io.undertow.protocols.ssl.SslConduit.readListenerInvocationCount:I
        18: .line 689
      StackMap locals:
      StackMap stack:
            lload 6 /* copied */
            lreturn
        end local 6 // long copied
        19: .line 697
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            bipush 16
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            ifeq 68
        20: .line 698
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.dataToUnwrap:Lio/undertow/connector/PooledByteBuffer;
            ifnonnull 22
        21: .line 699
            aload 0 /* this */
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.bufferPool:Lio/undertow/connector/ByteBufferPool;
            invokeinterface io.undertow.connector.ByteBufferPool.allocate:()Lio/undertow/connector/PooledByteBuffer;
            putfield io.undertow.protocols.ssl.SslConduit.dataToUnwrap:Lio/undertow/connector/PooledByteBuffer;
        22: .line 703
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.source:Lorg/xnio/conduits/StreamSourceConduit;
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.dataToUnwrap:Lio/undertow/connector/PooledByteBuffer;
            invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
            invokeinterface org.xnio.conduits.StreamSourceConduit.read:(Ljava/nio/ByteBuffer;)I
            istore 7 /* res */
        start local 7 // int res
        23: .line 704
            goto 28
        end local 7 // int res
      StackMap locals:
      StackMap stack: java.lang.Throwable
        24: astore 8 /* e */
        start local 8 // java.lang.Throwable e
        25: .line 705
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.dataToUnwrap:Lio/undertow/connector/PooledByteBuffer;
            invokeinterface io.undertow.connector.PooledByteBuffer.close:()V
        26: .line 706
            aload 0 /* this */
            aconst_null
            putfield io.undertow.protocols.ssl.SslConduit.dataToUnwrap:Lio/undertow/connector/PooledByteBuffer;
        27: .line 707
            aload 8 /* e */
            athrow
        end local 8 // java.lang.Throwable e
        start local 7 // int res
        28: .line 709
      StackMap locals: io.undertow.protocols.ssl.SslConduit java.nio.ByteBuffer[] int int int io.undertow.connector.PooledByteBuffer top int
      StackMap stack:
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.dataToUnwrap:Lio/undertow/connector/PooledByteBuffer;
            invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
            invokevirtual java.nio.ByteBuffer.flip:()Ljava/nio/Buffer;
            pop
        29: .line 710
            iload 7 /* res */
            iconst_m1
            if_icmpne 50
        30: .line 711
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.dataToUnwrap:Lio/undertow/connector/PooledByteBuffer;
            invokeinterface io.undertow.connector.PooledByteBuffer.close:()V
        31: .line 712
            aload 0 /* this */
            aconst_null
            putfield io.undertow.protocols.ssl.SslConduit.dataToUnwrap:Lio/undertow/connector/PooledByteBuffer;
        32: .line 713
            aload 0 /* this */
            invokevirtual io.undertow.protocols.ssl.SslConduit.notifyReadClosed:()V
        33: .line 827
            iconst_0
            istore 16 /* requiresListenerInvocation */
        start local 16 // boolean requiresListenerInvocation
        34: .line 829
            iload 4 /* bytesProduced */
            ifne 35
            aload 5 /* unwrappedData */
            ifnull 36
            aload 5 /* unwrappedData */
            invokeinterface io.undertow.connector.PooledByteBuffer.isOpen:()Z
            ifeq 36
            aload 5 /* unwrappedData */
            invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
            invokevirtual java.nio.ByteBuffer.hasRemaining:()Z
            ifeq 36
        35: .line 830
      StackMap locals: io.undertow.protocols.ssl.SslConduit java.nio.ByteBuffer[] int int int io.undertow.connector.PooledByteBuffer top int top top top top top top top top int
      StackMap stack:
            iconst_1
            istore 16 /* requiresListenerInvocation */
        36: .line 832
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.dataToUnwrap:Lio/undertow/connector/PooledByteBuffer;
            ifnull 46
        37: .line 834
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.dataToUnwrap:Lio/undertow/connector/PooledByteBuffer;
            invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
            invokevirtual java.nio.ByteBuffer.hasRemaining:()Z
            ifne 42
        38: .line 835
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.dataToUnwrap:Lio/undertow/connector/PooledByteBuffer;
            invokeinterface io.undertow.connector.PooledByteBuffer.close:()V
        39: .line 836
            aload 0 /* this */
            aconst_null
            putfield io.undertow.protocols.ssl.SslConduit.dataToUnwrap:Lio/undertow/connector/PooledByteBuffer;
        40: .line 837
            aload 0 /* this */
            dup
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            bipush -17
            iand
            putfield io.undertow.protocols.ssl.SslConduit.state:I
        41: .line 838
            goto 46
      StackMap locals:
      StackMap stack:
        42: aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            bipush 16
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            ifeq 45
        43: .line 840
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.dataToUnwrap:Lio/undertow/connector/PooledByteBuffer;
            invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
            invokevirtual java.nio.ByteBuffer.compact:()Ljava/nio/ByteBuffer;
            pop
        44: .line 841
            goto 46
        45: .line 843
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 16 /* requiresListenerInvocation */
        46: .line 848
      StackMap locals:
      StackMap stack:
            iload 16 /* requiresListenerInvocation */
            ifeq 49
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            iconst_4
            invokestatic org.xnio.Bits.anyAreSet:(II)Z
            ifne 47
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            bipush 10
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 49
      StackMap locals:
      StackMap stack:
        47: aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.invokingReadListenerHandshake:Z
            ifne 49
        48: .line 849
            aload 0 /* this */
            iconst_0
            invokevirtual io.undertow.protocols.ssl.SslConduit.runReadListener:(Z)V
        end local 16 // boolean requiresListenerInvocation
        49: .line 714
      StackMap locals: io.undertow.protocols.ssl.SslConduit java.nio.ByteBuffer[] int int int io.undertow.connector.PooledByteBuffer top int
      StackMap stack:
            ldc -1
            lreturn
        50: .line 715
      StackMap locals:
      StackMap stack:
            iload 7 /* res */
            ifne 68
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.engine:Ljavax/net/ssl/SSLEngine;
            invokevirtual javax.net.ssl.SSLEngine.getHandshakeStatus:()Ljavax/net/ssl/SSLEngineResult$HandshakeStatus;
            getstatic javax.net.ssl.SSLEngineResult$HandshakeStatus.FINISHED:Ljavax/net/ssl/SSLEngineResult$HandshakeStatus;
            if_acmpne 68
        51: .line 827
            iconst_0
            istore 16 /* requiresListenerInvocation */
        start local 16 // boolean requiresListenerInvocation
        52: .line 829
            iload 4 /* bytesProduced */
            ifne 53
            aload 5 /* unwrappedData */
            ifnull 54
            aload 5 /* unwrappedData */
            invokeinterface io.undertow.connector.PooledByteBuffer.isOpen:()Z
            ifeq 54
            aload 5 /* unwrappedData */
            invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
            invokevirtual java.nio.ByteBuffer.hasRemaining:()Z
            ifeq 54
        53: .line 830
      StackMap locals: io.undertow.protocols.ssl.SslConduit java.nio.ByteBuffer[] int int int io.undertow.connector.PooledByteBuffer top int top top top top top top top top int
      StackMap stack:
            iconst_1
            istore 16 /* requiresListenerInvocation */
        54: .line 832
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.dataToUnwrap:Lio/undertow/connector/PooledByteBuffer;
            ifnull 64
        55: .line 834
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.dataToUnwrap:Lio/undertow/connector/PooledByteBuffer;
            invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
            invokevirtual java.nio.ByteBuffer.hasRemaining:()Z
            ifne 60
        56: .line 835
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.dataToUnwrap:Lio/undertow/connector/PooledByteBuffer;
            invokeinterface io.undertow.connector.PooledByteBuffer.close:()V
        57: .line 836
            aload 0 /* this */
            aconst_null
            putfield io.undertow.protocols.ssl.SslConduit.dataToUnwrap:Lio/undertow/connector/PooledByteBuffer;
        58: .line 837
            aload 0 /* this */
            dup
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            bipush -17
            iand
            putfield io.undertow.protocols.ssl.SslConduit.state:I
        59: .line 838
            goto 64
      StackMap locals:
      StackMap stack:
        60: aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            bipush 16
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            ifeq 63
        61: .line 840
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.dataToUnwrap:Lio/undertow/connector/PooledByteBuffer;
            invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
            invokevirtual java.nio.ByteBuffer.compact:()Ljava/nio/ByteBuffer;
            pop
        62: .line 841
            goto 64
        63: .line 843
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 16 /* requiresListenerInvocation */
        64: .line 848
      StackMap locals:
      StackMap stack:
            iload 16 /* requiresListenerInvocation */
            ifeq 67
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            iconst_4
            invokestatic org.xnio.Bits.anyAreSet:(II)Z
            ifne 65
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            bipush 10
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 67
      StackMap locals:
      StackMap stack:
        65: aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.invokingReadListenerHandshake:Z
            ifne 67
        66: .line 849
            aload 0 /* this */
            iconst_0
            invokevirtual io.undertow.protocols.ssl.SslConduit.runReadListener:(Z)V
        end local 16 // boolean requiresListenerInvocation
        67: .line 716
      StackMap locals: io.undertow.protocols.ssl.SslConduit java.nio.ByteBuffer[] int int int io.undertow.connector.PooledByteBuffer top int
      StackMap stack:
            lconst_0
            lreturn
        end local 7 // int res
        68: .line 719
      StackMap locals: io.undertow.protocols.ssl.SslConduit java.nio.ByteBuffer[] int int int io.undertow.connector.PooledByteBuffer
      StackMap stack:
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.dataToUnwrap:Lio/undertow/connector/PooledByteBuffer;
            invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
            invokevirtual java.nio.ByteBuffer.remaining:()I
            istore 6 /* dataToUnwrapLength */
        start local 6 // int dataToUnwrapLength
        69: .line 721
            lconst_0
            lstore 7 /* original */
        start local 7 // long original
        70: .line 722
            aload 1 /* userBuffers */
            ifnull 72
        71: .line 723
            aload 1 /* userBuffers */
            invokestatic org.xnio.Buffers.remaining:([Ljava/nio/Buffer;)J
            lstore 7 /* original */
        72: .line 729
      StackMap locals: int long
      StackMap stack:
            iconst_0
            istore 10 /* unwrapBufferUsed */
        start local 10 // boolean unwrapBufferUsed
        73: .line 731
            aload 1 /* userBuffers */
            ifnull 86
        74: .line 732
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.engine:Ljavax/net/ssl/SSLEngine;
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.dataToUnwrap:Lio/undertow/connector/PooledByteBuffer;
            invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
            aload 1 /* userBuffers */
            iload 2 /* off */
            iload 3 /* len */
            invokevirtual javax.net.ssl.SSLEngine.unwrap:(Ljava/nio/ByteBuffer;[Ljava/nio/ByteBuffer;II)Ljavax/net/ssl/SSLEngineResult;
            astore 9 /* result */
        start local 9 // javax.net.ssl.SSLEngineResult result
        75: .line 733
            aload 9 /* result */
            invokevirtual javax.net.ssl.SSLEngineResult.getStatus:()Ljavax/net/ssl/SSLEngineResult$Status;
            getstatic javax.net.ssl.SSLEngineResult$Status.BUFFER_OVERFLOW:Ljavax/net/ssl/SSLEngineResult$Status;
            if_acmpne 82
        76: .line 736
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.bufferPool:Lio/undertow/connector/ByteBufferPool;
            invokeinterface io.undertow.connector.ByteBufferPool.allocate:()Lio/undertow/connector/PooledByteBuffer;
            astore 5 /* unwrappedData */
        77: .line 737
            iload 3 /* len */
            iconst_1
            iadd
            anewarray java.nio.ByteBuffer
            astore 11 /* d */
        start local 11 // java.nio.ByteBuffer[] d
        78: .line 738
            aload 1 /* userBuffers */
            iload 2 /* off */
            aload 11 /* d */
            iconst_0
            iload 3 /* len */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        79: .line 739
            aload 11 /* d */
            iload 3 /* len */
            aload 5 /* unwrappedData */
            invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
            aastore
        80: .line 740
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.engine:Ljavax/net/ssl/SSLEngine;
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.dataToUnwrap:Lio/undertow/connector/PooledByteBuffer;
            invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
            aload 11 /* d */
            invokevirtual javax.net.ssl.SSLEngine.unwrap:(Ljava/nio/ByteBuffer;[Ljava/nio/ByteBuffer;)Ljavax/net/ssl/SSLEngineResult;
            astore 9 /* result */
        81: .line 741
            iconst_1
            istore 10 /* unwrapBufferUsed */
        end local 11 // java.nio.ByteBuffer[] d
        82: .line 743
      StackMap locals: javax.net.ssl.SSLEngineResult int
      StackMap stack:
            aload 9 /* result */
            invokevirtual javax.net.ssl.SSLEngineResult.bytesProduced:()I
            ifle 83
            iconst_1
            goto 84
      StackMap locals:
      StackMap stack:
        83: iconst_0
      StackMap locals:
      StackMap stack: int
        84: istore 4 /* bytesProduced */
        85: .line 744
            goto 104
        end local 9 // javax.net.ssl.SSLEngineResult result
        86: .line 745
      StackMap locals: io.undertow.protocols.ssl.SslConduit java.nio.ByteBuffer[] int int int io.undertow.connector.PooledByteBuffer int long top int
      StackMap stack:
            iconst_1
            istore 10 /* unwrapBufferUsed */
        87: .line 746
            aload 5 /* unwrappedData */
            ifnonnull 90
        88: .line 747
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.bufferPool:Lio/undertow/connector/ByteBufferPool;
            invokeinterface io.undertow.connector.ByteBufferPool.allocate:()Lio/undertow/connector/PooledByteBuffer;
            astore 5 /* unwrappedData */
        89: .line 748
            goto 91
        90: .line 749
      StackMap locals:
      StackMap stack:
            aload 5 /* unwrappedData */
            invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
            invokevirtual java.nio.ByteBuffer.compact:()Ljava/nio/ByteBuffer;
            pop
        91: .line 751
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.engine:Ljavax/net/ssl/SSLEngine;
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.dataToUnwrap:Lio/undertow/connector/PooledByteBuffer;
            invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
            aload 5 /* unwrappedData */
            invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
            invokevirtual javax.net.ssl.SSLEngine.unwrap:(Ljava/nio/ByteBuffer;Ljava/nio/ByteBuffer;)Ljavax/net/ssl/SSLEngineResult;
            astore 9 /* result */
        start local 9 // javax.net.ssl.SSLEngineResult result
        92: .line 752
            aload 9 /* result */
            invokevirtual javax.net.ssl.SSLEngineResult.bytesProduced:()I
            ifle 93
            iconst_1
            goto 94
      StackMap locals: io.undertow.protocols.ssl.SslConduit java.nio.ByteBuffer[] int int int io.undertow.connector.PooledByteBuffer int long javax.net.ssl.SSLEngineResult int
      StackMap stack:
        93: iconst_0
      StackMap locals:
      StackMap stack: int
        94: istore 4 /* bytesProduced */
        95: .line 754
            goto 104
        end local 9 // javax.net.ssl.SSLEngineResult result
      StackMap locals: io.undertow.protocols.ssl.SslConduit java.nio.ByteBuffer[] int int int io.undertow.connector.PooledByteBuffer int long top int
      StackMap stack: java.lang.Throwable
        96: astore 12
        97: .line 755
            iload 10 /* unwrapBufferUsed */
            ifeq 102
        98: .line 756
            aload 5 /* unwrappedData */
            invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
            invokevirtual java.nio.ByteBuffer.flip:()Ljava/nio/Buffer;
            pop
        99: .line 757
            aload 5 /* unwrappedData */
            invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
            invokevirtual java.nio.ByteBuffer.hasRemaining:()Z
            ifne 102
       100: .line 758
            aload 5 /* unwrappedData */
            invokeinterface io.undertow.connector.PooledByteBuffer.close:()V
       101: .line 759
            aconst_null
            astore 5 /* unwrappedData */
       102: .line 762
      StackMap locals: io.undertow.protocols.ssl.SslConduit java.nio.ByteBuffer[] int int int io.undertow.connector.PooledByteBuffer int long top int top java.lang.Throwable
      StackMap stack:
            aload 0 /* this */
            aload 5 /* unwrappedData */
            putfield io.undertow.protocols.ssl.SslConduit.unwrappedData:Lio/undertow/connector/PooledByteBuffer;
       103: .line 763
            aload 12
            athrow
        start local 9 // javax.net.ssl.SSLEngineResult result
       104: .line 755
      StackMap locals: io.undertow.protocols.ssl.SslConduit java.nio.ByteBuffer[] int int int io.undertow.connector.PooledByteBuffer int long javax.net.ssl.SSLEngineResult int
      StackMap stack:
            iload 10 /* unwrapBufferUsed */
            ifeq 109
       105: .line 756
            aload 5 /* unwrappedData */
            invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
            invokevirtual java.nio.ByteBuffer.flip:()Ljava/nio/Buffer;
            pop
       106: .line 757
            aload 5 /* unwrappedData */
            invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
            invokevirtual java.nio.ByteBuffer.hasRemaining:()Z
            ifne 109
       107: .line 758
            aload 5 /* unwrappedData */
            invokeinterface io.undertow.connector.PooledByteBuffer.close:()V
       108: .line 759
            aconst_null
            astore 5 /* unwrappedData */
       109: .line 762
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 5 /* unwrappedData */
            putfield io.undertow.protocols.ssl.SslConduit.unwrappedData:Lio/undertow/connector/PooledByteBuffer;
       110: .line 765
            aload 0 /* this */
            aload 9 /* result */
            invokevirtual io.undertow.protocols.ssl.SslConduit.handleHandshakeResult:(Ljavax/net/ssl/SSLEngineResult;)Z
            ifne 132
       111: .line 766
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.dataToUnwrap:Lio/undertow/connector/PooledByteBuffer;
            invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
            invokevirtual java.nio.ByteBuffer.hasRemaining:()Z
            ifeq 114
            aload 9 /* result */
            invokevirtual javax.net.ssl.SSLEngineResult.getStatus:()Ljavax/net/ssl/SSLEngineResult$Status;
            getstatic javax.net.ssl.SSLEngineResult$Status.BUFFER_UNDERFLOW:Ljavax/net/ssl/SSLEngineResult$Status;
            if_acmpeq 114
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.dataToUnwrap:Lio/undertow/connector/PooledByteBuffer;
            invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
            invokevirtual java.nio.ByteBuffer.remaining:()I
            iload 6 /* dataToUnwrapLength */
            if_icmpeq 114
       112: .line 767
            aload 0 /* this */
            dup
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            bipush 16
            ior
            putfield io.undertow.protocols.ssl.SslConduit.state:I
       113: .line 768
            goto 115
       114: .line 769
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            bipush -17
            iand
            putfield io.undertow.protocols.ssl.SslConduit.state:I
       115: .line 827
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 16 /* requiresListenerInvocation */
        start local 16 // boolean requiresListenerInvocation
       116: .line 829
            iload 4 /* bytesProduced */
            ifne 117
            aload 5 /* unwrappedData */
            ifnull 118
            aload 5 /* unwrappedData */
            invokeinterface io.undertow.connector.PooledByteBuffer.isOpen:()Z
            ifeq 118
            aload 5 /* unwrappedData */
            invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
            invokevirtual java.nio.ByteBuffer.hasRemaining:()Z
            ifeq 118
       117: .line 830
      StackMap locals: io.undertow.protocols.ssl.SslConduit java.nio.ByteBuffer[] int int int io.undertow.connector.PooledByteBuffer int long javax.net.ssl.SSLEngineResult int top top top top top int
      StackMap stack:
            iconst_1
            istore 16 /* requiresListenerInvocation */
       118: .line 832
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.dataToUnwrap:Lio/undertow/connector/PooledByteBuffer;
            ifnull 128
       119: .line 834
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.dataToUnwrap:Lio/undertow/connector/PooledByteBuffer;
            invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
            invokevirtual java.nio.ByteBuffer.hasRemaining:()Z
            ifne 124
       120: .line 835
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.dataToUnwrap:Lio/undertow/connector/PooledByteBuffer;
            invokeinterface io.undertow.connector.PooledByteBuffer.close:()V
       121: .line 836
            aload 0 /* this */
            aconst_null
            putfield io.undertow.protocols.ssl.SslConduit.dataToUnwrap:Lio/undertow/connector/PooledByteBuffer;
       122: .line 837
            aload 0 /* this */
            dup
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            bipush -17
            iand
            putfield io.undertow.protocols.ssl.SslConduit.state:I
       123: .line 838
            goto 128
      StackMap locals:
      StackMap stack:
       124: aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            bipush 16
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            ifeq 127
       125: .line 840
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.dataToUnwrap:Lio/undertow/connector/PooledByteBuffer;
            invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
            invokevirtual java.nio.ByteBuffer.compact:()Ljava/nio/ByteBuffer;
            pop
       126: .line 841
            goto 128
       127: .line 843
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 16 /* requiresListenerInvocation */
       128: .line 848
      StackMap locals:
      StackMap stack:
            iload 16 /* requiresListenerInvocation */
            ifeq 131
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            iconst_4
            invokestatic org.xnio.Bits.anyAreSet:(II)Z
            ifne 129
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            bipush 10
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 131
      StackMap locals:
      StackMap stack:
       129: aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.invokingReadListenerHandshake:Z
            ifne 131
       130: .line 849
            aload 0 /* this */
            iconst_0
            invokevirtual io.undertow.protocols.ssl.SslConduit.runReadListener:(Z)V
        end local 16 // boolean requiresListenerInvocation
       131: .line 771
      StackMap locals: io.undertow.protocols.ssl.SslConduit java.nio.ByteBuffer[] int int int io.undertow.connector.PooledByteBuffer int long javax.net.ssl.SSLEngineResult int
      StackMap stack:
            lconst_0
            lreturn
       132: .line 773
      StackMap locals:
      StackMap stack:
            aload 9 /* result */
            invokevirtual javax.net.ssl.SSLEngineResult.getStatus:()Ljavax/net/ssl/SSLEngineResult$Status;
            getstatic javax.net.ssl.SSLEngineResult$Status.CLOSED:Ljavax/net/ssl/SSLEngineResult$Status;
            if_acmpne 154
       133: .line 774
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.dataToUnwrap:Lio/undertow/connector/PooledByteBuffer;
            ifnull 136
       134: .line 775
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.dataToUnwrap:Lio/undertow/connector/PooledByteBuffer;
            invokeinterface io.undertow.connector.PooledByteBuffer.close:()V
       135: .line 776
            aload 0 /* this */
            aconst_null
            putfield io.undertow.protocols.ssl.SslConduit.dataToUnwrap:Lio/undertow/connector/PooledByteBuffer;
       136: .line 778
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual io.undertow.protocols.ssl.SslConduit.notifyReadClosed:()V
       137: .line 827
            iconst_0
            istore 16 /* requiresListenerInvocation */
        start local 16 // boolean requiresListenerInvocation
       138: .line 829
            iload 4 /* bytesProduced */
            ifne 139
            aload 5 /* unwrappedData */
            ifnull 140
            aload 5 /* unwrappedData */
            invokeinterface io.undertow.connector.PooledByteBuffer.isOpen:()Z
            ifeq 140
            aload 5 /* unwrappedData */
            invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
            invokevirtual java.nio.ByteBuffer.hasRemaining:()Z
            ifeq 140
       139: .line 830
      StackMap locals: io.undertow.protocols.ssl.SslConduit java.nio.ByteBuffer[] int int int io.undertow.connector.PooledByteBuffer int long javax.net.ssl.SSLEngineResult int top top top top top int
      StackMap stack:
            iconst_1
            istore 16 /* requiresListenerInvocation */
       140: .line 832
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.dataToUnwrap:Lio/undertow/connector/PooledByteBuffer;
            ifnull 150
       141: .line 834
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.dataToUnwrap:Lio/undertow/connector/PooledByteBuffer;
            invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
            invokevirtual java.nio.ByteBuffer.hasRemaining:()Z
            ifne 146
       142: .line 835
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.dataToUnwrap:Lio/undertow/connector/PooledByteBuffer;
            invokeinterface io.undertow.connector.PooledByteBuffer.close:()V
       143: .line 836
            aload 0 /* this */
            aconst_null
            putfield io.undertow.protocols.ssl.SslConduit.dataToUnwrap:Lio/undertow/connector/PooledByteBuffer;
       144: .line 837
            aload 0 /* this */
            dup
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            bipush -17
            iand
            putfield io.undertow.protocols.ssl.SslConduit.state:I
       145: .line 838
            goto 150
      StackMap locals:
      StackMap stack:
       146: aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            bipush 16
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            ifeq 149
       147: .line 840
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.dataToUnwrap:Lio/undertow/connector/PooledByteBuffer;
            invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
            invokevirtual java.nio.ByteBuffer.compact:()Ljava/nio/ByteBuffer;
            pop
       148: .line 841
            goto 150
       149: .line 843
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 16 /* requiresListenerInvocation */
       150: .line 848
      StackMap locals:
      StackMap stack:
            iload 16 /* requiresListenerInvocation */
            ifeq 153
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            iconst_4
            invokestatic org.xnio.Bits.anyAreSet:(II)Z
            ifne 151
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            bipush 10
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 153
      StackMap locals:
      StackMap stack:
       151: aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.invokingReadListenerHandshake:Z
            ifne 153
       152: .line 849
            aload 0 /* this */
            iconst_0
            invokevirtual io.undertow.protocols.ssl.SslConduit.runReadListener:(Z)V
        end local 16 // boolean requiresListenerInvocation
       153: .line 779
      StackMap locals: io.undertow.protocols.ssl.SslConduit java.nio.ByteBuffer[] int int int io.undertow.connector.PooledByteBuffer int long javax.net.ssl.SSLEngineResult int
      StackMap stack:
            ldc -1
            lreturn
       154: .line 781
      StackMap locals:
      StackMap stack:
            aload 9 /* result */
            invokevirtual javax.net.ssl.SSLEngineResult.getStatus:()Ljavax/net/ssl/SSLEngineResult$Status;
            getstatic javax.net.ssl.SSLEngineResult$Status.BUFFER_UNDERFLOW:Ljavax/net/ssl/SSLEngineResult$Status;
            if_acmpne 157
       155: .line 782
            aload 0 /* this */
            dup
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            bipush -17
            iand
            putfield io.undertow.protocols.ssl.SslConduit.state:I
       156: .line 783
            goto 165
      StackMap locals:
      StackMap stack:
       157: aload 9 /* result */
            invokevirtual javax.net.ssl.SSLEngineResult.getStatus:()Ljavax/net/ssl/SSLEngineResult$Status;
            getstatic javax.net.ssl.SSLEngineResult$Status.BUFFER_OVERFLOW:Ljavax/net/ssl/SSLEngineResult$Status;
            if_acmpne 161
       158: .line 784
            getstatic io.undertow.UndertowLogger.REQUEST_LOGGER:Lio/undertow/UndertowLogger;
            aload 0 /* this */
            invokeinterface io.undertow.UndertowLogger.sslBufferOverflow:(Lio/undertow/protocols/ssl/SslConduit;)V
       159: .line 785
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.delegate:Lorg/xnio/StreamConnection;
            invokestatic org.xnio.IoUtils.safeClose:(Ljava/io/Closeable;)V
       160: .line 786
            goto 165
      StackMap locals:
      StackMap stack:
       161: aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.dataToUnwrap:Lio/undertow/connector/PooledByteBuffer;
            invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
            invokevirtual java.nio.ByteBuffer.hasRemaining:()Z
            ifeq 164
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.dataToUnwrap:Lio/undertow/connector/PooledByteBuffer;
            invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
            invokevirtual java.nio.ByteBuffer.remaining:()I
            iload 6 /* dataToUnwrapLength */
            if_icmpeq 164
       162: .line 787
            aload 0 /* this */
            dup
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            bipush 16
            ior
            putfield io.undertow.protocols.ssl.SslConduit.state:I
       163: .line 788
            goto 165
       164: .line 789
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            bipush -17
            iand
            putfield io.undertow.protocols.ssl.SslConduit.state:I
       165: .line 791
      StackMap locals:
      StackMap stack:
            aload 1 /* userBuffers */
            ifnonnull 183
       166: .line 827
            iconst_0
            istore 16 /* requiresListenerInvocation */
        start local 16 // boolean requiresListenerInvocation
       167: .line 829
            iload 4 /* bytesProduced */
            ifne 168
            aload 5 /* unwrappedData */
            ifnull 169
            aload 5 /* unwrappedData */
            invokeinterface io.undertow.connector.PooledByteBuffer.isOpen:()Z
            ifeq 169
            aload 5 /* unwrappedData */
            invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
            invokevirtual java.nio.ByteBuffer.hasRemaining:()Z
            ifeq 169
       168: .line 830
      StackMap locals: io.undertow.protocols.ssl.SslConduit java.nio.ByteBuffer[] int int int io.undertow.connector.PooledByteBuffer int long javax.net.ssl.SSLEngineResult int top top top top top int
      StackMap stack:
            iconst_1
            istore 16 /* requiresListenerInvocation */
       169: .line 832
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.dataToUnwrap:Lio/undertow/connector/PooledByteBuffer;
            ifnull 179
       170: .line 834
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.dataToUnwrap:Lio/undertow/connector/PooledByteBuffer;
            invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
            invokevirtual java.nio.ByteBuffer.hasRemaining:()Z
            ifne 175
       171: .line 835
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.dataToUnwrap:Lio/undertow/connector/PooledByteBuffer;
            invokeinterface io.undertow.connector.PooledByteBuffer.close:()V
       172: .line 836
            aload 0 /* this */
            aconst_null
            putfield io.undertow.protocols.ssl.SslConduit.dataToUnwrap:Lio/undertow/connector/PooledByteBuffer;
       173: .line 837
            aload 0 /* this */
            dup
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            bipush -17
            iand
            putfield io.undertow.protocols.ssl.SslConduit.state:I
       174: .line 838
            goto 179
      StackMap locals:
      StackMap stack:
       175: aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            bipush 16
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            ifeq 178
       176: .line 840
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.dataToUnwrap:Lio/undertow/connector/PooledByteBuffer;
            invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
            invokevirtual java.nio.ByteBuffer.compact:()Ljava/nio/ByteBuffer;
            pop
       177: .line 841
            goto 179
       178: .line 843
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 16 /* requiresListenerInvocation */
       179: .line 848
      StackMap locals:
      StackMap stack:
            iload 16 /* requiresListenerInvocation */
            ifeq 182
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            iconst_4
            invokestatic org.xnio.Bits.anyAreSet:(II)Z
            ifne 180
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            bipush 10
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 182
      StackMap locals:
      StackMap stack:
       180: aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.invokingReadListenerHandshake:Z
            ifne 182
       181: .line 849
            aload 0 /* this */
            iconst_0
            invokevirtual io.undertow.protocols.ssl.SslConduit.runReadListener:(Z)V
        end local 16 // boolean requiresListenerInvocation
       182: .line 792
      StackMap locals: io.undertow.protocols.ssl.SslConduit java.nio.ByteBuffer[] int int int io.undertow.connector.PooledByteBuffer int long javax.net.ssl.SSLEngineResult int
      StackMap stack:
            lconst_0
            lreturn
       183: .line 794
      StackMap locals:
      StackMap stack:
            lload 7 /* original */
            aload 1 /* userBuffers */
            invokestatic org.xnio.Buffers.remaining:([Ljava/nio/Buffer;)J
            lsub
            lstore 11 /* res */
        start local 11 // long res
       184: .line 795
            lload 11 /* res */
            lconst_0
            lcmp
            ifle 186
       185: .line 797
            aload 0 /* this */
            iconst_0
            putfield io.undertow.protocols.ssl.SslConduit.readListenerInvocationCount:I
       186: .line 799
      StackMap locals: long
      StackMap stack:
            lload 11 /* res */
            lstore 14
       187: .line 827
            iconst_0
            istore 16 /* requiresListenerInvocation */
        start local 16 // boolean requiresListenerInvocation
       188: .line 829
            iload 4 /* bytesProduced */
            ifne 189
            aload 5 /* unwrappedData */
            ifnull 190
            aload 5 /* unwrappedData */
            invokeinterface io.undertow.connector.PooledByteBuffer.isOpen:()Z
            ifeq 190
            aload 5 /* unwrappedData */
            invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
            invokevirtual java.nio.ByteBuffer.hasRemaining:()Z
            ifeq 190
       189: .line 830
      StackMap locals: io.undertow.protocols.ssl.SslConduit java.nio.ByteBuffer[] int int int io.undertow.connector.PooledByteBuffer int long javax.net.ssl.SSLEngineResult int long top long int
      StackMap stack:
            iconst_1
            istore 16 /* requiresListenerInvocation */
       190: .line 832
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.dataToUnwrap:Lio/undertow/connector/PooledByteBuffer;
            ifnull 200
       191: .line 834
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.dataToUnwrap:Lio/undertow/connector/PooledByteBuffer;
            invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
            invokevirtual java.nio.ByteBuffer.hasRemaining:()Z
            ifne 196
       192: .line 835
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.dataToUnwrap:Lio/undertow/connector/PooledByteBuffer;
            invokeinterface io.undertow.connector.PooledByteBuffer.close:()V
       193: .line 836
            aload 0 /* this */
            aconst_null
            putfield io.undertow.protocols.ssl.SslConduit.dataToUnwrap:Lio/undertow/connector/PooledByteBuffer;
       194: .line 837
            aload 0 /* this */
            dup
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            bipush -17
            iand
            putfield io.undertow.protocols.ssl.SslConduit.state:I
       195: .line 838
            goto 200
      StackMap locals:
      StackMap stack:
       196: aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            bipush 16
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            ifeq 199
       197: .line 840
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.dataToUnwrap:Lio/undertow/connector/PooledByteBuffer;
            invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
            invokevirtual java.nio.ByteBuffer.compact:()Ljava/nio/ByteBuffer;
            pop
       198: .line 841
            goto 200
       199: .line 843
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 16 /* requiresListenerInvocation */
       200: .line 848
      StackMap locals:
      StackMap stack:
            iload 16 /* requiresListenerInvocation */
            ifeq 203
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            iconst_4
            invokestatic org.xnio.Bits.anyAreSet:(II)Z
            ifne 201
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            bipush 10
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 203
      StackMap locals:
      StackMap stack:
       201: aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.invokingReadListenerHandshake:Z
            ifne 203
       202: .line 849
            aload 0 /* this */
            iconst_0
            invokevirtual io.undertow.protocols.ssl.SslConduit.runReadListener:(Z)V
        end local 16 // boolean requiresListenerInvocation
       203: .line 799
      StackMap locals:
      StackMap stack:
            lload 14
            lreturn
        end local 11 // long res
        end local 10 // boolean unwrapBufferUsed
        end local 9 // javax.net.ssl.SSLEngineResult result
        end local 7 // long original
        end local 6 // int dataToUnwrapLength
       204: .line 801
      StackMap locals: io.undertow.protocols.ssl.SslConduit java.nio.ByteBuffer[] int int int io.undertow.connector.PooledByteBuffer
      StackMap stack: javax.net.ssl.SSLException
            astore 6 /* e */
        start local 6 // javax.net.ssl.SSLException e
       205: .line 806
            aload 0 /* this */
            invokevirtual io.undertow.protocols.ssl.SslConduit.clearWriteRequiresRead:()V
       206: .line 807
            aload 0 /* this */
            aconst_null
            iconst_0
            iconst_0
            invokevirtual io.undertow.protocols.ssl.SslConduit.doWrap:([Ljava/nio/ByteBuffer;II)J
            pop2
       207: .line 808
            aload 0 /* this */
            invokevirtual io.undertow.protocols.ssl.SslConduit.flush:()Z
            pop
       208: .line 809
            goto 211
      StackMap locals: io.undertow.protocols.ssl.SslConduit java.nio.ByteBuffer[] int int int io.undertow.connector.PooledByteBuffer javax.net.ssl.SSLException
      StackMap stack: java.lang.Exception
       209: astore 7 /* e2 */
        start local 7 // java.lang.Exception e2
       210: .line 810
            getstatic io.undertow.UndertowLogger.REQUEST_LOGGER:Lio/undertow/UndertowLogger;
            ldc "Failed to write out final SSL record"
            aload 7 /* e2 */
            invokeinterface io.undertow.UndertowLogger.debug:(Ljava/lang/Object;Ljava/lang/Throwable;)V
        end local 7 // java.lang.Exception e2
       211: .line 812
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual io.undertow.protocols.ssl.SslConduit.close:()V
       212: .line 813
            goto 215
      StackMap locals:
      StackMap stack: java.lang.Throwable
       213: astore 7 /* ex */
        start local 7 // java.lang.Throwable ex
       214: .line 815
            getstatic io.undertow.UndertowLogger.REQUEST_LOGGER:Lio/undertow/UndertowLogger;
            ldc "Exception closing SSLConduit after exception in doUnwrap"
            aload 7 /* ex */
            invokeinterface io.undertow.UndertowLogger.debug:(Ljava/lang/Object;Ljava/lang/Throwable;)V
        end local 7 // java.lang.Throwable ex
       215: .line 817
      StackMap locals:
      StackMap stack:
            aload 6 /* e */
            athrow
        end local 6 // javax.net.ssl.SSLException e
       216: .line 818
      StackMap locals: io.undertow.protocols.ssl.SslConduit java.nio.ByteBuffer[] int int int io.undertow.connector.PooledByteBuffer
      StackMap stack: java.lang.Throwable
            astore 6 /* e */
        start local 6 // java.lang.Throwable e
       217: .line 820
            aload 0 /* this */
            invokevirtual io.undertow.protocols.ssl.SslConduit.close:()V
       218: .line 821
            goto 221
      StackMap locals: io.undertow.protocols.ssl.SslConduit java.nio.ByteBuffer[] int int int io.undertow.connector.PooledByteBuffer java.lang.Throwable
      StackMap stack: java.lang.Throwable
       219: astore 7 /* ex */
        start local 7 // java.lang.Throwable ex
       220: .line 823
            getstatic io.undertow.UndertowLogger.REQUEST_LOGGER:Lio/undertow/UndertowLogger;
            ldc "Exception closing SSLConduit after exception in doUnwrap"
            aload 7 /* ex */
            invokeinterface io.undertow.UndertowLogger.debug:(Ljava/lang/Object;Ljava/lang/Throwable;)V
        end local 7 // java.lang.Throwable ex
       221: .line 825
      StackMap locals:
      StackMap stack:
            aload 6 /* e */
            athrow
        end local 6 // java.lang.Throwable e
       222: .line 826
      StackMap locals: io.undertow.protocols.ssl.SslConduit java.nio.ByteBuffer[] int int int io.undertow.connector.PooledByteBuffer
      StackMap stack: java.lang.Throwable
            astore 13
       223: .line 827
            iconst_0
            istore 16 /* requiresListenerInvocation */
        start local 16 // boolean requiresListenerInvocation
       224: .line 829
            iload 4 /* bytesProduced */
            ifne 225
            aload 5 /* unwrappedData */
            ifnull 226
            aload 5 /* unwrappedData */
            invokeinterface io.undertow.connector.PooledByteBuffer.isOpen:()Z
            ifeq 226
            aload 5 /* unwrappedData */
            invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
            invokevirtual java.nio.ByteBuffer.hasRemaining:()Z
            ifeq 226
       225: .line 830
      StackMap locals: io.undertow.protocols.ssl.SslConduit java.nio.ByteBuffer[] int int int io.undertow.connector.PooledByteBuffer top top top top top top top java.lang.Throwable top top int
      StackMap stack:
            iconst_1
            istore 16 /* requiresListenerInvocation */
       226: .line 832
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.dataToUnwrap:Lio/undertow/connector/PooledByteBuffer;
            ifnull 236
       227: .line 834
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.dataToUnwrap:Lio/undertow/connector/PooledByteBuffer;
            invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
            invokevirtual java.nio.ByteBuffer.hasRemaining:()Z
            ifne 232
       228: .line 835
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.dataToUnwrap:Lio/undertow/connector/PooledByteBuffer;
            invokeinterface io.undertow.connector.PooledByteBuffer.close:()V
       229: .line 836
            aload 0 /* this */
            aconst_null
            putfield io.undertow.protocols.ssl.SslConduit.dataToUnwrap:Lio/undertow/connector/PooledByteBuffer;
       230: .line 837
            aload 0 /* this */
            dup
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            bipush -17
            iand
            putfield io.undertow.protocols.ssl.SslConduit.state:I
       231: .line 838
            goto 236
      StackMap locals:
      StackMap stack:
       232: aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            bipush 16
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            ifeq 235
       233: .line 840
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.dataToUnwrap:Lio/undertow/connector/PooledByteBuffer;
            invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
            invokevirtual java.nio.ByteBuffer.compact:()Ljava/nio/ByteBuffer;
            pop
       234: .line 841
            goto 236
       235: .line 843
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 16 /* requiresListenerInvocation */
       236: .line 848
      StackMap locals:
      StackMap stack:
            iload 16 /* requiresListenerInvocation */
            ifeq 239
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            iconst_4
            invokestatic org.xnio.Bits.anyAreSet:(II)Z
            ifne 237
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            bipush 10
            invokestatic org.xnio.Bits.allAreSet:(II)Z
            ifeq 239
      StackMap locals:
      StackMap stack:
       237: aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.invokingReadListenerHandshake:Z
            ifne 239
       238: .line 849
            aload 0 /* this */
            iconst_0
            invokevirtual io.undertow.protocols.ssl.SslConduit.runReadListener:(Z)V
        end local 16 // boolean requiresListenerInvocation
       239: .line 851
      StackMap locals: io.undertow.protocols.ssl.SslConduit java.nio.ByteBuffer[] int int int io.undertow.connector.PooledByteBuffer top top top top top top top java.lang.Throwable
      StackMap stack:
            aload 13
            athrow
        end local 5 // io.undertow.connector.PooledByteBuffer unwrappedData
        end local 4 // boolean bytesProduced
        end local 3 // int len
        end local 2 // int off
        end local 1 // java.nio.ByteBuffer[] userBuffers
        end local 0 // io.undertow.protocols.ssl.SslConduit this
      LocalVariableTable:
        Start  End  Slot                        Name  Signature
            0  240     0                        this  Lio/undertow/protocols/ssl/SslConduit;
            0  240     1                 userBuffers  [Ljava/nio/ByteBuffer;
            0  240     2                         off  I
            0  240     3                         len  I
            9  240     4               bytesProduced  Z
           10  240     5               unwrappedData  Lio/undertow/connector/PooledByteBuffer;
           13   19     6                      copied  J
           69  204     6          dataToUnwrapLength  I
           23   24     7                         res  I
           28   68     7                         res  I
           25   28     8                           e  Ljava/lang/Throwable;
           70  204     7                    original  J
           75   86     9                      result  Ljavax/net/ssl/SSLEngineResult;
           92   96     9                      result  Ljavax/net/ssl/SSLEngineResult;
          104  204     9                      result  Ljavax/net/ssl/SSLEngineResult;
           73  204    10            unwrapBufferUsed  Z
           78   82    11                           d  [Ljava/nio/ByteBuffer;
          184  204    11                         res  J
          205  216     6                           e  Ljavax/net/ssl/SSLException;
          210  211     7                          e2  Ljava/lang/Exception;
          214  215     7                          ex  Ljava/lang/Throwable;
          217  222     6                           e  Ljava/lang/Throwable;
          220  221     7                          ex  Ljava/lang/Throwable;
           34   49    16  requiresListenerInvocation  Z
           52   67    16  requiresListenerInvocation  Z
          116  131    16  requiresListenerInvocation  Z
          138  153    16  requiresListenerInvocation  Z
          167  182    16  requiresListenerInvocation  Z
          188  203    16  requiresListenerInvocation  Z
          224  239    16  requiresListenerInvocation  Z
      Exception table:
        from    to  target  type
          22    23      24  Class java.io.IOException
          22    23      24  Class java.lang.RuntimeException
          22    23      24  Class java.lang.Error
          73    96      96  any
          19    33     204  Class javax.net.ssl.SSLException
          50    51     204  Class javax.net.ssl.SSLException
          68   115     204  Class javax.net.ssl.SSLException
         132   137     204  Class javax.net.ssl.SSLException
         154   166     204  Class javax.net.ssl.SSLException
         183   187     204  Class javax.net.ssl.SSLException
         205   208     209  Class java.lang.Exception
         205   212     213  Class java.lang.Throwable
          19    33     216  Class java.lang.RuntimeException
          50    51     216  Class java.lang.RuntimeException
          68   115     216  Class java.lang.RuntimeException
         132   137     216  Class java.lang.RuntimeException
         154   166     216  Class java.lang.RuntimeException
         183   187     216  Class java.lang.RuntimeException
          19    33     216  Class java.io.IOException
          50    51     216  Class java.io.IOException
          68   115     216  Class java.io.IOException
         132   137     216  Class java.io.IOException
         154   166     216  Class java.io.IOException
         183   187     216  Class java.io.IOException
          19    33     216  Class java.lang.Error
          50    51     216  Class java.lang.Error
          68   115     216  Class java.lang.Error
         132   137     216  Class java.lang.Error
         154   166     216  Class java.lang.Error
         183   187     216  Class java.lang.Error
         217   218     219  Class java.lang.Throwable
          19    33     222  any
          50    51     222  any
          68   115     222  any
         132   137     222  any
         154   166     222  any
         183   187     222  any
         204   222     222  any
    Exceptions:
      throws java.io.IOException
    MethodParameters:
             Name  Flags
      userBuffers  
      off          
      len          

  private long doWrap(java.nio.ByteBuffer[], int, int);
    descriptor: ([Ljava/nio/ByteBuffer;II)J
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=9, args_size=4
        start local 0 // io.undertow.protocols.ssl.SslConduit this
        start local 1 // java.nio.ByteBuffer[] userBuffers
        start local 2 // int off
        start local 3 // int len
         0: .line 867
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            sipush 4096
            invokestatic org.xnio.Bits.anyAreSet:(II)Z
            ifeq 2
         1: .line 868
            new java.nio.channels.ClosedChannelException
            dup
            invokespecial java.nio.channels.ClosedChannelException.<init>:()V
            athrow
         2: .line 870
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.outstandingTasks:I
            ifle 4
         3: .line 871
            lconst_0
            lreturn
         4: .line 873
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            iconst_2
            invokestatic org.xnio.Bits.anyAreSet:(II)Z
            ifeq 8
         5: .line 874
            aload 0 /* this */
            aconst_null
            iconst_0
            iconst_0
            invokevirtual io.undertow.protocols.ssl.SslConduit.doUnwrap:([Ljava/nio/ByteBuffer;II)J
            pop2
         6: .line 875
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            iconst_1
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            ifeq 8
         7: .line 876
            lconst_0
            lreturn
         8: .line 879
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.wrappedData:Lio/undertow/connector/PooledByteBuffer;
            ifnull 14
         9: .line 880
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.sink:Lorg/xnio/conduits/StreamSinkConduit;
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.wrappedData:Lio/undertow/connector/PooledByteBuffer;
            invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
            invokeinterface org.xnio.conduits.StreamSinkConduit.write:(Ljava/nio/ByteBuffer;)I
            istore 4 /* res */
        start local 4 // int res
        10: .line 881
            iload 4 /* res */
            ifeq 11
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.wrappedData:Lio/undertow/connector/PooledByteBuffer;
            invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
            invokevirtual java.nio.ByteBuffer.hasRemaining:()Z
            ifeq 12
        11: .line 882
      StackMap locals: int
      StackMap stack:
            lconst_0
            lreturn
        12: .line 884
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.wrappedData:Lio/undertow/connector/PooledByteBuffer;
            invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
            invokevirtual java.nio.ByteBuffer.clear:()Ljava/nio/Buffer;
            pop
        end local 4 // int res
        13: .line 885
            goto 15
        14: .line 886
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.bufferPool:Lio/undertow/connector/ByteBufferPool;
            invokeinterface io.undertow.connector.ByteBufferPool.allocate:()Lio/undertow/connector/PooledByteBuffer;
            putfield io.undertow.protocols.ssl.SslConduit.wrappedData:Lio/undertow/connector/PooledByteBuffer;
        15: .line 889
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 4 /* result */
        start local 4 // javax.net.ssl.SSLEngineResult result
        16: .line 890
            goto 21
        17: .line 891
      StackMap locals: javax.net.ssl.SSLEngineResult
      StackMap stack:
            aload 1 /* userBuffers */
            ifnonnull 20
        18: .line 892
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.engine:Ljavax/net/ssl/SSLEngine;
            getstatic io.undertow.protocols.ssl.SslConduit.EMPTY_BUFFER:Ljava/nio/ByteBuffer;
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.wrappedData:Lio/undertow/connector/PooledByteBuffer;
            invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
            invokevirtual javax.net.ssl.SSLEngine.wrap:(Ljava/nio/ByteBuffer;Ljava/nio/ByteBuffer;)Ljavax/net/ssl/SSLEngineResult;
            astore 4 /* result */
        19: .line 893
            goto 21
        20: .line 894
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.engine:Ljavax/net/ssl/SSLEngine;
            aload 1 /* userBuffers */
            iload 2 /* off */
            iload 3 /* len */
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.wrappedData:Lio/undertow/connector/PooledByteBuffer;
            invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
            invokevirtual javax.net.ssl.SSLEngine.wrap:([Ljava/nio/ByteBuffer;IILjava/nio/ByteBuffer;)Ljavax/net/ssl/SSLEngineResult;
            astore 4 /* result */
        21: .line 890
      StackMap locals:
      StackMap stack:
            aload 4 /* result */
            ifnull 17
            aload 4 /* result */
            invokevirtual javax.net.ssl.SSLEngineResult.getHandshakeStatus:()Ljavax/net/ssl/SSLEngineResult$HandshakeStatus;
            getstatic javax.net.ssl.SSLEngineResult$HandshakeStatus.NEED_WRAP:Ljavax/net/ssl/SSLEngineResult$HandshakeStatus;
            if_acmpne 22
            aload 4 /* result */
            invokevirtual javax.net.ssl.SSLEngineResult.getStatus:()Ljavax/net/ssl/SSLEngineResult$Status;
            getstatic javax.net.ssl.SSLEngineResult$Status.BUFFER_OVERFLOW:Ljavax/net/ssl/SSLEngineResult$Status;
            if_acmpne 17
        22: .line 897
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.wrappedData:Lio/undertow/connector/PooledByteBuffer;
            invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
            invokevirtual java.nio.ByteBuffer.flip:()Ljava/nio/Buffer;
            pop
        23: .line 899
            aload 4 /* result */
            invokevirtual javax.net.ssl.SSLEngineResult.getStatus:()Ljavax/net/ssl/SSLEngineResult$Status;
            getstatic javax.net.ssl.SSLEngineResult$Status.BUFFER_UNDERFLOW:Ljavax/net/ssl/SSLEngineResult$Status;
            if_acmpne 25
        24: .line 900
            new java.io.IOException
            dup
            ldc "underflow"
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
        25: .line 901
      StackMap locals:
      StackMap stack:
            aload 4 /* result */
            invokevirtual javax.net.ssl.SSLEngineResult.getStatus:()Ljavax/net/ssl/SSLEngineResult$Status;
            getstatic javax.net.ssl.SSLEngineResult$Status.BUFFER_OVERFLOW:Ljavax/net/ssl/SSLEngineResult$Status;
            if_acmpne 28
        26: .line 902
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.wrappedData:Lio/undertow/connector/PooledByteBuffer;
            invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
            invokevirtual java.nio.ByteBuffer.hasRemaining:()Z
            ifne 28
        27: .line 903
            new java.io.IOException
            dup
            ldc "overflow"
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
        28: .line 908
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.wrappedData:Lio/undertow/connector/PooledByteBuffer;
            invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
            invokevirtual java.nio.ByteBuffer.hasRemaining:()Z
            ifeq 30
        29: .line 909
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.sink:Lorg/xnio/conduits/StreamSinkConduit;
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.wrappedData:Lio/undertow/connector/PooledByteBuffer;
            invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
            invokeinterface org.xnio.conduits.StreamSinkConduit.write:(Ljava/nio/ByteBuffer;)I
            pop
        30: .line 912
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.wrappedData:Lio/undertow/connector/PooledByteBuffer;
            invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
            invokevirtual java.nio.ByteBuffer.hasRemaining:()Z
            ifeq 37
        31: .line 913
            aload 4 /* result */
            invokevirtual javax.net.ssl.SSLEngineResult.bytesConsumed:()I
            i2l
            lstore 7
        32: .line 934
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.wrappedData:Lio/undertow/connector/PooledByteBuffer;
            ifnull 36
        33: .line 935
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.wrappedData:Lio/undertow/connector/PooledByteBuffer;
            invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
            invokevirtual java.nio.ByteBuffer.hasRemaining:()Z
            ifne 36
        34: .line 936
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.wrappedData:Lio/undertow/connector/PooledByteBuffer;
            invokeinterface io.undertow.connector.PooledByteBuffer.close:()V
        35: .line 937
            aload 0 /* this */
            aconst_null
            putfield io.undertow.protocols.ssl.SslConduit.wrappedData:Lio/undertow/connector/PooledByteBuffer;
        36: .line 913
      StackMap locals: io.undertow.protocols.ssl.SslConduit java.nio.ByteBuffer[] int int javax.net.ssl.SSLEngineResult top top long
      StackMap stack:
            lload 7
            lreturn
        37: .line 916
      StackMap locals: io.undertow.protocols.ssl.SslConduit java.nio.ByteBuffer[] int int javax.net.ssl.SSLEngineResult
      StackMap stack:
            aload 0 /* this */
            aload 4 /* result */
            invokevirtual io.undertow.protocols.ssl.SslConduit.handleHandshakeResult:(Ljavax/net/ssl/SSLEngineResult;)Z
            ifne 43
        38: .line 934
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.wrappedData:Lio/undertow/connector/PooledByteBuffer;
            ifnull 42
        39: .line 935
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.wrappedData:Lio/undertow/connector/PooledByteBuffer;
            invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
            invokevirtual java.nio.ByteBuffer.hasRemaining:()Z
            ifne 42
        40: .line 936
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.wrappedData:Lio/undertow/connector/PooledByteBuffer;
            invokeinterface io.undertow.connector.PooledByteBuffer.close:()V
        41: .line 937
            aload 0 /* this */
            aconst_null
            putfield io.undertow.protocols.ssl.SslConduit.wrappedData:Lio/undertow/connector/PooledByteBuffer;
        42: .line 917
      StackMap locals:
      StackMap stack:
            lconst_0
            lreturn
        43: .line 919
      StackMap locals:
      StackMap stack:
            aload 4 /* result */
            invokevirtual javax.net.ssl.SSLEngineResult.getStatus:()Ljavax/net/ssl/SSLEngineResult$Status;
            getstatic javax.net.ssl.SSLEngineResult$Status.CLOSED:Ljavax/net/ssl/SSLEngineResult$Status;
            if_acmpne 46
            aload 1 /* userBuffers */
            ifnull 46
        44: .line 920
            aload 0 /* this */
            invokevirtual io.undertow.protocols.ssl.SslConduit.notifyWriteClosed:()V
        45: .line 921
            new java.nio.channels.ClosedChannelException
            dup
            invokespecial java.nio.channels.ClosedChannelException.<init>:()V
            athrow
        46: .line 924
      StackMap locals:
      StackMap stack:
            aload 4 /* result */
            invokevirtual javax.net.ssl.SSLEngineResult.bytesConsumed:()I
            i2l
            lstore 7
        47: .line 934
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.wrappedData:Lio/undertow/connector/PooledByteBuffer;
            ifnull 51
        48: .line 935
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.wrappedData:Lio/undertow/connector/PooledByteBuffer;
            invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
            invokevirtual java.nio.ByteBuffer.hasRemaining:()Z
            ifne 51
        49: .line 936
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.wrappedData:Lio/undertow/connector/PooledByteBuffer;
            invokeinterface io.undertow.connector.PooledByteBuffer.close:()V
        50: .line 937
            aload 0 /* this */
            aconst_null
            putfield io.undertow.protocols.ssl.SslConduit.wrappedData:Lio/undertow/connector/PooledByteBuffer;
        51: .line 924
      StackMap locals: io.undertow.protocols.ssl.SslConduit java.nio.ByteBuffer[] int int javax.net.ssl.SSLEngineResult top top long
      StackMap stack:
            lload 7
            lreturn
        end local 4 // javax.net.ssl.SSLEngineResult result
        52: .line 925
      StackMap locals: io.undertow.protocols.ssl.SslConduit java.nio.ByteBuffer[] int int
      StackMap stack: java.lang.Throwable
            astore 4 /* e */
        start local 4 // java.lang.Throwable e
        53: .line 927
            aload 0 /* this */
            invokevirtual io.undertow.protocols.ssl.SslConduit.close:()V
        54: .line 928
            goto 57
      StackMap locals: io.undertow.protocols.ssl.SslConduit java.nio.ByteBuffer[] int int java.lang.Throwable
      StackMap stack: java.lang.Throwable
        55: astore 5 /* ex */
        start local 5 // java.lang.Throwable ex
        56: .line 929
            getstatic io.undertow.UndertowLogger.REQUEST_LOGGER:Lio/undertow/UndertowLogger;
            ldc "Exception closing SSLConduit after exception in doWrap()"
            aload 5 /* ex */
            invokeinterface io.undertow.UndertowLogger.debug:(Ljava/lang/Object;Ljava/lang/Throwable;)V
        end local 5 // java.lang.Throwable ex
        57: .line 931
      StackMap locals:
      StackMap stack:
            aload 4 /* e */
            athrow
        end local 4 // java.lang.Throwable e
        58: .line 932
      StackMap locals: io.undertow.protocols.ssl.SslConduit java.nio.ByteBuffer[] int int
      StackMap stack: java.lang.Throwable
            astore 6
        59: .line 934
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.wrappedData:Lio/undertow/connector/PooledByteBuffer;
            ifnull 63
        60: .line 935
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.wrappedData:Lio/undertow/connector/PooledByteBuffer;
            invokeinterface io.undertow.connector.PooledByteBuffer.getBuffer:()Ljava/nio/ByteBuffer;
            invokevirtual java.nio.ByteBuffer.hasRemaining:()Z
            ifne 63
        61: .line 936
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.wrappedData:Lio/undertow/connector/PooledByteBuffer;
            invokeinterface io.undertow.connector.PooledByteBuffer.close:()V
        62: .line 937
            aload 0 /* this */
            aconst_null
            putfield io.undertow.protocols.ssl.SslConduit.wrappedData:Lio/undertow/connector/PooledByteBuffer;
        63: .line 940
      StackMap locals: io.undertow.protocols.ssl.SslConduit java.nio.ByteBuffer[] int int top top java.lang.Throwable
      StackMap stack:
            aload 6
            athrow
        end local 3 // int len
        end local 2 // int off
        end local 1 // java.nio.ByteBuffer[] userBuffers
        end local 0 // io.undertow.protocols.ssl.SslConduit this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   64     0         this  Lio/undertow/protocols/ssl/SslConduit;
            0   64     1  userBuffers  [Ljava/nio/ByteBuffer;
            0   64     2          off  I
            0   64     3          len  I
           10   13     4          res  I
           16   52     4       result  Ljavax/net/ssl/SSLEngineResult;
           53   58     4            e  Ljava/lang/Throwable;
           56   57     5           ex  Ljava/lang/Throwable;
      Exception table:
        from    to  target  type
          15    32      52  Class java.lang.RuntimeException
          37    38      52  Class java.lang.RuntimeException
          43    47      52  Class java.lang.RuntimeException
          15    32      52  Class java.io.IOException
          37    38      52  Class java.io.IOException
          43    47      52  Class java.io.IOException
          15    32      52  Class java.lang.Error
          37    38      52  Class java.lang.Error
          43    47      52  Class java.lang.Error
          53    54      55  Class java.lang.Throwable
          15    32      58  any
          37    38      58  any
          43    47      58  any
          52    58      58  any
    Exceptions:
      throws java.io.IOException
    MethodParameters:
             Name  Flags
      userBuffers  
      off          
      len          

  private boolean handleHandshakeResult(javax.net.ssl.SSLEngineResult);
    descriptor: (Ljavax/net/ssl/SSLEngineResult;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // io.undertow.protocols.ssl.SslConduit this
        start local 1 // javax.net.ssl.SSLEngineResult result
         0: .line 944
            invokestatic io.undertow.protocols.ssl.SslConduit.$SWITCH_TABLE$javax$net$ssl$SSLEngineResult$HandshakeStatus:()[I
            aload 1 /* result */
            invokevirtual javax.net.ssl.SSLEngineResult.getHandshakeStatus:()Ljavax/net/ssl/SSLEngineResult$HandshakeStatus;
            invokevirtual javax.net.ssl.SSLEngineResult$HandshakeStatus.ordinal:()I
            iaload
            tableswitch { // 2 - 5
                    2: 18
                    3: 1
                    4: 12
                    5: 6
              default: 21
          }
         1: .line 946
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            sipush 2048
            ior
            putfield io.undertow.protocols.ssl.SslConduit.state:I
         2: .line 947
            aload 0 /* this */
            invokevirtual io.undertow.protocols.ssl.SslConduit.clearReadRequiresWrite:()V
         3: .line 948
            aload 0 /* this */
            invokevirtual io.undertow.protocols.ssl.SslConduit.clearWriteRequiresRead:()V
         4: .line 949
            aload 0 /* this */
            invokevirtual io.undertow.protocols.ssl.SslConduit.runTasks:()V
         5: .line 950
            iconst_0
            ireturn
         6: .line 953
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual io.undertow.protocols.ssl.SslConduit.clearReadRequiresWrite:()V
         7: .line 954
            aload 0 /* this */
            dup
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            sipush 2050
            ior
            putfield io.undertow.protocols.ssl.SslConduit.state:I
         8: .line 955
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.sink:Lorg/xnio/conduits/StreamSinkConduit;
            invokeinterface org.xnio.conduits.StreamSinkConduit.suspendWrites:()V
         9: .line 956
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            bipush 8
            invokestatic org.xnio.Bits.anyAreSet:(II)Z
            ifeq 11
        10: .line 957
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.source:Lorg/xnio/conduits/StreamSourceConduit;
            invokeinterface org.xnio.conduits.StreamSourceConduit.resumeReads:()V
        11: .line 960
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        12: .line 963
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual io.undertow.protocols.ssl.SslConduit.clearWriteRequiresRead:()V
        13: .line 964
            aload 0 /* this */
            dup
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            sipush 2049
            ior
            putfield io.undertow.protocols.ssl.SslConduit.state:I
        14: .line 965
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.source:Lorg/xnio/conduits/StreamSourceConduit;
            invokeinterface org.xnio.conduits.StreamSourceConduit.suspendReads:()V
        15: .line 966
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            iconst_4
            invokestatic org.xnio.Bits.anyAreSet:(II)Z
            ifeq 17
        16: .line 967
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.sink:Lorg/xnio/conduits/StreamSinkConduit;
            invokeinterface org.xnio.conduits.StreamSinkConduit.resumeWrites:()V
        17: .line 969
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        18: .line 972
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            sipush 2048
            invokestatic org.xnio.Bits.anyAreSet:(II)Z
            ifeq 21
        19: .line 973
            aload 0 /* this */
            dup
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            sipush -2049
            iand
            putfield io.undertow.protocols.ssl.SslConduit.state:I
        20: .line 974
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.handshakeCallback:Ljava/lang/Runnable;
            invokeinterface java.lang.Runnable.run:()V
        21: .line 978
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual io.undertow.protocols.ssl.SslConduit.clearReadRequiresWrite:()V
        22: .line 979
            aload 0 /* this */
            invokevirtual io.undertow.protocols.ssl.SslConduit.clearWriteRequiresRead:()V
        23: .line 980
            iconst_1
            ireturn
        end local 1 // javax.net.ssl.SSLEngineResult result
        end local 0 // io.undertow.protocols.ssl.SslConduit this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   24     0    this  Lio/undertow/protocols/ssl/SslConduit;
            0   24     1  result  Ljavax/net/ssl/SSLEngineResult;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
        Name  Flags
      result  

  private void clearReadRequiresWrite();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // io.undertow.protocols.ssl.SslConduit this
         0: .line 984
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            iconst_1
            invokestatic org.xnio.Bits.anyAreSet:(II)Z
            ifeq 6
         1: .line 985
            aload 0 /* this */
            dup
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            bipush -2
            iand
            putfield io.undertow.protocols.ssl.SslConduit.state:I
         2: .line 986
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            iconst_4
            invokestatic org.xnio.Bits.anyAreSet:(II)Z
            ifeq 4
         3: .line 987
            aload 0 /* this */
            iconst_0
            invokevirtual io.undertow.protocols.ssl.SslConduit.resumeReads:(Z)V
         4: .line 989
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            bipush 8
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            ifeq 6
         5: .line 990
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.sink:Lorg/xnio/conduits/StreamSinkConduit;
            invokeinterface org.xnio.conduits.StreamSinkConduit.suspendWrites:()V
         6: .line 993
      StackMap locals:
      StackMap stack:
            return
        end local 0 // io.undertow.protocols.ssl.SslConduit this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lio/undertow/protocols/ssl/SslConduit;

  private void clearWriteRequiresRead();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // io.undertow.protocols.ssl.SslConduit this
         0: .line 996
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            iconst_2
            invokestatic org.xnio.Bits.anyAreSet:(II)Z
            ifeq 6
         1: .line 997
            aload 0 /* this */
            dup
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            bipush -3
            iand
            putfield io.undertow.protocols.ssl.SslConduit.state:I
         2: .line 998
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            bipush 8
            invokestatic org.xnio.Bits.anyAreSet:(II)Z
            ifeq 4
         3: .line 999
            aload 0 /* this */
            invokevirtual io.undertow.protocols.ssl.SslConduit.wakeupWrites:()V
         4: .line 1001
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            iconst_4
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            ifeq 6
         5: .line 1002
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.source:Lorg/xnio/conduits/StreamSourceConduit;
            invokeinterface org.xnio.conduits.StreamSourceConduit.suspendReads:()V
         6: .line 1005
      StackMap locals:
      StackMap stack:
            return
        end local 0 // io.undertow.protocols.ssl.SslConduit this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lio/undertow/protocols/ssl/SslConduit;

  private void closed();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // io.undertow.protocols.ssl.SslConduit this
         0: .line 1008
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            sipush 4096
            invokestatic org.xnio.Bits.anyAreSet:(II)Z
            ifeq 2
         1: .line 1009
            return
         2: .line 1011
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            sipush 5728
            ior
            putfield io.undertow.protocols.ssl.SslConduit.state:I
         3: .line 1012
            aload 0 /* this */
            invokevirtual io.undertow.protocols.ssl.SslConduit.notifyReadClosed:()V
         4: .line 1013
            aload 0 /* this */
            invokevirtual io.undertow.protocols.ssl.SslConduit.notifyWriteClosed:()V
         5: .line 1014
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.dataToUnwrap:Lio/undertow/connector/PooledByteBuffer;
            ifnull 8
         6: .line 1015
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.dataToUnwrap:Lio/undertow/connector/PooledByteBuffer;
            invokeinterface io.undertow.connector.PooledByteBuffer.close:()V
         7: .line 1016
            aload 0 /* this */
            aconst_null
            putfield io.undertow.protocols.ssl.SslConduit.dataToUnwrap:Lio/undertow/connector/PooledByteBuffer;
         8: .line 1018
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.unwrappedData:Lio/undertow/connector/PooledByteBuffer;
            ifnull 11
         9: .line 1019
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.unwrappedData:Lio/undertow/connector/PooledByteBuffer;
            invokeinterface io.undertow.connector.PooledByteBuffer.close:()V
        10: .line 1020
            aload 0 /* this */
            aconst_null
            putfield io.undertow.protocols.ssl.SslConduit.unwrappedData:Lio/undertow/connector/PooledByteBuffer;
        11: .line 1022
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.wrappedData:Lio/undertow/connector/PooledByteBuffer;
            ifnull 14
        12: .line 1023
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.wrappedData:Lio/undertow/connector/PooledByteBuffer;
            invokeinterface io.undertow.connector.PooledByteBuffer.close:()V
        13: .line 1024
            aload 0 /* this */
            aconst_null
            putfield io.undertow.protocols.ssl.SslConduit.wrappedData:Lio/undertow/connector/PooledByteBuffer;
        14: .line 1026
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            sipush 256
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            ifeq 16
        15: .line 1027
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.engine:Ljavax/net/ssl/SSLEngine;
            invokevirtual javax.net.ssl.SSLEngine.closeOutbound:()V
        16: .line 1029
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            sipush 128
            invokestatic org.xnio.Bits.allAreClear:(II)Z
            ifeq 24
        17: .line 1031
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.engine:Ljavax/net/ssl/SSLEngine;
            invokevirtual javax.net.ssl.SSLEngine.closeInbound:()V
        18: .line 1032
            goto 24
      StackMap locals:
      StackMap stack: javax.net.ssl.SSLException
        19: astore 1 /* e */
        start local 1 // javax.net.ssl.SSLException e
        20: .line 1033
            getstatic io.undertow.UndertowLogger.REQUEST_LOGGER:Lio/undertow/UndertowLogger;
            aload 1 /* e */
            invokeinterface io.undertow.UndertowLogger.ioException:(Ljava/io/IOException;)V
        end local 1 // javax.net.ssl.SSLException e
        21: goto 24
        22: .line 1034
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 1 /* t */
        start local 1 // java.lang.Throwable t
        23: .line 1035
            getstatic io.undertow.UndertowLogger.REQUEST_LOGGER:Lio/undertow/UndertowLogger;
            aload 1 /* t */
            invokeinterface io.undertow.UndertowLogger.handleUnexpectedFailure:(Ljava/lang/Throwable;)V
        end local 1 // java.lang.Throwable t
        24: .line 1038
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.delegate:Lorg/xnio/StreamConnection;
            invokestatic org.xnio.IoUtils.safeClose:(Ljava/io/Closeable;)V
        25: .line 1039
            return
        end local 0 // io.undertow.protocols.ssl.SslConduit this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   26     0  this  Lio/undertow/protocols/ssl/SslConduit;
           20   21     1     e  Ljavax/net/ssl/SSLException;
           23   24     1     t  Ljava/lang/Throwable;
      Exception table:
        from    to  target  type
          17    18      19  Class javax.net.ssl.SSLException
          17    18      22  Class java.lang.Throwable

  private void runTasks();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=6, args_size=1
        start local 0 // io.undertow.protocols.ssl.SslConduit this
         0: .line 1048
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.delegate:Lorg/xnio/StreamConnection;
            invokevirtual org.xnio.StreamConnection.getSinkChannel:()Lorg/xnio/conduits/ConduitStreamSinkChannel;
            invokevirtual org.xnio.conduits.ConduitStreamSinkChannel.suspendWrites:()V
         1: .line 1049
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.delegate:Lorg/xnio/StreamConnection;
            invokevirtual org.xnio.StreamConnection.getSourceChannel:()Lorg/xnio/conduits/ConduitStreamSourceChannel;
            invokevirtual org.xnio.conduits.ConduitStreamSourceChannel.suspendReads:()V
         2: .line 1050
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 1 /* tasks */
        start local 1 // java.util.List tasks
         3: .line 1051
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.engine:Ljavax/net/ssl/SSLEngine;
            invokevirtual javax.net.ssl.SSLEngine.getDelegatedTask:()Ljava/lang/Runnable;
            astore 2 /* t */
        start local 2 // java.lang.Runnable t
         4: .line 1052
            goto 7
         5: .line 1053
      StackMap locals: java.util.List java.lang.Runnable
      StackMap stack:
            aload 1 /* tasks */
            aload 2 /* t */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         6: .line 1054
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.engine:Ljavax/net/ssl/SSLEngine;
            invokevirtual javax.net.ssl.SSLEngine.getDelegatedTask:()Ljava/lang/Runnable;
            astore 2 /* t */
         7: .line 1052
      StackMap locals:
      StackMap stack:
            aload 2 /* t */
            ifnonnull 5
         8: .line 1057
            aload 0 /* this */
            dup
            astore 3
            monitorenter
         9: .line 1058
            aload 0 /* this */
            dup
            getfield io.undertow.protocols.ssl.SslConduit.outstandingTasks:I
            aload 1 /* tasks */
            invokeinterface java.util.List.size:()I
            iadd
            putfield io.undertow.protocols.ssl.SslConduit.outstandingTasks:I
        10: .line 1059
            aload 1 /* tasks */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 5
            goto 13
      StackMap locals: io.undertow.protocols.ssl.SslConduit java.util.List java.lang.Runnable io.undertow.protocols.ssl.SslConduit top java.util.Iterator
      StackMap stack:
        11: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.Runnable
            astore 4 /* task */
        start local 4 // java.lang.Runnable task
        12: .line 1060
            aload 0 /* this */
            invokevirtual io.undertow.protocols.ssl.SslConduit.getWorker:()Lorg/xnio/XnioWorker;
            new io.undertow.protocols.ssl.SslConduit$5
            dup
            aload 0 /* this */
            aload 4 /* task */
            invokespecial io.undertow.protocols.ssl.SslConduit$5.<init>:(Lio/undertow/protocols/ssl/SslConduit;Ljava/lang/Runnable;)V
            invokevirtual org.xnio.XnioWorker.execute:(Ljava/lang/Runnable;)V
        end local 4 // java.lang.Runnable task
        13: .line 1059
      StackMap locals:
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 11
        14: .line 1057
            aload 3
            monitorexit
        15: goto 18
      StackMap locals: io.undertow.protocols.ssl.SslConduit java.util.List java.lang.Runnable io.undertow.protocols.ssl.SslConduit
      StackMap stack: java.lang.Throwable
        16: aload 3
            monitorexit
        17: athrow
        18: .line 1099
      StackMap locals:
      StackMap stack:
            return
        end local 2 // java.lang.Runnable t
        end local 1 // java.util.List tasks
        end local 0 // io.undertow.protocols.ssl.SslConduit this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   19     0   this  Lio/undertow/protocols/ssl/SslConduit;
            3   19     1  tasks  Ljava/util/List<Ljava/lang/Runnable;>;
            4   19     2      t  Ljava/lang/Runnable;
           12   13     4   task  Ljava/lang/Runnable;
      Exception table:
        from    to  target  type
           9    15      16  any
          16    17      16  any

  public javax.net.ssl.SSLEngine getSSLEngine();
    descriptor: ()Ljavax/net/ssl/SSLEngine;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.undertow.protocols.ssl.SslConduit this
         0: .line 1102
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.engine:Ljavax/net/ssl/SSLEngine;
            areturn
        end local 0 // io.undertow.protocols.ssl.SslConduit this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/undertow/protocols/ssl/SslConduit;

  public void close();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.undertow.protocols.ssl.SslConduit this
         0: .line 1109
            aload 0 /* this */
            invokevirtual io.undertow.protocols.ssl.SslConduit.closed:()V
         1: .line 1110
            return
        end local 0 // io.undertow.protocols.ssl.SslConduit this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lio/undertow/protocols/ssl/SslConduit;

  public void setSslEngine(javax.net.ssl.SSLEngine);
    descriptor: (Ljavax/net/ssl/SSLEngine;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.undertow.protocols.ssl.SslConduit this
        start local 1 // javax.net.ssl.SSLEngine engine
         0: .line 1271
            aload 0 /* this */
            aload 1 /* engine */
            putfield io.undertow.protocols.ssl.SslConduit.engine:Ljavax/net/ssl/SSLEngine;
         1: .line 1272
            return
        end local 1 // javax.net.ssl.SSLEngine engine
        end local 0 // io.undertow.protocols.ssl.SslConduit this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lio/undertow/protocols/ssl/SslConduit;
            0    2     1  engine  Ljavax/net/ssl/SSLEngine;
    MethodParameters:
        Name  Flags
      engine  

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // io.undertow.protocols.ssl.SslConduit this
         0: .line 1276
            new java.lang.StringBuilder
            dup
            ldc "SslConduit{state="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         1: .line 1277
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.state:I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
         2: .line 1278
            ldc ", outstandingTasks="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.outstandingTasks:I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
         3: .line 1279
            ldc ", wrappedData="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.wrappedData:Lio/undertow/connector/PooledByteBuffer;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
         4: .line 1280
            ldc ", dataToUnwrap="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.dataToUnwrap:Lio/undertow/connector/PooledByteBuffer;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
         5: .line 1281
            ldc ", unwrappedData="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield io.undertow.protocols.ssl.SslConduit.unwrappedData:Lio/undertow/connector/PooledByteBuffer;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
         6: .line 1282
            bipush 125
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
         7: .line 1276
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 0 // io.undertow.protocols.ssl.SslConduit this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Lio/undertow/protocols/ssl/SslConduit;

  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 63
            getstatic io.undertow.protocols.ssl.SslConduit.$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 io.undertow.protocols.ssl.SslConduit.$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: "SslConduit.java"
NestMembers:
  io.undertow.protocols.ssl.SslConduit$1  io.undertow.protocols.ssl.SslConduit$2  io.undertow.protocols.ssl.SslConduit$3  io.undertow.protocols.ssl.SslConduit$4  io.undertow.protocols.ssl.SslConduit$5  io.undertow.protocols.ssl.SslConduit$5$1  io.undertow.protocols.ssl.SslConduit$SslReadReadyHandler  io.undertow.protocols.ssl.SslConduit$SslWriteReadyHandler
InnerClasses:
  io.undertow.protocols.ssl.SslConduit$1
  io.undertow.protocols.ssl.SslConduit$2
  io.undertow.protocols.ssl.SslConduit$3
  io.undertow.protocols.ssl.SslConduit$4
  io.undertow.protocols.ssl.SslConduit$5
  private SslReadReadyHandler = io.undertow.protocols.ssl.SslConduit$SslReadReadyHandler of io.undertow.protocols.ssl.SslConduit
  private SslWriteReadyHandler = io.undertow.protocols.ssl.SslConduit$SslWriteReadyHandler of io.undertow.protocols.ssl.SslConduit
  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