Function at 0x14003c340
Capabilities:
Create process on windows

Disassembly:
mov qword [rsp + 8], rbx
mov byte [rsp + 0x20], r9b
mov qword [rsp + 0x10], rdx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1d0]
sub rsp, 0x2d0
mov rdi, rcx
xor r15d, r15d
mov dword [rsp + 0x40], 1
lea rdx, str.RunProgram
lea rcx, [rsp + 0x48]
call fcn.140038f90
nop
mov byte [rsp + 0x50], 1
lea rax, vtable.JRTimer.0
mov qword [rsp + 0x58], rax
xor eax, eax
mov qword [rsp + 0x60], rax
lea rcx, [rsp + 0x58]
call fcn.14003eab0
mov dword [rsp + 0x68], 0x8a33f231
cmp byte [rsp + 0x50], r15b
je 0x14003c3f8
mov rcx, qword [0x1401f8178]
test rcx, rcx
je 0x14003c3f8
mov rax, qword [rcx]
xor edx, edx
call qword [rax + 0x50]
test rax, rax
je 0x14003c3f8
mov r10, qword [rax]
mov dword [rsp + 0x28], r15d
mov qword [rsp + 0x20], r15
lea r9, str.Start
mov r8, qword [rsp + 0x48]
mov edx, dword [rsp + 0x40]
mov rcx, rax
call qword [r10 + 0x10]
nop
cmp dword [0x1401eb6c0], 0xb23a8c33
je 0x14003c433
mov ecx, 0x6c0
call fcn.1400f2ce0
mov qword [rbp + 0x218], rax
test rax, rax
je 0x14003c427
mov rcx, rax
call fcn.1400302c0
mov rcx, rax
jmp 0x14003c42a
mov rcx, r15
mov qword [0x1401f7b90], rcx
jmp 0x14003c43a
mov rcx, qword [0x1401f7b90]
mov rax, qword [rcx]
call qword [rax + 0x30]
mov rbx, rax
mov qword [rbp + 0x218], rax
xor r14b, r14b
mov rax, qword [rdi]
mov rsi, 0xffffffffffffffff
cmp dword [rax - 0x10], 0
je 0x14003c7c8
mov dword [rsp + 0x30], r15d
movaps xmm0, xmmword [rsp + 0x30]
movdqa xmmword [rbp + 0x100], xmm0
mov dword [rsp + 0x30], r15d
movaps xmm1, xmmword [rsp + 0x30]
movdqa xmmword [rbp + 0xf0], xmm1
mov dword [rbp - 0x70], 2
mov qword [rbp - 0x68], rbx
movaps xmm0, xmmword [rbp - 0x70]
movdqa xmmword [rbp + 0xe0], xmm0
mov dword [rbp - 0x60], 2
mov qword [rbp - 0x58], rax
movaps xmm0, xmmword [rbp - 0x60]
movdqa xmmword [rbp + 0xd0], xmm0
mov rcx, qword [0x1401f8178]
test rcx, rcx
je 0x14003c523
mov rax, qword [rcx]
xor edx, edx
call qword [rax + 0x50]
test rax, rax
je 0x14003c523
lea rcx, [rbp + 0xd0]
mov qword [rbp - 0x20], rcx
lea rcx, [rbp + 0xe0]
mov qword [rbp - 0x18], rcx
lea rcx, [rbp + 0xf0]
mov qword [rbp - 0x10], rcx
lea rcx, [rbp + 0x100]
mov qword [rbp - 8], rcx
mov r10, qword [rax]
mov dword [rsp + 0x28], 4
lea rcx, [rbp - 0x20]
mov qword [rsp + 0x20], rcx
lea r9, str.Filename:__s___Parameters:__s
mov r8, qword [rsp + 0x48]
mov edx, dword [rsp + 0x40]
mov rcx, rax
call qword [r10 + 0x10]
mov rax, qword [rdi]
mov ecx, dword [rax - 0x10]
inc ecx
movsxd rdx, ecx
mov eax, 2
mul rdx
cmovo rax, rsi
mov rcx, rax
call fcn.140002440
mov r13, rax
mov dword [rbp + 0x118], 3
mov qword [rbp + 0x110], rax
mov rdx, qword [rdi]
mov r8, rax
nop dword [rax]
movzx ecx, word [rdx]
mov word [r8], cx
lea rdx, [rdx + 2]
lea r8, [r8 + 2]
test cx, cx
jne 0x14003c560
movsxd rcx, dword [rbx - 0x10]
inc rcx
mov eax, 2
mul rcx
cmovo rax, rsi
mov rcx, rax
call fcn.140002440
mov r15, rax
mov dword [rbp + 0x128], 3
mov qword [rbp + 0x120], rax
mov rdx, rbx
mov r8, rax
sub r8, rbx
nop dword [rax]
movzx ecx, word [rdx]
mov word [r8 + rdx], cx
lea rdx, [rdx + 2]
test cx, cx
jne 0x14003c5b0
xorps xmm0, xmm0
movups xmmword [rbp + 0x60], xmm0
movups xmmword [rbp + 0x70], xmm0
movups xmmword [rbp + 0x80], xmm0
movups xmmword [rbp + 0x90], xmm0
movups xmmword [rbp + 0xa0], xmm0
movups xmmword [rbp + 0xb0], xmm0
movups xmmword [rbp + 0xc0], xmm0
mov dword [rbp + 0x60], 0x70
mov qword [rbp + 0x78], r13
mov qword [rbp + 0x80], r15
mov dword [rbp + 0x64], 0x800140
mov dword [rbp + 0x90], 1
mov rcx, qword [0x1401f8178]
test rcx, rcx
je 0x14003c650
mov rax, qword [rcx]
xor edx, edx
call qword [rax + 0x50]
test rax, rax
je 0x14003c650
mov r10, qword [rax]
xor ecx, ecx
mov dword [rsp + 0x28], ecx
mov qword [rsp + 0x20], rcx
lea r9, str.Performing_ShellExecute...
mov r8, qword [rsp + 0x48]
mov edx, dword [rsp + 0x40]
mov rcx, rax
call qword [r10 + 0x10]
lea rcx, [rbp + 0x60]
call qword [sym.imp.SHELL32.dll_ShellExecuteExW]
movsxd r12, dword [rbp + 0x98]
mov rdi, qword [rbp + 0xc8]
test r15, r15
je 0x14003c676
mov rcx, r15
call fcn.1400025e0
nop
test r13, r13
je 0x14003c683
mov rcx, r13
call fcn.1400025e0
cmp r12d, 0x20
jle 0x14003c707
test rdi, rdi
je 0x14003c6fc
mov rcx, qword [0x1401f8178]
test rcx, rcx
je 0x14003c6f3
mov rax, qword [rcx]
xor edx, edx
call qword [rax + 0x50]
test rax, rax
je 0x14003c6df
mov r10, qword [rax]
xor r15d, r15d
mov dword [rsp + 0x28], r15d
mov qword [rsp + 0x20], r15
lea r9, str.Running_process...
mov r8, qword [rsp + 0x48]
mov edx, dword [rsp + 0x40]
mov rcx, rax
call qword [r10 + 0x10]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov r14b, 1
jmp 0x14003c7c8
mov r14b, 1
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
xor r15d, r15d
jmp 0x14003c7c8
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov r14b, 1
xor r15d, r15d
jmp 0x14003c7c8
xor r15d, r15d
mov dword [rsp + 0x30], r15d
movaps xmm0, xmmword [rsp + 0x30]
movdqa xmmword [rbp + 0x160], xmm0
mov dword [rsp + 0x30], r15d
movaps xmm1, xmmword [rsp + 0x30]
movdqa xmmword [rbp + 0x150], xmm1
mov dword [rsp + 0x30], r15d
movaps xmm0, xmmword [rsp + 0x30]
movdqa xmmword [rbp + 0x140], xmm0
mov dword [rbp - 0x50], 4
mov qword [rbp - 0x48], r12
movaps xmm0, xmmword [rbp - 0x50]
movdqa xmmword [rbp + 0x130], xmm0
mov rcx, qword [0x1401f8178]
test rcx, rcx
je 0x14003c7c8
mov rax, qword [rcx]
xor edx, edx
call qword [rax + 0x50]
test rax, rax
je 0x14003c7c8
lea rcx, [rbp + 0x130]
mov qword [rbp], rcx
lea rcx, [rbp + 0x140]
mov qword [rbp + 8], rcx
lea rcx, [rbp + 0x150]
mov qword [rbp + 0x10], rcx
lea rcx, [rbp + 0x160]
mov qword [rbp + 0x18], rcx
mov r10, qword [rax]
mov dword [rsp + 0x28], 4
lea rcx, [rbp]
mov qword [rsp + 0x20], rcx
lea r9, str.Failed_to_start__error__d_
mov r8, qword [rsp + 0x48]
mov edx, dword [rsp + 0x40]
mov rcx, rax
call qword [r10 + 0x10]
nop
lea rdx, [rbx - 0x18]
mov eax, dword [rdx + 0x10]
cmp eax, 0x7ffffc17
je 0x14003c7f4
mov eax, dword [rdx + 0x10]
cmp eax, 0xffffffff
je 0x14003c7ea
mov eax, esi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x14003c7f4
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
cmp byte [rsp + 0x50], 0
je 0x14003c9d1
mov r9, qword [rsp + 0x58]
lea rax, [method.JRTimer.virtual_24]
mov r8, qword [r9 + 0x18]
xor edx, edx
lea rcx, [rsp + 0x58]
cmp dword [rsp + 0x68], 0x8a33f231
je 0x14003c8f1
mov dword [rbp - 0x80], r15d
movaps xmm0, xmmword [rbp - 0x80]
movdqa xmmword [rbp + 0x190], xmm0
mov dword [rbp - 0x80], r15d
movaps xmm1, xmmword [rbp - 0x80]
movdqa xmmword [rbp - 0x80], xmm1
cmp r8, rax
jne 0x14003c85c
call qword [r9 + 0x10]
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
divsd xmm0, qword [0x1401b0770]
jmp 0x14003c85f
call r8
mov dword [rbp - 0x40], 4
cvttsd2si rax, xmm0
mov qword [rbp - 0x38], rax
movaps xmm0, xmmword [rbp - 0x40]
movdqa xmmword [rbp + 0x180], xmm0
mov dword [rbp - 0x30], 4
movsxd rax, dword [rsp + 0x68]
mov qword [rbp - 0x28], rax
movaps xmm0, xmmword [rbp - 0x30]
movdqa xmmword [rbp + 0x170], xmm0
mov rcx, qword [0x1401f8178]
test rcx, rcx
je 0x14003c9d1
mov rax, qword [rcx]
xor edx, edx
call qword [rax + 0x50]
test rax, rax
je 0x14003c9d1
lea rcx, [rbp + 0x170]
mov qword [rbp + 0x20], rcx
lea rcx, [rbp + 0x180]
mov qword [rbp + 0x28], rcx
lea rcx, [rbp - 0x80]
mov qword [rbp + 0x30], rcx
lea rcx, [rbp + 0x190]
mov qword [rbp + 0x38], rcx
lea rcx, [rbp + 0x20]
lea r9, str.Finish__result:__d____d_ms_
jmp 0x14003c9b0
mov dword [rsp + 0x70], r15d
movaps xmm0, xmmword [rsp + 0x70]
movdqa xmmword [rbp + 0x1c0], xmm0
mov dword [rsp + 0x70], r15d
movaps xmm1, xmmword [rsp + 0x70]
movdqa xmmword [rbp + 0x1b0], xmm1
mov dword [rsp + 0x70], r15d
movaps xmm0, xmmword [rsp + 0x70]
movdqa xmmword [rsp + 0x70], xmm0
cmp r8, rax
jne 0x14003c940
call qword [r9 + 0x10]
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
divsd xmm0, qword [0x1401b0770]
jmp 0x14003c943
call r8
mov dword [rsp + 0x30], 4
cvttsd2si rax, xmm0
mov qword [rsp + 0x38], rax
movaps xmm0, xmmword [rsp + 0x30]
movdqa xmmword [rbp + 0x1a0], xmm0
mov rcx, qword [0x1401f8178]
test rcx, rcx
je 0x14003c9d1
mov rax, qword [rcx]
xor edx, edx
call qword [rax + 0x50]
test rax, rax
je 0x14003c9d1
lea rcx, [rbp + 0x1a0]
mov qword [rbp + 0x40], rcx
lea rcx, [rsp + 0x70]
mov qword [rbp + 0x48], rcx
lea rcx, [rbp + 0x1b0]
mov qword [rbp + 0x50], rcx
lea rcx, [rbp + 0x1c0]
mov qword [rbp + 0x58], rcx
lea rcx, [rbp + 0x40]
lea r9, str.Finish___d_ms_
mov dword [rsp + 0x28], 4
mov qword [rsp + 0x20], rcx
mov r10, qword [rax]
mov r8, qword [rsp + 0x48]
mov edx, dword [rsp + 0x40]
mov rcx, rax
call qword [r10 + 0x10]
nop
mov rdx, qword [rsp + 0x48]
add rdx, 0xffffffffffffffe8
mov eax, dword [rdx + 0x10]
cmp eax, 0x7ffffc17
je 0x14003ca01
mov eax, dword [rdx + 0x10]
cmp eax, 0xffffffff
je 0x14003c9f6
lock xadd dword [rdx + 0x10], esi
sub esi, 1
jg 0x14003ca01
mov rcx, qword [rdx]
mov r8, qword [rcx]
call qword [rreloc.OLEAUT32.dll_VariantClear + 8]
nop
movzx eax, r14b
mov rbx, qword [rsp + 0x310]
add rsp, 0x2d0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret