Function at 0x40c63c
Capabilities:
Accept command line arguments
Terminate process

Disassembly:
push rbx
push rsi
push rdi
push r12
sub rsp, 0xf8
mov rax, qword [0x00413830]
mov qword [rsp + 0xe0], rax
mov esi, r9d
mov rbx, r8
mov rdi, rcx
call qword [sym.imp.COMCTL32.dll_InitCommonControls]
test rbx, rbx
je 0x40c696
mov rcx, rbx
call sub.msvcrt.dll_strlen
test rax, rax
je 0x40c696
lea rdx, str.__i4j_reboot
mov rcx, rbx
call sub.msvcrt.dll_strcmp
test eax, eax
jne 0x40c696
call fcn.0040bef8
jmp 0x40c992
lea rcx, str.__i4j_lang_restart
call sub.msvcrt.dll_strlen
lea rdx, str.__i4j_lang_restart
mov rcx, rbx
mov r8, rax
call qword [sym.imp.msvcrt.dll_strncmp]
movzx ecx, byte [0x0041fa09]
mov r12d, 1
test eax, eax
lea r8d, [r12 + 0xe]
lea rdx, str._q_i4j_internal
cmove ecx, r12d
mov byte [0x0041fa09], cl
mov rcx, rbx
call qword [sym.imp.msvcrt.dll_strncmp]
test eax, eax
jne 0x40c6ec
call fcn.00404394
mov qword [rsp + 0x28], 0
mov qword [rsp + 0x30], 0
mov qword [rsp + 0x38], 0
call qword [sym.imp.KERNEL32.dll_GetCommandLineW]
lea rdx, [rsp + 0x20]
mov rcx, rax
call fcn.0040c384
lea rdx, [rsp + 0x20]
mov rcx, rdi
call fcn.0040bf94
mov ecx, 0x9a
call fcn.00403e8c
test eax, eax
jne 0x40c747
mov ecx, 0x9c
call fcn.00403e8c
test eax, eax
je 0x40c826
xor edi, edi
xor ebx, ebx
mov rax, qword [rsp + 0x28]
test rax, rax
jne 0x40c759
xor ecx, ecx
jmp 0x40c765
mov rcx, qword [rsp + 0x30]
sub rcx, rax
sar rcx, 3
movsxd rax, edi
cmp rax, rcx
jae 0x40c826
mov ecx, 0x9a
call fcn.00403e8c
test eax, eax
je 0x40c7a0
mov rcx, qword [rsp + 0x28]
lea rdx, [0x00410894]
mov rcx, qword [rbx + rcx]
call qword [sym.imp.msvcrt.dll_wcscmp]
test eax, eax
jne 0x40c7a0
call fcn.00404394
jmp 0x40c7e9
mov rcx, qword [rsp + 0x28]
lea rdx, str._console
mov rcx, qword [rbx + rcx]
call qword [sym.imp.msvcrt.dll_wcscmp]
test eax, eax
jne 0x40c7c1
call fcn.0040bc34
jmp 0x40c7e9
mov ecx, 0x9a
call fcn.00403e8c
test eax, eax
je 0x40c7e9
mov rcx, qword [rsp + 0x28]
lea rdx, [0x00410874]
mov rcx, qword [rbx + rcx]
call qword [sym.imp.msvcrt.dll_wcscmp]
test eax, eax
je 0x40c7f5
add edi, r12d
add rbx, 8
jmp 0x40c74b
call fcn.00404394
call fcn.0040bc34
test al, al
jne 0x40c826
lea r8, str.install4j
lea rdx, str.Error:_Could_not_allocate_console.
xor r9d, r9d
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxA]
mov ecx, r12d
call qword [sym.imp.msvcrt.dll_exit]
int3
cmp byte [0x0041fa09], 0
jne 0x40c83a
mov dl, r12b
mov cl, r12b
call fcn.0040aaec
mov ecx, 0x6c
call fcn.00403e8c
mov edi, 0x278b
test eax, eax
je 0x40c864
mov ecx, edi
call fcn.00403e8c
test eax, eax
jne 0x40c864
mov ecx, esi
call fcn.0040b080
jmp 0x40c90e
call fcn.0040a56c
test al, al
jne 0x40c90e
lea rcx, [rsp + 0x40]
mov dword [rsp + 0x40], 0x94
call qword [sym.imp.KERNEL32.dll_GetVersionExA]
test eax, eax
je 0x40c89f
cmp dword [rsp + 0x50], 2
jne 0x40c89f
cmp dword [rsp + 0x44], 4
jne 0x40c89f
mov byte [0x0041fa08], r12b
jmp 0x40c90e
cmp byte [0x0041fa09], 0
jne 0x40c90e
mov rcx, qword [0x0041f9f8]
call sub.msvcrt.dll_strlen
lea rcx, str.This_executable_was_created_with_an_evaluation_version_of
mov rbx, rax
call sub.msvcrt.dll_strlen
lea rcx, [rbx + rax + 1]
call sub.msvcrt.dll_void____ptr64___cdecl_operator_new_unsigned_long_long_unsigned___int64__
lea rdx, str.This_executable_was_created_with_an_evaluation_version_of
mov rcx, rax
mov rbx, rax
call sub.msvcrt.dll_strcpy
mov rdx, qword [0x0041f9f8]
mov rcx, rbx
call sub.msvcrt.dll_strcat
mov r8, qword [0x0041f9f8]
mov r9d, 0x40
mov rdx, rbx
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxA]
mov rcx, rbx
call fcn.0040cec0
mov cl, r12b
call fcn.0040415c
test eax, eax
je 0x40c92b
lea rdx, [0x00410848]
mov ecx, 0x3f1
call fcn.0040457c
call fcn.0040bd3c
xor r8d, r8d
xor edx, edx
mov cl, r12b
call fcn.0040b8e8
test al, al
jne 0x40c94b
mov ecx, 0x53
call fcn.00404594
mov ecx, 0x6c
call fcn.00403e8c
test eax, eax
je 0x40c96b
mov ecx, edi
call fcn.00403e8c
test eax, eax
je 0x40c96b
mov ecx, esi
call fcn.0040b080
lea rcx, [rsp + 0x20]
mov dl, r12b
call fcn.00407710
test al, al
jne 0x40c988
xor edx, edx
mov ecx, 0x3ed
call fcn.0040457c
mov rcx, qword [rsp + 0x28]
call fcn.0040cec0
xor eax, eax
mov rcx, qword [rsp + 0xe0]
call fcn.0040d230
add rsp, 0xf8
pop r12
pop rdi
pop rsi
pop rbx
ret