Function at 0x1800a6770
Capabilities:
Query environment variable

Disassembly:
mov qword [rsp + 8], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x490]
sub rsp, 0x590
mov rax, qword [0x1801eef68]
xor rax, rsp
mov qword [rbp + 0x480], rax
mov r13d, dword [rbp + 0x4f0]
mov rdi, r8
mov r15, qword [rbp + 0x4f8]
mov ebx, r13d
mov qword [rsp + 0x68], r8
mov rsi, rdx
mov qword [rsp + 0x70], rdx
lea eax, [r13 + 0xc]
mov qword [rbp + 0x128], rdx
mov qword [rbp + 0x130], r8
mov qword [rbp + 0xa0], r15
mov qword [rbp + 0x138], r15
mov dword [rbp - 0x74], ebx
mov dword [rbp - 0x70], ebx
cmp r13d, eax
jae case.0x1800a6830.93
movzx r12d, byte [rsp + 0x50]
lea r8, [0x180000000]
mov r13, qword [rbp + 0x98]
xor edx, edx
nop word [rax + rax]
lea eax, [rbx - 0x58]
cmp eax, 0x24
ja case.0x1800a6830.98
movzx eax, byte [r8 + rax + 0xa722c]
mov ecx, dword [r8 + rax*4 + 0xa7200]
add rcx, r8
jmp rcx
mov rax, qword [0x1801f3150]
mov qword [rbp + 0x118], rax
jmp case.0x1800a6830.98
mov r14d, 0xc0
nop dword [rax + rax]
mov eax, r14d
sub eax, 0xc0
je 0x1800a6a05
sub eax, 0x28
je 0x1800a69f5
sub eax, 0x28
je 0x1800a6927
cmp eax, 0x28
jne 0x1800a69d1
test r12b, r12b
je 0x1800a68b8
mov rax, qword [rbp + 0x88]
lea r9, [rbp + 0xb0]
mov qword [rbp + 0xb0], rax
lea rcx, [rbp + 0xb8]
mov rax, qword [r15]
xor r8d, r8d
mov edx, reloc.SHELL32.dll_SHSetFolderPathW
mov qword [rbp + 0xb8], rax
call fcn.1800cb680
mov r12d, eax
mov byte [rsp + 0x50], al
mov rbx, qword [rbp + 0x90]
test rbx, rbx
je 0x1800a68d5
mov edx, dword [rdi]
mov rcx, rbx
mov r8, qword [r15]
inc edx
call qword [r8 + reloc.SHELL32.dll_SHSetInstanceExplorer]
test r12b, r12b
jne 0x1800a69d1
xor eax, eax
mov dword [rbp - 0x40], 0x426
mov dword [rbp - 0x50], eax
lea r8, [rbp + 0x140]
mov dword [rbp - 0x48], eax
lea rdx, [rbp - 0x48]
mov rax, qword [r15]
lea rcx, [rbp - 0x40]
mov qword [rbp + 0x140], rax
mov r9d, 0x75
lea rax, [rbp - 0x50]
mov qword [rsp + 0x20], rax
call fcn.180063bc0
mov dword [rsp + 0x58], 0x426
jmp case.0x1800a6830.93
mov rsi, qword [rbp + 0x88]
lea rdx, [rbp + 0xc0]
mov r8d, 0x19
mov qword [rbp + 0xc0], rsi
xor ecx, ecx
call fcn.1800cd2f0
mov rdi, rax
test r12b, r12b
je 0x1800a69c7
mov rax, qword [rsp + 0x68]
mov ecx, dword [rax]
add rcx, qword [rbp + 0x90]
cmp rdi, rcx
jae 0x1800a69c7
mov qword [rbp + 0xc8], rsi
lea r9, [rbp + 0xc8]
mov rcx, qword [r15]
xor r8d, r8d
mov qword [rbp + 0xd0], rcx
mov edx, reloc.SHELL32.dll_SHSetFolderPathW
lea rcx, [rbp + 0xd0]
call fcn.1800cb680
mov ebx, eax
lea rsi, [rdi + 1]
mov r8d, 0x19
mov byte [rsp + 0x50], bl
lea rdx, [rbp + 0xd8]
mov qword [rbp + 0x88], rsi
xor ecx, ecx
mov qword [rbp + 0xd8], rsi
movzx r12d, al
call fcn.1800cd2f0
mov rdi, rax
test bl, bl
jne 0x1800a6951
mov rdi, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x70]
add r14d, 0x28
cmp r14d, 0x160
jb 0x1800a6850
mov ebx, dword [rbp - 0x74]
xor edx, edx
mov rdi, qword [rsp + 0x68]
mov dword [rsp + 0x58], edx
jmp 0x1800a7027
mov rax, qword [rbp + 0x90]
mov qword [rbp + 0x88], rax
jmp 0x1800a69d1
mov ecx, dword [rdi]
mov r12b, 1
mov rdx, qword [r15]
inc ecx
mov byte [rsp + 0x50], r12b
call qword [rdx + 0xa8]
mov qword [rbp + 0x90], rax
test rax, rax
je 0x1800a7058
mov ecx, dword [rdi]
test ecx, ecx
je 0x1800a69d1
mov rdx, qword [rsi]
mov r8d, ecx
mov rcx, rax
call sub.VCRUNTIME140.dll_memcpy
jmp 0x1800a69d1
mov rax, qword [r15]
cmp byte [rax + 0x1a9], 0
je 0x1800a7123
cmp byte [rax + 0x1aa], 0
jne 0x1800a70df
cmp byte [rax + 0x1ab], 0
jne 0x1800a70df
cmp byte [rax + 0x1ac], 0
jne 0x1800a70df
cmp dword [rdi], 0x15
jne 0x1800a70a8
mov rax, qword [rsi]
lea rdx, [rbp + 0xe0]
add rax, 0x11
xor r8d, r8d
mov ecx, 0x8f
mov qword [rbp + 0xe0], rax
call fcn.18003eb90
mov r15d, eax
lea rdx, [rbp + 0xe8]
mov rax, qword [rsi]
xor r8d, r8d
add rax, 0xd
mov ecx, 0x8f
mov qword [rbp + 0xe8], rax
call fcn.18003eb90
mov r14d, eax
lea rdx, [rbp + 0xf0]
mov rax, qword [rsi]
xor r8d, r8d
add rax, 9
mov ecx, 0x8f
mov qword [rbp + 0xf0], rax
call fcn.18003eb90
mov rbx, qword [rsp + 0x70]
lea rdx, [rbp + 0xf8]
mov esi, eax
xor r8d, r8d
mov ecx, 0x8f
mov rax, qword [rbx]
add rax, 5
mov qword [rbp + 0xf8], rax
call fcn.18003eb90
mov edi, eax
lea rcx, [rbp + 0x100]
mov rax, qword [rbx]
mov r9d, 0x6a
add rax, 2
xor r8d, r8d
xor edx, edx
mov qword [rbp + 0x100], rax
call fcn.180006190
movzx ebx, ax
lea rcx, [rbp + 0x108]
mov rax, qword [rsp + 0x70]
mov r9d, 0x6a
xor r8d, r8d
xor edx, edx
mov rax, qword [rax]
mov qword [rbp + 0x108], rax
call fcn.180006190
mov word [rbp - 0x80], ax
lea r9, [rbp + 0x110]
mov dword [rbp - 0x68], esi
lea r8, [rbp - 0x80]
mov rsi, qword [rsp + 0x70]
mov dword [rbp + 0x78], r15d
mov r15, qword [rbp + 0xa0]
mov dword [rbp + 0x80], r14d
mov rcx, qword [rsi]
mov dword [rbp + 0x70], edi
mov rax, qword [r15]
mov word [rsp + 0x78], bx
movzx edx, byte [rcx + 4]
lea rcx, [rbp - 0x68]
mov qword [rbp + 0x110], rax
lea rax, [rbp + 0x70]
mov qword [rsp + 0x40], rax
lea rax, [rbp + 0x78]
mov qword [rsp + 0x38], rax
lea rax, [rsp + 0x60]
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x78]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x80]
mov byte [rsp + 0x60], dl
mov edx, 0x105
mov qword [rsp + 0x20], rax
call fcn.1800b2ac0
test eax, eax
jne 0x1800a709f
mov ebx, dword [rbp - 0x74]
xor edx, edx
mov rdi, qword [rsp + 0x68]
mov dword [rsp + 0x58], edx
jmp 0x1800a7027
mov rax, qword [r15]
cmp byte [rax + 0x1a9], 0
je 0x1800a71ab
cmp byte [rax + 0x1aa], 0
jne 0x1800a7167
cmp byte [rax + 0x1ab], 0
jne 0x1800a7167
cmp byte [rax + 0x1ac], 0
jne 0x1800a7167
cmp dword [rdi], 1
jae case.0x1800a6830.98
mov qword [rbp + 0x168], rax
lea r8, [rbp + 0x168]
lea rax, [rbp + 0x28]
mov dword [rbp + 0x28], edx
mov dword [rbp + 0x30], edx
lea rcx, [rbp + 0x38]
mov qword [rsp + 0x20], rax
lea rdx, [rbp + 0x30]
mov dword [rbp + 0x38], 0x404
mov r9d, 0x75
call fcn.180063bc0
mov dword [rsp + 0x58], 0x404
mov rax, qword [rsp + 0x58]
mov rcx, qword [rbp + 0x480]
xor rcx, rsp
call fcn.1800d7250
mov rbx, qword [rsp + 0x5d0]
add rsp, 0x590
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov rdx, qword [rbp + 0x120]
mov ecx, 2
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_signal]
lea rax, [0x1801f3160]
mov edx, 2
lea rcx, [rbp + 0x180]
nop dword [rax]
lea rax, [rax + 0x80]
movups xmm0, xmmword [rcx]
movups xmm1, xmmword [rcx + 0x10]
lea rcx, [rcx + 0x80]
movups xmmword [rax - 0x80], xmm0
movups xmm0, xmmword [rcx - 0x60]
movups xmmword [rax - 0x70], xmm1
movups xmm1, xmmword [rcx - 0x50]
movups xmmword [rax - 0x60], xmm0
movups xmm0, xmmword [rcx - 0x40]
movups xmmword [rax - 0x50], xmm1
movups xmm1, xmmword [rcx - 0x30]
movups xmmword [rax - 0x40], xmm0
movups xmm0, xmmword [rcx - 0x20]
movups xmmword [rax - 0x30], xmm1
movups xmm1, xmmword [rcx - 0x10]
movups xmmword [rax - 0x20], xmm0
movups xmmword [rax - 0x10], xmm1
sub rdx, 1
jne 0x1800a6ce0
mov rax, qword [rbp + 0x118]
mov qword [0x1801f3150], rax
mov eax, dword [rbp - 0x78]
mov dword [rsp + 0x58], eax
jmp 0x1800a7027
mov rax, qword [rbp + 0xa8]
lea rcx, [0x1801f3160]
mov qword [0x1801f3e40], rdx
mov dword [rax + 0x88], edx
lea rax, [rbp + 0x180]
mov edx, 2
nop dword [rax]
nop dword [rax + rax]
lea rax, [rax + 0x80]
movups xmm0, xmmword [rcx]
movups xmm1, xmmword [rcx + 0x10]
lea rcx, [rcx + 0x80]
movups xmmword [rax - 0x80], xmm0
movups xmm0, xmmword [rcx - 0x60]
movups xmmword [rax - 0x70], xmm1
movups xmm1, xmmword [rcx - 0x50]
movups xmmword [rax - 0x60], xmm0
movups xmm0, xmmword [rcx - 0x40]
movups xmmword [rax - 0x50], xmm1
movups xmm1, xmmword [rcx - 0x30]
movups xmmword [rax - 0x40], xmm0
movups xmm0, xmmword [rcx - 0x20]
movups xmmword [rax - 0x30], xmm1
movups xmm1, xmmword [rcx - 0x10]
movups xmmword [rax - 0x20], xmm0
movups xmmword [rax - 0x10], xmm1
sub rdx, 1
jne 0x1800a6d80
lea rdx, [0x18006bc10]
mov ecx, 2
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_signal]
lea rcx, [0x1801f3160]
mov rdx, rsp
mov qword [rbp + 0x120], rax
call sub.VCRUNTIME140.dll___intrinsic_setjmp
mov rsi, qword [rbp + 0x128]
xor edx, edx
mov rdi, qword [rbp + 0x130]
mov r15, qword [rbp + 0x138]
mov ebx, dword [rbp - 0x70]
movzx r12d, byte [rsp + 0x50]
mov r13, qword [rbp + 0x98]
mov qword [rsp + 0x70], rsi
mov qword [rsp + 0x68], rdi
mov qword [rbp + 0xa0], r15
jmp 0x1800a7027
movsxd rcx, dword [r15]
mov rax, qword [0x1801ef0d0]
mov rax, qword [rax + rcx*8]
mov qword [rbp + 0xa8], rax
mov qword [0x1801f3150], rax
jmp case.0x1800a6830.98
mov r14, qword [rbp + 0xa8]
cmp dword [r14 + 0x88], 0
jne 0x1800a7018
nop
mov rax, qword [r14 + 0x68]
test rax, rax
je 0x1800a6e8d
mov rcx, qword [0x1801f3150]
mov rcx, qword [rcx + 0x38]
call rax
mov rsi, rax
xor edx, edx
jmp 0x1800a6ef5
mov dword [rsp + 0x38], 0xc3
xor r9d, r9d
mov qword [rsp + 0x30], rdx
xor r8d, r8d
mov qword [rsp + 0x28], rdx
xor ecx, ecx
mov qword [rsp + 0x20], rdx
mov dword [rbp - 0x60], edx
lea rdx, [rbp - 0x60]
call fcn.18000a140
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov edx, 0x200
lea rcx, [rbp + 0x280]
mov r8, rax
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fgets]
mov edx, 0
lea rcx, [rbp + 0x280]
cmp rax, rcx
mov byte [rbp + 0x47f], dl
lea rsi, [rbp + 0x280]
cmovne rsi, rdx
test rsi, rsi
je 0x1800a704c
mov edx, 0xa
mov rcx, rsi
call sub.VCRUNTIME140.dll_strchr
mov rbx, rax
test rax, rax
je 0x1800a6f1f
mov byte [rax], 0
cmp rax, rsi
je 0x1800a7000
mov rax, qword [r14 + 0x70]
test rax, rax
je 0x1800a6f2d
mov rcx, rsi
call rax
mov eax, dword [r15]
lea rdx, [rbp - 0x58]
mov r8, rsi
mov dword [rbp - 0x58], eax
mov ecx, 0xbd
call fcn.1800af5f0
mov dword [rbp - 0x78], eax
cmp eax, 0xb6d04
jne 0x1800a6ff0
mov edi, 0x13
mov eax, edi
sub eax, 0x13
je 0x1800a6f9f
sub eax, 0x39
je 0x1800a6f8d
sub eax, 0x39
je 0x1800a6f83
cmp eax, 0x39
jne 0x1800a6fe1
mov ecx, dword [r15]
lea r8, str.over_hard_limit_bits_after_transform_params___d__d_
mov r9, r13
xor edx, edx
call fcn.1800c62d0
jmp 0x1800a6fe1
test rbx, rbx
je 0x1800a6fe1
mov byte [rbx], 0
jmp 0x1800a6fe1
mov edx, 9
mov rcx, r13
call sub.VCRUNTIME140.dll_strchr
mov rbx, rax
jmp 0x1800a6fe1
mov r13, rsi
mov qword [rbp + 0x98], rsi
nop dword [rax]
movzx eax, byte [r13]
cmp al, 0x20
je 0x1800a6fbd
cmp al, 9
jne 0x1800a6fc2
inc r13
jmp 0x1800a6fb0
mov edx, 0x20
mov qword [rbp + 0x98], r13
mov rcx, r13
call sub.VCRUNTIME140.dll_strchr
mov rbx, rax
test rax, rax
je 0x1800a6fe1
mov byte [rax], 0
add edi, 0x39
cmp edi, 0xf7
jb 0x1800a6f57
cmp qword [r14 + 0x68], 0
je 0x1800a7000
mov rcx, rsi
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
cmp dword [r14 + 0x88], 0
mov edx, 0
je 0x1800a6e70
mov rdi, qword [rsp + 0x68]
mov eax, edx
mov rsi, qword [rsp + 0x70]
mov ebx, 0x5b
mov dword [rbp - 0x78], eax
lea r8, [0x180000000]
mov eax, dword [rbp + 0x4f0]
inc ebx
add eax, 0xc
mov dword [rbp - 0x74], ebx
mov dword [rbp - 0x70], ebx
cmp ebx, eax
jae case.0x1800a6830.93
jmp 0x1800a6810
mov rdi, qword [rsp + 0x68]
mov eax, 0xb6d06
jmp 0x1800a701a
mov dword [rbp - 0x38], eax
lea r8, [rbp + 0x148]
mov dword [rbp - 0x30], eax
lea rdx, [rbp - 0x30]
mov rax, qword [r15]
lea rcx, [rbp - 0x28]
mov qword [rbp + 0x148], rax
mov r9d, 0x75
lea rax, [rbp - 0x38]
mov dword [rbp - 0x28], 1
mov qword [rsp + 0x20], rax
call fcn.180063bc0
mov dword [rsp + 0x58], 1
jmp case.0x1800a6830.93
mov dword [rsp + 0x58], eax
jmp case.0x1800a6830.93
mov qword [rbp + 0x150], rax
lea r8, [rbp + 0x150]
lea rax, [rbp - 0x20]
mov dword [rbp - 0x20], edx
mov dword [rbp - 0x18], edx
lea rcx, [rbp - 0x10]
mov qword [rsp + 0x20], rax
lea rdx, [rbp - 0x18]
mov dword [rbp - 0x10], 0x404
mov r9d, 0x75
jmp 0x1800a6c78
mov qword [rbp + 0x158], rax
lea r8, [rbp + 0x158]
lea rax, [rbp - 8]
mov dword [rbp - 8], edx
mov dword [rbp], edx
lea rcx, [rbp + 8]
mov r9d, 0x75
mov qword [rsp + 0x20], rax
lea rdx, [rbp]
mov dword [rbp + 8], 0x405
call fcn.180063bc0
mov dword [rsp + 0x58], 0x405
jmp case.0x1800a6830.93
mov qword [rbp + 0x160], rax
lea r8, [rbp + 0x160]
lea rax, [rbp + 0x10]
mov dword [rbp + 0x10], edx
mov dword [rbp + 0x18], edx
lea rcx, [rbp + 0x20]
mov r9d, 0x75
mov qword [rsp + 0x20], rax
lea rdx, [rbp + 0x18]
mov dword [rbp + 0x20], 0x405
call fcn.180063bc0
mov dword [rsp + 0x58], 0x405
jmp case.0x1800a6830.93
mov qword [rbp + 0x170], rax
lea r8, [rbp + 0x170]
lea rax, [rbp + 0x40]
mov dword [rbp + 0x40], edx
mov dword [rbp + 0x48], edx
lea rcx, [rbp + 0x50]
mov r9d, 0x75
mov qword [rsp + 0x20], rax
lea rdx, [rbp + 0x48]
mov dword [rbp + 0x50], 0x405
call fcn.180063bc0
mov dword [rsp + 0x58], 0x405
jmp case.0x1800a6830.93
mov qword [rbp + 0x178], rax
lea r8, [rbp + 0x178]
lea rax, [rbp + 0x58]
mov dword [rbp + 0x58], edx
mov dword [rbp + 0x60], edx
lea rcx, [rbp + 0x68]
mov r9d, 0x75
mov qword [rsp + 0x20], rax
lea rdx, [rbp + 0x60]
mov dword [rbp + 0x68], 0x405
call fcn.180063bc0
mov dword [rsp + 0x58], 0x405
jmp case.0x1800a6830.93
mov rcx, r15
call qword [sym.imp.api_ms_win_crt_environment_l1_1_0.dll_getenv]
jmp 0x1800a6c8a