	.file	"5873.c"
	.intel_syntax noprefix
	.text
	.local	install
	.comm	install,4,4
	.local	interact
	.comm	interact,4,4
	.local	force
	.comm	force,4,4
	.local	backup
	.comm	backup,4,4
	.data
	.align 8
	.type	SYNCNAME, @object
	.size	SYNCNAME, 9
SYNCNAME:
	.string	"synctree"
	.align 8
	.type	SLAVENAME, @object
	.size	SLAVENAME, 10
SLAVENAME:
	.string	"==SLAVE=="
	.align 8
	.type	MASTERNAME, @object
	.size	MASTERNAME, 11
MASTERNAME:
	.string	"==MASTER=="
	.align 8
	.type	BACKUP, @object
	.size	BACKUP, 8
BACKUP:
	.string	".backup"
	.local	filemodes
	.comm	filemodes,4,4
	.align 8
	.type	chan, @object
	.size	chan, 8
chan:
	.long	0
	.long	1
	.local	bucket
	.comm	bucket,4101,32
	.section	.data.rel.local,"aw"
	.align 8
	.type	buckp, @object
	.size	buckp, 8
buckp:
	.quad	bucket
	.local	buckn
	.comm	buckn,4,4
	.local	arg0
	.comm	arg0,8,8
	.local	ex
	.comm	ex,4,4
	.section	.rodata
.LC0:
	.string	": %s\n"
	.text
	.type	because, @function
because:
.LFB6:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	__errno_location@PLT
	mov	eax, DWORD PTR [rax]
	mov	edi, eax
	call	strerror@PLT
	mov	rdx, rax
	mov	rax, QWORD PTR stderr[rip]
	lea	rsi, .LC0[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	DWORD PTR ex[rip], 1
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE6:
	.size	because, .-because
	.section	.rodata
.LC1:
	.string	"%s: %s: %s\n"
	.text
	.type	perr, @function
perr:
.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, 16
	mov	QWORD PTR -8[rbp], rdi
	call	__errno_location@PLT
	mov	eax, DWORD PTR [rax]
	mov	edi, eax
	call	strerror@PLT
	mov	rsi, rax
	mov	rdx, QWORD PTR arg0[rip]
	mov	rax, QWORD PTR stderr[rip]
	mov	rcx, QWORD PTR -8[rbp]
	mov	r8, rsi
	lea	rsi, .LC1[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	DWORD PTR ex[rip], 1
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE7:
	.size	perr, .-perr
	.type	perrx, @function
perrx:
.LFB8:
	.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	rax, QWORD PTR -8[rbp]
	mov	rdi, rax
	mov	eax, 0
	call	perr
	mov	edi, 1
	call	exit@PLT
	.cfi_endproc
.LFE8:
	.size	perrx, .-perrx
	.type	isbackup, @function
isbackup:
.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, 16
	mov	DWORD PTR -4[rbp], edi
	cmp	DWORD PTR -4[rbp], 0
	je	.L5
	mov	eax, 0
	jmp	.L6
.L5:
	mov	eax, 2
.L6:
	mov	esi, eax
	lea	rdi, BACKUP[rip]
	mov	eax, 0
	call	open@PLT
	mov	DWORD PTR filemodes[rip], eax
	mov	eax, DWORD PTR filemodes[rip]
	test	eax, eax
	js	.L7
	mov	DWORD PTR backup[rip], 1
	jmp	.L9
.L7:
	call	__errno_location@PLT
	mov	eax, DWORD PTR [rax]
	cmp	eax, 2
	je	.L9
	lea	rdi, BACKUP[rip]
	mov	eax, 0
	call	perrx
.L9:
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE9:
	.size	isbackup, .-isbackup
	.local	path
	.comm	path,4097,32
	.local	lnkpth
	.comm	lnkpth,4097,32
	.local	linkpath
	.comm	linkpath,8,8
	.local	st
	.comm	st,144,32
	.local	Spath
	.comm	Spath,4097,32
	.local	Slnkpth
	.comm	Slnkpth,4097,32
	.local	Slinkpath
	.comm	Slinkpath,8,8
	.local	Sst
	.comm	Sst,144,32
	.section	.rodata
.LC2:
	.string	"%s: %s/%s is too long.\n"
.LC3:
	.string	"%s: Unable to continue.\n"
	.text
	.type	addpath, @function
addpath:
.LFB10:
	.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	QWORD PTR -24[rbp], rdi
	mov	QWORD PTR -32[rbp], rsi
	lea	rdx, path[rip]
	mov	rax, QWORD PTR -24[rbp]
	sub	rax, rdx
	mov	rbx, rax
	mov	rax, QWORD PTR -32[rbp]
	mov	rdi, rax
	call	strlen@PLT
	add	rax, rbx
	add	rax, 1
	cmp	rax, 4096
	jbe	.L11
	mov	rax, QWORD PTR -24[rbp]
	mov	BYTE PTR [rax], 0
	mov	rdx, QWORD PTR arg0[rip]
	mov	rax, QWORD PTR stderr[rip]
	mov	rcx, QWORD PTR -32[rbp]
	mov	r8, rcx
	lea	rcx, path[rip]
	lea	rsi, .LC2[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	rdx, QWORD PTR arg0[rip]
	mov	rax, QWORD PTR stderr[rip]
	lea	rsi, .LC3[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	edi, 1
	call	exit@PLT
.L11:
	lea	rax, path[rip+1]
	cmp	QWORD PTR -24[rbp], rax
	jne	.L12
	movzx	eax, BYTE PTR path[rip]
	cmp	al, 46
	jne	.L12
	lea	rax, path[rip]
	mov	QWORD PTR -24[rbp], rax
.L12:
	lea	rax, path[rip]
	cmp	QWORD PTR -24[rbp], rax
	jbe	.L14
	mov	rax, QWORD PTR -24[rbp]
	lea	rdx, 1[rax]
	mov	QWORD PTR -24[rbp], rdx
	mov	BYTE PTR [rax], 47
	jmp	.L14
.L15:
	mov	rdx, QWORD PTR -32[rbp]
	lea	rax, 1[rdx]
	mov	QWORD PTR -32[rbp], rax
	mov	rax, QWORD PTR -24[rbp]
	lea	rcx, 1[rax]
	mov	QWORD PTR -24[rbp], rcx
	movzx	edx, BYTE PTR [rdx]
	mov	BYTE PTR [rax], dl
.L14:
	mov	rax, QWORD PTR -32[rbp]
	movzx	eax, BYTE PTR [rax]
	test	al, al
	jne	.L15
	mov	rax, QWORD PTR -24[rbp]
	mov	BYTE PTR [rax], 0
	mov	rax, QWORD PTR -24[rbp]
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE10:
	.size	addpath, .-addpath
	.local	E
	.comm	E,8,8
	.type	setpath, @function
setpath:
.LFB11:
	.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
	cmp	QWORD PTR -8[rbp], 0
	jne	.L18
	lea	rax, path[rip]
	mov	QWORD PTR pend.9[rip], rax
	jmp	.L20
.L18:
	mov	rax, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR 8[rax]
	mov	rdi, rax
	mov	eax, 0
	call	setpath
	mov	rax, QWORD PTR -8[rbp]
	mov	rdx, QWORD PTR 24[rax]
	mov	rax, QWORD PTR pend.9[rip]
	mov	rsi, rdx
	mov	rdi, rax
	mov	eax, 0
	call	addpath
	mov	QWORD PTR pend.9[rip], rax
.L20:
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE11:
	.size	setpath, .-setpath
	.type	sort, @function
sort:
.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, 48
	mov	QWORD PTR -40[rbp], rdi
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	rax, QWORD PTR -40[rbp]
	mov	rax, QWORD PTR [rax]
	mov	QWORD PTR -16[rbp], rax
	mov	rax, QWORD PTR -16[rbp]
	mov	rax, QWORD PTR [rax]
	mov	QWORD PTR -24[rbp], rax
.L24:
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR [rax]
	mov	QWORD PTR -24[rbp], rax
	cmp	QWORD PTR -24[rbp], 0
	je	.L32
	mov	rax, QWORD PTR -16[rbp]
	mov	rax, QWORD PTR [rax]
	mov	QWORD PTR -16[rbp], rax
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR [rax]
	mov	QWORD PTR -24[rbp], rax
	cmp	QWORD PTR -24[rbp], 0
	jne	.L24
	jmp	.L23
.L32:
	nop
.L23:
	mov	rax, QWORD PTR -16[rbp]
	mov	rax, QWORD PTR [rax]
	mov	QWORD PTR -32[rbp], rax
	mov	rax, QWORD PTR -16[rbp]
	mov	QWORD PTR [rax], 0
	mov	rax, QWORD PTR -40[rbp]
	mov	rax, QWORD PTR [rax]
	mov	rax, QWORD PTR [rax]
	test	rax, rax
	je	.L25
	mov	rax, QWORD PTR -40[rbp]
	mov	rdi, rax
	mov	eax, 0
	call	sort
.L25:
	mov	rax, QWORD PTR -32[rbp]
	mov	rax, QWORD PTR [rax]
	test	rax, rax
	je	.L26
	lea	rax, -32[rbp]
	mov	rdi, rax
	mov	eax, 0
	call	sort
.L26:
	mov	rax, QWORD PTR -40[rbp]
	mov	rax, QWORD PTR [rax]
	mov	QWORD PTR -24[rbp], rax
.L30:
	mov	rax, QWORD PTR -32[rbp]
	mov	rdx, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR 24[rax]
	mov	rsi, rdx
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jg	.L27
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR -40[rbp], rax
	mov	rax, QWORD PTR -40[rbp]
	mov	rax, QWORD PTR [rax]
	mov	QWORD PTR -24[rbp], rax
	cmp	QWORD PTR -24[rbp], 0
	jne	.L30
	mov	rdx, QWORD PTR -32[rbp]
	mov	rax, QWORD PTR -40[rbp]
	mov	QWORD PTR [rax], rdx
	jmp	.L29
.L27:
	mov	rdx, QWORD PTR -32[rbp]
	mov	rax, QWORD PTR -40[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	QWORD PTR -40[rbp], rax
	mov	rax, QWORD PTR -40[rbp]
	mov	rax, QWORD PTR [rax]
	mov	QWORD PTR -32[rbp], rax
	mov	rax, QWORD PTR -40[rbp]
	mov	rdx, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	test	rax, rax
	je	.L33
	jmp	.L30
.L33:
	nop
.L29:
	nop
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L31
	call	__stack_chk_fail@PLT
.L31:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE12:
	.size	sort, .-sort
	.section	.rodata
.LC4:
	.string	"%s: Can't read dir %s\n"
	.text
	.type	enter, @function
enter:
.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, 32
	mov	rax, QWORD PTR E[rip]
	add	rax, 16
	mov	QWORD PTR -32[rbp], rax
	lea	rdi, path[rip]
	call	opendir@PLT
	mov	QWORD PTR -24[rbp], rax
	cmp	QWORD PTR -24[rbp], 0
	jne	.L37
	mov	rdx, QWORD PTR arg0[rip]
	mov	rax, QWORD PTR stderr[rip]
	lea	rcx, path[rip]
	lea	rsi, .LC4[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	jmp	.L34
.L40:
	mov	rax, QWORD PTR -16[rbp]
	movzx	eax, BYTE PTR 19[rax]
	cmp	al, 46
	jne	.L38
	mov	rax, QWORD PTR -16[rbp]
	movzx	eax, BYTE PTR 20[rax]
	test	al, al
	je	.L37
	mov	rax, QWORD PTR -16[rbp]
	movzx	eax, BYTE PTR 20[rax]
	cmp	al, 46
	jne	.L38
	mov	rax, QWORD PTR -16[rbp]
	movzx	eax, BYTE PTR 21[rax]
	test	al, al
	jne	.L38
	jmp	.L37
.L38:
	mov	edi, 32
	call	malloc@PLT
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	mov	QWORD PTR [rax], 0
	mov	rdx, QWORD PTR E[rip]
	mov	rax, QWORD PTR -8[rbp]
	mov	QWORD PTR 8[rax], rdx
	mov	rax, QWORD PTR -8[rbp]
	mov	QWORD PTR 16[rax], 0
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 19
	mov	rdi, rax
	call	strlen@PLT
	add	rax, 1
	mov	rdi, rax
	call	malloc@PLT
	mov	rdx, rax
	mov	rax, QWORD PTR -8[rbp]
	mov	QWORD PTR 24[rax], rdx
	mov	rax, QWORD PTR -16[rbp]
	lea	rdx, 19[rax]
	mov	rax, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR 24[rax]
	mov	rsi, rdx
	mov	rdi, rax
	call	strcpy@PLT
	mov	rax, QWORD PTR -32[rbp]
	mov	rdx, QWORD PTR -8[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -8[rbp]
	mov	QWORD PTR -32[rbp], rax
.L37:
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	readdir@PLT
	mov	QWORD PTR -16[rbp], rax
	cmp	QWORD PTR -16[rbp], 0
	jne	.L40
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	closedir@PLT
	mov	rax, QWORD PTR E[rip]
	mov	rax, QWORD PTR 16[rax]
	test	rax, rax
	je	.L34
	mov	rax, QWORD PTR E[rip]
	mov	rax, QWORD PTR 16[rax]
	mov	rax, QWORD PTR [rax]
	test	rax, rax
	je	.L34
	mov	rax, QWORD PTR E[rip]
	add	rax, 16
	mov	rdi, rax
	mov	eax, 0
	call	sort
.L34:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE13:
	.size	enter, .-enter
	.type	link_islink, @function
link_islink:
.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, 64
	mov	QWORD PTR -56[rbp], rdi
	mov	QWORD PTR -64[rbp], rsi
	cmp	QWORD PTR -64[rbp], 0
	jne	.L42
	lea	rax, links.8[rip]
	mov	QWORD PTR -40[rbp], rax
	jmp	.L43
.L45:
	mov	rax, QWORD PTR -32[rbp]
	mov	rdx, QWORD PTR [rax]
	mov	rax, QWORD PTR -40[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	rdi, rax
	call	free@PLT
.L44:
	mov	rax, QWORD PTR -40[rbp]
	mov	rax, QWORD PTR [rax]
	mov	QWORD PTR -32[rbp], rax
	cmp	QWORD PTR -32[rbp], 0
	jne	.L45
	add	QWORD PTR -40[rbp], 8
.L43:
	lea	rax, links.8[rip+2048]
	cmp	QWORD PTR -40[rbp], rax
	jb	.L44
	mov	eax, DWORD PTR tfd.7[rip]
	cmp	eax, -1
	je	.L47
	mov	eax, DWORD PTR tfd.7[rip]
	mov	edi, eax
	call	close@PLT
.L47:
	mov	DWORD PTR tfd.7[rip], -1
	mov	eax, 0
	jmp	.L48
.L42:
	mov	rax, QWORD PTR -56[rbp]
	mov	eax, DWORD PTR 24[rax]
	and	eax, 61440
	cmp	eax, 16384
	je	.L49
	mov	rax, QWORD PTR -56[rbp]
	mov	rax, QWORD PTR 16[rax]
	cmp	rax, 1
	ja	.L50
.L49:
	call	__errno_location@PLT
	mov	DWORD PTR [rax], 2
	mov	eax, 0
	jmp	.L48
.L50:
	mov	rax, QWORD PTR -56[rbp]
	mov	rax, QWORD PTR 8[rax]
	movzx	eax, al
	lea	rdx, 0[0+rax*8]
	lea	rax, links.8[rip]
	add	rax, rdx
	mov	QWORD PTR -40[rbp], rax
	jmp	.L51
.L56:
	mov	rax, QWORD PTR -32[rbp]
	mov	rdx, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -56[rbp]
	mov	rax, QWORD PTR 8[rax]
	cmp	rdx, rax
	jne	.L52
	mov	rax, QWORD PTR -32[rbp]
	mov	rcx, QWORD PTR 16[rax]
	mov	eax, DWORD PTR tfd.7[rip]
	mov	edx, 0
	mov	rsi, rcx
	mov	edi, eax
	call	lseek@PLT
	cmp	rax, -1
	jne	.L53
	mov	eax, 0
	jmp	.L48
.L53:
	mov	eax, DWORD PTR tfd.7[rip]
	mov	edx, 4104
	lea	rsi, dlink.6[rip]
	mov	edi, eax
	call	read@PLT
	test	rax, rax
	jns	.L54
	mov	eax, 0
	jmp	.L48
.L54:
	mov	rdx, QWORD PTR dlink.6[rip]
	mov	rax, QWORD PTR -56[rbp]
	mov	rax, QWORD PTR [rax]
	cmp	rdx, rax
	jne	.L52
	mov	rax, QWORD PTR -64[rbp]
	lea	rsi, dlink.6[rip+8]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L55
	mov	rax, QWORD PTR -32[rbp]
	mov	rdx, QWORD PTR [rax]
	mov	rax, QWORD PTR -40[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	rdi, rax
	call	free@PLT
	call	__errno_location@PLT
	mov	DWORD PTR [rax], 2
	mov	eax, 0
	jmp	.L48
.L55:
	lea	rax, dlink.6[rip+8]
	jmp	.L48
.L52:
	mov	rax, QWORD PTR -32[rbp]
	mov	QWORD PTR -40[rbp], rax
.L51:
	mov	rax, QWORD PTR -40[rbp]
	mov	rax, QWORD PTR [rax]
	mov	QWORD PTR -32[rbp], rax
	cmp	QWORD PTR -32[rbp], 0
	jne	.L56
	mov	eax, DWORD PTR tfd.7[rip]
	cmp	eax, -1
	jne	.L57
.L60:
	mov	edi, 0
	call	tmpnam@PLT
	mov	QWORD PTR -24[rbp], rax
	mov	rax, QWORD PTR -24[rbp]
	mov	edx, 384
	mov	esi, 194
	mov	rdi, rax
	mov	eax, 0
	call	open@PLT
	mov	DWORD PTR tfd.7[rip], eax
	mov	eax, DWORD PTR tfd.7[rip]
	test	eax, eax
	jns	.L58
	call	__errno_location@PLT
	mov	eax, DWORD PTR [rax]
	cmp	eax, 17
	je	.L60
	mov	eax, 0
	jmp	.L48
.L58:
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	unlink@PLT
.L57:
	mov	rax, QWORD PTR -64[rbp]
	mov	rdi, rax
	call	strlen@PLT
	mov	QWORD PTR -16[rbp], rax
	cmp	QWORD PTR -16[rbp], 4095
	jbe	.L61
	call	__errno_location@PLT
	mov	DWORD PTR [rax], 7
	mov	eax, 0
	jmp	.L48
.L61:
	mov	rax, QWORD PTR -56[rbp]
	mov	rax, QWORD PTR [rax]
	mov	QWORD PTR dlink.6[rip], rax
	mov	rax, QWORD PTR -64[rbp]
	mov	rsi, rax
	lea	rdi, dlink.6[rip+8]
	call	strcpy@PLT
	add	QWORD PTR -16[rbp], 9
	mov	eax, DWORD PTR tfd.7[rip]
	mov	edx, 2
	mov	esi, 0
	mov	edi, eax
	call	lseek@PLT
	mov	QWORD PTR -8[rbp], rax
	cmp	QWORD PTR -8[rbp], -1
	jne	.L62
	mov	eax, 0
	jmp	.L48
.L62:
	mov	eax, DWORD PTR tfd.7[rip]
	mov	rdx, QWORD PTR -16[rbp]
	lea	rsi, dlink.6[rip]
	mov	edi, eax
	call	write@PLT
	mov	rdx, QWORD PTR -16[rbp]
	cmp	rax, rdx
	je	.L63
	mov	eax, 0
	jmp	.L48
.L63:
	mov	edi, 24
	call	malloc@PLT
	mov	QWORD PTR -32[rbp], rax
	cmp	QWORD PTR -32[rbp], 0
	jne	.L64
	mov	eax, 0
	jmp	.L48
.L64:
	mov	rax, QWORD PTR -32[rbp]
	mov	QWORD PTR [rax], 0
	mov	rax, QWORD PTR -56[rbp]
	mov	rdx, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -32[rbp]
	mov	QWORD PTR 8[rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	rdx, QWORD PTR -8[rbp]
	mov	QWORD PTR 16[rax], rdx
	mov	rax, QWORD PTR -40[rbp]
	mov	rdx, QWORD PTR -32[rbp]
	mov	QWORD PTR [rax], rdx
	call	__errno_location@PLT
	mov	DWORD PTR [rax], 2
	mov	eax, 0
.L48:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE14:
	.size	link_islink, .-link_islink
	.type	islink, @function
islink:
.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, 16
	lea	rsi, path[rip]
	lea	rdi, st[rip]
	call	link_islink
	mov	QWORD PTR -8[rbp], rax
	cmp	QWORD PTR -8[rbp], 0
	jne	.L66
	call	__errno_location@PLT
	mov	eax, DWORD PTR [rax]
	cmp	eax, 2
	je	.L66
	lea	rdi, path[rip]
	mov	eax, 0
	call	perrx
.L66:
	mov	rax, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE15:
	.size	islink, .-islink
	.type	setstat, @function
setstat:
.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, 48
	mov	QWORD PTR -40[rbp], rdi
	mov	QWORD PTR -48[rbp], rsi
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	rax, QWORD PTR -48[rbp]
	mov	eax, DWORD PTR 24[rax]
	mov	WORD PTR -18[rbp], ax
	mov	rax, QWORD PTR -48[rbp]
	mov	eax, DWORD PTR 28[rax]
	mov	WORD PTR -16[rbp], ax
	mov	rax, QWORD PTR -48[rbp]
	mov	eax, DWORD PTR 32[rax]
	mov	WORD PTR -14[rbp], ax
	mov	rax, QWORD PTR -48[rbp]
	mov	rax, QWORD PTR 40[rax]
	mov	WORD PTR -12[rbp], ax
	mov	rax, QWORD PTR -48[rbp]
	mov	rax, QWORD PTR 48[rax]
	lea	rdx, 1023[rax]
	test	rax, rax
	cmovs	rax, rdx
	sar	rax, 10
	mov	WORD PTR -10[rbp], ax
	mov	rdx, QWORD PTR -40[rbp]
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rax
	mov	rcx, rax
	mov	eax, DWORD PTR filemodes[rip]
	mov	edx, 0
	mov	rsi, rcx
	mov	edi, eax
	call	lseek@PLT
	cmp	rax, -1
	je	.L69
	mov	eax, DWORD PTR filemodes[rip]
	lea	rcx, -18[rbp]
	mov	edx, 10
	mov	rsi, rcx
	mov	edi, eax
	call	write@PLT
	cmp	rax, 10
	je	.L72
.L69:
	lea	rdi, BACKUP[rip]
	mov	eax, 0
	call	perrx
.L72:
	nop
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L71
	call	__stack_chk_fail@PLT
.L71:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE16:
	.size	setstat, .-setstat
	.type	getstat, @function
getstat:
.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, 48
	mov	QWORD PTR -40[rbp], rdi
	mov	QWORD PTR -48[rbp], rsi
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	call	__errno_location@PLT
	mov	DWORD PTR [rax], 0
	mov	rax, QWORD PTR -40[rbp]
	lea	rsi, BACKUP[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L74
	mov	eax, -1
	jmp	.L75
.L74:
	mov	rdx, QWORD PTR -48[rbp]
	mov	rax, QWORD PTR -40[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	lstat@PLT
	test	eax, eax
	jns	.L76
	mov	eax, -1
	jmp	.L75
.L76:
	mov	rax, QWORD PTR -48[rbp]
	mov	eax, DWORD PTR 24[rax]
	cmp	eax, 32768
	jne	.L77
	mov	rax, QWORD PTR -48[rbp]
	mov	rax, QWORD PTR 88[rax]
	test	rax, rax
	jne	.L77
	mov	eax, -1
	jmp	.L75
.L77:
	mov	eax, DWORD PTR backup[rip]
	test	eax, eax
	je	.L78
	mov	rax, QWORD PTR -48[rbp]
	mov	rax, QWORD PTR 8[rax]
	mov	rdx, rax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rax
	mov	rcx, rax
	mov	eax, DWORD PTR filemodes[rip]
	mov	edx, 0
	mov	rsi, rcx
	mov	edi, eax
	call	lseek@PLT
	cmp	rax, -1
	je	.L79
	mov	eax, DWORD PTR filemodes[rip]
	lea	rcx, -18[rbp]
	mov	edx, 10
	mov	rsi, rcx
	mov	edi, eax
	call	read@PLT
	cmp	rax, 10
	jne	.L79
	movzx	eax, WORD PTR -18[rbp]
	test	ax, ax
	jne	.L80
.L79:
	call	__errno_location@PLT
	mov	DWORD PTR [rax], 0
	mov	rax, QWORD PTR -48[rbp]
	mov	rax, QWORD PTR 8[rax]
	mov	rdx, QWORD PTR -48[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	mov	eax, 0
	call	setstat
	jmp	.L78
.L80:
	movzx	eax, WORD PTR -18[rbp]
	movzx	edx, ax
	mov	rax, QWORD PTR -48[rbp]
	mov	DWORD PTR 24[rax], edx
	movzx	eax, WORD PTR -16[rbp]
	movzx	edx, ax
	mov	rax, QWORD PTR -48[rbp]
	mov	DWORD PTR 28[rax], edx
	movzx	eax, WORD PTR -14[rbp]
	movzx	edx, ax
	mov	rax, QWORD PTR -48[rbp]
	mov	DWORD PTR 32[rax], edx
	movzx	eax, WORD PTR -12[rbp]
	movzx	edx, ax
	mov	rax, QWORD PTR -48[rbp]
	mov	QWORD PTR 40[rax], rdx
	mov	rax, QWORD PTR -48[rbp]
	mov	eax, DWORD PTR 24[rax]
	and	eax, 61440
	cmp	eax, 24576
	jne	.L78
	movzx	eax, WORD PTR -10[rbp]
	movzx	eax, ax
	sal	rax, 10
	mov	rdx, rax
	mov	rax, QWORD PTR -48[rbp]
	mov	QWORD PTR 48[rax], rdx
.L78:
	mov	eax, 0
.L75:
	mov	rcx, QWORD PTR -8[rbp]
	sub	rcx, QWORD PTR fs:40
	je	.L82
	call	__stack_chk_fail@PLT
.L82:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE17:
	.size	getstat, .-getstat
	.type	advance, @function
advance:
.LFB18:
	.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, 40
	.cfi_offset 3, -24
.L95:
	mov	rax, QWORD PTR E[rip]
	test	rax, rax
	jne	.L84
	mov	edi, 32
	call	malloc@PLT
	mov	QWORD PTR E[rip], rax
	mov	rax, QWORD PTR E[rip]
	mov	QWORD PTR 8[rax], 0
	mov	rax, QWORD PTR E[rip]
	mov	QWORD PTR 16[rax], 0
	mov	rax, QWORD PTR E[rip]
	mov	QWORD PTR [rax], 0
	mov	rbx, QWORD PTR E[rip]
	mov	edi, 3
	call	malloc@PLT
	mov	QWORD PTR 24[rbx], rax
	mov	rax, QWORD PTR E[rip]
	mov	rax, QWORD PTR 24[rax]
	mov	WORD PTR [rax], 46
	jmp	.L85
.L84:
	mov	rax, QWORD PTR E[rip]
	mov	rax, QWORD PTR 16[rax]
	test	rax, rax
	je	.L86
	mov	rax, QWORD PTR E[rip]
	mov	rax, QWORD PTR 16[rax]
	mov	QWORD PTR E[rip], rax
	jmp	.L85
.L86:
	mov	rax, QWORD PTR E[rip]
	mov	QWORD PTR -32[rbp], rax
	mov	rax, QWORD PTR E[rip]
	mov	rax, QWORD PTR 8[rax]
	mov	QWORD PTR -24[rbp], rax
	cmp	QWORD PTR -24[rbp], 0
	je	.L87
	mov	rax, QWORD PTR E[rip]
	mov	rdx, QWORD PTR [rax]
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR 16[rax], rdx
.L87:
	mov	rax, QWORD PTR E[rip]
	mov	rax, QWORD PTR [rax]
	mov	QWORD PTR E[rip], rax
	mov	rax, QWORD PTR -32[rbp]
	mov	rax, QWORD PTR 24[rax]
	mov	rdi, rax
	call	free@PLT
	mov	rax, QWORD PTR -32[rbp]
	mov	rdi, rax
	call	free@PLT
	mov	rax, QWORD PTR E[rip]
	test	rax, rax
	jne	.L96
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR E[rip], rax
	mov	rax, QWORD PTR E[rip]
	test	rax, rax
	jne	.L86
	mov	eax, 0
	jmp	.L90
.L96:
	nop
.L85:
	mov	rax, QWORD PTR E[rip]
	mov	rdi, rax
	mov	eax, 0
	call	setpath
	lea	rsi, st[rip]
	lea	rdi, path[rip]
	mov	eax, 0
	call	getstat
	test	eax, eax
	jne	.L91
	mov	eax, DWORD PTR st[rip+24]
	and	eax, 61440
	cmp	eax, 40960
	jne	.L97
	mov	edx, 4096
	lea	rsi, lnkpth[rip]
	lea	rdi, path[rip]
	call	readlink@PLT
	mov	DWORD PTR -36[rbp], eax
	cmp	DWORD PTR -36[rbp], 0
	js	.L91
	mov	eax, DWORD PTR -36[rbp]
	cdqe
	lea	rdx, lnkpth[rip]
	mov	BYTE PTR [rax+rdx], 0
	jmp	.L93
.L91:
	call	__errno_location@PLT
	mov	eax, DWORD PTR [rax]
	test	eax, eax
	je	.L95
	call	__errno_location@PLT
	mov	eax, DWORD PTR [rax]
	cmp	eax, 2
	je	.L95
	lea	rdi, path[rip]
	mov	eax, 0
	call	perr
	jmp	.L95
.L97:
	nop
.L93:
	mov	eax, 0
	call	islink
	mov	QWORD PTR linkpath[rip], rax
	mov	eax, 1
.L90:
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE18:
	.size	advance, .-advance
	.section	.rodata
.LC5:
	.string	"request()"
.LC6:
	.string	"%s: Master died prematurely.\n"
	.text
	.type	request, @function
request:
.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, 16
.L104:
	mov	eax, DWORD PTR n.5[rip]
	test	eax, eax
	jne	.L99
	mov	eax, DWORD PTR chan[rip]
	mov	edx, 64
	lea	rsi, buf.4[rip]
	mov	edi, eax
	call	read@PLT
	mov	DWORD PTR n.5[rip], eax
	mov	eax, DWORD PTR n.5[rip]
	test	eax, eax
	jg	.L100
	mov	eax, DWORD PTR n.5[rip]
	test	eax, eax
	jns	.L101
	lea	rdi, .LC5[rip]
	mov	eax, 0
	call	perrx
.L101:
	mov	rdx, QWORD PTR arg0[rip]
	mov	rax, QWORD PTR stderr[rip]
	lea	rsi, .LC6[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	edi, 1
	call	exit@PLT
.L100:
	lea	rax, buf.4[rip]
	mov	QWORD PTR bp.3[rip], rax
.L99:
	mov	rax, QWORD PTR bp.3[rip]
	lea	rdx, 1[rax]
	mov	QWORD PTR bp.3[rip], rdx
	movzx	eax, BYTE PTR [rax]
	movsx	eax, al
	and	eax, 255
	mov	DWORD PTR -4[rbp], eax
	mov	eax, DWORD PTR n.5[rip]
	sub	eax, 1
	mov	DWORD PTR n.5[rip], eax
	cmp	DWORD PTR -4[rbp], 127
	jg	.L107
	mov	eax, DWORD PTR -4[rbp]
	mov	edi, eax
	call	putchar@PLT
	jmp	.L104
.L107:
	nop
	mov	eax, DWORD PTR -4[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE19:
	.size	request, .-request
	.section	.rodata
.LC7:
	.string	"report()"
	.text
	.type	report, @function
report:
.LFB20:
	.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, bucket[rip]
	mov	QWORD PTR buckp[rip], rax
	jmp	.L109
.L112:
	mov	eax, DWORD PTR buckn[rip]
	mov	DWORD PTR -4[rbp], eax
	cmp	DWORD PTR -4[rbp], 131072
	jle	.L110
	mov	DWORD PTR -4[rbp], 131072
.L110:
	mov	eax, DWORD PTR -4[rbp]
	movsx	rdx, eax
	mov	rcx, QWORD PTR buckp[rip]
	mov	eax, DWORD PTR chan[rip+4]
	mov	rsi, rcx
	mov	edi, eax
	call	write@PLT
	mov	DWORD PTR -4[rbp], eax
	cmp	DWORD PTR -4[rbp], 0
	jns	.L111
	lea	rdi, .LC7[rip]
	mov	eax, 0
	call	perrx
.L111:
	mov	rdx, QWORD PTR buckp[rip]
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	add	rax, rdx
	mov	QWORD PTR buckp[rip], rax
	mov	eax, DWORD PTR buckn[rip]
	sub	eax, DWORD PTR -4[rbp]
	mov	DWORD PTR buckn[rip], eax
.L109:
	mov	eax, DWORD PTR buckn[rip]
	test	eax, eax
	jg	.L112
	lea	rax, bucket[rip]
	mov	QWORD PTR buckp[rip], rax
	mov	DWORD PTR buckn[rip], 0
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE20:
	.size	report, .-report
	.type	inform, @function
inform:
.LFB21:
	.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 -4[rbp], edi
	mov	rax, QWORD PTR buckp[rip]
	lea	rdx, 1[rax]
	mov	QWORD PTR buckp[rip], rdx
	mov	edx, DWORD PTR -4[rbp]
	mov	BYTE PTR [rax], dl
	mov	eax, DWORD PTR buckn[rip]
	add	eax, 1
	mov	DWORD PTR buckn[rip], eax
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE21:
	.size	inform, .-inform
	.type	sendnum, @function
sendnum:
.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, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	rax, QWORD PTR -24[rbp]
	mov	BYTE PTR -12[rbp], al
	mov	rax, QWORD PTR -24[rbp]
	sar	rax, 8
	mov	BYTE PTR -11[rbp], al
	mov	rax, QWORD PTR -24[rbp]
	sar	rax, 16
	mov	BYTE PTR -10[rbp], al
	mov	rax, QWORD PTR -24[rbp]
	sar	rax, 24
	mov	BYTE PTR -9[rbp], al
	mov	rax, QWORD PTR buckp[rip]
	mov	edx, DWORD PTR -12[rbp]
	mov	DWORD PTR [rax], edx
	mov	rax, QWORD PTR buckp[rip]
	add	rax, 4
	mov	QWORD PTR buckp[rip], rax
	mov	eax, DWORD PTR buckn[rip]
	add	eax, 4
	mov	DWORD PTR buckn[rip], eax
	nop
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L115
	call	__stack_chk_fail@PLT
.L115:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE22:
	.size	sendnum, .-sendnum
	.type	send, @function
send:
.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
	mov	QWORD PTR -8[rbp], rdi
	mov	DWORD PTR -12[rbp], esi
	mov	eax, DWORD PTR -12[rbp]
	cdqe
	mov	rdi, rax
	mov	eax, 0
	call	sendnum
	cmp	DWORD PTR -12[rbp], 0
	jle	.L118
	mov	eax, DWORD PTR -12[rbp]
	movsx	rdx, eax
	mov	rax, QWORD PTR buckp[rip]
	mov	rcx, QWORD PTR -8[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	memcpy@PLT
	mov	rdx, QWORD PTR buckp[rip]
	mov	eax, DWORD PTR -12[rbp]
	cdqe
	add	rax, rdx
	mov	QWORD PTR buckp[rip], rax
	mov	eax, DWORD PTR buckn[rip]
	mov	edx, eax
	mov	eax, DWORD PTR -12[rbp]
	add	eax, edx
	mov	DWORD PTR buckn[rip], eax
.L118:
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE23:
	.size	send, .-send
	.type	sendstat, @function
sendstat:
.LFB24:
	.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	rax, QWORD PTR -8[rbp]
	mov	eax, DWORD PTR 24[rax]
	mov	eax, eax
	mov	rdi, rax
	mov	eax, 0
	call	sendnum
	mov	rax, QWORD PTR -8[rbp]
	mov	eax, DWORD PTR 28[rax]
	mov	eax, eax
	mov	rdi, rax
	mov	eax, 0
	call	sendnum
	mov	rax, QWORD PTR -8[rbp]
	mov	eax, DWORD PTR 32[rax]
	mov	eax, eax
	mov	rdi, rax
	mov	eax, 0
	call	sendnum
	mov	rax, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR 40[rax]
	mov	rdi, rax
	mov	eax, 0
	call	sendnum
	mov	rax, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR 48[rax]
	mov	rdi, rax
	mov	eax, 0
	call	sendnum
	mov	rax, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR 88[rax]
	mov	rdi, rax
	mov	eax, 0
	call	sendnum
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE24:
	.size	sendstat, .-sendstat
	.section	.rodata
.LC8:
	.string	"%s: Can't open %s"
.LC9:
	.string	"%s: strange request\n"
	.text
	.type	slave, @function
slave:
.LFB25:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 4096
	or	QWORD PTR [rsp], 0
	sub	rsp, 32
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	DWORD PTR -4124[rbp], 0
.L148:
	mov	eax, 0
	call	request
	add	eax, -128
	cmp	eax, 10
	ja	.L121
	mov	eax, eax
	lea	rdx, 0[0+rax*4]
	lea	rax, .L123[rip]
	mov	eax, DWORD PTR [rdx+rax]
	cdqe
	lea	rdx, .L123[rip]
	add	rax, rdx
	notrack jmp	rax
	.section	.rodata
	.align 4
	.align 4
.L123:
	.long	.L132-.L123
	.long	.L131-.L123
	.long	.L130-.L123
	.long	.L121-.L123
	.long	.L129-.L123
	.long	.L128-.L123
	.long	.L127-.L123
	.long	.L126-.L123
	.long	.L125-.L123
	.long	.L124-.L123
	.long	.L122-.L123
	.text
.L132:
	mov	eax, 0
	call	enter
	jmp	.L133
.L131:
	mov	eax, 0
	call	advance
	test	eax, eax
	je	.L134
	cmp	DWORD PTR -4124[rbp], 1
	jne	.L135
.L134:
	mov	edi, 132
	mov	eax, 0
	call	inform
	mov	DWORD PTR -4124[rbp], 1
	jmp	.L133
.L135:
	mov	rax, QWORD PTR linkpath[rip]
	test	rax, rax
	je	.L137
	mov	edi, 129
	mov	eax, 0
	call	inform
	mov	rax, QWORD PTR linkpath[rip]
	mov	rdi, rax
	call	strlen@PLT
	lea	rdx, 1[rax]
	mov	rax, QWORD PTR linkpath[rip]
	mov	rsi, rdx
	mov	rdi, rax
	mov	eax, 0
	call	send
	jmp	.L138
.L137:
	mov	eax, DWORD PTR st[rip+24]
	and	eax, 61440
	cmp	eax, 40960
	jne	.L139
	mov	edi, 133
	mov	eax, 0
	call	inform
	lea	rdi, lnkpth[rip]
	call	strlen@PLT
	add	rax, 1
	mov	rsi, rax
	lea	rdi, lnkpth[rip]
	mov	eax, 0
	call	send
	jmp	.L138
.L139:
	mov	edi, 128
	mov	eax, 0
	call	inform
.L138:
	lea	rdi, path[rip]
	call	strlen@PLT
	add	rax, 1
	mov	rsi, rax
	lea	rdi, path[rip]
	mov	eax, 0
	call	send
	lea	rdi, st[rip]
	mov	eax, 0
	call	sendstat
	jmp	.L133
.L130:
	mov	esi, 0
	lea	rdi, path[rip]
	mov	eax, 0
	call	open@PLT
	mov	DWORD PTR -4120[rbp], eax
	cmp	DWORD PTR -4120[rbp], 0
	jns	.L140
	mov	rdx, QWORD PTR arg0[rip]
	mov	rax, QWORD PTR stderr[rip]
	lea	rcx, path[rip]
	lea	rsi, .LC8[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	eax, 0
	call	because
	mov	edi, 131
	mov	eax, 0
	call	inform
	jmp	.L133
.L140:
	mov	edi, 130
	mov	eax, 0
	call	inform
.L143:
	lea	rcx, -4112[rbp]
	mov	eax, DWORD PTR -4120[rbp]
	mov	edx, 4096
	mov	rsi, rcx
	mov	edi, eax
	call	read@PLT
	mov	DWORD PTR -4116[rbp], eax
	cmp	DWORD PTR -4116[rbp], 0
	jns	.L141
	lea	rdi, path[rip]
	mov	eax, 0
	call	perr
.L141:
	mov	edx, DWORD PTR -4116[rbp]
	lea	rax, -4112[rbp]
	mov	esi, edx
	mov	rdi, rax
	mov	eax, 0
	call	send
	cmp	DWORD PTR -4116[rbp], 0
	jle	.L142
	mov	eax, 0
	call	report
.L142:
	cmp	DWORD PTR -4116[rbp], 0
	jg	.L143
	mov	eax, DWORD PTR -4120[rbp]
	mov	edi, eax
	call	close@PLT
	jmp	.L133
.L129:
	mov	eax, 0
	call	islink
	jmp	.L133
.L127:
	mov	DWORD PTR ex[rip], 1
.L128:
	mov	DWORD PTR -4124[rbp], 2
	jmp	.L133
.L126:
	mov	edi, 121
	mov	eax, 0
	call	ask
	test	eax, eax
	je	.L144
	mov	eax, 134
	jmp	.L145
.L144:
	mov	eax, 135
.L145:
	mov	edi, eax
	mov	eax, 0
	call	inform
	jmp	.L133
.L125:
	mov	edi, 110
	mov	eax, 0
	call	ask
	test	eax, eax
	je	.L146
	mov	eax, 134
	jmp	.L147
.L146:
	mov	eax, 135
.L147:
	mov	edi, eax
	mov	eax, 0
	call	inform
	jmp	.L133
.L124:
	mov	edi, 134
	mov	eax, 0
	call	inform
	jmp	.L133
.L122:
	mov	edi, 135
	mov	eax, 0
	call	inform
	jmp	.L133
.L121:
	mov	rdx, QWORD PTR arg0[rip]
	mov	rax, QWORD PTR stderr[rip]
	lea	rsi, .LC9[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	edi, 1
	call	exit@PLT
.L133:
	mov	eax, 0
	call	report
	cmp	DWORD PTR -4124[rbp], 2
	jne	.L148
	nop
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L149
	call	__stack_chk_fail@PLT
.L149:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE25:
	.size	slave, .-slave
	.section	.rodata
.LC10:
	.string	"fork()"
	.text
	.type	execute, @function
execute:
.LFB26:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 48
	mov	QWORD PTR -40[rbp], rdi
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	call	fork@PLT
	mov	DWORD PTR -16[rbp], eax
	cmp	DWORD PTR -16[rbp], 0
	jns	.L151
	lea	rdi, .LC10[rip]
	mov	eax, 0
	call	perr
	mov	eax, 0
	jmp	.L156
.L151:
	cmp	DWORD PTR -16[rbp], 0
	jne	.L154
	mov	rax, QWORD PTR -40[rbp]
	mov	rax, QWORD PTR [rax]
	mov	rdx, QWORD PTR -40[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	execvp@PLT
	mov	rax, QWORD PTR -40[rbp]
	mov	rax, QWORD PTR [rax]
	mov	rdi, rax
	mov	eax, 0
	call	perrx
	jmp	.L154
.L155:
	cmp	DWORD PTR -12[rbp], 0
	jns	.L154
	mov	rax, QWORD PTR -40[rbp]
	mov	rax, QWORD PTR [rax]
	mov	rdi, rax
	mov	eax, 0
	call	perr
	mov	eax, 0
	jmp	.L156
.L154:
	lea	rax, -20[rbp]
	mov	rdi, rax
	call	wait@PLT
	mov	DWORD PTR -12[rbp], eax
	mov	eax, DWORD PTR -12[rbp]
	cmp	eax, DWORD PTR -16[rbp]
	jne	.L155
	mov	eax, DWORD PTR -20[rbp]
	test	eax, eax
	sete	al
	movzx	eax, al
.L156:
	mov	rcx, QWORD PTR -8[rbp]
	sub	rcx, QWORD PTR fs:40
	je	.L157
	call	__stack_chk_fail@PLT
.L157:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE26:
	.size	execute, .-execute
	.section	.rodata
.LC11:
	.string	"(rm -r %s)\n"
	.text
	.type	removedir, @function
removedir:
.LFB27:
	.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	rax, QWORD PTR -8[rbp]
	mov	rsi, rax
	lea	rdi, .LC11[rip]
	mov	eax, 0
	call	printf@PLT
	mov	rax, QWORD PTR -8[rbp]
	mov	QWORD PTR argv.2[rip+16], rax
	lea	rdi, argv.2[rip]
	mov	eax, 0
	call	execute
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE27:
	.size	removedir, .-removedir
	.section	.rodata
.LC12:
	.string	"order()"
	.text
	.type	order, @function
order:
.LFB28:
	.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	DWORD PTR -20[rbp], edi
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	eax, DWORD PTR -20[rbp]
	mov	BYTE PTR -9[rbp], al
	mov	eax, DWORD PTR chan[rip+4]
	lea	rcx, -9[rbp]
	mov	edx, 1
	mov	rsi, rcx
	mov	edi, eax
	call	write@PLT
	cmp	rax, 1
	je	.L163
	lea	rdi, .LC12[rip]
	mov	eax, 0
	call	perrx
.L163:
	nop
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L162
	call	__stack_chk_fail@PLT
.L162:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE28:
	.size	order, .-order
	.section	.rodata
.LC13:
	.string	"reply channel from slave"
.LC14:
	.string	"%s: slave died prematurely.\n"
	.text
	.type	rread, @function
rread:
.LFB29:
	.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	DWORD PTR -28[rbp], esi
	jmp	.L165
.L170:
	mov	eax, DWORD PTR buckn[rip]
	test	eax, eax
	jne	.L166
	mov	eax, DWORD PTR chan[rip]
	mov	edx, 4101
	lea	rsi, bucket[rip]
	mov	edi, eax
	call	read@PLT
	mov	DWORD PTR buckn[rip], eax
	mov	eax, DWORD PTR buckn[rip]
	cmp	eax, -1
	je	.L167
	test	eax, eax
	je	.L168
	jmp	.L171
.L167:
	lea	rdi, .LC13[rip]
	mov	eax, 0
	call	perrx
.L168:
	mov	rdx, QWORD PTR arg0[rip]
	mov	rax, QWORD PTR stderr[rip]
	lea	rsi, .LC14[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	edi, 1
	call	exit@PLT
.L171:
	lea	rax, bucket[rip]
	mov	QWORD PTR buckp[rip], rax
.L166:
	mov	eax, DWORD PTR buckn[rip]
	cmp	DWORD PTR -28[rbp], eax
	cmovle	eax, DWORD PTR -28[rbp]
	mov	DWORD PTR -4[rbp], eax
	mov	eax, DWORD PTR -4[rbp]
	movsx	rdx, eax
	mov	rcx, QWORD PTR buckp[rip]
	mov	rax, QWORD PTR -24[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	memcpy@PLT
	mov	rdx, QWORD PTR buckp[rip]
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	add	rax, rdx
	mov	QWORD PTR buckp[rip], rax
	mov	eax, DWORD PTR buckn[rip]
	sub	eax, DWORD PTR -4[rbp]
	mov	DWORD PTR buckn[rip], eax
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	add	QWORD PTR -24[rbp], rax
	mov	eax, DWORD PTR -4[rbp]
	sub	DWORD PTR -28[rbp], eax
.L165:
	cmp	DWORD PTR -28[rbp], 0
	jg	.L170
	nop
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE29:
	.size	rread, .-rread
	.type	answer, @function
answer:
.LFB30:
	.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	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	lea	rax, -13[rbp]
	mov	esi, 1
	mov	rdi, rax
	mov	eax, 0
	call	rread
	movzx	eax, BYTE PTR -13[rbp]
	movsx	eax, al
	and	eax, 255
	mov	DWORD PTR -12[rbp], eax
	mov	eax, DWORD PTR -12[rbp]
	mov	rdx, QWORD PTR -8[rbp]
	sub	rdx, QWORD PTR fs:40
	je	.L174
	call	__stack_chk_fail@PLT
.L174:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE30:
	.size	answer, .-answer
	.type	recnum, @function
recnum:
.LFB31:
	.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	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	lea	rax, -12[rbp]
	mov	esi, 4
	mov	rdi, rax
	mov	eax, 0
	call	rread
	movzx	eax, BYTE PTR -12[rbp]
	movzx	edx, al
	movzx	eax, BYTE PTR -11[rbp]
	movzx	eax, al
	sal	eax, 8
	or	eax, edx
	mov	edx, eax
	movzx	eax, BYTE PTR -10[rbp]
	movzx	eax, al
	sal	rax, 16
	or	rdx, rax
	movzx	eax, BYTE PTR -9[rbp]
	movzx	eax, al
	sal	rax, 24
	or	rax, rdx
	mov	rcx, QWORD PTR -8[rbp]
	sub	rcx, QWORD PTR fs:40
	je	.L177
	call	__stack_chk_fail@PLT
.L177:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE31:
	.size	recnum, .-recnum
	.section	.rodata
	.align 8
.LC15:
	.string	"%s: panic: Can't read %d bytes\n"
	.text
	.type	receive, @function
receive:
.LFB32:
	.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	DWORD PTR -28[rbp], esi
	mov	eax, 0
	call	recnum
	mov	DWORD PTR -4[rbp], eax
	mov	eax, DWORD PTR -4[rbp]
	cmp	eax, DWORD PTR -28[rbp]
	jle	.L179
	mov	rdx, QWORD PTR arg0[rip]
	mov	rax, QWORD PTR stderr[rip]
	mov	ecx, DWORD PTR -4[rbp]
	lea	rsi, .LC15[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	edi, 1
	call	exit@PLT
.L179:
	cmp	DWORD PTR -4[rbp], 0
	jle	.L180
	mov	edx, DWORD PTR -4[rbp]
	mov	rax, QWORD PTR -24[rbp]
	mov	esi, edx
	mov	rdi, rax
	mov	eax, 0
	call	rread
.L180:
	mov	eax, DWORD PTR -4[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE32:
	.size	receive, .-receive
	.type	recstat, @function
recstat:
.LFB33:
	.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	eax, 0
	call	recnum
	mov	edx, eax
	mov	rax, QWORD PTR -8[rbp]
	mov	DWORD PTR 24[rax], edx
	mov	eax, 0
	call	recnum
	mov	edx, eax
	mov	rax, QWORD PTR -8[rbp]
	mov	DWORD PTR 28[rax], edx
	mov	eax, 0
	call	recnum
	mov	edx, eax
	mov	rax, QWORD PTR -8[rbp]
	mov	DWORD PTR 32[rax], edx
	mov	eax, 0
	call	recnum
	mov	rdx, rax
	mov	rax, QWORD PTR -8[rbp]
	mov	QWORD PTR 40[rax], rdx
	mov	eax, 0
	call	recnum
	mov	rdx, QWORD PTR -8[rbp]
	mov	QWORD PTR 48[rdx], rax
	mov	eax, 0
	call	recnum
	mov	rdx, QWORD PTR -8[rbp]
	mov	QWORD PTR 88[rdx], rax
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE33:
	.size	recstat, .-recstat
	.type	key, @function
key:
.LFB34:
	.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 tty.1[rip]
	test	eax, eax
	jns	.L184
	mov	edi, 0
	call	isatty@PLT
	mov	DWORD PTR tty.1[rip], eax
.L184:
	mov	rax, QWORD PTR stdin[rip]
	mov	rdi, rax
	call	feof@PLT
	test	eax, eax
	jne	.L185
	call	getchar@PLT
	mov	DWORD PTR -4[rbp], eax
	cmp	DWORD PTR -4[rbp], -1
	jne	.L186
.L185:
	mov	DWORD PTR -4[rbp], 10
	mov	eax, DWORD PTR tty.1[rip]
	test	eax, eax
	je	.L186
	mov	edi, 10
	call	putchar@PLT
.L186:
	mov	eax, DWORD PTR tty.1[rip]
	test	eax, eax
	jne	.L187
	mov	eax, DWORD PTR -4[rbp]
	mov	edi, eax
	call	putchar@PLT
.L187:
	mov	eax, DWORD PTR -4[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE34:
	.size	key, .-key
	.section	.rodata
.LC16:
	.string	"? (%c) "
	.text
	.type	ask, @function
ask:
.LFB35:
	.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	DWORD PTR -20[rbp], edi
	mov	eax, DWORD PTR chan[rip]
	test	eax, eax
	jne	.L190
	mov	rax, QWORD PTR stdout[rip]
	mov	rdi, rax
	call	fflush@PLT
	cmp	DWORD PTR -20[rbp], 121
	jne	.L191
	mov	eax, 135
	jmp	.L192
.L191:
	mov	eax, 136
.L192:
	mov	edi, eax
	mov	eax, 0
	call	order
	mov	eax, 0
	call	answer
	cmp	eax, 134
	sete	al
	movzx	eax, al
	jmp	.L193
.L190:
	mov	eax, DWORD PTR -20[rbp]
	mov	esi, eax
	lea	rdi, .LC16[rip]
	mov	eax, 0
	call	printf@PLT
	mov	rax, QWORD PTR stdout[rip]
	mov	rdi, rax
	call	fflush@PLT
.L194:
	mov	eax, 0
	call	key
	mov	DWORD PTR -4[rbp], eax
	cmp	DWORD PTR -4[rbp], 32
	je	.L194
	cmp	DWORD PTR -4[rbp], 9
	je	.L194
	mov	eax, DWORD PTR -4[rbp]
	mov	DWORD PTR -8[rbp], eax
	jmp	.L195
.L196:
	mov	eax, 0
	call	key
	mov	DWORD PTR -4[rbp], eax
.L195:
	cmp	DWORD PTR -4[rbp], 10
	jne	.L196
	cmp	DWORD PTR -8[rbp], 121
	je	.L197
	cmp	DWORD PTR -8[rbp], 89
	je	.L197
	cmp	DWORD PTR -8[rbp], 110
	je	.L197
	cmp	DWORD PTR -8[rbp], 78
	je	.L197
	mov	eax, DWORD PTR -20[rbp]
	mov	DWORD PTR -8[rbp], eax
.L197:
	cmp	DWORD PTR -8[rbp], 121
	je	.L198
	cmp	DWORD PTR -8[rbp], 89
	jne	.L199
.L198:
	mov	eax, 1
	jmp	.L193
.L199:
	mov	eax, 0
.L193:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE35:
	.size	ask, .-ask
	.section	.rodata
.LC17:
	.string	"%s: Can't set modes of %s"
.LC18:
	.string	"Mode changed of %s\n"
	.text
	.type	setmodes, @function
setmodes:
.LFB36:
	.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	DWORD PTR -196[rbp], edi
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	DWORD PTR -180[rbp], 0
	call	__errno_location@PLT
	mov	DWORD PTR [rax], 0
	lea	rax, -160[rbp]
	mov	rsi, rax
	lea	rdi, Spath[rip]
	mov	eax, 0
	call	getstat
	mov	eax, DWORD PTR backup[rip]
	test	eax, eax
	je	.L202
	cmp	DWORD PTR -196[rbp], 0
	je	.L202
	mov	rax, QWORD PTR -152[rbp]
	lea	rsi, Sst[rip]
	mov	rdi, rax
	mov	eax, 0
	call	setstat
	lea	rax, -160[rbp]
	mov	rsi, rax
	lea	rdi, Spath[rip]
	mov	eax, 0
	call	getstat
.L202:
	mov	eax, DWORD PTR -136[rbp]
	and	eax, 61440
	cmp	eax, 40960
	je	.L216
	call	__errno_location@PLT
	mov	eax, DWORD PTR [rax]
	test	eax, eax
	jne	.L205
	mov	edx, DWORD PTR -136[rbp]
	mov	eax, DWORD PTR Sst[rip+24]
	cmp	edx, eax
	je	.L205
	mov	eax, DWORD PTR backup[rip]
	test	eax, eax
	jne	.L206
	mov	eax, DWORD PTR Sst[rip+24]
	and	eax, 4095
	mov	esi, eax
	lea	rdi, Spath[rip]
	call	chmod@PLT
.L206:
	mov	DWORD PTR -180[rbp], 1
.L205:
	call	__errno_location@PLT
	mov	eax, DWORD PTR [rax]
	test	eax, eax
	jne	.L207
	mov	edx, DWORD PTR -132[rbp]
	mov	eax, DWORD PTR Sst[rip+28]
	cmp	edx, eax
	jne	.L208
	mov	edx, DWORD PTR -128[rbp]
	mov	eax, DWORD PTR Sst[rip+32]
	cmp	edx, eax
	je	.L207
.L208:
	mov	eax, DWORD PTR backup[rip]
	test	eax, eax
	jne	.L209
	call	geteuid@PLT
	test	eax, eax
	jne	.L207
.L209:
	call	__errno_location@PLT
	mov	DWORD PTR [rax], 0
	mov	eax, DWORD PTR backup[rip]
	test	eax, eax
	jne	.L210
	mov	edx, DWORD PTR Sst[rip+32]
	mov	eax, DWORD PTR Sst[rip+28]
	mov	esi, eax
	lea	rdi, Spath[rip]
	call	chown@PLT
.L210:
	mov	DWORD PTR -180[rbp], 1
.L207:
	mov	eax, DWORD PTR backup[rip]
	test	eax, eax
	je	.L211
	cmp	DWORD PTR -196[rbp], 0
	jne	.L211
	mov	rax, QWORD PTR -152[rbp]
	lea	rsi, Sst[rip]
	mov	rdi, rax
	mov	eax, 0
	call	setstat
.L211:
	call	__errno_location@PLT
	mov	eax, DWORD PTR [rax]
	test	eax, eax
	jne	.L212
	mov	eax, DWORD PTR Sst[rip+24]
	and	eax, 61440
	cmp	eax, 32768
	jne	.L212
	mov	rdx, QWORD PTR -72[rbp]
	mov	rax, QWORD PTR Sst[rip+88]
	cmp	rdx, rax
	je	.L212
	lea	rax, -176[rbp]
	mov	rdi, rax
	call	time@PLT
	mov	rax, QWORD PTR Sst[rip+88]
	mov	QWORD PTR -168[rbp], rax
	call	__errno_location@PLT
	mov	DWORD PTR [rax], 0
	lea	rax, -176[rbp]
	mov	rsi, rax
	lea	rdi, Spath[rip]
	call	utime@PLT
	mov	DWORD PTR -180[rbp], 1
.L212:
	call	__errno_location@PLT
	mov	eax, DWORD PTR [rax]
	test	eax, eax
	je	.L213
	mov	rdx, QWORD PTR arg0[rip]
	mov	rax, QWORD PTR stderr[rip]
	lea	rcx, Spath[rip]
	lea	rsi, .LC17[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	eax, 0
	call	because
	jmp	.L201
.L213:
	cmp	DWORD PTR -180[rbp], 0
	je	.L201
	cmp	DWORD PTR -196[rbp], 0
	jne	.L201
	lea	rsi, Spath[rip]
	lea	rdi, .LC18[rip]
	mov	eax, 0
	call	printf@PLT
	jmp	.L201
.L216:
	nop
.L201:
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L215
	call	__stack_chk_fail@PLT
.L215:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE36:
	.size	setmodes, .-setmodes
	.section	.rodata
.LC19:
	.string	"%s: can't make %s look old"
.LC20:
	.string	"%s: made %s look old.\n"
	.text
	.type	makeold, @function
makeold:
.LFB37:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	lea	rsi, tms.0[rip]
	lea	rdi, Spath[rip]
	call	utime@PLT
	test	eax, eax
	jns	.L218
	call	__errno_location@PLT
	mov	eax, DWORD PTR [rax]
	cmp	eax, 2
	je	.L220
	mov	rdx, QWORD PTR arg0[rip]
	mov	rax, QWORD PTR stderr[rip]
	lea	rcx, Spath[rip]
	lea	rsi, .LC19[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	eax, 0
	call	because
	jmp	.L220
.L218:
	mov	rdx, QWORD PTR arg0[rip]
	mov	rax, QWORD PTR stderr[rip]
	lea	rcx, Spath[rip]
	lea	rsi, .LC20[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
.L220:
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE37:
	.size	makeold, .-makeold
	.local	busy
	.comm	busy,4,4
	.section	.rodata
.LC21:
	.string	"%s: Exiting after signal %d\n"
.LC22:
	.string	"%s: was installing %s\n"
	.text
	.type	bail_out, @function
bail_out:
.LFB38:
	.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	DWORD PTR -4[rbp], edi
	mov	eax, DWORD PTR -4[rbp]
	mov	esi, 1
	mov	edi, eax
	call	signal@PLT
	mov	rdx, QWORD PTR arg0[rip]
	mov	rax, QWORD PTR stderr[rip]
	mov	ecx, DWORD PTR -4[rbp]
	lea	rsi, .LC21[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	eax, DWORD PTR busy[rip]
	test	eax, eax
	je	.L222
	mov	rdx, QWORD PTR arg0[rip]
	mov	rax, QWORD PTR stderr[rip]
	lea	rcx, Spath[rip]
	lea	rsi, .LC22[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	eax, 0
	call	makeold
.L222:
	mov	edi, 134
	mov	eax, 0
	call	order
	mov	eax, DWORD PTR -4[rbp]
	mov	edi, eax
	call	exit@PLT
	.cfi_endproc
.LFE38:
	.size	bail_out, .-bail_out
	.type	makenode, @function
makenode:
.LFB39:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 48
	mov	QWORD PTR -24[rbp], rdi
	mov	DWORD PTR -28[rbp], esi
	mov	QWORD PTR -40[rbp], rdx
	mov	QWORD PTR -48[rbp], rcx
	mov	eax, DWORD PTR backup[rip]
	test	eax, eax
	jne	.L224
	mov	ecx, DWORD PTR -28[rbp]
	mov	rdx, QWORD PTR -40[rbp]
	mov	rax, QWORD PTR -24[rbp]
	mov	esi, ecx
	mov	rdi, rax
	call	mknod@PLT
	mov	DWORD PTR -4[rbp], eax
	jmp	.L225
.L224:
	mov	rax, QWORD PTR -24[rbp]
	mov	esi, 420
	mov	rdi, rax
	call	creat@PLT
	mov	DWORD PTR -4[rbp], eax
	cmp	DWORD PTR -4[rbp], 0
	js	.L225
	mov	eax, DWORD PTR -4[rbp]
	mov	edi, eax
	call	close@PLT
.L225:
	mov	eax, DWORD PTR -4[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE39:
	.size	makenode, .-makenode
	.section	.rodata
.LC23:
	.string	"Link %s to %s"
.LC24:
	.string	"Linked %s to %s\n"
.LC25:
	.string	"%s: Can't link %s to %s"
.LC26:
	.string	"Add dir %s"
.LC27:
	.string	"Directory %s created.\n"
.LC28:
	.string	"Create special file %s"
	.align 8
.LC29:
	.string	"%s: Can't create special file %s"
.LC30:
	.string	"Special file %s created\n"
.LC31:
	.string	"Install %s -> %s"
.LC32:
	.string	"%s: Can't create symlink %s"
.LC33:
	.string	"Updated:  "
.LC34:
	.string	"Installed:"
.LC35:
	.string	"%s %s -> %s\n"
.LC36:
	.string	"Install %s"
.LC37:
	.string	"%s: Can't create %s"
.LC38:
	.string	"%s: Write error on %s"
.LC39:
	.string	"%s: Slave read err on %s\n"
.LC40:
	.string	"Restored: "
.LC41:
	.string	"%s %s\n"
	.align 8
.LC42:
	.string	"%s: Won't add file with strange mode %05o: %s\n"
	.text
	.type	add, @function
add:
.LFB40:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 4096
	or	QWORD PTR [rsp], 0
	sub	rsp, 48
	mov	DWORD PTR -4132[rbp], edi
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	eax, DWORD PTR force[rip]
	test	eax, eax
	je	.L228
	cmp	DWORD PTR -4132[rbp], 0
	je	.L228
	mov	eax, 1
	jmp	.L229
.L228:
	mov	eax, 0
.L229:
	mov	DWORD PTR -4120[rbp], eax
	mov	rax, QWORD PTR Slinkpath[rip]
	test	rax, rax
	je	.L230
	mov	eax, DWORD PTR Sst[rip+24]
	and	eax, 61440
	cmp	eax, 40960
	je	.L230
	mov	eax, DWORD PTR interact[rip]
	test	eax, eax
	je	.L231
	cmp	DWORD PTR -4132[rbp], 0
	jne	.L231
	mov	rax, QWORD PTR Slinkpath[rip]
	mov	rdx, rax
	lea	rsi, Spath[rip]
	lea	rdi, .LC23[rip]
	mov	eax, 0
	call	printf@PLT
	mov	edi, 110
	mov	eax, 0
	call	ask
	test	eax, eax
	je	.L267
.L231:
	mov	rax, QWORD PTR Slinkpath[rip]
	lea	rsi, Spath[rip]
	mov	rdi, rax
	call	link@PLT
	test	eax, eax
	js	.L233
	mov	rax, QWORD PTR Slinkpath[rip]
	mov	rdx, rax
	lea	rsi, Spath[rip]
	lea	rdi, .LC24[rip]
	mov	eax, 0
	call	printf@PLT
	jmp	.L227
.L233:
	mov	rcx, QWORD PTR Slinkpath[rip]
	mov	rdx, QWORD PTR arg0[rip]
	mov	rax, QWORD PTR stderr[rip]
	lea	r8, Spath[rip]
	lea	rsi, .LC25[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	eax, 0
	call	because
.L230:
	mov	eax, DWORD PTR Sst[rip+24]
	and	eax, 61440
	cmp	eax, 40960
	je	.L234
	cmp	eax, 40960
	ja	.L235
	cmp	eax, 32768
	je	.L236
	cmp	eax, 32768
	ja	.L235
	cmp	eax, 24576
	je	.L237
	cmp	eax, 24576
	ja	.L235
	cmp	eax, 16384
	je	.L238
	cmp	eax, 16384
	ja	.L235
	cmp	eax, 4096
	je	.L237
	cmp	eax, 8192
	je	.L237
	jmp	.L235
.L238:
	mov	eax, DWORD PTR force[rip]
	test	eax, eax
	jne	.L239
	lea	rsi, Spath[rip]
	lea	rdi, .LC26[rip]
	mov	eax, 0
	call	printf@PLT
	mov	edi, 110
	mov	eax, 0
	call	ask
	test	eax, eax
	je	.L268
.L239:
	mov	eax, DWORD PTR backup[rip]
	test	eax, eax
	jne	.L240
	mov	eax, DWORD PTR Sst[rip+24]
	jmp	.L241
.L240:
	mov	eax, 493
.L241:
	mov	esi, eax
	lea	rdi, Spath[rip]
	call	mkdir@PLT
	test	eax, eax
	jns	.L242
	lea	rdi, Spath[rip]
	mov	eax, 0
	call	perr
	jmp	.L227
.L242:
	lea	rsi, Spath[rip]
	lea	rdi, .LC27[rip]
	mov	eax, 0
	call	printf@PLT
	mov	edi, 128
	mov	eax, 0
	call	order
	jmp	.L243
.L237:
	mov	eax, DWORD PTR interact[rip]
	test	eax, eax
	je	.L244
	cmp	DWORD PTR -4132[rbp], 0
	jne	.L244
	lea	rsi, Spath[rip]
	lea	rdi, .LC28[rip]
	mov	eax, 0
	call	printf@PLT
	mov	edi, 110
	mov	eax, 0
	call	ask
	test	eax, eax
	jne	.L244
	mov	edi, 132
	mov	eax, 0
	call	order
	jmp	.L227
.L244:
	mov	rcx, QWORD PTR Sst[rip+48]
	mov	rdx, QWORD PTR Sst[rip+40]
	mov	eax, DWORD PTR Sst[rip+24]
	mov	esi, eax
	lea	rdi, Spath[rip]
	mov	eax, 0
	call	makenode
	test	eax, eax
	jns	.L245
	mov	rdx, QWORD PTR arg0[rip]
	mov	rax, QWORD PTR stderr[rip]
	lea	rcx, Spath[rip]
	lea	rsi, .LC29[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	eax, 0
	call	because
	jmp	.L227
.L245:
	lea	rsi, Spath[rip]
	lea	rdi, .LC30[rip]
	mov	eax, 0
	call	printf@PLT
	jmp	.L243
.L234:
	mov	eax, DWORD PTR interact[rip]
	test	eax, eax
	je	.L246
	cmp	DWORD PTR -4132[rbp], 0
	jne	.L246
	lea	rdx, Slnkpth[rip]
	lea	rsi, Spath[rip]
	lea	rdi, .LC31[rip]
	mov	eax, 0
	call	printf@PLT
	mov	edi, 110
	mov	eax, 0
	call	ask
	test	eax, eax
	jne	.L246
	mov	edi, 132
	mov	eax, 0
	call	order
	jmp	.L227
.L246:
	lea	rsi, Spath[rip]
	lea	rdi, Slnkpth[rip]
	call	symlink@PLT
	test	eax, eax
	jns	.L247
	mov	rdx, QWORD PTR arg0[rip]
	mov	rax, QWORD PTR stderr[rip]
	lea	rcx, Spath[rip]
	lea	rsi, .LC32[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	eax, 0
	call	because
	jmp	.L227
.L247:
	cmp	DWORD PTR -4120[rbp], 0
	je	.L248
	lea	rax, .LC33[rip]
	jmp	.L249
.L248:
	lea	rax, .LC34[rip]
.L249:
	lea	rcx, Slnkpth[rip]
	lea	rdx, Spath[rip]
	mov	rsi, rax
	lea	rdi, .LC35[rip]
	mov	eax, 0
	call	printf@PLT
	jmp	.L243
.L236:
	mov	eax, DWORD PTR interact[rip]
	test	eax, eax
	je	.L250
	cmp	DWORD PTR -4132[rbp], 0
	jne	.L250
	lea	rsi, Spath[rip]
	lea	rdi, .LC36[rip]
	mov	eax, 0
	call	printf@PLT
	mov	edi, 110
	mov	eax, 0
	call	ask
	test	eax, eax
	jne	.L250
	mov	edi, 132
	mov	eax, 0
	call	order
	jmp	.L227
.L250:
	mov	edi, 130
	mov	eax, 0
	call	order
	mov	eax, 0
	call	answer
	cmp	eax, 130
	jne	.L269
	mov	DWORD PTR busy[rip], 1
	mov	eax, DWORD PTR backup[rip]
	test	eax, eax
	jne	.L252
	mov	eax, DWORD PTR Sst[rip+24]
	and	eax, 4095
	jmp	.L253
.L252:
	mov	eax, 420
.L253:
	mov	esi, eax
	lea	rdi, Spath[rip]
	call	creat@PLT
	mov	DWORD PTR -4124[rbp], eax
	cmp	DWORD PTR -4124[rbp], 0
	jns	.L255
	mov	DWORD PTR busy[rip], 0
	mov	rdx, QWORD PTR arg0[rip]
	mov	rax, QWORD PTR stderr[rip]
	lea	rcx, Spath[rip]
	lea	rsi, .LC37[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	eax, 0
	call	because
	jmp	.L255
.L256:
	cmp	DWORD PTR -4124[rbp], 0
	js	.L255
	mov	eax, DWORD PTR -4116[rbp]
	movsx	rdx, eax
	lea	rcx, -4112[rbp]
	mov	eax, DWORD PTR -4124[rbp]
	mov	rsi, rcx
	mov	edi, eax
	call	write@PLT
	mov	edx, DWORD PTR -4116[rbp]
	movsx	rdx, edx
	cmp	rax, rdx
	je	.L255
	mov	rdx, QWORD PTR arg0[rip]
	mov	rax, QWORD PTR stderr[rip]
	lea	rcx, Spath[rip]
	lea	rsi, .LC38[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	eax, 0
	call	because
	mov	eax, DWORD PTR -4124[rbp]
	mov	edi, eax
	call	close@PLT
	mov	DWORD PTR -4124[rbp], -1
.L255:
	lea	rax, -4112[rbp]
	mov	esi, 4096
	mov	rdi, rax
	mov	eax, 0
	call	receive
	mov	DWORD PTR -4116[rbp], eax
	cmp	DWORD PTR -4116[rbp], 0
	jg	.L256
	cmp	DWORD PTR -4116[rbp], 0
	jns	.L257
	mov	rdx, QWORD PTR arg0[rip]
	mov	rax, QWORD PTR stderr[rip]
	lea	rcx, Spath[rip]
	lea	rsi, .LC39[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
.L257:
	cmp	DWORD PTR -4124[rbp], 0
	js	.L258
	mov	eax, DWORD PTR -4124[rbp]
	mov	edi, eax
	call	close@PLT
.L258:
	cmp	DWORD PTR -4116[rbp], 0
	js	.L259
	cmp	DWORD PTR -4124[rbp], 0
	jns	.L260
.L259:
	mov	eax, 0
	call	makeold
	mov	DWORD PTR busy[rip], 0
	jmp	.L227
.L260:
	mov	DWORD PTR busy[rip], 0
	cmp	DWORD PTR -4120[rbp], 0
	je	.L261
	mov	rdx, QWORD PTR Sst[rip+88]
	mov	rax, QWORD PTR st[rip+88]
	cmp	rdx, rax
	jge	.L262
	lea	rax, .LC40[rip]
	jmp	.L264
.L262:
	lea	rax, .LC33[rip]
	jmp	.L264
.L261:
	lea	rax, .LC34[rip]
.L264:
	lea	rdx, Spath[rip]
	mov	rsi, rax
	lea	rdi, .LC41[rip]
	mov	eax, 0
	call	printf@PLT
	jmp	.L243
.L235:
	mov	ecx, DWORD PTR Sst[rip+24]
	mov	rdx, QWORD PTR arg0[rip]
	mov	rax, QWORD PTR stderr[rip]
	lea	r8, Spath[rip]
	lea	rsi, .LC42[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	edi, 132
	mov	eax, 0
	call	order
	jmp	.L227
.L243:
	mov	edi, 1
	mov	eax, 0
	call	setmodes
	jmp	.L227
.L267:
	nop
	jmp	.L227
.L268:
	nop
	jmp	.L227
.L269:
	nop
.L227:
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L266
	call	__stack_chk_fail@PLT
.L266:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE40:
	.size	add, .-add
	.section	.rodata
.LC43:
	.string	"Delete dir %s"
.LC44:
	.string	"Directory %s deleted.\n"
.LC45:
	.string	"Delete %s"
.LC46:
	.string	"Can't delete %s"
.LC47:
	.string	"Deleted:   %s\n"
	.text
	.type	delete, @function
delete:
.LFB41:
	.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	DWORD PTR -20[rbp], edi
	mov	eax, DWORD PTR force[rip]
	test	eax, eax
	je	.L271
	cmp	DWORD PTR -20[rbp], 0
	je	.L271
	mov	eax, 1
	jmp	.L272
.L271:
	mov	eax, 0
.L272:
	mov	DWORD PTR -4[rbp], eax
	mov	eax, DWORD PTR st[rip+24]
	and	eax, 61440
	cmp	eax, 16384
	jne	.L273
	mov	eax, DWORD PTR install[rip]
	test	eax, eax
	je	.L274
	mov	eax, 0
	jmp	.L275
.L274:
	mov	eax, DWORD PTR force[rip]
	test	eax, eax
	jne	.L276
	lea	rsi, path[rip]
	lea	rdi, .LC43[rip]
	mov	eax, 0
	call	printf@PLT
	mov	edi, 110
	mov	eax, 0
	call	ask
	test	eax, eax
	jne	.L276
	mov	eax, 0
	jmp	.L275
.L276:
	lea	rdi, path[rip]
	mov	eax, 0
	call	removedir
	test	eax, eax
	jne	.L277
	mov	DWORD PTR ex[rip], 1
	mov	eax, 0
	jmp	.L275
.L277:
	cmp	DWORD PTR -4[rbp], 0
	jne	.L278
	lea	rsi, path[rip]
	lea	rdi, .LC44[rip]
	mov	eax, 0
	call	printf@PLT
.L278:
	mov	eax, 1
	jmp	.L275
.L273:
	mov	eax, DWORD PTR install[rip]
	test	eax, eax
	je	.L279
	cmp	DWORD PTR -20[rbp], 0
	jne	.L279
	mov	eax, 0
	jmp	.L275
.L279:
	mov	eax, DWORD PTR force[rip]
	test	eax, eax
	jne	.L280
	lea	rsi, path[rip]
	lea	rdi, .LC45[rip]
	mov	eax, 0
	call	printf@PLT
	mov	eax, DWORD PTR interact[rip]
	test	eax, eax
	je	.L281
	cmp	DWORD PTR -20[rbp], 0
	jne	.L281
	mov	eax, 110
	jmp	.L282
.L281:
	mov	eax, 121
.L282:
	mov	edi, eax
	mov	eax, 0
	call	ask
	test	eax, eax
	jne	.L280
	mov	eax, 0
	jmp	.L275
.L280:
	lea	rdi, path[rip]
	call	unlink@PLT
	test	eax, eax
	jns	.L283
	mov	rax, QWORD PTR stderr[rip]
	lea	rdx, path[rip]
	lea	rsi, .LC46[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	eax, 0
	call	because
	mov	eax, 0
	jmp	.L275
.L283:
	mov	eax, 0
	call	islink
	cmp	DWORD PTR -4[rbp], 0
	jne	.L284
	lea	rsi, path[rip]
	lea	rdi, .LC47[rip]
	mov	eax, 0
	call	printf@PLT
.L284:
	mov	eax, 1
.L275:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE41:
	.size	delete, .-delete
	.type	different, @function
different:
.LFB42:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	rax, QWORD PTR linkpath[rip]
	test	rax, rax
	jne	.L286
	mov	rax, QWORD PTR Slinkpath[rip]
	test	rax, rax
	je	.L287
.L286:
	mov	rax, QWORD PTR linkpath[rip]
	test	rax, rax
	je	.L288
	mov	rax, QWORD PTR Slinkpath[rip]
	test	rax, rax
	je	.L288
	mov	rdx, QWORD PTR Slinkpath[rip]
	mov	rax, QWORD PTR linkpath[rip]
	mov	rsi, rdx
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	je	.L287
.L288:
	mov	rax, QWORD PTR Slinkpath[rip]
	mov	QWORD PTR linkpath[rip], rax
	mov	eax, 1
	jmp	.L289
.L287:
	mov	edx, DWORD PTR st[rip+24]
	mov	eax, DWORD PTR Sst[rip+24]
	xor	eax, edx
	and	eax, 61440
	test	eax, eax
	je	.L290
	mov	eax, 1
	jmp	.L289
.L290:
	mov	eax, DWORD PTR st[rip+24]
	and	eax, 61440
	cmp	eax, 40960
	je	.L291
	cmp	eax, 40960
	ja	.L292
	cmp	eax, 32768
	je	.L293
	cmp	eax, 32768
	ja	.L292
	cmp	eax, 24576
	je	.L294
	cmp	eax, 24576
	ja	.L292
	cmp	eax, 16384
	je	.L295
	cmp	eax, 16384
	ja	.L292
	cmp	eax, 4096
	je	.L296
	cmp	eax, 8192
	je	.L294
	jmp	.L292
.L295:
	mov	eax, 0
	jmp	.L289
.L294:
	mov	rdx, QWORD PTR st[rip+40]
	mov	rax, QWORD PTR Sst[rip+40]
	cmp	rdx, rax
	setne	al
	movzx	eax, al
	jmp	.L289
.L293:
	mov	eax, DWORD PTR install[rip]
	test	eax, eax
	je	.L297
	mov	rdx, QWORD PTR Sst[rip+88]
	mov	rax, QWORD PTR st[rip+88]
	cmp	rdx, rax
	setg	al
	movzx	eax, al
	jmp	.L289
.L297:
	mov	rdx, QWORD PTR st[rip+48]
	mov	rax, QWORD PTR Sst[rip+48]
	cmp	rdx, rax
	jne	.L298
	mov	rdx, QWORD PTR st[rip+88]
	mov	rax, QWORD PTR Sst[rip+88]
	cmp	rdx, rax
	je	.L299
.L298:
	mov	eax, 1
	jmp	.L289
.L299:
	mov	eax, 0
	jmp	.L289
.L296:
	mov	eax, 0
	jmp	.L289
.L291:
	lea	rsi, Slnkpth[rip]
	lea	rdi, lnkpth[rip]
	call	strcmp@PLT
	test	eax, eax
	setne	al
	movzx	eax, al
	jmp	.L289
.L292:
	mov	eax, 1
.L289:
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE42:
	.size	different, .-different
	.section	.rodata
.LC48:
	.string	"Restor"
.LC49:
	.string	"Updat"
.LC50:
	.string	"%sing %s (delete + add)\n"
	.text
	.type	compare, @function
compare:
.LFB43:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	eax, 0
	call	different
	test	eax, eax
	je	.L302
	mov	eax, DWORD PTR force[rip]
	test	eax, eax
	jne	.L303
	mov	rdx, QWORD PTR Sst[rip+88]
	mov	rax, QWORD PTR st[rip+88]
	cmp	rdx, rax
	jge	.L304
	lea	rax, .LC48[rip]
	jmp	.L305
.L304:
	lea	rax, .LC49[rip]
.L305:
	lea	rdx, path[rip]
	mov	rsi, rax
	lea	rdi, .LC50[rip]
	mov	eax, 0
	call	printf@PLT
.L303:
	mov	edi, 1
	mov	eax, 0
	call	delete
	test	eax, eax
	je	.L308
	mov	edi, 1
	mov	eax, 0
	call	add
	jmp	.L308
.L302:
	mov	eax, DWORD PTR install[rip]
	test	eax, eax
	jne	.L307
	mov	edi, 0
	mov	eax, 0
	call	setmodes
.L307:
	mov	eax, DWORD PTR st[rip+24]
	and	eax, 61440
	cmp	eax, 16384
	jne	.L308
	mov	edi, 128
	mov	eax, 0
	call	order
	mov	eax, 0
	call	enter
.L308:
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE43:
	.size	compare, .-compare
	.local	done
	.comm	done,4,4
	.local	Sdone
	.comm	Sdone,4,4
	.type	action, @function
action:
.LFB44:
	.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	eax, DWORD PTR done[rip]
	test	eax, eax
	je	.L310
	mov	eax, 0
	jmp	.L311
.L310:
	mov	eax, DWORD PTR Sdone[rip]
	test	eax, eax
	je	.L312
	mov	eax, 2
	jmp	.L311
.L312:
	lea	rax, Spath[rip]
	mov	QWORD PTR -16[rbp], rax
	lea	rax, path[rip]
	mov	QWORD PTR -8[rbp], rax
	jmp	.L313
.L315:
	add	QWORD PTR -16[rbp], 1
	add	QWORD PTR -8[rbp], 1
.L313:
	mov	rax, QWORD PTR -16[rbp]
	movzx	edx, BYTE PTR [rax]
	mov	rax, QWORD PTR -8[rbp]
	movzx	eax, BYTE PTR [rax]
	cmp	dl, al
	jne	.L314
	mov	rax, QWORD PTR -16[rbp]
	movzx	eax, BYTE PTR [rax]
	test	al, al
	jne	.L315
.L314:
	mov	rax, QWORD PTR -16[rbp]
	movzx	eax, BYTE PTR [rax]
	cmp	al, 47
	jne	.L316
	mov	eax, 0
	jmp	.L311
.L316:
	mov	rax, QWORD PTR -8[rbp]
	movzx	eax, BYTE PTR [rax]
	cmp	al, 47
	jne	.L317
	mov	eax, 2
	jmp	.L311
.L317:
	mov	rdx, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -16[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	strcmp@PLT
	mov	DWORD PTR -20[rbp], eax
	cmp	DWORD PTR -20[rbp], 0
	je	.L318
	cmp	DWORD PTR -20[rbp], 0
	jns	.L319
	mov	eax, 0
	jmp	.L311
.L319:
	mov	eax, 2
	jmp	.L311
.L318:
	mov	eax, 1
.L311:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE44:
	.size	action, .-action
	.section	.rodata
	.align 8
.LC51:
	.string	"%s: Strange answer from slave.\n"
	.text
	.type	master, @function
master:
.LFB45:
	.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	DWORD PTR -4[rbp], 1
	mov	eax, DWORD PTR backup[rip]
	test	eax, eax
	je	.L323
	mov	eax, 18
	jmp	.L324
.L323:
	mov	eax, 0
.L324:
	mov	edi, eax
	call	umask@PLT
	mov	esi, 1
	mov	edi, 13
	call	signal@PLT
	lea	rsi, bail_out[rip]
	mov	edi, 1
	call	signal@PLT
	lea	rsi, bail_out[rip]
	mov	edi, 2
	call	signal@PLT
	lea	rsi, bail_out[rip]
	mov	edi, 15
	call	signal@PLT
	jmp	.L325
.L341:
	mov	eax, DWORD PTR Sdone[rip]
	test	eax, eax
	jne	.L344
	cmp	DWORD PTR -4[rbp], 0
	je	.L327
	cmp	DWORD PTR -4[rbp], 1
	jne	.L344
.L327:
	mov	edi, 129
	mov	eax, 0
	call	order
	mov	eax, 0
	call	answer
	cmp	eax, 133
	je	.L328
	cmp	eax, 133
	ja	.L329
	cmp	eax, 132
	je	.L330
	cmp	eax, 132
	ja	.L329
	cmp	eax, 128
	je	.L331
	cmp	eax, 129
	je	.L332
	jmp	.L329
.L331:
	mov	QWORD PTR Slinkpath[rip], 0
	mov	esi, 4097
	lea	rdi, Spath[rip]
	mov	eax, 0
	call	receive
	lea	rdi, Sst[rip]
	mov	eax, 0
	call	recstat
	jmp	.L326
.L332:
	mov	esi, 4097
	lea	rdi, Slnkpth[rip]
	mov	eax, 0
	call	receive
	lea	rax, Slnkpth[rip]
	mov	QWORD PTR Slinkpath[rip], rax
	mov	esi, 4097
	lea	rdi, Spath[rip]
	mov	eax, 0
	call	receive
	lea	rdi, Sst[rip]
	mov	eax, 0
	call	recstat
	jmp	.L326
.L328:
	mov	QWORD PTR Slinkpath[rip], 0
	mov	esi, 4097
	lea	rdi, Slnkpth[rip]
	mov	eax, 0
	call	receive
	mov	esi, 4097
	lea	rdi, Spath[rip]
	mov	eax, 0
	call	receive
	lea	rdi, Sst[rip]
	mov	eax, 0
	call	recstat
	jmp	.L326
.L330:
	mov	DWORD PTR Sdone[rip], 1
	jmp	.L326
.L329:
	mov	rdx, QWORD PTR arg0[rip]
	mov	rax, QWORD PTR stderr[rip]
	lea	rsi, .LC51[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	edi, 1
	call	exit@PLT
.L344:
	nop
.L326:
	mov	eax, DWORD PTR done[rip]
	test	eax, eax
	jne	.L333
	cmp	DWORD PTR -4[rbp], 1
	je	.L334
	cmp	DWORD PTR -4[rbp], 2
	jne	.L333
.L334:
	mov	eax, 0
	call	advance
	test	eax, eax
	jne	.L333
	mov	DWORD PTR done[rip], 1
.L333:
	mov	eax, DWORD PTR done[rip]
	test	eax, eax
	je	.L335
	mov	eax, DWORD PTR Sdone[rip]
	test	eax, eax
	jne	.L345
.L335:
	mov	eax, 0
	call	action
	mov	DWORD PTR -4[rbp], eax
	cmp	DWORD PTR -4[rbp], 2
	je	.L337
	cmp	DWORD PTR -4[rbp], 2
	ja	.L338
	cmp	DWORD PTR -4[rbp], 0
	je	.L339
	cmp	DWORD PTR -4[rbp], 1
	je	.L340
	jmp	.L338
.L339:
	mov	edi, 0
	mov	eax, 0
	call	add
	jmp	.L338
.L340:
	mov	eax, 0
	call	compare
	jmp	.L338
.L337:
	mov	edi, 0
	mov	eax, 0
	call	delete
.L338:
	mov	rax, QWORD PTR stdout[rip]
	mov	rdi, rax
	call	fflush@PLT
.L325:
	mov	eax, DWORD PTR done[rip]
	test	eax, eax
	je	.L341
	mov	eax, DWORD PTR Sdone[rip]
	test	eax, eax
	je	.L341
	jmp	.L336
.L345:
	nop
.L336:
	mov	eax, DWORD PTR ex[rip]
	test	eax, eax
	jne	.L342
	mov	eax, 133
	jmp	.L343
.L342:
	mov	eax, 134
.L343:
	mov	edi, eax
	mov	eax, 0
	call	order
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE45:
	.size	master, .-master
	.type	mediator, @function
mediator:
.LFB46:
	.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
.L357:
	mov	eax, 0
	call	request
	mov	DWORD PTR -4[rbp], eax
	cmp	DWORD PTR -4[rbp], 136
	je	.L347
	cmp	DWORD PTR -4[rbp], 136
	ja	.L348
	cmp	DWORD PTR -4[rbp], 135
	je	.L349
	cmp	DWORD PTR -4[rbp], 135
	ja	.L348
	cmp	DWORD PTR -4[rbp], 133
	je	.L350
	cmp	DWORD PTR -4[rbp], 134
	jne	.L348
	mov	DWORD PTR ex[rip], 1
.L350:
	mov	edi, 133
	mov	eax, 0
	call	order
	jmp	.L358
.L349:
	mov	edi, 121
	mov	eax, 0
	call	ask
	test	eax, eax
	je	.L352
	mov	eax, 137
	jmp	.L353
.L352:
	mov	eax, 138
.L353:
	mov	edi, eax
	mov	eax, 0
	call	order
	jmp	.L354
.L347:
	mov	edi, 110
	mov	eax, 0
	call	ask
	test	eax, eax
	je	.L355
	mov	eax, 137
	jmp	.L356
.L355:
	mov	eax, 138
.L356:
	mov	edi, eax
	mov	eax, 0
	call	order
	jmp	.L354
.L348:
	mov	eax, DWORD PTR -4[rbp]
	mov	edi, eax
	mov	eax, 0
	call	order
.L354:
	jmp	.L357
.L358:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE46:
	.size	mediator, .-mediator
	.section	.rodata
.LC52:
	.string	"rsh"
.LC53:
	.string	"-l"
	.align 8
.LC54:
	.string	"Destination directory %s created\n"
	.text
	.type	startprocess, @function
startprocess:
.LFB47:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 176
	mov	QWORD PTR -152[rbp], rdi
	mov	QWORD PTR -160[rbp], rsi
	mov	QWORD PTR -168[rbp], rdx
	mov	DWORD PTR -172[rbp], ecx
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	lea	rax, -112[rbp]
	mov	QWORD PTR -144[rbp], rax
	lea	rax, -18[rbp]
	mov	QWORD PTR -136[rbp], rax
	cmp	QWORD PTR -160[rbp], 0
	je	.L360
	mov	rax, QWORD PTR -160[rbp]
	mov	QWORD PTR -128[rbp], rax
	mov	rax, QWORD PTR -144[rbp]
	lea	rdx, 8[rax]
	mov	QWORD PTR -144[rbp], rdx
	lea	rdx, .LC52[rip]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -160[rbp]
	mov	esi, 64
	mov	rdi, rax
	call	strchr@PLT
	mov	QWORD PTR -120[rbp], rax
	cmp	QWORD PTR -120[rbp], 0
	je	.L361
	mov	rax, QWORD PTR -120[rbp]
	lea	rdx, 1[rax]
	mov	QWORD PTR -120[rbp], rdx
	mov	BYTE PTR [rax], 0
	mov	rax, QWORD PTR -144[rbp]
	lea	rdx, 8[rax]
	mov	QWORD PTR -144[rbp], rdx
	lea	rdx, .LC53[rip]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -144[rbp]
	lea	rdx, 8[rax]
	mov	QWORD PTR -144[rbp], rdx
	mov	rdx, QWORD PTR -128[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -120[rbp]
	mov	QWORD PTR -160[rbp], rax
.L361:
	mov	rax, QWORD PTR -144[rbp]
	lea	rdx, 8[rax]
	mov	QWORD PTR -144[rbp], rdx
	mov	rdx, QWORD PTR -160[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -144[rbp]
	lea	rdx, 8[rax]
	mov	QWORD PTR -144[rbp], rdx
	lea	rdx, SYNCNAME[rip]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -136[rbp]
	lea	rdx, 1[rax]
	mov	QWORD PTR -136[rbp], rdx
	mov	BYTE PTR [rax], 45
	mov	eax, DWORD PTR interact[rip]
	test	eax, eax
	je	.L369
	jmp	.L375
.L360:
	mov	rax, QWORD PTR -168[rbp]
	mov	rdi, rax
	call	chdir@PLT
	test	eax, eax
	jns	.L363
	lea	rax, master[rip]
	cmp	QWORD PTR -152[rbp], rax
	jne	.L364
	call	__errno_location@PLT
	mov	eax, DWORD PTR [rax]
	cmp	eax, 2
	jne	.L364
	mov	rax, QWORD PTR -168[rbp]
	mov	esi, 448
	mov	rdi, rax
	call	mkdir@PLT
	test	eax, eax
	jns	.L365
.L364:
	mov	rax, QWORD PTR -168[rbp]
	mov	rdi, rax
	mov	eax, 0
	call	perrx
.L365:
	mov	rax, QWORD PTR -168[rbp]
	mov	rdi, rax
	call	chdir@PLT
	test	eax, eax
	jns	.L366
	mov	rax, QWORD PTR -168[rbp]
	mov	rdi, rax
	mov	eax, 0
	call	perrx
.L366:
	mov	rax, QWORD PTR -168[rbp]
	mov	rsi, rax
	lea	rdi, .LC54[rip]
	mov	eax, 0
	call	printf@PLT
.L363:
	lea	rax, slave[rip]
	cmp	QWORD PTR -152[rbp], rax
	sete	al
	movzx	eax, al
	mov	edi, eax
	mov	eax, 0
	call	isbackup
	mov	rdx, QWORD PTR -152[rbp]
	mov	eax, 0
	call	rdx
	mov	eax, DWORD PTR -172[rbp]
	and	eax, 1
	test	eax, eax
	je	.L376
	mov	eax, DWORD PTR ex[rip]
	mov	edi, eax
	call	exit@PLT
.L375:
	mov	rax, QWORD PTR -136[rbp]
	lea	rdx, 1[rax]
	mov	QWORD PTR -136[rbp], rdx
	mov	BYTE PTR [rax], 105
.L369:
	mov	eax, DWORD PTR install[rip]
	test	eax, eax
	je	.L370
	mov	rax, QWORD PTR -136[rbp]
	lea	rdx, 1[rax]
	mov	QWORD PTR -136[rbp], rdx
	mov	BYTE PTR [rax], 117
.L370:
	mov	eax, DWORD PTR force[rip]
	test	eax, eax
	je	.L371
	mov	rax, QWORD PTR -136[rbp]
	lea	rdx, 1[rax]
	mov	QWORD PTR -136[rbp], rdx
	mov	BYTE PTR [rax], 102
.L371:
	mov	rax, QWORD PTR -136[rbp]
	mov	BYTE PTR [rax], 0
	mov	rax, QWORD PTR -144[rbp]
	lea	rdx, 8[rax]
	mov	QWORD PTR -144[rbp], rdx
	lea	rdx, -18[rbp]
	mov	QWORD PTR [rax], rdx
	lea	rax, slave[rip]
	cmp	QWORD PTR -152[rbp], rax
	jne	.L372
	lea	rdx, SLAVENAME[rip]
	jmp	.L373
.L372:
	lea	rdx, MASTERNAME[rip]
.L373:
	mov	rax, QWORD PTR -144[rbp]
	lea	rcx, 8[rax]
	mov	QWORD PTR -144[rbp], rcx
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -144[rbp]
	lea	rdx, 8[rax]
	mov	QWORD PTR -144[rbp], rdx
	mov	rdx, QWORD PTR -168[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -144[rbp]
	lea	rdx, 8[rax]
	mov	QWORD PTR -144[rbp], rdx
	mov	QWORD PTR [rax], 0
	mov	rax, QWORD PTR -112[rbp]
	lea	rdx, -112[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	execvp@PLT
	mov	rax, QWORD PTR -112[rbp]
	mov	rdi, rax
	mov	eax, 0
	call	perrx
	jmp	.L359
.L376:
	nop
.L359:
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L374
	call	__stack_chk_fail@PLT
.L374:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE47:
	.size	startprocess, .-startprocess
	.globl	splitcolon
	.type	splitcolon, @function
splitcolon:
.LFB48:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	QWORD PTR -24[rbp], rdi
	mov	QWORD PTR -32[rbp], rsi
	mov	QWORD PTR -40[rbp], rdx
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR -8[rbp], rax
.L382:
	mov	rax, QWORD PTR -8[rbp]
	movzx	eax, BYTE PTR [rax]
	cmp	al, 58
	jne	.L378
	mov	rax, QWORD PTR -8[rbp]
	lea	rdx, 1[rax]
	mov	QWORD PTR -8[rbp], rdx
	mov	BYTE PTR [rax], 0
	mov	rax, QWORD PTR -32[rbp]
	mov	rdx, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -40[rbp]
	mov	rdx, QWORD PTR -8[rbp]
	mov	QWORD PTR [rax], rdx
	jmp	.L379
.L378:
	mov	rax, QWORD PTR -8[rbp]
	movzx	eax, BYTE PTR [rax]
	test	al, al
	je	.L380
	mov	rax, QWORD PTR -8[rbp]
	movzx	eax, BYTE PTR [rax]
	cmp	al, 47
	jne	.L381
.L380:
	mov	rax, QWORD PTR -32[rbp]
	mov	QWORD PTR [rax], 0
	mov	rax, QWORD PTR -40[rbp]
	mov	rdx, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	jmp	.L379
.L381:
	add	QWORD PTR -8[rbp], 1
	jmp	.L382
.L379:
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE48:
	.size	splitcolon, .-splitcolon
	.section	.rodata
	.align 8
.LC55:
	.string	"Usage: %s [-iuf] [[user@]machine:]dir1 [[user@]machine:]dir2\n"
	.text
	.type	Usage, @function
Usage:
.LFB49:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	rdx, QWORD PTR arg0[rip]
	mov	rax, QWORD PTR stderr[rip]
	lea	rsi, .LC55[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	edi, 1
	call	exit@PLT
	.cfi_endproc
.LFE49:
	.size	Usage, .-Usage
	.section	.rodata
.LC56:
	.string	"Slave"
.LC57:
	.string	"Master"
.LC58:
	.string	"pipe()"
.LC59:
	.string	"wait()"
	.text
	.globl	main
	.type	main, @function
main:
.LFB50:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 112
	mov	DWORD PTR -100[rbp], edi
	mov	QWORD PTR -112[rbp], rsi
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	DWORD PTR -84[rbp], 0
	mov	DWORD PTR -80[rbp], 0
	mov	rax, QWORD PTR -112[rbp]
	mov	rax, QWORD PTR [rax]
	mov	esi, 47
	mov	rdi, rax
	call	strrchr@PLT
	mov	QWORD PTR arg0[rip], rax
	mov	rax, QWORD PTR arg0[rip]
	test	rax, rax
	jne	.L385
	mov	rax, QWORD PTR -112[rbp]
	mov	rax, QWORD PTR [rax]
	mov	QWORD PTR arg0[rip], rax
	jmp	.L387
.L385:
	mov	rax, QWORD PTR arg0[rip]
	add	rax, 1
	mov	QWORD PTR arg0[rip], rax
	jmp	.L387
.L394:
	mov	rax, QWORD PTR -112[rbp]
	add	rax, 8
	mov	rax, QWORD PTR [rax]
	add	rax, 1
	mov	QWORD PTR -40[rbp], rax
	jmp	.L388
.L392:
	mov	rax, QWORD PTR -40[rbp]
	lea	rdx, 1[rax]
	mov	QWORD PTR -40[rbp], rdx
	movzx	eax, BYTE PTR [rax]
	movsx	eax, al
	cmp	eax, 117
	je	.L389
	cmp	eax, 117
	jg	.L390
	cmp	eax, 102
	je	.L391
	cmp	eax, 105
	jne	.L390
	mov	DWORD PTR interact[rip], 1
	jmp	.L388
.L389:
	mov	DWORD PTR install[rip], 1
	jmp	.L388
.L391:
	mov	DWORD PTR force[rip], 1
	jmp	.L388
.L390:
	mov	eax, 0
	call	Usage
.L388:
	mov	rax, QWORD PTR -40[rbp]
	movzx	eax, BYTE PTR [rax]
	test	al, al
	jne	.L392
	sub	DWORD PTR -100[rbp], 1
	add	QWORD PTR -112[rbp], 8
.L387:
	cmp	DWORD PTR -100[rbp], 1
	jle	.L393
	mov	rax, QWORD PTR -112[rbp]
	add	rax, 8
	mov	rax, QWORD PTR [rax]
	movzx	eax, BYTE PTR [rax]
	cmp	al, 45
	je	.L394
.L393:
	cmp	DWORD PTR -100[rbp], 3
	je	.L395
	mov	eax, 0
	call	Usage
.L395:
	mov	rax, QWORD PTR -112[rbp]
	add	rax, 8
	mov	rax, QWORD PTR [rax]
	lea	rsi, SLAVENAME[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L396
	lea	rax, .LC56[rip]
	mov	QWORD PTR arg0[rip], rax
	mov	rax, QWORD PTR -112[rbp]
	add	rax, 16
	mov	rax, QWORD PTR [rax]
	lea	rdx, -64[rbp]
	lea	rcx, -72[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	mov	eax, 0
	call	splitcolon
	mov	rdx, QWORD PTR -64[rbp]
	mov	rax, QWORD PTR -72[rbp]
	mov	ecx, 1
	mov	rsi, rax
	lea	rdi, slave[rip]
	mov	eax, 0
	call	startprocess
	jmp	.L397
.L396:
	mov	rax, QWORD PTR -112[rbp]
	add	rax, 8
	mov	rax, QWORD PTR [rax]
	lea	rsi, MASTERNAME[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L397
	lea	rax, .LC57[rip]
	mov	QWORD PTR arg0[rip], rax
	mov	rax, QWORD PTR -112[rbp]
	add	rax, 16
	mov	rax, QWORD PTR [rax]
	lea	rdx, -48[rbp]
	lea	rcx, -56[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	mov	eax, 0
	call	splitcolon
	mov	rdx, QWORD PTR -48[rbp]
	mov	rax, QWORD PTR -56[rbp]
	mov	ecx, 1
	mov	rsi, rax
	lea	rdi, master[rip]
	mov	eax, 0
	call	startprocess
.L397:
	mov	rax, QWORD PTR -112[rbp]
	add	rax, 8
	mov	rax, QWORD PTR [rax]
	lea	rdx, -64[rbp]
	lea	rcx, -72[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	mov	eax, 0
	call	splitcolon
	mov	rax, QWORD PTR -112[rbp]
	add	rax, 16
	mov	rax, QWORD PTR [rax]
	lea	rdx, -48[rbp]
	lea	rcx, -56[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	mov	eax, 0
	call	splitcolon
	lea	rax, -32[rbp]
	mov	rdi, rax
	call	pipe@PLT
	test	eax, eax
	js	.L398
	lea	rax, -24[rbp]
	mov	rdi, rax
	call	pipe@PLT
	test	eax, eax
	jns	.L399
.L398:
	lea	rdi, .LC58[rip]
	mov	eax, 0
	call	perrx
.L399:
	mov	rax, QWORD PTR -56[rbp]
	test	rax, rax
	jne	.L400
	call	fork@PLT
	mov	DWORD PTR -84[rbp], eax
	cmp	DWORD PTR -84[rbp], -1
	je	.L401
	cmp	DWORD PTR -84[rbp], 0
	je	.L402
	jmp	.L403
.L401:
	lea	rdi, .LC10[rip]
	mov	eax, 0
	call	perrx
.L402:
	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
	mov	eax, DWORD PTR -28[rbp]
	mov	edi, eax
	call	close@PLT
	mov	eax, DWORD PTR -20[rbp]
	mov	esi, 1
	mov	edi, eax
	call	dup2@PLT
	mov	eax, DWORD PTR -24[rbp]
	mov	edi, eax
	call	close@PLT
	mov	eax, DWORD PTR -20[rbp]
	mov	edi, eax
	call	close@PLT
	lea	rax, .LC56[rip]
	mov	QWORD PTR arg0[rip], rax
	mov	rdx, QWORD PTR -64[rbp]
	mov	rax, QWORD PTR -72[rbp]
	mov	ecx, 3
	mov	rsi, rax
	lea	rdi, slave[rip]
	mov	eax, 0
	call	startprocess
.L403:
	mov	eax, DWORD PTR -24[rbp]
	mov	DWORD PTR chan[rip], eax
	mov	eax, DWORD PTR -20[rbp]
	mov	edi, eax
	call	close@PLT
	mov	eax, DWORD PTR -28[rbp]
	mov	DWORD PTR chan[rip+4], eax
	mov	eax, DWORD PTR -32[rbp]
	mov	edi, eax
	call	close@PLT
	mov	rdx, QWORD PTR -48[rbp]
	mov	rax, QWORD PTR -56[rbp]
	mov	ecx, 0
	mov	rsi, rax
	lea	rdi, master[rip]
	mov	eax, 0
	call	startprocess
	jmp	.L404
.L400:
	mov	rax, QWORD PTR -72[rbp]
	test	rax, rax
	jne	.L405
	call	fork@PLT
	mov	DWORD PTR -80[rbp], eax
	cmp	DWORD PTR -80[rbp], -1
	je	.L406
	cmp	DWORD PTR -80[rbp], 0
	je	.L407
	jmp	.L408
.L406:
	lea	rdi, .LC10[rip]
	mov	eax, 0
	call	perrx
.L407:
	mov	eax, DWORD PTR -24[rbp]
	mov	esi, 0
	mov	edi, eax
	call	dup2@PLT
	mov	eax, DWORD PTR -24[rbp]
	mov	edi, eax
	call	close@PLT
	mov	eax, DWORD PTR -20[rbp]
	mov	edi, eax
	call	close@PLT
	mov	eax, DWORD PTR -28[rbp]
	mov	esi, 1
	mov	edi, eax
	call	dup2@PLT
	mov	eax, DWORD PTR -32[rbp]
	mov	edi, eax
	call	close@PLT
	mov	eax, DWORD PTR -28[rbp]
	mov	edi, eax
	call	close@PLT
	lea	rax, .LC57[rip]
	mov	QWORD PTR arg0[rip], rax
	mov	rdx, QWORD PTR -48[rbp]
	mov	rax, QWORD PTR -56[rbp]
	mov	ecx, 3
	mov	rsi, rax
	lea	rdi, master[rip]
	mov	eax, 0
	call	startprocess
.L408:
	mov	eax, DWORD PTR -32[rbp]
	mov	DWORD PTR chan[rip], eax
	mov	eax, DWORD PTR -28[rbp]
	mov	edi, eax
	call	close@PLT
	mov	eax, DWORD PTR -20[rbp]
	mov	DWORD PTR chan[rip+4], eax
	mov	eax, DWORD PTR -24[rbp]
	mov	edi, eax
	call	close@PLT
	mov	rdx, QWORD PTR -64[rbp]
	mov	rax, QWORD PTR -72[rbp]
	mov	ecx, 0
	mov	rsi, rax
	lea	rdi, slave[rip]
	mov	eax, 0
	call	startprocess
	jmp	.L404
.L405:
	lea	rax, -16[rbp]
	mov	rdi, rax
	call	pipe@PLT
	test	eax, eax
	jns	.L409
	mov	rax, QWORD PTR pipe@GOTPCREL[rip]
	mov	rdi, rax
	mov	eax, 0
	call	perrx
.L409:
	call	fork@PLT
	mov	DWORD PTR -84[rbp], eax
	cmp	DWORD PTR -84[rbp], -1
	je	.L410
	cmp	DWORD PTR -84[rbp], 0
	je	.L411
	jmp	.L412
.L410:
	lea	rdi, .LC10[rip]
	mov	eax, 0
	call	perrx
.L411:
	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
	mov	eax, DWORD PTR -28[rbp]
	mov	edi, eax
	call	close@PLT
	mov	eax, DWORD PTR -20[rbp]
	mov	esi, 1
	mov	edi, eax
	call	dup2@PLT
	mov	eax, DWORD PTR -24[rbp]
	mov	edi, eax
	call	close@PLT
	mov	eax, DWORD PTR -20[rbp]
	mov	edi, eax
	call	close@PLT
	mov	eax, DWORD PTR -16[rbp]
	mov	edi, eax
	call	close@PLT
	mov	eax, DWORD PTR -12[rbp]
	mov	edi, eax
	call	close@PLT
	lea	rax, .LC56[rip]
	mov	QWORD PTR arg0[rip], rax
	mov	rdx, QWORD PTR -64[rbp]
	mov	rax, QWORD PTR -72[rbp]
	mov	ecx, 3
	mov	rsi, rax
	lea	rdi, slave[rip]
	mov	eax, 0
	call	startprocess
.L412:
	call	fork@PLT
	mov	DWORD PTR -80[rbp], eax
	cmp	DWORD PTR -80[rbp], -1
	je	.L413
	cmp	DWORD PTR -80[rbp], 0
	je	.L414
	jmp	.L415
.L413:
	lea	rdi, .LC10[rip]
	mov	eax, 0
	call	perrx
.L414:
	mov	eax, DWORD PTR -24[rbp]
	mov	esi, 0
	mov	edi, eax
	call	dup2@PLT
	mov	eax, DWORD PTR -24[rbp]
	mov	edi, eax
	call	close@PLT
	mov	eax, DWORD PTR -20[rbp]
	mov	edi, eax
	call	close@PLT
	mov	eax, DWORD PTR -32[rbp]
	mov	edi, eax
	call	close@PLT
	mov	eax, DWORD PTR -28[rbp]
	mov	edi, eax
	call	close@PLT
	mov	eax, DWORD PTR -12[rbp]
	mov	esi, 1
	mov	edi, eax
	call	dup2@PLT
	mov	eax, DWORD PTR -16[rbp]
	mov	edi, eax
	call	close@PLT
	mov	eax, DWORD PTR -12[rbp]
	mov	edi, eax
	call	close@PLT
	lea	rax, .LC57[rip]
	mov	QWORD PTR arg0[rip], rax
	mov	rdx, QWORD PTR -48[rbp]
	mov	rax, QWORD PTR -56[rbp]
	mov	ecx, 3
	mov	rsi, rax
	lea	rdi, master[rip]
	mov	eax, 0
	call	startprocess
.L415:
	mov	eax, DWORD PTR -24[rbp]
	mov	edi, eax
	call	close@PLT
	mov	eax, DWORD PTR -20[rbp]
	mov	edi, eax
	call	close@PLT
	mov	eax, DWORD PTR -16[rbp]
	mov	DWORD PTR chan[rip], eax
	mov	eax, DWORD PTR -12[rbp]
	mov	edi, eax
	call	close@PLT
	mov	eax, DWORD PTR -28[rbp]
	mov	DWORD PTR chan[rip+4], eax
	mov	eax, DWORD PTR -32[rbp]
	mov	edi, eax
	call	close@PLT
	mov	eax, 0
	call	mediator
.L404:
	mov	eax, DWORD PTR chan[rip]
	mov	edi, eax
	call	close@PLT
	mov	eax, DWORD PTR chan[rip+4]
	mov	edi, eax
	call	close@PLT
	mov	edi, 15
	call	alarm@PLT
	jmp	.L416
.L419:
	mov	edi, 0
	call	wait@PLT
	mov	DWORD PTR -76[rbp], eax
	cmp	DWORD PTR -76[rbp], 0
	jns	.L417
	lea	rdi, .LC59[rip]
	mov	eax, 0
	call	perrx
.L417:
	mov	eax, DWORD PTR -76[rbp]
	cmp	eax, DWORD PTR -84[rbp]
	jne	.L418
	mov	DWORD PTR -84[rbp], 0
.L418:
	mov	eax, DWORD PTR -76[rbp]
	cmp	eax, DWORD PTR -80[rbp]
	jne	.L416
	mov	DWORD PTR -80[rbp], 0
.L416:
	cmp	DWORD PTR -84[rbp], 0
	jne	.L419
	cmp	DWORD PTR -80[rbp], 0
	jne	.L419
	mov	eax, DWORD PTR ex[rip]
	mov	edi, eax
	call	exit@PLT
	.cfi_endproc
.LFE50:
	.size	main, .-main
	.local	pend.9
	.comm	pend.9,8,8
	.local	links.8
	.comm	links.8,2048,32
	.data
	.align 4
	.type	tfd.7, @object
	.size	tfd.7, 4
tfd.7:
	.long	-1
	.local	dlink.6
	.comm	dlink.6,4104,32
	.local	n.5
	.comm	n.5,4,4
	.local	buf.4
	.comm	buf.4,64,32
	.local	bp.3
	.comm	bp.3,8,8
	.section	.rodata
.LC60:
	.string	"rm"
.LC61:
	.string	"-r"
	.section	.data.rel.local
	.align 32
	.type	argv.2, @object
	.size	argv.2, 32
argv.2:
	.quad	.LC60
	.quad	.LC61
	.quad	0
	.quad	0
	.data
	.align 4
	.type	tty.1, @object
	.size	tty.1, 4
tty.1:
	.long	-1
	.local	tms.0
	.comm	tms.0,16,16
	.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	"5873.c"
	.text
	.local	install
	.comm	install,4,4
	.local	interact
	.comm	interact,4,4
	.local	force
	.comm	force,4,4
	.local	backup
	.comm	backup,4,4
	.data
	.align	2
	.type	SYNCNAME, %object
	.size	SYNCNAME, 9
SYNCNAME:
	.ascii	"synctree\000"
	.align	2
	.type	SLAVENAME, %object
	.size	SLAVENAME, 10
SLAVENAME:
	.ascii	"==SLAVE==\000"
	.align	2
	.type	MASTERNAME, %object
	.size	MASTERNAME, 11
MASTERNAME:
	.ascii	"==MASTER==\000"
	.align	2
	.type	BACKUP, %object
	.size	BACKUP, 8
BACKUP:
	.ascii	".backup\000"
	.local	filemodes
	.comm	filemodes,4,4
	.align	2
	.type	chan, %object
	.size	chan, 8
chan:
	.word	0
	.word	1
	.local	bucket
	.comm	bucket,4101,4
	.align	2
	.type	buckp, %object
	.size	buckp, 4
buckp:
	.word	bucket
	.local	buckn
	.comm	buckn,4,4
	.local	arg0
	.comm	arg0,4,4
	.local	ex
	.comm	ex,4,4
	.section	.rodata
	.align	2
.LC0:
	.ascii	": %s\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	because, %function
because:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	ldr	r3, .L2
	ldr	r4, [r3]
	bl	__errno_location
	mov	r3, r0
	ldr	r3, [r3]
	mov	r0, r3
	bl	strerror
	mov	r3, r0
	mov	r2, r3
	ldr	r1, .L2+4
	mov	r0, r4
	bl	fprintf
	ldr	r3, .L2+8
	mov	r2, #1
	str	r2, [r3]
	nop
	pop	{r4, r5, fp, pc}
.L3:
	.align	2
.L2:
	.word	stderr
	.word	.LC0
	.word	ex
	.size	because, .-because
	.section	.rodata
	.align	2
.LC1:
	.ascii	"%s: %s: %s\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	perr, %function
perr:
	@ 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, #16
	str	r0, [fp, #-16]
	ldr	r3, .L5
	ldr	r4, [r3]
	ldr	r3, .L5+4
	ldr	r5, [r3]
	bl	__errno_location
	mov	r3, r0
	ldr	r3, [r3]
	mov	r0, r3
	bl	strerror
	mov	r3, r0
	str	r3, [sp]
	ldr	r3, [fp, #-16]
	mov	r2, r5
	ldr	r1, .L5+8
	mov	r0, r4
	bl	fprintf
	ldr	r3, .L5+12
	mov	r2, #1
	str	r2, [r3]
	nop
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
.L6:
	.align	2
.L5:
	.word	stderr
	.word	arg0
	.word	.LC1
	.word	ex
	.size	perr, .-perr
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	perrx, %function
perrx:
	@ 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]
	ldr	r0, [fp, #-8]
	bl	perr
	mov	r0, #1
	bl	exit
	.size	perrx, .-perrx
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	isbackup, %function
isbackup:
	@ 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]
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	beq	.L9
	mov	r3, #0
	b	.L10
.L9:
	mov	r3, #2
.L10:
	mov	r1, r3
	ldr	r0, .L14
	bl	open
	mov	r3, r0
	ldr	r2, .L14+4
	str	r3, [r2]
	ldr	r3, .L14+4
	ldr	r3, [r3]
	cmp	r3, #0
	blt	.L11
	ldr	r3, .L14+8
	mov	r2, #1
	str	r2, [r3]
	b	.L13
.L11:
	bl	__errno_location
	mov	r3, r0
	ldr	r3, [r3]
	cmp	r3, #2
	beq	.L13
	ldr	r0, .L14
	bl	perrx
.L13:
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L15:
	.align	2
.L14:
	.word	BACKUP
	.word	filemodes
	.word	backup
	.size	isbackup, .-isbackup
	.local	path
	.comm	path,4097,4
	.local	lnkpth
	.comm	lnkpth,4097,4
	.local	linkpath
	.comm	linkpath,4,4
	.local	st
	.comm	st,88,8
	.local	Spath
	.comm	Spath,4097,4
	.local	Slnkpth
	.comm	Slnkpth,4097,4
	.local	Slinkpath
	.comm	Slinkpath,4,4
	.local	Sst
	.comm	Sst,88,8
	.section	.rodata
	.align	2
.LC2:
	.ascii	"%s: %s/%s is too long.\012\000"
	.align	2
.LC3:
	.ascii	"%s: Unable to continue.\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	addpath, %function
addpath:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #20
	str	r0, [fp, #-16]
	str	r1, [fp, #-20]
	ldr	r3, [fp, #-16]
	ldr	r2, .L23
	sub	r3, r3, r2
	mov	r4, r3
	ldr	r0, [fp, #-20]
	bl	strlen
	mov	r3, r0
	add	r3, r4, r3
	add	r3, r3, #1
	cmp	r3, #4096
	bls	.L17
	ldr	r3, [fp, #-16]
	mov	r2, #0
	strb	r2, [r3]
	ldr	r3, .L23+4
	ldr	r0, [r3]
	ldr	r3, .L23+8
	ldr	r2, [r3]
	ldr	r3, [fp, #-20]
	str	r3, [sp]
	ldr	r3, .L23
	ldr	r1, .L23+12
	bl	fprintf
	ldr	r3, .L23+4
	ldr	r3, [r3]
	ldr	r2, .L23+8
	ldr	r2, [r2]
	ldr	r1, .L23+16
	mov	r0, r3
	bl	fprintf
	mov	r0, #1
	bl	exit
.L17:
	ldr	r2, .L23+20
	ldr	r3, [fp, #-16]
	cmp	r3, r2
	bne	.L18
	ldr	r3, .L23
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #46
	bne	.L18
	ldr	r3, .L23
	str	r3, [fp, #-16]
.L18:
	ldr	r3, [fp, #-16]
	ldr	r2, .L23
	cmp	r3, r2
	bls	.L20
	ldr	r3, [fp, #-16]
	add	r2, r3, #1
	str	r2, [fp, #-16]
	mov	r2, #47
	strb	r2, [r3]
	b	.L20
.L21:
	ldr	r2, [fp, #-20]
	add	r3, r2, #1
	str	r3, [fp, #-20]
	ldr	r3, [fp, #-16]
	add	r1, r3, #1
	str	r1, [fp, #-16]
	ldrb	r2, [r2]	@ zero_extendqisi2
	strb	r2, [r3]
.L20:
	ldr	r3, [fp, #-20]
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L21
	ldr	r3, [fp, #-16]
	mov	r2, #0
	strb	r2, [r3]
	ldr	r3, [fp, #-16]
	mov	r0, r3
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L24:
	.align	2
.L23:
	.word	path
	.word	stderr
	.word	arg0
	.word	.LC2
	.word	.LC3
	.word	path+1
	.size	addpath, .-addpath
	.local	E
	.comm	E,4,4
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	setpath, %function
setpath:
	@ 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]
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	bne	.L26
	ldr	r3, .L29
	ldr	r2, .L29+4
	str	r2, [r3]
	b	.L28
.L26:
	ldr	r3, [fp, #-8]
	ldr	r3, [r3, #4]
	mov	r0, r3
	bl	setpath
	ldr	r3, .L29
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	ldr	r3, [r3, #12]
	mov	r1, r3
	mov	r0, r2
	bl	addpath
	mov	r3, r0
	ldr	r2, .L29
	str	r3, [r2]
.L28:
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L30:
	.align	2
.L29:
	.word	pend.6654
	.word	path
	.size	setpath, .-setpath
	.section	.rodata
	.align	2
.LC4:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	sort, %function
sort:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	str	r0, [fp, #-24]
	ldr	r3, .L44
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	ldr	r3, [fp, #-24]
	ldr	r3, [r3]
	str	r3, [fp, #-12]
	ldr	r3, [fp, #-12]
	ldr	r3, [r3]
	str	r3, [fp, #-16]
.L34:
	ldr	r3, [fp, #-16]
	ldr	r3, [r3]
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-16]
	cmp	r3, #0
	beq	.L42
	ldr	r3, [fp, #-12]
	ldr	r3, [r3]
	str	r3, [fp, #-12]
	ldr	r3, [fp, #-16]
	ldr	r3, [r3]
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-16]
	cmp	r3, #0
	bne	.L34
	b	.L33
.L42:
	nop
.L33:
	ldr	r3, [fp, #-12]
	ldr	r3, [r3]
	str	r3, [fp, #-20]
	ldr	r3, [fp, #-12]
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, [fp, #-24]
	ldr	r3, [r3]
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L35
	ldr	r0, [fp, #-24]
	bl	sort
.L35:
	ldr	r3, [fp, #-20]
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L36
	sub	r3, fp, #20
	mov	r0, r3
	bl	sort
.L36:
	ldr	r3, [fp, #-24]
	ldr	r3, [r3]
	str	r3, [fp, #-16]
.L40:
	ldr	r3, [fp, #-16]
	ldr	r2, [r3, #12]
	ldr	r3, [fp, #-20]
	ldr	r3, [r3, #12]
	mov	r1, r3
	mov	r0, r2
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bgt	.L37
	ldr	r3, [fp, #-16]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-24]
	ldr	r3, [r3]
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-16]
	cmp	r3, #0
	bne	.L40
	ldr	r2, [fp, #-20]
	ldr	r3, [fp, #-24]
	str	r2, [r3]
	b	.L39
.L37:
	ldr	r2, [fp, #-20]
	ldr	r3, [fp, #-24]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-24]
	ldr	r3, [r3]
	str	r3, [fp, #-20]
	ldr	r3, [fp, #-24]
	ldr	r2, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	cmp	r3, #0
	beq	.L43
	b	.L40
.L43:
	nop
.L39:
	nop
	ldr	r3, .L44
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L41
	bl	__stack_chk_fail
.L41:
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L45:
	.align	2
.L44:
	.word	.LC4
	.size	sort, .-sort
	.section	.rodata
	.align	2
.LC5:
	.ascii	"%s: Can't read dir %s\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	enter, %function
enter:
	@ 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, .L53
	ldr	r3, [r3]
	add	r3, r3, #8
	str	r3, [fp, #-20]
	ldr	r0, .L53+4
	bl	opendir
	str	r0, [fp, #-16]
	ldr	r3, [fp, #-16]
	cmp	r3, #0
	bne	.L49
	ldr	r3, .L53+8
	ldr	r0, [r3]
	ldr	r3, .L53+12
	ldr	r2, [r3]
	ldr	r3, .L53+4
	ldr	r1, .L53+16
	bl	fprintf
	b	.L46
.L52:
	ldr	r3, [fp, #-12]
	ldrb	r3, [r3, #11]	@ zero_extendqisi2
	cmp	r3, #46
	bne	.L50
	ldr	r3, [fp, #-12]
	ldrb	r3, [r3, #12]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L49
	ldr	r3, [fp, #-12]
	ldrb	r3, [r3, #12]	@ zero_extendqisi2
	cmp	r3, #46
	bne	.L50
	ldr	r3, [fp, #-12]
	ldrb	r3, [r3, #13]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L50
	b	.L49
.L50:
	mov	r0, #16
	bl	malloc
	mov	r3, r0
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-8]
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L53
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	str	r2, [r3, #4]
	ldr	r3, [fp, #-8]
	mov	r2, #0
	str	r2, [r3, #8]
	ldr	r3, [fp, #-12]
	add	r3, r3, #11
	mov	r0, r3
	bl	strlen
	mov	r3, r0
	add	r3, r3, #1
	mov	r0, r3
	bl	malloc
	mov	r3, r0
	mov	r2, r3
	ldr	r3, [fp, #-8]
	str	r2, [r3, #12]
	ldr	r3, [fp, #-8]
	ldr	r2, [r3, #12]
	ldr	r3, [fp, #-12]
	add	r3, r3, #11
	mov	r1, r3
	mov	r0, r2
	bl	strcpy
	ldr	r3, [fp, #-20]
	ldr	r2, [fp, #-8]
	str	r2, [r3]
	ldr	r3, [fp, #-8]
	str	r3, [fp, #-20]
.L49:
	ldr	r0, [fp, #-16]
	bl	readdir
	str	r0, [fp, #-12]
	ldr	r3, [fp, #-12]
	cmp	r3, #0
	bne	.L52
	ldr	r0, [fp, #-16]
	bl	closedir
	ldr	r3, .L53
	ldr	r3, [r3]
	ldr	r3, [r3, #8]
	cmp	r3, #0
	beq	.L46
	ldr	r3, .L53
	ldr	r3, [r3]
	ldr	r3, [r3, #8]
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L46
	ldr	r3, .L53
	ldr	r3, [r3]
	add	r3, r3, #8
	mov	r0, r3
	bl	sort
.L46:
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L54:
	.align	2
.L53:
	.word	E
	.word	path
	.word	stderr
	.word	arg0
	.word	.LC5
	.size	enter, .-enter
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	link_islink, %function
link_islink:
	@ args = 0, pretend = 0, frame = 32
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #32
	str	r0, [fp, #-32]
	str	r1, [fp, #-36]
	ldr	r3, [fp, #-36]
	cmp	r3, #0
	bne	.L56
	ldr	r3, .L79
	str	r3, [fp, #-24]
	b	.L57
.L59:
	ldr	r3, [fp, #-20]
	ldr	r2, [r3]
	ldr	r3, [fp, #-24]
	str	r2, [r3]
	ldr	r0, [fp, #-20]
	bl	free
.L58:
	ldr	r3, [fp, #-24]
	ldr	r3, [r3]
	str	r3, [fp, #-20]
	ldr	r3, [fp, #-20]
	cmp	r3, #0
	bne	.L59
	ldr	r3, [fp, #-24]
	add	r3, r3, #4
	str	r3, [fp, #-24]
.L57:
	ldr	r2, .L79+4
	ldr	r3, [fp, #-24]
	cmp	r3, r2
	bcc	.L58
	ldr	r3, .L79+8
	ldr	r3, [r3]
	cmn	r3, #1
	beq	.L61
	ldr	r3, .L79+8
	ldr	r3, [r3]
	mov	r0, r3
	bl	close
.L61:
	ldr	r3, .L79+8
	mvn	r2, #0
	str	r2, [r3]
	mov	r3, #0
	b	.L62
.L56:
	ldr	r3, [fp, #-32]
	ldr	r3, [r3, #16]
	and	r3, r3, #61440
	cmp	r3, #16384
	beq	.L63
	ldr	r3, [fp, #-32]
	ldr	r3, [r3, #20]
	cmp	r3, #1
	bhi	.L64
.L63:
	bl	__errno_location
	mov	r3, r0
	mov	r2, #2
	str	r2, [r3]
	mov	r3, #0
	b	.L62
.L64:
	ldr	r3, [fp, #-32]
	ldr	r3, [r3, #12]
	and	r3, r3, #255
	lsl	r3, r3, #2
	ldr	r2, .L79
	add	r3, r3, r2
	str	r3, [fp, #-24]
	b	.L65
.L70:
	ldr	r3, [fp, #-20]
	ldr	r2, [r3, #4]
	ldr	r3, [fp, #-32]
	ldr	r3, [r3, #12]
	cmp	r2, r3
	bne	.L66
	ldr	r3, .L79+8
	ldr	r0, [r3]
	ldr	r3, [fp, #-20]
	ldr	r3, [r3, #8]
	mov	r2, #0
	mov	r1, r3
	bl	lseek
	mov	r3, r0
	cmn	r3, #1
	bne	.L67
	mov	r3, #0
	b	.L62
.L67:
	ldr	r3, .L79+8
	ldr	r3, [r3]
	ldr	r2, .L79+12
	ldr	r1, .L79+16
	mov	r0, r3
	bl	read
	mov	r3, r0
	cmp	r3, #0
	bge	.L68
	mov	r3, #0
	b	.L62
.L68:
	ldr	r3, .L79+16
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-32]
	ldmia	r3, {r2-r3}
	cmp	r1, r3
	cmpeq	r0, r2
	bne	.L66
	ldr	r1, .L79+20
	ldr	r0, [fp, #-36]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L69
	ldr	r3, [fp, #-20]
	ldr	r2, [r3]
	ldr	r3, [fp, #-24]
	str	r2, [r3]
	ldr	r0, [fp, #-20]
	bl	free
	bl	__errno_location
	mov	r3, r0
	mov	r2, #2
	str	r2, [r3]
	mov	r3, #0
	b	.L62
.L69:
	ldr	r3, .L79+20
	b	.L62
.L66:
	ldr	r3, [fp, #-20]
	str	r3, [fp, #-24]
.L65:
	ldr	r3, [fp, #-24]
	ldr	r3, [r3]
	str	r3, [fp, #-20]
	ldr	r3, [fp, #-20]
	cmp	r3, #0
	bne	.L70
	ldr	r3, .L79+8
	ldr	r3, [r3]
	cmn	r3, #1
	bne	.L71
.L74:
	mov	r0, #0
	bl	tmpnam
	str	r0, [fp, #-16]
	mov	r2, #384
	mov	r1, #194
	ldr	r0, [fp, #-16]
	bl	open
	mov	r3, r0
	ldr	r2, .L79+8
	str	r3, [r2]
	ldr	r3, .L79+8
	ldr	r3, [r3]
	cmp	r3, #0
	bge	.L72
	bl	__errno_location
	mov	r3, r0
	ldr	r3, [r3]
	cmp	r3, #17
	beq	.L74
	mov	r3, #0
	b	.L62
.L72:
	ldr	r0, [fp, #-16]
	bl	unlink
.L71:
	ldr	r0, [fp, #-36]
	bl	strlen
	str	r0, [fp, #-12]
	ldr	r3, [fp, #-12]
	cmp	r3, #4096
	bcc	.L75
	bl	__errno_location
	mov	r3, r0
	mov	r2, #7
	str	r2, [r3]
	mov	r3, #0
	b	.L62
.L75:
	ldr	r3, [fp, #-32]
	ldmia	r3, {r2-r3}
	ldr	r1, .L79+16
	stm	r1, {r2-r3}
	ldr	r1, [fp, #-36]
	ldr	r0, .L79+20
	bl	strcpy
	ldr	r3, [fp, #-12]
	add	r3, r3, #9
	str	r3, [fp, #-12]
	ldr	r3, .L79+8
	ldr	r3, [r3]
	mov	r2, #2
	mov	r1, #0
	mov	r0, r3
	bl	lseek
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmn	r3, #1
	bne	.L76
	mov	r3, #0
	b	.L62
.L76:
	ldr	r3, .L79+8
	ldr	r3, [r3]
	ldr	r2, [fp, #-12]
	ldr	r1, .L79+16
	mov	r0, r3
	bl	write
	mov	r3, r0
	mov	r2, r3
	ldr	r3, [fp, #-12]
	cmp	r3, r2
	beq	.L77
	mov	r3, #0
	b	.L62
.L77:
	mov	r0, #12
	bl	malloc
	mov	r3, r0
	str	r3, [fp, #-20]
	ldr	r3, [fp, #-20]
	cmp	r3, #0
	bne	.L78
	mov	r3, #0
	b	.L62
.L78:
	ldr	r3, [fp, #-20]
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, [fp, #-32]
	ldr	r2, [r3, #12]
	ldr	r3, [fp, #-20]
	str	r2, [r3, #4]
	ldr	r3, [fp, #-20]
	ldr	r2, [fp, #-8]
	str	r2, [r3, #8]
	ldr	r3, [fp, #-24]
	ldr	r2, [fp, #-20]
	str	r2, [r3]
	bl	__errno_location
	mov	r3, r0
	mov	r2, #2
	str	r2, [r3]
	mov	r3, #0
.L62:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L80:
	.align	2
.L79:
	.word	links.6687
	.word	links.6687+1024
	.word	tfd.6688
	.word	4104
	.word	dlink.6689
	.word	dlink.6689+8
	.size	link_islink, .-link_islink
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	islink, %function
islink:
	@ 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	r1, .L84
	ldr	r0, .L84+4
	bl	link_islink
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	bne	.L82
	bl	__errno_location
	mov	r3, r0
	ldr	r3, [r3]
	cmp	r3, #2
	beq	.L82
	ldr	r0, .L84
	bl	perrx
.L82:
	ldr	r3, [fp, #-8]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L85:
	.align	2
.L84:
	.word	path
	.word	st
	.size	islink, .-islink
	.section	.rodata
	.align	2
.LC6:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	setstat, %function
setstat:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	str	r0, [fp, #-24]
	str	r1, [fp, #-28]
	ldr	r3, .L91
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	ldr	r3, [fp, #-28]
	ldr	r3, [r3, #16]
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	strh	r3, [fp, #-20]	@ movhi
	ldr	r3, [fp, #-28]
	ldr	r3, [r3, #24]
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	strh	r3, [fp, #-18]	@ movhi
	ldr	r3, [fp, #-28]
	ldr	r3, [r3, #28]
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	strh	r3, [fp, #-16]	@ movhi
	ldr	r3, [fp, #-28]
	add	r3, r3, #32
	ldmia	r3, {r2-r3}
	lsl	r3, r2, #16
	lsr	r3, r3, #16
	strh	r3, [fp, #-14]	@ movhi
	ldr	r3, [fp, #-28]
	ldr	r3, [r3, #44]
	add	r2, r3, #1020
	add	r2, r2, #3
	cmp	r3, #0
	movlt	r3, r2
	movge	r3, r3
	asr	r3, r3, #10
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	strh	r3, [fp, #-12]	@ movhi
	ldr	r3, .L91+4
	ldr	r0, [r3]
	ldr	r2, [fp, #-24]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #1
	mov	r2, #0
	mov	r1, r3
	bl	lseek
	mov	r3, r0
	cmn	r3, #1
	beq	.L87
	ldr	r3, .L91+4
	ldr	r3, [r3]
	sub	r1, fp, #20
	mov	r2, #10
	mov	r0, r3
	bl	write
	mov	r3, r0
	cmp	r3, #10
	beq	.L90
.L87:
	ldr	r0, .L91+8
	bl	perrx
.L90:
	nop
	ldr	r3, .L91
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L89
	bl	__stack_chk_fail
.L89:
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L92:
	.align	2
.L91:
	.word	.LC6
	.word	filemodes
	.word	BACKUP
	.size	setstat, .-setstat
	.section	.rodata
	.align	2
.LC7:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	getstat, %function
getstat:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	str	r0, [fp, #-24]
	str	r1, [fp, #-28]
	ldr	r3, .L103
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	bl	__errno_location
	mov	r3, r0
	mov	r2, #0
	str	r2, [r3]
	ldr	r1, .L103+4
	ldr	r0, [fp, #-24]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L94
	mvn	r3, #0
	b	.L95
.L94:
	ldr	r1, [fp, #-28]
	ldr	r0, [fp, #-24]
	bl	lstat
	mov	r3, r0
	cmp	r3, #0
	bge	.L96
	mvn	r3, #0
	b	.L95
.L96:
	ldr	r3, [fp, #-28]
	ldr	r3, [r3, #16]
	cmp	r3, #32768
	bne	.L97
	ldr	r3, [fp, #-28]
	ldr	r3, [r3, #64]
	cmp	r3, #0
	bne	.L97
	mvn	r3, #0
	b	.L95
.L97:
	ldr	r3, .L103+8
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L98
	ldr	r3, .L103+12
	ldr	r0, [r3]
	ldr	r3, [fp, #-28]
	ldr	r3, [r3, #12]
	mov	r2, r3
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #1
	mov	r2, #0
	mov	r1, r3
	bl	lseek
	mov	r3, r0
	cmn	r3, #1
	beq	.L99
	ldr	r3, .L103+12
	ldr	r3, [r3]
	sub	r1, fp, #20
	mov	r2, #10
	mov	r0, r3
	bl	read
	mov	r3, r0
	cmp	r3, #10
	bne	.L99
	ldrh	r3, [fp, #-20]
	cmp	r3, #0
	bne	.L100
.L99:
	bl	__errno_location
	mov	r3, r0
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, [fp, #-28]
	ldr	r3, [r3, #12]
	ldr	r1, [fp, #-28]
	mov	r0, r3
	bl	setstat
	b	.L98
.L100:
	ldrh	r3, [fp, #-20]
	mov	r2, r3
	ldr	r3, [fp, #-28]
	str	r2, [r3, #16]
	ldrh	r3, [fp, #-18]
	mov	r2, r3
	ldr	r3, [fp, #-28]
	str	r2, [r3, #24]
	ldrh	r3, [fp, #-16]
	mov	r2, r3
	ldr	r3, [fp, #-28]
	str	r2, [r3, #28]
	ldrh	r1, [fp, #-14]
	mov	r3, r1
	mov	r2, r3
	mov	r3, #0
	ldr	r1, [fp, #-28]
	str	r2, [r1, #32]
	str	r3, [r1, #36]
	ldr	r3, [fp, #-28]
	ldr	r3, [r3, #16]
	and	r3, r3, #61440
	cmp	r3, #24576
	bne	.L98
	ldrh	r3, [fp, #-12]
	lsl	r2, r3, #10
	ldr	r3, [fp, #-28]
	str	r2, [r3, #44]
.L98:
	mov	r3, #0
.L95:
	ldr	r2, .L103
	ldr	r1, [r2]
	ldr	r2, [fp, #-8]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L102
	bl	__stack_chk_fail
.L102:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L104:
	.align	2
.L103:
	.word	.LC7
	.word	BACKUP
	.word	backup
	.word	filemodes
	.size	getstat, .-getstat
	.section	.rodata
	.align	2
.LC8:
	.ascii	".\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	advance, %function
advance:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #20
.L117:
	ldr	r3, .L120
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L106
	mov	r0, #16
	bl	malloc
	mov	r3, r0
	mov	r2, r3
	ldr	r3, .L120
	str	r2, [r3]
	ldr	r3, .L120
	ldr	r3, [r3]
	mov	r2, #0
	str	r2, [r3, #4]
	ldr	r3, .L120
	ldr	r3, [r3]
	mov	r2, #0
	str	r2, [r3, #8]
	ldr	r3, .L120
	ldr	r3, [r3]
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L120
	ldr	r4, [r3]
	mov	r0, #3
	bl	malloc
	mov	r3, r0
	str	r3, [r4, #12]
	ldr	r3, .L120
	ldr	r3, [r3]
	ldr	r3, [r3, #12]
	ldr	r2, .L120+4
	mov	r0, r3
	mov	r1, r2
	mov	r3, #2
	mov	r2, r3
	bl	memcpy
	b	.L107
.L106:
	ldr	r3, .L120
	ldr	r3, [r3]
	ldr	r3, [r3, #8]
	cmp	r3, #0
	beq	.L108
	ldr	r3, .L120
	ldr	r3, [r3]
	ldr	r3, [r3, #8]
	ldr	r2, .L120
	str	r3, [r2]
	b	.L107
.L108:
	ldr	r3, .L120
	ldr	r3, [r3]
	str	r3, [fp, #-24]
	ldr	r3, .L120
	ldr	r3, [r3]
	ldr	r3, [r3, #4]
	str	r3, [fp, #-20]
	ldr	r3, [fp, #-20]
	cmp	r3, #0
	beq	.L109
	ldr	r3, .L120
	ldr	r3, [r3]
	ldr	r2, [r3]
	ldr	r3, [fp, #-20]
	str	r2, [r3, #8]
.L109:
	ldr	r3, .L120
	ldr	r3, [r3]
	ldr	r3, [r3]
	ldr	r2, .L120
	str	r3, [r2]
	ldr	r3, [fp, #-24]
	ldr	r3, [r3, #12]
	mov	r0, r3
	bl	free
	ldr	r0, [fp, #-24]
	bl	free
	ldr	r3, .L120
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L118
	ldr	r2, .L120
	ldr	r3, [fp, #-20]
	str	r3, [r2]
	ldr	r3, .L120
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L108
	mov	r3, #0
	b	.L112
.L118:
	nop
.L107:
	ldr	r3, .L120
	ldr	r3, [r3]
	mov	r0, r3
	bl	setpath
	ldr	r1, .L120+8
	ldr	r0, .L120+12
	bl	getstat
	mov	r3, r0
	cmp	r3, #0
	bne	.L113
	ldr	r3, .L120+8
	ldr	r3, [r3, #16]
	and	r3, r3, #61440
	cmp	r3, #40960
	bne	.L119
	mov	r2, #4096
	ldr	r1, .L120+16
	ldr	r0, .L120+12
	bl	readlink
	str	r0, [fp, #-16]
	ldr	r3, [fp, #-16]
	cmp	r3, #0
	blt	.L113
	ldr	r2, .L120+16
	ldr	r3, [fp, #-16]
	add	r3, r2, r3
	mov	r2, #0
	strb	r2, [r3]
	b	.L115
.L113:
	bl	__errno_location
	mov	r3, r0
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L117
	bl	__errno_location
	mov	r3, r0
	ldr	r3, [r3]
	cmp	r3, #2
	beq	.L117
	ldr	r0, .L120+12
	bl	perr
	b	.L117
.L119:
	nop
.L115:
	bl	islink
	mov	r3, r0
	ldr	r2, .L120+20
	str	r3, [r2]
	mov	r3, #1
.L112:
	mov	r0, r3
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L121:
	.align	2
.L120:
	.word	E
	.word	.LC8
	.word	st
	.word	path
	.word	lnkpth
	.word	linkpath
	.size	advance, .-advance
	.section	.rodata
	.align	2
.LC9:
	.ascii	"request()\000"
	.align	2
.LC10:
	.ascii	"%s: Master died prematurely.\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	request, %function
request:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
.L128:
	ldr	r3, .L132
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L123
	ldr	r3, .L132+4
	ldr	r3, [r3]
	mov	r2, #64
	ldr	r1, .L132+8
	mov	r0, r3
	bl	read
	mov	r3, r0
	ldr	r2, .L132
	str	r3, [r2]
	ldr	r3, .L132
	ldr	r3, [r3]
	cmp	r3, #0
	bgt	.L124
	ldr	r3, .L132
	ldr	r3, [r3]
	cmp	r3, #0
	bge	.L125
	ldr	r0, .L132+12
	bl	perrx
.L125:
	ldr	r3, .L132+16
	ldr	r3, [r3]
	ldr	r2, .L132+20
	ldr	r2, [r2]
	ldr	r1, .L132+24
	mov	r0, r3
	bl	fprintf
	mov	r0, #1
	bl	exit
.L124:
	ldr	r3, .L132+28
	ldr	r2, .L132+8
	str	r2, [r3]
.L123:
	ldr	r3, .L132+28
	ldr	r3, [r3]
	add	r2, r3, #1
	ldr	r1, .L132+28
	str	r2, [r1]
	ldrb	r3, [r3]	@ zero_extendqisi2
	str	r3, [fp, #-8]
	ldr	r3, .L132
	ldr	r3, [r3]
	sub	r3, r3, #1
	ldr	r2, .L132
	str	r3, [r2]
	ldr	r3, [fp, #-8]
	cmp	r3, #127
	bgt	.L131
	ldr	r0, [fp, #-8]
	bl	putchar
	b	.L128
.L131:
	nop
	ldr	r3, [fp, #-8]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L133:
	.align	2
.L132:
	.word	n.6732
	.word	chan
	.word	buf.6730
	.word	.LC9
	.word	stderr
	.word	arg0
	.word	.LC10
	.word	bp.6731
	.size	request, .-request
	.section	.rodata
	.align	2
.LC11:
	.ascii	"report()\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	report, %function
report:
	@ 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, .L139
	ldr	r2, .L139+4
	str	r2, [r3]
	b	.L135
.L138:
	ldr	r3, .L139+8
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmp	r3, #8192
	ble	.L136
	mov	r3, #8192
	str	r3, [fp, #-8]
.L136:
	ldr	r3, .L139+12
	ldr	r3, [r3, #4]
	ldr	r2, .L139
	ldr	r1, [r2]
	ldr	r2, [fp, #-8]
	mov	r0, r3
	bl	write
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	bge	.L137
	ldr	r0, .L139+16
	bl	perrx
.L137:
	ldr	r3, .L139
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	add	r3, r2, r3
	ldr	r2, .L139
	str	r3, [r2]
	ldr	r3, .L139+8
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	sub	r3, r2, r3
	ldr	r2, .L139+8
	str	r3, [r2]
.L135:
	ldr	r3, .L139+8
	ldr	r3, [r3]
	cmp	r3, #0
	bgt	.L138
	ldr	r3, .L139
	ldr	r2, .L139+4
	str	r2, [r3]
	ldr	r3, .L139+8
	mov	r2, #0
	str	r2, [r3]
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L140:
	.align	2
.L139:
	.word	buckp
	.word	bucket
	.word	buckn
	.word	chan
	.word	.LC11
	.size	report, .-report
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	inform, %function
inform:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	str	r0, [fp, #-8]
	ldr	r3, .L142
	ldr	r3, [r3]
	add	r2, r3, #1
	ldr	r1, .L142
	str	r2, [r1]
	ldr	r2, [fp, #-8]
	and	r2, r2, #255
	strb	r2, [r3]
	ldr	r3, .L142+4
	ldr	r3, [r3]
	add	r3, r3, #1
	ldr	r2, .L142+4
	str	r3, [r2]
	nop
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
.L143:
	.align	2
.L142:
	.word	buckp
	.word	buckn
	.size	inform, .-inform
	.section	.rodata
	.align	2
.LC12:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	sendnum, %function
sendnum:
	@ 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	r3, .L146
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	ldr	r3, [fp, #-16]
	and	r3, r3, #255
	strb	r3, [fp, #-12]
	ldr	r3, [fp, #-16]
	asr	r3, r3, #8
	and	r3, r3, #255
	strb	r3, [fp, #-11]
	ldr	r3, [fp, #-16]
	asr	r3, r3, #16
	and	r3, r3, #255
	strb	r3, [fp, #-10]
	ldr	r3, [fp, #-16]
	asr	r3, r3, #24
	and	r3, r3, #255
	strb	r3, [fp, #-9]
	ldr	r3, .L146+4
	ldr	r3, [r3]
	mov	r0, r3
	sub	r3, fp, #12
	mov	r2, #4
	mov	r1, r3
	bl	memcpy
	ldr	r3, .L146+4
	ldr	r3, [r3]
	add	r3, r3, #4
	ldr	r2, .L146+4
	str	r3, [r2]
	ldr	r3, .L146+8
	ldr	r3, [r3]
	add	r3, r3, #4
	mov	r2, r3
	ldr	r3, .L146+8
	str	r2, [r3]
	nop
	ldr	r3, .L146
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L145
	bl	__stack_chk_fail
.L145:
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L147:
	.align	2
.L146:
	.word	.LC12
	.word	buckp
	.word	buckn
	.size	sendnum, .-sendnum
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	send, %function
send:
	@ 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	r0, [fp, #-12]
	bl	sendnum
	ldr	r3, [fp, #-12]
	cmp	r3, #0
	ble	.L150
	ldr	r3, .L151
	ldr	r3, [r3]
	ldr	r2, [fp, #-12]
	ldr	r1, [fp, #-8]
	mov	r0, r3
	bl	memcpy
	ldr	r3, .L151
	ldr	r2, [r3]
	ldr	r3, [fp, #-12]
	add	r3, r2, r3
	ldr	r2, .L151
	str	r3, [r2]
	ldr	r3, .L151+4
	ldr	r3, [r3]
	mov	r2, r3
	ldr	r3, [fp, #-12]
	add	r3, r2, r3
	mov	r2, r3
	ldr	r3, .L151+4
	str	r2, [r3]
.L150:
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L152:
	.align	2
.L151:
	.word	buckp
	.word	buckn
	.size	send, .-send
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	sendstat, %function
sendstat:
	@ 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]
	ldr	r3, [fp, #-8]
	ldr	r3, [r3, #16]
	mov	r0, r3
	bl	sendnum
	ldr	r3, [fp, #-8]
	ldr	r3, [r3, #24]
	mov	r0, r3
	bl	sendnum
	ldr	r3, [fp, #-8]
	ldr	r3, [r3, #28]
	mov	r0, r3
	bl	sendnum
	ldr	r3, [fp, #-8]
	add	r3, r3, #32
	ldmia	r3, {r2-r3}
	mov	r3, r2
	mov	r0, r3
	bl	sendnum
	ldr	r3, [fp, #-8]
	ldr	r3, [r3, #44]
	mov	r0, r3
	bl	sendnum
	ldr	r3, [fp, #-8]
	ldr	r3, [r3, #64]
	mov	r0, r3
	bl	sendnum
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	sendstat, .-sendstat
	.section	.rodata
	.align	2
.LC13:
	.ascii	"%s: Can't open %s\000"
	.align	2
.LC14:
	.ascii	"%s: strange request\012\000"
	.align	2
.LC15:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	slave, %function
slave:
	@ args = 0, pretend = 0, frame = 4112
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #4096
	sub	sp, sp, #20
	ldr	r3, .L184
	ldr	r3, [r3]
	str	r3, [fp, #-16]
	mov	r3,#0
	sub	r3, fp, #4096
	sub	r3, r3, #12
	mov	r2, r3
	mov	r3, #0
	str	r3, [r2, #-16]
.L182:
	bl	request
	mov	r3, r0
	sub	r3, r3, #128
	cmp	r3, #10
	ldrls	pc, [pc, r3, asl #2]
	b	.L155
.L157:
	.word	.L166
	.word	.L165
	.word	.L164
	.word	.L155
	.word	.L163
	.word	.L162
	.word	.L161
	.word	.L160
	.word	.L159
	.word	.L158
	.word	.L156
.L166:
	bl	enter
	b	.L167
.L165:
	bl	advance
	mov	r3, r0
	cmp	r3, #0
	beq	.L168
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-16]
	cmp	r3, #1
	bne	.L169
.L168:
	mov	r0, #132
	bl	inform
	sub	r3, fp, #4096
	sub	r3, r3, #12
	mov	r2, r3
	mov	r3, #1
	str	r3, [r2, #-16]
	b	.L167
.L169:
	ldr	r3, .L184+4
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L171
	mov	r0, #129
	bl	inform
	ldr	r3, .L184+4
	ldr	r4, [r3]
	ldr	r3, .L184+4
	ldr	r3, [r3]
	mov	r0, r3
	bl	strlen
	mov	r3, r0
	add	r3, r3, #1
	mov	r1, r3
	mov	r0, r4
	bl	send
	b	.L172
.L171:
	ldr	r3, .L184+8
	ldr	r3, [r3, #16]
	and	r3, r3, #61440
	cmp	r3, #40960
	bne	.L173
	mov	r0, #133
	bl	inform
	ldr	r0, .L184+12
	bl	strlen
	mov	r3, r0
	add	r3, r3, #1
	mov	r1, r3
	ldr	r0, .L184+12
	bl	send
	b	.L172
.L173:
	mov	r0, #128
	bl	inform
.L172:
	ldr	r0, .L184+16
	bl	strlen
	mov	r3, r0
	add	r3, r3, #1
	mov	r1, r3
	ldr	r0, .L184+16
	bl	send
	ldr	r0, .L184+8
	bl	sendstat
	b	.L167
.L164:
	sub	r3, fp, #4096
	sub	r3, r3, #12
	mov	r4, r3
	mov	r1, #0
	ldr	r0, .L184+16
	bl	open
	str	r0, [r4, #-12]
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-12]
	cmp	r3, #0
	bge	.L174
	ldr	r3, .L184+20
	ldr	r0, [r3]
	ldr	r3, .L184+24
	ldr	r2, [r3]
	ldr	r3, .L184+16
	ldr	r1, .L184+28
	bl	fprintf
	bl	because
	mov	r0, #131
	bl	inform
	b	.L167
.L174:
	mov	r0, #130
	bl	inform
.L177:
	sub	r3, fp, #4096
	sub	r3, r3, #12
	mov	r4, r3
	sub	r3, fp, #4096
	sub	r3, r3, #12
	sub	r3, r3, #4
	sub	r2, fp, #4096
	sub	r2, r2, #12
	mov	r0, r2
	mov	r2, #4096
	mov	r1, r3
	ldr	r0, [r0, #-12]
	bl	read
	str	r0, [r4, #-8]
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-8]
	cmp	r3, #0
	bge	.L175
	ldr	r0, .L184+16
	bl	perr
.L175:
	sub	r3, fp, #4096
	sub	r3, r3, #12
	mov	r2, r3
	sub	r3, fp, #4096
	sub	r3, r3, #12
	sub	r3, r3, #4
	ldr	r1, [r2, #-8]
	mov	r0, r3
	bl	send
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-8]
	cmp	r3, #0
	ble	.L176
	bl	report
.L176:
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-8]
	cmp	r3, #0
	bgt	.L177
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r0, [r3, #-12]
	bl	close
	b	.L167
.L163:
	bl	islink
	b	.L167
.L161:
	ldr	r3, .L184+32
	mov	r2, #1
	str	r2, [r3]
.L162:
	sub	r3, fp, #4096
	sub	r3, r3, #12
	mov	r2, r3
	mov	r3, #2
	str	r3, [r2, #-16]
	b	.L167
.L160:
	mov	r0, #121
	bl	ask
	mov	r3, r0
	cmp	r3, #0
	beq	.L178
	mov	r3, #134
	b	.L179
.L178:
	mov	r3, #135
.L179:
	mov	r0, r3
	bl	inform
	b	.L167
.L159:
	mov	r0, #110
	bl	ask
	mov	r3, r0
	cmp	r3, #0
	beq	.L180
	mov	r3, #134
	b	.L181
.L180:
	mov	r3, #135
.L181:
	mov	r0, r3
	bl	inform
	b	.L167
.L158:
	mov	r0, #134
	bl	inform
	b	.L167
.L156:
	mov	r0, #135
	bl	inform
	b	.L167
.L155:
	ldr	r3, .L184+20
	ldr	r3, [r3]
	ldr	r2, .L184+24
	ldr	r2, [r2]
	ldr	r1, .L184+36
	mov	r0, r3
	bl	fprintf
	mov	r0, #1
	bl	exit
.L167:
	bl	report
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-16]
	cmp	r3, #2
	bne	.L182
	nop
	ldr	r3, .L184
	ldr	r2, [r3]
	ldr	r3, [fp, #-16]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L183
	bl	__stack_chk_fail
.L183:
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L185:
	.align	2
.L184:
	.word	.LC15
	.word	linkpath
	.word	st
	.word	lnkpth
	.word	path
	.word	stderr
	.word	arg0
	.word	.LC13
	.word	ex
	.word	.LC14
	.size	slave, .-slave
	.section	.rodata
	.align	2
.LC16:
	.ascii	"fork()\000"
	.align	2
.LC17:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	execute, %function
execute:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	str	r0, [fp, #-24]
	ldr	r3, .L194
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	bl	fork
	mov	r3, r0
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-16]
	cmp	r3, #0
	bge	.L187
	ldr	r0, .L194+4
	bl	perr
	mov	r3, #0
	b	.L192
.L187:
	ldr	r3, [fp, #-16]
	cmp	r3, #0
	bne	.L190
	ldr	r3, [fp, #-24]
	ldr	r3, [r3]
	ldr	r1, [fp, #-24]
	mov	r0, r3
	bl	execvp
	ldr	r3, [fp, #-24]
	ldr	r3, [r3]
	mov	r0, r3
	bl	perrx
	b	.L190
.L191:
	ldr	r3, [fp, #-12]
	cmp	r3, #0
	bge	.L190
	ldr	r3, [fp, #-24]
	ldr	r3, [r3]
	mov	r0, r3
	bl	perr
	mov	r3, #0
	b	.L192
.L190:
	sub	r3, fp, #20
	mov	r0, r3
	bl	wait
	str	r0, [fp, #-12]
	ldr	r2, [fp, #-12]
	ldr	r3, [fp, #-16]
	cmp	r2, r3
	bne	.L191
	ldr	r3, [fp, #-20]
	cmp	r3, #0
	moveq	r3, #1
	movne	r3, #0
	and	r3, r3, #255
.L192:
	ldr	r2, .L194
	ldr	r1, [r2]
	ldr	r2, [fp, #-8]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L193
	bl	__stack_chk_fail
.L193:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L195:
	.align	2
.L194:
	.word	.LC17
	.word	.LC16
	.size	execute, .-execute
	.section	.rodata
	.align	2
.LC18:
	.ascii	"(rm -r %s)\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	removedir, %function
removedir:
	@ 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]
	ldr	r1, [fp, #-8]
	ldr	r0, .L198
	bl	printf
	ldr	r2, .L198+4
	ldr	r3, [fp, #-8]
	str	r3, [r2, #8]
	ldr	r0, .L198+4
	bl	execute
	mov	r3, r0
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L199:
	.align	2
.L198:
	.word	.LC18
	.word	argv.6795
	.size	removedir, .-removedir
	.section	.rodata
	.align	2
.LC19:
	.ascii	"order()\000"
	.align	2
.LC20:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	order, %function
order:
	@ 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	r3, .L204
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	ldr	r3, [fp, #-16]
	and	r3, r3, #255
	strb	r3, [fp, #-9]
	ldr	r3, .L204+4
	ldr	r3, [r3, #4]
	sub	r1, fp, #9
	mov	r2, #1
	mov	r0, r3
	bl	write
	mov	r3, r0
	cmp	r3, #1
	beq	.L203
	ldr	r0, .L204+8
	bl	perrx
.L203:
	nop
	ldr	r3, .L204
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L202
	bl	__stack_chk_fail
.L202:
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L205:
	.align	2
.L204:
	.word	.LC20
	.word	chan
	.word	.LC19
	.size	order, .-order
	.section	.rodata
	.align	2
.LC21:
	.ascii	"reply channel from slave\000"
	.align	2
.LC22:
	.ascii	"%s: slave died prematurely.\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	rread, %function
rread:
	@ 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]
	str	r1, [fp, #-20]
	b	.L207
.L212:
	ldr	r3, .L214
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L208
	ldr	r3, .L214+4
	ldr	r3, [r3]
	ldr	r2, .L214+8
	ldr	r1, .L214+12
	mov	r0, r3
	bl	read
	mov	r3, r0
	ldr	r2, .L214
	str	r3, [r2]
	ldr	r3, .L214
	ldr	r3, [r3]
	cmn	r3, #1
	beq	.L209
	cmp	r3, #0
	beq	.L210
	b	.L213
.L209:
	ldr	r0, .L214+16
	bl	perrx
.L210:
	ldr	r3, .L214+20
	ldr	r3, [r3]
	ldr	r2, .L214+24
	ldr	r2, [r2]
	ldr	r1, .L214+28
	mov	r0, r3
	bl	fprintf
	mov	r0, #1
	bl	exit
.L213:
	ldr	r3, .L214+32
	ldr	r2, .L214+12
	str	r2, [r3]
.L208:
	ldr	r3, .L214
	ldr	r3, [r3]
	ldr	r2, [fp, #-20]
	cmp	r2, r3
	movlt	r3, r2
	movge	r3, r3
	str	r3, [fp, #-8]
	ldr	r3, .L214+32
	ldr	r3, [r3]
	ldr	r2, [fp, #-8]
	mov	r1, r3
	ldr	r0, [fp, #-16]
	bl	memcpy
	ldr	r3, .L214+32
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	add	r3, r2, r3
	ldr	r2, .L214+32
	str	r3, [r2]
	ldr	r3, .L214
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	sub	r3, r2, r3
	ldr	r2, .L214
	str	r3, [r2]
	ldr	r3, [fp, #-8]
	ldr	r2, [fp, #-16]
	add	r3, r2, r3
	str	r3, [fp, #-16]
	ldr	r2, [fp, #-20]
	ldr	r3, [fp, #-8]
	sub	r3, r2, r3
	str	r3, [fp, #-20]
.L207:
	ldr	r3, [fp, #-20]
	cmp	r3, #0
	bgt	.L212
	nop
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L215:
	.align	2
.L214:
	.word	buckn
	.word	chan
	.word	4101
	.word	bucket
	.word	.LC21
	.word	stderr
	.word	arg0
	.word	.LC22
	.word	buckp
	.size	rread, .-rread
	.section	.rodata
	.align	2
.LC23:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	answer, %function
answer:
	@ 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, .L219
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	sub	r3, fp, #13
	mov	r1, #1
	mov	r0, r3
	bl	rread
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	str	r3, [fp, #-12]
	ldr	r3, [fp, #-12]
	ldr	r2, .L219
	ldr	r1, [r2]
	ldr	r2, [fp, #-8]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L218
	bl	__stack_chk_fail
.L218:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L220:
	.align	2
.L219:
	.word	.LC23
	.size	answer, .-answer
	.section	.rodata
	.align	2
.LC24:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	recnum, %function
recnum:
	@ 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, .L224
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	sub	r3, fp, #12
	mov	r1, #4
	mov	r0, r3
	bl	rread
	ldrb	r3, [fp, #-12]	@ zero_extendqisi2
	mov	r2, r3
	ldrb	r3, [fp, #-11]	@ zero_extendqisi2
	lsl	r3, r3, #8
	orr	r2, r2, r3
	ldrb	r3, [fp, #-10]	@ zero_extendqisi2
	lsl	r3, r3, #16
	orr	r2, r2, r3
	ldrb	r3, [fp, #-9]	@ zero_extendqisi2
	lsl	r3, r3, #24
	orr	r3, r2, r3
	ldr	r2, .L224
	ldr	r1, [r2]
	ldr	r2, [fp, #-8]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L223
	bl	__stack_chk_fail
.L223:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L225:
	.align	2
.L224:
	.word	.LC24
	.size	recnum, .-recnum
	.section	.rodata
	.align	2
.LC25:
	.ascii	"%s: panic: Can't read %d bytes\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	receive, %function
receive:
	@ 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]
	str	r1, [fp, #-20]
	bl	recnum
	str	r0, [fp, #-8]
	ldr	r2, [fp, #-8]
	ldr	r3, [fp, #-20]
	cmp	r2, r3
	ble	.L227
	ldr	r3, .L230
	ldr	r0, [r3]
	ldr	r3, .L230+4
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	ldr	r1, .L230+8
	bl	fprintf
	mov	r0, #1
	bl	exit
.L227:
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	ble	.L228
	ldr	r1, [fp, #-8]
	ldr	r0, [fp, #-16]
	bl	rread
.L228:
	ldr	r3, [fp, #-8]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L231:
	.align	2
.L230:
	.word	stderr
	.word	arg0
	.word	.LC25
	.size	receive, .-receive
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	recstat, %function
recstat:
	@ 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]
	bl	recnum
	mov	r3, r0
	mov	r2, r3
	ldr	r3, [fp, #-8]
	str	r2, [r3, #16]
	bl	recnum
	mov	r3, r0
	mov	r2, r3
	ldr	r3, [fp, #-8]
	str	r2, [r3, #24]
	bl	recnum
	mov	r3, r0
	mov	r2, r3
	ldr	r3, [fp, #-8]
	str	r2, [r3, #28]
	bl	recnum
	mov	r3, r0
	mov	r2, r3
	asr	r3, r2, #31
	ldr	r1, [fp, #-8]
	str	r2, [r1, #32]
	str	r3, [r1, #36]
	bl	recnum
	mov	r2, r0
	ldr	r3, [fp, #-8]
	str	r2, [r3, #44]
	bl	recnum
	mov	r2, r0
	ldr	r3, [fp, #-8]
	str	r2, [r3, #64]
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	recstat, .-recstat
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	key, %function
key:
	@ 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, .L239
	ldr	r3, [r3]
	cmp	r3, #0
	bge	.L234
	mov	r0, #0
	bl	isatty
	mov	r3, r0
	ldr	r2, .L239
	str	r3, [r2]
.L234:
	ldr	r3, .L239+4
	ldr	r3, [r3]
	mov	r0, r3
	bl	feof
	mov	r3, r0
	cmp	r3, #0
	bne	.L235
	bl	getchar
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmn	r3, #1
	bne	.L236
.L235:
	mov	r3, #10
	str	r3, [fp, #-8]
	ldr	r3, .L239
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L236
	mov	r0, #10
	bl	putchar
.L236:
	ldr	r3, .L239
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L237
	ldr	r0, [fp, #-8]
	bl	putchar
.L237:
	ldr	r3, [fp, #-8]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L240:
	.align	2
.L239:
	.word	tty.6828
	.word	stdin
	.size	key, .-key
	.section	.rodata
	.align	2
.LC26:
	.ascii	"? (%c) \000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	ask, %function
ask:
	@ 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	r3, .L253
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L242
	ldr	r3, .L253+4
	ldr	r3, [r3]
	mov	r0, r3
	bl	fflush
	ldr	r3, [fp, #-16]
	cmp	r3, #121
	bne	.L243
	mov	r3, #135
	b	.L244
.L243:
	mov	r3, #136
.L244:
	mov	r0, r3
	bl	order
	bl	answer
	mov	r3, r0
	cmp	r3, #134
	moveq	r3, #1
	movne	r3, #0
	and	r3, r3, #255
	b	.L245
.L242:
	ldr	r1, [fp, #-16]
	ldr	r0, .L253+8
	bl	printf
	ldr	r3, .L253+4
	ldr	r3, [r3]
	mov	r0, r3
	bl	fflush
.L246:
	bl	key
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmp	r3, #32
	beq	.L246
	ldr	r3, [fp, #-8]
	cmp	r3, #9
	beq	.L246
	ldr	r3, [fp, #-8]
	str	r3, [fp, #-12]
	b	.L247
.L248:
	bl	key
	str	r0, [fp, #-8]
.L247:
	ldr	r3, [fp, #-8]
	cmp	r3, #10
	bne	.L248
	ldr	r3, [fp, #-12]
	cmp	r3, #121
	beq	.L249
	ldr	r3, [fp, #-12]
	cmp	r3, #89
	beq	.L249
	ldr	r3, [fp, #-12]
	cmp	r3, #110
	beq	.L249
	ldr	r3, [fp, #-12]
	cmp	r3, #78
	beq	.L249
	ldr	r3, [fp, #-16]
	str	r3, [fp, #-12]
.L249:
	ldr	r3, [fp, #-12]
	cmp	r3, #121
	beq	.L250
	ldr	r3, [fp, #-12]
	cmp	r3, #89
	bne	.L251
.L250:
	mov	r3, #1
	b	.L245
.L251:
	mov	r3, #0
.L245:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L254:
	.align	2
.L253:
	.word	chan
	.word	stdout
	.word	.LC26
	.size	ask, .-ask
	.section	.rodata
	.align	2
.LC27:
	.ascii	"%s: Can't set modes of %s\000"
	.align	2
.LC28:
	.ascii	"Mode changed of %s\012\000"
	.align	2
.LC29:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	setmodes, %function
setmodes:
	@ args = 0, pretend = 0, frame = 120
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #120
	str	r0, [fp, #-120]
	ldr	r3, .L271
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	mov	r3, #0
	str	r3, [fp, #-112]
	bl	__errno_location
	mov	r3, r0
	mov	r2, #0
	str	r2, [r3]
	sub	r3, fp, #100
	mov	r1, r3
	ldr	r0, .L271+4
	bl	getstat
	ldr	r3, .L271+8
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L256
	ldr	r3, [fp, #-120]
	cmp	r3, #0
	beq	.L256
	ldr	r3, [fp, #-88]
	ldr	r1, .L271+12
	mov	r0, r3
	bl	setstat
	sub	r3, fp, #100
	mov	r1, r3
	ldr	r0, .L271+4
	bl	getstat
.L256:
	ldr	r3, [fp, #-84]
	and	r3, r3, #61440
	cmp	r3, #40960
	beq	.L270
	bl	__errno_location
	mov	r3, r0
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L259
	ldr	r2, [fp, #-84]
	ldr	r3, .L271+12
	ldr	r3, [r3, #16]
	cmp	r2, r3
	beq	.L259
	ldr	r3, .L271+8
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L260
	ldr	r3, .L271+12
	ldr	r3, [r3, #16]
	lsl	r3, r3, #20
	lsr	r3, r3, #20
	mov	r1, r3
	ldr	r0, .L271+4
	bl	chmod
.L260:
	mov	r3, #1
	str	r3, [fp, #-112]
.L259:
	bl	__errno_location
	mov	r3, r0
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L261
	ldr	r2, [fp, #-76]
	ldr	r3, .L271+12
	ldr	r3, [r3, #24]
	cmp	r2, r3
	bne	.L262
	ldr	r2, [fp, #-72]
	ldr	r3, .L271+12
	ldr	r3, [r3, #28]
	cmp	r2, r3
	beq	.L261
.L262:
	ldr	r3, .L271+8
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L263
	bl	geteuid
	mov	r3, r0
	cmp	r3, #0
	bne	.L261
.L263:
	bl	__errno_location
	mov	r3, r0
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L271+8
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L264
	ldr	r3, .L271+12
	ldr	r3, [r3, #24]
	ldr	r2, .L271+12
	ldr	r2, [r2, #28]
	mov	r1, r3
	ldr	r0, .L271+4
	bl	chown
.L264:
	mov	r3, #1
	str	r3, [fp, #-112]
.L261:
	ldr	r3, .L271+8
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L265
	ldr	r3, [fp, #-120]
	cmp	r3, #0
	bne	.L265
	ldr	r3, [fp, #-88]
	ldr	r1, .L271+12
	mov	r0, r3
	bl	setstat
.L265:
	bl	__errno_location
	mov	r3, r0
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L266
	ldr	r3, .L271+12
	ldr	r3, [r3, #16]
	and	r3, r3, #61440
	cmp	r3, #32768
	bne	.L266
	ldr	r2, [fp, #-36]
	ldr	r3, .L271+12
	ldr	r3, [r3, #64]
	cmp	r2, r3
	beq	.L266
	sub	r3, fp, #108
	mov	r0, r3
	bl	time
	ldr	r3, .L271+12
	ldr	r3, [r3, #64]
	str	r3, [fp, #-104]
	bl	__errno_location
	mov	r3, r0
	mov	r2, #0
	str	r2, [r3]
	sub	r3, fp, #108
	mov	r1, r3
	ldr	r0, .L271+4
	bl	utime
	mov	r3, #1
	str	r3, [fp, #-112]
.L266:
	bl	__errno_location
	mov	r3, r0
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L267
	ldr	r3, .L271+16
	ldr	r0, [r3]
	ldr	r3, .L271+20
	ldr	r2, [r3]
	ldr	r3, .L271+4
	ldr	r1, .L271+24
	bl	fprintf
	bl	because
	b	.L255
.L267:
	ldr	r3, [fp, #-112]
	cmp	r3, #0
	beq	.L255
	ldr	r3, [fp, #-120]
	cmp	r3, #0
	bne	.L255
	ldr	r1, .L271+4
	ldr	r0, .L271+28
	bl	printf
	b	.L255
.L270:
	nop
.L255:
	ldr	r3, .L271
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L269
	bl	__stack_chk_fail
.L269:
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L272:
	.align	2
.L271:
	.word	.LC29
	.word	Spath
	.word	backup
	.word	Sst
	.word	stderr
	.word	arg0
	.word	.LC27
	.word	.LC28
	.size	setmodes, .-setmodes
	.section	.rodata
	.align	2
.LC30:
	.ascii	"%s: can't make %s look old\000"
	.align	2
.LC31:
	.ascii	"%s: made %s look old.\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	makeold, %function
makeold:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	ldr	r1, .L277
	ldr	r0, .L277+4
	bl	utime
	mov	r3, r0
	cmp	r3, #0
	bge	.L274
	bl	__errno_location
	mov	r3, r0
	ldr	r3, [r3]
	cmp	r3, #2
	beq	.L276
	ldr	r3, .L277+8
	ldr	r0, [r3]
	ldr	r3, .L277+12
	ldr	r2, [r3]
	ldr	r3, .L277+4
	ldr	r1, .L277+16
	bl	fprintf
	bl	because
	b	.L276
.L274:
	ldr	r3, .L277+8
	ldr	r0, [r3]
	ldr	r3, .L277+12
	ldr	r2, [r3]
	ldr	r3, .L277+4
	ldr	r1, .L277+20
	bl	fprintf
.L276:
	nop
	pop	{fp, pc}
.L278:
	.align	2
.L277:
	.word	tms.6847
	.word	Spath
	.word	stderr
	.word	arg0
	.word	.LC30
	.word	.LC31
	.size	makeold, .-makeold
	.local	busy
	.comm	busy,4,4
	.section	.rodata
	.align	2
.LC32:
	.ascii	"%s: Exiting after signal %d\012\000"
	.align	2
.LC33:
	.ascii	"%s: was installing %s\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	bail_out, %function
bail_out:
	@ 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]
	mov	r1, #1
	ldr	r0, [fp, #-8]
	bl	signal
	ldr	r3, .L281
	ldr	r0, [r3]
	ldr	r3, .L281+4
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	ldr	r1, .L281+8
	bl	fprintf
	ldr	r3, .L281+12
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L280
	ldr	r3, .L281
	ldr	r0, [r3]
	ldr	r3, .L281+4
	ldr	r2, [r3]
	ldr	r3, .L281+16
	ldr	r1, .L281+20
	bl	fprintf
	bl	makeold
.L280:
	mov	r0, #134
	bl	order
	ldr	r0, [fp, #-8]
	bl	exit
.L282:
	.align	2
.L281:
	.word	stderr
	.word	arg0
	.word	.LC32
	.word	busy
	.word	Spath
	.word	.LC33
	.size	bail_out, .-bail_out
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	makenode, %function
makenode:
	@ args = 4, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	str	r0, [fp, #-16]
	str	r1, [fp, #-20]
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, .L287
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L284
	ldr	r1, [fp, #-20]
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	ldr	r0, [fp, #-16]
	bl	mknod
	str	r0, [fp, #-8]
	b	.L285
.L284:
	mov	r1, #420
	ldr	r0, [fp, #-16]
	bl	creat
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	blt	.L285
	ldr	r0, [fp, #-8]
	bl	close
.L285:
	ldr	r3, [fp, #-8]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L288:
	.align	2
.L287:
	.word	backup
	.size	makenode, .-makenode
	.section	.rodata
	.align	2
.LC34:
	.ascii	"Link %s to %s\000"
	.align	2
.LC35:
	.ascii	"Linked %s to %s\012\000"
	.align	2
.LC36:
	.ascii	"%s: Can't link %s to %s\000"
	.align	2
.LC37:
	.ascii	"Add dir %s\000"
	.align	2
.LC38:
	.ascii	"Directory %s created.\012\000"
	.align	2
.LC39:
	.ascii	"Create special file %s\000"
	.align	2
.LC40:
	.ascii	"%s: Can't create special file %s\000"
	.align	2
.LC41:
	.ascii	"Special file %s created\012\000"
	.align	2
.LC42:
	.ascii	"Install %s -> %s\000"
	.align	2
.LC43:
	.ascii	"%s: Can't create symlink %s\000"
	.align	2
.LC44:
	.ascii	"Updated:  \000"
	.align	2
.LC45:
	.ascii	"Installed:\000"
	.align	2
.LC46:
	.ascii	"%s %s -> %s\012\000"
	.align	2
.LC47:
	.ascii	"Install %s\000"
	.align	2
.LC48:
	.ascii	"%s: Can't create %s\000"
	.align	2
.LC49:
	.ascii	"%s: Write error on %s\000"
	.align	2
.LC50:
	.ascii	"%s: Slave read err on %s\012\000"
	.align	2
.LC51:
	.ascii	"Restored: \000"
	.align	2
.LC52:
	.ascii	"%s %s\012\000"
	.align	2
.LC53:
	.ascii	"%s: Won't add file with strange mode %05o: %s\012\000"
	.align	2
.LC54:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	add, %function
add:
	@ args = 0, pretend = 0, frame = 4120
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #4096
	sub	sp, sp, #36
	sub	r3, fp, #4096
	sub	r3, r3, #12
	str	r0, [r3, #-20]
	ldr	r3, .L332
	ldr	r3, [r3]
	str	r3, [fp, #-16]
	mov	r3,#0
	ldr	r3, .L332+4
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L290
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-20]
	cmp	r3, #0
	beq	.L290
	mov	r3, #1
	b	.L291
.L290:
	mov	r3, #0
.L291:
	sub	r2, fp, #4096
	sub	r2, r2, #12
	str	r3, [r2, #-12]
	ldr	r3, .L332+8
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L292
	ldr	r3, .L332+12
	ldr	r3, [r3, #16]
	and	r3, r3, #61440
	cmp	r3, #40960
	beq	.L292
	ldr	r3, .L332+16
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L293
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-20]
	cmp	r3, #0
	bne	.L293
	ldr	r3, .L332+8
	ldr	r3, [r3]
	mov	r2, r3
	ldr	r1, .L332+20
	ldr	r0, .L332+24
	bl	printf
	mov	r0, #110
	bl	ask
	mov	r3, r0
	cmp	r3, #0
	beq	.L329
.L293:
	ldr	r3, .L332+8
	ldr	r3, [r3]
	ldr	r1, .L332+20
	mov	r0, r3
	bl	link
	mov	r3, r0
	cmp	r3, #0
	blt	.L295
	ldr	r3, .L332+8
	ldr	r3, [r3]
	mov	r2, r3
	ldr	r1, .L332+20
	ldr	r0, .L332+28
	bl	printf
	b	.L289
.L295:
	ldr	r3, .L332+32
	ldr	r0, [r3]
	ldr	r3, .L332+36
	ldr	r2, [r3]
	ldr	r3, .L332+8
	ldr	r3, [r3]
	ldr	r1, .L332+20
	str	r1, [sp]
	ldr	r1, .L332+40
	bl	fprintf
	bl	because
.L292:
	ldr	r3, .L332+12
	ldr	r3, [r3, #16]
	and	r3, r3, #61440
	cmp	r3, #40960
	beq	.L296
	cmp	r3, #40960
	bhi	.L297
	cmp	r3, #32768
	beq	.L298
	cmp	r3, #32768
	bhi	.L297
	cmp	r3, #24576
	beq	.L299
	cmp	r3, #24576
	bhi	.L297
	cmp	r3, #16384
	beq	.L300
	cmp	r3, #16384
	bhi	.L297
	cmp	r3, #4096
	beq	.L299
	cmp	r3, #8192
	beq	.L299
	b	.L297
.L300:
	ldr	r3, .L332+4
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L301
	ldr	r1, .L332+20
	ldr	r0, .L332+44
	bl	printf
	mov	r0, #110
	bl	ask
	mov	r3, r0
	cmp	r3, #0
	beq	.L330
.L301:
	ldr	r3, .L332+48
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L302
	ldr	r3, .L332+12
	ldr	r3, [r3, #16]
	b	.L303
.L302:
	ldr	r3, .L332+52
.L303:
	mov	r1, r3
	ldr	r0, .L332+20
	bl	mkdir
	mov	r3, r0
	cmp	r3, #0
	bge	.L304
	ldr	r0, .L332+20
	bl	perr
	b	.L289
.L304:
	ldr	r1, .L332+20
	ldr	r0, .L332+56
	bl	printf
	mov	r0, #128
	bl	order
	b	.L305
.L299:
	ldr	r3, .L332+16
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L306
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-20]
	cmp	r3, #0
	bne	.L306
	ldr	r1, .L332+20
	ldr	r0, .L332+60
	bl	printf
	mov	r0, #110
	bl	ask
	mov	r3, r0
	cmp	r3, #0
	bne	.L306
	mov	r0, #132
	bl	order
	b	.L289
.L306:
	ldr	r3, .L332+12
	ldr	r0, [r3, #16]
	ldr	r3, .L332+12
	add	r3, r3, #32
	ldmia	r3, {r2-r3}
	ldr	r1, .L332+12
	ldr	r1, [r1, #44]
	str	r1, [sp]
	mov	r1, r0
	ldr	r0, .L332+20
	bl	makenode
	mov	r3, r0
	cmp	r3, #0
	bge	.L307
	ldr	r3, .L332+32
	ldr	r0, [r3]
	ldr	r3, .L332+36
	ldr	r2, [r3]
	ldr	r3, .L332+20
	ldr	r1, .L332+64
	bl	fprintf
	bl	because
	b	.L289
.L307:
	ldr	r1, .L332+20
	ldr	r0, .L332+68
	bl	printf
	b	.L305
.L296:
	ldr	r3, .L332+16
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L308
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-20]
	cmp	r3, #0
	bne	.L308
	ldr	r2, .L332+72
	ldr	r1, .L332+20
	ldr	r0, .L332+76
	bl	printf
	mov	r0, #110
	bl	ask
	mov	r3, r0
	cmp	r3, #0
	bne	.L308
	mov	r0, #132
	bl	order
	b	.L289
.L308:
	ldr	r1, .L332+20
	ldr	r0, .L332+72
	bl	symlink
	mov	r3, r0
	cmp	r3, #0
	bge	.L309
	ldr	r3, .L332+32
	ldr	r0, [r3]
	ldr	r3, .L332+36
	ldr	r2, [r3]
	ldr	r3, .L332+20
	ldr	r1, .L332+80
	bl	fprintf
	bl	because
	b	.L289
.L309:
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-12]
	cmp	r3, #0
	beq	.L310
	ldr	r1, .L332+84
	b	.L311
.L310:
	ldr	r1, .L332+88
.L311:
	ldr	r3, .L332+72
	ldr	r2, .L332+20
	ldr	r0, .L332+92
	bl	printf
	b	.L305
.L298:
	ldr	r3, .L332+16
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L312
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-20]
	cmp	r3, #0
	bne	.L312
	ldr	r1, .L332+20
	ldr	r0, .L332+96
	bl	printf
	mov	r0, #110
	bl	ask
	mov	r3, r0
	cmp	r3, #0
	bne	.L312
	mov	r0, #132
	bl	order
	b	.L289
.L312:
	mov	r0, #130
	bl	order
	bl	answer
	mov	r3, r0
	cmp	r3, #130
	bne	.L331
	ldr	r3, .L332+100
	mov	r2, #1
	str	r2, [r3]
	ldr	r3, .L332+48
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L314
	ldr	r3, .L332+12
	ldr	r3, [r3, #16]
	lsl	r3, r3, #20
	lsr	r3, r3, #20
	b	.L315
.L314:
	mov	r3, #420
.L315:
	sub	r2, fp, #4096
	sub	r2, r2, #12
	mov	r4, r2
	mov	r1, r3
	ldr	r0, .L332+20
	bl	creat
	str	r0, [r4, #-16]
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-16]
	cmp	r3, #0
	bge	.L317
	ldr	r3, .L332+100
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L332+32
	ldr	r0, [r3]
	ldr	r3, .L332+36
	ldr	r2, [r3]
	ldr	r3, .L332+20
	ldr	r1, .L332+104
	bl	fprintf
	bl	because
	b	.L317
.L318:
	sub	r3, fp, #4096
	sub	r3, r3, #12
	mov	r2, r3
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-16]
	str	r3, [r2, #-16]
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-16]
	cmp	r3, #0
	blt	.L317
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r2, [r3, #-8]
	sub	r3, fp, #4096
	sub	r3, r3, #12
	sub	r3, r3, #4
	sub	r1, fp, #4096
	sub	r1, r1, #12
	mov	r0, r1
	mov	r1, r3
	ldr	r0, [r0, #-16]
	bl	write
	mov	r2, r0
	sub	r3, fp, #4096
	sub	r3, r3, #12
	mov	r1, r3
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-16]
	str	r3, [r1, #-16]
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-8]
	cmp	r3, r2
	beq	.L317
	ldr	r3, .L332+32
	ldr	r0, [r3]
	ldr	r3, .L332+36
	ldr	r2, [r3]
	ldr	r3, .L332+20
	ldr	r1, .L332+108
	bl	fprintf
	bl	because
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r0, [r3, #-16]
	bl	close
	sub	r3, fp, #4096
	sub	r3, r3, #12
	mov	r2, r3
	mvn	r3, #0
	str	r3, [r2, #-16]
.L317:
	sub	r3, fp, #4096
	sub	r3, r3, #12
	mov	r4, r3
	sub	r3, fp, #4096
	sub	r3, r3, #12
	sub	r3, r3, #4
	mov	r1, #4096
	mov	r0, r3
	bl	receive
	str	r0, [r4, #-8]
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-8]
	cmp	r3, #0
	bgt	.L318
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-8]
	cmp	r3, #0
	bge	.L319
	ldr	r3, .L332+32
	ldr	r0, [r3]
	ldr	r3, .L332+36
	ldr	r2, [r3]
	ldr	r3, .L332+20
	ldr	r1, .L332+112
	bl	fprintf
.L319:
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-16]
	cmp	r3, #0
	blt	.L320
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r0, [r3, #-16]
	bl	close
.L320:
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-8]
	cmp	r3, #0
	blt	.L321
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-16]
	cmp	r3, #0
	bge	.L322
.L321:
	bl	makeold
	ldr	r3, .L332+100
	mov	r2, #0
	str	r2, [r3]
	b	.L289
.L322:
	ldr	r3, .L332+100
	mov	r2, #0
	str	r2, [r3]
	sub	r3, fp, #4096
	sub	r3, r3, #12
	ldr	r3, [r3, #-12]
	cmp	r3, #0
	beq	.L323
	ldr	r3, .L332+12
	ldr	r2, [r3, #64]
	ldr	r3, .L332+116
	ldr	r3, [r3, #64]
	cmp	r2, r3
	bge	.L324
	ldr	r3, .L332+120
	b	.L326
.L324:
	ldr	r3, .L332+84
	b	.L326
.L323:
	ldr	r3, .L332+88
.L326:
	ldr	r2, .L332+20
	mov	r1, r3
	ldr	r0, .L332+124
	bl	printf
	b	.L305
.L297:
	ldr	r3, .L332+32
	ldr	r0, [r3]
	ldr	r3, .L332+36
	ldr	r2, [r3]
	ldr	r3, .L332+12
	ldr	r3, [r3, #16]
	ldr	r1, .L332+20
	str	r1, [sp]
	ldr	r1, .L332+128
	bl	fprintf
	mov	r0, #132
	bl	order
	b	.L289
.L305:
	mov	r0, #1
	bl	setmodes
	b	.L289
.L329:
	nop
	b	.L289
.L330:
	nop
	b	.L289
.L331:
	nop
.L289:
	ldr	r3, .L332
	ldr	r2, [r3]
	ldr	r3, [fp, #-16]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L328
	bl	__stack_chk_fail
.L328:
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L333:
	.align	2
.L332:
	.word	.LC54
	.word	force
	.word	Slinkpath
	.word	Sst
	.word	interact
	.word	Spath
	.word	.LC34
	.word	.LC35
	.word	stderr
	.word	arg0
	.word	.LC36
	.word	.LC37
	.word	backup
	.word	493
	.word	.LC38
	.word	.LC39
	.word	.LC40
	.word	.LC41
	.word	Slnkpth
	.word	.LC42
	.word	.LC43
	.word	.LC44
	.word	.LC45
	.word	.LC46
	.word	.LC47
	.word	busy
	.word	.LC48
	.word	.LC49
	.word	.LC50
	.word	st
	.word	.LC51
	.word	.LC52
	.word	.LC53
	.size	add, .-add
	.section	.rodata
	.align	2
.LC55:
	.ascii	"Delete dir %s\000"
	.align	2
.LC56:
	.ascii	"Directory %s deleted.\012\000"
	.align	2
.LC57:
	.ascii	"Delete %s\000"
	.align	2
.LC58:
	.ascii	"Can't delete %s\000"
	.align	2
.LC59:
	.ascii	"Deleted:   %s\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	delete, %function
delete:
	@ 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	r3, .L349
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L335
	ldr	r3, [fp, #-16]
	cmp	r3, #0
	beq	.L335
	mov	r3, #1
	b	.L336
.L335:
	mov	r3, #0
.L336:
	str	r3, [fp, #-8]
	ldr	r3, .L349+4
	ldr	r3, [r3, #16]
	and	r3, r3, #61440
	cmp	r3, #16384
	bne	.L337
	ldr	r3, .L349+8
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L338
	mov	r3, #0
	b	.L339
.L338:
	ldr	r3, .L349
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L340
	ldr	r1, .L349+12
	ldr	r0, .L349+16
	bl	printf
	mov	r0, #110
	bl	ask
	mov	r3, r0
	cmp	r3, #0
	bne	.L340
	mov	r3, #0
	b	.L339
.L340:
	ldr	r0, .L349+12
	bl	removedir
	mov	r3, r0
	cmp	r3, #0
	bne	.L341
	ldr	r3, .L349+20
	mov	r2, #1
	str	r2, [r3]
	mov	r3, #0
	b	.L339
.L341:
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	bne	.L342
	ldr	r1, .L349+12
	ldr	r0, .L349+24
	bl	printf
.L342:
	mov	r3, #1
	b	.L339
.L337:
	ldr	r3, .L349+8
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L343
	ldr	r3, [fp, #-16]
	cmp	r3, #0
	bne	.L343
	mov	r3, #0
	b	.L339
.L343:
	ldr	r3, .L349
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L344
	ldr	r1, .L349+12
	ldr	r0, .L349+28
	bl	printf
	ldr	r3, .L349+32
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L345
	ldr	r3, [fp, #-16]
	cmp	r3, #0
	bne	.L345
	mov	r3, #110
	b	.L346
.L345:
	mov	r3, #121
.L346:
	mov	r0, r3
	bl	ask
	mov	r3, r0
	cmp	r3, #0
	bne	.L344
	mov	r3, #0
	b	.L339
.L344:
	ldr	r0, .L349+12
	bl	unlink
	mov	r3, r0
	cmp	r3, #0
	bge	.L347
	ldr	r3, .L349+36
	ldr	r3, [r3]
	ldr	r2, .L349+12
	ldr	r1, .L349+40
	mov	r0, r3
	bl	fprintf
	bl	because
	mov	r3, #0
	b	.L339
.L347:
	bl	islink
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	bne	.L348
	ldr	r1, .L349+12
	ldr	r0, .L349+44
	bl	printf
.L348:
	mov	r3, #1
.L339:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L350:
	.align	2
.L349:
	.word	force
	.word	st
	.word	install
	.word	path
	.word	.LC55
	.word	ex
	.word	.LC56
	.word	.LC57
	.word	interact
	.word	stderr
	.word	.LC58
	.word	.LC59
	.size	delete, .-delete
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	different, %function
different:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	ldr	r3, .L367
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L352
	ldr	r3, .L367+4
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L353
.L352:
	ldr	r3, .L367
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L354
	ldr	r3, .L367+4
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L354
	ldr	r3, .L367
	ldr	r3, [r3]
	ldr	r2, .L367+4
	ldr	r2, [r2]
	mov	r1, r2
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	beq	.L353
.L354:
	ldr	r3, .L367+4
	ldr	r3, [r3]
	ldr	r2, .L367
	str	r3, [r2]
	mov	r3, #1
	b	.L355
.L353:
	ldr	r3, .L367+8
	ldr	r2, [r3, #16]
	ldr	r3, .L367+12
	ldr	r3, [r3, #16]
	eor	r3, r3, r2
	and	r3, r3, #61440
	cmp	r3, #0
	beq	.L356
	mov	r3, #1
	b	.L355
.L356:
	ldr	r3, .L367+8
	ldr	r3, [r3, #16]
	and	r3, r3, #61440
	cmp	r3, #40960
	beq	.L357
	cmp	r3, #40960
	bhi	.L358
	cmp	r3, #32768
	beq	.L359
	cmp	r3, #32768
	bhi	.L358
	cmp	r3, #24576
	beq	.L360
	cmp	r3, #24576
	bhi	.L358
	cmp	r3, #16384
	beq	.L361
	cmp	r3, #16384
	bhi	.L358
	cmp	r3, #4096
	beq	.L362
	cmp	r3, #8192
	beq	.L360
	b	.L358
.L361:
	mov	r3, #0
	b	.L355
.L360:
	ldr	r3, .L367+8
	add	r1, r3, #32
	ldmia	r1, {r0-r1}
	ldr	r3, .L367+12
	add	r3, r3, #32
	ldmia	r3, {r2-r3}
	cmp	r1, r3
	cmpeq	r0, r2
	movne	r3, #1
	moveq	r3, #0
	and	r3, r3, #255
	b	.L355
.L359:
	ldr	r3, .L367+16
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L363
	ldr	r3, .L367+12
	ldr	r2, [r3, #64]
	ldr	r3, .L367+8
	ldr	r3, [r3, #64]
	cmp	r2, r3
	movgt	r3, #1
	movle	r3, #0
	and	r3, r3, #255
	b	.L355
.L363:
	ldr	r3, .L367+8
	ldr	r2, [r3, #44]
	ldr	r3, .L367+12
	ldr	r3, [r3, #44]
	cmp	r2, r3
	bne	.L364
	ldr	r3, .L367+8
	ldr	r2, [r3, #64]
	ldr	r3, .L367+12
	ldr	r3, [r3, #64]
	cmp	r2, r3
	beq	.L365
.L364:
	mov	r3, #1
	b	.L355
.L365:
	mov	r3, #0
	b	.L355
.L362:
	mov	r3, #0
	b	.L355
.L357:
	ldr	r1, .L367+20
	ldr	r0, .L367+24
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	movne	r3, #1
	moveq	r3, #0
	and	r3, r3, #255
	b	.L355
.L358:
	mov	r3, #1
.L355:
	mov	r0, r3
	pop	{fp, pc}
.L368:
	.align	2
.L367:
	.word	linkpath
	.word	Slinkpath
	.word	st
	.word	Sst
	.word	install
	.word	Slnkpth
	.word	lnkpth
	.size	different, .-different
	.section	.rodata
	.align	2
.LC60:
	.ascii	"Restor\000"
	.align	2
.LC61:
	.ascii	"Updat\000"
	.align	2
.LC62:
	.ascii	"%sing %s (delete + add)\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	compare, %function
compare:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	different
	mov	r3, r0
	cmp	r3, #0
	beq	.L370
	ldr	r3, .L377
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L371
	ldr	r3, .L377+4
	ldr	r2, [r3, #64]
	ldr	r3, .L377+8
	ldr	r3, [r3, #64]
	cmp	r2, r3
	bge	.L372
	ldr	r3, .L377+12
	b	.L373
.L372:
	ldr	r3, .L377+16
.L373:
	ldr	r2, .L377+20
	mov	r1, r3
	ldr	r0, .L377+24
	bl	printf
.L371:
	mov	r0, #1
	bl	delete
	mov	r3, r0
	cmp	r3, #0
	beq	.L376
	mov	r0, #1
	bl	add
	b	.L376
.L370:
	ldr	r3, .L377+28
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L375
	mov	r0, #0
	bl	setmodes
.L375:
	ldr	r3, .L377+8
	ldr	r3, [r3, #16]
	and	r3, r3, #61440
	cmp	r3, #16384
	bne	.L376
	mov	r0, #128
	bl	order
	bl	enter
.L376:
	nop
	pop	{fp, pc}
.L378:
	.align	2
.L377:
	.word	force
	.word	Sst
	.word	st
	.word	.LC60
	.word	.LC61
	.word	path
	.word	.LC62
	.word	install
	.size	compare, .-compare
	.local	done
	.comm	done,4,4
	.local	Sdone
	.comm	Sdone,4,4
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	action, %function
action:
	@ 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, .L392
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L380
	mov	r3, #0
	b	.L381
.L380:
	ldr	r3, .L392+4
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L382
	mov	r3, #2
	b	.L381
.L382:
	ldr	r3, .L392+8
	str	r3, [fp, #-16]
	ldr	r3, .L392+12
	str	r3, [fp, #-12]
	b	.L383
.L385:
	ldr	r3, [fp, #-16]
	add	r3, r3, #1
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-12]
	add	r3, r3, #1
	str	r3, [fp, #-12]
.L383:
	ldr	r3, [fp, #-16]
	ldrb	r2, [r3]	@ zero_extendqisi2
	ldr	r3, [fp, #-12]
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r2, r3
	bne	.L384
	ldr	r3, [fp, #-16]
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L385
.L384:
	ldr	r3, [fp, #-16]
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #47
	bne	.L386
	mov	r3, #0
	b	.L381
.L386:
	ldr	r3, [fp, #-12]
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #47
	bne	.L387
	mov	r3, #2
	b	.L381
.L387:
	ldr	r1, [fp, #-12]
	ldr	r0, [fp, #-16]
	bl	strcmp
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	beq	.L388
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	bge	.L389
	mov	r3, #0
	b	.L381
.L389:
	mov	r3, #2
	b	.L381
.L388:
	mov	r3, #1
.L381:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L393:
	.align	2
.L392:
	.word	done
	.word	Sdone
	.word	Spath
	.word	path
	.size	action, .-action
	.section	.rodata
	.align	2
.LC63:
	.ascii	"%s: Strange answer from slave.\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	master, %function
master:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, #1
	str	r3, [fp, #-8]
	ldr	r3, .L419
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L395
	mov	r3, #18
	b	.L396
.L395:
	mov	r3, #0
.L396:
	mov	r0, r3
	bl	umask
	mov	r1, #1
	mov	r0, #13
	bl	signal
	ldr	r1, .L419+4
	mov	r0, #1
	bl	signal
	ldr	r1, .L419+4
	mov	r0, #2
	bl	signal
	ldr	r1, .L419+4
	mov	r0, #15
	bl	signal
	b	.L397
.L414:
	ldr	r3, .L419+8
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L417
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	beq	.L399
	ldr	r3, [fp, #-8]
	cmp	r3, #1
	bne	.L417
.L399:
	mov	r0, #129
	bl	order
	bl	answer
	mov	r3, r0
	sub	r3, r3, #128
	cmp	r3, #5
	ldrls	pc, [pc, r3, asl #2]
	b	.L400
.L402:
	.word	.L405
	.word	.L404
	.word	.L400
	.word	.L400
	.word	.L403
	.word	.L401
.L405:
	ldr	r3, .L419+12
	mov	r2, #0
	str	r2, [r3]
	ldr	r1, .L419+16
	ldr	r0, .L419+20
	bl	receive
	ldr	r0, .L419+24
	bl	recstat
	b	.L398
.L404:
	ldr	r1, .L419+16
	ldr	r0, .L419+28
	bl	receive
	ldr	r3, .L419+12
	ldr	r2, .L419+28
	str	r2, [r3]
	ldr	r1, .L419+16
	ldr	r0, .L419+20
	bl	receive
	ldr	r0, .L419+24
	bl	recstat
	b	.L398
.L401:
	ldr	r3, .L419+12
	mov	r2, #0
	str	r2, [r3]
	ldr	r1, .L419+16
	ldr	r0, .L419+28
	bl	receive
	ldr	r1, .L419+16
	ldr	r0, .L419+20
	bl	receive
	ldr	r0, .L419+24
	bl	recstat
	b	.L398
.L403:
	ldr	r3, .L419+8
	mov	r2, #1
	str	r2, [r3]
	b	.L398
.L400:
	ldr	r3, .L419+32
	ldr	r3, [r3]
	ldr	r2, .L419+36
	ldr	r2, [r2]
	ldr	r1, .L419+40
	mov	r0, r3
	bl	fprintf
	mov	r0, #1
	bl	exit
.L417:
	nop
.L398:
	ldr	r3, .L419+44
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L406
	ldr	r3, [fp, #-8]
	cmp	r3, #1
	beq	.L407
	ldr	r3, [fp, #-8]
	cmp	r3, #2
	bne	.L406
.L407:
	bl	advance
	mov	r3, r0
	cmp	r3, #0
	bne	.L406
	ldr	r3, .L419+44
	mov	r2, #1
	str	r2, [r3]
.L406:
	ldr	r3, .L419+44
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L408
	ldr	r3, .L419+8
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L418
.L408:
	bl	action
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmp	r3, #2
	beq	.L410
	ldr	r3, [fp, #-8]
	cmp	r3, #2
	bhi	.L411
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	beq	.L412
	ldr	r3, [fp, #-8]
	cmp	r3, #1
	beq	.L413
	b	.L411
.L412:
	mov	r0, #0
	bl	add
	b	.L411
.L413:
	bl	compare
	b	.L411
.L410:
	mov	r0, #0
	bl	delete
.L411:
	ldr	r3, .L419+48
	ldr	r3, [r3]
	mov	r0, r3
	bl	fflush
.L397:
	ldr	r3, .L419+44
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L414
	ldr	r3, .L419+8
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L414
	b	.L409
.L418:
	nop
.L409:
	ldr	r3, .L419+52
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L415
	mov	r3, #133
	b	.L416
.L415:
	mov	r3, #134
.L416:
	mov	r0, r3
	bl	order
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L420:
	.align	2
.L419:
	.word	backup
	.word	bail_out
	.word	Sdone
	.word	Slinkpath
	.word	4097
	.word	Spath
	.word	Sst
	.word	Slnkpth
	.word	stderr
	.word	arg0
	.word	.LC63
	.word	done
	.word	stdout
	.word	ex
	.size	master, .-master
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	mediator, %function
mediator:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
.L434:
	bl	request
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	sub	r3, r3, #133
	cmp	r3, #3
	ldrls	pc, [pc, r3, asl #2]
	b	.L422
.L424:
	.word	.L427
	.word	.L426
	.word	.L425
	.word	.L423
.L426:
	ldr	r3, .L436
	mov	r2, #1
	str	r2, [r3]
.L427:
	mov	r0, #133
	bl	order
	b	.L435
.L425:
	mov	r0, #121
	bl	ask
	mov	r3, r0
	cmp	r3, #0
	beq	.L429
	mov	r3, #137
	b	.L430
.L429:
	mov	r3, #138
.L430:
	mov	r0, r3
	bl	order
	b	.L431
.L423:
	mov	r0, #110
	bl	ask
	mov	r3, r0
	cmp	r3, #0
	beq	.L432
	mov	r3, #137
	b	.L433
.L432:
	mov	r3, #138
.L433:
	mov	r0, r3
	bl	order
	b	.L431
.L422:
	ldr	r0, [fp, #-8]
	bl	order
.L431:
	b	.L434
.L435:
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L437:
	.align	2
.L436:
	.word	ex
	.size	mediator, .-mediator
	.section	.rodata
	.align	2
.LC64:
	.ascii	"rsh\000"
	.align	2
.LC65:
	.ascii	"-l\000"
	.align	2
.LC66:
	.ascii	"Destination directory %s created\012\000"
	.align	2
.LC67:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	startprocess, %function
startprocess:
	@ args = 0, pretend = 0, frame = 88
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #88
	str	r0, [fp, #-80]
	str	r1, [fp, #-84]
	str	r2, [fp, #-88]
	str	r3, [fp, #-92]
	ldr	r3, .L456
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	sub	r3, fp, #60
	str	r3, [fp, #-76]
	sub	r3, fp, #20
	str	r3, [fp, #-72]
	ldr	r3, [fp, #-84]
	cmp	r3, #0
	beq	.L439
	ldr	r3, [fp, #-84]
	str	r3, [fp, #-68]
	ldr	r3, [fp, #-76]
	add	r2, r3, #4
	str	r2, [fp, #-76]
	ldr	r2, .L456+4
	str	r2, [r3]
	mov	r1, #64
	ldr	r0, [fp, #-84]
	bl	strchr
	str	r0, [fp, #-64]
	ldr	r3, [fp, #-64]
	cmp	r3, #0
	beq	.L440
	ldr	r3, [fp, #-64]
	add	r2, r3, #1
	str	r2, [fp, #-64]
	mov	r2, #0
	strb	r2, [r3]
	ldr	r3, [fp, #-76]
	add	r2, r3, #4
	str	r2, [fp, #-76]
	ldr	r2, .L456+8
	str	r2, [r3]
	ldr	r3, [fp, #-76]
	add	r2, r3, #4
	str	r2, [fp, #-76]
	ldr	r2, [fp, #-68]
	str	r2, [r3]
	ldr	r3, [fp, #-64]
	str	r3, [fp, #-84]
.L440:
	ldr	r3, [fp, #-76]
	add	r2, r3, #4
	str	r2, [fp, #-76]
	ldr	r2, [fp, #-84]
	str	r2, [r3]
	ldr	r3, [fp, #-76]
	add	r2, r3, #4
	str	r2, [fp, #-76]
	ldr	r2, .L456+12
	str	r2, [r3]
	ldr	r3, [fp, #-72]
	add	r2, r3, #1
	str	r2, [fp, #-72]
	mov	r2, #45
	strb	r2, [r3]
	ldr	r3, .L456+16
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L448
	b	.L454
.L439:
	ldr	r0, [fp, #-88]
	bl	chdir
	mov	r3, r0
	cmp	r3, #0
	bge	.L442
	ldr	r3, [fp, #-80]
	ldr	r2, .L456+20
	cmp	r3, r2
	bne	.L443
	bl	__errno_location
	mov	r3, r0
	ldr	r3, [r3]
	cmp	r3, #2
	bne	.L443
	mov	r1, #448
	ldr	r0, [fp, #-88]
	bl	mkdir
	mov	r3, r0
	cmp	r3, #0
	bge	.L444
.L443:
	ldr	r0, [fp, #-88]
	bl	perrx
.L444:
	ldr	r0, [fp, #-88]
	bl	chdir
	mov	r3, r0
	cmp	r3, #0
	bge	.L445
	ldr	r0, [fp, #-88]
	bl	perrx
.L445:
	ldr	r1, [fp, #-88]
	ldr	r0, .L456+24
	bl	printf
.L442:
	ldr	r3, [fp, #-80]
	ldr	r2, .L456+28
	cmp	r3, r2
	moveq	r3, #1
	movne	r3, #0
	and	r3, r3, #255
	mov	r0, r3
	bl	isbackup
	ldr	r3, [fp, #-80]
	blx	r3
	ldr	r3, [fp, #-92]
	and	r3, r3, #1
	cmp	r3, #0
	beq	.L455
	ldr	r3, .L456+32
	ldr	r3, [r3]
	mov	r0, r3
	bl	exit
.L454:
	ldr	r3, [fp, #-72]
	add	r2, r3, #1
	str	r2, [fp, #-72]
	mov	r2, #105
	strb	r2, [r3]
.L448:
	ldr	r3, .L456+36
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L449
	ldr	r3, [fp, #-72]
	add	r2, r3, #1
	str	r2, [fp, #-72]
	mov	r2, #117
	strb	r2, [r3]
.L449:
	ldr	r3, .L456+40
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L450
	ldr	r3, [fp, #-72]
	add	r2, r3, #1
	str	r2, [fp, #-72]
	mov	r2, #102
	strb	r2, [r3]
.L450:
	ldr	r3, [fp, #-72]
	mov	r2, #0
	strb	r2, [r3]
	ldr	r3, [fp, #-76]
	add	r2, r3, #4
	str	r2, [fp, #-76]
	sub	r2, fp, #20
	str	r2, [r3]
	ldr	r3, [fp, #-80]
	ldr	r2, .L456+28
	cmp	r3, r2
	bne	.L451
	ldr	r2, .L456+44
	b	.L452
.L451:
	ldr	r2, .L456+48
.L452:
	ldr	r3, [fp, #-76]
	add	r1, r3, #4
	str	r1, [fp, #-76]
	str	r2, [r3]
	ldr	r3, [fp, #-76]
	add	r2, r3, #4
	str	r2, [fp, #-76]
	ldr	r2, [fp, #-88]
	str	r2, [r3]
	ldr	r3, [fp, #-76]
	add	r2, r3, #4
	str	r2, [fp, #-76]
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, [fp, #-60]
	sub	r2, fp, #60
	mov	r1, r2
	mov	r0, r3
	bl	execvp
	ldr	r3, [fp, #-60]
	mov	r0, r3
	bl	perrx
	b	.L438
.L455:
	nop
.L438:
	ldr	r3, .L456
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L453
	bl	__stack_chk_fail
.L453:
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L457:
	.align	2
.L456:
	.word	.LC67
	.word	.LC64
	.word	.LC65
	.word	SYNCNAME
	.word	interact
	.word	master
	.word	.LC66
	.word	slave
	.word	ex
	.word	install
	.word	force
	.word	SLAVENAME
	.word	MASTERNAME
	.size	startprocess, .-startprocess
	.align	2
	.global	splitcolon
	.syntax unified
	.arm
	.fpu softvfp
	.type	splitcolon, %function
splitcolon:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #28
	str	r0, [fp, #-16]
	str	r1, [fp, #-20]
	str	r2, [fp, #-24]
	ldr	r3, [fp, #-16]
	str	r3, [fp, #-8]
.L463:
	ldr	r3, [fp, #-8]
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #58
	bne	.L459
	ldr	r3, [fp, #-8]
	add	r2, r3, #1
	str	r2, [fp, #-8]
	mov	r2, #0
	strb	r2, [r3]
	ldr	r3, [fp, #-20]
	ldr	r2, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-24]
	ldr	r2, [fp, #-8]
	str	r2, [r3]
	b	.L460
.L459:
	ldr	r3, [fp, #-8]
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L461
	ldr	r3, [fp, #-8]
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #47
	bne	.L462
.L461:
	ldr	r3, [fp, #-20]
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, [fp, #-24]
	ldr	r2, [fp, #-16]
	str	r2, [r3]
	b	.L460
.L462:
	ldr	r3, [fp, #-8]
	add	r3, r3, #1
	str	r3, [fp, #-8]
	b	.L463
.L460:
	nop
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	splitcolon, .-splitcolon
	.section	.rodata
	.align	2
.LC68:
	.ascii	"Usage: %s [-iuf] [[user@]machine:]dir1 [[user@]mach"
	.ascii	"ine:]dir2\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	Usage, %function
Usage:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	ldr	r3, .L465
	ldr	r3, [r3]
	ldr	r2, .L465+4
	ldr	r2, [r2]
	ldr	r1, .L465+8
	mov	r0, r3
	bl	fprintf
	mov	r0, #1
	bl	exit
.L466:
	.align	2
.L465:
	.word	stderr
	.word	arg0
	.word	.LC68
	.size	Usage, .-Usage
	.section	.rodata
	.align	2
.LC69:
	.ascii	"Slave\000"
	.align	2
.LC70:
	.ascii	"Master\000"
	.align	2
.LC71:
	.ascii	"pipe()\000"
	.align	2
.LC72:
	.ascii	"wait()\000"
	.align	2
.LC73:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	main
	.syntax unified
	.arm
	.fpu softvfp
	.type	main, %function
main:
	@ args = 0, pretend = 0, frame = 72
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #72
	str	r0, [fp, #-72]
	str	r1, [fp, #-76]
	ldr	r3, .L504
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	mov	r3, #0
	str	r3, [fp, #-48]
	mov	r3, #0
	str	r3, [fp, #-44]
	ldr	r3, [fp, #-76]
	ldr	r3, [r3]
	mov	r1, #47
	mov	r0, r3
	bl	strrchr
	mov	r3, r0
	ldr	r2, .L504+4
	str	r3, [r2]
	ldr	r3, .L504+4
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L468
	ldr	r3, [fp, #-76]
	ldr	r3, [r3]
	ldr	r2, .L504+4
	str	r3, [r2]
	b	.L470
.L468:
	ldr	r3, .L504+4
	ldr	r3, [r3]
	add	r3, r3, #1
	ldr	r2, .L504+4
	str	r3, [r2]
	b	.L470
.L477:
	ldr	r3, [fp, #-76]
	add	r3, r3, #4
	ldr	r3, [r3]
	add	r3, r3, #1
	str	r3, [fp, #-40]
	b	.L471
.L475:
	ldr	r3, [fp, #-40]
	add	r2, r3, #1
	str	r2, [fp, #-40]
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #117
	beq	.L472
	cmp	r3, #117
	bgt	.L473
	cmp	r3, #102
	beq	.L474
	cmp	r3, #105
	bne	.L473
	ldr	r3, .L504+8
	mov	r2, #1
	str	r2, [r3]
	b	.L471
.L472:
	ldr	r3, .L504+12
	mov	r2, #1
	str	r2, [r3]
	b	.L471
.L474:
	ldr	r3, .L504+16
	mov	r2, #1
	str	r2, [r3]
	b	.L471
.L473:
	bl	Usage
.L471:
	ldr	r3, [fp, #-40]
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L475
	ldr	r3, [fp, #-72]
	sub	r3, r3, #1
	str	r3, [fp, #-72]
	ldr	r3, [fp, #-76]
	add	r3, r3, #4
	str	r3, [fp, #-76]
.L470:
	ldr	r3, [fp, #-72]
	cmp	r3, #1
	ble	.L476
	ldr	r3, [fp, #-76]
	add	r3, r3, #4
	ldr	r3, [r3]
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #45
	beq	.L477
.L476:
	ldr	r3, [fp, #-72]
	cmp	r3, #3
	beq	.L478
	bl	Usage
.L478:
	ldr	r3, [fp, #-76]
	add	r3, r3, #4
	ldr	r3, [r3]
	ldr	r1, .L504+20
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L479
	ldr	r3, .L504+4
	ldr	r2, .L504+24
	str	r2, [r3]
	ldr	r3, [fp, #-76]
	add	r3, r3, #8
	ldr	r3, [r3]
	sub	r2, fp, #60
	sub	r1, fp, #64
	mov	r0, r3
	bl	splitcolon
	ldr	r1, [fp, #-64]
	ldr	r2, [fp, #-60]
	mov	r3, #1
	ldr	r0, .L504+28
	bl	startprocess
	b	.L480
.L479:
	ldr	r3, [fp, #-76]
	add	r3, r3, #4
	ldr	r3, [r3]
	ldr	r1, .L504+32
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L480
	ldr	r3, .L504+4
	ldr	r2, .L504+36
	str	r2, [r3]
	ldr	r3, [fp, #-76]
	add	r3, r3, #8
	ldr	r3, [r3]
	sub	r2, fp, #52
	sub	r1, fp, #56
	mov	r0, r3
	bl	splitcolon
	ldr	r1, [fp, #-56]
	ldr	r2, [fp, #-52]
	mov	r3, #1
	ldr	r0, .L504+40
	bl	startprocess
.L480:
	ldr	r3, [fp, #-76]
	add	r3, r3, #4
	ldr	r3, [r3]
	sub	r2, fp, #60
	sub	r1, fp, #64
	mov	r0, r3
	bl	splitcolon
	ldr	r3, [fp, #-76]
	add	r3, r3, #8
	ldr	r3, [r3]
	sub	r2, fp, #52
	sub	r1, fp, #56
	mov	r0, r3
	bl	splitcolon
	sub	r3, fp, #32
	mov	r0, r3
	bl	pipe
	mov	r3, r0
	cmp	r3, #0
	blt	.L481
	sub	r3, fp, #24
	mov	r0, r3
	bl	pipe
	mov	r3, r0
	cmp	r3, #0
	bge	.L482
.L481:
	ldr	r0, .L504+44
	bl	perrx
.L482:
	ldr	r3, [fp, #-56]
	cmp	r3, #0
	bne	.L483
	bl	fork
	mov	r3, r0
	str	r3, [fp, #-48]
	ldr	r3, [fp, #-48]
	cmn	r3, #1
	beq	.L484
	ldr	r3, [fp, #-48]
	cmp	r3, #0
	beq	.L485
	b	.L486
.L484:
	ldr	r0, .L504+48
	bl	perrx
.L485:
	ldr	r3, [fp, #-32]
	mov	r1, #0
	mov	r0, r3
	bl	dup2
	ldr	r3, [fp, #-32]
	mov	r0, r3
	bl	close
	ldr	r3, [fp, #-28]
	mov	r0, r3
	bl	close
	ldr	r3, [fp, #-20]
	mov	r1, #1
	mov	r0, r3
	bl	dup2
	ldr	r3, [fp, #-24]
	mov	r0, r3
	bl	close
	ldr	r3, [fp, #-20]
	mov	r0, r3
	bl	close
	ldr	r3, .L504+4
	ldr	r2, .L504+24
	str	r2, [r3]
	ldr	r1, [fp, #-64]
	ldr	r2, [fp, #-60]
	mov	r3, #3
	ldr	r0, .L504+28
	bl	startprocess
.L486:
	ldr	r3, [fp, #-24]
	ldr	r2, .L504+52
	str	r3, [r2]
	ldr	r3, [fp, #-20]
	mov	r0, r3
	bl	close
	ldr	r3, [fp, #-28]
	ldr	r2, .L504+52
	str	r3, [r2, #4]
	ldr	r3, [fp, #-32]
	mov	r0, r3
	bl	close
	ldr	r1, [fp, #-56]
	ldr	r2, [fp, #-52]
	mov	r3, #0
	ldr	r0, .L504+40
	bl	startprocess
	b	.L487
.L483:
	ldr	r3, [fp, #-64]
	cmp	r3, #0
	bne	.L488
	bl	fork
	mov	r3, r0
	str	r3, [fp, #-44]
	ldr	r3, [fp, #-44]
	cmn	r3, #1
	beq	.L489
	ldr	r3, [fp, #-44]
	cmp	r3, #0
	beq	.L490
	b	.L491
.L489:
	ldr	r0, .L504+48
	bl	perrx
.L490:
	ldr	r3, [fp, #-24]
	mov	r1, #0
	mov	r0, r3
	bl	dup2
	ldr	r3, [fp, #-24]
	mov	r0, r3
	bl	close
	ldr	r3, [fp, #-20]
	mov	r0, r3
	bl	close
	ldr	r3, [fp, #-28]
	mov	r1, #1
	mov	r0, r3
	bl	dup2
	ldr	r3, [fp, #-32]
	mov	r0, r3
	bl	close
	ldr	r3, [fp, #-28]
	mov	r0, r3
	bl	close
	ldr	r3, .L504+4
	ldr	r2, .L504+36
	str	r2, [r3]
	ldr	r1, [fp, #-56]
	ldr	r2, [fp, #-52]
	mov	r3, #3
	ldr	r0, .L504+40
	bl	startprocess
.L491:
	ldr	r3, [fp, #-32]
	ldr	r2, .L504+52
	str	r3, [r2]
	ldr	r3, [fp, #-28]
	mov	r0, r3
	bl	close
	ldr	r3, [fp, #-20]
	ldr	r2, .L504+52
	str	r3, [r2, #4]
	ldr	r3, [fp, #-24]
	mov	r0, r3
	bl	close
	ldr	r1, [fp, #-64]
	ldr	r2, [fp, #-60]
	mov	r3, #0
	ldr	r0, .L504+28
	bl	startprocess
	b	.L487
.L488:
	sub	r3, fp, #16
	mov	r0, r3
	bl	pipe
	mov	r3, r0
	cmp	r3, #0
	bge	.L492
	ldr	r0, .L504+56
	bl	perrx
.L492:
	bl	fork
	mov	r3, r0
	str	r3, [fp, #-48]
	ldr	r3, [fp, #-48]
	cmn	r3, #1
	beq	.L493
	ldr	r3, [fp, #-48]
	cmp	r3, #0
	beq	.L494
	b	.L495
.L493:
	ldr	r0, .L504+48
	bl	perrx
.L494:
	ldr	r3, [fp, #-32]
	mov	r1, #0
	mov	r0, r3
	bl	dup2
	ldr	r3, [fp, #-32]
	mov	r0, r3
	bl	close
	ldr	r3, [fp, #-28]
	mov	r0, r3
	bl	close
	ldr	r3, [fp, #-20]
	mov	r1, #1
	mov	r0, r3
	bl	dup2
	ldr	r3, [fp, #-24]
	mov	r0, r3
	bl	close
	ldr	r3, [fp, #-20]
	mov	r0, r3
	bl	close
	ldr	r3, [fp, #-16]
	mov	r0, r3
	bl	close
	ldr	r3, [fp, #-12]
	mov	r0, r3
	bl	close
	ldr	r3, .L504+4
	ldr	r2, .L504+24
	str	r2, [r3]
	ldr	r1, [fp, #-64]
	ldr	r2, [fp, #-60]
	mov	r3, #3
	ldr	r0, .L504+28
	bl	startprocess
.L495:
	bl	fork
	mov	r3, r0
	str	r3, [fp, #-44]
	ldr	r3, [fp, #-44]
	cmn	r3, #1
	beq	.L496
	ldr	r3, [fp, #-44]
	cmp	r3, #0
	beq	.L497
	b	.L498
.L496:
	ldr	r0, .L504+48
	bl	perrx
.L497:
	ldr	r3, [fp, #-24]
	mov	r1, #0
	mov	r0, r3
	bl	dup2
	ldr	r3, [fp, #-24]
	mov	r0, r3
	bl	close
	ldr	r3, [fp, #-20]
	mov	r0, r3
	bl	close
	ldr	r3, [fp, #-32]
	mov	r0, r3
	bl	close
	ldr	r3, [fp, #-28]
	mov	r0, r3
	bl	close
	ldr	r3, [fp, #-12]
	mov	r1, #1
	mov	r0, r3
	bl	dup2
	ldr	r3, [fp, #-16]
	mov	r0, r3
	bl	close
	ldr	r3, [fp, #-12]
	mov	r0, r3
	bl	close
	ldr	r3, .L504+4
	ldr	r2, .L504+36
	str	r2, [r3]
	ldr	r1, [fp, #-56]
	ldr	r2, [fp, #-52]
	mov	r3, #3
	ldr	r0, .L504+40
	bl	startprocess
.L498:
	ldr	r3, [fp, #-24]
	mov	r0, r3
	bl	close
	ldr	r3, [fp, #-20]
	mov	r0, r3
	bl	close
	ldr	r3, [fp, #-16]
	ldr	r2, .L504+52
	str	r3, [r2]
	ldr	r3, [fp, #-12]
	mov	r0, r3
	bl	close
	ldr	r3, [fp, #-28]
	ldr	r2, .L504+52
	str	r3, [r2, #4]
	ldr	r3, [fp, #-32]
	mov	r0, r3
	bl	close
	bl	mediator
.L487:
	ldr	r3, .L504+52
	ldr	r3, [r3]
	mov	r0, r3
	bl	close
	ldr	r3, .L504+52
	ldr	r3, [r3, #4]
	mov	r0, r3
	bl	close
	mov	r0, #15
	bl	alarm
	b	.L499
.L502:
	mov	r0, #0
	bl	wait
	str	r0, [fp, #-36]
	ldr	r3, [fp, #-36]
	cmp	r3, #0
	bge	.L500
	ldr	r0, .L504+60
	bl	perrx
.L500:
	ldr	r2, [fp, #-36]
	ldr	r3, [fp, #-48]
	cmp	r2, r3
	bne	.L501
	mov	r3, #0
	str	r3, [fp, #-48]
.L501:
	ldr	r2, [fp, #-36]
	ldr	r3, [fp, #-44]
	cmp	r2, r3
	bne	.L499
	mov	r3, #0
	str	r3, [fp, #-44]
.L499:
	ldr	r3, [fp, #-48]
	cmp	r3, #0
	bne	.L502
	ldr	r3, [fp, #-44]
	cmp	r3, #0
	bne	.L502
	ldr	r3, .L504+64
	ldr	r3, [r3]
	mov	r0, r3
	bl	exit
.L505:
	.align	2
.L504:
	.word	.LC73
	.word	arg0
	.word	interact
	.word	install
	.word	force
	.word	SLAVENAME
	.word	.LC69
	.word	slave
	.word	MASTERNAME
	.word	.LC70
	.word	master
	.word	.LC71
	.word	.LC16
	.word	chan
	.word	pipe
	.word	.LC72
	.word	ex
	.size	main, .-main
	.local	pend.6654
	.comm	pend.6654,4,4
	.local	links.6687
	.comm	links.6687,1024,4
	.data
	.align	2
	.type	tfd.6688, %object
	.size	tfd.6688, 4
tfd.6688:
	.word	-1
	.local	dlink.6689
	.comm	dlink.6689,4104,8
	.local	n.6732
	.comm	n.6732,4,4
	.local	buf.6730
	.comm	buf.6730,64,4
	.local	bp.6731
	.comm	bp.6731,4,4
	.section	.rodata
	.align	2
.LC74:
	.ascii	"rm\000"
	.align	2
.LC75:
	.ascii	"-r\000"
	.data
	.align	2
	.type	argv.6795, %object
	.size	argv.6795, 16
argv.6795:
	.word	.LC74
	.word	.LC75
	.word	0
	.word	0
	.align	2
	.type	tty.6828, %object
	.size	tty.6828, 4
tty.6828:
	.word	-1
	.local	tms.6847
	.comm	tms.6847,8,4
	.ident	"GCC: (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0"
	.section	.note.GNU-stack,"",%progbits
