Function at 0x4031ec
Capabilities:
Query environment variable

Disassembly:
mov qword [rsp + 0x18], r8
mov byte [rsp + 0x10], dl
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
mov eax, 0x1428
call fcn.00439550
sub rsp, rax
mov r12, r9
mov sil, dl
mov rdi, rcx
mov ebx, 0x14
xor r14d, r14d
lea rdx, [rsp + 0x80]
mov r8d, 0xa
mov ecx, ebx
call fcn.00418400
lea rcx, str._JRESearch__Checking_for_JRE__d_n
mov edx, ebx
call fcn.0040bf40
lea rcx, str.PROGRAMFILES
mov byte [rsp + 0x90], r14b
call fcn.0041b6b0
lea rcx, [rsp + 0x90]
mov rdx, rax
call fcn.00417450
cmp sil, r14b
lea rcx, [rsp + 0x90]
lea rdx, str.Java_JWAutoTest
jne 0x403281
lea rdx, str.Java
call fcn.0040bea0
lea rdx, [0x0044c368]
lea rcx, [rsp + 0x90]
call fcn.0040bea0
lea rdx, [rsp + 0x80]
lea rcx, [rsp + 0x90]
call fcn.00417450
mov cl, byte [rsp + 0x14d0]
lea rdx, [rsp + 0x90]
call fcn.004014c4
lea rcx, [rsp + 0x90]
mov rsi, rax
call fcn.00401450
mov ecx, 0x1388
mov r13, rax
call fcn.00417180
lea rdx, [rsp + 0x90]
mov rcx, rax
mov r14, rax
mov byte [rax], 0
call fcn.00417450
lea rdx, [0x0044c494]
mov rcx, r14
call fcn.0040bea0
lea rdx, str.java.exe
mov rcx, r14
call fcn.0040bea0
lea rcx, str._JRESearch__Looking_at_JRE__s_n
mov rdx, r13
call fcn.0040bf40
mov rcx, r13
call fcn.0040b634
lea rcx, str._JRESearch__JRE_binary_exists_n
test eax, eax
mov r15d, eax
jne 0x403340
lea rcx, str._JRESearch__JRE_binary_does_NOT_exist_n
call fcn.0040bf40
mov rcx, rsi
call fcn.0040b634
lea rcx, str._JRESearch__JRE_up200_exists_n
test eax, eax
mov ebp, eax
jne 0x403361
lea rcx, str._JRESearch__JRE_up200_does_NOT_exist_n
call fcn.0040bf40
mov rdx, qword [rsp + 0x1480]
mov rcx, r14
call fcn.00403040
xor r14d, r14d
lea rcx, str._JRESearch__JRE_version_is_OK_n
cmp eax, r14d
mov esi, eax
jne 0x40338e
lea rcx, str._JRESearch__JRE_version_is_NOT_OK_n
call fcn.0040bf40
cmp r15d, r14d
je 0x40345c
cmp ebp, r14d
je 0x40345c
cmp esi, r14d
je 0x40345c
lea rcx, str._JRESearch__JRE_unpack200_exists__s_n
mov rdx, r13
call fcn.0040bf40
lea rdx, str.JWrapper
mov rcx, r12
call fcn.0040c2b8
cmp rax, r14
je 0x40350b
mov rcx, qword [rsp + 0x14c8]
mov r9, qword [rsp + 0x14b0]
mov r8d, dword [rsp + 0x14a8]
mov rdx, qword [rsp + 0x14a0]
mov qword [rsp + 0x70], r14
mov byte [rsp + 0x68], r14b
mov qword [rsp + 0x60], rcx
mov rcx, qword [rsp + 0x14c0]
lea rbp, [0x0044cb48]
mov qword [rsp + 0x58], rbp
mov byte [rsp + 0x50], r14b
mov qword [rsp + 0x48], rbp
mov dword [rsp + 0x40], 1
mov qword [rsp + 0x38], r13
mov qword [rsp + 0x30], rcx
mov rcx, qword [rsp + 0x14b8]
mov qword [rsp + 0x28], rcx
mov rcx, r12
mov qword [rsp + 0x20], rax
call fcn.00401ce4
cmp eax, 0x48
je 0x40347d
lea rcx, str._JRESearch__JRE_failed_compatibility_test_n
jmp 0x403463
lea rcx, str._JRESearch__JRE_does_not_exist_or_does_not_have_unpack200_n
call fcn.0040bf40
sub ebx, 1
cmp ebx, 5
jl 0x4034e9
mov sil, byte [rsp + 0x1478]
jmp 0x40321f
lea rcx, str._JRESearch__JRE_is_valid__copying..._n
call fcn.0040bf40
mov rbx, qword [rsp + 0x1498]
mov rdx, r12
mov rcx, rbx
call fcn.00401a08
mov rcx, rbx
call fcn.0040be58
lea rcx, [rsp + 0x90]
mov rdx, rbx
call fcn.00401740
cmp eax, r14d
jne 0x4034fd
lea rcx, str._JRESearch__JRE_copied_to__s_OK_n
mov rdx, rbx
call fcn.0040bf40
lea rdx, str.00000000000
mov rcx, rdi
mov byte [rdi], r14b
call fcn.00417450
lea rcx, str._JRESearch__Copied_JRE_version_is__s_n
mov rdx, rdi
call fcn.0040bf40
add rsp, 0x1428
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
lea rcx, str._JRESearch__JRE_copy_failed__cannot_pick_up_existing_JRE_n
call fcn.0040bf40
jmp 0x4034e9
lea rcx, str._JRESearch___No_latest_App_version_even_after_download__n
call fcn.0040bf40
mov ecx, 1
call fcn.00418870
int3