Function at 0x10018730
Capabilities:
Connect to http server
Create http request
Parse url
Read data from internet
Receive data
Send data
Send http request

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1004bd44
mov eax, dword fs:[0]
push eax
mov eax, 0x48d8
call fcn.10040450
mov eax, dword [0x1005d500]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword [ebp + 0x24]
mov dword [ebp - 0x4898], eax
xor edi, edi
mov dword [ebp - 4], edi
cmp dword [ebp + 0x18], edi
jne 0x1001878e
cmp dword [ebp + 0x1c], 0x10
jb 0x10018787
mov ecx, dword [ebp + 8]
push ecx
call fcn.10032d80
add esp, 4
xor al, al
jmp 0x10018cb3
push 0x38
lea edx, [ebp - 0x48d8]
push edi
push edx
mov dword [ebp - 0x48dc], 0x3c
call fcn.10037e20
mov eax, 0x800
mov dword [ebp - 0x48c8], eax
mov dword [ebp - 0x48ac], eax
mov dword [ebp - 0x48bc], eax
mov dword [ebp - 0x48b4], eax
lea eax, [ebp - 0x401c]
mov dword [ebp - 0x48cc], eax
lea eax, [ebp - 0x4820]
add esp, 0xc
cmp dword [ebp + 0x1c], 0x10
lea ecx, [ebp - 0x814]
lea edx, [ebp - 0x3818]
mov dword [ebp - 0x48b8], eax
mov eax, dword [ebp + 8]
mov dword [ebp - 0x48b0], ecx
mov dword [ebp - 0x48c0], edx
jae 0x10018803
lea eax, [ebp + 8]
lea ecx, [ebp - 0x48dc]
push ecx
push edi
push edi
push eax
call dword [sym.imp.WININET.dll_InternetCrackUrlA]
mov edx, dword [ebp - 0x48c8]
mov ecx, dword [ebp - 0x48cc]
mov byte [ecx + edx], 0
mov edx, dword [ebp - 0x48ac]
mov ecx, dword [ebp - 0x48b0]
mov byte [ecx + edx], 0
mov edx, dword [ebp - 0x48bc]
mov ecx, dword [ebp - 0x48c0]
mov byte [ecx + edx], 0
mov ecx, dword [ebp - 0x48b8]
mov edx, dword [ebp - 0x48b4]
mov byte [ecx + edx], 0
mov ecx, 0xf
mov dword [ebp - 0x4844], ecx
mov dword [ebp - 0x4848], edi
mov byte [ebp - 0x4858], 0
mov dword [ebp - 0x4828], ecx
mov dword [ebp - 0x482c], edi
mov byte [ebp - 0x483c], 0
mov dword [ebp - 0x487c], ecx
mov dword [ebp - 0x4880], edi
mov byte [ebp - 0x4890], 0
mov dword [ebp - 0x4860], ecx
mov dword [ebp - 0x4864], edi
mov byte [ebp - 0x4874], 0
mov byte [ebp - 4], 4
cmp eax, edi
je 0x1001894d
mov edx, dword [ebp - 0x48d0]
movzx eax, word [ebp - 0x48c4]
mov dword [ebp - 0x489c], edx
mov edx, dword [ebp - 0x48cc]
mov dword [ebp - 0x4894], eax
mov eax, edx
lea esi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x100188d4
sub eax, esi
push eax
push edx
lea ecx, [ebp - 0x4858]
call fcn.100028b0
mov edx, dword [ebp - 0x48b0]
mov eax, edx
lea esi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x100188f5
sub eax, esi
push eax
push edx
lea ecx, [ebp - 0x483c]
call fcn.100028b0
mov edx, dword [ebp - 0x48c0]
mov eax, edx
lea esi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x10018916
sub eax, esi
push eax
push edx
lea ecx, [ebp - 0x4890]
call fcn.100028b0
mov edx, dword [ebp - 0x48b8]
mov eax, edx
lea esi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x10018937
sub eax, esi
push eax
push edx
lea ecx, [ebp - 0x4874]
call fcn.100028b0
push edi
push edi
push edi
push 1
push edi
mov dword [ebp - 0x48e4], 0x100544dc
mov dword [ebp - 0x48e0], edi
call dword [sym.imp.WININET.dll_InternetOpenA]
mov ebx, eax
cmp ebx, edi
jne 0x10018a41
mov esi, 0x10
cmp dword [ebp - 0x4860], esi
jb 0x1001898f
mov ecx, dword [ebp - 0x4874]
push ecx
call fcn.10032d80
add esp, 4
mov ebx, 0xf
mov dword [ebp - 0x4860], ebx
mov dword [ebp - 0x4864], edi
mov byte [ebp - 0x4874], 0
cmp dword [ebp - 0x487c], esi
jb 0x100189be
mov edx, dword [ebp - 0x4890]
push edx
call fcn.10032d80
add esp, 4
mov dword [ebp - 0x487c], ebx
mov dword [ebp - 0x4880], edi
mov byte [ebp - 0x4890], 0
cmp dword [ebp - 0x4828], esi
jb 0x100189e8
mov eax, dword [ebp - 0x483c]
push eax
call fcn.10032d80
add esp, 4
mov dword [ebp - 0x4828], ebx
mov dword [ebp - 0x482c], edi
mov byte [ebp - 0x483c], 0
cmp dword [ebp - 0x4844], esi
jb 0x10018a12
mov ecx, dword [ebp - 0x4858]
push ecx
call fcn.10032d80
add esp, 4
mov dword [ebp - 0x4844], ebx
mov dword [ebp - 0x4848], edi
mov byte [ebp - 0x4858], 0
cmp dword [ebp + 0x1c], esi
jb 0x10018787
mov edx, dword [ebp + 8]
push edx
call fcn.10032d80
add esp, 4
xor al, al
jmp 0x10018cb3
mov edx, dword [ebp - 0x4874]
mov eax, 0x10
cmp dword [ebp - 0x4860], eax
jae 0x10018a5a
lea edx, [ebp - 0x4874]
mov ecx, dword [ebp - 0x4890]
cmp dword [ebp - 0x487c], eax
jae 0x10018a6e
lea ecx, [ebp - 0x4890]
cmp dword [ebp - 0x4844], eax
mov eax, dword [ebp - 0x4858]
jae 0x10018a82
lea eax, [ebp - 0x4858]
push 1
push edi
push dword [ebp - 0x489c]
push edx
push ecx
mov ecx, dword [ebp - 0x4894]
push ecx
push eax
push ebx
call dword [sym.imp.WININET.dll_InternetConnectA]
mov esi, eax
cmp esi, edi
jne 0x10018b7b
push ebx
call dword [sym.imp.WININET.dll_InternetCloseHandle]
mov esi, 0x10
cmp dword [ebp - 0x4860], esi
jb 0x10018ac9
mov edx, dword [ebp - 0x4874]
push edx
call fcn.10032d80
add esp, 4
mov ebx, 0xf
mov dword [ebp - 0x4860], ebx
mov dword [ebp - 0x4864], edi
mov byte [ebp - 0x4874], 0
cmp dword [ebp - 0x487c], esi
jb 0x10018af8
mov eax, dword [ebp - 0x4890]
push eax
call fcn.10032d80
add esp, 4
mov dword [ebp - 0x487c], ebx
mov dword [ebp - 0x4880], edi
mov byte [ebp - 0x4890], 0
cmp dword [ebp - 0x4828], esi
jb 0x10018b22
mov ecx, dword [ebp - 0x483c]
push ecx
call fcn.10032d80
add esp, 4
mov dword [ebp - 0x4828], ebx
mov dword [ebp - 0x482c], edi
mov byte [ebp - 0x483c], 0
cmp dword [ebp - 0x4844], esi
jb 0x10018b4c
mov edx, dword [ebp - 0x4858]
push edx
call fcn.10032d80
add esp, 4
mov dword [ebp - 0x4844], ebx
mov dword [ebp - 0x4848], edi
mov byte [ebp - 0x4858], 0
cmp dword [ebp + 0x1c], esi
jb 0x10018787
mov eax, dword [ebp + 8]
push eax
call fcn.10032d80
add esp, 4
xor al, al
jmp 0x10018cb3
cmp dword [ebp - 0x4828], 0x10
mov eax, dword [ebp - 0x483c]
jae 0x10018b90
lea eax, [ebp - 0x483c]
push 1
push 0x84480000
lea ecx, [ebp - 0x48e4]
push ecx
push edi
push str.HTTP_1.1
push eax
push str.POST
push esi
call dword [sym.imp.WININET.dll_HttpOpenRequestA]
mov edi, eax
test edi, edi
jne 0x10018bfe
push esi
mov esi, dword [sym.imp.WININET.dll_InternetCloseHandle]
call esi
push ebx
call esi
lea ecx, [ebp - 0x4874]
call fcn.10002e90
lea ecx, [ebp - 0x4890]
call fcn.10002e90
lea ecx, [ebp - 0x483c]
call fcn.10002e90
lea ecx, [ebp - 0x4858]
call fcn.10002e90
lea ecx, [ebp + 8]
call fcn.10002e90
xor al, al
jmp 0x10018cb3
push 0
push 0
push 0
push 0
push edi
call dword [sym.imp.WININET.dll_HttpSendRequestA]
test eax, eax
jne 0x10018c22
push edi
mov edi, dword [sym.imp.WININET.dll_InternetCloseHandle]
call edi
push esi
call edi
push ebx
call edi
jmp 0x10018bc3
push 0x2800
lea edx, [ebp - 0x3014]
push 0
push edx
call fcn.10037e20
add esp, 0xc
lea eax, [ebp - 0x48a0]
push eax
push 0x2800
lea ecx, [ebp - 0x3014]
push ecx
push edi
mov dword [ebp - 0x48a0], 0
call dword [sym.imp.WININET.dll_InternetReadFile]
push edi
mov edi, dword [sym.imp.WININET.dll_InternetCloseHandle]
call edi
push esi
call edi
push ebx
call edi
mov edx, dword [ebp - 0x4898]
push edx
lea edx, [ebp - 0x3014]
call fcn.10002150
lea ecx, [ebp - 0x4874]
call fcn.10002e90
lea ecx, [ebp - 0x4890]
call fcn.10002e90
lea ecx, [ebp - 0x483c]
call fcn.10002e90
lea ecx, [ebp - 0x4858]
call fcn.10002e90
lea ecx, [ebp + 8]
call fcn.10002e90
mov al, 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.10034d1a
mov esp, ebp
pop ebp
ret