Function at 0x1002737e
Capabilities:
Get geographical location

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x220
push ebx
xor edx, edx
push esi
mov ebx, section..data
inc edx
mov esi, ecx
push edi
mov dword [ebp - 4], ebx
mov eax, ebx
mov ecx, edx
lock xadd dword [eax], ecx
mov ecx, esi
call fcn.100252b8
test al, al
jne 0x100273c5
mov eax, dword [ebp - 4]
mov esi, dword [ebp + 8]
mov dword [esi], eax
lock xadd dword [eax], edx
mov eax, dword [ebp - 4]
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jmp 0x1002770e
cmp dword [ebp + 0xc], edx
jne 0x1002742b
mov eax, dword [esi]
push edx
lea ecx, [ebp + 0xc]
push ecx
lea ecx, [eax + 4]
call fcn.10026ef7
push eax
lea ecx, [ebp - 4]
call fcn.10002b32
mov eax, dword [ebp + 0xc]
or edi, 0xffffffff
mov ecx, edi
lock xadd dword [eax], ecx
jne 0x100273f9
push dword [ebp + 0xc]
call fcn.10002b2d
pop ecx
mov eax, dword [ebp - 4]
cmp dword [eax + 8], 0
jne 0x10027413
mov esi, dword [ebp + 8]
xor eax, eax
mov dword [esi], ebx
inc eax
lock xadd dword [ebx], eax
jmp 0x10027707
push ecx
mov eax, esp
push 0x54
pop ecx
mov word [eax], cx
lea ecx, [ebp - 4]
call fcn.10003ec7
push 1
jmp 0x100276cd
cmp dword [ebp + 0xc], 0
jne 0x1002767b
push 0xff
lea eax, [ebp - 0x220]
push eax
push 0x22
push 0x400
call dword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
or edi, 0xffffffff
push edi
lea eax, [ebp - 0x220]
push eax
lea eax, [ebp + 0xc]
push eax
call fcn.10003c54
add esp, 0xc
push 0xa
pop ebx
push ebx
push 0
lea ecx, [ebp + 0xc]
call fcn.1000340d
xor edx, edx
dec eax
mov eax, dword [esi]
mov eax, dword [eax + 4]
push 7
pop ecx
je 0x1002753d
div ecx
lea eax, [ebp - 0x18]
inc edx
push edx
push eax
call fcn.1002501f
pop ecx
pop ecx
push eax
lea ecx, [ebp - 4]
call fcn.10002b32
mov eax, dword [ebp - 0x18]
mov ecx, edi
lock xadd dword [eax], ecx
jne 0x100274b0
push dword [ebp - 0x18]
call fcn.10002b2d
pop ecx
push ecx
mov eax, esp
push 0x20
pop ecx
mov word [eax], cx
lea ecx, [ebp - 4]
call fcn.10003ec7
mov eax, dword [esi]
lea ecx, [eax + 4]
call fcn.10024b1c
push eax
lea eax, [ebp - 0x14]
push eax
call fcn.10025008
pop ecx
pop ecx
push eax
lea ecx, [ebp - 4]
call fcn.10003dcf
mov eax, dword [ebp - 0x14]
mov ecx, edi
lock xadd dword [eax], ecx
jne 0x100274f4
push dword [ebp - 0x14]
call fcn.10002b2d
pop ecx
push ecx
mov eax, esp
push 0x20
pop ecx
mov word [eax], cx
lea ecx, [ebp - 4]
call fcn.10003ec7
mov eax, dword [esi]
push ebx
lea ecx, [eax + 4]
call fcn.10024b37
push eax
lea eax, [ebp - 0x1c]
push eax
call fcn.100043ed
add esp, 0xc
push eax
lea ecx, [ebp - 4]
call fcn.10003dcf
mov eax, dword [ebp - 0x1c]
mov ecx, edi
lock xadd dword [eax], ecx
jne 0x100275f5
push dword [ebp - 0x1c]
jmp 0x100275ef
div ecx
lea eax, [ebp - 0xc]
inc edx
push edx
push eax
call fcn.1002501f
pop ecx
pop ecx
push eax
lea ecx, [ebp - 4]
call fcn.10002b32
mov eax, dword [ebp - 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
jne 0x10027569
push dword [ebp - 0xc]
call fcn.10002b2d
pop ecx
push ecx
mov eax, esp
push 0x20
pop ecx
mov word [eax], cx
lea ecx, [ebp - 4]
call fcn.10003ec7
mov eax, dword [esi]
push ebx
lea ecx, [eax + 4]
call fcn.10024b37
push eax
lea eax, [ebp - 0x10]
push eax
call fcn.100043ed
add esp, 0xc
push eax
lea ecx, [ebp - 4]
call fcn.10003dcf
mov eax, dword [ebp - 0x10]
mov ecx, edi
lock xadd dword [eax], ecx
jne 0x100275af
push dword [ebp - 0x10]
call fcn.10002b2d
pop ecx
lea eax, [ebp - 0x20]
push eax
lea ecx, [ebp - 4]
mov dword [ebp - 0x20], 0x100adeb4
call fcn.10003e5d
mov eax, dword [esi]
lea ecx, [eax + 4]
call fcn.10024b1c
push eax
lea eax, [ebp - 8]
push eax
call fcn.10025008
pop ecx
pop ecx
push eax
lea ecx, [ebp - 4]
call fcn.10003dcf
mov eax, dword [ebp - 8]
mov ecx, edi
lock xadd dword [eax], ecx
jne 0x100275f5
push dword [ebp - 8]
call fcn.10002b2d
pop ecx
push ecx
mov eax, esp
push 0x20
pop ecx
mov word [eax], cx
lea ecx, [ebp - 4]
call fcn.10003ec7
mov eax, dword [esi]
push 0
lea ecx, [ebp - 8]
push ecx
lea ecx, [eax + 8]
call fcn.100250c4
push eax
lea ecx, [ebp - 4]
call fcn.10003dcf
mov eax, dword [ebp - 8]
mov ecx, edi
lock xadd dword [eax], ecx
jne 0x10027633
push dword [ebp - 8]
call fcn.10002b2d
pop ecx
push ecx
mov eax, esp
push 0x20
pop ecx
mov word [eax], cx
lea ecx, [ebp - 4]
call fcn.10003ec7
mov esi, dword [esi]
push ebx
lea ecx, [esi + 4]
call fcn.10024b01
push eax
lea eax, [ebp - 8]
push eax
call fcn.100043ed
add esp, 0xc
push eax
lea ecx, [ebp - 4]
call fcn.10003dcf
mov eax, dword [ebp - 8]
mov ecx, edi
lock xadd dword [eax], ecx
jne 0x100276e4
push dword [ebp - 8]
call fcn.10002b2d
pop ecx
jmp 0x100276e4
push dword [ebp + 0xc]
mov eax, dword [esi]
lea ecx, [ebp - 8]
push ecx
lea ecx, [eax + 4]
call fcn.10026ef7
push eax
lea ecx, [ebp - 4]
call fcn.10002b32
mov eax, dword [ebp - 8]
or edi, 0xffffffff
mov ecx, edi
lock xadd dword [eax], ecx
jne 0x100276ac
push dword [ebp - 8]
call fcn.10002b2d
pop ecx
mov eax, dword [ebp - 4]
cmp dword [eax + 8], 0
je 0x10027402
push ecx
mov eax, esp
push 0x20
pop ecx
mov word [eax], cx
lea ecx, [ebp - 4]
call fcn.10003ec7
push dword [ebp + 0xc]
mov esi, dword [esi]
lea eax, [ebp + 0xc]
push eax
lea ecx, [esi + 8]
call fcn.100250c4
push eax
lea ecx, [ebp - 4]
call fcn.10003dcf
mov eax, dword [ebp + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
jne 0x100276f8
push dword [ebp + 0xc]
call fcn.10002b2d
pop ecx
mov eax, dword [ebp - 4]
mov esi, dword [ebp + 8]
xor ecx, ecx
mov dword [esi], eax
inc ecx
lock xadd dword [eax], ecx
mov eax, dword [ebp - 4]
lock xadd dword [eax], edi
jne 0x10027719
push dword [ebp - 4]
call fcn.10002b2d
pop ecx
pop edi
mov eax, esi
pop esi
pop ebx
leave
ret 8