Python .read () не будет читать весь двоичный файл - PullRequest
1 голос
/ 09 июля 2019

Я пытаюсь собрать программу для чтения в двоичном коде из файла .out (Linux).Когда я использовал .read(), он останавливается на адресе памяти 0x1c9.У меня было решение, которое требовало перебора всех 0x1c9ish адресов памяти, но я чувствую, что .read() должен читать весь файл по умолчанию.У кого-нибудь есть идеи, почему он может так поступить со мной?

Ниже приведено начало функции, которая читает код.Я считаю, что это все, что вам нужно.Любая помощь с благодарностью!

def open_file(self):
    options = QFileDialog.Options()
    options |= QFileDialog.DontUseNativeDialog
    self.fileName, _ = QFileDialog.getOpenFileName(self, "QFileDialog.getOpenFileName()", "",
                                                   "All Files (*);;ELF Files (*.so)", options=options)
    self.addresses = []
    mnemonics = []
    op_strs = []
    instructions = []

    reg_read = []
    reg_write = []

    md = Cs(CS_ARCH_X86, CS_MODE_64)
    md.detail = True

    if self.fileName:
        with open(self.fileName, "rb") as binary_file:

            code = binary_file.read()


Shows the program's current cut-off point, '0x1c9']

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...