Это связано с проблемой функции Win32 API IsTextUnicode, существовавшей в Windows NT 3.5. Если файл закодирован в ANSI, функция будет интерпретировать его как UTF-16LE, что приведет к нечитаемым символам.
Это тоже очаровало меня, когда я обнаружил это, так как я был отчасти молод и наивен, я думал, что это был настоящий заговор :)
На самом деле есть статья в Википедии, которую вы можете найти здесь .