PE¶
- class cle.backends.PE[source]¶
Bases:
Backend
Representation of a PE (i.e. Windows) binary.
Useful backend options:
debug_symbols
: Provides the path to a PDB file which contains the binary’s debug symbols
- is_default = True¶
- __init__(*args, debug_symbols=None, **kwargs)[source]¶
- Parameters:
binary – The path to the binary to load
binary_stream – The open stream to this binary. The reference to this will be held until you call close.
is_main_bin – Whether this binary should be loaded as the main executable
- classmethod is_compatible(stream)[source]¶
Determine quickly whether this backend can load an object from this stream
- classmethod check_magic_compatibility(stream)[source]¶
Check if a stream of bytes contains the same magic number as the main object
- classmethod check_compatibility(spec, obj)[source]¶
Performs a minimal static load of
spec
and returns whether it’s compatible with other_obj
- class cle.backends.pe.regions.PESection[source]¶
Bases:
Section
Represents a section for the PE format.
- property is_readable¶
Whether this section has read permissions
- property is_writable¶
Whether this section has write permissions
- property is_executable¶
Whether this section has execute permissions
- property only_contains_uninitialized_data¶
Whether this section is initialized to zero after the executable is loaded.