Function at 0x14003e0c0
Capabilities:
Check os version
Initialize winhttp library

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x220]
sub rsp, 0x320
movaps xmmword [rsp + 0x310], xmm6
mov rax, qword [0x14016f8a0]
xor rax, rsp
mov qword [rbp + 0x200], rax
mov rdi, rdx
mov rsi, rcx
mov qword [rsp + 0x60], rcx
xor r13d, r13d
mov r12d, r13d
mov dword [rsp + 0x40], r13d
xor edx, edx
mov r8d, 0xc0
call fcn.1400bbac0
mov rcx, rsi
call fcn.140034510
nop
lea rax, vtable.Aws::Http::WinHttpSyncHttpClient.0
mov qword [rsi], rax
mov qword [rsi + 0xc8], r13
mov qword [rsi + 0xd8], r13
mov qword [rsi + 0xe0], 7
mov word [rsi + 0xc8], r13w
mov qword [rsi + 0xe8], r13
mov qword [rsi + 0xf8], r13
mov qword [rsi + 0x100], 7
mov word [rsi + 0xe8], r13w
call fcn.1400170f0
mov rbx, rax
lea r14d, [r13 + 4]
test rax, rax
je 0x14003e241
mov rax, qword [rax]
mov rcx, rbx
call qword [rax + htons]
cmp eax, r14d
jl 0x14003e241
lea edx, [r13 + 1]
lea rcx, [rsp + 0x70]
call fcn.140002860
nop
lea rdx, str.Creating_http_client_with_user_agent
lea rcx, [rsp + 0x70]
call fcn.1400019a0
mov rdx, rdi
cmp qword [rdi + 0x18], 0x10
jb 0x14003e1c4
mov rdx, qword [rdi]
mov r8, qword [rdi + 0x10]
mov rcx, rax
call fcn.140001d10
lea rdx, str._with_max_connections
mov rcx, rax
call fcn.1400019a0
mov rcx, rax
mov edx, dword [rdi + 0x4c]
call fcn.1400105c0
mov rcx, rax
lea rdx, str._request_timeout
call fcn.1400019a0
mov rcx, rax
mov edx, dword [rdi + 0x54]
call fcn.1400107d0
mov rcx, rax
lea rdx, str._and_connect_timeout
call fcn.1400019a0
mov rcx, rax
mov edx, dword [rdi + 0x58]
call fcn.1400107d0
mov rax, qword [rbx]
lea r9, [rsp + 0x70]
lea r8, str.WinHttpSyncHttpClient
mov edx, r14d
mov rcx, rbx
call qword [rax + 0x18]
nop
lea rcx, [rsp + 0x70]
call fcn.140003bc0
movzx eax, byte [rdi + 0x98]
mov r15d, r13d
test al, al
sete r15b
test al, al
je 0x14003e2f5
mov dword [rbp + 0xe0], 0x11c
mov qword [rbp + 0xec], r13
xor edx, edx
mov r8d, 0x100
lea rcx, [rbp + 0xf4]
call fcn.1400bbac0
mov word [rbp + 0x1f6], r13w
xor eax, eax
mov dword [rbp + 0x1f8], eax
mov r8b, 3
lea edx, [rax + 2]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_VerSetConditionMask]
mov rcx, rax
mov r8b, 3
mov edx, 1
call qword [sym.imp.KERNEL32.dll_VerSetConditionMask]
mov rcx, rax
mov r8b, 3
mov edx, 0x20
call qword [sym.imp.KERNEL32.dll_VerSetConditionMask]
mov dword [rbp + 0xe4], 6
mov dword [rbp + 0xe8], 3
mov word [rbp + 0x1f4], r13w
mov r8, rax
mov edx, 0x23
lea rcx, [rbp + 0xe0]
call qword [sym.imp.KERNEL32.dll_VerifyVersionInfoW]
test eax, eax
cmovne r15d, r14d
mov qword [rbp + 0xa0], r13
movdqa xmm0, xmmword [0x1400f5ae0]
movdqu xmmword [rbp + 0xb0], xmm0
mov byte [rbp + 0xa0], 0
mov eax, dword [rdi + 0x23c]
cmp eax, 2
je 0x14003e34f
test eax, eax
jne 0x14003e34b
lea rcx, [rdi + 0x28]
cmp qword [rdi + 0x40], 0x10
jb 0x14003e331
mov rcx, qword [rdi + 0x28]
mov r8, qword [rdi + 0x38]
cmp r8, 0xa
jne 0x14003e34b
lea rdx, str.aws_global
call fcn.1400bc080
test eax, eax
je 0x14003e34f
mov al, 1
jmp 0x14003e351
xor al, al
mov byte [rsi + 0xa8], al
mov rcx, qword [rdi + 0xb0]
test rcx, rcx
setne al
mov byte [rsi + 0xc0], al
mov qword [rbp + 0x80], r13
movdqa xmm0, xmmword [0x1400fab00]
movdqu xmmword [rbp + 0x90], xmm0
mov word [rbp + 0x80], r13w
test rcx, rcx
je 0x14003e9be
mov ecx, dword [rdi + 0x9c]
call fcn.140030540
mov r13, rax
call fcn.1400170f0
mov rbx, rax
test rax, rax
je 0x14003e49d
mov rax, qword [rax]
mov rcx, rbx
call qword [rax + htons]
cmp eax, 4
jl 0x14003e49d
mov edx, 1
lea rcx, [rsp + 0x70]
call fcn.140002860
nop
lea rdx, str.Http_Client_is_using_a_proxy._Setting_up_proxy_with_settings_scheme
lea rcx, [rsp + 0x70]
call fcn.1400019a0
mov rcx, rax
mov rdx, r13
call fcn.1400019a0
mov rcx, rax
lea rdx, str.__host
call fcn.1400019a0
lea rdx, [rdi + 0xa0]
cmp qword [rdi + 0xb8], 0x10
jb 0x14003e416
mov rdx, qword [rdi + 0xa0]
mov r8, qword [rdi + 0xb0]
mov rcx, rax
call fcn.140001d10
lea rdx, str.__port
mov rcx, rax
call fcn.1400019a0
mov rcx, rax
mov edx, dword [rdi + 0xc0]
call fcn.1400105c0
mov rcx, rax
lea rdx, str.__username
call fcn.1400019a0
lea rdx, [rdi + 0xc8]
cmp qword [rdi + 0xe0], 0x10
jb 0x14003e469
mov rdx, qword [rdi + 0xc8]
mov r8, qword [rdi + 0xd8]
mov rcx, rax
call fcn.140001d10
mov rax, qword [rbx]
lea r9, [rsp + 0x70]
lea r8, str.WinHttpSyncHttpClient
mov edx, 4
mov rcx, rbx
call qword [rax + 0x18]
nop
lea rcx, [rsp + 0x70]
call fcn.140003bc0
mov edx, 1
lea r15d, [rdx + 2]
lea rcx, [rbp + 0xe0]
call fcn.14000bed0
nop
mov ecx, dword [rdi + 0x20]
call fcn.140030540
mov rdx, rax
lea rcx, [rbp + 0x60]
call fcn.140031570
nop
mov rdx, rax
cmp qword [rax + 0x18], 0x10
jb 0x14003e4d5
mov rdx, qword [rax]
mov r8, qword [rax + 0x10]
lea rcx, [rbp + 0xf0]
call fcn.140001d10
lea rdx, [0x1400f7484]
mov rcx, rax
call fcn.1400019a0
mov rcx, rax
mov rdx, r13
call fcn.1400019a0
mov rcx, rax
lea rdx, [0x1400f8d98]
call fcn.1400019a0
lea rdx, [rdi + 0xa0]
cmp qword [rdi + 0xb8], 0x10
jb 0x14003e526
mov rdx, qword [rdi + 0xa0]
mov r8, qword [rdi + 0xb0]
mov rcx, rax
call fcn.140001d10
lea rdx, str.:__
mov rcx, rax
call fcn.1400019a0
mov rcx, rax
mov edx, dword [rdi + 0xc0]
call fcn.1400105c0
nop
mov rdx, qword [rbp + 0x78]
cmp rdx, 0x10
jb 0x14003e58f
inc rdx
mov rcx, qword [rbp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003e589
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003ed67
call fcn.1400b91c0
nop
xor r13d, r13d
mov qword [rbp + 0x60], r13
movdqa xmm6, xmmword [0x1400f5ae0]
movdqu xmmword [rbp + 0x70], xmm6
mov byte [rbp + 0x60], r13b
or r12d, 2
mov dword [rsp + 0x40], r12d
xorps xmm0, xmm0
movups xmmword [rsp + 0x48], xmm0
mov rcx, qword [rbp + 0x168]
mov eax, ecx
and al, 0x22
cmp al, 2
je 0x14003e5f4
mov rax, qword [rbp + 0x138]
mov r8, qword [rax]
test r8, r8
je 0x14003e5f4
mov rax, qword [rbp + 0x118]
mov rdx, qword [rax]
cmp r8, qword [rbp + 0x160]
cmovb r8, qword [rbp + 0x160]
sub r8, rdx
jmp 0x14003e62e
test cl, 4
jne 0x14003e624
mov rax, qword [rbp + 0x130]
mov rcx, qword [rax]
test rcx, rcx
je 0x14003e624
mov rax, qword [rbp + 0x110]
mov rdx, qword [rax]
mov rax, qword [rbp + 0x148]
movsxd r8, dword [rax]
sub r8, rdx
add r8, rcx
jmp 0x14003e62e
mov r8, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x48]
test rdx, rdx
je 0x14003e641
lea rcx, [rbp + 0x60]
call fcn.140020f20
movdqu xmm6, xmmword [rbp + 0x70]
mov rdx, qword [rbp + 0xb8]
cmp rdx, 0x10
jb 0x14003e682
inc rdx
mov rcx, qword [rbp + 0xa0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003e67d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003ed6d
call fcn.1400b91c0
movups xmm0, xmmword [rbp + 0x60]
movups xmmword [rbp + 0xa0], xmm0
movdqu xmmword [rbp + 0xb0], xmm6
lea r14, [rbp + 0xa0]
movq rcx, xmm0
psrldq xmm6, 8
movq rax, xmm6
cmp rax, 0x10
cmovae r14, rcx
mov rdx, r14
lea rcx, [rbp + 0x60]
call fcn.140031610
mov rbx, rax
lea rax, [rbp + 0x80]
cmp rax, rbx
je 0x14003e755
mov rdx, qword [rbp + 0x98]
cmp rdx, 8
jb 0x14003e718
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003e713
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003ed73
call fcn.1400b91c0
movdqa xmm0, xmmword [0x1400fab00]
movdqu xmmword [rbp + 0x90], xmm0
mov word [rbp + 0x80], r13w
movups xmm0, xmmword [rbx]
movups xmmword [rbp + 0x80], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rbp + 0x90], xmm1
mov qword [rbx + 0x10], r13
mov qword [rbx + 0x18], 7
mov word [rbx], r13w
mov rdx, qword [rbp + 0x78]
cmp rdx, 8
jb 0x14003e795
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003e790
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003ed73
call fcn.1400b91c0
call fcn.1400170f0
mov rbx, rax
test rax, rax
je 0x14003e801
mov rax, qword [rax]
mov rcx, rbx
call qword [rax + htons]
cmp eax, 5
jl 0x14003e801
mov edx, 1
lea rcx, [rsp + 0x70]
call fcn.140002860
nop
lea rdx, str.Adding_proxy_host_string_to_winhttp
lea rcx, [rsp + 0x70]
call fcn.1400019a0
mov rcx, rax
mov rdx, r14
call fcn.1400019a0
mov rax, qword [rbx]
lea r9, [rsp + 0x70]
lea r8, str.WinHttpSyncHttpClient
mov edx, 5
mov rcx, rbx
call qword [rax + 0x18]
nop
lea rcx, [rsp + 0x70]
call fcn.140003bc0
lea rdx, [rdi + 0xc8]
cmp qword [rdx + 0x18], 0x10
jb 0x14003e812
mov rdx, qword [rdx]
lea rcx, [rbp + 0x60]
call fcn.140031610
mov r14, rax
lea rbx, [rsi + 0xc8]
cmp rbx, rax
je 0x14003e899
mov rdx, qword [rbx + 0x18]
cmp rdx, 8
jb 0x14003e869
mov rcx, qword [rbx]
lea rdx, [rdx*2 + 2]
cmp rdx, 0x1000
jb 0x14003e864
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x14003ed79
mov rcx, r8
call fcn.1400b91c0
mov qword [rbx + 0x10], r13
mov qword [rbx + 0x18], 7
mov word [rbx], r13w
movups xmm0, xmmword [r14]
movups xmmword [rbx], xmm0
movups xmm1, xmmword [r14 + 0x10]
movups xmmword [rbx + 0x10], xmm1
mov qword [r14 + 0x10], r13
mov qword [r14 + 0x18], 7
mov word [r14], r13w
mov rdx, qword [rbp + 0x78]
cmp rdx, 8
jb 0x14003e8d9
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003e8d4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003ed79
call fcn.1400b91c0
lea rdx, [rdi + 0xe8]
cmp qword [rdx + 0x18], 0x10
jb 0x14003e8ea
mov rdx, qword [rdx]
lea rcx, [rbp + 0x60]
call fcn.140031610
mov r14, rax
lea rbx, [rsi + 0xe8]
cmp rbx, rax
je 0x14003e971
mov rdx, qword [rbx + 0x18]
cmp rdx, 8
jb 0x14003e941
mov rcx, qword [rbx]
lea rdx, [rdx*2 + 2]
cmp rdx, 0x1000
jb 0x14003e93c
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x14003ed7f
mov rcx, r8
call fcn.1400b91c0
mov qword [rbx + 0x10], r13
mov qword [rbx + 0x18], 7
mov word [rbx], r13w
movups xmm0, xmmword [r14]
movups xmmword [rbx], xmm0
movups xmm1, xmmword [r14 + 0x10]
movups xmmword [rbx + 0x10], xmm1
mov qword [r14 + 0x10], r13
mov qword [r14 + 0x18], 7
mov word [r14], r13w
mov rdx, qword [rbp + 0x78]
cmp rdx, 8
jb 0x14003e9b2
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003e9ac
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003ed7f
call fcn.1400b91c0
nop
lea rcx, [rbp + 0xe0]
call fcn.140011250
mov rdx, rdi
cmp qword [rdi + 0x18], 0x10
jb 0x14003e9cb
mov rdx, qword [rdi]
lea rcx, [rbp + 0xc0]
call fcn.140031610
nop
lea rcx, [rbp + 0xc0]
cmp qword [rbp + 0xd8], 8
cmovae rcx, qword [rbp + 0xc0]
lea r8, [rbp + 0x80]
cmp qword [rbp + 0x98], 8
cmovae r8, qword [rbp + 0x80]
mov dword [rsp + 0x20], r13d
xor r9d, r9d
mov edx, r15d
call qword [sym.imp.WINHTTP.dll_WinHttpOpen]
mov rdx, rax
mov rcx, rsi
call fcn.140045680
mov edx, dword [rdi + 0x58]
mov eax, dword [rdi + 0x54]
mov dword [rsp + 0x20], eax
mov r9d, 0xffffffff
mov r8d, edx
mov rcx, qword [rsi + 0xb0]
call qword [sym.imp.WINHTTP.dll_WinHttpSetTimeouts]
test eax, eax
jne 0x14003eab9
call fcn.1400170f0
mov r14, rax
test rax, rax
je 0x14003eab9
mov rax, qword [rax]
mov rcx, r14
call qword [rax + htons]
cmp eax, 3
jl 0x14003eab9
mov edx, 1
lea rcx, [rsp + 0x70]
call fcn.140002860
nop
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
lea rdx, str.Error_setting_timeouts
lea rcx, [rsp + 0x70]
call fcn.1400019a0
mov rcx, rax
mov edx, ebx
call fcn.1400105c0
mov rax, qword [r14]
lea r9, [rsp + 0x70]
lea r8, str.WinHttpSyncHttpClient
mov edx, 3
mov rcx, r14
call qword [rax + 0x18]
nop
lea rcx, [rsp + 0x70]
call fcn.140003bc0
mov rcx, qword [rsi + 0xb0]
call fcn.140040050
movzx eax, byte [rdi + 0x1d0]
mov byte [rsi + 0xc1], al
test al, al
je 0x14003eb75
mov dword [rsp + 0x40], 0x2800
mov r9d, 4
lea r8, [rsp + 0x40]
lea edx, [r9 + 0x50]
mov rcx, qword [rsi + 0xb0]
call qword [sym.imp.WINHTTP.dll_WinHttpSetOption]
test eax, eax
jne 0x14003eb75
call fcn.1400170f0
mov r14, rax
test rax, rax
je 0x14003eb75
mov rax, qword [rax]
mov rcx, r14
call qword [rax + htons]
cmp eax, 1
jl 0x14003eb75
mov edx, 1
lea rcx, [rsp + 0x70]
call fcn.140002860
nop
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
lea rdx, str.Failed_setting_secure_crypto_protocols_with_error_code:
lea rcx, [rsp + 0x70]
call fcn.1400019a0
mov rcx, rax
mov edx, ebx
call fcn.1400105c0
mov rax, qword [r14]
lea r9, [rsp + 0x70]
lea r8, str.WinHttpSyncHttpClient
mov edx, 1
mov rcx, r14
call qword [rax + 0x18]
nop
lea rcx, [rsp + 0x70]
call fcn.140003bc0
call fcn.1400170f0
mov rbx, rax
test rax, rax
je 0x14003ebe5
mov rax, qword [rax]
mov rcx, rbx
call qword [rax + htons]
cmp eax, 5
jl 0x14003ebe5
mov edx, 1
lea rcx, [rsp + 0x70]
call fcn.140002860
nop
lea rdx, str.API_handle
lea rcx, [rsp + 0x70]
call fcn.1400019a0
mov rcx, rax
mov rdx, qword [rsi + 0xb0]
call fcn.14003ccb0
mov rax, qword [rbx]
lea r9, [rsp + 0x70]
lea r8, str.WinHttpSyncHttpClient
mov edx, 5
mov rcx, rbx
call qword [rax + 0x18]
nop
lea rcx, [rsp + 0x70]
call fcn.140003bc0
mov rbx, qword [rsi + 0xb0]
mov edx, 0xd8
lea rcx, str.WinHttpSyncHttpClient
call fcn.14001add0
mov rcx, rax
mov eax, dword [rdi + 0x60]
mov dword [rsp + 0x30], eax
movzx eax, byte [rdi + 0x5c]
mov byte [rsp + 0x28], al
mov eax, dword [rdi + 0x58]
mov dword [rsp + 0x20], eax
mov r9d, dword [rdi + 0x54]
mov r8d, dword [rdi + 0x4c]
mov rdx, rbx
call fcn.1400462b0
mov rdx, rax
mov rcx, rsi
call fcn.1400455c0
nop
mov rdx, qword [rbp + 0xd8]
cmp rdx, 8
jb 0x14003ec78
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0xc0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003ec73
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003ed85
call fcn.1400b91c0
movdqa xmm0, xmmword [0x1400fab00]
movdqu xmmword [rbp + 0xd0], xmm0
mov word [rbp + 0xc0], r13w
mov rdx, qword [rbp + 0x98]
cmp rdx, 8
jb 0x14003ecd6
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003ecd1
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003ed8b
call fcn.1400b91c0
movdqa xmm0, xmmword [0x1400fab00]
movdqu xmmword [rbp + 0x90], xmm0
mov word [rbp + 0x80], r13w
mov rdx, qword [rbp + 0xb8]
cmp rdx, 0x10
jb 0x14003ed2c
inc rdx
mov rcx, qword [rbp + 0xa0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003ed26
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003ed61
call fcn.1400b91c0
nop
mov rax, rsi
mov rcx, qword [rbp + 0x200]
xor rcx, rsp
call fcn.1400b91a0
mov rbx, qword [rsp + 0x370]
movaps xmm6, xmmword [rsp + 0x310]
add rsp, 0x320
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.1400bfe60
nop
call fcn.1400bfe60
int3
call fcn.1400bfe60
int3
call fcn.1400bfe60
int3
call fcn.1400bfe60
int3
call fcn.1400bfe60
nop
call fcn.1400bfe60
nop
call fcn.1400bfe60
int3