	.file	"244160.c"
	.intel_syntax noprefix
	.text
	.globl	verbosity
	.bss
	.align 4
	.type	verbosity, @object
	.size	verbosity, 4
verbosity:
	.zero	4
	.globl	keepInputFiles
	.type	keepInputFiles, @object
	.size	keepInputFiles, 1
keepInputFiles:
	.zero	1
	.globl	smallMode
	.type	smallMode, @object
	.size	smallMode, 1
smallMode:
	.zero	1
	.globl	deleteOutputOnInterrupt
	.type	deleteOutputOnInterrupt, @object
	.size	deleteOutputOnInterrupt, 1
deleteOutputOnInterrupt:
	.zero	1
	.globl	forceOverwrite
	.type	forceOverwrite, @object
	.size	forceOverwrite, 1
forceOverwrite:
	.zero	1
	.globl	testFailsExist
	.type	testFailsExist, @object
	.size	testFailsExist, 1
testFailsExist:
	.zero	1
	.globl	unzFailsExist
	.type	unzFailsExist, @object
	.size	unzFailsExist, 1
unzFailsExist:
	.zero	1
	.globl	noisy
	.type	noisy, @object
	.size	noisy, 1
noisy:
	.zero	1
	.globl	numFileNames
	.align 4
	.type	numFileNames, @object
	.size	numFileNames, 4
numFileNames:
	.zero	4
	.globl	numFilesProcessed
	.align 4
	.type	numFilesProcessed, @object
	.size	numFilesProcessed, 4
numFilesProcessed:
	.zero	4
	.globl	blockSize100k
	.align 4
	.type	blockSize100k, @object
	.size	blockSize100k, 4
blockSize100k:
	.zero	4
	.globl	exitValue
	.align 4
	.type	exitValue, @object
	.size	exitValue, 4
exitValue:
	.zero	4
	.globl	opMode
	.align 4
	.type	opMode, @object
	.size	opMode, 4
opMode:
	.zero	4
	.globl	srcMode
	.align 4
	.type	srcMode, @object
	.size	srcMode, 4
srcMode:
	.zero	4
	.globl	longestFileName
	.align 4
	.type	longestFileName, @object
	.size	longestFileName, 4
longestFileName:
	.zero	4
	.globl	inName
	.align 32
	.type	inName, @object
	.size	inName, 1034
inName:
	.zero	1034
	.globl	outName
	.align 32
	.type	outName, @object
	.size	outName, 1034
outName:
	.zero	1034
	.globl	tmpName
	.align 32
	.type	tmpName, @object
	.size	tmpName, 1034
tmpName:
	.zero	1034
	.globl	progName
	.align 8
	.type	progName, @object
	.size	progName, 8
progName:
	.zero	8
	.globl	progNameReally
	.align 32
	.type	progNameReally, @object
	.size	progNameReally, 1034
progNameReally:
	.zero	1034
	.globl	outputHandleJustInCase
	.align 8
	.type	outputHandleJustInCase, @object
	.size	outputHandleJustInCase, 8
outputHandleJustInCase:
	.zero	8
	.globl	workFactor
	.align 4
	.type	workFactor, @object
	.size	workFactor, 4
workFactor:
	.zero	4
	.globl	showProgress
	.type	showProgress, @object
	.size	showProgress, 1
showProgress:
	.zero	1
	.text
	.type	uInt64_from_UInt32s, @function
uInt64_from_UInt32s:
.LFB6:
	.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 -8[rbp], rdi
	mov	DWORD PTR -12[rbp], esi
	mov	DWORD PTR -16[rbp], edx
	mov	eax, DWORD PTR -16[rbp]
	shr	eax, 24
	mov	edx, eax
	mov	rax, QWORD PTR -8[rbp]
	mov	BYTE PTR 7[rax], dl
	mov	eax, DWORD PTR -16[rbp]
	shr	eax, 16
	mov	edx, eax
	mov	rax, QWORD PTR -8[rbp]
	mov	BYTE PTR 6[rax], dl
	mov	eax, DWORD PTR -16[rbp]
	shr	eax, 8
	mov	edx, eax
	mov	rax, QWORD PTR -8[rbp]
	mov	BYTE PTR 5[rax], dl
	mov	eax, DWORD PTR -16[rbp]
	mov	edx, eax
	mov	rax, QWORD PTR -8[rbp]
	mov	BYTE PTR 4[rax], dl
	mov	eax, DWORD PTR -12[rbp]
	shr	eax, 24
	mov	edx, eax
	mov	rax, QWORD PTR -8[rbp]
	mov	BYTE PTR 3[rax], dl
	mov	eax, DWORD PTR -12[rbp]
	shr	eax, 16
	mov	edx, eax
	mov	rax, QWORD PTR -8[rbp]
	mov	BYTE PTR 2[rax], dl
	mov	eax, DWORD PTR -12[rbp]
	shr	eax, 8
	mov	edx, eax
	mov	rax, QWORD PTR -8[rbp]
	mov	BYTE PTR 1[rax], dl
	mov	eax, DWORD PTR -12[rbp]
	mov	edx, eax
	mov	rax, QWORD PTR -8[rbp]
	mov	BYTE PTR [rax], dl
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE6:
	.size	uInt64_from_UInt32s, .-uInt64_from_UInt32s
	.type	uInt64_to_double, @function
uInt64_to_double:
.LFB7:
	.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 -40[rbp], rdi
	movsd	xmm0, QWORD PTR .LC0[rip]
	movsd	QWORD PTR -16[rbp], xmm0
	pxor	xmm0, xmm0
	movsd	QWORD PTR -8[rbp], xmm0
	mov	DWORD PTR -20[rbp], 0
	jmp	.L3
.L4:
	mov	rdx, QWORD PTR -40[rbp]
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	movzx	eax, BYTE PTR [rdx+rax]
	movzx	eax, al
	pxor	xmm0, xmm0
	cvtsi2sd	xmm0, eax
	mulsd	xmm0, QWORD PTR -16[rbp]
	movsd	xmm1, QWORD PTR -8[rbp]
	addsd	xmm0, xmm1
	movsd	QWORD PTR -8[rbp], xmm0
	movsd	xmm1, QWORD PTR -16[rbp]
	movsd	xmm0, QWORD PTR .LC2[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR -16[rbp], xmm0
	add	DWORD PTR -20[rbp], 1
.L3:
	cmp	DWORD PTR -20[rbp], 7
	jle	.L4
	movsd	xmm0, QWORD PTR -8[rbp]
	movq	rax, xmm0
	movq	xmm0, rax
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE7:
	.size	uInt64_to_double, .-uInt64_to_double
	.type	uInt64_isZero, @function
uInt64_isZero:
.LFB8:
	.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	DWORD PTR -4[rbp], 0
	jmp	.L7
.L10:
	mov	rdx, QWORD PTR -24[rbp]
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	movzx	eax, BYTE PTR [rdx+rax]
	test	al, al
	je	.L8
	mov	eax, 0
	jmp	.L9
.L8:
	add	DWORD PTR -4[rbp], 1
.L7:
	cmp	DWORD PTR -4[rbp], 7
	jle	.L10
	mov	eax, 1
.L9:
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE8:
	.size	uInt64_isZero, .-uInt64_isZero
	.type	uInt64_qrm10, @function
uInt64_qrm10:
.LFB9:
	.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	DWORD PTR -12[rbp], 0
	mov	DWORD PTR -8[rbp], 7
	jmp	.L12
.L13:
	mov	eax, DWORD PTR -12[rbp]
	sal	eax, 8
	mov	ecx, eax
	mov	rdx, QWORD PTR -24[rbp]
	mov	eax, DWORD PTR -8[rbp]
	cdqe
	movzx	eax, BYTE PTR [rdx+rax]
	movzx	eax, al
	add	eax, ecx
	mov	DWORD PTR -4[rbp], eax
	mov	eax, DWORD PTR -4[rbp]
	mov	edx, eax
	mov	eax, 3435973837
	imul	rax, rdx
	shr	rax, 32
	shr	eax, 3
	mov	ecx, eax
	mov	rdx, QWORD PTR -24[rbp]
	mov	eax, DWORD PTR -8[rbp]
	cdqe
	mov	BYTE PTR [rdx+rax], cl
	mov	edx, DWORD PTR -4[rbp]
	mov	ecx, edx
	mov	eax, 3435973837
	imul	rax, rcx
	shr	rax, 32
	mov	ecx, eax
	shr	ecx, 3
	mov	eax, ecx
	sal	eax, 2
	add	eax, ecx
	add	eax, eax
	sub	edx, eax
	mov	DWORD PTR -12[rbp], edx
	sub	DWORD PTR -8[rbp], 1
.L12:
	cmp	DWORD PTR -8[rbp], 0
	jns	.L13
	mov	eax, DWORD PTR -12[rbp]
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE9:
	.size	uInt64_qrm10, .-uInt64_qrm10
	.type	uInt64_toAscii, @function
uInt64_toAscii:
.LFB10:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 96
	mov	QWORD PTR -88[rbp], rdi
	mov	QWORD PTR -96[rbp], rsi
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	DWORD PTR -64[rbp], 0
	mov	rax, QWORD PTR -96[rbp]
	mov	rax, QWORD PTR [rax]
	mov	QWORD PTR -56[rbp], rax
.L16:
	lea	rax, -56[rbp]
	mov	rdi, rax
	call	uInt64_qrm10
	mov	DWORD PTR -60[rbp], eax
	mov	eax, DWORD PTR -60[rbp]
	lea	edx, 48[rax]
	mov	eax, DWORD PTR -64[rbp]
	cdqe
	mov	BYTE PTR -48[rbp+rax], dl
	add	DWORD PTR -64[rbp], 1
	lea	rax, -56[rbp]
	mov	rdi, rax
	call	uInt64_isZero
	test	al, al
	je	.L16
	mov	eax, DWORD PTR -64[rbp]
	movsx	rdx, eax
	mov	rax, QWORD PTR -88[rbp]
	add	rax, rdx
	mov	BYTE PTR [rax], 0
	mov	DWORD PTR -68[rbp], 0
	jmp	.L17
.L18:
	mov	eax, DWORD PTR -64[rbp]
	sub	eax, DWORD PTR -68[rbp]
	sub	eax, 1
	cdqe
	movzx	edx, BYTE PTR -48[rbp+rax]
	mov	eax, DWORD PTR -68[rbp]
	movsx	rcx, eax
	mov	rax, QWORD PTR -88[rbp]
	add	rax, rcx
	mov	BYTE PTR [rax], dl
	add	DWORD PTR -68[rbp], 1
.L17:
	mov	eax, DWORD PTR -68[rbp]
	cmp	eax, DWORD PTR -64[rbp]
	jl	.L18
	nop
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L19
	call	__stack_chk_fail@PLT
.L19:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE10:
	.size	uInt64_toAscii, .-uInt64_toAscii
	.type	myfeof, @function
myfeof:
.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, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	fgetc@PLT
	mov	DWORD PTR -4[rbp], eax
	cmp	DWORD PTR -4[rbp], -1
	jne	.L21
	mov	eax, 1
	jmp	.L22
.L21:
	mov	rdx, QWORD PTR -24[rbp]
	mov	eax, DWORD PTR -4[rbp]
	mov	rsi, rdx
	mov	edi, eax
	call	ungetc@PLT
	mov	eax, 0
.L22:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE11:
	.size	myfeof, .-myfeof
	.section	.rodata
.LC3:
	.string	"Input-file size: %ld\n"
.LC5:
	.string	"%.2f%% done"
.LC6:
	.string	", new size: %.2f%%"
.LC7:
	.string	"    \r"
.LC8:
	.string	" no data compressed.\n"
	.align 8
.LC10:
	.string	"%6.3f:1, %6.3f bits/byte, %5.2f%% saved, %s in, %s out.\n"
.LC11:
	.string	"compress:unexpected error"
	.text
	.type	compressStream, @function
compressStream:
.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, 4096
	or	QWORD PTR [rsp], 0
	sub	rsp, 1120
	mov	QWORD PTR -5208[rbp], rdi
	mov	QWORD PTR -5216[rbp], rsi
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	QWORD PTR -5128[rbp], 0
	pxor	xmm0, xmm0
	movsd	QWORD PTR -5136[rbp], xmm0
	mov	rax, QWORD PTR -5208[rbp]
	mov	rdi, rax
	call	ferror@PLT
	test	eax, eax
	jne	.L57
	mov	rax, QWORD PTR -5216[rbp]
	mov	rdi, rax
	call	ferror@PLT
	test	eax, eax
	jne	.L58
	mov	eax, DWORD PTR srcMode[rip]
	cmp	eax, 3
	je	.L27
	mov	eax, DWORD PTR srcMode[rip]
	cmp	eax, 2
	jne	.L28
.L27:
	movzx	eax, BYTE PTR showProgress[rip]
	cmp	al, 1
	jne	.L28
	mov	rax, QWORD PTR -5208[rbp]
	mov	edx, 2
	mov	esi, 0
	mov	rdi, rax
	call	fseek@PLT
	mov	rax, QWORD PTR -5208[rbp]
	mov	rdi, rax
	call	ftello@PLT
	pxor	xmm0, xmm0
	cvtsi2sd	xmm0, rax
	movsd	QWORD PTR -5136[rbp], xmm0
	mov	rax, QWORD PTR -5208[rbp]
	mov	rdi, rax
	call	rewind@PLT
	mov	eax, DWORD PTR verbosity[rip]
	test	eax, eax
	jle	.L28
	movsd	xmm0, QWORD PTR -5136[rbp]
	cvttsd2si	rdx, xmm0
	mov	rax, QWORD PTR stderr[rip]
	lea	rsi, .LC3[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
.L28:
	mov	edi, DWORD PTR workFactor[rip]
	mov	ecx, DWORD PTR verbosity[rip]
	mov	edx, DWORD PTR blockSize100k[rip]
	mov	rsi, QWORD PTR -5216[rbp]
	lea	rax, -5172[rbp]
	mov	r8d, edi
	mov	rdi, rax
	call	BZ2_bzWriteOpen@PLT
	mov	QWORD PTR -5128[rbp], rax
	mov	eax, DWORD PTR -5172[rbp]
	test	eax, eax
	jne	.L59
	mov	eax, DWORD PTR verbosity[rip]
	cmp	eax, 1
	jle	.L31
	mov	rax, QWORD PTR stderr[rip]
	mov	rsi, rax
	mov	edi, 10
	call	fputc@PLT
.L31:
	lea	rax, -5152[rbp]
	mov	rdi, rax
	call	time@PLT
.L40:
	mov	rax, QWORD PTR -5208[rbp]
	mov	rdi, rax
	call	myfeof
	test	al, al
	jne	.L60
	mov	rdx, QWORD PTR -5208[rbp]
	lea	rax, -5008[rbp]
	mov	rcx, rdx
	mov	edx, 5000
	mov	esi, 1
	mov	rdi, rax
	call	fread@PLT
	mov	DWORD PTR -5164[rbp], eax
	mov	rax, QWORD PTR -5208[rbp]
	mov	rdi, rax
	call	ferror@PLT
	test	eax, eax
	jne	.L61
	cmp	DWORD PTR -5164[rbp], 0
	jle	.L35
	mov	ecx, DWORD PTR -5164[rbp]
	lea	rdx, -5008[rbp]
	mov	rsi, QWORD PTR -5128[rbp]
	lea	rax, -5172[rbp]
	mov	rdi, rax
	call	BZ2_bzWrite@PLT
.L35:
	mov	eax, DWORD PTR -5172[rbp]
	test	eax, eax
	jne	.L62
	mov	eax, DWORD PTR srcMode[rip]
	cmp	eax, 3
	je	.L37
	mov	eax, DWORD PTR srcMode[rip]
	cmp	eax, 2
	jne	.L40
.L37:
	movzx	eax, BYTE PTR showProgress[rip]
	cmp	al, 1
	jne	.L40
	lea	rax, -5144[rbp]
	mov	rdi, rax
	call	time@PLT
	mov	rax, QWORD PTR -5144[rbp]
	mov	rdx, QWORD PTR -5152[rbp]
	sub	rax, rdx
	cmp	rax, 1
	jle	.L40
	mov	rax, QWORD PTR -5208[rbp]
	mov	rdi, rax
	call	ftello@PLT
	pxor	xmm0, xmm0
	cvtsi2sd	xmm0, rax
	movsd	QWORD PTR -5120[rbp], xmm0
	mov	rax, QWORD PTR -5216[rbp]
	mov	rdi, rax
	call	ftello@PLT
	pxor	xmm0, xmm0
	cvtsi2sd	xmm0, rax
	movsd	QWORD PTR -5112[rbp], xmm0
	mov	rax, QWORD PTR -5144[rbp]
	mov	QWORD PTR -5152[rbp], rax
	movsd	xmm1, QWORD PTR -5120[rbp]
	movsd	xmm0, QWORD PTR .LC4[rip]
	mulsd	xmm0, xmm1
	divsd	xmm0, QWORD PTR -5136[rbp]
	movq	rdx, xmm0
	mov	rax, QWORD PTR stderr[rip]
	movq	xmm0, rdx
	lea	rsi, .LC5[rip]
	mov	rdi, rax
	mov	eax, 1
	call	fprintf@PLT
	mov	eax, DWORD PTR srcMode[rip]
	cmp	eax, 3
	jne	.L39
	movsd	xmm1, QWORD PTR -5112[rbp]
	movsd	xmm0, QWORD PTR .LC4[rip]
	mulsd	xmm0, xmm1
	divsd	xmm0, QWORD PTR -5120[rbp]
	movq	rdx, xmm0
	mov	rax, QWORD PTR stderr[rip]
	movq	xmm0, rdx
	lea	rsi, .LC6[rip]
	mov	rdi, rax
	mov	eax, 1
	call	fprintf@PLT
.L39:
	mov	rax, QWORD PTR stderr[rip]
	mov	rcx, rax
	mov	edx, 5
	mov	esi, 1
	lea	rdi, .LC7[rip]
	call	fwrite@PLT
	jmp	.L40
.L60:
	nop
	lea	r8, -5180[rbp]
	lea	rdi, -5184[rbp]
	lea	rdx, -5188[rbp]
	mov	rsi, QWORD PTR -5128[rbp]
	lea	rax, -5172[rbp]
	sub	rsp, 8
	lea	rcx, -5176[rbp]
	push	rcx
	mov	r9, r8
	mov	r8, rdi
	mov	rcx, rdx
	mov	edx, 0
	mov	rdi, rax
	call	BZ2_bzWriteClose64@PLT
	add	rsp, 16
	mov	eax, DWORD PTR -5172[rbp]
	test	eax, eax
	jne	.L63
	mov	rax, QWORD PTR -5216[rbp]
	mov	rdi, rax
	call	ferror@PLT
	test	eax, eax
	jne	.L64
	mov	rax, QWORD PTR -5216[rbp]
	mov	rdi, rax
	call	fflush@PLT
	mov	DWORD PTR -5160[rbp], eax
	cmp	DWORD PTR -5160[rbp], -1
	je	.L65
	mov	rax, QWORD PTR stdout[rip]
	cmp	QWORD PTR -5216[rbp], rax
	je	.L44
	mov	rax, QWORD PTR -5216[rbp]
	mov	rdi, rax
	call	fileno@PLT
	mov	DWORD PTR -5156[rbp], eax
	cmp	DWORD PTR -5156[rbp], 0
	js	.L66
	mov	eax, DWORD PTR -5156[rbp]
	mov	edi, eax
	call	applySavedFileAttrToOutputFile
	mov	rax, QWORD PTR -5216[rbp]
	mov	rdi, rax
	call	fclose@PLT
	mov	DWORD PTR -5160[rbp], eax
	mov	QWORD PTR outputHandleJustInCase[rip], 0
	cmp	DWORD PTR -5160[rbp], -1
	je	.L67
.L44:
	mov	QWORD PTR outputHandleJustInCase[rip], 0
	mov	rax, QWORD PTR -5208[rbp]
	mov	rdi, rax
	call	ferror@PLT
	test	eax, eax
	jne	.L68
	mov	rax, QWORD PTR -5208[rbp]
	mov	rdi, rax
	call	fclose@PLT
	mov	DWORD PTR -5160[rbp], eax
	cmp	DWORD PTR -5160[rbp], -1
	je	.L69
	mov	eax, DWORD PTR verbosity[rip]
	test	eax, eax
	jle	.L70
	mov	eax, DWORD PTR -5188[rbp]
	test	eax, eax
	jne	.L49
	mov	eax, DWORD PTR -5184[rbp]
	test	eax, eax
	jne	.L49
	mov	rax, QWORD PTR stderr[rip]
	mov	rcx, rax
	mov	edx, 21
	mov	esi, 1
	lea	rdi, .LC8[rip]
	call	fwrite@PLT
	jmp	.L70
.L49:
	mov	edx, DWORD PTR -5184[rbp]
	mov	ecx, DWORD PTR -5188[rbp]
	lea	rax, -5088[rbp]
	mov	esi, ecx
	mov	rdi, rax
	call	uInt64_from_UInt32s
	mov	edx, DWORD PTR -5176[rbp]
	mov	ecx, DWORD PTR -5180[rbp]
	lea	rax, -5080[rbp]
	mov	esi, ecx
	mov	rdi, rax
	call	uInt64_from_UInt32s
	lea	rax, -5088[rbp]
	mov	rdi, rax
	call	uInt64_to_double
	movq	rax, xmm0
	mov	QWORD PTR -5104[rbp], rax
	lea	rax, -5080[rbp]
	mov	rdi, rax
	call	uInt64_to_double
	movq	rax, xmm0
	mov	QWORD PTR -5096[rbp], rax
	lea	rdx, -5088[rbp]
	lea	rax, -5072[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	uInt64_toAscii
	lea	rdx, -5080[rbp]
	lea	rax, -5040[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	uInt64_toAscii
	movsd	xmm0, QWORD PTR -5096[rbp]
	movapd	xmm2, xmm0
	divsd	xmm2, QWORD PTR -5104[rbp]
	movsd	xmm0, QWORD PTR .LC0[rip]
	movapd	xmm1, xmm0
	subsd	xmm1, xmm2
	movsd	xmm0, QWORD PTR .LC4[rip]
	movapd	xmm2, xmm1
	mulsd	xmm2, xmm0
	movsd	xmm1, QWORD PTR -5096[rbp]
	movsd	xmm0, QWORD PTR .LC9[rip]
	mulsd	xmm0, xmm1
	movapd	xmm1, xmm0
	divsd	xmm1, QWORD PTR -5104[rbp]
	movsd	xmm0, QWORD PTR -5104[rbp]
	divsd	xmm0, QWORD PTR -5096[rbp]
	movq	rsi, xmm0
	mov	rax, QWORD PTR stderr[rip]
	lea	rcx, -5040[rbp]
	lea	rdx, -5072[rbp]
	movq	xmm0, rsi
	lea	rsi, .LC10[rip]
	mov	rdi, rax
	mov	eax, 3
	call	fprintf@PLT
	jmp	.L70
.L59:
	nop
	jmp	.L30
.L62:
	nop
	jmp	.L30
.L63:
	nop
.L30:
	lea	r8, -5180[rbp]
	lea	rdi, -5184[rbp]
	lea	rdx, -5188[rbp]
	mov	rsi, QWORD PTR -5128[rbp]
	lea	rax, -5168[rbp]
	sub	rsp, 8
	lea	rcx, -5176[rbp]
	push	rcx
	mov	r9, r8
	mov	r8, rdi
	mov	rcx, rdx
	mov	edx, 1
	mov	rdi, rax
	call	BZ2_bzWriteClose64@PLT
	add	rsp, 16
	mov	eax, DWORD PTR -5172[rbp]
	cmp	eax, -3
	je	.L51
	cmp	eax, -3
	jg	.L52
	cmp	eax, -9
	je	.L53
	cmp	eax, -6
	je	.L25
	jmp	.L52
.L53:
	call	configError
.L51:
	call	outOfMemory
.L57:
	nop
	jmp	.L25
.L58:
	nop
	jmp	.L25
.L61:
	nop
	jmp	.L25
.L64:
	nop
	jmp	.L25
.L65:
	nop
	jmp	.L25
.L66:
	nop
	jmp	.L25
.L67:
	nop
	jmp	.L25
.L68:
	nop
	jmp	.L25
.L69:
	nop
.L25:
	call	ioError
.L52:
	lea	rdi, .LC11[rip]
	call	panic
.L70:
	nop
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L55
	call	__stack_chk_fail@PLT
.L55:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE12:
	.size	compressStream, .-compressStream
	.section	.rodata
.LC12:
	.string	"%.2f%% done\r"
.LC13:
	.string	"decompress:bzReadGetUnused"
.LC14:
	.string	"\n    "
	.align 8
.LC15:
	.string	"\n%s: %s: trailing garbage after EOF ignored\n"
.LC16:
	.string	"decompress:unexpected error"
	.text
	.type	uncompressStream, @function
uncompressStream:
.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, 4096
	or	QWORD PTR [rsp], 0
	sub	rsp, 4096
	or	QWORD PTR [rsp], 0
	sub	rsp, 1936
	mov	QWORD PTR -10120[rbp], rdi
	mov	QWORD PTR -10128[rbp], rsi
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	QWORD PTR -10048[rbp], 0
	pxor	xmm0, xmm0
	movsd	QWORD PTR -10056[rbp], xmm0
	mov	DWORD PTR -10104[rbp], 0
	mov	DWORD PTR -10100[rbp], 0
	mov	eax, DWORD PTR srcMode[rip]
	cmp	eax, 3
	je	.L72
	mov	eax, DWORD PTR srcMode[rip]
	cmp	eax, 2
	jne	.L73
.L72:
	movzx	eax, BYTE PTR showProgress[rip]
	cmp	al, 1
	jne	.L73
	mov	rax, QWORD PTR -10120[rbp]
	mov	rdi, rax
	call	ftello@PLT
	mov	QWORD PTR -10040[rbp], rax
	mov	rax, QWORD PTR -10120[rbp]
	mov	edx, 2
	mov	esi, 0
	mov	rdi, rax
	call	fseeko@PLT
	mov	rax, QWORD PTR -10120[rbp]
	mov	rdi, rax
	call	ftello@PLT
	pxor	xmm0, xmm0
	cvtsi2sd	xmm0, rax
	movsd	QWORD PTR -10056[rbp], xmm0
	mov	rcx, QWORD PTR -10040[rbp]
	mov	rax, QWORD PTR -10120[rbp]
	mov	edx, 0
	mov	rsi, rcx
	mov	rdi, rax
	call	fseeko@PLT
	mov	eax, DWORD PTR verbosity[rip]
	test	eax, eax
	jle	.L73
	movsd	xmm0, QWORD PTR -10056[rbp]
	cvttsd2si	rdx, xmm0
	mov	rax, QWORD PTR stderr[rip]
	lea	rsi, .LC3[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
.L73:
	mov	rax, QWORD PTR -10128[rbp]
	mov	rdi, rax
	call	ferror@PLT
	test	eax, eax
	jne	.L126
	mov	rax, QWORD PTR -10120[rbp]
	mov	rdi, rax
	call	ferror@PLT
	test	eax, eax
	jne	.L127
	lea	rax, -10072[rbp]
	mov	rdi, rax
	call	time@PLT
.L95:
	mov	r8d, DWORD PTR -10104[rbp]
	movzx	eax, BYTE PTR smallMode[rip]
	movzx	ecx, al
	mov	edx, DWORD PTR verbosity[rip]
	lea	rdi, -5008[rbp]
	mov	rsi, QWORD PTR -10120[rbp]
	lea	rax, -10112[rbp]
	mov	r9d, r8d
	mov	r8, rdi
	mov	rdi, rax
	call	BZ2_bzReadOpen@PLT
	mov	QWORD PTR -10048[rbp], rax
	cmp	QWORD PTR -10048[rbp], 0
	je	.L128
	mov	eax, DWORD PTR -10112[rbp]
	test	eax, eax
	jne	.L128
	add	DWORD PTR -10100[rbp], 1
	jmp	.L80
.L87:
	lea	rdx, -10016[rbp]
	mov	rsi, QWORD PTR -10048[rbp]
	lea	rax, -10112[rbp]
	mov	ecx, 5000
	mov	rdi, rax
	call	BZ2_bzRead@PLT
	mov	DWORD PTR -10092[rbp], eax
	mov	eax, DWORD PTR -10112[rbp]
	cmp	eax, -5
	je	.L129
	mov	eax, DWORD PTR -10112[rbp]
	test	eax, eax
	je	.L83
	mov	eax, DWORD PTR -10112[rbp]
	cmp	eax, 4
	jne	.L84
.L83:
	cmp	DWORD PTR -10092[rbp], 0
	jle	.L84
	mov	eax, DWORD PTR -10092[rbp]
	movsx	rdx, eax
	mov	rcx, QWORD PTR -10128[rbp]
	lea	rax, -10016[rbp]
	mov	esi, 1
	mov	rdi, rax
	call	fwrite@PLT
.L84:
	mov	rax, QWORD PTR -10128[rbp]
	mov	rdi, rax
	call	ferror@PLT
	test	eax, eax
	jne	.L130
	mov	eax, DWORD PTR srcMode[rip]
	cmp	eax, 3
	je	.L86
	mov	eax, DWORD PTR srcMode[rip]
	cmp	eax, 2
	jne	.L80
.L86:
	movzx	eax, BYTE PTR showProgress[rip]
	cmp	al, 1
	jne	.L80
	lea	rax, -10064[rbp]
	mov	rdi, rax
	call	time@PLT
	mov	rax, QWORD PTR -10064[rbp]
	mov	rdx, QWORD PTR -10072[rbp]
	sub	rax, rdx
	cmp	rax, 1
	jle	.L80
	mov	rax, QWORD PTR -10120[rbp]
	mov	rdi, rax
	call	ftello@PLT
	pxor	xmm0, xmm0
	cvtsi2sd	xmm0, rax
	movsd	QWORD PTR -10024[rbp], xmm0
	mov	rax, QWORD PTR -10064[rbp]
	mov	QWORD PTR -10072[rbp], rax
	movsd	xmm1, QWORD PTR -10024[rbp]
	movsd	xmm0, QWORD PTR .LC4[rip]
	mulsd	xmm0, xmm1
	divsd	xmm0, QWORD PTR -10056[rbp]
	movq	rdx, xmm0
	mov	rax, QWORD PTR stderr[rip]
	movq	xmm0, rdx
	lea	rsi, .LC12[rip]
	mov	rdi, rax
	mov	eax, 1
	call	fprintf@PLT
.L80:
	mov	eax, DWORD PTR -10112[rbp]
	test	eax, eax
	je	.L87
	mov	eax, DWORD PTR -10112[rbp]
	cmp	eax, 4
	jne	.L131
	lea	rcx, -10104[rbp]
	lea	rdx, -10080[rbp]
	mov	rsi, QWORD PTR -10048[rbp]
	lea	rax, -10112[rbp]
	mov	rdi, rax
	call	BZ2_bzReadGetUnused@PLT
	mov	eax, DWORD PTR -10112[rbp]
	test	eax, eax
	je	.L89
	lea	rdi, .LC13[rip]
	call	panic
.L89:
	mov	rax, QWORD PTR -10080[rbp]
	mov	QWORD PTR -10032[rbp], rax
	mov	DWORD PTR -10096[rbp], 0
	jmp	.L90
.L91:
	mov	eax, DWORD PTR -10096[rbp]
	movsx	rdx, eax
	mov	rax, QWORD PTR -10032[rbp]
	add	rax, rdx
	movzx	edx, BYTE PTR [rax]
	mov	eax, DWORD PTR -10096[rbp]
	cdqe
	mov	BYTE PTR -5008[rbp+rax], dl
	add	DWORD PTR -10096[rbp], 1
.L90:
	mov	eax, DWORD PTR -10104[rbp]
	cmp	DWORD PTR -10096[rbp], eax
	jl	.L91
	mov	rdx, QWORD PTR -10048[rbp]
	lea	rax, -10112[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	BZ2_bzReadClose@PLT
	mov	eax, DWORD PTR -10112[rbp]
	test	eax, eax
	je	.L92
	lea	rdi, .LC13[rip]
	call	panic
.L92:
	mov	eax, DWORD PTR -10104[rbp]
	test	eax, eax
	jne	.L95
	mov	rax, QWORD PTR -10120[rbp]
	mov	rdi, rax
	call	myfeof
	test	al, al
	jne	.L132
	jmp	.L95
.L132:
	nop
.L94:
	mov	rax, QWORD PTR -10120[rbp]
	mov	rdi, rax
	call	ferror@PLT
	test	eax, eax
	jne	.L133
	mov	rax, QWORD PTR stdout[rip]
	cmp	QWORD PTR -10128[rbp], rax
	je	.L97
	mov	rax, QWORD PTR -10128[rbp]
	mov	rdi, rax
	call	fileno@PLT
	mov	DWORD PTR -10088[rbp], eax
	cmp	DWORD PTR -10088[rbp], 0
	js	.L134
	mov	eax, DWORD PTR -10088[rbp]
	mov	edi, eax
	call	applySavedFileAttrToOutputFile
.L97:
	mov	rax, QWORD PTR -10120[rbp]
	mov	rdi, rax
	call	fclose@PLT
	mov	DWORD PTR -10084[rbp], eax
	cmp	DWORD PTR -10084[rbp], -1
	je	.L135
	mov	rax, QWORD PTR -10128[rbp]
	mov	rdi, rax
	call	ferror@PLT
	test	eax, eax
	jne	.L136
	mov	rax, QWORD PTR -10128[rbp]
	mov	rdi, rax
	call	fflush@PLT
	mov	DWORD PTR -10084[rbp], eax
	cmp	DWORD PTR -10084[rbp], 0
	jne	.L137
	mov	rax, QWORD PTR stdout[rip]
	cmp	QWORD PTR -10128[rbp], rax
	je	.L102
	mov	rax, QWORD PTR -10128[rbp]
	mov	rdi, rax
	call	fclose@PLT
	mov	DWORD PTR -10084[rbp], eax
	mov	QWORD PTR outputHandleJustInCase[rip], 0
	cmp	DWORD PTR -10084[rbp], -1
	je	.L138
.L102:
	mov	QWORD PTR outputHandleJustInCase[rip], 0
	mov	eax, DWORD PTR verbosity[rip]
	cmp	eax, 1
	jle	.L103
	mov	rax, QWORD PTR stderr[rip]
	mov	rcx, rax
	mov	edx, 5
	mov	esi, 1
	lea	rdi, .LC14[rip]
	call	fwrite@PLT
.L103:
	mov	eax, 1
	jmp	.L122
.L129:
	nop
.L82:
	movzx	eax, BYTE PTR forceOverwrite[rip]
	test	al, al
	je	.L139
	mov	rax, QWORD PTR -10120[rbp]
	mov	rdi, rax
	call	rewind@PLT
.L110:
	mov	rax, QWORD PTR -10120[rbp]
	mov	rdi, rax
	call	myfeof
	test	al, al
	jne	.L140
	mov	rdx, QWORD PTR -10120[rbp]
	lea	rax, -10016[rbp]
	mov	rcx, rdx
	mov	edx, 5000
	mov	esi, 1
	mov	rdi, rax
	call	fread@PLT
	mov	DWORD PTR -10092[rbp], eax
	mov	rax, QWORD PTR -10120[rbp]
	mov	rdi, rax
	call	ferror@PLT
	test	eax, eax
	jne	.L141
	cmp	DWORD PTR -10092[rbp], 0
	jle	.L108
	mov	eax, DWORD PTR -10092[rbp]
	movsx	rdx, eax
	mov	rcx, QWORD PTR -10128[rbp]
	lea	rax, -10016[rbp]
	mov	esi, 1
	mov	rdi, rax
	call	fwrite@PLT
.L108:
	mov	rax, QWORD PTR -10128[rbp]
	mov	rdi, rax
	call	ferror@PLT
	test	eax, eax
	jne	.L142
	jmp	.L110
.L140:
	nop
	jmp	.L94
.L128:
	nop
	jmp	.L79
.L131:
	nop
	jmp	.L79
.L139:
	nop
.L79:
	mov	rdx, QWORD PTR -10048[rbp]
	lea	rax, -10108[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	BZ2_bzReadClose@PLT
	mov	eax, DWORD PTR -10112[rbp]
	add	eax, 9
	cmp	eax, 6
	ja	.L111
	mov	eax, eax
	lea	rdx, 0[0+rax*4]
	lea	rax, .L113[rip]
	mov	eax, DWORD PTR [rdx+rax]
	cdqe
	lea	rdx, .L113[rip]
	add	rax, rdx
	notrack jmp	rax
	.section	.rodata
	.align 4
	.align 4
.L113:
	.long	.L117-.L113
	.long	.L111-.L113
	.long	.L116-.L113
	.long	.L75-.L113
	.long	.L115-.L113
	.long	.L114-.L113
	.long	.L112-.L113
	.text
.L117:
	call	configError
.L126:
	nop
	jmp	.L75
.L127:
	nop
	jmp	.L75
.L130:
	nop
	jmp	.L75
.L133:
	nop
	jmp	.L75
.L134:
	nop
	jmp	.L75
.L135:
	nop
	jmp	.L75
.L136:
	nop
	jmp	.L75
.L137:
	nop
	jmp	.L75
.L138:
	nop
	jmp	.L75
.L141:
	nop
	jmp	.L75
.L142:
	nop
.L75:
	call	ioError
.L114:
	call	crcError
.L112:
	call	outOfMemory
.L116:
	call	compressedStreamEOF
.L115:
	mov	rax, QWORD PTR stdin[rip]
	cmp	QWORD PTR -10120[rbp], rax
	je	.L118
	mov	rax, QWORD PTR -10120[rbp]
	mov	rdi, rax
	call	fclose@PLT
.L118:
	mov	rax, QWORD PTR stdout[rip]
	cmp	QWORD PTR -10128[rbp], rax
	je	.L119
	mov	rax, QWORD PTR -10128[rbp]
	mov	rdi, rax
	call	fclose@PLT
.L119:
	cmp	DWORD PTR -10100[rbp], 1
	jne	.L120
	mov	eax, 0
	jmp	.L122
.L120:
	movzx	eax, BYTE PTR noisy[rip]
	test	al, al
	je	.L121
	mov	rdx, QWORD PTR progName[rip]
	mov	rax, QWORD PTR stderr[rip]
	lea	rcx, inName[rip]
	lea	rsi, .LC15[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
.L121:
	mov	eax, 1
	jmp	.L122
.L111:
	lea	rdi, .LC16[rip]
	call	panic
.L122:
	mov	rcx, QWORD PTR -8[rbp]
	sub	rcx, QWORD PTR fs:40
	je	.L123
	call	__stack_chk_fail@PLT
.L123:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE13:
	.size	uncompressStream, .-uncompressStream
	.section	.rodata
.LC17:
	.string	"test:bzReadGetUnused"
.LC18:
	.string	"%s: %s: "
	.align 8
.LC19:
	.string	"data integrity (CRC) error in data\n"
.LC20:
	.string	"file ends unexpectedly\n"
	.align 8
.LC21:
	.string	"bad magic number (file not created by bzip2)\n"
	.align 8
.LC22:
	.string	"trailing garbage after EOF ignored\n"
.LC23:
	.string	"test:unexpected error"
	.text
	.type	testStream, @function
testStream:
.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, 4096
	or	QWORD PTR [rsp], 0
	sub	rsp, 4096
	or	QWORD PTR [rsp], 0
	sub	rsp, 1904
	mov	QWORD PTR -10088[rbp], rdi
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	QWORD PTR -10032[rbp], 0
	mov	DWORD PTR -10060[rbp], 0
	mov	DWORD PTR -10056[rbp], 0
	mov	rax, QWORD PTR -10088[rbp]
	mov	rdi, rax
	call	ferror@PLT
	test	eax, eax
	jne	.L176
.L144:
	mov	r8d, DWORD PTR -10060[rbp]
	movzx	eax, BYTE PTR smallMode[rip]
	movzx	ecx, al
	mov	edx, DWORD PTR verbosity[rip]
	lea	rdi, -5008[rbp]
	mov	rsi, QWORD PTR -10088[rbp]
	lea	rax, -10068[rbp]
	mov	r9d, r8d
	mov	r8, rdi
	mov	rdi, rax
	call	BZ2_bzReadOpen@PLT
	mov	QWORD PTR -10032[rbp], rax
	cmp	QWORD PTR -10032[rbp], 0
	je	.L177
	mov	eax, DWORD PTR -10068[rbp]
	test	eax, eax
	jne	.L177
	add	DWORD PTR -10056[rbp], 1
	jmp	.L149
.L150:
	lea	rdx, -10016[rbp]
	mov	rsi, QWORD PTR -10032[rbp]
	lea	rax, -10068[rbp]
	mov	ecx, 5000
	mov	rdi, rax
	call	BZ2_bzRead@PLT
	mov	DWORD PTR -10044[rbp], eax
	mov	eax, DWORD PTR -10068[rbp]
	cmp	eax, -5
	je	.L178
.L149:
	mov	eax, DWORD PTR -10068[rbp]
	test	eax, eax
	je	.L150
	mov	eax, DWORD PTR -10068[rbp]
	cmp	eax, 4
	jne	.L179
	lea	rcx, -10060[rbp]
	lea	rdx, -10040[rbp]
	mov	rsi, QWORD PTR -10032[rbp]
	lea	rax, -10068[rbp]
	mov	rdi, rax
	call	BZ2_bzReadGetUnused@PLT
	mov	eax, DWORD PTR -10068[rbp]
	test	eax, eax
	je	.L152
	lea	rdi, .LC17[rip]
	call	panic
.L152:
	mov	rax, QWORD PTR -10040[rbp]
	mov	QWORD PTR -10024[rbp], rax
	mov	DWORD PTR -10052[rbp], 0
	jmp	.L153
.L154:
	mov	eax, DWORD PTR -10052[rbp]
	movsx	rdx, eax
	mov	rax, QWORD PTR -10024[rbp]
	add	rax, rdx
	movzx	edx, BYTE PTR [rax]
	mov	eax, DWORD PTR -10052[rbp]
	cdqe
	mov	BYTE PTR -5008[rbp+rax], dl
	add	DWORD PTR -10052[rbp], 1
.L153:
	mov	eax, DWORD PTR -10060[rbp]
	cmp	DWORD PTR -10052[rbp], eax
	jl	.L154
	mov	rdx, QWORD PTR -10032[rbp]
	lea	rax, -10068[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	BZ2_bzReadClose@PLT
	mov	eax, DWORD PTR -10068[rbp]
	test	eax, eax
	je	.L155
	lea	rdi, .LC17[rip]
	call	panic
.L155:
	mov	eax, DWORD PTR -10060[rbp]
	test	eax, eax
	jne	.L144
	mov	rax, QWORD PTR -10088[rbp]
	mov	rdi, rax
	call	myfeof
	test	al, al
	jne	.L180
	jmp	.L144
.L180:
	nop
	mov	rax, QWORD PTR -10088[rbp]
	mov	rdi, rax
	call	ferror@PLT
	test	eax, eax
	jne	.L181
	mov	rax, QWORD PTR -10088[rbp]
	mov	rdi, rax
	call	fclose@PLT
	mov	DWORD PTR -10048[rbp], eax
	cmp	DWORD PTR -10048[rbp], -1
	je	.L182
	mov	eax, DWORD PTR verbosity[rip]
	cmp	eax, 1
	jle	.L160
	mov	rax, QWORD PTR stderr[rip]
	mov	rcx, rax
	mov	edx, 5
	mov	esi, 1
	lea	rdi, .LC14[rip]
	call	fwrite@PLT
.L160:
	mov	eax, 1
	jmp	.L173
.L177:
	nop
	jmp	.L148
.L178:
	nop
	jmp	.L148
.L179:
	nop
.L148:
	mov	rdx, QWORD PTR -10032[rbp]
	lea	rax, -10064[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	BZ2_bzReadClose@PLT
	mov	eax, DWORD PTR verbosity[rip]
	test	eax, eax
	jne	.L162
	mov	rdx, QWORD PTR progName[rip]
	mov	rax, QWORD PTR stderr[rip]
	lea	rcx, inName[rip]
	lea	rsi, .LC18[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
.L162:
	mov	eax, DWORD PTR -10068[rbp]
	add	eax, 9
	cmp	eax, 6
	ja	.L163
	mov	eax, eax
	lea	rdx, 0[0+rax*4]
	lea	rax, .L165[rip]
	mov	eax, DWORD PTR [rdx+rax]
	cdqe
	lea	rdx, .L165[rip]
	add	rax, rdx
	notrack jmp	rax
	.section	.rodata
	.align 4
	.align 4
.L165:
	.long	.L169-.L165
	.long	.L163-.L165
	.long	.L168-.L165
	.long	.L145-.L165
	.long	.L167-.L165
	.long	.L166-.L165
	.long	.L164-.L165
	.text
.L169:
	call	configError
.L176:
	nop
	jmp	.L145
.L181:
	nop
	jmp	.L145
.L182:
	nop
.L145:
	call	ioError
.L166:
	mov	rax, QWORD PTR stderr[rip]
	mov	rcx, rax
	mov	edx, 35
	mov	esi, 1
	lea	rdi, .LC19[rip]
	call	fwrite@PLT
	mov	eax, 0
	jmp	.L173
.L164:
	call	outOfMemory
.L168:
	mov	rax, QWORD PTR stderr[rip]
	mov	rcx, rax
	mov	edx, 23
	mov	esi, 1
	lea	rdi, .LC20[rip]
	call	fwrite@PLT
	mov	eax, 0
	jmp	.L173
.L167:
	mov	rax, QWORD PTR stdin[rip]
	cmp	QWORD PTR -10088[rbp], rax
	je	.L170
	mov	rax, QWORD PTR -10088[rbp]
	mov	rdi, rax
	call	fclose@PLT
.L170:
	cmp	DWORD PTR -10056[rbp], 1
	jne	.L171
	mov	rax, QWORD PTR stderr[rip]
	mov	rcx, rax
	mov	edx, 45
	mov	esi, 1
	lea	rdi, .LC21[rip]
	call	fwrite@PLT
	mov	eax, 0
	jmp	.L173
.L171:
	movzx	eax, BYTE PTR noisy[rip]
	test	al, al
	je	.L172
	mov	rax, QWORD PTR stderr[rip]
	mov	rcx, rax
	mov	edx, 35
	mov	esi, 1
	lea	rdi, .LC22[rip]
	call	fwrite@PLT
.L172:
	mov	eax, 1
	jmp	.L173
.L163:
	lea	rdi, .LC23[rip]
	call	panic
.L173:
	mov	rcx, QWORD PTR -8[rbp]
	sub	rcx, QWORD PTR fs:40
	je	.L174
	call	__stack_chk_fail@PLT
.L174:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE14:
	.size	testStream, .-testStream
	.type	setExit, @function
setExit:
.LFB15:
	.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	eax, DWORD PTR exitValue[rip]
	cmp	DWORD PTR -4[rbp], eax
	jle	.L185
	mov	eax, DWORD PTR -4[rbp]
	mov	DWORD PTR exitValue[rip], eax
.L185:
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE15:
	.size	setExit, .-setExit
	.section	.rodata
	.align 8
.LC24:
	.string	"\nIt is possible that the compressed file(s) have become corrupted.\nYou can use the -tvv option to test integrity of such files.\n\nYou can use the `bzip2recover' program to attempt to recover\ndata from undamaged sections of corrupted files.\n\n"
	.text
	.type	cadvise, @function
cadvise:
.LFB16:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	movzx	eax, BYTE PTR noisy[rip]
	test	al, al
	je	.L188
	mov	rax, QWORD PTR stderr[rip]
	mov	rcx, rax
	mov	edx, 240
	mov	esi, 1
	lea	rdi, .LC24[rip]
	call	fwrite@PLT
.L188:
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE16:
	.size	cadvise, .-cadvise
	.section	.rodata
	.align 8
.LC25:
	.string	"\tInput file = %s, output file = %s\n"
	.text
	.type	showFileNames, @function
showFileNames:
.LFB17:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	movzx	eax, BYTE PTR noisy[rip]
	test	al, al
	je	.L191
	mov	rax, QWORD PTR stderr[rip]
	lea	rcx, outName[rip]
	lea	rdx, inName[rip]
	lea	rsi, .LC25[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
.L191:
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE17:
	.size	showFileNames, .-showFileNames
	.section	.rodata
	.align 8
.LC26:
	.string	"%s: Deleting output file %s, if it exists.\n"
	.align 8
.LC27:
	.string	"%s: WARNING: deletion of output file (apparently) failed.\n"
	.align 8
.LC28:
	.string	"%s: WARNING: deletion of output file suppressed\n"
	.align 8
.LC29:
	.string	"%s:    since input file no longer exists.  Output file\n"
	.align 8
.LC30:
	.string	"%s:    `%s' may be incomplete.\n"
	.align 8
.LC31:
	.string	"%s:    I suggest doing an integrity test (bzip2 -tv) of it.\n"
	.align 8
.LC32:
	.string	"%s: WARNING: some files have not been processed:\n%s:    %d specified on command line, %d not processed yet.\n\n"
	.text
	.type	cleanUpAndFail, @function
cleanUpAndFail:
.LFB18:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 192
	mov	DWORD PTR -180[rbp], edi
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	eax, DWORD PTR srcMode[rip]
	cmp	eax, 3
	jne	.L193
	mov	eax, DWORD PTR opMode[rip]
	cmp	eax, 3
	je	.L193
	movzx	eax, BYTE PTR deleteOutputOnInterrupt[rip]
	test	al, al
	je	.L193
	lea	rax, -160[rbp]
	mov	rsi, rax
	lea	rdi, inName[rip]
	call	stat@PLT
	mov	DWORD PTR -164[rbp], eax
	cmp	DWORD PTR -164[rbp], 0
	jne	.L194
	movzx	eax, BYTE PTR noisy[rip]
	test	al, al
	je	.L195
	mov	rdx, QWORD PTR progName[rip]
	mov	rax, QWORD PTR stderr[rip]
	lea	rcx, outName[rip]
	lea	rsi, .LC26[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
.L195:
	mov	rax, QWORD PTR outputHandleJustInCase[rip]
	test	rax, rax
	je	.L196
	mov	rax, QWORD PTR outputHandleJustInCase[rip]
	mov	rdi, rax
	call	fclose@PLT
.L196:
	lea	rdi, outName[rip]
	call	remove@PLT
	mov	DWORD PTR -164[rbp], eax
	cmp	DWORD PTR -164[rbp], 0
	je	.L193
	mov	rdx, QWORD PTR progName[rip]
	mov	rax, QWORD PTR stderr[rip]
	lea	rsi, .LC27[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	jmp	.L193
.L194:
	mov	rdx, QWORD PTR progName[rip]
	mov	rax, QWORD PTR stderr[rip]
	lea	rsi, .LC28[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	rdx, QWORD PTR progName[rip]
	mov	rax, QWORD PTR stderr[rip]
	lea	rsi, .LC29[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	rdx, QWORD PTR progName[rip]
	mov	rax, QWORD PTR stderr[rip]
	lea	rcx, outName[rip]
	lea	rsi, .LC30[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	rdx, QWORD PTR progName[rip]
	mov	rax, QWORD PTR stderr[rip]
	lea	rsi, .LC31[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
.L193:
	movzx	eax, BYTE PTR noisy[rip]
	test	al, al
	je	.L197
	mov	eax, DWORD PTR numFileNames[rip]
	test	eax, eax
	jle	.L197
	mov	edx, DWORD PTR numFilesProcessed[rip]
	mov	eax, DWORD PTR numFileNames[rip]
	cmp	edx, eax
	jge	.L197
	mov	eax, DWORD PTR numFileNames[rip]
	mov	edx, DWORD PTR numFilesProcessed[rip]
	sub	eax, edx
	mov	edi, eax
	mov	esi, DWORD PTR numFileNames[rip]
	mov	rcx, QWORD PTR progName[rip]
	mov	rdx, QWORD PTR progName[rip]
	mov	rax, QWORD PTR stderr[rip]
	mov	r9d, edi
	mov	r8d, esi
	lea	rsi, .LC32[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
.L197:
	mov	eax, DWORD PTR -180[rbp]
	mov	edi, eax
	call	setExit
	mov	eax, DWORD PTR exitValue[rip]
	mov	edi, eax
	call	exit@PLT
	.cfi_endproc
.LFE18:
	.size	cleanUpAndFail, .-cleanUpAndFail
	.section	.rodata
	.align 8
.LC33:
	.string	"\n%s: PANIC -- internal consistency error:\n\t%s\n\tThis is a BUG.  Please report it to me at:\n\tjseward@bzip.org\n"
	.text
	.type	panic, @function
panic:
.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
	mov	QWORD PTR -8[rbp], rdi
	mov	rdx, QWORD PTR progName[rip]
	mov	rax, QWORD PTR stderr[rip]
	mov	rcx, QWORD PTR -8[rbp]
	lea	rsi, .LC33[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	call	showFileNames
	mov	edi, 3
	call	cleanUpAndFail
	.cfi_endproc
.LFE19:
	.size	panic, .-panic
	.section	.rodata
	.align 8
.LC34:
	.string	"\n%s: Data integrity error when decompressing.\n"
	.text
	.type	crcError, @function
crcError:
.LFB20:
	.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 progName[rip]
	mov	rax, QWORD PTR stderr[rip]
	lea	rsi, .LC34[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	call	showFileNames
	call	cadvise
	mov	edi, 2
	call	cleanUpAndFail
	.cfi_endproc
.LFE20:
	.size	crcError, .-crcError
	.section	.rodata
	.align 8
.LC35:
	.string	"\n%s: Compressed file ends unexpectedly;\n\tperhaps it is corrupted?  *Possible* reason follows.\n"
	.text
	.type	compressedStreamEOF, @function
compressedStreamEOF:
.LFB21:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	movzx	eax, BYTE PTR noisy[rip]
	test	al, al
	je	.L202
	mov	rdx, QWORD PTR progName[rip]
	mov	rax, QWORD PTR stderr[rip]
	lea	rsi, .LC35[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	rax, QWORD PTR progName[rip]
	mov	rdi, rax
	call	perror@PLT
	call	showFileNames
	call	cadvise
.L202:
	mov	edi, 2
	call	cleanUpAndFail
	.cfi_endproc
.LFE21:
	.size	compressedStreamEOF, .-compressedStreamEOF
	.section	.rodata
	.align 8
.LC36:
	.string	"\n%s: I/O or other error, bailing out.  Possible reason follows.\n"
	.text
	.type	ioError, @function
ioError:
.LFB22:
	.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 progName[rip]
	mov	rax, QWORD PTR stderr[rip]
	lea	rsi, .LC36[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	rax, QWORD PTR progName[rip]
	mov	rdi, rax
	call	perror@PLT
	call	showFileNames
	mov	edi, 1
	call	cleanUpAndFail
	.cfi_endproc
.LFE22:
	.size	ioError, .-ioError
	.section	.rodata
	.align 8
.LC37:
	.string	"\n%s: Control-C or similar caught, quitting.\n"
	.text
	.type	mySignalCatcher, @function
mySignalCatcher:
.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	DWORD PTR -4[rbp], edi
	mov	rdx, QWORD PTR progName[rip]
	mov	rax, QWORD PTR stderr[rip]
	lea	rsi, .LC37[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	edi, 1
	call	cleanUpAndFail
	.cfi_endproc
.LFE23:
	.size	mySignalCatcher, .-mySignalCatcher
	.section	.rodata
	.align 8
.LC38:
	.ascii	"\n%s: Caught a SIGSEGV or SIGBUS whilst compressing.\n\n   P"
	.ascii	"ossible causes are (most likely first):\n   (1) This compute"
	.ascii	"r has unreliable memory or cache hardware\n       (a surpris"
	.ascii	"ingly common problem; try a different machine.)\n   (2) A bu"
	.ascii	"g in the compiler used to create this executable\n       (un"
	.ascii	"likely, if you didn't compile bzip2 yourself.)\n   (3) A rea"
	.ascii	"l bug in bzip2 -- I hope this should never be the case.\n   "
	.ascii	"The user's manual, Section 4.3, has more info on (1) and (2)"
	.ascii	".\n   \n   If you suspect this is a bug in bzip2, or are uns"
	.ascii	"ure about (1)\n   or (2), feel free to report it to me at: j"
	.ascii	"seward@bzip.org.\n   Sect"
	.string	"ion 4.3 of the user's manual describes the info a useful\n   bug report should have.  If the manual is available on your\n   system, please try and read it before mailing me.  If you don't\n   have the manual or can't be bothered to read it, mail me anyway.\n\n"
	.align 8
.LC39:
	.ascii	"\n%s: Caught a SIGSEGV or SIGBUS whilst decompressing.\n\n  "
	.ascii	" Possible causes are (most likely first):\n   (1) The compre"
	.ascii	"ssed data is corrupted, and bzip2's usual checks\n       fai"
	.ascii	"led to detect this.  Try bzip2 -tvv my_file.bz2.\n   (2) Thi"
	.ascii	"s computer has unreliable memory or cache hardware\n       ("
	.ascii	"a surprisingly common problem; try a different machine.)\n  "
	.ascii	" (3) A bug in the compiler used to create this executable\n "
	.ascii	"      (unlikely, if you didn't compile bzip2 yourself.)\n   "
	.ascii	"(4) A real bug in bzip2 -- I hope this should never be the c"
	.ascii	"ase.\n   The user's manual, Section 4.3, has more info on (2"
	.ascii	") and (3).\n   \n   If you suspect this is a bug in bzip2, o"
	.ascii	"r are unsure about (2)\n   or (3), feel free to report it to"
	.ascii	" me at: jseward@bzip.org.\n   Sect"
	.string	"ion 4.3 of the user's manual describes the info a useful\n   bug report should have.  If the manual is available on your\n   system, please try and read it before mailing me.  If you don't\n   have the manual or can't be bothered to read it, mail me anyway.\n\n"
	.text
	.type	mySIGSEGVorSIGBUScatcher, @function
mySIGSEGVorSIGBUScatcher:
.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	DWORD PTR -4[rbp], edi
	mov	eax, DWORD PTR opMode[rip]
	cmp	eax, 1
	jne	.L206
	mov	rdx, QWORD PTR progName[rip]
	mov	rax, QWORD PTR stderr[rip]
	lea	rsi, .LC38[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	jmp	.L207
.L206:
	mov	rdx, QWORD PTR progName[rip]
	mov	rax, QWORD PTR stderr[rip]
	lea	rsi, .LC39[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
.L207:
	call	showFileNames
	mov	eax, DWORD PTR opMode[rip]
	cmp	eax, 1
	jne	.L208
	mov	edi, 3
	call	cleanUpAndFail
.L208:
	call	cadvise
	mov	edi, 2
	call	cleanUpAndFail
	.cfi_endproc
.LFE24:
	.size	mySIGSEGVorSIGBUScatcher, .-mySIGSEGVorSIGBUScatcher
	.section	.rodata
	.align 8
.LC40:
	.string	"\n%s: couldn't allocate enough memory\n"
	.text
	.type	outOfMemory, @function
outOfMemory:
.LFB25:
	.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 progName[rip]
	mov	rax, QWORD PTR stderr[rip]
	lea	rsi, .LC40[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	call	showFileNames
	mov	edi, 1
	call	cleanUpAndFail
	.cfi_endproc
.LFE25:
	.size	outOfMemory, .-outOfMemory
	.section	.rodata
	.align 8
.LC41:
	.string	"bzip2: I'm not configured correctly for this platform!\n\tI require Int32, Int16 and Char to have sizes\n\tof 4, 2 and 1 bytes to run properly, and they don't.\n\tProbably you can fix this by defining them correctly,\n\tand recompiling.  Bye!\n"
	.text
	.type	configError, @function
configError:
.LFB26:
	.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 stderr[rip]
	mov	rcx, rax
	mov	edx, 235
	mov	esi, 1
	lea	rdi, .LC41[rip]
	call	fwrite@PLT
	mov	edi, 3
	call	setExit
	mov	eax, DWORD PTR exitValue[rip]
	mov	edi, eax
	call	exit@PLT
	.cfi_endproc
.LFE26:
	.size	configError, .-configError
	.type	pad, @function
pad:
.LFB27:
	.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
	mov	QWORD PTR -40[rbp], rdi
	mov	rax, QWORD PTR -40[rbp]
	mov	rdi, rax
	call	strlen@PLT
	mov	edx, eax
	mov	eax, DWORD PTR longestFileName[rip]
	cmp	edx, eax
	jge	.L216
	mov	DWORD PTR -20[rbp], 1
	jmp	.L214
.L215:
	mov	rax, QWORD PTR stderr[rip]
	mov	rsi, rax
	mov	edi, 32
	call	fputc@PLT
	add	DWORD PTR -20[rbp], 1
.L214:
	mov	ebx, DWORD PTR longestFileName[rip]
	mov	rax, QWORD PTR -40[rbp]
	mov	rdi, rax
	call	strlen@PLT
	mov	edx, eax
	mov	eax, ebx
	sub	eax, edx
	cmp	DWORD PTR -20[rbp], eax
	jle	.L215
	jmp	.L211
.L216:
	nop
.L211:
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE27:
	.size	pad, .-pad
	.section	.rodata
	.align 8
.LC42:
	.string	"bzip2: file name\n`%s'\nis suspiciously (more than %d chars) long.\nTry using a reasonable file name instead.  Sorry! :-)\n"
	.text
	.type	copyFileName, @function
copyFileName:
.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, 16
	mov	QWORD PTR -8[rbp], rdi
	mov	QWORD PTR -16[rbp], rsi
	mov	rax, QWORD PTR -16[rbp]
	mov	rdi, rax
	call	strlen@PLT
	cmp	rax, 1024
	jbe	.L218
	mov	rax, QWORD PTR stderr[rip]
	mov	rdx, QWORD PTR -16[rbp]
	mov	ecx, 1024
	lea	rsi, .LC42[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	edi, 1
	call	setExit
	mov	eax, DWORD PTR exitValue[rip]
	mov	edi, eax
	call	exit@PLT
.L218:
	mov	rcx, QWORD PTR -16[rbp]
	mov	rax, QWORD PTR -8[rbp]
	mov	edx, 1024
	mov	rsi, rcx
	mov	rdi, rax
	call	strncpy@PLT
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 1024
	mov	BYTE PTR [rax], 0
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE28:
	.size	copyFileName, .-copyFileName
	.section	.rodata
.LC43:
	.string	"rb"
	.text
	.type	fileExists, @function
fileExists:
.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	rax, QWORD PTR -24[rbp]
	lea	rsi, .LC43[rip]
	mov	rdi, rax
	call	fopen@PLT
	mov	QWORD PTR -8[rbp], rax
	cmp	QWORD PTR -8[rbp], 0
	setne	al
	mov	BYTE PTR -9[rbp], al
	cmp	QWORD PTR -8[rbp], 0
	je	.L220
	mov	rax, QWORD PTR -8[rbp]
	mov	rdi, rax
	call	fclose@PLT
.L220:
	movzx	eax, BYTE PTR -9[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE29:
	.size	fileExists, .-fileExists
	.type	fopen_output_safely, @function
fopen_output_safely:
.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, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	QWORD PTR -32[rbp], rsi
	mov	rax, QWORD PTR -24[rbp]
	mov	edx, 384
	mov	esi, 193
	mov	rdi, rax
	mov	eax, 0
	call	open@PLT
	mov	DWORD PTR -12[rbp], eax
	cmp	DWORD PTR -12[rbp], -1
	jne	.L223
	mov	eax, 0
	jmp	.L224
.L223:
	mov	rdx, QWORD PTR -32[rbp]
	mov	eax, DWORD PTR -12[rbp]
	mov	rsi, rdx
	mov	edi, eax
	call	fdopen@PLT
	mov	QWORD PTR -8[rbp], rax
	cmp	QWORD PTR -8[rbp], 0
	jne	.L225
	mov	eax, DWORD PTR -12[rbp]
	mov	edi, eax
	call	close@PLT
.L225:
	mov	rax, QWORD PTR -8[rbp]
.L224:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE30:
	.size	fopen_output_safely, .-fopen_output_safely
	.type	notAStandardFile, @function
notAStandardFile:
.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, 192
	mov	QWORD PTR -184[rbp], rdi
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	lea	rdx, -160[rbp]
	mov	rax, QWORD PTR -184[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	lstat@PLT
	mov	DWORD PTR -164[rbp], eax
	cmp	DWORD PTR -164[rbp], 0
	je	.L227
	mov	eax, 1
	jmp	.L230
.L227:
	mov	eax, DWORD PTR -136[rbp]
	and	eax, 61440
	cmp	eax, 32768
	jne	.L229
	mov	eax, 0
	jmp	.L230
.L229:
	mov	eax, 1
.L230:
	mov	rcx, QWORD PTR -8[rbp]
	sub	rcx, QWORD PTR fs:40
	je	.L231
	call	__stack_chk_fail@PLT
.L231:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE31:
	.size	notAStandardFile, .-notAStandardFile
	.type	countHardLinks, @function
countHardLinks:
.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, 192
	mov	QWORD PTR -184[rbp], rdi
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	lea	rdx, -160[rbp]
	mov	rax, QWORD PTR -184[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	lstat@PLT
	mov	DWORD PTR -164[rbp], eax
	cmp	DWORD PTR -164[rbp], 0
	je	.L233
	mov	eax, 0
	jmp	.L235
.L233:
	mov	rax, QWORD PTR -144[rbp]
	sub	eax, 1
.L235:
	mov	rcx, QWORD PTR -8[rbp]
	sub	rcx, QWORD PTR fs:40
	je	.L236
	call	__stack_chk_fail@PLT
.L236:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE32:
	.size	countHardLinks, .-countHardLinks
	.local	fileMetaInfo
	.comm	fileMetaInfo,144,32
	.type	saveInputFileMetaInfo, @function
saveInputFileMetaInfo:
.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, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	rax, QWORD PTR -24[rbp]
	lea	rsi, fileMetaInfo[rip]
	mov	rdi, rax
	call	stat@PLT
	mov	DWORD PTR -4[rbp], eax
	cmp	DWORD PTR -4[rbp], 0
	je	.L239
	call	ioError
.L239:
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE33:
	.size	saveInputFileMetaInfo, .-saveInputFileMetaInfo
	.type	applySavedTimeInfoToOutputFile, @function
applySavedTimeInfoToOutputFile:
.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, 64
	mov	QWORD PTR -56[rbp], rdi
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	rax, QWORD PTR fileMetaInfo[rip+72]
	mov	QWORD PTR -32[rbp], rax
	mov	rax, QWORD PTR fileMetaInfo[rip+88]
	mov	QWORD PTR -24[rbp], rax
	lea	rdx, -32[rbp]
	mov	rax, QWORD PTR -56[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	utime@PLT
	mov	DWORD PTR -36[rbp], eax
	cmp	DWORD PTR -36[rbp], 0
	je	.L243
	call	ioError
.L243:
	nop
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L242
	call	__stack_chk_fail@PLT
.L242:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE34:
	.size	applySavedTimeInfoToOutputFile, .-applySavedTimeInfoToOutputFile
	.type	applySavedFileAttrToOutputFile, @function
applySavedFileAttrToOutputFile:
.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	edx, DWORD PTR fileMetaInfo[rip+24]
	mov	eax, DWORD PTR -20[rbp]
	mov	esi, edx
	mov	edi, eax
	call	fchmod@PLT
	mov	DWORD PTR -4[rbp], eax
	cmp	DWORD PTR -4[rbp], 0
	je	.L245
	call	ioError
.L245:
	mov	edx, DWORD PTR fileMetaInfo[rip+32]
	mov	ecx, DWORD PTR fileMetaInfo[rip+28]
	mov	eax, DWORD PTR -20[rbp]
	mov	esi, ecx
	mov	edi, eax
	call	fchown@PLT
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE35:
	.size	applySavedFileAttrToOutputFile, .-applySavedFileAttrToOutputFile
	.type	containsDubiousChars, @function
containsDubiousChars:
.LFB36:
	.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 -8[rbp], rdi
	mov	eax, 0
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE36:
	.size	containsDubiousChars, .-containsDubiousChars
	.globl	zSuffix
	.section	.rodata
.LC44:
	.string	".bz2"
.LC45:
	.string	".bz"
.LC46:
	.string	".tbz2"
.LC47:
	.string	".tbz"
	.section	.data.rel.local,"aw"
	.align 32
	.type	zSuffix, @object
	.size	zSuffix, 32
zSuffix:
	.quad	.LC44
	.quad	.LC45
	.quad	.LC46
	.quad	.LC47
	.globl	unzSuffix
	.section	.rodata
.LC48:
	.string	""
.LC49:
	.string	".tar"
	.section	.data.rel.local
	.align 32
	.type	unzSuffix, @object
	.size	unzSuffix, 32
unzSuffix:
	.quad	.LC48
	.quad	.LC48
	.quad	.LC49
	.quad	.LC49
	.text
	.type	hasSuffix, @function
hasSuffix:
.LFB37:
	.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	QWORD PTR -32[rbp], rsi
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	strlen@PLT
	mov	DWORD PTR -8[rbp], eax
	mov	rax, QWORD PTR -32[rbp]
	mov	rdi, rax
	call	strlen@PLT
	mov	DWORD PTR -4[rbp], eax
	mov	eax, DWORD PTR -8[rbp]
	cmp	eax, DWORD PTR -4[rbp]
	jge	.L249
	mov	eax, 0
	jmp	.L250
.L249:
	mov	eax, DWORD PTR -8[rbp]
	cdqe
	mov	edx, DWORD PTR -4[rbp]
	movsx	rdx, edx
	sub	rax, rdx
	mov	rcx, rax
	mov	rax, QWORD PTR -24[rbp]
	lea	rdx, [rcx+rax]
	mov	rax, QWORD PTR -32[rbp]
	mov	rsi, rax
	mov	rdi, rdx
	call	strcmp@PLT
	test	eax, eax
	jne	.L251
	mov	eax, 1
	jmp	.L250
.L251:
	mov	eax, 0
.L250:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE37:
	.size	hasSuffix, .-hasSuffix
	.type	mapSuffix, @function
mapSuffix:
.LFB38:
	.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
	mov	QWORD PTR -24[rbp], rdi
	mov	QWORD PTR -32[rbp], rsi
	mov	QWORD PTR -40[rbp], rdx
	mov	rdx, QWORD PTR -32[rbp]
	mov	rax, QWORD PTR -24[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	hasSuffix
	test	al, al
	jne	.L253
	mov	eax, 0
	jmp	.L254
.L253:
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	strlen@PLT
	mov	rbx, rax
	mov	rax, QWORD PTR -32[rbp]
	mov	rdi, rax
	call	strlen@PLT
	sub	rbx, rax
	mov	rdx, rbx
	mov	rax, QWORD PTR -24[rbp]
	add	rax, rdx
	mov	BYTE PTR [rax], 0
	mov	rdx, QWORD PTR -40[rbp]
	mov	rax, QWORD PTR -24[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	strcat@PLT
	mov	eax, 1
.L254:
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE38:
	.size	mapSuffix, .-mapSuffix
	.section	.rodata
.LC50:
	.string	"compress: bad modes\n"
.LC51:
	.string	"(stdin)"
.LC52:
	.string	"(stdout)"
	.align 8
.LC53:
	.string	"%s: There are no files matching `%s'.\n"
	.align 8
.LC54:
	.string	"%s: Can't open input file %s: %s.\n"
	.align 8
.LC55:
	.string	"%s: Input file %s already has %s suffix.\n"
	.align 8
.LC56:
	.string	"%s: Input file %s is a directory.\n"
	.align 8
.LC57:
	.string	"%s: Input file %s is not a normal file.\n"
	.align 8
.LC58:
	.string	"%s: Output file %s already exists.\n"
.LC59:
	.string	"s"
	.align 8
.LC60:
	.string	"%s: Input file %s has %d other link%s.\n"
	.align 8
.LC61:
	.string	"%s: I won't write compressed data to a terminal.\n"
	.align 8
.LC62:
	.string	"%s: For help, type: `%s --help'.\n"
.LC63:
	.string	"wb"
	.align 8
.LC64:
	.string	"%s: Can't create output file %s: %s.\n"
.LC65:
	.string	"compress: bad srcMode"
.LC66:
	.string	"  %s: "
	.text
	.type	compress, @function
compress:
.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, 208
	mov	QWORD PTR -200[rbp], rdi
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	BYTE PTR deleteOutputOnInterrupt[rip], 0
	cmp	QWORD PTR -200[rbp], 0
	jne	.L256
	mov	eax, DWORD PTR srcMode[rip]
	cmp	eax, 1
	je	.L256
	lea	rdi, .LC50[rip]
	call	panic
.L256:
	mov	eax, DWORD PTR srcMode[rip]
	cmp	eax, 3
	je	.L257
	cmp	eax, 3
	jg	.L258
	cmp	eax, 1
	je	.L259
	cmp	eax, 2
	je	.L260
	jmp	.L258
.L259:
	lea	rsi, .LC51[rip]
	lea	rdi, inName[rip]
	call	copyFileName
	lea	rsi, .LC52[rip]
	lea	rdi, outName[rip]
	call	copyFileName
	jmp	.L258
.L257:
	mov	rax, QWORD PTR -200[rbp]
	mov	rsi, rax
	lea	rdi, inName[rip]
	call	copyFileName
	mov	rax, QWORD PTR -200[rbp]
	mov	rsi, rax
	lea	rdi, outName[rip]
	call	copyFileName
	lea	rdi, outName[rip]
	call	strlen@PLT
	mov	rdx, rax
	lea	rax, outName[rip]
	add	rax, rdx
	mov	DWORD PTR [rax], 846881326
	mov	BYTE PTR 4[rax], 0
	jmp	.L258
.L260:
	mov	rax, QWORD PTR -200[rbp]
	mov	rsi, rax
	lea	rdi, inName[rip]
	call	copyFileName
	lea	rsi, .LC52[rip]
	lea	rdi, outName[rip]
	call	copyFileName
	nop
.L258:
	mov	eax, DWORD PTR srcMode[rip]
	cmp	eax, 1
	je	.L261
	lea	rdi, inName[rip]
	call	containsDubiousChars
	test	al, al
	je	.L261
	movzx	eax, BYTE PTR noisy[rip]
	test	al, al
	je	.L262
	mov	rdx, QWORD PTR progName[rip]
	mov	rax, QWORD PTR stderr[rip]
	lea	rcx, inName[rip]
	lea	rsi, .LC53[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
.L262:
	mov	edi, 1
	call	setExit
	jmp	.L255
.L261:
	mov	eax, DWORD PTR srcMode[rip]
	cmp	eax, 1
	je	.L264
	lea	rdi, inName[rip]
	call	fileExists
	test	al, al
	jne	.L264
	call	__errno_location@PLT
	mov	eax, DWORD PTR [rax]
	mov	edi, eax
	call	strerror@PLT
	mov	rcx, rax
	mov	rdx, QWORD PTR progName[rip]
	mov	rax, QWORD PTR stderr[rip]
	mov	r8, rcx
	lea	rcx, inName[rip]
	lea	rsi, .LC54[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	edi, 1
	call	setExit
	jmp	.L255
.L264:
	mov	DWORD PTR -188[rbp], 0
	jmp	.L265
.L268:
	mov	eax, DWORD PTR -188[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, zSuffix[rip]
	mov	rax, QWORD PTR [rdx+rax]
	mov	rsi, rax
	lea	rdi, inName[rip]
	call	hasSuffix
	test	al, al
	je	.L266
	movzx	eax, BYTE PTR noisy[rip]
	test	al, al
	je	.L267
	mov	eax, DWORD PTR -188[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, zSuffix[rip]
	mov	rcx, QWORD PTR [rdx+rax]
	mov	rdx, QWORD PTR progName[rip]
	mov	rax, QWORD PTR stderr[rip]
	mov	r8, rcx
	lea	rcx, inName[rip]
	lea	rsi, .LC55[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
.L267:
	mov	edi, 1
	call	setExit
	jmp	.L255
.L266:
	add	DWORD PTR -188[rbp], 1
.L265:
	cmp	DWORD PTR -188[rbp], 3
	jle	.L268
	mov	eax, DWORD PTR srcMode[rip]
	cmp	eax, 3
	je	.L269
	mov	eax, DWORD PTR srcMode[rip]
	cmp	eax, 2
	jne	.L270
.L269:
	lea	rax, -160[rbp]
	mov	rsi, rax
	lea	rdi, inName[rip]
	call	stat@PLT
	mov	eax, DWORD PTR -136[rbp]
	and	eax, 61440
	cmp	eax, 16384
	jne	.L270
	mov	rdx, QWORD PTR progName[rip]
	mov	rax, QWORD PTR stderr[rip]
	lea	rcx, inName[rip]
	lea	rsi, .LC56[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	edi, 1
	call	setExit
	jmp	.L255
.L270:
	mov	eax, DWORD PTR srcMode[rip]
	cmp	eax, 3
	jne	.L271
	movzx	eax, BYTE PTR forceOverwrite[rip]
	test	al, al
	jne	.L271
	lea	rdi, inName[rip]
	call	notAStandardFile
	test	al, al
	je	.L271
	movzx	eax, BYTE PTR noisy[rip]
	test	al, al
	je	.L272
	mov	rdx, QWORD PTR progName[rip]
	mov	rax, QWORD PTR stderr[rip]
	lea	rcx, inName[rip]
	lea	rsi, .LC57[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
.L272:
	mov	edi, 1
	call	setExit
	jmp	.L255
.L271:
	mov	eax, DWORD PTR srcMode[rip]
	cmp	eax, 3
	jne	.L273
	lea	rdi, outName[rip]
	call	fileExists
	test	al, al
	je	.L273
	movzx	eax, BYTE PTR forceOverwrite[rip]
	test	al, al
	je	.L274
	lea	rdi, outName[rip]
	call	remove@PLT
	jmp	.L273
.L274:
	mov	rdx, QWORD PTR progName[rip]
	mov	rax, QWORD PTR stderr[rip]
	lea	rcx, outName[rip]
	lea	rsi, .LC58[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	edi, 1
	call	setExit
	jmp	.L255
.L273:
	mov	eax, DWORD PTR srcMode[rip]
	cmp	eax, 3
	jne	.L275
	movzx	eax, BYTE PTR forceOverwrite[rip]
	test	al, al
	jne	.L275
	lea	rdi, inName[rip]
	call	countHardLinks
	mov	DWORD PTR -184[rbp], eax
	cmp	DWORD PTR -184[rbp], 0
	jle	.L275
	cmp	DWORD PTR -184[rbp], 1
	jle	.L276
	lea	rax, .LC59[rip]
	jmp	.L277
.L276:
	lea	rax, .LC48[rip]
.L277:
	mov	rdx, QWORD PTR progName[rip]
	mov	rdi, QWORD PTR stderr[rip]
	mov	ecx, DWORD PTR -184[rbp]
	mov	r9, rax
	mov	r8d, ecx
	lea	rcx, inName[rip]
	lea	rsi, .LC60[rip]
	mov	eax, 0
	call	fprintf@PLT
	mov	edi, 1
	call	setExit
	jmp	.L255
.L275:
	mov	eax, DWORD PTR srcMode[rip]
	cmp	eax, 3
	jne	.L278
	lea	rdi, inName[rip]
	call	saveInputFileMetaInfo
.L278:
	mov	eax, DWORD PTR srcMode[rip]
	cmp	eax, 3
	je	.L279
	cmp	eax, 3
	jg	.L280
	cmp	eax, 1
	je	.L281
	cmp	eax, 2
	je	.L282
	jmp	.L280
.L281:
	mov	rax, QWORD PTR stdin[rip]
	mov	QWORD PTR -176[rbp], rax
	mov	rax, QWORD PTR stdout[rip]
	mov	QWORD PTR -168[rbp], rax
	mov	rax, QWORD PTR stdout[rip]
	mov	rdi, rax
	call	fileno@PLT
	mov	edi, eax
	call	isatty@PLT
	test	eax, eax
	je	.L296
	mov	rdx, QWORD PTR progName[rip]
	mov	rax, QWORD PTR stderr[rip]
	lea	rsi, .LC61[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	rcx, QWORD PTR progName[rip]
	mov	rdx, QWORD PTR progName[rip]
	mov	rax, QWORD PTR stderr[rip]
	lea	rsi, .LC62[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	edi, 1
	call	setExit
	jmp	.L255
.L282:
	lea	rsi, .LC43[rip]
	lea	rdi, inName[rip]
	call	fopen@PLT
	mov	QWORD PTR -176[rbp], rax
	mov	rax, QWORD PTR stdout[rip]
	mov	QWORD PTR -168[rbp], rax
	mov	rax, QWORD PTR stdout[rip]
	mov	rdi, rax
	call	fileno@PLT
	mov	edi, eax
	call	isatty@PLT
	test	eax, eax
	je	.L285
	mov	rdx, QWORD PTR progName[rip]
	mov	rax, QWORD PTR stderr[rip]
	lea	rsi, .LC61[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	rcx, QWORD PTR progName[rip]
	mov	rdx, QWORD PTR progName[rip]
	mov	rax, QWORD PTR stderr[rip]
	lea	rsi, .LC62[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	cmp	QWORD PTR -176[rbp], 0
	je	.L286
	mov	rax, QWORD PTR -176[rbp]
	mov	rdi, rax
	call	fclose@PLT
.L286:
	mov	edi, 1
	call	setExit
	jmp	.L255
.L285:
	cmp	QWORD PTR -176[rbp], 0
	jne	.L297
	call	__errno_location@PLT
	mov	eax, DWORD PTR [rax]
	mov	edi, eax
	call	strerror@PLT
	mov	rcx, rax
	mov	rdx, QWORD PTR progName[rip]
	mov	rax, QWORD PTR stderr[rip]
	mov	r8, rcx
	lea	rcx, inName[rip]
	lea	rsi, .LC54[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	edi, 1
	call	setExit
	jmp	.L255
.L279:
	lea	rsi, .LC43[rip]
	lea	rdi, inName[rip]
	call	fopen@PLT
	mov	QWORD PTR -176[rbp], rax
	lea	rsi, .LC63[rip]
	lea	rdi, outName[rip]
	call	fopen_output_safely
	mov	QWORD PTR -168[rbp], rax
	cmp	QWORD PTR -168[rbp], 0
	jne	.L288
	call	__errno_location@PLT
	mov	eax, DWORD PTR [rax]
	mov	edi, eax
	call	strerror@PLT
	mov	rcx, rax
	mov	rdx, QWORD PTR progName[rip]
	mov	rax, QWORD PTR stderr[rip]
	mov	r8, rcx
	lea	rcx, outName[rip]
	lea	rsi, .LC64[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	cmp	QWORD PTR -176[rbp], 0
	je	.L289
	mov	rax, QWORD PTR -176[rbp]
	mov	rdi, rax
	call	fclose@PLT
.L289:
	mov	edi, 1
	call	setExit
	jmp	.L255
.L288:
	cmp	QWORD PTR -176[rbp], 0
	jne	.L298
	call	__errno_location@PLT
	mov	eax, DWORD PTR [rax]
	mov	edi, eax
	call	strerror@PLT
	mov	rcx, rax
	mov	rdx, QWORD PTR progName[rip]
	mov	rax, QWORD PTR stderr[rip]
	mov	r8, rcx
	lea	rcx, inName[rip]
	lea	rsi, .LC54[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	cmp	QWORD PTR -168[rbp], 0
	je	.L291
	mov	rax, QWORD PTR -168[rbp]
	mov	rdi, rax
	call	fclose@PLT
.L291:
	mov	edi, 1
	call	setExit
	jmp	.L255
.L280:
	lea	rdi, .LC65[rip]
	call	panic
.L296:
	nop
	jmp	.L284
.L297:
	nop
	jmp	.L284
.L298:
	nop
.L284:
	mov	eax, DWORD PTR verbosity[rip]
	test	eax, eax
	jle	.L292
	mov	rax, QWORD PTR stderr[rip]
	lea	rdx, inName[rip]
	lea	rsi, .LC66[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	lea	rdi, inName[rip]
	call	pad
	mov	rax, QWORD PTR stderr[rip]
	mov	rdi, rax
	call	fflush@PLT
.L292:
	mov	rax, QWORD PTR -168[rbp]
	mov	QWORD PTR outputHandleJustInCase[rip], rax
	mov	BYTE PTR deleteOutputOnInterrupt[rip], 1
	mov	rdx, QWORD PTR -168[rbp]
	mov	rax, QWORD PTR -176[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	compressStream
	mov	QWORD PTR outputHandleJustInCase[rip], 0
	mov	eax, DWORD PTR srcMode[rip]
	cmp	eax, 3
	jne	.L293
	lea	rdi, outName[rip]
	call	applySavedTimeInfoToOutputFile
	mov	BYTE PTR deleteOutputOnInterrupt[rip], 0
	movzx	eax, BYTE PTR keepInputFiles[rip]
	test	al, al
	jne	.L293
	lea	rdi, inName[rip]
	call	remove@PLT
	mov	DWORD PTR -180[rbp], eax
	cmp	DWORD PTR -180[rbp], 0
	je	.L293
	call	ioError
.L293:
	mov	BYTE PTR deleteOutputOnInterrupt[rip], 0
.L255:
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L295
	call	__stack_chk_fail@PLT
.L295:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE39:
	.size	compress, .-compress
	.section	.rodata
.LC67:
	.string	"uncompress: bad modes\n"
	.align 8
.LC68:
	.string	"%s: Can't guess original name for %s -- using %s\n"
	.align 8
.LC69:
	.string	"%s: I won't read compressed data from a terminal.\n"
	.align 8
.LC70:
	.string	"%s: Can't open input file %s:%s.\n"
.LC71:
	.string	"uncompress: bad srcMode"
.LC72:
	.string	"done\n"
.LC73:
	.string	"not a bzip2 file.\n"
.LC74:
	.string	"%s: %s is not a bzip2 file.\n"
	.text
	.type	uncompress, @function
uncompress:
.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, 224
	mov	QWORD PTR -216[rbp], rdi
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	BYTE PTR deleteOutputOnInterrupt[rip], 0
	cmp	QWORD PTR -216[rbp], 0
	jne	.L300
	mov	eax, DWORD PTR srcMode[rip]
	cmp	eax, 1
	je	.L300
	lea	rdi, .LC67[rip]
	call	panic
.L300:
	mov	BYTE PTR -194[rbp], 0
	mov	eax, DWORD PTR srcMode[rip]
	cmp	eax, 3
	je	.L301
	cmp	eax, 3
	jg	.L302
	cmp	eax, 1
	je	.L303
	cmp	eax, 2
	je	.L304
	jmp	.L302
.L303:
	lea	rsi, .LC51[rip]
	lea	rdi, inName[rip]
	call	copyFileName
	lea	rsi, .LC52[rip]
	lea	rdi, outName[rip]
	call	copyFileName
	jmp	.L302
.L301:
	mov	rax, QWORD PTR -216[rbp]
	mov	rsi, rax
	lea	rdi, inName[rip]
	call	copyFileName
	mov	rax, QWORD PTR -216[rbp]
	mov	rsi, rax
	lea	rdi, outName[rip]
	call	copyFileName
	mov	DWORD PTR -192[rbp], 0
	jmp	.L305
.L307:
	mov	eax, DWORD PTR -192[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, unzSuffix[rip]
	mov	rdx, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -192[rbp]
	cdqe
	lea	rcx, 0[0+rax*8]
	lea	rax, zSuffix[rip]
	mov	rax, QWORD PTR [rcx+rax]
	mov	rsi, rax
	lea	rdi, outName[rip]
	call	mapSuffix
	test	al, al
	jne	.L343
	add	DWORD PTR -192[rbp], 1
.L305:
	cmp	DWORD PTR -192[rbp], 3
	jle	.L307
	mov	BYTE PTR -194[rbp], 1
	lea	rdi, outName[rip]
	call	strlen@PLT
	mov	rdx, rax
	lea	rax, outName[rip]
	add	rax, rdx
	mov	DWORD PTR [rax], 1953853230
	mov	BYTE PTR 4[rax], 0
	jmp	.L302
.L304:
	mov	rax, QWORD PTR -216[rbp]
	mov	rsi, rax
	lea	rdi, inName[rip]
	call	copyFileName
	lea	rsi, .LC52[rip]
	lea	rdi, outName[rip]
	call	copyFileName
	jmp	.L302
.L343:
	nop
.L302:
	mov	eax, DWORD PTR srcMode[rip]
	cmp	eax, 1
	je	.L308
	lea	rdi, inName[rip]
	call	containsDubiousChars
	test	al, al
	je	.L308
	movzx	eax, BYTE PTR noisy[rip]
	test	al, al
	je	.L309
	mov	rdx, QWORD PTR progName[rip]
	mov	rax, QWORD PTR stderr[rip]
	lea	rcx, inName[rip]
	lea	rsi, .LC53[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
.L309:
	mov	edi, 1
	call	setExit
	jmp	.L299
.L308:
	mov	eax, DWORD PTR srcMode[rip]
	cmp	eax, 1
	je	.L311
	lea	rdi, inName[rip]
	call	fileExists
	test	al, al
	jne	.L311
	call	__errno_location@PLT
	mov	eax, DWORD PTR [rax]
	mov	edi, eax
	call	strerror@PLT
	mov	rcx, rax
	mov	rdx, QWORD PTR progName[rip]
	mov	rax, QWORD PTR stderr[rip]
	mov	r8, rcx
	lea	rcx, inName[rip]
	lea	rsi, .LC54[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	edi, 1
	call	setExit
	jmp	.L299
.L311:
	mov	eax, DWORD PTR srcMode[rip]
	cmp	eax, 3
	je	.L312
	mov	eax, DWORD PTR srcMode[rip]
	cmp	eax, 2
	jne	.L313
.L312:
	lea	rax, -160[rbp]
	mov	rsi, rax
	lea	rdi, inName[rip]
	call	stat@PLT
	mov	eax, DWORD PTR -136[rbp]
	and	eax, 61440
	cmp	eax, 16384
	jne	.L313
	mov	rdx, QWORD PTR progName[rip]
	mov	rax, QWORD PTR stderr[rip]
	lea	rcx, inName[rip]
	lea	rsi, .LC56[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	edi, 1
	call	setExit
	jmp	.L299
.L313:
	mov	eax, DWORD PTR srcMode[rip]
	cmp	eax, 3
	jne	.L314
	movzx	eax, BYTE PTR forceOverwrite[rip]
	test	al, al
	jne	.L314
	lea	rdi, inName[rip]
	call	notAStandardFile
	test	al, al
	je	.L314
	movzx	eax, BYTE PTR noisy[rip]
	test	al, al
	je	.L315
	mov	rdx, QWORD PTR progName[rip]
	mov	rax, QWORD PTR stderr[rip]
	lea	rcx, inName[rip]
	lea	rsi, .LC57[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
.L315:
	mov	edi, 1
	call	setExit
	jmp	.L299
.L314:
	cmp	BYTE PTR -194[rbp], 0
	je	.L316
	movzx	eax, BYTE PTR noisy[rip]
	test	al, al
	je	.L316
	mov	rdx, QWORD PTR progName[rip]
	mov	rax, QWORD PTR stderr[rip]
	lea	r8, outName[rip]
	lea	rcx, inName[rip]
	lea	rsi, .LC68[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
.L316:
	mov	eax, DWORD PTR srcMode[rip]
	cmp	eax, 3
	jne	.L317
	lea	rdi, outName[rip]
	call	fileExists
	test	al, al
	je	.L317
	movzx	eax, BYTE PTR forceOverwrite[rip]
	test	al, al
	je	.L318
	lea	rdi, outName[rip]
	call	remove@PLT
	jmp	.L317
.L318:
	mov	rdx, QWORD PTR progName[rip]
	mov	rax, QWORD PTR stderr[rip]
	lea	rcx, outName[rip]
	lea	rsi, .LC58[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	edi, 1
	call	setExit
	jmp	.L299
.L317:
	mov	eax, DWORD PTR srcMode[rip]
	cmp	eax, 3
	jne	.L319
	movzx	eax, BYTE PTR forceOverwrite[rip]
	test	al, al
	jne	.L319
	lea	rdi, inName[rip]
	call	countHardLinks
	mov	DWORD PTR -188[rbp], eax
	cmp	DWORD PTR -188[rbp], 0
	jle	.L319
	cmp	DWORD PTR -188[rbp], 1
	jle	.L320
	lea	rax, .LC59[rip]
	jmp	.L321
.L320:
	lea	rax, .LC48[rip]
.L321:
	mov	rdx, QWORD PTR progName[rip]
	mov	rdi, QWORD PTR stderr[rip]
	mov	ecx, DWORD PTR -188[rbp]
	mov	r9, rax
	mov	r8d, ecx
	lea	rcx, inName[rip]
	lea	rsi, .LC60[rip]
	mov	eax, 0
	call	fprintf@PLT
	mov	edi, 1
	call	setExit
	jmp	.L299
.L319:
	mov	eax, DWORD PTR srcMode[rip]
	cmp	eax, 3
	jne	.L322
	lea	rdi, inName[rip]
	call	saveInputFileMetaInfo
.L322:
	mov	eax, DWORD PTR srcMode[rip]
	cmp	eax, 3
	je	.L323
	cmp	eax, 3
	jg	.L324
	cmp	eax, 1
	je	.L325
	cmp	eax, 2
	je	.L326
	jmp	.L324
.L325:
	mov	rax, QWORD PTR stdin[rip]
	mov	QWORD PTR -176[rbp], rax
	mov	rax, QWORD PTR stdout[rip]
	mov	QWORD PTR -168[rbp], rax
	mov	rax, QWORD PTR stdin[rip]
	mov	rdi, rax
	call	fileno@PLT
	mov	edi, eax
	call	isatty@PLT
	test	eax, eax
	je	.L344
	mov	rdx, QWORD PTR progName[rip]
	mov	rax, QWORD PTR stderr[rip]
	lea	rsi, .LC69[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	rcx, QWORD PTR progName[rip]
	mov	rdx, QWORD PTR progName[rip]
	mov	rax, QWORD PTR stderr[rip]
	lea	rsi, .LC62[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	edi, 1
	call	setExit
	jmp	.L299
.L326:
	lea	rsi, .LC43[rip]
	lea	rdi, inName[rip]
	call	fopen@PLT
	mov	QWORD PTR -176[rbp], rax
	mov	rax, QWORD PTR stdout[rip]
	mov	QWORD PTR -168[rbp], rax
	cmp	QWORD PTR -176[rbp], 0
	jne	.L345
	call	__errno_location@PLT
	mov	eax, DWORD PTR [rax]
	mov	edi, eax
	call	strerror@PLT
	mov	rcx, rax
	mov	rdx, QWORD PTR progName[rip]
	mov	rax, QWORD PTR stderr[rip]
	mov	r8, rcx
	lea	rcx, inName[rip]
	lea	rsi, .LC70[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	cmp	QWORD PTR -176[rbp], 0
	je	.L330
	mov	rax, QWORD PTR -176[rbp]
	mov	rdi, rax
	call	fclose@PLT
.L330:
	mov	edi, 1
	call	setExit
	jmp	.L299
.L323:
	lea	rsi, .LC43[rip]
	lea	rdi, inName[rip]
	call	fopen@PLT
	mov	QWORD PTR -176[rbp], rax
	lea	rsi, .LC63[rip]
	lea	rdi, outName[rip]
	call	fopen_output_safely
	mov	QWORD PTR -168[rbp], rax
	cmp	QWORD PTR -168[rbp], 0
	jne	.L331
	call	__errno_location@PLT
	mov	eax, DWORD PTR [rax]
	mov	edi, eax
	call	strerror@PLT
	mov	rcx, rax
	mov	rdx, QWORD PTR progName[rip]
	mov	rax, QWORD PTR stderr[rip]
	mov	r8, rcx
	lea	rcx, outName[rip]
	lea	rsi, .LC64[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	cmp	QWORD PTR -176[rbp], 0
	je	.L332
	mov	rax, QWORD PTR -176[rbp]
	mov	rdi, rax
	call	fclose@PLT
.L332:
	mov	edi, 1
	call	setExit
	jmp	.L299
.L331:
	cmp	QWORD PTR -176[rbp], 0
	jne	.L346
	call	__errno_location@PLT
	mov	eax, DWORD PTR [rax]
	mov	edi, eax
	call	strerror@PLT
	mov	rcx, rax
	mov	rdx, QWORD PTR progName[rip]
	mov	rax, QWORD PTR stderr[rip]
	mov	r8, rcx
	lea	rcx, inName[rip]
	lea	rsi, .LC54[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	cmp	QWORD PTR -168[rbp], 0
	je	.L334
	mov	rax, QWORD PTR -168[rbp]
	mov	rdi, rax
	call	fclose@PLT
.L334:
	mov	edi, 1
	call	setExit
	jmp	.L299
.L324:
	lea	rdi, .LC71[rip]
	call	panic
.L344:
	nop
	jmp	.L328
.L345:
	nop
	jmp	.L328
.L346:
	nop
.L328:
	mov	eax, DWORD PTR verbosity[rip]
	test	eax, eax
	jle	.L335
	mov	rax, QWORD PTR stderr[rip]
	lea	rdx, inName[rip]
	lea	rsi, .LC66[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	lea	rdi, inName[rip]
	call	pad
	mov	rax, QWORD PTR stderr[rip]
	mov	rdi, rax
	call	fflush@PLT
.L335:
	mov	rax, QWORD PTR -168[rbp]
	mov	QWORD PTR outputHandleJustInCase[rip], rax
	mov	BYTE PTR deleteOutputOnInterrupt[rip], 1
	mov	rdx, QWORD PTR -168[rbp]
	mov	rax, QWORD PTR -176[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	uncompressStream
	mov	BYTE PTR -193[rbp], al
	mov	QWORD PTR outputHandleJustInCase[rip], 0
	cmp	BYTE PTR -193[rbp], 0
	je	.L336
	mov	eax, DWORD PTR srcMode[rip]
	cmp	eax, 3
	jne	.L337
	lea	rdi, outName[rip]
	call	applySavedTimeInfoToOutputFile
	mov	BYTE PTR deleteOutputOnInterrupt[rip], 0
	movzx	eax, BYTE PTR keepInputFiles[rip]
	test	al, al
	jne	.L337
	lea	rdi, inName[rip]
	call	remove@PLT
	mov	DWORD PTR -180[rbp], eax
	cmp	DWORD PTR -180[rbp], 0
	je	.L337
	call	ioError
.L336:
	mov	BYTE PTR unzFailsExist[rip], 1
	mov	BYTE PTR deleteOutputOnInterrupt[rip], 0
	mov	eax, DWORD PTR srcMode[rip]
	cmp	eax, 3
	jne	.L337
	lea	rdi, outName[rip]
	call	remove@PLT
	mov	DWORD PTR -184[rbp], eax
	cmp	DWORD PTR -184[rbp], 0
	je	.L337
	call	ioError
.L337:
	mov	BYTE PTR deleteOutputOnInterrupt[rip], 0
	cmp	BYTE PTR -193[rbp], 0
	je	.L338
	mov	eax, DWORD PTR verbosity[rip]
	test	eax, eax
	jle	.L299
	mov	rax, QWORD PTR stderr[rip]
	mov	rcx, rax
	mov	edx, 5
	mov	esi, 1
	lea	rdi, .LC72[rip]
	call	fwrite@PLT
	jmp	.L299
.L338:
	mov	edi, 2
	call	setExit
	mov	eax, DWORD PTR verbosity[rip]
	test	eax, eax
	jle	.L340
	mov	rax, QWORD PTR stderr[rip]
	mov	rcx, rax
	mov	edx, 18
	mov	esi, 1
	lea	rdi, .LC73[rip]
	call	fwrite@PLT
	jmp	.L299
.L340:
	mov	rdx, QWORD PTR progName[rip]
	mov	rax, QWORD PTR stderr[rip]
	lea	rcx, inName[rip]
	lea	rsi, .LC74[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
.L299:
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L342
	call	__stack_chk_fail@PLT
.L342:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE40:
	.size	uncompress, .-uncompress
	.section	.rodata
.LC75:
	.string	"testf: bad modes\n"
.LC76:
	.string	"(none)"
.LC77:
	.string	"%s: Can't open input %s: %s.\n"
.LC78:
	.string	"testf: bad srcMode"
.LC79:
	.string	"ok\n"
	.text
	.type	testf, @function
testf:
.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, 192
	mov	QWORD PTR -184[rbp], rdi
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	BYTE PTR deleteOutputOnInterrupt[rip], 0
	cmp	QWORD PTR -184[rbp], 0
	jne	.L348
	mov	eax, DWORD PTR srcMode[rip]
	cmp	eax, 1
	je	.L348
	lea	rdi, .LC75[rip]
	call	panic
.L348:
	lea	rsi, .LC76[rip]
	lea	rdi, outName[rip]
	call	copyFileName
	mov	eax, DWORD PTR srcMode[rip]
	cmp	eax, 3
	je	.L349
	cmp	eax, 3
	jg	.L350
	cmp	eax, 1
	je	.L351
	cmp	eax, 2
	je	.L352
	jmp	.L350
.L351:
	lea	rsi, .LC51[rip]
	lea	rdi, inName[rip]
	call	copyFileName
	jmp	.L350
.L349:
	mov	rax, QWORD PTR -184[rbp]
	mov	rsi, rax
	lea	rdi, inName[rip]
	call	copyFileName
	jmp	.L350
.L352:
	mov	rax, QWORD PTR -184[rbp]
	mov	rsi, rax
	lea	rdi, inName[rip]
	call	copyFileName
	nop
.L350:
	mov	eax, DWORD PTR srcMode[rip]
	cmp	eax, 1
	je	.L353
	lea	rdi, inName[rip]
	call	containsDubiousChars
	test	al, al
	je	.L353
	movzx	eax, BYTE PTR noisy[rip]
	test	al, al
	je	.L354
	mov	rdx, QWORD PTR progName[rip]
	mov	rax, QWORD PTR stderr[rip]
	lea	rcx, inName[rip]
	lea	rsi, .LC53[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
.L354:
	mov	edi, 1
	call	setExit
	jmp	.L347
.L353:
	mov	eax, DWORD PTR srcMode[rip]
	cmp	eax, 1
	je	.L356
	lea	rdi, inName[rip]
	call	fileExists
	test	al, al
	jne	.L356
	call	__errno_location@PLT
	mov	eax, DWORD PTR [rax]
	mov	edi, eax
	call	strerror@PLT
	mov	rcx, rax
	mov	rdx, QWORD PTR progName[rip]
	mov	rax, QWORD PTR stderr[rip]
	mov	r8, rcx
	lea	rcx, inName[rip]
	lea	rsi, .LC77[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	edi, 1
	call	setExit
	jmp	.L347
.L356:
	mov	eax, DWORD PTR srcMode[rip]
	cmp	eax, 1
	je	.L357
	lea	rax, -160[rbp]
	mov	rsi, rax
	lea	rdi, inName[rip]
	call	stat@PLT
	mov	eax, DWORD PTR -136[rbp]
	and	eax, 61440
	cmp	eax, 16384
	jne	.L357
	mov	rdx, QWORD PTR progName[rip]
	mov	rax, QWORD PTR stderr[rip]
	lea	rcx, inName[rip]
	lea	rsi, .LC56[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	edi, 1
	call	setExit
	jmp	.L347
.L357:
	mov	eax, DWORD PTR srcMode[rip]
	cmp	eax, 1
	je	.L358
	test	eax, eax
	jle	.L359
	sub	eax, 2
	cmp	eax, 1
	ja	.L359
	jmp	.L369
.L358:
	mov	rax, QWORD PTR stdin[rip]
	mov	rdi, rax
	call	fileno@PLT
	mov	edi, eax
	call	isatty@PLT
	test	eax, eax
	je	.L361
	mov	rdx, QWORD PTR progName[rip]
	mov	rax, QWORD PTR stderr[rip]
	lea	rsi, .LC69[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	rcx, QWORD PTR progName[rip]
	mov	rdx, QWORD PTR progName[rip]
	mov	rax, QWORD PTR stderr[rip]
	lea	rsi, .LC62[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	edi, 1
	call	setExit
	jmp	.L347
.L361:
	mov	rax, QWORD PTR stdin[rip]
	mov	QWORD PTR -168[rbp], rax
	jmp	.L362
.L369:
	lea	rsi, .LC43[rip]
	lea	rdi, inName[rip]
	call	fopen@PLT
	mov	QWORD PTR -168[rbp], rax
	cmp	QWORD PTR -168[rbp], 0
	jne	.L370
	call	__errno_location@PLT
	mov	eax, DWORD PTR [rax]
	mov	edi, eax
	call	strerror@PLT
	mov	rcx, rax
	mov	rdx, QWORD PTR progName[rip]
	mov	rax, QWORD PTR stderr[rip]
	mov	r8, rcx
	lea	rcx, inName[rip]
	lea	rsi, .LC70[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	edi, 1
	call	setExit
	jmp	.L347
.L359:
	lea	rdi, .LC78[rip]
	call	panic
.L370:
	nop
.L362:
	mov	eax, DWORD PTR verbosity[rip]
	test	eax, eax
	jle	.L364
	mov	rax, QWORD PTR stderr[rip]
	lea	rdx, inName[rip]
	lea	rsi, .LC66[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	lea	rdi, inName[rip]
	call	pad
	mov	rax, QWORD PTR stderr[rip]
	mov	rdi, rax
	call	fflush@PLT
.L364:
	mov	QWORD PTR outputHandleJustInCase[rip], 0
	mov	rax, QWORD PTR -168[rbp]
	mov	rdi, rax
	call	testStream
	mov	BYTE PTR -169[rbp], al
	cmp	BYTE PTR -169[rbp], 0
	je	.L365
	mov	eax, DWORD PTR verbosity[rip]
	test	eax, eax
	jle	.L365
	mov	rax, QWORD PTR stderr[rip]
	mov	rcx, rax
	mov	edx, 3
	mov	esi, 1
	lea	rdi, .LC79[rip]
	call	fwrite@PLT
.L365:
	cmp	BYTE PTR -169[rbp], 0
	jne	.L347
	mov	BYTE PTR testFailsExist[rip], 1
.L347:
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L368
	call	__stack_chk_fail@PLT
.L368:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE41:
	.size	testf, .-testf
	.section	.rodata
	.align 8
.LC80:
	.ascii	"bzip2, a block-sorting file compressor.  Version %s.\n   \n "
	.ascii	"  Copyright (C) 1996-2010 by Julian Seward.\n   \n   This pr"
	.ascii	"ogram is free software; you can redistribute it and/or modif"
	.ascii	"y\n   it under the terms set out in the LICENSE file, which "
	.ascii	"is included\n   in the bzip2-1.0.6 sourc"
	.string	"e distribution.\n   \n   This program is distributed in the hope that it will be useful,\n   but WITHOUT ANY WARRANTY; without even the implied warranty of\n   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n   LICENSE file for more details.\n   \n"
	.text
	.type	license, @function
license:
.LFB42:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	BZ2_bzlibVersion@PLT
	mov	rdx, rax
	mov	rax, QWORD PTR stderr[rip]
	lea	rsi, .LC80[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE42:
	.size	license, .-license
	.section	.rodata
	.align 8
.LC81:
	.ascii	"bzip2, a block-sorting file compressor.  Version %s.\n\n   u"
	.ascii	"sage: %s [flags and input files in any order]\n\n   -h --hel"
	.ascii	"p           print this message\n   -d --decompress     force"
	.ascii	" decompression\n   -z --compress       force compression\n  "
	.ascii	" -k --keep           keep (don't delete) input files\n   -f "
	.ascii	"--force          overwrite existing output files\n   -t --te"
	.ascii	"st           test compressed file integrity\n   -c --stdout "
	.ascii	"        output to standard out\n   -q --quiet          suppr"
	.ascii	"ess noncritical error messages\n   -v --verbose        be ve"
	.ascii	"rbose (a 2nd -v gives more)\n   -L --license        display "
	.ascii	"software version & license\n   -V --version        display s"
	.ascii	"oftware version & license\n   -s --small          use less m"
	.ascii	"emory (at most 2500k)\n   -1 .. -9            set block size"
	.ascii	" to 100k .. 900k\n   --fast              alias for -1\n   --"
	.ascii	"best              alias for -9\n\n   If invoked as `bzip2', "
	.ascii	"default action is to compress.\n              as `bunzip2', "
	.ascii	" default action is to decompress.\n"
	.string	"              as `bzcat', default action is to decompress to stdout.\n\n   If no file names are given, bzip2 compresses or decompresses\n   from standard input to standard output.  You can combine\n   short flags, so `-v -4' means the same as -v4 or -4v, &c.\n\n"
	.text
	.type	usage, @function
usage:
.LFB43:
	.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	BZ2_bzlibVersion@PLT
	mov	rsi, rax
	mov	rax, QWORD PTR stderr[rip]
	mov	rdx, QWORD PTR -8[rbp]
	mov	rcx, rdx
	mov	rdx, rsi
	lea	rsi, .LC81[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE43:
	.size	usage, .-usage
	.section	.rodata
	.align 8
.LC82:
	.string	"%s: %s is redundant in versions 0.9.5 and above\n"
	.text
	.type	redundant, @function
redundant:
.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, 16
	mov	QWORD PTR -8[rbp], rdi
	mov	rdx, QWORD PTR progName[rip]
	mov	rax, QWORD PTR stderr[rip]
	mov	rcx, QWORD PTR -8[rbp]
	lea	rsi, .LC82[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE44:
	.size	redundant, .-redundant
	.type	myMalloc, @function
myMalloc:
.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, 32
	mov	DWORD PTR -20[rbp], edi
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	mov	rdi, rax
	call	malloc@PLT
	mov	QWORD PTR -8[rbp], rax
	cmp	QWORD PTR -8[rbp], 0
	jne	.L375
	call	outOfMemory
.L375:
	mov	rax, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE45:
	.size	myMalloc, .-myMalloc
	.type	mkCell, @function
mkCell:
.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
	mov	edi, 16
	call	myMalloc
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	mov	QWORD PTR [rax], 0
	mov	rax, QWORD PTR -8[rbp]
	mov	QWORD PTR 8[rax], 0
	mov	rax, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE46:
	.size	mkCell, .-mkCell
	.type	snocString, @function
snocString:
.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, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	QWORD PTR -32[rbp], rsi
	cmp	QWORD PTR -24[rbp], 0
	jne	.L380
	call	mkCell
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -32[rbp]
	mov	rdi, rax
	call	strlen@PLT
	add	eax, 5
	mov	edi, eax
	call	myMalloc
	mov	rdx, QWORD PTR -8[rbp]
	mov	QWORD PTR [rdx], rax
	mov	rax, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR [rax]
	mov	rdx, QWORD PTR -32[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	strcpy@PLT
	mov	rax, QWORD PTR -8[rbp]
	jmp	.L381
.L380:
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR -16[rbp], rax
	jmp	.L382
.L383:
	mov	rax, QWORD PTR -16[rbp]
	mov	rax, QWORD PTR 8[rax]
	mov	QWORD PTR -16[rbp], rax
.L382:
	mov	rax, QWORD PTR -16[rbp]
	mov	rax, QWORD PTR 8[rax]
	test	rax, rax
	jne	.L383
	mov	rax, QWORD PTR -16[rbp]
	mov	rax, QWORD PTR 8[rax]
	mov	rdx, QWORD PTR -32[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	snocString
	mov	rdx, QWORD PTR -16[rbp]
	mov	QWORD PTR 8[rdx], rax
	mov	rax, QWORD PTR -24[rbp]
.L381:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE47:
	.size	snocString, .-snocString
	.type	addFlagsFromEnvVar, @function
addFlagsFromEnvVar:
.LFB48:
	.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 -48[rbp]
	mov	rdi, rax
	call	getenv@PLT
	mov	QWORD PTR -8[rbp], rax
	cmp	QWORD PTR -8[rbp], 0
	je	.L398
	mov	rax, QWORD PTR -8[rbp]
	mov	QWORD PTR -16[rbp], rax
	mov	DWORD PTR -28[rbp], 0
.L396:
	mov	eax, DWORD PTR -28[rbp]
	movsx	rdx, eax
	mov	rax, QWORD PTR -16[rbp]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	test	al, al
	je	.L399
	mov	eax, DWORD PTR -28[rbp]
	cdqe
	add	QWORD PTR -16[rbp], rax
	mov	DWORD PTR -28[rbp], 0
	jmp	.L387
.L388:
	add	QWORD PTR -16[rbp], 1
.L387:
	call	__ctype_b_loc@PLT
	mov	rdx, QWORD PTR [rax]
	mov	rax, QWORD PTR -16[rbp]
	movzx	eax, BYTE PTR [rax]
	movsx	rax, al
	add	rax, rax
	add	rax, rdx
	movzx	eax, WORD PTR [rax]
	movzx	eax, ax
	and	eax, 8192
	test	eax, eax
	jne	.L388
	jmp	.L389
.L391:
	add	DWORD PTR -28[rbp], 1
.L389:
	mov	eax, DWORD PTR -28[rbp]
	movsx	rdx, eax
	mov	rax, QWORD PTR -16[rbp]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	test	al, al
	je	.L390
	call	__ctype_b_loc@PLT
	mov	rdx, QWORD PTR [rax]
	mov	eax, DWORD PTR -28[rbp]
	movsx	rcx, eax
	mov	rax, QWORD PTR -16[rbp]
	add	rax, rcx
	movzx	eax, BYTE PTR [rax]
	movsx	rax, al
	add	rax, rax
	add	rax, rdx
	movzx	eax, WORD PTR [rax]
	movzx	eax, ax
	and	eax, 8192
	test	eax, eax
	je	.L391
.L390:
	cmp	DWORD PTR -28[rbp], 0
	jle	.L396
	mov	eax, DWORD PTR -28[rbp]
	mov	DWORD PTR -20[rbp], eax
	cmp	DWORD PTR -20[rbp], 1024
	jle	.L393
	mov	DWORD PTR -20[rbp], 1024
.L393:
	mov	DWORD PTR -24[rbp], 0
	jmp	.L394
.L395:
	mov	eax, DWORD PTR -24[rbp]
	movsx	rdx, eax
	mov	rax, QWORD PTR -16[rbp]
	add	rax, rdx
	movzx	edx, BYTE PTR [rax]
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	lea	rcx, tmpName[rip]
	mov	BYTE PTR [rax+rcx], dl
	add	DWORD PTR -24[rbp], 1
.L394:
	mov	eax, DWORD PTR -24[rbp]
	cmp	eax, DWORD PTR -20[rbp]
	jl	.L395
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	lea	rdx, tmpName[rip]
	mov	BYTE PTR [rax+rdx], 0
	mov	rax, QWORD PTR -40[rbp]
	mov	rax, QWORD PTR [rax]
	lea	rsi, tmpName[rip]
	mov	rdi, rax
	call	snocString
	mov	rdx, QWORD PTR -40[rbp]
	mov	QWORD PTR [rdx], rax
	jmp	.L396
.L399:
	nop
.L398:
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE48:
	.size	addFlagsFromEnvVar, .-addFlagsFromEnvVar
	.section	.rodata
.LC83:
	.string	"BZIP2"
.LC84:
	.string	"BZIP"
.LC85:
	.string	"--"
.LC86:
	.string	"unzip"
.LC87:
	.string	"UNZIP"
.LC88:
	.string	"z2cat"
.LC89:
	.string	"Z2CAT"
.LC90:
	.string	"zcat"
.LC91:
	.string	"ZCAT"
.LC92:
	.string	"%s: Bad flag `%s'\n"
.LC93:
	.string	"--stdout"
.LC94:
	.string	"--decompress"
.LC95:
	.string	"--compress"
.LC96:
	.string	"--force"
.LC97:
	.string	"--test"
.LC98:
	.string	"--keep"
.LC99:
	.string	"--small"
.LC100:
	.string	"--quiet"
.LC101:
	.string	"--show-progress"
.LC102:
	.string	"--version"
.LC103:
	.string	"--license"
.LC104:
	.string	"--exponential"
.LC105:
	.string	"--repetitive-best"
.LC106:
	.string	"--repetitive-fast"
.LC107:
	.string	"--fast"
.LC108:
	.string	"--best"
.LC109:
	.string	"--verbose"
.LC110:
	.string	"--help"
	.align 8
.LC111:
	.string	"%s: -c and -t cannot be used together.\n"
	.align 8
.LC112:
	.string	"\nYou can use the `bzip2recover' program to attempt to recover\ndata from undamaged sections of corrupted files.\n\n"
	.text
	.globl	main
	.type	main, @function
main:
.LFB49:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 80
	mov	DWORD PTR -68[rbp], edi
	mov	QWORD PTR -80[rbp], rsi
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	QWORD PTR outputHandleJustInCase[rip], 0
	mov	BYTE PTR smallMode[rip], 0
	mov	BYTE PTR keepInputFiles[rip], 0
	mov	BYTE PTR forceOverwrite[rip], 0
	mov	BYTE PTR noisy[rip], 1
	mov	DWORD PTR verbosity[rip], 0
	mov	DWORD PTR blockSize100k[rip], 9
	mov	BYTE PTR testFailsExist[rip], 0
	mov	BYTE PTR unzFailsExist[rip], 0
	mov	DWORD PTR numFileNames[rip], 0
	mov	DWORD PTR numFilesProcessed[rip], 0
	mov	DWORD PTR workFactor[rip], 30
	mov	BYTE PTR deleteOutputOnInterrupt[rip], 0
	mov	DWORD PTR exitValue[rip], 0
	mov	DWORD PTR -44[rbp], 0
	mov	eax, DWORD PTR -44[rbp]
	mov	DWORD PTR -48[rbp], eax
	mov	BYTE PTR showProgress[rip], 0
	lea	rsi, mySIGSEGVorSIGBUScatcher[rip]
	mov	edi, 11
	call	signal@PLT
	lea	rsi, mySIGSEGVorSIGBUScatcher[rip]
	mov	edi, 7
	call	signal@PLT
	lea	rsi, .LC76[rip]
	lea	rdi, inName[rip]
	call	copyFileName
	lea	rsi, .LC76[rip]
	lea	rdi, outName[rip]
	call	copyFileName
	mov	rax, QWORD PTR -80[rbp]
	mov	rax, QWORD PTR [rax]
	mov	rsi, rax
	lea	rdi, progNameReally[rip]
	call	copyFileName
	lea	rax, progNameReally[rip]
	mov	QWORD PTR progName[rip], rax
	lea	rax, progNameReally[rip]
	mov	QWORD PTR -32[rbp], rax
	jmp	.L401
.L403:
	mov	rax, QWORD PTR -32[rbp]
	movzx	eax, BYTE PTR [rax]
	cmp	al, 47
	jne	.L402
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 1
	mov	QWORD PTR progName[rip], rax
.L402:
	add	QWORD PTR -32[rbp], 1
.L401:
	mov	rax, QWORD PTR -32[rbp]
	movzx	eax, BYTE PTR [rax]
	test	al, al
	jne	.L403
	mov	QWORD PTR -40[rbp], 0
	lea	rax, -40[rbp]
	lea	rsi, .LC83[rip]
	mov	rdi, rax
	call	addFlagsFromEnvVar
	lea	rax, -40[rbp]
	lea	rsi, .LC84[rip]
	mov	rdi, rax
	call	addFlagsFromEnvVar
	mov	DWORD PTR -48[rbp], 1
	jmp	.L404
.L405:
	mov	eax, DWORD PTR -48[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -80[rbp]
	add	rax, rdx
	mov	rdx, QWORD PTR [rax]
	mov	rax, QWORD PTR -40[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	snocString
	mov	QWORD PTR -40[rbp], rax
	add	DWORD PTR -48[rbp], 1
.L404:
	mov	eax, DWORD PTR -68[rbp]
	cmp	eax, DWORD PTR -48[rbp]
	jg	.L405
	mov	DWORD PTR longestFileName[rip], 7
	mov	DWORD PTR numFileNames[rip], 0
	mov	BYTE PTR -49[rbp], 1
	mov	rax, QWORD PTR -40[rbp]
	mov	QWORD PTR -24[rbp], rax
	jmp	.L406
.L410:
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR [rax]
	lea	rsi, .LC85[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L407
	mov	BYTE PTR -49[rbp], 0
	jmp	.L408
.L407:
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR [rax]
	movzx	eax, BYTE PTR [rax]
	cmp	al, 45
	jne	.L409
	cmp	BYTE PTR -49[rbp], 0
	jne	.L507
.L409:
	mov	eax, DWORD PTR numFileNames[rip]
	add	eax, 1
	mov	DWORD PTR numFileNames[rip], eax
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR [rax]
	mov	rdi, rax
	call	strlen@PLT
	mov	edx, eax
	mov	eax, DWORD PTR longestFileName[rip]
	cmp	edx, eax
	jle	.L408
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR [rax]
	mov	rdi, rax
	call	strlen@PLT
	mov	DWORD PTR longestFileName[rip], eax
	jmp	.L408
.L507:
	nop
.L408:
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR 8[rax]
	mov	QWORD PTR -24[rbp], rax
.L406:
	cmp	QWORD PTR -24[rbp], 0
	jne	.L410
	mov	eax, DWORD PTR numFileNames[rip]
	test	eax, eax
	jne	.L411
	mov	DWORD PTR srcMode[rip], 1
	jmp	.L412
.L411:
	mov	DWORD PTR srcMode[rip], 3
.L412:
	mov	DWORD PTR opMode[rip], 1
	mov	rax, QWORD PTR progName[rip]
	lea	rsi, .LC86[rip]
	mov	rdi, rax
	call	strstr@PLT
	test	rax, rax
	jne	.L413
	mov	rax, QWORD PTR progName[rip]
	lea	rsi, .LC87[rip]
	mov	rdi, rax
	call	strstr@PLT
	test	rax, rax
	je	.L414
.L413:
	mov	DWORD PTR opMode[rip], 2
.L414:
	mov	rax, QWORD PTR progName[rip]
	lea	rsi, .LC88[rip]
	mov	rdi, rax
	call	strstr@PLT
	test	rax, rax
	jne	.L415
	mov	rax, QWORD PTR progName[rip]
	lea	rsi, .LC89[rip]
	mov	rdi, rax
	call	strstr@PLT
	test	rax, rax
	jne	.L415
	mov	rax, QWORD PTR progName[rip]
	lea	rsi, .LC90[rip]
	mov	rdi, rax
	call	strstr@PLT
	test	rax, rax
	jne	.L415
	mov	rax, QWORD PTR progName[rip]
	lea	rsi, .LC91[rip]
	mov	rdi, rax
	call	strstr@PLT
	test	rax, rax
	je	.L416
.L415:
	mov	DWORD PTR opMode[rip], 2
	mov	eax, DWORD PTR numFileNames[rip]
	test	eax, eax
	jne	.L417
	mov	eax, 1
	jmp	.L418
.L417:
	mov	eax, 2
.L418:
	mov	DWORD PTR srcMode[rip], eax
.L416:
	mov	rax, QWORD PTR -40[rbp]
	mov	QWORD PTR -24[rbp], rax
	jmp	.L419
.L449:
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR [rax]
	lea	rsi, .LC85[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	je	.L508
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR [rax]
	movzx	eax, BYTE PTR [rax]
	cmp	al, 45
	jne	.L422
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR [rax]
	add	rax, 1
	movzx	eax, BYTE PTR [rax]
	cmp	al, 45
	je	.L422
	mov	DWORD PTR -44[rbp], 1
	jmp	.L423
.L448:
	mov	rax, QWORD PTR -24[rbp]
	mov	rdx, QWORD PTR [rax]
	mov	eax, DWORD PTR -44[rbp]
	cdqe
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	movsx	eax, al
	sub	eax, 49
	cmp	eax, 73
	ja	.L424
	mov	eax, eax
	lea	rdx, 0[0+rax*4]
	lea	rax, .L426[rip]
	mov	eax, DWORD PTR [rdx+rax]
	cdqe
	lea	rdx, .L426[rip]
	add	rax, rdx
	notrack jmp	rax
	.section	.rodata
	.align 4
	.align 4
.L426:
	.long	.L446-.L426
	.long	.L445-.L426
	.long	.L444-.L426
	.long	.L443-.L426
	.long	.L442-.L426
	.long	.L441-.L426
	.long	.L440-.L426
	.long	.L439-.L426
	.long	.L438-.L426
	.long	.L424-.L426
	.long	.L424-.L426
	.long	.L424-.L426
	.long	.L424-.L426
	.long	.L424-.L426
	.long	.L424-.L426
	.long	.L424-.L426
	.long	.L424-.L426
	.long	.L424-.L426
	.long	.L424-.L426
	.long	.L424-.L426
	.long	.L424-.L426
	.long	.L424-.L426
	.long	.L424-.L426
	.long	.L424-.L426
	.long	.L424-.L426
	.long	.L424-.L426
	.long	.L424-.L426
	.long	.L437-.L426
	.long	.L424-.L426
	.long	.L424-.L426
	.long	.L424-.L426
	.long	.L424-.L426
	.long	.L424-.L426
	.long	.L424-.L426
	.long	.L424-.L426
	.long	.L424-.L426
	.long	.L424-.L426
	.long	.L437-.L426
	.long	.L424-.L426
	.long	.L424-.L426
	.long	.L424-.L426
	.long	.L424-.L426
	.long	.L424-.L426
	.long	.L424-.L426
	.long	.L424-.L426
	.long	.L424-.L426
	.long	.L424-.L426
	.long	.L424-.L426
	.long	.L424-.L426
	.long	.L424-.L426
	.long	.L436-.L426
	.long	.L435-.L426
	.long	.L424-.L426
	.long	.L434-.L426
	.long	.L424-.L426
	.long	.L433-.L426
	.long	.L424-.L426
	.long	.L424-.L426
	.long	.L432-.L426
	.long	.L424-.L426
	.long	.L424-.L426
	.long	.L424-.L426
	.long	.L424-.L426
	.long	.L431-.L426
	.long	.L430-.L426
	.long	.L424-.L426
	.long	.L429-.L426
	.long	.L428-.L426
	.long	.L424-.L426
	.long	.L427-.L426
	.long	.L424-.L426
	.long	.L424-.L426
	.long	.L424-.L426
	.long	.L425-.L426
	.text
.L436:
	mov	DWORD PTR srcMode[rip], 2
	jmp	.L447
.L435:
	mov	DWORD PTR opMode[rip], 2
	jmp	.L447
.L425:
	mov	DWORD PTR opMode[rip], 1
	jmp	.L447
.L434:
	mov	BYTE PTR forceOverwrite[rip], 1
	jmp	.L447
.L428:
	mov	DWORD PTR opMode[rip], 3
	jmp	.L447
.L432:
	mov	BYTE PTR keepInputFiles[rip], 1
	jmp	.L447
.L429:
	mov	BYTE PTR smallMode[rip], 1
	jmp	.L447
.L430:
	mov	BYTE PTR noisy[rip], 0
	jmp	.L447
.L431:
	mov	BYTE PTR showProgress[rip], 1
	jmp	.L447
.L446:
	mov	DWORD PTR blockSize100k[rip], 1
	jmp	.L447
.L445:
	mov	DWORD PTR blockSize100k[rip], 2
	jmp	.L447
.L444:
	mov	DWORD PTR blockSize100k[rip], 3
	jmp	.L447
.L443:
	mov	DWORD PTR blockSize100k[rip], 4
	jmp	.L447
.L442:
	mov	DWORD PTR blockSize100k[rip], 5
	jmp	.L447
.L441:
	mov	DWORD PTR blockSize100k[rip], 6
	jmp	.L447
.L440:
	mov	DWORD PTR blockSize100k[rip], 7
	jmp	.L447
.L439:
	mov	DWORD PTR blockSize100k[rip], 8
	jmp	.L447
.L438:
	mov	DWORD PTR blockSize100k[rip], 9
	jmp	.L447
.L437:
	call	license
	jmp	.L447
.L427:
	mov	eax, DWORD PTR verbosity[rip]
	add	eax, 1
	mov	DWORD PTR verbosity[rip], eax
	jmp	.L447
.L433:
	mov	rax, QWORD PTR progName[rip]
	mov	rdi, rax
	call	usage
	mov	edi, 0
	call	exit@PLT
.L424:
	mov	rax, QWORD PTR -24[rbp]
	mov	rcx, QWORD PTR [rax]
	mov	rdx, QWORD PTR progName[rip]
	mov	rax, QWORD PTR stderr[rip]
	lea	rsi, .LC92[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	rax, QWORD PTR progName[rip]
	mov	rdi, rax
	call	usage
	mov	edi, 1
	call	exit@PLT
.L447:
	add	DWORD PTR -44[rbp], 1
.L423:
	mov	rax, QWORD PTR -24[rbp]
	mov	rdx, QWORD PTR [rax]
	mov	eax, DWORD PTR -44[rbp]
	cdqe
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	test	al, al
	jne	.L448
.L422:
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR 8[rax]
	mov	QWORD PTR -24[rbp], rax
.L419:
	cmp	QWORD PTR -24[rbp], 0
	jne	.L449
	jmp	.L421
.L508:
	nop
.L421:
	mov	rax, QWORD PTR -40[rbp]
	mov	QWORD PTR -24[rbp], rax
	jmp	.L450
.L472:
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR [rax]
	lea	rsi, .LC85[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	je	.L509
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR [rax]
	lea	rsi, .LC93[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L453
	mov	DWORD PTR srcMode[rip], 2
	jmp	.L454
.L453:
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR [rax]
	lea	rsi, .LC94[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L455
	mov	DWORD PTR opMode[rip], 2
	jmp	.L454
.L455:
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR [rax]
	lea	rsi, .LC95[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L456
	mov	DWORD PTR opMode[rip], 1
	jmp	.L454
.L456:
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR [rax]
	lea	rsi, .LC96[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L457
	mov	BYTE PTR forceOverwrite[rip], 1
	jmp	.L454
.L457:
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR [rax]
	lea	rsi, .LC97[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L458
	mov	DWORD PTR opMode[rip], 3
	jmp	.L454
.L458:
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR [rax]
	lea	rsi, .LC98[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L459
	mov	BYTE PTR keepInputFiles[rip], 1
	jmp	.L454
.L459:
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR [rax]
	lea	rsi, .LC99[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L460
	mov	BYTE PTR smallMode[rip], 1
	jmp	.L454
.L460:
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR [rax]
	lea	rsi, .LC100[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L461
	mov	BYTE PTR noisy[rip], 0
	jmp	.L454
.L461:
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR [rax]
	lea	rsi, .LC101[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L462
	mov	BYTE PTR showProgress[rip], 1
	jmp	.L454
.L462:
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR [rax]
	lea	rsi, .LC102[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L463
	call	license
	jmp	.L454
.L463:
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR [rax]
	lea	rsi, .LC103[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L464
	call	license
	jmp	.L454
.L464:
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR [rax]
	lea	rsi, .LC104[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L465
	mov	DWORD PTR workFactor[rip], 1
	jmp	.L454
.L465:
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR [rax]
	lea	rsi, .LC105[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L466
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR [rax]
	mov	rdi, rax
	call	redundant
	jmp	.L454
.L466:
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR [rax]
	lea	rsi, .LC106[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L467
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR [rax]
	mov	rdi, rax
	call	redundant
	jmp	.L454
.L467:
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR [rax]
	lea	rsi, .LC107[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L468
	mov	DWORD PTR blockSize100k[rip], 1
	jmp	.L454
.L468:
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR [rax]
	lea	rsi, .LC108[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L469
	mov	DWORD PTR blockSize100k[rip], 9
	jmp	.L454
.L469:
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR [rax]
	lea	rsi, .LC109[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L470
	mov	eax, DWORD PTR verbosity[rip]
	add	eax, 1
	mov	DWORD PTR verbosity[rip], eax
	jmp	.L454
.L470:
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR [rax]
	lea	rsi, .LC110[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L471
	mov	rax, QWORD PTR progName[rip]
	mov	rdi, rax
	call	usage
	mov	edi, 0
	call	exit@PLT
.L471:
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR [rax]
	mov	edx, 2
	lea	rsi, .LC85[rip]
	mov	rdi, rax
	call	strncmp@PLT
	test	eax, eax
	jne	.L454
	mov	rax, QWORD PTR -24[rbp]
	mov	rcx, QWORD PTR [rax]
	mov	rdx, QWORD PTR progName[rip]
	mov	rax, QWORD PTR stderr[rip]
	lea	rsi, .LC92[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	rax, QWORD PTR progName[rip]
	mov	rdi, rax
	call	usage
	mov	edi, 1
	call	exit@PLT
.L454:
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR 8[rax]
	mov	QWORD PTR -24[rbp], rax
.L450:
	cmp	QWORD PTR -24[rbp], 0
	jne	.L472
	jmp	.L452
.L509:
	nop
.L452:
	mov	eax, DWORD PTR verbosity[rip]
	cmp	eax, 4
	jle	.L473
	mov	DWORD PTR verbosity[rip], 4
.L473:
	mov	eax, DWORD PTR opMode[rip]
	cmp	eax, 1
	jne	.L474
	movzx	eax, BYTE PTR smallMode[rip]
	test	al, al
	je	.L474
	mov	eax, DWORD PTR blockSize100k[rip]
	cmp	eax, 2
	jle	.L474
	mov	DWORD PTR blockSize100k[rip], 2
.L474:
	mov	eax, DWORD PTR opMode[rip]
	cmp	eax, 3
	jne	.L475
	mov	eax, DWORD PTR srcMode[rip]
	cmp	eax, 2
	jne	.L475
	mov	rdx, QWORD PTR progName[rip]
	mov	rax, QWORD PTR stderr[rip]
	lea	rsi, .LC111[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	edi, 1
	call	exit@PLT
.L475:
	mov	eax, DWORD PTR srcMode[rip]
	cmp	eax, 2
	jne	.L476
	mov	eax, DWORD PTR numFileNames[rip]
	test	eax, eax
	jne	.L476
	mov	DWORD PTR srcMode[rip], 1
.L476:
	mov	eax, DWORD PTR opMode[rip]
	cmp	eax, 1
	je	.L477
	mov	DWORD PTR blockSize100k[rip], 0
.L477:
	mov	eax, DWORD PTR srcMode[rip]
	cmp	eax, 3
	jne	.L478
	lea	rsi, mySignalCatcher[rip]
	mov	edi, 2
	call	signal@PLT
	lea	rsi, mySignalCatcher[rip]
	mov	edi, 15
	call	signal@PLT
	lea	rsi, mySignalCatcher[rip]
	mov	edi, 1
	call	signal@PLT
.L478:
	mov	eax, DWORD PTR opMode[rip]
	cmp	eax, 1
	jne	.L479
	mov	eax, DWORD PTR srcMode[rip]
	cmp	eax, 1
	jne	.L480
	mov	edi, 0
	call	compress
	jmp	.L481
.L480:
	mov	BYTE PTR -49[rbp], 1
	mov	rax, QWORD PTR -40[rbp]
	mov	QWORD PTR -24[rbp], rax
	jmp	.L482
.L486:
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR [rax]
	lea	rsi, .LC85[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L483
	mov	BYTE PTR -49[rbp], 0
	jmp	.L484
.L483:
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR [rax]
	movzx	eax, BYTE PTR [rax]
	cmp	al, 45
	jne	.L485
	cmp	BYTE PTR -49[rbp], 0
	jne	.L510
.L485:
	mov	eax, DWORD PTR numFilesProcessed[rip]
	add	eax, 1
	mov	DWORD PTR numFilesProcessed[rip], eax
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR [rax]
	mov	rdi, rax
	call	compress
	jmp	.L484
.L510:
	nop
.L484:
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR 8[rax]
	mov	QWORD PTR -24[rbp], rax
.L482:
	cmp	QWORD PTR -24[rbp], 0
	jne	.L486
	jmp	.L481
.L479:
	mov	eax, DWORD PTR opMode[rip]
	cmp	eax, 2
	jne	.L487
	mov	BYTE PTR unzFailsExist[rip], 0
	mov	eax, DWORD PTR srcMode[rip]
	cmp	eax, 1
	jne	.L488
	mov	edi, 0
	call	uncompress
	jmp	.L489
.L488:
	mov	BYTE PTR -49[rbp], 1
	mov	rax, QWORD PTR -40[rbp]
	mov	QWORD PTR -24[rbp], rax
	jmp	.L490
.L494:
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR [rax]
	lea	rsi, .LC85[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L491
	mov	BYTE PTR -49[rbp], 0
	jmp	.L492
.L491:
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR [rax]
	movzx	eax, BYTE PTR [rax]
	cmp	al, 45
	jne	.L493
	cmp	BYTE PTR -49[rbp], 0
	jne	.L511
.L493:
	mov	eax, DWORD PTR numFilesProcessed[rip]
	add	eax, 1
	mov	DWORD PTR numFilesProcessed[rip], eax
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR [rax]
	mov	rdi, rax
	call	uncompress
	jmp	.L492
.L511:
	nop
.L492:
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR 8[rax]
	mov	QWORD PTR -24[rbp], rax
.L490:
	cmp	QWORD PTR -24[rbp], 0
	jne	.L494
.L489:
	movzx	eax, BYTE PTR unzFailsExist[rip]
	test	al, al
	je	.L481
	mov	edi, 2
	call	setExit
	mov	eax, DWORD PTR exitValue[rip]
	mov	edi, eax
	call	exit@PLT
.L487:
	mov	BYTE PTR testFailsExist[rip], 0
	mov	eax, DWORD PTR srcMode[rip]
	cmp	eax, 1
	jne	.L495
	mov	edi, 0
	call	testf
	jmp	.L496
.L495:
	mov	BYTE PTR -49[rbp], 1
	mov	rax, QWORD PTR -40[rbp]
	mov	QWORD PTR -24[rbp], rax
	jmp	.L497
.L501:
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR [rax]
	lea	rsi, .LC85[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L498
	mov	BYTE PTR -49[rbp], 0
	jmp	.L499
.L498:
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR [rax]
	movzx	eax, BYTE PTR [rax]
	cmp	al, 45
	jne	.L500
	cmp	BYTE PTR -49[rbp], 0
	jne	.L512
.L500:
	mov	eax, DWORD PTR numFilesProcessed[rip]
	add	eax, 1
	mov	DWORD PTR numFilesProcessed[rip], eax
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR [rax]
	mov	rdi, rax
	call	testf
	jmp	.L499
.L512:
	nop
.L499:
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR 8[rax]
	mov	QWORD PTR -24[rbp], rax
.L497:
	cmp	QWORD PTR -24[rbp], 0
	jne	.L501
.L496:
	movzx	eax, BYTE PTR testFailsExist[rip]
	test	al, al
	je	.L481
	movzx	eax, BYTE PTR noisy[rip]
	test	al, al
	je	.L481
	mov	rax, QWORD PTR stderr[rip]
	mov	rcx, rax
	mov	edx, 112
	mov	esi, 1
	lea	rdi, .LC112[rip]
	call	fwrite@PLT
	mov	edi, 2
	call	setExit
	mov	eax, DWORD PTR exitValue[rip]
	mov	edi, eax
	call	exit@PLT
.L481:
	mov	rax, QWORD PTR -40[rbp]
	mov	QWORD PTR -24[rbp], rax
	jmp	.L502
.L504:
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR 8[rax]
	mov	QWORD PTR -16[rbp], rax
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR [rax]
	test	rax, rax
	je	.L503
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR [rax]
	mov	rdi, rax
	call	free@PLT
.L503:
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	free@PLT
	mov	rax, QWORD PTR -16[rbp]
	mov	QWORD PTR -24[rbp], rax
.L502:
	cmp	QWORD PTR -24[rbp], 0
	jne	.L504
	mov	eax, DWORD PTR exitValue[rip]
	mov	rcx, QWORD PTR -8[rbp]
	sub	rcx, QWORD PTR fs:40
	je	.L506
	call	__stack_chk_fail@PLT
.L506:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE49:
	.size	main, .-main
	.section	.rodata
	.align 8
.LC0:
	.long	0
	.long	1072693248
	.align 8
.LC2:
	.long	0
	.long	1081081856
	.align 8
.LC4:
	.long	0
	.long	1079574528
	.align 8
.LC9:
	.long	0
	.long	1075838976
	.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	"244160.c"
	.text
	.comm	verbosity,4,4
	.comm	keepInputFiles,1,1
	.comm	smallMode,1,1
	.comm	deleteOutputOnInterrupt,1,1
	.comm	forceOverwrite,1,1
	.comm	testFailsExist,1,1
	.comm	unzFailsExist,1,1
	.comm	noisy,1,1
	.comm	numFileNames,4,4
	.comm	numFilesProcessed,4,4
	.comm	blockSize100k,4,4
	.comm	exitValue,4,4
	.comm	opMode,4,4
	.comm	srcMode,4,4
	.comm	longestFileName,4,4
	.comm	inName,1034,4
	.comm	outName,1034,4
	.comm	tmpName,1034,4
	.comm	progName,4,4
	.comm	progNameReally,1034,4
	.comm	outputHandleJustInCase,4,4
	.comm	workFactor,4,4
	.comm	showProgress,1,1
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	uInt64_from_UInt32s, %function
uInt64_from_UInt32s:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #20
	str	r0, [fp, #-8]
	str	r1, [fp, #-12]
	str	r2, [fp, #-16]
	ldr	r3, [fp, #-16]
	lsr	r3, r3, #24
	and	r2, r3, #255
	ldr	r3, [fp, #-8]
	strb	r2, [r3, #7]
	ldr	r3, [fp, #-16]
	lsr	r3, r3, #16
	and	r2, r3, #255
	ldr	r3, [fp, #-8]
	strb	r2, [r3, #6]
	ldr	r3, [fp, #-16]
	lsr	r3, r3, #8
	and	r2, r3, #255
	ldr	r3, [fp, #-8]
	strb	r2, [r3, #5]
	ldr	r3, [fp, #-16]
	and	r2, r3, #255
	ldr	r3, [fp, #-8]
	strb	r2, [r3, #4]
	ldr	r3, [fp, #-12]
	lsr	r3, r3, #24
	and	r2, r3, #255
	ldr	r3, [fp, #-8]
	strb	r2, [r3, #3]
	ldr	r3, [fp, #-12]
	lsr	r3, r3, #16
	and	r2, r3, #255
	ldr	r3, [fp, #-8]
	strb	r2, [r3, #2]
	ldr	r3, [fp, #-12]
	lsr	r3, r3, #8
	and	r2, r3, #255
	ldr	r3, [fp, #-8]
	strb	r2, [r3, #1]
	ldr	r3, [fp, #-12]
	and	r2, r3, #255
	ldr	r3, [fp, #-8]
	strb	r2, [r3]
	nop
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	uInt64_from_UInt32s, .-uInt64_from_UInt32s
	.global	__aeabi_ui2d
	.global	__aeabi_dmul
	.global	__aeabi_dadd
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	uInt64_to_double, %function
uInt64_to_double:
	@ 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]
	mov	r2, #0
	ldr	r3, .L6
	str	r2, [fp, #-20]
	str	r3, [fp, #-16]
	mov	r2, #0
	mov	r3, #0
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	mov	r3, #0
	str	r3, [fp, #-24]
	b	.L3
.L4:
	ldr	r2, [fp, #-32]
	ldr	r3, [fp, #-24]
	add	r3, r2, r3
	ldrb	r3, [r3]	@ zero_extendqisi2
	mov	r0, r3
	bl	__aeabi_ui2d
	sub	r3, fp, #20
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	mov	r2, #0
	ldr	r3, .L6+4
	sub	r1, fp, #20
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-20]
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-24]
	add	r3, r3, #1
	str	r3, [fp, #-24]
.L3:
	ldr	r3, [fp, #-24]
	cmp	r3, #7
	ble	.L4
	sub	r3, fp, #12
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L7:
	.align	2
.L6:
	.word	1072693248
	.word	1081081856
	.size	uInt64_to_double, .-uInt64_to_double
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	uInt64_isZero, %function
uInt64_isZero:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #20
	str	r0, [fp, #-16]
	mov	r3, #0
	str	r3, [fp, #-8]
	b	.L9
.L12:
	ldr	r2, [fp, #-16]
	ldr	r3, [fp, #-8]
	add	r3, r2, r3
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L10
	mov	r3, #0
	b	.L11
.L10:
	ldr	r3, [fp, #-8]
	add	r3, r3, #1
	str	r3, [fp, #-8]
.L9:
	ldr	r3, [fp, #-8]
	cmp	r3, #7
	ble	.L12
	mov	r3, #1
.L11:
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	uInt64_isZero, .-uInt64_isZero
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	uInt64_qrm10, %function
uInt64_qrm10:
	@ 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, #-24]
	mov	r3, #0
	str	r3, [fp, #-16]
	mov	r3, #7
	str	r3, [fp, #-12]
	b	.L14
.L15:
	ldr	r3, [fp, #-16]
	lsl	r3, r3, #8
	ldr	r1, [fp, #-24]
	ldr	r2, [fp, #-12]
	add	r2, r1, r2
	ldrb	r2, [r2]	@ zero_extendqisi2
	add	r3, r3, r2
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-8]
	ldr	r2, .L17
	umull	r1, r3, r2, r3
	lsr	r3, r3, #3
	and	r1, r3, #255
	ldr	r2, [fp, #-24]
	ldr	r3, [fp, #-12]
	add	r3, r2, r3
	mov	r2, r1
	strb	r2, [r3]
	ldr	r2, [fp, #-8]
	ldr	r3, .L17
	umull	r1, r3, r2, r3
	lsr	r1, r3, #3
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #1
	sub	r3, r2, r3
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-12]
	sub	r3, r3, #1
	str	r3, [fp, #-12]
.L14:
	ldr	r3, [fp, #-12]
	cmp	r3, #0
	bge	.L15
	ldr	r3, [fp, #-16]
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
.L18:
	.align	2
.L17:
	.word	-858993459
	.size	uInt64_qrm10, .-uInt64_qrm10
	.section	.rodata
	.align	2
.LC0:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	uInt64_toAscii, %function
uInt64_toAscii:
	@ args = 0, pretend = 0, frame = 64
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #64
	str	r0, [fp, #-64]
	str	r1, [fp, #-68]
	ldr	r3, .L24
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	mov	r3, #0
	str	r3, [fp, #-56]
	ldr	r2, [fp, #-68]
	sub	r3, fp, #48
	mov	r1, r2
	mov	r2, #8
	mov	r0, r3
	bl	memcpy
.L20:
	sub	r3, fp, #48
	mov	r0, r3
	bl	uInt64_qrm10
	str	r0, [fp, #-52]
	ldr	r3, [fp, #-52]
	and	r3, r3, #255
	add	r3, r3, #48
	and	r1, r3, #255
	sub	r2, fp, #40
	ldr	r3, [fp, #-56]
	add	r3, r2, r3
	mov	r2, r1
	strb	r2, [r3]
	ldr	r3, [fp, #-56]
	add	r3, r3, #1
	str	r3, [fp, #-56]
	sub	r3, fp, #48
	mov	r0, r3
	bl	uInt64_isZero
	mov	r3, r0
	cmp	r3, #0
	beq	.L20
	ldr	r3, [fp, #-56]
	ldr	r2, [fp, #-64]
	add	r3, r2, r3
	mov	r2, #0
	strb	r2, [r3]
	mov	r3, #0
	str	r3, [fp, #-60]
	b	.L21
.L22:
	ldr	r2, [fp, #-56]
	ldr	r3, [fp, #-60]
	sub	r3, r2, r3
	sub	r2, r3, #1
	ldr	r3, [fp, #-60]
	ldr	r1, [fp, #-64]
	add	r3, r1, r3
	sub	r1, fp, #4
	add	r2, r1, r2
	ldrb	r2, [r2, #-36]	@ zero_extendqisi2
	strb	r2, [r3]
	ldr	r3, [fp, #-60]
	add	r3, r3, #1
	str	r3, [fp, #-60]
.L21:
	ldr	r2, [fp, #-60]
	ldr	r3, [fp, #-56]
	cmp	r2, r3
	blt	.L22
	nop
	ldr	r3, .L24
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L23
	bl	__stack_chk_fail
.L23:
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L25:
	.align	2
.L24:
	.word	.LC0
	.size	uInt64_toAscii, .-uInt64_toAscii
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	myfeof, %function
myfeof:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	ldr	r0, [fp, #-16]
	bl	fgetc
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmn	r3, #1
	bne	.L27
	mov	r3, #1
	b	.L28
.L27:
	ldr	r1, [fp, #-16]
	ldr	r0, [fp, #-8]
	bl	ungetc
	mov	r3, #0
.L28:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	myfeof, .-myfeof
	.global	__aeabi_i2d
	.global	__aeabi_d2iz
	.section	.rodata
	.align	2
.LC1:
	.ascii	"Input-file size: %ld\012\000"
	.global	__aeabi_ddiv
	.align	2
.LC2:
	.ascii	"%.2f%% done\000"
	.align	2
.LC3:
	.ascii	", new size: %.2f%%\000"
	.align	2
.LC4:
	.ascii	"    \015\000"
	.align	2
.LC5:
	.ascii	" no data compressed.\012\000"
	.global	__aeabi_dsub
	.align	2
.LC6:
	.ascii	"%6.3f:1, %6.3f bits/byte, %5.2f%% saved, %s in, %s "
	.ascii	"out.\012\000"
	.align	2
.LC7:
	.ascii	"compress:unexpected error\000"
	.align	2
.LC8:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	compressStream, %function
compressStream:
	@ args = 0, pretend = 0, frame = 5184
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, r6, r8, r9, fp, lr}
	add	fp, sp, #24
	sub	sp, sp, #5184
	sub	sp, sp, #28
	sub	r3, fp, #4096
	sub	r3, r3, #28
	str	r0, [r3, #-1084]
	sub	r3, fp, #4096
	sub	r3, r3, #28
	str	r1, [r3, #-1088]
	ldr	r3, .L77
	ldr	r3, [r3]
	str	r3, [fp, #-32]
	mov	r3,#0
	sub	r3, fp, #4096
	sub	r3, r3, #28
	mov	r2, r3
	mov	r3, #0
	str	r3, [r2, #-1048]
	sub	r3, fp, #5120
	sub	r3, r3, #28
	mov	r1, r3
	mov	r2, #0
	mov	r3, #0
	stmdb	r1, {r2-r3}
	sub	r3, fp, #4096
	sub	r3, r3, #28
	ldr	r0, [r3, #-1084]
	bl	ferror
	mov	r3, r0
	cmp	r3, #0
	bne	.L63
	sub	r3, fp, #4096
	sub	r3, r3, #28
	ldr	r0, [r3, #-1088]
	bl	ferror
	mov	r3, r0
	cmp	r3, #0
	bne	.L64
	ldr	r3, .L77+4
	ldr	r3, [r3]
	cmp	r3, #3
	beq	.L33
	ldr	r3, .L77+4
	ldr	r3, [r3]
	cmp	r3, #2
	bne	.L34
.L33:
	ldr	r3, .L77+8
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #1
	bne	.L34
	sub	r3, fp, #4096
	sub	r3, r3, #28
	mov	r2, #2
	mov	r1, #0
	ldr	r0, [r3, #-1084]
	bl	fseek
	sub	r3, fp, #4096
	sub	r3, r3, #28
	ldr	r0, [r3, #-1084]
	bl	ftello
	mov	r3, r0
	sub	r2, fp, #5120
	sub	r2, r2, #28
	mov	r4, r2
	mov	r0, r3
	bl	__aeabi_i2d
	mov	r2, r0
	mov	r3, r1
	stmdb	r4, {r2-r3}
	sub	r3, fp, #4096
	sub	r3, r3, #28
	ldr	r0, [r3, #-1084]
	bl	rewind
	ldr	r3, .L77+12
	ldr	r3, [r3]
	cmp	r3, #0
	ble	.L34
	ldr	r3, .L77+16
	ldr	r4, [r3]
	sub	r3, fp, #5120
	sub	r3, r3, #28
	ldmdb	r3, {r0-r1}
	bl	__aeabi_d2iz
	mov	r3, r0
	mov	r2, r3
	ldr	r1, .L77+20
	mov	r0, r4
	bl	fprintf
.L34:
	ldr	r3, .L77+24
	ldr	r2, [r3]
	ldr	r3, .L77+12
	ldr	r1, [r3]
	ldr	r3, .L77+28
	ldr	r3, [r3]
	sub	r0, fp, #4096
	sub	r0, r0, #28
	mov	r4, r0
	sub	r0, fp, #4096
	sub	r0, r0, #28
	mov	ip, r0
	sub	r0, fp, #5120
	sub	r0, r0, #28
	sub	r0, r0, #40
	str	r3, [sp]
	mov	r3, r1
	ldr	r1, [ip, #-1088]
	bl	BZ2_bzWriteOpen
	str	r0, [r4, #-1048]
	sub	r3, fp, #4096
	sub	r3, r3, #28
	ldr	r3, [r3, #-1064]
	cmp	r3, #0
	bne	.L65
	ldr	r3, .L77+12
	ldr	r3, [r3]
	cmp	r3, #1
	ble	.L37
	ldr	r3, .L77+16
	ldr	r3, [r3]
	mov	r1, r3
	mov	r0, #10
	bl	fputc
.L37:
	sub	r3, fp, #5120
	sub	r3, r3, #28
	sub	r3, r3, #32
	mov	r0, r3
	bl	time
.L46:
	sub	r3, fp, #4096
	sub	r3, r3, #28
	ldr	r0, [r3, #-1084]
	bl	myfeof
	mov	r3, r0
	cmp	r3, #0
	bne	.L66
	sub	r3, fp, #4096
	sub	r3, r3, #28
	sub	r0, fp, #4992
	sub	r0, r0, #28
	sub	r0, r0, #12
	ldr	r3, [r3, #-1084]
	ldr	r2, .L77+32
	mov	r1, #1
	bl	fread
	mov	r3, r0
	sub	r2, fp, #4096
	sub	r2, r2, #28
	str	r3, [r2, #-1044]
	sub	r3, fp, #4096
	sub	r3, r3, #28
	ldr	r0, [r3, #-1084]
	bl	ferror
	mov	r3, r0
	cmp	r3, #0
	bne	.L67
	sub	r3, fp, #4096
	sub	r3, r3, #28
	ldr	r3, [r3, #-1044]
	cmp	r3, #0
	ble	.L41
	sub	r3, fp, #4096
	sub	r3, r3, #28
	sub	r2, fp, #4992
	sub	r2, r2, #28
	sub	r2, r2, #12
	sub	r1, fp, #4096
	sub	r1, r1, #28
	sub	r0, fp, #5120
	sub	r0, r0, #28
	sub	r0, r0, #40
	ldr	r3, [r3, #-1044]
	ldr	r1, [r1, #-1048]
	bl	BZ2_bzWrite
.L41:
	sub	r3, fp, #4096
	sub	r3, r3, #28
	ldr	r3, [r3, #-1064]
	cmp	r3, #0
	bne	.L68
	ldr	r3, .L77+4
	ldr	r3, [r3]
	cmp	r3, #3
	beq	.L43
	ldr	r3, .L77+4
	ldr	r3, [r3]
	cmp	r3, #2
	bne	.L46
.L43:
	ldr	r3, .L77+8
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #1
	bne	.L46
	sub	r3, fp, #5120
	sub	r3, r3, #28
	sub	r3, r3, #28
	mov	r0, r3
	bl	time
	sub	r3, fp, #4096
	sub	r3, r3, #28
	ldr	r2, [r3, #-1052]
	sub	r3, fp, #4096
	sub	r3, r3, #28
	ldr	r3, [r3, #-1056]
	sub	r3, r2, r3
	cmp	r3, #1
	ble	.L46
	sub	r3, fp, #4096
	sub	r3, r3, #28
	ldr	r0, [r3, #-1084]
	bl	ftello
	mov	r3, r0
	sub	r2, fp, #5120
	sub	r2, r2, #28
	mov	r4, r2
	mov	r0, r3
	bl	__aeabi_i2d
	mov	r2, r0
	mov	r3, r1
	stm	r4, {r2-r3}
	sub	r3, fp, #4096
	sub	r3, r3, #28
	ldr	r0, [r3, #-1088]
	bl	ftello
	mov	r2, r0
	sub	r3, fp, #5056
	sub	r3, r3, #28
	sub	r3, r3, #48
	mov	r4, r3
	mov	r0, r2
	bl	__aeabi_i2d
	mov	r2, r0
	mov	r3, r1
	stmdb	r4, {r2-r3}
	sub	r3, fp, #4096
	sub	r3, r3, #28
	ldr	r3, [r3, #-1052]
	sub	r2, fp, #4096
	sub	r2, r2, #28
	str	r3, [r2, #-1056]
	ldr	r3, .L77+16
	ldr	r4, [r3]
	sub	r3, fp, #5120
	sub	r3, r3, #28
	mov	r1, r3
	mov	r2, #0
	ldr	r3, .L77+36
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	sub	r3, fp, #5120
	sub	r3, r3, #28
	ldmdb	r3, {r2-r3}
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L77+40
	mov	r0, r4
	bl	fprintf
	ldr	r3, .L77+4
	ldr	r3, [r3]
	cmp	r3, #3
	bne	.L45
	ldr	r3, .L77+16
	ldr	r4, [r3]
	sub	r3, fp, #5056
	sub	r3, r3, #28
	sub	r3, r3, #48
	mov	r1, r3
	mov	r2, #0
	ldr	r3, .L77+36
	ldmdb	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	sub	r3, fp, #5120
	sub	r3, r3, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L77+44
	mov	r0, r4
	bl	fprintf
.L45:
	ldr	r3, .L77+16
	ldr	r3, [r3]
	mov	r2, #5
	mov	r1, #1
	ldr	r0, .L77+48
	bl	fwrite
	b	.L46
.L66:
	nop
	sub	r2, fp, #5120
	sub	r2, r2, #28
	sub	r2, r2, #56
	sub	r3, fp, #4096
	sub	r3, r3, #28
	mov	r1, r3
	sub	r0, fp, #5120
	sub	r0, r0, #28
	sub	r0, r0, #40
	sub	r3, fp, #5120
	sub	r3, r3, #28
	sub	r3, r3, #44
	str	r3, [sp, #8]
	sub	r3, fp, #5120
	sub	r3, r3, #28
	sub	r3, r3, #48
	str	r3, [sp, #4]
	sub	r3, fp, #5120
	sub	r3, r3, #28
	sub	r3, r3, #52
	str	r3, [sp]
	mov	r3, r2
	mov	r2, #0
	ldr	r1, [r1, #-1048]
	bl	BZ2_bzWriteClose64
	sub	r3, fp, #4096
	sub	r3, r3, #28
	ldr	r3, [r3, #-1064]
	cmp	r3, #0
	bne	.L69
	sub	r3, fp, #4096
	sub	r3, r3, #28
	ldr	r0, [r3, #-1088]
	bl	ferror
	mov	r3, r0
	cmp	r3, #0
	bne	.L70
	sub	r3, fp, #4096
	sub	r3, r3, #28
	mov	r4, r3
	sub	r3, fp, #4096
	sub	r3, r3, #28
	ldr	r0, [r3, #-1088]
	bl	fflush
	str	r0, [r4, #-1040]
	sub	r3, fp, #4096
	sub	r3, r3, #28
	ldr	r3, [r3, #-1040]
	cmn	r3, #1
	beq	.L71
	ldr	r3, .L77+52
	ldr	r3, [r3]
	sub	r2, fp, #4096
	sub	r2, r2, #28
	ldr	r2, [r2, #-1088]
	cmp	r2, r3
	beq	.L50
	sub	r3, fp, #4096
	sub	r3, r3, #28
	mov	r4, r3
	sub	r3, fp, #4096
	sub	r3, r3, #28
	ldr	r0, [r3, #-1088]
	bl	fileno
	str	r0, [r4, #-1036]
	sub	r3, fp, #4096
	sub	r3, r3, #28
	ldr	r3, [r3, #-1036]
	cmp	r3, #0
	blt	.L72
	sub	r3, fp, #4096
	sub	r3, r3, #28
	ldr	r0, [r3, #-1036]
	bl	applySavedFileAttrToOutputFile
	sub	r3, fp, #4096
	sub	r3, r3, #28
	mov	r4, r3
	sub	r3, fp, #4096
	sub	r3, r3, #28
	ldr	r0, [r3, #-1088]
	bl	fclose
	str	r0, [r4, #-1040]
	ldr	r3, .L77+56
	mov	r2, #0
	str	r2, [r3]
	sub	r3, fp, #4096
	sub	r3, r3, #28
	ldr	r3, [r3, #-1040]
	cmn	r3, #1
	beq	.L73
.L50:
	ldr	r3, .L77+56
	mov	r2, #0
	str	r2, [r3]
	sub	r3, fp, #4096
	sub	r3, r3, #28
	ldr	r0, [r3, #-1084]
	bl	ferror
	mov	r3, r0
	cmp	r3, #0
	bne	.L74
	sub	r3, fp, #4096
	sub	r3, r3, #28
	mov	r4, r3
	sub	r3, fp, #4096
	sub	r3, r3, #28
	ldr	r0, [r3, #-1084]
	bl	fclose
	str	r0, [r4, #-1040]
	sub	r3, fp, #4096
	sub	r3, r3, #28
	ldr	r3, [r3, #-1040]
	cmn	r3, #1
	beq	.L75
	ldr	r3, .L77+12
	ldr	r3, [r3]
	cmp	r3, #0
	ble	.L76
	sub	r3, fp, #4096
	sub	r3, r3, #28
	ldr	r3, [r3, #-1080]
	cmp	r3, #0
	bne	.L55
	sub	r3, fp, #4096
	sub	r3, r3, #28
	ldr	r3, [r3, #-1076]
	cmp	r3, #0
	bne	.L55
	ldr	r3, .L77+16
	ldr	r3, [r3]
	mov	r2, #21
	mov	r1, #1
	ldr	r0, .L77+60
	bl	fwrite
	b	.L76
.L55:
	sub	r3, fp, #4096
	sub	r3, r3, #28
	ldr	r1, [r3, #-1080]
	sub	r3, fp, #4096
	sub	r3, r3, #28
	ldr	r2, [r3, #-1076]
	sub	r3, fp, #5056
	sub	r3, r3, #28
	sub	r3, r3, #28
	mov	r0, r3
	bl	uInt64_from_UInt32s
	sub	r3, fp, #4096
	sub	r3, r3, #28
	ldr	r1, [r3, #-1072]
	sub	r3, fp, #4096
	sub	r3, r3, #28
	ldr	r2, [r3, #-1068]
	sub	r3, fp, #5056
	sub	r3, r3, #28
	sub	r3, r3, #20
	mov	r0, r3
	bl	uInt64_from_UInt32s
	sub	r3, fp, #5056
	sub	r3, r3, #28
	sub	r3, r3, #48
	mov	r4, r3
	sub	r3, fp, #5056
	sub	r3, r3, #28
	sub	r3, r3, #28
	mov	r0, r3
	bl	uInt64_to_double
	stm	r4, {r0-r1}
	sub	r3, fp, #5056
	sub	r3, r3, #28
	sub	r3, r3, #32
	mov	r4, r3
	sub	r3, fp, #5056
	sub	r3, r3, #28
	sub	r3, r3, #20
	mov	r0, r3
	bl	uInt64_to_double
	stmdb	r4, {r0-r1}
	sub	r2, fp, #5056
	sub	r2, r2, #28
	sub	r2, r2, #28
	sub	r3, fp, #5056
	sub	r3, r3, #28
	sub	r3, r3, #12
	mov	r1, r2
	mov	r0, r3
	bl	uInt64_toAscii
	sub	r2, fp, #5056
	sub	r2, r2, #28
	sub	r2, r2, #20
	sub	r3, fp, #4992
	sub	r3, r3, #28
	sub	r3, r3, #44
	mov	r1, r2
	mov	r0, r3
	bl	uInt64_toAscii
	ldr	r3, .L77+16
	ldr	r6, [r3]
	sub	r3, fp, #5056
	sub	r3, r3, #28
	sub	r3, r3, #48
	mov	r1, r3
	sub	r3, fp, #5056
	sub	r3, r3, #28
	sub	r3, r3, #32
	ldmdb	r3, {r2-r3}
	ldmia	r1, {r0-r1}
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	mov	r8, r2
	mov	r9, r3
	sub	r3, fp, #5056
	sub	r3, r3, #28
	sub	r3, r3, #32
	mov	r1, r3
	mov	r2, #0
	ldr	r3, .L77+64
	ldmdb	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	sub	r3, fp, #5056
	sub	r3, r3, #28
	sub	r3, r3, #48
	ldmia	r3, {r2-r3}
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	sub	r3, fp, #5056
	sub	r3, r3, #28
	sub	r3, r3, #32
	mov	r1, r3
	sub	r3, fp, #5056
	sub	r3, r3, #28
	sub	r3, r3, #48
	ldmia	r3, {r2-r3}
	ldmdb	r1, {r0-r1}
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	mov	r0, #0
	ldr	r1, .L77+68
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	mov	r2, #0
	ldr	r3, .L77+36
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	sub	r3, fp, #4992
	sub	r3, r3, #28
	sub	r3, r3, #44
	str	r3, [sp, #20]
	sub	r3, fp, #5056
	sub	r3, r3, #28
	sub	r3, r3, #12
	str	r3, [sp, #16]
	str	r0, [sp, #8]
	str	r1, [sp, #12]
	stm	sp, {r4-r5}
	mov	r2, r8
	mov	r3, r9
	ldr	r1, .L77+72
	mov	r0, r6
	bl	fprintf
	b	.L76
.L65:
	nop
	b	.L36
.L68:
	nop
	b	.L36
.L69:
	nop
.L36:
	sub	r2, fp, #5120
	sub	r2, r2, #28
	sub	r2, r2, #56
	sub	r3, fp, #4096
	sub	r3, r3, #28
	mov	r1, r3
	sub	r0, fp, #5120
	sub	r0, r0, #28
	sub	r0, r0, #36
	sub	r3, fp, #5120
	sub	r3, r3, #28
	sub	r3, r3, #44
	str	r3, [sp, #8]
	sub	r3, fp, #5120
	sub	r3, r3, #28
	sub	r3, r3, #48
	str	r3, [sp, #4]
	sub	r3, fp, #5120
	sub	r3, r3, #28
	sub	r3, r3, #52
	str	r3, [sp]
	mov	r3, r2
	mov	r2, #1
	ldr	r1, [r1, #-1048]
	bl	BZ2_bzWriteClose64
	sub	r3, fp, #4096
	sub	r3, r3, #28
	ldr	r3, [r3, #-1064]
	cmn	r3, #3
	beq	.L57
	cmn	r3, #3
	bgt	.L58
	cmn	r3, #9
	beq	.L59
	cmn	r3, #6
	beq	.L31
	b	.L58
.L59:
	bl	configError
.L57:
	bl	outOfMemory
.L63:
	nop
	b	.L31
.L64:
	nop
	b	.L31
.L67:
	nop
	b	.L31
.L70:
	nop
	b	.L31
.L71:
	nop
	b	.L31
.L72:
	nop
	b	.L31
.L73:
	nop
	b	.L31
.L74:
	nop
	b	.L31
.L75:
	nop
.L31:
	bl	ioError
.L58:
	ldr	r0, .L77+76
	bl	panic
.L76:
	nop
	ldr	r3, .L77
	ldr	r2, [r3]
	ldr	r3, [fp, #-32]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L61
	bl	__stack_chk_fail
.L61:
	sub	sp, fp, #24
	@ sp needed
	pop	{r4, r5, r6, r8, r9, fp, pc}
.L78:
	.align	2
.L77:
	.word	.LC8
	.word	srcMode
	.word	showProgress
	.word	verbosity
	.word	stderr
	.word	.LC1
	.word	blockSize100k
	.word	workFactor
	.word	5000
	.word	1079574528
	.word	.LC2
	.word	.LC3
	.word	.LC4
	.word	stdout
	.word	outputHandleJustInCase
	.word	.LC5
	.word	1075838976
	.word	1072693248
	.word	.LC6
	.word	.LC7
	.size	compressStream, .-compressStream
	.section	.rodata
	.align	2
.LC9:
	.ascii	"%.2f%% done\015\000"
	.align	2
.LC10:
	.ascii	"decompress:bzReadGetUnused\000"
	.align	2
.LC11:
	.ascii	"\012    \000"
	.align	2
.LC12:
	.ascii	"\012%s: %s: trailing garbage after EOF ignored\012\000"
	.align	2
.LC13:
	.ascii	"decompress:unexpected error\000"
	.align	2
.LC14:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	uncompressStream, %function
uncompressStream:
	@ args = 0, pretend = 0, frame = 10088
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #10048
	sub	sp, sp, #52
	sub	r3, fp, #8192
	sub	r3, r3, #12
	str	r0, [r3, #-1892]
	sub	r3, fp, #8192
	sub	r3, r3, #12
	str	r1, [r3, #-1896]
	ldr	r3, .L151
	ldr	r3, [r3]
	str	r3, [fp, #-16]
	mov	r3,#0
	sub	r3, fp, #8192
	sub	r3, r3, #12
	mov	r2, r3
	mov	r3, #0
	str	r3, [r2, #-1856]
	sub	r3, fp, #9984
	sub	r3, r3, #12
	sub	r3, r3, #32
	mov	r1, r3
	mov	r2, #0
	mov	r3, #0
	stmdb	r1, {r2-r3}
	sub	r3, fp, #8192
	sub	r3, r3, #12
	mov	r2, r3
	mov	r3, #0
	str	r3, [r2, #-1880]
	sub	r3, fp, #8192
	sub	r3, r3, #12
	mov	r2, r3
	mov	r3, #0
	str	r3, [r2, #-1864]
	ldr	r3, .L151+4
	ldr	r3, [r3]
	cmp	r3, #3
	beq	.L80
	ldr	r3, .L151+4
	ldr	r3, [r3]
	cmp	r3, #2
	bne	.L81
.L80:
	ldr	r3, .L151+8
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #1
	bne	.L81
	sub	r3, fp, #8192
	sub	r3, r3, #12
	mov	r4, r3
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r0, [r3, #-1892]
	bl	ftello
	str	r0, [r4, #-1852]
	sub	r3, fp, #8192
	sub	r3, r3, #12
	mov	r2, #2
	mov	r1, #0
	ldr	r0, [r3, #-1892]
	bl	fseeko
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r0, [r3, #-1892]
	bl	ftello
	mov	r2, r0
	sub	r3, fp, #9984
	sub	r3, r3, #12
	sub	r3, r3, #32
	mov	r4, r3
	mov	r0, r2
	bl	__aeabi_i2d
	mov	r2, r0
	mov	r3, r1
	stmdb	r4, {r2-r3}
	sub	r3, fp, #8192
	sub	r3, r3, #12
	mov	r1, r3
	sub	r3, fp, #8192
	sub	r3, r3, #12
	mov	r2, #0
	ldr	r1, [r1, #-1852]
	ldr	r0, [r3, #-1892]
	bl	fseeko
	ldr	r3, .L151+12
	ldr	r3, [r3]
	cmp	r3, #0
	ble	.L81
	ldr	r3, .L151+16
	ldr	r4, [r3]
	sub	r3, fp, #9984
	sub	r3, r3, #12
	sub	r3, r3, #32
	ldmdb	r3, {r0-r1}
	bl	__aeabi_d2iz
	mov	r3, r0
	mov	r2, r3
	ldr	r1, .L151+20
	mov	r0, r4
	bl	fprintf
.L81:
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r0, [r3, #-1896]
	bl	ferror
	mov	r3, r0
	cmp	r3, #0
	bne	.L134
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r0, [r3, #-1892]
	bl	ferror
	mov	r3, r0
	cmp	r3, #0
	bne	.L135
	sub	r3, fp, #10048
	sub	r3, r3, #12
	sub	r3, r3, #16
	mov	r0, r3
	bl	time
.L103:
	ldr	r3, .L151+12
	ldr	r2, [r3]
	ldr	r3, .L151+24
	ldrb	r3, [r3]	@ zero_extendqisi2
	mov	ip, r3
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-1880]
	sub	r1, fp, #8192
	sub	r1, r1, #12
	mov	r4, r1
	sub	r1, fp, #8192
	sub	r1, r1, #12
	sub	r0, fp, #10048
	sub	r0, r0, #12
	sub	r0, r0, #32
	str	r3, [sp, #4]
	sub	r3, fp, #4992
	sub	r3, r3, #12
	sub	r3, r3, #12
	str	r3, [sp]
	mov	r3, ip
	ldr	r1, [r1, #-1892]
	bl	BZ2_bzReadOpen
	str	r0, [r4, #-1856]
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-1856]
	cmp	r3, #0
	beq	.L136
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-1888]
	cmp	r3, #0
	bne	.L136
	sub	r3, fp, #8192
	sub	r3, r3, #12
	mov	r2, r3
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-1864]
	add	r3, r3, #1
	str	r3, [r2, #-1864]
	b	.L88
.L95:
	sub	r3, fp, #8192
	sub	r3, r3, #12
	mov	r4, r3
	sub	r2, fp, #9984
	sub	r2, r2, #12
	sub	r2, r2, #20
	sub	r3, fp, #8192
	sub	r3, r3, #12
	mov	r1, r3
	sub	r0, fp, #10048
	sub	r0, r0, #12
	sub	r0, r0, #32
	ldr	r3, .L151+28
	ldr	r1, [r1, #-1856]
	bl	BZ2_bzRead
	str	r0, [r4, #-1844]
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-1888]
	cmn	r3, #5
	beq	.L137
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-1888]
	cmp	r3, #0
	beq	.L91
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-1888]
	cmp	r3, #4
	bne	.L92
.L91:
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-1844]
	cmp	r3, #0
	ble	.L92
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r2, [r3, #-1844]
	sub	r3, fp, #8192
	sub	r3, r3, #12
	sub	r0, fp, #9984
	sub	r0, r0, #12
	sub	r0, r0, #20
	ldr	r3, [r3, #-1896]
	mov	r1, #1
	bl	fwrite
.L92:
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r0, [r3, #-1896]
	bl	ferror
	mov	r3, r0
	cmp	r3, #0
	bne	.L138
	ldr	r3, .L151+4
	ldr	r3, [r3]
	cmp	r3, #3
	beq	.L94
	ldr	r3, .L151+4
	ldr	r3, [r3]
	cmp	r3, #2
	bne	.L88
.L94:
	ldr	r3, .L151+8
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #1
	bne	.L88
	sub	r3, fp, #10048
	sub	r3, r3, #12
	sub	r3, r3, #12
	mov	r0, r3
	bl	time
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r2, [r3, #-1868]
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-1872]
	sub	r3, r2, r3
	cmp	r3, #1
	ble	.L88
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r0, [r3, #-1892]
	bl	ftello
	mov	r2, r0
	sub	r3, fp, #9984
	sub	r3, r3, #12
	sub	r3, r3, #32
	mov	r4, r3
	mov	r0, r2
	bl	__aeabi_i2d
	mov	r2, r0
	mov	r3, r1
	stm	r4, {r2-r3}
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-1868]
	sub	r2, fp, #8192
	sub	r2, r2, #12
	str	r3, [r2, #-1872]
	ldr	r3, .L151+16
	ldr	r4, [r3]
	sub	r3, fp, #9984
	sub	r3, r3, #12
	sub	r3, r3, #32
	mov	r1, r3
	mov	r2, #0
	ldr	r3, .L151+32
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	sub	r3, fp, #9984
	sub	r3, r3, #12
	sub	r3, r3, #32
	ldmdb	r3, {r2-r3}
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L151+36
	mov	r0, r4
	bl	fprintf
.L88:
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-1888]
	cmp	r3, #0
	beq	.L95
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-1888]
	cmp	r3, #4
	bne	.L139
	sub	r3, fp, #10048
	sub	r3, r3, #12
	sub	r3, r3, #24
	sub	r2, fp, #10048
	sub	r2, r2, #12
	sub	r2, r2, #20
	sub	r1, fp, #8192
	sub	r1, r1, #12
	sub	r0, fp, #10048
	sub	r0, r0, #12
	sub	r0, r0, #32
	ldr	r1, [r1, #-1856]
	bl	BZ2_bzReadGetUnused
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-1888]
	cmp	r3, #0
	beq	.L97
	ldr	r0, .L151+40
	bl	panic
.L97:
	sub	r3, fp, #8192
	sub	r3, r3, #12
	mov	r2, r3
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-1876]
	str	r3, [r2, #-1848]
	sub	r3, fp, #8192
	sub	r3, r3, #12
	mov	r2, r3
	mov	r3, #0
	str	r3, [r2, #-1860]
	b	.L98
.L99:
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-1860]
	sub	r2, fp, #8192
	sub	r2, r2, #12
	ldr	r2, [r2, #-1848]
	add	r3, r2, r3
	ldrb	r2, [r3]	@ zero_extendqisi2
	sub	r3, fp, #4096
	sub	r3, r3, #12
	mov	r1, r3
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-1860]
	add	r3, r1, r3
	sub	r3, r3, #908
	strb	r2, [r3]
	sub	r3, fp, #8192
	sub	r3, r3, #12
	mov	r2, r3
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-1860]
	add	r3, r3, #1
	str	r3, [r2, #-1860]
.L98:
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-1880]
	sub	r2, fp, #8192
	sub	r2, r2, #12
	ldr	r2, [r2, #-1860]
	cmp	r2, r3
	blt	.L99
	sub	r3, fp, #8192
	sub	r3, r3, #12
	mov	r2, r3
	sub	r3, fp, #10048
	sub	r3, r3, #12
	sub	r3, r3, #32
	ldr	r1, [r2, #-1856]
	mov	r0, r3
	bl	BZ2_bzReadClose
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-1888]
	cmp	r3, #0
	beq	.L100
	ldr	r0, .L151+40
	bl	panic
.L100:
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-1880]
	cmp	r3, #0
	bne	.L103
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r0, [r3, #-1892]
	bl	myfeof
	mov	r3, r0
	cmp	r3, #0
	bne	.L140
	b	.L103
.L140:
	nop
.L102:
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r0, [r3, #-1892]
	bl	ferror
	mov	r3, r0
	cmp	r3, #0
	bne	.L141
	ldr	r3, .L151+44
	ldr	r3, [r3]
	sub	r2, fp, #8192
	sub	r2, r2, #12
	ldr	r2, [r2, #-1896]
	cmp	r2, r3
	beq	.L105
	sub	r3, fp, #8192
	sub	r3, r3, #12
	mov	r4, r3
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r0, [r3, #-1896]
	bl	fileno
	str	r0, [r4, #-1840]
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-1840]
	cmp	r3, #0
	blt	.L142
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r0, [r3, #-1840]
	bl	applySavedFileAttrToOutputFile
.L105:
	sub	r3, fp, #8192
	sub	r3, r3, #12
	mov	r4, r3
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r0, [r3, #-1892]
	bl	fclose
	str	r0, [r4, #-1836]
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-1836]
	cmn	r3, #1
	beq	.L143
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r0, [r3, #-1896]
	bl	ferror
	mov	r3, r0
	cmp	r3, #0
	bne	.L144
	sub	r3, fp, #8192
	sub	r3, r3, #12
	mov	r4, r3
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r0, [r3, #-1896]
	bl	fflush
	str	r0, [r4, #-1836]
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-1836]
	cmp	r3, #0
	bne	.L145
	ldr	r3, .L151+44
	ldr	r3, [r3]
	sub	r2, fp, #8192
	sub	r2, r2, #12
	ldr	r2, [r2, #-1896]
	cmp	r2, r3
	beq	.L110
	sub	r3, fp, #8192
	sub	r3, r3, #12
	mov	r4, r3
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r0, [r3, #-1896]
	bl	fclose
	str	r0, [r4, #-1836]
	ldr	r3, .L151+48
	mov	r2, #0
	str	r2, [r3]
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-1836]
	cmn	r3, #1
	beq	.L146
.L110:
	ldr	r3, .L151+48
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L151+12
	ldr	r3, [r3]
	cmp	r3, #1
	ble	.L111
	ldr	r3, .L151+16
	ldr	r3, [r3]
	mov	r2, #5
	mov	r1, #1
	ldr	r0, .L151+52
	bl	fwrite
.L111:
	mov	r3, #1
	b	.L130
.L137:
	nop
.L90:
	ldr	r3, .L151+56
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L147
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r0, [r3, #-1892]
	bl	rewind
.L118:
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r0, [r3, #-1892]
	bl	myfeof
	mov	r3, r0
	cmp	r3, #0
	bne	.L148
	sub	r3, fp, #8192
	sub	r3, r3, #12
	sub	r0, fp, #9984
	sub	r0, r0, #12
	sub	r0, r0, #20
	ldr	r3, [r3, #-1892]
	ldr	r2, .L151+28
	mov	r1, #1
	bl	fread
	mov	r3, r0
	sub	r2, fp, #8192
	sub	r2, r2, #12
	str	r3, [r2, #-1844]
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r0, [r3, #-1892]
	bl	ferror
	mov	r3, r0
	cmp	r3, #0
	bne	.L149
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-1844]
	cmp	r3, #0
	ble	.L116
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r2, [r3, #-1844]
	sub	r3, fp, #8192
	sub	r3, r3, #12
	sub	r0, fp, #9984
	sub	r0, r0, #12
	sub	r0, r0, #20
	ldr	r3, [r3, #-1896]
	mov	r1, #1
	bl	fwrite
.L116:
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r0, [r3, #-1896]
	bl	ferror
	mov	r3, r0
	cmp	r3, #0
	bne	.L150
	b	.L118
.L148:
	nop
	b	.L102
.L136:
	nop
	b	.L87
.L139:
	nop
	b	.L87
.L147:
	nop
.L87:
	sub	r3, fp, #8192
	sub	r3, r3, #12
	mov	r2, r3
	sub	r3, fp, #10048
	sub	r3, r3, #12
	sub	r3, r3, #28
	ldr	r1, [r2, #-1856]
	mov	r0, r3
	bl	BZ2_bzReadClose
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-1888]
	add	r3, r3, #9
	cmp	r3, #6
	ldrls	pc, [pc, r3, asl #2]
	b	.L119
.L121:
	.word	.L125
	.word	.L119
	.word	.L124
	.word	.L83
	.word	.L123
	.word	.L122
	.word	.L120
.L125:
	bl	configError
.L134:
	nop
	b	.L83
.L135:
	nop
	b	.L83
.L138:
	nop
	b	.L83
.L141:
	nop
	b	.L83
.L142:
	nop
	b	.L83
.L143:
	nop
	b	.L83
.L144:
	nop
	b	.L83
.L145:
	nop
	b	.L83
.L146:
	nop
	b	.L83
.L149:
	nop
	b	.L83
.L150:
	nop
.L83:
	bl	ioError
.L122:
	bl	crcError
.L120:
	bl	outOfMemory
.L124:
	bl	compressedStreamEOF
.L123:
	ldr	r3, .L151+60
	ldr	r3, [r3]
	sub	r2, fp, #8192
	sub	r2, r2, #12
	ldr	r2, [r2, #-1892]
	cmp	r2, r3
	beq	.L126
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r0, [r3, #-1892]
	bl	fclose
.L126:
	ldr	r3, .L151+44
	ldr	r3, [r3]
	sub	r2, fp, #8192
	sub	r2, r2, #12
	ldr	r2, [r2, #-1896]
	cmp	r2, r3
	beq	.L127
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r0, [r3, #-1896]
	bl	fclose
.L127:
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-1864]
	cmp	r3, #1
	bne	.L128
	mov	r3, #0
	b	.L130
.L128:
	ldr	r3, .L151+64
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L129
	ldr	r3, .L151+16
	ldr	r0, [r3]
	ldr	r3, .L151+68
	ldr	r2, [r3]
	ldr	r3, .L151+72
	ldr	r1, .L151+76
	bl	fprintf
.L129:
	mov	r3, #1
	b	.L130
.L119:
	ldr	r0, .L151+80
	bl	panic
.L130:
	ldr	r2, .L151
	ldr	r1, [r2]
	ldr	r2, [fp, #-16]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L131
	bl	__stack_chk_fail
.L131:
	mov	r0, r3
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L152:
	.align	2
.L151:
	.word	.LC14
	.word	srcMode
	.word	showProgress
	.word	verbosity
	.word	stderr
	.word	.LC1
	.word	smallMode
	.word	5000
	.word	1079574528
	.word	.LC9
	.word	.LC10
	.word	stdout
	.word	outputHandleJustInCase
	.word	.LC11
	.word	forceOverwrite
	.word	stdin
	.word	noisy
	.word	progName
	.word	inName
	.word	.LC12
	.word	.LC13
	.size	uncompressStream, .-uncompressStream
	.section	.rodata
	.align	2
.LC15:
	.ascii	"test:bzReadGetUnused\000"
	.align	2
.LC16:
	.ascii	"%s: %s: \000"
	.align	2
.LC17:
	.ascii	"data integrity (CRC) error in data\012\000"
	.align	2
.LC18:
	.ascii	"file ends unexpectedly\012\000"
	.align	2
.LC19:
	.ascii	"bad magic number (file not created by bzip2)\012\000"
	.align	2
.LC20:
	.ascii	"trailing garbage after EOF ignored\012\000"
	.align	2
.LC21:
	.ascii	"test:unexpected error\000"
	.align	2
.LC22:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	testStream, %function
testStream:
	@ args = 0, pretend = 0, frame = 10056
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #10048
	sub	sp, sp, #20
	sub	r3, fp, #8192
	sub	r3, r3, #12
	str	r0, [r3, #-1860]
	ldr	r3, .L193
	ldr	r3, [r3]
	str	r3, [fp, #-16]
	mov	r3,#0
	sub	r3, fp, #8192
	sub	r3, r3, #12
	mov	r2, r3
	mov	r3, #0
	str	r3, [r2, #-1828]
	sub	r3, fp, #8192
	sub	r3, r3, #12
	mov	r2, r3
	mov	r3, #0
	str	r3, [r2, #-1844]
	sub	r3, fp, #8192
	sub	r3, r3, #12
	mov	r2, r3
	mov	r3, #0
	str	r3, [r2, #-1836]
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r0, [r3, #-1860]
	bl	ferror
	mov	r3, r0
	cmp	r3, #0
	bne	.L186
.L154:
	ldr	r3, .L193+4
	ldr	r2, [r3]
	ldr	r3, .L193+8
	ldrb	r3, [r3]	@ zero_extendqisi2
	mov	ip, r3
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-1844]
	sub	r1, fp, #8192
	sub	r1, r1, #12
	mov	r4, r1
	sub	r1, fp, #8192
	sub	r1, r1, #12
	sub	r0, fp, #9984
	sub	r0, r0, #12
	sub	r0, r0, #60
	str	r3, [sp, #4]
	sub	r3, fp, #4992
	sub	r3, r3, #12
	sub	r3, r3, #12
	str	r3, [sp]
	mov	r3, ip
	ldr	r1, [r1, #-1860]
	bl	BZ2_bzReadOpen
	str	r0, [r4, #-1828]
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-1828]
	cmp	r3, #0
	beq	.L187
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-1852]
	cmp	r3, #0
	bne	.L187
	sub	r3, fp, #8192
	sub	r3, r3, #12
	mov	r2, r3
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-1836]
	add	r3, r3, #1
	str	r3, [r2, #-1836]
	b	.L159
.L160:
	sub	r3, fp, #8192
	sub	r3, r3, #12
	mov	r4, r3
	sub	r2, fp, #9984
	sub	r2, r2, #12
	sub	r2, r2, #20
	sub	r3, fp, #8192
	sub	r3, r3, #12
	mov	r1, r3
	sub	r0, fp, #9984
	sub	r0, r0, #12
	sub	r0, r0, #60
	ldr	r3, .L193+12
	ldr	r1, [r1, #-1828]
	bl	BZ2_bzRead
	str	r0, [r4, #-1816]
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-1852]
	cmn	r3, #5
	beq	.L188
.L159:
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-1852]
	cmp	r3, #0
	beq	.L160
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-1852]
	cmp	r3, #4
	bne	.L189
	sub	r3, fp, #9984
	sub	r3, r3, #12
	sub	r3, r3, #52
	sub	r2, fp, #9984
	sub	r2, r2, #12
	sub	r2, r2, #48
	sub	r1, fp, #8192
	sub	r1, r1, #12
	sub	r0, fp, #9984
	sub	r0, r0, #12
	sub	r0, r0, #60
	ldr	r1, [r1, #-1828]
	bl	BZ2_bzReadGetUnused
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-1852]
	cmp	r3, #0
	beq	.L162
	ldr	r0, .L193+16
	bl	panic
.L162:
	sub	r3, fp, #8192
	sub	r3, r3, #12
	mov	r2, r3
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-1840]
	str	r3, [r2, #-1824]
	sub	r3, fp, #8192
	sub	r3, r3, #12
	mov	r2, r3
	mov	r3, #0
	str	r3, [r2, #-1832]
	b	.L163
.L164:
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-1832]
	sub	r2, fp, #8192
	sub	r2, r2, #12
	ldr	r2, [r2, #-1824]
	add	r3, r2, r3
	ldrb	r2, [r3]	@ zero_extendqisi2
	sub	r3, fp, #4096
	sub	r3, r3, #12
	mov	r1, r3
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-1832]
	add	r3, r1, r3
	sub	r3, r3, #908
	strb	r2, [r3]
	sub	r3, fp, #8192
	sub	r3, r3, #12
	mov	r2, r3
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-1832]
	add	r3, r3, #1
	str	r3, [r2, #-1832]
.L163:
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-1844]
	sub	r2, fp, #8192
	sub	r2, r2, #12
	ldr	r2, [r2, #-1832]
	cmp	r2, r3
	blt	.L164
	sub	r3, fp, #8192
	sub	r3, r3, #12
	mov	r2, r3
	sub	r3, fp, #9984
	sub	r3, r3, #12
	sub	r3, r3, #60
	ldr	r1, [r2, #-1828]
	mov	r0, r3
	bl	BZ2_bzReadClose
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-1852]
	cmp	r3, #0
	beq	.L165
	ldr	r0, .L193+16
	bl	panic
.L165:
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-1844]
	cmp	r3, #0
	bne	.L154
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r0, [r3, #-1860]
	bl	myfeof
	mov	r3, r0
	cmp	r3, #0
	bne	.L190
	b	.L154
.L190:
	nop
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r0, [r3, #-1860]
	bl	ferror
	mov	r3, r0
	cmp	r3, #0
	bne	.L191
	sub	r3, fp, #8192
	sub	r3, r3, #12
	mov	r4, r3
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r0, [r3, #-1860]
	bl	fclose
	str	r0, [r4, #-1820]
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-1820]
	cmn	r3, #1
	beq	.L192
	ldr	r3, .L193+4
	ldr	r3, [r3]
	cmp	r3, #1
	ble	.L170
	ldr	r3, .L193+20
	ldr	r3, [r3]
	mov	r2, #5
	mov	r1, #1
	ldr	r0, .L193+24
	bl	fwrite
.L170:
	mov	r3, #1
	b	.L183
.L187:
	nop
	b	.L158
.L188:
	nop
	b	.L158
.L189:
	nop
.L158:
	sub	r3, fp, #8192
	sub	r3, r3, #12
	mov	r2, r3
	sub	r3, fp, #9984
	sub	r3, r3, #12
	sub	r3, r3, #56
	ldr	r1, [r2, #-1828]
	mov	r0, r3
	bl	BZ2_bzReadClose
	ldr	r3, .L193+4
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L172
	ldr	r3, .L193+20
	ldr	r0, [r3]
	ldr	r3, .L193+28
	ldr	r2, [r3]
	ldr	r3, .L193+32
	ldr	r1, .L193+36
	bl	fprintf
.L172:
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-1852]
	add	r3, r3, #9
	cmp	r3, #6
	ldrls	pc, [pc, r3, asl #2]
	b	.L173
.L175:
	.word	.L179
	.word	.L173
	.word	.L178
	.word	.L155
	.word	.L177
	.word	.L176
	.word	.L174
.L179:
	bl	configError
.L186:
	nop
	b	.L155
.L191:
	nop
	b	.L155
.L192:
	nop
.L155:
	bl	ioError
.L176:
	ldr	r3, .L193+20
	ldr	r3, [r3]
	mov	r2, #35
	mov	r1, #1
	ldr	r0, .L193+40
	bl	fwrite
	mov	r3, #0
	b	.L183
.L174:
	bl	outOfMemory
.L178:
	ldr	r3, .L193+20
	ldr	r3, [r3]
	mov	r2, #23
	mov	r1, #1
	ldr	r0, .L193+44
	bl	fwrite
	mov	r3, #0
	b	.L183
.L177:
	ldr	r3, .L193+48
	ldr	r3, [r3]
	sub	r2, fp, #8192
	sub	r2, r2, #12
	ldr	r2, [r2, #-1860]
	cmp	r2, r3
	beq	.L180
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r0, [r3, #-1860]
	bl	fclose
.L180:
	sub	r3, fp, #8192
	sub	r3, r3, #12
	ldr	r3, [r3, #-1836]
	cmp	r3, #1
	bne	.L181
	ldr	r3, .L193+20
	ldr	r3, [r3]
	mov	r2, #45
	mov	r1, #1
	ldr	r0, .L193+52
	bl	fwrite
	mov	r3, #0
	b	.L183
.L181:
	ldr	r3, .L193+56
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L182
	ldr	r3, .L193+20
	ldr	r3, [r3]
	mov	r2, #35
	mov	r1, #1
	ldr	r0, .L193+60
	bl	fwrite
.L182:
	mov	r3, #1
	b	.L183
.L173:
	ldr	r0, .L193+64
	bl	panic
.L183:
	ldr	r2, .L193
	ldr	r1, [r2]
	ldr	r2, [fp, #-16]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L184
	bl	__stack_chk_fail
.L184:
	mov	r0, r3
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L194:
	.align	2
.L193:
	.word	.LC22
	.word	verbosity
	.word	smallMode
	.word	5000
	.word	.LC15
	.word	stderr
	.word	.LC11
	.word	progName
	.word	inName
	.word	.LC16
	.word	.LC17
	.word	.LC18
	.word	stdin
	.word	.LC19
	.word	noisy
	.word	.LC20
	.word	.LC21
	.size	testStream, .-testStream
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	setExit, %function
setExit:
	@ 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, .L198
	ldr	r3, [r3]
	ldr	r2, [fp, #-8]
	cmp	r2, r3
	ble	.L197
	ldr	r2, .L198
	ldr	r3, [fp, #-8]
	str	r3, [r2]
.L197:
	nop
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
.L199:
	.align	2
.L198:
	.word	exitValue
	.size	setExit, .-setExit
	.section	.rodata
	.align	2
.LC23:
	.ascii	"\012It is possible that the compressed file(s) have"
	.ascii	" become corrupted.\012You can use the -tvv option t"
	.ascii	"o test integrity of such files.\012\012You can use "
	.ascii	"the `bzip2recover' program to attempt to recover\012"
	.ascii	"data from undamaged sections of corrupted files.\012"
	.ascii	"\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	cadvise, %function
cadvise:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	ldr	r3, .L203
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L202
	ldr	r3, .L203+4
	ldr	r3, [r3]
	mov	r2, #240
	mov	r1, #1
	ldr	r0, .L203+8
	bl	fwrite
.L202:
	nop
	pop	{fp, pc}
.L204:
	.align	2
.L203:
	.word	noisy
	.word	stderr
	.word	.LC23
	.size	cadvise, .-cadvise
	.section	.rodata
	.align	2
.LC24:
	.ascii	"\011Input file = %s, output file = %s\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	showFileNames, %function
showFileNames:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	ldr	r3, .L208
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L207
	ldr	r3, .L208+4
	ldr	r0, [r3]
	ldr	r3, .L208+8
	ldr	r2, .L208+12
	ldr	r1, .L208+16
	bl	fprintf
.L207:
	nop
	pop	{fp, pc}
.L209:
	.align	2
.L208:
	.word	noisy
	.word	stderr
	.word	outName
	.word	inName
	.word	.LC24
	.size	showFileNames, .-showFileNames
	.section	.rodata
	.align	2
.LC25:
	.ascii	"%s: Deleting output file %s, if it exists.\012\000"
	.align	2
.LC26:
	.ascii	"%s: WARNING: deletion of output file (apparently) f"
	.ascii	"ailed.\012\000"
	.align	2
.LC27:
	.ascii	"%s: WARNING: deletion of output file suppressed\012"
	.ascii	"\000"
	.align	2
.LC28:
	.ascii	"%s:    since input file no longer exists.  Output f"
	.ascii	"ile\012\000"
	.align	2
.LC29:
	.ascii	"%s:    `%s' may be incomplete.\012\000"
	.align	2
.LC30:
	.ascii	"%s:    I suggest doing an integrity test (bzip2 -tv"
	.ascii	") of it.\012\000"
	.align	2
.LC31:
	.ascii	"%s: WARNING: some files have not been processed:\012"
	.ascii	"%s:    %d specified on command line, %d not process"
	.ascii	"ed yet.\012\012\000"
	.align	2
.LC32:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	cleanUpAndFail, %function
cleanUpAndFail:
	@ args = 0, pretend = 0, frame = 112
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #120
	str	r0, [fp, #-112]
	ldr	r3, .L217
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	ldr	r3, .L217+4
	ldr	r3, [r3]
	cmp	r3, #3
	bne	.L211
	ldr	r3, .L217+8
	ldr	r3, [r3]
	cmp	r3, #3
	beq	.L211
	ldr	r3, .L217+12
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L211
	sub	r3, fp, #100
	mov	r1, r3
	ldr	r0, .L217+16
	bl	stat
	str	r0, [fp, #-104]
	ldr	r3, [fp, #-104]
	cmp	r3, #0
	bne	.L212
	ldr	r3, .L217+20
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L213
	ldr	r3, .L217+24
	ldr	r0, [r3]
	ldr	r3, .L217+28
	ldr	r2, [r3]
	ldr	r3, .L217+32
	ldr	r1, .L217+36
	bl	fprintf
.L213:
	ldr	r3, .L217+40
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L214
	ldr	r3, .L217+40
	ldr	r3, [r3]
	mov	r0, r3
	bl	fclose
.L214:
	ldr	r0, .L217+32
	bl	remove
	str	r0, [fp, #-104]
	ldr	r3, [fp, #-104]
	cmp	r3, #0
	beq	.L211
	ldr	r3, .L217+24
	ldr	r3, [r3]
	ldr	r2, .L217+28
	ldr	r2, [r2]
	ldr	r1, .L217+44
	mov	r0, r3
	bl	fprintf
	b	.L211
.L212:
	ldr	r3, .L217+24
	ldr	r3, [r3]
	ldr	r2, .L217+28
	ldr	r2, [r2]
	ldr	r1, .L217+48
	mov	r0, r3
	bl	fprintf
	ldr	r3, .L217+24
	ldr	r3, [r3]
	ldr	r2, .L217+28
	ldr	r2, [r2]
	ldr	r1, .L217+52
	mov	r0, r3
	bl	fprintf
	ldr	r3, .L217+24
	ldr	r0, [r3]
	ldr	r3, .L217+28
	ldr	r2, [r3]
	ldr	r3, .L217+32
	ldr	r1, .L217+56
	bl	fprintf
	ldr	r3, .L217+24
	ldr	r3, [r3]
	ldr	r2, .L217+28
	ldr	r2, [r2]
	ldr	r1, .L217+60
	mov	r0, r3
	bl	fprintf
.L211:
	ldr	r3, .L217+20
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L215
	ldr	r3, .L217+64
	ldr	r3, [r3]
	cmp	r3, #0
	ble	.L215
	ldr	r3, .L217+68
	ldr	r2, [r3]
	ldr	r3, .L217+64
	ldr	r3, [r3]
	cmp	r2, r3
	bge	.L215
	ldr	r3, .L217+24
	ldr	r0, [r3]
	ldr	r3, .L217+28
	ldr	ip, [r3]
	ldr	r3, .L217+28
	ldr	lr, [r3]
	ldr	r3, .L217+64
	ldr	r3, [r3]
	ldr	r2, .L217+64
	ldr	r1, [r2]
	ldr	r2, .L217+68
	ldr	r2, [r2]
	sub	r2, r1, r2
	str	r2, [sp, #4]
	str	r3, [sp]
	mov	r3, lr
	mov	r2, ip
	ldr	r1, .L217+72
	bl	fprintf
.L215:
	ldr	r0, [fp, #-112]
	bl	setExit
	ldr	r3, .L217+76
	ldr	r3, [r3]
	mov	r0, r3
	bl	exit
.L218:
	.align	2
.L217:
	.word	.LC32
	.word	srcMode
	.word	opMode
	.word	deleteOutputOnInterrupt
	.word	inName
	.word	noisy
	.word	stderr
	.word	progName
	.word	outName
	.word	.LC25
	.word	outputHandleJustInCase
	.word	.LC26
	.word	.LC27
	.word	.LC28
	.word	.LC29
	.word	.LC30
	.word	numFileNames
	.word	numFilesProcessed
	.word	.LC31
	.word	exitValue
	.size	cleanUpAndFail, .-cleanUpAndFail
	.section	.rodata
	.align	2
.LC33:
	.ascii	"\012%s: PANIC -- internal consistency error:\012\011"
	.ascii	"%s\012\011This is a BUG.  Please report it to me at"
	.ascii	":\012\011jseward@bzip.org\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	panic, %function
panic:
	@ 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, .L220
	ldr	r0, [r3]
	ldr	r3, .L220+4
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	ldr	r1, .L220+8
	bl	fprintf
	bl	showFileNames
	mov	r0, #3
	bl	cleanUpAndFail
.L221:
	.align	2
.L220:
	.word	stderr
	.word	progName
	.word	.LC33
	.size	panic, .-panic
	.section	.rodata
	.align	2
.LC34:
	.ascii	"\012%s: Data integrity error when decompressing.\012"
	.ascii	"\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	crcError, %function
crcError:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	ldr	r3, .L223
	ldr	r3, [r3]
	ldr	r2, .L223+4
	ldr	r2, [r2]
	ldr	r1, .L223+8
	mov	r0, r3
	bl	fprintf
	bl	showFileNames
	bl	cadvise
	mov	r0, #2
	bl	cleanUpAndFail
.L224:
	.align	2
.L223:
	.word	stderr
	.word	progName
	.word	.LC34
	.size	crcError, .-crcError
	.section	.rodata
	.align	2
.LC35:
	.ascii	"\012%s: Compressed file ends unexpectedly;\012\011p"
	.ascii	"erhaps it is corrupted?  *Possible* reason follows."
	.ascii	"\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	compressedStreamEOF, %function
compressedStreamEOF:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	ldr	r3, .L227
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L226
	ldr	r3, .L227+4
	ldr	r3, [r3]
	ldr	r2, .L227+8
	ldr	r2, [r2]
	ldr	r1, .L227+12
	mov	r0, r3
	bl	fprintf
	ldr	r3, .L227+8
	ldr	r3, [r3]
	mov	r0, r3
	bl	perror
	bl	showFileNames
	bl	cadvise
.L226:
	mov	r0, #2
	bl	cleanUpAndFail
.L228:
	.align	2
.L227:
	.word	noisy
	.word	stderr
	.word	progName
	.word	.LC35
	.size	compressedStreamEOF, .-compressedStreamEOF
	.section	.rodata
	.align	2
.LC36:
	.ascii	"\012%s: I/O or other error, bailing out.  Possible "
	.ascii	"reason follows.\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	ioError, %function
ioError:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	ldr	r3, .L230
	ldr	r3, [r3]
	ldr	r2, .L230+4
	ldr	r2, [r2]
	ldr	r1, .L230+8
	mov	r0, r3
	bl	fprintf
	ldr	r3, .L230+4
	ldr	r3, [r3]
	mov	r0, r3
	bl	perror
	bl	showFileNames
	mov	r0, #1
	bl	cleanUpAndFail
.L231:
	.align	2
.L230:
	.word	stderr
	.word	progName
	.word	.LC36
	.size	ioError, .-ioError
	.section	.rodata
	.align	2
.LC37:
	.ascii	"\012%s: Control-C or similar caught, quitting.\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	mySignalCatcher, %function
mySignalCatcher:
	@ 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, .L233
	ldr	r3, [r3]
	ldr	r2, .L233+4
	ldr	r2, [r2]
	ldr	r1, .L233+8
	mov	r0, r3
	bl	fprintf
	mov	r0, #1
	bl	cleanUpAndFail
.L234:
	.align	2
.L233:
	.word	stderr
	.word	progName
	.word	.LC37
	.size	mySignalCatcher, .-mySignalCatcher
	.section	.rodata
	.align	2
.LC38:
	.ascii	"\012%s: Caught a SIGSEGV or SIGBUS whilst compressi"
	.ascii	"ng.\012\012   Possible causes are (most likely firs"
	.ascii	"t):\012   (1) This computer has unreliable memory o"
	.ascii	"r cache hardware\012       (a surprisingly common p"
	.ascii	"roblem; try a different machine.)\012   (2) A bug i"
	.ascii	"n the compiler used to create this executable\012  "
	.ascii	"     (unlikely, if you didn't compile bzip2 yoursel"
	.ascii	"f.)\012   (3) A real bug in bzip2 -- I hope this sh"
	.ascii	"ould never be the case.\012   The user's manual, Se"
	.ascii	"ction 4.3, has more info on (1) and (2).\012   \012"
	.ascii	"   If you suspect this is a bug in bzip2, or are un"
	.ascii	"sure about (1)\012   or (2), feel free to report it"
	.ascii	" to me at: jseward@bzip.org.\012   Section 4.3 of t"
	.ascii	"he user's manual describes the info a useful\012   "
	.ascii	"bug report should have.  If the manual is available"
	.ascii	" on your\012   system, please try and read it befor"
	.ascii	"e mailing me.  If you don't\012   have the manual o"
	.ascii	"r can't be bothered to read it, mail me anyway.\012"
	.ascii	"\012\000"
	.align	2
.LC39:
	.ascii	"\012%s: Caught a SIGSEGV or SIGBUS whilst decompres"
	.ascii	"sing.\012\012   Possible causes are (most likely fi"
	.ascii	"rst):\012   (1) The compressed data is corrupted, a"
	.ascii	"nd bzip2's usual checks\012       failed to detect "
	.ascii	"this.  Try bzip2 -tvv my_file.bz2.\012   (2) This c"
	.ascii	"omputer has unreliable memory or cache hardware\012"
	.ascii	"       (a surprisingly common problem; try a differ"
	.ascii	"ent machine.)\012   (3) A bug in the compiler used "
	.ascii	"to create this executable\012       (unlikely, if y"
	.ascii	"ou didn't compile bzip2 yourself.)\012   (4) A real"
	.ascii	" bug in bzip2 -- I hope this should never be the ca"
	.ascii	"se.\012   The user's manual, Section 4.3, has more "
	.ascii	"info on (2) and (3).\012   \012   If you suspect th"
	.ascii	"is is a bug in bzip2, or are unsure about (2)\012  "
	.ascii	" or (3), feel free to report it to me at: jseward@b"
	.ascii	"zip.org.\012   Section 4.3 of the user's manual des"
	.ascii	"cribes the info a useful\012   bug report should ha"
	.ascii	"ve.  If the manual is available on your\012   syste"
	.ascii	"m, please try and read it before mailing me.  If yo"
	.ascii	"u don't\012   have the manual or can't be bothered "
	.ascii	"to read it, mail me anyway.\012\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	mySIGSEGVorSIGBUScatcher, %function
mySIGSEGVorSIGBUScatcher:
	@ 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, .L239
	ldr	r3, [r3]
	cmp	r3, #1
	bne	.L236
	ldr	r3, .L239+4
	ldr	r3, [r3]
	ldr	r2, .L239+8
	ldr	r2, [r2]
	ldr	r1, .L239+12
	mov	r0, r3
	bl	fprintf
	b	.L237
.L236:
	ldr	r3, .L239+4
	ldr	r3, [r3]
	ldr	r2, .L239+8
	ldr	r2, [r2]
	ldr	r1, .L239+16
	mov	r0, r3
	bl	fprintf
.L237:
	bl	showFileNames
	ldr	r3, .L239
	ldr	r3, [r3]
	cmp	r3, #1
	bne	.L238
	mov	r0, #3
	bl	cleanUpAndFail
.L238:
	bl	cadvise
	mov	r0, #2
	bl	cleanUpAndFail
.L240:
	.align	2
.L239:
	.word	opMode
	.word	stderr
	.word	progName
	.word	.LC38
	.word	.LC39
	.size	mySIGSEGVorSIGBUScatcher, .-mySIGSEGVorSIGBUScatcher
	.section	.rodata
	.align	2
.LC40:
	.ascii	"\012%s: couldn't allocate enough memory\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	outOfMemory, %function
outOfMemory:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	ldr	r3, .L242
	ldr	r3, [r3]
	ldr	r2, .L242+4
	ldr	r2, [r2]
	ldr	r1, .L242+8
	mov	r0, r3
	bl	fprintf
	bl	showFileNames
	mov	r0, #1
	bl	cleanUpAndFail
.L243:
	.align	2
.L242:
	.word	stderr
	.word	progName
	.word	.LC40
	.size	outOfMemory, .-outOfMemory
	.section	.rodata
	.align	2
.LC41:
	.ascii	"bzip2: I'm not configured correctly for this platfo"
	.ascii	"rm!\012\011I require Int32, Int16 and Char to have "
	.ascii	"sizes\012\011of 4, 2 and 1 bytes to run properly, a"
	.ascii	"nd they don't.\012\011Probably you can fix this by "
	.ascii	"defining them correctly,\012\011and recompiling.  B"
	.ascii	"ye!\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	configError, %function
configError:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	ldr	r3, .L245
	ldr	r3, [r3]
	mov	r2, #235
	mov	r1, #1
	ldr	r0, .L245+4
	bl	fwrite
	mov	r0, #3
	bl	setExit
	ldr	r3, .L245+8
	ldr	r3, [r3]
	mov	r0, r3
	bl	exit
.L246:
	.align	2
.L245:
	.word	stderr
	.word	.LC41
	.word	exitValue
	.size	configError, .-configError
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	pad, %function
pad:
	@ 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
	str	r0, [fp, #-24]
	ldr	r0, [fp, #-24]
	bl	strlen
	mov	r3, r0
	mov	r2, r3
	ldr	r3, .L253
	ldr	r3, [r3]
	cmp	r2, r3
	bge	.L252
	mov	r3, #1
	str	r3, [fp, #-16]
	b	.L250
.L251:
	ldr	r3, .L253+4
	ldr	r3, [r3]
	mov	r1, r3
	mov	r0, #32
	bl	fputc
	ldr	r3, [fp, #-16]
	add	r3, r3, #1
	str	r3, [fp, #-16]
.L250:
	ldr	r3, .L253
	ldr	r4, [r3]
	ldr	r0, [fp, #-24]
	bl	strlen
	mov	r3, r0
	sub	r3, r4, r3
	ldr	r2, [fp, #-16]
	cmp	r2, r3
	ble	.L251
	b	.L247
.L252:
	nop
.L247:
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L254:
	.align	2
.L253:
	.word	longestFileName
	.word	stderr
	.size	pad, .-pad
	.section	.rodata
	.align	2
.LC42:
	.ascii	"bzip2: file name\012`%s'\012is suspiciously (more t"
	.ascii	"han %d chars) long.\012Try using a reasonable file "
	.ascii	"name instead.  Sorry! :-)\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	copyFileName, %function
copyFileName:
	@ 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	strlen
	mov	r3, r0
	cmp	r3, #1024
	bls	.L256
	ldr	r3, .L257
	ldr	r0, [r3]
	mov	r3, #1024
	ldr	r2, [fp, #-12]
	ldr	r1, .L257+4
	bl	fprintf
	mov	r0, #1
	bl	setExit
	ldr	r3, .L257+8
	ldr	r3, [r3]
	mov	r0, r3
	bl	exit
.L256:
	mov	r2, #1024
	ldr	r1, [fp, #-12]
	ldr	r0, [fp, #-8]
	bl	strncpy
	ldr	r3, [fp, #-8]
	add	r3, r3, #1024
	mov	r2, #0
	strb	r2, [r3]
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L258:
	.align	2
.L257:
	.word	stderr
	.word	.LC42
	.word	exitValue
	.size	copyFileName, .-copyFileName
	.section	.rodata
	.align	2
.LC43:
	.ascii	"rb\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	fileExists, %function
fileExists:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	ldr	r1, .L262
	ldr	r0, [fp, #-16]
	bl	fopen
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	movne	r3, #1
	moveq	r3, #0
	and	r3, r3, #255
	strb	r3, [fp, #-9]
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	beq	.L260
	ldr	r0, [fp, #-8]
	bl	fclose
.L260:
	ldrb	r3, [fp, #-9]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L263:
	.align	2
.L262:
	.word	.LC43
	.size	fileExists, .-fileExists
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	fopen_output_safely, %function
fopen_output_safely:
	@ 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]
	mov	r2, #384
	mov	r1, #193
	ldr	r0, [fp, #-16]
	bl	open
	str	r0, [fp, #-12]
	ldr	r3, [fp, #-12]
	cmn	r3, #1
	bne	.L265
	mov	r3, #0
	b	.L266
.L265:
	ldr	r1, [fp, #-20]
	ldr	r0, [fp, #-12]
	bl	fdopen
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	bne	.L267
	ldr	r0, [fp, #-12]
	bl	close
.L267:
	ldr	r3, [fp, #-8]
.L266:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	fopen_output_safely, .-fopen_output_safely
	.section	.rodata
	.align	2
.LC44:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	notAStandardFile, %function
notAStandardFile:
	@ args = 0, pretend = 0, frame = 112
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #112
	str	r0, [fp, #-112]
	ldr	r3, .L274
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	sub	r3, fp, #100
	mov	r1, r3
	ldr	r0, [fp, #-112]
	bl	lstat
	str	r0, [fp, #-104]
	ldr	r3, [fp, #-104]
	cmp	r3, #0
	beq	.L269
	mov	r3, #1
	b	.L272
.L269:
	ldr	r3, [fp, #-84]
	and	r3, r3, #61440
	cmp	r3, #32768
	bne	.L271
	mov	r3, #0
	b	.L272
.L271:
	mov	r3, #1
.L272:
	ldr	r2, .L274
	ldr	r1, [r2]
	ldr	r2, [fp, #-8]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L273
	bl	__stack_chk_fail
.L273:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L275:
	.align	2
.L274:
	.word	.LC44
	.size	notAStandardFile, .-notAStandardFile
	.section	.rodata
	.align	2
.LC45:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	countHardLinks, %function
countHardLinks:
	@ args = 0, pretend = 0, frame = 112
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #112
	str	r0, [fp, #-112]
	ldr	r3, .L281
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	sub	r3, fp, #100
	mov	r1, r3
	ldr	r0, [fp, #-112]
	bl	lstat
	str	r0, [fp, #-104]
	ldr	r3, [fp, #-104]
	cmp	r3, #0
	beq	.L277
	mov	r3, #0
	b	.L279
.L277:
	ldr	r3, [fp, #-80]
	sub	r3, r3, #1
.L279:
	ldr	r2, .L281
	ldr	r1, [r2]
	ldr	r2, [fp, #-8]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L280
	bl	__stack_chk_fail
.L280:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L282:
	.align	2
.L281:
	.word	.LC45
	.size	countHardLinks, .-countHardLinks
	.local	fileMetaInfo
	.comm	fileMetaInfo,88,8
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	saveInputFileMetaInfo, %function
saveInputFileMetaInfo:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	ldr	r1, .L286
	ldr	r0, [fp, #-16]
	bl	stat
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	beq	.L285
	bl	ioError
.L285:
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L287:
	.align	2
.L286:
	.word	fileMetaInfo
	.size	saveInputFileMetaInfo, .-saveInputFileMetaInfo
	.section	.rodata
	.align	2
.LC46:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	applySavedTimeInfoToOutputFile, %function
applySavedTimeInfoToOutputFile:
	@ 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, .L292
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	ldr	r3, .L292+4
	ldr	r3, [r3, #56]
	str	r3, [fp, #-16]
	ldr	r3, .L292+4
	ldr	r3, [r3, #64]
	str	r3, [fp, #-12]
	sub	r3, fp, #16
	mov	r1, r3
	ldr	r0, [fp, #-24]
	bl	utime
	str	r0, [fp, #-20]
	ldr	r3, [fp, #-20]
	cmp	r3, #0
	beq	.L291
	bl	ioError
.L291:
	nop
	ldr	r3, .L292
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L290
	bl	__stack_chk_fail
.L290:
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L293:
	.align	2
.L292:
	.word	.LC46
	.word	fileMetaInfo
	.size	applySavedTimeInfoToOutputFile, .-applySavedTimeInfoToOutputFile
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	applySavedFileAttrToOutputFile, %function
applySavedFileAttrToOutputFile:
	@ 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, .L296
	ldr	r3, [r3, #16]
	mov	r1, r3
	ldr	r0, [fp, #-16]
	bl	fchmod
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	beq	.L295
	bl	ioError
.L295:
	ldr	r3, .L296
	ldr	r3, [r3, #24]
	ldr	r2, .L296
	ldr	r2, [r2, #28]
	mov	r1, r3
	ldr	r0, [fp, #-16]
	bl	fchown
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L297:
	.align	2
.L296:
	.word	fileMetaInfo
	.size	applySavedFileAttrToOutputFile, .-applySavedFileAttrToOutputFile
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	containsDubiousChars, %function
containsDubiousChars:
	@ 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]
	mov	r3, #0
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	containsDubiousChars, .-containsDubiousChars
	.global	zSuffix
	.section	.rodata
	.align	2
.LC47:
	.ascii	".bz2\000"
	.align	2
.LC48:
	.ascii	".bz\000"
	.align	2
.LC49:
	.ascii	".tbz2\000"
	.align	2
.LC50:
	.ascii	".tbz\000"
	.data
	.align	2
	.type	zSuffix, %object
	.size	zSuffix, 16
zSuffix:
	.word	.LC47
	.word	.LC48
	.word	.LC49
	.word	.LC50
	.global	unzSuffix
	.section	.rodata
	.align	2
.LC51:
	.ascii	"\000"
	.align	2
.LC52:
	.ascii	".tar\000"
	.data
	.align	2
	.type	unzSuffix, %object
	.size	unzSuffix, 16
unzSuffix:
	.word	.LC51
	.word	.LC51
	.word	.LC52
	.word	.LC52
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	hasSuffix, %function
hasSuffix:
	@ 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]
	ldr	r0, [fp, #-16]
	bl	strlen
	mov	r3, r0
	str	r3, [fp, #-12]
	ldr	r0, [fp, #-20]
	bl	strlen
	mov	r3, r0
	str	r3, [fp, #-8]
	ldr	r2, [fp, #-12]
	ldr	r3, [fp, #-8]
	cmp	r2, r3
	bge	.L301
	mov	r3, #0
	b	.L302
.L301:
	ldr	r2, [fp, #-12]
	ldr	r3, [fp, #-8]
	sub	r3, r2, r3
	ldr	r2, [fp, #-16]
	add	r3, r2, r3
	ldr	r1, [fp, #-20]
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L303
	mov	r3, #1
	b	.L302
.L303:
	mov	r3, #0
.L302:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	hasSuffix, .-hasSuffix
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	mapSuffix, %function
mapSuffix:
	@ 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
	str	r0, [fp, #-16]
	str	r1, [fp, #-20]
	str	r2, [fp, #-24]
	ldr	r1, [fp, #-20]
	ldr	r0, [fp, #-16]
	bl	hasSuffix
	mov	r3, r0
	cmp	r3, #0
	bne	.L305
	mov	r3, #0
	b	.L306
.L305:
	ldr	r0, [fp, #-16]
	bl	strlen
	mov	r4, r0
	ldr	r0, [fp, #-20]
	bl	strlen
	mov	r3, r0
	sub	r3, r4, r3
	ldr	r2, [fp, #-16]
	add	r3, r2, r3
	mov	r2, #0
	strb	r2, [r3]
	ldr	r1, [fp, #-24]
	ldr	r0, [fp, #-16]
	bl	strcat
	mov	r3, #1
.L306:
	mov	r0, r3
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
	.size	mapSuffix, .-mapSuffix
	.section	.rodata
	.align	2
.LC53:
	.ascii	"compress: bad modes\012\000"
	.align	2
.LC54:
	.ascii	"(stdin)\000"
	.align	2
.LC55:
	.ascii	"(stdout)\000"
	.align	2
.LC56:
	.ascii	"%s: There are no files matching `%s'.\012\000"
	.align	2
.LC57:
	.ascii	"%s: Can't open input file %s: %s.\012\000"
	.align	2
.LC58:
	.ascii	"%s: Input file %s already has %s suffix.\012\000"
	.align	2
.LC59:
	.ascii	"%s: Input file %s is a directory.\012\000"
	.align	2
.LC60:
	.ascii	"%s: Input file %s is not a normal file.\012\000"
	.align	2
.LC61:
	.ascii	"%s: Output file %s already exists.\012\000"
	.align	2
.LC62:
	.ascii	"s\000"
	.align	2
.LC63:
	.ascii	"%s: Input file %s has %d other link%s.\012\000"
	.align	2
.LC64:
	.ascii	"%s: I won't write compressed data to a terminal.\012"
	.ascii	"\000"
	.align	2
.LC65:
	.ascii	"%s: For help, type: `%s --help'.\012\000"
	.align	2
.LC66:
	.ascii	"wb\000"
	.align	2
.LC67:
	.ascii	"%s: Can't create output file %s: %s.\012\000"
	.align	2
.LC68:
	.ascii	"compress: bad srcMode\000"
	.align	2
.LC69:
	.ascii	"  %s: \000"
	.align	2
.LC70:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	compress, %function
compress:
	@ args = 0, pretend = 0, frame = 128
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	sub	sp, sp, #136
	str	r0, [fp, #-136]
	ldr	r3, .L351
	ldr	r3, [r3]
	str	r3, [fp, #-16]
	mov	r3,#0
	ldr	r3, .L351+4
	mov	r2, #0
	strb	r2, [r3]
	ldr	r3, [fp, #-136]
	cmp	r3, #0
	bne	.L308
	ldr	r3, .L351+8
	ldr	r3, [r3]
	cmp	r3, #1
	beq	.L308
	ldr	r0, .L351+12
	bl	panic
.L308:
	ldr	r3, .L351+8
	ldr	r3, [r3]
	cmp	r3, #3
	beq	.L309
	cmp	r3, #3
	bgt	.L310
	cmp	r3, #1
	beq	.L311
	cmp	r3, #2
	beq	.L312
	b	.L310
.L311:
	ldr	r1, .L351+16
	ldr	r0, .L351+20
	bl	copyFileName
	ldr	r1, .L351+24
	ldr	r0, .L351+28
	bl	copyFileName
	b	.L310
.L309:
	ldr	r1, [fp, #-136]
	ldr	r0, .L351+20
	bl	copyFileName
	ldr	r1, [fp, #-136]
	ldr	r0, .L351+28
	bl	copyFileName
	ldr	r0, .L351+28
	bl	strlen
	mov	r3, r0
	mov	r2, r3
	ldr	r3, .L351+28
	add	r3, r2, r3
	ldr	r2, .L351+32
	mov	r0, r3
	mov	r1, r2
	mov	r3, #5
	mov	r2, r3
	bl	memcpy
	b	.L310
.L312:
	ldr	r1, [fp, #-136]
	ldr	r0, .L351+20
	bl	copyFileName
	ldr	r1, .L351+24
	ldr	r0, .L351+28
	bl	copyFileName
	nop
.L310:
	ldr	r3, .L351+8
	ldr	r3, [r3]
	cmp	r3, #1
	beq	.L313
	ldr	r0, .L351+20
	bl	containsDubiousChars
	mov	r3, r0
	cmp	r3, #0
	beq	.L313
	ldr	r3, .L351+36
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L314
	ldr	r3, .L351+40
	ldr	r0, [r3]
	ldr	r3, .L351+44
	ldr	r2, [r3]
	ldr	r3, .L351+20
	ldr	r1, .L351+48
	bl	fprintf
.L314:
	mov	r0, #1
	bl	setExit
	b	.L307
.L313:
	ldr	r3, .L351+8
	ldr	r3, [r3]
	cmp	r3, #1
	beq	.L316
	ldr	r0, .L351+20
	bl	fileExists
	mov	r3, r0
	cmp	r3, #0
	bne	.L316
	ldr	r3, .L351+40
	ldr	r4, [r3]
	ldr	r3, .L351+44
	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, .L351+20
	mov	r2, r5
	ldr	r1, .L351+52
	mov	r0, r4
	bl	fprintf
	mov	r0, #1
	bl	setExit
	b	.L307
.L316:
	mov	r3, #0
	str	r3, [fp, #-120]
	b	.L317
.L320:
	ldr	r2, .L351+56
	ldr	r3, [fp, #-120]
	ldr	r3, [r2, r3, lsl #2]
	mov	r1, r3
	ldr	r0, .L351+20
	bl	hasSuffix
	mov	r3, r0
	cmp	r3, #0
	beq	.L318
	ldr	r3, .L351+36
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L319
	ldr	r3, .L351+40
	ldr	r0, [r3]
	ldr	r3, .L351+44
	ldr	r2, [r3]
	ldr	r1, .L351+56
	ldr	r3, [fp, #-120]
	ldr	r3, [r1, r3, lsl #2]
	str	r3, [sp]
	ldr	r3, .L351+20
	ldr	r1, .L351+60
	bl	fprintf
.L319:
	mov	r0, #1
	bl	setExit
	b	.L307
.L318:
	ldr	r3, [fp, #-120]
	add	r3, r3, #1
	str	r3, [fp, #-120]
.L317:
	ldr	r3, [fp, #-120]
	cmp	r3, #3
	ble	.L320
	ldr	r3, .L351+8
	ldr	r3, [r3]
	cmp	r3, #3
	beq	.L321
	ldr	r3, .L351+8
	ldr	r3, [r3]
	cmp	r3, #2
	bne	.L322
.L321:
	sub	r3, fp, #108
	mov	r1, r3
	ldr	r0, .L351+20
	bl	stat
	ldr	r3, [fp, #-92]
	and	r3, r3, #61440
	cmp	r3, #16384
	bne	.L322
	ldr	r3, .L351+40
	ldr	r0, [r3]
	ldr	r3, .L351+44
	ldr	r2, [r3]
	ldr	r3, .L351+20
	ldr	r1, .L351+64
	bl	fprintf
	mov	r0, #1
	bl	setExit
	b	.L307
.L322:
	ldr	r3, .L351+8
	ldr	r3, [r3]
	cmp	r3, #3
	bne	.L323
	ldr	r3, .L351+68
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L323
	ldr	r0, .L351+20
	bl	notAStandardFile
	mov	r3, r0
	cmp	r3, #0
	beq	.L323
	ldr	r3, .L351+36
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L324
	ldr	r3, .L351+40
	ldr	r0, [r3]
	ldr	r3, .L351+44
	ldr	r2, [r3]
	ldr	r3, .L351+20
	ldr	r1, .L351+72
	bl	fprintf
.L324:
	mov	r0, #1
	bl	setExit
	b	.L307
.L323:
	ldr	r3, .L351+8
	ldr	r3, [r3]
	cmp	r3, #3
	bne	.L325
	ldr	r0, .L351+28
	bl	fileExists
	mov	r3, r0
	cmp	r3, #0
	beq	.L325
	ldr	r3, .L351+68
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L326
	ldr	r0, .L351+28
	bl	remove
	b	.L325
.L326:
	ldr	r3, .L351+40
	ldr	r0, [r3]
	ldr	r3, .L351+44
	ldr	r2, [r3]
	ldr	r3, .L351+28
	ldr	r1, .L351+76
	bl	fprintf
	mov	r0, #1
	bl	setExit
	b	.L307
.L325:
	ldr	r3, .L351+8
	ldr	r3, [r3]
	cmp	r3, #3
	bne	.L327
	ldr	r3, .L351+68
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L327
	ldr	r0, .L351+20
	bl	countHardLinks
	str	r0, [fp, #-116]
	ldr	r3, [fp, #-116]
	cmp	r3, #0
	ble	.L327
	ldr	r3, .L351+40
	ldr	r0, [r3]
	ldr	r3, .L351+44
	ldr	r2, [r3]
	ldr	r3, [fp, #-116]
	cmp	r3, #1
	ble	.L328
	ldr	r3, .L351+80
	b	.L329
.L328:
	ldr	r3, .L351+84
.L329:
	str	r3, [sp, #4]
	ldr	r3, [fp, #-116]
	str	r3, [sp]
	ldr	r3, .L351+20
	ldr	r1, .L351+88
	bl	fprintf
	mov	r0, #1
	bl	setExit
	b	.L307
.L327:
	ldr	r3, .L351+8
	ldr	r3, [r3]
	cmp	r3, #3
	bne	.L330
	ldr	r0, .L351+20
	bl	saveInputFileMetaInfo
.L330:
	ldr	r3, .L351+8
	ldr	r3, [r3]
	cmp	r3, #3
	beq	.L331
	cmp	r3, #3
	bgt	.L332
	cmp	r3, #1
	beq	.L333
	cmp	r3, #2
	beq	.L334
	b	.L332
.L333:
	ldr	r3, .L351+92
	ldr	r3, [r3]
	str	r3, [fp, #-128]
	ldr	r3, .L351+96
	ldr	r3, [r3]
	str	r3, [fp, #-124]
	ldr	r3, .L351+96
	ldr	r3, [r3]
	mov	r0, r3
	bl	fileno
	mov	r3, r0
	mov	r0, r3
	bl	isatty
	mov	r3, r0
	cmp	r3, #0
	beq	.L348
	ldr	r3, .L351+40
	ldr	r3, [r3]
	ldr	r2, .L351+44
	ldr	r2, [r2]
	ldr	r1, .L351+100
	mov	r0, r3
	bl	fprintf
	ldr	r3, .L351+40
	ldr	r0, [r3]
	ldr	r3, .L351+44
	ldr	r2, [r3]
	ldr	r3, .L351+44
	ldr	r3, [r3]
	ldr	r1, .L351+104
	bl	fprintf
	mov	r0, #1
	bl	setExit
	b	.L307
.L334:
	ldr	r1, .L351+108
	ldr	r0, .L351+20
	bl	fopen
	str	r0, [fp, #-128]
	ldr	r3, .L351+96
	ldr	r3, [r3]
	str	r3, [fp, #-124]
	ldr	r3, .L351+96
	ldr	r3, [r3]
	mov	r0, r3
	bl	fileno
	mov	r3, r0
	mov	r0, r3
	bl	isatty
	mov	r3, r0
	cmp	r3, #0
	beq	.L337
	ldr	r3, .L351+40
	ldr	r3, [r3]
	ldr	r2, .L351+44
	ldr	r2, [r2]
	ldr	r1, .L351+100
	mov	r0, r3
	bl	fprintf
	ldr	r3, .L351+40
	ldr	r0, [r3]
	ldr	r3, .L351+44
	ldr	r2, [r3]
	ldr	r3, .L351+44
	ldr	r3, [r3]
	ldr	r1, .L351+104
	bl	fprintf
	ldr	r3, [fp, #-128]
	cmp	r3, #0
	beq	.L338
	ldr	r0, [fp, #-128]
	bl	fclose
.L338:
	mov	r0, #1
	bl	setExit
	b	.L307
.L337:
	ldr	r3, [fp, #-128]
	cmp	r3, #0
	bne	.L349
	ldr	r3, .L351+40
	ldr	r4, [r3]
	ldr	r3, .L351+44
	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, .L351+20
	mov	r2, r5
	ldr	r1, .L351+52
	mov	r0, r4
	bl	fprintf
	mov	r0, #1
	bl	setExit
	b	.L307
.L331:
	ldr	r1, .L351+108
	ldr	r0, .L351+20
	bl	fopen
	str	r0, [fp, #-128]
	ldr	r1, .L351+112
	ldr	r0, .L351+28
	bl	fopen_output_safely
	str	r0, [fp, #-124]
	ldr	r3, [fp, #-124]
	cmp	r3, #0
	bne	.L340
	ldr	r3, .L351+40
	ldr	r4, [r3]
	ldr	r3, .L351+44
	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, .L351+28
	mov	r2, r5
	ldr	r1, .L351+116
	mov	r0, r4
	bl	fprintf
	ldr	r3, [fp, #-128]
	cmp	r3, #0
	beq	.L341
	ldr	r0, [fp, #-128]
	bl	fclose
.L341:
	mov	r0, #1
	bl	setExit
	b	.L307
.L340:
	ldr	r3, [fp, #-128]
	cmp	r3, #0
	bne	.L350
	ldr	r3, .L351+40
	ldr	r4, [r3]
	ldr	r3, .L351+44
	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, .L351+20
	mov	r2, r5
	ldr	r1, .L351+52
	mov	r0, r4
	bl	fprintf
	ldr	r3, [fp, #-124]
	cmp	r3, #0
	beq	.L343
	ldr	r0, [fp, #-124]
	bl	fclose
.L343:
	mov	r0, #1
	bl	setExit
	b	.L307
.L332:
	ldr	r0, .L351+120
	bl	panic
.L348:
	nop
	b	.L336
.L349:
	nop
	b	.L336
.L350:
	nop
.L336:
	ldr	r3, .L351+124
	ldr	r3, [r3]
	cmp	r3, #0
	ble	.L344
	ldr	r3, .L351+40
	ldr	r3, [r3]
	ldr	r2, .L351+20
	ldr	r1, .L351+128
	mov	r0, r3
	bl	fprintf
	ldr	r0, .L351+20
	bl	pad
	ldr	r3, .L351+40
	ldr	r3, [r3]
	mov	r0, r3
	bl	fflush
.L344:
	ldr	r2, .L351+132
	ldr	r3, [fp, #-124]
	str	r3, [r2]
	ldr	r3, .L351+4
	mov	r2, #1
	strb	r2, [r3]
	ldr	r1, [fp, #-124]
	ldr	r0, [fp, #-128]
	bl	compressStream
	ldr	r3, .L351+132
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L351+8
	ldr	r3, [r3]
	cmp	r3, #3
	bne	.L345
	ldr	r0, .L351+28
	bl	applySavedTimeInfoToOutputFile
	ldr	r3, .L351+4
	mov	r2, #0
	strb	r2, [r3]
	ldr	r3, .L351+136
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L345
	ldr	r0, .L351+20
	bl	remove
	str	r0, [fp, #-112]
	ldr	r3, [fp, #-112]
	cmp	r3, #0
	beq	.L345
	bl	ioError
.L345:
	ldr	r3, .L351+4
	mov	r2, #0
	strb	r2, [r3]
.L307:
	ldr	r3, .L351
	ldr	r2, [r3]
	ldr	r3, [fp, #-16]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L347
	bl	__stack_chk_fail
.L347:
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
.L352:
	.align	2
.L351:
	.word	.LC70
	.word	deleteOutputOnInterrupt
	.word	srcMode
	.word	.LC53
	.word	.LC54
	.word	inName
	.word	.LC55
	.word	outName
	.word	.LC47
	.word	noisy
	.word	stderr
	.word	progName
	.word	.LC56
	.word	.LC57
	.word	zSuffix
	.word	.LC58
	.word	.LC59
	.word	forceOverwrite
	.word	.LC60
	.word	.LC61
	.word	.LC62
	.word	.LC51
	.word	.LC63
	.word	stdin
	.word	stdout
	.word	.LC64
	.word	.LC65
	.word	.LC43
	.word	.LC66
	.word	.LC67
	.word	.LC68
	.word	verbosity
	.word	.LC69
	.word	outputHandleJustInCase
	.word	keepInputFiles
	.size	compress, .-compress
	.section	.rodata
	.align	2
.LC71:
	.ascii	"uncompress: bad modes\012\000"
	.align	2
.LC72:
	.ascii	".out\000"
	.align	2
.LC73:
	.ascii	"%s: Can't guess original name for %s -- using %s\012"
	.ascii	"\000"
	.align	2
.LC74:
	.ascii	"%s: I won't read compressed data from a terminal.\012"
	.ascii	"\000"
	.align	2
.LC75:
	.ascii	"%s: Can't open input file %s:%s.\012\000"
	.align	2
.LC76:
	.ascii	"uncompress: bad srcMode\000"
	.align	2
.LC77:
	.ascii	"done\012\000"
	.align	2
.LC78:
	.ascii	"not a bzip2 file.\012\000"
	.align	2
.LC79:
	.ascii	"%s: %s is not a bzip2 file.\012\000"
	.align	2
.LC80:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	uncompress, %function
uncompress:
	@ args = 0, pretend = 0, frame = 136
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	sub	sp, sp, #144
	str	r0, [fp, #-144]
	ldr	r3, .L401
	ldr	r3, [r3]
	str	r3, [fp, #-16]
	mov	r3,#0
	ldr	r3, .L401+4
	mov	r2, #0
	strb	r2, [r3]
	ldr	r3, [fp, #-144]
	cmp	r3, #0
	bne	.L354
	ldr	r3, .L401+8
	ldr	r3, [r3]
	cmp	r3, #1
	beq	.L354
	ldr	r0, .L401+12
	bl	panic
.L354:
	mov	r3, #0
	strb	r3, [fp, #-134]
	ldr	r3, .L401+8
	ldr	r3, [r3]
	cmp	r3, #3
	beq	.L355
	cmp	r3, #3
	bgt	.L356
	cmp	r3, #1
	beq	.L357
	cmp	r3, #2
	beq	.L358
	b	.L356
.L357:
	ldr	r1, .L401+16
	ldr	r0, .L401+20
	bl	copyFileName
	ldr	r1, .L401+24
	ldr	r0, .L401+28
	bl	copyFileName
	b	.L356
.L355:
	ldr	r1, [fp, #-144]
	ldr	r0, .L401+20
	bl	copyFileName
	ldr	r1, [fp, #-144]
	ldr	r0, .L401+28
	bl	copyFileName
	mov	r3, #0
	str	r3, [fp, #-124]
	b	.L359
.L361:
	ldr	r2, .L401+32
	ldr	r3, [fp, #-124]
	ldr	r1, [r2, r3, lsl #2]
	ldr	r2, .L401+36
	ldr	r3, [fp, #-124]
	ldr	r3, [r2, r3, lsl #2]
	mov	r2, r3
	ldr	r0, .L401+28
	bl	mapSuffix
	mov	r3, r0
	cmp	r3, #0
	bne	.L397
	ldr	r3, [fp, #-124]
	add	r3, r3, #1
	str	r3, [fp, #-124]
.L359:
	ldr	r3, [fp, #-124]
	cmp	r3, #3
	ble	.L361
	mov	r3, #1
	strb	r3, [fp, #-134]
	ldr	r0, .L401+28
	bl	strlen
	mov	r3, r0
	mov	r2, r3
	ldr	r3, .L401+28
	add	r3, r2, r3
	ldr	r2, .L401+40
	mov	r0, r3
	mov	r1, r2
	mov	r3, #5
	mov	r2, r3
	bl	memcpy
	b	.L356
.L358:
	ldr	r1, [fp, #-144]
	ldr	r0, .L401+20
	bl	copyFileName
	ldr	r1, .L401+24
	ldr	r0, .L401+28
	bl	copyFileName
	b	.L356
.L397:
	nop
.L356:
	ldr	r3, .L401+8
	ldr	r3, [r3]
	cmp	r3, #1
	beq	.L362
	ldr	r0, .L401+20
	bl	containsDubiousChars
	mov	r3, r0
	cmp	r3, #0
	beq	.L362
	ldr	r3, .L401+44
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L363
	ldr	r3, .L401+48
	ldr	r0, [r3]
	ldr	r3, .L401+52
	ldr	r2, [r3]
	ldr	r3, .L401+20
	ldr	r1, .L401+56
	bl	fprintf
.L363:
	mov	r0, #1
	bl	setExit
	b	.L353
.L362:
	ldr	r3, .L401+8
	ldr	r3, [r3]
	cmp	r3, #1
	beq	.L365
	ldr	r0, .L401+20
	bl	fileExists
	mov	r3, r0
	cmp	r3, #0
	bne	.L365
	ldr	r3, .L401+48
	ldr	r4, [r3]
	ldr	r3, .L401+52
	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, .L401+20
	mov	r2, r5
	ldr	r1, .L401+60
	mov	r0, r4
	bl	fprintf
	mov	r0, #1
	bl	setExit
	b	.L353
.L365:
	ldr	r3, .L401+8
	ldr	r3, [r3]
	cmp	r3, #3
	beq	.L366
	ldr	r3, .L401+8
	ldr	r3, [r3]
	cmp	r3, #2
	bne	.L367
.L366:
	sub	r3, fp, #108
	mov	r1, r3
	ldr	r0, .L401+20
	bl	stat
	ldr	r3, [fp, #-92]
	and	r3, r3, #61440
	cmp	r3, #16384
	bne	.L367
	ldr	r3, .L401+48
	ldr	r0, [r3]
	ldr	r3, .L401+52
	ldr	r2, [r3]
	ldr	r3, .L401+20
	ldr	r1, .L401+64
	bl	fprintf
	mov	r0, #1
	bl	setExit
	b	.L353
.L367:
	ldr	r3, .L401+8
	ldr	r3, [r3]
	cmp	r3, #3
	bne	.L368
	ldr	r3, .L401+68
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L368
	ldr	r0, .L401+20
	bl	notAStandardFile
	mov	r3, r0
	cmp	r3, #0
	beq	.L368
	ldr	r3, .L401+44
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L369
	ldr	r3, .L401+48
	ldr	r0, [r3]
	ldr	r3, .L401+52
	ldr	r2, [r3]
	ldr	r3, .L401+20
	ldr	r1, .L401+72
	bl	fprintf
.L369:
	mov	r0, #1
	bl	setExit
	b	.L353
.L368:
	ldrb	r3, [fp, #-134]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L370
	ldr	r3, .L401+44
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L370
	ldr	r3, .L401+48
	ldr	r0, [r3]
	ldr	r3, .L401+52
	ldr	r2, [r3]
	ldr	r3, .L401+28
	str	r3, [sp]
	ldr	r3, .L401+20
	ldr	r1, .L401+76
	bl	fprintf
.L370:
	ldr	r3, .L401+8
	ldr	r3, [r3]
	cmp	r3, #3
	bne	.L371
	ldr	r0, .L401+28
	bl	fileExists
	mov	r3, r0
	cmp	r3, #0
	beq	.L371
	ldr	r3, .L401+68
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L372
	ldr	r0, .L401+28
	bl	remove
	b	.L371
.L372:
	ldr	r3, .L401+48
	ldr	r0, [r3]
	ldr	r3, .L401+52
	ldr	r2, [r3]
	ldr	r3, .L401+28
	ldr	r1, .L401+80
	bl	fprintf
	mov	r0, #1
	bl	setExit
	b	.L353
.L371:
	ldr	r3, .L401+8
	ldr	r3, [r3]
	cmp	r3, #3
	bne	.L373
	ldr	r3, .L401+68
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L373
	ldr	r0, .L401+20
	bl	countHardLinks
	str	r0, [fp, #-120]
	ldr	r3, [fp, #-120]
	cmp	r3, #0
	ble	.L373
	ldr	r3, .L401+48
	ldr	r0, [r3]
	ldr	r3, .L401+52
	ldr	r2, [r3]
	ldr	r3, [fp, #-120]
	cmp	r3, #1
	ble	.L374
	ldr	r3, .L401+84
	b	.L375
.L374:
	ldr	r3, .L401+88
.L375:
	str	r3, [sp, #4]
	ldr	r3, [fp, #-120]
	str	r3, [sp]
	ldr	r3, .L401+20
	ldr	r1, .L401+92
	bl	fprintf
	mov	r0, #1
	bl	setExit
	b	.L353
.L373:
	ldr	r3, .L401+8
	ldr	r3, [r3]
	cmp	r3, #3
	bne	.L376
	ldr	r0, .L401+20
	bl	saveInputFileMetaInfo
.L376:
	ldr	r3, .L401+8
	ldr	r3, [r3]
	cmp	r3, #3
	beq	.L377
	cmp	r3, #3
	bgt	.L378
	cmp	r3, #1
	beq	.L379
	cmp	r3, #2
	beq	.L380
	b	.L378
.L379:
	ldr	r3, .L401+96
	ldr	r3, [r3]
	str	r3, [fp, #-132]
	ldr	r3, .L401+100
	ldr	r3, [r3]
	str	r3, [fp, #-128]
	ldr	r3, .L401+96
	ldr	r3, [r3]
	mov	r0, r3
	bl	fileno
	mov	r3, r0
	mov	r0, r3
	bl	isatty
	mov	r3, r0
	cmp	r3, #0
	beq	.L398
	ldr	r3, .L401+48
	ldr	r3, [r3]
	ldr	r2, .L401+52
	ldr	r2, [r2]
	ldr	r1, .L401+104
	mov	r0, r3
	bl	fprintf
	ldr	r3, .L401+48
	ldr	r0, [r3]
	ldr	r3, .L401+52
	ldr	r2, [r3]
	ldr	r3, .L401+52
	ldr	r3, [r3]
	ldr	r1, .L401+108
	bl	fprintf
	mov	r0, #1
	bl	setExit
	b	.L353
.L380:
	ldr	r1, .L401+112
	ldr	r0, .L401+20
	bl	fopen
	str	r0, [fp, #-132]
	ldr	r3, .L401+100
	ldr	r3, [r3]
	str	r3, [fp, #-128]
	ldr	r3, [fp, #-132]
	cmp	r3, #0
	bne	.L399
	ldr	r3, .L401+48
	ldr	r4, [r3]
	ldr	r3, .L401+52
	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, .L401+20
	mov	r2, r5
	ldr	r1, .L401+116
	mov	r0, r4
	bl	fprintf
	ldr	r3, [fp, #-132]
	cmp	r3, #0
	beq	.L384
	ldr	r0, [fp, #-132]
	bl	fclose
.L384:
	mov	r0, #1
	bl	setExit
	b	.L353
.L377:
	ldr	r1, .L401+112
	ldr	r0, .L401+20
	bl	fopen
	str	r0, [fp, #-132]
	ldr	r1, .L401+120
	ldr	r0, .L401+28
	bl	fopen_output_safely
	str	r0, [fp, #-128]
	ldr	r3, [fp, #-128]
	cmp	r3, #0
	bne	.L385
	ldr	r3, .L401+48
	ldr	r4, [r3]
	ldr	r3, .L401+52
	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, .L401+28
	mov	r2, r5
	ldr	r1, .L401+124
	mov	r0, r4
	bl	fprintf
	ldr	r3, [fp, #-132]
	cmp	r3, #0
	beq	.L386
	ldr	r0, [fp, #-132]
	bl	fclose
.L386:
	mov	r0, #1
	bl	setExit
	b	.L353
.L385:
	ldr	r3, [fp, #-132]
	cmp	r3, #0
	bne	.L400
	ldr	r3, .L401+48
	ldr	r4, [r3]
	ldr	r3, .L401+52
	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, .L401+20
	mov	r2, r5
	ldr	r1, .L401+60
	mov	r0, r4
	bl	fprintf
	ldr	r3, [fp, #-128]
	cmp	r3, #0
	beq	.L388
	ldr	r0, [fp, #-128]
	bl	fclose
.L388:
	mov	r0, #1
	bl	setExit
	b	.L353
.L378:
	ldr	r0, .L401+128
	bl	panic
.L398:
	nop
	b	.L382
.L399:
	nop
	b	.L382
.L400:
	nop
.L382:
	ldr	r3, .L401+132
	ldr	r3, [r3]
	cmp	r3, #0
	ble	.L389
	ldr	r3, .L401+48
	ldr	r3, [r3]
	ldr	r2, .L401+20
	ldr	r1, .L401+136
	mov	r0, r3
	bl	fprintf
	ldr	r0, .L401+20
	bl	pad
	ldr	r3, .L401+48
	ldr	r3, [r3]
	mov	r0, r3
	bl	fflush
.L389:
	ldr	r2, .L401+140
	ldr	r3, [fp, #-128]
	str	r3, [r2]
	ldr	r3, .L401+4
	mov	r2, #1
	strb	r2, [r3]
	ldr	r1, [fp, #-128]
	ldr	r0, [fp, #-132]
	bl	uncompressStream
	mov	r3, r0
	strb	r3, [fp, #-133]
	ldr	r3, .L401+140
	mov	r2, #0
	str	r2, [r3]
	ldrb	r3, [fp, #-133]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L390
	ldr	r3, .L401+8
	ldr	r3, [r3]
	cmp	r3, #3
	bne	.L391
	ldr	r0, .L401+28
	bl	applySavedTimeInfoToOutputFile
	ldr	r3, .L401+4
	mov	r2, #0
	strb	r2, [r3]
	ldr	r3, .L401+144
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L391
	ldr	r0, .L401+20
	bl	remove
	str	r0, [fp, #-112]
	ldr	r3, [fp, #-112]
	cmp	r3, #0
	beq	.L391
	bl	ioError
.L390:
	ldr	r3, .L401+148
	mov	r2, #1
	strb	r2, [r3]
	ldr	r3, .L401+4
	mov	r2, #0
	strb	r2, [r3]
	ldr	r3, .L401+8
	ldr	r3, [r3]
	cmp	r3, #3
	bne	.L391
	ldr	r0, .L401+28
	bl	remove
	str	r0, [fp, #-116]
	ldr	r3, [fp, #-116]
	cmp	r3, #0
	beq	.L391
	bl	ioError
.L391:
	ldr	r3, .L401+4
	mov	r2, #0
	strb	r2, [r3]
	ldrb	r3, [fp, #-133]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L392
	ldr	r3, .L401+132
	ldr	r3, [r3]
	cmp	r3, #0
	ble	.L353
	ldr	r3, .L401+48
	ldr	r3, [r3]
	mov	r2, #5
	mov	r1, #1
	ldr	r0, .L401+152
	bl	fwrite
	b	.L353
.L392:
	mov	r0, #2
	bl	setExit
	ldr	r3, .L401+132
	ldr	r3, [r3]
	cmp	r3, #0
	ble	.L394
	ldr	r3, .L401+48
	ldr	r3, [r3]
	mov	r2, #18
	mov	r1, #1
	ldr	r0, .L401+156
	bl	fwrite
	b	.L353
.L394:
	ldr	r3, .L401+48
	ldr	r0, [r3]
	ldr	r3, .L401+52
	ldr	r2, [r3]
	ldr	r3, .L401+20
	ldr	r1, .L401+160
	bl	fprintf
.L353:
	ldr	r3, .L401
	ldr	r2, [r3]
	ldr	r3, [fp, #-16]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L396
	bl	__stack_chk_fail
.L396:
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
.L402:
	.align	2
.L401:
	.word	.LC80
	.word	deleteOutputOnInterrupt
	.word	srcMode
	.word	.LC71
	.word	.LC54
	.word	inName
	.word	.LC55
	.word	outName
	.word	zSuffix
	.word	unzSuffix
	.word	.LC72
	.word	noisy
	.word	stderr
	.word	progName
	.word	.LC56
	.word	.LC57
	.word	.LC59
	.word	forceOverwrite
	.word	.LC60
	.word	.LC73
	.word	.LC61
	.word	.LC62
	.word	.LC51
	.word	.LC63
	.word	stdin
	.word	stdout
	.word	.LC74
	.word	.LC65
	.word	.LC43
	.word	.LC75
	.word	.LC66
	.word	.LC67
	.word	.LC76
	.word	verbosity
	.word	.LC69
	.word	outputHandleJustInCase
	.word	keepInputFiles
	.word	unzFailsExist
	.word	.LC77
	.word	.LC78
	.word	.LC79
	.size	uncompress, .-uncompress
	.section	.rodata
	.align	2
.LC81:
	.ascii	"testf: bad modes\012\000"
	.align	2
.LC82:
	.ascii	"(none)\000"
	.align	2
.LC83:
	.ascii	"%s: Can't open input %s: %s.\012\000"
	.align	2
.LC84:
	.ascii	"testf: bad srcMode\000"
	.align	2
.LC85:
	.ascii	"ok\012\000"
	.align	2
.LC86:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	testf, %function
testf:
	@ args = 0, pretend = 0, frame = 112
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	sub	sp, sp, #120
	str	r0, [fp, #-120]
	ldr	r3, .L427
	ldr	r3, [r3]
	str	r3, [fp, #-16]
	mov	r3,#0
	ldr	r3, .L427+4
	mov	r2, #0
	strb	r2, [r3]
	ldr	r3, [fp, #-120]
	cmp	r3, #0
	bne	.L404
	ldr	r3, .L427+8
	ldr	r3, [r3]
	cmp	r3, #1
	beq	.L404
	ldr	r0, .L427+12
	bl	panic
.L404:
	ldr	r1, .L427+16
	ldr	r0, .L427+20
	bl	copyFileName
	ldr	r3, .L427+8
	ldr	r3, [r3]
	cmp	r3, #3
	beq	.L405
	cmp	r3, #3
	bgt	.L406
	cmp	r3, #1
	beq	.L407
	cmp	r3, #2
	beq	.L408
	b	.L406
.L407:
	ldr	r1, .L427+24
	ldr	r0, .L427+28
	bl	copyFileName
	b	.L406
.L405:
	ldr	r1, [fp, #-120]
	ldr	r0, .L427+28
	bl	copyFileName
	b	.L406
.L408:
	ldr	r1, [fp, #-120]
	ldr	r0, .L427+28
	bl	copyFileName
	nop
.L406:
	ldr	r3, .L427+8
	ldr	r3, [r3]
	cmp	r3, #1
	beq	.L409
	ldr	r0, .L427+28
	bl	containsDubiousChars
	mov	r3, r0
	cmp	r3, #0
	beq	.L409
	ldr	r3, .L427+32
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L410
	ldr	r3, .L427+36
	ldr	r0, [r3]
	ldr	r3, .L427+40
	ldr	r2, [r3]
	ldr	r3, .L427+28
	ldr	r1, .L427+44
	bl	fprintf
.L410:
	mov	r0, #1
	bl	setExit
	b	.L403
.L409:
	ldr	r3, .L427+8
	ldr	r3, [r3]
	cmp	r3, #1
	beq	.L412
	ldr	r0, .L427+28
	bl	fileExists
	mov	r3, r0
	cmp	r3, #0
	bne	.L412
	ldr	r3, .L427+36
	ldr	r4, [r3]
	ldr	r3, .L427+40
	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, .L427+28
	mov	r2, r5
	ldr	r1, .L427+48
	mov	r0, r4
	bl	fprintf
	mov	r0, #1
	bl	setExit
	b	.L403
.L412:
	ldr	r3, .L427+8
	ldr	r3, [r3]
	cmp	r3, #1
	beq	.L413
	sub	r3, fp, #108
	mov	r1, r3
	ldr	r0, .L427+28
	bl	stat
	ldr	r3, [fp, #-92]
	and	r3, r3, #61440
	cmp	r3, #16384
	bne	.L413
	ldr	r3, .L427+36
	ldr	r0, [r3]
	ldr	r3, .L427+40
	ldr	r2, [r3]
	ldr	r3, .L427+28
	ldr	r1, .L427+52
	bl	fprintf
	mov	r0, #1
	bl	setExit
	b	.L403
.L413:
	ldr	r3, .L427+8
	ldr	r3, [r3]
	cmp	r3, #1
	beq	.L414
	cmp	r3, #0
	ble	.L415
	sub	r3, r3, #2
	cmp	r3, #1
	bhi	.L415
	b	.L425
.L414:
	ldr	r3, .L427+56
	ldr	r3, [r3]
	mov	r0, r3
	bl	fileno
	mov	r3, r0
	mov	r0, r3
	bl	isatty
	mov	r3, r0
	cmp	r3, #0
	beq	.L417
	ldr	r3, .L427+36
	ldr	r3, [r3]
	ldr	r2, .L427+40
	ldr	r2, [r2]
	ldr	r1, .L427+60
	mov	r0, r3
	bl	fprintf
	ldr	r3, .L427+36
	ldr	r0, [r3]
	ldr	r3, .L427+40
	ldr	r2, [r3]
	ldr	r3, .L427+40
	ldr	r3, [r3]
	ldr	r1, .L427+64
	bl	fprintf
	mov	r0, #1
	bl	setExit
	b	.L403
.L417:
	ldr	r3, .L427+56
	ldr	r3, [r3]
	str	r3, [fp, #-112]
	b	.L418
.L425:
	ldr	r1, .L427+68
	ldr	r0, .L427+28
	bl	fopen
	str	r0, [fp, #-112]
	ldr	r3, [fp, #-112]
	cmp	r3, #0
	bne	.L426
	ldr	r3, .L427+36
	ldr	r4, [r3]
	ldr	r3, .L427+40
	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, .L427+28
	mov	r2, r5
	ldr	r1, .L427+72
	mov	r0, r4
	bl	fprintf
	mov	r0, #1
	bl	setExit
	b	.L403
.L415:
	ldr	r0, .L427+76
	bl	panic
.L426:
	nop
.L418:
	ldr	r3, .L427+80
	ldr	r3, [r3]
	cmp	r3, #0
	ble	.L420
	ldr	r3, .L427+36
	ldr	r3, [r3]
	ldr	r2, .L427+28
	ldr	r1, .L427+84
	mov	r0, r3
	bl	fprintf
	ldr	r0, .L427+28
	bl	pad
	ldr	r3, .L427+36
	ldr	r3, [r3]
	mov	r0, r3
	bl	fflush
.L420:
	ldr	r3, .L427+88
	mov	r2, #0
	str	r2, [r3]
	ldr	r0, [fp, #-112]
	bl	testStream
	mov	r3, r0
	strb	r3, [fp, #-113]
	ldrb	r3, [fp, #-113]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L421
	ldr	r3, .L427+80
	ldr	r3, [r3]
	cmp	r3, #0
	ble	.L421
	ldr	r3, .L427+36
	ldr	r3, [r3]
	mov	r2, #3
	mov	r1, #1
	ldr	r0, .L427+92
	bl	fwrite
.L421:
	ldrb	r3, [fp, #-113]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L403
	ldr	r3, .L427+96
	mov	r2, #1
	strb	r2, [r3]
.L403:
	ldr	r3, .L427
	ldr	r2, [r3]
	ldr	r3, [fp, #-16]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L424
	bl	__stack_chk_fail
.L424:
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
.L428:
	.align	2
.L427:
	.word	.LC86
	.word	deleteOutputOnInterrupt
	.word	srcMode
	.word	.LC81
	.word	.LC82
	.word	outName
	.word	.LC54
	.word	inName
	.word	noisy
	.word	stderr
	.word	progName
	.word	.LC56
	.word	.LC83
	.word	.LC59
	.word	stdin
	.word	.LC74
	.word	.LC65
	.word	.LC43
	.word	.LC75
	.word	.LC84
	.word	verbosity
	.word	.LC69
	.word	outputHandleJustInCase
	.word	.LC85
	.word	testFailsExist
	.size	testf, .-testf
	.section	.rodata
	.align	2
.LC87:
	.ascii	"bzip2, a block-sorting file compressor.  Version %s"
	.ascii	".\012   \012   Copyright (C) 1996-2010 by Julian Se"
	.ascii	"ward.\012   \012   This program is free software; y"
	.ascii	"ou can redistribute it and/or modify\012   it under"
	.ascii	" the terms set out in the LICENSE file, which is in"
	.ascii	"cluded\012   in the bzip2-1.0.6 source distribution"
	.ascii	".\012   \012   This program is distributed in the h"
	.ascii	"ope that it will be useful,\012   but WITHOUT ANY W"
	.ascii	"ARRANTY; without even the implied warranty of\012  "
	.ascii	" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOS"
	.ascii	"E.  See the\012   LICENSE file for more details.\012"
	.ascii	"   \012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	license, %function
license:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	ldr	r3, .L430
	ldr	r4, [r3]
	bl	BZ2_bzlibVersion
	mov	r3, r0
	mov	r2, r3
	ldr	r1, .L430+4
	mov	r0, r4
	bl	fprintf
	nop
	pop	{r4, r5, fp, pc}
.L431:
	.align	2
.L430:
	.word	stderr
	.word	.LC87
	.size	license, .-license
	.section	.rodata
	.align	2
.LC88:
	.ascii	"bzip2, a block-sorting file compressor.  Version %s"
	.ascii	".\012\012   usage: %s [flags and input files in any"
	.ascii	" order]\012\012   -h --help           print this me"
	.ascii	"ssage\012   -d --decompress     force decompression"
	.ascii	"\012   -z --compress       force compression\012   "
	.ascii	"-k --keep           keep (don't delete) input files"
	.ascii	"\012   -f --force          overwrite existing outpu"
	.ascii	"t files\012   -t --test           test compressed f"
	.ascii	"ile integrity\012   -c --stdout         output to s"
	.ascii	"tandard out\012   -q --quiet          suppress nonc"
	.ascii	"ritical error messages\012   -v --verbose        be"
	.ascii	" verbose (a 2nd -v gives more)\012   -L --license  "
	.ascii	"      display software version & license\012   -V -"
	.ascii	"-version        display software version & license\012"
	.ascii	"   -s --small          use less memory (at most 250"
	.ascii	"0k)\012   -1 .. -9            set block size to 100"
	.ascii	"k .. 900k\012   --fast              alias for -1\012"
	.ascii	"   --best              alias for -9\012\012   If in"
	.ascii	"voked as `bzip2', default action is to compress.\012"
	.ascii	"              as `bunzip2',  default action is to d"
	.ascii	"ecompress.\012              as `bzcat', default act"
	.ascii	"ion is to decompress to stdout.\012\012   If no fil"
	.ascii	"e names are given, bzip2 compresses or decompresses"
	.ascii	"\012   from standard input to standard output.  You"
	.ascii	" can combine\012   short flags, so `-v -4' means th"
	.ascii	"e same as -v4 or -4v, &c.\012\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	usage, %function
usage:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #12
	str	r0, [fp, #-16]
	ldr	r3, .L433
	ldr	r4, [r3]
	bl	BZ2_bzlibVersion
	mov	r2, r0
	ldr	r3, [fp, #-16]
	ldr	r1, .L433+4
	mov	r0, r4
	bl	fprintf
	nop
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L434:
	.align	2
.L433:
	.word	stderr
	.word	.LC88
	.size	usage, .-usage
	.section	.rodata
	.align	2
.LC89:
	.ascii	"%s: %s is redundant in versions 0.9.5 and above\012"
	.ascii	"\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	redundant, %function
redundant:
	@ 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, .L436
	ldr	r0, [r3]
	ldr	r3, .L436+4
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	ldr	r1, .L436+8
	bl	fprintf
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L437:
	.align	2
.L436:
	.word	stderr
	.word	progName
	.word	.LC89
	.size	redundant, .-redundant
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	myMalloc, %function
myMalloc:
	@ 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, [fp, #-16]
	mov	r0, r3
	bl	malloc
	mov	r3, r0
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	bne	.L439
	bl	outOfMemory
.L439:
	ldr	r3, [fp, #-8]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	myMalloc, .-myMalloc
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	mkCell, %function
mkCell:
	@ 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	r0, #8
	bl	myMalloc
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, [fp, #-8]
	mov	r2, #0
	str	r2, [r3, #4]
	ldr	r3, [fp, #-8]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	mkCell, .-mkCell
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	snocString, %function
snocString:
	@ 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]
	ldr	r3, [fp, #-16]
	cmp	r3, #0
	bne	.L444
	bl	mkCell
	str	r0, [fp, #-8]
	ldr	r0, [fp, #-20]
	bl	strlen
	mov	r3, r0
	add	r3, r3, #5
	mov	r0, r3
	bl	myMalloc
	mov	r2, r0
	ldr	r3, [fp, #-8]
	str	r2, [r3]
	ldr	r3, [fp, #-8]
	ldr	r3, [r3]
	ldr	r1, [fp, #-20]
	mov	r0, r3
	bl	strcpy
	ldr	r3, [fp, #-8]
	b	.L445
.L444:
	ldr	r3, [fp, #-16]
	str	r3, [fp, #-12]
	b	.L446
.L447:
	ldr	r3, [fp, #-12]
	ldr	r3, [r3, #4]
	str	r3, [fp, #-12]
.L446:
	ldr	r3, [fp, #-12]
	ldr	r3, [r3, #4]
	cmp	r3, #0
	bne	.L447
	ldr	r3, [fp, #-12]
	ldr	r3, [r3, #4]
	ldr	r1, [fp, #-20]
	mov	r0, r3
	bl	snocString
	mov	r2, r0
	ldr	r3, [fp, #-12]
	str	r2, [r3, #4]
	ldr	r3, [fp, #-16]
.L445:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	snocString, .-snocString
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	addFlagsFromEnvVar, %function
addFlagsFromEnvVar:
	@ 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	r0, [fp, #-36]
	bl	getenv
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	beq	.L462
	ldr	r3, [fp, #-8]
	str	r3, [fp, #-12]
	mov	r3, #0
	str	r3, [fp, #-24]
.L460:
	ldr	r3, [fp, #-24]
	ldr	r2, [fp, #-12]
	add	r3, r2, r3
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L463
	ldr	r3, [fp, #-24]
	ldr	r2, [fp, #-12]
	add	r3, r2, r3
	str	r3, [fp, #-12]
	mov	r3, #0
	str	r3, [fp, #-24]
	b	.L451
.L452:
	ldr	r3, [fp, #-12]
	add	r3, r3, #1
	str	r3, [fp, #-12]
.L451:
	bl	__ctype_b_loc
	mov	r3, r0
	ldr	r2, [r3]
	ldr	r3, [fp, #-12]
	ldrb	r3, [r3]	@ zero_extendqisi2
	lsl	r3, r3, #1
	add	r3, r2, r3
	ldrh	r3, [r3]
	and	r3, r3, #8192
	cmp	r3, #0
	bne	.L452
	b	.L453
.L455:
	ldr	r3, [fp, #-24]
	add	r3, r3, #1
	str	r3, [fp, #-24]
.L453:
	ldr	r3, [fp, #-24]
	ldr	r2, [fp, #-12]
	add	r3, r2, r3
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L454
	bl	__ctype_b_loc
	mov	r3, r0
	ldr	r2, [r3]
	ldr	r3, [fp, #-24]
	ldr	r1, [fp, #-12]
	add	r3, r1, r3
	ldrb	r3, [r3]	@ zero_extendqisi2
	lsl	r3, r3, #1
	add	r3, r2, r3
	ldrh	r3, [r3]
	and	r3, r3, #8192
	cmp	r3, #0
	beq	.L455
.L454:
	ldr	r3, [fp, #-24]
	cmp	r3, #0
	ble	.L460
	ldr	r3, [fp, #-24]
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-16]
	cmp	r3, #1024
	ble	.L457
	mov	r3, #1024
	str	r3, [fp, #-16]
.L457:
	mov	r3, #0
	str	r3, [fp, #-20]
	b	.L458
.L459:
	ldr	r3, [fp, #-20]
	ldr	r2, [fp, #-12]
	add	r3, r2, r3
	ldrb	r1, [r3]	@ zero_extendqisi2
	ldr	r2, .L464
	ldr	r3, [fp, #-20]
	add	r3, r2, r3
	mov	r2, r1
	strb	r2, [r3]
	ldr	r3, [fp, #-20]
	add	r3, r3, #1
	str	r3, [fp, #-20]
.L458:
	ldr	r2, [fp, #-20]
	ldr	r3, [fp, #-16]
	cmp	r2, r3
	blt	.L459
	ldr	r2, .L464
	ldr	r3, [fp, #-16]
	add	r3, r2, r3
	mov	r2, #0
	strb	r2, [r3]
	ldr	r3, [fp, #-32]
	ldr	r3, [r3]
	ldr	r1, .L464
	mov	r0, r3
	bl	snocString
	mov	r2, r0
	ldr	r3, [fp, #-32]
	str	r2, [r3]
	b	.L460
.L463:
	nop
.L462:
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L465:
	.align	2
.L464:
	.word	tmpName
	.size	addFlagsFromEnvVar, .-addFlagsFromEnvVar
	.section	.rodata
	.align	2
.LC90:
	.ascii	"BZIP2\000"
	.align	2
.LC91:
	.ascii	"BZIP\000"
	.align	2
.LC92:
	.ascii	"--\000"
	.align	2
.LC93:
	.ascii	"unzip\000"
	.align	2
.LC94:
	.ascii	"UNZIP\000"
	.align	2
.LC95:
	.ascii	"z2cat\000"
	.align	2
.LC96:
	.ascii	"Z2CAT\000"
	.align	2
.LC97:
	.ascii	"zcat\000"
	.align	2
.LC98:
	.ascii	"ZCAT\000"
	.align	2
.LC99:
	.ascii	"%s: Bad flag `%s'\012\000"
	.align	2
.LC100:
	.ascii	"--stdout\000"
	.align	2
.LC101:
	.ascii	"--decompress\000"
	.align	2
.LC102:
	.ascii	"--compress\000"
	.align	2
.LC103:
	.ascii	"--force\000"
	.align	2
.LC104:
	.ascii	"--test\000"
	.align	2
.LC105:
	.ascii	"--keep\000"
	.align	2
.LC106:
	.ascii	"--small\000"
	.align	2
.LC107:
	.ascii	"--quiet\000"
	.align	2
.LC108:
	.ascii	"--show-progress\000"
	.align	2
.LC109:
	.ascii	"--version\000"
	.align	2
.LC110:
	.ascii	"--license\000"
	.align	2
.LC111:
	.ascii	"--exponential\000"
	.align	2
.LC112:
	.ascii	"--repetitive-best\000"
	.align	2
.LC113:
	.ascii	"--repetitive-fast\000"
	.align	2
.LC114:
	.ascii	"--fast\000"
	.align	2
.LC115:
	.ascii	"--best\000"
	.align	2
.LC116:
	.ascii	"--verbose\000"
	.align	2
.LC117:
	.ascii	"--help\000"
	.align	2
.LC118:
	.ascii	"%s: -c and -t cannot be used together.\012\000"
	.align	2
.LC119:
	.ascii	"\012You can use the `bzip2recover' program to attem"
	.ascii	"pt to recover\012data from undamaged sections of co"
	.ascii	"rrupted files.\012\012\000"
	.align	2
.LC120:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	main
	.syntax unified
	.arm
	.fpu softvfp
	.type	main, %function
main:
	@ args = 0, pretend = 0, frame = 40
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #40
	str	r0, [fp, #-40]
	str	r1, [fp, #-44]
	ldr	r3, .L579
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	ldr	r3, .L579+4
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L579+8
	mov	r2, #0
	strb	r2, [r3]
	ldr	r3, .L579+12
	mov	r2, #0
	strb	r2, [r3]
	ldr	r3, .L579+16
	mov	r2, #0
	strb	r2, [r3]
	ldr	r3, .L579+20
	mov	r2, #1
	strb	r2, [r3]
	ldr	r3, .L579+24
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L579+28
	mov	r2, #9
	str	r2, [r3]
	ldr	r3, .L579+32
	mov	r2, #0
	strb	r2, [r3]
	ldr	r3, .L579+36
	mov	r2, #0
	strb	r2, [r3]
	ldr	r3, .L579+40
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L579+44
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L579+48
	mov	r2, #30
	str	r2, [r3]
	ldr	r3, .L579+52
	mov	r2, #0
	strb	r2, [r3]
	ldr	r3, .L579+224
	mov	r2, #0
	str	r2, [r3]
	mov	r3, #0
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-24]
	str	r3, [fp, #-28]
	ldr	r3, .L579+56
	mov	r2, #0
	strb	r2, [r3]
	ldr	r1, .L579+60
	mov	r0, #11
	bl	signal
	ldr	r1, .L579+60
	mov	r0, #7
	bl	signal
	ldr	r1, .L579+64
	ldr	r0, .L579+68
	bl	copyFileName
	ldr	r1, .L579+64
	ldr	r0, .L579+72
	bl	copyFileName
	ldr	r3, [fp, #-44]
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r0, .L579+76
	bl	copyFileName
	ldr	r3, .L579+80
	ldr	r2, .L579+76
	str	r2, [r3]
	ldr	r3, .L579+76
	str	r3, [fp, #-20]
	b	.L467
.L469:
	ldr	r3, [fp, #-20]
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #47
	bne	.L468
	ldr	r3, [fp, #-20]
	add	r3, r3, #1
	ldr	r2, .L579+80
	str	r3, [r2]
.L468:
	ldr	r3, [fp, #-20]
	add	r3, r3, #1
	str	r3, [fp, #-20]
.L467:
	ldr	r3, [fp, #-20]
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L469
	mov	r3, #0
	str	r3, [fp, #-32]
	sub	r3, fp, #32
	ldr	r1, .L579+84
	mov	r0, r3
	bl	addFlagsFromEnvVar
	sub	r3, fp, #32
	ldr	r1, .L579+88
	mov	r0, r3
	bl	addFlagsFromEnvVar
	mov	r3, #1
	str	r3, [fp, #-28]
	b	.L470
.L471:
	ldr	r0, [fp, #-32]
	ldr	r3, [fp, #-28]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-44]
	add	r3, r2, r3
	ldr	r3, [r3]
	mov	r1, r3
	bl	snocString
	mov	r3, r0
	str	r3, [fp, #-32]
	ldr	r3, [fp, #-28]
	add	r3, r3, #1
	str	r3, [fp, #-28]
.L470:
	ldr	r2, [fp, #-40]
	ldr	r3, [fp, #-28]
	cmp	r2, r3
	bgt	.L471
	ldr	r3, .L579+92
	mov	r2, #7
	str	r2, [r3]
	ldr	r3, .L579+40
	mov	r2, #0
	str	r2, [r3]
	mov	r3, #1
	strb	r3, [fp, #-33]
	ldr	r3, [fp, #-32]
	str	r3, [fp, #-16]
	b	.L472
.L476:
	ldr	r3, [fp, #-16]
	ldr	r3, [r3]
	ldr	r1, .L579+96
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L473
	mov	r3, #0
	strb	r3, [fp, #-33]
	b	.L474
.L473:
	ldr	r3, [fp, #-16]
	ldr	r3, [r3]
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #45
	bne	.L475
	ldrb	r3, [fp, #-33]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L573
.L475:
	ldr	r3, .L579+40
	ldr	r3, [r3]
	add	r3, r3, #1
	ldr	r2, .L579+40
	str	r3, [r2]
	ldr	r3, [fp, #-16]
	ldr	r3, [r3]
	mov	r0, r3
	bl	strlen
	mov	r3, r0
	mov	r2, r3
	ldr	r3, .L579+92
	ldr	r3, [r3]
	cmp	r2, r3
	ble	.L474
	ldr	r3, [fp, #-16]
	ldr	r3, [r3]
	mov	r0, r3
	bl	strlen
	mov	r3, r0
	mov	r2, r3
	ldr	r3, .L579+92
	str	r2, [r3]
	b	.L474
.L573:
	nop
.L474:
	ldr	r3, [fp, #-16]
	ldr	r3, [r3, #4]
	str	r3, [fp, #-16]
.L472:
	ldr	r3, [fp, #-16]
	cmp	r3, #0
	bne	.L476
	ldr	r3, .L579+40
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L477
	ldr	r3, .L579+100
	mov	r2, #1
	str	r2, [r3]
	b	.L478
.L477:
	ldr	r3, .L579+100
	mov	r2, #3
	str	r2, [r3]
.L478:
	ldr	r3, .L579+104
	mov	r2, #1
	str	r2, [r3]
	ldr	r3, .L579+80
	ldr	r3, [r3]
	ldr	r1, .L579+108
	mov	r0, r3
	bl	strstr
	mov	r3, r0
	cmp	r3, #0
	bne	.L479
	ldr	r3, .L579+80
	ldr	r3, [r3]
	ldr	r1, .L579+112
	mov	r0, r3
	bl	strstr
	mov	r3, r0
	cmp	r3, #0
	beq	.L480
.L479:
	ldr	r3, .L579+104
	mov	r2, #2
	str	r2, [r3]
.L480:
	ldr	r3, .L579+80
	ldr	r3, [r3]
	ldr	r1, .L579+116
	mov	r0, r3
	bl	strstr
	mov	r3, r0
	cmp	r3, #0
	bne	.L481
	ldr	r3, .L579+80
	ldr	r3, [r3]
	ldr	r1, .L579+120
	mov	r0, r3
	bl	strstr
	mov	r3, r0
	cmp	r3, #0
	bne	.L481
	ldr	r3, .L579+80
	ldr	r3, [r3]
	ldr	r1, .L579+124
	mov	r0, r3
	bl	strstr
	mov	r3, r0
	cmp	r3, #0
	bne	.L481
	ldr	r3, .L579+80
	ldr	r3, [r3]
	ldr	r1, .L579+128
	mov	r0, r3
	bl	strstr
	mov	r3, r0
	cmp	r3, #0
	beq	.L482
.L481:
	ldr	r3, .L579+104
	mov	r2, #2
	str	r2, [r3]
	ldr	r3, .L579+40
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L483
	mov	r3, #1
	b	.L484
.L483:
	mov	r3, #2
.L484:
	ldr	r2, .L579+100
	str	r3, [r2]
.L482:
	ldr	r3, [fp, #-32]
	str	r3, [fp, #-16]
	b	.L485
.L515:
	ldr	r3, [fp, #-16]
	ldr	r3, [r3]
	ldr	r1, .L579+96
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	beq	.L574
	ldr	r3, [fp, #-16]
	ldr	r3, [r3]
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #45
	bne	.L488
	ldr	r3, [fp, #-16]
	ldr	r3, [r3]
	add	r3, r3, #1
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #45
	beq	.L488
	mov	r3, #1
	str	r3, [fp, #-24]
	b	.L489
.L514:
	ldr	r3, [fp, #-16]
	ldr	r2, [r3]
	ldr	r3, [fp, #-24]
	add	r3, r2, r3
	ldrb	r3, [r3]	@ zero_extendqisi2
	sub	r3, r3, #49
	cmp	r3, #73
	ldrls	pc, [pc, r3, asl #2]
	b	.L490
.L492:
	.word	.L512
	.word	.L511
	.word	.L510
	.word	.L509
	.word	.L508
	.word	.L507
	.word	.L506
	.word	.L505
	.word	.L504
	.word	.L490
	.word	.L490
	.word	.L490
	.word	.L490
	.word	.L490
	.word	.L490
	.word	.L490
	.word	.L490
	.word	.L490
	.word	.L490
	.word	.L490
	.word	.L490
	.word	.L490
	.word	.L490
	.word	.L490
	.word	.L490
	.word	.L490
	.word	.L490
	.word	.L503
	.word	.L490
	.word	.L490
	.word	.L490
	.word	.L490
	.word	.L490
	.word	.L490
	.word	.L490
	.word	.L490
	.word	.L490
	.word	.L503
	.word	.L490
	.word	.L490
	.word	.L490
	.word	.L490
	.word	.L490
	.word	.L490
	.word	.L490
	.word	.L490
	.word	.L490
	.word	.L490
	.word	.L490
	.word	.L490
	.word	.L502
	.word	.L501
	.word	.L490
	.word	.L500
	.word	.L490
	.word	.L499
	.word	.L490
	.word	.L490
	.word	.L498
	.word	.L490
	.word	.L490
	.word	.L490
	.word	.L490
	.word	.L497
	.word	.L496
	.word	.L490
	.word	.L495
	.word	.L494
	.word	.L490
	.word	.L493
	.word	.L490
	.word	.L490
	.word	.L490
	.word	.L491
.L502:
	ldr	r3, .L579+100
	mov	r2, #2
	str	r2, [r3]
	b	.L513
.L501:
	ldr	r3, .L579+104
	mov	r2, #2
	str	r2, [r3]
	b	.L513
.L491:
	ldr	r3, .L579+104
	mov	r2, #1
	str	r2, [r3]
	b	.L513
.L500:
	ldr	r3, .L579+16
	mov	r2, #1
	strb	r2, [r3]
	b	.L513
.L494:
	ldr	r3, .L579+104
	mov	r2, #3
	str	r2, [r3]
	b	.L513
.L498:
	ldr	r3, .L579+12
	mov	r2, #1
	strb	r2, [r3]
	b	.L513
.L495:
	ldr	r3, .L579+8
	mov	r2, #1
	strb	r2, [r3]
	b	.L513
.L496:
	ldr	r3, .L579+20
	mov	r2, #0
	strb	r2, [r3]
	b	.L513
.L497:
	ldr	r3, .L579+56
	mov	r2, #1
	strb	r2, [r3]
	b	.L513
.L512:
	ldr	r3, .L579+28
	mov	r2, #1
	str	r2, [r3]
	b	.L513
.L511:
	ldr	r3, .L579+28
	mov	r2, #2
	str	r2, [r3]
	b	.L513
.L510:
	ldr	r3, .L579+28
	mov	r2, #3
	str	r2, [r3]
	b	.L513
.L509:
	ldr	r3, .L579+28
	mov	r2, #4
	str	r2, [r3]
	b	.L513
.L508:
	ldr	r3, .L579+28
	mov	r2, #5
	str	r2, [r3]
	b	.L513
.L507:
	ldr	r3, .L579+28
	mov	r2, #6
	str	r2, [r3]
	b	.L513
.L506:
	ldr	r3, .L579+28
	mov	r2, #7
	str	r2, [r3]
	b	.L513
.L505:
	ldr	r3, .L579+28
	mov	r2, #8
	str	r2, [r3]
	b	.L513
.L504:
	ldr	r3, .L579+28
	mov	r2, #9
	str	r2, [r3]
	b	.L513
.L503:
	bl	license
	b	.L513
.L493:
	ldr	r3, .L579+24
	ldr	r3, [r3]
	add	r3, r3, #1
	ldr	r2, .L579+24
	str	r3, [r2]
	b	.L513
.L499:
	ldr	r3, .L579+80
	ldr	r3, [r3]
	mov	r0, r3
	bl	usage
	mov	r0, #0
	bl	exit
.L490:
	ldr	r3, .L579+132
	ldr	r0, [r3]
	ldr	r3, .L579+80
	ldr	r2, [r3]
	ldr	r3, [fp, #-16]
	ldr	r3, [r3]
	ldr	r1, .L579+136
	bl	fprintf
	ldr	r3, .L579+80
	ldr	r3, [r3]
	mov	r0, r3
	bl	usage
	mov	r0, #1
	bl	exit
.L513:
	ldr	r3, [fp, #-24]
	add	r3, r3, #1
	str	r3, [fp, #-24]
.L489:
	ldr	r3, [fp, #-16]
	ldr	r2, [r3]
	ldr	r3, [fp, #-24]
	add	r3, r2, r3
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L514
.L488:
	ldr	r3, [fp, #-16]
	ldr	r3, [r3, #4]
	str	r3, [fp, #-16]
.L485:
	ldr	r3, [fp, #-16]
	cmp	r3, #0
	bne	.L515
	b	.L487
.L574:
	nop
.L487:
	ldr	r3, [fp, #-32]
	str	r3, [fp, #-16]
	b	.L516
.L538:
	ldr	r3, [fp, #-16]
	ldr	r3, [r3]
	ldr	r1, .L579+96
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	beq	.L575
	ldr	r3, [fp, #-16]
	ldr	r3, [r3]
	ldr	r1, .L579+140
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L519
	ldr	r3, .L579+100
	mov	r2, #2
	str	r2, [r3]
	b	.L520
.L519:
	ldr	r3, [fp, #-16]
	ldr	r3, [r3]
	ldr	r1, .L579+144
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L521
	ldr	r3, .L579+104
	mov	r2, #2
	str	r2, [r3]
	b	.L520
.L521:
	ldr	r3, [fp, #-16]
	ldr	r3, [r3]
	ldr	r1, .L579+148
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L522
	ldr	r3, .L579+104
	mov	r2, #1
	str	r2, [r3]
	b	.L520
.L522:
	ldr	r3, [fp, #-16]
	ldr	r3, [r3]
	ldr	r1, .L579+152
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L523
	ldr	r3, .L579+16
	mov	r2, #1
	strb	r2, [r3]
	b	.L520
.L523:
	ldr	r3, [fp, #-16]
	ldr	r3, [r3]
	ldr	r1, .L579+156
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L524
	ldr	r3, .L579+104
	mov	r2, #3
	str	r2, [r3]
	b	.L520
.L524:
	ldr	r3, [fp, #-16]
	ldr	r3, [r3]
	ldr	r1, .L579+160
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L525
	ldr	r3, .L579+12
	mov	r2, #1
	strb	r2, [r3]
	b	.L520
.L525:
	ldr	r3, [fp, #-16]
	ldr	r3, [r3]
	ldr	r1, .L579+164
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L526
	ldr	r3, .L579+8
	mov	r2, #1
	strb	r2, [r3]
	b	.L520
.L526:
	ldr	r3, [fp, #-16]
	ldr	r3, [r3]
	ldr	r1, .L579+168
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L527
	ldr	r3, .L579+20
	mov	r2, #0
	strb	r2, [r3]
	b	.L520
.L527:
	ldr	r3, [fp, #-16]
	ldr	r3, [r3]
	ldr	r1, .L579+172
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L528
	ldr	r3, .L579+56
	mov	r2, #1
	strb	r2, [r3]
	b	.L520
.L528:
	ldr	r3, [fp, #-16]
	ldr	r3, [r3]
	ldr	r1, .L579+176
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L529
	bl	license
	b	.L520
.L529:
	ldr	r3, [fp, #-16]
	ldr	r3, [r3]
	ldr	r1, .L579+180
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L530
	bl	license
	b	.L520
.L530:
	ldr	r3, [fp, #-16]
	ldr	r3, [r3]
	ldr	r1, .L579+184
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L531
	ldr	r3, .L579+48
	mov	r2, #1
	str	r2, [r3]
	b	.L520
.L531:
	ldr	r3, [fp, #-16]
	ldr	r3, [r3]
	ldr	r1, .L579+188
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L532
	ldr	r3, [fp, #-16]
	ldr	r3, [r3]
	mov	r0, r3
	bl	redundant
	b	.L520
.L532:
	ldr	r3, [fp, #-16]
	ldr	r3, [r3]
	ldr	r1, .L579+192
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L533
	ldr	r3, [fp, #-16]
	ldr	r3, [r3]
	mov	r0, r3
	bl	redundant
	b	.L520
.L533:
	ldr	r3, [fp, #-16]
	ldr	r3, [r3]
	ldr	r1, .L579+196
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L534
	ldr	r3, .L579+28
	mov	r2, #1
	str	r2, [r3]
	b	.L520
.L534:
	ldr	r3, [fp, #-16]
	ldr	r3, [r3]
	ldr	r1, .L579+200
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L535
	ldr	r3, .L579+28
	mov	r2, #9
	str	r2, [r3]
	b	.L520
.L535:
	ldr	r3, [fp, #-16]
	ldr	r3, [r3]
	ldr	r1, .L579+204
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L536
	ldr	r3, .L579+24
	ldr	r3, [r3]
	add	r3, r3, #1
	ldr	r2, .L579+24
	str	r3, [r2]
	b	.L520
.L536:
	ldr	r3, [fp, #-16]
	ldr	r3, [r3]
	ldr	r1, .L579+208
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L537
	ldr	r3, .L579+80
	ldr	r3, [r3]
	mov	r0, r3
	bl	usage
	mov	r0, #0
	bl	exit
.L537:
	ldr	r3, [fp, #-16]
	ldr	r3, [r3]
	mov	r2, #2
	ldr	r1, .L579+96
	mov	r0, r3
	bl	strncmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L520
	ldr	r3, .L579+132
	ldr	r0, [r3]
	ldr	r3, .L579+80
	ldr	r2, [r3]
	ldr	r3, [fp, #-16]
	ldr	r3, [r3]
	ldr	r1, .L579+136
	bl	fprintf
	ldr	r3, .L579+80
	ldr	r3, [r3]
	mov	r0, r3
	bl	usage
	mov	r0, #1
	bl	exit
.L520:
	ldr	r3, [fp, #-16]
	ldr	r3, [r3, #4]
	str	r3, [fp, #-16]
.L516:
	ldr	r3, [fp, #-16]
	cmp	r3, #0
	bne	.L538
	b	.L518
.L575:
	nop
.L518:
	ldr	r3, .L579+24
	ldr	r3, [r3]
	cmp	r3, #4
	ble	.L539
	ldr	r3, .L579+24
	mov	r2, #4
	str	r2, [r3]
.L539:
	ldr	r3, .L579+104
	ldr	r3, [r3]
	cmp	r3, #1
	bne	.L540
	ldr	r3, .L579+8
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L540
	ldr	r3, .L579+28
	ldr	r3, [r3]
	cmp	r3, #2
	ble	.L540
	ldr	r3, .L579+28
	mov	r2, #2
	str	r2, [r3]
.L540:
	ldr	r3, .L579+104
	ldr	r3, [r3]
	cmp	r3, #3
	bne	.L541
	ldr	r3, .L579+100
	ldr	r3, [r3]
	cmp	r3, #2
	bne	.L541
	ldr	r3, .L579+132
	ldr	r3, [r3]
	ldr	r2, .L579+80
	ldr	r2, [r2]
	ldr	r1, .L579+212
	mov	r0, r3
	bl	fprintf
	mov	r0, #1
	bl	exit
.L541:
	ldr	r3, .L579+100
	ldr	r3, [r3]
	cmp	r3, #2
	bne	.L542
	ldr	r3, .L579+40
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L542
	ldr	r3, .L579+100
	mov	r2, #1
	str	r2, [r3]
.L542:
	ldr	r3, .L579+104
	ldr	r3, [r3]
	cmp	r3, #1
	beq	.L543
	ldr	r3, .L579+28
	mov	r2, #0
	str	r2, [r3]
.L543:
	ldr	r3, .L579+100
	ldr	r3, [r3]
	cmp	r3, #3
	bne	.L544
	ldr	r1, .L579+216
	mov	r0, #2
	bl	signal
	ldr	r1, .L579+216
	mov	r0, #15
	bl	signal
	ldr	r1, .L579+216
	mov	r0, #1
	bl	signal
.L544:
	ldr	r3, .L579+104
	ldr	r3, [r3]
	cmp	r3, #1
	bne	.L545
	ldr	r3, .L579+100
	ldr	r3, [r3]
	cmp	r3, #1
	bne	.L546
	mov	r0, #0
	bl	compress
	b	.L547
.L546:
	mov	r3, #1
	strb	r3, [fp, #-33]
	ldr	r3, [fp, #-32]
	str	r3, [fp, #-16]
	b	.L548
.L552:
	ldr	r3, [fp, #-16]
	ldr	r3, [r3]
	ldr	r1, .L579+96
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L549
	mov	r3, #0
	strb	r3, [fp, #-33]
	b	.L550
.L549:
	ldr	r3, [fp, #-16]
	ldr	r3, [r3]
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #45
	bne	.L551
	ldrb	r3, [fp, #-33]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L576
.L551:
	ldr	r3, .L579+44
	ldr	r3, [r3]
	add	r3, r3, #1
	ldr	r2, .L579+44
	str	r3, [r2]
	ldr	r3, [fp, #-16]
	ldr	r3, [r3]
	mov	r0, r3
	bl	compress
	b	.L550
.L576:
	nop
.L550:
	ldr	r3, [fp, #-16]
	ldr	r3, [r3, #4]
	str	r3, [fp, #-16]
.L548:
	ldr	r3, [fp, #-16]
	cmp	r3, #0
	bne	.L552
	b	.L547
.L545:
	ldr	r3, .L579+104
	ldr	r3, [r3]
	cmp	r3, #2
	bne	.L553
	ldr	r3, .L579+36
	mov	r2, #0
	strb	r2, [r3]
	ldr	r3, .L579+100
	ldr	r3, [r3]
	cmp	r3, #1
	bne	.L554
	mov	r0, #0
	bl	uncompress
	b	.L555
.L554:
	mov	r3, #1
	strb	r3, [fp, #-33]
	ldr	r3, [fp, #-32]
	str	r3, [fp, #-16]
	b	.L556
.L560:
	ldr	r3, [fp, #-16]
	ldr	r3, [r3]
	ldr	r1, .L579+96
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L557
	mov	r3, #0
	strb	r3, [fp, #-33]
	b	.L558
.L557:
	ldr	r3, [fp, #-16]
	ldr	r3, [r3]
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #45
	bne	.L559
	ldrb	r3, [fp, #-33]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L577
.L559:
	ldr	r3, .L579+44
	ldr	r3, [r3]
	add	r3, r3, #1
	ldr	r2, .L579+44
	str	r3, [r2]
	ldr	r3, [fp, #-16]
	ldr	r3, [r3]
	mov	r0, r3
	bl	uncompress
	b	.L558
.L577:
	nop
.L558:
	ldr	r3, [fp, #-16]
	ldr	r3, [r3, #4]
	str	r3, [fp, #-16]
.L556:
	ldr	r3, [fp, #-16]
	cmp	r3, #0
	bne	.L560
.L555:
	ldr	r3, .L579+36
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L547
	mov	r0, #2
	bl	setExit
	ldr	r3, .L579+224
	ldr	r3, [r3]
	mov	r0, r3
	bl	exit
.L553:
	ldr	r3, .L579+32
	mov	r2, #0
	strb	r2, [r3]
	ldr	r3, .L579+100
	ldr	r3, [r3]
	cmp	r3, #1
	bne	.L561
	mov	r0, #0
	bl	testf
	b	.L562
.L561:
	mov	r3, #1
	strb	r3, [fp, #-33]
	ldr	r3, [fp, #-32]
	str	r3, [fp, #-16]
	b	.L563
.L567:
	ldr	r3, [fp, #-16]
	ldr	r3, [r3]
	ldr	r1, .L579+96
	mov	r0, r3
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L564
	mov	r3, #0
	strb	r3, [fp, #-33]
	b	.L565
.L564:
	ldr	r3, [fp, #-16]
	ldr	r3, [r3]
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #45
	bne	.L566
	ldrb	r3, [fp, #-33]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L578
.L566:
	ldr	r3, .L579+44
	ldr	r3, [r3]
	add	r3, r3, #1
	ldr	r2, .L579+44
	str	r3, [r2]
	ldr	r3, [fp, #-16]
	ldr	r3, [r3]
	mov	r0, r3
	bl	testf
	b	.L565
.L578:
	nop
.L565:
	ldr	r3, [fp, #-16]
	ldr	r3, [r3, #4]
	str	r3, [fp, #-16]
.L563:
	ldr	r3, [fp, #-16]
	cmp	r3, #0
	bne	.L567
.L562:
	ldr	r3, .L579+32
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L547
	ldr	r3, .L579+20
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L547
	ldr	r3, .L579+132
	ldr	r3, [r3]
	mov	r2, #112
	mov	r1, #1
	ldr	r0, .L579+220
	bl	fwrite
	mov	r0, #2
	bl	setExit
	ldr	r3, .L579+224
	ldr	r3, [r3]
	mov	r0, r3
	bl	exit
.L547:
	ldr	r3, [fp, #-32]
	str	r3, [fp, #-16]
	b	.L568
.L580:
	.align	2
.L579:
	.word	.LC120
	.word	outputHandleJustInCase
	.word	smallMode
	.word	keepInputFiles
	.word	forceOverwrite
	.word	noisy
	.word	verbosity
	.word	blockSize100k
	.word	testFailsExist
	.word	unzFailsExist
	.word	numFileNames
	.word	numFilesProcessed
	.word	workFactor
	.word	deleteOutputOnInterrupt
	.word	showProgress
	.word	mySIGSEGVorSIGBUScatcher
	.word	.LC82
	.word	inName
	.word	outName
	.word	progNameReally
	.word	progName
	.word	.LC90
	.word	.LC91
	.word	longestFileName
	.word	.LC92
	.word	srcMode
	.word	opMode
	.word	.LC93
	.word	.LC94
	.word	.LC95
	.word	.LC96
	.word	.LC97
	.word	.LC98
	.word	stderr
	.word	.LC99
	.word	.LC100
	.word	.LC101
	.word	.LC102
	.word	.LC103
	.word	.LC104
	.word	.LC105
	.word	.LC106
	.word	.LC107
	.word	.LC108
	.word	.LC109
	.word	.LC110
	.word	.LC111
	.word	.LC112
	.word	.LC113
	.word	.LC114
	.word	.LC115
	.word	.LC116
	.word	.LC117
	.word	.LC118
	.word	mySignalCatcher
	.word	.LC119
	.word	exitValue
	.word	.LC120
.L570:
	ldr	r3, [fp, #-16]
	ldr	r3, [r3, #4]
	str	r3, [fp, #-12]
	ldr	r3, [fp, #-16]
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L569
	ldr	r3, [fp, #-16]
	ldr	r3, [r3]
	mov	r0, r3
	bl	free
.L569:
	ldr	r0, [fp, #-16]
	bl	free
	ldr	r3, [fp, #-12]
	str	r3, [fp, #-16]
.L568:
	ldr	r3, [fp, #-16]
	cmp	r3, #0
	bne	.L570
	ldr	r3, .L579+224
	ldr	r3, [r3]
	ldr	r2, .L579+228
	ldr	r1, [r2]
	ldr	r2, [fp, #-8]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L572
	bl	__stack_chk_fail
.L572:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	main, .-main
	.ident	"GCC: (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0"
	.section	.note.GNU-stack,"",%progbits
