Function at 0x499370
Capabilities:
Connect to http server
Parse url

Disassembly:
push ebp
lea ebp, [esp - 0x254]
sub esp, 0x254
push 0xffffffffffffffff
push 0x63e7b0
mov eax, dword fs:[0]
push eax
sub esp, 0x78
mov eax, dword [0x6eed24]
xor eax, ebp
mov dword [ebp + 0x250], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov eax, dword [ebp + 0x260]
mov esi, dword [ebp + 0x25c]
mov ebx, dword [ebp + 0x264]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp + 0x268]
mov dword [ebp - 0x38], eax
test esi, esi
jne 0x4993d7
mov eax, 0x80070057
jmp 0x4997c7
mov eax, dword [edi]
call dword [eax + 4]
push 0x38
lea eax, [ebp - 0x80]
mov dword [ebp - 0x84], 0x3c
push 0
push eax
call fcn.004b40a0
mov ecx, esi
mov dword [ebp - 0x70], 1
add esp, 0xc
mov dword [ebp - 0x5c], 1
mov dword [ebp - 0x7c], 1
mov dword [ebp - 0x54], 1
mov dword [ebp - 0x64], 1
lea edx, [ecx + 2]
mov edi, edi
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x499420
lea eax, [ebp - 0x84]
sub ecx, edx
push eax
push 0
sar ecx, 1
push ecx
push esi
call dword [sym.imp.WININET.dll_InternetCrackUrlW]
test eax, eax
jne 0x499468
call dword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
js 0x4997c7
jne 0x49945b
xor eax, eax
jmp 0x4997c7
movzx eax, ax
or eax, 0x83ff0000
jmp 0x4997c7
mov eax, dword [ebp - 0x78]
cmp eax, 3
je 0x499484
cmp eax, 4
je 0x499484
cmp eax, 1
je 0x499484
mov eax, 0x80004005
jmp 0x4997c7
push dword [ebp - 0x70]
xor esi, esi
lea ecx, [ebp - 0x34]
push dword [ebp - 0x74]
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x30], esi
mov dword [ebp - 0x2c], esi
call fcn.00403940
push dword [ebp - 0x64]
lea ecx, [ebp - 0x28]
mov dword [ebp - 4], esi
push dword [ebp - 0x68]
mov dword [ebp - 0x28], esi
mov dword [ebp - 0x24], esi
mov dword [ebp - 0x20], esi
call fcn.00403940
push dword [ebp - 0x5c]
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 1
push dword [ebp - 0x60]
mov dword [ebp - 0x1c], esi
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x14], esi
call fcn.00403940
mov byte [ebp - 4], 2
cmp dword [ebp - 0x24], esi
jne 0x4994ed
mov eax, dword [ebp - 0x10]
test eax, eax
je 0x4994ed
push 0xffffffffffffffff
push eax
lea ecx, [ebp - 0x28]
call fcn.00403940
cmp dword [ebp - 0x18], 0
jne 0x499502
test ebx, ebx
je 0x499502
push 0xffffffffffffffff
push ebx
lea ecx, [ebp - 0x1c]
call fcn.00403940
push 0x250
lea eax, [ebp]
push 0
push eax
call fcn.004b40a0
mov ebx, dword [ebp - 0x38]
lea eax, [ebp + 0x2c]
add esp, 0xc
mov ecx, ebx
push 0xffffffffffffffff
push eax
call fcn.00403940
mov eax, dword [ebp + 0x20]
mov ecx, dword [ebp + 0x1c]
mov dword [ebx + 0x28], eax
lea eax, [ebp + 0x2c]
push 0xffffffffffffffff
mov dword [ebx + 0x2c], ecx
mov ecx, ebx
push eax
call fcn.00403940
mov eax, dword [ebp + 4]
mov ecx, dword [ebp - 0x78]
mov edx, dword [ebp - 0x1c]
mov dword [ebx + 0x10], eax
mov eax, dword [ebp + 8]
mov dword [ebx + 0x14], eax
mov eax, dword [ebp + 0xc]
mov dword [ebx + 0x18], eax
mov eax, dword [ebp + 0x10]
mov dword [ebx + 0x1c], eax
mov eax, dword [ebp + 0x14]
mov dword [ebx + 0x20], eax
mov eax, dword [ebp + 0x18]
mov dword [ebx + 0x24], eax
mov eax, dword [ebp]
mov dword [ebx + 0xc], eax
mov eax, dword [ebp - 0x34]
mov ebx, dword [ebp - 0x28]
cmp ecx, 1
jne 0x4996a1
lea esi, [edi + 0xc]
mov dword [ebp - 0x10], esi
test edx, edx
jne 0x49958c
mov edx, 0x649aa0
mov ecx, 0x649aa0
test ebx, ebx
je 0x499597
mov ecx, ebx
test eax, eax
jne 0x4995a0
mov eax, 0x649aa0
push esi
push 0x8000000
push 1
push edx
push ecx
push dword [ebp - 0x6c]
push eax
push dword [edi + 4]
call dword [sym.imp.WININET.dll_InternetConnectW]
push eax
mov ecx, esi
call fcn.0047bcd0
test eax, eax
jne 0x4995ff
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
test esi, esi
js 0x4995e2
jne 0x4995d5
xor esi, esi
jmp 0x4995de
movzx esi, si
or esi, 0x83ff0000
test esi, esi
jns 0x499601
lea ecx, [ebp - 0x1c]
call fcn.00403130
lea ecx, [ebp - 0x28]
call fcn.00403130
lea ecx, [ebp - 0x34]
call fcn.00403130
jmp 0x4997c5
xor esi, esi
push dword [ebp - 0x54]
lea ecx, [ebp - 0x48]
mov dword [ebp - 0x48], 0
push dword [ebp - 0x58]
mov dword [ebp - 0x44], 0
mov dword [ebp - 0x40], 0
call fcn.00403940
lea eax, [edi + 0x10]
mov byte [ebp - 4], 3
mov edi, dword [ebp - 0x48]
mov dword [ebp - 0x3c], eax
mov eax, 0x649aa0
test edi, edi
je 0x49963c
mov eax, edi
push 0
push 0
lea ecx, [ebp]
push ecx
push eax
mov eax, dword [ebp - 0x10]
push dword [eax]
call dword [sym.imp.WININET.dll_FtpFindFirstFileW]
mov ecx, dword [ebp - 0x3c]
push eax
call fcn.0047bcd0
test eax, eax
jne 0x499690
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
test esi, esi
js 0x499694
jne 0x499687
xor esi, esi
mov byte [ebp - 4], 4
test edi, edi
je 0x49967e
push edi
call fcn.00446420
add esp, 4
mov byte [ebp - 4], 2
jmp 0x499736
movzx esi, si
or esi, 0x83ff0000
test esi, esi
jns 0x49966d
lea ecx, [ebp - 0x48]
call fcn.00403130
jmp 0x4995e2
cmp ecx, 3
je 0x4996af
cmp ecx, 4
jne 0x499736
lea esi, [edi + 0xc]
test edx, edx
jne 0x4996bb
mov edx, 0x649aa0
mov ecx, 0x649aa0
test ebx, ebx
je 0x4996c6
mov ecx, ebx
test eax, eax
jne 0x4996cf
mov eax, 0x649aa0
push esi
push 0
push 3
push edx
push ecx
push dword [ebp - 0x6c]
push eax
push dword [edi + 4]
call dword [sym.imp.WININET.dll_InternetConnectW]
push eax
mov ecx, esi
call fcn.0047bcd0
test eax, eax
jne 0x499719
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
test esi, esi
js 0x4995e2
jne 0x499705
xor esi, esi
jmp 0x49970e
movzx esi, si
or esi, 0x83ff0000
test esi, esi
js 0x4995e2
lea esi, [edi + 0xc]
lea eax, [ebp]
mov ecx, edi
push eax
lea eax, [ebp - 0x84]
push eax
push esi
call fcn.00498a50
mov esi, eax
test esi, esi
js 0x4995e2
mov edi, dword [ebp - 0x38]
lea eax, [ebp + 0x2c]
push 0xffffffffffffffff
push eax
mov ecx, edi
call fcn.00403940
mov eax, dword [ebp + 0x20]
mov ecx, dword [ebp + 0x1c]
mov dword [edi + 0x28], eax
lea eax, [ebp + 0x2c]
push 0xffffffffffffffff
mov dword [edi + 0x2c], ecx
mov ecx, edi
push eax
call fcn.00403940
mov eax, dword [ebp + 4]
mov dword [edi + 0x10], eax
mov eax, dword [ebp + 8]
mov dword [edi + 0x14], eax
mov eax, dword [ebp + 0xc]
mov dword [edi + 0x18], eax
mov eax, dword [ebp + 0x10]
mov dword [edi + 0x1c], eax
mov eax, dword [ebp + 0x14]
mov dword [edi + 0x20], eax
mov eax, dword [ebp + 0x18]
mov dword [edi + 0x24], eax
mov eax, dword [ebp]
mov dword [edi + 0xc], eax
mov eax, dword [ebp - 0x1c]
mov byte [ebp - 4], 5
test eax, eax
je 0x49979d
push eax
call fcn.00446420
add esp, 4
mov byte [ebp - 4], 6
test ebx, ebx
je 0x4997ae
push ebx
call fcn.00446420
add esp, 4
mov eax, dword [ebp - 0x34]
mov dword [ebp - 4], 7
test eax, eax
je 0x4997c5
push eax
call fcn.00446420
add esp, 4
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp + 0x250]
xor ecx, ebp
call fcn.004b2558
lea esp, [ebp + 0x254]
pop ebp
ret 0x10