Function at 0x10001730
Capabilities:
Connect to http server
Parse url
Send data
Send http request

Disassembly:
push 0xffffffffffffffff
push 0x1000416b
mov eax, dword fs:[0]
push eax
sub esp, 0x224
mov eax, dword [0x10008018]
xor eax, esp
mov dword [esp + 0x220], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x10008018]
xor eax, esp
push eax
lea eax, [esp + 0x238]
mov dword fs:[0], eax
mov esi, ecx
cmp dword [esi + 4], 0
je 0x10001a91
mov eax, dword [esi + 0x30]
push 0
push eax
lea ecx, [esp + 0x1e8]
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_unsigned_int__char_]
mov dword [esp + 0x240], 0
mov eax, dword [esi + 0x30]
push 0
push eax
lea ecx, [esp + 0x204]
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_unsigned_int__char_]
push 0x3c
lea eax, [esp + 0x18]
push 0
push eax
mov byte [esp + 0x24c], 1
call sub.MSVCR80.dll_memset
mov ebx, 0x10
add esp, 0xc
cmp dword [esp + 0x1f8], ebx
mov dword [esp + 0x14], 0x3c
jb 0x100017e4
mov ecx, dword [esp + 0x1e4]
mov dword [esp + 0x24], ecx
jmp 0x100017ef
lea edx, [esp + 0x1e4]
mov dword [esp + 0x24], edx
cmp dword [esp + 0x214], ebx
mov eax, dword [esp + 0x1f4]
mov dword [esp + 0x28], eax
jb 0x10001810
mov ecx, dword [esp + 0x200]
mov dword [esp + 0x40], ecx
jmp 0x1000181b
lea edx, [esp + 0x200]
mov dword [esp + 0x40], edx
cmp dword [esi + 0x34], ebx
mov eax, dword [esp + 0x210]
mov ecx, dword [esi + 0x30]
lea edi, [esi + 0x1c]
mov dword [esp + 0x44], eax
jb 0x10001836
mov eax, dword [edi + 4]
jmp 0x10001839
lea eax, [edi + 4]
lea edx, [esp + 0x14]
push edx
push 0
push ecx
push eax
call dword [sym.imp.WININET.dll_InternetCrackUrlA]
test eax, eax
je 0x10001a64
mov ecx, dword [esp + 0x2c]
mov eax, dword [esi + 4]
mov edx, dword [esp + 0x24]
mov eax, dword [eax + 4]
push esi
push 0
push 3
push 0
push 0
push ecx
push edx
push eax
call dword [sym.imp.WININET.dll_InternetConnectA]
test eax, eax
mov dword [esi + 8], eax
jne 0x100018b0
cmp dword [edi + 0x18], ebx
jb 0x10001881
mov edi, dword [edi + 4]
jmp 0x10001884
add edi, 4
push edi
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push 0x95
call fcn.10002440
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
push str.ImHttp__03X____13.13hs:_04d_____CImWinInetRequest_Error___u__in_InternetConnect:__s_n_n
call fcn.10002470
add esp, 0x18
jmp 0x10001a64
push 0x100052a0
lea ecx, [esp + 0x21c]
mov ebp, 0x80000000
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const__]
mov byte [esp + 0x240], 2
mov eax, dword [esi + 0x78]
sub eax, 1
je 0x100018f4
sub eax, 1
je 0x100018e8
sub eax, 1
jne 0x10001906
push str.POST
jmp 0x100018f9
mov ebp, 0x80200000
push str.HEAD
jmp 0x100018f9
push 0x100052a0
lea ecx, [esp + 0x21c]
call dword [sym.imp.MSVCP80.dll_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char______thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::operator_char_const__]
cmp byte [esi + 0x88], 0
je 0x10001915
or ebp, 0x4000000
push 0
push str.https:__
mov ecx, edi
call dword [sym.imp.MSVCP80.dll_public:_unsigned_int___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::find_char_const___unsigned_int_const]
cmp eax, 0xffffffff
je 0x1000192f
or ebp, 0x800000
push 0x18c
lea eax, [esp + 0x58]
push 0
push eax
mov dword [esp + 0x5c], 0x100052c0
call sub.MSVCR80.dll_memset
mov eax, dword [esp + 0x228]
add esp, 0xc
cmp dword [esp + 0x230], ebx
jae 0x10001962
lea eax, [esp + 0x21c]
mov edx, dword [esp + 0x40]
push esi
push ebp
lea ecx, [esp + 0x58]
push ecx
push 0
push 0
push edx
push eax
mov eax, dword [esi + 8]
push eax
call dword [sym.imp.WININET.dll_HttpOpenRequestA]
test eax, eax
mov dword [esi + 0xc], eax
jne 0x100019bd
cmp dword [edi + 0x18], ebx
jb 0x1000198e
mov edi, dword [edi + 4]
jmp 0x10001991
add edi, 4
push edi
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push 0xc5
call fcn.10002440
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
push str.ImHttp__03X____13.13hs:_04d_____CImWinInetRequest_Error___u__in_HttpOpenRequest:__s_n_n
call fcn.10002470
add esp, 0x18
jmp 0x10001a4f
cmp dword [esi + 0x50], ebx
mov edx, dword [esi + 0x4c]
jb 0x100019ca
mov ecx, dword [esi + 0x3c]
jmp 0x100019cd
lea ecx, [esi + 0x3c]
push 0x20000000
push edx
push ecx
push eax
call dword [sym.imp.WININET.dll_HttpAddRequestHeadersA]
mov ecx, dword [esi + 0x84]
mov edx, dword [esi + 0x80]
mov eax, dword [esi + 0xc]
push ecx
push edx
push 0
push 0
push eax
call dword [sym.imp.WININET.dll_HttpSendRequestA]
cmp eax, 1
jne 0x10001a42
lea ecx, [esp + 0x218]
mov byte [esp + 0x240], 1
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
lea ecx, [esp + 0x1fc]
mov byte [esp + 0x240], 0
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
lea ecx, [esp + 0x1e0]
mov dword [esp + 0x240], 0xffffffff
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov al, 1
jmp 0x10001a93
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x3e5
je 0x100019fc
lea ecx, [esp + 0x218]
mov byte [esp + 0x240], 1
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
lea ecx, [esp + 0x1fc]
mov byte [esp + 0x240], 0
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
lea ecx, [esp + 0x1e0]
mov dword [esp + 0x240], 0xffffffff
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
xor al, al
mov ecx, dword [esp + 0x238]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x220]
xor ecx, esp
call fcn.100037a7
add esp, 0x230
ret