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

Disassembly:
mov eax, 0x17b8
call fcn.004abe10
mov eax, dword [0x4e2204]
xor eax, esp
mov dword [esp + 0x17b4], eax
push ebx
push ebp
mov ebp, dword [esp + 0x17c4]
push esi
push edi
xor edi, edi
cmp dword [ebp + 0x30], edi
je 0x461c76
mov esi, dword [ebp + 0x34]
cmp esi, edi
je 0x461c76
call fcn.0045f5a0
mov dword [ebp + 0x30], edi
mov dword [ebp + 0x34], edi
mov eax, dword [ebp + 0x38]
cmp eax, edi
je 0x461c88
lea ebx, [eax + 4]
jmp 0x461c8a
xor ebx, ebx
lea esi, [esp + 0x578]
mov dword [esp + 0x578], edi
call fcn.004786f0
push ebx
mov eax, esi
call fcn.004787d0
test eax, eax
sete al
xor edx, edx
mov ecx, 0x1bb
cmp word [esp + 0x594], cx
lea ebx, [ebp + 0x40]
setne dl
mov byte [esp + 0x17b8], al
mov eax, dword [ebx]
dec edx
and edx, 0x800000
or edx, 0x4000000
mov dword [esp + 0x1c], edx
cmp eax, edi
jne 0x461ce1
xor eax, eax
jmp 0x461cf4
movzx eax, byte [eax]
cmp eax, 1
jbe 0x461cef
push ebx
call fcn.0043c230
mov eax, dword [ebx]
add eax, 4
push eax
lea esi, [ebp + 0x44]
push str.Content_Type:_multipart_form_data__boundary_s_r_n
mov ecx, esi
call fcn.00401470
add esp, 8
push edi
push edi
push edi
push edi
push 0x4d1260
call dword [sym.imp.WININET.dll_InternetOpenA]
mov dword [esp + 0x2c], eax
cmp eax, edi
jne 0x461d69
mov eax, dword [esp + 0x578]
cmp eax, edi
je 0x461d5f
push eax
mov esi, eax
call dword [sym.imp.KERNEL32.dll_InterlockedDecrement]
and eax, 0xff
cmp eax, 0x80
jl 0x461d4f
push esi
call dword [sym.imp.KERNEL32.dll_InterlockedIncrement]
mov eax, 4
jmp 0x4621a6
cmp eax, edi
jne 0x461d5f
mov esi, dword [esp + 0x578]
call fcn.0045f5a0
mov eax, 4
jmp 0x4621a6
movzx ecx, word [esp + 0x594]
push edi
push edi
push 3
push edi
push edi
push ecx
lea ecx, [esp + 0x6d0]
push ecx
push eax
call dword [sym.imp.WININET.dll_InternetConnectA]
mov edi, eax
mov dword [esp + 0x30], edi
test edi, edi
jne 0x461da7
lea edi, [esp + 0x578]
call fcn.0042f360
mov eax, 4
jmp 0x4621a6
lea edx, [esp + 0x10]
push edx
lea eax, [esp + 0x57c]
call fcn.00431770
mov eax, dword [eax]
test eax, eax
je 0x461dc3
add eax, 4
jmp 0x461dc5
xor eax, eax
mov ecx, dword [esp + 0x1c]
push 0
push ecx
push 0x4e3eb4
push 0
push 0
push eax
push str.POST
push edi
call dword [sym.imp.WININET.dll_HttpOpenRequestA]
lea ecx, [esp + 0x10]
mov dword [ebp + 0x48], eax
call fcn.00401420
cmp dword [ebp + 0x48], 0
je 0x461d91
mov edi, ebp
call fcn.00460f20
pxor xmm0, xmm0
movq qword [esp + 0x50], xmm0
mov dword [esp + 0x54], eax
mov eax, dword [esi]
movq qword [esp + 0x38], xmm0
mov dword [esp + 0x24], edx
movq qword [esp + 0x40], xmm0
movq qword [esp + 0x48], xmm0
movq qword [esp + 0x58], xmm0
mov dword [esp + 0x38], 0x28
test eax, eax
je 0x461e3b
mov esi, dword [eax]
shr esi, 8
dec esi
jmp 0x461e3d
xor esi, esi
mov eax, dword [ebp + 0x44]
lea edi, [ebp + 0x44]
test eax, eax
je 0x461e5a
movzx edx, byte [eax]
cmp edx, 1
jbe 0x461e55
push edi
call fcn.0043c230
mov eax, dword [edi]
add eax, 4
push 0xa0000000
push esi
push eax
mov eax, dword [ebp + 0x48]
push eax
call dword [sym.imp.WININET.dll_HttpAddRequestHeadersA]
mov edx, dword [ebp + 0x48]
push ebp
push 8
xor esi, esi
push esi
lea ecx, [esp + 0x44]
push ecx
push edx
call dword [sym.imp.WININET.dll_HttpSendRequestExA]
mov eax, dword [ebx]
mov dword [esp + 0x18], esi
mov dword [esp + 0x10], esi
cmp eax, esi
jne 0x461e92
xor eax, eax
jmp 0x461ea5
movzx eax, byte [eax]
cmp eax, 1
jbe 0x461ea0
push ebx
call fcn.0043c230
mov eax, dword [ebx]
add eax, 4
push eax
push str.___s_r_n
lea ecx, [esp + 0x20]
call fcn.00401470
mov eax, dword [ebx]
add esp, 8
cmp eax, esi
jne 0x461ec1
xor eax, eax
jmp 0x461ed4
movzx ecx, byte [eax]
cmp ecx, 1
jbe 0x461ecf
push ebx
call fcn.0043c230
mov eax, dword [ebx]
add eax, 4
push eax
push str.___s___r_n
lea ecx, [esp + 0x18]
call fcn.00401470
add esp, 8
push 2
push 0x4d127c
lea edx, [esp + 0x1c]
push edx
mov dword [esp + 0x20], esi
call fcn.0043c500
test dword [ebp + 0x2c], 0xfffffffe
mov dword [esp + 0x1c], esi
jbe 0x4620a9
xor ebx, ebx
mov edi, edi
mov eax, dword [ebp + 0x28]
lea eax, [ebx + eax + 8]
mov eax, dword [eax]
xor esi, esi
cmp eax, esi
je 0x461f2b
add eax, 4
cmp eax, esi
je 0x461f2b
cmp byte [eax], 0
jne 0x461f68
push ebp
lea edi, [esp + 0x1c]
call fcn.00460fb0
mov ecx, dword [ebp + 0x28]
lea edi, [ebx + ecx + 0x14]
push ebp
call fcn.00460fb0
push ebp
lea edi, [esp + 0x18]
call fcn.00460fb0
mov edx, dword [ebp + 0x28]
lea edi, [ebx + edx + 0xc]
push ebp
call fcn.00460fb0
push ebp
lea edi, [esp + 0x18]
call fcn.00460fb0
jmp 0x462090
mov eax, dword [ebp + 0x3c]
mov dword [esp + 0x24], esi
mov dword [esp + 0x20], esi
mov dword [esp + 0x570], esi
cmp eax, esi
je 0x461f83
add eax, 4
jmp 0x461f85
xor eax, eax
mov byte [esp + 0x60], 0
mov byte [esp + 0x268], 0
mov byte [esp + 0x26c], 0
mov byte [esp + 0x36d], 0
mov byte [esp + 0x46e], 0
cmp eax, esi
je 0x461fd1
lea ecx, [esp + 0x46e]
push ecx
lea edx, [esp + 0x371]
push edx
lea ecx, [esp + 0x274]
push ecx
lea edx, [esp + 0x274]
push edx
push eax
jmp 0x461ff6
lea eax, [esp + 0x46e]
push eax
lea ecx, [esp + 0x371]
push ecx
lea edx, [esp + 0x274]
push edx
lea eax, [esp + 0x274]
push eax
push 0x4cb498
call fcn.004a055c
mov ecx, dword [ebp + 0x28]
lea eax, [ebx + ecx + 8]
mov eax, dword [eax]
add esp, 0x14
cmp eax, esi
je 0x462010
add eax, 4
jmp 0x462012
xor eax, eax
push eax
lea edx, [esp + 0x64]
push edx
call fcn.004312d0
lea eax, [esp + 0x20]
push eax
lea eax, [esp + 0x64]
call fcn.004550a0
mov esi, dword [esp + 0x24]
add esp, 4
test esi, esi
je 0x46206c
push ebp
lea edi, [esp + 0x1c]
call fcn.00460fb0
mov ecx, dword [ebp + 0x28]
lea edi, [ebx + ecx + 0x14]
push ebp
call fcn.00460fb0
mov eax, dword [esp + 0x24]
mov ecx, dword [ebp + 0x48]
lea edx, [esp + 0x34]
push edx
push esi
push eax
push ecx
call dword [sym.imp.WININET.dll_InternetWriteFile]
push ebp
lea edi, [esp + 0x18]
call fcn.00460fb0
lea ecx, [esp + 0x60]
call fcn.00403870
xor edi, edi
cmp esi, edi
je 0x462088
mov esi, dword [esp + 0x24]
cmp esi, edi
je 0x462088
call fcn.0045f5a0
mov dword [esp + 0x24], edi
mov dword [esp + 0x20], edi
mov eax, dword [esp + 0x1c]
mov edx, dword [ebp + 0x2c]
inc eax
shr edx, 1
add ebx, 0x18
mov dword [esp + 0x1c], eax
cmp eax, edx
jb 0x461f10
push ebp
lea edi, [esp + 0x14]
call fcn.00460fb0
mov eax, dword [ebp + 0x48]
push 0
push 8
push 0
push eax
call dword [sym.imp.WININET.dll_HttpEndRequestA]
test eax, eax
je 0x4620d7
mov ecx, dword [ebp + 0x48]
lea eax, [ebp + 0x30]
push eax
push ecx
call fcn.00461000
add esp, 8
mov edx, dword [ebp + 0x48]
mov esi, dword [sym.imp.WININET.dll_InternetCloseHandle]
push edx
call esi
mov eax, dword [esp + 0x30]
push eax
call esi
mov ecx, dword [esp + 0x2c]
push ecx
call esi
mov esi, dword [esp + 0x14]
mov ebx, dword [sym.imp.KERNEL32.dll_InterlockedIncrement]
mov edi, dword [sym.imp.KERNEL32.dll_InterlockedDecrement]
mov dword [ebp + 0x48], 0
test esi, esi
je 0x462129
push esi
call edi
and eax, 0xff
cmp eax, 0x80
jl 0x462120
push esi
call ebx
jmp 0x462129
test eax, eax
jne 0x462129
call fcn.0045f5a0
mov esi, dword [esp + 0x10]
test esi, esi
je 0x46214e
push esi
call edi
and eax, 0xff
cmp eax, 0x80
jl 0x462145
push esi
call ebx
jmp 0x46214e
test eax, eax
jne 0x46214e
call fcn.0045f5a0
mov esi, dword [esp + 0x18]
test esi, esi
je 0x462173
push esi
call edi
and eax, 0xff
cmp eax, 0x80
jl 0x46216a
push esi
call ebx
jmp 0x462173
test eax, eax
jne 0x462173
call fcn.0045f5a0
mov eax, dword [esp + 0x578]
test eax, eax
je 0x4621a4
push eax
mov esi, eax
call edi
and eax, 0xff
cmp eax, 0x80
jl 0x462194
push esi
call ebx
jmp 0x4621a4
test eax, eax
jne 0x4621a4
mov esi, dword [esp + 0x578]
call fcn.0045f5a0
xor eax, eax
mov ecx, dword [esp + 0x17c4]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.0049ceb0
add esp, 0x17b8
ret 4