Function at 0x4219d3
Capabilities:
Get geographical location

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x14
push 8
call fcn.004790b3
add esp, 4
mov dword [ebp - 4], eax
mov edi, eax
mov esi, 0x48e2f9
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
mov eax, str.city.off
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push dword [ebp + 8]
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0xc8]
mov dword [ebp - 0xc], eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x421a26
push ebx
call fcn.004790b9
add esp, 4
cmp dword [ebp - 0xc], 0
je 0x421b3d
push 1
mov eax, str.city.off
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push dword [ebp + 8]
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0x11c]
mov dword [ebp - 0xc], eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x421a61
push ebx
call fcn.004790b9
add esp, 4
push VariantClear
push 0
mov eax, dword [ebp - 0xc]
test eax, eax
jne 0x421a74
mov eax, 0x48e230
push eax
push 1
mov ebx, 0x15c
call fcn.0047ef50
add esp, 0x10
mov dword [ebp - 0x10], eax
mov ebx, dword [ebp - 0xc]
test ebx, ebx
je 0x421a9a
push ebx
call fcn.004790b9
add esp, 4
mov ebx, 6
call fcn.00409106
push VariantClear
push 0
mov eax, dword [ebp - 0x10]
test eax, eax
jne 0x421ab7
mov eax, 0x48e230
push eax
push 3
mov ebx, 0x190
call fcn.0047c700
add esp, 0x28
mov dword [ebp - 0x14], eax
mov ebx, dword [ebp - 0x10]
test ebx, ebx
je 0x421add
push ebx
call fcn.004790b9
add esp, 4
mov eax, dword [ebp - 0x14]
push eax
mov ebx, dword [ebp - 4]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x421aff
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x421afb
imul eax, dword [ebx]
jmp 0x421af0
mov ecx, eax
test ecx, ecx
je 0x421b1e
push ecx
mov eax, dword [ebx]
test eax, eax
je 0x421b17
push ebx
push eax
call fcn.004790b9
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x421b05
call fcn.004790b9
add esp, 4
pop eax
mov dword [ebp - 4], eax
lea eax, [ebp - 4]
push eax
call fcn.00421ce0
jmp 0x421c93
mov eax, str.city.on
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push dword [ebp + 8]
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0xc8]
mov dword [ebp - 0xc], eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x421b6c
push ebx
call fcn.004790b9
add esp, 4
cmp dword [ebp - 0xc], 0
je 0x421c89
push 1
mov eax, str.city.on
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push dword [ebp + 8]
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0x11c]
mov dword [ebp - 0xc], eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x421ba7
push ebx
call fcn.004790b9
add esp, 4
push VariantClear
push 0
mov eax, dword [ebp - 0xc]
test eax, eax
jne 0x421bba
mov eax, 0x48e230
push eax
push 1
mov ebx, 0x15c
call fcn.0047ef50
add esp, 0x10
mov dword [ebp - 0x10], eax
mov ebx, dword [ebp - 0xc]
test ebx, ebx
je 0x421be0
push ebx
call fcn.004790b9
add esp, 4
mov ebx, 6
call fcn.00409106
push VariantClear
push 0
mov eax, dword [ebp - 0x10]
test eax, eax
jne 0x421bfd
mov eax, 0x48e230
push eax
push 3
mov ebx, 0x190
call fcn.0047c700
add esp, 0x28
mov dword [ebp - 0x14], eax
mov ebx, dword [ebp - 0x10]
test ebx, ebx
je 0x421c23
push ebx
call fcn.004790b9
add esp, 4
mov eax, dword [ebp - 0x14]
push eax
mov ebx, dword [ebp - 4]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x421c45
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x421c41
imul eax, dword [ebx]
jmp 0x421c36
mov ecx, eax
test ecx, ecx
je 0x421c64
push ecx
mov eax, dword [ebx]
test eax, eax
je 0x421c5d
push ebx
push eax
call fcn.004790b9
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x421c4b
call fcn.004790b9
add esp, 4
pop eax
mov dword [ebp - 4], eax
lea eax, [ebp - 4]
push eax
call fcn.00421ce0
and eax, 1
xor eax, 1
jmp 0x421c93
mov eax, 0
jmp 0x421c93
push eax
mov ebx, dword [ebp - 4]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x421cb2
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x421cae
imul eax, dword [ebx]
jmp 0x421ca3
mov ecx, eax
test ecx, ecx
je 0x421cd1
push ecx
mov eax, dword [ebx]
test eax, eax
je 0x421cca
push ebx
push eax
call fcn.004790b9
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x421cb8
call fcn.004790b9
add esp, 4
pop eax
mov esp, ebp
pop ebp
ret 4