Inxhinieri i kundërt i këtij programi për të kuptuar se si funksionon.
Inxhinieria e kundërt përfshin studimin e kodit dhe strukturës së programit për të kuptuar se si funksionon. Kjo mund të bëhet përmes analizës statike të kodit, duke studiuar algoritmet themelore të programit dhe strukturat e të dhënave, ose duke përdorur metoda dinamike si analiza dinamike e programit për të parë se si funksionon programi në kushte të ndryshme.