Merge pull request #11 from lab313ru/lab313ru-patch-1

Lab313ru patch 1
This commit is contained in:
Artur K 2016-04-22 09:19:02 +02:00
commit bae2a582f1
2 changed files with 5 additions and 2 deletions

View File

@ -317,6 +317,9 @@ struct x86_op_t{
case op_offset:
return data.offset;
case op_relative_far:
if (data.relative_far & 0x8000)
return (data.relative_far & 0xFFFF) | 0xFFFF0000;
else
return (int32_t)data.relative_far;
default:
assert(false);

View File

@ -330,7 +330,7 @@ static void decodeBranchTgt(x86_insn_t &insn)
int32_t addr = tgt_op->getAddress();
if(tgt_op->is_relative())
{
addr += insn.addr+insn.size;
addr = (uint16_t)(addr + insn.addr + insn.size);
}
pIcode->ll()->replaceSrc((uint32_t)addr);
pIcode->ll()->setFlags(I);