public void TestBase255XorEncoding()
        {
            BaseNEncoder encoder = new BaseNEncoder();

            byte[] nullShellcode = new byte[] { 0, 0, 0 };

            string xorKey = "\x00\x00\x00";

            byte[] xoredNullShellcode = XorPayloadAgainstString(nullShellcode, xorKey);
            Assert.AreEqual(xorKey, Encoding.Default.GetString(xoredNullShellcode));

            byte[] shellcode = TestHelpers.GetPopCalc64Shellcode();
            shellcode = XorPayloadAgainstString(shellcode, xorKey);
            // var strings = ConvertPayloadToStrings(shellcode, encoder);
            var strings = FormulaHelper.BuildBase64PayloadMacros(shellcode);

            foreach (var s in strings)
            {
                Console.WriteLine(string.Format("=\"{0}\"", s));
            }
        }
        public void TestBase255EncodingForBasicPayload()
        {
            byte[] shellcode = TestHelpers.GetPopCalcShellcode();

            BaseNEncoder encoder = new BaseNEncoder();

            var strings = FormulaHelper.BuildBase64PayloadMacros(shellcode);

            foreach (var s in strings)
            {
                Console.WriteLine(string.Format("=\"{0}\"", s));
            }

            string encodedShellcode = encoder.Encode(shellcode);



            int encodedLen = encodedShellcode.Length;

            byte[] decodedShellcode = encoder.Decode(encodedShellcode);
            Assert.AreEqual(shellcode, decodedShellcode);
        }