Function at 0x40dabd
Capabilities:
Connect to http server
Read data from internet
Receive data
Send data
Send http request

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x488
mov eax, dword [0x466750]
xor eax, ebp
mov dword [ebp - 8], eax
push ebx
push esi
push edi
lea eax, [ebp - 0x454]
mov dword [ebp - 0x440], 0xf
push eax
push dword [ebp + 8]
xor ebx, ebx
mov dword [ebp - 0x444], ebx
mov byte [ebp - 0x454], bl
call fcn.0040ccee
push ebx
push ebx
push 3
pop edi
push edi
push ebx
push ebx
push 0x1f90
push 0x460628
push dword [0x469d14]
call dword [sym.imp.WININET.dll_InternetConnectW]
mov ebx, eax
test ebx, ebx
je 0x40db5d
xor ecx, ecx
mov dword [ebp - 0x47c], str.text_
push ecx
push ecx
lea eax, [ebp - 0x47c]
mov dword [ebp - 0x478], ecx
push eax
push ecx
push str.HTTP_1.1
push 0x460664
push str.POST
push ebx
call dword [sym.imp.WININET.dll_HttpOpenRequestW]
mov esi, eax
test esi, esi
jne 0x40db84
push ebx
call dword [sym.imp.WININET.dll_InternetCloseHandle]
xor eax, eax
mov bl, al
push eax
push 1
lea ecx, [ebp - 0x454]
call fcn.00402927
mov ecx, dword [ebp - 8]
mov al, bl
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.0042ee4e
mov esp, ebp
pop ebp
ret 4
push dword [ebp - 0x444]
cmp dword [ebp - 0x440], 0x10
lea eax, [ebp - 0x454]
cmovae eax, dword [ebp - 0x454]
push eax
xor eax, eax
push eax
push eax
push esi
call dword [sym.imp.WININET.dll_HttpSendRequestW]
test eax, eax
jne 0x40dc33
cmp byte [0x469fc4], al
je 0x40dc33
cmp dword [0x468d94], eax
je 0x40dc33
cmp byte [0x468d5c], 0
mov al, byte [0x468d98]
je 0x40dbd8
cmp al, 4
jae 0x40dc0d
test al, al
jmp 0x40dc0b
cmp al, 4
jae 0x40dbe0
test al, al
jne 0x40dc33
mov ecx, dword [0x468d84]
xor edx, edx
and ecx, 0x80000000
mov eax, edx
or eax, ecx
je 0x40dc33
mov ecx, dword [0x468d8c]
mov eax, ecx
and eax, 0x80000000
cmp edx, dword [0x468d88]
jne 0x40dc33
cmp eax, ecx
jne 0x40dc33
push ecx
push ecx
push 0x454a34
push ecx
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push 0
push ecx
push 0x1f9
push 0x1fba
push ecx
push ecx
call fcn.00401700
add esp, 0x2c
xor eax, eax
push 0x400
push eax
lea eax, [ebp - 0x40c]
push eax
call fcn.00435540
xor eax, eax
mov dword [ebp - 0x428], 0xf
add esp, 0xc
mov dword [ebp - 0x42c], eax
mov byte [ebp - 0x43c], al
mov dword [ebp - 0x474], eax
lea eax, [ebp - 0x474]
push eax
push 0x400
lea eax, [ebp - 0x40c]
push eax
push esi
call dword [sym.imp.WININET.dll_InternetReadFile]
test eax, eax
je 0x40dccf
xor edi, edi
cmp dword [ebp - 0x474], edi
je 0x40dccc
push dword [ebp - 0x474]
lea eax, [ebp - 0x40c]
push eax
lea ecx, [ebp - 0x43c]
call fcn.004098ca
lea eax, [ebp - 0x474]
mov dword [ebp - 0x474], edi
push eax
push 0x400
lea eax, [ebp - 0x40c]
push eax
push esi
call dword [sym.imp.WININET.dll_InternetReadFile]
test eax, eax
jne 0x40dc88
push 3
pop edi
push esi
mov esi, dword [sym.imp.WININET.dll_InternetCloseHandle]
call esi
push ebx
call esi
cmp dword [ebp - 0x42c], edi
jae 0x40dcec
xor eax, eax
mov bl, al
jmp 0x40de84
push 1
xor ebx, ebx
mov byte [ebp - 0x470], 0x20
push ebx
lea eax, [ebp - 0x470]
push eax
lea ecx, [ebp - 0x43c]
call fcn.0040725f
mov esi, eax
cmp esi, dword [ebp - 0x42c]
jae 0x40de28
cmp esi, edi
lea eax, [ebp - 0x46c]
lea ecx, [ebp - 0x43c]
cmovb edi, esi
push edi
push ebx
push eax
call fcn.0040c210
push 0x10
pop edi
cmp dword [eax + 0x14], edi
jb 0x40dd3b
mov eax, dword [eax]
push eax
call fcn.0043106f
pop ecx
push ebx
push 1
lea ecx, [ebp - 0x46c]
mov dword [0x469d20], eax
call fcn.00402927
push 0xffffffffffffffff
lea eax, [esi + 1]
push eax
lea eax, [ebp - 0x424]
push eax
lea ecx, [ebp - 0x43c]
call fcn.0040c210
mov ecx, dword [ebp - 0x414]
mov esi, ecx
test ecx, ecx
je 0x40dddd
cmp dword [ebp - 0x410], edi
lea eax, [ebp - 0x424]
cmovae eax, dword [ebp - 0x424]
cmp byte [eax + ecx - 1], 0xa
jne 0x40dda9
lea esi, [ecx - 1]
push ebx
push esi
lea ecx, [ebp - 0x424]
call fcn.0040ebd3
mov ecx, dword [ebp - 0x414]
test esi, esi
je 0x40dddd
cmp dword [ebp - 0x410], edi
lea eax, [ebp - 0x424]
cmovae eax, dword [ebp - 0x424]
cmp byte [eax + esi - 1], 0xd
jne 0x40dddd
push ebx
lea eax, [esi - 1]
push eax
lea ecx, [ebp - 0x424]
call fcn.0040ebd3
mov ecx, dword [ebp - 0x414]
cmp dword [ebp - 0x410], edi
lea eax, [ebp - 0x424]
mov dword [ebp - 0x480], ecx
lea edx, [ebp - 0x484]
cmovae eax, dword [ebp - 0x424]
lea ecx, [ebp - 0x46c]
mov dword [ebp - 0x484], eax
call fcn.0041f380
push eax
mov ecx, 0x469d24
call fcn.004027c2
push ebx
push 1
lea ecx, [ebp - 0x46c]
call fcn.00402c5d
jmp 0x40de72
push edi
push ebx
lea eax, [ebp - 0x43c]
mov dword [ebp - 0x410], 0xf
push eax
lea ecx, [ebp - 0x424]
mov dword [ebp - 0x414], ebx
mov byte [ebp - 0x424], bl
call fcn.00402893
cmp dword [ebp - 0x410], 0x10
lea eax, [ebp - 0x424]
cmovae eax, dword [ebp - 0x424]
push eax
call fcn.0043106f
pop ecx
mov dword [0x469d20], eax
push ebx
push 1
lea ecx, [ebp - 0x424]
call fcn.00402927
mov bl, 1
xor eax, eax
push eax
push 1
lea ecx, [ebp - 0x43c]
call fcn.00402927
xor eax, eax
jmp 0x40db61