How hackers crack software // Reverse engineering a program and writing a keygen for it