iam use vds3 plugin for invert if/else
but something wrong after invert simple if/else for a function
i got INTERR 50683
after delete plugin vds3 all ok
put it again INTERR again
so questions
1 how manual from console remove info for vds3 from idb about this function here INTERR got?
2 can you some thing improve in vds3 for this case?
Hello @revs,
Thanks for reporting this specific issue.
Weâll follow up shortly once weâve looked into it further, or if we have more questions to help narrow it down and reproduce.
case cit_if:
if ( maturity < CMAT_TRANS1 || maturity >= CMAT_CASTED )
{
ea_t jea = i->cif->expr.calc_jmp_cnd_ea();
if ( jea != BADADDR && i->ea != jea )
CFAIL_QASSERT(50683, i); // ctree: mismatch in if-statement and its expression addresses
}
It could be that vds3 produces a wrong item, or maybe there is interaction with other optimization steps.
Would it be possible to have an idb demonstrating the issue?
Looks like hex-rays core. You can open the âhexx64.dllâ or âhexcx64.dllâ for IDA Free. Do a Text Search for â0C5FBhâ (hex value for 50683). The code for that INTERR changed between 9.1 and 9.2.
I am very lazy and overloaded with work
can someone suggest improvements to the vds3 plugin
for sorting if-else conditions by ea?
i.e. if - ea1, else - ea2 should be ea1 >= ea2
for ea1 < ea2, must be inverted if-else