How one can learn, Software Cracking from scratch

Maybe reverse engineering is a legitimate term you want to learn?