-
Notifications
You must be signed in to change notification settings - Fork 129
Open
Description
Hello,
The following bytes '\x44\x0f\xf8\x41\x8b' (disassembled as psubb mm0,mmword ptr [rcx-75h] by windbg) triggers an off-by-one in the RegistersMMX global variable:
void __bea_callspec__ fillRegister(int index, OPTYPE* pMyOperand, PDISASM pMyDisasm)
{
size_t i = 0;
switch(GV.Register_) {
// ...
case MMX_REG:
#ifndef BEA_LIGHT_DISASSEMBLY
(void) strcpy ((char*) pMyOperand->OpMnemonic+i, RegistersMMX[index]);
#endifThe index variable is off-by-one:
08 0000002f`75dfce10 00007ff7`b1172f2a rp_win_x64!fillRegister(int index = 0n8, struct OPTYPE * pMyOperand = 0x0000002f`75dfe06c, struct _Disasm * pMyDisasm = 0x0000002f`75dfdecc)+0x598 [C:\work\codes\rp\src\third_party\beaengine\src\Includes\Routines_ModRM.c @ 105]
Cheers
Metadata
Metadata
Assignees
Labels
No labels