	.file	"extr_fcache.c__krb5_xlock.c"
	.intel_syntax noprefix
	.text
	.section	.rodata.str1.1,"aMS",@progbits,1
.LC0:
	.string	"file"
	.section	.rodata.str1.8,"aMS",@progbits,1
	.align 8
.LC1:
	.string	"timed out locking cache file %s"
	.section	.rodata.str1.1
.LC2:
	.string	"file, error"
	.section	.rodata.str1.8
	.align 8
.LC3:
	.string	"error locking cache file %s: %s"
	.text
	.p2align 4
	.globl	_krb5_xlock
	.type	_krb5_xlock, @function
_krb5_xlock:
.LFB0:
	.cfi_startproc
	endbr64
	push	r13
	.cfi_def_cfa_offset 16
	.cfi_offset 13, -16
	mov	r13, rcx
	push	r12
	.cfi_def_cfa_offset 24
	.cfi_offset 12, -24
	push	rbp
	.cfi_def_cfa_offset 32
	.cfi_offset 6, -32
	mov	ebp, edi
	mov	edi, esi
	push	rbx
	.cfi_def_cfa_offset 40
	.cfi_offset 3, -40
	sub	rsp, 152
	.cfi_def_cfa_offset 192
	mov	esi, DWORD PTR LOCK_EX[rip]
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR 136[rsp], rax
	xor	eax, eax
	test	rdx, rdx
	cmove	esi, DWORD PTR LOCK_SH[rip]
	call	flock@PLT
	test	eax, eax
	mov	r12d, eax
	cmovs	r12d, DWORD PTR errno[rip]
	cmp	DWORD PTR EACCES[rip], r12d
	je	.L5
	cmp	r12d, 128
	je	.L9
	cmp	r12d, 129
	je	.L5
	test	r12d, r12d
	je	.L1
	mov	rbx, rsp
	mov	edx, 128
	mov	edi, r12d
	mov	rsi, rbx
	call	rk_strerror_r@PLT
	lea	rsi, .LC2[rip]
	lea	rdi, .LC3[rip]
	call	N_@PLT
	mov	r8, rbx
	mov	rcx, r13
	mov	esi, r12d
	mov	edx, eax
	mov	edi, ebp
	xor	eax, eax
	call	krb5_set_error_message@PLT
	.p2align 4,,10
	.p2align 3
.L1:
	mov	rax, QWORD PTR 136[rsp]
	xor	rax, QWORD PTR fs:40
	jne	.L19
	add	rsp, 152
	.cfi_remember_state
	.cfi_def_cfa_offset 40
	mov	eax, r12d
	pop	rbx
	.cfi_def_cfa_offset 32
	pop	rbp
	.cfi_def_cfa_offset 24
	pop	r12
	.cfi_def_cfa_offset 16
	pop	r13
	.cfi_def_cfa_offset 8
	ret
	.p2align 4,,10
	.p2align 3
.L5:
	.cfi_restore_state
	lea	rsi, .LC0[rip]
	lea	rdi, .LC1[rip]
	mov	r12d, 129
	call	N_@PLT
	mov	rcx, r13
	mov	esi, 129
	mov	edi, ebp
	mov	edx, eax
	xor	eax, eax
	call	krb5_set_error_message@PLT
	jmp	.L1
	.p2align 4,,10
	.p2align 3
.L9:
	xor	r12d, r12d
	jmp	.L1
.L19:
	call	__stack_chk_fail@PLT
	.cfi_endproc
.LFE0:
	.size	_krb5_xlock, .-_krb5_xlock
	.comm	errno,4,4
	.comm	SEEK_SET,4,4
	.comm	LOCK_SH,4,4
	.comm	LOCK_EX,4,4
	.comm	F_WRLCK,4,4
	.comm	F_SETLKW,4,4
	.comm	F_RDLCK,4,4
	.comm	EACCES,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_fcache.c__krb5_xlock.c"
	.text
	.section	.rodata.str1.4,"aMS",%progbits,1
	.align	2
.LC0:
	.ascii	"file\000"
	.align	2
.LC1:
	.ascii	"timed out locking cache file %s\000"
	.align	2
.LC2:
	.ascii	"file, error\000"
	.align	2
.LC3:
	.ascii	"error locking cache file %s: %s\000"
	.section	.rodata.cst4,"aM",%progbits,4
	.align	2
.LC4:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	_krb5_xlock
	.syntax unified
	.arm
	.fpu softvfp
	.type	_krb5_xlock, %function
_krb5_xlock:
	@ args = 0, pretend = 0, frame = 136
	@ frame_needed = 0, uses_anonymous_args = 0
	push	{r4, r5, r6, r7, lr}
	mov	r6, r3
	ldr	r3, .L20
	sub	sp, sp, #148
	ldr	r3, [r3]
	str	r3, [sp, #140]
	mov	r3,#0
	cmp	r2, #0
	ldrne	r3, .L20+4
	ldreq	r3, .L20+8
	mov	r5, r0
	mov	r0, r1
	ldr	r1, [r3]
	bl	flock
	subs	r4, r0, #0
	ldrlt	r3, .L20+12
	ldr	r2, .L20+16
	ldrlt	r4, [r3]
	ldr	r2, [r2]
	cmp	r2, r4
	beq	.L5
	cmp	r4, #128
	moveq	r4, #0
	beq	.L1
	cmp	r4, #129
	beq	.L5
	cmp	r4, #0
	beq	.L1
	add	r7, sp, #12
	mov	r2, #128
	mov	r1, r7
	mov	r0, r4
	bl	rk_strerror_r
	ldr	r1, .L20+20
	ldr	r0, .L20+24
	bl	N_
	mov	r3, r6
	mov	r2, r0
	mov	r1, r4
	mov	r0, r5
	str	r7, [sp]
	bl	krb5_set_error_message
.L1:
	ldr	r3, .L20
	ldr	r2, [r3]
	ldr	r3, [sp, #140]
	eors	r2, r3, r2
	mov	r3, #0
	bne	.L19
	mov	r0, r4
	add	sp, sp, #148
	@ sp needed
	pop	{r4, r5, r6, r7, pc}
.L5:
	ldr	r1, .L20+28
	ldr	r0, .L20+32
	bl	N_
	mov	r3, r6
	mov	r2, r0
	mov	r1, #129
	mov	r0, r5
	bl	krb5_set_error_message
	mov	r4, #129
	b	.L1
.L19:
	bl	__stack_chk_fail
.L21:
	.align	2
.L20:
	.word	.LC4
	.word	LOCK_EX
	.word	LOCK_SH
	.word	errno
	.word	EACCES
	.word	.LC2
	.word	.LC3
	.word	.LC0
	.word	.LC1
	.size	_krb5_xlock, .-_krb5_xlock
	.comm	errno,4,4
	.comm	SEEK_SET,4,4
	.comm	LOCK_SH,4,4
	.comm	LOCK_EX,4,4
	.comm	F_WRLCK,4,4
	.comm	F_SETLKW,4,4
	.comm	F_RDLCK,4,4
	.comm	EACCES,4,4
	.ident	"GCC: (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0"
	.section	.note.GNU-stack,"",%progbits
