public override byte[] OnRecv(byte[] data, int length) { for (int i = 0; i < length; i++) { input.Add(data[i]); } while (input.Length >= 6) { if (needDecode && SS_Hash != null) { Decode(input); needDecode = false; } input.pos = 0; ushort len = input.GetWord(); if (input.Length < len + 2) { return(null); } needDecode = true; data = input.GetArray(4, len - 2); OP code = (OP)(input[2] + (input[3] << 8)); input.Remove(0, len + 2); SetInput(data); RunMsg(code); } return(null); }