second interpretation of imul

imul is one of the few expressions that takes three arguments: `imul eax, eax, 0x16` is interpreted as `eax *= eax`, which is wrong. Also same case applies for `imul eax, ecx, 0x16` where eax = ecx * 0x16
This commit is contained in:
rfc2119 2018-02-03 21:46:11 +00:00 committed by radare
parent 207e8596cd
commit 1bc3a5a34a

View File

@ -52,6 +52,7 @@ static int replace (int argc, char *argv[], char *newstr) {
{ "fxch", "#,# = #,#", {1, 2, 2, 1}},
{ "idiv", "# /= #", {1, 2}},
{ "imul", "# *= #", {1, 2}},
{ "imul", "# *= #", {1, 3}},
{ "in", "# = io[#]", {1, 2}},
{ "inc", "#++", {1}},
{ "ja", "if (((unsigned) var) > 0) goto #", {1}},