Function at 0x180023fd0
Capabilities:
Query environment variable

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 7]
sub rsp, 0xd8
mov rax, qword [0x180045338]
xor rax, rsp
mov qword [rbp - 9], rax
mov rax, qword [rbp + 0x6f]
xor r11d, r11d
mov r15, qword [rbp + 0x7f]
mov r14, rdx
mov qword [rbp - 0x51], rax
mov rsi, r9
mov eax, dword [rbp + 0x77]
mov rdi, r8
mov qword [rbp - 0x61], r9
mov r13, rcx
mov qword [rbp - 0x69], r8
mov qword [rbp - 0x31], rcx
lea edx, [rax + 7]
mov dword [rbp - 0x45], r11d
mov dword [rsp + 0x40], edx
cmp eax, edx
jae case.0x180024086.141
mov r12d, dword [rbp - 0x41]
lea r10, [0x18003bc0b]
mov edx, dword [0x1800441c0]
mov r8d, dword [0x180044230]
mov r9d, dword [0x180044234]
movzx ebx, byte [rbp - 0x59]
mov ecx, dword [rsp + 0x40]
nop dword [rax + rax]
add eax, 0xffffff7b
cmp eax, 8
ja case.default.0x180024086
lea rcx, [0x180000000]
mov ecx, dword [rcx + rax*4 + 0x24bd4]
lea rax, [0x180000000]
add rcx, rax
jmp rcx
mov rcx, qword [0x180044228]
movsx r12d, byte [rcx]
inc rcx
mov qword [0x180044228], rcx
cmp r12d, 0x3a
je 0x1800240cc
cmp r12d, 0x2d
jne 0x1800240ae
cmp byte [rcx], 0
jne 0x1800240cc
mov edx, r12d
mov rcx, rsi
call sub.VCRUNTIME140.dll_strchr
mov edx, dword [0x1800441c0]
mov qword [rbp - 0x39], rax
test rax, rax
jne 0x18002416d
mov edi, 0xc6
cmp edi, 0xc6
je 0x1800240fc
cmp edi, 0x17b
je 0x1800240f3
cmp edi, 0x230
jne 0x180024153
mov eax, 0x3f
jmp 0x180024bb4
mov dword [0x1800441c8], r12d
jmp 0x180024153
mov rax, qword [0x180044228]
cmp r12d, 0x2d
jne 0x180024114
cmp byte [rax], 0
je 0x1800246c6
jmp 0x180024121
cmp byte [rax], 0
jne 0x180024121
inc edx
mov dword [0x1800441c0], edx
cmp dword [0x1800441c4], 0
je 0x180024153
cmp byte [rsi], 0x3a
je 0x180024153
cmp dword [rbp - 0x41], 0
lea rax, str.SVQ3V210012vV210a12v
lea rcx, str.file_encryption_mode
mov edx, r12d
cmovne rcx, rax
call fcn.180037350
mov edx, dword [0x1800441c0]
add edi, 0xb5
cmp edi, 0x2e5
jb 0x1800240d1
mov rdi, qword [rbp - 0x69]
mov rax, qword [rbp - 0x39]
mov rcx, qword [rbp - 0x51]
test rcx, rcx
je 0x1800242e4
cmp r12d, 0x57
jne 0x1800242e4
cmp byte [rax + 1], 0x3b
jne 0x1800242e4
mov esi, 0x7d
mov eax, esi
sub eax, 0x79
je case.0x180024086.141
sub eax, 1
je 0x1800242cd
sub eax, 1
je 0x1800242bd
sub eax, 1
je 0x180024278
cmp eax, 1
jne 0x1800242d1
mov rax, qword [0x180044228]
cmp byte [rax], 0
jne 0x18002426c
inc edx
mov dword [0x1800441c0], edx
cmp edx, dword [r15]
jl 0x18002425e
mov edi, 0x101
nop dword [rax]
nop dword [rax + rax]
mov eax, edi
sub eax, 0xff
je 0x180024b61
sub eax, 1
je 0x180024217
cmp eax, 1
jne 0x18002423f
lea rax, [0x18003bc0b]
mov qword [0x180044228], rax
jmp 0x18002423f
cmp dword [0x1800441c4], 0
je 0x180024238
mov rax, qword [rbp - 0x61]
cmp byte [rax], 0x3a
je 0x180024238
mov edx, r12d
lea rcx, str.void_glVertexAttrib4bvARB__u___s_
call fcn.180037350
mov dword [0x1800441c8], r12d
dec edi
cmp edi, 0xfe
ja 0x1800241f0
mov edx, dword [0x1800441c0]
mov dword [0x180044238], 2
jmp 0x1800242d1
movsxd rax, edx
mov rcx, qword [r14 + rax*8]
mov qword [0x180044228], rcx
mov dword [0x180044238], 2
jmp 0x1800242d1
mov eax, dword [r13]
lea rdx, [rsp + 0x48]
mov r8, qword [rbp - 0x61]
mov r9, rcx
mov dword [rsp + 0x48], eax
mov ecx, 0x83
lea rax, [rsp + 0x50]
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r14
mov dword [rsp + 0x50], 0
call fcn.18002ded0
mov edx, dword [0x1800441c0]
mov r12d, eax
jmp 0x1800242d1
lea rax, [0x18003bc0b]
mov qword [0x180044228], rax
jmp 0x1800242d1
mov dword [rbp - 0x71], r12d
mov rcx, qword [rbp - 0x51]
dec esi
mov rdi, qword [rbp - 0x69]
cmp esi, 0x78
ja 0x180024193
mov r8, qword [rbp - 0x39]
inc r8
mov qword [rbp - 0x39], r8
cmp byte [r8], 0x3a
je 0x18002432e
mov rax, qword [0x180044228]
lea r10, [0x18003bc0b]
mov r8d, dword [0x180044230]
mov r9d, dword [0x180044234]
mov rdi, qword [rbp - 0x69]
cmp byte [rax], 0
mov ecx, dword [rsp + 0x40]
jne 0x180024326
inc edx
mov dword [0x1800441c0], edx
xor r11d, r11d
jmp case.default.0x180024086
mov esi, 0xed
mov eax, esi
sub eax, 0xeb
je 0x180024415
sub eax, 1
je 0x180024365
lea r10, [0x18003bc0b]
cmp eax, 1
jne 0x180024424
mov qword [0x180049440], 0
jmp 0x180024424
mov rcx, qword [0x180044228]
cmp byte [rcx], 0
jne 0x1800243fe
cmp byte [r8 + 1], 0x3a
je 0x180024405
inc edx
mov dword [0x1800441c0], edx
cmp edx, dword [r15]
jl 0x1800243f7
mov edi, 0x123
mov eax, edi
sub eax, 0x122
je 0x180024b5a
cmp eax, 1
jne 0x1800243d3
cmp dword [0x1800441c4], 0
lea rax, [0x18003bc0b]
mov qword [0x180044228], rax
je 0x1800243d3
mov rax, qword [rbp - 0x61]
cmp byte [rax], 0x3a
je 0x1800243d3
mov edx, r12d
lea rcx, str.void_glVertexAttrib4bvARB__u___s_
call fcn.180037350
dec edi
cmp edi, 0x121
ja 0x180024392
mov edx, dword [0x1800441c0]
lea r10, [0x18003bc0b]
mov r8, qword [rbp - 0x39]
mov qword [0x180044228], r10
jmp 0x180024424
movsxd rax, edx
mov rcx, qword [r14 + rax*8]
mov qword [0x180049440], rcx
lea r10, [0x18003bc0b]
mov qword [0x180044228], r10
jmp 0x180024424
inc edx
lea r10, [0x18003bc0b]
mov dword [0x1800441c0], edx
dec esi
cmp esi, 0xea
ja 0x180024333
mov r8d, dword [0x180044230]
xor r11d, r11d
mov r9d, dword [0x180044234]
mov rdi, qword [rbp - 0x69]
jmp case.0x180024086.138
mov dword [rbp + 0x77], 0x87
cmp dword [0x18004943c], 0
jne 0x18002446c
mov rax, qword [0x180044228]
cmp byte [rax], 0
jne 0x18002475c
mov esi, 0x61
cmp esi, 0x5f
jbe 0x18002475c
mov eax, esi
sub eax, 0x60
je 0x180024566
cmp eax, 1
jne 0x18002474b
mov dword [0x18004943c], r11d
cmp edx, dword [r15]
jl 0x18002474b
mov edi, 0x3e
mov eax, edi
sub eax, 0x3e
je 0x1800244c9
sub eax, 0x4b
je 0x1800244bd
cmp eax, 0x4b
je case.0x180024086.141
jmp 0x180024546
mov dword [rbp - 0x71], 0xffffffff
jmp 0x180024546
mov qword [0x180044228], r10
cmp r9d, 0xffffffff
je 0x180024521
mov dword [rsp + 0x50], edx
lea rax, [rsp + 0x48]
mov dword [rbp - 0x79], r9d
lea rdx, [rbp - 0x79]
mov dword [rsp + 0x48], r8d
lea r9, [rsp + 0x50]
mov r8d, 0x112
mov qword [rsp + 0x20], rax
mov rcx, r14
call fcn.180021790
mov eax, dword [0x180044230]
lea r10, [0x18003bc0b]
sub eax, dword [0x180044234]
mov edx, dword [0x1800441c0]
add edx, eax
jmp 0x180024529
cmp r8d, 0xffffffff
cmovne edx, r8d
mov r9d, 0xffffffff
mov dword [0x1800441c0], edx
mov dword [0x180044234], r9d
mov r8d, r9d
mov dword [0x180044230], r9d
add edi, 0x4b
cmp edi, 0x11f
jb 0x1800244a3
dec esi
lea r10, [0x18003bc0b]
xor r11d, r11d
jmp 0x180024471
movsxd rax, edx
mov rcx, qword [r14 + rax*8]
mov qword [0x180044228], rcx
cmp byte [rcx], 0x2d
jne 0x180024583
cmp byte [rcx + 1], 0
jne 0x180024654
mov edi, 0xff
nop dword [rax + rax]
mov eax, edi
sub eax, 0xff
je 0x1800245b2
cmp eax, 3
jne 0x180024645
inc edx
mov dword [0x1800441c0], edx
xor r11d, r11d
jmp 0x180024453
mov qword [0x180044228], r10
mov eax, dword [r13]
test al, 2
jne 0x180024b76
test al, 1
je 0x1800246c6
cmp r8d, 0xffffffff
jne 0x1800245de
mov r8d, edx
mov dword [0x180044230], edx
jmp 0x180024645
cmp r9d, 0xffffffff
je 0x180024645
mov dword [rsp + 0x48], edx
lea rax, [rbp - 0x79]
mov dword [rsp + 0x50], r9d
lea rdx, [rsp + 0x50]
mov dword [rbp - 0x79], r8d
lea r9, [rsp + 0x48]
mov r8d, 0x112
mov qword [rsp + 0x20], rax
mov rcx, r14
call fcn.180021790
mov r8d, dword [0x180044230]
lea r10, [0x18003bc0b]
mov edx, dword [0x1800441c0]
mov r9d, 0xffffffff
mov eax, edx
sub eax, dword [0x180044234]
add r8d, eax
mov dword [0x180044234], r9d
mov dword [0x180044230], r8d
add edi, 3
cmp edi, 0x105
jb 0x180024590
cmp r8d, 0xffffffff
je 0x180024669
cmp r9d, 0xffffffff
cmove r9d, edx
mov dword [0x180044234], r9d
mov rcx, qword [0x180044228]
inc rcx
cmp byte [rcx], 0
je 0x18002474b
mov qword [0x180044228], rcx
cmp byte [rcx], 0x2d
jne 0x18002474b
cmp byte [rcx + 1], 0
jne 0x18002474b
mov edi, 0x99
nop dword [rax + rax]
mov eax, edi
sub eax, 0x99
je 0x1800246d0
cmp eax, 0x31
jne 0x180024735
mov dword [0x180044234], 0xffffffff
mov dword [0x180044230], 0xffffffff
mov eax, 0xffffffff
jmp 0x180024bb4
inc edx
mov qword [0x180044228], r10
mov dword [0x1800441c0], edx
cmp r9d, 0xffffffff
je 0x180024735
mov dword [rsp + 0x48], edx
lea rax, [rbp - 0x79]
mov dword [rsp + 0x50], r9d
lea rdx, [rsp + 0x50]
mov dword [rbp - 0x79], r8d
lea r9, [rsp + 0x48]
mov r8d, 0x112
mov qword [rsp + 0x20], rax
mov rcx, r14
call fcn.180021790
mov edx, dword [0x1800441c0]
mov r8d, dword [0x180044230]
mov eax, r8d
mov r9d, dword [0x180044234]
sub eax, r9d
add edx, eax
mov dword [0x1800441c0], edx
add edi, 0x31
lea r10, [0x18003bc0b]
cmp edi, 0xfb
jb 0x1800246a0
dec esi
lea r10, [0x18003bc0b]
xor r11d, r11d
jmp 0x180024471
mov r10, qword [rbp - 0x51]
test r10, r10
je 0x180024877
mov rcx, qword [0x180044228]
movsxd rax, edx
cmp rcx, qword [r14 + rax*8]
je 0x180024877
cmp byte [rcx], 0x2d
je 0x18002478d
test byte [r13], 4
je 0x180024877
mov rsi, qword [rbp - 0x61]
mov edi, 0x78
cmp edi, 0x78
je 0x18002484d
cmp edi, 0x3c0
je 0x180024802
cmp edi, 0x708
jne 0x180024851
mov eax, dword [r13]
lea rdx, [rsp + 0x48]
mov r11, qword [rbp - 0x69]
mov r9, r10
mov dword [rsp + 0x48], eax
mov r8, rsi
mov eax, dword [rbp - 0x49]
mov ecx, 0x83
mov qword [rsp + 0x30], r11
mov dword [rbp - 0x79], eax
lea rax, [rbp - 0x79]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r14
call fcn.18002ded0
mov r12d, eax
cmp eax, 0xffffffff
jne 0x180024b93
mov r10, qword [rbp - 0x51]
xor r11d, r11d
jmp 0x180024851
mov rcx, qword [0x180044228]
mov dword [0x180044238], r11d
movsx eax, byte [rcx]
cmp al, 0x2d
jne 0x18002482a
inc qword [0x180044228]
mov dword [0x180044238], 1
jmp 0x180024851
cmp al, 0x3a
je 0x180024851
mov edx, eax
mov rcx, rsi
call sub.VCRUNTIME140.dll_strchr
mov r10, qword [rbp - 0x51]
xor r11d, r11d
test rax, rax
je 0x180024851
mov dword [rbp - 0x49], 1
jmp 0x180024851
mov dword [rbp - 0x49], r11d
add edi, 0x348
cmp edi, 0x9d8
jbe 0x180024796
mov edx, dword [0x1800441c0]
mov r8d, dword [0x180044230]
mov r9d, dword [0x180044234]
mov rdi, qword [rbp - 0x69]
lea r10, [0x18003bc0b]
jmp case.0x180024086.138
mov r8, qword [0x180045418]
mov edx, 0xd8
mov r13d, 0xf77f
mov eax, edx
sub eax, 0xd7
je 0x180024902
sub eax, 1
je 0x1800248f1
cmp eax, 3
jne 0x1800248f8
cmp byte [r8], 0
mov ecx, 0x80
mov eax, 0x800
cmovne cx, r11w
cmp byte [0], 0
cmovne ax, r11w
or cx, ax
mov ax, word [0x4000204]
and ax, r13w
or cx, ax
mov word [0x4000204], cx
jmp 0x1800248f8
cmp qword [r8], 0xffffffffffffffff
setne bl
dec edx
cmp edx, 0xd5
ja 0x1800248a2
mov r13, qword [rbp - 0x31]
test bl, bl
je 0x180024a31
xor r8d, r8d
mov dl, 0xa
mov rcx, r15
call fcn.180023450
mov rsi, rax
cmp rax, 0xffffffffffffffff
je 0x180024a0c
mov edi, 0x30
nop dword [rax]
mov ecx, edi
sub ecx, 0x30
je 0x18002497f
sub ecx, 0x3c
je 0x18002494a
cmp ecx, 0x3c
je case.0x180024086.141
jmp 0x1800249fd
mov r8, qword [r15 + 0x10]
lea rax, [rsi + 1]
cmp r8, rax
mov rcx, r15
cmovb rax, r8
cmp qword [r15 + 0x18], 0x10
jb 0x180024966
mov rcx, qword [r15]
sub r8, rax
lea rdx, [rcx + rax]
mov qword [r15 + 0x10], r8
inc r8
call sub.VCRUNTIME140.dll_memmove
mov byte [rbp - 0x71], 1
jmp 0x1800249fd
xor eax, eax
mov qword [rbp - 0x11], 0xf
cmp qword [r15 + 0x10], rsi
mov r8, rsi
mov qword [rbp - 0x19], rax
mov rdx, r15
cmovb r8, qword [r15 + 0x10]
cmp qword [r15 + 0x18], 0x10
mov byte [rbp - 0x29], al
jb 0x1800249a9
mov rdx, qword [r15]
lea rcx, [rbp - 0x29]
call fcn.18001c630
or dword [rbp - 0x45], 1
lea rdx, [rbp - 0x29]
mov rcx, r14
call fcn.1800032b0
mov rdx, qword [rbp - 0x11]
cmp rdx, 0x10
jb 0x1800249fd
mov rcx, qword [rbp - 0x29]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800249f8
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180024ba6
call fcn.1800397ec
add edi, 0x3c
cmp edi, 0xe4
jb 0x180024930
mov rcx, qword [0x180045418]
mov r8d, 0xe6
mov rdx, r15
call fcn.18001ac00
test al, al
je 0x180024bad
xor r11d, r11d
jmp case.0x180024086.140
mov edx, dword [0x1800441c0]
lea r10, [0x18003bc0b]
mov r8d, dword [0x180044230]
mov r9d, dword [0x180044234]
mov rdi, qword [rbp - 0x69]
mov byte [rbp - 0x71], 0
jmp case.0x180024086.138
test rsi, rsi
je 0x1800246c6
lea rcx, str.colorBackground
call qword [sym.imp.api_ms_win_crt_environment_l1_1_0.dll_getenv]
xor r11d, r11d
test rax, rax
mov ecx, r11d
movzx eax, byte [rsi]
setne cl
mov dword [rbp - 0x41], ecx
cmp al, 0x2d
jne 0x180024aaa
or dword [r13], 2
lea r10, [0x18003bc0b]
mov edx, dword [0x1800441c0]
mov r8d, dword [0x180044230]
mov r9d, dword [0x180044234]
jmp case.0x180024086.138
test ecx, ecx
jne 0x180024acf
cmp al, 0x2b
je 0x180024acf
mov edx, dword [0x1800441c0]
lea r10, [0x18003bc0b]
mov r8d, dword [0x180044230]
mov r9d, dword [0x180044234]
jmp case.0x180024086.138
and dword [r13], 0xfffffffe
lea r10, [0x18003bc0b]
mov edx, dword [0x1800441c0]
mov r8d, dword [0x180044230]
mov r9d, dword [0x180044234]
jmp case.0x180024086.138
movzx eax, byte [rsi]
sub al, 0x2b
test al, 0xfd
jne 0x180024b01
inc rsi
mov qword [rbp - 0x61], rsi
test edx, edx
jne 0x180024b1a
mov edx, 1
mov dword [0x18004943c], 1
mov dword [0x1800441c0], edx
cmp dword [0x18004943c], 0
mov qword [0x180049440], r11
je case.0x180024086.138
mov r9d, 0xffffffff
mov dword [0x180044234], r9d
mov r8d, r9d
mov dword [0x180044230], r9d
mov ecx, dword [rsp + 0x40]
mov eax, dword [rbp + 0x77]
inc eax
mov dword [rbp + 0x77], eax
cmp eax, ecx
jae case.0x180024086.141
mov rsi, qword [rbp - 0x61]
jmp 0x180024060
mov dword [0x1800441c8], r12d
mov rdx, qword [rbp - 0x61]
mov ecx, 0x3a
mov eax, 0x3f
cmp byte [rdx], cl
cmove eax, ecx
jmp 0x180024bb4
movsxd rax, edx
inc edx
mov rcx, qword [r14 + rax*8]
mov eax, 1
mov qword [0x180049440], rcx
mov dword [0x1800441c0], edx
jmp 0x180024bb4
lea rax, [0x18003bc0b]
mov qword [0x180044228], rax
mov eax, r12d
jmp 0x180024bb4
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov byte [rbp - 0x71], 0
mov eax, dword [rbp - 0x71]
mov rcx, qword [rbp - 9]
xor rcx, rsp
call fcn.180039fa0
add rsp, 0xd8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret