	.file	"98575946.c"
	.intel_syntax noprefix
	.text
	.globl	gets
	.type	gets, @function
gets:
.LFB0:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	r12
	push	rbx
	sub	rsp, 16
	.cfi_offset 12, -24
	.cfi_offset 3, -32
	mov	QWORD PTR -24[rbp], rdi
	mov	rbx, QWORD PTR -24[rbp]
.L16:
	mov	eax, 0
	call	getchar@PLT
	and	eax, 127
	mov	r12d, eax
	cmp	r12d, 64
	jg	.L2
	cmp	r12d, 8
	jl	.L3
	lea	eax, -8[r12]
	cmp	eax, 56
	ja	.L3
	mov	eax, eax
	lea	rdx, 0[0+rax*4]
	lea	rax, .L5[rip]
	mov	eax, DWORD PTR [rdx+rax]
	cdqe
	lea	rdx, .L5[rip]
	add	rax, rdx
	notrack jmp	rax
	.section	.rodata
	.align 4
	.align 4
.L5:
	.long	.L9-.L5
	.long	.L3-.L5
	.long	.L8-.L5
	.long	.L3-.L5
	.long	.L3-.L5
	.long	.L8-.L5
	.long	.L3-.L5
	.long	.L3-.L5
	.long	.L3-.L5
	.long	.L3-.L5
	.long	.L7-.L5
	.long	.L3-.L5
	.long	.L3-.L5
	.long	.L4-.L5
	.long	.L3-.L5
	.long	.L4-.L5
	.long	.L3-.L5
	.long	.L3-.L5
	.long	.L3-.L5
	.long	.L3-.L5
	.long	.L3-.L5
	.long	.L3-.L5
	.long	.L3-.L5
	.long	.L3-.L5
	.long	.L3-.L5
	.long	.L3-.L5
	.long	.L3-.L5
	.long	.L6-.L5
	.long	.L3-.L5
	.long	.L3-.L5
	.long	.L3-.L5
	.long	.L3-.L5
	.long	.L3-.L5
	.long	.L3-.L5
	.long	.L3-.L5
	.long	.L3-.L5
	.long	.L3-.L5
	.long	.L3-.L5
	.long	.L3-.L5
	.long	.L3-.L5
	.long	.L3-.L5
	.long	.L3-.L5
	.long	.L3-.L5
	.long	.L3-.L5
	.long	.L3-.L5
	.long	.L3-.L5
	.long	.L3-.L5
	.long	.L3-.L5
	.long	.L3-.L5
	.long	.L3-.L5
	.long	.L3-.L5
	.long	.L3-.L5
	.long	.L3-.L5
	.long	.L3-.L5
	.long	.L3-.L5
	.long	.L3-.L5
	.long	.L4-.L5
	.text
.L2:
	cmp	r12d, 127
	je	.L9
	jmp	.L3
.L8:
	mov	BYTE PTR [rbx], 0
	jmp	.L17
.L9:
	cmp	rbx, QWORD PTR -24[rbp]
	jbe	.L18
	sub	rbx, 1
	mov	edi, 8
	call	putchar@PLT
	mov	edi, 32
	call	putchar@PLT
	mov	edi, 8
	call	putchar@PLT
	jmp	.L18
.L6:
	cmp	rbx, QWORD PTR -24[rbp]
	jbe	.L19
	sub	rbx, 1
	jmp	.L19
.L7:
	mov	edi, 10
	call	putchar@PLT
	mov	r12, QWORD PTR -24[rbp]
	jmp	.L14
.L15:
	movzx	eax, BYTE PTR [r12]
	movsx	eax, al
	mov	edi, eax
	call	putchar@PLT
	add	r12, 1
.L14:
	cmp	r12, rbx
	jb	.L15
	jmp	.L12
.L4:
	mov	rbx, QWORD PTR -24[rbp]
	mov	edi, 10
	call	putchar@PLT
	jmp	.L12
.L3:
	mov	rax, rbx
	lea	rbx, 1[rax]
	mov	edx, r12d
	mov	BYTE PTR [rax], dl
	jmp	.L16
.L18:
	nop
	jmp	.L16
.L19:
	nop
.L12:
	jmp	.L16
.L17:
	nop
	add	rsp, 16
	pop	rbx
	pop	r12
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE0:
	.size	gets, .-gets
	.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	"98575946.c"
	.text
	.align	2
	.global	gets
	.syntax unified
	.arm
	.fpu softvfp
	.type	gets, %function
gets:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	sub	sp, sp, #8
	str	r0, [fp, #-16]
	ldr	r4, [fp, #-16]
.L16:
	bl	getchar
	mov	r3, r0
	and	r5, r3, #127
	cmp	r5, #64
	bgt	.L2
	cmp	r5, #8
	blt	.L3
	sub	r3, r5, #8
	cmp	r3, #56
	ldrls	pc, [pc, r3, asl #2]
	b	.L3
.L5:
	.word	.L9
	.word	.L3
	.word	.L8
	.word	.L3
	.word	.L3
	.word	.L8
	.word	.L3
	.word	.L3
	.word	.L3
	.word	.L3
	.word	.L7
	.word	.L3
	.word	.L3
	.word	.L4
	.word	.L3
	.word	.L4
	.word	.L3
	.word	.L3
	.word	.L3
	.word	.L3
	.word	.L3
	.word	.L3
	.word	.L3
	.word	.L3
	.word	.L3
	.word	.L3
	.word	.L3
	.word	.L6
	.word	.L3
	.word	.L3
	.word	.L3
	.word	.L3
	.word	.L3
	.word	.L3
	.word	.L3
	.word	.L3
	.word	.L3
	.word	.L3
	.word	.L3
	.word	.L3
	.word	.L3
	.word	.L3
	.word	.L3
	.word	.L3
	.word	.L3
	.word	.L3
	.word	.L3
	.word	.L3
	.word	.L3
	.word	.L3
	.word	.L3
	.word	.L3
	.word	.L3
	.word	.L3
	.word	.L3
	.word	.L3
	.word	.L4
.L2:
	cmp	r5, #127
	beq	.L9
	b	.L3
.L8:
	mov	r3, #0
	strb	r3, [r4]
	b	.L17
.L9:
	ldr	r3, [fp, #-16]
	cmp	r4, r3
	bls	.L18
	sub	r4, r4, #1
	mov	r0, #8
	bl	putchar
	mov	r0, #32
	bl	putchar
	mov	r0, #8
	bl	putchar
	b	.L18
.L6:
	ldr	r3, [fp, #-16]
	cmp	r4, r3
	bls	.L19
	sub	r4, r4, #1
	b	.L19
.L7:
	mov	r0, #10
	bl	putchar
	ldr	r5, [fp, #-16]
	b	.L14
.L15:
	ldrb	r3, [r5]	@ zero_extendqisi2
	mov	r0, r3
	bl	putchar
	add	r5, r5, #1
.L14:
	cmp	r5, r4
	bcc	.L15
	b	.L12
.L4:
	ldr	r4, [fp, #-16]
	mov	r0, #10
	bl	putchar
	b	.L12
.L3:
	mov	r3, r4
	add	r4, r3, #1
	and	r2, r5, #255
	strb	r2, [r3]
	b	.L16
.L18:
	nop
	b	.L16
.L19:
	nop
.L12:
	b	.L16
.L17:
	nop
	mov	r0, r3
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
	.size	gets, .-gets
	.ident	"GCC: (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0"
	.section	.note.GNU-stack,"",%progbits
