angr.storage.memory_mixins.regioned_memory.region_meta_mixin¶
- class angr.storage.memory_mixins.regioned_memory.region_meta_mixin.Segment¶
Bases:
objectSegment represents a continuous memory region.
- __init__(offset, size=0)¶
- class angr.storage.memory_mixins.regioned_memory.region_meta_mixin.AbstractLocation¶
Bases:
objectAbstractLocation represents a location in memory.
- __init__(bbl_key, stmt_id, region_id, segment_list=None, region_offset=None, size=None)¶
- property basicblock_key¶
- property statement_id¶
- property region¶
- property segments¶
- update(region_offset, size)¶
- copy()¶
- merge(other)¶
- class angr.storage.memory_mixins.regioned_memory.region_meta_mixin.MemoryRegionMetaMixin¶
Bases:
MemoryMixin- __init__(related_function_addr=None, **kwargs)¶
- property is_stack¶
- get_abstract_locations(addr, size)¶
Get a list of abstract locations that is within the range of [addr, addr + size]
This implementation is pretty slow. But since this method won’t be called frequently, we can live with the bad implementation for now.
- Parameters:
addr – Starting address of the memory region.
size – Size of the memory region, in bytes.
- Returns:
A list of covered AbstractLocation objects, or an empty list if there is none.
- store(addr, data, size=None, *, bbl_addr=None, stmt_id=None, ins_addr=None, endness=None, **kwargs)¶
- load(addr, size=None, *, bbl_addr=None, stmt_idx=None, ins_addr=None, **kwargs)¶
- dbg_print(indent=0)¶
Print out debugging information