Function at 0x4035e0
Capabilities:
Check os version
Contain obfuscated stackstrings
Query environment variable
Write file on windows

Disassembly:
mov qword [rsp + 0x18], r8
mov dword [rsp + 0x10], edx
mov qword [rsp + 8], rcx
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
mov eax, 0x1de8
call fcn.004394e0
sub rsp, rax
xor r15d, r15d
mov rbp, rcx
mov ebx, 0x1388
mov rcx, rbx
mov qword [0x00469040], r15
mov qword [rsp + 0xb8], r15
mov byte [rsp + 0x80], r15b
call fcn.00417100
mov rcx, rbx
mov qword [rsp + 0x220], rax
call fcn.00417100
mov rcx, rbx
mov rsi, rax
mov qword [rsp + 0xd8], rax
call fcn.00417100
mov rcx, rbx
mov qword [rsp + 0x230], rax
call fcn.00417100
mov rcx, rbx
mov qword [rsp + 0x1e8], rax
call fcn.00417100
mov rcx, rbx
mov qword [rsp + 0x1e0], rax
call fcn.00417100
mov rcx, rbx
mov qword [rsp + 0x1f0], rax
call fcn.00417100
mov rcx, rbx
mov qword [rsp + 0x1d8], rax
call fcn.00417100
mov rcx, rbx
mov qword [rsp + 0x128], rax
call fcn.00417100
mov rcx, rbx
mov qword [rsp + 0xf8], rax
call fcn.00417100
mov rcx, rbx
mov qword [rsp + 0x1d0], rax
call fcn.00417100
mov rcx, rbx
mov qword [rsp + 0x228], rax
call fcn.00417100
mov rcx, rbx
mov r14, rax
mov qword [rsp + 0x88], rax
mov byte [rsp + 0xb0], r15b
call fcn.00417100
mov rcx, rbx
mov qword [rsp + 0x108], rax
call fcn.00417100
mov rcx, rbx
mov qword [rsp + 0x120], rax
call fcn.00417100
mov qword [rsp + 0x1f8], rax
call fcn.00401250
lea r13d, [r15 + 1]
cmp al, r15b
je 0x40376c
lea rdx, [rsp + 0x208]
lea rcx, [0x00469020]
xor r8d, r8d
mov dword [rsp + 0x208], r13d
mov qword [rsp + 0x210], r15
mov dword [rsp + 0x218], r15d
mov dword [rsp + 0x21c], r15d
call sub.gdiplus.dll_GdiplusStartup
lea rdx, [0x0044df68]
lea rcx, [rsp + 0x238]
mov r8d, 0x40
mov byte [rsp + 0x238], r15b
call fcn.004182a0
call fcn.0040b1f0
mov dil, 0x5c
mov rcx, rbp
mov qword [rsp + 0xc0], rax
mov byte [rsp + 0x152], 9
mov byte [rsp + 0x153], 0x7a
mov byte [rsp + 0x154], 0x3e
mov byte [rsp + 0x155], 0x2f
mov byte [rsp + 0x156], 0x2e
mov byte [rsp + 0x157], 0xfa
mov byte [rsp + 0x158], 0xff
mov byte [rsp + 0x159], 0x1d
mov byte [rsp + 0x15a], 0xf0
mov byte [rsp + 0x15b], 0x9b
mov byte [rsp + 0x15c], 0x19
mov byte [rsp + 0x15d], 0x7c
mov byte [rsp + 0x15e], 0x15
mov byte [rsp + 0x15f], 0xb8
mov byte [rsp + 0x160], 0x1e
mov byte [rsp + 0x161], 0x6d
mov byte [rsp + 0x162], 0xc6
mov byte [rsp + 0x163], 0x10
mov byte [rsp + 0x164], 0x41
mov byte [rsp + 0x165], 0x7e
mov byte [rsp + 0x166], dil
mov byte [rsp + 0x167], 0xed
mov byte [rsp + 0x168], 0x51
mov byte [rsp + 0x169], 0xb1
mov byte [rsp + 0x16a], 0x19
mov byte [rsp + 0x16b], 0x1c
mov byte [rsp + 0x16c], 0x3c
mov byte [rsp + 0x16d], 0xe2
mov byte [rsp + 0x16e], 0x94
mov byte [rsp + 0x16f], 0xd8
mov byte [rsp + 0x130], 0x59
mov byte [rsp + 0x131], 0xbd
mov byte [rsp + 0x132], 0xc9
mov byte [rsp + 0x133], 0x52
mov byte [rsp + 0x134], 0xaa
mov byte [rsp + 0x135], 0x35
mov byte [rsp + 0x136], 0xad
mov byte [rsp + 0x137], 0xbb
mov byte [rsp + 0x138], 0x10
mov byte [rsp + 0x139], 0xef
mov byte [rsp + 0x13a], 0xde
mov byte [rsp + 0x13b], 0x67
mov byte [rsp + 0x13c], 0x2c
mov byte [rsp + 0x13d], 0x47
mov byte [rsp + 0x13e], 0xe0
mov byte [rsp + 0x13f], 0xb5
mov byte [rsp + 0x140], 0xd4
mov byte [rsp + 0x141], 0x82
mov byte [rsp + 0x142], 0x1f
mov byte [rsp + 0x143], 0x81
mov byte [rsp + 0x144], 0x52
mov byte [rsp + 0x145], 0xa1
mov byte [rsp + 0x146], 2
mov byte [rsp + 0x147], 0x44
mov byte [rsp + 0x148], 0x2a
mov byte [rsp + 0x149], 0xeb
mov byte [rsp + 0x14a], 0xaa
mov byte [rsp + 0x14b], 0x7b
mov byte [rsp + 0x14c], 0x79
mov byte [rsp + 0x14d], 0x3b
mov byte [rsp + 0x14e], 0x93
mov byte [rsp + 0x14f], 0x45
mov byte [rsp + 0x150], 0xae
mov byte [rsp + 0x151], 0xd2
call fcn.00417310
mov ebx, 0x400
cmp rax, 3
jb 0x4039d6
cmp byte [rbp], dil
jne 0x4039bd
cmp byte [rbp + 1], dil
je 0x4039c9
cmp byte [rbp + 1], 0x3a
jne 0x4039d6
cmp byte [rbp + 2], dil
jne 0x4039d6
mov rdi, rbp
mov qword [rsp + 0x110], rbp
jmp 0x4039fe
mov rcx, rbx
call fcn.00417100
mov edx, ebx
mov rcx, rax
mov rdi, rax
mov qword [rsp + 0x110], rax
call fcn.0041af10
mov rdx, rbp
mov rcx, rdi
call fcn.0040be2c
lea rcx, str._Extractor__The_absolute_wrapper_path_is__s_n
mov rdx, rdi
call fcn.0040becc
lea rcx, str._Extractor__The_executable_name_is__s_n
mov rdx, rbp
call fcn.0040becc
mov ecx, 0x800
call fcn.00417100
mov rdx, rdi
mov rcx, rax
mov rbx, rax
mov byte [rax], r15b
call fcn.004173d0
mov rcx, rbx
mov edi, r15d
mov r12d, r15d
call fcn.00417310
cmp eax, r15d
jle 0x403a7c
mov r13, rbx
mov esi, 1
cmp byte [r13], 0x5c
mov rcx, rbx
cmove edi, r12d
add r12d, esi
add r13, rsi
call fcn.00417310
cmp r12d, eax
jl 0x403a52
mov rsi, qword [rsp + 0xd8]
mov r13d, 1
movsxd rax, edi
lea rdx, [0x0044c878]
mov rcx, rbp
mov byte [rax + rbx], r15b
call fcn.00418ed0
cmp rax, r15
mov rbx, rax
jne 0x403ab2
lea rcx, str._Extractor___Failed_to_extract_wrapper_params___couldnt_open_file__s_n
mov rdx, rbp
call fcn.0040becc
mov ecx, r13d
call fcn.004187f0
int3
lea r9, str.Params
lea rdx, [rsp + 0x130]
mov r8d, 0x40
mov rcx, rax
call fcn.0040bd64
cmp eax, 0xffffffff
jne 0x403add
mov ecx, r13d
call fcn.004187f0
int3
mov rcx, rbx
call fcn.00409c98
lea rcx, str._Extractor__Found_Params_marker._Extracting_now..._n
mov r12, rax
mov qword [rsp + 0xd0], rax
call fcn.0040becc
mov ebx, 0x30d40
mov rcx, rbx
call fcn.00417100
mov r8, rbx
xor edx, edx
mov rcx, rax
mov qword [rsp + 0xe0], rax
call fcn.004190e0
xor r9d, r9d
lea rdx, str.Params_Count
lea r8d, [r9 + 0x28]
mov r13b, r15b
mov rcx, r12
mov byte [rsp + 0x84], r15b
mov byte [rsp + 0xa0], r15b
mov dword [rsp + 0x90], r13d
call fcn.0040a130
cmp rax, r15
jne 0x403b5b
mov ebx, 0xffffffff
jmp 0x403b65
mov rcx, rax
call fcn.00418d30
mov ebx, eax
lea rcx, [0x0044e010]
mov dword [rsp + 0x98], ebx
call fcn.0040becc
lea rcx, [0x0044e018]
call fcn.0040becc
lea rcx, str._Processing__d_dynamic_properties_n
mov edx, ebx
call fcn.0040becc
lea rcx, [0x0044e018]
call fcn.0040becc
test ebx, ebx
jle 0x404167
mov r13, qword [rsp + 0xc0]
mov ebp, dword [rsp + 0x90]
mov esi, ebx
mov qword [rsp + 0xc8], r13
lea rdx, str.Param_Name
xor r9d, r9d
mov r8d, 0x400
mov rcx, r12
call fcn.0040a130
lea rdx, str.Param_Value
xor r9d, r9d
mov r8d, 0x30d40
mov rcx, r12
mov rdi, rax
call fcn.0040a130
mov rcx, rax
mov rbx, rax
call fcn.00417310
cmp rax, 0x64
jbe 0x403c37
lea rdx, [rsp + 0x130]
lea rcx, [rsp + 0x130]
mov r8d, 0x63
call fcn.00418f60
mov byte [rsp + 0x193], 0
lea r9, [rsp + 0x130]
lea rcx, str._DynProps__Dynamic_Param__d:__s__s...__n
jmp 0x403c41
mov r9, rbx
lea rcx, str._DynProps__Dynamic_Param__d:__s__s__n
mov r8, rdi
mov edx, r15d
call fcn.0040becc
mov r12, qword [rsp + 0xe0]
lea rdx, str.jwdyna_
mov rcx, r12
call fcn.00409f64
mov rdx, rdi
mov rcx, r12
call fcn.00409ff4
mov rdx, rbx
mov rcx, r12
call fcn.00409f64
lea rdx, str.update_url
mov rcx, rdi
call fcn.004195e0
test eax, eax
jne 0x403ca3
lea rcx, str._DynProps__Dynamic_Update_URL:__s_n
mov rdx, rbx
mov qword [rsp + 0xc8], rbx
call fcn.0040becc
lea rdx, str.match_versions
mov rcx, rdi
call fcn.004195e0
lea r13, str.true
test eax, eax
jne 0x403cd2
mov rdx, r13
mov rcx, rbx
call fcn.004195e0
test eax, eax
sete byte [rsp + 0x80]
lea rdx, str.wrapper_autotest
mov rcx, rdi
call fcn.004195e0
mov ecx, dword [rsp + 0xb0]
mov r12d, 1
movzx ecx, cl
test eax, eax
lea rdx, str.show_no_ui
cmove ecx, r12d
mov dword [rsp + 0xb0], ecx
mov rcx, rdi
call fcn.004195e0
test eax, eax
jne 0x403d33
mov rdx, r13
mov rcx, rbx
call fcn.004195e0
mov ecx, dword [rsp + 0x84]
movzx ecx, cl
test eax, eax
cmove ecx, r12d
mov dword [rsp + 0x84], ecx
lea rdx, str.repair
mov rcx, rdi
call fcn.004195e0
test eax, eax
jne 0x403d68
mov rdx, r13
mov rcx, rbx
call fcn.004195e0
mov ecx, dword [rsp + 0xa0]
movzx ecx, cl
test eax, eax
cmove ecx, r12d
mov dword [rsp + 0xa0], ecx
lea rdx, str.reinstall
mov rcx, rdi
call fcn.004195e0
test eax, eax
jne 0x403d90
mov rdx, r13
mov rcx, rbx
call fcn.004195e0
movzx ebp, bpl
test eax, eax
cmove ebp, r12d
lea rdx, str.force_spawn
mov rcx, rdi
call fcn.004195e0
test eax, eax
jne 0x403dbb
mov rdx, r13
mov rcx, rbx
call fcn.004195e0
xor ecx, ecx
test eax, eax
sete cl
mov dword [0x00469050], ecx
lea rdx, str.splash_buffer
mov rcx, rdi
call fcn.004195e0
test eax, eax
jne 0x403de9
mov rcx, rbx
call fcn.00417310
test rax, rax
je 0x403de9
mov rcx, rbx
call fcn.00418d30
mov dword [0x00469168], eax
lea rdx, str.splash_image
mov rcx, rdi
call fcn.004195e0
test eax, eax
jne 0x40402a
mov rcx, rbx
call fcn.00417310
mov rdx, rbx
cmp rax, 0x64
jae 0x403e1a
lea rcx, str._DynProps__Splash_Image_is__s_n
jmp 0x403e44
lea rcx, [rsp + 0x130]
mov r8d, 0x63
call fcn.00418f60
mov byte [rsp + 0x193], 0
lea rdx, [rsp + 0x130]
lea rcx, str._DynProps__Splash_Image_is__s..._n
call fcn.0040becc
lea rcx, str._DynProps__Base64_decoding_image..._n
call fcn.0040becc
mov rcx, rbx
call fcn.00417310
mov r12, qword [0x00469058]
test r12, r12
mov r13, rax
jne 0x403ea2
mov ecx, 0x100
call fcn.00417100
xor edx, edx
mov r12, rax
mov qword [0x00469058], rax
lea rax, str.ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789_
lea r8d, [rdx + 1]
movsx rcx, byte [rax]
add rax, r8
mov byte [rcx + r12], dl
add edx, r8d
cmp edx, 0x40
jl 0x403e8d
jmp 0x403ea8
mov r8d, 1
test r13b, 3
je 0x403ecb
lea rcx, str._Extractor__Base64_deconding_failed_as_input_length_is_not_aligned_n
call fcn.0040becc
mov qword [rsp + 0xb8], 0
jmp 0x404016
mov rax, r13
shr rax, 2
lea rcx, [rax + rax*2]
mov qword [rsp + 0xa8], rcx
cmp byte [r13 + rbx - 1], 0x3d
jne 0x403ef1
sub rcx, r8
mov qword [rsp + 0xa8], rcx
cmp byte [r13 + rbx - 2], 0x3d
jne 0x403f04
sub rcx, r8
mov qword [rsp + 0xa8], rcx
call fcn.00417100
test rax, rax
mov qword [rsp + 0xb8], rax
jne 0x403f2c
lea rdx, [rsp + 0xa8]
lea rcx, str._Extractor__Base64_deconding_failed_as_malloc_failed_to_init__d_n
call fcn.0040becc
jmp 0x403eba
xor ecx, ecx
xor r8d, r8d
test r13, r13
je 0x404016
mov r9, rax
lea esi, [rcx + 1]
mov r10b, 0x3d
cmp byte [rcx + rbx], r10b
jne 0x403f4d
xor edx, edx
jmp 0x403f57
movsx rax, byte [rcx + rbx]
movsx edx, byte [rax + r12]
add ecx, esi
cmp byte [rcx + rbx], r10b
jne 0x403f64
xor r14d, r14d
jmp 0x403f6e
movsx rax, byte [rcx + rbx]
movsx r14d, byte [rax + r12]
add ecx, esi
cmp byte [rcx + rbx], r10b
jne 0x403f7b
xor r11d, r11d
jmp 0x403f85
movsx rax, byte [rcx + rbx]
movsx r11d, byte [rax + r12]
add ecx, esi
cmp byte [rcx + rbx], r10b
jne 0x403f92
xor r10d, r10d
jmp 0x403f9c
movsx rax, byte [rcx + rbx]
movsx r10d, byte [rax + r12]
shl edx, 6
mov eax, r8d
add ecx, esi
add edx, r14d
shl edx, 6
add edx, r11d
shl edx, 6
add edx, r10d
cmp rax, qword [rsp + 0xa8]
jae 0x403fcb
mov eax, edx
add r8d, esi
shr eax, 0x10
mov byte [r9], al
add r9, rsi
mov eax, r8d
cmp rax, qword [rsp + 0xa8]
jae 0x403fe6
mov eax, edx
add r8d, esi
shr eax, 8
mov byte [r9], al
add r9, rsi
mov eax, r8d
cmp rax, qword [rsp + 0xa8]
jae 0x403ffc
mov byte [r9], dl
add r8d, esi
add r9, rsi
mov eax, ecx
cmp rax, r13
jb 0x403f40
mov r14, qword [rsp + 0x88]
mov esi, dword [rsp + 0x98]
mov rdx, qword [rsp + 0xa8]
lea rcx, str._DynProps__Decode_complete__image_size_is__d__n
call fcn.0040becc
lea rdx, str.jre_name
mov rcx, rdi
call fcn.004195e0
test eax, eax
jne 0x40405a
mov rdx, rbx
mov rcx, r14
mov byte [r14], al
call fcn.004173d0
lea rcx, str._DynProps__JRE_name_from_dynamic_launch_properties_is__s_n
mov rdx, r14
call fcn.0040becc
lea rdx, str.windows_app_id
mov rcx, rdi
call fcn.004195e0
test eax, eax
jne 0x40412d
lea rcx, str._DynProps__Windows_APP_ID_is__s_n
mov rdx, rbx
call fcn.0040becc
lea rcx, str._Extractor__Asked_to_set_the_Windows_APP_ID_to__s_n
mov rdx, rbx
call fcn.0040becc
lea rcx, str._Extractor__Loading_shell32_n
call fcn.0040becc
lea rcx, str.shell32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
mov r12, rax
je 0x40412d
lea rcx, str._Extractor__Finding_procedure_address_for_SetCurrentProcessExplicitAppUserModelID_n
call fcn.0040becc
lea rdx, str.SetCurrentProcessExplicitAppUserModelID
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
mov r13, rax
je 0x404124
mov rcx, rbx
call fcn.00409eb4
lea rcx, str._Extractor__Setting_app_ID_to__S___s__n
mov r8, rbx
mov rdx, rax
mov rdi, rax
call fcn.0040becc
mov rcx, rdi
call r13
test eax, eax
jne 0x404109
lea rcx, str._Extractor__Set_App_ID_OK_n
call fcn.0040becc
jmp 0x40411c
lea rdx, str.SetCurrentProcessExplicitAppUserModelID
lea rcx, str.Extractor
call fcn.0040ae24
mov rcx, rdi
call fcn.004170c0
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
mov r12, qword [rsp + 0xd0]
mov edi, 1
add r15d, edi
cmp r15d, esi
jl 0x403bbf
mov rsi, qword [rsp + 0xd8]
mov dword [rsp + 0x90], ebp
mov rbp, qword [rsp + 0x1e30]
mov r13d, dword [rsp + 0x90]
jmp 0x40417c
mov rax, qword [rsp + 0xc0]
mov edi, 1
mov qword [rsp + 0xc8], rax
mov rcx, r12
call fcn.00407d74
lea rcx, str.Processing_dynamic_properties
call fcn.0040c0d0
cmp byte [rsp + 0x1e58], 0
je 0x4041a6
lea rcx, str._Extractor__This_is_an_elevated_run_purely_to_prepare_an_installation._Will_not_show_UI_or_launch_an_app_n
call fcn.0040becc
lea rcx, [0x0044e010]
call fcn.0040becc
lea rcx, str.Extracting_wrapper_tail
call fcn.0040c098
lea rdx, [0x0044c878]
mov rcx, rbp
call fcn.00418ed0
test rax, rax
mov rbx, rax
jne 0x4041ec
lea rcx, str._Extractor___Failed_to_extract_wrapper_tail___couldnt_open_file__s_n
mov rdx, rbp
call fcn.0040becc
mov ecx, edi
call fcn.004187f0
int3
mov rdx, qword [rsp + 0xc0]
lea r9, str.Tail
mov r8d, 0x80
mov rcx, rax
call fcn.0040bd64
cmp eax, 0xffffffff
jne 0x404216
mov ecx, edi
call fcn.004187f0
int3
lea rcx, str._Extractor__Found_tail_marker_n
call fcn.0040becc
mov rcx, rbx
call fcn.00409c98
mov edi, 0x400
lea rdx, str.App_Name
xor r9d, r9d
mov r8d, edi
mov rcx, rax
mov r12, rax
mov qword [rsp + 0x118], rax
call fcn.0040a130
lea rdx, str.App_Version
xor r9d, r9d
mov r8d, edi
mov rcx, r12
mov qword [rsp + 0x90], rax
call fcn.0040a130
lea rdx, str.JRE_Version
xor r9d, r9d
mov r8d, edi
mov rcx, r12
mov qword [rsp + 0x98], rax
call fcn.0040a130
lea rdx, str.GU_Version
xor r9d, r9d
mov r8d, edi
mov rcx, r12
mov qword [rsp + 0xc0], rax
call fcn.0040a130
lea rdx, str.Min_Splash_MS
xor r9d, r9d
mov r8d, edi
mov rcx, r12
mov qword [rsp + 0xf0], rax
call fcn.0040a130
lea rdx, str.Signature_Public_Key
xor r9d, r9d
mov r8d, 0x2000
mov rcx, r12
mov qword [rsp + 0xd8], rax
call fcn.0040a130
lea rdx, str.Can_Override_Splash
xor r9d, r9d
mov r8d, edi
mov rcx, r12
mov rbp, rax
call fcn.0040a130
lea rdx, str.Install_Type
xor r9d, r9d
mov r8d, edi
mov rcx, r12
mov qword [rsp + 0x200], rax
call fcn.0040a130
lea rdx, str.Silent_Parameter
xor r9d, r9d
mov r8d, edi
mov rcx, r12
mov r14, rax
call fcn.0040a130
lea rdx, str.Required_Java_Version
xor r9d, r9d
mov r8d, edi
mov rcx, r12
mov rbx, rax
call fcn.0040a130
lea rdx, str.Update_URL
xor r9d, r9d
mov r8d, 0x1388
mov rcx, r12
mov qword [rsp + 0x100], rax
call fcn.0040a130
xor r9d, r9d
lea rdx, str.Skip_System_JRE
lea r8d, [r9 + 2]
mov rcx, r12
mov r15, rax
mov qword [rsp + 0xe8], rax
call fcn.0040a130
xor r9d, r9d
mov qword [rsp + 0xd0], rax
lea r8d, [r9 + 0x14]
lea rdx, str.Repair_Parameter
mov rcx, r12
call fcn.0040a130
xor r9d, r9d
lea rdx, str.Reinstall_Parameter
lea r8d, [r9 + 0x14]
mov rcx, r12
mov rdi, rax
call fcn.0040a130
mov r12, rax
mov rax, qword [rsp + 0x100]
test rax, rax
je 0x4043f1
mov rcx, rax
call fcn.00417310
test rax, rax
je 0x4043f1
mov rdx, qword [rsp + 0x100]
lea rcx, str._Extractor__Required_Java_version__s_n
call fcn.0040becc
mov rax, qword [rsp + 0xd0]
test rax, rax
je 0x404417
mov rcx, rax
call fcn.00417310
test rax, rax
je 0x404417
lea rcx, str._Extractor__Skipping_System_JRE_n
call fcn.0040becc
lea rdx, [0x0044ce0c]
mov rcx, r15
call fcn.004195e0
test eax, eax
jne 0x40443b
mov r15, qword [rsp + 0xc8]
lea rcx, str._Extractor__Will_use_Dynamic_Update_URL:__s_n
jmp 0x404442
lea rcx, str._Extractor__Will_use_Static_Update_URL:__s_n
mov rdx, r15
call fcn.0040becc
cmp byte [rsp + 0x84], 0
jne 0x404472
mov r8, qword [rsp + 0x1e40]
mov edx, dword [rsp + 0x1e38]
mov rcx, rbx
call fcn.00402e30
mov byte [rsp + 0x84], al
cmp byte [rsp + 0xa0], 0
jne 0x40449f
mov r8, qword [rsp + 0x1e40]
mov edx, dword [rsp + 0x1e38]
mov rcx, rdi
call fcn.00402e30
mov dil, al
mov dword [rsp + 0xa0], edi
jmp 0x4044a6
mov edi, dword [rsp + 0xa0]
test r13b, r13b
jne 0x4044c5
mov r8, qword [rsp + 0x1e40]
mov edx, dword [rsp + 0x1e38]
mov rcx, r12
call fcn.00402e30
mov r13b, al
movzx edx, byte [rsp + 0x84]
lea rcx, str._Extractor__Silent_install_is__d_n
call fcn.0040becc
lea rcx, str._Extractor__Repair_install_is__d_n
movzx edx, dil
call fcn.0040becc
lea rcx, str._Extractor__Reinstall_is__d_n
movzx edx, r13b
call fcn.0040becc
lea rcx, str.Extracting_tail
call fcn.0040c0d0
lea rcx, str._Extractor__Setting_up_static_properties_n
call fcn.0040becc
mov rdi, qword [rsp + 0xe0]
mov r8, qword [rsp + 0xe8]
lea rdx, str.update_url
mov rcx, rdi
call fcn.0040a060
lea rdx, str.install_type
mov r8, r14
mov rcx, rdi
call fcn.0040a060
mov r8, qword [rsp + 0xd8]
lea rdx, str.min_splash_ms
mov rcx, rdi
call fcn.0040a060
lea rdx, str.jwsig_public_key
mov r8, rbp
mov rcx, rdi
call fcn.0040a060
mov r8, qword [rsp + 0x200]
lea rdx, str.can_override_splash
mov rcx, rdi
call fcn.0040a060
mov r8, qword [rsp + 0x90]
lea rdx, str.app_name
mov rcx, rdi
call fcn.0040a060
mov r12, qword [rsp + 0x98]
lea rdx, str.wrapper_app_version
mov r8, r12
mov rcx, rdi
call fcn.0040a060
mov r8, qword [rsp + 0xf0]
lea rdx, str.wrapper_gu_version
mov rcx, rdi
call fcn.0040a060
lea rdx, str.silent_parameter
mov r8, rbx
mov rcx, rdi
call fcn.0040a060
mov r8, qword [rsp + 0x100]
lea rdx, str.java_version
mov rcx, rdi
call fcn.0040a060
mov r8, qword [rsp + 0xd0]
lea rdx, str.skip_system_jre
mov rcx, rdi
call fcn.0040a060
cmp byte [rsp + 0x84], 0
je 0x40462a
lea r8, str.true
lea rdx, str.show_no_ui
mov rcx, rdi
call fcn.0040a060
test rbp, rbp
je 0x4046d4
mov rcx, rbp
call fcn.00417310
mov rcx, rbp
test rax, rax
je 0x4046b8
call fcn.00417310
mov rbx, rax
shr rbx, 1
add rbx, 2
mov rcx, rbx
call fcn.00417100
mov r8, rbx
xor edx, edx
mov rcx, rax
mov rdi, rax
call fcn.004190e0
mov r8, rbp
mov edx, ebx
mov rcx, rdi
call fcn.0040b404
lea rcx, str._Extractor__Processed_public_key_of_length__d_n
mov edx, eax
mov ebx, eax
call fcn.0040becc
lea rcx, str._Extractor__Hex:__s_n
mov rdx, rbp
call fcn.0040becc
mov edx, ebx
mov rcx, rdi
call fcn.00401048
lea rcx, str._Extractor__Public_Key:__08X_n
mov rdx, rax
mov qword [0x00469040], rax
call fcn.0040becc
jmp 0x4046e0
call fcn.00417310
xor ebp, ebp
cmp rax, rbp
ja 0x4046e2
lea rcx, str._Extractor__Public_key_length__d__no_public_key__n
xor edx, edx
call fcn.0040becc
jmp 0x4046e2
lea rcx, str._Extractor__Public_key_empty__no_public_key__n
call fcn.0040becc
xor ebp, ebp
lea rdx, str.perm_all
mov rcx, r14
call fcn.004195e0
cmp eax, ebp
jne 0x40477d
lea rcx, str.Permanent_install_for_all_users_n
call fcn.0040becc
lea rcx, [rsp + 0x130]
mov dword [rsp + 0x130], 0x94
call qword [sym.imp.KERNEL32.dll_GetVersionExA]
cmp eax, ebp
je 0x40473a
cmp dword [rsp + 0x134], 5
jbe 0x40473a
lea rcx, str.PROGRAMDATA
call fcn.0041b630
jmp 0x4047a8
lea rcx, str.ALLUSERSPROFILE
call fcn.0041b630
mov ecx, 0x1388
mov rbx, rax
call fcn.00417100
mov rdx, rbx
mov rcx, rax
mov rdi, rax
mov byte [rax], bpl
call fcn.004173d0
lea rdx, str.Application_Data
mov rcx, rdi
call fcn.0040be2c
mov rcx, rdi
call fcn.0040bde4
jmp 0x4047ab
lea rdx, str.perm_user
mov rcx, r14
call fcn.004195e0
lea rcx, str.Permanent_install_for_current_user_n
cmp eax, ebp
je 0x40479e
lea rcx, str.Temporary_install_n
call fcn.0040becc
call fcn.0040bb34
mov rdi, rax
cmp rdi, rbp
jne 0x4047c7
lea rcx, str.ERROR:_Unable_to_get_shared_dir_
call fcn.0040becc
mov ecx, 1
call fcn.004187f0
int3
lea rcx, str._Extractor__Shared_dir_is__s_n
mov rdx, rdi
call fcn.0040becc
lea rcx, str._Extractor__Update_URL_is_currently__s_n
mov rdx, r15
call fcn.0040becc
mov rcx, r15
call fcn.00417310
cmp eax, ebp
jle 0x404805
cdqe
cmp byte [rax + r15 - 1], 0x2f
je 0x404805
mov byte [rax + r15], 0x2f
mov byte [rax + r15 + 1], bpl
lea rcx, str._Extractor__Update_URL_is_now__s_n
mov rdx, r15
call fcn.0040becc
mov rdx, rdi
mov rcx, rsi
mov byte [rsi], bpl
call fcn.004173d0
lea rdx, str.JWrapper_
mov rcx, rsi
call fcn.0040be2c
mov rdx, qword [rsp + 0x90]
mov rcx, rsi
call fcn.004173d0
lea rcx, str._Extractor__Master_folder_is__s_n
mov rdx, rsi
call fcn.0040becc
cmp r13b, bpl
jne 0x404863
cmp byte [rsp + 0xa0], bpl
je 0x404925
mov rcx, rsi
call fcn.0040b5c0
cmp eax, ebp
je 0x404925
cmp r13b, bpl
je 0x404891
lea rcx, str._Extractor__Performing_reinstall...
call fcn.0040becc
mov rcx, rsi
call fcn.0040b48c
jmp 0x404925
mov rcx, rsi
call fcn.004010b0
cmp rax, rbp
mov rdi, rax
je 0x404925
lea rcx, str._Extractor__Performing_repair...
call fcn.0040becc
jmp 0x40490d
mov rcx, qword [rbx]
call fcn.00417310
cmp rax, 2
jbe 0x40490d
mov rdx, qword [rbx]
lea rcx, str.JWrapper_
call fcn.0040c418
cmp al, bpl
je 0x40490d
mov rbx, qword [rbx]
lea rcx, [rsp + 0x250]
mov rdx, rsi
mov byte [rsp + 0x250], bpl
call fcn.004173d0
lea rcx, [rsp + 0x250]
mov rdx, rbx
call fcn.0040be2c
lea rcx, [rsp + 0x250]
call fcn.0040b48c
mov rcx, rdi
call fcn.004011f4
cmp rax, rbp
mov rbx, rax
jne 0x4048b3
mov rcx, rdi
call fcn.004011a4
lea rdx, str.perm_all
mov rcx, r14
call fcn.004195e0
lea rcx, [rsp + 0xa0]
mov edi, ebp
cmp eax, ebp
sete dil
call fcn.0041ba10
lea rcx, [rsp + 0xa0]
call fcn.0041b300
mov r13d, 0x400
lea rcx, [rsp + 0x250]
mov r8, r13
xor edx, edx
mov rbx, rax
call fcn.004190e0
lea r8, str._Y__m__d__H__M__S
lea rcx, [rsp + 0x250]
mov r9, rbx
mov rdx, r13
call fcn.0041aac0
lea rcx, [rsp + 0x208]
call fcn.0041b360
movzx r9d, word [rsp + 0x210]
cmp eax, ebp
je 0x4049a8
mov r9d, ebp
lea r8, [rsp + 0x250]
lea rdx, str._s__03d.log
lea rcx, [rsp + 0x250]
call fcn.004182a0
mov rcx, rsi
call fcn.0040bde4
mov rdx, rsi
mov ecx, edi
call fcn.004012d0
lea rcx, [rsp + 0x650]
mov rdx, rsi
mov byte [rsp + 0x650], bpl
call fcn.004173d0
lea rdx, str.logs
lea rcx, [rsp + 0x650]
call fcn.0040be2c
lea rdx, str.Wrapper_
lea rcx, [rsp + 0x650]
call fcn.0040be2c
lea rdx, [rsp + 0x250]
lea rcx, [rsp + 0x650]
call fcn.004173d0
lea rdx, [rsp + 0x650]
lea rcx, str._Extractor__Logging_to__s_n
call fcn.0040becc
lea r8, [0x0044c53c]
lea rdx, [rsp + 0x650]
lea rcx, [rsp + 0x208]
call fcn.00418ee0
lea rcx, str._Extractor__Opening_the_file_for_writing_returned__d_n
mov edx, eax
call fcn.0040becc
mov rbx, qword [rsp + 0x230]
mov r11, qword [rsp + 0x208]
mov rcx, rbx
mov rdx, rsi
mov qword [0x00469170], r11
mov byte [rbx], bpl
call fcn.004173d0
lea rdx, str.JWApps
mov rcx, rbx
call fcn.0040be2c
mov rdi, qword [rsp + 0x1e8]
mov rdx, rbx
mov rcx, rdi
mov byte [rdi], bpl
call fcn.004173d0
lea rdx, str.JreNameOverride
mov rcx, rdi
call fcn.0040be2c
lea rdx, [0x0044d5f0]
mov rcx, rdi
call fcn.00418ed0
cmp rax, rbp
mov rdi, rax
je 0x404b60
lea rcx, str._JREOverride__Processing_JRE_Override_file__JreNameOverride__n
call fcn.0040becc
lea rdx, str.JRE_Override_App_Name
mov r8d, 0x1f4
mov rcx, rdi
call fcn.0040a09c
cmp rax, rbp
mov rbx, rax
je 0x404b38
mov rcx, rax
call fcn.00417310
cmp rax, 1
jne 0x404b22
cmp byte [rbx], 0x2d
jne 0x404b22
lea rcx, str._JREOverride__Ignoring_JRE_name____keeping__s_n
jmp 0x404b67
mov rcx, rbx
call fcn.00417310
cmp rax, rbp
jne 0x404b38
lea rcx, str._JREOverride__Ignoring_empty_JRE_name__keeping__s_n
jmp 0x404b67
mov rbp, qword [rsp + 0x88]
mov rdx, rbx
mov rcx, rbp
mov byte [rbp], 0
call fcn.004173d0
mov rcx, rdi
call fcn.0041b7b0
lea rcx, str._JREOverride__JRE_name_overriden_to__s_n
jmp 0x404b6f
lea rcx, str._JREOverride__No_JRE_name_override__will_continue_to_use__s_n
mov rbp, qword [rsp + 0x88]
mov rdx, rbp
call fcn.0040becc
mov rbx, qword [rsp + 0xf0]
mov r13b, 1
mov rcx, rbx
call fcn.00417310
test rax, rax
jne 0x404ba0
lea rcx, str._Extractor__No_GenericUpdater_embedded__we_are_just_a_launcher_n
call fcn.0040becc
xor r13b, r13b
jmp 0x404baf
lea rcx, str._Extractor__GenericUpdater_version_is__s_n
mov rdx, rbx
call fcn.0040becc
mov rcx, r12
call fcn.00417310
test rax, rax
jne 0x404bca
lea rcx, str._Extractor__ONLINE_wrapper:_No_App_embedded__GU_will_download_and_run_n
call fcn.0040becc
jmp 0x404bd9
lea rcx, str._Extractor__OFFLINE_wrapper:_App_version_is__s_n
mov rdx, r12
call fcn.0040becc
lea rcx, str._Extractor__Checking_for_a_latest_valid_GU_n
call fcn.0040becc
lea rdx, str.JWrapper
mov rcx, rsi
call fcn.0040c244
mov rdx, rbp
mov rcx, rsi
mov r12, rax
call fcn.0040c244
test r12, r12
mov rbp, rax
je 0x404cce
test r13b, r13b
je 0x404cce
mov rdx, r12
mov rcx, rsi
call fcn.0040139c
test eax, eax
jne 0x404cce
mov ebx, 0x800
mov rcx, rbx
call fcn.00417100
mov rdx, rsi
mov rcx, rax
mov rdi, rax
mov byte [rax], 0
call fcn.004173d0
mov rdx, r12
mov rcx, rdi
call fcn.0040be2c
mov rcx, rbx
call fcn.00417100
mov rdx, rsi
mov rcx, rax
mov rbx, rax
mov byte [rax], 0
call fcn.004173d0
lea rdx, str.Damaged
mov rcx, rbx
call fcn.0040be2c
mov rcx, rbx
call fcn.0040b5c0
test eax, eax
jne 0x404c8f
mov rcx, rbx
call fcn.0040bde4
lea r8, str.Damaged
mov r9, r12
mov rdx, rsi
mov rcx, rbx
call fcn.0040be94
mov rdx, rbx
mov rcx, rdi
call fcn.00401530
lea rcx, str._Extractor__The_existing_JWrapper_install_is_broken._Instructing_the_wrapper_to_update._n
call fcn.0040becc
mov rcx, rdi
xor r12d, r12d
call fcn.004170c0
mov rcx, rbx
call fcn.004170c0
test rbp, rbp
je 0x404eb3
test r13b, r13b
je 0x404eb3
mov ecx, 0x800
call fcn.00417100
lea r9, [0x0044c47c]
mov r8, rbp
mov rcx, rax
mov rdx, rsi
mov rdi, rax
call fcn.0040be94
lea rdx, str.java.exe
mov rcx, rdi
call fcn.0040be2c
mov rcx, rdi
call fcn.0040b5c0
xor ebx, ebx
lea r9, [0x0044c47c]
test eax, eax
mov r8, rbp
mov rdx, rsi
mov rcx, rdi
setne bl
call fcn.0040be94
lea rdx, str.javaw.exe
mov rcx, rdi
call fcn.0040be2c
test ebx, ebx
je 0x404d5b
mov rcx, rdi
call fcn.0040b5c0
test eax, eax
je 0x404d5b
mov ebx, 1
jmp 0x404d5d
xor ebx, ebx
lea r9, [0x0044c354]
mov r8, rbp
mov rdx, rsi
mov rcx, rdi
call fcn.0040be94
lea rdx, str.rt.jar
mov rcx, rdi
call fcn.0040be2c
mov rcx, rdi
call fcn.0040b5c0
test eax, eax
jne 0x404dd2
lea r9, [0x0044c350]
mov r8, rbp
mov rdx, rsi
mov rcx, rdi
call fcn.0040be94
lea rdx, [0x0044c354]
mov rcx, rdi
call fcn.0040be2c
lea rdx, str.rt.jar
mov rcx, rdi
call fcn.0040be2c
test ebx, ebx
je 0x404dd0
mov rcx, rdi
call fcn.0040b5c0
test eax, eax
jne 0x404dd6
xor ebx, ebx
test ebx, ebx
je 0x404e1e
lea rcx, [rsp + 0xa50]
mov rdx, rsi
mov byte [rsp + 0xa50], 0
call fcn.004173d0
lea rcx, [rsp + 0xa50]
mov rdx, rbp
call fcn.0040be2c
lea rcx, [rsp + 0xa50]
call fcn.0040aee0
test rax, rax
je 0x404e1e
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
jmp 0x404eab
mov rdx, rsi
mov rcx, rdi
mov byte [rdi], 0
call fcn.004173d0
mov rdx, rbp
mov rcx, rdi
call fcn.0040be2c
mov ecx, 0x800
call fcn.00417100
mov rdx, rsi
mov rcx, rax
mov rbx, rax
mov byte [rax], 0
call fcn.004173d0
lea rdx, str.Damaged
mov rcx, rbx
call fcn.0040be2c
mov rcx, rbx
call fcn.0040b5c0
test eax, eax
jne 0x404e75
mov rcx, rbx
call fcn.0040bde4
lea r8, str.Damaged
mov r9, rbp
mov rdx, rsi
mov rcx, rbx
call fcn.0040be94
mov rdx, rbx
mov rcx, rdi
call fcn.00401530
lea rcx, str._Extractor__The_existing_JRE_is_broken._Instructing_the_wrapper_to_update._n
call fcn.0040becc
mov rcx, rbx
xor ebp, ebp
call fcn.004170c0
mov rcx, rdi
call fcn.004170c0
test r12, r12
je 0x405056
test rbp, rbp
je 0x405056
lea rcx, str._Extractor__Latest_GU_version_exists:__s_n
mov rdx, r12
call fcn.0040becc
lea rcx, str._Extractor__Existing_JRE_exists:__s_n
mov rdx, rbp
call fcn.0040becc
mov rcx, r12
call fcn.0040c4b0
mov rcx, qword [rsp + 0xf0]
mov ebx, eax
call fcn.00418d30
test r13b, r13b
je 0x404f0f
cmp eax, ebx
jle 0x404f0f
lea rcx, str._Extractor__Our_GU_version_is_newer_than_existing_latest_version_so_will_extract_and_run_n
jmp 0x40505d
lea rcx, str._Extractor__Latest_GUversion_is_newer_or_same_as_our_version_so_will_just_run_n
call fcn.0040becc
test r13b, r13b
je 0x404f84
mov rdi, qword [rsp + 0x98]
mov rcx, rdi
call fcn.00417310
test rax, rax
je 0x404f84
mov rbx, qword [rsp + 0x90]
mov rcx, rsi
mov rdx, rbx
call fcn.0040c244
test rax, rax
je 0x405048
mov rcx, rax
call fcn.0040c4b0
mov rcx, rdi
mov ebx, eax
call fcn.00418d30
cmp eax, ebx
jle 0x404f78
lea rcx, str._Extractor__Our_App_version_is_newer_than_existing_latest_version_so_will_extract_and_run_n
call fcn.0040becc
jmp 0x40506a
lea rcx, str._Extractor__Latest_App_version_is_newer_or_same_as_our_version_so_will_just_run_n
call fcn.0040becc
lea rcx, str._Extractor__Running_without_extraction_now_n
call fcn.0040becc
call fcn.00406d2c
mov rcx, qword [rsp + 0x118]
call fcn.00407d74
cmp byte [rsp + 0x1e58], 0
jne 0x405040
mov rax, qword [rsp + 0x110]
mov rcx, qword [rsp + 0x108]
mov r9, qword [rsp + 0x1e40]
mov r8d, dword [rsp + 0x1e38]
mov rdx, qword [rsp + 0xe0]
mov qword [rsp + 0x70], rcx
mov byte [rsp + 0x68], 0
mov qword [rsp + 0x60], rax
mov al, byte [rsp + 0x80]
mov qword [rsp + 0x58], r14
mov byte [rsp + 0x50], al
mov rax, qword [rsp + 0xd8]
mov qword [rsp + 0x48], rax
mov rax, qword [rsp + 0x88]
mov dword [rsp + 0x40], 0
mov qword [rsp + 0x38], rax
mov rax, qword [rsp + 0xc8]
mov rcx, rsi
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0xe8]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r12
call fcn.00401ce4
xor ecx, ecx
call fcn.004187f0
int3
lea rcx, str._Extractor__No_app_version_found_and_we_are_offline_so_will_extract_n
call fcn.0040becc
jmp 0x405072
lea rcx, str._Extractor__No_latest_GU_or_JRE_version_exists__will_check_tail_for_online_offline_info_n
call fcn.0040becc
mov rdi, qword [rsp + 0x98]
mov rbx, qword [rsp + 0x90]
test rbp, rbp
lea rcx, str._Extractor__Note:_No_latest_JRE_version_exists_n
je 0x405085
lea rcx, str._Extractor__Note:_Latest_JRE_version_does_exist_n
call fcn.0040becc
test r12, r12
lea rcx, str._Extractor__Note:_No_latest_GU_version_exists_n
je 0x40509d
lea rcx, str._Extractor__Note:_Latest_GU_version_does_exist_n
call fcn.0040becc
test r13b, r13b
jne 0x4050be
lea rcx, str._Extractor__Unable_to_run__we_are_just_a_launcher__n
call fcn.0040becc
mov ecx, 1
call fcn.004187f0
int3
mov rcx, rsi
call fcn.0040bde4
lea rdx, str.perm_all
mov rcx, r14
call fcn.004195e0
test eax, eax
jne 0x405132
lea rdx, [rsp + 0x1e8]
lea rcx, str.S_1_5_32_545
call sub.ADVAPI32.dll_ConvertStringSidToSidA
lea rcx, str._Utils__Converted_SID_n
test eax, eax
jne 0x4050ff
lea rcx, str._Utils__Unable_to_convert_SID_n
call fcn.0040becc
mov r8, qword [rsp + 0x1e8]
mov eax, 1
mov dword [rsp + 0x30], 3
mov dword [rsp + 0x28], eax
mov edx, eax
xor r9d, r9d
mov rcx, rsi
mov dword [rsp + 0x20], 0x1200a9
call fcn.0040b814
lea rdx, str.perm_all
mov rcx, r14
call fcn.004195e0
xor ecx, ecx
mov rdx, rsi
test eax, eax
sete cl
call fcn.004012d0
mov r13, qword [rsp + 0x1f0]
mov r9, qword [rsp + 0xf0]
lea r8, str.JWrapper
mov rcx, r13
mov rdx, rsi
call fcn.004019a0
mov rcx, qword [rsp + 0x128]
mov rdx, rsi
call fcn.00401a08
mov rcx, qword [rsp + 0x1e0]
mov r9, rdi
mov r8, rbx
mov rdx, rsi
call fcn.004019a0
mov rcx, qword [rsp + 0x1d8]
mov rdx, rsi
call fcn.00401a08
lea rcx, str._Extractor__GU_folder_is__s_n
mov rdx, r13
call fcn.0040becc
mov rbx, qword [rsp + 0x128]
lea rcx, str._Extractor__GU_temp_is__s_n
mov rdx, rbx
call fcn.0040becc
mov rcx, rbx
call fcn.0040bde4
test eax, eax
je 0x4051f1
lea rcx, str._Extractor__Unable_to_create_GU_Temp_folder___assuming_elevation_required_n
call fcn.0040becc
mov ecx, 1
call fcn.004187f0
int3
mov rcx, qword [rsp + 0x118]
mov rdx, rbx
call fcn.0040a31c
mov ecx, 0x7d0
call fcn.00417100
mov rdx, rbx
mov rcx, rax
mov rdi, rax
mov byte [rax], 0
call fcn.004173d0
lea rdx, str.nativesplash.png
mov rcx, rdi
call fcn.0040be2c
mov r11, rdi
movsx eax, byte [r11]
cmp eax, 0x2f
jne 0x40523b
mov byte [r11], 0x5c
add r11, 1
test eax, eax
jne 0x40522e
mov rax, qword [rsp + 0x200]
mov r13, qword [rsp + 0xa8]
test rax, rax
je 0x4052f4
lea rdx, [0x0044d9e0]
mov rcx, rax
call fcn.004195e0
test eax, eax
jne 0x4052f4
lea rcx, str._Extractor__Authorised_to_override_the_splash_image._n
call fcn.0040becc
xor edx, edx
lea rcx, str._Extractor__DynamicSplash_is__d__size_is__d_n
cmp qword [rsp + 0xb8], rdx
mov r8, r13
setne dl
call fcn.0040becc
cmp qword [rsp + 0xb8], 0
je 0x4052f4
test r13, r13
je 0x4052f4
lea rcx, str._Extractor__Overwriting_splash_image_at__s_n
mov rdx, rdi
call fcn.0040becc
lea rdx, [0x0044c8d0]
mov rcx, rdi
call fcn.00418ed0
mov rcx, qword [rsp + 0xb8]
mov r8, r13
mov r9, rax
mov edx, 1
mov rbx, rax
call fcn.0041ac60
mov rcx, rbx
call fcn.0041b7b0
mov rbx, qword [rsp + 0x128]
mov rcx, rdi
call fcn.004170c0
mov rdi, qword [rsp + 0x118]
mov rdx, rbx
mov rcx, rdi
call fcn.0040a31c
mov rdx, rbx
mov rcx, rdi
call fcn.0040a31c
mov rdx, rbx
mov rcx, rdi
call fcn.0040a31c
lea rcx, str._Extractor__Extracted_GU_and_GU_Version_n
call fcn.0040becc
mov r13, qword [rsp + 0x1f0]
lea rcx, str._Extractor__Renaming_GU_folder_to__s_n
mov rdx, r13
call fcn.0040becc
mov rdx, r13
mov rcx, rbx
call fcn.00401530
lea rdx, str.perm_all
mov rcx, r14
call fcn.004195e0
xor ecx, ecx
mov rdx, r13
test eax, eax
sete cl
call fcn.00401280
lea rcx, str._Extractor__Recreating_GU_location_n
call fcn.0040becc
mov rdx, r13
mov rcx, rbx
mov byte [rbx], 0
call fcn.004173d0
mov rax, qword [rsp + 0x120]
mov rcx, rax
mov rdx, r13
mov byte [rax], 0
call fcn.004173d0
mov rcx, qword [rsp + 0x120]
lea rdx, str.cacerts
call fcn.0040be2c
mov rdx, qword [rsp + 0x120]
lea rcx, str._Extractor__CACerts_override_path_is__s_n
call fcn.0040becc
mov rax, qword [rsp + 0x108]
mov rdx, rbx
mov rcx, rax
mov byte [rax], 0
call fcn.004173d0
mov rcx, qword [rsp + 0x108]
lea rdx, str.verpatch.exe
call fcn.0040be2c
mov r11, qword [rsp + 0x1f8]
mov rdx, r13
mov rcx, r11
mov byte [r11], 0
mov r13, r11
call fcn.004173d0
lea rdx, str.nativesplash.png
mov rcx, r13
call fcn.0040be2c
lea rcx, str._Extractor__Native_Splash_PNG_path_is__s_n
mov rdx, r13
call fcn.0040becc
lea rcx, str._Extractor__Configuring_splash_n
call fcn.0040becc
mov rcx, r13
call fcn.00406d7c
lea rcx, str._Extractor__Showing_splash_n
call fcn.0040becc
cmp byte [rsp + 0x84], 0
mov r13b, byte [rsp + 0x1e58]
jne 0x405467
test r13b, r13b
jne 0x405467
call fcn.00406e30
mov ecx, 0xffffffff
call fcn.00406f34
test rbp, rbp
jne 0x405b5b
lea rcx, str._Extractor__Setting_up_a_JRE__switched:_d__n
xor edx, edx
call fcn.0040becc
mov rcx, qword [rsp + 0xc0]
call fcn.00417310
test rax, rax
je 0x4055de
lea rcx, str.Extracting_Offline_JRE
call fcn.0040c098
lea rcx, str._Extractor__We_want_to_query_the_JRE_version_to_enable_proxy_detection._n
call fcn.0040becc
mov rbp, qword [rsp + 0x88]
mov rdx, r15
mov r8, rbp
mov rcx, rbx
call fcn.00402edc
mov r12, qword [rsp + 0xf8]
mov rdx, rsi
mov rcx, r12
call fcn.00401a08
mov rcx, r12
call fcn.0040bde4
mov r13, qword [rsp + 0x1d0]
mov r9, qword [rsp + 0xc0]
mov rcx, r13
mov r8, rbp
mov rdx, rsi
call fcn.004019a0
lea rcx, str._Extractor__Offline_installer___no_need_to_download_JRE__will_extract_n
call fcn.0040becc
lea rdx, str.perm_all
mov rcx, r14
call fcn.004195e0
mov rdx, r12
test eax, eax
sete cl
call fcn.004014c4
lea rcx, str._Extractor__UP200_path_is__s_n
mov rdx, rax
mov qword [0x00469048], rax
call fcn.0040becc
lea rcx, str._Extractor__Extracting_JRE_archive..._n
call fcn.0040becc
mov rdx, r12
mov rcx, rdi
call fcn.0040a31c
lea rcx, str._Extractor__Extracted_JRE__s_n
mov rdx, rbp
call fcn.0040becc
lea rcx, str._Extractor__Regenerating_jsa..._n
call fcn.0040becc
mov rcx, r12
call fcn.00401450
mov rbx, rax
call fcn.004086a4
mov rdx, rbx
mov rcx, rax
mov rdi, rax
call fcn.00408714
lea rdx, str._Xshare:dump
mov rcx, rdi
call fcn.004086dc
xor edx, edx
mov rcx, rdi
call fcn.0040874c
mov rcx, rdi
call fcn.004170c0
lea rdx, str.perm_all
mov rcx, r14
call fcn.004195e0
xor ecx, ecx
mov rdx, r12
test eax, eax
sete cl
call fcn.00401280
lea rcx, str.Extracting_Offline_JRE
jmp 0x405af1
lea rcx, str.Setting_up_online_JRE
call fcn.0040c098
mov rax, qword [rsp + 0xd0]
mov byte [rsp + 0x130], 0
test rax, rax
je 0x40561d
mov rcx, rax
call fcn.00417310
test rax, rax
je 0x40561d
lea rcx, str._Extractor__Online_installer___no_stored_JRE._Skipping_system_JRE._n
call fcn.0040becc
jmp 0x4056be
lea rcx, str._Extractor__Online_installer___no_stored_JRE__will_check_for_compatible_system_JRE_n
call fcn.0040becc
lea rdx, str.perm_all
mov rcx, r14
call fcn.004195e0
mov r8, qword [rsp + 0x100]
mov dl, byte [rsp + 0xb0]
test eax, eax
lea rcx, [rsp + 0x130]
mov r9, rsi
sete al
mov byte [rsp + 0x60], al
mov rax, qword [rsp + 0x110]
mov qword [rsp + 0x58], rax
mov rax, qword [rsp + 0xc8]
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0xe8]
mov qword [rsp + 0x48], rax
mov rax, qword [rsp + 0x1e40]
mov qword [rsp + 0x40], rax
mov eax, dword [rsp + 0x1e38]
mov dword [rsp + 0x38], eax
mov rax, qword [rsp + 0xe0]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0xf8]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r12
call fcn.004031ac
lea rcx, [rsp + 0x130]
call fcn.00417310
test rax, rax
je 0x4056ff
lea rcx, str._Extractor__We_are_copying_the_JRE._We_want_to_query_the_JRE_version_to_enable_proxy_detection._n
call fcn.0040becc
mov rbp, qword [rsp + 0x88]
mov rdx, r15
mov r8, rbp
mov rcx, rbx
call fcn.00402edc
mov r12, qword [rsp + 0xf8]
jmp 0x405a8f
lea rcx, str._JREDownload__Failed_to_pick_up_any_existing_system_JRE__will_download_n
call fcn.0040becc
call fcn.00402e84
mov r12, qword [rsp + 0x228]
mov rdx, qword [rsp + 0x128]
mov rcx, r12
mov rbx, rax
mov byte [r12], 0
call fcn.004173d0
lea rdx, str.JWrapper_
mov rcx, r12
call fcn.0040be2c
mov rbp, qword [rsp + 0x88]
mov rcx, r12
mov rdx, rbp
call fcn.004173d0
lea rdx, str._version.txt
mov rcx, r12
call fcn.004173d0
mov ecx, 0x1388
call fcn.00417100
mov rdx, r15
mov rcx, rax
mov rdi, rax
mov byte [rax], 0
call fcn.004173d0
lea rdx, str.JWrapper_
mov rcx, rdi
call fcn.004173d0
mov rdx, rbp
mov rcx, rdi
call fcn.004173d0
lea rdx, str._version.txt
mov rcx, rdi
call fcn.004173d0
lea rdx, str._time
mov rcx, rdi
call fcn.004173d0
mov rdx, rbx
mov rcx, rdi
call fcn.004173d0
mov rcx, rbx
call fcn.004170c0
mov ebx, dword [rsp + 0x84]
test bl, bl
jne 0x4057dc
test r13b, r13b
jne 0x4057dc
call fcn.00406e30
lea rcx, str._JREDownload__Fetching_JRE_Version_from__s_n
mov rdx, rdi
call fcn.0040becc
lea rcx, str._JREDownload__Saving_into__s_n
mov rdx, r12
call fcn.0040becc
mov rdx, r12
mov rcx, rdi
call fcn.00409b90
test eax, eax
je 0x405b36
mov ecx, 0xffffffff
call fcn.00406f34
lea rcx, str._JREDownload__JRE_version_downloaded_OK___s__n
mov rdx, r12
call fcn.0040becc
lea rdx, [0x0044d5f0]
mov rcx, r12
call fcn.00418ed0
test rax, rax
mov rbp, rax
jne 0x405850
call fcn.004175b0
lea rcx, str._JREDownload___Unable_to_open_version_file____d__n
mov edx, dword [rax]
call fcn.0040becc
lea rcx, str._JREDownload__Extracting_version:
xor r13d, r13d
call fcn.0040becc
mov rcx, rbp
call fcn.0041b860
xor r12d, r12d
jmp 0x4058aa
lea rcx, [0x0044f4a4]
mov edx, ebx
call fcn.0040becc
cmp ebx, 0xd
je 0x4058ca
cmp ebx, 0xa
je 0x4058ca
cmp ebx, 0x20
je 0x4058ca
cmp r12, 0x32
mov byte [rsp + r12 + 0x130], bl
jge 0x4058b3
mov eax, 1
mov rcx, rbp
add r13d, eax
add r12, rax
call fcn.0041b860
cmp eax, 0xffffffff
mov ebx, eax
jne 0x40586c
jmp 0x4058d6
lea rcx, str._n_JREDownload__Version_invalid__too_long__n
call fcn.0040becc
mov ecx, 1
call fcn.004187f0
int3
lea rcx, str._n_JREDownload__Spaces_in_version_file__assuming_EOF_n
call fcn.0040becc
lea rcx, [0x0044e010]
call fcn.0040becc
test rbp, rbp
je 0x4058ef
mov rcx, rbp
call fcn.0041b7b0
movsxd rax, r13d
lea rdx, [rsp + 0x130]
lea rcx, str._JREDownload__JRE_Version_is__s_n
mov byte [rsp + rax + 0x130], 0
call fcn.0040becc
mov rcx, rdi
call fcn.004170c0
mov r12, qword [rsp + 0xf8]
mov rdx, rsi
mov rcx, r12
call fcn.00401a08
mov rcx, r12
call fcn.0040bde4
lea rdx, str.perm_all
mov rcx, r14
call fcn.004195e0
xor ecx, ecx
mov rdx, r12
test eax, eax
sete cl
call fcn.00401280
mov ecx, 0x1388
call fcn.00417100
mov rdx, r15
mov rcx, rax
mov rbp, rax
mov byte [rax], 0
call fcn.004173d0
lea rdx, str.JWrapper_
mov rcx, rbp
call fcn.004173d0
mov rdx, qword [rsp + 0x88]
mov rcx, rbp
call fcn.004173d0
lea rdx, [0x0044cb28]
mov rcx, rbp
call fcn.004173d0
lea rdx, [rsp + 0x130]
mov rcx, rbp
call fcn.004173d0
lea rdx, str._archive.p2.l2
mov rcx, rbp
call fcn.004173d0
lea rdx, str.perm_all
mov rcx, r14
call fcn.004195e0
mov rdx, r12
test eax, eax
sete cl
call fcn.004014c4
cmp byte [rsp + 0x84], 0
mov qword [0x00469048], rax
jne 0x4059f3
cmp byte [rsp + 0x1e58], 0
jne 0x4059f3
call fcn.00406e30
lea rcx, str._JREDownload__Extracting_JRE_archive_to__s_n
mov rdx, r12
call fcn.0040becc
mov rdx, r12
mov rcx, rbp
call fcn.00409cf8
test eax, eax
jne 0x405a28
lea rcx, str._JREDownload__Failed_to_download_and_extract_JRE_archive._n
call fcn.0040becc
mov ecx, 1
call fcn.004187f0
int3
lea rcx, str._JREDownload__Regenerating_jsa..._n
call fcn.0040becc
mov rcx, r12
call fcn.00401450
mov rbx, rax
call fcn.004086a4
mov rdx, rbx
mov rcx, rax
mov rdi, rax
call fcn.00408714
lea rdx, str._Xshare:dump
mov rcx, rdi
call fcn.004086dc
xor edx, edx
mov rcx, rdi
call fcn.0040874c
mov rcx, rdi
call fcn.004170c0
lea rcx, str._JREDownload__Downloaded_JRE_is_now_ready._n
call fcn.0040becc
mov rcx, rbp
call fcn.004170c0
mov rbp, qword [rsp + 0x88]
lea rcx, [rsp + 0x130]
call fcn.00417310
test rax, rax
jne 0x405ab8
lea rcx, str._JREDownload__Failed_to_detect_or_download_a_JRE__no_jre_version__n
call fcn.0040bf98
mov ecx, 1
call fcn.004187f0
int3
lea rdx, [rsp + 0x130]
lea rcx, str._JREDownload__Finalising_setup_of_new_JRE__s_n
call fcn.0040becc
mov r13, qword [rsp + 0x1d0]
lea r9, [rsp + 0x130]
mov rcx, r13
mov r8, rbp
mov rdx, rsi
call fcn.004019a0
lea rcx, str.Setting_up_online_JRE
call fcn.0040c0d0
mov rdx, r13
mov rcx, r12
call fcn.00401530
lea rcx, str._Extractor__Renamed_JRE_folder_to__s_n
mov rdx, r13
call fcn.0040becc
lea rcx, str._Extractor__JRE_setup._Overriding_cacerts._n
call fcn.0040becc
mov rcx, qword [rsp + 0x120]
mov rdx, r13
call fcn.004034e4
mov rdi, qword [rsp + 0x118]
jmp 0x405b8d
test bl, bl
jne 0x405b44
test r13b, r13b
jne 0x405b44
call fcn.00406d2c
lea rcx, str._JREDownload__Failed_to_download_JRE_version_file_n
call fcn.0040bf98
mov ecx, 1
call fcn.004187f0
int3
mov r13, qword [rsp + 0x1d0]
mov rdx, rsi
mov rcx, r13
mov byte [r13], 0
call fcn.004173d0
mov rdx, rbp
mov rcx, r13
call fcn.0040be2c
lea rcx, str._Extractor__Using_existing_JRE_of__s_n
mov rdx, r13
call fcn.0040becc
mov ecx, 0x1388
call fcn.00417100
mov rdx, qword [rsp + 0x220]
mov rcx, rax
mov rbx, rax
mov byte [rax], 0
call fcn.004173d0
lea rdx, str.DetectedProxy
mov rcx, rbx
call fcn.0040be2c
lea rcx, str._Extractor__Saving_proxy_configuration_n
call fcn.0040becc
mov rcx, rbx
call fcn.004079dc
mov rcx, rbx
call fcn.004170c0
lea rdx, str.perm_all
mov rcx, r14
call fcn.004195e0
mov rdx, r13
test eax, eax
sete cl
call fcn.004014c4
lea rcx, str._Extractor__UP200_path_is__s_n
mov rdx, rax
mov qword [0x00469048], rax
call fcn.0040becc
mov rbx, qword [rsp + 0x98]
mov rcx, rbx
call fcn.00417310
test rax, rax
je 0x405cb0
lea rcx, str._Extractor__Offline_installer___app_to_extract._n
call fcn.0040becc
mov r12, qword [rsp + 0x1e0]
lea rcx, str._Extractor__APP_folder_is__s_n
mov rdx, r12
call fcn.0040becc
mov rbp, qword [rsp + 0x1d8]
lea rcx, str._Extractor__APP_temp_is__s_n
mov rdx, rbp
call fcn.0040becc
mov rcx, rbp
call fcn.0040bde4
test eax, eax
je 0x405c80
lea rcx, str.Unable_to_create_App_Temp_folder_n
call fcn.0040bf98
mov ecx, 1
call fcn.004187f0
int3
lea rcx, str._Extractor__Extracting_App..._n
call fcn.0040becc
mov rdx, rbp
mov rcx, rdi
call fcn.0040a31c
mov rdx, rbp
mov rcx, rdi
call fcn.0040a31c
lea rcx, str._Extractor__Setting_permissions..._n
call fcn.0040becc
jmp 0x405ccc
lea rcx, str._Extractor__Online_installer___no_app_to_extract_n
call fcn.0040becc
mov rbp, qword [rsp + 0x1d8]
mov r12, qword [rsp + 0x1e0]
mov rcx, rbx
call fcn.00417310
test rax, rax
je 0x405cf3
mov rdx, r12
mov rcx, rbp
call fcn.00401530
lea rcx, str._Extractor__Renaming_App_folder_to__s_n
mov rdx, r12
call fcn.0040becc
lea rdx, str.JWrapper
mov rcx, rsi
call fcn.0040c244
test rax, rax
mov rbx, rax
jne 0x405d1f
lea rcx, str.No_latest_App_version_even_after_download__n
call fcn.0040bf98
lea ecx, [rbx + 1]
call fcn.004187f0
int3
call fcn.00406d2c
lea rcx, str._Extractor__Will_now_run_latest_GU__s_n
mov rdx, rbx
call fcn.0040becc
mov rcx, rdi
call fcn.00407d74
cmp byte [rsp + 0x1e58], 0
jne 0x405dd9
mov rax, qword [rsp + 0x108]
mov r9, qword [rsp + 0x1e40]
mov r8d, dword [rsp + 0x1e38]
mov rdx, qword [rsp + 0xe0]
mov qword [rsp + 0x70], rax
mov rax, qword [rsp + 0x110]
mov byte [rsp + 0x68], 0
mov qword [rsp + 0x60], rax
mov al, byte [rsp + 0x80]
mov qword [rsp + 0x58], r14
mov byte [rsp + 0x50], al
mov rax, qword [rsp + 0xd8]
mov qword [rsp + 0x48], rax
mov rax, qword [rsp + 0x88]
mov dword [rsp + 0x40], 0
mov qword [rsp + 0x38], rax
mov rax, qword [rsp + 0xc8]
mov rcx, rsi
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0xe8]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rbx
call fcn.00401ce4
xor ecx, ecx
call fcn.004187f0
int3