reverse engineering framework