Function at 0x450999
Capabilities:
Create thread

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x40
push ebx
mov ebx, ecx
neg ecx
push esi
sbb ecx, ecx
mov dword [ebp - 4], ebx
push edi
lea eax, [ebx - 0x364]
and ecx, eax
mov dword [ebp - 0xc], ecx
call fcn.00418f81
push eax
lea ecx, [ebp - 8]
call fcn.0041775d
push dword [ebp + 0x14]
lea eax, [ebp - 8]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
push 0x6c07b4
push eax
call fcn.0041a1e9
mov esi, dword [ebp - 8]
lea edi, [ebx + 0x70]
add esp, 0x18
xor ebx, ebx
mov ecx, edi
push ebx
push esi
call fcn.004713d7
test eax, eax
jns 0x450c2d
cmp dword [ebp + 0x18], 0xffffffff
je 0x450a93
push ecx
mov ecx, esp
push 0x68c4fc
call fcn.004177e7
mov eax, dword [ebp - 4]
push ecx
mov edi, esp
mov eax, dword [eax + 0x70]
sub eax, 0x10
push eax
call fcn.00418dea
add eax, 0x10
mov dword [edi], eax
lea eax, [ebp - 0x1c]
pop ecx
push eax
call fcn.0051413f
mov edi, dword [ebp - 4]
add esp, 0xc
add edi, 0x70
mov ecx, edi
call fcn.00418ee0
mov eax, dword [ebp - 0x18]
dec eax
mov dword [ebp - 0x10], eax
test eax, eax
jle 0x450a89
cmp ebx, dword [ebp + 0x18]
jne 0x450a5f
push dword [esi - 0xc]
mov ecx, edi
push esi
call fcn.00419f48
jmp 0x450a81
push ebx
lea ecx, [ebp - 0x1c]
call fcn.0044c702
mov ecx, edi
mov eax, dword [eax]
push dword [eax - 0xc]
push eax
call fcn.00419f48
push 0x68c4fc
mov ecx, edi
call fcn.004228d4
inc ebx
cmp ebx, dword [ebp - 0x10]
jl 0x450a4d
xor ebx, ebx
lea ecx, [ebp - 0x1c]
call fcn.004e8a9c
jmp 0x450a9e
push dword [esi - 0xc]
mov ecx, edi
push esi
call fcn.00419f48
mov eax, dword [edi]
cmp dword [eax - 0xc], 0
je 0x450ada
push ecx
add eax, 0xfffffff0
mov edi, esp
push eax
call fcn.00418dea
add eax, 0x10
mov ecx, esp
push str.List
mov dword [edi], eax
call fcn.004177e7
push ecx
mov ecx, esp
push str.OtherCity
call fcn.004177e7
mov ecx, 0x735bd8
call fcn.004fdb1b
lea ecx, [ebp - 0x40]
call fcn.00443e9d
lea eax, [ebp + 8]
push eax
lea ecx, [ebp - 0x40]
call fcn.00418bac
lea eax, [ebp + 0x14]
push eax
lea ecx, [ebp - 0x3c]
call fcn.00418bac
push 0x69a814
lea ecx, [ebp - 0x38]
call fcn.004195af
mov edi, 0x6809b0
lea ecx, [ebp - 0x34]
push edi
call fcn.004195af
push edi
lea ecx, [ebp - 0x30]
call fcn.004195af
push edi
lea ecx, [ebp - 0x2c]
call fcn.004195af
push ebx
push ebx
push ebx
push 1
push 1
push 0x7de
lea ecx, [ebp - 0x28]
call fcn.004f51f6
cmp dword [ebp + 0x18], 0xffffffff
mov ecx, dword [ebp - 4]
jne 0x450b52
lea eax, [ebp - 0x40]
add ecx, 0x74
push eax
call fcn.005123ca
jmp 0x450b7d
lea edi, [ecx + 0x74]
mov edx, ebx
mov eax, dword [edi]
jmp 0x450b64
cmp edx, dword [ebp + 0x18]
je 0x450b6b
add eax, 0x24
inc edx
cmp eax, dword [ecx + 0x78]
jne 0x450b5b
jmp 0x450b7d
lea ecx, [ebp - 0x40]
push ecx
push 1
push eax
lea eax, [ebp - 0x10]
mov ecx, edi
push eax
call fcn.0050a0e6
push dword [ebp - 0xc]
push ebx
push 0x4999d5
call fcn.006423a8
mov eax, dword [ebp + 0x14]
add esp, 0xc
add eax, 0xfffffff0
push dword [ebp + 0x18]
push ecx
mov edi, esp
push eax
call fcn.00418dea
add eax, 0x10
mov dword [edi], eax
mov edi, esp
mov eax, dword [ebp + 0x10]
add eax, 0xfffffff0
push eax
call fcn.00418dea
add eax, 0x10
mov dword [edi], eax
mov edi, esp
mov eax, dword [ebp + 0xc]
add eax, 0xfffffff0
push eax
call fcn.00418dea
add eax, 0x10
mov dword [edi], eax
mov edi, esp
mov eax, dword [ebp + 8]
add eax, 0xfffffff0
push eax
call fcn.00418dea
pop ecx
mov ecx, dword [ebp - 4]
add eax, 0x10
mov dword [edi], eax
call fcn.00450566
mov edi, dword [ebp - 0xc]
push 0x6bea00
lea ecx, [edi + 0x20]
call fcn.005cfc5e
test eax, eax
je 0x450c07
mov edx, dword [eax]
mov ecx, eax
push 1
call dword [edx + 0x180]
push str.weather_othercity_citylist
lea ecx, [edi + 0x20]
call fcn.005cfc5e
test eax, eax
je 0x450c23
mov edx, dword [eax]
mov ecx, eax
push ebx
call dword [edx + 0x180]
lea ecx, [ebp - 0x40]
mov bl, 1
call fcn.00448dae
lea ecx, [esi - 0x10]
call fcn.00419521
mov ecx, dword [ebp + 8]
lea ecx, [ecx - 0x10]
call fcn.00419521
mov ecx, dword [ebp + 0xc]
lea ecx, [ecx - 0x10]
call fcn.00419521
mov ecx, dword [ebp + 0x10]
add ecx, 0xfffffff0
call fcn.00419521
mov ecx, dword [ebp + 0x14]
add ecx, 0xfffffff0
call fcn.00419521
pop edi
pop esi
mov al, bl
pop ebx
mov esp, ebp
pop ebp
ret 0x14