	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	4, 0x90                         ## -- Begin function gfd_relocate_block
_gfd_relocate_block:                    ## @gfd_relocate_block
	.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	%r13
	pushq	%r12
	pushq	%rbx
	pushq	%rax
	.cfi_offset %rbx, -56
	.cfi_offset %r12, -48
	.cfi_offset %r13, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
	movq	(%rdi), %r13
	movq	8(%rdi), %r12
	movq	-16(%r12,%r13), %rax
	movq	_GFD_BLOCK_RELOCATIONS_MAGIC@GOTPCREL(%rip), %rcx
	cmpq	(%rcx), %rax
	jne	LBB0_1
## %bb.3:
	movslq	-8(%r13,%r12), %rsi
	movq	_GFD_RELOCATIONS_TYPE_MASK@GOTPCREL(%rip), %r8
	movl	(%r8), %eax
	andl	%esi, %eax
	movq	_GFD_RELOCATIONS_DATA@GOTPCREL(%rip), %r10
	cmpl	(%r10), %eax
	jne	LBB0_4
## %bb.5:
	movl	-4(%r13,%r12), %ebx
	movl	$1, %eax
	testl	%ebx, %ebx
	jle	LBB0_14
## %bb.6:
	movq	_GFD_RELOCATIONS_VALUE_MASK@GOTPCREL(%rip), %r9
	movslq	(%r9), %r11
	andq	%rsi, %r11
	addq	%r13, %r11
	xorl	%esi, %esi
	leaq	L_str.4(%rip), %rdi
	jmp	LBB0_7
	.p2align	4, 0x90
LBB0_12:                                ##   in Loop: Header=BB0_7 Depth=1
	andl	%edx, %r14d
	addl	%r13d, %r14d
	movl	%r14d, (%rcx,%r13)
	movl	-4(%r13,%r12), %ebx
LBB0_13:                                ##   in Loop: Header=BB0_7 Depth=1
	incq	%rsi
	movslq	%ebx, %rcx
	cmpq	%rcx, %rsi
	jge	LBB0_14
LBB0_7:                                 ## =>This Inner Loop Header: Depth=1
	movl	(%r11,%rsi,4), %ecx
	testl	%ecx, %ecx
	je	LBB0_13
## %bb.8:                               ##   in Loop: Header=BB0_7 Depth=1
	movl	(%r8), %r15d
	movl	%r15d, %ebx
	andl	%ecx, %ebx
	cmpl	(%r10), %ebx
	jne	LBB0_2
## %bb.9:                               ##   in Loop: Header=BB0_7 Depth=1
	movl	(%r9), %edx
	andl	%edx, %ecx
	movslq	%ecx, %rcx
	movl	(%r13,%rcx), %r14d
	andl	%r14d, %r15d
	cmpl	%ebx, %r15d
	je	LBB0_12
## %bb.10:                              ##   in Loop: Header=BB0_7 Depth=1
	movq	_GFD_RELOCATIONS_TEXT@GOTPCREL(%rip), %rbx
	cmpl	(%rbx), %r15d
	je	LBB0_12
## %bb.11:
	leaq	L_str(%rip), %rdi
	jmp	LBB0_2
LBB0_1:
	leaq	L_str.6(%rip), %rdi
	jmp	LBB0_2
LBB0_4:
	leaq	L_str.5(%rip), %rdi
LBB0_2:
	callq	_puts
	xorl	%eax, %eax
LBB0_14:
	addq	$8, %rsp
	popq	%rbx
	popq	%r12
	popq	%r13
	popq	%r14
	popq	%r15
	popq	%rbp
	retq
	.cfi_endproc
                                        ## -- End function
	.comm	_GFD_BLOCK_RELOCATIONS_MAGIC,8,3 ## @GFD_BLOCK_RELOCATIONS_MAGIC
	.comm	_GFD_RELOCATIONS_TYPE_MASK,4,2  ## @GFD_RELOCATIONS_TYPE_MASK
	.comm	_GFD_RELOCATIONS_DATA,4,2       ## @GFD_RELOCATIONS_DATA
	.comm	_GFD_RELOCATIONS_VALUE_MASK,4,2 ## @GFD_RELOCATIONS_VALUE_MASK
	.comm	_GFD_RELOCATIONS_TEXT,4,2       ## @GFD_RELOCATIONS_TEXT
	.section	__TEXT,__cstring,cstring_literals
L_str:                                  ## @str
	.asciz	"wrong relocations mask."

L_str.4:                                ## @str.4
	.asciz	"wrong patch relocations mask."

L_str.5:                                ## @str.5
	.asciz	"wrong data relocations mask."

L_str.6:                                ## @str.6
	.asciz	"wrong relocations magic number."

	.no_dead_strip	_gfd_relocate_block
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	2                               ; -- Begin function gfd_relocate_block
_gfd_relocate_block:                    ; @gfd_relocate_block
	.cfi_startproc
; %bb.0:
	stp	x29, x30, [sp, #-16]!           ; 16-byte Folded Spill
	.cfi_def_cfa_offset 16
	mov	x29, sp
	.cfi_def_cfa w29, 16
	.cfi_offset w30, -8
	.cfi_offset w29, -16
	ldp	x8, x9, [x0]
	add	x9, x9, x8
	ldur	x10, [x9, #-16]
Lloh0:
	adrp	x11, _GFD_BLOCK_RELOCATIONS_MAGIC@GOTPAGE
Lloh1:
	ldr	x11, [x11, _GFD_BLOCK_RELOCATIONS_MAGIC@GOTPAGEOFF]
Lloh2:
	ldr	x11, [x11]
	cmp	x10, x11
	b.ne	LBB0_9
; %bb.1:
	ldursw	x14, [x9, #-8]
Lloh3:
	adrp	x10, _GFD_RELOCATIONS_TYPE_MASK@GOTPAGE
Lloh4:
	ldr	x10, [x10, _GFD_RELOCATIONS_TYPE_MASK@GOTPAGEOFF]
	ldr	w11, [x10]
	and	w12, w11, w14
Lloh5:
	adrp	x11, _GFD_RELOCATIONS_DATA@GOTPAGE
Lloh6:
	ldr	x11, [x11, _GFD_RELOCATIONS_DATA@GOTPAGEOFF]
	ldr	w13, [x11]
	cmp	w12, w13
	b.ne	LBB0_10
; %bb.2:
	ldur	w17, [x9, #-4]
	cmp	w17, #1
	b.lt	LBB0_12
; %bb.3:
	mov	x12, #0
Lloh7:
	adrp	x13, _GFD_RELOCATIONS_VALUE_MASK@GOTPAGE
Lloh8:
	ldr	x13, [x13, _GFD_RELOCATIONS_VALUE_MASK@GOTPAGEOFF]
	ldrsw	x15, [x13]
	and	x14, x15, x14
	add	x14, x8, x14
Lloh9:
	adrp	x0, l_str.4@PAGE
Lloh10:
	add	x0, x0, l_str.4@PAGEOFF
Lloh11:
	adrp	x16, _GFD_RELOCATIONS_TEXT@GOTPAGE
Lloh12:
	ldr	x16, [x16, _GFD_RELOCATIONS_TEXT@GOTPAGEOFF]
Lloh13:
	adrp	x15, l_str@PAGE
Lloh14:
	add	x15, x15, l_str@PAGEOFF
	b	LBB0_5
LBB0_4:                                 ;   in Loop: Header=BB0_5 Depth=1
	add	x12, x12, #1
	cmp	x12, w17, sxtw
	b.ge	LBB0_12
LBB0_5:                                 ; =>This Inner Loop Header: Depth=1
	ldr	w1, [x14, x12, lsl #2]
	cbz	w1, LBB0_4
; %bb.6:                                ;   in Loop: Header=BB0_5 Depth=1
	ldr	w3, [x10]
	and	w17, w3, w1
	ldr	w2, [x11]
	cmp	w17, w2
	b.ne	LBB0_11
; %bb.7:                                ;   in Loop: Header=BB0_5 Depth=1
	ldr	w2, [x13]
	and	w1, w2, w1
	sxtw	x1, w1
	ldr	w4, [x8, x1]
	and	w3, w4, w3
	ldr	w5, [x16]
	cmp	w3, w17
	ccmp	w3, w5, #4, ne
	b.ne	LBB0_13
; %bb.8:                                ;   in Loop: Header=BB0_5 Depth=1
	and	w17, w4, w2
	add	w17, w17, w8
	str	w17, [x1, x8]
	ldur	w17, [x9, #-4]
	b	LBB0_4
LBB0_9:
Lloh15:
	adrp	x0, l_str.6@PAGE
Lloh16:
	add	x0, x0, l_str.6@PAGEOFF
	b	LBB0_11
LBB0_10:
Lloh17:
	adrp	x0, l_str.5@PAGE
Lloh18:
	add	x0, x0, l_str.5@PAGEOFF
LBB0_11:
	bl	_puts
	mov	w0, #0
	ldp	x29, x30, [sp], #16             ; 16-byte Folded Reload
	ret
LBB0_12:
	mov	w0, #1
	ldp	x29, x30, [sp], #16             ; 16-byte Folded Reload
	ret
LBB0_13:
	mov	x0, x15
	b	LBB0_11
	.loh AdrpLdrGotLdr	Lloh0, Lloh1, Lloh2
	.loh AdrpLdrGot	Lloh5, Lloh6
	.loh AdrpLdrGot	Lloh3, Lloh4
	.loh AdrpAdd	Lloh13, Lloh14
	.loh AdrpLdrGot	Lloh11, Lloh12
	.loh AdrpAdd	Lloh9, Lloh10
	.loh AdrpLdrGot	Lloh7, Lloh8
	.loh AdrpAdd	Lloh15, Lloh16
	.loh AdrpAdd	Lloh17, Lloh18
	.cfi_endproc
                                        ; -- End function
	.comm	_GFD_BLOCK_RELOCATIONS_MAGIC,8,3 ; @GFD_BLOCK_RELOCATIONS_MAGIC
	.comm	_GFD_RELOCATIONS_TYPE_MASK,4,2  ; @GFD_RELOCATIONS_TYPE_MASK
	.comm	_GFD_RELOCATIONS_DATA,4,2       ; @GFD_RELOCATIONS_DATA
	.comm	_GFD_RELOCATIONS_VALUE_MASK,4,2 ; @GFD_RELOCATIONS_VALUE_MASK
	.comm	_GFD_RELOCATIONS_TEXT,4,2       ; @GFD_RELOCATIONS_TEXT
	.section	__TEXT,__cstring,cstring_literals
l_str:                                  ; @str
	.asciz	"wrong relocations mask."

l_str.4:                                ; @str.4
	.asciz	"wrong patch relocations mask."

l_str.5:                                ; @str.5
	.asciz	"wrong data relocations mask."

l_str.6:                                ; @str.6
	.asciz	"wrong relocations magic number."

	.no_dead_strip	_gfd_relocate_block
.subsections_via_symbols
