	.file	"746444.c"
	.intel_syntax noprefix
	.text
	.globl	input
	.bss
	.align 8
	.type	input, @object
	.size	input, 8
input:
	.zero	8
	.globl	input1
	.align 8
	.type	input1, @object
	.size	input1, 8
input1:
	.zero	8
	.globl	exitflag
	.align 4
	.type	exitflag, @object
	.size	exitflag, 4
exitflag:
	.zero	4
	.globl	filepid
	.align 4
	.type	filepid, @object
	.size	filepid, 4
filepid:
	.zero	4
	.globl	fd
	.align 8
	.type	fd, @object
	.size	fd, 8
fd:
	.zero	8
	.globl	cwd
	.align 32
	.type	cwd, @object
	.size	cwd, 1000
cwd:
	.zero	1000
	.globl	argval
	.align 32
	.type	argval, @object
	.size	argval, 80
argval:
	.zero	80
	.globl	argcount
	.align 4
	.type	argcount, @object
	.size	argcount, 4
argcount:
	.zero	4
	.globl	inBackground
	.align 4
	.type	inBackground, @object
	.size	inBackground, 4
inBackground:
	.zero	4
	.globl	externalIn
	.align 4
	.type	externalIn, @object
	.size	externalIn, 4
externalIn:
	.zero	4
	.globl	externalOut
	.align 4
	.type	externalOut, @object
	.size	externalOut, 4
externalOut:
	.zero	4
	.globl	inputfile
	.align 32
	.type	inputfile, @object
	.size	inputfile, 100
inputfile:
	.zero	100
	.globl	outputfile
	.align 32
	.type	outputfile, @object
	.size	outputfile, 100
outputfile:
	.zero	100
	.text
	.globl	stopSignal
	.type	stopSignal, @function
stopSignal:
.LFB6:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	eax, DWORD PTR filepid[rip]
	test	eax, eax
	je	.L3
	mov	eax, DWORD PTR filepid[rip]
	mov	DWORD PTR -4[rbp], eax
	mov	eax, DWORD PTR filepid[rip]
	mov	esi, 2
	mov	edi, eax
	call	kill@PLT
	mov	DWORD PTR filepid[rip], 0
.L3:
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE6:
	.size	stopSignal, .-stopSignal
	.section	.rodata
.LC0:
	.string	"\033[0m"
.LC1:
	.string	"%s%s ~> "
.LC2:
	.string	"exit"
.LC3:
	.string	"z"
.LC4:
	.string	"screenfetch"
.LC5:
	.string	"about"
.LC6:
	.string	"pwd"
.LC7:
	.string	"cd"
.LC8:
	.string	"mkdir"
.LC9:
	.string	"rmdir"
.LC10:
	.string	"clear"
.LC11:
	.string	"ls"
.LC12:
	.string	"-l"
.LC13:
	.string	"cp"
	.align 8
.LC14:
	.string	"+--- Error in cp : insufficient parameters"
	.text
	.globl	main
	.type	main, @function
main:
.LFB7:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 80
	mov	DWORD PTR -68[rbp], edi
	mov	QWORD PTR -80[rbp], rsi
	lea	rsi, stopSignal[rip]
	mov	edi, 2
	call	signal@PLT
	lea	rdi, fd[rip]
	call	pipe@PLT
	mov	DWORD PTR -52[rbp], eax
	mov	eax, 0
	call	function_clear
	mov	eax, 0
	call	screenfetch
	mov	esi, 0
	lea	rdi, cwd[rip]
	call	function_pwd
	jmp	.L5
.L21:
	mov	DWORD PTR externalIn[rip], 0
	mov	DWORD PTR externalOut[rip], 0
	mov	DWORD PTR inBackground[rip], 0
	lea	rdx, cwd[rip]
	lea	rsi, .LC0[rip]
	lea	rdi, .LC1[rip]
	mov	eax, 0
	call	printf@PLT
	mov	eax, 0
	call	getInput
	mov	rax, QWORD PTR argval[rip]
	lea	rsi, .LC2[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	je	.L6
	mov	rax, QWORD PTR argval[rip]
	lea	rsi, .LC3[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L7
.L6:
	mov	eax, 0
	call	function_exit
	jmp	.L5
.L7:
	mov	rax, QWORD PTR argval[rip]
	lea	rsi, .LC4[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L8
	mov	eax, DWORD PTR inBackground[rip]
	test	eax, eax
	jne	.L8
	mov	eax, 0
	call	screenfetch
	jmp	.L5
.L8:
	mov	rax, QWORD PTR argval[rip]
	lea	rsi, .LC5[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L9
	mov	eax, DWORD PTR inBackground[rip]
	test	eax, eax
	jne	.L9
	mov	eax, 0
	call	about
	jmp	.L5
.L9:
	mov	rax, QWORD PTR argval[rip]
	lea	rsi, .LC6[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L10
	mov	eax, DWORD PTR inBackground[rip]
	test	eax, eax
	jne	.L10
	mov	esi, 1
	lea	rdi, cwd[rip]
	call	function_pwd
	jmp	.L5
.L10:
	mov	rax, QWORD PTR argval[rip]
	lea	rsi, .LC7[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L11
	mov	eax, DWORD PTR inBackground[rip]
	test	eax, eax
	jne	.L11
	mov	rax, QWORD PTR argval[rip+8]
	mov	QWORD PTR -48[rbp], rax
	mov	rax, QWORD PTR -48[rbp]
	mov	rdi, rax
	call	function_cd
	jmp	.L5
.L11:
	mov	rax, QWORD PTR argval[rip]
	lea	rsi, .LC8[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L12
	mov	eax, DWORD PTR inBackground[rip]
	test	eax, eax
	jne	.L12
	mov	rax, QWORD PTR argval[rip+8]
	mov	QWORD PTR -40[rbp], rax
	mov	rax, QWORD PTR -40[rbp]
	mov	rdi, rax
	call	function_mkdir
	jmp	.L5
.L12:
	mov	rax, QWORD PTR argval[rip]
	lea	rsi, .LC9[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L13
	mov	eax, DWORD PTR inBackground[rip]
	test	eax, eax
	jne	.L13
	mov	rax, QWORD PTR argval[rip+8]
	mov	QWORD PTR -32[rbp], rax
	mov	rax, QWORD PTR -32[rbp]
	mov	rdi, rax
	call	function_rmdir
	jmp	.L5
.L13:
	mov	rax, QWORD PTR argval[rip]
	lea	rsi, .LC10[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L14
	mov	eax, DWORD PTR inBackground[rip]
	test	eax, eax
	jne	.L14
	mov	eax, 0
	call	function_clear
	jmp	.L5
.L14:
	mov	rax, QWORD PTR argval[rip]
	lea	rsi, .LC11[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L15
	mov	eax, DWORD PTR inBackground[rip]
	test	eax, eax
	jne	.L15
	mov	rax, QWORD PTR argval[rip+8]
	mov	QWORD PTR -24[rbp], rax
	mov	rax, QWORD PTR -24[rbp]
	lea	rsi, .LC12[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L16
	mov	eax, DWORD PTR inBackground[rip]
	test	eax, eax
	jne	.L16
	mov	eax, 0
	call	function_lsl
	jmp	.L17
.L16:
	mov	eax, 0
	call	function_ls
.L17:
	jmp	.L5
.L15:
	mov	rax, QWORD PTR argval[rip]
	lea	rsi, .LC13[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L18
	mov	eax, DWORD PTR inBackground[rip]
	test	eax, eax
	jne	.L18
	mov	rax, QWORD PTR argval[rip+8]
	mov	QWORD PTR -16[rbp], rax
	mov	rax, QWORD PTR argval[rip+16]
	mov	QWORD PTR -8[rbp], rax
	mov	eax, DWORD PTR argcount[rip]
	cmp	eax, 2
	jle	.L19
	mov	rax, QWORD PTR -16[rbp]
	movzx	eax, BYTE PTR [rax]
	test	al, al
	je	.L19
	mov	rax, QWORD PTR -8[rbp]
	movzx	eax, BYTE PTR [rax]
	test	al, al
	je	.L19
	mov	rdx, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -16[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	function_cp
	jmp	.L20
.L19:
	lea	rdi, .LC14[rip]
	call	puts@PLT
.L20:
	jmp	.L5
.L18:
	mov	eax, 0
	call	executable
.L5:
	mov	eax, DWORD PTR exitflag[rip]
	test	eax, eax
	je	.L21
	mov	eax, 0
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE7:
	.size	main, .-main
	.section	.rodata
.LC15:
	.string	"&"
.LC16:
	.string	" \t\n"
	.text
	.globl	getInput
	.type	getInput, @function
getInput:
.LFB8:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 24
	.cfi_offset 3, -24
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -24[rbp], rax
	xor	eax, eax
	mov	rax, QWORD PTR stdout[rip]
	mov	rdi, rax
	call	fflush@PLT
	mov	QWORD PTR input[rip], 0
	mov	QWORD PTR -32[rbp], 0
	mov	rdx, QWORD PTR stdin[rip]
	lea	rax, -32[rbp]
	mov	rsi, rax
	lea	rdi, input[rip]
	call	getline@PLT
	mov	rax, QWORD PTR input[rip]
	mov	rdi, rax
	call	strlen@PLT
	mov	rdi, rax
	call	malloc@PLT
	mov	QWORD PTR input1[rip], rax
	mov	rax, QWORD PTR input[rip]
	mov	rdi, rax
	call	strlen@PLT
	mov	rdx, rax
	mov	rcx, QWORD PTR input[rip]
	mov	rax, QWORD PTR input1[rip]
	mov	rsi, rcx
	mov	rdi, rax
	call	strncpy@PLT
	mov	DWORD PTR argcount[rip], 0
	mov	DWORD PTR inBackground[rip], 0
	jmp	.L24
.L27:
	mov	eax, DWORD PTR argcount[rip]
	add	eax, 1
	mov	DWORD PTR argcount[rip], eax
	mov	eax, DWORD PTR argcount[rip]
	sub	eax, 1
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, argval[rip]
	mov	rax, QWORD PTR [rdx+rax]
	lea	rsi, .LC15[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L24
	mov	DWORD PTR inBackground[rip], 1
	jmp	.L23
.L24:
	mov	ebx, DWORD PTR argcount[rip]
	lea	rsi, .LC16[rip]
	lea	rdi, input[rip]
	call	strsep@PLT
	movsx	rdx, ebx
	lea	rcx, 0[0+rdx*8]
	lea	rdx, argval[rip]
	mov	QWORD PTR [rcx+rdx], rax
	movsx	rax, ebx
	lea	rdx, 0[0+rax*8]
	lea	rax, argval[rip]
	mov	rax, QWORD PTR [rdx+rax]
	test	rax, rax
	je	.L26
	mov	eax, DWORD PTR argcount[rip]
	cmp	eax, 8
	jle	.L27
.L26:
	mov	rax, QWORD PTR input[rip]
	mov	rdi, rax
	call	free@PLT
.L23:
	mov	rax, QWORD PTR -24[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L28
	call	__stack_chk_fail@PLT
.L28:
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE8:
	.size	getInput, .-getInput
	.section	.rodata
.LC17:
	.string	"PATH"
.LC18:
	.string	":\r\n"
.LC19:
	.string	"execvp : %s\n"
	.align 8
.LC20:
	.string	"+--- Error in running executable "
	.text
	.globl	runprocess
	.type	runprocess, @function
runprocess:
.LFB9:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 2080
	mov	QWORD PTR -2056[rbp], rdi
	mov	QWORD PTR -2064[rbp], rsi
	mov	DWORD PTR -2068[rbp], edx
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	rdx, QWORD PTR -2064[rbp]
	mov	rax, QWORD PTR -2056[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	execvp@PLT
	mov	DWORD PTR -2036[rbp], eax
	lea	rdi, .LC17[rip]
	call	getenv@PLT
	mov	QWORD PTR -2024[rbp], rax
	mov	rdx, QWORD PTR -2024[rbp]
	lea	rax, -2016[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	strcpy@PLT
	lea	rax, -2016[rbp]
	mov	rdi, rax
	call	strlen@PLT
	mov	rdx, rax
	lea	rax, -2016[rbp]
	add	rax, rdx
	mov	WORD PTR [rax], 58
	lea	rax, -2016[rbp]
	lea	rsi, cwd[rip]
	mov	rdi, rax
	call	strcat@PLT
	lea	rax, -2016[rbp]
	lea	rsi, .LC18[rip]
	mov	rdi, rax
	call	strtok@PLT
	mov	QWORD PTR -2032[rbp], rax
	jmp	.L30
.L32:
	mov	rdx, QWORD PTR -2032[rbp]
	lea	rax, -1008[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	strcpy@PLT
	lea	rax, -1008[rbp]
	mov	rdi, rax
	call	strlen@PLT
	mov	rdx, rax
	lea	rax, -1008[rbp]
	add	rax, rdx
	mov	WORD PTR [rax], 47
	mov	rdx, QWORD PTR -2056[rbp]
	lea	rax, -1008[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	strcat@PLT
	lea	rax, -1008[rbp]
	mov	rsi, rax
	lea	rdi, .LC19[rip]
	mov	eax, 0
	call	printf@PLT
	mov	rdx, QWORD PTR -2064[rbp]
	lea	rax, -1008[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	execvp@PLT
	mov	DWORD PTR -2036[rbp], eax
	cmp	DWORD PTR -2036[rbp], -1
	jne	.L31
	lea	rdi, .LC20[rip]
	call	perror@PLT
	mov	edi, 0
	call	exit@PLT
.L31:
	lea	rsi, .LC18[rip]
	mov	edi, 0
	call	strtok@PLT
	mov	QWORD PTR -2032[rbp], rax
.L30:
	cmp	QWORD PTR -2032[rbp], 0
	jne	.L32
	nop
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L33
	call	__stack_chk_fail@PLT
.L33:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE9:
	.size	runprocess, .-runprocess
	.section	.rodata
	.align 8
.LC21:
	.string	"+--- Error in executable : input file "
	.text
	.globl	pipe_dup
	.type	pipe_dup, @function
pipe_dup:
.LFB10:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 64
	mov	DWORD PTR -52[rbp], edi
	mov	QWORD PTR -64[rbp], rsi
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	DWORD PTR -32[rbp], 0
	mov	eax, DWORD PTR externalIn[rip]
	test	eax, eax
	je	.L35
	mov	esi, 0
	lea	rdi, inputfile[rip]
	mov	eax, 0
	call	open@PLT
	mov	DWORD PTR -32[rbp], eax
	cmp	DWORD PTR -32[rbp], 0
	jns	.L35
	lea	rdi, .LC21[rip]
	call	perror@PLT
.L35:
	mov	DWORD PTR -28[rbp], 1
	jmp	.L36
.L40:
	lea	rax, -16[rbp]
	mov	rdi, rax
	call	pipe@PLT
	call	fork@PLT
	mov	DWORD PTR -20[rbp], eax
	cmp	DWORD PTR -20[rbp], 0
	jne	.L37
	cmp	DWORD PTR -32[rbp], 0
	je	.L38
	mov	eax, DWORD PTR -32[rbp]
	mov	esi, 0
	mov	edi, eax
	call	dup2@PLT
	mov	eax, DWORD PTR -32[rbp]
	mov	edi, eax
	call	close@PLT
.L38:
	mov	eax, DWORD PTR -12[rbp]
	cmp	eax, 1
	je	.L39
	mov	eax, DWORD PTR -12[rbp]
	mov	esi, 1
	mov	edi, eax
	call	dup2@PLT
	mov	eax, DWORD PTR -12[rbp]
	mov	edi, eax
	call	close@PLT
.L39:
	mov	eax, DWORD PTR -28[rbp]
	cdqe
	imul	rax, rax, 808
	lea	rdx, -808[rax]
	mov	rax, QWORD PTR -64[rbp]
	add	rax, rdx
	mov	edx, DWORD PTR 800[rax]
	mov	eax, DWORD PTR -28[rbp]
	cdqe
	imul	rax, rax, 808
	lea	rcx, -808[rax]
	mov	rax, QWORD PTR -64[rbp]
	add	rax, rcx
	mov	rcx, rax
	mov	eax, DWORD PTR -28[rbp]
	cdqe
	imul	rax, rax, 808
	lea	rsi, -808[rax]
	mov	rax, QWORD PTR -64[rbp]
	add	rax, rsi
	mov	rax, QWORD PTR [rax]
	mov	rsi, rcx
	mov	rdi, rax
	call	runprocess
	mov	edi, 0
	call	exit@PLT
.L37:
	lea	rax, -36[rbp]
	mov	rdi, rax
	call	wait@PLT
	mov	eax, DWORD PTR -12[rbp]
	mov	edi, eax
	call	close@PLT
	mov	eax, DWORD PTR -16[rbp]
	mov	DWORD PTR -32[rbp], eax
	add	DWORD PTR -28[rbp], 1
.L36:
	mov	eax, DWORD PTR -28[rbp]
	cmp	eax, DWORD PTR -52[rbp]
	jl	.L40
	sub	DWORD PTR -28[rbp], 1
	cmp	DWORD PTR -32[rbp], 0
	je	.L41
	mov	eax, DWORD PTR -32[rbp]
	mov	esi, 0
	mov	edi, eax
	call	dup2@PLT
.L41:
	mov	eax, DWORD PTR externalOut[rip]
	test	eax, eax
	je	.L42
	mov	edx, 420
	mov	esi, 65
	lea	rdi, outputfile[rip]
	mov	eax, 0
	call	open@PLT
	mov	DWORD PTR -24[rbp], eax
	mov	eax, DWORD PTR -24[rbp]
	mov	esi, 1
	mov	edi, eax
	call	dup2@PLT
.L42:
	mov	eax, DWORD PTR -28[rbp]
	cdqe
	imul	rdx, rax, 808
	mov	rax, QWORD PTR -64[rbp]
	add	rax, rdx
	mov	edx, DWORD PTR 800[rax]
	mov	eax, DWORD PTR -28[rbp]
	cdqe
	imul	rcx, rax, 808
	mov	rax, QWORD PTR -64[rbp]
	add	rax, rcx
	mov	rcx, rax
	mov	eax, DWORD PTR -28[rbp]
	cdqe
	imul	rsi, rax, 808
	mov	rax, QWORD PTR -64[rbp]
	add	rax, rsi
	mov	rax, QWORD PTR [rax]
	mov	rsi, rcx
	mov	rdi, rax
	call	runprocess
	nop
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L43
	call	__stack_chk_fail@PLT
.L43:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE10:
	.size	pipe_dup, .-pipe_dup
	.section	.rodata
.LC22:
	.string	"|"
.LC23:
	.string	"<"
.LC24:
	.string	">"
	.align 8
.LC25:
	.string	"+--- Process running in inBackground. PID:%d\n"
	.text
	.globl	executable
	.type	executable, @function
executable:
.LFB11:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	lea	r11, -77824[rsp]
.LPSRL0:
	sub	rsp, 4096
	or	DWORD PTR [rsp], 0
	cmp	rsp, r11
	jne	.LPSRL0
	sub	rsp, 3024
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	DWORD PTR -80832[rbp], 0
	mov	DWORD PTR -80828[rbp], 1
	lea	rsi, .LC16[rip]
	lea	rdi, input1[rip]
	call	strsep@PLT
	mov	QWORD PTR -80824[rbp], rax
	mov	rax, QWORD PTR -80824[rbp]
	mov	QWORD PTR -80816[rbp], rax
	jmp	.L45
.L51:
	lea	rsi, .LC16[rip]
	lea	rdi, input1[rip]
	call	strsep@PLT
	mov	QWORD PTR -80824[rbp], rax
	cmp	QWORD PTR -80824[rbp], 0
	jne	.L46
	mov	eax, DWORD PTR -80828[rbp]
	lea	edx, 1[rax]
	mov	DWORD PTR -80828[rbp], edx
	movsx	rcx, eax
	mov	eax, DWORD PTR -80832[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rsi, 0[0+rax*4]
	add	rax, rsi
	sal	rax, 2
	add	rax, rdx
	lea	rdx, [rax+rcx]
	mov	rax, QWORD PTR -80824[rbp]
	mov	QWORD PTR -80816[rbp+rdx*8], rax
	jmp	.L45
.L46:
	mov	rax, QWORD PTR -80824[rbp]
	lea	rsi, .LC22[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L47
	mov	eax, DWORD PTR -80828[rbp]
	lea	edx, 1[rax]
	mov	DWORD PTR -80828[rbp], edx
	movsx	rcx, eax
	mov	eax, DWORD PTR -80832[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rsi, 0[0+rax*4]
	add	rax, rsi
	sal	rax, 2
	add	rax, rdx
	add	rax, rcx
	mov	QWORD PTR -80816[rbp+rax*8], 0
	mov	eax, DWORD PTR -80832[rbp]
	cdqe
	imul	rax, rax, 808
	add	rax, rbp
	lea	rdx, -80016[rax]
	mov	eax, DWORD PTR -80828[rbp]
	mov	DWORD PTR [rdx], eax
	mov	DWORD PTR -80828[rbp], 0
	add	DWORD PTR -80832[rbp], 1
	jmp	.L45
.L47:
	mov	rax, QWORD PTR -80824[rbp]
	lea	rsi, .LC23[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L48
	mov	DWORD PTR externalIn[rip], 1
	lea	rsi, .LC16[rip]
	lea	rdi, input1[rip]
	call	strsep@PLT
	mov	QWORD PTR -80824[rbp], rax
	mov	rax, QWORD PTR -80824[rbp]
	mov	rsi, rax
	lea	rdi, inputfile[rip]
	call	strcpy@PLT
	jmp	.L45
.L48:
	mov	rax, QWORD PTR -80824[rbp]
	lea	rsi, .LC24[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L49
	mov	DWORD PTR externalOut[rip], 1
	lea	rsi, .LC16[rip]
	lea	rdi, input1[rip]
	call	strsep@PLT
	mov	QWORD PTR -80824[rbp], rax
	mov	rax, QWORD PTR -80824[rbp]
	mov	rsi, rax
	lea	rdi, outputfile[rip]
	call	strcpy@PLT
	jmp	.L45
.L49:
	mov	rax, QWORD PTR -80824[rbp]
	lea	rsi, .LC15[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L50
	mov	DWORD PTR inBackground[rip], 1
	jmp	.L45
.L50:
	mov	eax, DWORD PTR -80828[rbp]
	lea	edx, 1[rax]
	mov	DWORD PTR -80828[rbp], edx
	movsx	rcx, eax
	mov	eax, DWORD PTR -80832[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rsi, 0[0+rax*4]
	add	rax, rsi
	sal	rax, 2
	add	rax, rdx
	lea	rdx, [rax+rcx]
	mov	rax, QWORD PTR -80824[rbp]
	mov	QWORD PTR -80816[rbp+rdx*8], rax
.L45:
	cmp	QWORD PTR -80824[rbp], 0
	jne	.L51
	mov	eax, DWORD PTR -80828[rbp]
	lea	edx, 1[rax]
	mov	DWORD PTR -80828[rbp], edx
	movsx	rcx, eax
	mov	eax, DWORD PTR -80832[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rsi, 0[0+rax*4]
	add	rax, rsi
	sal	rax, 2
	add	rax, rdx
	add	rax, rcx
	mov	QWORD PTR -80816[rbp+rax*8], 0
	mov	eax, DWORD PTR -80832[rbp]
	cdqe
	imul	rax, rax, 808
	add	rax, rbp
	lea	rdx, -80016[rax]
	mov	eax, DWORD PTR -80828[rbp]
	mov	DWORD PTR [rdx], eax
	add	DWORD PTR -80832[rbp], 1
	call	fork@PLT
	mov	DWORD PTR filepid[rip], eax
	mov	eax, DWORD PTR filepid[rip]
	test	eax, eax
	jne	.L52
	lea	rdx, -80816[rbp]
	mov	eax, DWORD PTR -80832[rbp]
	mov	rsi, rdx
	mov	edi, eax
	call	pipe_dup
	jmp	.L53
.L52:
	mov	eax, DWORD PTR inBackground[rip]
	test	eax, eax
	jne	.L54
	mov	eax, DWORD PTR filepid[rip]
	lea	rcx, -80836[rbp]
	mov	edx, 0
	mov	rsi, rcx
	mov	edi, eax
	call	waitpid@PLT
	jmp	.L53
.L54:
	mov	eax, DWORD PTR filepid[rip]
	mov	esi, eax
	lea	rdi, .LC25[rip]
	mov	eax, 0
	call	printf@PLT
.L53:
	mov	DWORD PTR filepid[rip], 0
	mov	rax, QWORD PTR input1[rip]
	mov	rdi, rax
	call	free@PLT
	nop
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L55
	call	__stack_chk_fail@PLT
.L55:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE11:
	.size	executable, .-executable
	.section	.rodata
.LC26:
	.string	"r"
.LC27:
	.string	"+--- Error in cp file1 "
	.align 8
.LC29:
	.string	"+--- Error in cp : %s is more recently updated than %s\n"
.LC30:
	.string	"ab+"
.LC31:
	.string	"w+"
.LC32:
	.string	"Error in cp file2 "
.LC33:
	.string	"Error in cp access "
	.text
	.globl	function_cp
	.type	function_cp, @function
function_cp:
.LFB12:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 352
	mov	QWORD PTR -344[rbp], rdi
	mov	QWORD PTR -352[rbp], rsi
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	rax, QWORD PTR -344[rbp]
	lea	rsi, .LC26[rip]
	mov	rdi, rax
	call	fopen@PLT
	mov	QWORD PTR -320[rbp], rax
	cmp	QWORD PTR -320[rbp], 0
	jne	.L57
	lea	rdi, .LC27[rip]
	call	perror@PLT
	jmp	.L56
.L57:
	mov	rax, QWORD PTR -352[rbp]
	lea	rsi, .LC26[rip]
	mov	rdi, rax
	call	fopen@PLT
	mov	QWORD PTR -312[rbp], rax
	cmp	QWORD PTR -312[rbp], 0
	je	.L59
	lea	rdx, -304[rbp]
	mov	rax, QWORD PTR -344[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	stat@PLT
	lea	rdx, -160[rbp]
	mov	rax, QWORD PTR -352[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	stat@PLT
	mov	rdx, QWORD PTR -72[rbp]
	mov	rax, QWORD PTR -216[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	difftime@PLT
	pxor	xmm1, xmm1
	comisd	xmm1, xmm0
	jbe	.L59
	mov	rdx, QWORD PTR -344[rbp]
	mov	rax, QWORD PTR -352[rbp]
	mov	rsi, rax
	lea	rdi, .LC29[rip]
	mov	eax, 0
	call	printf@PLT
	mov	rax, QWORD PTR -320[rbp]
	mov	rdi, rax
	call	fclose@PLT
	mov	rax, QWORD PTR -312[rbp]
	mov	rdi, rax
	call	fclose@PLT
	jmp	.L56
.L59:
	mov	rax, QWORD PTR -352[rbp]
	lea	rsi, .LC30[rip]
	mov	rdi, rax
	call	fopen@PLT
	mov	QWORD PTR -312[rbp], rax
	mov	rax, QWORD PTR -312[rbp]
	mov	rdi, rax
	call	fclose@PLT
	mov	rax, QWORD PTR -352[rbp]
	lea	rsi, .LC31[rip]
	mov	rdi, rax
	call	fopen@PLT
	mov	QWORD PTR -312[rbp], rax
	cmp	QWORD PTR -312[rbp], 0
	jne	.L61
	lea	rdi, .LC32[rip]
	call	perror@PLT
	mov	rax, QWORD PTR -320[rbp]
	mov	rdi, rax
	call	fclose@PLT
	jmp	.L56
.L61:
	mov	rax, QWORD PTR -352[rbp]
	mov	esi, 1
	mov	rdi, rax
	mov	eax, 0
	call	open@PLT
	test	eax, eax
	js	.L62
	mov	rax, QWORD PTR -344[rbp]
	mov	esi, 0
	mov	rdi, rax
	mov	eax, 0
	call	open@PLT
	test	eax, eax
	jns	.L64
.L62:
	lea	rdi, .LC33[rip]
	call	perror@PLT
	jmp	.L56
.L65:
	movsx	eax, BYTE PTR -321[rbp]
	mov	rdx, QWORD PTR -312[rbp]
	mov	rsi, rdx
	mov	edi, eax
	call	putc@PLT
.L64:
	mov	rax, QWORD PTR -320[rbp]
	mov	rdi, rax
	call	getc@PLT
	mov	BYTE PTR -321[rbp], al
	cmp	BYTE PTR -321[rbp], -1
	jne	.L65
	mov	rax, QWORD PTR -320[rbp]
	mov	rdi, rax
	call	fclose@PLT
	mov	rax, QWORD PTR -312[rbp]
	mov	rdi, rax
	call	fclose@PLT
.L56:
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L67
	call	__stack_chk_fail@PLT
.L67:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE12:
	.size	function_cp, .-function_cp
	.section	.rodata
.LC34:
	.string	"\033[94m"
.LC35:
	.string	"%s%s%s"
.LC36:
	.string	"\033[92m"
.LC37:
	.string	"%s%s/%s"
.LC38:
	.string	"\033[96m"
	.text
	.globl	nameFile
	.type	nameFile, @function
nameFile:
.LFB13:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	QWORD PTR -8[rbp], rdi
	mov	QWORD PTR -16[rbp], rsi
	mov	rax, QWORD PTR -8[rbp]
	movzx	eax, BYTE PTR 18[rax]
	cmp	al, 8
	jne	.L70
	mov	rax, QWORD PTR -8[rbp]
	lea	rdx, 19[rax]
	mov	rax, QWORD PTR -16[rbp]
	mov	rcx, rax
	lea	rsi, .LC34[rip]
	lea	rdi, .LC35[rip]
	mov	eax, 0
	call	printf@PLT
	jmp	.L73
.L70:
	mov	rax, QWORD PTR -8[rbp]
	movzx	eax, BYTE PTR 18[rax]
	cmp	al, 4
	jne	.L72
	mov	rax, QWORD PTR -8[rbp]
	lea	rdx, 19[rax]
	mov	rax, QWORD PTR -16[rbp]
	mov	rcx, rax
	lea	rsi, .LC36[rip]
	lea	rdi, .LC37[rip]
	mov	eax, 0
	call	printf@PLT
	jmp	.L73
.L72:
	mov	rax, QWORD PTR -8[rbp]
	lea	rdx, 19[rax]
	mov	rax, QWORD PTR -16[rbp]
	mov	rcx, rax
	lea	rsi, .LC38[rip]
	lea	rdi, .LC35[rip]
	mov	eax, 0
	call	printf@PLT
.L73:
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE13:
	.size	nameFile, .-nameFile
	.section	.rodata
.LC39:
	.string	"."
	.align 8
.LC40:
	.string	"%s+--- Total %d objects in this directory\n"
.LC41:
	.string	".."
.LC42:
	.string	"d"
.LC43:
	.string	"-"
.LC44:
	.string	"%s%1s"
.LC45:
	.string	"w"
.LC46:
	.string	"x"
.LC47:
	.string	"%s%1s "
.LC48:
	.string	"%2ld "
.LC49:
	.string	"%s "
.LC50:
	.string	"%5lld "
.LC51:
	.string	"%h %d %H:%M"
.LC52:
	.string	"\n"
	.align 8
.LC53:
	.string	"%s+--- Total %d object contents\n"
.LC54:
	.string	"+--- Empty directory"
	.text
	.globl	function_lsl
	.type	function_lsl, @function
function_lsl:
.LFB14:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 208
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	DWORD PTR -196[rbp], 0
	mov	DWORD PTR -192[rbp], 0
	lea	rax, -184[rbp]
	mov	rdx, QWORD PTR alphasort@GOTPCREL[rip]
	mov	rcx, rdx
	mov	edx, 0
	mov	rsi, rax
	lea	rdi, .LC39[rip]
	call	scandir@PLT
	mov	DWORD PTR -188[rbp], eax
	cmp	DWORD PTR -188[rbp], 0
	jle	.L75
	mov	eax, DWORD PTR -188[rbp]
	sub	eax, 2
	mov	edx, eax
	lea	rsi, .LC38[rip]
	lea	rdi, .LC40[rip]
	mov	eax, 0
	call	printf@PLT
	mov	DWORD PTR -196[rbp], 0
	jmp	.L76
.L100:
	mov	rdx, QWORD PTR -184[rbp]
	mov	eax, DWORD PTR -196[rbp]
	cdqe
	sal	rax, 3
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	add	rax, 19
	lea	rsi, .LC39[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	je	.L103
	mov	rdx, QWORD PTR -184[rbp]
	mov	eax, DWORD PTR -196[rbp]
	cdqe
	sal	rax, 3
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	add	rax, 19
	lea	rsi, .LC41[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	je	.L103
	mov	rdx, QWORD PTR -184[rbp]
	mov	eax, DWORD PTR -196[rbp]
	cdqe
	sal	rax, 3
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	lea	rdx, 19[rax]
	lea	rax, -176[rbp]
	mov	rsi, rax
	mov	rdi, rdx
	call	stat@PLT
	test	eax, eax
	jne	.L79
	mov	rax, QWORD PTR -112[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -192[rbp]
	add	eax, edx
	mov	DWORD PTR -192[rbp], eax
	mov	eax, DWORD PTR -152[rbp]
	and	eax, 61440
	cmp	eax, 16384
	jne	.L80
	lea	rax, .LC42[rip]
	jmp	.L81
.L80:
	lea	rax, .LC43[rip]
.L81:
	mov	rdx, rax
	lea	rsi, .LC0[rip]
	lea	rdi, .LC44[rip]
	mov	eax, 0
	call	printf@PLT
	mov	eax, DWORD PTR -152[rbp]
	and	eax, 256
	test	eax, eax
	je	.L82
	lea	rax, .LC26[rip]
	jmp	.L83
.L82:
	lea	rax, .LC43[rip]
.L83:
	mov	rdx, rax
	lea	rsi, .LC0[rip]
	lea	rdi, .LC44[rip]
	mov	eax, 0
	call	printf@PLT
	mov	eax, DWORD PTR -152[rbp]
	and	eax, 128
	test	eax, eax
	je	.L84
	lea	rax, .LC45[rip]
	jmp	.L85
.L84:
	lea	rax, .LC43[rip]
.L85:
	mov	rdx, rax
	lea	rsi, .LC0[rip]
	lea	rdi, .LC44[rip]
	mov	eax, 0
	call	printf@PLT
	mov	eax, DWORD PTR -152[rbp]
	and	eax, 64
	test	eax, eax
	je	.L86
	lea	rax, .LC46[rip]
	jmp	.L87
.L86:
	lea	rax, .LC43[rip]
.L87:
	mov	rdx, rax
	lea	rsi, .LC0[rip]
	lea	rdi, .LC44[rip]
	mov	eax, 0
	call	printf@PLT
	mov	eax, DWORD PTR -152[rbp]
	and	eax, 32
	test	eax, eax
	je	.L88
	lea	rax, .LC26[rip]
	jmp	.L89
.L88:
	lea	rax, .LC43[rip]
.L89:
	mov	rdx, rax
	lea	rsi, .LC0[rip]
	lea	rdi, .LC44[rip]
	mov	eax, 0
	call	printf@PLT
	mov	eax, DWORD PTR -152[rbp]
	and	eax, 16
	test	eax, eax
	je	.L90
	lea	rax, .LC45[rip]
	jmp	.L91
.L90:
	lea	rax, .LC43[rip]
.L91:
	mov	rdx, rax
	lea	rsi, .LC0[rip]
	lea	rdi, .LC44[rip]
	mov	eax, 0
	call	printf@PLT
	mov	eax, DWORD PTR -152[rbp]
	and	eax, 8
	test	eax, eax
	je	.L92
	lea	rax, .LC46[rip]
	jmp	.L93
.L92:
	lea	rax, .LC43[rip]
.L93:
	mov	rdx, rax
	lea	rsi, .LC0[rip]
	lea	rdi, .LC44[rip]
	mov	eax, 0
	call	printf@PLT
	mov	eax, DWORD PTR -152[rbp]
	and	eax, 4
	test	eax, eax
	je	.L94
	lea	rax, .LC26[rip]
	jmp	.L95
.L94:
	lea	rax, .LC43[rip]
.L95:
	mov	rdx, rax
	lea	rsi, .LC0[rip]
	lea	rdi, .LC44[rip]
	mov	eax, 0
	call	printf@PLT
	mov	eax, DWORD PTR -152[rbp]
	and	eax, 2
	test	eax, eax
	je	.L96
	lea	rax, .LC45[rip]
	jmp	.L97
.L96:
	lea	rax, .LC43[rip]
.L97:
	mov	rdx, rax
	lea	rsi, .LC0[rip]
	lea	rdi, .LC44[rip]
	mov	eax, 0
	call	printf@PLT
	mov	eax, DWORD PTR -152[rbp]
	and	eax, 1
	test	eax, eax
	je	.L98
	lea	rax, .LC46[rip]
	jmp	.L99
.L98:
	lea	rax, .LC43[rip]
.L99:
	mov	rdx, rax
	lea	rsi, .LC0[rip]
	lea	rdi, .LC47[rip]
	mov	eax, 0
	call	printf@PLT
	mov	rax, QWORD PTR -160[rbp]
	mov	rsi, rax
	lea	rdi, .LC48[rip]
	mov	eax, 0
	call	printf@PLT
	mov	eax, DWORD PTR -148[rbp]
	mov	edi, eax
	call	getpwuid@PLT
	mov	rax, QWORD PTR [rax]
	mov	rsi, rax
	lea	rdi, .LC49[rip]
	mov	eax, 0
	call	printf@PLT
	mov	eax, DWORD PTR -144[rbp]
	mov	edi, eax
	call	getgrgid@PLT
	mov	rax, QWORD PTR [rax]
	mov	rsi, rax
	lea	rdi, .LC49[rip]
	mov	eax, 0
	call	printf@PLT
	mov	rax, QWORD PTR -128[rbp]
	mov	rsi, rax
	lea	rdi, .LC50[rip]
	mov	eax, 0
	call	printf@PLT
	lea	rax, -176[rbp]
	add	rax, 88
	mov	rdi, rax
	call	localtime@PLT
	mov	rdx, rax
	lea	rax, -22[rbp]
	mov	rcx, rdx
	lea	rdx, .LC51[rip]
	mov	esi, 14
	mov	rdi, rax
	call	strftime@PLT
	lea	rax, -22[rbp]
	mov	rsi, rax
	lea	rdi, .LC49[rip]
	mov	eax, 0
	call	printf@PLT
	mov	rdx, QWORD PTR -184[rbp]
	mov	eax, DWORD PTR -196[rbp]
	cdqe
	sal	rax, 3
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	lea	rsi, .LC52[rip]
	mov	rdi, rax
	call	nameFile
	jmp	.L79
.L103:
	nop
.L79:
	add	DWORD PTR -196[rbp], 1
.L76:
	mov	eax, DWORD PTR -196[rbp]
	cmp	eax, DWORD PTR -188[rbp]
	jl	.L100
	mov	eax, DWORD PTR -192[rbp]
	mov	edx, eax
	shr	edx, 31
	add	eax, edx
	sar	eax
	mov	edx, eax
	lea	rsi, .LC38[rip]
	lea	rdi, .LC53[rip]
	mov	eax, 0
	call	printf@PLT
	jmp	.L104
.L75:
	lea	rdi, .LC54[rip]
	call	puts@PLT
.L104:
	nop
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L102
	call	__stack_chk_fail@PLT
.L102:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE14:
	.size	function_lsl, .-function_lsl
	.section	.rodata
.LC55:
	.string	"    "
.LC56:
	.string	"+--- Error in ls "
	.text
	.globl	function_ls
	.type	function_ls, @function
function_ls:
.LFB15:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	DWORD PTR -24[rbp], 0
	lea	rax, -16[rbp]
	mov	rdx, QWORD PTR alphasort@GOTPCREL[rip]
	mov	rcx, rdx
	mov	edx, 0
	mov	rsi, rax
	lea	rdi, .LC39[rip]
	call	scandir@PLT
	mov	DWORD PTR -20[rbp], eax
	cmp	DWORD PTR -20[rbp], 0
	js	.L106
	mov	eax, DWORD PTR -20[rbp]
	sub	eax, 2
	mov	edx, eax
	lea	rsi, .LC38[rip]
	lea	rdi, .LC40[rip]
	mov	eax, 0
	call	printf@PLT
	mov	DWORD PTR -24[rbp], 0
	jmp	.L107
.L111:
	mov	rdx, QWORD PTR -16[rbp]
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	sal	rax, 3
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	add	rax, 19
	lea	rsi, .LC39[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	je	.L114
	mov	rdx, QWORD PTR -16[rbp]
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	sal	rax, 3
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	add	rax, 19
	lea	rsi, .LC41[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	je	.L114
	mov	rdx, QWORD PTR -16[rbp]
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	sal	rax, 3
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	lea	rsi, .LC55[rip]
	mov	rdi, rax
	call	nameFile
	mov	eax, DWORD PTR -24[rbp]
	and	eax, 7
	test	eax, eax
	jne	.L110
	mov	edi, 10
	call	putchar@PLT
	jmp	.L110
.L114:
	nop
.L110:
	add	DWORD PTR -24[rbp], 1
.L107:
	mov	eax, DWORD PTR -24[rbp]
	cmp	eax, DWORD PTR -20[rbp]
	jl	.L111
	mov	edi, 10
	call	putchar@PLT
	jmp	.L115
.L106:
	lea	rdi, .LC56[rip]
	call	perror@PLT
.L115:
	nop
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L113
	call	__stack_chk_fail@PLT
.L113:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE15:
	.size	function_ls, .-function_ls
	.section	.rodata
.LC57:
	.string	"\033[1;1H\033[2J"
	.text
	.globl	function_clear
	.type	function_clear, @function
function_clear:
.LFB16:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	lea	rax, .LC57[rip]
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	mov	edx, 12
	mov	rsi, rax
	mov	edi, 1
	call	write@PLT
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE16:
	.size	function_clear, .-function_clear
	.section	.rodata
.LC58:
	.string	"+--- Error in rmdir "
	.text
	.globl	function_rmdir
	.type	function_rmdir, @function
function_rmdir:
.LFB17:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	rmdir@PLT
	mov	DWORD PTR -4[rbp], eax
	cmp	DWORD PTR -4[rbp], -1
	jne	.L119
	lea	rdi, .LC58[rip]
	call	perror@PLT
.L119:
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE17:
	.size	function_rmdir, .-function_rmdir
	.section	.rodata
.LC59:
	.string	"+--- Error in mkdir "
	.text
	.globl	function_mkdir
	.type	function_mkdir, @function
function_mkdir:
.LFB18:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	rax, QWORD PTR -24[rbp]
	mov	esi, 511
	mov	rdi, rax
	call	mkdir@PLT
	mov	DWORD PTR -4[rbp], eax
	cmp	DWORD PTR -4[rbp], -1
	jne	.L122
	lea	rdi, .LC59[rip]
	call	perror@PLT
.L122:
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE18:
	.size	function_mkdir, .-function_mkdir
	.section	.rodata
.LC60:
	.string	"+--- Error in cd "
	.text
	.globl	function_cd
	.type	function_cd, @function
function_cd:
.LFB19:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	chdir@PLT
	mov	DWORD PTR -4[rbp], eax
	cmp	DWORD PTR -4[rbp], 0
	jne	.L124
	mov	esi, 0
	lea	rdi, cwd[rip]
	call	function_pwd
	jmp	.L126
.L124:
	lea	rdi, .LC60[rip]
	call	perror@PLT
.L126:
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE19:
	.size	function_cd, .-function_cd
	.globl	function_exit
	.type	function_exit, @function
function_exit:
.LFB20:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	DWORD PTR exitflag[rip], 1
	mov	eax, 0
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE20:
	.size	function_exit, .-function_exit
	.section	.rodata
.LC61:
	.string	"+--- Error in getcwd() : "
	.text
	.globl	function_pwd
	.type	function_pwd, @function
function_pwd:
.LFB21:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 1040
	mov	QWORD PTR -1032[rbp], rdi
	mov	DWORD PTR -1036[rbp], esi
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	lea	rax, -1008[rbp]
	mov	esi, 1000
	mov	rdi, rax
	call	getcwd@PLT
	mov	QWORD PTR -1016[rbp], rax
	cmp	QWORD PTR -1016[rbp], 0
	je	.L130
	lea	rdx, -1008[rbp]
	mov	rax, QWORD PTR -1032[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	strcpy@PLT
	cmp	DWORD PTR -1036[rbp], 1
	jne	.L133
	mov	rax, QWORD PTR -1032[rbp]
	mov	rdi, rax
	call	puts@PLT
	jmp	.L133
.L130:
	lea	rdi, .LC61[rip]
	call	perror@PLT
.L133:
	nop
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L132
	call	__stack_chk_fail@PLT
.L132:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE21:
	.size	function_pwd, .-function_pwd
	.section	.rodata
	.align 8
.LC62:
	.ascii	"\n                           ./+o+-\n                  yyyyy"
	.ascii	"- -yyyyyy+\n               ://+//////-yyyyyyo\n           .+"
	.ascii	"+ .:/++++++/-.+sss/`\n         .:++o:  /++++++++/:--:/-\n   "
	.ascii	"     o:+o+:++.`..```.-/oo+++++/\n       .:+o:+o/.          `"
	.ascii	"+sssoo+/\n  .++/+:+oo+o:`             /sssooo.\n /+++//+:`oo"
	.ascii	"+o               /::--:.\n \\+/+o+++`o++o               ++//"
	.ascii	"//.\n  .++.o+++oo+:`             /dddhhh.\n       .+.o+oo:. "
	.ascii	"       "
	.string	"  `oddhhhh+\n        \\+.++o+o``-````.:ohdhhhhh+\n         `:o+++ `ohhhhhhhhyo++os:\n           .o:`.syhhhhhhh/.oo++o`\n               /osyyyyyyo++ooo+++/\n                   ````` +oo+++o\\:    CShell\n                          `oo++.    Made by Kaustubh Hiware\n\n"
.LC63:
	.string	"%s"
	.text
	.globl	screenfetch
	.type	screenfetch, @function
screenfetch:
.LFB22:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	lea	rax, .LC62[rip]
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	mov	rsi, rax
	lea	rdi, .LC63[rip]
	mov	eax, 0
	call	printf@PLT
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE22:
	.size	screenfetch, .-screenfetch
	.section	.rodata
	.align 8
.LC64:
	.ascii	"           _.-''|''-._\n        .-'     |     `-.\n      .'\\"
	.ascii	"       |       /`.\n    "
	.string	".'   \\      |      /   `.        Cshell\n    \\     \\     |     /     /        Made by @kaustubhhiware\n     `\\    \\    |    /    /'\n       `\\   \\   |   /   /'\n         `\\  \\  |  /  /'\n        _.-`\\ \\ | / /'-._ \n       {_____`\\\\|//'_____}\n               `-'\n\n"
	.text
	.globl	about
	.type	about, @function
about:
.LFB23:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	lea	rax, .LC64[rip]
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	mov	rsi, rax
	lea	rdi, .LC63[rip]
	mov	eax, 0
	call	printf@PLT
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE23:
	.size	about, .-about
	.ident	"GCC: (Ubuntu 10.5.0-1ubuntu1~20.04) 10.5.0"
	.section	.note.GNU-stack,"",@progbits
	.section	.note.gnu.property,"a"
	.align 8
	.long	 1f - 0f
	.long	 4f - 1f
	.long	 5
0:
	.string	 "GNU"
1:
	.align 8
	.long	 0xc0000002
	.long	 3f - 2f
2:
	.long	 0x3
3:
	.align 8
4:

	.arch armv5t
	.eabi_attribute 20, 1
	.eabi_attribute 21, 1
	.eabi_attribute 23, 3
	.eabi_attribute 24, 1
	.eabi_attribute 25, 1
	.eabi_attribute 26, 2
	.eabi_attribute 30, 6
	.eabi_attribute 34, 0
	.eabi_attribute 18, 4
	.file	"746444.c"
	.text
	.comm	input,4,4
	.comm	input1,4,4
	.global	exitflag
	.bss
	.align	2
	.type	exitflag, %object
	.size	exitflag, 4
exitflag:
	.space	4
	.comm	filepid,4,4
	.comm	fd,8,4
	.comm	cwd,1000,4
	.comm	argval,40,4
	.global	argcount
	.align	2
	.type	argcount, %object
	.size	argcount, 4
argcount:
	.space	4
	.global	inBackground
	.align	2
	.type	inBackground, %object
	.size	inBackground, 4
inBackground:
	.space	4
	.global	externalIn
	.align	2
	.type	externalIn, %object
	.size	externalIn, 4
externalIn:
	.space	4
	.global	externalOut
	.align	2
	.type	externalOut, %object
	.size	externalOut, 4
externalOut:
	.space	4
	.comm	inputfile,100,4
	.comm	outputfile,100,4
	.text
	.align	2
	.global	stopSignal
	.syntax unified
	.arm
	.fpu softvfp
	.type	stopSignal, %function
stopSignal:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	ldr	r3, .L4
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L3
	ldr	r3, .L4
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	ldr	r3, .L4
	ldr	r3, [r3]
	mov	r1, #2
	mov	r0, r3
	bl	kill
	ldr	r3, .L4
	mov	r2, #0
	str	r2, [r3]
.L3:
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L5:
	.align	2
.L4:
	.word	filepid
	.size	stopSignal, .-stopSignal
	.section	.rodata
	.align	2
.LC0:
	.ascii	"\033[0m\000"
	.align	2
.LC1:
	.ascii	"%s%s ~> \000"
	.align	2
.LC2:
	.ascii	"exit\000"
	.align	2
.LC3:
	.ascii	"z\000"
	.align	2
.LC4:
	.ascii	"screenfetch\000"
	.align	2
.LC5:
	.ascii	"about\000"
	.align	2
.LC6:
	.ascii	"pwd\000"
	.align	2
.LC7:
	.ascii	"cd\000"
	.align	2
.LC8:
	.ascii	"mkdir\000"
	.align	2
.LC9:
	.ascii	"rmdir\000"
	.align	2
.LC10:
	.ascii	"clear\000"
	.align	2
.LC11:
	.ascii	"ls\000"
	.align	2
.LC12:
	.ascii	"-l\000"
	.align	2
.LC13:
	.ascii	"cp\000"
	.align	2
.LC14:
	.ascii	"+--- Error in cp : insufficient parameters\000"
	.text
	.align	2
	.global	main
	.syntax unified
	.arm
	.fpu softvfp
	.type	main, %function
main:
	@ args = 0, pretend = 0, frame = 40
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #40
	str	r0, [fp, #-40]
	str	r1, [fp, #-44]
	ldr	r1, .L25
	mov	r0, #2
	bl	signal
	ldr	r0, .L25+4
	bl	pipe
	str	r0, [fp, #-32]
	bl	function_clear
	bl	screenfetch
	mov	r1, #0
	ldr	r0, .L25+8
	bl	function_pwd
	b	.L7
.L23:
	ldr	r3, .L25+12
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L25+16
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L25+20
	mov	r2, #0
	str	r2, [r3]
	ldr	r2, .L25+8
	ldr	r1, .L25+24
	ldr	r0, .L25+28
	bl	printf
	bl	getInput
	ldr	r3, .L25+32
	ldr	r3, [r3]
	ldr	r1, .L25+36
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	beq	.L8
	ldr	r3, .L25+32
	ldr	r3, [r3]
	ldr	r1, .L25+40
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L9
.L8:
	bl	function_exit
	b	.L7
.L9:
	ldr	r3, .L25+32
	ldr	r3, [r3]
	ldr	r1, .L25+44
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L10
	ldr	r3, .L25+20
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L10
	bl	screenfetch
	b	.L7
.L10:
	ldr	r3, .L25+32
	ldr	r3, [r3]
	ldr	r1, .L25+48
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L11
	ldr	r3, .L25+20
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L11
	bl	about
	b	.L7
.L11:
	ldr	r3, .L25+32
	ldr	r3, [r3]
	ldr	r1, .L25+52
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L12
	ldr	r3, .L25+20
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L12
	mov	r1, #1
	ldr	r0, .L25+8
	bl	function_pwd
	b	.L7
.L12:
	ldr	r3, .L25+32
	ldr	r3, [r3]
	ldr	r1, .L25+56
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L13
	ldr	r3, .L25+20
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L13
	ldr	r3, .L25+32
	ldr	r3, [r3, #4]
	str	r3, [fp, #-28]
	ldr	r0, [fp, #-28]
	bl	function_cd
	b	.L7
.L13:
	ldr	r3, .L25+32
	ldr	r3, [r3]
	ldr	r1, .L25+60
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L14
	ldr	r3, .L25+20
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L14
	ldr	r3, .L25+32
	ldr	r3, [r3, #4]
	str	r3, [fp, #-24]
	ldr	r0, [fp, #-24]
	bl	function_mkdir
	b	.L7
.L14:
	ldr	r3, .L25+32
	ldr	r3, [r3]
	ldr	r1, .L25+64
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L15
	ldr	r3, .L25+20
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L15
	ldr	r3, .L25+32
	ldr	r3, [r3, #4]
	str	r3, [fp, #-20]
	ldr	r0, [fp, #-20]
	bl	function_rmdir
	b	.L7
.L15:
	ldr	r3, .L25+32
	ldr	r3, [r3]
	ldr	r1, .L25+68
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L16
	ldr	r3, .L25+20
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L16
	bl	function_clear
	b	.L7
.L16:
	ldr	r3, .L25+32
	ldr	r3, [r3]
	ldr	r1, .L25+72
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L17
	ldr	r3, .L25+20
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L17
	ldr	r3, .L25+32
	ldr	r3, [r3, #4]
	str	r3, [fp, #-16]
	ldr	r1, .L25+76
	ldr	r0, [fp, #-16]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L18
	ldr	r3, .L25+20
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L18
	bl	function_lsl
	b	.L19
.L18:
	bl	function_ls
.L19:
	b	.L7
.L17:
	ldr	r3, .L25+32
	ldr	r3, [r3]
	ldr	r1, .L25+80
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L20
	ldr	r3, .L25+20
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L20
	ldr	r3, .L25+32
	ldr	r3, [r3, #4]
	str	r3, [fp, #-12]
	ldr	r3, .L25+32
	ldr	r3, [r3, #8]
	str	r3, [fp, #-8]
	ldr	r3, .L25+84
	ldr	r3, [r3]
	cmp	r3, #2
	ble	.L21
	ldr	r3, [fp, #-12]
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L21
	ldr	r3, [fp, #-8]
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L21
	ldr	r1, [fp, #-8]
	ldr	r0, [fp, #-12]
	bl	function_cp
	b	.L22
.L21:
	ldr	r0, .L25+88
	bl	puts
.L22:
	b	.L7
.L20:
	bl	executable
.L7:
	ldr	r3, .L25+92
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L23
	mov	r3, #0
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L26:
	.align	2
.L25:
	.word	stopSignal
	.word	fd
	.word	cwd
	.word	externalIn
	.word	externalOut
	.word	inBackground
	.word	.LC0
	.word	.LC1
	.word	argval
	.word	.LC2
	.word	.LC3
	.word	.LC4
	.word	.LC5
	.word	.LC6
	.word	.LC7
	.word	.LC8
	.word	.LC9
	.word	.LC10
	.word	.LC11
	.word	.LC12
	.word	.LC13
	.word	argcount
	.word	.LC14
	.word	exitflag
	.size	main, .-main
	.section	.rodata
	.align	2
.LC15:
	.ascii	"&\000"
	.align	2
.LC16:
	.ascii	" \011\012\000"
	.align	2
.LC17:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	getInput
	.syntax unified
	.arm
	.fpu softvfp
	.type	getInput, %function
getInput:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	sub	sp, sp, #8
	ldr	r3, .L33
	ldr	r3, [r3]
	str	r3, [fp, #-16]
	mov	r3,#0
	ldr	r3, .L33+4
	ldr	r3, [r3]
	mov	r0, r3
	bl	fflush
	ldr	r3, .L33+8
	mov	r2, #0
	str	r2, [r3]
	mov	r3, #0
	str	r3, [fp, #-20]
	ldr	r3, .L33+12
	ldr	r2, [r3]
	sub	r3, fp, #20
	mov	r1, r3
	ldr	r0, .L33+8
	bl	getline
	ldr	r3, .L33+8
	ldr	r3, [r3]
	mov	r0, r3
	bl	strlen
	mov	r3, r0
	mov	r0, r3
	bl	malloc
	mov	r3, r0
	mov	r2, r3
	ldr	r3, .L33+16
	str	r2, [r3]
	ldr	r3, .L33+16
	ldr	r4, [r3]
	ldr	r3, .L33+8
	ldr	r5, [r3]
	ldr	r3, .L33+8
	ldr	r3, [r3]
	mov	r0, r3
	bl	strlen
	mov	r3, r0
	mov	r2, r3
	mov	r1, r5
	mov	r0, r4
	bl	strncpy
	ldr	r3, .L33+20
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L33+24
	mov	r2, #0
	str	r2, [r3]
	b	.L28
.L31:
	ldr	r3, .L33+20
	ldr	r3, [r3]
	add	r3, r3, #1
	ldr	r2, .L33+20
	str	r3, [r2]
	ldr	r3, .L33+20
	ldr	r3, [r3]
	sub	r3, r3, #1
	ldr	r2, .L33+28
	ldr	r3, [r2, r3, lsl #2]
	ldr	r1, .L33+32
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L28
	ldr	r3, .L33+24
	mov	r2, #1
	str	r2, [r3]
	b	.L27
.L28:
	ldr	r3, .L33+20
	ldr	r4, [r3]
	ldr	r1, .L33+36
	ldr	r0, .L33+8
	bl	strsep
	mov	r3, r0
	ldr	r2, .L33+28
	str	r3, [r2, r4, lsl #2]
	ldr	r3, .L33+28
	ldr	r3, [r3, r4, lsl #2]
	cmp	r3, #0
	beq	.L30
	ldr	r3, .L33+20
	ldr	r3, [r3]
	cmp	r3, #8
	ble	.L31
.L30:
	ldr	r3, .L33+8
	ldr	r3, [r3]
	mov	r0, r3
	bl	free
.L27:
	ldr	r3, .L33
	ldr	r2, [r3]
	ldr	r3, [fp, #-16]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L32
	bl	__stack_chk_fail
.L32:
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
.L34:
	.align	2
.L33:
	.word	.LC17
	.word	stdout
	.word	input
	.word	stdin
	.word	input1
	.word	argcount
	.word	inBackground
	.word	argval
	.word	.LC15
	.word	.LC16
	.size	getInput, .-getInput
	.section	.rodata
	.align	2
.LC18:
	.ascii	"PATH\000"
	.align	2
.LC19:
	.ascii	":\000"
	.align	2
.LC20:
	.ascii	":\015\012\000"
	.align	2
.LC21:
	.ascii	"/\000"
	.align	2
.LC22:
	.ascii	"execvp : %s\012\000"
	.align	2
.LC23:
	.ascii	"+--- Error in running executable \000"
	.align	2
.LC24:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	runprocess
	.syntax unified
	.arm
	.fpu softvfp
	.type	runprocess, %function
runprocess:
	@ args = 0, pretend = 0, frame = 2032
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #2032
	str	r0, [fp, #-2024]
	str	r1, [fp, #-2028]
	str	r2, [fp, #-2032]
	ldr	r3, .L40
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	ldr	r1, [fp, #-2028]
	ldr	r0, [fp, #-2024]
	bl	execvp
	mov	r3, r0
	str	r3, [fp, #-2016]
	ldr	r0, .L40+4
	bl	getenv
	str	r0, [fp, #-2012]
	sub	r3, fp, #2000
	sub	r3, r3, #4
	sub	r3, r3, #4
	ldr	r1, [fp, #-2012]
	mov	r0, r3
	bl	strcpy
	sub	r3, fp, #2000
	sub	r3, r3, #4
	sub	r3, r3, #4
	mov	r0, r3
	bl	strlen
	mov	r3, r0
	mov	r2, r3
	sub	r3, fp, #2000
	sub	r3, r3, #4
	sub	r3, r3, #4
	add	r3, r3, r2
	ldr	r2, .L40+8
	mov	r0, r3
	mov	r1, r2
	mov	r3, #2
	mov	r2, r3
	bl	memcpy
	sub	r3, fp, #2000
	sub	r3, r3, #4
	sub	r3, r3, #4
	ldr	r1, .L40+12
	mov	r0, r3
	bl	strcat
	sub	r3, fp, #2000
	sub	r3, r3, #4
	sub	r3, r3, #4
	ldr	r1, .L40+16
	mov	r0, r3
	bl	strtok
	str	r0, [fp, #-2020]
	b	.L36
.L38:
	sub	r3, fp, #1008
	ldr	r1, [fp, #-2020]
	mov	r0, r3
	bl	strcpy
	sub	r3, fp, #1008
	mov	r0, r3
	bl	strlen
	mov	r3, r0
	mov	r2, r3
	sub	r3, fp, #1008
	add	r3, r3, r2
	ldr	r2, .L40+20
	mov	r0, r3
	mov	r1, r2
	mov	r3, #2
	mov	r2, r3
	bl	memcpy
	sub	r3, fp, #1008
	ldr	r1, [fp, #-2024]
	mov	r0, r3
	bl	strcat
	sub	r3, fp, #1008
	mov	r1, r3
	ldr	r0, .L40+24
	bl	printf
	sub	r3, fp, #1008
	ldr	r1, [fp, #-2028]
	mov	r0, r3
	bl	execvp
	mov	r3, r0
	str	r3, [fp, #-2016]
	ldr	r3, [fp, #-2016]
	cmn	r3, #1
	bne	.L37
	ldr	r0, .L40+28
	bl	perror
	mov	r0, #0
	bl	exit
.L37:
	ldr	r1, .L40+16
	mov	r0, #0
	bl	strtok
	str	r0, [fp, #-2020]
.L36:
	ldr	r3, [fp, #-2020]
	cmp	r3, #0
	bne	.L38
	nop
	ldr	r3, .L40
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L39
	bl	__stack_chk_fail
.L39:
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L41:
	.align	2
.L40:
	.word	.LC24
	.word	.LC18
	.word	.LC19
	.word	cwd
	.word	.LC20
	.word	.LC21
	.word	.LC22
	.word	.LC23
	.size	runprocess, .-runprocess
	.section	.rodata
	.align	2
.LC25:
	.ascii	"+--- Error in executable : input file \000"
	.align	2
.LC26:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	pipe_dup
	.syntax unified
	.arm
	.fpu softvfp
	.type	pipe_dup, %function
pipe_dup:
	@ args = 0, pretend = 0, frame = 40
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #40
	str	r0, [fp, #-40]
	str	r1, [fp, #-44]
	ldr	r3, .L52
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	mov	r3, #0
	str	r3, [fp, #-32]
	ldr	r3, .L52+4
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L43
	mov	r1, #0
	ldr	r0, .L52+8
	bl	open
	str	r0, [fp, #-32]
	ldr	r3, [fp, #-32]
	cmp	r3, #0
	bge	.L43
	ldr	r0, .L52+12
	bl	perror
.L43:
	mov	r3, #1
	str	r3, [fp, #-28]
	b	.L44
.L48:
	sub	r3, fp, #16
	mov	r0, r3
	bl	pipe
	bl	fork
	mov	r3, r0
	str	r3, [fp, #-20]
	ldr	r3, [fp, #-20]
	cmp	r3, #0
	bne	.L45
	ldr	r3, [fp, #-32]
	cmp	r3, #0
	beq	.L46
	mov	r1, #0
	ldr	r0, [fp, #-32]
	bl	dup2
	ldr	r0, [fp, #-32]
	bl	close
.L46:
	ldr	r3, [fp, #-12]
	cmp	r3, #1
	beq	.L47
	ldr	r3, [fp, #-12]
	mov	r1, #1
	mov	r0, r3
	bl	dup2
	ldr	r3, [fp, #-12]
	mov	r0, r3
	bl	close
.L47:
	ldr	r3, [fp, #-28]
	mov	r2, #404
	mul	r3, r2, r3
	sub	r3, r3, #404
	ldr	r2, [fp, #-44]
	add	r3, r2, r3
	ldr	r0, [r3]
	ldr	r3, [fp, #-28]
	mov	r2, #404
	mul	r3, r2, r3
	sub	r3, r3, #404
	ldr	r2, [fp, #-44]
	add	r3, r2, r3
	mov	r1, r3
	ldr	r3, [fp, #-28]
	mov	r2, #404
	mul	r3, r2, r3
	sub	r3, r3, #404
	ldr	r2, [fp, #-44]
	add	r3, r2, r3
	ldr	r3, [r3, #400]
	mov	r2, r3
	bl	runprocess
	mov	r0, #0
	bl	exit
.L45:
	sub	r3, fp, #36
	mov	r0, r3
	bl	wait
	ldr	r3, [fp, #-12]
	mov	r0, r3
	bl	close
	ldr	r3, [fp, #-16]
	str	r3, [fp, #-32]
	ldr	r3, [fp, #-28]
	add	r3, r3, #1
	str	r3, [fp, #-28]
.L44:
	ldr	r2, [fp, #-28]
	ldr	r3, [fp, #-40]
	cmp	r2, r3
	blt	.L48
	ldr	r3, [fp, #-28]
	sub	r3, r3, #1
	str	r3, [fp, #-28]
	ldr	r3, [fp, #-32]
	cmp	r3, #0
	beq	.L49
	mov	r1, #0
	ldr	r0, [fp, #-32]
	bl	dup2
.L49:
	ldr	r3, .L52+16
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L50
	mov	r2, #420
	mov	r1, #65
	ldr	r0, .L52+20
	bl	open
	str	r0, [fp, #-24]
	mov	r1, #1
	ldr	r0, [fp, #-24]
	bl	dup2
.L50:
	ldr	r3, [fp, #-28]
	mov	r2, #404
	mul	r3, r2, r3
	ldr	r2, [fp, #-44]
	add	r3, r2, r3
	ldr	r0, [r3]
	ldr	r3, [fp, #-28]
	mov	r2, #404
	mul	r3, r2, r3
	ldr	r2, [fp, #-44]
	add	r3, r2, r3
	mov	r1, r3
	ldr	r3, [fp, #-28]
	mov	r2, #404
	mul	r3, r2, r3
	ldr	r2, [fp, #-44]
	add	r3, r2, r3
	ldr	r3, [r3, #400]
	mov	r2, r3
	bl	runprocess
	nop
	ldr	r3, .L52
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L51
	bl	__stack_chk_fail
.L51:
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L53:
	.align	2
.L52:
	.word	.LC26
	.word	externalIn
	.word	inputfile
	.word	.LC25
	.word	externalOut
	.word	outputfile
	.size	pipe_dup, .-pipe_dup
	.section	.rodata
	.align	2
.LC27:
	.ascii	"|\000"
	.align	2
.LC28:
	.ascii	"<\000"
	.align	2
.LC29:
	.ascii	">\000"
	.align	2
.LC30:
	.ascii	"+--- Process running in inBackground. PID:%d\012\000"
	.align	2
.LC31:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	executable
	.syntax unified
	.arm
	.fpu softvfp
	.type	executable, %function
executable:
	@ args = 0, pretend = 0, frame = 40424
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #40192
	sub	sp, sp, #236
	ldr	r3, .L66
	ldr	r3, [r3]
	str	r3, [fp, #-16]
	mov	r3,#0
	sub	r3, fp, #36864
	sub	r3, r3, #12
	mov	r2, r3
	mov	r3, #0
	str	r3, [r2, #-3552]
	sub	r3, fp, #36864
	sub	r3, r3, #12
	mov	r2, r3
	mov	r3, #1
	str	r3, [r2, #-3548]
	sub	r3, fp, #36864
	sub	r3, r3, #12
	mov	r4, r3
	ldr	r1, .L66+4
	ldr	r0, .L66+8
	bl	strsep
	str	r0, [r4, #-3544]
	sub	r3, fp, #36864
	sub	r3, r3, #12
	mov	r2, r3
	sub	r3, fp, #36864
	sub	r3, r3, #12
	ldr	r3, [r3, #-3544]
	str	r3, [r2, #-3540]
	b	.L55
.L61:
	sub	r3, fp, #36864
	sub	r3, r3, #12
	mov	r4, r3
	ldr	r1, .L66+4
	ldr	r0, .L66+8
	bl	strsep
	str	r0, [r4, #-3544]
	sub	r3, fp, #36864
	sub	r3, r3, #12
	ldr	r3, [r3, #-3544]
	cmp	r3, #0
	bne	.L56
	sub	r3, fp, #36864
	sub	r3, r3, #12
	ldr	r1, [r3, #-3548]
	sub	r3, fp, #36864
	sub	r3, r3, #12
	mov	r2, r3
	add	r3, r1, #1
	str	r3, [r2, #-3548]
	sub	r3, fp, #36864
	sub	r3, r3, #12
	mov	ip, r3
	sub	r3, fp, #36864
	sub	r3, r3, #12
	ldr	r2, [r3, #-3552]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r2
	add	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, ip, r3
	sub	r2, fp, #36864
	sub	r2, r2, #12
	ldr	r2, [r2, #-3544]
	str	r2, [r3, #-3540]
	b	.L55
.L56:
	sub	r3, fp, #36864
	sub	r3, r3, #12
	ldr	r1, .L66+12
	ldr	r0, [r3, #-3544]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L57
	sub	r3, fp, #36864
	sub	r3, r3, #12
	ldr	r1, [r3, #-3548]
	sub	r3, fp, #36864
	sub	r3, r3, #12
	mov	r2, r3
	add	r3, r1, #1
	str	r3, [r2, #-3548]
	sub	r3, fp, #36864
	sub	r3, r3, #12
	mov	ip, r3
	sub	r3, fp, #36864
	sub	r3, r3, #12
	ldr	r2, [r3, #-3552]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r2
	add	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, ip, r3
	mov	r2, #0
	str	r2, [r3, #-3540]
	sub	r3, fp, #36864
	sub	r3, r3, #12
	mov	r1, r3
	sub	r3, fp, #36864
	sub	r3, r3, #12
	ldr	r3, [r3, #-3552]
	mov	r2, #404
	mul	r3, r2, r3
	add	r3, r1, r3
	sub	r3, r3, #3136
	sub	r3, r3, #4
	sub	r2, fp, #36864
	sub	r2, r2, #12
	ldr	r2, [r2, #-3548]
	str	r2, [r3]
	sub	r3, fp, #36864
	sub	r3, r3, #12
	mov	r2, r3
	mov	r3, #0
	str	r3, [r2, #-3548]
	sub	r3, fp, #36864
	sub	r3, r3, #12
	mov	r2, r3
	sub	r3, fp, #36864
	sub	r3, r3, #12
	ldr	r3, [r3, #-3552]
	add	r3, r3, #1
	str	r3, [r2, #-3552]
	b	.L55
.L57:
	sub	r3, fp, #36864
	sub	r3, r3, #12
	ldr	r1, .L66+16
	ldr	r0, [r3, #-3544]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L58
	ldr	r3, .L66+20
	mov	r2, #1
	str	r2, [r3]
	sub	r3, fp, #36864
	sub	r3, r3, #12
	mov	r4, r3
	ldr	r1, .L66+4
	ldr	r0, .L66+8
	bl	strsep
	str	r0, [r4, #-3544]
	sub	r3, fp, #36864
	sub	r3, r3, #12
	ldr	r1, [r3, #-3544]
	ldr	r0, .L66+24
	bl	strcpy
	b	.L55
.L58:
	sub	r3, fp, #36864
	sub	r3, r3, #12
	ldr	r1, .L66+28
	ldr	r0, [r3, #-3544]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L59
	ldr	r3, .L66+32
	mov	r2, #1
	str	r2, [r3]
	sub	r3, fp, #36864
	sub	r3, r3, #12
	mov	r4, r3
	ldr	r1, .L66+4
	ldr	r0, .L66+8
	bl	strsep
	str	r0, [r4, #-3544]
	sub	r3, fp, #36864
	sub	r3, r3, #12
	ldr	r1, [r3, #-3544]
	ldr	r0, .L66+36
	bl	strcpy
	b	.L55
.L59:
	sub	r3, fp, #36864
	sub	r3, r3, #12
	ldr	r1, .L66+40
	ldr	r0, [r3, #-3544]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L60
	ldr	r3, .L66+44
	mov	r2, #1
	str	r2, [r3]
	b	.L55
.L60:
	sub	r3, fp, #36864
	sub	r3, r3, #12
	ldr	r1, [r3, #-3548]
	sub	r3, fp, #36864
	sub	r3, r3, #12
	mov	r2, r3
	add	r3, r1, #1
	str	r3, [r2, #-3548]
	sub	r3, fp, #36864
	sub	r3, r3, #12
	mov	ip, r3
	sub	r3, fp, #36864
	sub	r3, r3, #12
	ldr	r2, [r3, #-3552]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r2
	add	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, ip, r3
	sub	r2, fp, #36864
	sub	r2, r2, #12
	ldr	r2, [r2, #-3544]
	str	r2, [r3, #-3540]
.L55:
	sub	r3, fp, #36864
	sub	r3, r3, #12
	ldr	r3, [r3, #-3544]
	cmp	r3, #0
	bne	.L61
	sub	r3, fp, #36864
	sub	r3, r3, #12
	ldr	r1, [r3, #-3548]
	sub	r3, fp, #36864
	sub	r3, r3, #12
	mov	r2, r3
	add	r3, r1, #1
	str	r3, [r2, #-3548]
	sub	r3, fp, #36864
	sub	r3, r3, #12
	mov	ip, r3
	sub	r3, fp, #36864
	sub	r3, r3, #12
	ldr	r2, [r3, #-3552]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r0, r3, #2
	add	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r2
	add	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, ip, r3
	mov	r2, #0
	str	r2, [r3, #-3540]
	sub	r3, fp, #36864
	sub	r3, r3, #12
	mov	r1, r3
	sub	r3, fp, #36864
	sub	r3, r3, #12
	ldr	r3, [r3, #-3552]
	mov	r2, #404
	mul	r3, r2, r3
	add	r3, r1, r3
	sub	r3, r3, #3136
	sub	r3, r3, #4
	sub	r2, fp, #36864
	sub	r2, r2, #12
	ldr	r2, [r2, #-3548]
	str	r2, [r3]
	sub	r3, fp, #36864
	sub	r3, r3, #12
	mov	r2, r3
	sub	r3, fp, #36864
	sub	r3, r3, #12
	ldr	r3, [r3, #-3552]
	add	r3, r3, #1
	str	r3, [r2, #-3552]
	bl	fork
	mov	r3, r0
	mov	r2, r3
	ldr	r3, .L66+48
	str	r2, [r3]
	ldr	r3, .L66+48
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L62
	sub	r3, fp, #40192
	sub	r3, r3, #12
	sub	r3, r3, #212
	sub	r2, fp, #36864
	sub	r2, r2, #12
	mov	r1, r3
	ldr	r0, [r2, #-3552]
	bl	pipe_dup
	b	.L63
.L62:
	ldr	r3, .L66+44
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L64
	ldr	r3, .L66+48
	ldr	r0, [r3]
	sub	r3, fp, #40192
	sub	r3, r3, #12
	sub	r3, r3, #228
	mov	r2, #0
	mov	r1, r3
	bl	waitpid
	b	.L63
.L64:
	ldr	r3, .L66+48
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r0, .L66+52
	bl	printf
.L63:
	ldr	r3, .L66+48
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L66+8
	ldr	r3, [r3]
	mov	r0, r3
	bl	free
	nop
	ldr	r3, .L66
	ldr	r2, [r3]
	ldr	r3, [fp, #-16]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L65
	bl	__stack_chk_fail
.L65:
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L67:
	.align	2
.L66:
	.word	.LC31
	.word	.LC16
	.word	input1
	.word	.LC27
	.word	.LC28
	.word	externalIn
	.word	inputfile
	.word	.LC29
	.word	externalOut
	.word	outputfile
	.word	.LC15
	.word	inBackground
	.word	filepid
	.word	.LC30
	.size	executable, .-executable
	.section	.rodata
	.align	2
.LC32:
	.ascii	"r\000"
	.align	2
.LC33:
	.ascii	"+--- Error in cp file1 \000"
	.global	__aeabi_dcmplt
	.align	2
.LC34:
	.ascii	"+--- Error in cp : %s is more recently updated than"
	.ascii	" %s\012\000"
	.align	2
.LC35:
	.ascii	"ab+\000"
	.align	2
.LC36:
	.ascii	"w+\000"
	.align	2
.LC37:
	.ascii	"Error in cp file2 \000"
	.align	2
.LC38:
	.ascii	"Error in cp access \000"
	.align	2
.LC39:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	function_cp
	.syntax unified
	.arm
	.fpu softvfp
	.type	function_cp, %function
function_cp:
	@ args = 0, pretend = 0, frame = 208
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #208
	str	r0, [fp, #-208]
	str	r1, [fp, #-212]
	ldr	r3, .L82
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	ldr	r1, .L82+4
	ldr	r0, [fp, #-208]
	bl	fopen
	str	r0, [fp, #-196]
	ldr	r3, [fp, #-196]
	cmp	r3, #0
	bne	.L69
	ldr	r0, .L82+8
	bl	perror
	b	.L68
.L69:
	ldr	r1, .L82+4
	ldr	r0, [fp, #-212]
	bl	fopen
	str	r0, [fp, #-192]
	ldr	r3, [fp, #-192]
	cmp	r3, #0
	beq	.L71
	sub	r3, fp, #188
	mov	r1, r3
	ldr	r0, [fp, #-208]
	bl	stat
	sub	r3, fp, #100
	mov	r1, r3
	ldr	r0, [fp, #-212]
	bl	stat
	ldr	r3, [fp, #-124]
	ldr	r2, [fp, #-36]
	mov	r1, r2
	mov	r0, r3
	bl	difftime
	mov	r2, #0
	mov	r3, #0
	bl	__aeabi_dcmplt
	mov	r3, r0
	cmp	r3, #0
	beq	.L71
	ldr	r2, [fp, #-208]
	ldr	r1, [fp, #-212]
	ldr	r0, .L82+12
	bl	printf
	ldr	r0, [fp, #-196]
	bl	fclose
	ldr	r0, [fp, #-192]
	bl	fclose
	b	.L68
.L71:
	ldr	r1, .L82+16
	ldr	r0, [fp, #-212]
	bl	fopen
	str	r0, [fp, #-192]
	ldr	r0, [fp, #-192]
	bl	fclose
	ldr	r1, .L82+20
	ldr	r0, [fp, #-212]
	bl	fopen
	str	r0, [fp, #-192]
	ldr	r3, [fp, #-192]
	cmp	r3, #0
	bne	.L73
	ldr	r0, .L82+24
	bl	perror
	ldr	r0, [fp, #-196]
	bl	fclose
	b	.L68
.L73:
	mov	r1, #1
	ldr	r0, [fp, #-212]
	bl	open
	mov	r3, r0
	cmp	r3, #0
	blt	.L74
	mov	r1, #0
	ldr	r0, [fp, #-208]
	bl	open
	mov	r3, r0
	cmp	r3, #0
	bge	.L76
.L74:
	ldr	r0, .L82+28
	bl	perror
	b	.L68
.L81:
	ldrb	r3, [fp, #-197]	@ zero_extendqisi2
	ldr	r1, [fp, #-192]
	mov	r0, r3
	bl	putc
.L76:
	ldr	r0, [fp, #-196]
	bl	getc
	mov	r3, r0
	strb	r3, [fp, #-197]
	b	.L81
.L68:
	ldr	r3, .L82
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L79
	bl	__stack_chk_fail
.L79:
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L83:
	.align	2
.L82:
	.word	.LC39
	.word	.LC32
	.word	.LC33
	.word	.LC34
	.word	.LC35
	.word	.LC36
	.word	.LC37
	.word	.LC38
	.size	function_cp, .-function_cp
	.section	.rodata
	.align	2
.LC40:
	.ascii	"\033[94m\000"
	.align	2
.LC41:
	.ascii	"%s%s%s\000"
	.align	2
.LC42:
	.ascii	"\033[92m\000"
	.align	2
.LC43:
	.ascii	"%s%s/%s\000"
	.align	2
.LC44:
	.ascii	"\033[96m\000"
	.text
	.align	2
	.global	nameFile
	.syntax unified
	.arm
	.fpu softvfp
	.type	nameFile, %function
nameFile:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	str	r1, [fp, #-12]
	ldr	r3, [fp, #-8]
	ldrb	r3, [r3, #10]	@ zero_extendqisi2
	cmp	r3, #8
	bne	.L85
	ldr	r3, [fp, #-8]
	add	r2, r3, #11
	ldr	r3, [fp, #-12]
	ldr	r1, .L89
	ldr	r0, .L89+4
	bl	printf
	b	.L88
.L85:
	ldr	r3, [fp, #-8]
	ldrb	r3, [r3, #10]	@ zero_extendqisi2
	cmp	r3, #4
	bne	.L87
	ldr	r3, [fp, #-8]
	add	r2, r3, #11
	ldr	r3, [fp, #-12]
	ldr	r1, .L89+8
	ldr	r0, .L89+12
	bl	printf
	b	.L88
.L87:
	ldr	r3, [fp, #-8]
	add	r2, r3, #11
	ldr	r3, [fp, #-12]
	ldr	r1, .L89+16
	ldr	r0, .L89+4
	bl	printf
.L88:
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L90:
	.align	2
.L89:
	.word	.LC40
	.word	.LC41
	.word	.LC42
	.word	.LC43
	.word	.LC44
	.size	nameFile, .-nameFile
	.section	.rodata
	.align	2
.LC45:
	.ascii	".\000"
	.align	2
.LC46:
	.ascii	"%s+--- Total %d objects in this directory\012\000"
	.align	2
.LC47:
	.ascii	"..\000"
	.align	2
.LC48:
	.ascii	"d\000"
	.align	2
.LC49:
	.ascii	"-\000"
	.align	2
.LC50:
	.ascii	"%s%1s\000"
	.align	2
.LC51:
	.ascii	"w\000"
	.align	2
.LC52:
	.ascii	"x\000"
	.align	2
.LC53:
	.ascii	"%s%1s \000"
	.align	2
.LC54:
	.ascii	"%2ld \000"
	.align	2
.LC55:
	.ascii	"%s \000"
	.align	2
.LC56:
	.ascii	"%5lld \000"
	.align	2
.LC57:
	.ascii	"%h %d %H:%M\000"
	.align	2
.LC58:
	.ascii	"\012\000"
	.align	2
.LC59:
	.ascii	"%s+--- Total %d object contents\012\000"
	.align	2
.LC60:
	.ascii	"+--- Empty directory\000"
	.align	2
.LC61:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	function_lsl
	.syntax unified
	.arm
	.fpu softvfp
	.type	function_lsl, %function
function_lsl:
	@ args = 0, pretend = 0, frame = 128
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #128
	ldr	r3, .L122
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	mov	r3, #0
	str	r3, [fp, #-128]
	mov	r3, #0
	str	r3, [fp, #-124]
	sub	r1, fp, #132
	ldr	r3, .L122+4
	mov	r2, #0
	ldr	r0, .L122+8
	bl	scandir
	str	r0, [fp, #-120]
	ldr	r3, [fp, #-120]
	cmp	r3, #0
	ble	.L92
	ldr	r3, [fp, #-120]
	sub	r3, r3, #2
	mov	r2, r3
	ldr	r1, .L122+12
	ldr	r0, .L122+16
	bl	printf
	mov	r3, #0
	str	r3, [fp, #-128]
	b	.L93
.L117:
	ldr	r2, [fp, #-132]
	ldr	r3, [fp, #-128]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]
	add	r3, r3, #11
	ldr	r1, .L122+8
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	beq	.L120
	ldr	r2, [fp, #-132]
	ldr	r3, [fp, #-128]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]
	add	r3, r3, #11
	ldr	r1, .L122+20
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	beq	.L120
	ldr	r2, [fp, #-132]
	ldr	r3, [fp, #-128]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]
	add	r3, r3, #11
	sub	r2, fp, #116
	mov	r1, r2
	mov	r0, r3
	bl	stat
	mov	r3, r0
	cmp	r3, #0
	bne	.L96
	ldr	r3, [fp, #-64]
	ldr	r2, [fp, #-124]
	add	r3, r2, r3
	str	r3, [fp, #-124]
	ldr	r3, [fp, #-100]
	and	r3, r3, #61440
	cmp	r3, #16384
	bne	.L97
	ldr	r3, .L122+24
	b	.L98
.L97:
	ldr	r3, .L122+28
.L98:
	mov	r2, r3
	ldr	r1, .L122+32
	ldr	r0, .L122+36
	bl	printf
	ldr	r3, [fp, #-100]
	and	r3, r3, #256
	cmp	r3, #0
	beq	.L99
	ldr	r3, .L122+40
	b	.L100
.L99:
	ldr	r3, .L122+28
.L100:
	mov	r2, r3
	ldr	r1, .L122+32
	ldr	r0, .L122+36
	bl	printf
	ldr	r3, [fp, #-100]
	and	r3, r3, #128
	cmp	r3, #0
	beq	.L101
	ldr	r3, .L122+44
	b	.L102
.L101:
	ldr	r3, .L122+28
.L102:
	mov	r2, r3
	ldr	r1, .L122+32
	ldr	r0, .L122+36
	bl	printf
	ldr	r3, [fp, #-100]
	and	r3, r3, #64
	cmp	r3, #0
	beq	.L103
	ldr	r3, .L122+48
	b	.L104
.L103:
	ldr	r3, .L122+28
.L104:
	mov	r2, r3
	ldr	r1, .L122+32
	ldr	r0, .L122+36
	bl	printf
	ldr	r3, [fp, #-100]
	and	r3, r3, #32
	cmp	r3, #0
	beq	.L105
	ldr	r3, .L122+40
	b	.L106
.L105:
	ldr	r3, .L122+28
.L106:
	mov	r2, r3
	ldr	r1, .L122+32
	ldr	r0, .L122+36
	bl	printf
	ldr	r3, [fp, #-100]
	and	r3, r3, #16
	cmp	r3, #0
	beq	.L107
	ldr	r3, .L122+44
	b	.L108
.L107:
	ldr	r3, .L122+28
.L108:
	mov	r2, r3
	ldr	r1, .L122+32
	ldr	r0, .L122+36
	bl	printf
	ldr	r3, [fp, #-100]
	and	r3, r3, #8
	cmp	r3, #0
	beq	.L109
	ldr	r3, .L122+48
	b	.L110
.L109:
	ldr	r3, .L122+28
.L110:
	mov	r2, r3
	ldr	r1, .L122+32
	ldr	r0, .L122+36
	bl	printf
	ldr	r3, [fp, #-100]
	and	r3, r3, #4
	cmp	r3, #0
	beq	.L111
	ldr	r3, .L122+40
	b	.L112
.L111:
	ldr	r3, .L122+28
.L112:
	mov	r2, r3
	ldr	r1, .L122+32
	ldr	r0, .L122+36
	bl	printf
	ldr	r3, [fp, #-100]
	and	r3, r3, #2
	cmp	r3, #0
	beq	.L113
	ldr	r3, .L122+44
	b	.L114
.L113:
	ldr	r3, .L122+28
.L114:
	mov	r2, r3
	ldr	r1, .L122+32
	ldr	r0, .L122+36
	bl	printf
	ldr	r3, [fp, #-100]
	and	r3, r3, #1
	cmp	r3, #0
	beq	.L115
	ldr	r3, .L122+48
	b	.L116
.L115:
	ldr	r3, .L122+28
.L116:
	mov	r2, r3
	ldr	r1, .L122+32
	ldr	r0, .L122+52
	bl	printf
	ldr	r3, [fp, #-96]
	mov	r1, r3
	ldr	r0, .L122+56
	bl	printf
	ldr	r3, [fp, #-92]
	mov	r0, r3
	bl	getpwuid
	mov	r3, r0
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r0, .L122+60
	bl	printf
	ldr	r3, [fp, #-88]
	mov	r0, r3
	bl	getgrgid
	mov	r3, r0
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r0, .L122+60
	bl	printf
	ldr	r3, [fp, #-72]
	mov	r2, r3
	asr	r3, r2, #31
	ldr	r0, .L122+64
	bl	printf
	sub	r3, fp, #116
	add	r3, r3, #64
	mov	r0, r3
	bl	localtime
	mov	r3, r0
	sub	r0, fp, #24
	ldr	r2, .L122+68
	mov	r1, #14
	bl	strftime
	sub	r3, fp, #24
	mov	r1, r3
	ldr	r0, .L122+60
	bl	printf
	ldr	r2, [fp, #-132]
	ldr	r3, [fp, #-128]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]
	ldr	r1, .L122+72
	mov	r0, r3
	bl	nameFile
	b	.L96
.L120:
	nop
.L96:
	ldr	r3, [fp, #-128]
	add	r3, r3, #1
	str	r3, [fp, #-128]
.L93:
	ldr	r2, [fp, #-128]
	ldr	r3, [fp, #-120]
	cmp	r2, r3
	blt	.L117
	ldr	r3, [fp, #-124]
	lsr	r2, r3, #31
	add	r3, r2, r3
	asr	r3, r3, #1
	mov	r2, r3
	ldr	r1, .L122+12
	ldr	r0, .L122+76
	bl	printf
	b	.L121
.L92:
	ldr	r0, .L122+80
	bl	puts
.L121:
	nop
	ldr	r3, .L122
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L119
	bl	__stack_chk_fail
.L119:
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L123:
	.align	2
.L122:
	.word	.LC61
	.word	alphasort
	.word	.LC45
	.word	.LC44
	.word	.LC46
	.word	.LC47
	.word	.LC48
	.word	.LC49
	.word	.LC0
	.word	.LC50
	.word	.LC32
	.word	.LC51
	.word	.LC52
	.word	.LC53
	.word	.LC54
	.word	.LC55
	.word	.LC56
	.word	.LC57
	.word	.LC58
	.word	.LC59
	.word	.LC60
	.size	function_lsl, .-function_lsl
	.section	.rodata
	.align	2
.LC62:
	.ascii	"    \000"
	.align	2
.LC63:
	.ascii	"+--- Error in ls \000"
	.align	2
.LC64:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	function_ls
	.syntax unified
	.arm
	.fpu softvfp
	.type	function_ls, %function
function_ls:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	ldr	r3, .L135
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	mov	r3, #0
	str	r3, [fp, #-16]
	sub	r1, fp, #20
	ldr	r3, .L135+4
	mov	r2, #0
	ldr	r0, .L135+8
	bl	scandir
	str	r0, [fp, #-12]
	ldr	r3, [fp, #-12]
	cmp	r3, #0
	blt	.L125
	ldr	r3, [fp, #-12]
	sub	r3, r3, #2
	mov	r2, r3
	ldr	r1, .L135+12
	ldr	r0, .L135+16
	bl	printf
	mov	r3, #0
	str	r3, [fp, #-16]
	b	.L126
.L130:
	ldr	r2, [fp, #-20]
	ldr	r3, [fp, #-16]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]
	add	r3, r3, #11
	ldr	r1, .L135+8
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	beq	.L133
	ldr	r2, [fp, #-20]
	ldr	r3, [fp, #-16]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]
	add	r3, r3, #11
	ldr	r1, .L135+20
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	beq	.L133
	ldr	r2, [fp, #-20]
	ldr	r3, [fp, #-16]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]
	ldr	r1, .L135+24
	mov	r0, r3
	bl	nameFile
	ldr	r3, [fp, #-16]
	and	r3, r3, #7
	cmp	r3, #0
	bne	.L129
	mov	r0, #10
	bl	putchar
	b	.L129
.L133:
	nop
.L129:
	ldr	r3, [fp, #-16]
	add	r3, r3, #1
	str	r3, [fp, #-16]
.L126:
	ldr	r2, [fp, #-16]
	ldr	r3, [fp, #-12]
	cmp	r2, r3
	blt	.L130
	mov	r0, #10
	bl	putchar
	b	.L134
.L125:
	ldr	r0, .L135+28
	bl	perror
.L134:
	nop
	ldr	r3, .L135
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L132
	bl	__stack_chk_fail
.L132:
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L136:
	.align	2
.L135:
	.word	.LC64
	.word	alphasort
	.word	.LC45
	.word	.LC44
	.word	.LC46
	.word	.LC47
	.word	.LC62
	.word	.LC63
	.size	function_ls, .-function_ls
	.section	.rodata
	.align	2
.LC65:
	.ascii	"\033[1;1H\033[2J\000"
	.text
	.align	2
	.global	function_clear
	.syntax unified
	.arm
	.fpu softvfp
	.type	function_clear, %function
function_clear:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	ldr	r3, .L138
	str	r3, [fp, #-8]
	mov	r2, #12
	ldr	r1, [fp, #-8]
	mov	r0, #1
	bl	write
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L139:
	.align	2
.L138:
	.word	.LC65
	.size	function_clear, .-function_clear
	.section	.rodata
	.align	2
.LC66:
	.ascii	"+--- Error in rmdir \000"
	.text
	.align	2
	.global	function_rmdir
	.syntax unified
	.arm
	.fpu softvfp
	.type	function_rmdir, %function
function_rmdir:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	ldr	r0, [fp, #-16]
	bl	rmdir
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmn	r3, #1
	bne	.L142
	ldr	r0, .L143
	bl	perror
.L142:
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L144:
	.align	2
.L143:
	.word	.LC66
	.size	function_rmdir, .-function_rmdir
	.section	.rodata
	.align	2
.LC67:
	.ascii	"+--- Error in mkdir \000"
	.text
	.align	2
	.global	function_mkdir
	.syntax unified
	.arm
	.fpu softvfp
	.type	function_mkdir, %function
function_mkdir:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	ldr	r1, .L148
	ldr	r0, [fp, #-16]
	bl	mkdir
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmn	r3, #1
	bne	.L147
	ldr	r0, .L148+4
	bl	perror
.L147:
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L149:
	.align	2
.L148:
	.word	511
	.word	.LC67
	.size	function_mkdir, .-function_mkdir
	.section	.rodata
	.align	2
.LC68:
	.ascii	"+--- Error in cd \000"
	.text
	.align	2
	.global	function_cd
	.syntax unified
	.arm
	.fpu softvfp
	.type	function_cd, %function
function_cd:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	ldr	r0, [fp, #-16]
	bl	chdir
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	bne	.L151
	mov	r1, #0
	ldr	r0, .L154
	bl	function_pwd
	b	.L153
.L151:
	ldr	r0, .L154+4
	bl	perror
.L153:
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L155:
	.align	2
.L154:
	.word	cwd
	.word	.LC68
	.size	function_cd, .-function_cd
	.align	2
	.global	function_exit
	.syntax unified
	.arm
	.fpu softvfp
	.type	function_exit, %function
function_exit:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	ldr	r3, .L158
	mov	r2, #1
	str	r2, [r3]
	mov	r3, #0
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
.L159:
	.align	2
.L158:
	.word	exitflag
	.size	function_exit, .-function_exit
	.section	.rodata
	.align	2
.LC69:
	.ascii	"+--- Error in getcwd() : \000"
	.align	2
.LC70:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	function_pwd
	.syntax unified
	.arm
	.fpu softvfp
	.type	function_pwd, %function
function_pwd:
	@ args = 0, pretend = 0, frame = 1016
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #1016
	str	r0, [fp, #-1016]
	str	r1, [fp, #-1020]
	ldr	r3, .L165
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	sub	r3, fp, #1008
	mov	r1, #1000
	mov	r0, r3
	bl	getcwd
	str	r0, [fp, #-1012]
	ldr	r3, [fp, #-1012]
	cmp	r3, #0
	beq	.L161
	sub	r3, fp, #1008
	mov	r1, r3
	ldr	r0, [fp, #-1016]
	bl	strcpy
	ldr	r3, [fp, #-1020]
	cmp	r3, #1
	bne	.L164
	ldr	r0, [fp, #-1016]
	bl	puts
	b	.L164
.L161:
	ldr	r0, .L165+4
	bl	perror
.L164:
	nop
	ldr	r3, .L165
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L163
	bl	__stack_chk_fail
.L163:
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L166:
	.align	2
.L165:
	.word	.LC70
	.word	.LC69
	.size	function_pwd, .-function_pwd
	.section	.rodata
	.align	2
.LC71:
	.ascii	"\012                           ./+o+-\012          "
	.ascii	"        yyyyy- -yyyyyy+\012               ://+/////"
	.ascii	"/-yyyyyyo\012           .++ .:/++++++/-.+sss/`\012 "
	.ascii	"        .:++o:  /++++++++/:--:/-\012        o:+o+:+"
	.ascii	"+.`..```.-/oo+++++/\012       .:+o:+o/.          `+"
	.ascii	"sssoo+/\012  .++/+:+oo+o:`             /sssooo.\012"
	.ascii	" /+++//+:`oo+o               /::--:.\012 \\+/+o+++`"
	.ascii	"o++o               ++////.\012  .++.o+++oo+:`      "
	.ascii	"       /dddhhh.\012       .+.o+oo:.          `oddhh"
	.ascii	"hh+\012        \\+.++o+o``-````.:ohdhhhhh+\012     "
	.ascii	"    `:o+++ `ohhhhhhhhyo++os:\012           .o:`.syh"
	.ascii	"hhhhhh/.oo++o`\012               /osyyyyyyo++ooo+++"
	.ascii	"/\012                   ````` +oo+++o\\:    CShell\012"
	.ascii	"                          `oo++.    Made by Kaustub"
	.ascii	"h Hiware\012\012\000"
	.align	2
.LC72:
	.ascii	"%s\000"
	.text
	.align	2
	.global	screenfetch
	.syntax unified
	.arm
	.fpu softvfp
	.type	screenfetch, %function
screenfetch:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	ldr	r3, .L168
	str	r3, [fp, #-8]
	ldr	r1, [fp, #-8]
	ldr	r0, .L168+4
	bl	printf
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L169:
	.align	2
.L168:
	.word	.LC71
	.word	.LC72
	.size	screenfetch, .-screenfetch
	.section	.rodata
	.align	2
.LC73:
	.ascii	"           _.-''|''-._\012        .-'     |     `-."
	.ascii	"\012      .'\\       |       /`.\012    .'   \\    "
	.ascii	"  |      /   `.        Cshell\012    \\     \\     "
	.ascii	"|     /     /        Made by @kaustubhhiware\012   "
	.ascii	"  `\\    \\    |    /    /'\012       `\\   \\   | "
	.ascii	"  /   /'\012         `\\  \\  |  /  /'\012        _"
	.ascii	".-`\\ \\ | / /'-._ \012       {_____`\\\\|//'_____}"
	.ascii	"\012               `-'\012\012\000"
	.text
	.align	2
	.global	about
	.syntax unified
	.arm
	.fpu softvfp
	.type	about, %function
about:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	ldr	r3, .L171
	str	r3, [fp, #-8]
	ldr	r1, [fp, #-8]
	ldr	r0, .L171+4
	bl	printf
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L172:
	.align	2
.L171:
	.word	.LC73
	.word	.LC72
	.size	about, .-about
	.ident	"GCC: (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0"
	.section	.note.GNU-stack,"",%progbits
