You have a write a simple "Anti-Virus" application which scans all the files on the systems and revomes known "Malwares" if present any. You are provided a database of malwares MD5 hash.
The basic functionality involves walking the filesystem, hashing each file, checking with DB if is a known malware or not. The process is interruptible by Apllication shutdown, machine reboot etc.., but on startup it should continue scanning from the last file path accessed instead of rescanning all previously examined files.