Function at 0x180156340
Capabilities:
Query environment variable

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], r8
mov qword [rsp + 8], rcx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x50
xor ebp, ebp
mov rax, r8
mov rsi, rdx
mov r15, rcx
test r8, r8
lea r14d, [rbp - 1]
je 0x1801565a1
lea r8, [0x1801ef5f8]
lea rcx, [0x1801ef5f4]
test rbp, rbp
jne 0x1801565a1
cmp r14d, 0xffffffff
jne 0x1801565a1
mov r15, qword [rax]
xor r13d, r13d
mov qword [rsp + 0x48], rbp
mov dword [rsp + 0xa8], r14d
cmp byte [r15], 0x3a
jne 0x1801563bc
lea rcx, [r15 + 1]
mov rdi, rcx
jmp 0x180156450
movzx eax, byte [rsi + 0x3d8]
lea r9, [0x1801e534e]
test al, al
lea rdx, [0x1801e534e]
cmovne r9, rcx
cmovne rdx, r8
mov r8, qword [rsi + 0xa0]
lea rcx, [0x1801b7a34]
call fcn.18016c510
mov r12, rax
test rax, rax
je 0x180156593
mov rdi, 0xffffffffffffffff
inc rdi
cmp byte [rax + rdi], bpl
jne 0x180156401
mov r8, rdi
mov rdx, r12
mov rcx, r15
call fcn.18015e1c0
lea r8, str.C:Dev_vcpkg_buildtreescurl_srcurl_7_81_0_459d17a9d2.cleanliburl.c
mov edx, 0xc69
mov rcx, r12
mov ebx, eax
call fcn.18015d940
test ebx, ebx
je 0x180156440
cmp byte [r15 + rdi], 0x3a
jne 0x180156440
mov eax, 1
jmp 0x180156442
xor eax, eax
lea rcx, [rdi + 1]
add rcx, r15
mov rdi, rcx
test eax, eax
je 0x1801564c7
cmp byte [rcx], 0x3a
jne 0x18015645b
lea rdx, [rcx + 1]
jmp 0x180156498
mov edx, 0x3a
call sub.VCRUNTIME140.dll_strchr
mov rbx, rax
test rax, rax
je 0x1801564c7
mov r8d, 0xa
mov qword [rsp + 0x40], rbp
lea rdx, [rsp + 0x40]
mov rcx, rdi
call sub.api_ms_win_crt_convert_l1_1_0.dll_strtol
cmp qword [rsp + 0x40], rbx
jne 0x1801564c7
cmp eax, dword [rsi + 0x154]
jne 0x1801564c7
lea rdx, [rbx + 1]
mov r15, qword [rsp + 0x90]
lea r9, [rsp + 0xa8]
mov rcx, r15
lea r8, [rsp + 0x48]
call fcn.180156120
mov rbp, qword [rsp + 0x48]
mov r13d, eax
mov r14d, dword [rsp + 0xa8]
jmp 0x1801564cf
mov r15, qword [rsp + 0x90]
test r13d, r13d
jne 0x180156599
test rbp, rbp
je 0x18015650c
cmp byte [rbp], r13b
je 0x18015650c
mov r8, rbp
mov qword [rsi + 0xc0], rbp
lea rdx, str.Connecting_to_hostname:__s
mov qword [rsi + 0xd0], rbp
mov rcx, r15
mov byte [rsi + 0x3d4], 1
call fcn.180158690
jmp 0x180156529
lea r8, str.C:Dev_vcpkg_buildtreescurl_srcurl_7_81_0_459d17a9d2.cleanliburl.c
mov byte [rsi + 0x3d4], 0
mov edx, 0xca8
mov rcx, rbp
call fcn.18015d940
xor ebp, ebp
test r14d, r14d
js 0x18015656a
mov r8d, r14d
mov dword [rsi + 0x158], r14d
lea rdx, str.Connecting_to_port:__d
mov byte [rsi + 0x3d5], 1
mov rcx, r15
call fcn.180158690
mov rax, qword [rsp + 0xa0]
mov rax, qword [rax + 8]
mov qword [rsp + 0xa0], rax
test rax, rax
jmp 0x180156370
mov rax, qword [rsp + 0xa0]
mov r14d, 0xffffffff
mov byte [rsi + 0x3d5], 0
mov rax, qword [rax + 8]
mov qword [rsp + 0xa0], rax
test rax, rax
jmp 0x180156370
mov r13d, 0x1b
mov eax, r13d
jmp 0x180156706
cmp qword [r15 + 0xb68], 0
je 0x180156704
test rbp, rbp
jne 0x180156704
cmp r14d, 0xffffffff
jne 0x180156704
mov rax, qword [rsi + 0x418]
cmp dword [rax + 0x84], 2
je 0x1801565e7
lea rcx, str.CURL_ALTSVC_HTTP
call sub.api_ms_win_crt_environment_l1_1_0.dll_getenv
test rax, rax
je 0x180156704
mov rcx, qword [r15 + 0xb68]
mov edx, 8
mov r14, qword [rsi + 0x90]
mov r9d, dword [rsi + 0x154]
mov r8, r14
mov eax, dword [rcx + 0x28]
and eax, 8
mov dword [rsp + 0x28], eax
lea rax, [rsp + 0xa0]
mov qword [rsp + 0x20], rax
call fcn.18015bab0
test al, al
je 0x180156704
mov rcx, qword [rsp + 0xa0]
lea r8, str.C:Dev_vcpkg_buildtreescurl_srcurl_7_81_0_459d17a9d2.cleanliburl.c
mov edx, 0xce2
mov rcx, qword [rcx + 0x10]
call fcn.18015dfe0
mov rbp, rax
test rax, rax
jne 0x180156655
lea eax, [rbp + 0x1b]
jmp 0x180156706
mov rdx, qword [rsp + 0xa0]
mov qword [rsi + 0xc0], rbp
mov qword [rsi + 0xd0], rbp
mov byte [rsi + 0x3d4], 1
movzx eax, word [rdx + 0x18]
mov dword [rsi + 0x158], eax
mov byte [rsi + 0x3d5], 1
mov byte [rsi + 0x3d3], 1
mov ecx, dword [rdx + 0x1c]
movzx edi, word [rdx + 0x18]
call fcn.18015b950
mov ecx, 8
mov rbx, rax
call fcn.18015b950
mov dword [rsp + 0x38], edi
lea rdx, str.Alt_svc_connecting_from___s__s:_d_to___s__s:_d
mov r8, rax
mov qword [rsp + 0x30], rbp
mov eax, dword [rsi + 0x154]
mov r9, r14
mov qword [rsp + 0x28], rbx
mov rcx, r15
mov dword [rsp + 0x20], eax
call fcn.180158690
mov rax, qword [rsp + 0xa0]
mov ecx, dword [rax + 0x1c]
cmp ecx, 8
je 0x180156704
cmp ecx, 0x10
je 0x1801566fd
cmp ecx, 0x20
jne 0x180156704
mov dword [rsi + 0x8c], 5
mov byte [rsi + 0x1b0], 0x1e
jmp 0x180156704
mov byte [rsi + 0x1b0], reloc.WS2_32.dll_sendto
xor eax, eax
mov rbx, qword [rsp + 0x98]
add rsp, 0x50
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret