Function at 0x18005d2c0
Capabilities:
Query environment variable

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push r12
push r14
push r15
sub rsp, 0x3d0
mov rax, qword [0x1801da600]
xor rax, rsp
mov qword [rsp + 0x3c0], rax
lea rcx, str.appdata
call qword [sym.imp.api_ms_win_crt_environment_l1_1_0.dll_getenv]
xorps xmm0, xmm0
movups xmmword [rsp + 0x1c0], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x1d0], xmm1
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x18005bef0
mov rdx, rax
lea rcx, [rsp + 0x1c0]
call fcn.180007550
nop
mov r8d, 0x10
lea rdx, str.GalaxyVehicle_
lea rcx, [rsp + 0x1c0]
call fcn.180017d10
lea rdx, [rsp + 0x1c0]
lea rcx, [rsp + 0xb0]
call fcn.180045a70
nop
cmp qword [rsp + 0x140], 0
jne 0x18005bfae
lea rdx, [rsp + 0x1c0]
cmp qword [rsp + 0x1d8], 0xf
cmova rdx, qword [rsp + 0x1c0]
mov r9d, 0x40
lea r8d, [r9 - 0x3f]
lea rcx, [rsp + 0xc0]
call fcn.18003cc60
xor r8d, r8d
test rax, rax
mov rax, qword [rsp + 0xb0]
movsxd rcx, dword [rax + 4]
lea rax, [rsp + 0xb0]
je 0x18005bfa0
add rcx, rax
xor edx, edx
call qword [sym.imp.MSVCP140.dll_public:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::clear_int__bool____ptr64]
jmp 0x18005bfae
add rcx, rax
mov edx, 2
call qword [sym.imp.MSVCP140.dll_public:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::setstate_int__bool____ptr64]
mov qword [rsp + 0x98], 0
lea rax, [rsp + 0xb0]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0xb0]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsp + rcx + 0xf8]
mov qword [rsp + 0x38], rax
lea r8, [rsp + 0x60]
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x1e0]
call fcn.18004c610
nop
lea r8, [0x1801f2b10]
mov rcx, rax
call fcn.18004ab20
nop
lea rcx, [rsp + 0x228]
call fcn.18004c810
mov rcx, qword [rsp + 0x218]
test rcx, rcx
je 0x18005c036
mov rax, qword [rcx]
lea rdx, [rsp + 0x1e0]
cmp rcx, rdx
setne dl
call qword [rax + 0x20]
cmp qword [rsp + 0x140], 0
je 0x18005c518
xor edx, edx
lea rcx, [rsp + 0x30]
call fcn.18002f660
nop
mov qword [rsp + 0x98], 0
lea rax, [rsp + 0xb0]
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0xb0]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsp + rcx + 0xf8]
mov qword [rsp + 0x48], rax
lea r8, [rsp + 0x60]
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x2d0]
call fcn.18004c610
nop
lea r8, [rsp + 0x30]
mov rcx, rax
call fcn.18004ab20
nop
lea rcx, [rsp + 0x318]
call fcn.18004c810
mov rcx, qword [rsp + 0x308]
test rcx, rcx
je 0x18005c0d8
mov rax, qword [rcx]
lea rdx, [rsp + 0x2d0]
cmp rcx, rdx
setne dl
call qword [rax + 0x20]
lea rcx, [rsp + 0xc0]
call fcn.18003de10
test rax, rax
jne 0x18005c10e
mov rax, qword [rsp + 0xb0]
movsxd rcx, dword [rax + 4]
lea rax, [rsp + 0xb0]
add rcx, rax
xor r8d, r8d
lea edx, [r8 + 2]
call qword [sym.imp.MSVCP140.dll_public:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::setstate_int__bool____ptr64]
lea rdx, [rsp + 0x30]
mov qword [rsp + 0x40], rdx
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x48], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x50], xmm1
movabs rdi, 0x8000000000000000
mov qword [rsp + 0x58], rdi
movzx ecx, byte [rdx]
cmp ecx, 9
ja case.default.0x18005c155
movsxd rax, ecx
lea rsi, [0x180000000]
mov eax, dword [rsi + rax*4 + 0x5c59c]
add rax, rsi
jmp rax
lea rsi, [0x180000000]
cmp ecx, 9
ja case.0x18005c16d.0
mov ecx, dword [rsi + rcx*4 + 0x5c5c4]
add rcx, rsi
jmp rcx
mov rax, qword [rdx + 8]
mov rcx, qword [rax]
mov qword [rsp + 0x48], rcx
jmp 0x18005c195
mov rax, qword [rdx + 8]
mov rcx, qword [rax + 8]
mov qword [rsp + 0x50], rcx
jmp 0x18005c195
mov qword [rsp + 0x58], 1
cmp byte [rsp + 0x30], 1
jne 0x18005c246
mov rax, qword [rsp + 0x38]
mov r15, qword [rax]
mov rbx, qword [r15 + 8]
mov r14, r15
cmp byte [rbx + 0x19], 0
jne 0x18005c223
mov r12d, 0xc
nop dword [rax + rax]
lea rcx, [rbx + 0x20]
mov rdi, qword [rcx + 0x10]
cmp qword [rcx + 0x18], 0xf
jbe 0x18005c1d2
mov rcx, qword [rcx]
mov r8, rdi
cmp rdi, r12
cmova r8, r12
lea rdx, str.PrimaryColor
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x18005c200
cmp rdi, r12
jae 0x18005c1f8
mov eax, 0xffffffff
jmp 0x18005c200
xor eax, eax
cmp rdi, r12
seta al
shr eax, 0x1f
test al, al
je 0x18005c20d
mov rbx, qword [rbx + 0x10]
jmp 0x18005c213
mov r14, rbx
mov rbx, qword [rbx]
cmp byte [rbx + 0x19], 0
je 0x18005c1c0
movabs rdi, 0x8000000000000000
cmp byte [r14 + 0x19], 0
jne 0x18005c23e
lea rdx, [r14 + 0x20]
lea rcx, str.PrimaryColor
call fcn.18004d730
test al, al
je 0x18005c241
mov r14, r15
mov qword [rsp + 0x48], r14
lea r8, [rsp + 0x30]
mov qword [rsp + 0x60], r8
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x68], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x70], xmm1
mov qword [rsp + 0x78], rdi
movzx edx, byte [r8]
cmp edx, 9
ja case.0x18005c28e.0
movsxd rax, edx
mov ecx, dword [rsi + rax*4 + 0x5c5ec]
add rcx, rsi
jmp rcx
cmp edx, 9
ja case.0x18005c28e.0
mov ecx, dword [rsi + rdx*4 + 0x5c614]
add rcx, rsi
jmp rcx
mov rax, qword [r8 + 8]
mov rcx, qword [rax]
mov qword [rsp + 0x68], rcx
jmp 0x18005c2b6
mov rax, qword [r8 + 8]
mov rcx, qword [rax + 8]
mov qword [rsp + 0x70], rcx
jmp 0x18005c2b6
mov qword [rsp + 0x78], 1
lea rdx, [rsp + 0x60]
lea rcx, [rsp + 0x40]
call fcn.180037f10
test al, al
je 0x18005c508
lea r8, [rsp + 0x30]
mov qword [rsp + 0x40], r8
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x48], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x50], xmm1
mov qword [rsp + 0x58], rdi
movzx edx, byte [r8]
cmp edx, 9
ja case.0x18005c315.0
movsxd rax, edx
mov ecx, dword [rsi + rax*4 + 0x5c63c]
add rcx, rsi
jmp rcx
cmp edx, 9
ja case.0x18005c315.0
mov ecx, dword [rsi + rdx*4 + 0x5c664]
add rcx, rsi
jmp rcx
mov rax, qword [r8 + 8]
mov rcx, qword [rax]
mov qword [rsp + 0x48], rcx
jmp 0x18005c33d
mov rax, qword [r8 + 8]
mov rcx, qword [rax + 8]
mov qword [rsp + 0x50], rcx
jmp 0x18005c33d
mov qword [rsp + 0x58], 1
cmp byte [rsp + 0x30], 1
jne 0x18005c3f6
mov rax, qword [rsp + 0x38]
mov r15, qword [rax]
mov rbx, qword [r15 + 8]
mov r14, r15
cmp byte [rbx + 0x19], 0
jne 0x18005c3d3
mov r12d, 0xe
nop dword [rax]
nop word [rax + rax]
lea rcx, [rbx + 0x20]
mov rdi, qword [rcx + 0x10]
cmp qword [rcx + 0x18], 0xf
jbe 0x18005c382
mov rcx, qword [rcx]
mov r8, rdi
cmp rdi, r12
cmova r8, r12
lea rdx, str.SecondaryColor
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x18005c3b0
cmp rdi, r12
jae 0x18005c3a8
mov eax, 0xffffffff
jmp 0x18005c3b0
xor eax, eax
cmp rdi, r12
seta al
shr eax, 0x1f
test al, al
je 0x18005c3bd
mov rbx, qword [rbx + 0x10]
jmp 0x18005c3c3
mov r14, rbx
mov rbx, qword [rbx]
cmp byte [rbx + 0x19], 0
je 0x18005c370
movabs rdi, 0x8000000000000000
cmp byte [r14 + 0x19], 0
jne 0x18005c3ee
lea rdx, [r14 + 0x20]
lea rcx, str.SecondaryColor
call fcn.18004d730
test al, al
je 0x18005c3f1
mov r14, r15
mov qword [rsp + 0x48], r14
lea r8, [rsp + 0x30]
mov qword [rsp + 0x60], r8
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x68], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x70], xmm1
mov qword [rsp + 0x78], rdi
movzx edx, byte [r8]
cmp edx, 9
ja case.0x18005c43e.0
movsxd rax, edx
mov ecx, dword [rsi + rax*4 + 0x5c68c]
add rcx, rsi
jmp rcx
cmp edx, 9
ja case.0x18005c43e.0
mov ecx, dword [rsi + rdx*4 + 0x5c6b4]
add rcx, rsi
jmp rcx
mov rax, qword [r8 + 8]
mov rcx, qword [rax]
mov qword [rsp + 0x68], rcx
jmp 0x18005c466
mov rax, qword [r8 + 8]
mov rcx, qword [rax + 8]
mov qword [rsp + 0x70], rcx
jmp 0x18005c466
mov qword [rsp + 0x78], 1
lea rdx, [rsp + 0x60]
lea rcx, [rsp + 0x40]
call fcn.180037f10
test al, al
je 0x18005c508
lea rdx, str.PrimaryColor
lea rcx, [rsp + 0x30]
call fcn.180041800
mov rcx, rax
call fcn.18004da20
mov edi, eax
lea rdx, str.SecondaryColor
lea rcx, [rsp + 0x30]
call fcn.180041800
mov rcx, rax
call fcn.18004da20
mov ebx, eax
call fcn.18000a910
mov edx, 1
mov ecx, eax
call fcn.18000a110
mov r8d, ebx
mov edx, edi
mov ecx, eax
call fcn.1800590b0
mov rax, qword gs:[0x20]
mov rbx, qword [rax]
lea rcx, [rsp + 0x40]
call fcn.180057010
mov rax, qword [rax]
add rax, 0xbebc200
cmp byte [rbx + 0x20], 0
jne 0x18005c4f9
mov byte [rbx + 0x20], 1
mov qword [rbx + 0x18], rax
mov rcx, qword [rbx + 8]
call qword [sym.imp.KERNEL32.dll_SwitchToFiber]
nop
movzx edx, byte [rsp + 0x30]
lea rcx, [rsp + 0x38]
call fcn.18002f130
nop
lea rcx, [rsp + 0xb0]
call fcn.180045960
nop
mov rdx, qword [rsp + 0x1d8]
cmp rdx, 0xf
jbe 0x18005c56d
inc rdx
mov rcx, qword [rsp + 0x1c0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18005c567
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x18005c567
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18014e8b0
nop
mov rcx, qword [rsp + 0x3c0]
xor rcx, rsp
call fcn.18014e890
lea r11, [rsp + 0x3d0]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x30]
mov rsp, r11
pop r15
pop r14
pop r12
ret
jmp 0x18005be90