Assim que conheci os computadores fiquei impressionado com a pirataria de software. Como poderia um programa acabar de ser lançado e já possuir uma cópia pirata dele?
Tinha várias suposições para isso: alguma pessoa de dentro das empresas de software deixava vazar o projeto, quem sabe vendia no mercado negro ou ainda o cracker invadia a rede da empresa e furtava o projeto.
Depois conheci a engenharia reversa e vi que nada disso era necessário, era possível alterar o programa sem ter seu código-fonte.
Cracking e engenharia reversa de softwares são conceitos muito ligados, um quase chega a ser sinônimo do outro. Cracking consiste em atacar uma tecnologia de proteção de cópias para conseguir passar por ela.