Function at 0x14000a4b0
Capabilities:
Query environment variable

Disassembly:
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x27]
sub rsp, 0xe0
mov qword [rbp - 0x39], 0xfffffffffffffffe
mov qword [rsp + 0x128], rbx
mov edi, edx
mov rbx, rcx
xor r13d, r13d
mov r15d, r13d
mov dword [rbp + 0x77], r13d
call fcn.14000a130
mov r9, rax
mov r8, rbx
mov edx, edi
lea rcx, str._INIT_LIB____0x_X_at__s_n__s_n
call fcn.14000adf0
test rbx, rbx
je 0x14000ad5f
cmp byte [rbx], r13b
je 0x14000ad5f
test dil, 8
je 0x14000a521
lea eax, [r13 + 0x14]
jmp 0x14000ad64
call fcn.14000a0a0
mov ecx, 0x20b8
call fcn.14000feec
mov qword [rbp + 0x67], rax
test rax, rax
je 0x14000a543
mov rcx, rax
call fcn.1400093d0
jmp 0x14000a546
mov rax, r13
mov qword [0x1400197f0], rax
mov rcx, qword [0x140019778]
mov rax, qword [rcx]
movsxd r8, dword [0x140019780]
xor edx, edx
call qword [rax + 8]
mov rcx, qword [0x140019778]
mov rax, qword [rcx]
mov edx, 0xa
lea r8d, [rdx - 2]
call qword [rax + 8]
mov rcx, qword [0x140019778]
mov rax, qword [rcx]
mov esi, 2
mov r8d, esi
lea edx, [rsi + 9]
call qword [rax + 8]
mov rcx, qword [0x140019778]
mov rax, qword [rcx]
mov r8d, esi
lea edx, [rsi + 0xa]
call qword [rax + 8]
mov rcx, qword [0x140019778]
mov rax, qword [rcx]
lea r8, str.52173
lea edx, [rsi + 0xb]
call qword [rax]
mov rcx, qword [0x140019778]
mov rax, qword [rcx]
lea r8, str.20220513
lea edx, [rsi + 0xc]
call qword [rax]
mov rcx, qword [0x140019778]
mov rax, qword [rcx]
lea r8, str.R3DAPI_8.2.2_52173__20220513_Wx64S_
lea edx, [rsi + 0xd]
call qword [rax]
mov rcx, qword [0x140019778]
mov rax, qword [rcx]
lea r8, str._Wx64S
lea edx, [rsi + 0x12]
call qword [rax]
mov rcx, qword [0x140019778]
mov rax, qword [rcx]
mov r8, rdi
lea edx, [rsi + 0x1c]
call qword [rax + 8]
mov ecx, dword [0x140019e08]
mov rax, qword gs:[0x58]
mov r8d, 4
mov rdx, qword [rax + rcx*8]
lea rdi, [0x140019230]
mov eax, dword [r8 + rdx]
cmp dword [0x1400197f8], eax
jg 0x14000ad7f
cmp qword [0x140019248], 0x10
cmovae rdi, qword [0x140019230]
mov rcx, qword [0x140019778]
mov rax, qword [rcx]
mov r8, rdi
mov edx, 0x1f
call qword [rax]
mov rcx, qword [0x140019778]
mov rax, qword [rcx]
movsxd r8, dword [0x140019784]
mov edx, 0x3e9
call qword [rax + 8]
mov rcx, qword [0x140019778]
mov rax, qword [rcx]
mov r8, r13
cmp byte [0x140019788], r8b
setne r8b
mov edx, 0x3e8
call qword [rax + 8]
mov rcx, rbx
call fcn.14000b4a0
mov ebx, eax
lea rcx, str.R3DSDKPATH
call qword [sym.imp.api_ms_win_crt_environment_l1_1_0.dll_getenv]
test rax, rax
je 0x14000a6c5
cmp byte [rax], 0
je 0x14000a6c5
mov rcx, rax
call fcn.14000b4a0
xor edx, edx
lea r8d, [rdx + 0x50]
lea rcx, [rbp - 0x29]
call sub.VCRUNTIME140.dll_memset
mov ecx, r13d
mov r8, qword [0x1400197f0]
mov rdx, qword [r8 + 0x1a80]
mov r10, qword [r8 + 0x1a78]
mov rax, rdx
sub rax, r10
sar rax, 6
test eax, eax
jle 0x14000a733
lea r9, [rbp - 0x29]
nop
movsxd rax, ecx
shl rax, 6
add rax, qword [r8 + 0x1a78]
mov qword [r9], rax
inc ecx
lea r9, [r9 + 8]
mov rdx, qword [r8 + 0x1a80]
mov r10, qword [r8 + 0x1a78]
mov rax, rdx
sub rax, r10
sar rax, 6
cmp ecx, eax
jl 0x14000a700
sub rdx, r10
sar rdx, 6
cmp edx, 1
jle 0x14000a759
movsxd rdx, edx
lea r9, [0x14000b7c0]
mov r8d, 8
lea rcx, [rbp - 0x29]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_qsort]
lea rcx, str._______________________n
call fcn.14000adf0
mov esi, r13d
mov rax, qword [0x1400197f0]
mov rcx, qword [rax + 0x1a80]
sub rcx, qword [rax + 0x1a78]
sar rcx, 6
test ecx, ecx
jle 0x14000a802
lea rdi, [rbp - 0x29]
nop dword [rax]
mov rax, qword [rdi]
mov r9d, dword [rax + 4]
mov r8d, dword [rax]
mov edx, esi
lea rcx, str._d:_idx___u__status___d__version_
call fcn.14000adf0
mov rax, qword [rdi]
mov r9d, dword [rax + 0x10]
mov r8d, dword [rax + 0xc]
mov edx, dword [rax + 8]
lea rcx, str._u._u._u
call fcn.14000adf0
mov rdx, qword [rdi]
add rdx, 0x20
cmp qword [rdx + 0x18], 0x10
jb 0x14000a7d3
mov rdx, qword [rdx]
lea rcx, str.:__s_n
call fcn.14000adf0
inc esi
add rdi, 8
mov rax, qword [0x1400197f0]
mov rdx, qword [rax + 0x1a80]
sub rdx, qword [rax + 0x1a78]
sar rdx, 6
cmp esi, edx
jl 0x14000a790
lea rcx, str._______________________n
call fcn.14000adf0
mov r12d, r13d
mov dword [rbp + 0x67], r13d
mov rax, qword [0x1400197f0]
mov rcx, qword [rax + 0x1a80]
sub rcx, qword [rax + 0x1a78]
sar rcx, 6
test ecx, ecx
jle 0x14000acfa
lea r14, [rbp - 0x29]
mov qword [rbp + 0x7f], r14
nop
mov rax, qword [r14]
mov ecx, dword [rax + 4]
test ecx, ecx
jne 0x14000acc4
mov rsi, qword [0x1400197f0]
add rsi, 0x30
mov ebx, dword [rsi + 0x1a40]
sub ebx, 1
js 0x14000a885
movsxd rax, ebx
imul rdi, rax, 0x148
add rdi, rsi
mov rcx, rdi
call fcn.14000ec80
sub rdi, 0x148
sub ebx, 1
jns 0x14000a871
mov dword [rsi + 0x1a40], r13d
lea rcx, [rsi + 0x19a0]
xor edx, edx
mov r8d, 0xa0
call sub.VCRUNTIME140.dll_memset
mov rdi, qword [r14]
add rdi, 0x20
mov qword [rbp - 0x79], r13
mov qword [rbp - 0x71], 0xf
mov byte [rsp + 0x30], 0
or r15d, 1
mov dword [rbp + 0x77], r15d
lea rsi, [rdi + 0x10]
mov rdx, qword [rsi]
add rdx, 0xe
lea rcx, [rsp + 0x30]
call fcn.14000ba60
cmp qword [rdi + 0x18], 0x10
jb 0x14000a8df
mov rdi, qword [rdi]
mov rsi, qword [rsi]
mov rcx, qword [rbp - 0x79]
mov rdx, qword [rbp - 0x71]
mov rax, rdx
sub rax, rcx
cmp rsi, rax
ja 0x14000a940
lea rax, [rcx + rsi]
mov qword [rbp - 0x79], rax
lea rbx, [rsp + 0x30]
cmp rdx, 0x10
cmovae rbx, qword [rsp + 0x30]
add rbx, rcx
mov r8, rsi
mov rdx, rdi
mov rcx, rbx
call sub.VCRUNTIME140.dll_memmove
mov byte [rbx + rsi], 0
jmp 0x14000a958
inc r8
cmp byte [rbx + r8], 0
je 0x14000adbb
jmp 0x14000a930
mov qword [rsp + 0x20], rsi
mov r9, rdi
xor r8d, r8d
mov rdx, rsi
lea rcx, [rsp + 0x30]
call fcn.1400091a0
mov rcx, qword [rbp - 0x79]
mov rdx, qword [rbp - 0x71]
mov rax, rdx
sub rax, rcx
cmp rax, 0xe
jb 0x14000a9a1
lea rax, [rcx + 0xe]
mov qword [rbp - 0x79], rax
lea rbx, [rsp + 0x30]
cmp rdx, 0x10
cmovae rbx, qword [rsp + 0x30]
add rbx, rcx
mov r8d, 0xe
lea rdx, str.REDR3D_x64.dll
mov rcx, rbx
call sub.VCRUNTIME140.dll_memmove
mov byte [rbx + 0xe], 0
jmp 0x14000a9c2
mov qword [rsp + 0x20], 0xe
lea r9, str.REDR3D_x64.dll
xor r8d, r8d
lea edx, [r8 + 0xe]
lea rcx, [rsp + 0x30]
call fcn.1400091a0
mov rbx, qword [0x1400197f0]
add rbx, 0x30
cmp qword [rbp - 0x79], 0
jne 0x14000a9de
mov edi, 0xf
jmp 0x14000aacb
mov eax, dword [rbx + 0x1a40]
cmp eax, 0x14
jne 0x14000a9ff
lea rcx, str._FAIL_INT.___loading_too_many_libraries
call fcn.14000adf0
mov edi, 0x10
jmp 0x14000aacb
imul rcx, rax, 0x148
add rcx, rbx
mov r8, qword [0x140019778]
lea rdx, [rsp + 0x30]
call fcn.14000d530
mov edi, eax
test eax, eax
je 0x14000aa55
lea r9, [rsp + 0x30]
cmp qword [rbp - 0x71], 0x10
cmovae r9, qword [rsp + 0x30]
mov r8d, eax
cmp eax, 1
mov ebx, 2
cmove r8d, ebx
mov edx, eax
lea rcx, str._FAIL_LOAD____d_____d____s_n
call fcn.14000adf0
cmp edi, 1
cmove edi, ebx
jmp 0x14000aacb
mov eax, dword [rbx + 0x1a40]
imul rcx, rax, 0x148
mov edx, dword [rcx + rbx]
cmp edx, 0x52334410
je 0x14000aa95
lea rcx, str._FAIL_ID______08X_n
call fcn.14000adf0
mov eax, dword [rbx + 0x1a40]
imul rcx, rax, 0x148
add rcx, rbx
call fcn.14000ec80
mov edi, 7
jmp 0x14000aacb
lea rcx, str._OK_LOAD_____n
call fcn.14000adf0
mov edx, dword [rbx + 0x1a40]
imul rax, rdx, 0x148
mov rcx, qword [rax + rbx + 0x138]
mov rax, qword [rcx + 8]
mov qword [rbx + rdx*8 + 0x19a0], rax
inc dword [rbx + 0x1a40]
mov edi, r13d
mov rax, qword [r14]
mov dword [rax + 4], edi
and r15d, 0xfffffffe
mov dword [rbp + 0x77], r15d
mov rdx, qword [rbp - 0x71]
cmp rdx, 0x10
jb 0x14000ab15
inc rdx
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000ab10
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000ad1a
call fcn.14000ff28
mov qword [rbp - 0x79], r13
mov qword [rbp - 0x71], 0xf
mov byte [rsp + 0x30], 0
mov rax, qword [r14]
cmp dword [rax + 4], 0
jne 0x14000aca0
mov rbx, qword [0x1400197f0]
mov edx, 1
lea rcx, [rbp - 0x69]
call fcn.14000c5b0
nop
mov rax, qword [rbp - 0x69]
movsxd rdx, dword [rax + 4]
lea rax, [rbp - 0x69]
add rdx, rax
lea rcx, [rbx + 0x30]
call fcn.14000cf30
test eax, eax
je 0x14000ab73
mov edx, eax
lea rcx, str._WARN_INT.___unknown_options:__X_n
call fcn.14000adf0
mov rax, qword [rbp - 0x69]
movsxd rcx, dword [rax + 4]
lea r8, [rbp - 0x69]
add r8, rcx
mov rdx, qword [r14]
add rdx, 0x20
mov rcx, qword [0x1400197f0]
add rcx, 0x30
call fcn.14000ae90
mov esi, eax
test eax, eax
je 0x14000abb0
lea rcx, str._FAIL_LOAD___n
call fcn.14000adf0
jmp 0x14000ac78
mov rcx, qword [0x1400197f0]
add rcx, 0x30
mov r8d, 0xc
lea rdx, [0x140019790]
call fcn.14000b240
mov esi, eax
test eax, eax
jne 0x14000ac78
mov rdi, qword [0x1400197f0]
add rdi, 0x30
mov r15d, 1
nop dword [rax + rax]
mov edx, r15d
lea rcx, str._INIT_u_______n
call fcn.14000adf0
xor ebx, ebx
mov eax, dword [rdi + 0x1a40]
test eax, eax
je 0x14000ac49
nop dword [rax + rax]
mov r14d, ebx
imul rcx, r14, 0x148
add rcx, rdi
mov dword [rsp + 0x20], eax
lea r9, [rdi + 0x19a0]
mov r8, qword [0x140019778]
mov edx, r15d
call fcn.14000d040
mov esi, eax
test eax, eax
jne 0x14000aca5
inc ebx
mov eax, dword [rdi + 0x1a40]
cmp ebx, eax
jb 0x14000ac10
mov edx, r15d
lea rcx, str._OK_INIT_u____n
call fcn.14000adf0
mov r15d, 2
inc r13d
cmp r13d, r15d
jl 0x14000abf0
xor r13d, r13d
mov esi, r13d
mov r14, qword [rbp + 0x7f]
mov r15d, dword [rbp + 0x77]
mov r12d, dword [rbp + 0x67]
mov rax, qword [r14]
mov dword [rax + 4], esi
mov rax, qword [r14]
cmp dword [rax + 4], 0
je 0x14000ad21
lea rcx, [rbp - 0x41]
call fcn.14000c790
lea rcx, [rbp - 0x41]
call fcn.14000c720
mov rax, qword [r14]
mov ebx, dword [rax + 4]
jmp 0x14000acc9
imul rax, r14, 0x148
mov r8d, dword [rax + rdi]
mov edx, r15d
lea rcx, str._FAIL_INIT_u__library__08X_n
call fcn.14000adf0
xor r13d, r13d
jmp 0x14000ac6c
test ebx, ebx
cmove ebx, ecx
inc r12d
mov dword [rbp + 0x67], r12d
add r14, 8
mov qword [rbp + 0x7f], r14
mov rax, qword [0x1400197f0]
mov rcx, qword [rax + 0x1a80]
sub rcx, qword [rax + 0x1a78]
sar rcx, 6
cmp r12d, ecx
jl 0x14000a840
lea rcx, [rbp - 0x29]
call fcn.140009fd0
call fcn.14000a0a0
mov edx, ebx
lea rcx, str._FAIL_INIT___error__d_n
call fcn.14000adf0
mov eax, ebx
jmp 0x14000ad64
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
mov rax, qword [0x1400197f0]
mov dword [rax], r12d
lea rcx, [rbp - 0x29]
call fcn.140009fd0
call fcn.14000a130
mov rdx, rax
lea rcx, str.__s_n_OK_INIT_____n
call fcn.14000adf0
nop
lea rcx, [rbp - 0x41]
call fcn.14000c790
lea rcx, [rbp - 0x41]
call fcn.14000c720
xor eax, eax
jmp 0x14000ad64
mov eax, 0xf
mov rbx, qword [rsp + 0x128]
add rsp, 0xe0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
lea rcx, [0x1400197f8]
call fcn.140010778
cmp dword [0x1400197f8], 0xffffffff
jne 0x14000a63f
movdqa xmm0, xmmword [0x140012960]
movdqu xmmword [0x140019240], xmm0
mov byte [0x140019230], 0
mov r8, 0xffffffffffffffff
jmp 0x14000a930
mov rdx, rbx
mov rcx, rdi
call fcn.140005cd0
lea rcx, [0x140011a40]
call fcn.140010168
nop
lea rcx, [0x1400197f8]
call fcn.140010718
jmp 0x14000a63f