Batch Icon Extractor is a tiny portable tool which will extract the icons from whatever files you drag and drop onto it.
And it's amazing just how many icons this can reveal. We placed the BatchIconExtractor.exe file on our desktop, dragged and dropped our Windows folder onto it, and confirmed that we'd like to extract icons from \Windows and all its subfolders. Then we waited, and waited, and waited. Not because the program was slow, rather there was just so much to do: when it had finished, our desktop had a new Icons folder which contained more than 10,000 icons.
These weren't all different, unfortunately: there was quite a lot of repetition. A lot of icons were tiny 16x16 or 32x32 images, not much use to anyone. And while Batch Icon Extractor sensibly created icon names based on the resources they were extracted from, this still produced some cryptic results: would you know what to expect from a file called _0A132ACE_4628_45D0_AC69_B7E131682E46_I0000_0000.ico, for instance?
Still, opening the folder in Explorer, displaying its contents as large icons and sorting the files by size allowed the high-res icons to generally float to the top. There were many on offer, general purpose, for Windows apps and our installed applications, so if you're looking for icons to customise your own system then Batch Icon Extractor could save you lots of time by showing you exactly what you already have.
Please note, the author released Batch Icon Extractor in 2005 and officially it only supports NT4, 2000, XP and Vista. However, in our tests it also runs perfectly on Windows 7, extracting 256x256 icons wherever they're found, and (although we've not tried it yet) we suspect it'll run on Windows 8, too.