Function at 0x18005c050
Capabilities:
Query environment variable

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
mov qword [rsp + 0x20], r12
push r13
push r14
push r15
sub rsp, 0x3d0
mov rax, qword [0x1801da5d0]
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
inc r8
cmp byte [rax + r8], 0
jne 0x18005c0b0
mov rdx, rax
lea rcx, [rsp + 0x1c0]
call fcn.1800075d0
nop
mov r8d, 0x10
lea rdx, str.GalaxyVehicle_
lea rcx, [rsp + 0x1c0]
call fcn.180018140
lea rdx, [rsp + 0x1c0]
lea rcx, [rsp + 0xb0]
call fcn.180045e60
nop
cmp qword [rsp + 0x140], 0
jne 0x18005c16e
lea rdx, [rsp + 0x1c0]
cmp qword [rsp + 0x1d8], 0x10
cmovae rdx, qword [rsp + 0x1c0]
mov r9d, 0x40
lea r8d, [r9 - 0x3f]
lea rcx, [rsp + 0xc0]
call fcn.18003d110
xor r8d, r8d
test rax, rax
mov rax, qword [rsp + 0xb0]
movsxd rcx, dword [rax + 4]
lea rax, [rsp + 0xb0]
je 0x18005c160
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 0x18005c16e
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]
xor ebx, ebx
mov qword [rsp + 0x98], rbx
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.18004c8a0
nop
lea r8, [0x1801f2aa0]
mov rcx, rax
call fcn.18004aec0
nop
lea rcx, [rsp + 0x228]
call fcn.18004caa0
mov rcx, qword [rsp + 0x218]
test rcx, rcx
je 0x18005c1f4
mov rax, qword [rcx]
lea rdx, [rsp + 0x1e0]
cmp rcx, rdx
setne dl
call qword [rax + 0x20]
cmp qword [rsp + 0x140], 0
je 0x18005c6b6
xor edx, edx
lea rcx, [rsp + 0x30]
call fcn.18002fe00
nop
mov qword [rsp + 0x98], rbx
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.18004c8a0
nop
lea r8, [rsp + 0x30]
mov rcx, rax
call fcn.18004aec0
nop
lea rcx, [rsp + 0x318]
call fcn.18004caa0
mov rcx, qword [rsp + 0x308]
test rcx, rcx
je 0x18005c292
mov rax, qword [rcx]
lea rdx, [rsp + 0x2d0]
cmp rcx, rdx
setne dl
call qword [rax + 0x20]
lea rcx, [rsp + 0xc0]
call fcn.18003e290
test rax, rax
jne 0x18005c2c8
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 r13, 0x8000000000000000
mov qword [rsp + 0x58], r13
movzx ecx, byte [rdx]
cmp ecx, 9
ja case.default.0x18005c30f
movsxd rax, ecx
lea rsi, [0x180000000]
mov eax, dword [rsi + rax*4 + 0x5c740]
add rax, rsi
jmp rax
lea rsi, [0x180000000]
cmp ecx, 9
ja case.0x18005c327.0
mov ecx, dword [rsi + rcx*4 + 0x5c768]
add rcx, rsi
jmp rcx
mov rax, qword [rdx + 8]
mov rcx, qword [rax]
mov qword [rsp + 0x48], rcx
jmp 0x18005c34f
mov rax, qword [rdx + 8]
mov rcx, qword [rax + 8]
mov qword [rsp + 0x50], rcx
jmp 0x18005c34f
mov qword [rsp + 0x58], 1
cmp byte [rsp + 0x30], 1
jne 0x18005c3ce
mov rax, qword [rsp + 0x38]
mov r15, qword [rax]
mov rbx, qword [r15 + 8]
mov r14, r15
cmp byte [rbx + 0x19], 0
jne 0x18005c3ab
mov r12d, 0xc
lea rcx, [rbx + 0x20]
mov rdi, qword [rcx + 0x10]
cmp qword [rcx + 0x18], 0x10
jb 0x18005c383
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
je 0x18005c407
js 0x18005c40c
mov r14, rbx
mov rbx, qword [rbx]
cmp byte [rbx + 0x19], 0
je 0x18005c371
cmp byte [r14 + 0x19], 0
jne 0x18005c3c6
lea rdx, [r14 + 0x20]
lea rcx, str.PrimaryColor
call fcn.18004d990
test al, al
je 0x18005c3c9
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], r13
movzx edx, byte [r8]
cmp edx, 9
ja case.0x18005c421.0
movsxd rax, edx
mov ecx, dword [rsi + rax*4 + 0x5c790]
add rcx, rsi
jmp rcx
cmp rdi, r12
jae 0x18005c39f
mov rbx, qword [rbx + 0x10]
jmp 0x18005c3a5
cmp edx, 9
ja case.0x18005c421.0
mov ecx, dword [rsi + rdx*4 + 0x5c7b8]
add rcx, rsi
jmp rcx
mov rax, qword [r8 + 8]
mov rcx, qword [rax]
mov qword [rsp + 0x68], rcx
jmp 0x18005c449
mov rax, qword [r8 + 8]
mov rcx, qword [rax + 8]
mov qword [rsp + 0x70], rcx
jmp 0x18005c449
mov qword [rsp + 0x78], 1
lea rdx, [rsp + 0x60]
lea rcx, [rsp + 0x40]
call fcn.1800388b0
test al, al
je 0x18005c6a6
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], r13
movzx edx, byte [r8]
cmp edx, 9
ja case.0x18005c4a8.0
movsxd rax, edx
mov ecx, dword [rsi + rax*4 + 0x5c7e0]
add rcx, rsi
jmp rcx
cmp edx, 9
ja case.0x18005c4a8.0
mov ecx, dword [rsi + rdx*4 + 0x5c808]
add rcx, rsi
jmp rcx
mov rax, qword [r8 + 8]
mov rcx, qword [rax]
mov qword [rsp + 0x48], rcx
jmp 0x18005c4d0
mov rax, qword [r8 + 8]
mov rcx, qword [rax + 8]
mov qword [rsp + 0x50], rcx
jmp 0x18005c4d0
mov qword [rsp + 0x58], 1
cmp byte [rsp + 0x30], 1
jne 0x18005c55d
mov rax, qword [rsp + 0x38]
mov r15, qword [rax]
mov rbx, qword [r15 + 8]
mov r14, r15
cmp byte [rbx + 0x19], 0
jne 0x18005c53a
mov r12d, 0xe
nop word [rax + rax]
lea rcx, [rbx + 0x20]
mov rdi, qword [rcx + 0x10]
cmp qword [rcx + 0x18], 0x10
jb 0x18005c512
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
je 0x18005c596
js 0x18005c59b
mov r14, rbx
mov rbx, qword [rbx]
cmp byte [rbx + 0x19], 0
je 0x18005c500
cmp byte [r14 + 0x19], 0
jne 0x18005c555
lea rdx, [r14 + 0x20]
lea rcx, str.SecondaryColor
call fcn.18004d990
test al, al
je 0x18005c558
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], r13
movzx edx, byte [r8]
cmp edx, 9
ja case.0x18005c5b0.0
movsxd rax, edx
mov ecx, dword [rsi + rax*4 + 0x5c830]
add rcx, rsi
jmp rcx
cmp rdi, r12
jae 0x18005c52e
mov rbx, qword [rbx + 0x10]
jmp 0x18005c534
cmp edx, 9
ja case.0x18005c5b0.0
mov ecx, dword [rsi + rdx*4 + 0x5c858]
add rcx, rsi
jmp rcx
mov rax, qword [r8 + 8]
mov rcx, qword [rax]
mov qword [rsp + 0x68], rcx
jmp 0x18005c5d8
mov rax, qword [r8 + 8]
mov rcx, qword [rax + 8]
mov qword [rsp + 0x70], rcx
jmp 0x18005c5d8
mov qword [rsp + 0x78], 1
lea rdx, [rsp + 0x60]
lea rcx, [rsp + 0x40]
call fcn.1800388b0
test al, al
je 0x18005c6a6
lea rdx, str.PrimaryColor
lea rcx, [rsp + 0x30]
call fcn.180041c50
mov rcx, rax
call fcn.18004dc80
mov edi, eax
lea rdx, str.SecondaryColor
lea rcx, [rsp + 0x30]
call fcn.180041c50
mov rcx, rax
call fcn.18004dc80
mov ebx, eax
call fcn.18000a950
mov edx, 1
mov ecx, eax
call fcn.18000a150
mov r8d, ebx
mov edx, edi
mov ecx, eax
call fcn.180059270
mov rax, qword gs:[0x20]
mov rbx, qword [rax]
call qword [sym.imp.MSVCP140.dll__Query_perf_frequency]
mov rdi, rax
call qword [sym.imp.MSVCP140.dll__Query_perf_counter]
cmp rdi, 0x989680
jne 0x18005c66c
imul rax, rax, 0x64
jmp 0x18005c687
cqo
idiv rdi
imul rcx, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
cqo
idiv rdi
add rax, rcx
add rax, 0xbebc200
cmp byte [rbx + 0x20], 0
jne 0x18005c697
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.18002f8d0
nop
lea rcx, [rsp + 0xb0]
call fcn.180045d50
nop
mov rdx, qword [rsp + 0x1d8]
cmp rdx, 0x10
jb 0x18005c70b
inc rdx
mov rcx, qword [rsp + 0x1c0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18005c705
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x18005c705
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18014f090
nop
mov rcx, qword [rsp + 0x3c0]
xor rcx, rsp
call fcn.18014f070
lea r11, [rsp + 0x3d0]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x30]
mov r12, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop r13
ret
jmp 0x18005c050