	.file	"extr_chat.c_clean.c"
	.intel_syntax noprefix
	.text
	.p2align 4
	.globl	clean
	.type	clean, @function
clean:
.LFB0:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	r13
	push	r12
	push	rbx
	sub	rsp, 24
	.cfi_offset 13, -24
	.cfi_offset 12, -32
	.cfi_offset 3, -40
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -40[rbp], rax
	xor	eax, eax
	movsx	rax, DWORD PTR STR_LEN[rip]
	mov	rbx, rsp
	mov	r8, rax
	add	rax, 15
	mov	rdx, rax
	and	rax, -4096
	sub	rbx, rax
	and	rdx, -16
	mov	rax, rbx
	cmp	rsp, rax
	je	.L3
.L96:
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	cmp	rsp, rax
	jne	.L96
.L3:
	and	edx, 4095
	sub	rsp, rdx
	test	rdx, rdx
	jne	.L97
.L4:
	movzx	eax, BYTE PTR [rdi]
	mov	r10, rsp
	test	al, al
	je	.L43
	sub	r8d, 2
	sub	r8d, esi
	test	r8d, r8d
	jle	.L43
	mov	r12, QWORD PTR phone_num2[rip]
	mov	rdx, rsp
	movsx	r8, r8d
	mov	rbx, QWORD PTR phone_num[rip]
	lea	r9, .L14[rip]
.L40:
	movzx	ecx, BYTE PTR 1[rdi]
	cmp	al, 94
	je	.L98
	cmp	al, 92
	je	.L10
	mov	BYTE PTR [rdx], al
	add	rdi, 1
	mov	eax, ecx
	add	rdx, 1
.L9:
	test	al, al
	je	.L50
	mov	rcx, rdx
	sub	rcx, r10
	cmp	rcx, r8
	jl	.L40
.L50:
	mov	rax, rdx
	jmp	.L5
	.p2align 4,,10
	.p2align 3
.L98:
	lea	r11, 2[rdi]
	test	cl, cl
	jne	.L7
	mov	BYTE PTR [rdx], 94
	lea	rax, 1[rdx]
.L5:
	test	esi, esi
	je	.L26
	mov	BYTE PTR [rax], 13
	add	rax, 1
.L26:
	xor	edx, edx
	lea	rsi, 2[rax]
	mov	rdi, r10
	mov	WORD PTR [rax], dx
	sub	rsi, r10
	call	dup_mem@PLT
	mov	rbx, QWORD PTR -40[rbp]
	xor	rbx, QWORD PTR fs:40
	jne	.L99
	lea	rsp, -24[rbp]
	pop	rbx
	pop	r12
	pop	r13
	pop	rbp
	.cfi_remember_state
	.cfi_def_cfa 7, 8
	ret
	.p2align 4,,10
	.p2align 3
.L10:
	.cfi_restore_state
	lea	r11, 2[rdi]
	test	cl, cl
	je	.L100
	lea	eax, -75[rcx]
	cmp	al, 41
	ja	.L12
	movzx	eax, al
	movsx	rax, DWORD PTR [r9+rax*4]
	add	rax, r9
	notrack jmp	rax
	.section	.rodata
	.align 4
	.align 4
.L14:
	.long	.L18-.L14
	.long	.L12-.L14
	.long	.L12-.L14
	.long	.L24-.L14
	.long	.L12-.L14
	.long	.L12-.L14
	.long	.L12-.L14
	.long	.L12-.L14
	.long	.L12-.L14
	.long	.L23-.L14
	.long	.L22-.L14
	.long	.L12-.L14
	.long	.L12-.L14
	.long	.L12-.L14
	.long	.L12-.L14
	.long	.L12-.L14
	.long	.L12-.L14
	.long	.L18-.L14
	.long	.L12-.L14
	.long	.L12-.L14
	.long	.L12-.L14
	.long	.L12-.L14
	.long	.L12-.L14
	.long	.L21-.L14
	.long	.L20-.L14
	.long	.L18-.L14
	.long	.L12-.L14
	.long	.L12-.L14
	.long	.L12-.L14
	.long	.L12-.L14
	.long	.L12-.L14
	.long	.L12-.L14
	.long	.L12-.L14
	.long	.L12-.L14
	.long	.L12-.L14
	.long	.L19-.L14
	.long	.L12-.L14
	.long	.L18-.L14
	.long	.L17-.L14
	.long	.L16-.L14
	.long	.L15-.L14
	.long	.L13-.L14
	.text
	.p2align 4,,10
	.p2align 3
.L7:
	and	ecx, 31
	je	.L94
	mov	BYTE PTR [rdx], cl
	movzx	eax, BYTE PTR 2[rdi]
	add	rdx, 1
	mov	rdi, r11
	jmp	.L9
.L17:
	mov	DWORD PTR quiet[rip], 1
.L94:
	movzx	eax, BYTE PTR 2[rdi]
	mov	rdi, r11
	jmp	.L9
.L13:
	mov	BYTE PTR [rdx], 9
	movzx	eax, BYTE PTR 2[rdi]
	add	rdx, 1
	mov	rdi, r11
	jmp	.L9
.L15:
	mov	BYTE PTR [rdx], 32
	movzx	eax, BYTE PTR 2[rdi]
	add	rdx, 1
	mov	rdi, r11
	jmp	.L9
.L16:
	mov	BYTE PTR [rdx], 13
	movzx	eax, BYTE PTR 2[rdi]
	add	rdx, 1
	mov	rdi, r11
	jmp	.L9
.L19:
	mov	BYTE PTR [rdx], 10
	movzx	eax, BYTE PTR 2[rdi]
	add	rdx, 1
	mov	rdi, r11
	jmp	.L9
.L20:
	test	esi, esi
	je	.L25
	cmp	BYTE PTR 2[rdi], 0
	jne	.L25
	mov	rax, rdx
	jmp	.L26
.L21:
	mov	BYTE PTR [rdx], 8
	movzx	eax, BYTE PTR 2[rdi]
	add	rdx, 1
	mov	rdi, r11
	jmp	.L9
.L23:
	test	esi, esi
	je	.L28
	test	rbx, rbx
	je	.L28
	movzx	eax, BYTE PTR [rbx]
	mov	rcx, rbx
	test	al, al
	je	.L94
	.p2align 4,,10
	.p2align 3
.L29:
	add	rcx, 1
	mov	BYTE PTR [rdx], al
	add	rdx, 1
	movzx	eax, BYTE PTR [rcx]
	test	al, al
	jne	.L29
	jmp	.L94
.L24:
	test	esi, esi
	je	.L32
	mov	ecx, 92
	movzx	eax, BYTE PTR 2[rdi]
	add	rdx, 2
	mov	rdi, r11
	mov	WORD PTR -2[rdx], cx
	jmp	.L9
.L22:
	test	esi, esi
	je	.L30
	test	r12, r12
	je	.L30
	movzx	eax, BYTE PTR [r12]
	mov	rcx, r12
	test	al, al
	je	.L94
	.p2align 4,,10
	.p2align 3
.L31:
	add	rcx, 1
	mov	BYTE PTR [rdx], al
	add	rdx, 1
	movzx	eax, BYTE PTR [rcx]
	test	al, al
	jne	.L31
	jmp	.L94
.L18:
	lea	rax, 1[rdx]
	test	esi, esi
	jne	.L101
	mov	r13, rax
	mov	rax, rdx
	mov	rdx, r13
.L27:
	mov	BYTE PTR [rax], cl
	movzx	eax, BYTE PTR 2[rdi]
	mov	rdi, r11
	jmp	.L9
.L12:
	lea	eax, -48[rcx]
	cmp	al, 7
	ja	.L33
	movzx	eax, BYTE PTR 2[rdi]
	and	ecx, 7
	lea	r13d, -48[rax]
	cmp	r13b, 7
	ja	.L49
	movzx	eax, BYTE PTR 3[rdi]
	sal	ecx, 3
	or	ecx, r13d
	lea	r11d, -48[rax]
	cmp	r11b, 7
	jbe	.L35
	add	rdi, 3
.L34:
	test	cl, cl
	jne	.L51
	test	esi, esi
	je	.L9
.L51:
	lea	r11, 1[rdx]
	test	esi, esi
	je	.L37
	cmp	cl, 92
	je	.L52
	test	cl, cl
	je	.L52
.L37:
	mov	BYTE PTR [rdx], cl
	mov	rdx, r11
	jmp	.L9
	.p2align 4,,10
	.p2align 3
.L97:
	or	QWORD PTR -8[rsp+rdx], 0
	jmp	.L4
	.p2align 4,,10
	.p2align 3
.L28:
	mov	eax, 21596
	add	rdx, 2
	mov	WORD PTR -2[rdx], ax
	movzx	eax, BYTE PTR 2[rdi]
	mov	rdi, r11
	jmp	.L9
	.p2align 4,,10
	.p2align 3
.L30:
	mov	r13d, 21852
	movzx	eax, BYTE PTR 2[rdi]
	add	rdx, 2
	mov	rdi, r11
	mov	WORD PTR -2[rdx], r13w
	jmp	.L9
	.p2align 4,,10
	.p2align 3
.L25:
	mov	BYTE PTR [rdx], 99
	movzx	eax, BYTE PTR 2[rdi]
	add	rdx, 1
	mov	rdi, r11
	jmp	.L9
.L43:
	mov	rax, rsp
	jmp	.L5
	.p2align 4,,10
	.p2align 3
.L33:
	lea	r13, 1[rdx]
	test	esi, esi
	je	.L39
	lea	rax, 2[rdx]
	mov	BYTE PTR [rdx], 92
	mov	rdx, r13
	mov	r13, rax
.L39:
	mov	BYTE PTR [rdx], cl
	movzx	eax, BYTE PTR 2[rdi]
	mov	rdx, r13
	mov	rdi, r11
	jmp	.L9
	.p2align 4,,10
	.p2align 3
.L101:
	mov	BYTE PTR [rdx], 92
	add	rdx, 2
	jmp	.L27
	.p2align 4,,10
	.p2align 3
.L32:
	mov	BYTE PTR [rdx], 78
	movzx	eax, BYTE PTR 2[rdi]
	add	rdx, 1
	mov	rdi, r11
	jmp	.L9
.L100:
	mov	rax, rdx
	test	esi, esi
	je	.L26
	mov	ecx, 23644
	add	rax, 2
	mov	WORD PTR [rdx], cx
	jmp	.L5
.L49:
	mov	rdi, r11
	jmp	.L34
.L35:
	sal	ecx, 3
	movzx	eax, BYTE PTR 4[rdi]
	add	rdi, 4
	or	ecx, r11d
	jmp	.L34
.L52:
	lea	r13, 2[rdx]
	mov	BYTE PTR [rdx], 92
	mov	rdx, r11
	mov	r11, r13
	jmp	.L37
.L99:
	call	__stack_chk_fail@PLT
	.cfi_endproc
.LFE0:
	.size	clean, .-clean
	.comm	quiet,4,4
	.comm	phone_num2,8,8
	.comm	phone_num,8,8
	.comm	STR_LEN,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_chat.c_clean.c"
	.text
	.section	.rodata.cst4,"aM",%progbits,4
	.align	2
.LC0:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	clean
	.syntax unified
	.arm
	.fpu softvfp
	.type	clean, %function
clean:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, r6, r7, r8, r9, r10, fp, lr}
	add	fp, sp, #32
	sub	sp, sp, #28
	ldr	r3, .L86
	ldrb	r2, [r0]	@ zero_extendqisi2
	ldr	r4, [r3]
	cmp	r2, #0
	add	r3, r4, #7
	bic	r3, r3, #7
	sub	sp, sp, r3
	ldr	r3, .L86+4
	mov	ip, r0
	ldr	r3, [r3]
	str	r3, [fp, #-40]
	mov	r3,#0
	mov	r0, sp
	beq	.L38
	sub	r4, r4, #2
	sub	r4, r4, r1
	cmp	r4, #0
	ble	.L38
	mov	r3, sp
	mov	r6, #92
	mov	r8, #9
	mov	r9, #1
	ldr	r5, .L86+8
	ldr	lr, .L86+12
	ldr	r5, [r5]
	ldr	lr, [lr]
	ldr	r10, .L86+16
	str	r5, [fp, #-52]
	str	lr, [fp, #-48]
.L35:
	cmp	r2, #94
	ldrb	lr, [ip, #1]	@ zero_extendqisi2
	beq	.L83
	cmp	r2, #92
	beq	.L7
	strb	r2, [r3], #1
	mov	r2, lr
	add	ip, ip, #1
.L6:
	cmp	r2, #0
	beq	.L45
	sub	lr, r3, r0
	cmp	lr, r4
	blt	.L35
.L45:
	mov	ip, r3
	b	.L2
.L83:
	cmp	lr, #0
	add	r5, ip, #2
	bne	.L4
	mov	ip, r3
	strb	r2, [ip], #1
.L2:
	cmp	r1, #0
	movne	r3, #13
	strbne	r3, [ip], #1
.L23:
	mov	r3, #0
	add	r1, ip, #2
	strb	r3, [ip]
	strb	r3, [ip, #1]
	sub	r1, r1, r0
	bl	dup_mem
	ldr	r3, .L86+4
	ldr	r2, [r3]
	ldr	r3, [fp, #-40]
	eors	r2, r3, r2
	mov	r3, #0
	bne	.L84
	sub	sp, fp, #32
	@ sp needed
	pop	{r4, r5, r6, r7, r8, r9, r10, fp, pc}
.L7:
	cmp	lr, #0
	add	r5, ip, #2
	beq	.L85
	sub	r2, lr, #75
	cmp	r2, #41
	ldrls	pc, [pc, r2, asl #2]
	b	.L9
.L11:
	.word	.L15
	.word	.L9
	.word	.L9
	.word	.L21
	.word	.L9
	.word	.L9
	.word	.L9
	.word	.L9
	.word	.L9
	.word	.L20
	.word	.L19
	.word	.L9
	.word	.L9
	.word	.L9
	.word	.L9
	.word	.L9
	.word	.L9
	.word	.L15
	.word	.L9
	.word	.L9
	.word	.L9
	.word	.L9
	.word	.L9
	.word	.L18
	.word	.L17
	.word	.L15
	.word	.L9
	.word	.L9
	.word	.L9
	.word	.L9
	.word	.L9
	.word	.L9
	.word	.L9
	.word	.L9
	.word	.L9
	.word	.L16
	.word	.L9
	.word	.L15
	.word	.L14
	.word	.L13
	.word	.L12
	.word	.L10
.L4:
	ands	lr, lr, #31
	strbne	lr, [r3], #1
.L81:
	ldrb	r2, [ip, #2]	@ zero_extendqisi2
	mov	ip, r5
	b	.L6
.L10:
	ldrb	r2, [ip, #2]	@ zero_extendqisi2
	strb	r8, [r3], #1
	mov	ip, r5
	b	.L6
.L9:
	sub	r2, lr, #48
	cmp	r2, #7
	bhi	.L30
	ldrb	r2, [ip, #2]	@ zero_extendqisi2
	and	lr, lr, #7
	sub	r7, r2, #48
	str	r7, [fp, #-56]
	and	r7, r7, #255
	cmp	r7, #7
	movhi	ip, r5
	bhi	.L31
	ldrb	r2, [ip, #3]	@ zero_extendqisi2
	ldr	r7, [fp, #-56]
	sub	r5, r2, #48
	orr	lr, r7, lr, lsl #3
	and	r7, r5, #255
	cmp	r7, #7
	and	lr, lr, #255
	orrls	lr, r5, lr, lsl #3
	ldrbls	r2, [ip, #4]	@ zero_extendqisi2
	addhi	ip, ip, #3
	andls	lr, lr, #255
	addls	ip, ip, #4
.L31:
	cmp	r1, #0
	cmpeq	lr, #0
	beq	.L6
	add	r7, r3, #1
	cmp	r1, #0
	mov	r5, r7
	beq	.L33
	cmp	lr, #0
	cmpne	lr, #92
	moveq	r5, r3
	moveq	r3, r7
	strbeq	r6, [r5], #2
.L33:
	strb	lr, [r3]
	mov	r3, r5
	b	.L6
.L15:
	add	r2, r3, #1
	cmp	r1, #0
	mov	r7, r2
	moveq	r7, r3
	strbne	r6, [r3], #2
	moveq	r3, r2
	strb	lr, [r7]
	ldrb	r2, [ip, #2]	@ zero_extendqisi2
	mov	ip, r5
	b	.L6
.L21:
	cmp	r1, #0
	beq	.L29
	mov	lr, r3
	ldrb	r2, [ip, #2]	@ zero_extendqisi2
	mov	ip, #0
	strb	r6, [lr], #2
	strb	ip, [r3, #1]
	mov	ip, r5
	mov	r3, lr
	b	.L6
.L20:
	cmp	r1, #0
	beq	.L25
	ldr	r2, [fp, #-48]
	cmp	r2, #0
	beq	.L25
	ldrb	r2, [r2]	@ zero_extendqisi2
	cmp	r2, #0
	ldrne	lr, [fp, #-48]
	beq	.L81
.L26:
	strb	r2, [r3], #1
	ldrb	r2, [lr, #1]!	@ zero_extendqisi2
	cmp	r2, #0
	bne	.L26
	b	.L81
.L19:
	cmp	r1, #0
	beq	.L27
	ldr	r2, [fp, #-52]
	cmp	r2, #0
	beq	.L27
	ldrb	r2, [r2]	@ zero_extendqisi2
	cmp	r2, #0
	ldrne	lr, [fp, #-52]
	beq	.L81
.L28:
	strb	r2, [r3], #1
	ldrb	r2, [lr, #1]!	@ zero_extendqisi2
	cmp	r2, #0
	bne	.L28
	b	.L81
.L18:
	mov	r2, #8
	strb	r2, [r3], #1
	ldrb	r2, [ip, #2]	@ zero_extendqisi2
	mov	ip, r5
	b	.L6
.L17:
	cmp	r1, #0
	ldrb	r2, [ip, #2]	@ zero_extendqisi2
	beq	.L22
	cmp	r2, #0
	bne	.L22
	mov	ip, r3
	b	.L23
.L16:
	mov	r2, #10
	strb	r2, [r3], #1
	ldrb	r2, [ip, #2]	@ zero_extendqisi2
	mov	ip, r5
	b	.L6
.L13:
	mov	r2, #13
	strb	r2, [r3], #1
	ldrb	r2, [ip, #2]	@ zero_extendqisi2
	mov	ip, r5
	b	.L6
.L12:
	mov	r2, #32
	strb	r2, [r3], #1
	ldrb	r2, [ip, #2]	@ zero_extendqisi2
	mov	ip, r5
	b	.L6
.L14:
	str	r9, [r10]
	ldrb	r2, [ip, #2]	@ zero_extendqisi2
	mov	ip, r5
	b	.L6
.L25:
	mov	lr, r3
	ldrb	r2, [ip, #2]	@ zero_extendqisi2
	mov	ip, #84
	strb	r6, [lr], #2
	strb	ip, [r3, #1]
	mov	ip, r5
	mov	r3, lr
	b	.L6
.L27:
	mov	lr, r3
	ldrb	r2, [ip, #2]	@ zero_extendqisi2
	mov	ip, #85
	strb	r6, [lr], #2
	strb	ip, [r3, #1]
	mov	ip, r5
	mov	r3, lr
	b	.L6
.L22:
	mov	ip, #99
	strb	ip, [r3], #1
	mov	ip, r5
	b	.L6
.L38:
	mov	ip, sp
	b	.L2
.L29:
	mov	r2, #78
	strb	r2, [r3], #1
	ldrb	r2, [ip, #2]	@ zero_extendqisi2
	mov	ip, r5
	b	.L6
.L30:
	cmp	r1, #0
	movne	r2, r3
	add	r7, r3, #1
	strbne	r6, [r2], #2
	movne	r3, r7
	movne	r7, r2
	strb	lr, [r3]
	ldrb	r2, [ip, #2]	@ zero_extendqisi2
	mov	r3, r7
	mov	ip, r5
	b	.L6
.L85:
	mov	ip, r3
	cmp	r1, #0
	strbne	r2, [ip], #2
	strbne	r2, [r3, #1]
	bne	.L2
	b	.L23
.L84:
	bl	__stack_chk_fail
.L87:
	.align	2
.L86:
	.word	STR_LEN
	.word	.LC0
	.word	phone_num2
	.word	phone_num
	.word	quiet
	.size	clean, .-clean
	.comm	quiet,4,4
	.comm	phone_num2,4,4
	.comm	phone_num,4,4
	.comm	STR_LEN,4,4
	.ident	"GCC: (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0"
	.section	.note.GNU-stack,"",%progbits
