なんとなくソース見てみた
WindowsだとしたらFindFirstFileW(),FindNextFileW()が返してきたそのままの順のようだがこれは未定義ということになってる
NTFSなら辞書的順序になるっぽい(あくまで保証なし)がFATだとFATのレコード順に依存するんじゃなかったっけか