Function at 0x4585e0
Capabilities:
Get geographical location

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffee8
push ebx
push esi
xor edx, edx
mov dword [ebp - 0x14], edx
mov dword [ebp - 0x118], edx
mov dword [ebp - 4], edx
mov esi, eax
xor eax, eax
push ebp
push 0x45895b
push dword fs:[eax]
mov dword fs:[eax], esp
push 5
lea eax, [ebp - 0xe]
push eax
push 0x59
push 0x400
call sub.kernel32.dll_GetLocaleInfoA_1
cmp eax, 3
sete bl
test bl, bl
je 0x45863c
push 5
lea eax, [ebp - 9]
push eax
push 0x5a
push 0x400
call sub.kernel32.dll_GetLocaleInfoA_1
cmp eax, 3
je 0x458640
xor eax, eax
jmp 0x458642
mov al, 1
mov ebx, eax
test bl, bl
je 0x458692
lea eax, [ebp - 0x114]
lea edx, [ebp - 0xe]
call fcn.004038d4
lea edx, [ebp - 0x114]
lea eax, [ebp - 0x14]
call fcn.00404e98
push dword [ebp - 0x14]
push 0x458970
lea eax, [ebp - 0x118]
lea edx, [ebp - 9]
call fcn.00404e2c
push dword [ebp - 0x118]
lea eax, [ebp - 4]
mov edx, 3
call fcn.00404fb8
jmp 0x458928
call sub.kernel32.dll_GetThreadLocale_1
cmp eax, 0x415
jg 0x4586f5
je 0x4588c1
add eax, 0xfffffbfa
cmp eax, 0xe
ja case.0x4586b2.1037
jmp dword [eax*4 + 0x4586b9]
cmp eax, 0x814
jg 0x458742
je 0x4588b2
cmp eax, 0x809
jg 0x458731
je 0x4587dd
sub eax, 0x416
je 0x4587a7
sub eax, 3
je 0x4588df
sub eax, 4
je 0x4588fd
jmp case.0x4586b2.1037
sub eax, 0x80c
je 0x458795
sub eax, 7
je 0x458783
jmp case.0x4586b2.1037
cmp eax, 0xc0a
jg 0x458768
je case.0x4586b2.1034
sub eax, 0x816
je 0x4588d0
sub eax, 7
je 0x45890c
jmp case.0x4586b2.1037
sub eax, 0xc0c
je 0x458825
sub eax, 0x3fb
je 0x458849
jmp case.0x4586b2.1037
lea eax, [ebp - 4]
mov edx, 0x45897c
call fcn.00404ccc
jmp 0x458928
lea eax, [ebp - 4]
mov edx, 0x45898c
call fcn.00404ccc
jmp 0x458928
lea eax, [ebp - 4]
mov edx, 0x45899c
call fcn.00404ccc
jmp 0x458928
lea eax, [ebp - 4]
mov edx, 0x4589ac
call fcn.00404ccc
jmp 0x458928
lea eax, [ebp - 4]
mov edx, 0x4589bc
call fcn.00404ccc
jmp 0x458928
lea eax, [ebp - 4]
mov edx, 0x4589cc
call fcn.00404ccc
jmp 0x458928
lea eax, [ebp - 4]
mov edx, 0x4589dc
call fcn.00404ccc
jmp 0x458928
lea eax, [ebp - 4]
mov edx, 0x4589ec
call fcn.00404ccc
jmp 0x458928
lea eax, [ebp - 4]
mov edx, 0x4589fc
call fcn.00404ccc
jmp 0x458928
lea eax, [ebp - 4]
mov edx, 0x458a0c
call fcn.00404ccc
jmp 0x458928
lea eax, [ebp - 4]
mov edx, 0x458a1c
call fcn.00404ccc
jmp 0x458928
lea eax, [ebp - 4]
mov edx, 0x458a2c
call fcn.00404ccc
jmp 0x458928
lea eax, [ebp - 4]
mov edx, 0x458a3c
call fcn.00404ccc
jmp 0x458928
lea eax, [ebp - 4]
mov edx, 0x458a4c
call fcn.00404ccc
jmp 0x458928
lea eax, [ebp - 4]
mov edx, 0x458a5c
call fcn.00404ccc
jmp 0x458928
lea eax, [ebp - 4]
mov edx, 0x458a6c
call fcn.00404ccc
jmp 0x458928
lea eax, [ebp - 4]
mov edx, 0x458a7c
call fcn.00404ccc
jmp 0x458928
lea eax, [ebp - 4]
mov edx, 0x458a8c
call fcn.00404ccc
jmp 0x458928
lea eax, [ebp - 4]
mov edx, 0x458a9c
call fcn.00404ccc
jmp 0x458928
lea eax, [ebp - 4]
mov edx, 0x458aac
call fcn.00404ccc
jmp 0x458928
lea eax, [ebp - 4]
mov edx, 0x458abc
call fcn.00404ccc
jmp 0x458928
lea eax, [ebp - 4]
mov edx, 0x458acc
call fcn.00404ccc
jmp 0x458928
lea eax, [ebp - 4]
mov edx, 0x458adc
call fcn.00404ccc
jmp 0x458928
lea eax, [ebp - 4]
mov edx, 0x458aec
call fcn.00404ccc
jmp 0x458928
lea eax, [ebp - 4]
mov edx, 0x458afc
call fcn.00404ccc
mov eax, esi
mov edx, dword [ebp - 4]
call fcn.00404c88
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x458962
lea eax, [ebp - 0x118]
call fcn.00404c34
lea eax, [ebp - 0x14]
call fcn.00404c34
lea eax, [ebp - 4]
call fcn.00404c34
ret