Function at 0x40cf60
Capabilities:
Get geographical location

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4a36d5
mov eax, dword fs:[0]
push eax
mov eax, 0x10f8
call fcn.00460630
mov eax, dword [0x4be0f0]
xor eax, ebp
mov dword [ebp - 0x14], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword [ebp + 8]
xor ebx, ebx
push 0x1d
mov esi, ecx
mov edi, 0xf
push str.http:__m.weather.com.cn_data_
lea ecx, [ebp - 0x1050]
mov dword [ebp - 0x1100], eax
mov dword [ebp - 0x103c], edi
mov dword [ebp - 0x1040], ebx
mov byte [ebp - 0x1050], bl
call fcn.00401480
mov dword [ebp - 4], ebx
mov dword [ebp - 0x1058], edi
mov dword [ebp - 0x105c], ebx
mov byte [ebp - 0x106c], bl
mov byte [ebp - 4], 1
mov eax, esi
mov dword [ebp - 0x1020], edi
mov dword [ebp - 0x1024], ebx
mov byte [ebp - 0x1034], bl
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x40cff8
sub eax, edx
push eax
push esi
lea ecx, [ebp - 0x1034]
call fcn.00401480
test byte [0x4c2b4c], 1
jne 0x40d034
or dword [0x4c2b4c], 1
mov byte [ebp - 4], 3
call fcn.00446e70
push 0x4a4950
call fcn.0044e59c
add esp, 4
push 0x12
push str.._res_CityCode.ini
mov ecx, 0x4c2b1c
mov byte [ebp - 4], 4
call fcn.00401480
mov ecx, 0x4c2b0c
call fcn.004474f0
lea ecx, [ebp - 0x1034]
push ecx
lea ebx, [ebp - 0x106c]
mov esi, 0x4c2b0c
call fcn.00447240
mov edi, 0x10
mov byte [ebp - 4], 1
cmp dword [ebp - 0x1020], edi
jb 0x40d08a
mov edx, dword [ebp - 0x1034]
push edx
call fcn.0044de0c
add esp, 4
push 0
lea eax, [ebp - 0x106c]
push eax
or eax, 0xffffffff
lea esi, [ebp - 0x1050]
call fcn.00404b40
push 5
mov eax, str..html
mov ecx, esi
call fcn.00404c30
mov dword [ebp - method.COMM_MD_CURL::CComm_Curl.virtual_0], vtable.COMM_MD_CURL::CComm_Curl.0
push 0x800
lea ecx, [ebp - 0x1014]
push 0
push ecx
mov byte [ebp - 4], 5
call fcn.00458dc0
add esp, 0xc
cmp dword [ebp - 0x103c], edi
mov edi, dword [ebp - 0x1050]
jae 0x40d0e3
mov edi, esi
call sym.miniweather.exe_curl_easy_init
mov esi, eax
test esi, esi
je 0x40d144
push 0
push 0x29
push esi
call sym.miniweather.exe_curl_easy_setopt
add esp, 0xc
push edi
push 0x2712
push esi
call sym.miniweather.exe_curl_easy_setopt
mov edx, 0x40ce60
add esp, 0xc
test edx, edx
je 0x40d126
push 0x40ce60
push 0x4e2b
push esi
call sym.miniweather.exe_curl_easy_setopt
add esp, 0xc
lea eax, [ebp - 0x1014]
push eax
push 0x2711
push esi
call sym.miniweather.exe_curl_easy_setopt
add esp, 0xc
push esi
call sym.miniweather.exe_curl_easy_perform
add esp, 4
lea ecx, [ebp - 0x814]
push ecx
lea ebx, [ebp - 0x1014]
call fcn.00407270
and dword [ebp - 0x10f4], 0xfffffe00
xor ebx, ebx
add esp, 4
mov dword [ebp - 0x10f0], ebx
lea edx, [ebp - 0x10ec]
push edx
mov byte [ebp - 4], 7
call fcn.0044a970
mov byte [ebp - 4], 8
lea eax, [ebp - 0x814]
mov dword [ebp - 0x1020], 0xf
mov dword [ebp - 0x1024], ebx
mov byte [ebp - 0x1034], bl
lea edx, [eax + 1]
mov edi, edi
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x40d1a0
sub eax, edx
push eax
lea eax, [ebp - 0x814]
push eax
lea ecx, [ebp - 0x1034]
call fcn.00401480
push 0xffffffffffffffff
push ebx
lea ecx, [ebp - 0x1034]
push ecx
lea ecx, [ebp - 0x10bc]
mov byte [ebp - 4], 9
call fcn.00401120
cmp dword [ebp - 0x10a8], 0x10
mov edx, dword [ebp - 0x10bc]
jae 0x40d1ea
lea edx, [ebp - 0x10bc]
mov eax, dword [ebp - 0x10ac]
lea ecx, [edx + eax]
lea eax, [ebp - 0x10fc]
push eax
lea ebx, [ebp - 0x10ec]
call fcn.0044aa80
mov byte [ebp - 4], 8
cmp dword [ebp - 0x1020], 0x10
jb 0x40d221
mov ecx, dword [ebp - 0x1034]
push ecx
call fcn.0044de0c
add esp, 4
push str.weatherinfo
lea edx, [ebp - 0x10fc]
push edx
call fcn.00449500
push str.city
push eax
call fcn.00449500
lea esi, [ebp - 0x1034]
mov ecx, eax
call fcn.004491c0
mov ebx, dword [ebp - 0x1100]
mov edi, eax
mov esi, ebx
mov byte [ebp - 4], 0xa
call fcn.00405260
mov byte [ebp - 4], 8
cmp dword [ebp - 0x1020], 0x10
jb 0x40d279
mov eax, dword [ebp - 0x1034]
push eax
call fcn.0044de0c
add esp, 4
push str.weatherinfo
lea ecx, [ebp - 0x10fc]
push ecx
call fcn.00449500
push str.temp1
push eax
call fcn.00449500
lea esi, [ebp - 0x1034]
mov ecx, eax
call fcn.004491c0
lea esi, [ebx + 0x1c]
mov edi, eax
mov byte [ebp - 4], 0xb
call fcn.00405260
mov byte [ebp - 4], 8
cmp dword [ebp - 0x1020], 0x10
jb 0x40d2cc
mov edx, dword [ebp - 0x1034]
push edx
call fcn.0044de0c
add esp, 4
push str.weatherinfo
lea eax, [ebp - 0x10fc]
push eax
call fcn.00449500
push str.weather1
push eax
call fcn.00449500
lea esi, [ebp - 0x1034]
mov ecx, eax
call fcn.004491c0
lea esi, [ebx + 0x38]
mov edi, eax
mov byte [ebp - 4], 0xc
call fcn.00405260
mov byte [ebp - 4], 8
cmp dword [ebp - 0x1020], 0x10
jb 0x40d31f
mov ecx, dword [ebp - 0x1034]
push ecx
call fcn.0044de0c
add esp, 4
push str.weatherinfo
lea edx, [ebp - 0x10fc]
push edx
call fcn.00449500
push str.temp2
push eax
call fcn.00449500
lea esi, [ebp - 0x1034]
mov ecx, eax
call fcn.004491c0
lea esi, [ebx + 0x54]
mov edi, eax
mov byte [ebp - 4], 0xd
call fcn.00405260
mov byte [ebp - 4], 8
cmp dword [ebp - 0x1020], 0x10
jb 0x40d372
mov eax, dword [ebp - 0x1034]
push eax
call fcn.0044de0c
add esp, 4
push str.weatherinfo
lea ecx, [ebp - 0x10fc]
push ecx
call fcn.00449500
push str.weather2
push eax
call fcn.00449500
lea esi, [ebp - 0x1034]
mov ecx, eax
call fcn.004491c0
lea esi, [ebx + 0x70]
mov edi, eax
mov byte [ebp - 4], 0xe
call fcn.00405260
mov byte [ebp - 4], 8
cmp dword [ebp - 0x1020], 0x10
jb 0x40d3c5
mov edx, dword [ebp - 0x1034]
push edx
call fcn.0044de0c
add esp, 4
push str.weatherinfo
lea eax, [ebp - 0x10fc]
push eax
call fcn.00449500
push str.temp3
push eax
call fcn.00449500
lea esi, [ebp - 0x1034]
mov ecx, eax
call fcn.004491c0
lea esi, [ebx + 0x8c]
mov edi, eax
mov byte [ebp - 4], 0xf
call fcn.00405260
mov byte [ebp - 4], 8
cmp dword [ebp - 0x1020], 0x10
jb 0x40d41b
mov ecx, dword [ebp - 0x1034]
push ecx
call fcn.0044de0c
add esp, 4
push str.weatherinfo
lea edx, [ebp - 0x10fc]
push edx
call fcn.00449500
push str.weather3
push eax
call fcn.00449500
lea esi, [ebp - 0x1034]
mov ecx, eax
call fcn.004491c0
lea esi, [ebx + 0xa8]
mov edi, eax
mov byte [ebp - 4], 0x10
call fcn.00405260
mov byte [ebp - 4], 8
cmp dword [ebp - 0x1020], 0x10
jb 0x40d471
mov eax, dword [ebp - 0x1034]
push eax
call fcn.0044de0c
add esp, 4
push str.weatherinfo
lea ecx, [ebp - 0x10fc]
push ecx
call fcn.00449500
push str.temp4
push eax
call fcn.00449500
lea esi, [ebp - 0x1034]
mov ecx, eax
call fcn.004491c0
lea esi, [ebx + 0xc4]
mov edi, eax
mov byte [ebp - 4], 0x11
call fcn.00405260
mov byte [ebp - 4], 8
cmp dword [ebp - 0x1020], 0x10
jb 0x40d4c7
mov edx, dword [ebp - 0x1034]
push edx
call fcn.0044de0c
add esp, 4
push str.weatherinfo
lea eax, [ebp - 0x10fc]
push eax
call fcn.00449500
push str.weather4
push eax
call fcn.00449500
lea esi, [ebp - 0x1034]
mov ecx, eax
call fcn.004491c0
lea esi, [ebx + 0xe0]
mov edi, eax
mov byte [ebp - 4], 0x12
call fcn.00405260
mov byte [ebp - 4], 8
cmp dword [ebp - 0x1020], 0x10
jb 0x40d51d
mov ecx, dword [ebp - 0x1034]
push ecx
call fcn.0044de0c
add esp, 4
push str.weatherinfo
lea edx, [ebp - 0x10fc]
push edx
call fcn.00449500
push str.temp5
push eax
call fcn.00449500
lea esi, [ebp - 0x1034]
mov ecx, eax
call fcn.004491c0
lea esi, [ebx + 0xfc]
mov edi, eax
mov byte [ebp - 4], 0x13
call fcn.00405260
mov byte [ebp - 4], 8
cmp dword [ebp - 0x1020], 0x10
jb 0x40d573
mov eax, dword [ebp - 0x1034]
push eax
call fcn.0044de0c
add esp, 4
push str.weatherinfo
lea ecx, [ebp - 0x10fc]
push ecx
call fcn.00449500
push str.weather5
push eax
call fcn.00449500
lea esi, [ebp - 0x1034]
mov ecx, eax
call fcn.004491c0
lea esi, [ebx + 0x118]
mov edi, eax
mov byte [ebp - 4], 0x14
call fcn.00405260
mov byte [ebp - 4], 8
cmp dword [ebp - 0x1020], 0x10
jb 0x40d5c9
mov edx, dword [ebp - 0x1034]
push edx
call fcn.0044de0c
add esp, 4
push str.weatherinfo
lea eax, [ebp - 0x10fc]
push eax
call fcn.00449500
push str.temp6
push eax
call fcn.00449500
lea esi, [ebp - 0x1034]
mov ecx, eax
call fcn.004491c0
lea esi, [ebx + 0x134]
mov edi, eax
mov byte [ebp - 4], 0x15
call fcn.00405260
mov byte [ebp - 4], 8
cmp dword [ebp - 0x1020], 0x10
jb 0x40d61f
mov ecx, dword [ebp - 0x1034]
push ecx
call fcn.0044de0c
add esp, 4
push str.weatherinfo
lea edx, [ebp - 0x10fc]
push edx
call fcn.00449500
push str.weather6
push eax
call fcn.00449500
lea esi, [ebp - 0x1034]
mov ecx, eax
call fcn.004491c0
lea esi, [ebx + 0x150]
mov edi, eax
mov byte [ebp - 4], 0x16
call fcn.00405260
mov esi, 0x10
cmp dword [ebp - 0x1020], esi
jb 0x40d675
mov eax, dword [ebp - 0x1034]
push eax
call fcn.0044de0c
add esp, 4
lea edi, [ebp - 0x10ec]
call fcn.0040d700
lea eax, [ebp - 0x10fc]
mov byte [ebp - 4], 5
call fcn.004490a0
cmp dword [ebp - 0x1058], esi
jb 0x40d6a6
mov ecx, dword [ebp - 0x106c]
push ecx
call fcn.0044de0c
add esp, 4
xor eax, eax
mov dword [ebp - 0x1058], 0xf
mov dword [ebp - 0x105c], eax
mov byte [ebp - 0x106c], al
cmp dword [ebp - 0x103c], esi
jb 0x40d6d5
mov edx, dword [ebp - 0x1050]
push edx
call fcn.0044de0c
add esp, 4
mov al, 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.0044de17
mov esp, ebp
pop ebp
ret 4