Function at 0x1008c1c
Capabilities:
Get geographical location

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x880
mov eax, dword [0x10253cc]
mov dword [ebp - 4], eax
mov eax, dword [ebp + 8]
push ebx
push esi
push edi
mov dword [ebp - 0x860], eax
xor eax, eax
mov esi, 0x100151c
lea edi, [ebp - 0x4c]
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
lea edi, [ebp - 0x46]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
xor eax, eax
mov esi, 0x1001514
lea edi, [ebp - 0x38]
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
mov ebx, dword [ebp + 0xc]
lea edi, [ebp - 0x32]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
xor eax, eax
mov dword [ebp - 0x14], 0x2f
lea edi, [ebp - 0x10]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
xor eax, eax
mov dword [ebp - 0x24], 0x3a
lea edi, [ebp - 0x20]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
and dword [ebp - 0x870], 0
and dword [ebp - 0x854], 0
stosd dword es:[edi], eax
xor eax, eax
mov edi, ebx
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
mov edi, dword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
mov esi, 0x400
push esi
lea eax, [ebp - 0x84c]
push eax
push 0x21
push esi
mov dword [ebp - 0x86c], ebx
call edi
cmp eax, 1
jle 0x1008cce
lea eax, [ebp - 0x84c]
push eax
call fcn.0100bafe
pop ecx
mov dword [ebp - 0x870], eax
push 9
lea eax, [ebp - 0x84c]
push eax
push 0x28
push esi
call edi
cmp eax, 1
jle 0x1008cf6
push 9
lea eax, [ebp - 0x84c]
push eax
lea eax, [ebp - 0x38]
push eax
call fcn.0100c392
add esp, 0xc
push 9
lea eax, [ebp - 0x84c]
push eax
push 0x29
push esi
call edi
cmp eax, 1
jle 0x1008d1e
push 9
lea eax, [ebp - 0x84c]
push eax
lea eax, [ebp - 0x4c]
push eax
call fcn.0100c392
add esp, 0xc
push 8
lea eax, [ebp - 0x84c]
push eax
push 0x1e
push esi
call edi
cmp eax, 1
jle 0x1008d46
push 8
lea eax, [ebp - 0x84c]
push eax
lea eax, [ebp - 0x24]
push eax
call fcn.0100c392
add esp, 0xc
push 8
lea eax, [ebp - 0x84c]
push eax
push 0x1d
push esi
call edi
cmp eax, 1
jle 0x1008d6e
push 8
lea eax, [ebp - 0x84c]
push eax
lea eax, [ebp - 0x14]
push eax
call fcn.0100c392
add esp, 0xc
push esi
push dword [ebp - 0x860]
lea eax, [ebp - 0x84c]
push eax
call fcn.0100c392
and word [ebp - 0x4e], 0
mov esi, 0x100150c
lea eax, [ebp - 0x84c]
push esi
push eax
call fcn.0100b608
push esi
push 0
mov edi, eax
call fcn.0100b608
add esp, 0x1c
test edi, edi
mov dword [ebp - 0x860], eax
je 0x1009128
mov esi, 0xffff
lea eax, [ebp - 0x14]
push eax
push edi
call fcn.0100b91c
test eax, eax
pop ecx
pop ecx
je 0x1008ef9
mov eax, dword [ebp - 0x870]
and dword [ebp - 0x858], 0
sub eax, 0
je 0x1008e2f
dec eax
je 0x1008e14
dec eax
jne 0x1008ebc
lea eax, [ebp - 0x14]
push eax
push edi
call fcn.0100b608
mov dword [ebp - 0x858], eax
lea eax, [ebp - 0x14]
push eax
push 0
call fcn.0100b608
mov edi, eax
lea eax, [ebp - 0x14]
push eax
push 0
call fcn.0100b608
mov ebx, eax
jmp 0x1008e59
lea eax, [ebp - 0x14]
push eax
push edi
call fcn.0100b608
mov ebx, eax
lea eax, [ebp - 0x14]
push eax
push 0
call fcn.0100b608
mov edi, eax
jmp 0x1008e48
lea eax, [ebp - 0x14]
push eax
push edi
call fcn.0100b608
mov edi, eax
lea eax, [ebp - 0x14]
push eax
push 0
call fcn.0100b608
mov ebx, eax
lea eax, [ebp - 0x14]
push eax
push 0
call fcn.0100b608
mov dword [ebp - 0x858], eax
add esp, 0x18
test edi, edi
je 0x1008e89
push esi
lea eax, [ebp - 0x850]
push eax
push edi
call fcn.01006afe
test eax, eax
mov dword [ebp - 0x854], eax
jne 0x1008e89
mov ax, word [ebp - 0x850]
mov ecx, dword [ebp - 0x86c]
mov word [ecx + 2], ax
test ebx, ebx
je 0x1008eb6
push esi
lea eax, [ebp - 0x850]
push eax
push ebx
call fcn.01006afe
test eax, eax
mov dword [ebp - 0x854], eax
jne 0x1008eb6
mov ax, word [ebp - 0x850]
mov ecx, dword [ebp - 0x86c]
mov word [ecx + 6], ax
mov ebx, dword [ebp - 0x86c]
cmp dword [ebp - 0x858], 0
je 0x1009113
push esi
lea eax, [ebp - 0x850]
push eax
push dword [ebp - 0x858]
call fcn.01006afe
test eax, eax
mov dword [ebp - 0x854], eax
jne 0x1009113
mov ax, word [ebp - 0x850]
mov word [ebx], ax
jmp 0x1009113
xor eax, eax
mov dword [ebp - 0x85c], eax
mov dword [ebp - 0x868], eax
mov dword [ebp - 0x858], eax
lea eax, [ebp - 0x4c]
push eax
push edi
call fcn.01007980
mov dword [ebp - 0x878], eax
lea eax, [ebp - 0x38]
push eax
push edi
call fcn.01007980
mov dword [ebp - 0x874], eax
lea eax, [ebp - 0x24]
push eax
push edi
call fcn.0100b608
test eax, eax
pop ecx
pop ecx
mov dword [ebp - 0x864], eax
je 0x1008f67
lea eax, [ebp - 0x24]
push eax
push 0
mov dword [ebp - 0x858], 1
call fcn.0100b608
pop ecx
pop ecx
mov dword [ebp - 0x85c], eax
mov edi, 0x1001508
jmp 0x1008f72
mov edi, 0x1001508
mov dword [ebp - 0x864], edi
cmp dword [ebp - 0x85c], 0
je 0x1008f96
inc dword [ebp - 0x858]
lea eax, [ebp - 0x24]
push eax
push 0
call fcn.0100b608
pop ecx
pop ecx
mov dword [ebp - 0x868], eax
jmp 0x1008f9c
mov dword [ebp - 0x85c], edi
cmp dword [ebp - 0x868], 0
je 0x1008fad
inc dword [ebp - 0x858]
jmp 0x1008fb3
mov dword [ebp - 0x868], edi
cmp dword [ebp + 0x10], 0
je 0x1008fc3
mov dword [ebp - 0x858], 3
mov eax, dword [ebp - 0x858]
dec eax
je 0x100907e
dec eax
je 0x1009042
dec eax
jne 0x10090a6
push esi
lea eax, [ebp - 0x850]
push eax
push dword [ebp - 0x864]
call fcn.01006afe
test eax, eax
mov dword [ebp - 0x854], eax
jne 0x1009113
mov ax, word [ebp - 0x850]
mov word [ebx + 8], ax
push esi
lea eax, [ebp - 0x850]
push eax
push dword [ebp - 0x85c]
call fcn.01006afe
test eax, eax
mov dword [ebp - 0x854], eax
jne 0x1009113
mov ax, word [ebp - 0x850]
mov word [ebx + 0xa], ax
push esi
lea eax, [ebp - 0x850]
push eax
push dword [ebp - 0x868]
jmp 0x100908c
push esi
lea eax, [ebp - 0x850]
push eax
push dword [ebp - 0x864]
call fcn.01006afe
test eax, eax
mov dword [ebp - 0x854], eax
jne 0x1009113
mov ax, word [ebp - 0x850]
mov word [ebx + 0xa], ax
push esi
lea eax, [ebp - 0x850]
push eax
push dword [ebp - 0x85c]
jmp 0x100908c
push esi
lea eax, [ebp - 0x850]
push eax
push dword [ebp - 0x864]
call fcn.01006afe
test eax, eax
mov dword [ebp - 0x854], eax
jne 0x1009113
mov ax, word [ebp - 0x850]
mov word [ebx + 0xc], ax
cmp dword [ebp - 0x854], 0
jne 0x1009113
cmp dword [ebp - 0x878], 0
je 0x10090e9
xor eax, eax
mov ax, word [ebx + 8]
cmp ax, 0xc
jae 0x10090cd
add eax, 0xc
mov word [ebx + 8], ax
jmp 0x10090e9
jbe 0x10090e9
lea eax, [ebp - 0x4c]
push eax
xor eax, eax
mov ax, word [0x1026ed2]
push 0x237
push eax
call fcn.01007da9
add esp, 0xc
cmp dword [ebp - 0x874], 0
je 0x1009113
cmp word [ebx + 8], 0xc
jbe 0x1009113
lea eax, [ebp - 0x38]
push eax
xor eax, eax
mov ax, word [0x1026ed2]
push 0x237
push eax
call fcn.01007da9
add esp, 0xc
mov edi, dword [ebp - 0x860]
and dword [ebp - 0x860], 0
test edi, edi
jne 0x1008db8
cmp dword [ebp + 0x10], 0
je 0x1009155
cmp dword [ebp - 0x854], 0
jne 0x1009155
lea eax, [ebp - 0x880]
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_SystemTimeToFileTime]
test eax, eax
jne 0x1009155
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x854], eax
mov ecx, dword [ebp - 4]
mov eax, dword [ebp - 0x854]
pop edi
pop esi
pop ebx
call fcn.0100ae9f
leave
ret 0xc