Function at 0x18016c580
Capabilities:
Query environment variable

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x18], r8
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x40
mov rbx, qword [rdx + 0x18]
mov r14, r9
movsxd rax, dword [rsp + 0xa0]
mov rdi, rdx
mov r15, qword [rdx + 0x1b0]
mov r12, rcx
mov rax, qword [rbx + rax*8 + 0x1e8]
mov qword [rsp + 0x30], rax
call fcn.180153520
mov rcx, r12
mov r13, rax
call fcn.180153510
mov rcx, qword [rbx + 0x418]
mov rsi, rax
sub rax, r14
mov qword [rsp + 0x98], rax
test byte [rcx + 0x8c], 1
jne 0x18016c5f9
cmp dword [rbx + 0x13c], 2
jne 0x18016c663
cmp byte [rbx + 0x1b0], 0x14
je 0x18016c663
mov rbp, qword [rdi + 0x348]
test rbp, rbp
je 0x18016c61b
cmp r14, rbp
jle 0x18016c61b
sub rbp, r14
add rbp, rsi
jmp 0x18016c61e
mov rbp, rsi
mov rcx, rdi
call fcn.180167900
mov ebx, eax
test eax, eax
je 0x18016c63b
mov rcx, r12
call fcn.1801534c0
mov eax, ebx
jmp 0x18016c81f
mov ebx, dword [rdi + 0x738]
mov rdx, r13
mov rcx, qword [rdi + 0xd40]
cmp rbp, rbx
cmovbe rbx, rbp
mov r8, rbx
call sub.VCRUNTIME140.dll_memcpy
mov r13, qword [rdi + 0xd40]
jmp 0x18016c6ad
lea rcx, str.CURL_SMALLREQSEND
call sub.api_ms_win_crt_environment_l1_1_0.dll_getenv
test rax, rax
je 0x18016c691
xor edx, edx
mov rcx, rax
lea r8d, [rdx + 0xa]
call sub.api_ms_win_crt_convert_l1_1_0.dll_strtoul
mov ebx, eax
test eax, eax
je 0x18016c6aa
cmp rsi, rbx
cmovb rbx, rsi
jmp 0x18016c6ad
mov rbx, qword [rdi + 0x348]
test rbx, rbx
je 0x18016c6aa
cmp r14, rbx
jle 0x18016c6aa
sub rbx, r14
add rbx, rsi
jmp 0x18016c6ad
mov rbx, rsi
mov rdx, qword [rsp + 0x30]
lea rax, [rsp + 0x88]
mov r9, rbx
mov qword [rsp + 0x20], rax
mov r8, r13
mov rcx, rdi
call fcn.18015f730
mov ebp, eax
test eax, eax
jne 0x18016c80a
mov rbx, qword [rsp + 0x88]
lea edx, [rax + 2]
cmp rbx, qword [rsp + 0x98]
mov r14, rbx
mov r8, r13
mov rcx, rdi
cmova r14, qword [rsp + 0x98]
mov r9, r14
call fcn.18015efe0
sub rbx, r14
je 0x18016c71b
lea r8, [r14 + r13]
mov r9, rbx
lea edx, [rbp + 4]
mov rcx, rdi
call fcn.18015efe0
mov rdx, qword [rsp + 0x90]
mov rcx, qword [rsp + 0x88]
movsxd rax, ecx
add qword [rdx], rax
test r15, r15
je 0x18016c837
add qword [rdi + 0x100], rbx
mov rcx, rdi
mov rdx, qword [rdi + 0x100]
call fcn.180170de0
mov rax, qword [rsp + 0x88]
cmp rax, rsi
je 0x18016c7ff
mov rcx, r12
sub rsi, rax
call fcn.180153520
add rax, qword [rsp + 0x88]
mov rcx, qword [rdi + 0x11b8]
mov qword [r15 + 0x1e0], rcx
mov rcx, qword [rdi + 0x11c0]
mov qword [r15 + 0x1e8], rcx
mov rcx, qword [r15 + 0x10]
mov qword [r15 + 0x1f0], rcx
mov rcx, qword [r15 + 8]
mov qword [r15 + 0x1f8], rcx
lea rcx, [0x180170970]
mov qword [rdi + 0x11b8], rcx
mov qword [rdi + 0x11c0], rdi
mov qword [r15 + 0x10], rax
mov rax, qword [rsp + 0x98]
mov qword [r15 + 8], rsi
sub rax, r14
mov qword [rdi + 0x118], rax
xor eax, eax
movups xmm0, xmmword [r12]
movups xmmword [r15 + 0x208], xmm0
movups xmm1, xmmword [r12 + 0x10]
mov dword [r15 + 0x200], 1
movups xmmword [r15 + 0x218], xmm1
jmp 0x18016c81f
mov dword [r15 + 0x200], 2
mov rcx, r12
call fcn.1801534c0
mov eax, ebp
mov qword [rdi + 0x118], 0
mov rbx, qword [rsp + 0x80]
add rsp, 0x40
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
cmp rcx, rsi
je 0x18016c80a
mov eax, gethostname
jmp 0x18016c81f