Function at 0x4d923f
Capabilities:
Create thread
Get geographical location

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x10
push ebx
push esi
push edi
mov edi, ecx
mov esi, 0x6809b0
push 1
mov ebx, edi
neg ebx
push ecx
lea eax, [edi - 0x364]
sbb ebx, ebx
mov ecx, esp
and ebx, eax
push esi
call fcn.004177e7
push ecx
mov ecx, esp
push 0x6c07e8
call fcn.004177e7
mov ecx, 0x736918
call fcn.004ef41e
push esi
mov ecx, 0x735b78
call fcn.004195af
push esi
mov ecx, 0x735b70
call fcn.004195af
push esi
mov ecx, 0x735b90
call fcn.004195af
push esi
mov ecx, 0x735b80
call fcn.004195af
push esi
mov ecx, 0x735b84
call fcn.004195af
mov eax, dword [0x735b1c]
add eax, 0xfffffff0
push eax
call fcn.00418dea
mov ecx, dword [edi + 0x4c]
sub ecx, 0x10
mov dword [ebp - 0x10], eax
push ecx
call fcn.00418dea
mov ecx, dword [edi + 0x50]
sub ecx, 0x10
mov dword [ebp - 0xc], eax
push ecx
call fcn.00418dea
mov ecx, dword [edi + 0x54]
sub ecx, 0x10
mov dword [ebp - 8], eax
push ecx
call fcn.00418dea
mov ecx, dword [edi + 0x40]
add esp, 0x10
mov dword [ebp - 4], eax
mov esi, dword [ecx]
add ecx, 0x368
mov edx, dword [ecx]
call dword [edx + 4]
mov ecx, dword [edi + 0x40]
push eax
call dword [esi]
test eax, eax
je 0x4d932e
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0x38]
lea esi, [edi + 0x4c]
push eax
mov ecx, esi
call fcn.004195af
push esi
mov ecx, 0x735b04
call fcn.00418bac
mov eax, dword [edi + 0x44]
mov esi, dword [eax]
lea ecx, [eax + 0x368]
mov eax, dword [ecx]
call dword [eax + 4]
mov ecx, dword [edi + 0x44]
push eax
call dword [esi]
test eax, eax
je 0x4d9365
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0x38]
lea esi, [edi + 0x50]
push eax
mov ecx, esi
call fcn.004195af
push esi
mov ecx, 0x735b08
call fcn.00418bac
mov eax, dword [edi + 0x48]
mov esi, dword [eax]
lea ecx, [eax + 0x368]
mov eax, dword [ecx]
call dword [eax + 4]
mov ecx, dword [edi + 0x48]
push eax
call dword [esi]
mov esi, eax
test esi, esi
je 0x4d93c1
mov edx, dword [esi]
mov ecx, esi
call dword [edx + 0x38]
push eax
lea ecx, [edi + 0x54]
call fcn.004195af
lea eax, [edi + 0x54]
mov ecx, 0x735b0c
push eax
call fcn.00418bac
lea ecx, [edi + 0xc]
push 0x735b1c
call fcn.00418bac
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x16c]
push eax
mov ecx, 0x735b1c
call fcn.00418bac
push ebx
xor esi, esi
push esi
push 0x498d0d
call fcn.006423a8
push ebx
push esi
push 0x499981
call fcn.006423a8
add esp, 0x18
lea ecx, [ebx + 0x20]
push str.weather_cityweather
call fcn.005cfc5e
test eax, eax
je 0x4d93fb
mov edx, dword [eax]
mov ecx, eax
push 1
call dword [edx + 0x180]
push str.weather_setcity
lea ecx, [ebx + 0x20]
call fcn.005cfc5e
test eax, eax
je 0x4d9417
mov edx, dword [eax]
mov ecx, eax
push esi
call dword [edx + 0x180]
mov eax, dword [0x735b1c]
push ecx
add eax, 0xfffffff0
mov esi, esp
push eax
call fcn.00418dea
add eax, 0x10
mov ecx, esp
push str.CityCode
mov dword [esi], eax
call fcn.004177e7
push ecx
mov ecx, esp
push str.UserSetLocation
call fcn.004177e7
mov ebx, 0x735bd8
mov ecx, ebx
call fcn.004fdb1b
mov eax, dword [0x735b04]
push ecx
add eax, 0xfffffff0
mov esi, esp
push eax
call fcn.00418dea
add eax, 0x10
mov ecx, esp
push str.Province
mov dword [esi], eax
call fcn.004177e7
push ecx
mov ecx, esp
push str.UserSetLocation
call fcn.004177e7
mov ecx, ebx
call fcn.004fdb1b
mov eax, dword [0x735b08]
push ecx
add eax, 0xfffffff0
mov esi, esp
push eax
call fcn.00418dea
add eax, 0x10
mov ecx, esp
push str.City
mov dword [esi], eax
call fcn.004177e7
push ecx
mov ecx, esp
push str.UserSetLocation
call fcn.004177e7
mov ecx, ebx
call fcn.004fdb1b
mov eax, dword [0x735b0c]
push ecx
add eax, 0xfffffff0
mov esi, esp
push eax
call fcn.00418dea
add eax, 0x10
mov ecx, esp
push str.Region
mov dword [esi], eax
call fcn.004177e7
push ecx
mov ecx, esp
push str.UserSetLocation
call fcn.004177e7
mov ecx, ebx
call fcn.004fdb1b
mov eax, dword [edi + 0x54]
push ecx
sub eax, 0x10
mov esi, esp
push eax
call fcn.00418dea
add eax, 0x10
mov dword [esi], eax
mov esi, esp
mov eax, dword [edi + 0x50]
sub eax, 0x10
push eax
call fcn.00418dea
add eax, 0x10
mov dword [esi], eax
mov esi, esp
mov eax, dword [edi + 0x4c]
sub eax, 0x10
push eax
call fcn.00418dea
add eax, 0x10
mov dword [esi], eax
mov esi, esp
mov eax, dword [0x735b1c]
add eax, 0xfffffff0
push eax
call fcn.00418dea
add eax, 0x10
mov dword [esi], eax
mov esi, esp
push dword [ebp - 4]
call fcn.00418dea
add eax, 0x10
mov dword [esi], eax
mov esi, esp
push dword [ebp - 8]
call fcn.00418dea
add eax, 0x10
mov dword [esi], eax
mov esi, esp
push dword [ebp - 0xc]
call fcn.00418dea
mov ebx, dword [ebp - 0x10]
add eax, 0x10
mov dword [esi], eax
mov esi, esp
push ebx
call fcn.00418dea
pop ecx
add eax, 0x10
mov ecx, edi
mov dword [esi], eax
call fcn.004b4c68
mov ecx, dword [ebp - 4]
call fcn.00419521
mov ecx, dword [ebp - 8]
call fcn.00419521
mov ecx, dword [ebp - 0xc]
call fcn.00419521
mov ecx, ebx
call fcn.00419521
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc