Exemplo n.º 1
0
        public int decrypt(Blocks theBlocks)
        {
            try {
                blocks = theBlocks;
                callResults = new List<CallResult>();
                allBlocks = new List<Block>(blocks.MethodBlocks.getAllBlocks());

                findAllCallResults();
                inlineAllCalls();
                inlineReturnValues();
                return callResults.Count;
            }
            finally {
                blocks = null;
                callResults = null;
                allBlocks = null;
                variableValues = null;
            }
        }
Exemplo n.º 2
0
 void getLocalVariableValue(VariableDefinition variable, out object value)
 {
     if (variableValues == null)
         variableValues = new VariableValues(blocks.Locals, allBlocks);
     var val = variableValues.getValue(variable);
     if (!val.isValid())
         throw new ApplicationException("Could not get value of local variable");
     value = val.Value;
 }
Exemplo n.º 3
0
        public void decrypt(Blocks theBlocks)
        {
            try {
                blocks = theBlocks;
                decryptCalls = new List<DecryptCall>();
                allBlocks = new List<Block>(blocks.MethodBlocks.getAllBlocks());

                findAllDecryptCalls();
                decryptAllCalls();
                restoreDecryptedStrings();
            }
            finally {
                blocks = null;
                decryptCalls = null;
                allBlocks = null;
                variableValues = null;
            }
        }