1. A method of verifying computer program integrity on a computer system, the method comprising: generating, by one or more processors, a first hash value of a computer program in response to receiving a request to execute the computer program; in response to determining that the first hash value fails to match a second hash value, matching the first hash value to a third hash value, wherein the second hash value was generated subsequent to installing the computer program, and the third hash value was generated in response to modifying the computer program; and executing, by one or more of the processors, the computer program in response to matching the first hash value to the third hash value.