Function at 0x1400e5910
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 - 0x200]
sub rsp, 0x300
mov rax, qword [0x140185220]
xor rax, rsp
mov qword [rbp + 0x1f0], rax
mov rdi, r8
mov r14, rdx
mov rbx, rcx
mov qword [rsp + 0x68], rcx
mov qword [rsp + 0x70], r8
xor r15d, r15d
mov dword [rsp + 0x50], r15d
lea edx, [r15 - 4]
mov rcx, r14
call qword [sym.imp.USER32.dll_GetWindowLongPtrW]
lea rcx, [0x1400e5840]
cmp rax, rcx
je 0x1400e6fb5
lea r9, [rsp + 0x50]
lea r8, [rsp + 0x58]
mov rdx, r14
mov rcx, rbx
call fcn.1400e5420
test eax, eax
je 0x1400e6fb5
cmp qword [rbx + 0x10], r15
jne 0x1400e59ad
xor ecx, ecx
call qword [sym.imp.USER32.dll_DestroyMenu]
call qword [sym.imp.USER32.dll_CreatePopupMenu]
mov qword [rbx + 0x10], rax
xorps xmm0, xmm0
movups xmmword [rbp + 0x88], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x98], xmm1
xor r8d, r8d
lea rsi, [0x140162d5c]
mov rdx, rsi
lea rcx, [rbp + 0x88]
call fcn.14004c390
nop
xorps xmm0, xmm0
movups xmmword [rbp + 0x30], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x40], xmm1
mov r8d, 0x1a
lea rdx, str.SoftwaregrepWineditorcmd
lea rcx, [rbp + 0x30]
call fcn.14004c390
nop
lea rdx, [rbp + 0x30]
lea rcx, [rbp + 0xf0]
call fcn.1400627c0
nop
lea rax, vtable.CRegTypedBase_class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t____class_CRegStdBase_.0
mov qword [rbp + 0xf0], rax
lea rdx, [rbp + 0x88]
lea rcx, [rbp + 0x150]
call fcn.14004aff0
nop
lea rdx, [rbp + 0x88]
lea rcx, [rbp + 0x170]
call fcn.14004aff0
mov qword [rbp + 0x190], r15
mov eax, 0xffffffff
mov qword [rbp + 0x198], rax
lea rax, vtable.CRegStringCommon_class_CRegStdBase_.0
mov qword [rbp + 0xf0], rax
lea rcx, [rbp + 0x30]
call fcn.14004b2f0
nop
mov rdx, qword [rbp + 0xa0]
cmp rdx, 8
jb 0x1400e5ab9
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x88]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400e5ab4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400e6fe7
call fcn.14011460c
movzx eax, byte [rbp + 0x148]
test al, al
je 0x1400e5b10
cmp qword [rbp + 0x198], 0xffffffffffffffff
je 0x1400e5af3
call qword [sym.imp.KERNEL32.dll_GetTickCount64]
mov rdx, qword [rbp + 0x190]
cmp rax, rdx
jb 0x1400e5b09
add rdx, qword [rbp + 0x198]
cmp rax, rdx
ja 0x1400e5b09
movzx eax, byte [rbp + 0x148]
test al, al
je 0x1400e5b10
cmp byte [rbp + 0x149], 0
jne 0x1400e5b10
mov dword [rbp + 0x140], r15d
jmp 0x1400e5b1c
mov byte [rbp + 0x148], 0
lea rcx, [rbp + 0xf0]
call fcn.140061a30
xorps xmm0, xmm0
movups xmmword [rbp + 0x88], xmm0
mov qword [rbp + 0x98], r15
mov qword [rbp + 0xa0], r15
mov r15, qword [rbp + 0x160]
lea rbx, [rbp + 0x150]
cmp qword [rbp + 0x168], 8
cmovae rbx, qword [rbp + 0x150]
movabs rax, 0x7ffffffffffffffe
cmp r15, rax
ja 0x1400e6fed
mov ecx, 0xa
lea r12d, [rcx - 3]
cmp r15, 8
jae 0x1400e5b97
mov qword [rbp + 0x98], r15
mov r13d, r12d
mov qword [rbp + 0xa0], r12
movups xmm0, xmmword [rbx]
movups xmmword [rbp + 0x88], xmm0
movq qword [rsp + 0x60], xmm0
jmp 0x1400e5bec
mov r13, r15
or r13, r12
cmp r13, rax
jbe 0x1400e5ba7
mov r13, rax
jmp 0x1400e5bae
cmp r13, rcx
cmovb r13, rcx
lea rdx, [r13 + 1]
lea rcx, [rbp + 0x88]
call fcn.14004b1e0
mov qword [rsp + 0x60], rax
mov qword [rbp + 0x88], rax
mov qword [rbp + 0x98], r15
mov qword [rbp + 0xa0], r13
lea r8, [r15*2 + 2]
mov rdx, rbx
mov rcx, rax
call fcn.140118050
nop
cmp byte [0x14018c2e4], 0
je 0x1400e5cc4
lea rax, str.global
mov qword [rbp + 0x68], rax
xor r15d, r15d
mov qword [rbp + 0x70], r15
mov dword [rbp + 0x78], r15d
lea r8, [rbp + 0x68]
lea rdx, [rbp + 0x10]
lea rcx, [0x14018c370]
call fcn.140061e00
mov rbx, qword [rbp + 0x20]
cmp byte [rbx + 0x19], r15b
jne 0x1400e5c47
lea r8, [rbx + 0x20]
lea rdx, [rbp + 0x68]
call fcn.140061ed0
test al, al
jne 0x1400e5c47
mov rax, qword [0x14018c370]
jmp 0x1400e5c51
mov rax, qword [0x14018c370]
mov rbx, rax
cmp rbx, rax
je 0x1400e5c8a
lea rax, str.editorcmd
mov qword [rbp + 0x68], rax
mov qword [rbp + 0x70], r15
mov dword [rbp + 0x78], r15d
lea r8, [rbp + 0x68]
lea rdx, [rsp + 0x60]
lea rcx, [rbx + 0x38]
call fcn.140061350
mov rax, qword [rsp + 0x60]
cmp rax, qword [rbx + 0x38]
je 0x1400e5c8a
mov rsi, qword [rax + 0x38]
mov r8, 0xffffffffffffffff
inc r8
cmp word [rsi + r8*2], r15w
jne 0x1400e5c91
mov rdx, rsi
lea rcx, [rbp + 0x88]
call fcn.14004ca40
mov r13, qword [rbp + 0xa0]
mov r15, qword [rbp + 0x98]
mov rax, qword [rbp + 0x88]
mov qword [rsp + 0x60], rax
mov rsi, qword [rsp + 0x68]
mov rcx, qword [rsi + 0x38]
sub rcx, qword [rsi + 0x30]
movabs rax, 0x4924924924924925
imul rcx
sar rdx, 5
mov rax, rdx
shr rax, 0x3f
add rdx, rax
cmp rdx, 1
jne 0x1400e5fc8
test r15, r15
je 0x1400e5da6
call fcn.14005b9c0
mov rbx, rax
mov r8d, 0x8d
mov rdx, qword [0x14018c310]
lea rcx, [rbp + 0x30]
call fcn.14006ac50
nop
lea rdx, [rbp + 0x30]
mov rcx, rbx
call fcn.14004e260
cmp rax, qword [rbx]
je 0x1400e5d3a
cmp qword [rax + 0x50], 0
lea rdx, [rax + 0x40]
jne 0x1400e5d3e
lea rdx, [rbp + 0x30]
lea rcx, [rbp - 0x10]
call fcn.14004aff0
lea rax, [rbp - 0x10]
cmp qword [rbp + 8], 8
cmovae rax, qword [rbp - 0x10]
mov qword [rsp + 0x20], rax
mov edx, 1
lea r9d, [rdx + 4]
mov r8d, 0x400
mov rcx, qword [rsi + 0x10]
call qword [sym.imp.USER32.dll_InsertMenuW]
lea rcx, [rbp - 0x10]
call fcn.14004b2f0
nop
lea rcx, [rbp + 0x30]
call fcn.14004b2f0
mov qword [rsp + 0x20], 0
xor r9d, r9d
lea edx, [r9 + 5]
mov r8d, 0xc00
mov rcx, qword [rsi + 0x10]
call qword [sym.imp.USER32.dll_InsertMenuW]
call fcn.14005b9c0
mov rbx, rax
mov r8d, 0x8e
mov rdx, qword [0x14018c310]
lea rcx, [rbp + 0x30]
call fcn.14006ac50
nop
lea rdx, [rbp + 0x30]
mov rcx, rbx
call fcn.14004e260
cmp rax, qword [rbx]
je 0x1400e5de1
cmp qword [rax + 0x50], 0
lea rdx, [rax + 0x40]
jne 0x1400e5de5
lea rdx, [rbp + 0x30]
lea rcx, [rbp - 0x10]
call fcn.14004aff0
lea rax, [rbp - 0x10]
cmp qword [rbp + 8], 8
cmovae rax, qword [rbp - 0x10]
mov qword [rsp + 0x20], rax
mov edx, 1
mov r9d, edx
mov r8d, 0x400
mov rcx, qword [rsi + 0x10]
call qword [sym.imp.USER32.dll_InsertMenuW]
lea rcx, [rbp - 0x10]
call fcn.14004b2f0
nop
lea rcx, [rbp + 0x30]
call fcn.14004b2f0
call fcn.14005b9c0
mov rbx, rax
mov r8d, 0x8f
mov rdx, qword [0x14018c310]
lea rcx, [rbp + 0x30]
call fcn.14006ac50
nop
lea rdx, [rbp + 0x30]
mov rcx, rbx
call fcn.14004e260
cmp rax, qword [rbx]
je 0x1400e5e67
cmp qword [rax + 0x50], 0
lea rdx, [rax + 0x40]
jne 0x1400e5e6b
lea rdx, [rbp + 0x30]
lea rcx, [rbp - 0x10]
call fcn.14004aff0
lea rax, [rbp - 0x10]
cmp qword [rbp + 8], 8
cmovae rax, qword [rbp - 0x10]
mov qword [rsp + 0x20], rax
mov edx, 2
mov r9d, edx
mov r8d, 0x400
mov rcx, qword [rsi + 0x10]
call qword [sym.imp.USER32.dll_InsertMenuW]
lea rcx, [rbp - 0x10]
call fcn.14004b2f0
nop
lea rcx, [rbp + 0x30]
call fcn.14004b2f0
call fcn.14005b9c0
mov rbx, rax
mov r8d, 0x91
mov rdx, qword [0x14018c310]
lea rcx, [rbp + 0x30]
call fcn.14006ac50
nop
lea rdx, [rbp + 0x30]
mov rcx, rbx
call fcn.14004e260
cmp rax, qword [rbx]
je 0x1400e5eed
cmp qword [rax + 0x50], 0
lea rdx, [rax + 0x40]
jne 0x1400e5ef1
lea rdx, [rbp + 0x30]
lea rcx, [rbp - 0x10]
call fcn.14004aff0
lea rax, [rbp - 0x10]
cmp qword [rbp + 8], 8
cmovae rax, qword [rbp - 0x10]
mov qword [rsp + 0x20], rax
mov edx, 3
mov r9d, edx
mov r8d, 0x400
mov rcx, qword [rsi + 0x10]
call qword [sym.imp.USER32.dll_InsertMenuW]
lea rcx, [rbp - 0x10]
call fcn.14004b2f0
nop
lea rcx, [rbp + 0x30]
call fcn.14004b2f0
mov rax, qword [rsi + 0x50]
cmp qword [rsi + 0x48], rax
je 0x1400e621e
call fcn.14005b9c0
mov rbx, rax
mov r8d, 0x93
mov rdx, qword [0x14018c310]
lea rcx, [rbp + 0x30]
call fcn.14006ac50
nop
lea rdx, [rbp + 0x30]
mov rcx, rbx
call fcn.14004e260
cmp rax, qword [rbx]
je 0x1400e5f81
cmp qword [rax + 0x50], 0
lea rdx, [rax + 0x40]
jne 0x1400e5f85
lea rdx, [rbp + 0x30]
lea rcx, [rbp - 0x10]
call fcn.14004aff0
lea rax, [rbp - 0x10]
cmp qword [rbp + 8], 8
cmovae rax, qword [rbp - 0x10]
mov qword [rsp + 0x20], rax
mov edx, 4
mov r9d, edx
mov r8d, 0x400
mov rcx, qword [rsi + 0x10]
call qword [sym.imp.USER32.dll_InsertMenuW]
lea rcx, [rbp - 0x10]
call fcn.14004b2f0
nop
jmp 0x1400e6215
jbe 0x1400e623e
test r15, r15
je 0x1400e607e
call fcn.14005b9c0
mov rbx, rax
mov r8d, 0x8d
mov rdx, qword [0x14018c310]
lea rcx, [rbp + 0x30]
call fcn.14006ac50
nop
lea rdx, [rbp + 0x30]
mov rcx, rbx
call fcn.14004e260
cmp rax, qword [rbx]
je 0x1400e6012
cmp qword [rax + 0x50], 0
lea rdx, [rax + 0x40]
jne 0x1400e6016
lea rdx, [rbp + 0x30]
lea rcx, [rbp - 0x10]
call fcn.14004aff0
lea rax, [rbp - 0x10]
cmp qword [rbp + 8], 8
cmovae rax, qword [rbp - 0x10]
mov qword [rsp + 0x20], rax
mov edx, 1
lea r9d, [rdx + 4]
mov r8d, 0x400
mov rcx, qword [rsi + 0x10]
call qword [sym.imp.USER32.dll_InsertMenuW]
lea rcx, [rbp - 0x10]
call fcn.14004b2f0
nop
lea rcx, [rbp + 0x30]
call fcn.14004b2f0
mov qword [rsp + 0x20], 0
xor r9d, r9d
lea edx, [r9 + 5]
mov r8d, 0xc00
mov rcx, qword [rsi + 0x10]
call qword [sym.imp.USER32.dll_InsertMenuW]
call fcn.14005b9c0
mov rbx, rax
mov r8d, 0x90
mov rdx, qword [0x14018c310]
lea rcx, [rbp + 0x30]
call fcn.14006ac50
nop
lea rdx, [rbp + 0x30]
mov rcx, rbx
call fcn.14004e260
cmp rax, qword [rbx]
je 0x1400e60b9
cmp qword [rax + 0x50], 0
lea rdx, [rax + 0x40]
jne 0x1400e60bd
lea rdx, [rbp + 0x30]
lea rcx, [rbp - 0x10]
call fcn.14004aff0
lea rax, [rbp - 0x10]
cmp qword [rbp + 8], 8
cmovae rax, qword [rbp - 0x10]
mov qword [rsp + 0x20], rax
mov edx, 2
mov r9d, edx
mov r8d, 0x400
mov rcx, qword [rsi + 0x10]
call qword [sym.imp.USER32.dll_InsertMenuW]
lea rcx, [rbp - 0x10]
call fcn.14004b2f0
nop
lea rcx, [rbp + 0x30]
call fcn.14004b2f0
call fcn.14005b9c0
mov rbx, rax
mov r8d, 0x92
mov rdx, qword [0x14018c310]
lea rcx, [rbp + 0x30]
call fcn.14006ac50
nop
lea rdx, [rbp + 0x30]
mov rcx, rbx
call fcn.14004e260
cmp rax, qword [rbx]
je 0x1400e613f
cmp qword [rax + 0x50], 0
lea rdx, [rax + 0x40]
jne 0x1400e6143
lea rdx, [rbp + 0x30]
lea rcx, [rbp - 0x10]
call fcn.14004aff0
lea rax, [rbp - 0x10]
cmp qword [rbp + 8], 8
cmovae rax, qword [rbp - 0x10]
mov qword [rsp + 0x20], rax
mov edx, 3
mov r9d, edx
mov r8d, 0x400
mov rcx, qword [rsi + 0x10]
call qword [sym.imp.USER32.dll_InsertMenuW]
lea rcx, [rbp - 0x10]
call fcn.14004b2f0
nop
lea rcx, [rbp + 0x30]
call fcn.14004b2f0
mov rax, qword [rsi + 0x50]
cmp qword [rsi + 0x48], rax
je 0x1400e621e
call fcn.14005b9c0
mov rbx, rax
mov r8d, 0x94
mov rdx, qword [0x14018c310]
lea rcx, [rbp + 0x30]
call fcn.14006ac50
nop
lea rdx, [rbp + 0x30]
mov rcx, rbx
call fcn.14004e260
cmp rax, qword [rbx]
je 0x1400e61d3
cmp qword [rax + 0x50], 0
lea rdx, [rax + 0x40]
jne 0x1400e61d7
lea rdx, [rbp + 0x30]
lea rcx, [rbp - 0x10]
call fcn.14004aff0
lea rax, [rbp - 0x10]
cmp qword [rbp + 8], 8
cmovae rax, qword [rbp - 0x10]
mov qword [rsp + 0x20], rax
mov edx, 4
mov r9d, edx
mov r8d, 0x400
mov rcx, qword [rsi + 0x10]
call qword [sym.imp.USER32.dll_InsertMenuW]
lea rcx, [rbp - 0x10]
call fcn.14004b2f0
nop
lea rcx, [rbp + 0x30]
call fcn.14004b2f0
mov qword [rsp + 0x20], 0
xor r9d, r9d
mov r8d, 0xc00
lea edx, [r9 + 5]
mov rcx, qword [rsi + 0x10]
call qword [sym.imp.USER32.dll_InsertMenuW]
mov rax, qword [rsp + 0x58]
mov rcx, qword [rax]
mov rbx, qword [rcx + 0x18]
mov rcx, qword [rsi + 0x10]
call qword [sym.imp.USER32.dll_GetMenuItemCount]
mov dword [rsp + 0x28], 4
mov dword [rsp + 0x20], 0x2710
mov r9d, 6
mov r8d, eax
mov rdx, qword [rsi + 0x10]
mov rcx, qword [rsp + 0x58]
call rbx
mov ebx, dword [rsp + 0x50]
cmp ebx, 1
jle 0x1400e62cc
mov edx, 0xfffffffc
mov rcx, r14
call qword [sym.imp.USER32.dll_GetWindowLongPtrW]
lea r8, [0x1400e5840]
cmp rax, r8
je 0x1400e62b0
mov edx, 0xfffffffc
mov rcx, r14
call qword [sym.imp.USER32.dll_SetWindowLongPtrW]
mov qword [0x14018c320], rax
mov rax, qword [rsp + 0x58]
cmp ebx, 2
jne 0x1400e62c3
mov qword [0x14018c328], rax
jmp 0x1400e62d7
mov qword [0x14018c318], rax
jmp 0x1400e62d7
mov qword [0x14018c320], 0
mov qword [rsp + 0x30], 0
mov qword [rsp + 0x28], r14
mov dword [rsp + 0x20], 0
mov r9d, dword [rsp + 0x74]
mov r8d, edi
mov edx, 0x100
mov rcx, qword [rsi + 0x10]
call qword [sym.imp.USER32.dll_TrackPopupMenu]
mov ebx, eax
mov dword [rsp + 0x50], eax
mov r8, qword [0x14018c320]
test r8, r8
je 0x1400e6324
mov edx, 0xfffffffc
mov rcx, r14
call qword [sym.imp.USER32.dll_SetWindowLongPtrW]
lea ecx, [rbx - 6]
cmp ecx, 0x270a
ja 0x1400e637a
xor r14d, r14d
mov qword [rbp + 0x34], r14
mov dword [rbp + 0x3c], r14d
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x48], xmm0
mov qword [rbp + 0x5c], r14
mov dword [rbp + 0x64], r14d
mov dword [rbp + 0x30], 0x38
sub bx, 6
movzx eax, bx
mov qword [rbp + 0x40], rax
mov dword [rbp + 0x58], 1
mov rcx, qword [rsp + 0x58]
mov rax, qword [rcx]
lea rdx, [rbp + 0x30]
call qword [rax + 0x20]
mov ebx, r14d
jmp 0x1400e6dc7
mov eax, ebx
sub eax, 1
je 0x1400e6eb0
sub eax, 1
je 0x1400e6e3c
sub eax, 1
je 0x1400e6c14
sub eax, 1
je 0x1400e6a1f
cmp eax, 1
jne 0x1400e6dc4
mov rbx, qword [rsi + 0x48]
cmp rbx, qword [rsi + 0x50]
je 0x1400e66d7
nop word [rax + rax]
mov rsi, qword [rbx + 0x20]
xor r14d, r14d
cmp rsi, qword [rbx + 0x28]
je 0x1400e66bb
xorps xmm0, xmm0
movups xmmword [rbp + 0x10], xmm0
mov qword [rbp + 0x20], r14
mov qword [rbp + 0x28], r14
lea r14, [rbp + 0x88]
cmp r13, 8
cmovae r14, qword [rsp + 0x60]
movabs rax, 0x7ffffffffffffffe
cmp r15, rax
ja 0x1400e6fff
mov qword [rbp + 0x28], r12
cmp r15, 8
jae 0x1400e6426
mov qword [rbp + 0x20], r15
mov r8d, 0x10
mov rdx, r14
lea rcx, [rbp + 0x10]
call fcn.140118050
jmp 0x1400e6471
mov rdi, r15
or rdi, 7
cmp rdi, rax
jbe 0x1400e6437
mov rdi, rax
jmp 0x1400e6444
cmp rdi, 0xa
mov eax, 0xa
cmovb rdi, rax
lea rdx, [rdi + 1]
lea rcx, [rbp + 0x10]
call fcn.14004b1e0
mov qword [rbp + 0x10], rax
mov qword [rbp + 0x20], r15
mov qword [rbp + 0x28], rdi
lea r8, [r15*2 + 2]
mov rdx, r14
mov rcx, rax
call fcn.140118050
nop
mov rdx, rbx
cmp qword [rbx + 0x18], 8
jb 0x1400e647e
mov rdx, qword [rbx]
xorps xmm0, xmm0
movups xmmword [rbp - 0x10], xmm0
xor r14d, r14d
mov qword [rbp], r14
mov qword [rbp + 8], r14
mov r8, 0xffffffffffffffff
nop word [rax + rax]
inc r8
cmp word [rdx + r8*2], r14w
jne 0x1400e64a0
lea rcx, [rbp - 0x10]
call fcn.14004c390
nop
xorps xmm0, xmm0
movups xmmword [rbp + 0x30], xmm0
mov qword [rbp + 0x40], r14
mov qword [rbp + 0x48], r14
mov r8d, 6
lea rdx, str._path_
lea rcx, [rbp + 0x30]
call fcn.14004c390
nop
lea r8, [rbp - 0x10]
lea rdx, [rbp + 0x30]
lea rcx, [rbp + 0x10]
call fcn.140062f00
nop
lea rcx, [rbp + 0x30]
call fcn.14004b2f0
nop
mov rdx, qword [rbp + 8]
cmp rdx, 8
jb 0x1400e6536
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400e6531
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400e6ff3
call fcn.14011460c
xorps xmm0, xmm0
movups xmmword [rbp + 0x1a0], xmm0
movups xmmword [rbp + 0x1b0], xmm0
movups xmmword [rbp + 0x1c0], xmm0
movups xmmword [rbp + 0x1d0], xmm0
movups xmmword [rbp + 0x1e0], xmm0
mov r8d, dword [rsi]
lea rdx, [0x140168348]
lea rcx, [rbp + 0x1a0]
call fcn.1400e7a20
xorps xmm0, xmm0
movups xmmword [rbp - 0x10], xmm0
mov qword [rbp], r14
mov qword [rbp + 8], r14
lea rax, [rbp + 0x1a0]
mov r8, 0xffffffffffffffff
nop
inc r8
cmp word [rax + r8*2], 0
jne 0x1400e6590
lea rdx, [rbp + 0x1a0]
lea rcx, [rbp - 0x10]
call fcn.14004c390
nop
xorps xmm0, xmm0
movups xmmword [rbp + 0x30], xmm0
mov qword [rbp + 0x40], r14
mov qword [rbp + 0x48], r14
mov r8d, 6
lea rdx, str._line_
lea rcx, [rbp + 0x30]
call fcn.14004c390
nop
lea r8, [rbp - 0x10]
lea rdx, [rbp + 0x30]
lea rcx, [rbp + 0x10]
call fcn.140062f00
nop
lea rcx, [rbp + 0x30]
call fcn.14004b2f0
nop
lea rcx, [rbp - 0x10]
call fcn.14004b2f0
lea rdi, [rbp - 0x80]
xor eax, eax
mov ecx, 0x68
rep stosb byte [rdi], al
mov dword [rbp - 0x80], 0x68
lea rdi, [rbp + 0x68]
mov ecx, 0x18
rep stosb byte [rdi], al
lea rdx, [rbp + 0x10]
cmp qword [rbp + 0x28], 8
cmovae rdx, qword [rbp + 0x10]
lea rax, [rbp + 0x68]
mov qword [rsp + 0x48], rax
lea rax, [rbp - 0x80]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x30], r14
mov dword [rsp + 0x28], r14d
mov dword [rsp + 0x20], r14d
xor r9d, r9d
xor r8d, r8d
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateProcessW]
mov rcx, qword [rbp + 0x70]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, qword [rbp + 0x68]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
nop
mov rdx, qword [rbp + 0x28]
cmp rdx, 8
jb 0x1400e66ad
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400e66a8
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400e6ff9
call fcn.14011460c
add rsi, 0x28
cmp rsi, qword [rbx + 0x28]
jne 0x1400e63d1
add rbx, 0x38
mov rsi, qword [rsp + 0x68]
cmp rbx, qword [rsi + 0x50]
jne 0x1400e63c0
mov ebx, dword [rsp + 0x50]
jmp 0x1400e6dc7
mov rbx, qword [rsi + 0x30]
xor r14d, r14d
cmp rbx, qword [rsi + 0x38]
je 0x1400e66ce
xorps xmm0, xmm0
movups xmmword [rbp + 0x10], xmm0
mov qword [rbp + 0x20], r14
mov qword [rbp + 0x28], r14
lea rsi, [rbp + 0x88]
cmp r13, 8
cmovae rsi, qword [rsp + 0x60]
movabs rax, 0x7ffffffffffffffe
cmp r15, rax
ja 0x1400e700b
mov qword [rbp + 0x28], r12
cmp r15, 8
jae 0x1400e6739
mov qword [rbp + 0x20], r15
mov r8d, 0x10
mov rdx, rsi
lea rcx, [rbp + 0x10]
call fcn.140118050
jmp 0x1400e6784
mov rdi, r15
or rdi, 7
cmp rdi, rax
jbe 0x1400e674a
mov rdi, rax
jmp 0x1400e6757
cmp rdi, 0xa
mov eax, 0xa
cmovb rdi, rax
lea rdx, [rdi + 1]
lea rcx, [rbp + 0x10]
call fcn.14004b1e0
mov qword [rbp + 0x10], rax
mov qword [rbp + 0x20], r15
mov qword [rbp + 0x28], rdi
lea r8, [r15*2 + 2]
mov rdx, rsi
mov rcx, rax
call fcn.140118050
nop
mov rdx, rbx
cmp qword [rbx + 0x18], 8
jb 0x1400e6791
mov rdx, qword [rbx]
xorps xmm0, xmm0
movups xmmword [rbp - 0x10], xmm0
mov qword [rbp], r14
mov qword [rbp + 8], r14
mov r8, 0xffffffffffffffff
nop word [rax + rax]
inc r8
cmp word [rdx + r8*2], 0
jne 0x1400e67b0
lea rcx, [rbp - 0x10]
call fcn.14004c390
nop
xorps xmm0, xmm0
movups xmmword [rbp + 0x30], xmm0
mov qword [rbp + 0x40], r14
mov qword [rbp + 0x48], r14
mov r8d, 6
lea rdx, str._path_
lea rcx, [rbp + 0x30]
call fcn.14004c390
nop
lea r8, [rbp - 0x10]
lea rdx, [rbp + 0x30]
lea rcx, [rbp + 0x10]
call fcn.140062f00
nop
lea rcx, [rbp + 0x30]
call fcn.14004b2f0
nop
lea rcx, [rbp - 0x10]
call fcn.14004b2f0
mov rax, qword [rbx + 0x28]
xorps xmm0, xmm0
cmp rax, qword [rbx + 0x30]
je 0x1400e6924
movups xmmword [rbp + 0x1a0], xmm0
movups xmmword [rbp + 0x1b0], xmm0
movups xmmword [rbp + 0x1c0], xmm0
movups xmmword [rbp + 0x1d0], xmm0
movups xmmword [rbp + 0x1e0], xmm0
mov r8d, dword [rax]
lea rdx, [0x140168348]
lea rcx, [rbp + 0x1a0]
call fcn.1400e7a20
xorps xmm0, xmm0
movups xmmword [rbp - 0x10], xmm0
mov qword [rbp], r14
mov qword [rbp + 8], r14
lea rax, [rbp + 0x1a0]
mov r8, 0xffffffffffffffff
nop word [rax + rax]
inc r8
cmp word [rax + r8*2], 0
jne 0x1400e6880
lea rdx, [rbp + 0x1a0]
lea rcx, [rbp - 0x10]
call fcn.14004c390
nop
xorps xmm0, xmm0
movups xmmword [rbp + 0x30], xmm0
mov qword [rbp + 0x40], r14
mov qword [rbp + 0x48], r14
mov r8d, 6
lea rdx, str._line_
lea rcx, [rbp + 0x30]
call fcn.14004c390
nop
lea r8, [rbp - 0x10]
lea rdx, [rbp + 0x30]
lea rcx, [rbp + 0x10]
call fcn.140062f00
nop
lea rcx, [rbp + 0x30]
call fcn.14004b2f0
nop
mov rdx, qword [rbp + 8]
cmp rdx, 8
jb 0x1400e6992
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400e691d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400e7005
call fcn.14011460c
jmp 0x1400e6992
movups xmmword [rbp - 0x10], xmm0
mov qword [rbp], r14
mov qword [rbp + 8], r14
mov r8d, 1
lea rdx, [0x14016562c]
lea rcx, [rbp - 0x10]
call fcn.14004c390
nop
xorps xmm0, xmm0
movups xmmword [rbp + 0x30], xmm0
mov qword [rbp + 0x40], r14
mov qword [rbp + 0x48], r14
mov r8d, 6
lea rdx, str._line_
lea rcx, [rbp + 0x30]
call fcn.14004c390
nop
lea r8, [rbp - 0x10]
lea rdx, [rbp + 0x30]
lea rcx, [rbp + 0x10]
call fcn.140062f00
nop
lea rcx, [rbp + 0x30]
call fcn.14004b2f0
nop
lea rcx, [rbp - 0x10]
call fcn.14004b2f0
lea rdi, [rbp - 0x80]
xor eax, eax
mov ecx, 0x68
rep stosb byte [rdi], al
mov dword [rbp - 0x80], 0x68
lea rdi, [rbp + 0x68]
mov ecx, 0x18
rep stosb byte [rdi], al
lea rdx, [rbp + 0x10]
cmp qword [rbp + 0x28], 8
cmovae rdx, qword [rbp + 0x10]
lea rax, [rbp + 0x68]
mov qword [rsp + 0x48], rax
lea rax, [rbp - 0x80]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x30], r14
mov dword [rsp + 0x28], r14d
mov dword [rsp + 0x20], r14d
xor r9d, r9d
xor r8d, r8d
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateProcessW]
mov rcx, qword [rbp + 0x70]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, qword [rbp + 0x68]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
nop
lea rcx, [rbp + 0x10]
call fcn.14004b2f0
add rbx, 0x70
mov rsi, qword [rsp + 0x68]
jmp 0x1400e66de
xorps xmm0, xmm0
movups xmmword [rbp + 0x10], xmm0
xor r15d, r15d
mov qword [rbp + 0x20], r15
mov qword [rbp + 0x28], r12
mov word [rbp + 0x10], r15w
mov rbx, qword [rsi + 0x48]
cmp rbx, qword [rsi + 0x50]
je 0x1400e6bec
lea r12d, [r15 + 0x20]
nop dword [rax + rax]
mov rdi, qword [rbx + 0x20]
cmp rdi, qword [rbx + 0x28]
je 0x1400e6bda
nop
lea rdx, [rdi + 8]
lea rcx, [rbp + 0xa8]
call fcn.14004aff0
nop
xorps xmm0, xmm0
movups xmmword [rbp + 0x68], xmm0
mov qword [rbp + 0x78], r15
mov qword [rbp + 0x80], r15
mov r8d, 2
lea rdx, [0x14016800c]
lea rcx, [rbp + 0x68]
call fcn.14004c390
lea rdx, [rbp + 0x68]
lea rcx, [rbp + 0xa8]
call fcn.140091370
mov rcx, rax
lea rdx, [rbp + 0x68]
call fcn.1400e51e0
mov rdx, qword [rbp + 0x80]
cmp rdx, 8
jb 0x1400e6af8
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x68]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400e6af3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400e7011
call fcn.14011460c
lea rax, [rbp + 0xa8]
mov r8, qword [rbp + 0xc0]
cmp r8, 8
setae cl
mov r9, qword [rbp + 0xa8]
cmovae rax, r9
mov r10, qword [rbp + 0xb8]
lea rdx, [rax + r10*2]
lea rax, [rbp + 0xa8]
test cl, cl
cmovne rax, r9
cmp rax, rdx
je 0x1400e6b5d
cmp word [rax], 0xa
jne 0x1400e6b3f
mov word [rax], r12w
add rax, 2
cmp rax, rdx
jne 0x1400e6b35
mov r8, qword [rbp + 0xc0]
mov r10, qword [rbp + 0xb8]
mov r9, qword [rbp + 0xa8]
lea rax, [rbp + 0xa8]
cmp r8, 8
setae cl
cmovae rax, r9
lea rdx, [rax + r10*2]
lea rax, [rbp + 0xa8]
test cl, cl
cmovne rax, r9
cmp rax, rdx
je 0x1400e6b98
cmp word [rax], 0xd
jne 0x1400e6b8f
mov word [rax], r12w
add rax, 2
cmp rax, rdx
jne 0x1400e6b85
cmp qword [rbp + 0x20], 0
je 0x1400e6baf
lea rdx, [0x14016800c]
lea rcx, [rbp + 0x10]
call fcn.14004ef90
lea rdx, [rbp + 0xa8]
lea rcx, [rbp + 0x10]
call fcn.14004dfb0
nop
lea rcx, [rbp + 0xa8]
call fcn.14004b2f0
add rdi, 0x28
cmp rdi, qword [rbx + 0x28]
jne 0x1400e6a60
add rbx, 0x38
cmp rbx, qword [rsi + 0x50]
jne 0x1400e6a50
mov r12, qword [rbp + 0x28]
lea rcx, [rbp + 0x10]
cmp r12, 8
cmovae rcx, qword [rbp + 0x10]
mov rdx, r14
call fcn.140062e10
nop
lea rcx, [rbp + 0x10]
call fcn.14004b2f0
mov ebx, dword [rsp + 0x50]
jmp 0x1400e6dc4
xorps xmm0, xmm0
movups xmmword [rbp + 0x10], xmm0
xor r15d, r15d
mov eax, r15d
mov qword [rbp + 0x20], rax
mov qword [rbp + 0x28], r12
mov word [rbp + 0x10], r15w
mov rdi, qword [rsi + 0x30]
cmp rdi, qword [rsi + 0x38]
je 0x1400e6da5
nop dword [rax]
test rax, rax
je 0x1400e6c55
lea rdx, [0x14016800c]
lea rcx, [rbp + 0x10]
call fcn.14004ef90
mov rdx, rdi
lea rcx, [rbp + 0xc8]
call fcn.14004aff0
nop
lea rdx, [rbp + 0xc8]
cmp qword [rbp + 0xe0], 8
setae r11b
mov r10, qword [rbp + 0xc8]
cmovae rdx, r10
mov r9, qword [rbp + 0xd8]
test r9, r9
je 0x1400e6cc7
lea rcx, [r9 - 1]
mov rax, 0xffffffffffffffff
cmp rcx, rax
cmovb rax, rcx
lea rcx, [rdx + rax*2]
cmp word [rcx], 0x5c
je 0x1400e6cbf
nop dword [rax + rax]
cmp rcx, rdx
je 0x1400e6cc7
sub rcx, 2
cmp word [rcx], 0x5c
jne 0x1400e6cb0
sub rcx, rdx
sar rcx, 1
jmp 0x1400e6cce
mov rcx, 0xffffffffffffffff
inc rcx
xorps xmm0, xmm0
movups xmmword [rbp + 0x30], xmm0
mov qword [rbp + 0x40], r15
mov qword [rbp + 0x48], r15
cmp r9, rcx
jb 0x1400e701d
sub r9, rcx
mov r8, 0xffffffffffffffff
cmp r9, r8
cmovb r8, r9
lea rax, [rbp + 0xc8]
test r11b, r11b
cmovne rax, r10
lea rdx, [rax + rcx*2]
lea rcx, [rbp + 0x30]
call fcn.14004c390
mov rdx, qword [rbp + 0xe0]
cmp rdx, 8
jb 0x1400e6d5b
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0xc8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400e6d56
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400e7017
call fcn.14011460c
movups xmm0, xmmword [rbp + 0x30]
movups xmmword [rbp + 0xc8], xmm0
movups xmm1, xmmword [rbp + 0x40]
movups xmmword [rbp + 0xd8], xmm1
lea rdx, [rbp + 0xc8]
lea rcx, [rbp + 0x10]
call fcn.14004dfb0
nop
lea rcx, [rbp + 0xc8]
call fcn.14004b2f0
add rdi, 0x70
cmp rdi, qword [rsi + 0x38]
je 0x1400e6da1
mov rax, qword [rbp + 0x20]
jmp 0x1400e6c40
mov r12, qword [rbp + 0x28]
lea rcx, [rbp + 0x10]
cmp r12, 8
cmovae rcx, qword [rbp + 0x10]
mov rdx, r14
call fcn.140062e10
nop
lea rcx, [rbp + 0x10]
call fcn.14004b2f0
xor r14d, r14d
mov rcx, qword [rsp + 0x58]
mov rax, qword [rcx]
call qword [rax + 0x10]
mov qword [0x14018c328], r14
mov qword [0x14018c318], r14
mov rcx, qword [rsi + 0x60]
test rcx, rcx
je 0x1400e6df4
mov rax, qword [rcx]
mov edx, 1
call qword [rax + 0x68]
mov qword [rsi + 0x60], r14
lea rcx, [rbp + 0x88]
call fcn.14004b2f0
nop
lea rcx, [rbp + 0x170]
call fcn.14004b2f0
lea rcx, [rbp + 0x150]
call fcn.14004b2f0
lea rcx, [rbp + 0x120]
call fcn.14004b2f0
lea rcx, [rbp + 0x100]
call fcn.14004b2f0
mov eax, ebx
jmp 0x1400e6fb7
xorps xmm0, xmm0
movups xmmword [rbp + 0x10], xmm0
xor ecx, ecx
mov eax, ecx
mov qword [rbp + 0x20], rcx
mov qword [rbp + 0x28], r12
mov word [rbp + 0x10], cx
mov rdi, qword [rsi + 0x30]
cmp rdi, qword [rsi + 0x38]
je 0x1400e6e95
nop dword [rax]
test rax, rax
je 0x1400e6e75
lea rdx, [0x14016800c]
lea rcx, [rbp + 0x10]
call fcn.14004ef90
mov rdx, rdi
lea rcx, [rbp + 0x10]
call fcn.14004dfb0
add rdi, 0x70
cmp rdi, qword [rsi + 0x38]
je 0x1400e6e91
mov rax, qword [rbp + 0x20]
jmp 0x1400e6e60
mov r12, qword [rbp + 0x28]
lea rcx, [rbp + 0x10]
cmp r12, 8
cmovae rcx, qword [rbp + 0x10]
mov rdx, r14
call fcn.140062e10
nop
jmp 0x1400e6dbb
mov r8, qword [rsi + 0x30]
lea rdx, str._Select__
lea rcx, [rbp + 0x30]
call fcn.14005f750
nop
lea rdx, [0x140162db0]
mov rcx, rax
call fcn.14004ef90
xorps xmm0, xmm0
movups xmmword [rbp + 0x10], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x20], xmm1
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x10], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x20], xmm1
xor r14d, r14d
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], r12
mov word [rax], r14w
lea rcx, [rbp + 0x30]
call fcn.14004b2f0
xorps xmm0, xmm0
movups xmmword [rbp - 0x80], xmm0
movups xmmword [rbp - 0x70], xmm0
movups xmmword [rbp - 0x60], xmm0
movups xmmword [rbp - 0x50], xmm0
movups xmmword [rbp - 0x40], xmm0
movups xmmword [rbp - 0x30], xmm0
movups xmmword [rbp - 0x20], xmm0
mov dword [rbp - 0x80], 0x70
lea rax, str.explorer.exe
mov qword [rbp - 0x68], rax
lea rax, [rbp + 0x10]
cmp qword [rbp + 0x28], 8
cmovae rax, qword [rbp + 0x10]
mov qword [rbp - 0x60], rax
mov dword [rbp - 0x50], 1
lea rax, str.open
mov qword [rbp - 0x70], rax
mov dword [rbp - 0x7c], 0x50c
lea rcx, [rbp - 0x80]
call qword [sym.imp.SHELL32.dll_ShellExecuteExW]
mov rdx, qword [rbp + 0x28]
cmp rdx, 8
jb 0x1400e6dc7
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400e6fab
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400e6fe1
call fcn.14011460c
jmp 0x1400e6dc7
xor eax, eax
mov rcx, qword [rbp + 0x1f0]
xor rcx, rsp
call fcn.1401145b0
mov rbx, qword [rsp + 0x358]
add rsp, 0x300
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.14011c9a4
nop
call fcn.14011c9a4
int3
call fcn.14004b290
nop
call fcn.14011c9a4
nop
call fcn.14011c9a4
int3
call fcn.14004b290
nop
call fcn.14011c9a4
nop
call fcn.14004b290
nop
call fcn.14011c9a4
nop
call fcn.14011c9a4
int3
call fcn.14004e0d0
int3