Why does the language selection dialog hide some languages?
From NSIS Wiki
Since NSIS 2.26, the language selection dialog of Modern UI hides languages unsupported by the user's selected codepage by default. This prevents the user from selecting unsupported languages and getting garbage for text. The user can select another codepage in the Regional and Language Options control panel under the Advanced tab in the Language for non-Unicode programs box.
To revert to the old behavior and display all languages, no matter what the user will see when they're selected, use MUI_LANGDLL_ALLLANGUAGES.
!define MUI_LANGDLL_ALLLANGUAGES !insertmacro MUI_LANGUAGE "English" !insertmacro MUI_LANGUAGE "German" !insertmacro MUI_LANGUAGE "Japanese" # etc...