Well, the repair function works just like you said for NOD32. However these days there are hardly any file infectors, the stuff that actually adds code to other programs. There are mostly other forms that are malicious all together. So yeah, in pretty much all cases, avast! will just delete the files. However certain Virut, Sality, Tenga and so on viruses can be repaired. But these are quite rare these days.