	.file	"649944.c"
	.intel_syntax noprefix
	.text
	.globl	op
	.bss
	.align 4
	.type	op, @object
	.size	op, 4
op:
	.zero	4
	.text
	.globl	quadrado
	.type	quadrado, @function
quadrado:
.LFB0:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	movss	DWORD PTR -4[rbp], xmm0
	movss	xmm0, DWORD PTR -4[rbp]
	mulss	xmm0, xmm0
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE0:
	.size	quadrado, .-quadrado
	.globl	triangulo
	.type	triangulo, @function
triangulo:
.LFB1:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	movss	DWORD PTR -4[rbp], xmm0
	movss	DWORD PTR -8[rbp], xmm1
	movss	xmm0, DWORD PTR -4[rbp]
	mulss	xmm0, DWORD PTR -8[rbp]
	movss	xmm1, DWORD PTR .LC0[rip]
	divss	xmm0, xmm1
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE1:
	.size	triangulo, .-triangulo
	.globl	retangulo
	.type	retangulo, @function
retangulo:
.LFB2:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	movss	DWORD PTR -4[rbp], xmm0
	movss	DWORD PTR -8[rbp], xmm1
	movss	xmm0, DWORD PTR -4[rbp]
	mulss	xmm0, DWORD PTR -8[rbp]
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE2:
	.size	retangulo, .-retangulo
	.globl	trapezio
	.type	trapezio, @function
trapezio:
.LFB3:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	movss	DWORD PTR -4[rbp], xmm0
	movss	DWORD PTR -8[rbp], xmm1
	movss	DWORD PTR -12[rbp], xmm2
	movss	xmm0, DWORD PTR -4[rbp]
	mulss	xmm0, DWORD PTR -8[rbp]
	mulss	xmm0, DWORD PTR -12[rbp]
	movss	xmm1, DWORD PTR .LC0[rip]
	divss	xmm0, xmm1
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE3:
	.size	trapezio, .-trapezio
	.section	.rodata
	.align 8
.LC1:
	.string	"\n\n=======================MENU================\n"
	.align 8
.LC2:
	.string	"Digite uma opcao para ser redirecionado: \n 1- Quadrado \n 2- Triangulo \n 3- Retangulo \n 4- Trapezio \n 5- Sair"
	.text
	.globl	menu
	.type	menu, @function
menu:
.LFB4:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	lea	rdi, .LC1[rip]
	call	puts@PLT
	lea	rdi, .LC2[rip]
	call	puts@PLT
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE4:
	.size	menu, .-menu
	.section	.rodata
.LC3:
	.string	"%i"
	.align 8
.LC4:
	.string	"\n\n===========Quadrado===========\n"
.LC5:
	.string	"\nDigite o valor do lado: "
.LC6:
	.string	"%f"
.LC7:
	.string	"\nA area do seu quadrado e: %f"
	.align 8
.LC8:
	.string	"\n\n ================Triangulo=============\n"
.LC9:
	.string	"\nDigite o valor da base: "
.LC10:
	.string	"\nDigite o valor da altura: "
	.align 8
.LC11:
	.string	"\nA area do seu triangulo e: %f"
	.align 8
.LC12:
	.string	"\n\n ================Retangulo=============\n"
	.align 8
.LC13:
	.string	"\nA area do seu retangulo e: %f"
	.align 8
.LC14:
	.string	"\n\n ================Trapezio=============\n"
	.align 8
.LC15:
	.string	"\nDigite o valor da base maior: "
	.align 8
.LC16:
	.string	"\nDigite o valor da base menor: "
.LC17:
	.string	"\nA area do seu trapezio e: %f"
	.text
	.globl	main
	.type	main, @function
main:
.LFB5:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
.L16:
	call	menu
	lea	rsi, op[rip]
	lea	rdi, .LC3[rip]
	mov	eax, 0
	call	__isoc99_scanf@PLT
	mov	eax, DWORD PTR op[rip]
	cmp	eax, 4
	je	.L11
	cmp	eax, 4
	jg	.L12
	cmp	eax, 3
	je	.L13
	cmp	eax, 3
	jg	.L12
	cmp	eax, 1
	je	.L14
	cmp	eax, 2
	je	.L15
	jmp	.L12
.L14:
	lea	rdi, .LC4[rip]
	call	puts@PLT
	lea	rdi, .LC5[rip]
	mov	eax, 0
	call	printf@PLT
	lea	rax, -32[rbp]
	mov	rsi, rax
	lea	rdi, .LC6[rip]
	mov	eax, 0
	call	__isoc99_scanf@PLT
	mov	eax, DWORD PTR -32[rbp]
	movd	xmm0, eax
	call	quadrado
	movd	eax, xmm0
	mov	DWORD PTR -12[rbp], eax
	pxor	xmm3, xmm3
	cvtss2sd	xmm3, DWORD PTR -12[rbp]
	movq	rax, xmm3
	movq	xmm0, rax
	lea	rdi, .LC7[rip]
	mov	eax, 1
	call	printf@PLT
	jmp	.L12
.L15:
	lea	rdi, .LC8[rip]
	call	puts@PLT
	lea	rdi, .LC9[rip]
	mov	eax, 0
	call	printf@PLT
	lea	rax, -28[rbp]
	mov	rsi, rax
	lea	rdi, .LC6[rip]
	mov	eax, 0
	call	__isoc99_scanf@PLT
	lea	rdi, .LC10[rip]
	mov	eax, 0
	call	printf@PLT
	lea	rax, -24[rbp]
	mov	rsi, rax
	lea	rdi, .LC6[rip]
	mov	eax, 0
	call	__isoc99_scanf@PLT
	movss	xmm0, DWORD PTR -24[rbp]
	mov	eax, DWORD PTR -28[rbp]
	movaps	xmm1, xmm0
	movd	xmm0, eax
	call	triangulo
	movd	eax, xmm0
	mov	DWORD PTR -12[rbp], eax
	pxor	xmm4, xmm4
	cvtss2sd	xmm4, DWORD PTR -12[rbp]
	movq	rax, xmm4
	movq	xmm0, rax
	lea	rdi, .LC11[rip]
	mov	eax, 1
	call	printf@PLT
	jmp	.L12
.L13:
	lea	rdi, .LC12[rip]
	call	puts@PLT
	lea	rdi, .LC9[rip]
	mov	eax, 0
	call	printf@PLT
	lea	rax, -28[rbp]
	mov	rsi, rax
	lea	rdi, .LC6[rip]
	mov	eax, 0
	call	__isoc99_scanf@PLT
	lea	rdi, .LC10[rip]
	mov	eax, 0
	call	printf@PLT
	lea	rax, -24[rbp]
	mov	rsi, rax
	lea	rdi, .LC6[rip]
	mov	eax, 0
	call	__isoc99_scanf@PLT
	movss	xmm0, DWORD PTR -24[rbp]
	mov	eax, DWORD PTR -28[rbp]
	movaps	xmm1, xmm0
	movd	xmm0, eax
	call	retangulo
	movd	eax, xmm0
	mov	DWORD PTR -12[rbp], eax
	pxor	xmm5, xmm5
	cvtss2sd	xmm5, DWORD PTR -12[rbp]
	movq	rax, xmm5
	movq	xmm0, rax
	lea	rdi, .LC13[rip]
	mov	eax, 1
	call	printf@PLT
	jmp	.L12
.L11:
	lea	rdi, .LC14[rip]
	call	puts@PLT
	lea	rdi, .LC15[rip]
	mov	eax, 0
	call	printf@PLT
	lea	rax, -20[rbp]
	mov	rsi, rax
	lea	rdi, .LC6[rip]
	mov	eax, 0
	call	__isoc99_scanf@PLT
	lea	rdi, .LC16[rip]
	mov	eax, 0
	call	printf@PLT
	lea	rax, -16[rbp]
	mov	rsi, rax
	lea	rdi, .LC6[rip]
	mov	eax, 0
	call	__isoc99_scanf@PLT
	lea	rdi, .LC10[rip]
	mov	eax, 0
	call	printf@PLT
	lea	rax, -24[rbp]
	mov	rsi, rax
	lea	rdi, .LC6[rip]
	mov	eax, 0
	call	__isoc99_scanf@PLT
	movss	xmm1, DWORD PTR -24[rbp]
	movss	xmm0, DWORD PTR -16[rbp]
	mov	eax, DWORD PTR -20[rbp]
	movaps	xmm2, xmm1
	movaps	xmm1, xmm0
	movd	xmm0, eax
	call	trapezio
	movd	eax, xmm0
	mov	DWORD PTR -12[rbp], eax
	pxor	xmm6, xmm6
	cvtss2sd	xmm6, DWORD PTR -12[rbp]
	movq	rax, xmm6
	movq	xmm0, rax
	lea	rdi, .LC17[rip]
	mov	eax, 1
	call	printf@PLT
	nop
.L12:
	mov	eax, DWORD PTR op[rip]
	cmp	eax, 5
	jne	.L16
	mov	eax, 0
	mov	rdx, QWORD PTR -8[rbp]
	sub	rdx, QWORD PTR fs:40
	je	.L18
	call	__stack_chk_fail@PLT
.L18:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE5:
	.size	main, .-main
	.section	.rodata
	.align 4
.LC0:
	.long	1073741824
	.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	"649944.c"
	.text
	.comm	op,4,4
	.global	__aeabi_fmul
	.align	2
	.global	quadrado
	.syntax unified
	.arm
	.fpu softvfp
	.type	quadrado, %function
quadrado:
	@ 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]	@ float
	ldr	r1, [fp, #-8]	@ float
	ldr	r0, [fp, #-8]	@ float
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	quadrado, .-quadrado
	.global	__aeabi_fdiv
	.align	2
	.global	triangulo
	.syntax unified
	.arm
	.fpu softvfp
	.type	triangulo, %function
triangulo:
	@ 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]	@ float
	str	r1, [fp, #-12]	@ float
	ldr	r1, [fp, #-12]	@ float
	ldr	r0, [fp, #-8]	@ float
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, #1073741824
	mov	r0, r3
	bl	__aeabi_fdiv
	mov	r3, r0
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	triangulo, .-triangulo
	.align	2
	.global	retangulo
	.syntax unified
	.arm
	.fpu softvfp
	.type	retangulo, %function
retangulo:
	@ 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]	@ float
	str	r1, [fp, #-12]	@ float
	ldr	r1, [fp, #-12]	@ float
	ldr	r0, [fp, #-8]	@ float
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	retangulo, .-retangulo
	.align	2
	.global	trapezio
	.syntax unified
	.arm
	.fpu softvfp
	.type	trapezio, %function
trapezio:
	@ 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, #-8]	@ float
	str	r1, [fp, #-12]	@ float
	str	r2, [fp, #-16]	@ float
	ldr	r1, [fp, #-12]	@ float
	ldr	r0, [fp, #-8]	@ float
	bl	__aeabi_fmul
	mov	r3, r0
	ldr	r1, [fp, #-16]	@ float
	mov	r0, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, #1073741824
	mov	r0, r3
	bl	__aeabi_fdiv
	mov	r3, r0
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	trapezio, .-trapezio
	.section	.rodata
	.align	2
.LC0:
	.ascii	"\012\012=======================MENU================"
	.ascii	"\012\000"
	.align	2
.LC1:
	.ascii	"Digite uma opcao para ser redirecionado: \012 1- Qu"
	.ascii	"adrado \012 2- Triangulo \012 3- Retangulo \012 4- "
	.ascii	"Trapezio \012 5- Sair\000"
	.text
	.align	2
	.global	menu
	.syntax unified
	.arm
	.fpu softvfp
	.type	menu, %function
menu:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	ldr	r0, .L10
	bl	puts
	ldr	r0, .L10+4
	bl	puts
	nop
	pop	{fp, pc}
.L11:
	.align	2
.L10:
	.word	.LC0
	.word	.LC1
	.size	menu, .-menu
	.section	.rodata
	.align	2
.LC2:
	.ascii	"%i\000"
	.align	2
.LC3:
	.ascii	"\012\012===========Quadrado===========\012\000"
	.align	2
.LC4:
	.ascii	"\012Digite o valor do lado: \000"
	.align	2
.LC5:
	.ascii	"%f\000"
	.global	__aeabi_f2d
	.align	2
.LC6:
	.ascii	"\012A area do seu quadrado e: %f\000"
	.align	2
.LC7:
	.ascii	"\012\012 ================Triangulo=============\012"
	.ascii	"\000"
	.align	2
.LC8:
	.ascii	"\012Digite o valor da base: \000"
	.align	2
.LC9:
	.ascii	"\012Digite o valor da altura: \000"
	.align	2
.LC10:
	.ascii	"\012A area do seu triangulo e: %f\000"
	.align	2
.LC11:
	.ascii	"\012\012 ================Retangulo=============\012"
	.ascii	"\000"
	.align	2
.LC12:
	.ascii	"\012A area do seu retangulo e: %f\000"
	.align	2
.LC13:
	.ascii	"\012\012 ================Trapezio=============\012\000"
	.align	2
.LC14:
	.ascii	"\012Digite o valor da base maior: \000"
	.align	2
.LC15:
	.ascii	"\012Digite o valor da base menor: \000"
	.align	2
.LC16:
	.ascii	"\012A area do seu trapezio e: %f\000"
	.align	2
.LC17:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	main
	.syntax unified
	.arm
	.fpu softvfp
	.type	main, %function
main:
	@ args = 0, pretend = 0, frame = 32
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #32
	ldr	r3, .L22
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
.L19:
	bl	menu
	ldr	r1, .L22+4
	ldr	r0, .L22+8
	bl	__isoc99_scanf
	ldr	r3, .L22+4
	ldr	r3, [r3]
	sub	r3, r3, #1
	cmp	r3, #3
	ldrls	pc, [pc, r3, asl #2]
	b	.L13
.L15:
	.word	.L18
	.word	.L17
	.word	.L16
	.word	.L14
.L18:
	ldr	r0, .L22+12
	bl	puts
	ldr	r0, .L22+16
	bl	printf
	sub	r3, fp, #32
	mov	r1, r3
	ldr	r0, .L22+20
	bl	__isoc99_scanf
	ldr	r3, [fp, #-32]	@ float
	mov	r0, r3
	bl	quadrado
	str	r0, [fp, #-12]	@ float
	ldr	r0, [fp, #-12]	@ float
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	ldr	r0, .L22+24
	bl	printf
	b	.L13
.L17:
	ldr	r0, .L22+28
	bl	puts
	ldr	r0, .L22+32
	bl	printf
	sub	r3, fp, #28
	mov	r1, r3
	ldr	r0, .L22+20
	bl	__isoc99_scanf
	ldr	r0, .L22+36
	bl	printf
	sub	r3, fp, #24
	mov	r1, r3
	ldr	r0, .L22+20
	bl	__isoc99_scanf
	ldr	r3, [fp, #-28]	@ float
	ldr	r2, [fp, #-24]	@ float
	mov	r1, r2
	mov	r0, r3
	bl	triangulo
	str	r0, [fp, #-12]	@ float
	ldr	r0, [fp, #-12]	@ float
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	ldr	r0, .L22+40
	bl	printf
	b	.L13
.L16:
	ldr	r0, .L22+44
	bl	puts
	ldr	r0, .L22+32
	bl	printf
	sub	r3, fp, #28
	mov	r1, r3
	ldr	r0, .L22+20
	bl	__isoc99_scanf
	ldr	r0, .L22+36
	bl	printf
	sub	r3, fp, #24
	mov	r1, r3
	ldr	r0, .L22+20
	bl	__isoc99_scanf
	ldr	r3, [fp, #-28]	@ float
	ldr	r2, [fp, #-24]	@ float
	mov	r1, r2
	mov	r0, r3
	bl	retangulo
	str	r0, [fp, #-12]	@ float
	ldr	r0, [fp, #-12]	@ float
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	ldr	r0, .L22+48
	bl	printf
	b	.L13
.L14:
	ldr	r0, .L22+52
	bl	puts
	ldr	r0, .L22+56
	bl	printf
	sub	r3, fp, #20
	mov	r1, r3
	ldr	r0, .L22+20
	bl	__isoc99_scanf
	ldr	r0, .L22+60
	bl	printf
	sub	r3, fp, #16
	mov	r1, r3
	ldr	r0, .L22+20
	bl	__isoc99_scanf
	ldr	r0, .L22+36
	bl	printf
	sub	r3, fp, #24
	mov	r1, r3
	ldr	r0, .L22+20
	bl	__isoc99_scanf
	ldr	r3, [fp, #-20]	@ float
	ldr	r1, [fp, #-16]	@ float
	ldr	r2, [fp, #-24]	@ float
	mov	r0, r3
	bl	trapezio
	str	r0, [fp, #-12]	@ float
	ldr	r0, [fp, #-12]	@ float
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	ldr	r0, .L22+64
	bl	printf
	nop
.L13:
	ldr	r3, .L22+4
	ldr	r3, [r3]
	cmp	r3, #5
	bne	.L19
	mov	r3, #0
	ldr	r2, .L22
	ldr	r1, [r2]
	ldr	r2, [fp, #-8]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L21
	bl	__stack_chk_fail
.L21:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L23:
	.align	2
.L22:
	.word	.LC17
	.word	op
	.word	.LC2
	.word	.LC3
	.word	.LC4
	.word	.LC5
	.word	.LC6
	.word	.LC7
	.word	.LC8
	.word	.LC9
	.word	.LC10
	.word	.LC11
	.word	.LC12
	.word	.LC13
	.word	.LC14
	.word	.LC15
	.word	.LC16
	.size	main, .-main
	.ident	"GCC: (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0"
	.section	.note.GNU-stack,"",%progbits
