angr.analyses.decompiler.optimization_passes.inlined_wcscpy_simplifier¶
- class angr.analyses.decompiler.optimization_passes.inlined_wcscpy_simplifier.InlinedWcscpySimplifier¶
Bases:
OptimizationPassSimplifies inlined wide string copying logic into calls to wcsncpy, and consolidates multiple consecutive inlined wcsncpy calls.
- ARCHES = None¶
- PLATFORMS = None¶
- STAGE: OptimizationPassStage = 3¶
- NAME = 'Simplify inlined wcscpy'¶
- DESCRIPTION = 'Simplify inlined wcscpy patterns and consolidate multiple inlined wcsncpy calls'¶
- __init__(*args, **kwargs)¶
- static even_offsets_are_zero(lst)¶
- static odd_offsets_are_zero(lst)¶
- static is_integer_likely_a_wide_string(v, size, endness, min_length=4)¶
- static is_inlined_wcsncpy(stmt)¶
- class angr.analyses.decompiler.optimization_passes.inlined_wcscpy_simplifier.InlinedWcscpySimplifierLate¶
Bases:
InlinedWcscpySimplifierSame as InlinedWcscpySimplifier but runs after SSA level 1 transformation.
- STAGE: OptimizationPassStage = 4¶
- NAME = 'Simplify inlined wcscpy (late)'¶