Function at 0x403044
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.004391e0
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.004180f0
lea rcx, str._JRESearch__Checking_for_JRE__d_n
mov edx, ebx
call fcn.0040bc84
lea rcx, str.PROGRAMFILES
mov byte [rsp + 0x90], r14b
call fcn.0041b330
lea rcx, [rsp + 0x90]
mov rdx, rax
call fcn.00417140
cmp sil, r14b
lea rcx, [rsp + 0x90]
lea rdx, str.Java_JWAutoTest
jne 0x4030d9
lea rdx, str.Java
call fcn.0040bbe4
lea rdx, [0x0044c340]
lea rcx, [rsp + 0x90]
call fcn.0040bbe4
lea rdx, [rsp + 0x80]
lea rcx, [rsp + 0x90]
call fcn.00417140
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.00416e70
lea rdx, [rsp + 0x90]
mov rcx, rax
mov r14, rax
mov byte [rax], 0
call fcn.00417140
lea rdx, [0x0044c46c]
mov rcx, r14
call fcn.0040bbe4
lea rdx, str.java.exe
mov rcx, r14
call fcn.0040bbe4
lea rcx, str._JRESearch__Looking_at_JRE__s_n
mov rdx, r13
call fcn.0040bc84
mov rcx, r13
call fcn.0040b378
lea rcx, str._JRESearch__JRE_binary_exists_n
test eax, eax
mov r15d, eax
jne 0x403198
lea rcx, str._JRESearch__JRE_binary_does_NOT_exist_n
call fcn.0040bc84
mov rcx, rsi
call fcn.0040b378
lea rcx, str._JRESearch__JRE_up200_exists_n
test eax, eax
mov ebp, eax
jne 0x4031b9
lea rcx, str._JRESearch__JRE_up200_does_NOT_exist_n
call fcn.0040bc84
mov rdx, qword [rsp + 0x1480]
mov rcx, r14
call fcn.00402e98
xor r14d, r14d
lea rcx, str._JRESearch__JRE_version_is_OK_n
cmp eax, r14d
mov esi, eax
jne 0x4031e6
lea rcx, str._JRESearch__JRE_version_is_NOT_OK_n
call fcn.0040bc84
cmp r15d, r14d
je 0x4032b4
cmp ebp, r14d
je 0x4032b4
cmp esi, r14d
je 0x4032b4
lea rcx, str._JRESearch__JRE_unpack200_exists__s_n
mov rdx, r13
call fcn.0040bc84
lea rdx, str.JWrapper
mov rcx, r12
call fcn.0040bffc
cmp rax, r14
je 0x403363
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, [0x0044cb18]
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.00401cc4
cmp eax, 0x48
je 0x4032d5
lea rcx, str._JRESearch__JRE_failed_compatibility_test_n
jmp 0x4032bb
lea rcx, str._JRESearch__JRE_does_not_exist_or_does_not_have_unpack200_n
call fcn.0040bc84
sub ebx, 1
cmp ebx, 5
jl 0x403341
mov sil, byte [rsp + 0x1478]
jmp 0x403077
lea rcx, str._JRESearch__JRE_is_valid__copying..._n
call fcn.0040bc84
mov rbx, qword [rsp + 0x1498]
mov rdx, r12
mov rcx, rbx
call fcn.00401a08
mov rcx, rbx
call fcn.0040bb9c
lea rcx, [rsp + 0x90]
mov rdx, rbx
call fcn.00401740
cmp eax, r14d
jne 0x403355
lea rcx, str._JRESearch__JRE_copied_to__s_OK_n
mov rdx, rbx
call fcn.0040bc84
lea rdx, str.00000000000
mov rcx, rdi
mov byte [rdi], r14b
call fcn.00417140
lea rcx, str._JRESearch__Copied_JRE_version_is__s_n
mov rdx, rdi
call fcn.0040bc84
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.0040bc84
jmp 0x403341
lea rcx, str._JRESearch___No_latest_App_version_even_after_download__n
call fcn.0040bc84
mov ecx, 1
call fcn.00418560
int3