Function at 0x45ed70
Capabilities:
Get http content length
Query remote server for available data
Read data from internet
Receive data
Send data
Send http request

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x526915
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x4d4
mov dword [ebp - 0x3bc], ecx
mov dword [ebp - 0x3b8], 0
mov dword [ebp - 4], 0
lea ecx, [ebp - 0xc4]
call fcn.0044e4a0
mov byte [ebp - 4], 1
lea eax, [ebp - 0x248]
push eax
mov ecx, dword [ebp + 8]
call fcn.00479a90
mov dword [ebp - 0x3c0], eax
mov ecx, dword [ebp - 0x3c0]
mov dword [ebp - 0x3c4], ecx
mov byte [ebp - 4], 2
mov ecx, dword [ebp - 0x3c4]
call fcn.00419640
push eax
push 0x538714
lea edx, [ebp - 0xc4]
push edx
call fcn.004030e0
add esp, 0xc
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x248]
call fcn.00401ef0
mov ecx, dword [ebp + 8]
call fcn.00479af0
push eax
lea ecx, [ebp - 0xc4]
call fcn.00459cf0
push eax
mov ecx, dword [ebp - 0x3bc]
call fcn.00460f60
movzx eax, al
mov dword [ebp - 0xcc], eax
cmp dword [ebp - 0xcc], 0
jne 0x45ee6a
mov byte [ebp - 0x249], 0
mov byte [ebp - 4], 0
lea ecx, [ebp - 0xc4]
call fcn.00401640
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp + 0xc]
call fcn.00401640
mov al, byte [ebp - 0x249]
jmp 0x4601b0
mov dword [ebp - 0xc0], 0x530754
mov ecx, dword [ebp + 0x14]
mov dword [ecx], 0xffffffff
mov dword [ebp - 0xc8], str.HTTP_1.1
mov dword [ebp - 0xe4], 0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0xd8], str.Accept_Encoding:_gzip__deflate_r_ntext_html_application_gzip_application_xhtmlxml_application_xml__q0.9__image_webp___q0.8
mov dword [ebp - 0xd4], 0
mov dword [ebp - 0x24], 0
push 0x5423b0
lea ecx, [ebp - 0x250]
call fcn.004218e0
mov dword [ebp - 0x3c8], eax
mov edx, dword [ebp - 0x3c8]
mov dword [ebp - 0x3cc], edx
mov byte [ebp - 4], 3
mov eax, dword [ebp - 0x3b8]
or eax, 1
mov dword [ebp - 0x3b8], eax
mov ecx, dword [ebp - 0x3cc]
push ecx
lea edx, [ebp + 0xc]
push edx
call fcn.0041fb60
add esp, 8
movzx eax, al
test eax, eax
jne 0x45efb6
push str.FILE
lea ecx, [ebp - 0x254]
call fcn.004218e0
mov dword [ebp - 0x3d0], eax
mov ecx, dword [ebp - 0x3d0]
mov dword [ebp - 0x3d4], ecx
mov dword [ebp - 4], 4
mov edx, dword [ebp - 0x3b8]
or edx, 2
mov dword [ebp - 0x3b8], edx
mov eax, dword [ebp - 0x3d4]
push eax
lea ecx, [ebp + 0xc]
push ecx
call fcn.0041fb60
add esp, 8
movzx edx, al
test edx, edx
jne 0x45efb6
push 0x5423a0
lea ecx, [ebp - 0x258]
call fcn.004218e0
mov dword [ebp - 0x3d8], eax
mov eax, dword [ebp - 0x3d8]
mov dword [ebp - 0x3dc], eax
mov dword [ebp - 4], 5
mov ecx, dword [ebp - 0x3b8]
or ecx, 4
mov dword [ebp - 0x3b8], ecx
mov edx, dword [ebp - 0x3dc]
push edx
lea eax, [ebp + 0xc]
push eax
call fcn.0041fb60
add esp, 8
movzx ecx, al
test ecx, ecx
jne 0x45efb6
mov dword [ebp - 0x3e0], 0
jmp 0x45efc0
mov dword [ebp - 0x3e0], 1
mov dl, byte [ebp - 0x3e0]
mov byte [ebp - 0x24a], dl
mov dword [ebp - 4], 4
mov eax, dword [ebp - 0x3b8]
and eax, 4
je 0x45eff0
and dword [ebp - 0x3b8], 0xfffffffb
lea ecx, [ebp - 0x258]
call fcn.00401640
mov dword [ebp - 4], 3
mov ecx, dword [ebp - 0x3b8]
and ecx, 2
je 0x45f014
and dword [ebp - 0x3b8], 0xfffffffd
lea ecx, [ebp - 0x254]
call fcn.00401640
mov dword [ebp - 4], 1
mov edx, dword [ebp - 0x3b8]
and edx, 1
je 0x45f038
and dword [ebp - 0x3b8], 0xfffffffe
lea ecx, [ebp - 0x250]
call fcn.00401640
movzx eax, byte [ebp - 0x24a]
test eax, eax
je 0x45f291
mov dword [ebp - 0x28], 0x844c0210
push 0x5423a0
lea ecx, [ebp - 0x260]
call fcn.004218e0
mov dword [ebp - 0x3e4], eax
mov ecx, dword [ebp - 0x3e4]
mov dword [ebp - 0x3e8], ecx
mov byte [ebp - 4], 6
mov edx, dword [ebp - 0x3e8]
push edx
lea eax, [ebp + 0xc]
push eax
call fcn.0041fb60
add esp, 8
mov byte [ebp - 0x259], al
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x260]
call fcn.00401640
movzx ecx, byte [ebp - 0x259]
test ecx, ecx
je 0x45f0b3
mov dword [ebp - 0xc0], str.HEAD
jmp 0x45f0bd
mov dword [ebp - 0xc0], 0x5424ac
push 1
push 3
lea ecx, [ebp - 0x16c]
call fcn.0041f6b0
mov byte [ebp - 4], 7
lea edx, [ebp - 0x16c]
test edx, edx
je 0x45f0eb
lea eax, [ebp - 0x16c]
add eax, 8
mov dword [ebp - 0x3ec], eax
jmp 0x45f0f5
mov dword [ebp - 0x3ec], 0
lea ecx, [ebp - 0x280]
push ecx
mov ecx, dword [ebp + 8]
call fcn.00479970
mov dword [ebp - 0x3f0], eax
mov edx, dword [ebp - 0x3f0]
mov dword [ebp - 0x3f4], edx
mov byte [ebp - 4], 8
mov ecx, dword [ebp - 0x3f4]
call fcn.00419640
push eax
lea eax, [ebp - 0x2a0]
push eax
mov ecx, dword [ebp + 8]
call fcn.004799d0
mov dword [ebp - 0x3f8], eax
mov ecx, dword [ebp - 0x3f8]
mov dword [ebp - 0x3fc], ecx
mov byte [ebp - 4], 9
mov ecx, dword [ebp - 0x3fc]
call fcn.00419640
push eax
mov edx, dword [ebp - 0x3ec]
push edx
call fcn.00420dd0
add esp, 8
push eax
call fcn.00420dd0
add esp, 8
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x2a0]
call fcn.00401ef0
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x280]
call fcn.00401ef0
lea ecx, [ebp - 0x170]
call fcn.0044e4a0
mov byte [ebp - 4], 0xa
lea eax, [ebp - 0x2c0]
push eax
lea ecx, [ebp - 0x16c]
call fcn.0041f7d0
mov dword [ebp - 0x400], eax
mov ecx, dword [ebp - 0x400]
mov dword [ebp - 0x404], ecx
mov byte [ebp - 4], 0xb
mov ecx, dword [ebp - 0x404]
call fcn.00419640
push eax
push 0x538714
lea edx, [ebp - 0x170]
push edx
call fcn.004030e0
add esp, 0xc
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x2c0]
call fcn.00401ef0
mov eax, dword [ebp - 0x24]
push eax
mov ecx, dword [ebp - 0x28]
push ecx
lea edx, [ebp - 0xd8]
push edx
mov eax, dword [ebp - 0xe4]
push eax
mov ecx, dword [ebp - 0xc8]
push ecx
lea ecx, [ebp - 0x170]
call fcn.00459cf0
push eax
mov edx, dword [ebp - 0xc0]
push edx
mov eax, dword [ebp - 0x3bc]
mov ecx, dword [eax + 8]
push ecx
call dword [sym.imp.WININET.dll_HttpOpenRequestW]
mov edx, dword [ebp - 0x3bc]
mov dword [edx + 0xc], eax
push 0
push 0xffffffffffffffff
push str.Accept_Encoding:_gzip_deflate_sdch_r_n
mov eax, dword [ebp - 0x3bc]
mov ecx, dword [eax + 0xc]
push ecx
call dword [sym.imp.WININET.dll_HttpAddRequestHeadersW]
push 4
push str.TRUE
push 0x41
mov edx, dword [ebp - 0x3bc]
mov eax, dword [edx + 0xc]
push eax
call dword [sym.imp.WININET.dll_InternetSetOptionW]
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x170]
call fcn.00401640
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x16c]
call fcn.0041e860
jmp 0x45f3b7
push 0x5423bc
lea ecx, [ebp - 0x2c8]
call fcn.004218e0
mov dword [ebp - 0x408], eax
mov ecx, dword [ebp - 0x408]
mov dword [ebp - 0x40c], ecx
mov byte [ebp - 4], 0xc
mov edx, dword [ebp - 0x40c]
push edx
lea eax, [ebp + 0xc]
push eax
call fcn.0041fb60
add esp, 8
mov byte [ebp - 0x2c1], al
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x2c8]
call fcn.00401640
movzx ecx, byte [ebp - 0x2c1]
test ecx, ecx
je 0x45f3b7
mov dword [ebp - 0xc0], str.POST
mov dword [ebp - 0x28], 0x8404f741
lea ecx, [ebp - 0x174]
call fcn.0044e4a0
mov byte [ebp - 4], 0xd
lea edx, [ebp - 0x2e8]
push edx
mov ecx, dword [ebp + 8]
call fcn.004799d0
mov dword [ebp - 0x410], eax
mov eax, dword [ebp - 0x410]
mov dword [ebp - 0x414], eax
mov byte [ebp - 4], 0xe
mov ecx, dword [ebp - 0x414]
call fcn.00419640
push eax
push 0x538714
lea ecx, [ebp - 0x174]
push ecx
call fcn.004030e0
add esp, 0xc
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0x2e8]
call fcn.00401ef0
mov edx, dword [ebp - 0x24]
push edx
mov eax, dword [ebp - 0x28]
push eax
mov ecx, dword [ebp - 0x1c]
push ecx
mov edx, dword [ebp - 0xe4]
push edx
mov eax, dword [ebp - 0xc8]
push eax
lea ecx, [ebp - 0x174]
call fcn.00459cf0
push eax
mov ecx, dword [ebp - 0xc0]
push ecx
mov edx, dword [ebp - 0x3bc]
mov eax, dword [edx + 8]
push eax
call dword [sym.imp.WININET.dll_HttpOpenRequestW]
mov ecx, dword [ebp - 0x3bc]
mov dword [ecx + 0xc], eax
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x174]
call fcn.00401640
push 0x5423b0
lea ecx, [ebp - 0x2f0]
call fcn.004218e0
mov dword [ebp - 0x418], eax
mov edx, dword [ebp - 0x418]
mov dword [ebp - 0x41c], edx
mov byte [ebp - 4], 0xf
mov eax, dword [ebp - 0x41c]
push eax
lea ecx, [ebp + 0xc]
push ecx
call fcn.0041fb60
add esp, 8
mov byte [ebp - 0x2e9], al
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x2f0]
call fcn.00401640
mov eax, dword [ebp - 0x3bc]
cmp dword [eax + 0xc], 0
je 0x45f79e
mov dword [ebp - 0x178], 0
push 0x5423b0
lea ecx, [ebp - 0x2f8]
call fcn.004218e0
mov dword [ebp - 0x420], eax
mov ecx, dword [ebp - 0x420]
mov dword [ebp - 0x424], ecx
mov byte [ebp - 4], 0x10
mov edx, dword [ebp - 0x3b8]
or edx, 8
mov dword [ebp - 0x3b8], edx
mov eax, dword [ebp - 0x424]
push eax
lea ecx, [ebp + 0xc]
push ecx
call fcn.0041fb60
add esp, 8
movzx edx, al
test edx, edx
jne 0x45f522
push str.FILE
lea ecx, [ebp - 0x2fc]
call fcn.004218e0
mov dword [ebp - 0x428], eax
mov eax, dword [ebp - 0x428]
mov dword [ebp - 0x42c], eax
mov dword [ebp - 4], 0x11
mov ecx, dword [ebp - 0x3b8]
or ecx, 0x10
mov dword [ebp - 0x3b8], ecx
mov edx, dword [ebp - 0x42c]
push edx
lea eax, [ebp + 0xc]
push eax
call fcn.0041fb60
add esp, 8
movzx ecx, al
test ecx, ecx
jne 0x45f522
push 0x5423a0
lea ecx, [ebp - 0x300]
call fcn.004218e0
mov dword [ebp - 0x430], eax
mov edx, dword [ebp - 0x430]
mov dword [ebp - 0x434], edx
mov dword [ebp - 4], 0x12
mov eax, dword [ebp - 0x3b8]
or eax, 0x20
mov dword [ebp - 0x3b8], eax
mov ecx, dword [ebp - 0x434]
push ecx
lea edx, [ebp + 0xc]
push edx
call fcn.0041fb60
add esp, 8
movzx eax, al
test eax, eax
jne 0x45f522
mov dword [ebp - 0x438], 0
jmp 0x45f52c
mov dword [ebp - 0x438], 1
mov cl, byte [ebp - 0x438]
mov byte [ebp - 0x2f1], cl
mov dword [ebp - 4], 0x11
mov edx, dword [ebp - 0x3b8]
and edx, 0x20
je 0x45f55c
and dword [ebp - 0x3b8], 0xffffffdf
lea ecx, [ebp - 0x300]
call fcn.00401640
mov dword [ebp - 4], 0x10
mov eax, dword [ebp - 0x3b8]
and eax, 0x10
je 0x45f580
and dword [ebp - 0x3b8], 0xffffffef
lea ecx, [ebp - 0x2fc]
call fcn.00401640
mov dword [ebp - 4], 1
mov ecx, dword [ebp - 0x3b8]
and ecx, 8
je 0x45f5a4
and dword [ebp - 0x3b8], 0xfffffff7
lea ecx, [ebp - 0x2f8]
call fcn.00401640
movzx edx, byte [ebp - 0x2f1]
test edx, edx
je 0x45f5d2
push 0
push 0
push 0
push 0
mov eax, dword [ebp - 0x3bc]
mov ecx, dword [eax + 0xc]
push ecx
call dword [sym.imp.WININET.dll_HttpSendRequestW]
mov dword [ebp - 0x17c], eax
jmp 0x45f68d
push 0x5423bc
lea ecx, [ebp - 0x308]
call fcn.004218e0
mov dword [ebp - 0x43c], eax
mov edx, dword [ebp - 0x43c]
mov dword [ebp - 0x440], edx
mov byte [ebp - 4], 0x13
mov eax, dword [ebp - 0x440]
push eax
lea ecx, [ebp + 0xc]
push ecx
call fcn.0041fb60
add esp, 8
mov byte [ebp - 0x301], al
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x308]
call fcn.00401640
movzx edx, byte [ebp - 0x301]
test edx, edx
je 0x45f68d
mov ecx, dword [ebp + 0x10]
call fcn.0041f690
mov dword [ebp - 0x178], eax
mov ecx, dword [ebp + 0x10]
call fcn.00459cf0
push eax
lea ecx, [ebp - 0x204]
call fcn.0041f550
mov byte [ebp - 4], 0x14
mov eax, dword [ebp - 0x178]
push eax
lea ecx, [ebp - 0x204]
call fcn.00459cf0
push eax
push 0
push 0
mov ecx, dword [ebp - 0x3bc]
mov edx, dword [ecx + 0xc]
push edx
call dword [sym.imp.WININET.dll_HttpSendRequestW]
mov dword [ebp - 0x17c], eax
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x204]
call fcn.0041f590
cmp dword [ebp - 0x17c], 0
jne 0x45f79e
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, dword [ebp + 0x14]
mov dword [ecx], eax
lea ecx, [ebp - 0x208]
call fcn.0044e4a0
mov byte [ebp - 4], 0x15
mov edx, dword [ebp + 0x14]
mov eax, dword [edx]
push eax
push 0x52fc6c
lea ecx, [ebp - 0x208]
push ecx
call fcn.004030e0
add esp, 0xc
lea edx, [ebp - 0x208]
push edx
push str.WinInet_HttpSendRequest_failed__error:
lea ecx, [ebp - 0x30c]
call fcn.004218e0
mov dword [ebp - 0x444], eax
mov eax, dword [ebp - 0x444]
mov dword [ebp - 0x448], eax
mov byte [ebp - 4], 0x16
mov ecx, dword [ebp - 0x448]
push ecx
lea edx, [ebp - 0x310]
push edx
call fcn.00432740
add esp, 0xc
mov dword [ebp - 0x44c], eax
mov eax, dword [ebp - 0x44c]
mov dword [ebp - 0x450], eax
mov byte [ebp - 4], 0x17
mov ecx, dword [ebp - 0x450]
push ecx
mov ecx, dword [ebp + 0x18]
call fcn.00421ab0
mov byte [ebp - 4], 0x16
lea ecx, [ebp - 0x310]
call fcn.00401640
mov byte [ebp - 4], 0x15
lea ecx, [ebp - 0x30c]
call fcn.00401640
mov ecx, dword [ebp - 0x3bc]
call fcn.00460ff0
mov byte [ebp - 0x311], 0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x208]
call fcn.00401640
mov byte [ebp - 4], 0
lea ecx, [ebp - 0xc4]
call fcn.00401640
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp + 0xc]
call fcn.00401640
mov al, byte [ebp - 0x311]
jmp 0x4601b0
mov dword [ebp - 0xbc], 4
push 0x5423a0
lea ecx, [ebp - 0x318]
call fcn.004218e0
mov dword [ebp - 0x454], eax
mov edx, dword [ebp - 0x454]
mov dword [ebp - 0x458], edx
mov byte [ebp - 4], 0x18
mov eax, dword [ebp - 0x458]
push eax
lea ecx, [ebp + 0xc]
push ecx
call fcn.0041fb60
add esp, 8
mov byte [ebp - 0x312], al
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x318]
call fcn.00401640
movzx edx, byte [ebp - 0x312]
test edx, edx
je 0x45f826
push 0
lea eax, [ebp - 0xbc]
push eax
lea ecx, [ebp - 0xb8]
push ecx
push 0x20000005
mov edx, dword [ebp - 0x3bc]
mov eax, dword [edx + 0xc]
push eax
call dword [sym.imp.WININET.dll_HttpQueryInfoW]
mov dword [ebp - 0x14], 0x16
mov dword [ebp - 0x20], 0x64
mov ecx, dword [ebp - 0x20]
add ecx, 1
push ecx
call fcn.004df610
add esp, 4
mov dword [ebp - 0xe0], eax
push 0
lea edx, [ebp - 0x20]
push edx
mov eax, dword [ebp - 0xe0]
push eax
mov ecx, dword [ebp - 0x14]
push ecx
mov edx, dword [ebp - 0x3bc]
mov eax, dword [edx + 0xc]
push eax
call dword [sym.imp.WININET.dll_HttpQueryInfoA]
test eax, eax
jne 0x45f9b9
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x20c], eax
cmp dword [ebp - 0x20c], 0x7a
jne 0x45f8b0
mov ecx, dword [ebp - 0xe0]
push ecx
call fcn.0047daf0
add esp, 4
mov edx, dword [ebp - 0x20]
add edx, 1
push edx
call fcn.004df610
add esp, 4
mov dword [ebp - 0xe0], eax
jmp 0x45f9b4
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, dword [ebp + 0x14]
mov dword [ecx], eax
lea ecx, [ebp - 0x210]
call fcn.0044e4a0
mov byte [ebp - 4], 0x19
mov edx, dword [ebp + 0x14]
mov eax, dword [edx]
push eax
push 0x52fc6c
lea ecx, [ebp - 0x210]
push ecx
call fcn.004030e0
add esp, 0xc
lea edx, [ebp - 0x210]
push edx
push str.WinInet_HttpQueryInfo_failed__error:
lea ecx, [ebp - 0x31c]
call fcn.004218e0
mov dword [ebp - 0x45c], eax
mov eax, dword [ebp - 0x45c]
mov dword [ebp - 0x460], eax
mov byte [ebp - 4], 0x1a
mov ecx, dword [ebp - 0x460]
push ecx
lea edx, [ebp - 0x320]
push edx
call fcn.00432740
add esp, 0xc
mov dword [ebp - 0x464], eax
mov eax, dword [ebp - 0x464]
mov dword [ebp - 0x468], eax
mov byte [ebp - 4], 0x1b
mov ecx, dword [ebp - 0x468]
push ecx
mov ecx, dword [ebp + 0x18]
call fcn.00421ab0
mov byte [ebp - 4], 0x1a
lea ecx, [ebp - 0x320]
call fcn.00401640
mov byte [ebp - 4], 0x19
lea ecx, [ebp - 0x31c]
call fcn.00401640
mov ecx, dword [ebp - 0x3bc]
call fcn.00460ff0
mov byte [ebp - 0x321], 0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x210]
call fcn.00401640
mov byte [ebp - 4], 0
lea ecx, [ebp - 0xc4]
call fcn.00401640
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp + 0xc]
call fcn.00401640
mov al, byte [ebp - 0x321]
jmp 0x4601b0
jmp 0x45f849
mov edx, dword [ebp - 0xe0]
add edx, dword [ebp - 0x20]
mov byte [edx], 0
mov eax, dword [ebp - 0xe0]
push eax
mov ecx, dword [ebp - 0x3bc]
call fcn.004601c0
mov ecx, dword [ebp + 0x14]
mov dword [ecx], eax
mov edx, dword [ebp + 0x14]
cmp dword [edx], 0x18f
jle 0x45faf3
mov eax, dword [ebp + 0x14]
cmp dword [eax], 0x258
jge 0x45faf3
lea ecx, [ebp - 0x214]
call fcn.0044e4a0
mov byte [ebp - 4], 0x1c
mov ecx, dword [ebp + 0x14]
mov edx, dword [ecx]
push edx
push 0x52fc6c
lea eax, [ebp - 0x214]
push eax
call fcn.004030e0
add esp, 0xc
lea ecx, [ebp - 0x214]
push ecx
push str.WinInet_html_header_error:
lea ecx, [ebp - 0x328]
call fcn.004218e0
mov dword [ebp - 0x46c], eax
mov edx, dword [ebp - 0x46c]
mov dword [ebp - 0x470], edx
mov byte [ebp - 4], 0x1d
mov eax, dword [ebp - 0x470]
push eax
lea ecx, [ebp - 0x32c]
push ecx
call fcn.00432740
add esp, 0xc
mov dword [ebp - 0x474], eax
mov edx, dword [ebp - 0x474]
mov dword [ebp - 0x478], edx
mov byte [ebp - 4], 0x1e
mov eax, dword [ebp - 0x478]
push eax
mov ecx, dword [ebp + 0x18]
call fcn.00421ab0
mov byte [ebp - 4], 0x1d
lea ecx, [ebp - 0x32c]
call fcn.00401640
mov byte [ebp - 4], 0x1c
lea ecx, [ebp - 0x328]
call fcn.00401640
mov ecx, dword [ebp - 0x3bc]
call fcn.00460ff0
mov byte [ebp - 0x32d], 0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x214]
call fcn.00401640
mov byte [ebp - 4], 0
lea ecx, [ebp - 0xc4]
call fcn.00401640
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp + 0xc]
call fcn.00401640
mov al, byte [ebp - 0x32d]
jmp 0x4601b0
mov dword [ebp - 0xd0], 0
mov dword [ebp - 0xdc], 0
push 1
lea ecx, [ebp - 0xb4]
call fcn.004614b0
mov byte [ebp - 4], 0x1f
push str.FILE
lea ecx, [ebp - 0x334]
call fcn.004218e0
mov dword [ebp - 0x47c], eax
mov ecx, dword [ebp - 0x47c]
mov dword [ebp - 0x480], ecx
mov byte [ebp - 4], 0x20
mov edx, dword [ebp - 0x480]
push edx
lea eax, [ebp + 0xc]
push eax
call fcn.0041fb60
add esp, 8
mov byte [ebp - 0x32e], al
mov byte [ebp - 4], 0x1f
lea ecx, [ebp - 0x334]
call fcn.00401640
movzx ecx, byte [ebp - 0x32e]
test ecx, ecx
je 0x45fc61
mov edx, dword [ebp - 0xe0]
push edx
mov ecx, dword [ebp - 0x3bc]
call fcn.00460950
mov dword [ebp - 0xd0], eax
mov eax, dword [ebp - 0xe0]
push eax
mov ecx, dword [ebp - 0x3bc]
call fcn.00460530
mov dword [ebp - 0xdc], eax
mov ecx, dword [ebp - 0xd0]
call fcn.0045deb0
push eax
lea ecx, [ebp - 0x338]
call fcn.0041baf0
mov dword [ebp - 0x484], eax
mov ecx, dword [ebp - 0x484]
mov dword [ebp - 0x488], ecx
mov byte [ebp - 4], 0x21
mov edx, dword [ebp - 0x488]
push edx
mov ecx, dword [ebp + 0x1c]
call fcn.0045deb0
push eax
lea ecx, [ebp - 0x33c]
call fcn.0041baf0
mov dword [ebp - 0x48c], eax
mov eax, dword [ebp - 0x48c]
mov dword [ebp - 0x490], eax
mov byte [ebp - 4], 0x22
mov ecx, dword [ebp - 0x490]
push ecx
lea edx, [ebp - 0x218]
push edx
call fcn.00432740
add esp, 0xc
mov byte [ebp - 4], 0x24
lea ecx, [ebp - 0x33c]
call fcn.00401640
mov byte [ebp - 4], 0x25
lea ecx, [ebp - 0x338]
call fcn.00401640
push 0x40
push 0x22
lea ecx, [ebp - 0x218]
call fcn.00459cf0
push eax
lea ecx, [ebp - 0xb4]
call fcn.004615d0
mov byte [ebp - 4], 0x1f
lea ecx, [ebp - 0x218]
call fcn.00401640
mov eax, dword [ebp - 0xe0]
push eax
call fcn.0047daf0
add esp, 4
mov dword [ebp - 0x2c], 0
lea ecx, [ebp - 0x18]
call fcn.0044e4a0
mov byte [ebp - 4], 0x26
push 0
push 0
lea ecx, [ebp - 0x10]
push ecx
mov edx, dword [ebp - 0x3bc]
mov eax, dword [edx + 0xc]
push eax
call dword [sym.imp.WININET.dll_InternetQueryDataAvailable]
test eax, eax
je 0x45ff90
mov ecx, dword [ebp - 0x10]
add ecx, 1
push ecx
call fcn.004df610
add esp, 4
mov dword [ebp - 0x224], eax
lea edx, [ebp - 0x21c]
push edx
mov eax, dword [ebp - 0x10]
push eax
mov ecx, dword [ebp - 0x224]
push ecx
mov edx, dword [ebp - 0x3bc]
mov eax, dword [edx + 0xc]
push eax
call dword [sym.imp.WININET.dll_InternetReadFile]
mov dword [ebp - 0x220], eax
cmp dword [ebp - 0x220], 0
jne 0x45fe0c
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, dword [ebp + 0x14]
mov dword [ecx], eax
lea ecx, [ebp - 0x228]
call fcn.0044e4a0
mov byte [ebp - 4], 0x27
mov edx, dword [ebp + 0x14]
mov eax, dword [edx]
push eax
push 0x52fc6c
lea ecx, [ebp - 0x228]
push ecx
call fcn.004030e0
add esp, 0xc
lea edx, [ebp - 0x228]
push edx
push str.WinInet_InternetReadFile_failed__error:
lea ecx, [ebp - 0x340]
call fcn.004218e0
mov dword [ebp - 0x494], eax
mov eax, dword [ebp - 0x494]
mov dword [ebp - 0x498], eax
mov byte [ebp - 4], 0x28
mov ecx, dword [ebp - 0x498]
push ecx
lea edx, [ebp - 0x344]
push edx
call fcn.00432740
add esp, 0xc
mov dword [ebp - 0x49c], eax
mov eax, dword [ebp - 0x49c]
mov dword [ebp - 0x4a0], eax
mov byte [ebp - 4], 0x29
mov ecx, dword [ebp - 0x4a0]
push ecx
mov ecx, dword [ebp + 0x18]
call fcn.00421ab0
mov byte [ebp - 4], 0x28
lea ecx, [ebp - 0x344]
call fcn.00401640
mov byte [ebp - 4], 0x27
lea ecx, [ebp - 0x340]
call fcn.00401640
mov ecx, dword [ebp - 0x3bc]
call fcn.00460ff0
mov byte [ebp - 0x345], 0
mov byte [ebp - 4], 0x26
lea ecx, [ebp - 0x228]
call fcn.00401640
mov byte [ebp - 4], 0x1f
lea ecx, [ebp - 0x18]
call fcn.00401640
mov byte [ebp - 4], 1
lea ecx, [ebp - 0xb4]
call fcn.00461080
mov byte [ebp - 4], 0
lea ecx, [ebp - 0xc4]
call fcn.00401640
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp + 0xc]
call fcn.00401640
mov al, byte [ebp - 0x345]
jmp 0x4601b0
mov edx, dword [ebp - 0x2c]
add edx, dword [ebp - 0x21c]
mov dword [ebp - 0x2c], edx
push str.FILE
lea ecx, [ebp - 0x34c]
call fcn.004218e0
mov dword [ebp - 0x4a4], eax
mov eax, dword [ebp - 0x4a4]
mov dword [ebp - 0x4a8], eax
mov byte [ebp - 4], 0x2a
mov ecx, dword [ebp - 0x4a8]
push ecx
lea edx, [ebp + 0xc]
push edx
call fcn.0041fb60
add esp, 8
mov byte [ebp - 0x346], al
mov byte [ebp - 4], 0x26
lea ecx, [ebp - 0x34c]
call fcn.00401640
movzx eax, byte [ebp - 0x346]
test eax, eax
je 0x45fee8
mov ecx, dword [ebp - 0x3bc]
add ecx, 4
push ecx
mov edx, esp
mov dword [ebp - 0x350], esp
push ecx
mov ecx, edx
call fcn.004100e0
mov dword [ebp - 0x4ac], eax
mov eax, dword [ebp - 0x4ac]
mov dword [ebp - 0x4b0], eax
mov byte [ebp - 4], 0x2b
mov ecx, dword [ebp - 0x2c]
push ecx
mov byte [ebp - 4], 0x26
call fcn.00428a30
add esp, 8
mov edx, dword [ebp - 0x2c]
cmp edx, dword [ebp - 0xdc]
jb 0x45fec1
jmp 0x45ff90
cmp dword [ebp - 0x21c], 0
je 0x45fee3
mov eax, dword [ebp - 0x21c]
push eax
mov ecx, dword [ebp - 0x224]
push ecx
lea ecx, [ebp - 0xb4]
call fcn.004610b0
jmp 0x45ff7c
cmp dword [ebp - 0x21c], 0
jne 0x45fef6
jmp 0x45ff90
mov edx, dword [ebp - 0x224]
add edx, dword [ebp - 0x21c]
mov byte [edx], 0
mov eax, dword [ebp - 0x224]
push eax
lea ecx, [ebp - 0x370]
call fcn.004025c0
mov byte [ebp - 4], 0x2c
lea ecx, [ebp - 0x370]
push ecx
lea edx, [ebp - 0x390]
push edx
mov ecx, dword [ebp - 0x3bc]
call fcn.0045e710
mov dword [ebp - 0x4b4], eax
mov eax, dword [ebp - 0x4b4]
mov dword [ebp - 0x4b8], eax
mov byte [ebp - 4], 0x2d
mov ecx, dword [ebp - 0x4b8]
call fcn.00411da0
push eax
lea ecx, [ebp - 0x18]
call fcn.0041f070
mov byte [ebp - 4], 0x2c
lea ecx, [ebp - 0x390]
call fcn.00411d30
mov byte [ebp - 4], 0x26
lea ecx, [ebp - 0x370]
call fcn.00401ef0
mov ecx, dword [ebp - 0x224]
push ecx
call fcn.0047daf0
add esp, 4
jmp 0x45fc83
push str.FILE
lea ecx, [ebp - 0x398]
call fcn.004218e0
mov dword [ebp - 0x4bc], eax
mov edx, dword [ebp - 0x4bc]
mov dword [ebp - 0x4c0], edx
mov byte [ebp - 4], 0x2e
mov eax, dword [ebp - 0x4c0]
push eax
lea ecx, [ebp + 0xc]
push ecx
call fcn.0041fb60
add esp, 8
mov byte [ebp - 0x391], al
mov byte [ebp - 4], 0x26
lea ecx, [ebp - 0x398]
call fcn.00401640
movzx edx, byte [ebp - 0x391]
test edx, edx
je 0x45fff4
lea ecx, [ebp - 0xb4]
call fcn.00461620
mov ecx, dword [ebp - 0x3bc]
call fcn.00460ff0
push 0x530754
lea ecx, [ebp - 0x39c]
call fcn.004218e0
mov dword [ebp - 0x4c4], eax
mov eax, dword [ebp - 0x4c4]
mov dword [ebp - 0x4c8], eax
mov byte [ebp - 4], 0x2f
mov ecx, dword [ebp - 0x4c8]
push ecx
mov ecx, dword [ebp + 0x18]
call fcn.00421ab0
mov byte [ebp - 4], 0x26
lea ecx, [ebp - 0x39c]
call fcn.00401640
push 0x5423a0
lea ecx, [ebp - 0x3a4]
call fcn.004218e0
mov dword [ebp - 0x4cc], eax
mov edx, dword [ebp - 0x4cc]
mov dword [ebp - 0x4d0], edx
mov byte [ebp - 4], 0x30
mov eax, dword [ebp - 0x4d0]
push eax
lea ecx, [ebp + 0xc]
push ecx
call fcn.0041fb60
add esp, 8
mov byte [ebp - 0x39d], al
mov byte [ebp - 4], 0x26
lea ecx, [ebp - 0x3a4]
call fcn.00401640
movzx edx, byte [ebp - 0x39d]
test edx, edx
je 0x4600b4
mov eax, dword [ebp - 0xb8]
push eax
push 0x52fc6c
lea ecx, [ebp - 0x18]
push ecx
call fcn.004030e0
add esp, 0xc
push str.FILE
lea ecx, [ebp - 0x3ac]
call fcn.004218e0
mov dword [ebp - 0x4d4], eax
mov edx, dword [ebp - 0x4d4]
mov dword [ebp - 0x4d8], edx
mov byte [ebp - 4], 0x31
mov eax, dword [ebp - 0x4d8]
push eax
lea ecx, [ebp + 0xc]
push ecx
call fcn.0041efe0
add esp, 8
mov byte [ebp - 0x3a5], al
mov byte [ebp - 4], 0x26
lea ecx, [ebp - 0x3ac]
call fcn.00401640
movzx edx, byte [ebp - 0x3a5]
test edx, edx
je 0x46011b
lea eax, [ebp - 0x18]
push eax
mov ecx, dword [ebp + 0x10]
call fcn.00421ab0
jmp 0x46015f
push str.File_downloaded
lea ecx, [ebp - 0x3b0]
call fcn.004218e0
mov dword [ebp - 0x4dc], eax
mov ecx, dword [ebp - 0x4dc]
mov dword [ebp - 0x4e0], ecx
mov byte [ebp - 4], 0x32
mov edx, dword [ebp - 0x4e0]
push edx
mov ecx, dword [ebp + 0x10]
call fcn.00421ab0
mov byte [ebp - 4], 0x26
lea ecx, [ebp - 0x3b0]
call fcn.00401640
mov ecx, dword [ebp - 0x3bc]
call fcn.00460ff0
mov byte [ebp - 0x3b1], 1
mov byte [ebp - 4], 0x1f
lea ecx, [ebp - 0x18]
call fcn.00401640
mov byte [ebp - 4], 1
lea ecx, [ebp - 0xb4]
call fcn.00461080
mov byte [ebp - 4], 0
lea ecx, [ebp - 0xc4]
call fcn.00401640
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp + 0xc]
call fcn.00401640
mov al, byte [ebp - 0x3b1]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x18