diff options
Diffstat (limited to '')
| -rw-r--r-- | miasm2/analysis/binary.py | 9 | ||||
| -rw-r--r-- | miasm2/analysis/sandbox.py | 7 |
2 files changed, 12 insertions, 4 deletions
diff --git a/miasm2/analysis/binary.py b/miasm2/analysis/binary.py index bc662265..a46a252c 100644 --- a/miasm2/analysis/binary.py +++ b/miasm2/analysis/binary.py @@ -1,8 +1,6 @@ import logging from miasm2.core.bin_stream import * -from elfesteem import pe_init, elf_init -from miasm2.jitter.jitload import vm_load_pe, vm_load_elf from miasm2.jitter.csts import PAGE_READ @@ -112,7 +110,11 @@ class Container(object): class ContainerPE(Container): "Container abstraction for PE" + def parse(self, data, vm=None): + from miasm2.jitter.loader.pe import vm_load_pe, preload_pe + from elfesteem import pe_init + # Parse signature if not data.startswith('MZ'): raise ContainerSignatureException() @@ -144,6 +146,9 @@ class ContainerELF(Container): "Container abstraction for ELF" def parse(self, data, vm=None): + from miasm2.jitter.loader.elf import vm_load_elf, preload_elf + from elfesteem import elf_init + # Parse signature if not data.startswith('\x7fELF'): raise ContainerSignatureException() diff --git a/miasm2/analysis/sandbox.py b/miasm2/analysis/sandbox.py index cbaf1394..3d8b906f 100644 --- a/miasm2/analysis/sandbox.py +++ b/miasm2/analysis/sandbox.py @@ -2,11 +2,10 @@ import os, sys import logging from argparse import ArgumentParser from miasm2.analysis.machine import Machine -from miasm2.jitter.jitload import vm_load_pe, preload_pe, libimp -from miasm2.jitter.jitload import vm_load_elf, libimp, preload_elf from miasm2.os_dep import win_api_x86_32, win_api_x86_32_seh from miasm2.jitter.csts import PAGE_READ, PAGE_WRITE from miasm2.analysis import debugging +from miasm2.jitter.loader.utils import libimp class Sandbox(object): """ @@ -160,6 +159,8 @@ class OS_Win(OS): ] def __init__(self, custom_methods, *args, **kwargs): + from miasm2.jitter.loader.pe import vm_load_pe, preload_pe + super(OS_Win, self).__init__(custom_methods, *args, **kwargs) # Import manager @@ -219,6 +220,8 @@ class OS_Win(OS): class OS_Linux(OS): def __init__(self, custom_methods, *args, **kwargs): + from miasm2.jitter.loader.elf import vm_load_elf, preload_elf + super(OS_Linux, self).__init__(custom_methods, *args, **kwargs) # Import manager |