Function at 0x438fff
Capabilities:
Identify system language via api

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x40
mov eax, dword [0x4960a8]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 0xc]
push ebx
mov ebx, dword [ebp + 0x14]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp + 0x10]
push esi
push edi
mov edi, dword [ebp + 8]
mov dword [ebp - 0x24], eax
call sub.KERNEL32.dll_GetUserDefaultUILanguage
movzx esi, ax
test si, si
jbe 0x439074
push dword [ebp - 0x24]
push esi
push dword [ebp - 0x2c]
push edi
call fcn.00438d66
add esp, 0x10
test al, al
je 0x43904f
mov word [ebx], si
mov al, 1
jmp 0x4392f8
push edi
push esi
call fcn.00437fc4
movzx esi, ax
pop ecx
pop ecx
test si, si
jbe 0x439074
push dword [ebp - 0x24]
push esi
push dword [ebp - 0x2c]
push edi
call fcn.00438d66
add esp, 0x10
test al, al
jne 0x439045
call sub.KERNEL32.dll_GetSystemDefaultUILanguage
movzx esi, ax
test si, si
jbe 0x4390ba
push dword [ebp - 0x24]
push esi
push dword [ebp - 0x2c]
push edi
call fcn.00438d66
add esp, 0x10
test al, al
jne 0x439045
push edi
push esi
call fcn.00437fc4
movzx esi, ax
pop ecx
pop ecx
test si, si
jbe 0x4390ba
push dword [ebp - 0x24]
push esi
push dword [ebp - 0x2c]
push edi
call fcn.00438d66
add esp, 0x10
test al, al
jne 0x439045
call fcn.00447c89
movzx esi, ax
test si, si
jbe 0x439108
push dword [ebp - 0x24]
push esi
push dword [ebp - 0x2c]
push edi
call fcn.00438d66
add esp, 0x10
test al, al
jne 0x439045
push edi
push esi
call fcn.00437fc4
movzx esi, ax
pop ecx
pop ecx
test si, si
jbe 0x439108
push dword [ebp - 0x24]
push esi
push dword [ebp - 0x2c]
push edi
call fcn.00438d66
add esp, 0x10
test al, al
jne 0x439045
lea ecx, [ebp - 0x40]
call fcn.0042cd47
push 0x497a28
lea ecx, [ebp - 0x28]
call fcn.004037fc
push 0x473240
lea eax, [ebp - 0x28]
push edi
push eax
call fcn.0042e630
add esp, 0xc
test al, al
je 0x4392e3
xor esi, esi
push esi
push 0x80
push 3
push esi
push 1
push SysReAllocString
push dword [ebp - 0x28]
lea ecx, [ebp - 0x40]
call fcn.0042d0bc
test eax, eax
jne 0x4391a4
mov ecx, dword [ebp - 0x24]
mov word [ebx], ax
call fcn.00403ac2
mov eax, dword [0x497644]
cmp eax, 0x497644
je 0x4392e3
test byte [eax + 0x1c], 1
je 0x4392e3
cmp byte [eax + 0x19], 2
jb 0x4392e3
push dword [ebp - 0x28]
push 0x473228
push 0x1d
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.004347c2
add esp, 0x14
jmp 0x4392e3
push 0xe
lea eax, [ebp - 0x14]
push esi
push eax
call fcn.0045b990
add esp, 0xc
lea ecx, [ebp - 0x40]
call fcn.0042cfb9
cmp edx, esi
ja 0x4391c4
cmp eax, 0xe
jbe 0x43921a
mov ecx, dword [ebp - 0x24]
xor eax, eax
mov word [ebx], ax
call fcn.00403ac2
mov eax, dword [0x497644]
cmp eax, 0x497644
je 0x4391fe
test byte [eax + 0x1c], 1
je 0x4391fe
cmp byte [eax + 0x19], 2
jb 0x4391fe
push 0x473228
push 0x1e
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.0040d1fe
add esp, 0x10
xor bl, bl
mov ecx, dword [ebp - 0x28]
add ecx, 0xfffffff0
call fcn.00403af7
lea ecx, [ebp - 0x40]
call fcn.0042d0a5
mov al, bl
jmp 0x4392f8
lea ecx, [ebp - 0x40]
call fcn.0042cded
lea ecx, [ebp - 0x40]
call fcn.0042cfb9
push eax
lea eax, [ebp - 0x14]
push eax
lea ecx, [ebp - 0x40]
call fcn.0042cdf8
test eax, eax
je 0x4392d6
push 0xa
lea eax, [ebp - 0x20]
push esi
push eax
call fcn.0045b990
mov cx, word [ebp - 0x14]
mov eax, 0xfeff
add esp, 0xc
cmp cx, ax
jne 0x439277
xor ecx, ecx
xor eax, eax
mov dx, word [ebp + eax - 0x12]
inc ecx
mov word [ebp + eax - 0x20], dx
lea eax, [ecx + ecx]
cmp word [ebp + eax - 0x14], si
jne 0x439260
jmp 0x439290
test cl, cl
je 0x439290
lea edx, [ebp - 0x14]
lea eax, [ebp - 0x1f]
mov byte [eax - 1], cl
mov byte [eax], 0
inc eax
inc eax
inc edx
mov cl, byte [edx]
test cl, cl
jne 0x439281
lea eax, [ebp - 0x30]
push eax
lea eax, [ebp - 0x20]
push 0x480b70
push eax
mov dword [ebp - 0x30], esi
call fcn.0045bcce
add esp, 0xc
cmp eax, 1
jne 0x4392d6
cmp dword [ebp - 0x30], esi
jle 0x4392d6
push dword [ebp - 0x24]
push dword [ebp - 0x30]
push dword [ebp - 0x2c]
push edi
call fcn.00438d66
add esp, 0x10
test al, al
je 0x4392d6
mov ax, word [ebp - 0x30]
mov word [ebx], ax
mov bl, 1
jmp 0x439200
mov ecx, dword [ebp - 0x24]
xor eax, eax
mov word [ebx], ax
call fcn.00403ac2
mov ecx, dword [ebp - 0x28]
add ecx, 0xfffffff0
call fcn.00403af7
lea ecx, [ebp - 0x40]
call fcn.0042d0a5
xor al, al
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.00459871
leave
ret