Some years ago, the complete IconShock collection was sold under a liberal license to smaller software developers.
For example the "real vista" "art style" consisted of 17 archives. Some of them include ZIP files while others include the icons themselves. Unpack the archives which include archives, but not the archives which contain images.
This software will look for *.zip and inside those ZIP files, into the "ico/128" path and index any graphic file it can find and load. See the CreateIndex(), BuildFileList() and ProcessArchive() procedures inside the source. You have to point the software to a directory with the correct archives!
The software will load and index the images inside archives, but it doesnt do it recursively. That was my compromise of having a working solution without creating filesystem problems or requiring a huge amount of diskspace, while still being able to browse and search through millions of icons.
Originally i intended to use my own Image caching to avoid peeking inside the ZIP archives constantly, but even my old 1.6 Ghz laptop was able to process the archives within a fraction of a second, and that was good enough for me :)
The archive consisted of categories in ZIP Files which where then packed together in several ZIP files named after the style. Unpack the style(s) you want to use / search into a directory. You do not need to unpack all image files, but just the style you want to use. That way you only have a dozen ZIP files of some gigabytes, instead of millions of image files.
All of the 4 buttons take the value of the Search for input field. So you enter a search word and if you can't get any good results, your next step could be to try the translation button to find similar words in a dictionary to try those. Or you ask a Thesaurus or Wikipedia for more ideas. It can really help finding what you want. Practically you work from left to right with the buttons.
This is how it looks after searching for a keyword.
Here is the windows software and here is the sourcecode. It should work in windows 7 upwards. Anything else is untested, but it probably even works in XP. The binary is compiled as 32Bit windows binary.