	.file	"extr_syscmd.c_showfile.c"
	.intel_syntax noprefix
	.text
	.section	.rodata.str1.1,"aMS",@progbits,1
.LC0:
	.string	"  "
.LC1:
	.string	"\n"
.LC2:
	.string	"\360\237\214\205"
.LC3:
	.string	"\360\237\223\201"
.LC4:
	.string	"\360\237\221\200"
.LC5:
	.string	"-"
.LC6:
	.string	"true"
.LC7:
	.string	"false"
.LC8:
	.string	"./"
.LC9:
	.string	"/"
.LC10:
	.string	"%18s%s"
.LC11:
	.string	"%s\n"
.LC12:
	.string	".jpg"
.LC13:
	.string	".png"
.LC14:
	.string	".gif"
.LC15:
	.string	"%s %s\n"
	.section	.rodata.str1.8,"aMS",@progbits,1
	.align 8
.LC16:
	.string	"%c%s%s%s  1 %4d:%-4d  %-10d  %s\n"
	.section	.rodata.str1.1
.LC17:
	.string	","
	.section	.rodata.str1.8
	.align 8
.LC18:
	.string	"{\"name\":\"%s\",\"size\":%d,\"uid\":%d,\"gid\":%d,\"perm\":%d,\"isdir\":%s}"
	.text
	.p2align 4
	.type	showfile, @function
showfile:
.LFB0:
	.cfi_startproc
	endbr64
	push	r15
	.cfi_def_cfa_offset 16
	.cfi_offset 15, -16
	push	r14
	.cfi_def_cfa_offset 24
	.cfi_offset 14, -24
	push	r13
	.cfi_def_cfa_offset 32
	.cfi_offset 13, -32
	mov	r13, rdi
	mov	rdi, rdx
	push	r12
	.cfi_def_cfa_offset 40
	.cfi_offset 12, -40
	mov	r12, rdx
	push	rbp
	.cfi_def_cfa_offset 48
	.cfi_offset 6, -48
	mov	ebp, r8d
	lea	r15, 2[r12]
	push	rbx
	.cfi_def_cfa_offset 56
	.cfi_offset 3, -56
	mov	ebx, esi
	sub	rsp, 40
	.cfi_def_cfa_offset 96
	mov	QWORD PTR 8[rsp], rcx
	call	r_file_size@PLT
	mov	rdi, r12
	mov	edx, 2
	lea	rsi, .LC8[rip]
	mov	DWORD PTR 24[rsp], eax
	call	strncmp@PLT
	mov	rdi, r12
	test	eax, eax
	cmovne	r15, r12
	call	r_file_is_directory@PLT
	mov	r12d, eax
	mov	rdi, r15
	test	eax, eax
	je	.L3
	call	strdup@PLT
	lea	rsi, .LC9[rip]
	mov	rdi, rax
	call	r_str_append@PLT
	cmp	BYTE PTR [rax], 0
	mov	r14, rax
	je	.L4
	test	ebp, ebp
	je	.L21
	lea	rdi, .LC5[rip]
	mov	r15d, 100
	call	strdup@PLT
	mov	edx, 493
	mov	QWORD PTR 16[rsp], rax
.L20:
	cmp	ebp, 113
	je	.L43
	cmp	ebp, 101
	je	.L44
	cmp	DWORD PTR FMT_RAW[rip], ebp
	je	.L45
	cmp	DWORD PTR FMT_JSON[rip], ebp
	mov	r15, r13
	je	.L46
.L10:
	mov	rdi, r14
	call	free@PLT
	mov	rdi, QWORD PTR 16[rsp]
	call	free@PLT
	jmp	.L1
	.p2align 4,,10
	.p2align 3
.L3:
	call	strdup@PLT
	cmp	BYTE PTR [rax], 0
	mov	r14, rax
	je	.L4
	test	ebp, ebp
	jne	.L47
.L21:
	add	ebx, 1
	xor	eax, eax
	lea	rcx, .LC0[rip]
	mov	rdi, r13
	and	ebx, 3
	mov	rdx, r14
	lea	rsi, .LC10[rip]
	setne	al
	mov	DWORD PTR needs_newline[rip], eax
	lea	rax, .LC1[rip]
	cmove	rcx, rax
	xor	eax, eax
	call	r_str_appendf@PLT
	mov	rdi, r14
	mov	r15, rax
	call	free@PLT
.L1:
	add	rsp, 40
	.cfi_remember_state
	.cfi_def_cfa_offset 56
	mov	rax, r15
	pop	rbx
	.cfi_def_cfa_offset 48
	pop	rbp
	.cfi_def_cfa_offset 40
	pop	r12
	.cfi_def_cfa_offset 32
	pop	r13
	.cfi_def_cfa_offset 24
	pop	r14
	.cfi_def_cfa_offset 16
	pop	r15
	.cfi_def_cfa_offset 8
	ret
	.p2align 4,,10
	.p2align 3
.L4:
	.cfi_restore_state
	mov	rdi, r14
	mov	r15, r13
	call	free@PLT
	jmp	.L1
	.p2align 4,,10
	.p2align 3
.L47:
	lea	rdi, .LC5[rip]
	mov	r15d, 45
	call	strdup@PLT
	mov	edx, 420
	mov	QWORD PTR 16[rsp], rax
	jmp	.L20
	.p2align 4,,10
	.p2align 3
.L44:
	lea	rdx, .LC3[rip]
	test	r12d, r12d
	je	.L48
.L12:
	mov	rcx, r14
	lea	rsi, .LC15[rip]
	mov	rdi, r13
	xor	eax, eax
	call	r_str_appendf@PLT
	mov	r15, rax
	jmp	.L10
	.p2align 4,,10
	.p2align 3
.L43:
	mov	rdx, r14
	lea	rsi, .LC11[rip]
	mov	rdi, r13
	xor	eax, eax
	call	r_str_appendf@PLT
	mov	r15, rax
	jmp	.L10
	.p2align 4,,10
	.p2align 3
.L46:
	test	ebx, ebx
	jg	.L49
.L18:
	test	r12d, r12d
	lea	rcx, .LC7[rip]
	mov	rdi, r13
	lea	rax, .LC6[rip]
	lea	rsi, .LC18[rip]
	cmove	rax, rcx
	xor	r9d, r9d
	xor	r8d, r8d
	push	rax
	.cfi_def_cfa_offset 104
	xor	eax, eax
	push	rdx
	.cfi_def_cfa_offset 112
	mov	ecx, DWORD PTR 40[rsp]
	mov	rdx, QWORD PTR 24[rsp]
	call	r_str_appendf@PLT
	mov	r15, rax
	pop	rax
	.cfi_def_cfa_offset 104
	pop	rdx
	.cfi_def_cfa_offset 96
	jmp	.L10
	.p2align 4,,10
	.p2align 3
.L49:
	mov	rdi, r13
	lea	rsi, .LC17[rip]
	mov	DWORD PTR 28[rsp], edx
	call	r_str_append@PLT
	mov	edx, DWORD PTR 28[rsp]
	mov	r13, rax
	jmp	.L18
	.p2align 4,,10
	.p2align 3
.L45:
	mov	edi, edx
	mov	DWORD PTR 8[rsp], edx
	and	edi, 7
	call	r_str_rwx_i@PLT
	mov	edx, DWORD PTR 8[rsp]
	mov	rbx, rax
	sar	edx, 3
	mov	edi, edx
	and	edi, 7
	call	r_str_rwx_i@PLT
	lea	rcx, .LC5[rip]
	mov	r9, rbx
	mov	rdi, r13
	mov	r8, rax
	mov	rax, QWORD PTR 16[rsp]
	push	r14
	.cfi_def_cfa_offset 104
	lea	rsi, .LC16[rip]
	test	rax, rax
	cmovne	rcx, rax
	test	r12d, r12d
	mov	eax, 100
	cmovne	r15d, eax
	mov	eax, DWORD PTR 32[rsp]
	push	rax
	.cfi_def_cfa_offset 112
	mov	edx, r15d
	xor	eax, eax
	push	0
	.cfi_def_cfa_offset 120
	push	0
	.cfi_def_cfa_offset 128
	call	r_str_appendf@PLT
	add	rsp, 32
	.cfi_def_cfa_offset 96
	mov	r15, rax
	jmp	.L10
	.p2align 4,,10
	.p2align 3
.L48:
	lea	rsi, .LC12[rip]
	mov	rdi, r14
	call	r_str_casestr@PLT
	test	rax, rax
	je	.L13
.L14:
	lea	rdx, .LC2[rip]
	jmp	.L12
	.p2align 4,,10
	.p2align 3
.L13:
	lea	rsi, .LC13[rip]
	mov	rdi, r14
	call	r_str_casestr@PLT
	test	rax, rax
	jne	.L14
	lea	rsi, .LC14[rip]
	mov	rdi, r14
	call	r_str_casestr@PLT
	test	rax, rax
	jne	.L14
	cmp	BYTE PTR [r14], 46
	lea	rdx, .LC0[rip]
	lea	rax, .LC4[rip]
	cmove	rdx, rax
	jmp	.L12
	.cfi_endproc
.LFE0:
	.size	showfile, .-showfile
	.comm	needs_newline,4,4
	.comm	S_IXUSR,4,4
	.comm	S_ISUID,4,4
	.comm	S_IFMT,4,4
	.comm	FMT_RAW,4,4
	.comm	FMT_JSON,4,4
	.ident	"GCC: (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.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, 2
	.eabi_attribute 34, 0
	.eabi_attribute 18, 4
	.file	"extr_syscmd.c_showfile.c"
	.text
	.section	.rodata.str1.4,"aMS",%progbits,1
	.align	2
.LC0:
	.ascii	"  \000"
	.align	2
.LC1:
	.ascii	"\012\000"
	.align	2
.LC2:
	.ascii	"\360\237\214\205\000"
	.align	2
.LC3:
	.ascii	"\360\237\223\201\000"
	.align	2
.LC4:
	.ascii	"\360\237\221\200\000"
	.align	2
.LC5:
	.ascii	"-\000"
	.align	2
.LC6:
	.ascii	"true\000"
	.align	2
.LC7:
	.ascii	"false\000"
	.align	2
.LC8:
	.ascii	"/\000"
	.align	2
.LC9:
	.ascii	"%18s%s\000"
	.align	2
.LC10:
	.ascii	"%s\012\000"
	.align	2
.LC11:
	.ascii	".jpg\000"
	.align	2
.LC12:
	.ascii	".png\000"
	.align	2
.LC13:
	.ascii	".gif\000"
	.align	2
.LC14:
	.ascii	"%s %s\012\000"
	.align	2
.LC15:
	.ascii	"%c%s%s%s  1 %4d:%-4d  %-10d  %s\012\000"
	.align	2
.LC16:
	.ascii	",\000"
	.align	2
.LC17:
	.ascii	"{\"name\":\"%s\",\"size\":%d,\"uid\":%d,\"gid\":%d,"
	.ascii	"\"perm\":%d,\"isdir\":%s}\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	showfile, %function
showfile:
	@ args = 4, pretend = 0, frame = 16
	@ frame_needed = 0, uses_anonymous_args = 0
	push	{r4, r5, r6, r7, r8, r9, r10, fp, lr}
	mov	r4, r2
	sub	sp, sp, #44
	mov	r5, r0
	mov	r0, r2
	mov	r9, r3
	mov	r7, r1
	ldr	r10, [sp, #80]
	bl	r_file_size
	ldrb	r3, [r4]	@ zero_extendqisi2
	mov	r8, r0
	cmp	r3, #46
	bne	.L25
	ldrb	r3, [r4, #1]	@ zero_extendqisi2
	cmp	r3, #47
	addeq	r6, r4, #2
	bne	.L25
.L3:
	mov	r0, r4
	bl	r_file_is_directory
	subs	fp, r0, #0
	mov	r0, r6
	beq	.L4
	bl	strdup
	ldr	r1, .L54
	bl	r_str_append
	ldrb	r3, [r0]	@ zero_extendqisi2
	mov	r4, r0
	cmp	r3, #0
	beq	.L46
	cmp	r10, #0
	beq	.L22
	ldr	r0, .L54+4
	bl	strdup
	mov	r2, #100
	mov	r6, r0
	ldr	r3, .L54+8
.L21:
	cmp	r10, #113
	beq	.L48
	cmp	r10, #101
	beq	.L49
	ldr	r1, .L54+12
	ldr	r1, [r1]
	cmp	r1, r10
	beq	.L50
	ldr	r2, .L54+16
	ldr	r2, [r2]
	cmp	r2, r10
	beq	.L51
.L11:
	mov	r0, r4
	bl	free
	mov	r0, r6
	bl	free
	mov	r0, r5
	add	sp, sp, #44
	@ sp needed
	pop	{r4, r5, r6, r7, r8, r9, r10, fp, pc}
.L4:
	bl	strdup
	ldrb	r3, [r0]	@ zero_extendqisi2
	mov	r4, r0
	cmp	r3, #0
	beq	.L46
	cmp	r10, #0
	bne	.L52
.L22:
	add	r7, r7, #1
	and	r7, r7, #3
	cmp	r7, #0
	movne	ip, #1
	moveq	ip, #0
	ldr	r2, .L54+20
	ldr	r1, .L54+24
	mov	r0, r5
	ldr	r3, .L54+28
	str	ip, [r1]
	movne	r3, r2
	ldr	r1, .L54+32
	mov	r2, r4
	bl	r_str_appendf
	mov	r5, r0
.L46:
	mov	r0, r4
	bl	free
	mov	r0, r5
	add	sp, sp, #44
	@ sp needed
	pop	{r4, r5, r6, r7, r8, r9, r10, fp, pc}
.L25:
	mov	r6, r4
	b	.L3
.L52:
	ldr	r0, .L54+4
	bl	strdup
	mov	r3, #420
	mov	r6, r0
	mov	r2, #45
	b	.L21
.L49:
	cmp	fp, #0
	ldrne	r2, .L54+36
	beq	.L53
.L13:
	mov	r0, r5
	mov	r3, r4
	ldr	r1, .L54+40
	bl	r_str_appendf
	mov	r5, r0
	b	.L11
.L48:
	mov	r0, r5
	mov	r2, r4
	ldr	r1, .L54+44
	bl	r_str_appendf
	mov	r5, r0
	b	.L11
.L50:
	cmp	fp, #0
	movne	r2, #100
	asr	r0, r3, #3
	cmp	r6, #0
	and	r0, r0, #5
	str	r2, [sp, #28]
	str	r2, [sp, #36]
	ldr	r7, .L54+4
	str	r3, [sp, #32]
	movne	r7, r6
	bl	r_str_rwx_i
	ldr	r3, [sp, #32]
	mov	r9, r0
	and	r0, r3, #5
	bl	r_str_rwx_i
	mov	r1, #0
	str	r0, [sp, #4]
	str	r1, [sp, #12]
	mov	r0, r5
	str	r1, [sp, #8]
	mov	r3, r7
	ldr	r2, [sp, #28]
	ldr	r1, .L54+48
	str	r9, [sp]
	str	r4, [sp, #20]
	str	r8, [sp, #16]
	bl	r_str_appendf
	mov	r5, r0
	b	.L11
.L51:
	cmp	r7, #0
	ble	.L19
	mov	r0, r5
	ldr	r1, .L54+52
	str	r3, [sp, #28]
	bl	r_str_append
	mov	r5, r0
	ldr	r3, [sp, #28]
.L19:
	ldr	r0, .L54+56
	ldr	r2, .L54+60
	cmp	fp, #0
	movne	fp, r0
	moveq	fp, r2
	mov	r1, #0
	mov	r0, r5
	str	r3, [sp, #8]
	str	r1, [sp, #4]
	str	r1, [sp]
	mov	r3, r8
	mov	r2, r9
	ldr	r1, .L54+64
	str	fp, [sp, #12]
	bl	r_str_appendf
	mov	r5, r0
	b	.L11
.L53:
	mov	r0, r4
	ldr	r1, .L54+68
	bl	r_str_casestr
	cmp	r0, #0
	beq	.L14
.L15:
	ldr	r2, .L54+72
	b	.L13
.L14:
	mov	r0, r4
	ldr	r1, .L54+76
	bl	r_str_casestr
	cmp	r0, #0
	bne	.L15
	mov	r0, r4
	ldr	r1, .L54+80
	bl	r_str_casestr
	cmp	r0, #0
	bne	.L15
	ldrb	r1, [r4]	@ zero_extendqisi2
	ldr	r3, .L54+84
	cmp	r1, #46
	ldr	r2, .L54+20
	moveq	r2, r3
	b	.L13
.L55:
	.align	2
.L54:
	.word	.LC8
	.word	.LC5
	.word	493
	.word	FMT_RAW
	.word	FMT_JSON
	.word	.LC0
	.word	needs_newline
	.word	.LC1
	.word	.LC9
	.word	.LC3
	.word	.LC14
	.word	.LC10
	.word	.LC15
	.word	.LC16
	.word	.LC6
	.word	.LC7
	.word	.LC17
	.word	.LC11
	.word	.LC2
	.word	.LC12
	.word	.LC13
	.word	.LC4
	.size	showfile, .-showfile
	.comm	needs_newline,4,4
	.comm	S_IXUSR,4,4
	.comm	S_ISUID,4,4
	.comm	S_IFMT,4,4
	.comm	FMT_RAW,4,4
	.comm	FMT_JSON,4,4
	.ident	"GCC: (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0"
	.section	.note.GNU-stack,"",%progbits
