Instance
TheInstance class provides access to normal angr project objects like a Project, CFG, and other analyses.
Constructor
Properties
The current angr project
The current control flow graph
The current CFBlanket (fast CFG representation)
The knowledge base from the current project (read-only property)
Global simulation managers list
Global states list
Global patches update notifier
Saved log messages
Currently selected trace
Global traces list
Currently focused view state
Manager for breakpoints
Manager for function signatures
Manager for the list of available debuggers
Manager for the active debugger
Configuration for analyses to run
Current path to the loaded binary (local path if loaded from URL)
Original path or URL of the loaded binary
Path to the angrDB database file
Arguments used for CFG generation
Arguments used for variable recovery
Separate knowledge base for pseudocode variable information
Methods
register_container
Name of the container (will be accessible as instance attribute)
Function that returns the default value for this container
Type of the container’s value
Human-readable description of the container
Whether logging is allowed for this container’s events
initialize
Whether the instance has already been initialized
initialize_pseudocode_variable_kb
get_instruction_text_at
Address of the instruction
Text representation of the instruction, or None if no instruction is found
delete_hook
Address of the hook to remove
add_breakpoint
Address (int) or symbol name (str) for the breakpoint
Breakpoint type: “execute”, “write”, or “read”. Auto-detected if not provided.
Size of the breakpoint in bytes
set_comment
Address to set the comment at
The comment text. Pass empty string or None to delete the comment.
Callbacks
Callback for instruction background color:
(addr: int, is_selected: bool) -> NoneCallback for label rename:
(addr: int, new_name: str) -> NoneCallback when a comment is set:
(addr: int, comment_text: str) -> NoneCallback when a comment changes:
(addr: int, comment: str, created: bool, decomp: bool, deleted: bool) -> NoneObjectContainer
TheObjectContainer class is a proxy wrapper that adds event notification functionality to any object.
Constructor
The object to wrap
Name for the container (auto-generated if not provided)
Whether logging is permitted for this container
Properties
The wrapped object (read/write)
True if the wrapped object is None
The container’s name
Methods
am_subscribe
Callback function to invoke on events:
(**kwargs) -> Noneam_unsubscribe
The listener to remove
am_event
Arbitrary keyword arguments to pass to listeners
am_event_gui
Arbitrary keyword arguments to pass to listeners