|
|
|
@ -212,14 +212,10 @@ int __cdecl main( int argc, const char *argv[] )
|
|
|
|
|
auto vinstr = &code_block->vinstr[ idx ];
|
|
|
|
|
if ( vinstr->mnemonic_t == vm::handler::INVALID )
|
|
|
|
|
{
|
|
|
|
|
std::printf(
|
|
|
|
|
"> unable to lift to VTIL... unknown virtual instruction handler #%d... "
|
|
|
|
|
"please define a vm handler profile for this virtual instruction and try again..."
|
|
|
|
|
" you can also create your first contribution to this open source project by submitting"
|
|
|
|
|
" a merge request with your changes! :)\n",
|
|
|
|
|
vinstr->opcode );
|
|
|
|
|
|
|
|
|
|
return -1;
|
|
|
|
|
std::printf( "[WARNING] vm handler #%d is not implimented, the VTIL output may be incorrect!\n",
|
|
|
|
|
vinstr->opcode );
|
|
|
|
|
rtn->nop();
|
|
|
|
|
continue;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
const auto result = std::find_if(
|
|
|
|
@ -229,17 +225,15 @@ int __cdecl main( int argc, const char *argv[] )
|
|
|
|
|
if ( result == vm::lifters::all.end() )
|
|
|
|
|
{
|
|
|
|
|
std::printf(
|
|
|
|
|
"> unable to lift to VTIL... unknown virtual instruction handler lifter for #%d... "
|
|
|
|
|
"please define a vm handler lifter for this vm handler and try again..."
|
|
|
|
|
" you can also create your first contribution to this open source project by submitting"
|
|
|
|
|
" a merge request with your changes! :)\n",
|
|
|
|
|
"[WARNING] vm handler #%d lifter is not implimented, the VTIL output may be incorrect!\n",
|
|
|
|
|
vinstr->opcode );
|
|
|
|
|
|
|
|
|
|
return -1;
|
|
|
|
|
rtn->nop();
|
|
|
|
|
continue;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// lift the virtual instruction...
|
|
|
|
|
( *result )->second( rtn, vinstr );
|
|
|
|
|
( *result )->second( rtn, vinstr, code_block );
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|