Would advise to first read the reverse engineering related work. Genetic programming is just a technique best used when everything else has failed :-)
Already deciding whether two finite automata decide the same (regular) language is PSPACE-complete; it's undecidable for anything that can decide arbitrary context-free languages (which C programs can clearly do).
temp0826•57m ago
https://www.fsfla.org/ikiwiki/selibre/linux-libre/