Function at 0x180016f10
Capabilities:
Query environment variable

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x20], r9
mov dword [rsp + 0x18], r8d
mov qword [rsp + 0x10], rdx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0xf]
sub rsp, 0x90
mov eax, r8d
mov r11, r9
add r8d, 0xfffffff0
mov r13, rcx
mov dword [rbp - 0x41], r8d
cmp eax, r8d
jbe case.0x180016f9e.280
mov r15, qword [rbp + 0x7f]
mov rsi, qword [rbp + 0x77]
mov r12d, dword [rbp + 0x5f]
mov r8d, dword [0x1800e5784]
mov r10d, dword [0x1800e578c]
mov r9d, dword [0x1800e5798]
mov ecx, dword [rbp - 0x41]
xor edi, edi
lea rbx, [0x1800c867b]
add eax, 0xfffffee8
lea r14, [0x180000000]
cmp eax, 0x1a
ja case.default.0x180016f9e
mov ecx, dword [r14 + rax*4 + 0x17af0]
add rcx, r14
jmp rcx
mov rcx, qword [rbp - 1]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov qword [rbp - 9], rax
mov r8d, dword [0x1800e5784]
mov r10d, dword [0x1800e578c]
mov r9d, dword [0x1800e5798]
mov ecx, dword [rbp - 0x41]
mov eax, dword [rbp + 0x5f]
dec eax
mov dword [rbp + 0x5f], eax
cmp eax, ecx
jbe case.0x180016f9e.280
mov rdx, qword [rbp + 0x57]
mov r11, qword [rbp + 0x67]
jmp 0x180016f79
test r13, r13
jne 0x180017017
mov eax, 0x10c
nop word [rax + rax]
cmp eax, 0x10c
je 0x180017004
cmp eax, 0x4518
je case.0x180016f9e.280
jmp 0x18001700b
mov dword [rbp - 0x39], 0xffffffff
add eax, 0x440c
cmp eax, 0x8818
jbe 0x180016ff0
mov ecx, dword [rbp - 0x41]
test r8d, r8d
jne case.default.0x180016f9e
mov r8d, 1
mov dword [0x1800f86e8], 1
mov dword [0x1800e5784], r8d
jmp case.default.0x180016f9e
mov dword [rbp + 0x5f], 0x11d
nop
cmp dword [0x1800f86e8], 0
jne 0x180017059
mov rax, qword [0x1800e5790]
cmp byte [rax], 0
jne case.0x180016f9e.291
mov r14d, 0x6c
nop
cmp r14d, 0xac20
ja case.0x180016f9e.291
cmp r14d, 0x6c
je 0x180017395
cmp r14d, 0x2b74
je 0x1800171fe
cmp r14d, 0x567c
je 0x1800171cd
cmp r14d, 0x8184
jne 0x180017470
mov rcx, qword [0x1800e5790]
inc rcx
cmp byte [rcx], 0
je 0x180017470
mov qword [0x1800e5790], rcx
cmp byte [rcx], 0x2d
jne 0x180017470
cmp byte [rcx + 1], 0
jne 0x180017470
mov edi, 0x109
mov eax, edi
sub eax, 0x109
je 0x1800171a7
sub eax, 1
je 0x180017118
sub eax, 1
je 0x1800170fc
cmp eax, 1
jne 0x1800171b8
mov dword [rbp - 0x39], 0xffffffff
jmp case.0x180016f9e.280
mov r9d, 0xffffffff
mov dword [0x1800e5798], r9d
mov r10d, r9d
mov dword [0x1800e578c], r9d
jmp 0x1800171b8
cmp r9d, 0xffffffff
je 0x1800171b8
mov ebx, 0x96
mov eax, ebx
sub eax, 0x95
je 0x180017184
cmp eax, 1
jne 0x180017194
lea rax, [rbp - 0x31]
mov dword [rbp - 0x21], r8d
mov dword [rbp - 0x31], r9d
lea rdx, [rbp - 0x21]
mov qword [rsp + 0x30], rsi
lea r9, [rbp - 0x29]
mov qword [rsp + 0x28], rax
mov r8d, 0x59
xor ecx, ecx
mov qword [rsp + 0x20], 0
mov dword [rbp - 0x29], r10d
call fcn.1800290c0
mov r8d, dword [0x1800e5784]
mov r10d, dword [0x1800e578c]
mov r9d, dword [0x1800e5798]
jmp 0x180017194
mov eax, r10d
sub eax, r9d
add r8d, eax
mov dword [0x1800e5784], r8d
dec ebx
cmp ebx, 0x94
ja 0x180017127
lea rbx, [0x1800c867b]
jmp 0x1800171b8
inc r8d
mov qword [0x1800e5790], rbx
mov dword [0x1800e5784], r8d
inc edi
cmp edi, 0x10d
jb 0x1800170d0
xor edi, edi
jmp 0x18001746c
cmp r10d, 0xffffffff
je 0x180017470
cmp r9d, 0xffffffff
jne 0x180017470
mov r9d, r8d
mov dword [0x1800e5798], r8d
add r14d, 0x2b08
lea rbx, [0x1800c867b]
jmp 0x180017060
movsxd rax, r8d
mov rcx, qword [rsi + rax*8]
mov qword [0x1800e5790], rcx
cmp byte [rcx], 0x2d
jne 0x180017246
cmp byte [rcx + 1], 0
jne 0x180017470
mov edx, 0x2d
mov rcx, r13
call sub.VCRUNTIME140.dll_strchr
mov r8d, dword [0x1800e5784]
mov r10d, dword [0x1800e578c]
mov r9d, dword [0x1800e5798]
test rax, rax
jne 0x18001746c
mov edi, 0xde
nop dword [rax + rax]
mov eax, edi
sub eax, 0xdc
je 0x180017483
sub eax, 1
je 0x1800172be
cmp eax, 1
jne 0x180017380
mov qword [0x1800e5790], rbx
test byte [r15], 2
je 0x180017380
mov edx, 0x115
mov eax, edx
sub eax, 0x115
je 0x180017297
cmp eax, 1
jne 0x1800172af
mov dword [rbp - 0x39], eax
jmp case.0x180016f9e.280
movsxd rax, r8d
inc r8d
mov rcx, qword [rsi + rax*8]
mov qword [0x1800f86f0], rcx
mov dword [0x1800e5784], r8d
inc edx
cmp edx, 0x117
jb 0x180017281
jmp 0x180017380
test byte [r15], 1
je 0x1800170f0
cmp r10d, 0xffffffff
jne 0x1800172dd
mov r10d, r8d
mov dword [0x1800e578c], r8d
jmp 0x180017380
cmp r9d, 0xffffffff
je 0x180017380
mov ebx, 0xac
nop dword [rax]
mov eax, ebx
sub eax, 0xac
je 0x18001730d
cmp eax, 0x5f
jne 0x18001736a
mov r9d, 0xffffffff
mov dword [0x1800e5798], r9d
jmp 0x18001736a
lea rax, [rbp - 0x21]
mov dword [rbp - 0x31], r8d
mov dword [rbp - 0x21], r9d
lea rdx, [rbp - 0x31]
mov qword [rsp + 0x30], rsi
lea r9, [rbp - 0x29]
mov qword [rsp + 0x28], rax
mov r8d, 0x59
xor ecx, ecx
mov qword [rsp + 0x20], 0
mov dword [rbp - 0x29], r10d
call fcn.1800290c0
mov r10d, dword [0x1800e578c]
mov r8d, dword [0x1800e5784]
mov eax, r8d
mov r9d, dword [0x1800e5798]
sub eax, r9d
add r10d, eax
mov dword [0x1800e578c], r10d
add ebx, 0x5f
cmp ebx, 0x16a
jb 0x1800172f0
lea rbx, [0x1800c867b]
dec edi
cmp edi, 0xdb
ja 0x180017250
xor edi, edi
jmp 0x18001746c
mov dword [0x1800f86e8], edi
cmp r8d, dword [rdx]
jl 0x180017470
mov ebx, 0x28
nop dword [rax]
cmp ebx, 0x28
je 0x18001744c
cmp ebx, 0x5a0
je 0x1800173d2
cmp ebx, 0xb18
je 0x1800170f0
jmp 0x18001745a
cmp r9d, 0xffffffff
je 0x180017424
lea rax, [rbp - 0x21]
mov dword [rbp - 0x31], r8d
mov dword [rbp - 0x21], r9d
lea rdx, [rbp - 0x31]
mov qword [rsp + 0x30], rsi
lea r9, [rbp - 0x29]
mov qword [rsp + 0x28], rax
mov r8d, 0x59
xor ecx, ecx
mov qword [rsp + 0x20], rdi
mov dword [rbp - 0x29], r10d
call fcn.1800290c0
mov eax, dword [0x1800e578c]
sub eax, dword [0x1800e5798]
mov r8d, dword [0x1800e5784]
add r8d, eax
jmp 0x18001742c
cmp r10d, 0xffffffff
cmovne r8d, r10d
mov r9d, 0xffffffff
mov dword [0x1800e5784], r8d
mov dword [0x1800e5798], r9d
mov r10d, r9d
mov dword [0x1800e578c], r9d
jmp 0x18001745a
lea rax, [0x1800c867b]
mov qword [0x1800e5790], rax
add ebx, 0x578
cmp ebx, 0x1068
jbe 0x1800173b0
mov rdx, qword [rbp + 0x57]
add r14d, 0x2b08
lea rbx, [0x1800c867b]
jmp 0x180017060
mov rdx, qword [rbp + 0x57]
inc r8d
mov dword [0x1800e5784], r8d
xor edi, edi
jmp 0x180017040
mov rax, qword [rbp - 9]
mov qword [rbp - 0x39], rax
jmp case.0x180016f9e.291
cmp dword [0x1800f86e8], 0
mov ecx, dword [rbp - 0x41]
mov qword [0x1800f86f0], rdi
je case.default.0x180016f9e
mov r9d, 0xffffffff
mov dword [0x1800e5798], r9d
mov r10d, r9d
mov dword [0x1800e578c], r9d
jmp case.default.0x180016f9e
mov r14, qword [rbp + 0x6f]
test r14, r14
je case.0x180016f9e.291
mov rcx, qword [0x1800e5790]
movsxd rax, r8d
cmp rcx, qword [rsi + rax*8]
je case.0x180016f9e.291
cmp byte [rcx], 0x2d
je 0x180017508
test byte [r15], 4
je case.0x180016f9e.291
mov ebx, 0x4d
nop dword [rax]
mov eax, ebx
sub eax, 0x4d
je 0x1800175d8
sub eax, 0x26
je 0x1800175a1
sub eax, 0x26
je 0x180017573
cmp eax, 0x26
jne 0x1800175db
cmp r12d, 0xffffffff
je 0x1800175db
mov ecx, 0x41
mov eax, ecx
sub eax, 0x3f
je case.0x180016f9e.280
sub eax, 1
je 0x180017566
cmp eax, 1
jne 0x18001756a
lea rax, [0x1800c867b]
mov qword [0x1800e5790], rax
jmp 0x18001756a
mov dword [rbp - 0x39], r12d
dec ecx
cmp ecx, 0x3e
ja 0x180017541
jmp 0x1800175db
mov eax, dword [rbp - 0x19]
lea rdx, [rbp - 0x21]
mov qword [rsp + 0x28], r11
mov r9, r13
mov r8, r14
mov dword [rbp - 0x21], eax
mov rcx, rsi
mov dword [rsp + 0x20], 0xb7
call fcn.1800730b0
mov r11, qword [rbp + 0x67]
mov r12d, eax
jmp 0x1800175db
mov rcx, qword [0x1800e5790]
movsx eax, byte [rcx]
cmp al, 0x2d
jne 0x1800175b8
inc qword [0x1800e5790]
jmp 0x1800175db
cmp al, 0x3a
je 0x1800175db
mov edx, eax
mov rcx, r13
call sub.VCRUNTIME140.dll_strchr
mov r11, qword [rbp + 0x67]
test rax, rax
je 0x1800175db
mov dword [rbp - 0x19], 1
jmp 0x1800175db
mov dword [rbp - 0x19], edi
add ebx, 0x26
cmp ebx, 0xe5
jb 0x180017510
jmp 0x180016fae
mov rcx, qword [0x1800e5790]
movsx r12d, byte [rcx]
inc rcx
mov qword [0x1800e5790], rcx
cmp r12d, 0x3a
je 0x180017635
cmp r12d, 0x2d
jne 0x180017615
cmp byte [rcx], 0
jne 0x180017635
mov edx, r12d
mov rcx, r13
call sub.VCRUNTIME140.dll_strchr
mov r8d, dword [0x1800e5784]
mov qword [rbp - 0x11], rax
cmp rax, 0
jne 0x180016fb5
mov ebx, 0xfa
nop word [rax + rax]
cmp ebx, 0xfa
je 0x18001769f
cmp ebx, 0x5302
je 0x180017677
cmp ebx, 0xa50a
je 0x18001766e
cmp ebx, 0xf712
jne 0x1800176ec
mov eax, 0x3f
jmp 0x1800177fb
mov dword [0x1800e5788], r12d
jmp 0x1800176ec
cmp dword [0x1800e5780], 0
je 0x1800176ec
cmp byte [r13], 0x3a
je 0x1800176ec
mov edx, r12d
lea rcx, str.LSA:_Name_type_is__x
call fcn.1800ab760
mov r8d, dword [0x1800e5784]
jmp 0x1800176ec
cmp r12d, 0x2d
jne 0x1800176d6
mov rax, qword [0x1800e5790]
cmp byte [rax], 0
jne 0x1800176ec
mov ecx, 0x62
mov eax, ecx
sub eax, 0x62
je 0x1800176c8
cmp eax, 1
je case.0x180016f9e.280
jmp 0x1800176cf
mov dword [rbp - 0x39], 0xffffffff
inc ecx
cmp ecx, 0x64
jb 0x1800176b6
mov rax, qword [0x1800e5790]
cmp byte [rax], 0
jne 0x1800176ec
inc r8d
mov dword [0x1800e5784], r8d
add ebx, 0x5208
cmp ebx, 0x14820
jbe 0x180017640
jmp 0x180016fb5
mov r14, qword [rbp + 0x6f]
mov rax, 0xffffffffffffffff
nop
inc rax
cmp byte [r14 + rax], 0
jne 0x180017710
inc eax
cdqe
mov qword [rbp - 1], rax
jmp case.0x180016f9e.291
mov r11, qword [rbp - 0x11]
inc r11
mov qword [rbp - 0x11], r11
cmp byte [r11], 0x3a
je 0x18001775b
mov rax, qword [0x1800e5790]
cmp byte [rax], 0
jne 0x1800178ab
inc r8d
mov dword [rbp - 0x39], r12d
mov dword [0x1800e5784], r8d
jmp case.0x180016f9e.291
mov edi, 0xe0
cmp edi, 0xe0
je 0x180017797
cmp edi, 0x6660
je 0x18001778b
cmp edi, 0xcbe0
jne 0x18001788b
inc r8d
mov dword [0x1800e5784], r8d
jmp 0x18001788b
mov qword [0x1800e5790], rbx
jmp 0x18001788b
mov rcx, qword [0x1800e5790]
mov qword [0x1800f86f0], 0
cmp byte [rcx], 0
jne 0x180017884
cmp byte [r11 + 1], 0x3a
je 0x18001788b
inc r8d
mov dword [0x1800e5784], r8d
cmp r8d, dword [rdx]
jl 0x18001787d
mov ebx, 0x61
cmp ebx, 0x61
je 0x180017845
cmp ebx, 0x3ee6
je 0x18001781d
cmp ebx, 0x7d6b
jne 0x180017853
mov ecx, 0x3a
mov eax, 0x3f
cmp byte [r13], cl
cmove eax, ecx
mov dword [rbp - 0x39], eax
mov rax, qword [rbp - 0x39]
mov rbx, qword [rsp + 0xd0]
add rsp, 0x90
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
cmp dword [0x1800e5780], 0
je 0x18001783c
cmp byte [r13], 0x3a
je 0x18001783c
mov edx, r12d
lea rcx, str.strstr_propertyName_______NULL
call fcn.1800ab760
mov dword [0x1800e5788], r12d
jmp 0x180017853
lea rax, [0x1800c867b]
mov qword [0x1800e5790], rax
add ebx, 0x3e85
cmp ebx, 0xbb8f
jbe 0x1800177d5
mov r8d, dword [0x1800e5784]
lea rbx, [0x1800c867b]
mov rdx, qword [rbp + 0x57]
mov r11, qword [rbp - 0x11]
jmp 0x18001788b
movsxd rax, r8d
mov rcx, qword [rsi + rax*8]
mov qword [0x1800f86f0], rcx
add edi, 0x6580
cmp edi, 0x13080
jbe 0x180017760
mov r10d, dword [0x1800e578c]
mov r9d, dword [0x1800e5798]
mov dword [rbp - 0x39], r12d
jmp case.0x180016f9e.291
mov r14, qword [rbp + 0x6f]
test r14, r14
je case.0x180016f9e.291
cmp r12d, 0x57
jne case.0x180016f9e.291
mov rax, qword [rbp - 0x11]
cmp byte [rax + 1], 0x3b
jne case.0x180016f9e.291
mov edi, 0xd1
nop
cmp edi, 0xd1
je 0x180017911
cmp edi, 0x194f
je 0x180017901
cmp edi, 0x31cd
je case.0x180016f9e.280
jmp 0x1800179e8
mov qword [0x1800e5790], rbx
mov dword [rbp - 0x39], r12d
jmp 0x1800179e8
mov rax, qword [0x1800e5790]
cmp byte [rax], 0
jne 0x1800179b0
lea eax, [r8 + 1]
mov dword [0x1800e5784], eax
cmp eax, dword [rdx]
jl 0x1800179a3
mov ebx, 0xec
cmp ebx, 0xec
je 0x18001795b
cmp ebx, 0x647c
je 0x180017952
cmp ebx, 0xc80c
je 0x1800177ea
jmp 0x180017988
mov dword [0x1800e5788], r12d
jmp 0x180017988
cmp dword [0x1800e5780], 0
lea rax, [0x1800c867b]
mov qword [0x1800e5790], rax
je 0x180017988
cmp byte [r13], 0x3a
je 0x180017988
mov edx, r12d
lea rcx, str.strstr_propertyName_______NULL
call fcn.1800ab760
add ebx, 0x6390
cmp ebx, 0x12ab0
jbe 0x180017934
mov r11, qword [rbp + 0x67]
lea rbx, [0x1800c867b]
jmp 0x1800179b0
cdqe
mov rcx, qword [rsi + rax*8]
mov qword [0x1800e5790], rcx
mov qword [rsp + 0x28], r11
lea rdx, [rbp - 0x21]
mov r9, r13
mov dword [rsp + 0x20], 0xb7
mov r8, r14
mov dword [rbp - 0x21], 0
mov rcx, rsi
call fcn.1800730b0
mov r8d, dword [0x1800e5784]
mov r12d, eax
mov rdx, qword [rbp + 0x57]
mov r11, qword [rbp + 0x67]
add edi, 0x187e
cmp edi, 0x497a
jbe 0x1800178e0
jmp 0x180016fb5
cmp dword [0x1800fab20], 0xffffffff
je 0x180017a11
cmp dword [0x1800f86e8], 0
je 0x180017a41
lea rcx, str.DrmTemplateMenu
call qword [sym.imp.api_ms_win_crt_environment_l1_1_0.dll_getenv]
mov r8d, dword [0x1800e5784]
mov ecx, edi
mov r10d, dword [0x1800e578c]
test rax, rax
mov r9d, dword [0x1800e5798]
setne cl
mov dword [0x1800fab20], ecx
movzx eax, byte [r13]
cmp al, 0x2d
jne 0x180017a53
or dword [r15], 2
jmp 0x180016fae
cmp dword [0x1800fab20], 0
jne 0x180017a64
cmp al, 0x2b
jne case.0x180016f9e.291
and dword [r15], 0xfffffffe
jmp 0x180016fae
mov dword [0x1800fab20], 0xffffffff
jmp case.0x180016f9e.291
mov rbx, qword [rbp - 9]
test rbx, rbx
jne 0x180017ab5
mov eax, dword [r13]
lea r8, [rbp - 0x21]
mov dword [rbp + 7], eax
lea rcx, str.strdup
mov rax, qword [rdx]
mov r9d, 0xc5
mov qword [rbp - 0x21], rax
mov rdx, rsi
lea rax, [rbp + 7]
mov qword [rsp + 0x20], rax
call fcn.180040460
mov rcx, qword [rbp + 0x6f]
mov rdx, rbx
sub rdx, rcx
nop
movzx eax, byte [rcx]
mov byte [rdx + rcx], al
lea rcx, [rcx + 1]
test al, al
jne 0x180017ac0
jmp 0x180016fae
movzx eax, byte [r13]
mov ecx, dword [rbp - 0x41]
sub al, 0x2b
test al, 0xfd
jne case.default.0x180016f9e
inc r13
jmp case.default.0x180016f9e