Function at 0x40774c
Capabilities:
Get geographical location

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x5a8
push ebx
push esi
push edi
mov byte [0x431384], 0
mov byte [0x431385], 0
mov dword [0x4312bc], 0
mov dword [0x4312d0], 0
mov dword [0x4312e4], 0
push 0xa
push 0x4312bc
push 0x59
push 0x400
call dword [sym.imp.KERNEL32.DLL_GetLocaleInfoW]
test eax, eax
je 0x407aff
cmp word [0x4312bc], 0
je 0x407aff
push 0xa
push 0x4312d0
push 0x5a
push 0x400
call dword [sym.imp.KERNEL32.DLL_GetLocaleInfoW]
lea edi, [ebp - 0xc8]
mov dword [edi], 0
push 0x64
push edi
push 0x1001
push 0x400
call dword [sym.imp.KERNEL32.DLL_GetLocaleInfoW]
lea esi, [ebp - 0x190]
mov dword [esi], 0
push 0x64
push esi
push 0x1002
push 0x400
call dword [sym.imp.KERNEL32.DLL_GetLocaleInfoW]
push esi
push edi
push 0x4312d0
push 0x4312bc
push 0x407bb0
push 0x50
push 0x4312e4
call dword [sym.imp.SHLWAPI.DLL_wnsprintfW]
add esp, 0x1c
push 0x407bd0
push 0x4312bc
call dword [sym.imp.KERNEL32.DLL_lstrcmpiW]
test eax, eax
jne 0x407849
lea edi, [0x431388]
mov eax, dword [edi + 4]
test eax, eax
je 0x407849
mov dword [edi], eax
add edi, 8
jmp 0x40783b
lea edi, [ebp - 0x5a0]
mov dword [edi], 0
push 0x104
push edi
push dword [0x420af4]
call dword [sym.imp.KERNEL32.DLL_GetModuleFileNameW]
push edi
call dword [sym.imp.SHLWAPI.DLL_PathRemoveFileSpecW]
lea ebx, [ebp - 0x398]
cmp word [0x4312d0], 0
je 0x4078ad
push 0x4312d0
push 0x4312bc
push edi
push 0x407b66
push 0x104
push ebx
call dword [sym.imp.SHLWAPI.DLL_wnsprintfW]
add esp, 0x18
push ebx
call fcn.00407c51
test eax, eax
je 0x4078ad
test edx, edx
js 0x4078ad
jmp 0x4078dd
push 0x4312bc
push edi
push 0x407b8e
push 0x104
push ebx
call dword [sym.imp.SHLWAPI.DLL_wnsprintfW]
add esp, 0x14
push ebx
call fcn.00407c51
test eax, eax
je 0x407aff
test edx, edx
js 0x407aff
mov dword [ebp - 0x5a8], eax
mov dword [ebp - 0x5a4], edx
cld
lea esi, [0x4313b8]
mov ebx, 8
call fcn.00407b04
lea esi, [0x4316b0]
mov ebx, 0xc
call fcn.00407b04
lea esi, [0x42b07c]
call fcn.00407b04
lea esi, [0x42afe8]
call fcn.00407b04
lea esi, [0x4310a8]
call fcn.00407b04
lea esi, [0x4310c0]
call fcn.00407b04
lea esi, [0x42baec]
call fcn.00407b04
lea esi, [0x42bb10]
call fcn.00407b04
lea esi, [0x42c36c]
call fcn.00407b04
lea esi, [0x42cdfc]
call fcn.00407b04
lea esi, [0x42dea4]
call fcn.00407b04
lea esi, [0x42e514]
call fcn.00407b04
lea esi, [0x42ea6c]
call fcn.00407b04
lea esi, [0x42f42c]
call fcn.00407b04
lea esi, [0x4301c0]
call fcn.00407b04
lea esi, [0x42fcc8]
call fcn.00407b04
lea esi, [0x4301d8]
call fcn.00407b04
lea esi, [0x4309d8]
call fcn.00407b04
lea esi, [0x43069c]
call fcn.00407b04
lea esi, [0x4306e4]
call fcn.00407b04
lea esi, [0x429ce4]
call fcn.00407b04
lea esi, [0x429d08]
call fcn.00407b04
lea esi, [0x42af7c]
call fcn.00407b04
lea esi, [0x4313b8]
mov ebx, 8
call fcn.00407b38
lea esi, [0x4316b0]
mov ebx, 0xc
call fcn.00407b38
lea esi, [0x42b07c]
call fcn.00407b38
lea esi, [0x42afe8]
call fcn.00407b38
lea esi, [0x4310a8]
call fcn.00407b38
lea esi, [0x4310c0]
call fcn.00407b38
lea esi, [0x42baec]
call fcn.00407b38
lea esi, [0x42bb10]
call fcn.00407b38
lea esi, [0x42c36c]
call fcn.00407b38
lea esi, [0x42cdfc]
call fcn.00407b38
lea esi, [0x42dea4]
call fcn.00407b38
lea esi, [0x42e514]
call fcn.00407b38
lea esi, [0x42ea6c]
call fcn.00407b38
lea esi, [0x42f42c]
call fcn.00407b38
lea esi, [0x4301c0]
call fcn.00407b38
lea esi, [0x42fcc8]
call fcn.00407b38
lea esi, [0x4301d8]
call fcn.00407b38
lea esi, [0x4309d8]
call fcn.00407b38
lea esi, [0x43069c]
call fcn.00407b38
lea esi, [0x4306e4]
call fcn.00407b38
lea esi, [0x429ce4]
call fcn.00407b38
lea esi, [0x429d08]
call fcn.00407b38
lea esi, [0x42af7c]
call fcn.00407b38
mov byte [0x431385], 1
pop edi
pop esi
pop ebx
leave
ret