DownLevelLangIDToLanguageName
NTSTATUS __stdcall DownLevelLangIDToLanguageName(UINT16 langID, PWCHAR lpName, INT64 cchName, UINT64 dwFlags){
__int64 v4;
char v5;
const struct CultureDataType *v7;
const unsigned __int16 *v9;
__int64 v10;
UINT16 Key;
Key = langID;
v4 = (int)cchName;
v5 = dwFlags;
if( (int)cchName < 0 || !lpName && (_DWORD)cchName )
return 0;
if( (dwFlags & 0xFFFFFFFD) != 0 )
return 0;
v7 = (const struct CultureDataType *)bsearch(
&Key,
&off_140003CB0,
0x1B4u,
0x10u,
(int(__cdecl *)(const void *, const void *))CompareLangIDs);
if( !v7 || (v5 & 2) == 0 && IsNeutralLanguageItem(v7) )
return 0;
v9 = *(const unsigned __int16 **)v7;
v10 = -1i64;
do
++v10;
while( v9[v10] );
if( lpName && (int)StringCchCopyNW(lpName, v4, v9, v10 + 1) < 0 )
return 0;
else
return v10 + 1;
}Referenced by:
CmSelectQualifiedInstallLanguage
ExpSetPendingUILanguage
LdrLoadAlternateResourceModuleEx
LdrResSearchResource
LdrpGetParentLangId
LdrpResSearchResourceMappedFile
RtlLCIDToCultureName