Mantis Bugtracker

Viewing Issue Simple Details Jump to Notes ] View Advanced ] Issue History ] Print ]
ID Category Severity Reproducibility Date Submitted Last Update
0000102 [Cheat Engine] block always 2009-02-06 15:14 2009-11-03 19:04
Reporter Csimbi View Status public  
Assigned To Dark Byte
Priority normal Resolution fixed  
Status resolved  
Summary 0000102: CE 5.5 Valid ASM instruction not accepted
Description Hi there,
I am writing a script, which includes the imul instruction.
CE does not accept the instruction - even though it is OK, according to Intel.
This is my instruction:
imul eax,0A
The error is shown on the screen shot that I attached.
Additional Information Inteläs instruction set reference says (quote):
Opcode Instruction Description
F6 /5 IMUL r/m8 AX? AL ? r/m byte.
F7 /5 IMUL r/m16 DX:AX ? AX ? r/m word.
F7 /5 IMUL r/m32 EDX:EAX ? EAX ? r/m doubleword.
0F AF /r IMUL r16,r/m16 word register ? word register ? r/m word.
0F AF /r IMUL r32,r/m32 doubleword register ? doubleword register ? r/m
doubleword.
6B /r ib IMUL r16,r/m16,imm8 word register ? r/m16 ? sign-extended immediate byte.
6B /r ib IMUL r32,r/m32,imm8 doubleword register ? r/m32 ? sign-extended immediate
byte.
6B /r ib IMUL r16,imm8 word register ? word register ? sign-extended immediate
byte.
6B /r ib IMUL r32,imm8 doubleword register ? doubleword register ? signextended
immediate byte.
69 /r iw IMUL r16,r/
m16,imm16
word register ? r/m16 ? immediate word.
69 /r id IMUL r32,r/
m32,imm32
doubleword register ? r/m32 ? immediate doubleword.
69 /r iw IMUL r16,imm16 word register ? r/m16 ? immediate word.
69 /r id IMUL r32,imm32 doubleword register ? r/m32 ? immediate doubleword.

Description
Performs a signed multiplication of two operands. This instruction has three forms, depending on the number of operands.
• One-operand form. This form is identical to that used by the MUL instruction. Here, the source operand (in a general-purpose register or memory location) is multiplied by the value in the AL, AX, or EAX register (depending on the operand size) and the product is stored in the AX, DX:AX, or EDX:EAX registers, respectively.
• Two-operand form. With this form the destination operand (the first operand) is multiplied by the source operand (second operand). The destination operand is a general purpose register and the source operand is an immediate value, a general-purpose register, or a memory location. The product is then stored in the destination operand location.
• Three-operand form. This form requires a destination operand (the first operand) and two source operands (the second and the third operands). Here, the first source operand (which can be a general-purpose register or a memory location) is multiplied by the second source operand (an immediate value). The product is then stored in the destination operand (a general-purpose register).
When an immediate value is used as an operand, it is sign-extended to the length of the destination operand format.

According to this, the "Two-operand form" should work.
Tags No tags attached.
Attached Files png file icon ERROR.PNG [^] (10,184 bytes) 2009-02-06 15:14

- Relationships

-  Notes
(0000224)
Csimbi (reporter)
2009-02-06 15:17
edited on: 2009-02-06 15:19

For now - as a workaround - I put this there:
imul eax,eax,0A
This one is accepted.

(0000228)
Dark Byte (developer)
2009-02-07 04:32

managed to reproduce but no idea where it comes from
(0000313)
Dark Byte (developer)
2009-11-03 19:04

fixed in svn

- Issue History
Date Modified Username Field Change
2009-02-06 15:14 Csimbi New Issue
2009-02-06 15:14 Csimbi File Added: ERROR.PNG
2009-02-06 15:17 Csimbi Note Added: 0000224
2009-02-06 15:18 Csimbi Issue Monitored: Csimbi
2009-02-06 15:19 Csimbi Note Edited: 0000224
2009-02-07 04:32 Dark Byte Note Added: 0000228
2009-02-07 04:32 Dark Byte Status new => confirmed
2009-11-03 19:04 Dark Byte Note Added: 0000313
2009-11-03 19:04 Dark Byte Status confirmed => resolved
2009-11-03 19:04 Dark Byte Resolution open => fixed
2009-11-03 19:04 Dark Byte Assigned To => Dark Byte


Mantis 1.1.6[^]
Copyright © 2000 - 2008 Mantis Group
Powered by Mantis Bugtracker