Malicious Software Prevention, Detection and Correction