Function at 0x140004870
Capabilities:
Accept command line arguments
Create process on windows

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x138]
sub rsp, 0x210
mov rax, qword [0x1400230c0]
xor rax, rsp
mov qword [rbp + 0x100], rax
mov rbx, rcx
call fcn.140001f04
mov esi, 0x105
lea rdx, [rbp - 0x10]
xor ecx, ecx
mov r8d, esi
mov rdi, rax
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
test eax, eax
je 0x140004ce7
cmp eax, 0x104
jg 0x140004ce7
lea rdx, [rbp - 0x10]
lea rcx, str.ExecJRE:_old:__s_n
call fcn.14000408c
lea rcx, str.ExecJRE:_new:__s_n
mov rdx, rbx
call fcn.14000408c
mov rcx, rbx
call fcn.14000a160
lea rdx, [rbp - 0x10]
mov rcx, rbx
mov r8, rax
call fcn.14001971c
test eax, eax
je 0x140004d01
lea r8, str._s_bin_s.exe
lea rcx, [rbp - 0x10]
mov r9, rbx
mov edx, esi
mov qword [rsp + 0x20], rdi
call fcn.140004318
call qword [sym.imp.KERNEL32.dll_GetCommandLineA]
mov rcx, rax
call fcn.140004058
lea rcx, [rsp + 0x50]
mov r15, rax
mov qword [rsp + 0x50], rax
call fcn.1400047e0
mov rsi, qword [rsp + 0x50]
mov rcx, rsi
call fcn.14000a160
lea rcx, [rbp - 0x10]
mov rbx, rax
call fcn.14000a160
lea rcx, [rbx + rax + 4]
call fcn.140004000
lea rcx, [rbp - 0x10]
mov edx, 0x20
mov rbx, rax
call fcn.14000c20c
test rax, rax
jne 0x1400049a9
lea edx, [rax + 9]
lea rcx, [rbp - 0x10]
call fcn.14000c20c
test rax, rax
jne 0x1400049a9
lea rdx, [rbp - 0x10]
mov rcx, rbx
call fcn.14000a910
jmp 0x1400049d3
lea rdx, [0x14001b59c]
mov rcx, rbx
call fcn.14000a910
lea rdx, [rbp - 0x10]
mov rcx, rax
call fcn.14000a870
lea rdx, [0x14001b59c]
mov rcx, rax
call fcn.14000a870
cmp byte [rsi], 0
mov r13, rax
mov edi, 1
je 0x140004b9d
lea rcx, [rsp + 0x50]
call fcn.1400047e0
mov r14, rax
cmp byte [rax], 0
je 0x140004b4f
mov rcx, rax
mov rbx, rax
call fcn.14000a160
lea rcx, [rdi + rax]
call fcn.140004000
cmp byte [rbx], 0
mov r12, rax
mov rsi, rax
je 0x140004a70
mov al, byte [rbx]
cmp al, 0x22
je 0x140004a68
cmp al, 0x5c
jne 0x140004a63
lea rdx, [0x14001b4f4]
mov rcx, rbx
call fcn.14000b050
lea r11, [rbx + rax]
cmp byte [r11], 0x22
jne 0x140004a5c
mov byte [rsi], 0x5c
add rbx, 2
add rsi, rdi
cmp byte [rbx], 0x5c
jne 0x140004a6b
cmp rbx, r11
jb 0x140004a3c
jmp 0x140004a6b
mov al, byte [rbx]
mov byte [rsi], al
add rsi, rdi
add rbx, rdi
cmp rbx, r11
jb 0x140004a52
jmp 0x140004a6b
mov byte [rsi], al
add rsi, rdi
add rbx, rdi
cmp byte [rbx], 0
jne 0x140004a19
mov byte [rsi], 0
cmp byte [r12], 0x2d
jne 0x140004b5c
lea rdx, str._classpath
mov rcx, r12
call fcn.14000aa10
test eax, eax
je 0x140004afb
lea rdx, [0x14001ac8c]
mov rcx, r12
call fcn.14000aa10
test eax, eax
je 0x140004afb
lea rdx, str._version:
mov r8d, 9
mov rcx, r12
call fcn.14000b730
test eax, eax
je 0x140004b47
lea rdx, str._jre_restrict_search
mov rcx, r12
call fcn.14000aa10
test eax, eax
je 0x140004b47
lea rdx, str._no_jre_restrict_search
mov rcx, r12
call fcn.14000aa10
test eax, eax
je 0x140004b47
lea rdx, [0x14001a724]
mov rcx, r13
call fcn.14000a870
mov rdx, r14
jmp 0x140004b3c
lea rdx, [0x14001a724]
mov rcx, r13
call fcn.14000a870
mov rdx, r14
mov rcx, rax
call fcn.14000a870
lea rcx, [rsp + 0x50]
mov r13, rax
call fcn.1400047e0
cmp byte [rax], 0
mov rbx, rax
je 0x140004b47
lea rdx, [0x14001a724]
mov rcx, r13
call fcn.14000a870
mov rdx, rbx
mov rcx, rax
call fcn.14000a870
mov r13, rax
mov rcx, r12
call fcn.140004084
mov rax, qword [rsp + 0x50]
cmp byte [rax], 0
jmp 0x1400049de
lea rdx, [0x14001a724]
mov rcx, r13
call fcn.14000a870
mov rdx, r14
mov rcx, rax
call fcn.14000a870
lea rdx, [0x14001a724]
mov rcx, rax
call fcn.14000a870
mov rdx, qword [rsp + 0x50]
mov rcx, rax
call fcn.14000a870
mov rcx, r12
mov r13, rax
call fcn.140004084
mov rcx, r15
call fcn.140004084
call fcn.1400040f0
test al, al
je 0x140004bf4
mov rcx, r13
call fcn.140004058
lea rcx, [rsp + 0x50]
mov rbx, rax
mov qword [rsp + 0x50], rax
call fcn.1400047e0
lea rdx, [rbp - 0x10]
lea rcx, str.ReExec_Command:__s___s__n
mov r8, rax
call fcn.140009dc4
mov rdx, qword [rsp + 0x50]
lea rcx, str.ReExec_Args:__s_n
call fcn.140009dc4
mov rcx, rbx
call fcn.140004084
call fcn.14000ad58
lea rcx, [rax + 0x30]
call fcn.14000c1bc
call fcn.14000ad58
lea rcx, [rax + 0x60]
call fcn.14000c1bc
mov ebx, 0x68
lea rcx, [rbp - 0x80]
mov r8d, ebx
xor edx, edx
call fcn.14000a6f0
lea r8d, [rbx - 0x50]
lea rcx, [rsp + 0x60]
xor edx, edx
mov dword [rbp - 0x80], ebx
call fcn.14000a6f0
lea r11, [rsp + 0x60]
lea rax, [rbp - 0x80]
mov qword [rsp + 0x48], r11
mov qword [rsp + 0x40], rax
and qword [rsp + 0x38], 0
and qword [rsp + 0x30], 0
and dword [rsp + 0x28], 0
lea rcx, [rbp - 0x10]
xor r9d, r9d
xor r8d, r8d
mov rdx, r13
mov dword [rsp + 0x20], edi
call qword [sym.imp.KERNEL32.dll_CreateProcessA]
test eax, eax
jne 0x140004c8d
lea rdx, [rbp - 0x10]
lea rcx, str.Error:_CreateProcess__s__...__failed:
call fcn.14000441c
mov ecx, edi
call fcn.140009d64
int3
mov rcx, qword [rsp + 0x60]
or ebx, 0xffffffff
mov edx, ebx
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
cmp eax, ebx
je 0x140004cb7
mov rcx, qword [rsp + 0x60]
lea rdx, [rsp + 0x58]
call qword [sym.imp.KERNEL32.dll_GetExitCodeProcess]
test eax, eax
jne 0x140004cc7
jmp 0x140004cc3
lea rcx, str.Error:_WaitForSingleObject___failed.
call fcn.140004370
mov dword [rsp + 0x58], edi
mov rcx, qword [rsp + 0x68]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, qword [rsp + 0x60]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov ecx, dword [rsp + 0x58]
call fcn.140009d64
int3
lea rcx, str.Error:_Unable_to_resolve__s
mov rdx, rdi
call fcn.14000441c
mov ecx, 1
call fcn.140009d64
int3
mov rcx, qword [rbp + 0x100]
xor rcx, rsp
call fcn.14000a9e0
lea r11, [rsp + 0x210]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret