So far, the program You're talking about doesn't exist. At least not for public. By nature, I doubt it will ever come to existence. Why? Because, similarly, we could ask "where is a program which shows addresses of security checks?" - the answer is NOWHERE.
If we would try to write such a crc check scanner it seems simple:
1. We could trap standard API's calls: CreateFile, ReadFile, ReadProcessMemory, GetFileSize etc.
2. Note VA and show it to the user, so he knows from where the check is called.
Simple, but it works "virtually". Why? For example, look how often programs calls ReadFile function. It could be 50 times. How do You find which call (obviously function can be single) read the file? Suppose we trap only calls with "ourexecutablename.exe" as the offing parameter. Then, how do You know where the checksum is calculated? How do You know how it is calculated? (I assume we aren't talking only about legendary CRC, CRC-32). Even if You find it, what goes next with calculated CRC? Where it's compared? How it's compared? That's just the beginning. What if executable is protected? What if it checks file CRC, then waits for a certain moment and checks memory CRC?
As You can see this is simply impossible

.
Greetings to all the people reading this forum.