Uses of Class
com.pnfsoftware.jeb.core.units.code.android.controlflow.CFG
Packages that use CFG
Package
Description
Types related to JEB code plugins, including disassemblers, decompilers, and debuggers.
Control flow graph classes used by the Android components, including
dexdec
.Types representing an Dex structures and Dalvik code.
This package contains types used to publicly access and manipulate JEB's DEX Decompiler (referred
to as
dexdec
) Intermediate Representation (IR) objects.-
Uses of CFG in com.pnfsoftware.jeb.core.units.code
Constructors in com.pnfsoftware.jeb.core.units.code with parameters of type CFGModifierConstructorDescriptionBlockGroup
(CFG<? extends IInstruction> cfg, long blkoffStart, long blkoffStopper) RegionFinder
(CFG<? extends IInstruction> cfg, long entry, long output) Build a finder for a region having a single output, for which the region blocks cannot loop back to the entry.RegionFinder
(CFG<? extends IInstruction> cfg, long entry, Set<Long> outputs, boolean canLoopBackToEntry) Build a region finder. -
Uses of CFG in com.pnfsoftware.jeb.core.units.code.android.controlflow
Methods in com.pnfsoftware.jeb.core.units.code.android.controlflow that return CFGModifier and TypeMethodDescriptionAbstractGraphReorganizer.getReorganizedCfg()
Retrieve a CFG reorganized byAbstractGraphReorganizer.reorder(int[])
.AbstractGraphReorganizer.reorder
(int[] newOrder) Constructors in com.pnfsoftware.jeb.core.units.code.android.controlflow with parameters of type CFG -
Uses of CFG in com.pnfsoftware.jeb.core.units.code.android.dex
Methods in com.pnfsoftware.jeb.core.units.code.android.dex that return CFGModifier and TypeMethodDescriptionIDexCodeItem.getControlFlowGraph()
Returns the CFG for this method. -
Uses of CFG in com.pnfsoftware.jeb.core.units.code.android.ir
Fields in com.pnfsoftware.jeb.core.units.code.android.ir declared as CFGModifier and TypeFieldDescriptionAbstractDOptimizer.cfg
Target method's IR CFG, set up for convenience (seeIDMethodContext.getCfg()
)Methods in com.pnfsoftware.jeb.core.units.code.android.ir that return CFGModifier and TypeMethodDescriptionstatic CFG<IDInstruction>
DUtil.copyGraph
(CFG<IDInstruction> cfg, boolean deepCopy, IDMethodContext newContext) Copy an IR-CFG.IDMethodContext.getCfg()
Get the current IR (intermediate representation) CFG of the decompiled method.DExecutionParameters.getCFG()
Methods in com.pnfsoftware.jeb.core.units.code.android.ir with parameters of type CFGModifier and TypeMethodDescriptionstatic int
DUtil.checkSequence
(CFG<IDInstruction> cfg, int blkindex, DOpcodeType... opcodes) Check for instruction matching in a sequence of blocks.static CFG<IDInstruction>
DUtil.copyGraph
(CFG<IDInstruction> cfg, boolean deepCopy, IDMethodContext newContext) Copy an IR-CFG.static void
DUtil.dump
(CFG<IDInstruction> cfg, String filename) Dump an IR-CFG to a Graphvizdot
file in the user's temporary folder.static void
DUtil.dump
(CFG<IDInstruction> cfg, String filename, String title) Dump an IR-CFG to a Graphvizdot
file in the user's temporary folder.static Collection<BasicBlock<IDInstruction>>
DUtil.getReachableBlocks
(CFG<IDInstruction> cfg) Get the list of reachable blocks of the provided IR-CFG.static IDInstruction
DUtil.nextInstruction
(CFG<IDInstruction> cfg, BasicBlock<IDInstruction> b, int i) Determine the meaningful next instruction in the execution flow, assuming no exception was raised.static int
DUtil.removeGaps
(CFG<IDInstruction> cfg) Remove all gaps from the provided IR-CFG.static int
DUtil.removeUnreachableBlocks
(CFG<IDInstruction> cfg, IDTryData ex) Remove unreachable blocks from an IR-CFG.static boolean
DUtil.removeUnreachableTrampoline
(CFG<IDInstruction> cfg, BasicBlock<IDInstruction> b) Remove an unreachable trampoline block (ending on a JCOND or JUMP).void
IDMethodContext.replace
(CFG<IDInstruction> replCfg, IDTryData replExdata) Replace the current IR by a new CFG and exception information.void
IDMethodContext.replaceCFG
(CFG<IDInstruction> cfg2, Map<Integer, Integer> oldToNewOffsets) Replace the current IR by a new CFG and exception information.static boolean
DUtil.unprotectBlock
(CFG<IDInstruction> cfg, IDTryData exdata, int blkAddress) Unprotect a basic block.static void
DUtil.verifyGraph
(IDMethodContext ctx, CFG<IDInstruction> cfg, IDTryData exdata, String dumpFilename, String info) Verify an IR-CFG.static int
DUtil.verifyUnicity
(CFG<IDInstruction> cfg) Verify IR unicity within a full graph.Constructors in com.pnfsoftware.jeb.core.units.code.android.ir with parameters of type CFGModifierConstructorDescriptionCreate an object, ready to emulate an entire IR routine.DExecutionParameters
(CFG<IDInstruction> cfg, IDTryData exdata) Create an object, ready to emulate an entire IR routine.