Function at 0x496040
Capabilities:
Check http status code
Find taskbar
Get geographical location
Resolve function by parsing pe exports

Disassembly:
push 0xffffffffffffffff
push 0x5ec0c7
mov eax, dword fs:[0]
push eax
sub esp, 0x8a0
mov eax, dword [0x704dd8]
xor eax, esp
mov dword [esp + 0x89c], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x704dd8]
xor eax, esp
push eax
lea eax, [esp + 0x8b4]
mov dword fs:[0], eax
xor ebx, ebx
xor eax, eax
mov dword [esp + 0x18], ecx
mov ecx, dword [esp + 0x8c4]
mov word [esp + 0x15c], ax
mov eax, ecx
mov dword [esp + 0x170], 7
mov dword [esp + 0x16c], ebx
lea esi, [eax + 2]
lea esp, [esp]
mov dx, word [eax]
add eax, 2
cmp dx, bx
jne 0x4960b0
sub eax, esi
sar eax, 1
push eax
push ecx
lea ecx, [esp + 0x160]
call fcn.00401c70
lea ecx, [esp + 0x158]
push ecx
lea edx, [esp + 0x98]
push edx
mov dword [esp + 0x8c4], ebx
call fcn.004a9000
push 0x50
mov byte [esp + 0x8c8], 1
call fcn.004ca5aa
add esp, 0xc
mov dword [esp + 0x2c], eax
mov byte [esp + 0x8bc], 2
cmp eax, ebx
je 0x49611a
mov ecx, eax
call fcn.004aef40
mov esi, eax
mov dword [esp + 0x38], eax
jmp 0x496120
xor esi, esi
mov dword [esp + 0x38], esi
cmp dword [esp + 0xac], 0x10
mov eax, dword [esp + 0x98]
mov byte [esp + 0x8bc], 1
jae 0x496140
lea eax, [esp + 0x98]
push eax
mov ecx, esi
call fcn.004af020
mov ecx, esi
call fcn.004adfb0
mov esi, eax
mov edi, dword [esi + 0x1c]
sub edi, dword [esi + 0x18]
jne 0x49615e
mov edi, 1
push edi
call fcn.004ca5e4
push edi
mov ebp, eax
push ebx
push ebp
mov dword [esp + 0x4c], ebp
call fcn.004e9ba0
mov eax, dword [esi + 0x1c]
add esp, 0x10
xor edi, edi
sub eax, dword [esi + 0x18]
je 0x49619c
cmp edi, eax
jb 0x496188
call fcn.004ea132
mov eax, dword [esi + 0x18]
mov cl, byte [edi + eax]
mov byte [edi + ebp], cl
mov eax, dword [esi + 0x1c]
sub eax, dword [esi + 0x18]
inc edi
cmp edi, eax
jb 0x496188
push ebp
call fcn.004a6b80
add esp, 4
lea ecx, [esp + 0x30]
mov esi, eax
call fcn.004af740
lea edx, [esp + 0x30]
push edx
lea ecx, [esp + 0x1b0]
call fcn.004b13e0
push ebx
lea ecx, [esp + 0x50]
mov byte [esp + 0x8c0], 3
call fcn.004b3d20
mov ebp, 0xf
mov eax, esi
mov byte [esp + 0x8bc], 4
mov dword [esp + 0x254], ebp
mov dword [esp + 0x250], ebx
mov byte [esp + 0x240], 0
lea ecx, [eax + 1]
jmp 0x496200
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x496200
sub eax, ecx
push eax
push esi
lea ecx, [esp + 0x244]
call fcn.00401a20
push 1
lea eax, [esp + 0x50]
push eax
lea ecx, [esp + 0x244]
push ecx
lea ecx, [esp + 0x1b8]
mov byte [esp + 0x8c8], 5
call fcn.004b2c30
mov esi, 0x10
mov bl, al
mov byte [esp + 0x8bc], 4
cmp dword [esp + 0x254], esi
jb 0x496262
mov edx, dword [esp + 0x240]
push edx
call fcn.004ca5d9
add esp, 4
test bl, bl
jne 0x4962fc
mov ecx, dword [esp + 0x38]
test ecx, ecx
je 0x49627a
mov eax, dword [ecx]
mov edx, dword [eax]
push 1
call edx
mov eax, dword [esp + 0x3c]
test eax, eax
je 0x49628b
push eax
call fcn.004ca5d9
add esp, 4
lea ecx, [esp + 0x4c]
mov byte [esp + 0x8bc], 3
call fcn.004b3e50
lea ecx, [esp + 0x1ac]
call fcn.00421bc0
cmp dword [esp + 0xac], esi
jb 0x4962c1
mov eax, dword [esp + 0x98]
push eax
call fcn.004ca5d9
add esp, 4
cmp dword [esp + 0x170], 8
mov dword [esp + 0xac], ebp
mov dword [esp + 0xa8], 0
mov byte [esp + 0x98], 0
jb 0x4962f5
mov ecx, dword [esp + 0x15c]
push ecx
call fcn.004ca5d9
add esp, 4
xor eax, eax
jmp 0x4979ba
push 0xc
call fcn.004ca5aa
xor edi, edi
add esp, 4
cmp eax, edi
je 0x496318
xor ecx, ecx
mov dword [eax], ecx
mov dword [eax + 4], ecx
mov dword [eax + 8], ecx
jmp 0x49631a
xor eax, eax
mov ebx, dword [esp + 0x18]
xor ecx, ecx
mov dword [ebx + 0x768], eax
mov dword [eax], ecx
mov dword [eax + 4], ecx
mov dword [eax + 8], ecx
push edi
mov byte [esp + 0xd4], cl
push 0x6015b5
lea ecx, [esp + 0xd4]
mov dword [esp + 0xec], ebp
mov dword [esp + 0xe8], edi
call fcn.00401a20
push edi
push 0x6015b5
lea ecx, [esp + 0x128]
mov byte [esp + 0x8c4], 6
mov dword [esp + 0x140], ebp
mov dword [esp + 0x13c], edi
mov byte [esp + 0x12c], 0
call fcn.00401a20
push edi
push 0x6015b5
lea ecx, [esp + 0xf0]
mov byte [esp + 0x8c4], 7
mov dword [esp + 0x108], ebp
mov dword [esp + 0x104], edi
mov byte [esp + 0xf4], 0
call fcn.00401a20
push edi
push 0x6015b5
lea ecx, [esp + 0xb8]
mov byte [esp + 0x8c4], 8
mov dword [esp + 0xd0], ebp
mov dword [esp + 0xcc], edi
mov byte [esp + 0xbc], 0
call fcn.00401a20
push edi
push 0x6015b5
lea ecx, [esp + 0x80]
mov byte [esp + 0x8c4], 9
mov dword [esp + 0x98], ebp
mov dword [esp + 0x94], edi
mov byte [esp + 0x84], 0
call fcn.00401a20
push edi
push 0x6015b5
lea ecx, [esp + 0x17c]
mov byte [esp + 0x8c4], 0xa
mov dword [esp + 0x194], ebp
mov dword [esp + 0x190], edi
mov byte [esp + 0x180], 0
call fcn.00401a20
push edi
push 0x6015b5
lea ecx, [esp + 0x198]
mov byte [esp + 0x8c4], 0xb
mov dword [esp + 0x1b0], ebp
mov dword [esp + 0x1ac], edi
mov byte [esp + 0x19c], 0
call fcn.00401a20
push edi
push 0x6015b5
lea ecx, [esp + 0x144]
mov byte [esp + 0x8c4], 0xc
mov dword [esp + 0x15c], ebp
mov dword [esp + 0x158], edi
mov byte [esp + 0x148], 0
call fcn.00401a20
mov byte [esp + 0x8bc], 0xd
mov dword [esp + 0x11c], ebp
mov dword [esp + 0x118], edi
mov byte [esp + 0x108], 0
push edi
push 0x6015b5
lea ecx, [esp + 0x10c]
call fcn.00401a20
xor eax, eax
push edi
push 0x6015b5
lea ecx, [esp + 0x64]
mov byte [esp + 0x8c4], 0xe
mov byte [esp + 0x264], 0
mov dword [esp + 0x265], eax
mov dword [esp + 0x269], eax
mov dword [esp + 0x26d], eax
mov dword [esp + 0x271], eax
mov word [esp + 0x275], ax
mov byte [esp + 0x277], al
mov dword [esp + 0x7c], ebp
mov dword [esp + 0x78], edi
mov byte [esp + 0x68], al
call fcn.00401a20
push 0x206
lea eax, [esp + 0x29e]
xor edx, edx
push edi
push eax
mov byte [esp + 0x8c8], 0xf
mov word [esp + 0x2a4], dx
call fcn.004e9ba0
add esp, 0xc
push str.weatherinfo
lea ecx, [esp + 0x50]
call fcn.004b4da0
mov ecx, eax
call fcn.004b2df0
test al, al
jne 0x4975b9
push edi
lea ecx, [esp + 0x20]
call fcn.004b3d20
push str.weatherinfo
lea ecx, [esp + 0x50]
mov byte [esp + 0x8c0], 0x10
call fcn.004b4da0
push eax
lea ecx, [esp + 0x20]
call fcn.004b4870
push 0x60cec8
lea ecx, [esp + 0x20]
call fcn.004b4da0
mov ecx, eax
call fcn.004b2df0
test al, al
jne 0x496624
push 0x60cec8
lea ecx, [esp + 0x20]
call fcn.004b4da0
mov ecx, eax
call fcn.004b2e10
test al, al
je 0x496624
lea ecx, [esp + 0x23c]
push ecx
push 0x60cec8
lea ecx, [esp + 0x24]
call fcn.004b4da0
mov ecx, eax
call fcn.004b33f0
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x110]
mov byte [esp + 0x8c8], 0x11
call fcn.004017a0
mov byte [esp + 0x8bc], 0x10
cmp dword [esp + 0x254], esi
jb 0x496624
mov edx, dword [esp + 0x240]
push edx
call fcn.004ca5d9
add esp, 4
push 0x208
lea eax, [esp + 0x29c]
push edi
push eax
call fcn.004e9ba0
mov eax, dword [esp + 0x114]
add esp, 0xc
cmp dword [esp + 0x11c], esi
jae 0x496651
lea eax, [esp + 0x108]
lea ecx, [esp + 0x298]
push ecx
push eax
call fcn.004a6130
lea edx, [esp + 0x2a0]
push edx
call fcn.004e9c30
mov ecx, dword [ebx + 0x768]
push eax
lea edx, [esp + 0x2a8]
push 0x5fd170
push edx
mov dword [ecx + 4], eax
call fcn.00403b80
lea eax, [esp + 0x2b0]
add esp, 0x18
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
cmp cx, di
jne 0x496695
sub eax, edx
sar eax, 1
push eax
lea eax, [esp + 0x29c]
push eax
lea ecx, [ebx + 0x650]
call fcn.00401c70
push str.city
lea ecx, [esp + 0x20]
call fcn.004b4da0
mov ecx, eax
call fcn.004b2df0
test al, al
jne 0x496740
push str.city
lea ecx, [esp + 0x20]
call fcn.004b4da0
mov ecx, eax
call fcn.004b2e10
test al, al
je 0x496740
lea ecx, [esp + 0x23c]
push ecx
push str.city
lea ecx, [esp + 0x24]
call fcn.004b4da0
mov ecx, eax
call fcn.004b33f0
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0xbc]
mov byte [esp + 0x8c8], 0x12
call fcn.004017a0
mov byte [esp + 0x8bc], 0x10
cmp dword [esp + 0x254], esi
jb 0x496740
mov edx, dword [esp + 0x240]
push edx
call fcn.004ca5d9
add esp, 4
mov ecx, dword [ebx + 0x644]
mov eax, dword [ecx + 0x826fc]
push edi
add ecx, 0x826e8
push 0x5fd0cc
push eax
push edi
call fcn.00404350
test eax, eax
jne 0x496962
mov eax, dword [esp + 0xb4]
cmp dword [esp + 0xc8], esi
jae 0x49677e
lea eax, [esp + 0xb4]
lea ecx, [esp + 0x298]
push ecx
push eax
call fcn.004a6130
lea edx, [esp + 0x244]
push edx
lea eax, [esp + 0x2a4]
push eax
call fcn.004a60f0
mov ebp, dword [esp + 0x28]
mov ebx, dword [ebp + 0x644]
add esp, 0x10
xor esi, esi
lea edi, [ebx + 0x358]
jmp 0x4967c0
lea ecx, [esp + 0x23c]
mov eax, edi
lea esp, [esp]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4967f0
test dl, dl
je 0x4967ec
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4967f0
add eax, 2
add ecx, 2
test dl, dl
jne 0x4967d0
xor eax, eax
jmp 0x4967f5
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x49680a
inc esi
add edi, 0x96
cmp esi, 0xc5c
jl 0x4967c0
jmp 0x49683a
xor eax, eax
imul esi, esi, 0x96
lea esi, [esi + ebx + 0x394]
mov ecx, esi
jmp 0x496820
cmp byte [esi], 0
jne 0x49682a
mov dl, byte [ecx - 0x1e]
jmp 0x49682c
mov dl, byte [ecx]
mov byte [esp + eax + 0x270], dl
inc eax
inc ecx
cmp eax, 0x1e
jl 0x496820
lea eax, [esp + 0x4a0]
push eax
lea ecx, [esp + 0x274]
push ecx
call fcn.004a60c0
mov ecx, dword [ebp + 0x644]
lea eax, [esp + 0x4a8]
add esp, 8
add ecx, 0x826e8
lea esi, [eax + 2]
xor edi, edi
lea ebx, [ebx]
mov dx, word [eax]
add eax, 2
cmp dx, di
jne 0x496870
sub eax, esi
sar eax, 1
push eax
lea edx, [esp + 0x4a4]
push edx
call fcn.00401c70
lea eax, [esp + 0x298]
push eax
lea ecx, [esp + 0x6ac]
push 0x601fc8
push ecx
call fcn.00403b80
mov edx, dword [ebp + 0x644]
mov eax, dword [edx + 0x8269c]
mov ecx, dword [eax + 0x794]
mov edx, dword [ecx]
mov edx, dword [edx + 0x2c]
add esp, 0xc
lea eax, [esp + 0x6a8]
push eax
call edx
mov ecx, dword [ebp + 0x644]
lea eax, [esp + 0x298]
add ecx, 0x828f0
lea edx, [eax + 2]
mov si, word [eax]
add eax, 2
cmp si, di
jne 0x4968e1
sub eax, edx
sar eax, 1
push eax
lea eax, [esp + 0x29c]
push eax
call fcn.00401c70
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x48], esp
push 4
mov esi, 7
xor edx, edx
mov dword [ecx + 0x18], esi
mov dword [ecx + 0x14], edi
push str._b_W
mov word [ecx + 4], dx
call fcn.00401c70
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x6c], esp
push 2
xor eax, eax
mov dword [ecx + 0x18], esi
mov dword [ecx + 0x14], edi
push 0x601bec
mov byte [esp + 0x8fc], 0x13
mov word [ecx + 4], ax
call fcn.00401c70
mov byte [esp + 0x8f4], 0x10
mov ecx, dword [ebp + 0x644]
call fcn.0041f9c0
xor edi, edi
xor eax, eax
xor ebx, ebx
jmp 0x496970
lea ebp, [eax + 1]
push ebp
lea ecx, [esp + 0x260]
push str.temp_d
push ecx
mov dword [esp + 0x38], ebp
call fcn.004ea179
lea eax, [esp + 0x268]
add esp, 0xc
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x496997
sub eax, edx
push eax
lea edx, [esp + 0x260]
push edx
lea ecx, [esp + 0x64]
call fcn.00401a20
lea eax, [esp + 0x5c]
push eax
lea ecx, [esp + 0x20]
call fcn.004b4db0
mov ecx, eax
call fcn.004b2df0
test al, al
jne 0x496a3c
lea ecx, [esp + 0x5c]
push ecx
lea ecx, [esp + 0x20]
call fcn.004b4db0
mov ecx, eax
call fcn.004b2e10
test al, al
je 0x496a3c
lea edx, [esp + 0x23c]
push edx
lea eax, [esp + 0x60]
push eax
lea ecx, [esp + 0x24]
call fcn.004b4db0
mov ecx, eax
call fcn.004b33f0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [esp + 0x84]
mov byte [esp + 0x8c8], 0x14
call fcn.004017a0
cmp dword [esp + 0x254], 0x10
mov byte [esp + 0x8bc], 0x10
jb 0x496a3c
mov ecx, dword [esp + 0x240]
push ecx
call fcn.004ca5d9
add esp, 4
push 0x208
lea edx, [esp + 0x29c]
push 0
push edx
call fcn.004e9ba0
mov eax, dword [esp + 0x88]
add esp, 0xc
cmp dword [esp + 0x90], 0x10
jae 0x496a68
lea eax, [esp + 0x7c]
lea ecx, [esp + 0x298]
push ecx
push eax
call fcn.004a6130
lea eax, [esp + 0x2a0]
add esp, 8
xor edi, edi
mov byte [esp + 0x17], 1
xor esi, esi
lea edx, [eax + 2]
lea esp, [esp]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x496a90
sub eax, edx
sar eax, 1
je 0x496b18
cmp byte [esp + 0x17], 0
movzx edx, word [esp + esi*2 + 0x298]
lea ecx, [esp + esi*2 + 0x298]
je 0x496ac2
mov word [esp + esi*2 + 0x270], dx
inc edi
jmp 0x496ada
mov eax, esi
sub eax, edi
add eax, eax
xor ebp, ebp
mov word [esp + eax + 0x284], dx
mov word [esp + eax + 0x286], bp
cmp dx, 0x7e
jne 0x496af6
xor edx, edx
mov eax, 0x2f
mov word [esp + esi*2 + 0x270], dx
mov word [ecx], ax
mov byte [esp + 0x17], dl
lea eax, [esp + 0x298]
inc esi
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x496b01
sub eax, edx
sar eax, 1
cmp esi, eax
jb 0x496aa1
mov ebp, dword [esp + 0x2c]
mov edi, dword [esp + 0x18]
mov ecx, dword [edi + 0x64c]
lea eax, [esp + 0x298]
lea ecx, [ebx + ecx + 0x60]
lea esi, [eax + 2]
mov dx, word [eax]
add eax, 2
test dx, dx
jne 0x496b30
sub eax, esi
sar eax, 1
push eax
lea edx, [esp + 0x29c]
push edx
call fcn.00401c70
lea eax, [esp + 0x284]
push eax
call fcn.004e9c30
lea ecx, [esp + 0x274]
push ecx
mov esi, eax
call fcn.004e9c30
mov edx, dword [edi + 0x64c]
mov dword [ebx + edx + 0x108], esi
mov ecx, dword [edi + 0x64c]
mov dword [ebx + ecx + 0x10c], eax
add ebx, 0x150
add esp, 8
mov eax, ebp
cmp ebx, 0x7e0
jne 0x496970
mov eax, edi
mov edx, dword [eax + 0x64c]
mov eax, dword [eax + 0x644]
mov ecx, dword [eax + 0x82690]
push edx
call fcn.004a32f0
xor eax, eax
xor edi, edi
lea ebp, [eax + 0x20]
jmp 0x496bc0
lea ebx, [eax + 1]
push ebx
lea ecx, [esp + 0x260]
push str.wind_d
push ecx
call fcn.004ea179
lea eax, [esp + 0x268]
add esp, 0xc
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x496be3
sub eax, edx
push eax
lea edx, [esp + 0x260]
push edx
lea ecx, [esp + 0x64]
call fcn.00401a20
lea eax, [esp + 0x5c]
push eax
lea ecx, [esp + 0x20]
call fcn.004b4db0
mov ecx, eax
call fcn.004b2df0
test al, al
jne 0x496c88
lea ecx, [esp + 0x5c]
push ecx
lea ecx, [esp + 0x20]
call fcn.004b4db0
mov ecx, eax
call fcn.004b2e10
test al, al
je 0x496c88
lea edx, [esp + 0x23c]
push edx
lea eax, [esp + 0x60]
push eax
lea ecx, [esp + 0x24]
call fcn.004b4db0
mov ecx, eax
call fcn.004b33f0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [esp + 0x84]
mov byte [esp + 0x8c8], 0x15
call fcn.004017a0
cmp dword [esp + 0x254], 0x10
mov byte [esp + 0x8bc], 0x10
jb 0x496c88
mov ecx, dword [esp + 0x240]
push ecx
call fcn.004ca5d9
add esp, 4
push 0x208
lea edx, [esp + 0x29c]
push 0
push edx
call fcn.004e9ba0
mov eax, dword [esp + 0x88]
add esp, 0xc
cmp dword [esp + 0x90], 0x10
jae 0x496cb4
lea eax, [esp + 0x7c]
lea ecx, [esp + 0x298]
push ecx
push eax
call fcn.004a6130
lea eax, [esp + 0x2a0]
add esp, 8
lea edx, [eax + 2]
nop
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x496cd0
sub eax, edx
sar eax, 1
xor ecx, ecx
test eax, eax
jle 0x496d00
cmp word [esp + ecx*2 + 0x298], bp
je 0x496cf6
inc ecx
cmp ecx, eax
jl 0x496ce5
jmp 0x496d00
xor edx, edx
mov word [esp + ecx*2 + 0x298], dx
mov eax, dword [esp + 0x18]
mov ecx, dword [eax + 0x64c]
lea eax, [esp + 0x298]
lea ecx, [edi + ecx + 0x28]
lea esi, [eax + 2]
jmp 0x496d20
mov dx, word [eax]
add eax, 2
test dx, dx
jne 0x496d20
sub eax, esi
sar eax, 1
push eax
lea edx, [esp + 0x29c]
push edx
call fcn.00401c70
add edi, 0x150
mov eax, ebx
cmp edi, 0x7e0
jne 0x496bc0
mov ebp, dword [esp + 0x18]
xor eax, eax
xor edi, edi
lea esp, [esp]
lea ebx, [eax + 1]
push ebx
lea eax, [esp + 0x260]
push str.weather_d
push eax
mov esi, 0x10
call fcn.004ea179
lea eax, [esp + 0x268]
add esp, 0xc
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x496d88
sub eax, edx
push eax
lea ecx, [esp + 0x260]
push ecx
lea ecx, [esp + 0x64]
call fcn.00401a20
lea edx, [esp + 0x5c]
push edx
lea ecx, [esp + 0x20]
call fcn.004b4db0
mov ecx, eax
call fcn.004b2df0
test al, al
jne 0x496e2c
lea eax, [esp + 0x5c]
push eax
lea ecx, [esp + 0x20]
call fcn.004b4db0
mov ecx, eax
call fcn.004b2e10
test al, al
je 0x496e2c
lea ecx, [esp + 0x23c]
push ecx
lea edx, [esp + 0x60]
push edx
lea ecx, [esp + 0x24]
call fcn.004b4db0
mov ecx, eax
call fcn.004b33f0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [esp + 0x84]
mov byte [esp + 0x8c8], 0x16
call fcn.004017a0
mov byte [esp + 0x8bc], 0x10
cmp dword [esp + 0x254], esi
jb 0x496e2c
mov eax, dword [esp + 0x240]
push eax
call fcn.004ca5d9
add esp, 4
push 0x208
lea ecx, [esp + 0x29c]
push 0
push ecx
call fcn.004e9ba0
mov eax, dword [esp + 0x88]
add esp, 0xc
cmp dword [esp + 0x90], esi
jae 0x496e57
lea eax, [esp + 0x7c]
lea edx, [esp + 0x298]
push edx
push eax
call fcn.004a6130
mov eax, dword [ebp + 0x64c]
lea ecx, [edi + eax + 0xc]
lea eax, [esp + 0x2a0]
add esp, 8
lea esi, [eax + 2]
lea esp, [esp]
mov dx, word [eax]
add eax, 2
test dx, dx
jne 0x496e80
sub eax, esi
sar eax, 1
push eax
lea edx, [esp + 0x29c]
push edx
call fcn.00401c70
add edi, 0x150
mov eax, ebx
cmp edi, 0x7e0
jne 0x496d60
xor esi, esi
mov bl, 0x17
jmp 0x496ec0
lea eax, [esi + esi + 1]
push eax
lea eax, [esp + 0x260]
push str.img_d
push eax
call fcn.004ea179
lea eax, [esp + 0x268]
add esp, 0xc
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x496ee4
sub eax, edx
push eax
lea ecx, [esp + 0x260]
push ecx
lea ecx, [esp + 0x64]
call fcn.00401a20
lea edx, [esp + 0x5c]
push edx
lea ecx, [esp + 0x20]
call fcn.004b4db0
mov ecx, eax
call fcn.004b2df0
test al, al
jne 0x496f88
lea eax, [esp + 0x5c]
push eax
lea ecx, [esp + 0x20]
call fcn.004b4db0
mov ecx, eax
call fcn.004b2e10
test al, al
je 0x496f88
lea ecx, [esp + 0x23c]
push ecx
lea edx, [esp + 0x60]
push edx
lea ecx, [esp + 0x24]
call fcn.004b4db0
mov ecx, eax
call fcn.004b33f0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [esp + 0x84]
mov byte [esp + 0x8c8], bl
call fcn.004017a0
cmp dword [esp + 0x254], 0x10
mov byte [esp + 0x8bc], 0x10
jb 0x496f88
mov eax, dword [esp + 0x240]
push eax
call fcn.004ca5d9
add esp, 4
push 0x208
lea ecx, [esp + 0x29c]
push 0
push ecx
call fcn.004e9ba0
mov eax, dword [esp + 0x88]
add esp, 0xc
cmp dword [esp + 0x90], 0x10
jae 0x496fb4
lea eax, [esp + 0x7c]
lea edx, [esp + 0x298]
push edx
push eax
call fcn.004a6130
mov ecx, dword [ebp + 0x64c]
mov eax, esi
add esp, 8
imul eax, eax, 0x150
lea ecx, [eax + ecx + 0x7c]
lea eax, [esp + 0x298]
lea edi, [eax + 2]
mov dx, word [eax]
add eax, 2
test dx, dx
jne 0x496fe1
sub eax, edi
sar eax, 1
push eax
lea edx, [esp + 0x29c]
push edx
call fcn.00401c70
test esi, esi
jne 0x49701b
lea eax, [esp + 0x298]
push eax
call fcn.004e9c30
mov ecx, dword [ebp + 0x768]
add esp, 4
mov dword [ecx + 8], eax
push esi
mov ecx, ebp
call fcn.00494ca0
inc esi
cmp esi, 6
jne 0x496ec0
push str.pm25
lea ecx, [esp + 0x20]
call fcn.004b4da0
mov ecx, eax
call fcn.004b2df0
test al, al
jne 0x49749b
push 0
lea ecx, [esp + 0x240]
call fcn.004b3d20
mov bl, 0x18
push str.pm25
lea ecx, [esp + 0x20]
mov byte [esp + 0x8c0], bl
call fcn.004b4da0
push eax
lea ecx, [esp + 0x240]
call fcn.004b4870
push str.qulity_index
lea ecx, [esp + 0x240]
call fcn.004b4da0
mov ecx, eax
call fcn.004b2df0
test al, al
jne 0x497114
push str.qulity_index
lea ecx, [esp + 0x240]
call fcn.004b4da0
mov ecx, eax
call fcn.004b2e10
test al, al
je 0x497114
lea edx, [esp + 0x270]
push edx
push str.qulity_index
lea ecx, [esp + 0x244]
call fcn.004b4da0
mov ecx, eax
call fcn.004b33f0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [esp + 0x12c]
mov byte [esp + 0x8c8], 0x19
call fcn.004017a0
mov edi, 0x10
mov byte [esp + 0x8bc], bl
cmp dword [esp + 0x288], edi
jb 0x497119
mov eax, dword [esp + 0x274]
push eax
call fcn.004ca5d9
add esp, 4
jmp 0x497119
mov edi, 0x10
push 0x208
lea ecx, [esp + 0x29c]
push 0
push ecx
call fcn.004e9ba0
mov eax, dword [esp + 0x130]
add esp, 0xc
cmp dword [esp + 0x138], edi
jae 0x497147
lea eax, [esp + 0x124]
lea edx, [esp + 0x298]
push edx
push eax
call fcn.004a6130
mov ecx, dword [ebp + 0x64c]
lea eax, [esp + 0x2a0]
add esp, 8
add ecx, 0xd0
lea esi, [eax + 2]
mov edi, edi
mov dx, word [eax]
add eax, 2
test dx, dx
jne 0x497170
sub eax, esi
sar eax, 1
push eax
lea eax, [esp + 0x29c]
push eax
call fcn.00401c70
lea ecx, [esp + 0x298]
push ecx
call fcn.004e9c30
mov edx, dword [ebp + 0x768]
add esp, 4
cmp eax, 0x32
mov dword [edx], eax
jg 0x4971b6
mov dword [ebp + 0x710], 0
jmp 0x497200
cmp eax, 0x64
jg 0x4971c7
mov dword [ebp + 0x710], 1
jmp 0x497200
cmp eax, 0x96
jg 0x4971da
mov dword [ebp + 0x710], 2
jmp 0x497200
cmp eax, 0xc8
jg 0x4971ed
mov dword [ebp + 0x710], 3
jmp 0x497200
xor ecx, ecx
cmp eax, 0x12c
setg cl
add ecx, 4
mov dword [ebp + 0x710], ecx
push str.rank
lea ecx, [esp + 0x240]
call fcn.004b4da0
mov ecx, eax
call fcn.004b2df0
test al, al
jne 0x497291
push str.rank
lea ecx, [esp + 0x240]
call fcn.004b4da0
mov ecx, eax
call fcn.004b2e10
test al, al
je 0x497291
lea edx, [esp + 0x270]
push edx
push str.rank
lea ecx, [esp + 0x244]
call fcn.004b4da0
mov ecx, eax
call fcn.004b33f0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [esp + 0xd8]
mov byte [esp + 0x8c8], 0x1a
call fcn.004017a0
mov byte [esp + 0x8bc], bl
cmp dword [esp + 0x288], edi
jb 0x497291
mov eax, dword [esp + 0x274]
push eax
call fcn.004ca5d9
add esp, 4
push 0x208
lea ecx, [esp + 0x29c]
push 0
push ecx
call fcn.004e9ba0
mov eax, dword [esp + 0xdc]
add esp, 0xc
cmp dword [esp + 0xe4], edi
jae 0x4972bf
lea eax, [esp + 0xd0]
lea edx, [esp + 0x298]
push edx
push eax
call fcn.004a6130
lea eax, [esp + 0x2a0]
push eax
push str.strAQIRank:_s
call fcn.004a7090
lea eax, [esp + 0x2a8]
add esp, 0x10
lea edx, [eax + 2]
lea esp, [esp]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x4972f0
sub eax, edx
sar eax, 1
je 0x497447
push 0x104
lea ecx, [esp + 0x6ac]
push 0
push ecx
call fcn.004e9ba0
push 0x104
lea edx, [esp + 0x4b0]
push 0
push edx
call fcn.004e9ba0
lea eax, [esp + 0x2b0]
add esp, 0x18
xor edi, edi
xor bl, bl
xor ecx, ecx
lea esi, [eax + 2]
mov dx, word [eax]
add eax, 2
test dx, dx
jne 0x497340
sub eax, esi
sar eax, 1
je 0x4973a5
movzx eax, word [esp + ecx*2 + 0x298]
test bl, bl
jne 0x497367
mov word [esp + ecx*2 + 0x6a8], ax
jmp 0x497373
mov edx, ecx
sub edx, edi
mov word [esp + edx*2 + 0x49e], ax
cmp ax, 0x2f
jne 0x497387
xor eax, eax
mov word [esp + ecx*2 + 0x6a8], ax
mov edi, ecx
mov bl, 1
lea eax, [esp + 0x298]
inc ecx
lea esi, [eax + 2]
mov dx, word [eax]
add eax, 2
test dx, dx
jne 0x497392
sub eax, esi
sar eax, 1
cmp ecx, eax
jb 0x497351
lea ecx, [esp + 0x6a8]
push ecx
push str.szAQIRank1:_s
call fcn.004a7090
lea edx, [esp + 0x4a8]
push edx
push str.szAQIRank2:_s
call fcn.004a7090
mov ecx, dword [ebp + 0x64c]
lea eax, [esp + 0x6b8]
add esp, 0x10
add ecx, 0xec
lea esi, [eax + 2]
mov dx, word [eax]
add eax, 2
test dx, dx
jne 0x4973e2
sub eax, esi
sar eax, 1
push eax
lea eax, [esp + 0x6ac]
push eax
call fcn.00401c70
lea ecx, [esp + 0x6a8]
push ecx
call fcn.004e9c30
lea edx, [esp + 0x4a4]
push edx
mov esi, eax
call fcn.004e9c30
mov ecx, eax
add esp, 8
test ecx, ecx
je 0x49747d
mov eax, esi
imul eax, eax, 0x64
cdq
idiv ecx
mov dword [esp + 0x2c], eax
fild dword [esp + 0x2c]
fsubr qword [0x6107b8]
call fcn.004e8d20
mov dword [ebp + 0x714], eax
jmp 0x497487
mov ecx, dword [ebp + 0x64c]
lea eax, [esp + 0x298]
add ecx, 0xec
lea esi, [eax + 2]
lea ecx, [ecx]
mov dx, word [eax]
add eax, 2
test dx, dx
jne 0x497460
sub eax, esi
sar eax, 1
push eax
lea eax, [esp + 0x29c]
push eax
call fcn.00401c70
mov dword [ebp + 0x714], 0
lea ecx, [esp + 0x23c]
mov byte [esp + 0x8bc], 0x10
call fcn.004b3e50
push 0x611ed8
lea ecx, [esp + 0x20]
call fcn.004b4da0
mov ecx, eax
call fcn.004b2df0
test al, al
jne 0x497525
push 0x611ed8
lea ecx, [esp + 0x20]
call fcn.004b4da0
mov ecx, eax
call fcn.004b2e10
test al, al
je 0x497525
lea ecx, [esp + 0x270]
push ecx
push 0x611ed8
lea ecx, [esp + 0x24]
call fcn.004b4da0
mov ecx, eax
call fcn.004b33f0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [esp + 0xf4]
mov byte [esp + 0x8c8], 0x1b
call fcn.004017a0
cmp dword [esp + 0x288], 0x10
mov byte [esp + 0x8bc], 0x10
jb 0x497525
mov edx, dword [esp + 0x274]
push edx
call fcn.004ca5d9
add esp, 4
push 0x208
lea eax, [esp + 0x29c]
push 0
push eax
call fcn.004e9ba0
mov eax, dword [esp + 0xf8]
add esp, 0xc
cmp dword [esp + 0x100], 0x10
jae 0x497554
lea eax, [esp + 0xec]
lea ecx, [esp + 0x298]
push ecx
push eax
call fcn.004a6130
mov ecx, dword [ebp + 0x64c]
lea eax, [esp + 0x2a0]
add esp, 8
add ecx, 0xb4
lea esi, [eax + 2]
jmp 0x497580
mov dx, word [eax]
add eax, 2
test dx, dx
jne 0x497580
sub eax, esi
sar eax, 1
push eax
lea edx, [esp + 0x29c]
push edx
call fcn.00401c70
lea ecx, [esp + 0x1c]
mov byte [esp + 0x8bc], 0xf
call fcn.004b3e50
mov ebx, dword [esp + 0x18]
mov ebp, 0xf
xor edi, edi
xor eax, eax
mov dword [esp + 0x44], eax
mov dword [esp + 0x48], eax
mov eax, dword [ebx + 0x768]
mov dword [esp + 0x48], eax
mov eax, dword [ebx + 0x764]
mov dword [esp + 0x44], 0xc
mov dword [esp + 0x40], 1
cmp eax, edi
je 0x4975f5
lea ecx, [esp + 0x40]
push ecx
push edi
push 0x4a
push eax
jmp 0x4976f6
push edi
push str.Shell_TrayWnd
call dword [sym.imp.USER32.dll_FindWindowW]
mov ebx, dword [sym.imp.USER32.dll_GetWindow]
push 5
push eax
call ebx
mov esi, eax
cmp esi, edi
je 0x4976fc
mov edi, dword [sym.imp.USER32.dll_GetClassNameW]
lea esp, [esp]
push 0x104
lea edx, [esp + 0x4a4]
push edx
push esi
call edi
mov ecx, str.TrayNotifyWnd
lea eax, [esp + 0x4a0]
lea esp, [esp]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x497666
test dx, dx
je 0x497662
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x497666
add eax, 4
add ecx, 4
test dx, dx
jne 0x497640
xor eax, eax
jmp 0x49766b
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x49767f
push 2
push esi
call ebx
mov esi, eax
test esi, esi
jne 0x497620
jmp 0x4976fc
push 5
push esi
call ebx
mov esi, eax
test esi, esi
je 0x4976fc
lea ebx, [ebx]
push 0x104
lea eax, [esp + 0x4a4]
push eax
push esi
call edi
mov ecx, str.TrayClockWClass
lea eax, [esp + 0x4a0]
lea esp, [esp]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x4976d6
test dx, dx
je 0x4976d2
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x4976d6
add eax, 4
add ecx, 4
test dx, dx
jne 0x4976b0
xor eax, eax
jmp 0x4976db
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4976ec
push 2
push esi
call ebx
mov esi, eax
test esi, esi
jne 0x497690
jmp 0x4976fc
lea ecx, [esp + 0x40]
push ecx
push 0
push 0x4a
push esi
call dword [sym.imp.USER32.dll_SendMessageW]
mov esi, dword [esp + 0x18]
mov eax, dword [esi + 0x768]
xor edi, edi
cmp eax, edi
je 0x49771b
push eax
call fcn.004ca5d9
add esp, 4
mov dword [esi + 0x768], edi
mov ecx, esi
call fcn.00495460
mov eax, dword [esi + 0x74c]
cmp eax, dword [esi + 0x734]
je 0x497768
mov dword [esi + 0x734], eax
mov dword [esi + 0x718], edi
mov dword [esi + 0x71c], edi
mov dword [esi + 0x720], edi
mov dword [esi + 0x724], edi
mov dword [esi + 0x728], edi
mov dword [esi + 0x72c], edi
mov byte [esi + 0x730], 0
mov byte [esi + 0x731], 0
mov ecx, dword [esp + 0x38]
cmp ecx, edi
je 0x497778
mov edx, dword [ecx]
mov eax, dword [edx]
push 1
call eax
mov eax, dword [esp + 0x3c]
cmp eax, edi
je 0x497789
push eax
call fcn.004ca5d9
add esp, 4
mov esi, 0x10
cmp dword [esp + 0x74], esi
jb 0x4977a1
mov ecx, dword [esp + 0x60]
push ecx
call fcn.004ca5d9
add esp, 4
mov dword [esp + 0x74], ebp
mov dword [esp + 0x70], edi
mov byte [esp + 0x60], 0
cmp dword [esp + 0x11c], esi
jb 0x4977c7
mov edx, dword [esp + 0x108]
push edx
call fcn.004ca5d9
add esp, 4
mov dword [esp + 0x11c], ebp
mov dword [esp + 0x118], edi
mov byte [esp + 0x108], 0
cmp dword [esp + 0x154], esi
jb 0x4977f6
mov eax, dword [esp + 0x140]
push eax
call fcn.004ca5d9
add esp, 4
mov dword [esp + 0x154], ebp
mov dword [esp + 0x150], edi
mov byte [esp + 0x140], 0
cmp dword [esp + 0x1a8], esi
jb 0x497825
mov ecx, dword [esp + 0x194]
push ecx
call fcn.004ca5d9
add esp, 4
mov dword [esp + 0x1a8], ebp
mov dword [esp + 0x1a4], edi
mov byte [esp + 0x194], 0
cmp dword [esp + 0x18c], esi
jb 0x497854
mov edx, dword [esp + 0x178]
push edx
call fcn.004ca5d9
add esp, 4
mov dword [esp + 0x18c], ebp
mov dword [esp + 0x188], edi
mov byte [esp + 0x178], 0
cmp dword [esp + 0x90], esi
jb 0x497880
mov eax, dword [esp + 0x7c]
push eax
call fcn.004ca5d9
add esp, 4
mov dword [esp + 0x90], ebp
mov dword [esp + 0x8c], edi
mov byte [esp + 0x7c], 0
cmp dword [esp + 0xc8], esi
jb 0x4978ac
mov ecx, dword [esp + 0xb4]
push ecx
call fcn.004ca5d9
add esp, 4
mov dword [esp + 0xc8], ebp
mov dword [esp + 0xc4], edi
mov byte [esp + 0xb4], 0
cmp dword [esp + 0x100], esi
jb 0x4978db
mov edx, dword [esp + 0xec]
push edx
call fcn.004ca5d9
add esp, 4
mov dword [esp + 0x100], ebp
mov dword [esp + 0xfc], edi
mov byte [esp + 0xec], 0
cmp dword [esp + 0x138], esi
jb 0x49790a
mov eax, dword [esp + 0x124]
push eax
call fcn.004ca5d9
add esp, 4
mov dword [esp + 0x138], ebp
mov dword [esp + 0x134], edi
mov byte [esp + 0x124], 0
cmp dword [esp + 0xe4], esi
jb 0x497939
mov ecx, dword [esp + 0xd0]
push ecx
call fcn.004ca5d9
add esp, 4
lea ecx, [esp + 0x4c]
mov dword [esp + 0xe4], ebp
mov dword [esp + 0xe0], edi
mov byte [esp + 0xd0], 0
mov byte [esp + 0x8bc], 3
call fcn.004b3e50
lea ecx, [esp + 0x1ac]
call fcn.00421bc0
cmp dword [esp + 0xac], esi
jb 0x497985
mov edx, dword [esp + 0x98]
push edx
call fcn.004ca5d9
add esp, 4
cmp dword [esp + 0x170], 8
mov dword [esp + 0xac], ebp
mov dword [esp + 0xa8], edi
mov byte [esp + 0x98], 0
jb 0x4979b5
mov eax, dword [esp + 0x15c]
push eax
call fcn.004ca5d9
add esp, 4
mov eax, 1
mov ecx, dword [esp + 0x8b4]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x89c]
xor ecx, esp
call fcn.004e8c89
add esp, 0x8ac
ret 4