Skip to content

codypierce/pyemu

Repository files navigation

This is a short readme describing the layout of PyEmu.

PyContext.py: A module containing a class for defining a context to pass between modules in the emulator
PyCPU.py: The CPU class implements each instruction and is responsible for executing and maintaining state
PyDebug.py: A simple class to ease some debugging tasks
PyEmu.py: The user facing class that implements the public methods available for use.  Also is responsible for initiating the memory and cpu classes
PyInstruction.py: A helper class for providing abstracted access to the pydasm instruction structures
PyMemory.py: A module containing the memory managers responsible for fetching and storing memory
PyOS.py: A rough implementation of needed OS specific structures for process creation and control.

examples/
    idapyemu.py: A simple example of using PyEmu in IDA Pro
    idapyemu_memory_access.py: A simple example showing tracking of memory access
    idapyemu_path_enumeration.py: An example showing mnemonic hooking
    idapyemu_return_value.py: An example demonstrating return value enumeration
    idapyemu_test_case.py: A test case exercising many of the PyEmu methods
    pepyemu.py: A example of PE file PyEmu use
    pydbgpyemu.py: A example of PyDbg use

lib/
    pefile.py: Ero Carrera's pefile implementation
    pydasm.pyd: Ero Carrera's libdasm python wrapper
    ctypes/_ctypes.pyd: Ctypes library needed for PyOS.py

About

x86 Emulator in Python

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages