Function at 0x5a2620
Capabilities:
Identify system language via api

Disassembly:
push esi
push edi
mov esi, ecx
call dword [sym.imp.KERNEL32.dll_GetUserDefaultLangID]
and eax, 0x3ff
dec eax
cmp eax, 0x18
ja case.0x5a2640.2
movzx eax, byte [eax + 0x5a2a20]
jmp dword [eax*4 + 0x5a29f4]
mov dword [esi + 0x20c], 0
mov dword [esi + 0x204], 0
jmp 0x5a272d
mov dword [esi + 0x20c], 2
mov dword [esi + 0x204], 2
jmp 0x5a272d
mov dword [esi + 0x20c], 3
mov dword [esi + 0x204], 2
jmp 0x5a272d
mov dword [esi + 0x20c], 4
mov dword [esi + 0x204], 2
jmp 0x5a272d
mov dword [esi + 0x20c], 5
mov dword [esi + 0x204], 2
jmp 0x5a272d
mov dword [esi + 0x20c], 7
mov dword [esi + 0x204], 2
jmp 0x5a272d
mov dword [esi + 0x20c], 8
mov dword [esi + 0x204], 2
jmp 0x5a272d
mov dword [esi + 0x20c], 9
mov dword [esi + 0x204], 5
jmp 0x5a272d
mov dword [esi + 0x20c], 0x10
mov dword [esi + 0x204], 4
jmp 0x5a272d
mov dword [esi + 0x204], 1
mov dword [esi + 0x20c], 1
mov edi, dword [sym.imp.steam_api.dll_SteamInternal_ContextInit]
push 0x63c5a8
mov dword [esi + 0x210], 1
call edi
add esp, 4
cmp dword [eax], 0
je 0x5a29ea
push 0x63c5a8
call edi
add esp, 4
mov ecx, dword [eax]
mov eax, dword [ecx]
call dword [eax + 0x10]
mov edi, eax
mov edx, str.english
mov ecx, edi
nop word [eax + eax]
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x5a2790
test al, al
je 0x5a278c
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x5a2790
add ecx, 2
add edx, 2
test al, al
jne 0x5a2770
xor eax, eax
jmp 0x5a2795
sbb eax, eax
or eax, 1
test eax, eax
jne 0x5a27a8
mov dword [esi + 0x210], 1
jmp 0x5a29ea
mov ecx, str.french
mov eax, edi
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x5a27d0
test dl, dl
je 0x5a27cc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x5a27d0
add eax, 2
add ecx, 2
test dl, dl
jne 0x5a27b0
xor eax, eax
jmp 0x5a27d5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x5a27e8
mov dword [esi + 0x210], 2
jmp 0x5a29ea
mov ecx, str.german
mov eax, edi
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x5a2810
test dl, dl
je 0x5a280c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x5a2810
add eax, 2
add ecx, 2
test dl, dl
jne 0x5a27f0
xor eax, eax
jmp 0x5a2815
sbb eax, eax
or eax, 1
test eax, eax
jne 0x5a2828
mov dword [esi + 0x210], 3
jmp 0x5a29ea
mov ecx, str.italian
mov eax, edi
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x5a2850
test dl, dl
je 0x5a284c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x5a2850
add eax, 2
add ecx, 2
test dl, dl
jne 0x5a2830
xor eax, eax
jmp 0x5a2855
sbb eax, eax
or eax, 1
test eax, eax
jne 0x5a2868
mov dword [esi + 0x210], 4
jmp 0x5a29ea
mov ecx, str.japanese
mov eax, edi
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x5a2890
test dl, dl
je 0x5a288c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x5a2890
add eax, 2
add ecx, 2
test dl, dl
jne 0x5a2870
xor eax, eax
jmp 0x5a2895
sbb eax, eax
or eax, 1
test eax, eax
jne 0x5a28a4
mov dword [esi + 0x210], eax
jmp 0x5a29ea
mov ecx, str.portuguese
mov eax, edi
nop dword [eax + eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x5a28d0
test dl, dl
je 0x5a28cc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x5a28d0
add eax, 2
add ecx, 2
test dl, dl
jne 0x5a28b0
xor eax, eax
jmp 0x5a28d5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x5a28e8
mov dword [esi + 0x210], 7
jmp 0x5a29ea
mov ecx, str.russian
mov eax, edi
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x5a2910
test dl, dl
je 0x5a290c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x5a2910
add eax, 2
add ecx, 2
test dl, dl
jne 0x5a28f0
xor eax, eax
jmp 0x5a2915
sbb eax, eax
or eax, 1
test eax, eax
jne 0x5a2928
mov dword [esi + 0x210], 8
jmp 0x5a29ea
mov ecx, str.spanish
mov eax, edi
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x5a2950
test dl, dl
je 0x5a294c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x5a2950
add eax, 2
add ecx, 2
test dl, dl
jne 0x5a2930
xor eax, eax
jmp 0x5a2955
sbb eax, eax
or eax, 1
test eax, eax
jne 0x5a2968
mov dword [esi + 0x210], 5
jmp 0x5a29ea
mov ecx, str.koreana
mov eax, edi
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x5a2990
test dl, dl
je 0x5a298c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x5a2990
add eax, 2
add ecx, 2
test dl, dl
jne 0x5a2970
xor eax, eax
jmp 0x5a2995
sbb eax, eax
or eax, 1
test eax, eax
jne 0x5a29a5
mov dword [esi + 0x210], 9
jmp 0x5a29ea
mov eax, str.tchinese
nop word [eax + eax]
mov cl, byte [edi]
cmp cl, byte [eax]
jne 0x5a29d0
test cl, cl
je 0x5a29cc
mov cl, byte [edi + 1]
cmp cl, byte [eax + 1]
jne 0x5a29d0
add edi, 2
add eax, 2
test cl, cl
jne 0x5a29b0
xor ecx, ecx
jmp 0x5a29d5
sbb ecx, ecx
or ecx, 1
test ecx, ecx
mov eax, 1
mov edx, 0x10
cmove eax, edx
mov dword [esi + 0x210], eax
pop edi
pop esi
jmp dword [sym.imp.KERNEL32.dll_GetUserDefaultLCID]