using System; namespace Filter.Networking.Instances { internal class FiestaCrypto { public Int16 Xor; public FiestaCrypto(Int16 TransferXor) { Xor = TransferXor; } public void Crypt(Byte[] Buffer, Int32 Start, Int32 Length) { for (Int32 Counter = 0; Counter < Length; Counter++) { Buffer[Start + Counter] ^= XorTable[Xor]; Xor++; if (Xor == 499) { Xor = 0; } } } public void Crypt1(Byte[] Buffer, Int32 Start, Int32 Length) { for (Int32 Counter = 0; Counter < Length; Counter++) { Buffer[Start + Counter] ^= XorTable[Xor]; Xor--; if (Xor == 499) { Xor = 0; } } } private readonly Byte[] XorTable = Program.Config.CryptoTable.ToArray(); } }