I suppose the Repair function compares the presence (or not) and the version of the installed files with the same options (which residents, languages and so on) of the installation. I mean, it works as MSOffice (for instance) Repair function. If the version file is newer, nothing is done (of course, the file remains there and were not rolled back).
I think you may read more foruns… (joke) ;D This was discussed in other ones, at Wishlist for instance, I suggested to turn the default feature at Windows Installer to Repair and not Uninstall. avast! team prefer to make Change option the default one…
Anyway, living and learning. 