Как извлечь hex_num, что означает опкод + операнд - PullRequest
0 голосов
/ 13 мая 2019

Я новичок в структуре Capstone и PE ... прошу снисхождения

Я хочу извлечь шестнадцатеричное число, которое означает код операции и операнды в Python, используя Capstone

Вот мой пример:

если есть файл, который выглядит так

.текст: 00404499 8B 0D 14 61 41 00
mov ecx, dword_416114

шестнадцатеричный номер -'8D '- это шестнадцатеричное число, включающее (mov, ecx, dword_416114), верно?

поэтому я попытался извлечь точное шестнадцатеричное число, но у меня возникли проблемы ...

Вот мой код:

for ins in cs.disasm(pe.sections[0].get_data(), 0x0): 

    print("0x%x:\t%s\t%s" %(ins.address, ins.mnemonic, ins.op_str))

код выше покажет это:

0x0: xor eax, 0xff77ee8b

0x5: mov ch, dh

0x7: ja 0xffffff9f

...
0x15: inc esi

как я могу получить то, что я хочу?

...