C# 클래스 Reko.Analysis.DataFlowAnalysis

We are keenly interested in discovering the register linkage between procedures, i.e. what registers are used by a called procedure, and what modified registers are used by a calling procedure. Once these registers have been discovered, we can separate the procedures from each other and proceed with the decompilation.
파일 보기 프로젝트 열기: uxmal/reko 1 사용 예제들

공개 메소드들

메소드 설명
AnalyzeProgram ( ) : void
AnalyzeProgram2 ( ) : void

Analyizes the procedures of a program by finding all strongly connected components (SCCs) and processing the SCCs one by one.

BuildExpressionTrees ( ) : void

Processes procedures individually, building complex expression trees out of the simple, close-to-the-machine code generated by the disassembly.

DataFlowAnalysis ( Program program, IImportResolver importResolver, DecompilerEventListener eventListener ) : Reko.Core
DumpProgram ( ) : void
UntangleProcedures ( ) : void

Finds all interprocedural register dependencies (in- and out-parameters) and abstracts them away by rewriting as calls.

비공개 메소드들

메소드 설명
UntangleProcedureScc ( IList procs ) : void

메소드 상세

AnalyzeProgram() 공개 메소드

public AnalyzeProgram ( ) : void
리턴 void

AnalyzeProgram2() 공개 메소드

Analyizes the procedures of a program by finding all strongly connected components (SCCs) and processing the SCCs one by one.
public AnalyzeProgram2 ( ) : void
리턴 void

BuildExpressionTrees() 공개 메소드

Processes procedures individually, building complex expression trees out of the simple, close-to-the-machine code generated by the disassembly.
public BuildExpressionTrees ( ) : void
리턴 void

DataFlowAnalysis() 공개 메소드

public DataFlowAnalysis ( Program program, IImportResolver importResolver, DecompilerEventListener eventListener ) : Reko.Core
program Program
importResolver IImportResolver
eventListener DecompilerEventListener
리턴 Reko.Core

DumpProgram() 공개 메소드

public DumpProgram ( ) : void
리턴 void

UntangleProcedures() 공개 메소드

Finds all interprocedural register dependencies (in- and out-parameters) and abstracts them away by rewriting as calls.
public UntangleProcedures ( ) : void
리턴 void