diff options
author | iximeow <me@iximeow.net> | 2020-11-19 18:13:24 -0800 |
---|---|---|
committer | iximeow <me@iximeow.net> | 2020-11-19 18:13:24 -0800 |
commit | 81e9b93aab9217cf7cb508f64b19fc1c0df024b5 (patch) | |
tree | 4a17eed4bd3191d3f02417d6c7d63420a474fb95 /CHANGELOG | |
parent | e3a400b7a96284d1394cd710ea3bcee01dbfe95f (diff) |
fix decoding of rex-prefixed modrm+sib operands selecting index 0b100 and base 0b1010.1.4
for memory operands with a base, index, and displacement either
the wrong base would be selected (register number ignored, so only
`*ax` or `r8*` would be reported), or yaxpeax-x86 would report a
base register is present when it is not (`RegIndexBaseScaleDisp`
when the operand is actually `RegScaleDisp`)
thank you to Evan Johnson for catching and reporting this bug!
also bump crate version to 0.1.4 as this will be immediately tagged and
released.
Diffstat (limited to 'CHANGELOG')
-rw-r--r-- | CHANGELOG | 10 |
1 files changed, 10 insertions, 0 deletions
@@ -1,3 +1,13 @@ +## 0.1.4 +* [long mode only]: fix decoding of rex-prefixed modrm+sib operands selecting index 0b100 and base 0b101 + - for memory operands with a base, index, and displacement either + the wrong base would be selected (register number ignored, so only + `*ax` or `r8*` would be reported), or yaxpeax-x86 would report a + base register is present when it is not (`RegIndexBaseScaleDisp` + when the operand is actually `RegScaleDisp`) + +thank you to Evan Johnson for catching and reporting this bug! + ## 0.1.3 * fix 0x80-opcode instructions not having an opcode - this meant that for example `lock xorb [rax], 0` would decode as invalid |