Некогда код искать.
Суть такова.
1. Надо получить из системы системный список иконок. Вот тут есть подходящий пример:
http://www.delphigroups.info/2/1f/290636.html
2. Далее через FindFirst/FindNext/FindClose получаем список файлов/папок.
3. При нахождении очередного файла запрашиваем индекс его иконки и при создании ListItem назначаем его.