	.file	"extr_114.c_get_ld_env.c"
	.intel_syntax noprefix
	.text
	.section	.rodata.str1.1,"aMS",@progbits,1
.LC0:
	.string	"strcpy found at [0x%x]\n\n"
.LC1:
	.string	"malloc"
.LC2:
	.string	"/"
.LC3:
	.string	"LD_PRELOAD="
	.text
	.p2align 4
	.globl	get_ld_env
	.type	get_ld_env, @function
get_ld_env:
.LFB0:
	.cfi_startproc
	endbr64
	push	r14
	.cfi_def_cfa_offset 16
	.cfi_offset 14, -16
	xor	eax, eax
	push	r13
	.cfi_def_cfa_offset 24
	.cfi_offset 13, -24
	mov	r13, rsi
	push	r12
	.cfi_def_cfa_offset 32
	.cfi_offset 12, -32
	xor	r12d, r12d
	push	rbp
	.cfi_def_cfa_offset 40
	.cfi_offset 6, -40
	push	rbx
	.cfi_def_cfa_offset 48
	.cfi_offset 3, -48
	mov	ebx, edi
	call	get_strcpy_addr@PLT
	test	rax, rax
	je	.L1
	mov	rsi, rax
	lea	rdi, .LC0[rip]
	mov	r14, rax
	call	printf@PLT
	mov	edi, DWORD PTR FRAME_SIZE[rip]
	add	edi, ebx
	add	edi, 2
	call	malloc@PLT
	mov	rbp, rax
	test	rax, rax
	je	.L4
	mov	edx, ebx
	mov	esi, 65
	mov	rdi, rax
	call	memset@PLT
	mov	BYTE PTR 0[rbp], 47
	movsx	rdi, ebx
	mov	rax, QWORD PTR FRAME_ADDR[rip]
	add	rdi, rbp
	lea	rsi, .LC2[rip]
	add	rax, r13
	mov	QWORD PTR 1124[rbp], rax
	mov	QWORD PTR [rdi], 1633771873
	add	r13, QWORD PTR FRAME_ADDR[rip]
	mov	QWORD PTR 8[rdi], 1650614882
	mov	QWORD PTR 16[rdi], 1667457891
	mov	QWORD PTR 24[rdi], 1684300900
	mov	QWORD PTR 32[rdi], 1701143909
	mov	QWORD PTR 40[rdi], 1717986918
	mov	QWORD PTR 48[rdi], 1734829927
	mov	QWORD PTR 56[rdi], 1751672936
	mov	QWORD PTR 64[rdi], 1768515945
	mov	QWORD PTR 72[rdi], 1886417008
	mov	QWORD PTR 80[rdi], 1903260017
	mov	QWORD PTR 88[rdi], 1920103026
	mov	QWORD PTR 96[rdi], 1936946035
	mov	QWORD PTR 104[rdi], 1953789044
	mov	QWORD PTR 112[rdi], r13
	mov	QWORD PTR 120[rdi], r14
	mov	rdi, rbp
	call	strcat@PLT
	mov	rdi, rbp
	call	strlen@PLT
	lea	rdi, .LC3[rip]
	mov	ebx, eax
	call	strlen@PLT
	lea	edi, 1[rbx+rax]
	call	malloc@PLT
	mov	r12, rax
	test	rax, rax
	je	.L4
	lea	rsi, .LC3[rip]
	mov	rdi, rax
	call	strcpy@PLT
	mov	rdi, r12
	call	strlen@PLT
	mov	rsi, rbp
	movsx	rdi, eax
	add	rdi, r12
	call	strcat@PLT
	mov	rdi, rbp
	call	free@PLT
.L1:
	pop	rbx
	.cfi_remember_state
	.cfi_def_cfa_offset 40
	mov	rax, r12
	pop	rbp
	.cfi_def_cfa_offset 32
	pop	r12
	.cfi_def_cfa_offset 24
	pop	r13
	.cfi_def_cfa_offset 16
	pop	r14
	.cfi_def_cfa_offset 8
	ret
	.p2align 4,,10
	.p2align 3
.L4:
	.cfi_restore_state
	xor	r12d, r12d
	lea	rdi, .LC1[rip]
	call	perror@PLT
	pop	rbx
	.cfi_def_cfa_offset 40
	mov	rax, r12
	pop	rbp
	.cfi_def_cfa_offset 32
	pop	r12
	.cfi_def_cfa_offset 24
	pop	r13
	.cfi_def_cfa_offset 16
	pop	r14
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE0:
	.size	get_ld_env, .-get_ld_env
	.comm	FRAME_SIZE,4,4
	.comm	FRAME_ADDR,8,8
	.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_114.c_get_ld_env.c"
	.text
	.section	.rodata.str1.4,"aMS",%progbits,1
	.align	2
.LC0:
	.ascii	"strcpy found at [0x%x]\012\012\000"
	.align	2
.LC1:
	.ascii	"malloc\000"
	.align	2
.LC2:
	.ascii	"/\000"
	.align	2
.LC3:
	.ascii	"LD_PRELOAD=\000"
	.text
	.align	2
	.global	get_ld_env
	.syntax unified
	.arm
	.fpu softvfp
	.type	get_ld_env, %function
get_ld_env:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 0, uses_anonymous_args = 0
	push	{r4, r5, r6, r7, r8, lr}
	mov	r4, r0
	mov	r7, r1
	bl	get_strcpy_addr
	subs	r5, r0, #0
	beq	.L1
	mov	r1, r5
	ldr	r0, .L11
	bl	printf
	ldr	r3, .L11+4
	ldr	r0, [r3]
	add	r0, r4, r0
	add	r0, r0, #2
	bl	malloc
	subs	r6, r0, #0
	beq	.L4
	mov	r2, r4
	mov	r1, #65
	bl	memset
	mov	r0, #47
	ldr	r3, .L11+8
	ldr	r2, .L11+12
	ldr	r1, [r3]
	ldr	r3, .L11+16
	add	r1, r7, r1
	str	r1, [r6, #1124]
	strb	r0, [r6]
	str	r2, [r6, r4]
	add	r2, r6, r4
	str	r1, [r2, #56]
	str	r3, [r2, #4]
	ldr	lr, .L11+20
	ldr	ip, .L11+24
	ldr	r0, .L11+28
	ldr	r1, .L11+32
	ldr	r3, .L11+36
	str	lr, [r2, #12]
	str	ip, [r2, #16]
	ldr	lr, .L11+40
	ldr	ip, .L11+44
	str	r0, [r2, #20]
	str	r1, [r2, #24]
	str	r3, [r2, #28]
	ldr	r1, .L11+48
	ldr	r3, .L11+52
	ldr	r0, .L11+56
	ldr	r7, .L11+60
	ldr	r4, .L11+64
	str	lr, [r2, #36]
	str	ip, [r2, #40]
	str	r3, [r2, #52]
	str	r5, [r2, #60]
	str	r0, [r2, #44]
	str	r1, [r2, #48]
	str	r7, [r2, #8]
	str	r4, [r2, #32]
	mov	r0, r6
	bl	strlen
	mov	r2, #2
	ldr	r1, .L11+68
	add	r0, r6, r0
	bl	memcpy
	mov	r0, r6
	bl	strlen
	add	r0, r0, #12
	bl	malloc
	subs	r5, r0, #0
	beq	.L4
	ldr	r3, .L11+72
	ldm	r3, {r0, r1, r2}
	stm	r5, {r0, r1, r2}
	mov	r0, r5
	bl	strlen
	mov	r1, r6
	add	r0, r5, r0
	bl	strcat
	mov	r0, r6
	bl	free
.L1:
	mov	r0, r5
	pop	{r4, r5, r6, r7, r8, pc}
.L4:
	ldr	r0, .L11+76
	bl	perror
	mov	r5, #0
	b	.L1
.L12:
	.align	2
.L11:
	.word	.LC0
	.word	FRAME_SIZE
	.word	FRAME_ADDR
	.word	1633771873
	.word	1650614882
	.word	1684300900
	.word	1701143909
	.word	1717986918
	.word	1734829927
	.word	1751672936
	.word	1886417008
	.word	1903260017
	.word	1936946035
	.word	1953789044
	.word	1920103026
	.word	1667457891
	.word	1768515945
	.word	.LC2
	.word	.LC3
	.word	.LC1
	.size	get_ld_env, .-get_ld_env
	.comm	FRAME_SIZE,4,4
	.comm	FRAME_ADDR,4,4
	.ident	"GCC: (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0"
	.section	.note.GNU-stack,"",%progbits
