Function at 0x466e40
Capabilities:
Identify system language via api

Disassembly:
push ebp
mov ebp, dword [esp + 8]
test ebp, ebp
jne 0x466e4d
xor eax, eax
pop ebp
ret
push ebx
push esi
push edi
mov byte [ebp], 0
xor bl, bl
call dword [sym.imp.KERNEL32.dll_GetUserDefaultLangID]
and eax, 0xffff
cmp eax, 0x425
jg 0x466ecf
je 0x466ec5
add eax, 0xfffffbfc
cmp eax, 0x1a
ja case.0x466f84.4104
jmp dword [eax*4 + 0x467270]
mov eax, 0x166
jmp 0x467095
mov eax, 0x2d
jmp 0x467095
mov eax, 0x1a4
jmp 0x467095
mov eax, 0x30
jmp 0x467095
mov eax, 0x376
jmp 0x467095
mov eax, 0x24
jmp 0x467095
mov eax, 0x42
jmp 0x467095
mov eax, 0x174
jmp 0x467095
cmp eax, 0x1407
jg 0x466fa1
je case.0x466f84.4103
cmp eax, 0x81d
jg 0x466f42
je case.0x466e78.1053
add eax, 0xfffff7fc
cmp eax, 0x12
ja case.0x466f84.4104
xor ecx, ecx
mov cl, byte [eax + 0x467304]
jmp dword [ecx*4 + 0x4672dc]
mov eax, 0x1f
jmp 0x467095
mov eax, 0x2f
jmp 0x467095
mov eax, 0x27
jmp 0x467095
mov eax, 0x15f
jmp 0x467095
mov eax, 0x52
jmp 0x467095
mov eax, 0x2e
jmp 0x467095
cmp eax, 0x1004
jg 0x466f76
je case.0x466f59.3076
add eax, 0xfffff3fc
cmp eax, 8
ja case.0x466f84.4104
jmp dword [eax*4 + 0x467318]
mov bl, 1
mov eax, 0x21
jmp 0x467095
mov eax, 0x56
jmp 0x467095
add eax, 0xffffeff9
cmp eax, 5
ja case.0x466f84.4104
jmp dword [eax*4 + 0x46733c]
mov eax, 1
mov bl, al
jmp 0x467095
mov eax, 0x31
jmp 0x467095
cmp eax, 0x2c0a
jg 0x46702d
je case.0x466f84.4106
cmp eax, 0x2009
jg 0x466ffb
je case.0x466e78.1033
cmp eax, 0x180a
jg 0x466fe6
je case.0x466f84.4106
sub eax, 0x140a
je case.0x466f84.4106
sub eax, 2
jne case.0x466f84.4104
mov eax, 0x21
jmp 0x467095
cmp eax, 0x1c0a
je case.0x466f84.4106
mov eax, 1
jmp 0x467095
cmp eax, 0x240a
jg 0x46701f
je case.0x466f84.4106
cmp eax, 0x200a
je case.0x466f84.4106
cmp eax, 0x2409
jne case.0x466f84.4104
mov bl, 1
mov eax, 1
jmp 0x467095
cmp eax, 0x280a
je case.0x466f84.4106
mov eax, 1
jmp 0x467095
cmp eax, 0x400a
jg 0x467062
je case.0x466f84.4106
cmp eax, 0x380a
jg 0x467054
je case.0x466f84.4106
cmp eax, 0x300a
je case.0x466f84.4106
cmp eax, 0x340a
je case.0x466f84.4106
mov eax, 1
jmp 0x467095
cmp eax, 0x3c0a
je case.0x466f84.4106
mov eax, 1
jmp 0x467095
cmp eax, 0x4c0a
jg 0x467080
je case.0x466f84.4106
cmp eax, 0x440a
je case.0x466f84.4106
cmp eax, 0x480a
je case.0x466f84.4106
mov eax, 1
jmp 0x467095
cmp eax, 0x500a
je case.0x466f84.4106
mov eax, 1
jmp 0x467095
mov bl, 1
mov eax, 0x22
mov ecx, dword [esp + 0x18]
test ecx, ecx
je 0x46709f
mov byte [ecx], bl
cmp eax, 0x31
jg 0x46718b
je 0x467162
add eax, 0xffffffdf
cmp eax, 0xf
ja case.0x4670c2.39
xor edx, edx
mov dl, byte [eax + 0x467370]
jmp dword [edx*4 + 0x467354]
mov edi, 0x4d5d30
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, ebp
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
mov eax, ebp
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
pop ebx
pop ebp
ret
mov edi, 0x4d5d2c
jmp 0x46724b
mov edi, 0x4d5d28
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, ebp
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
mov eax, ebp
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
pop ebx
pop ebp
ret
mov edi, 0x4d5d24
jmp 0x46724b
mov edi, 0x4d5d20
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, ebp
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
mov eax, ebp
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
pop ebx
pop ebp
ret
mov edi, 0x4d5d1c
jmp 0x46724b
mov edi, 0x4d5d18
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, ebp
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
mov eax, ebp
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
pop ebx
pop ebp
ret
cmp eax, 0x174
jg 0x467208
je 0x4671df
sub eax, 0x56
je 0x4671d8
sub eax, 0x109
je 0x4671af
sub eax, 7
jne case.0x4670c2.39
mov edi, 0x4d5d14
jmp 0x46724b
mov edi, 0x4d5d10
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, ebp
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
mov eax, ebp
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
pop ebx
pop ebp
ret
mov edi, 0x4d5d0c
jmp 0x46724b
mov edi, 0x4d5d08
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, ebp
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
mov eax, ebp
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
pop ebx
pop ebp
ret
cmp eax, 0x1a4
je 0x467246
cmp eax, 0x376
je 0x46721d
mov edi, 0x4d2828
jmp 0x46724b
mov edi, 0x4d5d04
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, ebp
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
mov eax, ebp
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
pop ebx
pop ebp
ret
mov edi, 0x4d5d00
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ebp
mov edx, ecx
mov esi, edi
mov edi, ebp
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
pop ebx
pop ebp
ret