コード例 #1
0
    def _setup_x86_arch(self):
        """Set up x86 architecture.
        """
        arch_mode = self.binary.architecture_mode

        # Set up architecture information
        self.arch_info = X86ArchitectureInformation(arch_mode)
        self.disassembler = X86Disassembler(architecture_mode=arch_mode)
        self.ir_translator = X86Translator(architecture_mode=arch_mode)
コード例 #2
0
ファイル: barf.py プロジェクト: heruix/barf-project
    def _setup_x86_arch(self, arch_mode=None):
        """Set up x86 architecture.
        """
        if arch_mode is None:
            arch_mode = self.binary.architecture_mode

        # Set up architecture information
        self.name = "x86"
        self.arch_info = X86ArchitectureInformation(arch_mode)
        self.disassembler = X86Disassembler(architecture_mode=arch_mode)
        self.ir_translator = X86Translator(architecture_mode=arch_mode)
コード例 #3
0
ファイル: barf.py プロジェクト: shuixi2013/barf-project
    def _setup_x86_arch(self, arch_mode=None):
        """Set up x86 architecture.
        """
        if arch_mode is None:
            arch_mode = self.binary.architecture_mode

        # Set up architecture information
        self.name = "x86"
        self.arch_info = X86ArchitectureInformation(arch_mode)
        self.disassembler = X86Disassembler(architecture_mode=arch_mode)
        self.ir_translator = X86Translator(architecture_mode=arch_mode)

        # Load instruction pointer register.
        if self.arch_info.architecture_mode == arch.ARCH_X86_MODE_32:
            self.ip = "eip"
            self.sp = "esp"
            self.ws = 4
        elif self.arch_info.architecture_mode == arch.ARCH_X86_MODE_64:
            self.ip = "rip"
            self.sp = "rsp"
            self.ws = 8
        else:
            raise Exception("Invalid architecture mode.")