	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	4, 0x90                         ## -- Begin function ivi_decode_blocks
_ivi_decode_blocks:                     ## @ivi_decode_blocks
	.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
	subq	$152, %rsp
	.cfi_offset %rbx, -56
	.cfi_offset %r12, -48
	.cfi_offset %r13, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
	movq	%rsi, %r14
	movq	$0, -176(%rbp)
	movslq	(%rsi), %rax
	xorl	%r9d, %r9d
	cmpl	%eax, 4(%rsi)
	setne	%r8b
	movq	%rax, -72(%rbp)                 ## 8-byte Spill
	cmpl	$8, %eax
	movq	_ff_ivi_mc_avg_4x4_no_delta@GOTPCREL(%rip), %r10
	cmoveq	_ff_ivi_mc_avg_8x8_no_delta@GOTPCREL(%rip), %r10
	movq	_ff_ivi_mc_avg_4x4_delta@GOTPCREL(%rip), %rax
	cmoveq	_ff_ivi_mc_avg_8x8_delta@GOTPCREL(%rip), %rax
	movq	_ff_ivi_mc_4x4_no_delta@GOTPCREL(%rip), %rbx
	cmoveq	_ff_ivi_mc_8x8_no_delta@GOTPCREL(%rip), %rbx
	movq	_ff_ivi_mc_4x4_delta@GOTPCREL(%rip), %rsi
	cmoveq	_ff_ivi_mc_8x8_delta@GOTPCREL(%rip), %rsi
	movq	%rcx, -168(%rbp)                ## 8-byte Spill
	movq	%rdi, -160(%rbp)                ## 8-byte Spill
	cmpl	$0, (%rdx)
	jle	LBB0_36
## %bb.1:
	movq	%rdx, %r13
	movb	%r8b, %r9b
	leal	(%r9,%r9,2), %ecx
	incl	%ecx
	movl	%ecx, -148(%rbp)                ## 4-byte Spill
	movl	(%r10), %ecx
	movl	%ecx, -132(%rbp)                ## 4-byte Spill
	movl	(%rax), %eax
	movl	%eax, -144(%rbp)                ## 4-byte Spill
	movl	(%rbx), %eax
	movl	%eax, -128(%rbp)                ## 4-byte Spill
	movl	(%rsi), %eax
	movl	%eax, -140(%rbp)                ## 4-byte Spill
	movq	8(%rdx), %rcx
	movq	-72(%rbp), %rax                 ## 8-byte Reload
	decl	%eax
	movl	%eax, -136(%rbp)                ## 4-byte Spill
	xorl	%edx, %edx
	movq	_AV_CODEC_ID_INDEO4@GOTPCREL(%rip), %rsi
	xorl	%eax, %eax
	movq	%rax, -80(%rbp)                 ## 8-byte Spill
	movl	$-1, %eax
	movq	%rax, -96(%rbp)                 ## 8-byte Spill
	movl	$0, -52(%rbp)                   ## 4-byte Folded Spill
	movl	$0, -48(%rbp)                   ## 4-byte Folded Spill
	xorl	%eax, %eax
	movq	%rax, -112(%rbp)                ## 8-byte Spill
	xorl	%eax, %eax
	movq	%rax, -104(%rbp)                ## 8-byte Spill
	movq	%r13, -184(%rbp)                ## 8-byte Spill
LBB0_2:                                 ## =>This Loop Header: Depth=1
                                        ##     Child Loop BB0_23 Depth 2
	movl	(%rcx), %eax
	xorl	%edi, %edi
	movq	%rdi, -120(%rbp)                ## 8-byte Spill
	movl	%eax, -56(%rbp)                 ## 4-byte Spill
	testl	%eax, %eax
	sete	%bl
	movq	8(%rcx), %r15
	movq	24(%rcx), %rdi
	addq	8(%r14), %rdi
	movq	16(%rcx), %r12
	movq	-168(%rbp), %rax                ## 8-byte Reload
	movq	(%rax), %rax
	cmpq	(%rsi), %rax
	movq	%rcx, -64(%rbp)                 ## 8-byte Spill
	movl	%edx, -124(%rbp)                ## 4-byte Spill
	movb	%bl, -41(%rbp)                  ## 1-byte Spill
	jne	LBB0_4
## %bb.3:                               ##   in Loop: Header=BB0_2 Depth=1
	movl	$5, %esi
	callq	_av_clip_uintp2
	jmp	LBB0_5
	.p2align	4, 0x90
LBB0_4:                                 ##   in Loop: Header=BB0_2 Depth=1
	xorl	%esi, %esi
	movl	$23, %edx
	callq	_av_clip
LBB0_5:                                 ##   in Loop: Header=BB0_2 Depth=1
	movq	%rax, -88(%rbp)                 ## 8-byte Spill
	movq	-72(%rbp), %rbx                 ## 8-byte Reload
	xorl	%eax, %eax
	cmpl	$0, -56(%rbp)                   ## 4-byte Folded Reload
	setne	%al
	movq	16(%r14,%rax,8), %rax
	testq	%rax, %rax
	je	LBB0_7
## %bb.6:                               ##   in Loop: Header=BB0_2 Depth=1
	movq	-88(%rbp), %rcx                 ## 8-byte Reload
	movq	(%rax,%rcx,8), %rcx
	movq	%rcx, -88(%rbp)                 ## 8-byte Spill
LBB0_7:                                 ##   in Loop: Header=BB0_2 Depth=1
	cmpl	$0, -56(%rbp)                   ## 4-byte Folded Reload
	je	LBB0_22
## %bb.8:                               ##   in Loop: Header=BB0_2 Depth=1
	movq	-64(%rbp), %rsi                 ## 8-byte Reload
	movl	32(%rsi), %edi
	movl	36(%rsi), %r10d
	movl	40(%rsi), %r9d
	movl	44(%rsi), %r8d
	movl	32(%r14), %ecx
	movl	%r8d, %eax
	movq	%rax, -104(%rbp)                ## 8-byte Spill
	movl	%r9d, %eax
	movq	%rax, -112(%rbp)                ## 8-byte Spill
	movl	%r10d, -48(%rbp)                ## 4-byte Spill
	movl	%edi, -52(%rbp)                 ## 4-byte Spill
	testl	%ecx, %ecx
	je	LBB0_10
## %bb.9:                               ##   in Loop: Header=BB0_2 Depth=1
	movl	%r10d, %eax
	andl	$1, %eax
	movl	%edi, %edx
	andl	$1, %edx
	leal	(%rdx,%rax,2), %eax
	movq	%rax, -80(%rbp)                 ## 8-byte Spill
	movl	%r8d, %eax
	andl	$1, %eax
	movl	%r9d, %edx
	andl	$1, %edx
	leal	(%rdx,%rax,2), %eax
	movq	%rax, -96(%rbp)                 ## 8-byte Spill
	movl	%edi, %eax
	sarl	%eax
	movl	%eax, -52(%rbp)                 ## 4-byte Spill
	movl	%r10d, %eax
	sarl	%eax
	movl	%eax, -48(%rbp)                 ## 4-byte Spill
	movl	%r9d, %eax
	sarl	%eax
	movq	%rax, -112(%rbp)                ## 8-byte Spill
	movl	%r8d, %eax
	sarl	%eax
	movq	%rax, -104(%rbp)                ## 8-byte Spill
LBB0_10:                                ##   in Loop: Header=BB0_2 Depth=1
	movl	(%rsi), %eax
	cmpl	$2, %eax
	movl	$-1, %edx
	movq	-80(%rbp), %rsi                 ## 8-byte Reload
	cmovel	%edx, %esi
	movq	%rsi, -80(%rbp)                 ## 8-byte Spill
	testl	%eax, %eax
	je	LBB0_16
## %bb.11:                              ##   in Loop: Header=BB0_2 Depth=1
	movl	%edi, %edx
	sarl	%cl, %edx
	movl	%r10d, %esi
	sarl	%cl, %esi
	movslq	%edx, %rbx
	movq	-64(%rbp), %rdx                 ## 8-byte Reload
	addq	48(%rdx), %rbx
	js	LBB0_15
## %bb.12:                              ##   in Loop: Header=BB0_2 Depth=1
	andl	%ecx, %edi
	movslq	4(%r14), %rdx
	movslq	%edi, %rdi
	addq	%rdi, %rbx
	addq	%rdx, %rbx
	cmpq	40(%r14), %rbx
	jg	LBB0_15
## %bb.13:                              ##   in Loop: Header=BB0_2 Depth=1
	movslq	%esi, %rsi
	movq	-64(%rbp), %rdi                 ## 8-byte Reload
	addq	56(%rdi), %rsi
	js	LBB0_15
## %bb.14:                              ##   in Loop: Header=BB0_2 Depth=1
	andl	%ecx, %r10d
	movslq	%r10d, %rdi
	addq	%rdi, %rdx
	addq	%rsi, %rdx
	cmpq	48(%r14), %rdx
	jg	LBB0_15
LBB0_16:                                ##   in Loop: Header=BB0_2 Depth=1
	andl	$-2, %eax
	cmpl	$2, %eax
	jne	LBB0_17
## %bb.18:                              ##   in Loop: Header=BB0_2 Depth=1
	movl	%r9d, %eax
	sarl	%cl, %eax
	movl	%r8d, %edx
	sarl	%cl, %edx
	movslq	%eax, %rsi
	movq	-64(%rbp), %rax                 ## 8-byte Reload
	addq	48(%rax), %rsi
	movq	-72(%rbp), %rbx                 ## 8-byte Reload
	js	LBB0_15
## %bb.19:                              ##   in Loop: Header=BB0_2 Depth=1
	andl	%ecx, %r9d
	movslq	4(%r14), %rax
	movslq	%r9d, %rdi
	addq	%rdi, %rsi
	addq	%rax, %rsi
	cmpq	40(%r14), %rsi
	jg	LBB0_15
## %bb.20:                              ##   in Loop: Header=BB0_2 Depth=1
	movslq	%edx, %rdx
	movq	-64(%rbp), %rsi                 ## 8-byte Reload
	addq	56(%rsi), %rdx
	js	LBB0_15
## %bb.21:                              ##   in Loop: Header=BB0_2 Depth=1
	andl	%r8d, %ecx
	movslq	%ecx, %rcx
	addq	%rcx, %rax
	addq	%rdx, %rax
	cmpq	48(%r14), %rax
	jle	LBB0_22
	jmp	LBB0_15
	.p2align	4, 0x90
LBB0_17:                                ##   in Loop: Header=BB0_2 Depth=1
	movl	$-1, %eax
	movq	%rax, -96(%rbp)                 ## 8-byte Spill
	movq	-72(%rbp), %rbx                 ## 8-byte Reload
LBB0_22:                                ##   in Loop: Header=BB0_2 Depth=1
	movq	-120(%rbp), %rax                ## 8-byte Reload
	movb	-41(%rbp), %cl                  ## 1-byte Reload
	movb	%cl, %al
	movq	%rax, -120(%rbp)                ## 8-byte Spill
	xorl	%r13d, %r13d
	.p2align	4, 0x90
LBB0_23:                                ##   Parent Loop BB0_2 Depth=1
                                        ## =>  This Inner Loop Header: Depth=2
	testb	$1, %r13b
	jne	LBB0_24
## %bb.25:                              ##   in Loop: Header=BB0_23 Depth=2
	cmpl	$2, %r13d
	jne	LBB0_27
## %bb.26:                              ##   in Loop: Header=BB0_23 Depth=2
	subq	%rbx, %r12
	movq	40(%r14), %rax
	imulq	%rbx, %rax
	addq	%rax, %r12
LBB0_27:                                ##   in Loop: Header=BB0_23 Depth=2
	testb	$1, %r15b
	jne	LBB0_28
LBB0_29:                                ##   in Loop: Header=BB0_23 Depth=2
	movl	40(%r14), %eax
	movl	48(%r14), %ecx
	imull	%eax, %ecx
	subl	%r12d, %ecx
	imull	-136(%rbp), %eax                ## 4-byte Folded Reload
	addl	%ebx, %eax
	cmpl	%ecx, %eax
	jg	LBB0_15
## %bb.30:                              ##   in Loop: Header=BB0_23 Depth=2
	cmpl	$0, -56(%rbp)                   ## 4-byte Folded Reload
	je	LBB0_31
## %bb.32:                              ##   in Loop: Header=BB0_23 Depth=2
	movq	%r14, %rdi
	movl	-128(%rbp), %esi                ## 4-byte Reload
	movl	-132(%rbp), %edx                ## 4-byte Reload
	movq	%r12, %rcx
	movl	-52(%rbp), %r8d                 ## 4-byte Reload
	movl	-48(%rbp), %r9d                 ## 4-byte Reload
	pushq	-96(%rbp)                       ## 8-byte Folded Reload
	pushq	-80(%rbp)                       ## 8-byte Folded Reload
	pushq	-104(%rbp)                      ## 8-byte Folded Reload
	pushq	-112(%rbp)                      ## 8-byte Folded Reload
	callq	_ivi_mc
	addq	$32, %rsp
	testl	%eax, %eax
	jns	LBB0_34
	jmp	LBB0_37
	.p2align	4, 0x90
LBB0_24:                                ##   in Loop: Header=BB0_23 Depth=2
	addq	%rbx, %r12
	testb	$1, %r15b
	je	LBB0_29
LBB0_28:                                ##   in Loop: Header=BB0_23 Depth=2
	subq	$8, %rsp
	movq	-160(%rbp), %rdi                ## 8-byte Reload
	movq	%r14, %rsi
	movl	-140(%rbp), %edx                ## 4-byte Reload
	movl	-144(%rbp), %ecx                ## 4-byte Reload
	movl	-52(%rbp), %r8d                 ## 4-byte Reload
	movl	-48(%rbp), %r9d                 ## 4-byte Reload
	pushq	-168(%rbp)                      ## 8-byte Folded Reload
	pushq	%r12
	pushq	-88(%rbp)                       ## 8-byte Folded Reload
	pushq	-96(%rbp)                       ## 8-byte Folded Reload
	pushq	-80(%rbp)                       ## 8-byte Folded Reload
	pushq	-120(%rbp)                      ## 8-byte Folded Reload
	leaq	-176(%rbp), %rax
	pushq	%rax
	pushq	-104(%rbp)                      ## 8-byte Folded Reload
	pushq	-112(%rbp)                      ## 8-byte Folded Reload
	callq	_ivi_decode_coded_blocks
	addq	$80, %rsp
	testl	%eax, %eax
	jns	LBB0_34
	jmp	LBB0_37
LBB0_31:                                ##   in Loop: Header=BB0_23 Depth=2
	movq	%r14, %rdi
	leaq	-176(%rbp), %rsi
	movq	%r12, %rdx
	movl	%ebx, %ecx
	callq	_ivi_dc_transform
	testl	%eax, %eax
	js	LBB0_37
	.p2align	4, 0x90
LBB0_34:                                ##   in Loop: Header=BB0_23 Depth=2
	shrq	%r15
	incl	%r13d
	cmpl	%r13d, -148(%rbp)               ## 4-byte Folded Reload
	jne	LBB0_23
## %bb.35:                              ##   in Loop: Header=BB0_2 Depth=1
	movq	-64(%rbp), %rcx                 ## 8-byte Reload
	addq	$64, %rcx
	movl	-124(%rbp), %edx                ## 4-byte Reload
	incl	%edx
	movq	-184(%rbp), %r13                ## 8-byte Reload
	cmpl	(%r13), %edx
	movq	_AV_CODEC_ID_INDEO4@GOTPCREL(%rip), %rsi
	jl	LBB0_2
LBB0_36:
	movq	-160(%rbp), %rdi                ## 8-byte Reload
	callq	_align_get_bits
	xorl	%eax, %eax
	jmp	LBB0_37
LBB0_15:
	movq	_AVERROR_INVALIDDATA@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
LBB0_37:
	addq	$152, %rsp
	popq	%rbx
	popq	%r12
	popq	%r13
	popq	%r14
	popq	%r15
	popq	%rbp
	retq
	.cfi_endproc
                                        ## -- End function
	.comm	_ff_ivi_mc_8x8_delta,4,2        ## @ff_ivi_mc_8x8_delta
	.comm	_ff_ivi_mc_8x8_no_delta,4,2     ## @ff_ivi_mc_8x8_no_delta
	.comm	_ff_ivi_mc_avg_8x8_delta,4,2    ## @ff_ivi_mc_avg_8x8_delta
	.comm	_ff_ivi_mc_avg_8x8_no_delta,4,2 ## @ff_ivi_mc_avg_8x8_no_delta
	.comm	_ff_ivi_mc_4x4_delta,4,2        ## @ff_ivi_mc_4x4_delta
	.comm	_ff_ivi_mc_4x4_no_delta,4,2     ## @ff_ivi_mc_4x4_no_delta
	.comm	_ff_ivi_mc_avg_4x4_delta,4,2    ## @ff_ivi_mc_avg_4x4_delta
	.comm	_ff_ivi_mc_avg_4x4_no_delta,4,2 ## @ff_ivi_mc_avg_4x4_no_delta
	.comm	_AV_CODEC_ID_INDEO4,8,3         ## @AV_CODEC_ID_INDEO4
	.comm	_AVERROR_INVALIDDATA,4,2        ## @AVERROR_INVALIDDATA
	.no_dead_strip	_ivi_decode_blocks
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	2                               ; -- Begin function ivi_decode_blocks
_ivi_decode_blocks:                     ; @ivi_decode_blocks
	.cfi_startproc
; %bb.0:
	sub	sp, sp, #240
	.cfi_def_cfa_offset 240
	stp	x28, x27, [sp, #144]            ; 16-byte Folded Spill
	stp	x26, x25, [sp, #160]            ; 16-byte Folded Spill
	stp	x24, x23, [sp, #176]            ; 16-byte Folded Spill
	stp	x22, x21, [sp, #192]            ; 16-byte Folded Spill
	stp	x20, x19, [sp, #208]            ; 16-byte Folded Spill
	stp	x29, x30, [sp, #224]            ; 16-byte Folded Spill
	add	x29, sp, #224
	.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
	.cfi_offset w23, -56
	.cfi_offset w24, -64
	.cfi_offset w25, -72
	.cfi_offset w26, -80
	.cfi_offset w27, -88
	.cfi_offset w28, -96
	stp	x0, x3, [sp, #96]               ; 16-byte Folded Spill
	stur	xzr, [x29, #-88]
	ldp	w23, w8, [x1]
                                        ; kill: def $w23 killed $w23 def $x23
	sxtw	x23, w23
	cmp	w8, w23
	mov	w8, #4
	csinc	w20, w8, wzr, ne
Lloh0:
	adrp	x8, _ff_ivi_mc_avg_8x8_no_delta@GOTPAGE
Lloh1:
	ldr	x8, [x8, _ff_ivi_mc_avg_8x8_no_delta@GOTPAGEOFF]
Lloh2:
	adrp	x9, _ff_ivi_mc_avg_4x4_no_delta@GOTPAGE
Lloh3:
	ldr	x9, [x9, _ff_ivi_mc_avg_4x4_no_delta@GOTPAGEOFF]
	cmp	w23, #8
	csel	x9, x8, x9, eq
Lloh4:
	adrp	x8, _ff_ivi_mc_avg_8x8_delta@GOTPAGE
Lloh5:
	ldr	x8, [x8, _ff_ivi_mc_avg_8x8_delta@GOTPAGEOFF]
Lloh6:
	adrp	x10, _ff_ivi_mc_avg_4x4_delta@GOTPAGE
Lloh7:
	ldr	x10, [x10, _ff_ivi_mc_avg_4x4_delta@GOTPAGEOFF]
	csel	x10, x8, x10, eq
Lloh8:
	adrp	x8, _ff_ivi_mc_8x8_no_delta@GOTPAGE
Lloh9:
	ldr	x8, [x8, _ff_ivi_mc_8x8_no_delta@GOTPAGEOFF]
Lloh10:
	adrp	x11, _ff_ivi_mc_4x4_no_delta@GOTPAGE
Lloh11:
	ldr	x11, [x11, _ff_ivi_mc_4x4_no_delta@GOTPAGEOFF]
Lloh12:
	adrp	x12, _ff_ivi_mc_8x8_delta@GOTPAGE
Lloh13:
	ldr	x12, [x12, _ff_ivi_mc_8x8_delta@GOTPAGEOFF]
	csel	x11, x8, x11, eq
Lloh14:
	adrp	x8, _ff_ivi_mc_4x4_delta@GOTPAGE
Lloh15:
	ldr	x8, [x8, _ff_ivi_mc_4x4_delta@GOTPAGEOFF]
	csel	x8, x12, x8, eq
	ldr	w12, [x2]
	cmp	w12, #1
	b.lt	LBB0_32
; %bb.1:
	mov	x24, x2
	mov	x22, x1
	mov	w12, #0
	stp	xzr, xzr, [x29, #-104]          ; 16-byte Folded Spill
	mov	w26, #0
	ldr	w9, [x9]
	str	w9, [sp, #76]                   ; 4-byte Folded Spill
	ldr	w9, [x10]
	str	w9, [sp, #88]                   ; 4-byte Folded Spill
	ldr	w9, [x11]
	str	w9, [sp, #72]                   ; 4-byte Folded Spill
	sub	w9, w23, #1
	str	w9, [sp, #84]                   ; 4-byte Folded Spill
	ldr	w8, [x8]
	str	w8, [sp, #80]                   ; 4-byte Folded Spill
	mov	w27, #-1
	ldr	x28, [x2, #8]
Lloh16:
	adrp	x10, _AV_CODEC_ID_INDEO4@GOTPAGE
Lloh17:
	ldr	x10, [x10, _AV_CODEC_ID_INDEO4@GOTPAGEOFF]
	str	x2, [sp, #56]                   ; 8-byte Folded Spill
LBB0_2:                                 ; =>This Loop Header: Depth=1
                                        ;     Child Loop BB0_22 Depth 2
	str	w12, [sp, #68]                  ; 4-byte Folded Spill
	ldr	w19, [x28]
	cmp	w19, #0
	cset	w8, eq
	str	w8, [sp, #92]                   ; 4-byte Folded Spill
	ldp	x21, x25, [x28, #8]
	ldr	x8, [x22, #8]
	ldr	x9, [x28, #24]
	add	x0, x9, x8
	ldr	x8, [sp, #104]                  ; 8-byte Folded Reload
	ldr	x8, [x8]
	ldr	x9, [x10]
	cmp	x8, x9
	b.ne	LBB0_4
; %bb.3:                                ;   in Loop: Header=BB0_2 Depth=1
	mov	w1, #5
	bl	_av_clip_uintp2
	b	LBB0_5
LBB0_4:                                 ;   in Loop: Header=BB0_2 Depth=1
	mov	w1, #0
	mov	w2, #23
	bl	_av_clip
LBB0_5:                                 ;   in Loop: Header=BB0_2 Depth=1
	str	x0, [sp, #112]                  ; 8-byte Folded Spill
	cmp	w19, #0
	mov	w8, #24
	mov	w9, #16
	csel	x8, x9, x8, eq
	ldr	x8, [x22, x8]
	cbz	x8, LBB0_7
; %bb.6:                                ;   in Loop: Header=BB0_2 Depth=1
	ldr	x9, [sp, #112]                  ; 8-byte Folded Reload
	ldr	x9, [x8, x9, lsl #3]
	str	x9, [sp, #112]                  ; 8-byte Folded Spill
LBB0_7:                                 ;   in Loop: Header=BB0_2 Depth=1
	cbz	w19, LBB0_19
; %bb.8:                                ;   in Loop: Header=BB0_2 Depth=1
	ldp	w13, w11, [x28, #32]
	ldp	w10, w8, [x28, #40]
	ldr	w9, [x22, #32]
	and	w12, w13, #0x1
	bfi	w12, w11, #1, #1
	and	w14, w10, #0x1
	bfi	w14, w8, #1, #1
	asr	w15, w13, #1
	asr	w16, w11, #1
	asr	w17, w10, #1
	asr	w0, w8, #1
	cmp	w9, #0
	csel	w0, w8, w0, eq
	csel	w17, w10, w17, eq
	stp	w17, w0, [x29, #-100]           ; 8-byte Folded Spill
	csel	w16, w11, w16, eq
	stur	w16, [x29, #-104]               ; 4-byte Folded Spill
	csel	w26, w13, w15, eq
	csel	w27, w27, w14, eq
	cmp	w9, #0
	ldur	w14, [x29, #-92]                ; 4-byte Folded Reload
	csel	w14, w14, w12, eq
	ldr	w12, [x28]
	cmp	w12, #2
	csinv	w14, w14, wzr, ne
	stur	w14, [x29, #-92]                ; 4-byte Folded Spill
	cbz	w12, LBB0_13
; %bb.9:                                ;   in Loop: Header=BB0_2 Depth=1
	asr	w14, w13, w9
	ldr	x15, [x28, #48]
	adds	x14, x15, w14, sxtw
	b.mi	LBB0_33
; %bb.10:                               ;   in Loop: Header=BB0_2 Depth=1
	and	w15, w9, w13
	ldrsw	x13, [x22, #4]
	add	x14, x14, w15, sxtw
	ldr	x15, [x22, #40]
	add	x14, x14, x13
	cmp	x14, x15
	b.gt	LBB0_33
; %bb.11:                               ;   in Loop: Header=BB0_2 Depth=1
	asr	w14, w11, w9
	ldr	x15, [x28, #56]
	adds	x14, x15, w14, sxtw
	b.mi	LBB0_33
; %bb.12:                               ;   in Loop: Header=BB0_2 Depth=1
	and	w11, w9, w11
	add	x11, x13, w11, sxtw
	ldr	x13, [x22, #48]
	add	x11, x11, x14
	cmp	x11, x13
	b.gt	LBB0_33
LBB0_13:                                ;   in Loop: Header=BB0_2 Depth=1
	and	w11, w12, #0xfffffffe
	cmp	w11, #2
	b.ne	LBB0_18
; %bb.14:                               ;   in Loop: Header=BB0_2 Depth=1
	asr	w11, w10, w9
	ldr	x12, [x28, #48]
	adds	x11, x12, w11, sxtw
	b.mi	LBB0_33
; %bb.15:                               ;   in Loop: Header=BB0_2 Depth=1
	and	w12, w9, w10
	ldrsw	x10, [x22, #4]
	add	x11, x11, w12, sxtw
	ldr	x12, [x22, #40]
	add	x11, x11, x10
	cmp	x11, x12
	b.gt	LBB0_33
; %bb.16:                               ;   in Loop: Header=BB0_2 Depth=1
	asr	w11, w8, w9
	ldr	x12, [x28, #56]
	adds	x11, x12, w11, sxtw
	b.mi	LBB0_33
; %bb.17:                               ;   in Loop: Header=BB0_2 Depth=1
	and	w8, w9, w8
	add	x8, x10, w8, sxtw
	ldr	x9, [x22, #48]
	add	x8, x8, x11
	cmp	x8, x9
	b.le	LBB0_19
	b	LBB0_33
LBB0_18:                                ;   in Loop: Header=BB0_2 Depth=1
	mov	w27, #-1
LBB0_19:                                ;   in Loop: Header=BB0_2 Depth=1
	mov	w24, #0
	b	LBB0_22
LBB0_20:                                ;   in Loop: Header=BB0_22 Depth=2
	ldp	x0, x8, [sp, #96]               ; 16-byte Folded Reload
	stp	x25, x8, [sp, #32]
	ldr	x8, [sp, #112]                  ; 8-byte Folded Reload
	str	x8, [sp, #24]
	str	w27, [sp, #16]
	ldur	w9, [x29, #-92]                 ; 4-byte Folded Reload
	ldp	w3, w8, [sp, #88]               ; 8-byte Folded Reload
	stp	w8, w9, [sp, #8]
	sub	x8, x29, #88
	str	x8, [sp]
	mov	x1, x22
	ldr	w2, [sp, #80]                   ; 4-byte Folded Reload
	mov	x4, x26
	ldp	w5, w6, [x29, #-104]            ; 8-byte Folded Reload
	ldur	w7, [x29, #-96]                 ; 4-byte Folded Reload
	bl	_ivi_decode_coded_blocks
	tbnz	w0, #31, LBB0_34
LBB0_21:                                ;   in Loop: Header=BB0_22 Depth=2
	lsr	x21, x21, #1
	add	w24, w24, #1
	cmp	w20, w24
	b.eq	LBB0_31
LBB0_22:                                ;   Parent Loop BB0_2 Depth=1
                                        ; =>  This Inner Loop Header: Depth=2
	tbnz	w24, #0, LBB0_25
; %bb.23:                               ;   in Loop: Header=BB0_22 Depth=2
	cmp	w24, #2
	b.ne	LBB0_26
; %bb.24:                               ;   in Loop: Header=BB0_22 Depth=2
	sub	x8, x25, x23
	ldr	x9, [x22, #40]
	madd	x25, x9, x23, x8
	b	LBB0_26
LBB0_25:                                ;   in Loop: Header=BB0_22 Depth=2
	add	x25, x25, x23
LBB0_26:                                ;   in Loop: Header=BB0_22 Depth=2
	tbnz	w21, #0, LBB0_20
; %bb.27:                               ;   in Loop: Header=BB0_22 Depth=2
	ldr	w8, [x22, #40]
	ldr	w9, [x22, #48]
	neg	w10, w25
	madd	w9, w9, w8, w10
	ldr	w10, [sp, #84]                  ; 4-byte Folded Reload
	madd	w8, w10, w8, w23
	cmp	w8, w9
	b.gt	LBB0_33
; %bb.28:                               ;   in Loop: Header=BB0_22 Depth=2
	cbz	w19, LBB0_30
; %bb.29:                               ;   in Loop: Header=BB0_22 Depth=2
	str	w27, [sp, #4]
	ldur	w8, [x29, #-92]                 ; 4-byte Folded Reload
	str	w8, [sp]
	mov	x0, x22
	ldp	w1, w2, [sp, #72]               ; 8-byte Folded Reload
	mov	x3, x25
	mov	x4, x26
	ldp	w5, w6, [x29, #-104]            ; 8-byte Folded Reload
	ldur	w7, [x29, #-96]                 ; 4-byte Folded Reload
	bl	_ivi_mc
	tbz	w0, #31, LBB0_21
	b	LBB0_34
LBB0_30:                                ;   in Loop: Header=BB0_22 Depth=2
	sub	x1, x29, #88
	mov	x0, x22
	mov	x2, x25
	mov	x3, x23
	bl	_ivi_dc_transform
	tbz	w0, #31, LBB0_21
	b	LBB0_34
LBB0_31:                                ;   in Loop: Header=BB0_2 Depth=1
	add	x28, x28, #64
	ldr	w12, [sp, #68]                  ; 4-byte Folded Reload
	add	w12, w12, #1
	ldr	x24, [sp, #56]                  ; 8-byte Folded Reload
	ldr	w8, [x24]
	cmp	w12, w8
Lloh18:
	adrp	x10, _AV_CODEC_ID_INDEO4@GOTPAGE
Lloh19:
	ldr	x10, [x10, _AV_CODEC_ID_INDEO4@GOTPAGEOFF]
	b.lt	LBB0_2
LBB0_32:
	ldr	x0, [sp, #96]                   ; 8-byte Folded Reload
	bl	_align_get_bits
	mov	w0, #0
	b	LBB0_34
LBB0_33:
Lloh20:
	adrp	x8, _AVERROR_INVALIDDATA@GOTPAGE
Lloh21:
	ldr	x8, [x8, _AVERROR_INVALIDDATA@GOTPAGEOFF]
Lloh22:
	ldr	w0, [x8]
LBB0_34:
	ldp	x29, x30, [sp, #224]            ; 16-byte Folded Reload
	ldp	x20, x19, [sp, #208]            ; 16-byte Folded Reload
	ldp	x22, x21, [sp, #192]            ; 16-byte Folded Reload
	ldp	x24, x23, [sp, #176]            ; 16-byte Folded Reload
	ldp	x26, x25, [sp, #160]            ; 16-byte Folded Reload
	ldp	x28, x27, [sp, #144]            ; 16-byte Folded Reload
	add	sp, sp, #240
	ret
	.loh AdrpLdrGot	Lloh14, Lloh15
	.loh AdrpLdrGot	Lloh12, Lloh13
	.loh AdrpLdrGot	Lloh10, Lloh11
	.loh AdrpLdrGot	Lloh8, Lloh9
	.loh AdrpLdrGot	Lloh6, Lloh7
	.loh AdrpLdrGot	Lloh4, Lloh5
	.loh AdrpLdrGot	Lloh2, Lloh3
	.loh AdrpLdrGot	Lloh0, Lloh1
	.loh AdrpLdrGot	Lloh16, Lloh17
	.loh AdrpLdrGot	Lloh18, Lloh19
	.loh AdrpLdrGotLdr	Lloh20, Lloh21, Lloh22
	.cfi_endproc
                                        ; -- End function
	.comm	_ff_ivi_mc_8x8_delta,4,2        ; @ff_ivi_mc_8x8_delta
	.comm	_ff_ivi_mc_8x8_no_delta,4,2     ; @ff_ivi_mc_8x8_no_delta
	.comm	_ff_ivi_mc_avg_8x8_delta,4,2    ; @ff_ivi_mc_avg_8x8_delta
	.comm	_ff_ivi_mc_avg_8x8_no_delta,4,2 ; @ff_ivi_mc_avg_8x8_no_delta
	.comm	_ff_ivi_mc_4x4_delta,4,2        ; @ff_ivi_mc_4x4_delta
	.comm	_ff_ivi_mc_4x4_no_delta,4,2     ; @ff_ivi_mc_4x4_no_delta
	.comm	_ff_ivi_mc_avg_4x4_delta,4,2    ; @ff_ivi_mc_avg_4x4_delta
	.comm	_ff_ivi_mc_avg_4x4_no_delta,4,2 ; @ff_ivi_mc_avg_4x4_no_delta
	.comm	_AV_CODEC_ID_INDEO4,8,3         ; @AV_CODEC_ID_INDEO4
	.comm	_AVERROR_INVALIDDATA,4,2        ; @AVERROR_INVALIDDATA
	.no_dead_strip	_ivi_decode_blocks
.subsections_via_symbols
