Function at 0x446118
Capabilities:
Connect to http server
Create http request
Send data
Send http request

Disassembly:
push ebp
mov ebp, esp
push eax
mov eax, 0x10
add esp, 0xfffff004
push eax
dec eax
jne 0x446121
mov eax, dword [ebp - 4]
add esp, 0xfffffe44
push ebx
push esi
push edi
xor edx, edx
mov dword [ebp - 0x101c0], edx
mov dword [ebp - 0x101bc], edx
mov dword [ebp - 0x101b8], edx
mov dword [ebp - 0x16c], edx
mov dword [ebp - 0x170], edx
mov dword [ebp - 0x174], edx
mov dword [ebp - 0x178], edx
mov dword [ebp - 0x17c], edx
mov dword [ebp - 0x180], edx
mov dword [ebp - 0x164], eax
xor eax, eax
push ebp
push 0x44710b
push dword fs:[eax]
mov dword fs:[eax], esp
mov byte [ebp - 0x181], 0
xor edx, edx
push ebp
push 0x4470d3
push dword fs:[edx]
mov dword fs:[edx], esp
call sub.kernel32.dll_GetTickCount
mov dword [ebp - 0x1a8], eax
xor edx, edx
push ebp
push 0x4470bf
push dword fs:[edx]
mov dword fs:[edx], esp
xor edx, edx
push ebp
push 0x446ff5
push dword fs:[edx]
mov dword fs:[edx], esp
push ebp
call fcn.00446098
pop ecx
mov byte [ebp - 0x11], 0
xor eax, eax
mov dword [ebp - 0x168], eax
mov eax, dword [ebp - 0x164]
add eax, 0x3e
call fcn.00405420
mov byte [ebp - 0x1a9], 0
push ebp
lea ecx, [ebp - 0x170]
lea edx, [ebp - 0x16c]
mov eax, dword [ebp - 0x164]
mov eax, dword [eax + 0x36]
call fcn.00445eb8
pop ecx
mov eax, dword [ebp - 0x164]
xor edx, edx
mov dword [eax + 0x6a], edx
mov eax, dword [ebp - 0x164]
xor edx, edx
mov dword [eax + 0x66], edx
mov eax, dword [ebp - 0x164]
cmp dword [eax + 0x32], 0
je 0x446246
push 0
push 0
push 0
push 0
mov eax, dword [ebp - 0x164]
mov eax, dword [eax + 0x32]
call fcn.004058b0
push eax
call sub.wininet.dll_InternetOpenA
mov dword [ebp - 0x10], eax
jmp 0x446258
push 0
push 0
push 0
push 0
push 0
call sub.wininet.dll_InternetOpenA
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0
jne 0x446279
call sub.kernel32.dll_GetLastError_1
mov edx, dword [ebp - 0x164]
mov dword [edx + 0x6a], eax
mov eax, dword [ebp - 0x164]
mov dword [eax + 0x66], 1
push ebp
call fcn.00446098
pop ecx
push 0
push 0
push 3
mov eax, dword [ebp - 0x164]
mov eax, dword [eax + 0x46]
call fcn.004058b0
push eax
mov eax, dword [ebp - 0x164]
mov eax, dword [eax + 0x42]
call fcn.004058b0
push eax
movzx eax, word [ebp - 4]
push eax
mov eax, dword [ebp - 0x16c]
call fcn.004058b0
push eax
mov eax, dword [ebp - 0x10]
push eax
call sub.wininet.dll_InternetConnectA
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0
jne 0x4462e2
call sub.kernel32.dll_GetLastError_1
mov edx, dword [ebp - 0x164]
mov dword [edx + 0x6a], eax
mov eax, dword [ebp - 0x164]
mov dword [eax + 0x66], 2
push ebp
call fcn.00446098
pop ecx
mov eax, dword [ebp - 0x164]
cmp dword [eax + 0x4a], 0
jne 0x4462fc
mov esi, 0x44711c
jmp 0x446301
mov esi, 0x447120
mov eax, dword [ebp - 0x164]
mov ebx, dword [eax + 0x52]
mov eax, dword [ebp - 0x164]
cmp byte [eax + 5], 0
jne 0x44631c
or ebx, 0x80000000
cmp dword [ebp - 4], 0x1bb
jne 0x44632b
or ebx, 0x800000
mov eax, dword [ebp - 0x164]
cmp dword [eax + 0x26], 0
jne 0x44634a
mov eax, dword [ebp - 0x164]
add eax, 0x26
mov edx, 0x447130
call fcn.00405474
mov eax, dword [ebp - 0x164]
push dword [eax + 0x26]
push 0x44713c
push 0x44713c
lea eax, [ebp - 0x178]
mov edx, 3
call fcn.004057b4
lea eax, [ebp - 0x178]
call fcn.00405910
mov dword [ebp - 0x198], eax
xor eax, eax
mov dword [ebp - 0x194], eax
push 0
push ebx
lea eax, [ebp - 0x198]
push eax
mov eax, dword [ebp - 0x164]
mov eax, dword [eax + 0x4e]
call fcn.004058b0
push eax
push 0x447140
mov eax, dword [ebp - 0x170]
call fcn.004058b0
push eax
push esi
mov eax, dword [ebp - 0xc]
push eax
call sub.wininet.dll_HttpOpenRequestA
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
jne 0x4463f5
push 0
push ebx
push 0
mov eax, dword [ebp - 0x164]
mov eax, dword [eax + 0x4e]
call fcn.004058b0
push eax
push 0x447140
mov eax, dword [ebp - 0x170]
call fcn.004058b0
push eax
push esi
mov eax, dword [ebp - 0xc]
push eax
call sub.wininet.dll_HttpOpenRequestA
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
jne 0x446494
mov esi, 0x44711c
push 0
push ebx
lea eax, [ebp - 0x198]
push eax
mov eax, dword [ebp - 0x164]
mov eax, dword [eax + 0x4e]
call fcn.004058b0
push eax
push 0x447140
mov eax, dword [ebp - 0x170]
call fcn.004058b0
push eax
push esi
mov eax, dword [ebp - 0xc]
push eax
call sub.wininet.dll_HttpOpenRequestA
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
jne 0x446473
push 0
push ebx
push 0
mov eax, dword [ebp - 0x164]
mov eax, dword [eax + 0x4e]
call fcn.004058b0
push eax
push 0x447140
mov eax, dword [ebp - 0x170]
call fcn.004058b0
push eax
push esi
mov eax, dword [ebp - 0xc]
push eax
call sub.wininet.dll_HttpOpenRequestA
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
jne 0x446494
call sub.kernel32.dll_GetLastError_1
mov edx, dword [ebp - 0x164]
mov dword [edx + 0x6a], eax
mov eax, dword [ebp - 0x164]
mov dword [eax + 0x66], 3
push ebp
call fcn.00446098
pop ecx
mov eax, dword [ebp - 0x164]
cmp byte [eax + 0xb], 0
je 0x446621
mov eax, dword [ebp - 0x164]
cmp dword [eax + 0x5e], 0
jne 0x446621
lea edx, [ebp - 0x180]
mov eax, dword [ebp - 0x164]
mov eax, dword [eax + 0x3a]
call fcn.00409e8c
mov eax, dword [ebp - 0x180]
call fcn.00409b04
test al, al
jne 0x4464e9
mov eax, dword [ebp - 0x180]
call fcn.00409b28
mov eax, dword [ebp - 0x164]
mov edx, dword [eax + 0x3a]
lea eax, [ebp - 0x160]
call fcn.0040372c
mov byte [ebp - 0x181], 1
mov eax, dword [0x4938f4]
mov byte [eax], 0x22
mov eax, dword [ebp - 0x164]
cmp byte [eax + 0xc], 0
je 0x446611
mov eax, dword [ebp - 0x164]
mov eax, dword [eax + 0x3a]
call fcn.00409ae0
test al, al
je 0x446611
xor eax, eax
push ebp
push 0x446607
push dword fs:[eax]
mov dword fs:[eax], esp
mov edx, 1
lea eax, [ebp - 0x160]
call fcn.00403c10
call fcn.004030dc
test eax, eax
jne 0x4465fd
mov byte [ebp - 0x11], 1
lea eax, [ebp - 0x160]
call fcn.00403a20
call fcn.0040305c
mov dword [ebp - 0x168], eax
mov edx, dword [ebp - 0x168]
lea eax, [ebp - 0x160]
call fcn.00403c38
call fcn.0040305c
lea eax, [ebp - 0x174]
push eax
mov eax, dword [ebp - 0x168]
mov dword [ebp - 0x101b4], eax
mov byte [ebp - 0x101b0], 0
lea edx, [ebp - 0x101b4]
xor ecx, ecx
mov eax, 0x447154
call fcn.0040a818
mov esi, dword [ebp - 0x174]
test esi, esi
je 0x4465c8
sub esi, 4
mov esi, dword [esi]
push 0x20000000
push esi
mov eax, dword [ebp - 0x174]
call fcn.004058b0
push eax
mov eax, dword [ebp - 8]
push eax
call sub.wininet.dll_HttpAddRequestHeadersA
cmp eax, 1
sbb ebx, ebx
inc ebx
mov eax, dword [ebp - 0x164]
mov byte [eax + 0xc], bl
test bl, bl
je 0x4465fd
mov byte [ebp - 0x181], 0
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x446611
cmp byte [ebp - 0x181], 0
je 0x446621
push ebp
call fcn.004460b0
pop ecx
push 0x3a98
mov ecx, dword [ebp - 8]
mov dl, 1
mov eax, dword [0x445acc]
call fcn.00447670
mov edi, eax
mov eax, dword [ebp - 0x164]
cmp dword [eax + 0x4a], 0
jne 0x446680
mov eax, dword [ebp - 0x164]
cmp dword [eax + 0x2a], 0
jne 0x446680
mov eax, dword [ebp - 0x164]
cmp dword [eax + 0x2e], 0
jne 0x446680
push 0
push 0
push 0
push 0
mov eax, dword [ebp - 8]
push eax
call sub.wininet.dll_HttpSendRequestA
cmp eax, 1
sbb eax, eax
inc eax
mov edx, dword [ebp - 0x164]
mov byte [edx + 6], al
jmp 0x446738
mov eax, dword [ebp - 0x164]
cmp dword [eax + 0x2e], 0
jne 0x44669e
lea eax, [ebp - 0x17c]
mov edx, 0x447170
call fcn.004054b8
jmp 0x4466b2
lea eax, [ebp - 0x17c]
mov edx, dword [ebp - 0x164]
mov edx, dword [edx + 0x2e]
call fcn.004054b8
mov eax, dword [ebp - 0x164]
cmp dword [eax + 0x2a], 0
je 0x4466e2
push dword [ebp - 0x17c]
push 0x4471a8
mov eax, dword [ebp - 0x164]
push dword [eax + 0x2a]
lea eax, [ebp - 0x17c]
mov edx, 3
call fcn.004057b4
mov ebx, dword [ebp - 0x17c]
test ebx, ebx
je 0x4466f1
sub ebx, 4
mov ebx, dword [ebx]
mov eax, dword [ebp - 0x164]
mov esi, dword [eax + 0x4a]
test esi, esi
je 0x446703
sub esi, 4
mov esi, dword [esi]
push esi
mov eax, dword [ebp - 0x164]
mov eax, dword [eax + 0x4a]
call fcn.004058b0
push eax
push ebx
mov eax, dword [ebp - 0x17c]
call fcn.004058b0
push eax
mov eax, dword [ebp - 8]
push eax
call sub.wininet.dll_HttpSendRequestA
cmp eax, 1
sbb eax, eax
inc eax
mov edx, dword [ebp - 0x164]
mov byte [edx + 6], al
mov eax, dword [ebp - 0x164]
cmp byte [eax + 6], 0
jne 0x446779
call sub.kernel32.dll_GetLastError_1
mov edx, dword [ebp - 0x164]
mov dword [edx + 0x6a], eax
mov eax, dword [ebp - 0x164]
mov dword [eax + 0x66], 4
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
call fcn.00404dd8
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4470dd
mov eax, edi
call fcn.004224a8
push ebp
call fcn.00446098
pop ecx
xor eax, eax
mov dword [ebp - 0x190], eax
mov dword [ebp - 0x18c], pe_nt_image_headers32
mov eax, dword [ebp - 0x18c]
call fcn.00402f00
mov dword [ebp - 0x188], eax
xor eax, eax
push ebp
push 0x4468c5
push dword fs:[eax]
mov dword fs:[eax], esp
lea eax, [ebp - 0x190]
push eax
lea eax, [ebp - 0x18c]
push eax
mov eax, dword [ebp - 0x188]
push eax
push 0x13
mov eax, dword [ebp - 8]
push eax
call sub.wininet.dll_HttpQueryInfoA
cmp eax, 1
sbb ebx, ebx
inc ebx
mov eax, dword [ebp - 0x164]
mov byte [eax + 6], bl
test bl, bl
je 0x446812
lea edx, [ebp - 0x174]
mov eax, dword [ebp - 0x188]
call fcn.0040a374
xor edx, edx
mov eax, dword [ebp - 0x174]
call fcn.0040969c
mov edx, dword [ebp - 0x164]
mov dword [edx + 0x56], eax
push ebp
call fcn.00446098
pop ecx
xor eax, eax
mov dword [ebp - 0x190], eax
mov dword [ebp - 0x18c], pe_nt_image_headers32
lea eax, [ebp - 0x190]
push eax
lea eax, [ebp - 0x18c]
push eax
mov eax, dword [ebp - 0x188]
push eax
push 1
mov eax, dword [ebp - 8]
push eax
call sub.wininet.dll_HttpQueryInfoA
cmp eax, 1
sbb ebx, ebx
inc ebx
mov eax, dword [ebp - 0x164]
mov byte [eax + 6], bl
test bl, bl
je 0x446883
lea edx, [ebp - 0x101b8]
mov eax, dword [ebp - 0x188]
call fcn.0040a374
mov edx, dword [ebp - 0x101b8]
mov eax, dword [ebp - 0x164]
add eax, 0x5a
call fcn.00405474
push ebp
call fcn.00446098
pop ecx
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x4468cc
xor eax, eax
push ebp
push 0x4468ba
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 0x188]
call fcn.00402f1c
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4468c4
ret
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x447112
lea eax, [ebp - 0x101c0]
mov edx, 3
call fcn.00405444
lea eax, [ebp - 0x180]
mov edx, 6
call fcn.00405444
ret