Function at 0x421c82
Capabilities:
Get geographical location

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x14
push 8
call fcn.0047911e
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 0x421cd5
push ebx
call fcn.00479124
add esp, 4
cmp dword [ebp - 0xc], 0
je 0x421dec
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 0x421d10
push ebx
call fcn.00479124
add esp, 4
push VariantClear
push 0
mov eax, dword [ebp - 0xc]
test eax, eax
jne 0x421d23
mov eax, 0x48e230
push eax
push 1
mov ebx, 0x15c
call fcn.0047efb0
add esp, 0x10
mov dword [ebp - 0x10], eax
mov ebx, dword [ebp - 0xc]
test ebx, ebx
je 0x421d49
push ebx
call fcn.00479124
add esp, 4
mov ebx, 6
call fcn.004093b5
push VariantClear
push 0
mov eax, dword [ebp - 0x10]
test eax, eax
jne 0x421d66
mov eax, 0x48e230
push eax
push 3
mov ebx, 0x190
call fcn.0047c760
add esp, 0x28
mov dword [ebp - 0x14], eax
mov ebx, dword [ebp - 0x10]
test ebx, ebx
je 0x421d8c
push ebx
call fcn.00479124
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 0x421dae
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x421daa
imul eax, dword [ebx]
jmp 0x421d9f
mov ecx, eax
test ecx, ecx
je 0x421dcd
push ecx
mov eax, dword [ebx]
test eax, eax
je 0x421dc6
push ebx
push eax
call fcn.00479124
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x421db4
call fcn.00479124
add esp, 4
pop eax
mov dword [ebp - 4], eax
lea eax, [ebp - 4]
push eax
call fcn.00421f8f
jmp 0x421f42
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 0x421e1b
push ebx
call fcn.00479124
add esp, 4
cmp dword [ebp - 0xc], 0
je 0x421f38
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 0x421e56
push ebx
call fcn.00479124
add esp, 4
push VariantClear
push 0
mov eax, dword [ebp - 0xc]
test eax, eax
jne 0x421e69
mov eax, 0x48e230
push eax
push 1
mov ebx, 0x15c
call fcn.0047efb0
add esp, 0x10
mov dword [ebp - 0x10], eax
mov ebx, dword [ebp - 0xc]
test ebx, ebx
je 0x421e8f
push ebx
call fcn.00479124
add esp, 4
mov ebx, 6
call fcn.004093b5
push VariantClear
push 0
mov eax, dword [ebp - 0x10]
test eax, eax
jne 0x421eac
mov eax, 0x48e230
push eax
push 3
mov ebx, 0x190
call fcn.0047c760
add esp, 0x28
mov dword [ebp - 0x14], eax
mov ebx, dword [ebp - 0x10]
test ebx, ebx
je 0x421ed2
push ebx
call fcn.00479124
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 0x421ef4
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x421ef0
imul eax, dword [ebx]
jmp 0x421ee5
mov ecx, eax
test ecx, ecx
je 0x421f13
push ecx
mov eax, dword [ebx]
test eax, eax
je 0x421f0c
push ebx
push eax
call fcn.00479124
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x421efa
call fcn.00479124
add esp, 4
pop eax
mov dword [ebp - 4], eax
lea eax, [ebp - 4]
push eax
call fcn.00421f8f
and eax, 1
xor eax, 1
jmp 0x421f42
mov eax, 0
jmp 0x421f42
push eax
mov ebx, dword [ebp - 4]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x421f61
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x421f5d
imul eax, dword [ebx]
jmp 0x421f52
mov ecx, eax
test ecx, ecx
je 0x421f80
push ecx
mov eax, dword [ebx]
test eax, eax
je 0x421f79
push ebx
push eax
call fcn.00479124
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x421f67
call fcn.00479124
add esp, 4
pop eax
mov esp, ebp
pop ebp
ret 4