Function at 0x4b4220
Capabilities:
Get geographical location

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xd4
mov dword [ebp - 0xc8], ecx
push ecx
mov ecx, esp
push str.List
call fcn.0041c8a0
push ecx
mov ecx, esp
push str.OtherCity
call fcn.0041c8a0
lea eax, [ebp - 0x7c]
push eax
mov ecx, 0x591448
call fcn.004469f0
push eax
mov ecx, dword [ebp - 0xc8]
add ecx, 0x88
call fcn.0041c8e0
lea ecx, [ebp - 0x7c]
call fcn.0040f740
lea ecx, [ebp - 0x18]
call fcn.0040ee90
mov ecx, dword [ebp - 0xc8]
mov edx, dword [ecx + 0x6c]
push edx
mov eax, dword [ebp - 0xc8]
mov ecx, dword [eax + 0x68]
push ecx
mov edx, dword [ebp - 0xc8]
mov eax, dword [edx + 0x64]
push eax
mov ecx, dword [ebp - 0xc8]
mov edx, dword [ecx + 0x1c]
push edx
push str._s__s__s__s
lea eax, [ebp - 0x18]
push eax
call fcn.004beff0
add esp, 0x18
mov ecx, dword [ebp - 0xc8]
add ecx, 0x88
call fcn.0041cc40
movzx ecx, al
test ecx, ecx
jne 0x4b42ea
push 0
lea ecx, [ebp - 0x18]
call fcn.0041cb20
push eax
mov ecx, dword [ebp - 0xc8]
add ecx, 0x88
call fcn.0047e090
test eax, eax
jge 0x4b435a
mov edx, dword [ebp - 0xc8]
add edx, 0x88
push edx
lea eax, [ebp - 0x18]
push eax
lea ecx, [ebp - 0x80]
push ecx
call fcn.0041ca00
add esp, 0xc
push eax
mov ecx, dword [ebp - 0xc8]
add ecx, 0x88
call fcn.0041c8e0
lea ecx, [ebp - 0x80]
call fcn.0040f740
mov edx, dword [ebp - 0xc8]
add edx, 0x88
push ecx
mov ecx, esp
push edx
call fcn.0041c880
push ecx
mov ecx, esp
push str.List
call fcn.0041c8a0
push ecx
mov ecx, esp
push str.OtherCity
call fcn.0041c8a0
mov ecx, 0x591448
call fcn.0045bf10
lea ecx, [ebp - 0x14]
call fcn.0048b020
push ecx
mov ecx, esp
push 0x55b344
call fcn.0041c8a0
mov eax, dword [ebp - 0xc8]
add eax, 0x88
push ecx
mov ecx, esp
push eax
call fcn.0041c880
lea ecx, [ebp - 0xa0]
push ecx
call fcn.004291d0
add esp, 0xc
push eax
lea ecx, [ebp - 0x14]
call fcn.0048b0f0
lea ecx, [ebp - 0xa0]
call fcn.004bf0e0
lea ecx, [ebp - 0x14]
call fcn.0048b1c0
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 1
jle 0x4b4547
mov dword [ebp - 0x1c], 0
jmp 0x4b43cd
mov edx, dword [ebp - 0x1c]
add edx, 1
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x1c]
cmp eax, dword [ebp - 4]
jge 0x4b4547
mov ecx, dword [ebp - 0x1c]
push ecx
lea ecx, [ebp - 0x14]
call fcn.0048b2e0
push eax
lea ecx, [ebp - 0x20]
call fcn.0041c880
lea ecx, [ebp - 0x20]
call fcn.0041cc40
movzx edx, al
test edx, edx
jne 0x4b453a
lea ecx, [ebp - 0x50]
call fcn.0048b020
push ecx
mov ecx, esp
push 0x5656ec
call fcn.0041c8a0
push ecx
mov ecx, esp
lea eax, [ebp - 0x20]
push eax
call fcn.0041c880
lea ecx, [ebp - 0xb4]
push ecx
call fcn.004291d0
add esp, 0xc
push eax
lea ecx, [ebp - 0x50]
call fcn.0048b0f0
lea ecx, [ebp - 0xb4]
call fcn.004bf0e0
push 3
lea ecx, [ebp - 0x50]
call fcn.0048b2e0
push ecx
mov ecx, esp
push eax
call fcn.0041c880
push 2
lea ecx, [ebp - 0x50]
call fcn.0048b2e0
push ecx
mov ecx, esp
push eax
call fcn.0041c880
push 1
lea ecx, [ebp - 0x50]
call fcn.0048b2e0
push ecx
mov ecx, esp
push eax
call fcn.0041c880
push 0
lea ecx, [ebp - 0x50]
call fcn.0048b2e0
push ecx
mov ecx, esp
push eax
call fcn.0041c880
mov ecx, dword [ebp - 0xc8]
call fcn.004b9a30
lea ecx, [ebp - 0x44]
call fcn.004b85f0
push 0
lea ecx, [ebp - 0x50]
call fcn.0048b2e0
push eax
lea ecx, [ebp - 0x44]
call fcn.0041c8e0
push 3
lea ecx, [ebp - 0x50]
call fcn.0048b2e0
push eax
lea ecx, [ebp - 0x40]
call fcn.0041c8e0
push 0x55caa4
lea ecx, [ebp - 0x3c]
call fcn.0041cec0
push 0x554518
lea ecx, [ebp - 0x38]
call fcn.0041cec0
push 0x554518
lea ecx, [ebp - 0x34]
call fcn.0041cec0
push 0x554518
lea ecx, [ebp - 0x30]
call fcn.0041cec0
push 0
push 0
push 0
push 1
push 1
push 0x7de
lea ecx, [ebp - 0x2c]
call fcn.0043f7e0
lea edx, [ebp - 0x44]
push edx
mov ecx, dword [ebp - 0xc8]
add ecx, 0x8c
call fcn.004b97d0
lea ecx, [ebp - 0x44]
call fcn.004b8650
lea ecx, [ebp - 0x50]
call fcn.004bf0e0
lea ecx, [ebp - 0x20]
call fcn.0040f740
jmp 0x4b43c4
mov byte [ebp - 5], 0
mov dword [ebp - 0x54], 0
jmp 0x4b455d
mov eax, dword [ebp - 0x54]
add eax, 1
mov dword [ebp - 0x54], eax
mov ecx, dword [ebp - 0x54]
cmp ecx, dword [ebp - 4]
jge 0x4b45f2
lea ecx, [ebp - 0x58]
call fcn.0040ee90
movzx edx, byte [ebp - 5]
neg edx
sbb edx, edx
add edx, 1
mov byte [ebp - 5], dl
movzx eax, byte [ebp - 5]
neg eax
sbb eax, eax
add eax, 1
push eax
push 0x564e78
lea ecx, [ebp - 0x58]
push ecx
call fcn.004beff0
add esp, 0xc
mov edx, dword [ebp - 0x54]
push edx
mov eax, dword [ebp - 0xc8]
mov ecx, dword [eax + 0x80]
mov edx, dword [ebp - 0xc8]
mov eax, dword [edx + 0x80]
mov edx, dword [ecx]
mov ecx, eax
mov eax, dword [edx]
call eax
mov dword [ebp - 0xcc], eax
lea ecx, [ebp - 0x58]
call fcn.0041cb20
push eax
mov ecx, dword [ebp - 0xcc]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0xcc]
mov eax, dword [edx + 0x84]
call eax
lea ecx, [ebp - 0x58]
call fcn.0040f740
jmp 0x4b4554
mov dword [ebp - 0x5c], 0
jmp 0x4b4604
mov ecx, dword [ebp - 0x5c]
add ecx, 1
mov dword [ebp - 0x5c], ecx
mov edx, dword [ebp - 0x5c]
cmp edx, dword [ebp - 4]
jge 0x4b4741
mov eax, dword [ebp - 0x5c]
push eax
mov ecx, dword [ebp - 0xc8]
mov edx, dword [ecx + 0x80]
mov eax, dword [ebp - 0xc8]
mov ecx, dword [eax + 0x80]
mov edx, dword [edx]
mov eax, dword [edx]
call eax
mov dword [ebp - 0xd0], eax
cmp dword [ebp - 0xd0], 0
je 0x4b4652
mov ecx, dword [ebp - 0xd0]
sub ecx, 8
mov dword [ebp - 0xd4], ecx
jmp 0x4b465c
mov dword [ebp - 0xd4], 0
mov edx, dword [ebp - 0xd4]
mov dword [ebp - 0x64], edx
mov ecx, dword [ebp - 0x64]
add ecx, 8
mov eax, dword [ebp - 0x64]
mov edx, dword [eax + 8]
mov eax, dword [edx + 0x16c]
call eax
push eax
lea ecx, [ebp - 0x60]
call fcn.0041c880
mov dword [ebp - 0x68], 0
jmp 0x4b4694
mov ecx, dword [ebp - 0x68]
add ecx, 1
mov dword [ebp - 0x68], ecx
mov edx, dword [ebp - 0x64]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x64]
mov edx, dword [eax + 0xc]
call edx
cmp dword [ebp - 0x68], eax
jge 0x4b4734
mov eax, dword [ebp - 0x68]
push eax
mov ecx, dword [ebp - 0x64]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x64]
mov eax, dword [edx]
call eax
mov dword [ebp - 0x6c], eax
mov ecx, dword [ebp - 0x6c]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x6c]
mov eax, dword [edx + 0x30]
call eax
push eax
lea ecx, [ebp - 0x70]
call fcn.0041c8a0
push str.cityitem_cityname
lea ecx, [ebp - 0x70]
call fcn.00430140
test eax, eax
jne 0x4b4727
push 0
mov ecx, dword [ebp - 0xc8]
add ecx, 0x6c
call fcn.0041cb20
push eax
lea ecx, [ebp - 0x60]
call fcn.0047e090
test eax, eax
jl 0x4b4710
push str.IDB_Weather_defaultcity
mov ecx, dword [ebp - 0x6c]
call fcn.004daed9
jmp 0x4b471d
push 0x554518
mov ecx, dword [ebp - 0x6c]
call fcn.004daed9
lea ecx, [ebp - 0x70]
call fcn.0040f740
jmp 0x4b4734
lea ecx, [ebp - 0x70]
call fcn.0040f740
jmp 0x4b468b
lea ecx, [ebp - 0x60]
call fcn.0040f740
jmp 0x4b45fb
lea ecx, [ebp - 0x14]
call fcn.004bf0e0
lea ecx, [ebp - 0x18]
call fcn.0040f740
mov esp, ebp
pop ebp
ret