Function at 0x4270e0
Capabilities:
Check http status code
Connect to http server
Parse url
Send data
Send http request

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x1068
call fcn.0042ac10
mov eax, dword [0x43c01c]
xor eax, ebp
mov dword [ebp - 8], eax
mov dword [ebp - 0x1068], ecx
mov eax, dword [ebp - 0x1068]
cmp dword [eax], 0
jne 0x42710f
xor eax, eax
jmp 0x4274ee
mov ecx, dword [ebp - 0x1068]
mov edx, dword [ecx + 0xc]
push edx
call dword [sym.imp.KERNEL32.dll_ResetEvent]
mov eax, dword [ebp - 0x1068]
mov ecx, dword [eax + 0x10]
push ecx
call dword [sym.imp.KERNEL32.dll_ResetEvent]
mov edx, dword [ebp - 0x1068]
mov eax, dword [edx + 0x14]
push eax
call dword [sym.imp.KERNEL32.dll_ResetEvent]
push 0x3c
push 0
lea ecx, [ebp - 0x104c]
push ecx
call sub.MSVCR80.dll_memset
add esp, 0xc
mov dword [ebp - 0x104c], 0x3c
mov dword [ebp - 0x1038], 1
mov dword [ebp - 0x101c], 1
lea edx, [ebp - 0x104c]
push edx
push 0
push 0
mov ecx, dword [ebp + 8]
call dword [sym.imp.MSVCP80.dll_public:_wchar_t_const____thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::c_str_void_const]
push eax
call dword [sym.imp.WININET.dll_InternetCrackUrlW]
mov dword [ebp - 0x100c], eax
cmp dword [ebp - 0x100c], 0
jne 0x4271a1
xor eax, eax
jmp 0x4274ee
cmp dword [ebp - 0x1038], 0x400
jae 0x4271b9
cmp dword [ebp - 0x101c], 0x400
jb 0x4271c0
xor eax, eax
jmp 0x4274ee
mov eax, dword [ebp - 0x1068]
cmp dword [eax], 0
jne 0x4271d2
xor eax, eax
jmp 0x4274ee
mov word [ebp - 0x1008], 0
push 0x7fe
push 0
lea ecx, [ebp - 0x1006]
push ecx
call sub.MSVCR80.dll_memset
add esp, 0xc
mov edx, dword [ebp - 0x1038]
push edx
mov eax, dword [ebp - 0x103c]
push eax
lea ecx, [ebp - 0x1008]
push ecx
call fcn.0041db40
add esp, 0xc
mov edx, dword [ebp - 0x1038]
mov word [ebp + edx*2 - 0x1008], 0
mov word [ebp - 0x808], 0
push 0x7fe
push 0
lea eax, [ebp - 0x806]
push eax
call sub.MSVCR80.dll_memset
add esp, 0xc
mov ecx, dword [ebp - 0x101c]
push ecx
mov edx, dword [ebp - 0x1020]
push edx
lea eax, [ebp - 0x808]
push eax
call fcn.0041db40
add esp, 0xc
mov ecx, dword [ebp - 0x101c]
mov word [ebp + ecx*2 - 0x808], 0
mov dx, word [ebp - 0x1034]
mov word [ebp - 0x1058], dx
push 0
mov eax, dword [ebp - 0x1068]
add eax, 8
push eax
call fcn.0041db60
mov dword [ebp - 0x1054], 0
mov ecx, dword [ebp - 0x1068]
push ecx
push 0
push 3
push 0
push 0
push 0
lea edx, [ebp - 0x1008]
push edx
mov eax, dword [ebp - 0x1068]
mov ecx, dword [eax]
push ecx
call dword [sym.imp.WININET.dll_InternetConnectW]
mov dword [ebp - 0x1054], eax
cmp dword [ebp - 0x1054], 0
jne 0x427308
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x105c], eax
cmp dword [ebp - 0x105c], 0x3e5
jne 0x4272fc
mov ecx, dword [ebp - 0x1068]
call fcn.00426d60
test eax, eax
je 0x4272fa
jmp 0x4274e1
jmp 0x427306
jmp 0x4274e1
jmp 0x42731e
mov edx, dword [ebp - 0x1054]
push edx
mov eax, dword [ebp - 0x1068]
add eax, 8
push eax
call fcn.0041db60
mov dword [ebp - 0x1010], 0
mov ecx, dword [ebp - 0x1068]
push ecx
push 0x4000000
push 0
push 0
push str.HTTP_1.0
lea edx, [ebp - 0x808]
push edx
push 0x433698
mov eax, dword [ebp - 0x1068]
mov ecx, dword [eax + 8]
push ecx
call dword [sym.imp.WININET.dll_HttpOpenRequestW]
mov dword [ebp - 0x1010], eax
cmp dword [ebp - 0x1010], 0
jne 0x4273a7
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1060], eax
cmp dword [ebp - 0x1060], 0x3e5
jne 0x42739b
mov ecx, dword [ebp - 0x1068]
call fcn.00426d60
test eax, eax
je 0x427399
jmp 0x4274e1
jmp 0x4273a5
jmp 0x4274e1
jmp 0x4273bd
mov edx, dword [ebp - 0x1010]
push edx
mov eax, dword [ebp - 0x1068]
add eax, 4
push eax
call fcn.0041db60
cmp dword [ebp + 0xc], 0
je 0x4273e5
mov ecx, dword [ebp + 0xc]
movzx edx, word [ecx]
test edx, edx
je 0x4273e5
push 0xa0000000
push 0xffffffffffffffff
mov eax, dword [ebp + 0xc]
push eax
mov ecx, dword [ebp - 0x1010]
push ecx
call dword [sym.imp.WININET.dll_HttpAddRequestHeadersW]
mov edx, dword [ebp - 0x1068]
mov eax, dword [edx + 0xc]
push eax
call dword [sym.imp.KERNEL32.dll_ResetEvent]
push 0
push 0
push 0
push 0
mov ecx, dword [ebp - 0x1068]
mov edx, dword [ecx + 4]
push edx
call dword [sym.imp.WININET.dll_HttpSendRequestW]
test eax, eax
jne 0x42744e
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1064], eax
cmp dword [ebp - 0x1064], 0x3e5
jne 0x427444
mov ecx, dword [ebp - 0x1068]
call fcn.00426d60
test eax, eax
je 0x427442
jmp 0x4274e1
jmp 0x42744e
jmp 0x4274e1
mov dword [ebp - 4], 4
mov dword [ebp - 0x1050], 0
push 0
lea eax, [ebp - 4]
push eax
lea ecx, [ebp - 0x1050]
push ecx
push 0x20000013
mov edx, dword [ebp - 0x1068]
mov eax, dword [edx + 4]
push eax
call dword [sym.imp.WININET.dll_HttpQueryInfoW]
test eax, eax
jne 0x427489
jmp 0x4274e1
mov ecx, dword [ebp - 0x1050]
push ecx
push str.HttpQueryInfo__return_StatusCode_d
mov eax, 0xd1
mov ecx, 0x4336c4
call fcn.0041cc00
add esp, 8
cmp dword [ebp - 0x1050], 0xc8
je 0x4274da
cmp dword [ebp - 0x1050], 0xce
je 0x4274da
push str.DownloadFile_error4
mov eax, 0xd1
mov ecx, 0x4336f0
call fcn.0041cc00
add esp, 4
jmp 0x4274e1
mov eax, 1
jmp 0x4274ee
mov ecx, dword [ebp - 0x1068]
call fcn.00426bd0
xor eax, eax
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.00422218
mov esp, ebp
pop ebp
ret 8