Function at 0x10002290
Capabilities:
Initialize winhttp library
Prepare http request
Receive http response

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10021ca7
mov eax, dword fs:[0]
push eax
mov eax, 0x2254
call fcn.10007680
mov eax, dword [0x1002e040]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, edx
mov edi, ecx
mov dword [ebp - 0x221c], edi
mov dword [ebp - 0x225c], edi
mov dword [ebp - 0x221c], 1
mov dword [edi], 0
mov dword [edi + 4], 0
mov dword [edi + 8], 0
mov dword [ebp - 4], 0
lea eax, [ebp - 0x210]
cmp dword [esi + 0x14], 7
xorps xmm0, xmm0
mov dword [ebp - 0x2248], eax
lea eax, [ebp - 0x2210]
mov dword [ebp - 0x222c], eax
mov eax, esi
mov dword [ebp - 0x221c], 1
movlpd qword [ebp - 0x2254], xmm0
mov dword [ebp - 0x224c], 0
movlpd qword [ebp - 0x2240], xmm0
movlpd qword [ebp - 0x2238], xmm0
mov dword [ebp - 0x2230], 0
movlpd qword [ebp - 0x2224], xmm0
mov dword [ebp - 0x2258], 0x3c
mov dword [ebp - 0x2244], 0x100
mov dword [ebp - 0x2228], 0x800
jbe 0x10002378
mov eax, dword [esi]
lea ecx, [ebp - 0x2258]
push ecx
push 0
push dword [esi + 0x10]
lea ebx, [esi + 0x10]
push eax
call dword [sym.imp.WINHTTP.dll_WinHttpCrackUrl]
test eax, eax
jne 0x100023c5
mov edx, str.Failed_to_parse_URL:
mov ecx, 0x1002efc8
call fcn.10002970
cmp dword [esi + 0x14], 7
jbe 0x100023a9
mov esi, dword [esi]
push dword [ebx]
mov edx, esi
mov ecx, eax
call fcn.10003660
add esp, 4
push eax
call fcn.10002c10
add esp, 4
jmp 0x10002541
push 0
push 0
push 0
push 0
push str.Downloader
call dword [sym.imp.WINHTTP.dll_WinHttpOpen]
mov ebx, eax
test ebx, ebx
jne 0x100023fb
mov edx, str.Failed_to_open_WinHttp_session.
mov ecx, 0x1002efc8
call fcn.10002970
push eax
call fcn.10002c10
add esp, 4
jmp 0x10002541
push 0
push dword [ebp - 0x2240]
push dword [ebp - 0x2248]
push ebx
call dword [sym.imp.WINHTTP.dll_WinHttpConnect]
mov ecx, eax
mov dword [ebp - 0x2218], ecx
test ecx, ecx
jne 0x1000244d
mov edx, str.Failed_to_connect_to_host:
mov ecx, 0x1002efc8
call fcn.10002970
mov edx, dword [ebp - 0x2248]
mov ecx, eax
call fcn.10002970
push eax
call fcn.10002c10
add esp, 4
push ebx
call dword [sym.imp.WINHTTP.dll_WinHttpCloseHandle]
jmp 0x10002541
xor eax, eax
mov edx, 0x800000
cmp dword [ebp - 0x224c], 2
cmove eax, edx
push eax
push 0
push 0
push 0
push dword [ebp - 0x222c]
push 0x1002ab40
push ecx
call dword [sym.imp.WINHTTP.dll_WinHttpOpenRequest]
mov esi, eax
test esi, esi
jne 0x100024a0
mov edx, str.Failed_to_open_HTTP_request.
mov ecx, 0x1002efc8
call fcn.10002970
push eax
call fcn.10002c10
mov esi, dword [sym.imp.WINHTTP.dll_WinHttpCloseHandle]
add esp, 4
jmp 0x10002536
push 0
push 0
push 0
push 0
push 0
push 0
push esi
call dword [sym.imp.WINHTTP.dll_WinHttpSendRequest]
test eax, eax
je 0x10002515
push 0
push esi
call dword [sym.imp.WINHTTP.dll_WinHttpReceiveResponse]
test eax, eax
je 0x10002515
mov dword [ebp - 0x2214], 0
nop
lea eax, [ebp - 0x2214]
push eax
push 0x1000
lea eax, [ebp - 0x1210]
push eax
push esi
call dword [sym.imp.WINHTTP.dll_WinHttpReadData]
test eax, eax
je 0x1000250a
mov eax, dword [ebp - 0x2214]
test eax, eax
je 0x1000252d
push eax
lea eax, [ebp - 0x1210]
mov ecx, edi
push eax
push dword [edi + 4]
call fcn.100038b0
cmp dword [ebp - 0x2214], 0
ja 0x100024d0
jmp 0x1000252d
mov edx, str.Failed_to_send_receive_HTTP_request.
mov ecx, 0x1002efc8
call fcn.10002970
push eax
call fcn.10002c10
add esp, 4
push esi
mov esi, dword [sym.imp.WINHTTP.dll_WinHttpCloseHandle]
call esi
push dword [ebp - 0x2218]
call esi
push ebx
call esi
mov eax, edi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.100065f1
mov esp, ebp
pop ebp
ret