Knowledge-based removal tools restore an executable to its pre-infection state. All modifications to the original executable must be known in order to accomplish this task. For example, if a file is infected with an overwritting virus, removal is not possible. The information that was overwritten cannot be restored.
The most critical piece of information in the removal process is the identity of the virus itself. If the removal program is removing Jerusalem-DC, but the host is infected with Jerusalem-E2, the process could fail. Unfortunately, this information is often unavailable or imprecise. This is why precise identification tools are needed.