Malware Reverse Engineering: Cracking The Code