Хитрая оболочка. При смене языка SYSLNG.EXE меняет так же кучу значений в реестре, чтобы изменить региональные настройки и кодовые страницы в соответствии с выбранным языком. Но MUI всегда ставит английский, независимо от того, как язык в оболочке был выбран. При чем я не могу найти, откуда syslng берет значение 1033. Пока изменил syslng так, чтобы он не трогал HKCU->MUI->CurLang, а работал с HKCU->MUI->CurLan2, теперь выбранный MUI не сбрасывается на английский, при изменении языка, правда такое решение проблемы мне не нравится