Function at 0x140196178
Capabilities:
Create process on windows

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x10]
sub rsp, 0x110
mov rax, qword [0x14022ff58]
xor rax, rsp
mov qword [rbp + 8], rax
mov r13b, r9b
mov byte [rsp + 0x20], r9b
mov r12, r8
mov r15, rdx
mov r14, rcx
mov qword [rbp - 0x60], rcx
mov rax, qword [rbp + 0x70]
mov qword [rsp + 0x28], rax
mov rbx, qword [rbp + 0x78]
xor eax, eax
mov esi, eax
mov dword [rsp + 0x24], eax
mov rax, rcx
mov rdi, qword [rcx + 0x18]
cmp rdi, 8
jb 0x1401961dc
mov rax, qword [rcx]
cmp word [rax], 0x22
jne 0x1401961eb
call fcn.1401293f0
mov rdi, qword [r14 + 0x18]
xor edx, edx
lea r8d, [rdx + 0x70]
lea rcx, [rsp + 0x30]
call fcn.1401b0b80
mov dword [rsp + 0x30], 0x70
mov eax, 0x500
lea ecx, [rax + 0x40]
xor edx, edx
test r13b, r13b
cmove eax, ecx
mov dword [rsp + 0x34], eax
mov rax, r14
cmp rdi, 8
jb 0x140196223
mov rax, qword [r14]
mov qword [rsp + 0x48], rax
cmp qword [rbx + 0x10], rdx
je 0x14019623d
cmp qword [rbx + 0x18], 8
jb 0x140196238
mov rbx, qword [rbx]
mov qword [rsp + 0x40], rbx
mov rcx, r14
call fcn.1400e0b4c
xor ebx, ebx
test rax, rax
sete r13b
mov rdx, r14
lea rcx, [rbp - 0x38]
call fcn.1400e0900
nop
mov rcx, qword [rbp - 0x28]
test rcx, rcx
je 0x14019629c
lea r8, [rbp - 0x38]
cmp qword [rbp - 0x20], 8
cmovae r8, qword [rbp - 0x38]
lea edi, [rbx + 1]
cmp rcx, rdi
jne 0x1401962d7
lea rdx, [0x1401da77c]
test rcx, rcx
je 0x14019629c
sub r8, rdx
movzx eax, word [r8 + rdx]
cmp ax, word [rdx]
jne 0x1401962d7
add rdx, 2
sub rcx, rdi
jne 0x140196289
lea rcx, [rbp - 0x38]
call fcn.140006b84
nop
mov rcx, r14
call fcn.140006b84
xor al, al
mov rcx, qword [rbp + 8]
xor rcx, rsp
call fcn.1401adee0
mov rbx, qword [rsp + 0x168]
add rsp, 0x110
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
test r13b, r13b
jne 0x140196318
mov qword [rbp - 0x18], rbx
xorps xmm0, xmm0
movdqu xmmword [rbp - 8], xmm0
mov r8d, 3
lea rdx, [0x1401f2360]
lea rcx, [rbp - 0x18]
call fcn.1400041a8
nop
mov esi, edi
mov dword [rsp + 0x24], edi
lea rdx, [rbp - 0x18]
mov rcx, r14
call fcn.1400df15c
test al, al
jne 0x140196318
mov bl, dil
test dil, sil
je 0x140196379
and esi, 0xfffffffe
mov dword [rsp + 0x24], esi
mov rax, qword [rbp]
cmp rax, 8
jb 0x140196364
lea rdx, [rax*2 + 2]
mov rcx, qword [rbp - 0x18]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14019635f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140196771
call fcn.1401addcc
movdqa xmm0, xmmword [0x1401da070]
movdqu xmmword [rbp - 8], xmm0
xor edx, edx
mov word [rbp - 0x18], dx
jmp 0x14019637b
xor edx, edx
test bl, bl
je 0x140196396
or dword [rsp + 0x34], edi
lea rax, [rbp - 0x38]
cmp qword [rbp - 0x20], 8
cmovae rax, qword [rbp - 0x38]
mov qword [rsp + 0x78], rax
cmp qword [r15 + 0x10], rdx
je 0x1401963ab
cmp qword [r15 + 0x18], 8
jb 0x1401963a6
mov r15, qword [r15]
mov qword [rsp + 0x58], r15
xor r15d, r15d
cmp qword [r12 + 0x10], r15
je 0x1401963c6
cmp qword [r12 + 0x18], 8
jb 0x1401963c1
mov r12, qword [r12]
mov qword [rsp + 0x50], r12
mov qword [rbp - 0x58], r15
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x48], xmm0
movdqa xmm1, xmmword [0x1401da070]
movdqu xmmword [rbp - 0x48], xmm1
mov word [rbp - 0x58], r15w
test r13b, r13b
je 0x140196423
mov qword [rbp - 0x18], r15
movdqu xmmword [rbp - 8], xmm0
mov r8d, 3
lea rdx, [0x1401da330]
lea rcx, [rbp - 0x18]
call fcn.1400041a8
nop
or esi, 2
mov dword [rsp + 0x24], esi
lea rdx, [rbp - 0x18]
mov rcx, r14
call fcn.1400df15c
test al, al
mov bl, dil
je 0x140196426
mov bl, r15b
mov r13d, 0x1000
test sil, 2
je 0x140196487
and esi, 0xfffffffd
mov dword [rsp + 0x24], esi
mov rdx, qword [rbp]
cmp rdx, 8
jb 0x140196475
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x18]
mov rax, rcx
cmp rdx, r13
jb 0x140196470
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140196777
call fcn.1401addcc
movdqa xmm0, xmmword [0x1401da070]
movdqu xmmword [rbp - 8], xmm0
mov word [rbp - 0x18], r15w
test bl, bl
je 0x140196537
mov r8, r14
lea rdx, [0x1401eb9d4]
lea rcx, [rbp - 0x18]
call fcn.1400040f0
mov rbx, rax
lea rax, [rbp - 0x58]
cmp rax, rbx
je 0x14019651b
mov rdx, qword [rbp - 0x40]
cmp rdx, 8
jb 0x1401964ea
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x58]
mov rax, rcx
cmp rdx, r13
jb 0x1401964e5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14019677d
call fcn.1401addcc
movdqa xmm0, xmmword [0x1401da070]
movdqu xmmword [rbp - 0x48], xmm0
mov word [rbp - 0x58], r15w
movups xmm0, xmmword [rbx]
movups xmmword [rbp - 0x58], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rbp - 0x48], xmm1
mov qword [rbx + 0x10], r15
mov qword [rbx + 0x18], 7
mov word [rbx], r15w
lea rcx, [rbp - 0x18]
call fcn.140006b84
lea rax, [rbp - 0x58]
cmp qword [rbp - 0x40], 8
cmovae rax, qword [rbp - 0x58]
mov qword [rsp + 0x48], rax
mov dword [rsp + 0x60], edi
mov byte [0x140231ad5], dil
lea rcx, [rsp + 0x30]
call qword [sym.imp.SHELL32.dll_ShellExecuteExW]
mov ebx, eax
mov rdx, qword [rbp - 0x28]
test rdx, rdx
je 0x140196589
lea rcx, [rbp - 0x38]
cmp qword [rbp - 0x20], 8
setae r8b
cmovae rcx, qword [rbp - 0x38]
cmp word [rcx + rdx*2 - 2], 0x2e
je 0x140196589
lea rax, [rbp - 0x38]
test r8b, r8b
cmovne rax, qword [rbp - 0x38]
cmp word [rax + rdx*2 - 2], 0x20
mov sil, r15b
jne 0x14019658c
mov sil, dil
mov r12d, 0x483
test ebx, ebx
jne 0x140196638
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, r12d
jne 0x1401965c0
test sil, sil
jne 0x1401965c0
and dword [rsp + 0x34], 0xfffffffe
lea rcx, [rsp + 0x30]
call qword [sym.imp.SHELL32.dll_ShellExecuteExW]
mov ebx, eax
test eax, eax
jne 0x140196638
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x4c7
jne 0x14019661f
mov rax, qword [rsp + 0x28]
test rax, rax
je 0x1401965da
mov qword [rax], r15
mov rdx, qword [rbp - 0x40]
cmp rdx, 8
jb 0x14019673f
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x58]
cmp rdx, r13
mov rax, rcx
jb 0x140196615
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14019676b
call fcn.1401addcc
jmp 0x14019673f
cmp qword [rsp + 0x40], r15
je 0x140196638
mov qword [rsp + 0x40], r15
lea rcx, [rsp + 0x30]
call qword [sym.imp.SHELL32.dll_ShellExecuteExW]
mov ebx, eax
mov byte [0x140231ad5], r15b
test ebx, ebx
je 0x140196704
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, r12d
je 0x140196704
cmp byte [rsp + 0x20], r15b
jne 0x1401965da
mov r8, qword [rbp - 0x68]
lea rsi, [0x140000000]
test r8, r8
je 0x1401966a6
movsxd rdx, dword [0x140258200]
mov qword [rsi + rdx*8 + 0x258100], r8
mov rax, qword [rsp + 0x68]
mov qword [rsi + rdx*8 + 0x258180], rax
inc edx
and edx, 0x8000000f
jge 0x14019669e
sub edx, edi
or edx, 0xfffffff0
add edx, edi
mov dword [0x140258200], edx
jmp 0x1401966ee
mov rbx, r15
mov rax, qword [rsp + 0x68]
cmp qword [rbx + rsi + 0x258180], rax
jne 0x1401966e1
xor edx, edx
mov rcx, qword [rbx + rsi + 0x258100]
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
cmp eax, 0x102
jne 0x1401966dd
mov r8, qword [rbx + rsi + 0x258100]
mov qword [rbp - 0x68], r8
jmp 0x1401966e1
mov r8, qword [rbp - 0x68]
add rbx, 8
cmp rbx, 0x80
jl 0x1401966a9
mov rax, qword [rsp + 0x28]
test rax, rax
je 0x1401965da
mov qword [rax], r8
jmp 0x1401965da
mov rdx, qword [rbp - 0x40]
cmp rdx, 8
jb 0x14019673c
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x58]
mov rax, rcx
cmp rdx, r13
jb 0x140196737
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14019676b
call fcn.1401addcc
mov dil, r15b
movdqa xmm0, xmmword [0x1401da070]
movdqu xmmword [rbp - 0x48], xmm0
mov word [rbp - 0x58], r15w
lea rcx, [rbp - 0x38]
call fcn.140006b84
nop
mov rcx, r14
call fcn.140006b84
mov al, dil
jmp 0x1401962b0
call fcn.1401b4fa4
int3
call fcn.1401b4fa4
nop
call fcn.1401b4fa4
nop
call fcn.1401b4fa4
int3