	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	4, 0x90                         ## -- Begin function fdp_nci_request_firmware
_fdp_nci_request_firmware:              ## @fdp_nci_request_firmware
	.cfi_startproc
## %bb.0:
	pushq	%rbp
	.cfi_def_cfa_offset 16
	.cfi_offset %rbp, -16
	movq	%rsp, %rbp
	.cfi_def_cfa_register %rbp
	pushq	%r15
	pushq	%r14
	pushq	%rbx
	pushq	%rax
	.cfi_offset %rbx, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
	callq	_nci_get_drvdata
	movq	%rax, %r15
	movq	24(%rax), %rax
	movq	(%rax), %r14
	leaq	16(%r15), %rdi
	movq	_FDP_RAM_PATCH_NAME@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	%r14, %rdx
	callq	_request_firmware
	testl	%eax, %eax
	js	LBB0_1
## %bb.2:
	movq	16(%r15), %rax
	movq	8(%rax), %rcx
	movq	_FDP_FW_HEADER_SIZE@GOTPCREL(%rip), %rbx
	movq	(%rbx), %rdx
	movl	4(%rcx,%rdx,4), %esi
	shll	$8, %esi
	orl	(%rcx,%rdx,4), %esi
	movl	8(%rcx,%rdx,4), %edi
	shll	$16, %edi
	movl	12(%rcx,%rdx,4), %edx
	shll	$24, %edx
	orl	%edi, %edx
	orl	%esi, %edx
	movl	%edx, (%r15)
	movl	(%rax), %ecx
	leaq	L_.str.1(%rip), %rsi
	movq	%r14, %rdi
	callq	_dev_dbg
	movq	%r15, %rdi
	addq	$8, %rdi
	movq	_FDP_OTP_PATCH_NAME@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	%r14, %rdx
	callq	_request_firmware
	testl	%eax, %eax
	js	LBB0_3
## %bb.4:
	movq	8(%r15), %rax
	movq	8(%rax), %rcx
	movq	(%rbx), %rdx
	movl	4(%rcx,%rdx,4), %esi
	shll	$8, %esi
	orl	(%rcx,%rdx,4), %esi
	movl	8(%rcx,%rdx,4), %edi
	shll	$16, %edi
	movl	12(%rcx,%rdx,4), %edx
	shll	$24, %edx
	orl	%edi, %edx
	orl	%esi, %edx
	movl	%edx, 4(%r15)
	movl	(%rax), %ecx
	leaq	L_.str.3(%rip), %rsi
	movq	%r14, %rdi
	callq	_dev_dbg
	jmp	LBB0_5
LBB0_1:
	movl	%eax, %ebx
	leaq	L_.str(%rip), %rsi
	movq	%r14, %rdi
	callq	_nfc_err
	jmp	LBB0_6
LBB0_3:
	leaq	L_.str.2(%rip), %rsi
	movq	%r14, %rdi
	callq	_nfc_err
LBB0_5:
	xorl	%ebx, %ebx
LBB0_6:
	movl	%ebx, %eax
	addq	$8, %rsp
	popq	%rbx
	popq	%r14
	popq	%r15
	popq	%rbp
	retq
	.cfi_endproc
                                        ## -- End function
	.comm	_FDP_RAM_PATCH_NAME,4,2         ## @FDP_RAM_PATCH_NAME
	.section	__TEXT,__cstring,cstring_literals
L_.str:                                 ## @.str
	.asciz	"RAM patch request error\n"

	.comm	_FDP_FW_HEADER_SIZE,8,3         ## @FDP_FW_HEADER_SIZE
L_.str.1:                               ## @.str.1
	.asciz	"RAM patch version: %d, size: %d\n"

	.comm	_FDP_OTP_PATCH_NAME,4,2         ## @FDP_OTP_PATCH_NAME
L_.str.2:                               ## @.str.2
	.asciz	"OTP patch request error\n"

L_.str.3:                               ## @.str.3
	.asciz	"OTP patch version: %d, size: %d\n"

	.no_dead_strip	_fdp_nci_request_firmware
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	2                               ; -- Begin function fdp_nci_request_firmware
_fdp_nci_request_firmware:              ; @fdp_nci_request_firmware
	.cfi_startproc
; %bb.0:
	stp	x22, x21, [sp, #-48]!           ; 16-byte Folded Spill
	.cfi_def_cfa_offset 48
	stp	x20, x19, [sp, #16]             ; 16-byte Folded Spill
	stp	x29, x30, [sp, #32]             ; 16-byte Folded Spill
	add	x29, sp, #32
	.cfi_def_cfa w29, 16
	.cfi_offset w30, -8
	.cfi_offset w29, -16
	.cfi_offset w19, -24
	.cfi_offset w20, -32
	.cfi_offset w21, -40
	.cfi_offset w22, -48
	bl	_nci_get_drvdata
	mov	x20, x0
	ldr	x8, [x0, #24]
	ldr	x19, [x8]
	add	x0, x0, #16
Lloh0:
	adrp	x8, _FDP_RAM_PATCH_NAME@GOTPAGE
Lloh1:
	ldr	x8, [x8, _FDP_RAM_PATCH_NAME@GOTPAGEOFF]
Lloh2:
	ldr	w1, [x8]
	mov	x2, x19
	bl	_request_firmware
	tbnz	w0, #31, LBB0_3
; %bb.1:
	ldr	x8, [x20, #16]
Lloh3:
	adrp	x21, _FDP_FW_HEADER_SIZE@GOTPAGE
Lloh4:
	ldr	x21, [x21, _FDP_FW_HEADER_SIZE@GOTPAGEOFF]
	ldr	x9, [x8, #8]
	ldr	x10, [x21]
	add	x9, x9, x10, lsl #2
	ldp	w10, w11, [x9]
	orr	w10, w10, w11, lsl #8
	ldp	w11, w9, [x9, #8]
	orr	w10, w10, w11, lsl #16
	orr	w2, w10, w9, lsl #24
	str	w2, [x20]
	ldr	w3, [x8]
Lloh5:
	adrp	x1, l_.str.1@PAGE
Lloh6:
	add	x1, x1, l_.str.1@PAGEOFF
	mov	x0, x19
	bl	_dev_dbg
	add	x0, x20, #8
Lloh7:
	adrp	x8, _FDP_OTP_PATCH_NAME@GOTPAGE
Lloh8:
	ldr	x8, [x8, _FDP_OTP_PATCH_NAME@GOTPAGEOFF]
Lloh9:
	ldr	w1, [x8]
	mov	x2, x19
	bl	_request_firmware
	tbnz	w0, #31, LBB0_4
; %bb.2:
	ldr	x8, [x20, #8]
	ldr	x9, [x8, #8]
	ldr	x10, [x21]
	add	x9, x9, x10, lsl #2
	ldp	w10, w11, [x9]
	orr	w10, w10, w11, lsl #8
	ldp	w11, w9, [x9, #8]
	orr	w10, w10, w11, lsl #16
	orr	w2, w10, w9, lsl #24
	str	w2, [x20, #4]
	ldr	w3, [x8]
Lloh10:
	adrp	x1, l_.str.3@PAGE
Lloh11:
	add	x1, x1, l_.str.3@PAGEOFF
	mov	x0, x19
	bl	_dev_dbg
	b	LBB0_5
LBB0_3:
	mov	x21, x0
Lloh12:
	adrp	x1, l_.str@PAGE
Lloh13:
	add	x1, x1, l_.str@PAGEOFF
	mov	x0, x19
	bl	_nfc_err
	b	LBB0_6
LBB0_4:
Lloh14:
	adrp	x1, l_.str.2@PAGE
Lloh15:
	add	x1, x1, l_.str.2@PAGEOFF
	mov	x0, x19
	bl	_nfc_err
LBB0_5:
	mov	w21, #0
LBB0_6:
	mov	x0, x21
	ldp	x29, x30, [sp, #32]             ; 16-byte Folded Reload
	ldp	x20, x19, [sp, #16]             ; 16-byte Folded Reload
	ldp	x22, x21, [sp], #48             ; 16-byte Folded Reload
	ret
	.loh AdrpLdrGotLdr	Lloh0, Lloh1, Lloh2
	.loh AdrpLdrGotLdr	Lloh7, Lloh8, Lloh9
	.loh AdrpAdd	Lloh5, Lloh6
	.loh AdrpLdrGot	Lloh3, Lloh4
	.loh AdrpAdd	Lloh10, Lloh11
	.loh AdrpAdd	Lloh12, Lloh13
	.loh AdrpAdd	Lloh14, Lloh15
	.cfi_endproc
                                        ; -- End function
	.comm	_FDP_RAM_PATCH_NAME,4,2         ; @FDP_RAM_PATCH_NAME
	.section	__TEXT,__cstring,cstring_literals
l_.str:                                 ; @.str
	.asciz	"RAM patch request error\n"

	.comm	_FDP_FW_HEADER_SIZE,8,3         ; @FDP_FW_HEADER_SIZE
l_.str.1:                               ; @.str.1
	.asciz	"RAM patch version: %d, size: %d\n"

	.comm	_FDP_OTP_PATCH_NAME,4,2         ; @FDP_OTP_PATCH_NAME
l_.str.2:                               ; @.str.2
	.asciz	"OTP patch request error\n"

l_.str.3:                               ; @.str.3
	.asciz	"OTP patch version: %d, size: %d\n"

	.no_dead_strip	_fdp_nci_request_firmware
.subsections_via_symbols
