Function at 0x4065a0
Capabilities:
Get geographical location

Disassembly:
sub esp, 0x204
mov eax, dword [0x480aa4]
xor eax, esp
mov dword [esp + 0x200], eax
push esi
push edi
mov edi, dword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
push 0xff
lea eax, [esp + 0xc]
push eax
push 0x38
push 0x400
mov esi, ecx
call edi
lea eax, [esp + 8]
lea edx, [eax + 2]
jmp 0x4065e0
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x4065e0
sub eax, edx
sar eax, 1
push eax
lea ecx, [esp + 0xc]
push ecx
lea ecx, [esi + 4]
call fcn.00401ce0
push 0xff
lea edx, [esp + 0xc]
push edx
push 0x39
push 0x400
call edi
lea eax, [esp + 8]
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x406617
sub eax, edx
sar eax, 1
push eax
lea eax, [esp + 0xc]
push eax
lea ecx, [esi + 8]
call fcn.00401ce0
push 0xff
lea ecx, [esp + 0xc]
push ecx
push 0x3a
push 0x400
call edi
lea eax, [esp + 8]
lea edx, [eax + 2]
mov edi, edi
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x406650
sub eax, edx
sar eax, 1
push eax
lea edx, [esp + 0xc]
push edx
lea ecx, [esi + 0xc]
call fcn.00401ce0
push 0xff
lea eax, [esp + 0xc]
push eax
push 0x3b
push 0x400
call edi
lea eax, [esp + 8]
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x406687
sub eax, edx
sar eax, 1
push eax
lea ecx, [esp + 0xc]
push ecx
lea ecx, [esi + 0x10]
call fcn.00401ce0
push 0xff
lea edx, [esp + 0xc]
push edx
push 0x3c
push 0x400
call edi
lea eax, [esp + 8]
lea edx, [eax + 2]
mov edi, edi
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x4066c0
sub eax, edx
sar eax, 1
push eax
lea eax, [esp + 0xc]
push eax
lea ecx, [esi + 0x14]
call fcn.00401ce0
push 0xff
lea ecx, [esp + 0xc]
push ecx
push 0x3d
push 0x400
call edi
lea eax, [esp + 8]
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x4066f7
sub eax, edx
sar eax, 1
push eax
lea edx, [esp + 0xc]
push edx
lea ecx, [esi + 0x18]
call fcn.00401ce0
push 0xff
lea eax, [esp + 0xc]
push eax
push 0x3e
push 0x400
call edi
lea eax, [esp + 8]
lea edx, [eax + 2]
mov edi, edi
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x406730
sub eax, edx
sar eax, 1
push eax
lea ecx, [esp + 0xc]
push ecx
lea ecx, [esi + 0x1c]
call fcn.00401ce0
push 0xff
lea edx, [esp + 0xc]
push edx
push 0x3f
push 0x400
call edi
lea eax, [esp + 8]
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x406767
sub eax, edx
sar eax, 1
push eax
lea eax, [esp + 0xc]
push eax
lea ecx, [esi + 0x20]
call fcn.00401ce0
push 0xff
lea ecx, [esp + 0xc]
push ecx
push 0x40
push 0x400
call edi
lea eax, [esp + 8]
lea edx, [eax + 2]
mov edi, edi
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x4067a0
sub eax, edx
sar eax, 1
push eax
lea edx, [esp + 0xc]
push edx
lea ecx, [esi + 0x24]
call fcn.00401ce0
push 0xff
lea eax, [esp + 0xc]
push eax
push 0x41
push 0x400
call edi
lea eax, [esp + 8]
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x4067d7
sub eax, edx
sar eax, 1
push eax
lea ecx, [esp + 0xc]
push ecx
lea ecx, [esi + 0x28]
call fcn.00401ce0
push 0xff
lea edx, [esp + 0xc]
push edx
push 0x42
push 0x400
call edi
lea eax, [esp + 8]
lea edx, [eax + 2]
mov edi, edi
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x406810
sub eax, edx
sar eax, 1
push eax
lea eax, [esp + 0xc]
push eax
lea ecx, [esi + 0x2c]
call fcn.00401ce0
push 0xff
lea ecx, [esp + 0xc]
push ecx
push 0x43
push 0x400
call edi
lea eax, [esp + 8]
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x406847
sub eax, edx
sar eax, 1
push eax
lea edx, [esp + 0xc]
push edx
lea ecx, [esi + 0x30]
call fcn.00401ce0
mov ecx, dword [esp + 0x208]
pop edi
pop esi
xor ecx, esp
call fcn.0044746c
add esp, 0x204
ret