angr.analyses.decompiler.optimization_passes.static_vvar_rewriter

class angr.analyses.decompiler.optimization_passes.static_vvar_rewriter.FixedBuffer

Bases: object

A fixed-size buffer with known content.

__init__(ident, size, content)
Parameters:
class angr.analyses.decompiler.optimization_passes.static_vvar_rewriter.FixedBufferPtr

Bases: object

A pointer to a fixed-size buffer.

__init__(buffer_ident, offset=0)
Parameters:
  • buffer_ident (str)

  • offset (int)

class angr.analyses.decompiler.optimization_passes.static_vvar_rewriter.Offset

Bases: object

Describes an offset value.

__init__(value, bits)
Parameters:
class angr.analyses.decompiler.optimization_passes.static_vvar_rewriter.VVarRewritingVisitor

Bases: AILBlockRewriter

The visitor that rewrites vvars and their reads.

__init__(static_buffers, static_vvars, kb, manager)
Parameters:
class angr.analyses.decompiler.optimization_passes.static_vvar_rewriter.VVarAliasVisitor

Bases: AILBlockViewer

The visitor that discovers const assignments and aliases of existing static vvars.

__init__(static_buffers, static_vvars, kb)
Parameters:
class angr.analyses.decompiler.optimization_passes.static_vvar_rewriter.StaticVVarRewriter

Bases: OptimizationPass

Rewrite user-specified vvars as static values or fix-sized buffers. Also rewrites reads from pointers derived off of such vvars.

ARCHES = None
PLATFORMS = None
STAGE: OptimizationPassStage = 7
NAME = 'Static virtual variable rewriter'
DESCRIPTION = 'Rewrite user-specified vvars as static values or fix-sized buffers. Also rewrites reads from pointers derived off\n    of such vvars.'
__init__(*args, static_buffers=None, static_vvars=None, **kwargs)
Parameters: