public class io.netty.handler.codec.socks.SocksCmdResponseDecoder extends io.netty.handler.codec.ReplayingDecoder<io.netty.handler.codec.socks.SocksCmdResponseDecoder$State>
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: io.netty.handler.codec.socks.SocksCmdResponseDecoder
  super_class: io.netty.handler.codec.ReplayingDecoder
{
  private io.netty.handler.codec.socks.SocksCmdStatus cmdStatus;
    descriptor: Lio/netty/handler/codec/socks/SocksCmdStatus;
    flags: (0x0002) ACC_PRIVATE

  private io.netty.handler.codec.socks.SocksAddressType addressType;
    descriptor: Lio/netty/handler/codec/socks/SocksAddressType;
    flags: (0x0002) ACC_PRIVATE

  private static volatile int[] $SWITCH_TABLE$io$netty$handler$codec$socks$SocksAddressType;
    descriptor: [I
    flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC

  private static volatile int[] $SWITCH_TABLE$io$netty$handler$codec$socks$SocksCmdResponseDecoder$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.socks.SocksCmdResponseDecoder this
         0: .line 36
            aload 0 /* this */
            getstatic io.netty.handler.codec.socks.SocksCmdResponseDecoder$State.CHECK_PROTOCOL_VERSION:Lio/netty/handler/codec/socks/SocksCmdResponseDecoder$State;
            invokespecial io.netty.handler.codec.ReplayingDecoder.<init>:(Ljava/lang/Object;)V
         1: .line 37
            return
        end local 0 // io.netty.handler.codec.socks.SocksCmdResponseDecoder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lio/netty/handler/codec/socks/SocksCmdResponseDecoder;

  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=7, locals=7, args_size=4
        start local 0 // io.netty.handler.codec.socks.SocksCmdResponseDecoder this
        start local 1 // io.netty.channel.ChannelHandlerContext ctx
        start local 2 // io.netty.buffer.ByteBuf byteBuf
        start local 3 // java.util.List out
         0: .line 41
            invokestatic io.netty.handler.codec.socks.SocksCmdResponseDecoder.$SWITCH_TABLE$io$netty$handler$codec$socks$SocksCmdResponseDecoder$State:()[I
            aload 0 /* this */
            invokevirtual io.netty.handler.codec.socks.SocksCmdResponseDecoder.state:()Ljava/lang/Object;
            checkcast io.netty.handler.codec.socks.SocksCmdResponseDecoder$State
            invokevirtual io.netty.handler.codec.socks.SocksCmdResponseDecoder$State.ordinal:()I
            iaload
            tableswitch { // 1 - 3
                    1: 1
                    2: 5
                    3: 9
              default: 28
          }
         1: .line 43
      StackMap locals:
      StackMap stack:
            aload 2 /* byteBuf */
            invokevirtual io.netty.buffer.ByteBuf.readByte:()B
            getstatic io.netty.handler.codec.socks.SocksProtocolVersion.SOCKS5:Lio/netty/handler/codec/socks/SocksProtocolVersion;
            invokevirtual io.netty.handler.codec.socks.SocksProtocolVersion.byteValue:()B
            if_icmpeq 4
         2: .line 44
            aload 3 /* out */
            getstatic io.netty.handler.codec.socks.SocksCommonUtils.UNKNOWN_SOCKS_RESPONSE:Lio/netty/handler/codec/socks/SocksResponse;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         3: .line 45
            goto 29
         4: .line 47
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic io.netty.handler.codec.socks.SocksCmdResponseDecoder$State.READ_CMD_HEADER:Lio/netty/handler/codec/socks/SocksCmdResponseDecoder$State;
            invokevirtual io.netty.handler.codec.socks.SocksCmdResponseDecoder.checkpoint:(Ljava/lang/Object;)V
         5: .line 50
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* byteBuf */
            invokevirtual io.netty.buffer.ByteBuf.readByte:()B
            invokestatic io.netty.handler.codec.socks.SocksCmdStatus.valueOf:(B)Lio/netty/handler/codec/socks/SocksCmdStatus;
            putfield io.netty.handler.codec.socks.SocksCmdResponseDecoder.cmdStatus:Lio/netty/handler/codec/socks/SocksCmdStatus;
         6: .line 51
            aload 2 /* byteBuf */
            iconst_1
            invokevirtual io.netty.buffer.ByteBuf.skipBytes:(I)Lio/netty/buffer/ByteBuf;
            pop
         7: .line 52
            aload 0 /* this */
            aload 2 /* byteBuf */
            invokevirtual io.netty.buffer.ByteBuf.readByte:()B
            invokestatic io.netty.handler.codec.socks.SocksAddressType.valueOf:(B)Lio/netty/handler/codec/socks/SocksAddressType;
            putfield io.netty.handler.codec.socks.SocksCmdResponseDecoder.addressType:Lio/netty/handler/codec/socks/SocksAddressType;
         8: .line 53
            aload 0 /* this */
            getstatic io.netty.handler.codec.socks.SocksCmdResponseDecoder$State.READ_CMD_ADDRESS:Lio/netty/handler/codec/socks/SocksCmdResponseDecoder$State;
            invokevirtual io.netty.handler.codec.socks.SocksCmdResponseDecoder.checkpoint:(Ljava/lang/Object;)V
         9: .line 56
      StackMap locals:
      StackMap stack:
            invokestatic io.netty.handler.codec.socks.SocksCmdResponseDecoder.$SWITCH_TABLE$io$netty$handler$codec$socks$SocksAddressType:()[I
            aload 0 /* this */
            getfield io.netty.handler.codec.socks.SocksCmdResponseDecoder.addressType:Lio/netty/handler/codec/socks/SocksAddressType;
            invokevirtual io.netty.handler.codec.socks.SocksAddressType.ordinal:()I
            iaload
            tableswitch { // 1 - 4
                    1: 10
                    2: 14
                    3: 19
                    4: 25
              default: 27
          }
        10: .line 58
      StackMap locals:
      StackMap stack:
            aload 2 /* byteBuf */
            invokevirtual io.netty.buffer.ByteBuf.readInt:()I
            invokestatic io.netty.util.NetUtil.intToIpAddress:(I)Ljava/lang/String;
            astore 4 /* host */
        start local 4 // java.lang.String host
        11: .line 59
            aload 2 /* byteBuf */
            invokevirtual io.netty.buffer.ByteBuf.readUnsignedShort:()I
            istore 5 /* port */
        start local 5 // int port
        12: .line 60
            aload 3 /* out */
            new io.netty.handler.codec.socks.SocksCmdResponse
            dup
            aload 0 /* this */
            getfield io.netty.handler.codec.socks.SocksCmdResponseDecoder.cmdStatus:Lio/netty/handler/codec/socks/SocksCmdStatus;
            aload 0 /* this */
            getfield io.netty.handler.codec.socks.SocksCmdResponseDecoder.addressType:Lio/netty/handler/codec/socks/SocksAddressType;
            aload 4 /* host */
            iload 5 /* port */
            invokespecial io.netty.handler.codec.socks.SocksCmdResponse.<init>:(Lio/netty/handler/codec/socks/SocksCmdStatus;Lio/netty/handler/codec/socks/SocksAddressType;Ljava/lang/String;I)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        13: .line 61
            goto 29
        end local 5 // int port
        end local 4 // java.lang.String host
        14: .line 64
      StackMap locals:
      StackMap stack:
            aload 2 /* byteBuf */
            invokevirtual io.netty.buffer.ByteBuf.readByte:()B
            istore 4 /* fieldLength */
        start local 4 // int fieldLength
        15: .line 65
            aload 2 /* byteBuf */
            iload 4 /* fieldLength */
            invokestatic io.netty.handler.codec.socks.SocksCommonUtils.readUsAscii:(Lio/netty/buffer/ByteBuf;I)Ljava/lang/String;
            astore 5 /* host */
        start local 5 // java.lang.String host
        16: .line 66
            aload 2 /* byteBuf */
            invokevirtual io.netty.buffer.ByteBuf.readUnsignedShort:()I
            istore 6 /* port */
        start local 6 // int port
        17: .line 67
            aload 3 /* out */
            new io.netty.handler.codec.socks.SocksCmdResponse
            dup
            aload 0 /* this */
            getfield io.netty.handler.codec.socks.SocksCmdResponseDecoder.cmdStatus:Lio/netty/handler/codec/socks/SocksCmdStatus;
            aload 0 /* this */
            getfield io.netty.handler.codec.socks.SocksCmdResponseDecoder.addressType:Lio/netty/handler/codec/socks/SocksAddressType;
            aload 5 /* host */
            iload 6 /* port */
            invokespecial io.netty.handler.codec.socks.SocksCmdResponse.<init>:(Lio/netty/handler/codec/socks/SocksCmdStatus;Lio/netty/handler/codec/socks/SocksAddressType;Ljava/lang/String;I)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        18: .line 68
            goto 29
        end local 6 // int port
        end local 5 // java.lang.String host
        end local 4 // int fieldLength
        19: .line 71
      StackMap locals:
      StackMap stack:
            bipush 16
            newarray 8
            astore 4 /* bytes */
        start local 4 // byte[] bytes
        20: .line 72
            aload 2 /* byteBuf */
            aload 4 /* bytes */
            invokevirtual io.netty.buffer.ByteBuf.readBytes:([B)Lio/netty/buffer/ByteBuf;
            pop
        21: .line 73
            aload 4 /* bytes */
            invokestatic io.netty.handler.codec.socks.SocksCommonUtils.ipv6toStr:([B)Ljava/lang/String;
            astore 5 /* host */
        start local 5 // java.lang.String host
        22: .line 74
            aload 2 /* byteBuf */
            invokevirtual io.netty.buffer.ByteBuf.readUnsignedShort:()I
            istore 6 /* port */
        start local 6 // int port
        23: .line 75
            aload 3 /* out */
            new io.netty.handler.codec.socks.SocksCmdResponse
            dup
            aload 0 /* this */
            getfield io.netty.handler.codec.socks.SocksCmdResponseDecoder.cmdStatus:Lio/netty/handler/codec/socks/SocksCmdStatus;
            aload 0 /* this */
            getfield io.netty.handler.codec.socks.SocksCmdResponseDecoder.addressType:Lio/netty/handler/codec/socks/SocksAddressType;
            aload 5 /* host */
            iload 6 /* port */
            invokespecial io.netty.handler.codec.socks.SocksCmdResponse.<init>:(Lio/netty/handler/codec/socks/SocksCmdStatus;Lio/netty/handler/codec/socks/SocksAddressType;Ljava/lang/String;I)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        24: .line 76
            goto 29
        end local 6 // int port
        end local 5 // java.lang.String host
        end local 4 // byte[] bytes
        25: .line 79
      StackMap locals:
      StackMap stack:
            aload 3 /* out */
            getstatic io.netty.handler.codec.socks.SocksCommonUtils.UNKNOWN_SOCKS_RESPONSE:Lio/netty/handler/codec/socks/SocksResponse;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        26: .line 80
            goto 29
        27: .line 83
      StackMap locals:
      StackMap stack:
            new java.lang.Error
            dup
            invokespecial java.lang.Error.<init>:()V
            athrow
        28: .line 89
      StackMap locals:
      StackMap stack:
            new java.lang.Error
            dup
            invokespecial java.lang.Error.<init>:()V
            athrow
        29: .line 92
      StackMap locals:
      StackMap stack:
            aload 1 /* ctx */
            invokeinterface io.netty.channel.ChannelHandlerContext.pipeline:()Lio/netty/channel/ChannelPipeline;
            aload 0 /* this */
            invokeinterface io.netty.channel.ChannelPipeline.remove:(Lio/netty/channel/ChannelHandler;)Lio/netty/channel/ChannelPipeline;
            pop
        30: .line 93
            return
        end local 3 // java.util.List out
        end local 2 // io.netty.buffer.ByteBuf byteBuf
        end local 1 // io.netty.channel.ChannelHandlerContext ctx
        end local 0 // io.netty.handler.codec.socks.SocksCmdResponseDecoder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   31     0         this  Lio/netty/handler/codec/socks/SocksCmdResponseDecoder;
            0   31     1          ctx  Lio/netty/channel/ChannelHandlerContext;
            0   31     2      byteBuf  Lio/netty/buffer/ByteBuf;
            0   31     3          out  Ljava/util/List<Ljava/lang/Object;>;
           11   14     4         host  Ljava/lang/String;
           12   14     5         port  I
           15   19     4  fieldLength  I
           16   19     5         host  Ljava/lang/String;
           17   19     6         port  I
           20   25     4        bytes  [B
           22   25     5         host  Ljava/lang/String;
           23   25     6         port  I
    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      
      byteBuf  
      out      

  static int[] $SWITCH_TABLE$io$netty$handler$codec$socks$SocksAddressType();
    descriptor: ()[I
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=0
         0: .line 30
            getstatic io.netty.handler.codec.socks.SocksCmdResponseDecoder.$SWITCH_TABLE$io$netty$handler$codec$socks$SocksAddressType:[I
            dup
            ifnull 1
            areturn
      StackMap locals:
      StackMap stack: int[]
         1: pop
            invokestatic io.netty.handler.codec.socks.SocksAddressType.values:()[Lio/netty/handler/codec/socks/SocksAddressType;
            arraylength
            newarray 10
            astore 0
         2: aload 0
            getstatic io.netty.handler.codec.socks.SocksAddressType.DOMAIN:Lio/netty/handler/codec/socks/SocksAddressType;
            invokevirtual io.netty.handler.codec.socks.SocksAddressType.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 io.netty.handler.codec.socks.SocksAddressType.IPv4:Lio/netty/handler/codec/socks/SocksAddressType;
            invokevirtual io.netty.handler.codec.socks.SocksAddressType.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.socks.SocksAddressType.IPv6:Lio/netty/handler/codec/socks/SocksAddressType;
            invokevirtual io.netty.handler.codec.socks.SocksAddressType.ordinal:()I
            iconst_3
            iastore
         9: goto 11
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        10: pop
      StackMap locals:
      StackMap stack:
        11: aload 0
            getstatic io.netty.handler.codec.socks.SocksAddressType.UNKNOWN:Lio/netty/handler/codec/socks/SocksAddressType;
            invokevirtual io.netty.handler.codec.socks.SocksAddressType.ordinal:()I
            iconst_4
            iastore
        12: goto 14
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        13: pop
      StackMap locals:
      StackMap stack:
        14: aload 0
            dup
            putstatic io.netty.handler.codec.socks.SocksCmdResponseDecoder.$SWITCH_TABLE$io$netty$handler$codec$socks$SocksAddressType:[I
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
      Exception table:
        from    to  target  type
           2     3       4  Class java.lang.NoSuchFieldError
           5     6       7  Class java.lang.NoSuchFieldError
           8     9      10  Class java.lang.NoSuchFieldError
          11    12      13  Class java.lang.NoSuchFieldError

  static int[] $SWITCH_TABLE$io$netty$handler$codec$socks$SocksCmdResponseDecoder$State();
    descriptor: ()[I
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=0
         0: .line 30
            getstatic io.netty.handler.codec.socks.SocksCmdResponseDecoder.$SWITCH_TABLE$io$netty$handler$codec$socks$SocksCmdResponseDecoder$State:[I
            dup
            ifnull 1
            areturn
      StackMap locals:
      StackMap stack: int[]
         1: pop
            invokestatic io.netty.handler.codec.socks.SocksCmdResponseDecoder$State.values:()[Lio/netty/handler/codec/socks/SocksCmdResponseDecoder$State;
            arraylength
            newarray 10
            astore 0
         2: aload 0
            getstatic io.netty.handler.codec.socks.SocksCmdResponseDecoder$State.CHECK_PROTOCOL_VERSION:Lio/netty/handler/codec/socks/SocksCmdResponseDecoder$State;
            invokevirtual io.netty.handler.codec.socks.SocksCmdResponseDecoder$State.ordinal:()I
            iconst_1
            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.socks.SocksCmdResponseDecoder$State.READ_CMD_ADDRESS:Lio/netty/handler/codec/socks/SocksCmdResponseDecoder$State;
            invokevirtual io.netty.handler.codec.socks.SocksCmdResponseDecoder$State.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 io.netty.handler.codec.socks.SocksCmdResponseDecoder$State.READ_CMD_HEADER:Lio/netty/handler/codec/socks/SocksCmdResponseDecoder$State;
            invokevirtual io.netty.handler.codec.socks.SocksCmdResponseDecoder$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.socks.SocksCmdResponseDecoder.$SWITCH_TABLE$io$netty$handler$codec$socks$SocksCmdResponseDecoder$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/socks/SocksCmdResponseDecoder$State;>;
SourceFile: "SocksCmdResponseDecoder.java"
NestMembers:
  io.netty.handler.codec.socks.SocksCmdResponseDecoder$State
InnerClasses:
  final State = io.netty.handler.codec.socks.SocksCmdResponseDecoder$State of io.netty.handler.codec.socks.SocksCmdResponseDecoder