Function at 0x10017460
Capabilities:
Prepare http request

Disassembly:
push 0xffffffffffffffff
push 0x10085ad9
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x5c
push ebx
xor ebx, ebx
push esi
mov esi, ecx
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 0x100
cmp dword [esi + 0xf0], ebx
jne 0x100174a7
pop esi
xor al, al
pop ebx
mov ecx, dword [esp + 0x5c]
mov dword fs:[0], ecx
add esp, 0x68
ret 0x10
cmp byte [esi + 0xe4], bl
je 0x100174b7
mov dword [esp + 0xc], 0x800100
mov edx, dword [esp + 0x78]
xor eax, eax
mov word [esp + 0x10], ax
mov eax, edx
push edi
mov dword [esp + 0x28], 7
mov dword [esp + 0x24], ebx
lea edi, [eax + 2]
mov cx, word [eax]
add eax, 2
cmp cx, bx
jne 0x100174d4
sub eax, edi
sar eax, 1
push eax
push edx
lea ecx, [esp + 0x1c]
call fcn.10002ec0
mov edi, dword [esp + 0x80]
cmp word [edi], 0x3f
mov dword [esp + 0x70], ebx
je 0x1001750f
push 1
push 0x1008bb70
lea ecx, [esp + 0x1c]
call fcn.10002da0
mov eax, edi
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
cmp cx, bx
jne 0x10017514
sub eax, edx
push ebp
sar eax, 1
push eax
push edi
lea ecx, [esp + 0x20]
call fcn.10002da0
mov eax, dword [esp + 0x18]
mov ebp, 8
cmp dword [esp + 0x2c], ebp
jae 0x10017542
lea eax, [esp + 0x18]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x7c]
push ecx
push ebx
push ebx
push ebx
push eax
mov eax, dword [esi + 0xf0]
push edx
push eax
call dword [sym.imp.WINHTTP.dll_WinHttpOpenRequest]
mov dword [esi + 0xec], eax
cmp eax, ebx
je 0x100175cf
cmp byte [esi + 0xe4], 0
je 0x100175cf
movzx ecx, byte [esp + 0x88]
neg ecx
push 4
sbb ecx, ecx
lea edx, [esp + 0x8c]
push edx
and ecx, 0x1300
push 0x1f
add ecx, 0x2000
push eax
mov dword [esp + 0x98], ecx
call dword [sym.imp.WINHTTP.dll_WinHttpSetOption]
test eax, eax
jne 0x100175cf
mov eax, dword [esi]
mov edx, dword [eax + 0x2c]
mov ecx, esi
call edx
lea ecx, [esp + 0x18]
call fcn.1000ad40
pop ebp
pop edi
pop esi
xor al, al
pop ebx
mov ecx, dword [esp + 0x5c]
mov dword fs:[0], ecx
add esp, 0x68
ret 0x10
cmp dword [esi + 0xec], ebx
je 0x10017612
lea eax, [esp + 0x50]
push eax
mov ecx, esi
call fcn.100170f0
mov byte [esp + 0x74], 1
mov dword [esp + 0x10], 1
cmp dword [eax + 0x10], ebx
jbe 0x10017612
lea ecx, [esp + 0x34]
push ecx
mov ecx, esi
call fcn.10017130
mov dword [esp + 0x10], 3
cmp dword [eax + 0x10], ebx
jbe 0x10017612
mov bl, 1
jmp 0x10017614
xor bl, bl
test byte [esp + 0x10], 2
je 0x1001764a
and dword [esp + 0x10], 0xfffffffd
cmp dword [esp + 0x48], ebp
jb 0x10017633
mov edx, dword [esp + 0x34]
push edx
call sub.MSVCR100.dll_void___cdecl_operator_delete_void__
add esp, 4
xor eax, eax
mov dword [esp + 0x48], 7
mov dword [esp + 0x44], 0
mov word [esp + 0x34], ax
test byte [esp + 0x10], 1
mov dword [esp + 0x74], 0
je 0x1001766c
cmp dword [esp + 0x64], ebp
jb 0x1001766c
mov ecx, dword [esp + 0x50]
push ecx
call sub.MSVCR100.dll_void___cdecl_operator_delete_void__
add esp, 4
test bl, bl
je 0x1001775a
lea edx, [esp + 0x50]
push edx
mov ecx, esi
call fcn.10017130
mov edi, eax
lea eax, [esp + 0x34]
push eax
mov ecx, esi
mov byte [esp + 0x78], 2
call fcn.100170f0
cmp dword [edi + 0x14], ebp
jb 0x1001769a
mov edi, dword [edi]
cmp dword [eax + 0x14], ebp
jb 0x100176a1
mov eax, dword [eax]
mov ecx, dword [esi + 0xec]
push 0
push edi
push eax
push 1
push 0
push ecx
call dword [sym.imp.WINHTTP.dll_WinHttpSetCredentials]
mov edi, eax
cmp dword [esp + 0x48], ebp
jb 0x100176cb
mov edx, dword [esp + 0x34]
push edx
call sub.MSVCR100.dll_void___cdecl_operator_delete_void__
add esp, 4
xor eax, eax
mov dword [esp + 0x48], 7
mov dword [esp + 0x44], 0
mov word [esp + 0x34], ax
mov byte [esp + 0x74], al
cmp dword [esp + 0x64], ebp
jb 0x100176f9
mov ecx, dword [esp + 0x50]
push ecx
call sub.MSVCR100.dll_void___cdecl_operator_delete_void__
add esp, 4
test edi, edi
je 0x10017727
cmp dword [esp + 0x2c], ebp
jb 0x10017710
mov edx, dword [esp + 0x18]
push edx
call sub.MSVCR100.dll_void___cdecl_operator_delete_void__
add esp, 4
pop ebp
pop edi
pop esi
mov al, 1
pop ebx
mov ecx, dword [esp + 0x5c]
mov dword fs:[0], ecx
add esp, 0x68
ret 0x10
mov eax, dword [esi]
mov edx, dword [eax + 0x2c]
mov ecx, esi
call edx
cmp dword [esp + 0x2c], ebp
jb 0x10017743
mov eax, dword [esp + 0x18]
push eax
call sub.MSVCR100.dll_void___cdecl_operator_delete_void__
add esp, 4
pop ebp
pop edi
pop esi
xor al, al
pop ebx
mov ecx, dword [esp + 0x5c]
mov dword fs:[0], ecx
add esp, 0x68
ret 0x10
cmp dword [esi + 0xec], 0
setne bl
cmp dword [esp + 0x2c], ebp
jb 0x10017777
mov ecx, dword [esp + 0x18]
push ecx
call sub.MSVCR100.dll_void___cdecl_operator_delete_void__
add esp, 4
mov ecx, dword [esp + 0x6c]
pop ebp
pop edi
pop esi
mov al, bl
pop ebx
mov dword fs:[0], ecx
add esp, 0x68
ret 0x10