Use existing mature disassembling engine instead of self-made one

Issue #4 new
insolor
created an issue

В версиях DF начиная с 0.43.04 в коде начали попадаться инструкции XMM:

.text:00A6A46A                 mov     eax, dword ptr ds:aHasArrived_ ; " has arrived."
.text:00A6A46F                 movaps  xmm0, ds:xmmword_F39E10 ; Move Aligned Four Packed Single-FP
.text:00A6A476                 mov     [ecx], eax
.text:00A6A478                 mov     eax, dword ptr ds:aHasArrived_+4 ; " arrived."
.text:00A6A47D                 mov     [ecx+4], eax
.text:00A6A480                 mov     eax, dword ptr ds:aHasArrived_+8 ; "ived."
.text:00A6A485                 mov     [ecx+8], eax
.text:00A6A488                 mov     ax, word ptr ds:aHasArrived_+0Ch ; "."
.text:00A6A48E                 mov     [ecx+0Ch], ax

Их обработка требует либо доработки дизассемблерного движка disasm.py, либо перехода к использованию готового движка (например, Capstone). Я предпочитаю второй вариант, т.к. разработка полноценного дизассемблерного движка не входит в мои планы.

Использование отдельного движка так же будет плюсом при дальнейшем улучшении патча для работы с 64-битными версиями DF.