コード例 #1
0
 def disassemble(self, address=None, nb_instr=10):
     before = 0
     # FIXME: Write better heuristic to read less bytes
     after = nb_instr * MAX_INSTR_SIZE
     if address is None:
         address = self.getInstrPointer()
     address += before
     code = self.readBytes(address, before + 1 + after)
     for index, instr in enumerate(disassemble(code, address)):
         yield instr
         if nb_instr and nb_instr <= (index + 1):
             break
コード例 #2
0
ファイル: process.py プロジェクト: tuwid/darkc0de-old-stuff
 def disassemble(self, address=None, nb_instr=10):
     before = 0
     # FIXME: Write better heuristic to read less bytes
     after = nb_instr * MAX_INSTR_SIZE
     if address is None:
         address = self.getInstrPointer()
     address += before
     code = self.readBytes(address, before+1+after)
     for index, instr in enumerate(disassemble(code, address)):
         yield instr
         if nb_instr and nb_instr <= (index+1):
             break
コード例 #3
0
ファイル: process.py プロジェクト: pavlix/python-ptrace
    def disassemble(self, start=None, stop=None, nb_instr=None):
        if not HAS_DISASSEMBLER:
            self.notImplementedError()
        if start is None:
            start = self.getInstrPointer()
        if stop is not None:
            stop = max(start, stop)
            size = stop - start + 1
        else:
            if nb_instr is None:
                nb_instr = DEFAULT_NB_INSTR
            size = nb_instr * MAX_INSTR_SIZE

        code = self.readBytes(start, size)
        for index, instr in enumerate(disassemble(code, start)):
            yield instr
            if nb_instr and nb_instr <= (index + 1):
                break
コード例 #4
0
ファイル: process.py プロジェクト: haxkor/forkever
    def disassemble(self, start=None, stop=None, nb_instr=None):
        if not HAS_DISASSEMBLER:
            self.notImplementedError()
        if start is None:
            start = self.getInstrPointer()
        if stop is not None:
            stop = max(start, stop)
            size = stop - start + 1
        else:
            if nb_instr is None:
                nb_instr = DEFAULT_NB_INSTR
            size = nb_instr * MAX_INSTR_SIZE

        code = self.readBytes(start, size)
        for index, instr in enumerate(disassemble(code, start)):
            yield instr
            if nb_instr and nb_instr <= (index + 1):
                break