Function at 0x440e10
Capabilities:
Check http status code
Connect to http server
Create http request
Parse url
Read data from internet
Receive data
Resolve function by parsing pe exports
Send data
Send http request

Disassembly:
push 0xffffffffffffffff
push 0x603f7b
mov eax, dword fs:[0]
push eax
sub esp, 0xe4
mov eax, dword [0x711ab8]
xor eax, esp
mov dword [esp + 0xe0], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x711ab8]
xor eax, esp
push eax
lea eax, [esp + 0xf8]
mov dword fs:[0], eax
xor ebx, ebx
mov dword [esp + 0x100], ebx
mov ebp, dword [esp + 0x108]
mov eax, dword [esp + 0x110]
mov esi, dword [esp + 0x10c]
mov edi, dword [esp + 0x114]
push ebp
mov dword [esp + 0x20], ebp
mov dword [esp + 0x24], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x28], edx
mov dword [esp + 0x30], ebx
call fcn.0040b700
mov dword [esp + 0x100], ebx
push 0x3c
lea eax, [esp + 0x4c]
push 0
mov ebx, 1
push eax
mov dword [esp + 0x38], ebx
call fcn.005c8fb0
or eax, 0xffffffff
add esp, 0xc
mov dword [esp + 0x5c], eax
mov dword [esp + 0x50], eax
mov dword [esp + 0x78], eax
mov dword [esp + 0x80], eax
mov eax, dword [esi]
lea edx, [esp + 0x48]
push edx
mov dword [esp + 0x4c], 0x3c
mov ecx, dword [eax - 0xc]
push 0
push ecx
push eax
call dword [sym.imp.WININET.dll_InternetCrackUrlW]
test eax, eax
je 0x4414a1
push 0
push 0
push 0
push ebx
push 0x6ca128
call dword [sym.imp.WININET.dll_InternetOpenW]
mov dword [esp + 0x28], eax
mov dword [esp + 0x3c], eax
mov dword [esp + 0x100], ebx
test eax, eax
je 0x44148e
mov ecx, dword [esp + 0x5c]
xor eax, eax
mov word [esp + 0xc0], ax
mov eax, dword [esp + 0x58]
push ecx
lea esi, [esp + 0xc0]
mov dword [esp + 0xd8], 7
mov dword [esp + 0xd4], 0
call fcn.0040d7f0
mov byte [esp + 0x100], 2
cmp dword [esp + 0xd4], 8
mov eax, dword [esp + 0xc0]
jae 0x440f63
lea eax, [esp + 0xc0]
mov edx, dword [esp + 0x54]
push 0
push 0
sub edx, 4
push 3
neg edx
push 0
sbb edx, edx
push 0
and edx, 0xfffffe95
add edx, 0x1bb
push edx
push eax
mov eax, dword [esp + 0x44]
push eax
call dword [sym.imp.WININET.dll_InternetConnectW]
mov ebp, eax
mov dword [esp + 0x30], ebp
mov dword [esp + 0x40], ebp
mov byte [esp + 0x100], 3
test ebp, ebp
je 0x441431
cmp dword [esp + 0x54], 4
mov ebx, 0x400f100
jne 0x440fbc
mov ebx, 0x480f100
mov edx, dword [esp + 0x80]
mov eax, dword [esp + 0x7c]
xor ecx, ecx
push edx
lea esi, [esp + 0x88]
mov dword [esp + 0xa0], 7
mov dword [esp + 0x9c], 0
mov word [esp + 0x8c], cx
call fcn.0040d7f0
mov byte [esp + 0x100], 4
mov ecx, dword [esp + 0x78]
xor eax, eax
mov word [esp + 0xa4], ax
mov eax, dword [esp + 0x74]
push ecx
lea esi, [esp + 0xa4]
mov dword [esp + 0xbc], 7
mov dword [esp + 0xb8], 0
call fcn.0040d7f0
mov byte [esp + 0x100], 5
lea edx, [esp + 0x84]
push edx
mov eax, esi
push eax
lea ecx, [esp + 0xe0]
push ecx
call fcn.004137b0
add esp, 0xc
mov byte [esp + 0x100], 7
mov esi, 8
cmp dword [esp + 0xb8], esi
jb 0x44107a
mov edx, dword [esp + 0xa4]
push edx
call fcn.005c396f
add esp, 4
xor eax, eax
mov dword [esp + 0xb8], 7
mov dword [esp + 0xb4], 0
mov word [esp + 0xa4], ax
mov byte [esp + 0x100], 8
cmp dword [esp + 0x9c], esi
jb 0x4410bb
mov ecx, dword [esp + 0x88]
push ecx
call fcn.005c396f
add esp, 4
mov eax, dword [esp + 0xdc]
xor edx, edx
mov dword [esp + 0x9c], 7
mov dword [esp + 0x98], 0
mov word [esp + 0x88], dx
cmp dword [esp + 0xf0], esi
jae 0x4410f2
lea eax, [esp + 0xdc]
push 0
push ebx
push 0
push 0
push 0
push eax
push edi
push ebp
call dword [sym.imp.WININET.dll_HttpOpenRequestW]
mov ebp, eax
mov dword [esp + 0x44], ebp
mov byte [esp + 0x100], 9
test ebp, ebp
je 0x4413d8
mov edi, dword [esp + 0x18]
lea esi, [esp + 0x34]
call fcn.004bd0f0
mov esi, dword [esp + 0x34]
mov edi, dword [esp + 0x38]
nop
mov eax, dword [esp + 0x18]
mov ebx, dword [eax + 0x10]
mov ecx, eax
cmp dword [ecx + 0xc], ebx
jbe 0x441143
call fcn.005c475a
mov edx, dword [esp + 0x18]
mov eax, dword [edx]
test esi, esi
je 0x441151
cmp esi, eax
je 0x441156
call fcn.005c475a
cmp edi, ebx
je 0x4411c2
test esi, esi
jne 0x4411b6
call fcn.005c475a
xor eax, eax
cmp edi, dword [eax + 0x10]
jb 0x44116f
call fcn.005c475a
mov eax, dword [edi]
mov ebx, dword [eax - 0xc]
test esi, esi
jne 0x4411ba
call fcn.005c475a
xor eax, eax
cmp edi, dword [eax + 0x10]
jb 0x441189
call fcn.005c475a
mov ecx, dword [edi]
push 0xa0000000
push ebx
push ecx
push ebp
call dword [sym.imp.WININET.dll_HttpAddRequestHeadersW]
test esi, esi
jne 0x4411be
call fcn.005c475a
xor eax, eax
cmp edi, dword [eax + 0x10]
jb 0x4411ae
call fcn.005c475a
add edi, 4
jmp 0x441130
mov eax, dword [esi]
jmp 0x441165
mov eax, dword [esi]
jmp 0x44117f
mov eax, dword [esi]
jmp 0x4411a4
mov edx, dword [esp + 0x24]
mov ecx, dword [edx]
mov edx, dword [ecx - 0xc]
mov eax, edx
neg eax
push edx
sbb eax, eax
and eax, ecx
push eax
push 0
push 0
push ebp
call dword [sym.imp.WININET.dll_HttpSendRequestW]
test eax, eax
je 0x4413d8
lea eax, [esp + 0x24]
push 0x13
push eax
mov dword [esp + 0x2c], ebp
call fcn.004ab4a0
mov ecx, dword [esp + 0x28]
add esp, 8
mov dword [ecx], eax
cmp eax, 0xc8
jne 0x4413d8
lea edx, [esp + 0x20]
push 5
push edx
mov dword [esp + 0x28], ebp
call fcn.004ab4a0
mov edi, eax
add esp, 8
test edi, edi
jle 0x4412e1
lea eax, [esp + 0x84]
call fcn.0041e470
mov byte [esp + 0x100], 0xa
mov ecx, dword [esp + 0x98]
xor esi, esi
mov eax, 0x400
cmp ecx, 0x400
ja 0x441255
mov eax, ecx
mov ebx, dword [sym.imp.WININET.dll_InternetReadFile]
mov dword [esp + 0x18], eax
nop
cmp esi, ecx
jbe 0x44126d
call fcn.005c475a
mov eax, dword [esp + 0x18]
cmp dword [esp + 0x9c], 0x10
mov ecx, dword [esp + 0x88]
jae 0x441285
lea ecx, [esp + 0x88]
lea edx, [esp + 0x18]
push edx
push eax
add ecx, esi
push ecx
push ebp
call ebx
test eax, eax
je 0x4412a8
mov eax, dword [esp + 0x18]
test eax, eax
je 0x4412a8
mov ecx, dword [esp + 0x98]
add esi, eax
jmp 0x441260
cmp esi, edi
jne 0x4412cd
cmp dword [esp + 0x9c], 0x10
mov edx, dword [esp + 0x88]
jae 0x4412c4
lea edx, [esp + 0x88]
mov ebx, dword [esp + 0x1c]
call fcn.0040b870
mov byte [esp + 0x100], 9
lea ecx, [esp + 0x84]
jmp 0x4413d3
cmp edi, 0xffffffff
jne 0x4413d8
xor ebx, ebx
mov dword [esp + 0xb8], 0xf
mov dword [esp + 0xb4], ebx
mov byte [esp + 0xa4], bl
mov byte [esp + 0x100], 0xb
mov edi, 0x1000
lea eax, [esp + 0x84]
call fcn.0041e470
mov byte [esp + 0x100], 0xc
mov esi, dword [sym.imp.WININET.dll_InternetReadFile]
mov eax, dword [esp + 0x88]
mov edi, 0x10
mov dword [esp + 0x18], ebx
cmp dword [esp + 0x9c], edi
jae 0x44134c
lea eax, [esp + 0x88]
mov edx, dword [esp + 0x98]
lea ecx, [esp + 0x18]
push ecx
push edx
push eax
push ebp
call esi
test eax, eax
je 0x441390
mov ecx, dword [esp + 0x18]
cmp ecx, ebx
je 0x441390
mov eax, dword [esp + 0x88]
cmp dword [esp + 0x9c], edi
jae 0x441380
lea eax, [esp + 0x88]
push ecx
push eax
lea ecx, [esp + 0xa8]
call fcn.0040f5b0
jmp 0x44132c
mov edx, dword [esp + 0xa4]
cmp dword [esp + 0xb8], edi
jae 0x4413a7
lea edx, [esp + 0xa4]
mov ebx, dword [esp + 0x1c]
call fcn.0040b870
mov byte [esp + 0x100], 0xb
lea ecx, [esp + 0x84]
call fcn.0040ac20
mov byte [esp + 0x100], 9
lea ecx, [esp + 0xa0]
call fcn.0040ac20
mov byte [esp + 0x100], 8
test ebp, ebp
je 0x4413eb
push ebp
call dword [sym.imp.WININET.dll_InternetCloseHandle]
mov byte [esp + 0x100], 3
cmp dword [esp + 0xf0], 8
jb 0x44140d
mov eax, dword [esp + 0xdc]
push eax
call fcn.005c396f
add esp, 4
mov ebp, dword [esp + 0x30]
xor ecx, ecx
mov dword [esp + 0xf0], 7
mov dword [esp + 0xec], 0
mov word [esp + 0xdc], cx
mov byte [esp + 0x100], 2
test ebp, ebp
je 0x441444
push ebp
call dword [sym.imp.WININET.dll_InternetCloseHandle]
mov byte [esp + 0x100], 1
cmp dword [esp + 0xd4], 8
jb 0x441466
mov edx, dword [esp + 0xc0]
push edx
call fcn.005c396f
add esp, 4
mov ebp, dword [esp + 0x1c]
xor eax, eax
mov word [esp + 0xc0], ax
mov eax, dword [esp + 0x28]
mov dword [esp + 0xd4], 7
mov dword [esp + 0xd0], 0
mov byte [esp + 0x100], 0
test eax, eax
je 0x4414a1
push eax
call dword [sym.imp.WININET.dll_InternetCloseHandle]
mov eax, ebp
mov ecx, dword [esp + 0xf8]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0xe0]
xor ecx, esp
call fcn.005c397a
add esp, 0xf0
ret