ECJ: decompiling software to correct bugs