Function at 0x10002a60
Capabilities:
Check http status code
Connect to http server
Create http request
Make an http request with a cookie
Print debug messages
Read data from internet
Receive data
Send data
Send http request

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x508
mov eax, dword [0x10010038]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 8]
push ebx
push esi
push 0x3ff
xor esi, esi
lea edx, [ebp - 0x4db]
push esi
push edx
mov dword [ebp - 0x4ec], eax
mov dword [ebp - 0x4e0], ecx
mov dword [ebp - 0x4f0], 0x883000
mov byte [ebp - 0x4dc], 0
call fcn.100092e0
push 0xd6
lea ecx, [ebp - 0xda]
xor eax, eax
push esi
push ecx
mov word [ebp - 0xdc], ax
call fcn.100092e0
add esp, 0x18
push esi
push esi
push esi
push esi
push 0x10010ed8
mov dword [ebp - 0x4e4], esi
mov dword [ebp - 0x4e8], esi
mov dword [ebp - 0x504], esi
mov dword [ebp - 0x4f8], 0x15f90
call dword [sym.imp.WININET.dll_InternetOpenW]
mov ebx, eax
mov dword [ebp - 0x4f4], ebx
cmp ebx, esi
jne 0x10002b11
pop esi
or eax, 0xffffffff
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100032e4
mov esp, ebp
pop ebp
ret
push edi
mov edi, dword [sym.imp.WININET.dll_InternetSetOptionW]
push 4
lea edx, [ebp - 0x4f8]
push edx
push 2
push ebx
call edi
mov eax, 6
jmp 0x10002b30
push 4
lea ecx, [ebp - 0x4f8]
push ecx
push eax
push ebx
mov dword [ebp - 0x4f8], 0x15f90
call edi
mov eax, dword [esi*4 + 0x1000e5e0]
inc esi
test eax, eax
jne 0x10002b30
mov edx, dword [0x10012350]
push eax
push eax
push 3
push eax
push eax
push 0x1bb
push edx
push ebx
call dword [sym.imp.WININET.dll_InternetConnectW]
mov esi, eax
mov dword [ebp - 0x500], esi
test esi, esi
jne 0x10002b93
push ebx
call dword [sym.imp.WININET.dll_InternetCloseHandle]
pop edi
pop esi
or eax, 0xffffffff
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100032e4
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0x4f0]
mov ecx, dword [0x10012354]
push 0
push eax
push 0x1000e570
push 0
push str.HTTP_1.1
push ecx
push str.POST
push esi
call dword [sym.imp.WININET.dll_HttpOpenRequestW]
mov ebx, eax
test ebx, ebx
jne 0x10002be7
push esi
mov esi, dword [sym.imp.WININET.dll_InternetCloseHandle]
call esi
mov edx, dword [ebp - 0x4f4]
push edx
call esi
pop edi
pop esi
or eax, 0xffffffff
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100032e4
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0x4ec]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x10002bf0
or dword [ebp - 0x4f0], 0x100
sub eax, edx
push 4
mov dword [ebp - 0x4e4], eax
lea eax, [ebp - 0x4f0]
push eax
push 0x1f
push ebx
call edi
xor eax, eax
lea esp, [esp]
movzx ecx, word [eax + str.Content_Type:_application_x_www_form_urlencoded_r_n]
mov word [ebp + eax - 0xdc], cx
add eax, 2
test cx, cx
jne 0x10002c20
cmp word [0x100122e0], cx
je 0x10002c7c
mov eax, 0x100122e0
mov edx, eax
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x10002c47
lea edi, [ebp - 0xdc]
sub eax, edx
add edi, 0xfffffffe
lea ecx, [ecx]
mov cx, word [edi + 2]
add edi, 2
test cx, cx
jne 0x10002c60
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [ebp - 0xdc]
push ecx
call dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
lea eax, [ebp - 0xdc]
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x10002c92
mov ecx, dword [ebp - 0x4ec]
sub eax, edx
mov edx, dword [ebp - 0x4e4]
push edx
push ecx
sar eax, 1
push eax
lea edx, [ebp - 0xdc]
push edx
push ebx
call dword [sym.imp.WININET.dll_HttpSendRequestW]
mov edi, dword [sym.imp.WININET.dll_HttpQueryInfoW]
push 0
mov esi, eax
lea eax, [ebp - 0x508]
push eax
lea ecx, [ebp - 0x4fc]
push ecx
push 0x20000013
push ebx
mov dword [ebp - 0x4fc], 0
mov dword [ebp - 0x508], 4
call edi
test esi, esi
jne 0x10002d4f
mov esi, dword [sym.imp.WININET.dll_InternetCloseHandle]
push ebx
call esi
mov edx, dword [ebp - 0x500]
push edx
call esi
mov eax, dword [ebp - 0x4f4]
push eax
call esi
cmp dword [ebp - 0x4fc], 0xc8
jne 0x10002bd3
push 4
call fcn.100032f3
mov ecx, dword [ebp - 0x4e0]
add esp, 4
pop edi
mov dword [ecx], eax
pop esi
mov dword [eax], 0
mov eax, 1
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100032e4
mov esp, ebp
pop ebp
ret
cmp dword [ebp - 0x4fc], 0xc8
jne 0x10002f03
cmp word [0x100122e0], 0
jne 0x10002e29
push 0
lea edx, [ebp - 0x4ec]
push edx
lea eax, [ebp - 0xdc]
push eax
push 0x2b
push ebx
mov dword [ebp - 0x4ec], 0xd6
call edi
test eax, eax
je 0x10002e29
cmp dword [ebp - 0x4ec], 0x54
jne 0x10002e18
mov ecx, dword [str.Cookie:]
mov eax, dword [0x1000e618]
mov edx, dword [0x1000e614]
mov dword [0x100122e0], ecx
mov ecx, dword [0x1000e61c]
mov dword [0x100122e8], eax
lea eax, [ebp - 0xdc]
mov dword [0x100122e4], edx
mov dword [0x100122ec], ecx
mov edx, eax
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x10002dd3
mov edi, 0x100122e0
sub eax, edx
add edi, 0xfffffffe
jmp 0x10002df0
mov cx, word [edi + 2]
add edi, 2
test cx, cx
jne 0x10002df0
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov dword [0x10012344], 0xa000d
jmp 0x10002e29
push 0x70
push 0
push 0x100122e0
call fcn.100092e0
add esp, 0xc
mov esi, 0x400
push esi
mov dword [ebp - 0x4e4], 0
call fcn.100032f3
mov ecx, dword [ebp - 0x4e0]
mov edi, dword [sym.imp.WININET.dll_InternetReadFile]
add esp, 4
lea edx, [ebp - 0x4e4]
push edx
mov dword [ecx], eax
push esi
lea eax, [ebp - 0x4dc]
push eax
push ebx
call edi
test eax, eax
je 0x10002f1b
lea esp, [esp]
mov eax, dword [ebp - 0x4e4]
test eax, eax
je 0x10002f1b
mov ecx, dword [ebp - 0x4e8]
add ecx, eax
lea edx, [esi - 0x400]
mov dword [ebp - 0x4e8], ecx
cmp ecx, edx
jbe 0x10002eb8
mov eax, dword [ebp - 0x4e0]
mov ecx, dword [eax]
add esi, esi
push esi
push ecx
call fcn.1000353e
mov edx, dword [ebp - 0x4e0]
mov dword [edx], eax
mov eax, dword [ebp - 0x4e4]
add esp, 8
mov ecx, dword [ebp - 0x4e0]
mov edx, dword [ecx]
add edx, dword [ebp - 0x504]
push eax
lea eax, [ebp - 0x4dc]
push eax
push edx
call fcn.100099a0
mov eax, dword [ebp - 0x4e8]
add esp, 0xc
lea ecx, [ebp - 0x4e4]
push ecx
push 0x400
lea edx, [ebp - 0x4dc]
push edx
push ebx
mov dword [ebp - 0x504], eax
call edi
test eax, eax
jne 0x10002e70
jmp 0x10002f1b
push 4
call fcn.100032f3
mov ecx, dword [ebp - 0x4e0]
mov dword [ecx], eax
add esp, 4
mov dword [eax], 0
mov esi, dword [sym.imp.WININET.dll_InternetCloseHandle]
push ebx
call esi
mov edx, dword [ebp - 0x500]
push edx
call esi
mov eax, dword [ebp - 0x4f4]
push eax
call esi
cmp dword [ebp - 0x4e8], 4
jne 0x10002f65
mov esi, dword [ebp - 0x4e0]
mov eax, dword [esi]
cmp dword [eax], 0
jne 0x10002f65
push eax
call fcn.10003432
add esp, 4
mov dword [esi], 0
mov dword [ebp - 0x4e8], 0xffffffff
mov ecx, dword [ebp - 4]
mov eax, dword [ebp - 0x4e8]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.100032e4
mov esp, ebp
pop ebp
ret