Source/sources/kawa/Telnet.java
public void handle(int command, int option) throws IOException {
        boolean otherSide;
        byte state;
        boolean wantOn = true;
        int i = DONT;
        int i2 = f246DO;
        if (command < 253) {
            otherSide = true;
        } else {
            otherSide = false;
        }
        if ((command & 1) == 0) {
            wantOn = false;
        }
        byte state2 = this.optionsState[option];
        if (otherSide) {
            state2 = (byte) (state2 >> 3);
        }
        switch ((state2 >> 3) & 7) {
            case 0:
                if (wantOn) {
                    if (!change(command, option)) {
                        TelnetOutputStream telnetOutputStream = this.out;
                        if (!otherSide) {
                            i = 252;
                        }
                        telnetOutputStream.writeCommand(i, option);
                        break;
                    } else {
                        state2 = 5;
                        this.out.writeCommand(otherSide ? 253 : WILL, option);
                        break;
                    }
                } else {
                    return;
                }
            case 1:
                state2 = 0;
                break;
            case 2:
                state2 = 3;
                TelnetOutputStream telnetOutputStream2 = this.out;
                if (!otherSide) {
                    i2 = WILL;
                }
                telnetOutputStream2.writeCommand(i2, option);
                break;
            case 3:
                if (!wantOn) {
                    state2 = 0;
                    break;
                } else {
                    state2 = 5;
                    change(command, option);
                    break;
                }
            case 4:
                if (!wantOn) {
                    state2 = 0;
                    break;
                } else {
                    state2 = 1;
                    TelnetOutputStream telnetOutputStream3 = this.out;
                    if (!otherSide) {
                        i = 252;
                    }
                    telnetOutputStream3.writeCommand(i, option);
                    break;
                }
            case 5:
                if (!wantOn) {
                    state2 = 0;
                    change(command, option);
                    this.out.writeCommand(otherSide ? 254 : 252, option);
                    break;
                } else {
                    return;
                }
        }
        if (otherSide) {
            state = (byte) ((this.optionsState[option] & 199) | (state2 << 3));
        } else {
            state = (byte) ((this.optionsState[option] & 248) | state2);
        }
        this.optionsState[option] = state;
    }
/* access modifiers changed from: 0000 */
access modifiers changed from: 0000
access modifiers changed from : 0000
public void handle(int command, int option) throws IOException {
        boolean otherSide;
        byte state;
        boolean wantOn = true;
        int i = DONT;
        int i2 = f246DO;
        if (command < 253) {
            otherSide = true;
        } else {
            otherSide = false;
        }
        if ((command & 1) == 0) {
            wantOn = false;
        }
        byte state2 = this.optionsState[option];
        if (otherSide) {
            state2 = (byte) (state2 >> 3);
        }
        switch ((state2 >> 3) & 7) {
            case 0:
                if (wantOn) {
                    if (!change(command, option)) {
                        TelnetOutputStream telnetOutputStream = this.out;
                        if (!otherSide) {
                            i = 252;
                        }
                        telnetOutputStream.writeCommand(i, option);
                        break;
                    } else {
                        state2 = 5;
                        this.out.writeCommand(otherSide ? 253 : WILL, option);
                        break;
                    }
                } else {
                    return;
                }
            case 1:
                state2 = 0;
                break;
            case 2:
                state2 = 3;
                TelnetOutputStream telnetOutputStream2 = this.out;
                if (!otherSide) {
                    i2 = WILL;
                }
                telnetOutputStream2.writeCommand(i2, option);
                break;
            case 3:
                if (!wantOn) {
                    state2 = 0;
                    break;
                } else {
                    state2 = 5;
                    change(command, option);
                    break;
                }
            case 4:
                if (!wantOn) {
                    state2 = 0;
                    break;
                } else {
                    state2 = 1;
                    TelnetOutputStream telnetOutputStream3 = this.out;
                    if (!otherSide) {
                        i = 252;
                    }
                    telnetOutputStream3.writeCommand(i, option);
                    break;
                }
            case 5:
                if (!wantOn) {
                    state2 = 0;
                    change(command, option);
                    this.out.writeCommand(otherSide ? 254 : 252, option);
                    break;
                } else {
                    return;
                }
        }
        if (otherSide) {
            state = (byte) ((this.optionsState[option] & 199) | (state2 << 3));
        } else {
            state = (byte) ((this.optionsState[option] & 248) | state2);
        }
        this.optionsState[option] = state;
    }
public void handle ( int command , int option ) throws IOException { boolean otherSide ; byte state ; boolean wantOn = true ; int i = DONT ; int i2 = f246DO ; if ( command < 253 ) { otherSide = true ; } else { otherSide = false ; } if ( ( command & 1 ) == 0 ) { wantOn = false ; } byte state2 = this . optionsState [ option ] ; if ( otherSide ) { state2 = ( byte ) ( state2 >> 3 ) ; } switch ( ( state2 >> 3 ) & 7 ) { case 0 : if ( wantOn ) { if ( ! change ( command , option ) ) { TelnetOutputStream telnetOutputStream = this . out ; if ( ! otherSide ) { i = 252 ; } telnetOutputStream . writeCommand ( i , option ) ; break ; } else { state2 = 5 ; this . out . writeCommand ( otherSide ? 253 : WILL , option ) ; break ; } } else { return ; } case 1 : state2 = 0 ; break ; case 2 : state2 = 3 ; TelnetOutputStream telnetOutputStream2 = this . out ; if ( ! otherSide ) { i2 = WILL ; } telnetOutputStream2 . writeCommand ( i2 , option ) ; break ; case 3 : if ( ! wantOn ) { state2 = 0 ; break ; } else { state2 = 5 ; change ( command , option ) ; break ; } case 4 : if ( ! wantOn ) { state2 = 0 ; break ; } else { state2 = 1 ; TelnetOutputStream telnetOutputStream3 = this . out ; if ( ! otherSide ) { i = 252 ; } telnetOutputStream3 . writeCommand ( i , option ) ; break ; } case 5 : if ( ! wantOn ) { state2 = 0 ; change ( command , option ) ; this . out . writeCommand ( otherSide ? 254 : 252 , option ) ; break ; } else { return ; } } if ( otherSide ) { state = ( byte ) ( ( this . optionsState [ option ] & 199 ) | ( state2 << 3 ) ) ; } else { state = ( byte ) ( ( this . optionsState [ option ] & 248 ) | state2 ) ; } this . optionsState [ option ] = state ; }
access modifiers changed from: 0000
access modifiers changed from : 0000