rizinorg/rz-pipe

Inconsistent Disassembly between rz-pipe and rizin

Veryyes opened this issue · 0 comments

Using:

  • Latest version of Rizin dev branch on commit 957a2997b3bda24f36187b87cf2be731c227a2fa
  • Python 3.10.12
    • rzpipe==0.6.0

When disassembling this particular basic block I found that pdb returns differently between rzpipe from Python and Rizin.

rzpipe:

In [14]: print(self._pipe.cmd('pdb'))
│           0x00015525      mov   rdi, rbp0x00015528  ~   mov   esi, 0x20                            ; "@"
│           ; CODE XREF from fcn.00014ab0 @ 0x14c95
│           ;-- case 48:                                               ; from 0x14c950x0001552a      add   byte [rax], al0x0001552c      add   al, ch0x0001552e      hlt0x00015530      invalid0x00015531      dec   dword [rax - 0x75]
│           0x00015534      insb  byte [rdi], dx0x00015535      and   al, 0x300x00015537      mov   rcx, qword [var_20h]

Rizin:

[0x00015525]> pdb0x00015525      mov   rdi, rbp
│           ; CODE XREF from fcn.00014ab0 @ 0x14c95
│           ;-- case 48:                                               ; from 0x14c950x00015528  ~   mov   esi, 0x20                            ; "@"0x0001552d      call  sym.imp.memset                       ; sym.imp.memset0x00015532      mov   rbp, qword [var_38h]
│           0x00015537      mov   rcx, qword [var_20h]