diff --git a/src/vmlifters/jmp.cpp b/src/vmlifters/jmp.cpp index 4f07da6..6769e43 100644 --- a/src/vmlifters/jmp.cpp +++ b/src/vmlifters/jmp.cpp @@ -9,10 +9,10 @@ namespace vm::lifters if ( code_blk->jcc.has_jcc ) { // TODO: figure out what bit the JCC is determined on... - blk->js( vtil::REG_FLAGS.select( 1, 11 ), code_blk->jcc.block_addr[ 0 ], - code_blk->jcc.block_addr[ 1 ] ); + blk->js( vtil::REG_FLAGS.select( 1, 11 ), code_blk->jcc.block_addr[ 0 ] - vinstr->trace_data.regs.r13, + code_blk->jcc.block_addr[ 1 ] - vinstr->trace_data.regs.r13 ); } else - blk->jmp( vinstr->trace_data.vsp.qword[ 0 ] ); + blk->jmp( vinstr->trace_data.vsp.qword[ 0 ] - vinstr->trace_data.regs.r13 ); } }; } \ No newline at end of file