Function at 0x14000e3e0
Capabilities:
Query environment variable

Disassembly:
mov r11, rsp
mov qword [r11 + 0x10], rbx
mov qword [r11 + 0x18], rbp
push rsi
push rdi
push r14
sub rsp, 0x50
mov rax, qword [0x140024020]
xor rax, rsp
mov qword [rsp + 0x48], rax
mov rsi, rcx
xorps xmm0, xmm0
movups xmmword [rsp + 0x28], xmm0
xor r14d, r14d
mov qword [r11 - 0x30], r14
mov qword [r11 - 0x28], 7
mov word [r11 - 0x40], r14w
movzx eax, byte [str.d38cc827_e34f_4453_9df4_1e796e9f1d07]
cmp al, 0x65
jne 0x14000e482
mov qword [r11 - 0x30], r14
mov word [r11 - 0x40], r14w
xor r8d, r8d
xor edx, edx
lea rcx, str._DOTNET_TEST_DEFAULT_INSTALL_PATH
call qword [sym.imp.KERNEL32.dll_GetEnvironmentVariableW]
mov edi, eax
test eax, eax
jne 0x14000e4cb
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xcb
je 0x14000e482
call qword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
jle 0x14000e46c
movzx eax, ax
or eax, 0x80070000
mov r8d, eax
lea rdx, str._DOTNET_TEST_DEFAULT_INSTALL_PATH
lea rcx, str.Failed_to_read_environment_variable___s___HRESULT:_0x_X
call fcn.140007240
mov dword [rsp + 0x20], r14d
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov rcx, rax
lea rdx, [rsp + 0x20]
call qword [sym.imp.KERNEL32.dll_IsWow64Process]
test eax, eax
je 0x14000e4ad
cmp dword [rsp + 0x20], 0
lea rcx, str.ProgramFiles_x86_
jne 0x14000e4b4
lea rcx, str.ProgramFiles
mov rdx, rsi
call fcn.140007e90
test al, al
jne 0x14000e5bd
xor bl, bl
jmp 0x14000e5e6
mov eax, 2
mul rdi
mov rbx, 0xffffffffffffffff
cmovo rax, rbx
mov rcx, rax
call fcn.14001409c
mov rbp, rax
mov r8d, edi
mov rdx, rax
lea rcx, str._DOTNET_TEST_DEFAULT_INSTALL_PATH
call qword [sym.imp.KERNEL32.dll_GetEnvironmentVariableW]
test eax, eax
je 0x14000e45a
inc rbx
cmp word [rbp + rbx*2], 0
jne 0x14000e504
mov rax, qword [rsp + 0x40]
cmp rbx, rax
ja 0x14000e545
lea rdi, [rsp + 0x28]
cmp rax, 8
cmovae rdi, qword [rsp + 0x28]
mov qword [rsp + 0x38], rbx
add rbx, rbx
mov r8, rbx
mov rdx, rbp
mov rcx, rdi
call fcn.140015670
mov word [rbx + rdi], r14w
jmp 0x14000e555
mov r9, rbp
mov rdx, rbx
lea rcx, [rsp + 0x28]
call fcn.140005e30
mov rcx, rbp
call fcn.140013dd0
lea rax, [rsp + 0x28]
cmp rsi, rax
je 0x14000e5e4
lea r9, [rsp + 0x28]
cmp qword [rsp + 0x40], 8
cmovae r9, qword [rsp + 0x28]
mov rbx, qword [rsp + 0x38]
mov rax, qword [rsi + 0x18]
cmp rbx, rax
ja 0x14000e5b0
mov rdi, rsi
cmp rax, 8
jb 0x14000e596
mov rdi, qword [rsi]
mov qword [rsi + 0x10], rbx
lea r8, [rbx + rbx]
mov rdx, r9
mov rcx, rdi
call fcn.140015670
mov word [rdi + rbx*2], r14w
jmp 0x14000e5e4
mov rdx, rbx
mov rcx, rsi
call fcn.140005e30
jmp 0x14000e5e4
lea rdx, str.dotnet
mov rcx, rsi
call fcn.1400077e0
call fcn.140010440
test al, al
je 0x14000e5e4
mov rdx, qword [0x14001cae8]
mov rcx, rsi
call fcn.1400077e0
mov bl, 1
mov rdx, qword [rsp + 0x40]
cmp rdx, 8
jb 0x14000e62b
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x28]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000e626
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14000e626
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140013dd0
movzx eax, bl
mov rcx, qword [rsp + 0x48]
xor rcx, rsp
call fcn.140013db0
mov rbx, qword [rsp + 0x78]
mov rbp, qword [rsp + 0x80]
add rsp, 0x50
pop r14
pop rdi
pop rsi
ret