Table of Contents

Namespace Echo.DataFlow.Construction

Classes

StateTransitioner<TInstruction>

Provides a base implementation for a state transition resolver, that maintains a data flow graph (DFG) for resolving each program state transition an instruction might apply.

StaticToSymbolicAdapter<TInstruction>

Provides an implementation of an adapter that maps a IStaticInstructionProvider<TInstruction> to a ISymbolicInstructionProvider<TInstruction>, by using the program counter stored in the program state as an offset to look up the current instruction.

SymbolicFlowGraphBuilder<TInstruction>

Provides an implementation of a control flow graph builder that traverses the instructions in a recursive manner, and maintains an symbolic program state to determine all possible branch targets of any indirect branching instruction.

Structs

StateTransition<TInstruction>

Represents an object that encodes the transition from one program state to another after an instruction was executed.

Interfaces

IStateTransitioner<TInstruction>

Provides members for resolving the next possible states of a program after the execution of an instruction.

ISymbolicInstructionProvider<TInstruction>

Provides members for obtaining instructions based on the current state of a program.