Esempio n. 1
0
        private byte[] Encrypt(byte[] data)
        {
            var isX7 = Name.EndsWith(".x7", StringComparison.InvariantCultureIgnoreCase);

            if (Name.EndsWith(".lua", StringComparison.InvariantCultureIgnoreCase) || isX7)
            {
                if (isX7)
                {
                    data = S4Crypto.EncryptX7(data);
                }
                data = S4Crypto.EncryptAES(data);
                S4Crypto.Encrypt(data);
            }

            Length = data.Length;

            S4Crypto.EncryptCapped(data);
            if (data.Length < 1048576)
            {
                data = miniLzo.Compress(data);
            }
            S4Crypto.SwapBytes(data);

            return(data);
        }