Function at 0x48d4e0
Capabilities:
Create http request
Read data from internet
Receive data

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xccc
mov eax, dword [0x4c32cc]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [0x4d2b0c]
push ebx
push esi
push edi
mov edi, ecx
mov ecx, eax
xor ebx, ebx
inc eax
mov dword [ebp - 0xccc], ebx
mov dword [0x4d2b0c], eax
cmp ecx, 0x1e
jg 0x48da51
push 0x4c78c8
lea esi, [edi + 4]
push esi
call dword [sym.imp.KERNEL32.dll_lstrcmpA]
test eax, eax
jne 0x48d53f
mov eax, dword [0x4d2b30]
mov edx, eax
inc eax
mov dword [0x4d2b30], eax
cmp edx, 0xa
jne 0x48da51
push esi
mov edx, 0x7ffffffe
mov eax, 0x104
mov ecx, 0x4c78c8
mov dword [0x4d2b30], ebx
call fcn.00401000
mov eax, dword [edi]
cmp eax, 0x178e
jg 0x48d5f0
je 0x48d575
sub eax, 6
je 0x48d5b6
dec eax
jne 0x48d5f7
push str.CLOUD_REMOVE
call fcn.0047fb10
add esp, 4
push 0x400
push str.cloudremoved
push str.SoftwareBillP_StudiosWinPatrol
lea ecx, [ebp - 0x8c8]
mov edx, 0x80000002
call fcn.0048e050
add esp, 0xc
test eax, eax
jne 0x48d64b
push str.http:__www.winpatrol.com_cgi_bin_cloudremoved.pl_
jmp 0x48d636
push str.CLOUD_KEEP
call fcn.0047fb10
add esp, 4
push 0x400
push str.cloudkept
push str.SoftwareBillP_StudiosWinPatrol
lea ecx, [ebp - 0x8c8]
mov edx, 0x80000002
call fcn.0048e050
add esp, 0xc
test eax, eax
jne 0x48d64b
push str.http:__www.winpatrol.com_cgi_bin_cloudkept.pl_
jmp 0x48d636
cmp eax, 0x17a3
je 0x48d5fe
push str.http:__www.winpatrol.com_cgi_bin_clouderror.pl_
jmp 0x48d636
push str.CLOUD_REPEAT
call fcn.0047fb10
add esp, 4
push 0x400
push str.repeatfile
push str.SoftwareBillP_StudiosWinPatrol
lea ecx, [ebp - 0x8c8]
mov edx, 0x80000002
call fcn.0048e050
add esp, 0xc
test eax, eax
jne 0x48d64b
push str.http:__www.winpatrol.com_cgi_bin_repeatfile.pl_
mov edx, 0x7ffffffe
mov eax, 0x200
lea ecx, [ebp - 0x8c8]
call fcn.00401000
push str.file
mov edx, 0x7ffffffe
mov eax, 0x400
lea ecx, [ebp - 0x448]
call fcn.00401000
mov edx, 0x400
lea eax, [ebp - 0x448]
cmp byte [eax], bl
je 0x48d67a
inc eax
dec edx
jne 0x48d670
jmp 0x48d69e
cmp edx, ebx
je 0x48d69e
mov ecx, 0x400
sub ecx, edx
mov eax, 0x400
sub eax, ecx
push esi
lea ecx, [ebp + ecx - 0x448]
mov edx, 0x7fffffff
call fcn.00401000
lea eax, [edi + 0x108]
push eax
push str.title_s
lea ecx, [ebp - 0xcc8]
push 0x400
push ecx
call fcn.00402830
add esp, 0x10
mov edx, 0x400
lea eax, [ebp - 0x448]
lea esp, [esp]
cmp byte [eax], bl
je 0x48d6da
inc eax
dec edx
jne 0x48d6d0
jmp 0x48d704
cmp edx, ebx
je 0x48d704
mov ecx, 0x400
sub ecx, edx
lea edx, [ebp - 0xcc8]
mov eax, 0x400
push edx
sub eax, ecx
lea ecx, [ebp + ecx - 0x448]
mov edx, 0x7fffffff
call fcn.00401000
mov edx, 0x400
lea eax, [ebp - 0x448]
nop
cmp byte [eax], bl
je 0x48d71a
inc eax
dec edx
jne 0x48d710
jmp 0x48d742
cmp edx, ebx
je 0x48d742
mov ecx, 0x400
sub ecx, edx
mov eax, 0x400
sub eax, ecx
push str.code
lea ecx, [ebp + ecx - 0x448]
mov edx, 0x7fffffff
call fcn.00401000
mov edx, 0x400
lea eax, [ebp - 0x448]
lea ecx, [ecx]
cmp byte [eax], bl
je 0x48d75a
inc eax
dec edx
jne 0x48d750
jmp 0x48d782
cmp edx, ebx
je 0x48d782
mov ecx, 0x400
sub ecx, edx
mov eax, 0x400
sub eax, ecx
push 0x4c7a9c
lea ecx, [ebp + ecx - 0x448]
mov edx, 0x7fffffff
call fcn.00401000
mov edx, 0x400
lea eax, [ebp - 0x448]
lea ecx, [ecx]
cmp byte [eax], bl
je 0x48d79a
inc eax
dec edx
jne 0x48d790
jmp 0x48d7c2
cmp edx, ebx
je 0x48d7c2
mov ecx, 0x400
sub ecx, edx
mov eax, 0x400
sub eax, ecx
push str.name
lea ecx, [ebp + ecx - 0x448]
mov edx, 0x7fffffff
call fcn.00401000
mov edx, 0x400
lea eax, [ebp - 0x448]
lea ecx, [ecx]
cmp byte [eax], bl
je 0x48d7da
inc eax
dec edx
jne 0x48d7d0
jmp 0x48d802
cmp edx, ebx
je 0x48d802
mov ecx, 0x400
sub ecx, edx
mov eax, 0x400
sub eax, ecx
push 0x4c79e0
lea ecx, [ebp + ecx - 0x448]
mov edx, 0x7fffffff
call fcn.00401000
lea eax, [ebp - 0x4c8]
push eax
xor ecx, ecx
call fcn.0047ebe0
add esp, 4
mov edx, 0x400
lea eax, [ebp - 0x448]
mov edi, edi
cmp byte [eax], bl
je 0x48d82a
inc eax
dec edx
jne 0x48d820
jmp 0x48d852
cmp edx, ebx
je 0x48d852
mov ecx, 0x400
sub ecx, edx
mov eax, 0x400
sub eax, ecx
push str.version
lea ecx, [ebp + ecx - 0x448]
mov edx, 0x7fffffff
call fcn.00401000
mov edx, 0x400
lea eax, [ebp - 0x448]
lea ecx, [ecx]
cmp byte [eax], bl
je 0x48d86a
inc eax
dec edx
jne 0x48d860
jmp 0x48d894
cmp edx, ebx
je 0x48d894
mov ecx, 0x400
sub ecx, edx
lea edx, [ebp - 0x4c8]
mov eax, 0x400
push edx
sub eax, ecx
lea ecx, [ebp + ecx - 0x448]
mov edx, 0x7fffffff
call fcn.00401000
cmp dword [edi], 0x178e
mov edx, 0x400
lea eax, [ebp - 0x448]
jne 0x48d8c0
cmp byte [eax], bl
je 0x48d8b1
inc eax
dec edx
jne 0x48d8a7
jmp 0x48d8f2
cmp edx, ebx
je 0x48d8f2
push str.rm1
jmp 0x48d8d3
cmp byte [eax], bl
je 0x48d8ca
inc eax
dec edx
jne 0x48d8c0
jmp 0x48d8f2
cmp edx, ebx
je 0x48d8f2
push str.rm0
mov ecx, 0x400
sub ecx, edx
mov eax, 0x400
sub eax, ecx
mov edx, 0x7fffffff
lea ecx, [ebp + ecx - 0x448]
call fcn.00401000
push 0x20
push str.wpid
push str.SoftwareBillP_StudiosWinPatrol
lea ecx, [ebp - 0x44]
mov edx, 0x80000002
call fcn.0048e050
add esp, 0xc
test eax, eax
je 0x48d974
lea eax, [ebp - 0x44]
push eax
push str.wpid_s
lea ecx, [ebp - 0xcc8]
push 0x200
push ecx
call fcn.00402830
add esp, 0x10
mov edx, 0x400
lea eax, [ebp - 0x448]
lea ebx, [ebx]
cmp byte [eax], bl
je 0x48d94a
inc eax
dec edx
jne 0x48d940
jmp 0x48d974
cmp edx, ebx
je 0x48d974
mov ecx, 0x400
sub ecx, edx
lea edx, [ebp - 0xcc8]
mov eax, 0x400
push edx
sub eax, ecx
lea ecx, [ebp + ecx - 0x448]
mov edx, 0x7fffffff
call fcn.00401000
cmp dword [0x4d2b0c], 0x1e
jne 0x48d9d7
push 0x1e
push str.NETACCESS_d
lea eax, [ebp - 0xcc8]
push 0x200
push eax
call fcn.00402830
add esp, 0x10
mov edx, 0x400
lea eax, [ebp - 0x448]
cmp byte [eax], bl
je 0x48d9ad
inc eax
dec edx
jne 0x48d9a3
jmp 0x48d9d7
cmp edx, ebx
je 0x48d9d7
mov ecx, 0x400
sub ecx, edx
lea edx, [ebp - 0xcc8]
mov eax, 0x400
push edx
sub eax, ecx
lea ecx, [ebp + ecx - 0x448]
mov edx, 0x7fffffff
call fcn.00401000
mov edx, 0x400
lea eax, [ebp - 0x8c8]
cmp byte [eax], bl
je 0x48d9ec
inc eax
dec edx
jne 0x48d9e2
jmp 0x48da16
cmp edx, ebx
je 0x48da16
lea eax, [ebp - 0x448]
push eax
mov ecx, 0x400
sub ecx, edx
mov eax, 0x400
sub eax, ecx
lea ecx, [ebp + ecx - 0x8c8]
mov edx, 0x7fffffff
call fcn.00401000
push ebx
push ebx
push ebx
push ebx
push 0x4bbc38
mov dword [ebp - 0x24], ebx
call dword [sym.imp.WININET.dll_InternetOpenA]
mov edi, eax
cmp edi, ebx
je 0x48da51
push ebx
push 0x84000300
push ebx
push ebx
lea ecx, [ebp - 0x8c8]
push ecx
push edi
call dword [sym.imp.WININET.dll_InternetOpenUrlA]
mov esi, eax
cmp esi, ebx
jne 0x48da64
push edi
call dword [sym.imp.WININET.dll_InternetCloseHandle]
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004a01d6
mov esp, ebp
pop ebp
ret
lea edx, [ebp - 0xccc]
push edx
push 2
lea eax, [ebp - 0x24]
push eax
push esi
call dword [sym.imp.WININET.dll_InternetReadFile]
mov ecx, dword [ebp - 0xccc]
push edi
mov edi, dword [sym.imp.WININET.dll_InternetCloseHandle]
mov byte [ebp + ecx - 0x24], bl
call edi
push esi
call edi
mov al, byte [ebp - 0x24]
cmp al, 0x33
jne 0x48daab
mov eax, 3
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004a01d6
mov esp, ebp
pop ebp
ret
cmp al, 0x32
jne 0x48dac5
mov eax, 2
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004a01d6
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 4]
xor edx, edx
cmp al, 0x31
sete dl
pop edi
pop esi
xor ecx, ebp
pop ebx
mov eax, edx
call fcn.004a01d6
mov esp, ebp
pop ebp
ret