Function at 0x416c74
Capabilities:
Initialize winhttp library
Prepare http request

Disassembly:
push ebp
mov ebp, esp
xor ecx, ecx
push ecx
push ecx
push ecx
push ecx
push ebx
push esi
push edi
mov ebx, eax
xor eax, eax
push ebp
push 0x416f36
push dword fs:[eax]
mov dword fs:[eax], esp
mov edx, dword [ebx + 0x10]
mov eax, dword [ebx + 4]
call fcn.0041366c
mov esi, dword [ebx + 4]
mov eax, dword [esi + 8]
mov edx, 0x416f50
call fcn.00403658
je 0x416cba
lea eax, [esi + 8]
mov edx, 0x416f60
call fcn.00403350
mov esi, 1
xor edi, edi
xor eax, eax
mov dword [ebp - 4], eax
cmp byte [ebx + 0xce], 0
jne 0x416cf9
cmp dword [ebx + 0x24], 0
je 0x416cfb
mov esi, 3
lea eax, [ebp - 8]
mov edx, dword [ebx + 0x24]
call fcn.004039fc
mov eax, dword [ebp - 8]
call fcn.00403a0c
mov edi, eax
mov eax, 0x416f68
mov dword [ebp - 4], eax
jmp 0x416cfb
xor esi, esi
push 0
mov eax, dword [ebp - 4]
push eax
push edi
push esi
lea eax, [ebp - 8]
mov edx, dword [ebx + 0xa8]
call fcn.004039fc
mov eax, dword [ebp - 8]
call fcn.00403a0c
push eax
call sub.winhttp.dll_WinHttpOpen
mov dword [ebx + 0x48], eax
cmp dword [ebx + 0x48], 0
jne 0x416d34
call sub.kernel32.dll_GetLastError_1
mov ebx, eax
jmp 0x416f13
mov eax, dword [ebx + 0xc0]
push eax
mov eax, dword [ebx + 0xc8]
push eax
mov eax, dword [ebx + 0xb8]
push eax
push 0
mov eax, dword [ebx + 0x48]
push eax
call sub.winhttp.dll_WinHttpSetTimeouts
cmp byte [ebx + 0xcd], 0
je 0x416d6c
xor ecx, ecx
mov edx, 0x44
mov eax, dword [ebx + 0x48]
call fcn.00415c94
cmp byte [ebx + 0xcc], 0
je 0x416d87
mov ecx, 0xaa0
mov edx, 0x54
mov eax, dword [ebx + 0x48]
call fcn.00415c94
mov esi, dword [ebx + 4]
cmp dword [esi + 0x10], 0
jne 0x416dad
mov eax, dword [esi + 8]
mov edx, 0x416f50
call fcn.00403658
jne 0x416da6
mov esi, 0x1bb
jmp 0x416dba
mov esi, 0x50
jmp 0x416dba
mov eax, dword [ebx + 4]
mov eax, dword [eax + 0x10]
call fcn.00406a4c
mov esi, eax
push 0
push esi
lea eax, [ebp - 8]
mov edx, dword [ebx + 4]
mov edx, dword [edx + 0x18]
call fcn.004039fc
mov eax, dword [ebp - 8]
call fcn.00403a0c
push eax
mov eax, dword [ebx + 0x48]
push eax
call sub.winhttp.dll_WinHttpConnect
mov edi, eax
mov dword [ebx + 0x4c], edi
test edi, edi
jne 0x416df2
call sub.kernel32.dll_GetLastError_1
mov ebx, eax
jmp 0x416f13
mov esi, pe_nt_image_headers32
mov edi, dword [ebx + 4]
mov eax, dword [edi + 8]
mov edx, 0x416f50
call fcn.00403658
jne 0x416e0f
or esi, 0x800000
push esi
push 0
lea eax, [ebp - 8]
mov edx, dword [ebx + 0x28]
call fcn.004039fc
mov eax, dword [ebp - 8]
push eax
push 0x416f78
lea ecx, [ebp - 0x10]
mov dl, byte [0x416f8c]
mov eax, edi
call fcn.0041396c
mov edx, dword [ebp - 0x10]
lea eax, [ebp - 0xc]
call fcn.004039fc
mov eax, dword [ebp - 0xc]
call fcn.00403a0c
push eax
mov eax, dword [ebx + 0x1c]
call fcn.00403a0c
push eax
mov eax, dword [ebx + 0x4c]
push eax
call sub.winhttp.dll_WinHttpOpenRequest
mov dword [ebx + 0x50], eax
cmp dword [ebx + 0x50], 0
jne 0x416e71
call sub.kernel32.dll_GetLastError_1
mov ebx, eax
jmp 0x416f13
push 0
push 0x40ff
mov eax, 0x415ca8
push eax
mov eax, dword [ebx + 0x50]
push eax
call sub.winhttp.dll_WinHttpSetStatusCallback
cmp byte [ebx + 0xb5], 0
jne 0x416ea2
mov ecx, 2
mov edx, 0x3f
mov eax, dword [ebx + 0x50]
call fcn.00415c94
xor eax, eax
mov al, byte [ebx + 0xcf]
mov esi, eax
shl esi, 0xc
xor eax, eax
mov al, byte [ebx + 0xd0]
shl eax, 0xd
or esi, eax
xor eax, eax
mov al, byte [ebx + 0xd1]
shl eax, 8
or esi, eax
xor eax, eax
mov al, byte [ebx + 0xd3]
shl eax, 9
or esi, eax
xor eax, eax
mov al, byte [ebx + 0xd2]
shl eax, 0x10
or esi, eax
test esi, esi
je 0x416ef6
mov ecx, esi
mov edx, 0x1f
mov eax, dword [ebx + 0x50]
call fcn.00415c94
cmp byte [ebx + 0xbc], 0
je 0x416f11
mov ecx, 3
mov edx, 0x76
mov eax, dword [ebx + 0x50]
call fcn.00415c94
xor ebx, ebx
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x416f3d
lea eax, [ebp - 0x10]
call fcn.004032fc
lea eax, [ebp - 0xc]
mov edx, 2
call fcn.0040390c
ret