Function at 0x439e80
Capabilities:
Get geographical location
Identify system language via api

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4f2578
mov eax, dword fs:[0]
push eax
sub esp, 0x1f0
mov eax, dword [0x56b114]
xor eax, ebp
mov dword [ebp - 0x14], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, dword [ebp + 8]
mov dword [ebp - 4], 0
mov dword [ebp - 0x1fc], edi
mov dword [ebp - 0x1f8], 0
call dword [sym.imp.KERNEL32.dll_GetUserDefaultUILanguage]
lea ecx, [ebp - 0x1f4]
movzx esi, ax
call fcn.004158e0
mov dword [ebp - 4], 1
mov ecx, edi
push 0
mov dword [edi + 0x10], 0
mov dword [edi + 0x14], 0xf
push 0x5170c6
mov byte [edi], 0
call fcn.0040e340
push 0
push 0x5170c6
lea ecx, [ebp - 0x18c]
mov dword [ebp - 0x1f8], 1
mov dword [ebp - 0x17c], 0
mov dword [ebp - 0x178], 0xf
mov byte [ebp - 0x18c], 0
call fcn.0040e340
push 0x55
lea eax, [ebp - 0xc4]
mov byte [ebp - 4], 2
mov ebx, dword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
push eax
push 0x59
push esi
call ebx
test eax, eax
jle 0x43a08b
cmp word [ebp - 0xc4], 0
lea eax, [ebp - 0xc4]
je 0x439f79
nop dword [eax]
add eax, 2
cmp word [eax], 0
jne 0x439f70
push eax
lea eax, [ebp - 0xc4]
push eax
lea eax, [ebp - 0x1a4]
push eax
lea ecx, [ebp - 0x1f4]
call fcn.00416030
lea eax, [ebp - 0x1a4]
mov dword [ebp - 0x1f8], 3
push eax
mov ecx, edi
call fcn.00415f40
mov edx, dword [ebp - 0x190]
cmp edx, 0x10
jb 0x439fe5
mov ecx, dword [ebp - 0x1a4]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x439fdb
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43a156
push edx
push ecx
call fcn.004c3d01
add esp, 8
push 0x55
lea eax, [ebp - 0x174]
push eax
push 0x5a
push esi
call ebx
test eax, eax
jle 0x43a099
cmp word [ebp - 0x174], 0
lea eax, [ebp - 0x174]
je 0x43a019
nop dword [eax + eax]
add eax, 2
cmp word [eax], 0
jne 0x43a010
push eax
lea eax, [ebp - 0x174]
push eax
lea eax, [ebp - 0x1a4]
push eax
lea ecx, [ebp - 0x1f4]
call fcn.00416030
lea eax, [ebp - 0x1a4]
mov dword [ebp - 0x1f8], 7
push eax
lea ecx, [ebp - 0x18c]
call fcn.00415f40
mov edx, dword [ebp - 0x190]
cmp edx, 0x10
jb 0x43a099
mov ecx, dword [ebp - 0x1a4]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x43a07f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43a15b
push edx
push ecx
call fcn.004c3d01
add esp, 8
jmp 0x43a099
push 2
push 0x51dff0
mov ecx, edi
call fcn.0040e340
cmp dword [edi + 0x14], 0x10
mov ecx, edi
jb 0x43a0a3
mov ecx, dword [edi]
mov edx, dword [edi + 0x10]
push 2
push 0x51e08c
call fcn.0043b440
mov ebx, dword [ebp - 0x178]
add esp, 8
mov esi, dword [ebp - 0x18c]
test al, al
je 0x43a0ff
mov edx, dword [ebp - 0x17c]
lea ecx, [ebp - 0x18c]
cmp ebx, 0x10
push 2
cmovae ecx, esi
push 0x51e090
call fcn.0043b440
add esp, 8
mov ecx, edi
push 2
test al, al
je 0x43a0f5
push 0x51e064
jmp 0x43a0fa
push 0x51e074
call fcn.0040e340
cmp ebx, 0x10
jb 0x43a12b
lea ecx, [ebx + 1]
mov eax, esi
cmp ecx, 0x1000
jb 0x43a121
mov esi, dword [esi - 4]
add ecx, 0x23
sub eax, esi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43a160
push ecx
push esi
call fcn.004c3d01
add esp, 8
lea ecx, [ebp - 0x1f4]
call fcn.004157f0
mov eax, edi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.004c360c
mov esp, ebp
pop ebp
ret 4
call fcn.004cac9c
call fcn.004cac9c
call fcn.004cac9c
int3