Function at 0x10041bc40
Capabilities:
Terminate process

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x78
mov rax, qword [rcx + 0x18]
mov rbx, qword [rsp + 0xe0]
mov r15d, edx
mov edx, dword [rcx + 4]
mov r14d, r8d
mov r8d, dword [rax + 0x18]
mov dword [rsp + 0x40], r9d
mov r13, rcx
mov esi, edx
and esi, 8
cmp r8d, 0x7c
je 0x10041be90
jg 0x10041bd40
cmp r8d, 0x26
je 0x10041bdc0
cmp r8d, 0x3b
jne 0x10041c678
test esi, esi
je 0x10041bcb8
mov rdx, qword [rax + 8]
test rdx, rdx
je 0x10041bcab
or dword [rdx + 4], 8
mov rax, qword [rax + 0x10]
test rax, rax
je 0x10041bcb8
or dword [rax + 4], 8
mov rsi, qword [sym.bash.exe_terminating_signal]
add dword [sym.bash.exe_executing_list], 1
mov eax, dword [rsi]
test eax, eax
jne 0x10041c1a0
mov rdi, qword [sym.bash.exe_interrupt_state]
mov eax, dword [rdi]
test eax, eax
jne 0x10041c190
mov rax, qword [r13 + 0x18]
mov rcx, qword [rax + 8]
call sym.bash.exe_execute_command
mov eax, dword [rsi]
test eax, eax
jne 0x10041c180
mov eax, dword [rdi]
test eax, eax
jne 0x10041c170
mov rax, qword [r13 + 0x18]
mov r9d, dword [rsp + 0x40]
mov r8d, r14d
mov edx, r15d
mov rcx, qword [rax + 0x10]
mov qword [rsp + 0x20], rbx
call sym.bash.exe_execute_command_internal
sub dword [sym.bash.exe_executing_list], 1
mov ebp, eax
mov eax, ebp
add rsp, 0x78
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
lea ecx, [r8 - 0x120]
cmp ecx, 1
ja 0x10041c678
test r15d, r15d
jne 0x10041c1b0
mov rcx, qword [rax + 8]
add dword [sym.bash.exe_executing_list], 1
test rcx, rcx
je 0x10041bd6d
or dword [rcx + 4], 8
call sym.bash.exe_execute_command
mov ebp, eax
mov rax, qword [sym.bash.exe_terminating_signal]
mov edx, dword [rax]
test edx, edx
jne 0x10041c498
mov rax, qword [sym.bash.exe_interrupt_state]
mov eax, dword [rax]
test eax, eax
jne 0x10041c488
mov rdx, qword [r13 + 0x18]
mov eax, dword [rdx + 0x18]
cmp eax, 0x120
je 0x10041c460
cmp eax, 0x121
je 0x10041c598
sub dword [sym.bash.exe_executing_list], 1
jmp 0x10041bd28
mov rdi, qword [rax + 8]
test rdi, rdi
je 0x10041c120
mov eax, dword [rdi + 4]
mov edx, eax
or edx, 8
test esi, esi
cmovne eax, edx
mov edx, eax
or dh, 2
mov dword [rdi + 4], edx
mov edx, dword [sym.bash.exe_subshell_environment]
test edx, edx
je 0x10041c130
mov ebp, dword [sym.bash.exe_stdin_redir]
test ebp, ebp
jne 0x10041be00
or ah, 6
mov dword [rdi + 4], eax
mov qword [rsp + 0x20], rbx
mov r9d, dword [rsp + 0x40]
mov r8d, r14d
mov rcx, rdi
mov edx, 1
call sym.bash.exe_execute_command_internal
mov ebp, eax
mov rax, qword [sym.bash.exe_terminating_signal]
mov edx, dword [rax]
test edx, edx
jne 0x10041c430
mov rax, qword [sym.bash.exe_interrupt_state]
mov eax, dword [rax]
test eax, eax
jne 0x10041c420
mov eax, dword [rdi + 4]
test ah, 4
je 0x10041be4c
and ah, 0xfb
mov dword [rdi + 4], eax
mov rax, qword [r13 + 0x18]
mov rcx, qword [rax + 0x10]
test rcx, rcx
je 0x10041bd28
test esi, esi
je 0x10041be65
or dword [rcx + 4], 8
mov qword [rsp + 0xe0], rbx
mov r9d, dword [rsp + 0x40]
mov r8d, r14d
mov edx, r15d
add rsp, 0x78
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
jmp sym.bash.exe_execute_command_internal
mov ecx, 0x42
call sym.bash.exe_signal_is_trapped
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x10041c150
mov eax, dword [r13 + 4]
lea r12, [rsp + 0x58]
lea rdi, [rsp + 0x60]
mov rcx, r12
lea rsi, str.pipe_file_descriptors
mov dword [rsp + 0x48], eax
mov rax, qword [sym.bash.exe_line_number]
mov eax, dword [rax]
mov dword [sym.bash.exe_line_number_for_err_trap], eax
call sub.msys_2.0.dll_sigemptyset
mov edx, 0x14
mov rcx, r12
call sub.msys_2.0.dll_sigaddset
mov rcx, rdi
call sub.msys_2.0.dll_sigemptyset
mov r8, rdi
mov rdx, r12
mov ecx, 1
call sub.msys_2.0.dll_sigprocmask
mov eax, dword [r13 + 4]
and eax, 8
mov dword [rsp + 0x34], eax
jmp 0x10041bfa8
mov edx, dword [rsp + 0x6c]
mov rcx, qword [fcn.1004d2aa0]
call sym.bash.exe_add_unwind_protect
mov rdx, rdi
lea rcx, [0x1004146f0]
call sym.bash.exe_add_unwind_protect
mov eax, dword [rsp + 0x34]
test eax, eax
je 0x10041c100
mov rax, qword [r13 + 0x18]
mov r9d, dword [rsp + 0x6c]
mov rcx, qword [rax + 8]
test rcx, rcx
je 0x10041c1d8
or dword [rcx + 4], 8
mov qword [rsp + 0x20], r12
mov r9d, dword [rsp + 0x6c]
mov r8d, r14d
mov edx, r15d
call sym.bash.exe_execute_command_internal
mov ecx, dword [rsp + 0x6c]
mov r14d, dword [rsp + 0x68]
call fcn.1004d2aa0
mov rcx, qword [r12 + 8]
test rcx, rcx
je 0x10041bf87
call fcn.1004d2c80
mov rcx, r12
call fcn.1004d2c80
mov rcx, rsi
call sym.bash.exe_discard_unwind_frame
mov rax, qword [r13 + 0x18]
mov r13, qword [rax + 0x10]
test r13, r13
je 0x10041c4a8
cmp dword [r13], 6
jne 0x10041c1f0
mov rax, qword [r13 + 0x18]
test rax, rax
je 0x10041c1f0
cmp dword [rax + 0x18], 0x7c
jne 0x10041c1f0
lea rcx, [rsp + 0x68]
call sub.msys_2.0.dll_pipe
test eax, eax
js 0x10041c550
mov eax, dword [rsp + 0x68]
mov ebp, dword [rbx]
mov ecx, 0x10
lea edx, [rax + 8]
cmp eax, ebp
cmovge ebp, edx
call sym.bash.exe_xmalloc
mov dword [rax], ebp
mov r12, rax
test ebp, ebp
jne 0x10041c0d0
mov qword [rax + 8], 0
xor edx, edx
mov r8d, dword [rbx]
mov rcx, qword [rbx + 8]
call sym.bash.exe_xbcopy
movsxd rax, dword [rsp + 0x68]
mov rdx, qword [r12 + 8]
mov rcx, rsi
mov byte [rdx + rax], 1
call sym.bash.exe_begin_unwind_frame
mov rdx, r12
lea rcx, [sym.bash.exe_dispose_fd_bitmap]
call sym.bash.exe_add_unwind_protect
mov rdx, r12
lea rcx, [sym.bash.exe_close_fd_bitmap]
call sym.bash.exe_add_unwind_protect
test r14d, r14d
js 0x10041bf10
mov rcx, qword [fcn.1004d2aa0]
mov edx, r14d
call sym.bash.exe_add_unwind_protect
mov edx, dword [rsp + 0x6c]
mov rcx, qword [fcn.1004d2aa0]
call sym.bash.exe_add_unwind_protect
mov rdx, rdi
lea rcx, [0x1004146f0]
call sym.bash.exe_add_unwind_protect
mov r11d, dword [rsp + 0x34]
test r11d, r11d
je 0x10041c110
mov rax, qword [r13 + 0x18]
mov r9d, dword [rsp + 0x6c]
mov rcx, qword [rax + 8]
test rcx, rcx
je 0x10041c400
or dword [rcx + 4], 8
mov qword [rsp + 0x20], r12
mov r9d, dword [rsp + 0x6c]
mov r8d, r14d
mov edx, r15d
call sym.bash.exe_execute_command_internal
mov ecx, r14d
call fcn.1004d2aa0
jmp 0x10041bf6a
movsxd r8, ebp
mov rcx, r8
mov qword [rsp + 0x38], r8
call sym.bash.exe_xmalloc
mov r8, qword [rsp + 0x38]
xor edx, edx
mov qword [r12 + 8], rax
mov rcx, rax
call fcn.1004d3000
mov rdx, qword [r12 + 8]
jmp 0x10041c00b
mov rax, qword [r13 + 0x18]
mov rcx, qword [rax + 8]
jmp 0x10041bf55
mov rax, qword [r13 + 0x18]
mov rcx, qword [rax + 8]
jmp 0x10041c0aa
xor ebp, ebp
jmp 0x10041bd28
mov rdx, qword [sym.bash.exe_job_control]
mov r12d, dword [rdx]
test r12d, r12d
jne 0x10041be00
jmp 0x10041bdf0
mov ecx, 0x42
call sym.bash.exe_signal_is_ignored
test eax, eax
sete al
movzx eax, al
mov dword [rsp + 0x44], eax
jmp 0x10041bea6
call sym.bash.exe_throw_to_top_level
jmp 0x10041bd02
mov ecx, dword [rsi]
call sym.bash.exe_termsig_handler
jmp 0x10041bcf8
call sym.bash.exe_throw_to_top_level
jmp 0x10041bce1
mov ecx, dword [rsi]
call sym.bash.exe_termsig_handler
jmp 0x10041bcd0
or edx, 2
mov r9d, dword [rsp + 0x40]
mov r8d, r14d
mov rcx, r13
mov dword [r13 + 4], edx
mov edx, 1
mov qword [rsp + 0xe0], rbx
jmp 0x10041be78
mov qword [rsp + 0x20], r12
mov r8d, r14d
mov edx, r15d
xor ecx, ecx
call sym.bash.exe_execute_command_internal
jmp 0x10041bf6a
mov rax, qword [sym.bash.exe_last_made_pid]
mov r10d, dword [rsp + 0x34]
mov r12d, dword [rax]
test r10d, r10d
je 0x10041c209
or dword [r13 + 4], 8
lea rsi, str.lastpipe_exec
mov rcx, rsi
call sym.bash.exe_begin_unwind_frame
mov r9d, dword [sym.bash.exe_lastpipe_opt]
test r9d, r9d
je 0x10041c2b0
mov rax, qword [sym.bash.exe_job_control]
mov edx, r15d
or edx, dword [rax]
jne 0x10041c2b0
cmp dword [rsp + 0x40], 0xffffffff
jne 0x10041c2b0
test r14d, r14d
jle 0x10041c2b0
xor ecx, ecx
mov r8d, 0xffffffff
mov edx, 1
call sym.bash.exe_move_to_high_fd
test eax, eax
mov dword [rsp + 0x34], eax
jg 0x10041c5a5
test r13, r13
je 0x10041c62f
or dword [r13 + 4], 0x2000
nop dword [rax]
mov rcx, qword [fcn.1004d2aa0]
mov edx, r14d
call sym.bash.exe_add_unwind_protect
mov qword [rsp + 0x20], rbx
mov r8d, r14d
mov edx, r15d
mov r9d, dword [rsp + 0x40]
mov rcx, r13
call sym.bash.exe_execute_command_internal
mov ebp, eax
mov ecx, r14d
xor ebx, ebx
call fcn.1004d2aa0
jmp 0x10041c2d1
test r14d, r14d
jns 0x10041c278
mov qword [rsp + 0x20], rbx
mov r9d, dword [rsp + 0x40]
mov r8d, r14d
mov edx, r15d
mov rcx, r13
xor ebx, ebx
call sym.bash.exe_execute_command_internal
mov ebp, eax
mov rdx, rdi
xor r8d, r8d
xor ecx, ecx
call sub.msys_2.0.dll_sigprocmask
mov rax, qword [sym.bash.exe_terminating_signal]
mov edx, dword [rax]
test edx, edx
jne 0x10041c450
mov rax, qword [sym.bash.exe_interrupt_state]
mov eax, dword [rax]
test eax, eax
jne 0x10041c440
test ebx, ebx
je 0x10041c365
mov edi, dword [rsp + 0x4c]
test edi, edi
js 0x10041c528
mov rbx, qword [sym.bash.exe_js]
cmp dword [rbx + 0x1c], edi
jg 0x10041c4c0
xor edx, edx
mov ecx, r12d
call sym.bash.exe_wait_for_single_pid
mov edi, dword [rsp + 0x4c]
cmp dword [rbx + 0x1c], edi
jle 0x10041c532
mov rcx, qword [sym.bash.exe_jobs]
movsxd rdx, edi
mov rcx, qword [rcx]
cmp qword [rcx + rdx*8], 0
je 0x10041c532
mov ecx, edi
call sym.bash.exe_job_exit_status
mov ebp, eax
nop dword [rax + rax]
call sym.bash.exe_unfreeze_jobs_list
mov rcx, rsi
call sym.bash.exe_discard_unwind_frame
test r15d, r15d
jne 0x10041c120
mov ecx, dword [rsp + 0x44]
test ecx, ecx
je 0x10041c3c1
test byte [rsp + 0x48], 0xc
jne 0x10041bd28
test ebp, ebp
je 0x10041c3c1
mov rax, qword [sym.bash.exe_line_number]
mov rdi, qword [sym.bash.exe_line_number]
mov dword [sym.bash.exe_last_command_exit_value], ebp
mov eax, dword [rax]
mov dword [rsp + 0x68], eax
mov eax, dword [sym.bash.exe_line_number_for_err_trap]
mov dword [rdi], eax
call sym.bash.exe_run_error_trap
mov eax, dword [rsp + 0x68]
mov rdi, qword [sym.bash.exe_line_number]
mov dword [rdi], eax
test byte [rsp + 0x48], 0xc
jne 0x10041bd28
mov rax, qword [sym.bash.exe_exit_immediately_on_error]
mov edx, dword [rax]
test edx, edx
je 0x10041bd28
test ebp, ebp
je 0x10041c120
mov dword [sym.bash.exe_last_command_exit_value], ebp
call sym.bash.exe_run_pending_traps
mov ecx, 4
call sym.bash.exe_jump_to_top_level
nop word [rax + rax]
mov qword [rsp + 0x20], r12
mov r8d, r14d
mov edx, r15d
xor ecx, ecx
call sym.bash.exe_execute_command_internal
jmp 0x10041c0bf
call sym.bash.exe_throw_to_top_level
jmp 0x10041be3e
mov ecx, dword [rax]
call sym.bash.exe_termsig_handler
jmp 0x10041be2d
call sym.bash.exe_throw_to_top_level
jmp 0x10041c300
mov ecx, dword [rax]
call sym.bash.exe_termsig_handler
jmp 0x10041c2ef
test ebp, ebp
jne 0x10041bdb3
mov rcx, qword [rdx + 0x10]
test esi, esi
je 0x10041c479
test rcx, rcx
je 0x10041c479
or dword [rcx + 4], 8
call sym.bash.exe_execute_command
mov ebp, eax
jmp 0x10041bdb3
call sym.bash.exe_throw_to_top_level
jmp 0x10041bd96
mov ecx, dword [rax]
call sym.bash.exe_termsig_handler
jmp 0x10041bd85
mov rax, qword [sym.bash.exe_last_made_pid]
mov r12d, dword [rax]
jmp 0x10041c209
mov rdx, qword [sym.bash.exe_jobs]
movsxd rax, edi
mov rdx, qword [rdx]
cmp qword [rdx + rax*8], 0
je 0x10041c320
mov r14, qword [sym.bash.exe_the_printed_command_except_trap]
mov rax, qword [sym.bash.exe_dollar_dollar_pid]
mov rcx, r14
mov r13d, dword [rax]
call sub.msys_2.0.dll_strlen
lea rcx, [rax + 1]
call sym.bash.exe_xmalloc
mov rdx, r14
mov rcx, rax
call fcn.1004d3420
mov r9d, edi
mov r8d, ebp
mov edx, r13d
mov rcx, rax
call sym.bash.exe_append_process
mov ecx, r12d
call sym.bash.exe_wait_for
jmp 0x10041c32a
xor edx, edx
mov ecx, r12d
call sym.bash.exe_wait_for_single_pid
mov rdx, qword [sym.bash.exe_pipefail_opt]
or eax, ebp
mov r8d, dword [rdx]
test r8d, r8d
cmovne ebp, eax
jmp 0x10041c360
lea rcx, str.pipe_error
mov ebp, 1
call sym.bash.exe_libintl_gettext
mov rcx, rax
call sym.bash.exe_sys_error
call sym.bash.exe_terminate_current_pipeline
call sym.bash.exe_kill_current_pipeline
xor r8d, r8d
mov rdx, rdi
xor ecx, ecx
call sub.msys_2.0.dll_sigprocmask
mov dword [sym.bash.exe_last_command_exit_value], 1
call sym.bash.exe_throw_to_top_level
jmp 0x10041c36d
test ebp, ebp
je 0x10041bdb3
jmp 0x10041c468
mov edx, 0xffffffff
mov ecx, r14d
call fcn.100415b10
mov edx, dword [rsp + 0x34]
lea rcx, [0x100414700]
call sym.bash.exe_add_unwind_protect
call sym.bash.exe_freeze_jobs_list
xor edx, edx
xor ecx, ecx
call sym.bash.exe_stop_pipeline
lea rcx, [0x1004155c0]
mov edx, eax
mov dword [rsp + 0x4c], eax
call sym.bash.exe_add_unwind_protect
test r13, r13
mov r10d, dword [rsp + 0x34]
je 0x10041c65c
or dword [r13 + 4], 0x2000
mov r9d, 0xffffffff
mov r8d, 0xffffffff
xor edx, edx
mov qword [rsp + 0x20], rbx
mov rcx, r13
call sym.bash.exe_execute_command_internal
mov ecx, dword [rsp + 0x34]
xor edx, edx
mov ebx, 1
mov ebp, eax
call sub.msys_2.0.dll_dup2
mov ecx, dword [rsp + 0x34]
call fcn.1004d2aa0
jmp 0x10041c2d1
mov rcx, qword [fcn.1004d2aa0]
mov edx, r14d
call sym.bash.exe_add_unwind_protect
mov qword [rsp + 0x20], rbx
mov r8d, r14d
xor edx, edx
mov r9d, 0xffffffff
xor ecx, ecx
call sym.bash.exe_execute_command_internal
mov ebp, eax
jmp 0x10041c2a1
mov dword [rsp + 0x34], r10d
mov r9d, 0xffffffff
xor edx, edx
xor ecx, ecx
mov qword [rsp + 0x20], rbx
mov r8d, 0xffffffff
jmp 0x10041c60a
lea rcx, str.execute_connection
xor r9d, r9d
mov edx, 2
call sym.bash.exe_command_error
mov ecx, 2
call sym.bash.exe_jump_to_top_level
nop
nop word [rax + rax]