public static NetCommand ReadNetCommand(TcpClient client)
        {
            /*
             * byte[] bytesFrom = new byte[(int) client.ReceiveBufferSize];
             * client.GetStream().Read(bytesFrom, 0, (int)client.ReceiveBufferSize);
             * string response = Encoding.Unicode.GetString(bytesFrom);
             * NetCommand net = NetCommand.Parse(response);
             * return net;
             */

            string     str;
            NetCommand net;

            str = ReadString(client);

            if (str != "")
            {
                try
                {
                    str = AESEncrypt.DecryptString(str);
                }
                catch (Exception e)
                {
                    str = "";
                    net = new NetCommand(NetCommand.CommandType.ERROR, 0);
                }
                try {
                    net = NetCommand.Parse(str);
                }
                catch (Exception e)
                {
                    net = new NetCommand(NetCommand.CommandType.ERROR, 0);
                }
            }
            else
            {
                net = new NetCommand(NetCommand.CommandType.ERROR, 0);
            }
            return(net);
        }