示例#1
0
        private void RunTest(string sExp)
        {
            var ppf     = new ProcedurePaddingFinder(sr);
            var padding = ppf.FindPaddingBlocks();

            ppf.Remove(padding);
        }
示例#2
0
        public void Ppf_SimplePadding_Remove()
        {
            Ret(0x1000, 1); // end of preceding function.
            Pad(0x1001, 1);
            Pad(0x1002, 1);
            Lin(0x1003, 1);

            BuildTest();
            var ppf     = new ProcedurePaddingFinder(sr);
            var padding = ppf.FindPaddingBlocks();

            ppf.Remove(padding);
            Assert.IsFalse(sr.ICFG.Nodes.Any(block => block.Address.ToLinear() == 0x1001), "Padding block should be gone.");
        }