Neviem poradiť najefektívnejší postup, ale nejak tak, ako píšeš...
Ak som pochopil správne - meniť sa bude iba prípona...
Zrejme to nebude "najlepší" spôsob, ale napadá ma narýchlo len toto:
0. Vytvoriť možno TStringList - kvôli triedeniu
1. Načítavať postupne všetky súbory z adresára FindFirst..., FindNext a testovať či sa názov súboru už v zozname nachádza a akú má príponu
2. Ak sa nenachádza - pridáš novú položku (názov súboru), ak áno - porovnáš príponu a potom buď nahradíš položku v zozname novším názvom, alebo ideš ďalej.
3. Následne vytvorený zoznam prechádzaš od začiatku do konca a kopíruješ...
Kód Ti sem písať nejdem, (nemám teraz čas), ak niečo nebudeš vedieť ozvi sa, večer sa na to môžem pozrieť - pomôcť...