public class io.netty.handler.codec.socksx.v4.Socks4ClientDecoder extends io.netty.handler.codec.ReplayingDecoder<io.netty.handler.codec.socksx.v4.Socks4ClientDecoder$State>
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: io.netty.handler.codec.socksx.v4.Socks4ClientDecoder
  super_class: io.netty.handler.codec.ReplayingDecoder
{
  private static volatile int[] $SWITCH_TABLE$io$netty$handler$codec$socksx$v4$Socks4ClientDecoder$State;
    descriptor: [I
    flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // io.netty.handler.codec.socksx.v4.Socks4ClientDecoder this
         0: .line 43
            aload 0 /* this */
            getstatic io.netty.handler.codec.socksx.v4.Socks4ClientDecoder$State.START:Lio/netty/handler/codec/socksx/v4/Socks4ClientDecoder$State;
            invokespecial io.netty.handler.codec.ReplayingDecoder.<init>:(Ljava/lang/Object;)V
         1: .line 44
            aload 0 /* this */
            iconst_1
            invokevirtual io.netty.handler.codec.socksx.v4.Socks4ClientDecoder.setSingleDecode:(Z)V
         2: .line 45
            return
        end local 0 // io.netty.handler.codec.socksx.v4.Socks4ClientDecoder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lio/netty/handler/codec/socksx/v4/Socks4ClientDecoder;

  protected void decode(io.netty.channel.ChannelHandlerContext, io.netty.buffer.ByteBuf, java.util.List<java.lang.Object>);
    descriptor: (Lio/netty/channel/ChannelHandlerContext;Lio/netty/buffer/ByteBuf;Ljava/util/List;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=6, locals=8, args_size=4
        start local 0 // io.netty.handler.codec.socksx.v4.Socks4ClientDecoder this
        start local 1 // io.netty.channel.ChannelHandlerContext ctx
        start local 2 // io.netty.buffer.ByteBuf in
        start local 3 // java.util.List out
         0: .line 50
            invokestatic io.netty.handler.codec.socksx.v4.Socks4ClientDecoder.$SWITCH_TABLE$io$netty$handler$codec$socksx$v4$Socks4ClientDecoder$State:()[I
            aload 0 /* this */
            invokevirtual io.netty.handler.codec.socksx.v4.Socks4ClientDecoder.state:()Ljava/lang/Object;
            checkcast io.netty.handler.codec.socksx.v4.Socks4ClientDecoder$State
            invokevirtual io.netty.handler.codec.socksx.v4.Socks4ClientDecoder$State.ordinal:()I
            iaload
            tableswitch { // 1 - 3
                    1: 1
                    2: 9
                    3: 13
              default: 14
          }
         1: .line 52
      StackMap locals:
      StackMap stack:
            aload 2 /* in */
            invokevirtual io.netty.buffer.ByteBuf.readUnsignedByte:()S
            istore 4 /* version */
        start local 4 // int version
         2: .line 53
            iload 4 /* version */
            ifeq 4
         3: .line 54
            new io.netty.handler.codec.DecoderException
            dup
            new java.lang.StringBuilder
            dup
            ldc "unsupported reply version: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 4 /* version */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc " (expected: 0)"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial io.netty.handler.codec.DecoderException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 57
      StackMap locals: int
      StackMap stack:
            aload 2 /* in */
            invokevirtual io.netty.buffer.ByteBuf.readByte:()B
            invokestatic io.netty.handler.codec.socksx.v4.Socks4CommandStatus.valueOf:(B)Lio/netty/handler/codec/socksx/v4/Socks4CommandStatus;
            astore 5 /* status */
        start local 5 // io.netty.handler.codec.socksx.v4.Socks4CommandStatus status
         5: .line 58
            aload 2 /* in */
            invokevirtual io.netty.buffer.ByteBuf.readUnsignedShort:()I
            istore 6 /* dstPort */
        start local 6 // int dstPort
         6: .line 59
            aload 2 /* in */
            invokevirtual io.netty.buffer.ByteBuf.readInt:()I
            invokestatic io.netty.util.NetUtil.intToIpAddress:(I)Ljava/lang/String;
            astore 7 /* dstAddr */
        start local 7 // java.lang.String dstAddr
         7: .line 61
            aload 3 /* out */
            new io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse
            dup
            aload 5 /* status */
            aload 7 /* dstAddr */
            iload 6 /* dstPort */
            invokespecial io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse.<init>:(Lio/netty/handler/codec/socksx/v4/Socks4CommandStatus;Ljava/lang/String;I)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         8: .line 62
            aload 0 /* this */
            getstatic io.netty.handler.codec.socksx.v4.Socks4ClientDecoder$State.SUCCESS:Lio/netty/handler/codec/socksx/v4/Socks4ClientDecoder$State;
            invokevirtual io.netty.handler.codec.socksx.v4.Socks4ClientDecoder.checkpoint:(Ljava/lang/Object;)V
        end local 7 // java.lang.String dstAddr
        end local 6 // int dstPort
        end local 5 // io.netty.handler.codec.socksx.v4.Socks4CommandStatus status
        end local 4 // int version
         9: .line 65
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual io.netty.handler.codec.socksx.v4.Socks4ClientDecoder.actualReadableBytes:()I
            istore 4 /* readableBytes */
        start local 4 // int readableBytes
        10: .line 66
            iload 4 /* readableBytes */
            ifle 17
        11: .line 67
            aload 3 /* out */
            aload 2 /* in */
            iload 4 /* readableBytes */
            invokevirtual io.netty.buffer.ByteBuf.readRetainedSlice:(I)Lio/netty/buffer/ByteBuf;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        12: .line 69
            goto 17
        end local 4 // int readableBytes
        13: .line 72
      StackMap locals:
      StackMap stack:
            aload 2 /* in */
            aload 0 /* this */
            invokevirtual io.netty.handler.codec.socksx.v4.Socks4ClientDecoder.actualReadableBytes:()I
            invokevirtual io.netty.buffer.ByteBuf.skipBytes:(I)Lio/netty/buffer/ByteBuf;
            pop
        14: .line 76
      StackMap locals:
      StackMap stack:
            goto 17
      StackMap locals:
      StackMap stack: java.lang.Exception
        15: astore 4 /* e */
        start local 4 // java.lang.Exception e
        16: .line 77
            aload 0 /* this */
            aload 3 /* out */
            aload 4 /* e */
            invokevirtual io.netty.handler.codec.socksx.v4.Socks4ClientDecoder.fail:(Ljava/util/List;Ljava/lang/Exception;)V
        end local 4 // java.lang.Exception e
        17: .line 79
      StackMap locals:
      StackMap stack:
            return
        end local 3 // java.util.List out
        end local 2 // io.netty.buffer.ByteBuf in
        end local 1 // io.netty.channel.ChannelHandlerContext ctx
        end local 0 // io.netty.handler.codec.socksx.v4.Socks4ClientDecoder this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   18     0           this  Lio/netty/handler/codec/socksx/v4/Socks4ClientDecoder;
            0   18     1            ctx  Lio/netty/channel/ChannelHandlerContext;
            0   18     2             in  Lio/netty/buffer/ByteBuf;
            0   18     3            out  Ljava/util/List<Ljava/lang/Object;>;
            2    9     4        version  I
            5    9     5         status  Lio/netty/handler/codec/socksx/v4/Socks4CommandStatus;
            6    9     6        dstPort  I
            7    9     7        dstAddr  Ljava/lang/String;
           10   13     4  readableBytes  I
           16   17     4              e  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           0    14      15  Class java.lang.Exception
    Exceptions:
      throws java.lang.Exception
    Signature: (Lio/netty/channel/ChannelHandlerContext;Lio/netty/buffer/ByteBuf;Ljava/util/List<Ljava/lang/Object;>;)V
    MethodParameters:
      Name  Flags
      ctx   
      in    
      out   

  private void fail(java.util.List<java.lang.Object>, java.lang.Exception);
    descriptor: (Ljava/util/List;Ljava/lang/Exception;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // io.netty.handler.codec.socksx.v4.Socks4ClientDecoder this
        start local 1 // java.util.List out
        start local 2 // java.lang.Exception cause
         0: .line 82
            aload 2 /* cause */
            instanceof io.netty.handler.codec.DecoderException
            ifne 2
         1: .line 83
            new io.netty.handler.codec.DecoderException
            dup
            aload 2 /* cause */
            invokespecial io.netty.handler.codec.DecoderException.<init>:(Ljava/lang/Throwable;)V
            astore 2 /* cause */
         2: .line 86
      StackMap locals:
      StackMap stack:
            new io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse
            dup
            getstatic io.netty.handler.codec.socksx.v4.Socks4CommandStatus.REJECTED_OR_FAILED:Lio/netty/handler/codec/socksx/v4/Socks4CommandStatus;
            invokespecial io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse.<init>:(Lio/netty/handler/codec/socksx/v4/Socks4CommandStatus;)V
            astore 3 /* m */
        start local 3 // io.netty.handler.codec.socksx.v4.Socks4CommandResponse m
         3: .line 87
            aload 3 /* m */
            aload 2 /* cause */
            invokestatic io.netty.handler.codec.DecoderResult.failure:(Ljava/lang/Throwable;)Lio/netty/handler/codec/DecoderResult;
            invokeinterface io.netty.handler.codec.socksx.v4.Socks4CommandResponse.setDecoderResult:(Lio/netty/handler/codec/DecoderResult;)V
         4: .line 88
            aload 1 /* out */
            aload 3 /* m */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         5: .line 90
            aload 0 /* this */
            getstatic io.netty.handler.codec.socksx.v4.Socks4ClientDecoder$State.FAILURE:Lio/netty/handler/codec/socksx/v4/Socks4ClientDecoder$State;
            invokevirtual io.netty.handler.codec.socksx.v4.Socks4ClientDecoder.checkpoint:(Ljava/lang/Object;)V
         6: .line 91
            return
        end local 3 // io.netty.handler.codec.socksx.v4.Socks4CommandResponse m
        end local 2 // java.lang.Exception cause
        end local 1 // java.util.List out
        end local 0 // io.netty.handler.codec.socksx.v4.Socks4ClientDecoder this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    7     0   this  Lio/netty/handler/codec/socksx/v4/Socks4ClientDecoder;
            0    7     1    out  Ljava/util/List<Ljava/lang/Object;>;
            0    7     2  cause  Ljava/lang/Exception;
            3    7     3      m  Lio/netty/handler/codec/socksx/v4/Socks4CommandResponse;
    Signature: (Ljava/util/List<Ljava/lang/Object;>;Ljava/lang/Exception;)V
    MethodParameters:
       Name  Flags
      out    
      cause  

  static int[] $SWITCH_TABLE$io$netty$handler$codec$socksx$v4$Socks4ClientDecoder$State();
    descriptor: ()[I
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=0
         0: .line 34
            getstatic io.netty.handler.codec.socksx.v4.Socks4ClientDecoder.$SWITCH_TABLE$io$netty$handler$codec$socksx$v4$Socks4ClientDecoder$State:[I
            dup
            ifnull 1
            areturn
      StackMap locals:
      StackMap stack: int[]
         1: pop
            invokestatic io.netty.handler.codec.socksx.v4.Socks4ClientDecoder$State.values:()[Lio/netty/handler/codec/socksx/v4/Socks4ClientDecoder$State;
            arraylength
            newarray 10
            astore 0
         2: aload 0
            getstatic io.netty.handler.codec.socksx.v4.Socks4ClientDecoder$State.FAILURE:Lio/netty/handler/codec/socksx/v4/Socks4ClientDecoder$State;
            invokevirtual io.netty.handler.codec.socksx.v4.Socks4ClientDecoder$State.ordinal:()I
            iconst_3
            iastore
         3: goto 5
      StackMap locals: int[]
      StackMap stack: java.lang.NoSuchFieldError
         4: pop
      StackMap locals:
      StackMap stack:
         5: aload 0
            getstatic io.netty.handler.codec.socksx.v4.Socks4ClientDecoder$State.START:Lio/netty/handler/codec/socksx/v4/Socks4ClientDecoder$State;
            invokevirtual io.netty.handler.codec.socksx.v4.Socks4ClientDecoder$State.ordinal:()I
            iconst_1
            iastore
         6: goto 8
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
         7: pop
      StackMap locals:
      StackMap stack:
         8: aload 0
            getstatic io.netty.handler.codec.socksx.v4.Socks4ClientDecoder$State.SUCCESS:Lio/netty/handler/codec/socksx/v4/Socks4ClientDecoder$State;
            invokevirtual io.netty.handler.codec.socksx.v4.Socks4ClientDecoder$State.ordinal:()I
            iconst_2
            iastore
         9: goto 11
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        10: pop
      StackMap locals:
      StackMap stack:
        11: aload 0
            dup
            putstatic io.netty.handler.codec.socksx.v4.Socks4ClientDecoder.$SWITCH_TABLE$io$netty$handler$codec$socksx$v4$Socks4ClientDecoder$State:[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
}
Signature: Lio/netty/handler/codec/ReplayingDecoder<Lio/netty/handler/codec/socksx/v4/Socks4ClientDecoder$State;>;
SourceFile: "Socks4ClientDecoder.java"
NestMembers:
  io.netty.handler.codec.socksx.v4.Socks4ClientDecoder$State
InnerClasses:
  final State = io.netty.handler.codec.socksx.v4.Socks4ClientDecoder$State of io.netty.handler.codec.socksx.v4.Socks4ClientDecoder