private static void Main(string[] args) { Console.WriteLine("Do you really just run random binaries given to you in challenges?"); Console.ReadLine(); Environment.Exit(0); MD5CryptoServiceProvider mD5CryptoServiceProvider = new MD5CryptoServiceProvider(); AesCryptoServiceProvider aesCryptoServiceProvider = new AesCryptoServiceProvider(); foreach (string current in Directory.EnumerateDirectories(Program.target)) // "C:\Program Files\" { byte[] first = mD5CryptoServiceProvider.ComputeHash(Encoding.UTF8.GetBytes(current.Replace(Program.target, ""))); // "C:\Program Files\" if (first.SequenceEqual(Program.marker)) { byte[] rgbKey = mD5CryptoServiceProvider.ComputeHash(Encoding.UTF8.GetBytes("sneakyprefix" + current.Replace(Program.target, ""))); // "C:\Program Files\" ICryptoTransform cryptoTransform = aesCryptoServiceProvider.CreateDecryptor(rgbKey, new byte[] { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 }); byte[] bytes = cryptoTransform.TransformFinalBlock(Program.data, 0, Program.data.Length); Console.Write(Encoding.UTF7.GetString(bytes)); } } Console.ReadLine(); }