Function at 0x1c418a0
Capabilities:
Identify system language via api

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x224
mov ebx, edx
mov edx, dword [ebp + 8]
mov eax, dword [0x1d08010]
xor eax, ebp
mov dword [ebp - 0x10], eax
cmp byte [edx + 0xb], 0
jns 0x1c418d1
mov eax, dword [edx]
mov word [eax], 0
mov dword [edx + 4], 0
jmp 0x1c418da
mov word [edx], 0
mov byte [edx + 0xb], 0
test ecx, ecx
je 0x1c419c4
xor eax, eax
lea esi, [ebp - 0x218]
mov dword [esi], eax
lea edx, [ebp - 0x21c]
mov dword [edx], eax
push edx
push esi
push str.VarFileInfoTranslation
mov dword [ebp - 0x224], ecx
push ecx
call sub.VERSION.dll_VerQueryValueW
test eax, eax
je 0x1c419c4
mov eax, dword [ebp - 0x218]
movzx ecx, word [eax]
mov dword [ebp - 0x22c], ecx
movzx eax, word [eax + 2]
mov dword [ebp - 0x230], eax
mov edi, dword [sym.imp.KERNEL32.dll_GetUserDefaultLangID]
call edi
mov word [ebp - 0x228], ax
call edi
mov word [ebp - 0x226], ax
push 0x208
push 0xff
push esi
call fcn.01c96880
add esp, 0xc
cmp byte [ebx + 0xb], 0
mov eax, ebx
jns 0x1c4195d
mov eax, dword [ebx]
mov ecx, 0x104
push eax
push dword [ebp - 0x230]
push dword [ebp - 0x22c]
push str.StringFileInfo_04hx_04hx_ls
push ecx
push ecx
push esi
call fcn.01c42910
add esp, 0x1c
xor eax, eax
mov dword [ebp - 0x21c], eax
lea ecx, [ebp - 0x220]
mov dword [ecx], eax
push ecx
lea eax, [ebp - 0x21c]
push eax
push esi
push dword [ebp - 0x224]
call sub.VERSION.dll_VerQueryValueW
test eax, eax
je 0x1c419d9
mov edi, dword [ebp - 0x21c]
test edi, edi
je 0x1c419d9
push edi
call fcn.01cab194
add esp, 4
mov ecx, dword [ebp + 8]
push eax
push edi
call fcn.01c3d4f0
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.01c938a3
add esp, 0x224
pop esi
pop edi
pop ebx
pop ebp
ret
push 0x208
push 0xff
push esi
call fcn.01c96880
add esp, 0xc
cmp byte [ebx + 0xb], 0
mov eax, ebx
jns 0x1c419f6
mov eax, dword [ebx]
movzx ecx, word [ebp - 0x228]
mov edx, 0x104
push eax
push dword [ebp - 0x230]
push ecx
push str.StringFileInfo_04hx_04hx_ls
push edx
push edx
push esi
call fcn.01c42910
add esp, 0x1c
xor eax, eax
mov dword [ebp - 0x21c], eax
mov dword [ebp - 0x220], eax
lea eax, [ebp - 0x220]
push eax
lea eax, [ebp - 0x21c]
push eax
push esi
push dword [ebp - 0x224]
call sub.VERSION.dll_VerQueryValueW
test eax, eax
je 0x1c41a54
mov edi, dword [ebp - 0x21c]
test edi, edi
jne 0x1c419b1
push 0x208
push 0xff
push esi
call fcn.01c96880
add esp, 0xc
cmp byte [ebx + 0xb], 0
mov eax, ebx
jns 0x1c41a71
mov eax, dword [ebx]
mov ecx, 0x104
push eax
push 0x4e4
push dword [ebp - 0x22c]
push str.StringFileInfo_04hx_04hx_ls
push ecx
push ecx
push esi
call fcn.01c42910
add esp, 0x1c
xor eax, eax
mov dword [ebp - 0x21c], eax
mov dword [ebp - 0x220], eax
lea eax, [ebp - 0x220]
push eax
lea eax, [ebp - 0x21c]
push eax
push esi
push dword [ebp - 0x224]
call sub.VERSION.dll_VerQueryValueW
test eax, eax
je 0x1c41acc
mov edi, dword [ebp - 0x21c]
test edi, edi
jne 0x1c419b1
push 0x208
push 0xff
lea edi, [ebp - 0x218]
push edi
call fcn.01c96880
add esp, 0xc
cmp byte [ebx + 0xb], 0
jns 0x1c41aed
mov ebx, dword [ebx]
mov esi, dword [ebp - 0x224]
movzx eax, word [ebp - 0x226]
movzx eax, ax
mov ecx, 0x104
push ebx
push 0x4e4
push eax
push str.StringFileInfo_04hx_04hx_ls
push ecx
push ecx
push edi
call fcn.01c42910
add esp, 0x1c
xor eax, eax
mov dword [ebp - 0x21c], eax
mov dword [ebp - 0x220], eax
lea eax, [ebp - 0x220]
push eax
lea eax, [ebp - 0x21c]
push eax
push edi
push esi
call sub.VERSION.dll_VerQueryValueW
test eax, eax
je 0x1c419c4
mov edi, dword [ebp - 0x21c]
test edi, edi
jne 0x1c419b1
jmp 0x1c419c4