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

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x12ac
call fcn.0041b0f0
mov eax, dword [0x426090]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 8]
push ebx
push esi
push edi
xor ebx, ebx
push ebx
push ebx
mov dword [ebp - 0x1248], eax
mov eax, dword [ebp + 0x10]
push ebx
mov dword [ebp - 0x123c], eax
mov eax, dword [ebp + 0x14]
push ebx
push ebx
mov edi, ecx
mov dword [ebp - 0x1234], eax
mov dword [ebp - 0x1228], ebx
call dword [sym.imp.WININET.dll_InternetOpenA]
mov dword [ebp - 0x122c], eax
cmp eax, ebx
je 0x405475
mov esi, 0x7ff
push esi
lea eax, [ebp - 0x1203]
push ebx
push eax
mov byte [ebp - 0x1204], bl
call fcn.00412060
push esi
lea eax, [ebp - 0xa03]
push ebx
push eax
mov byte [ebp - 0xa04], bl
call fcn.00412060
push 0x38
lea eax, [ebp - 0x1280]
push ebx
push eax
call fcn.00412060
lea eax, [ebp - 0x1204]
mov dword [ebp - 0x1274], eax
lea eax, [esi + 1]
add esp, 0x24
mov dword [ebp - 0x1270], eax
mov dword [ebp - 0x1254], eax
lea eax, [ebp - 0x1284]
push eax
push ebx
push ebx
lea ecx, [ebp - 0xa04]
push edi
mov dword [ebp - 0x1284], 0x3c
mov dword [ebp - 0x1258], ecx
call dword [sym.imp.WININET.dll_InternetCrackUrlA]
push ebx
push ebx
push 3
mov eax, 0x4220a0
push eax
push eax
push 0x50
push dword [ebp - 0x1274]
push dword [ebp - 0x122c]
call dword [sym.imp.WININET.dll_InternetConnectA]
mov dword [ebp - 0x1238], eax
cmp eax, ebx
je 0x405469
push ebx
push 0x84000000
push ebx
push ebx
push ebx
push dword [ebp - 0x1258]
push str.POST
push eax
call dword [sym.imp.WININET.dll_HttpOpenRequestA]
mov dword [ebp - 0x1230], eax
cmp eax, ebx
je 0x40545d
push str.Content_Type:_application_x_www_form_urlencoded_r_n
lea esi, [ebp - 0x1220]
call fcn.004022eb
cmp dword [ebp - 0x120c], 0x10
mov eax, dword [ebp - 0x1220]
jae 0x40532b
mov eax, esi
push 0x20000000
push dword [ebp - 0x1210]
push eax
push dword [ebp - 0x1230]
call dword [sym.imp.WININET.dll_HttpAddRequestHeadersA]
mov esi, dword [ebp + 0xc]
push 9
pop ecx
push ebx
xor eax, eax
push ebx
lea edi, [ebp - 0x12a8]
rep stosd dword es:[edi], eax
mov edi, dword [ebp - 0x1230]
push ebx
lea eax, [ebp - 0x12ac]
push eax
push edi
mov dword [ebp - 0x12ac], 0x28
mov dword [ebp - 0x1290], esi
mov byte [ebp - 0x1221], bl
call dword [sym.imp.WININET.dll_HttpSendRequestExA]
test eax, eax
je 0x40539f
push esi
push dword [ebp - 0x1248]
push edi
call fcn.004051a3
add esp, 0xc
test eax, eax
jne 0x40539f
mov byte [ebp - 0x1221], 1
push ebx
push ebx
push ebx
push edi
call dword [sym.imp.WININET.dll_HttpEndRequestW]
push 0x1ff
lea eax, [ebp - 0x203]
push ebx
push eax
mov byte [ebp - 0x204], bl
call fcn.00412060
add esp, 0xc
lea eax, [ebp - 0x1244]
push eax
lea eax, [ebp - 0x1240]
push eax
lea eax, [ebp - 0x204]
push eax
push 0x13
push edi
mov dword [ebp - 0x1240], 0x200
mov dword [ebp - 0x1244], ebx
call dword [sym.imp.WININET.dll_HttpQueryInfoA]
test eax, eax
jne 0x405409
push 1
xor edi, edi
lea esi, [ebp - 0x1220]
call fcn.00401d93
xor eax, eax
jmp 0x40547b
lea eax, [ebp - 0x204]
push eax
call fcn.00411512
pop ecx
mov ecx, dword [ebp - 0x1234]
mov dword [ecx], eax
cmp eax, 0xc8
je 0x40542c
cmp eax, 0x12e
jne 0x4053f6
cmp byte [ebp - 0x1221], bl
je 0x405447
mov ecx, dword [ebp - 0x123c]
push edi
call fcn.004050bc
pop ecx
mov dword [ebp - 0x1228], eax
push edi
call dword [sym.imp.WININET.dll_InternetCloseHandle]
push 1
xor edi, edi
lea esi, [ebp - 0x1220]
call fcn.00401d93
push dword [ebp - 0x1238]
call dword [sym.imp.WININET.dll_InternetCloseHandle]
push dword [ebp - 0x122c]
call dword [sym.imp.WININET.dll_InternetCloseHandle]
mov eax, dword [ebp - 0x1228]
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.0041032b
leave
ret