Function at 0x10017060
Capabilities:
Identify system language via api

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10029f90
mov eax, dword fs:[0]
push eax
push ecx
push esi
mov eax, dword [0x1005b00c]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, ecx
mov dword [ebp - 0x10], esi
call dword [sym.imp.KERNEL32.dll_GetUserDefaultUILanguage]
movzx eax, ax
mov ecx, 0x400
cmp ax, cx
je 0x10017641
mov ecx, 0x409
cmp ax, cx
je 0x10017641
mov ecx, 0x404
cmp ax, cx
je 0x1001760e
mov ecx, 0xc04
cmp ax, cx
je 0x1001760e
mov ecx, 0x804
cmp ax, cx
jne 0x100170f2
push str.CHINESE_SIMPLIFIED
mov ecx, esi
call fcn.10002d10
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
mov esp, ebp
pop ebp
ret
mov ecx, 0x401
cmp ax, cx
je 0x100175f0
mov ecx, 0x801
cmp ax, cx
je 0x100175f0
mov ecx, 0xc01
cmp ax, cx
je 0x100175f0
mov ecx, 0x407
cmp ax, cx
je 0x100175d2
mov ecx, 0xc07
cmp ax, cx
je 0x100175d2
mov ecx, 0x807
cmp ax, cx
je 0x100175d2
mov ecx, 0x40a
cmp ax, cx
je 0x100175b4
mov ecx, 0x80a
cmp ax, cx
je 0x100175b4
mov ecx, 0xc0a
cmp ax, cx
je 0x100175b4
mov ecx, 0x40c
cmp ax, cx
je 0x10017596
mov ecx, 0x80c
cmp ax, cx
je 0x10017596
mov ecx, 0xc0c
cmp ax, cx
je 0x10017596
mov ecx, 0x410
cmp ax, cx
je 0x10017578
mov ecx, 0x810
cmp ax, cx
je 0x10017578
mov ecx, 0x411
cmp ax, cx
jne 0x100171de
push str.JAPANESE
mov ecx, esi
call fcn.10002d10
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
mov esp, ebp
pop ebp
ret
mov ecx, 0x412
cmp ax, cx
jne 0x10017206
push str.KOREAN
mov ecx, esi
call fcn.10002d10
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
mov esp, ebp
pop ebp
ret
mov ecx, 0x816
cmp ax, cx
jne 0x1001722e
push str.PORTUGUESE
mov ecx, esi
call fcn.10002d10
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
mov esp, ebp
pop ebp
ret
mov ecx, 0x419
cmp ax, cx
jne 0x10017256
push str.RUSSIAN
mov ecx, esi
call fcn.10002d10
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
mov esp, ebp
pop ebp
ret
mov ecx, 0x416
cmp ax, cx
jne 0x1001727e
push str.BRAZILIAN_PORTUGUESE
mov ecx, esi
call fcn.10002d10
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
mov esp, ebp
pop ebp
ret
mov ecx, 0x405
cmp ax, cx
jne 0x100172a6
push str.CZECH
mov ecx, esi
call fcn.10002d10
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
mov esp, ebp
pop ebp
ret
mov ecx, 0x406
cmp ax, cx
jne 0x100172ce
push str.DANISH
mov ecx, esi
call fcn.10002d10
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
mov esp, ebp
pop ebp
ret
mov ecx, 0x413
cmp ax, cx
je 0x1001755a
mov ecx, 0x813
cmp ax, cx
je 0x1001755a
mov ecx, 0x40b
cmp ax, cx
jne 0x10017312
push str.FINNISH
mov ecx, esi
call fcn.10002d10
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
mov esp, ebp
pop ebp
ret
mov ecx, 0x40d
cmp ax, cx
jne 0x1001733a
push str.HEBREW
mov ecx, esi
call fcn.10002d10
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
mov esp, ebp
pop ebp
ret
mov ecx, 0x40e
cmp ax, cx
jne 0x10017362
push str.HUNGARIAN
mov ecx, esi
call fcn.10002d10
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
mov esp, ebp
pop ebp
ret
mov ecx, 0x421
cmp ax, cx
jne 0x1001738a
push str.INDONESIAN
mov ecx, esi
call fcn.10002d10
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
mov esp, ebp
pop ebp
ret
mov ecx, 0x414
cmp ax, cx
je 0x1001753c
mov ecx, 0x814
cmp ax, cx
je 0x1001753c
mov ecx, 0x415
cmp ax, cx
jne 0x100173ce
push str.POLISH
mov ecx, esi
call fcn.10002d10
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
mov esp, ebp
pop ebp
ret
mov ecx, 0x418
cmp ax, cx
jne 0x100173f6
push str.ROMANIAN
mov ecx, esi
call fcn.10002d10
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
mov esp, ebp
pop ebp
ret
mov ecx, 0x41b
cmp ax, cx
jne 0x1001741e
push str.SLOVAK
mov ecx, esi
call fcn.10002d10
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
mov esp, ebp
pop ebp
ret
mov ecx, 0x81d
cmp ax, cx
je 0x1001751e
mov ecx, 0x41d
cmp ax, cx
je 0x1001751e
mov ecx, 0x41e
cmp ax, cx
jne 0x10017462
push str.THAI
mov ecx, esi
call fcn.10002d10
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
mov esp, ebp
pop ebp
ret
mov ecx, 0x41f
cmp ax, cx
jne 0x1001748a
push str.TURKISH
mov ecx, esi
call fcn.10002d10
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
mov esp, ebp
pop ebp
ret
mov ecx, 0x422
cmp ax, cx
jne 0x100174b2
push str.UKRAINIAN
mov ecx, esi
call fcn.10002d10
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
mov esp, ebp
pop ebp
ret
mov ecx, 0x42a
cmp ax, cx
jne 0x100174da
push str.VIETNAMESE
mov ecx, esi
call fcn.10002d10
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
mov esp, ebp
pop ebp
ret
mov ecx, 0x408
cmp ax, cx
mov ecx, esi
jne 0x10017502
push 0x100537a0
call fcn.10002d10
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
mov esp, ebp
pop ebp
ret
push str.ENGLISH
call fcn.10002d10
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
mov esp, ebp
pop ebp
ret
push str.SWEDISH
mov ecx, esi
call fcn.10002d10
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
mov esp, ebp
pop ebp
ret
push str.NORWEGIAN
mov ecx, esi
call fcn.10002d10
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
mov esp, ebp
pop ebp
ret
push str.DUTCH
mov ecx, esi
call fcn.10002d10
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
mov esp, ebp
pop ebp
ret
push str.ITALIAN
mov ecx, esi
call fcn.10002d10
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
mov esp, ebp
pop ebp
ret
push str.FRENCH
mov ecx, esi
call fcn.10002d10
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
mov esp, ebp
pop ebp
ret
push str.SPANISH
mov ecx, esi
call fcn.10002d10
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
mov esp, ebp
pop ebp
ret
push str.GERMAN
mov ecx, esi
call fcn.10002d10
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
mov esp, ebp
pop ebp
ret
push str.ARABIC
mov ecx, esi
call fcn.10002d10
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
mov esp, ebp
pop ebp
ret
call fcn.10002870
mov ecx, eax
test ecx, ecx
je 0x100176a4
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [esi], eax
mov eax, str.CHINESE_TRADITIONAL
mov dword [ebp - 4], 1
mov ecx, esi
test eax, 0xffff0000
je 0x1001766b
push 0x13
push eax
jmp 0x1001768d
call fcn.10002870
mov ecx, eax
test ecx, ecx
je 0x100176ae
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [esi], eax
mov eax, str.ENGLISH
mov dword [ebp - 4], 0
mov ecx, esi
test eax, 0xffff0000
jne 0x10017686
movzx eax, ax
push eax
call fcn.100029d0
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
mov esp, ebp
pop ebp
ret
push 7
push str.ENGLISH
call fcn.10002b80
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
mov esp, ebp
pop ebp
ret
push 0x80004005
call fcn.10001a90
push 0x80004005
call fcn.10001a90
int3