This came up the other day when I took the 64-bit version of Firefox out for a spin. Although it's basically the same program, they decided to rename it 'Nightly' and change the cute Firefox icons from this...
...to this wretched abomination:
This begs the question, why didn't they just rename it 'Bowling Ball'?
Using a free program called Resource Hacker, it's easy to change an ugly icon to something better. We shall delve into these digital wonders below the fold.
It will be helpful to view file extensions (".exe", ".txt", etc), so if you aren't currently seeing them, open Control Panel, Folder Options, the 'View' tab, uncheck 'Hide extensions...'.
In most cases, the icon you want to replace the ugly one with already belongs to another program. If you have a lone icon (an .ICO file), that'll also work.
The download site for Resource Hacker is here. It's just a Next-Next-Next install.
Run the program. From the File menu, open the EXE you wish changed.
Over to the left, open 'Icon Group'. You'll see some numbered folders. Open the first one, probably '1', highlight the entry. You should see some icons pop up over on the right. This may or may not be the correct entry but it's the best place to start.
Assuming the icons on the right look like the one you want to replace, right-click on the left entry and 'Replace Resource'. A box will pop up. Click on the 'Open file...' button and go find the EXE or ICO file of the replacement icon. If it's an EXE, it'll probably have a number of icons running down the left side. Click on each one and find the one you want.
On the right side, click on the icon you want replaced, usually #1 for the main program icon. Click the 'Replace' button.
Back on the main program, go to the File menu and 'Save'.
Now go to the program's folder, 'View' menu, 'Refresh' if the folder was already open, and see if the icon has changed.
If not, go back to Resource Hacker, open the last entry on the left-side list. Assuming it looks like the correct icon, do the replacement routine again. The main program icon is usually the first entry on the list, but in some cases, like Nightly, it's in a special folder at the end of the list.
If it's a program that leaves Desktop icons, like a browser, that'll be another icon to change. In the case of 'Nightly', it's the #2 entry. Do the same replacement routine, this time replacing #2 in Nightly with the #2 of Firefox, 'Save', then right-click on the Desktop and 'Refresh'.
It should also be noted that sometimes icons become somewhat embedded and an actual reboot is required before the new ones will display.
Lastly, there are also DLL files that can contain icons. As an example, if you want to change the icon of a shortcut icon, all you have to do is open its Properties and click on 'Change Icon'. Windows will automatically open its main DLL file full of icons. If there's one you specifically want, do the normal routine in Resource Hacker, but this time load the "shell32.dll" file in the Windows\System32 folder for your replacement icon. It will list a shitload of entries, but they're in the same order as the icons in the 'Change Icon' window, so you should be able to narrow down the search and find the one you want without too much trouble.
Any questions or comments, give a holler.