	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	4, 0x90                         ## -- Begin function opimul
_opimul:                                ## @opimul
	.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
	movq	%rdx, %rbx
	movq	%rsi, %r14
	movq	%rdi, %r15
	movq	%rdx, %rdi
	callq	_is_valid_registers
	movq	8(%rbx), %rcx
	movq	_OT_QWORD@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	testl	%eax, (%rcx)
	je	LBB0_2
## %bb.1:
	movl	$72, (%r14)
	movl	$1, %eax
	jmp	LBB0_3
LBB0_2:
	xorl	%eax, %eax
LBB0_3:
	movl	(%rbx), %edx
	cmpl	$3, %edx
	je	LBB0_11
## %bb.4:
	movl	$-1, %ebx
	cmpl	$2, %edx
	je	LBB0_20
## %bb.5:
	cmpl	$1, %edx
	jne	LBB0_47
## %bb.6:
	movl	(%rcx), %edx
	movq	_OT_WORD@GOTPCREL(%rip), %rsi
	testl	%edx, (%rsi)
	je	LBB0_8
## %bb.7:
	movl	%eax, %edx
	incl	%eax
	movl	$102, (%r14,%rdx,4)
	movl	(%rcx), %edx
LBB0_8:
	movq	_OT_BYTE@GOTPCREL(%rip), %rsi
	xorl	%edi, %edi
	andl	(%rsi), %edx
	sete	%dil
	movl	%eax, %edx
	orl	$246, %edi
	movl	%edi, (%r14,%rdx,4)
	leal	1(%rax), %edx
	movq	_OT_MEMORY@GOTPCREL(%rip), %rsi
	movl	(%rsi), %esi
	testl	%esi, (%rcx)
	je	LBB0_26
## %bb.9:
	movq	8(%rcx), %rcx
	movl	(%rcx), %ecx
	orl	$40, %ecx
	addl	$2, %eax
	movl	%edx, %edx
LBB0_10:
	movl	%ecx, (%r14,%rdx,4)
	movl	%eax, %ebx
	jmp	LBB0_47
LBB0_11:
	movq	_OT_GPREG@GOTPCREL(%rip), %rdx
	movl	(%rdx), %esi
	testl	%esi, (%rcx)
	je	LBB0_28
## %bb.12:
	movl	40(%rcx), %edx
	testl	%esi, %edx
	jne	LBB0_14
## %bb.13:
	movq	_OT_MEMORY@GOTPCREL(%rip), %rsi
	testl	%edx, (%rsi)
	je	LBB0_28
LBB0_14:
	movq	_OT_CONSTANT@GOTPCREL(%rip), %rdx
	movl	(%rdx), %edx
	testl	%edx, 80(%rcx)
	je	LBB0_28
## %bb.15:
	leal	1(%rax), %esi
	movl	%eax, %edx
	movl	$107, (%r14,%rdx,4)
	movq	_OT_MEMORY@GOTPCREL(%rip), %rdx
	movl	(%rdx), %edx
	testl	%edx, 40(%rcx)
	je	LBB0_34
## %bb.16:
	movq	48(%rcx), %rdi
	movl	4(%rdi), %edx
	movq	_X86R_UNDEFINED@GOTPCREL(%rip), %rbx
	cmpl	(%rbx), %edx
	jne	LBB0_35
## %bb.17:
	movl	72(%rcx), %edx
	imull	68(%rcx), %edx
	testl	%edx, %edx
	je	LBB0_42
## %bb.18:
	leal	-128(%rdx), %r8d
	xorl	%edi, %edi
	cmpl	$-255, %r8d
	setb	%dil
	movl	%esi, %esi
	shll	$6, %edi
	addl	$64, %edi
	movl	%edi, (%r14,%rsi,4)
	movl	16(%rcx), %ebx
	shll	$3, %ebx
	leal	2(%rax), %r9d
	orl	%edi, %ebx
	leal	3(%rax), %edi
	movl	%ebx, (%r14,%rsi,4)
	movl	%edx, (%r14,%r9,4)
	cmpl	$-256, %r8d
	ja	LBB0_45
## %bb.19:
	movl	%edx, %esi
	sarl	$8, %esi
	leal	4(%rax), %ebx
	movl	%edi, %edi
	movl	%esi, (%r14,%rdi,4)
	movl	%edx, %edi
	sarl	$16, %edi
	leal	5(%rax), %esi
	movl	%edi, (%r14,%rbx,4)
	sarl	$24, %edx
	orl	$6, %eax
	jmp	LBB0_44
LBB0_20:
	movq	_OT_GPREG@GOTPCREL(%rip), %rdx
	movl	(%rdx), %edx
	testl	%edx, (%rcx)
	je	LBB0_28
## %bb.21:
	movl	40(%rcx), %esi
	movq	_OT_CONSTANT@GOTPCREL(%rip), %rdi
	testl	%esi, (%rdi)
	je	LBB0_29
## %bb.22:
	movl	60(%rcx), %edx
	cmpl	$-1, %edx
	je	LBB0_33
## %bb.23:
	imull	64(%rcx), %edx
	xorl	%edi, %edi
	cmpl	$128, %edx
	setl	%dil
	movl	%eax, %esi
	leal	105(%rdi,%rdi), %edi
	movl	%edi, (%r14,%rsi,4)
	movl	16(%rcx), %ecx
	leal	(,%rcx,8), %edi
	orl	%ecx, %edi
	orl	$192, %edi
	leal	2(%rax), %ebx
	leal	3(%rax), %ecx
	movl	%edi, 4(%r14,%rsi,4)
	movl	%edx, (%r14,%rbx,4)
	cmpl	$128, %edx
	jl	LBB0_25
## %bb.24:
	movl	%edx, %edi
	shrl	$8, %edi
	leal	4(%rax), %ebx
	movl	%ecx, %ecx
	movl	%edi, (%r14,%rcx,4)
	movl	%edx, %ecx
	shrl	$16, %ecx
	movl	%ecx, (%r14,%rbx,4)
	movl	%edx, %ecx
	shrl	$24, %ecx
	orl	$6, %eax
	movl	%ecx, 20(%r14,%rsi,4)
	movl	%eax, %ecx
LBB0_25:
	movq	_UT32_MAX@GOTPCREL(%rip), %rax
	leal	4(%rcx), %ebx
	cmpl	(%rax), %edx
	cmovlel	%ecx, %ebx
	cmpl	$64, (%r15)
	cmovnel	%ecx, %ebx
	jmp	LBB0_47
LBB0_26:
	movl	$232, %esi
	orl	16(%rcx), %esi
	addl	$2, %eax
	movl	%edx, %ecx
	movl	%esi, (%r14,%rcx,4)
	movl	%eax, %ebx
	jmp	LBB0_47
LBB0_29:
	movq	_OT_MEMORY@GOTPCREL(%rip), %rdi
	testl	%esi, (%rdi)
	je	LBB0_37
## %bb.30:
	movl	%eax, %r8d
	movabsq	$751619276815, %rdx             ## imm = 0xAF0000000F
	movq	%rdx, (%r14,%r8,4)
	leal	2(%rax), %r9d
	movq	48(%rcx), %rdi
	movl	(%rdi), %edx
	movq	_X86R_UNDEFINED@GOTPCREL(%rip), %rsi
	movl	(%rsi), %ebx
	cmpl	%ebx, %edx
	jne	LBB0_39
## %bb.31:
	movl	16(%rcx), %edx
	movl	64(%rcx), %esi
	imull	60(%rcx), %esi
	leal	5(,%rdx,8), %ecx
	movl	%r9d, %edx
	movl	%ecx, (%r14,%rdx,4)
	leal	4(%rax), %ecx
	movl	%esi, 12(%r14,%r8,4)
	movl	%esi, %edx
	sarl	$8, %edx
	movl	%edx, (%r14,%rcx,4)
	movl	%esi, %ecx
	sarl	$16, %ecx
	leal	6(%rax), %edx
	movl	%ecx, 20(%r14,%r8,4)
	sarl	$24, %esi
	addl	$7, %eax
	movl	%esi, (%r14,%rdx,4)
	jmp	LBB0_28
LBB0_33:
	leaq	L_.str(%rip), %rdi
	callq	_eprintf
	jmp	LBB0_47
LBB0_34:
	movl	16(%rcx), %edx
	shll	$3, %edx
	orl	56(%rcx), %edx
	orl	$192, %edx
	jmp	LBB0_43
LBB0_35:
	movl	16(%rcx), %edx
	leal	4(,%rdx,8), %edx
	movl	%esi, %esi
	leal	2(%rax), %ebx
	movl	%edx, (%r14,%rsi,4)
	movl	4(%rdi), %edx
	shll	$3, %edx
	orl	(%rdi), %edx
	addl	$3, %eax
	movl	%ebx, %esi
	jmp	LBB0_44
LBB0_37:
	testl	%edx, %esi
	je	LBB0_28
## %bb.38:
	movl	%eax, %edx
	movabsq	$751619276815, %rsi             ## imm = 0xAF0000000F
	movq	%rsi, (%r14,%rdx,4)
	movl	16(%rcx), %edx
	shll	$3, %edx
	orl	56(%rcx), %edx
	leal	2(%rax), %ecx
	orl	$192, %edx
	addl	$3, %eax
	movl	%edx, (%r14,%rcx,4)
	movl	%eax, %ebx
	jmp	LBB0_47
LBB0_28:
	movl	%eax, %ebx
LBB0_47:
	movl	%ebx, %eax
	addq	$8, %rsp
	popq	%rbx
	popq	%r14
	popq	%r15
	popq	%rbp
	retq
LBB0_39:
	movl	72(%rcx), %esi
	imull	68(%rcx), %esi
	testl	%esi, %esi
	je	LBB0_49
## %bb.40:
	leal	-128(%rsi), %r10d
	xorl	%ebx, %ebx
	cmpl	$-255, %r10d
	setb	%bl
	movl	%r9d, %edx
	shll	$6, %ebx
	addl	$64, %ebx
	movl	%ebx, (%r14,%rdx,4)
	movl	16(%rcx), %ecx
	shll	$3, %ecx
	orl	(%rdi), %ecx
	orl	%ebx, %ecx
	leal	4(%rax), %ebx
	movl	%ecx, (%r14,%rdx,4)
	movl	%esi, 12(%r14,%r8,4)
	cmpl	$-256, %r10d
	ja	LBB0_47
## %bb.41:
	movl	%esi, %ecx
	sarl	$8, %ecx
	movl	%ebx, %edx
	movl	%ecx, (%r14,%rdx,4)
	movl	%esi, %ecx
	sarl	$16, %ecx
	leal	6(%rax), %edx
	movl	%ecx, 20(%r14,%r8,4)
	sarl	$24, %esi
	addl	$7, %eax
	movl	%esi, (%r14,%rdx,4)
	movl	%eax, %ebx
	jmp	LBB0_47
LBB0_42:
	movl	16(%rcx), %edx
	shll	$3, %edx
	orl	(%rdi), %edx
LBB0_43:
	orl	$2, %eax
LBB0_44:
	movl	%eax, %edi
	movl	%esi, %eax
	movl	%edx, (%r14,%rax,4)
LBB0_45:
	movl	104(%rcx), %eax
	imull	100(%rcx), %eax
	leal	1(%rdi), %ebx
	movl	%edi, %ecx
	movl	%eax, (%r14,%rcx,4)
	leal	-128(%rax), %ecx
	cmpl	$-256, %ecx
	ja	LBB0_47
## %bb.46:
	movl	%eax, %ecx
	sarl	$8, %ecx
	leal	2(%rdi), %edx
	movl	%ebx, %esi
	movl	%ecx, (%r14,%rsi,4)
	movl	%eax, %ecx
	sarl	$16, %ecx
	leal	3(%rdi), %esi
	movl	%ecx, (%r14,%rdx,4)
	sarl	$24, %eax
	addl	$4, %edi
	movl	%eax, (%r14,%rsi,4)
	movl	%edi, %ebx
	jmp	LBB0_47
LBB0_49:
	movl	16(%rcx), %ecx
	shll	$3, %ecx
	cmpl	%ebx, 4(%rdi)
	jne	LBB0_51
## %bb.50:
	orl	%edx, %ecx
	addl	$3, %eax
	movl	%r9d, %edx
	jmp	LBB0_10
LBB0_51:
	orl	$4, %ecx
	movl	%r9d, %edx
	movl	%ecx, (%r14,%rdx,4)
	movl	4(%rdi), %ecx
	shll	$3, %ecx
	orl	(%rdi), %ecx
	orl	$4, %eax
	movl	%ecx, 12(%r14,%r8,4)
	movl	%eax, %ebx
	jmp	LBB0_47
	.cfi_endproc
                                        ## -- End function
	.comm	_OT_QWORD,4,2                   ## @OT_QWORD
	.comm	_OT_WORD,4,2                    ## @OT_WORD
	.comm	_OT_BYTE,4,2                    ## @OT_BYTE
	.comm	_OT_MEMORY,4,2                  ## @OT_MEMORY
	.comm	_OT_GPREG,4,2                   ## @OT_GPREG
	.comm	_OT_CONSTANT,4,2                ## @OT_CONSTANT
	.section	__TEXT,__cstring,cstring_literals
L_.str:                                 ## @.str
	.asciz	"Error: Immediate exceeds max\n"

	.comm	_UT32_MAX,4,2                   ## @UT32_MAX
	.comm	_X86R_UNDEFINED,4,2             ## @X86R_UNDEFINED
	.no_dead_strip	_opimul
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.section	__TEXT,__literal8,8byte_literals
	.p2align	3                               ; -- Begin function opimul
lCPI0_0:
	.long	4294967288                      ; 0xfffffff8
	.long	4294967280                      ; 0xfffffff0
lCPI0_1:
	.long	15                              ; 0xf
	.long	175                             ; 0xaf
	.section	__TEXT,__text,regular,pure_instructions
	.p2align	2
_opimul:                                ; @opimul
	.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
	mov	x21, x2
	mov	x19, x1
	mov	x20, x0
	mov	x0, x2
	bl	_is_valid_registers
	ldr	x8, [x21, #8]
	ldr	w9, [x8]
Lloh0:
	adrp	x10, _OT_QWORD@GOTPAGE
Lloh1:
	ldr	x10, [x10, _OT_QWORD@GOTPAGEOFF]
Lloh2:
	ldr	w10, [x10]
	tst	w10, w9
	b.eq	LBB0_2
; %bb.1:
	mov	w9, #72
	str	w9, [x19]
	mov	w0, #1
	b	LBB0_3
LBB0_2:
	mov	w0, #0
LBB0_3:
	ldr	w9, [x21]
	cmp	w9, #3
	b.eq	LBB0_10
; %bb.4:
	cmp	w9, #2
	b.eq	LBB0_19
; %bb.5:
	cmp	w9, #1
	b.ne	LBB0_25
; %bb.6:
	ldr	w9, [x8]
Lloh3:
	adrp	x10, _OT_WORD@GOTPAGE
Lloh4:
	ldr	x10, [x10, _OT_WORD@GOTPAGEOFF]
Lloh5:
	ldr	w10, [x10]
	tst	w10, w9
	b.eq	LBB0_8
; %bb.7:
	mov	w9, #102
	str	w9, [x19, w0, uxtw #2]
	add	w10, w0, #1
	ldr	w9, [x8]
	mov	x0, x10
LBB0_8:
Lloh6:
	adrp	x10, _OT_BYTE@GOTPAGE
Lloh7:
	ldr	x10, [x10, _OT_BYTE@GOTPAGEOFF]
Lloh8:
	ldr	w10, [x10]
	tst	w10, w9
	mov	w9, #246
	cinc	w9, w9, eq
	str	w9, [x19, w0, uxtw #2]
	add	w9, w0, #1
	ldr	w10, [x8]
Lloh9:
	adrp	x11, _OT_MEMORY@GOTPAGE
Lloh10:
	ldr	x11, [x11, _OT_MEMORY@GOTPAGEOFF]
Lloh11:
	ldr	w11, [x11]
	tst	w11, w10
	b.eq	LBB0_26
; %bb.9:
	ldr	x8, [x8, #8]
	ldr	w8, [x8]
	mov	w10, #40
	b	LBB0_27
LBB0_10:
	ldr	w9, [x8]
Lloh12:
	adrp	x10, _OT_GPREG@GOTPAGE
Lloh13:
	ldr	x10, [x10, _OT_GPREG@GOTPAGEOFF]
Lloh14:
	ldr	w10, [x10]
	tst	w10, w9
	b.eq	LBB0_45
; %bb.11:
	ldr	w9, [x8, #40]
	tst	w9, w10
	b.ne	LBB0_13
; %bb.12:
Lloh15:
	adrp	x10, _OT_MEMORY@GOTPAGE
Lloh16:
	ldr	x10, [x10, _OT_MEMORY@GOTPAGEOFF]
Lloh17:
	ldr	w10, [x10]
	tst	w10, w9
	b.eq	LBB0_45
LBB0_13:
	ldr	w9, [x8, #80]
Lloh18:
	adrp	x10, _OT_CONSTANT@GOTPAGE
Lloh19:
	ldr	x10, [x10, _OT_CONSTANT@GOTPAGEOFF]
Lloh20:
	ldr	w10, [x10]
	tst	w10, w9
	b.eq	LBB0_45
; %bb.14:
	mov	w9, #107
	str	w9, [x19, w0, uxtw #2]
	add	w9, w0, #1
	ldr	w10, [x8, #40]
Lloh21:
	adrp	x11, _OT_MEMORY@GOTPAGE
Lloh22:
	ldr	x11, [x11, _OT_MEMORY@GOTPAGEOFF]
Lloh23:
	ldr	w11, [x11]
	tst	w11, w10
	b.eq	LBB0_32
; %bb.15:
	ldr	x10, [x8, #48]
	ldr	w11, [x10, #4]
Lloh24:
	adrp	x12, _X86R_UNDEFINED@GOTPAGE
Lloh25:
	ldr	x12, [x12, _X86R_UNDEFINED@GOTPAGEOFF]
Lloh26:
	ldr	w12, [x12]
	cmp	w11, w12
	b.ne	LBB0_33
; %bb.16:
	ldp	w11, w12, [x8, #68]
	mul	w11, w12, w11
	cbz	w11, LBB0_39
; %bb.17:
	sub	w12, w11, #128
	lsl	x9, x9, #2
	cmn	w12, #255
	mov	w10, #64
	mov	w13, #128
	csel	w10, w13, w10, lo
	str	w10, [x19, x9]
	ldr	w13, [x8, #16]
	orr	w14, w0, #0x2
	orr	w10, w10, w13, lsl #3
	str	w10, [x19, x9]
	add	w10, w0, #3
	str	w11, [x19, w14, uxtw #2]
	cmn	w12, #256
	b.hi	LBB0_42
; %bb.18:
	asr	w9, w11, #8
	orr	w12, w0, #0x4
	str	w9, [x19, w10, uxtw #2]
	asr	w10, w11, #16
	add	w9, w0, #5
	str	w10, [x19, w12, uxtw #2]
	orr	w10, w0, #0x6
	asr	w11, w11, #24
	b	LBB0_41
LBB0_19:
	ldr	w10, [x8]
Lloh27:
	adrp	x9, _OT_GPREG@GOTPAGE
Lloh28:
	ldr	x9, [x9, _OT_GPREG@GOTPAGEOFF]
Lloh29:
	ldr	w9, [x9]
	tst	w9, w10
	b.eq	LBB0_45
; %bb.20:
	ldr	w10, [x8, #40]
Lloh30:
	adrp	x11, _OT_CONSTANT@GOTPAGE
Lloh31:
	ldr	x11, [x11, _OT_CONSTANT@GOTPAGEOFF]
Lloh32:
	ldr	w11, [x11]
	tst	w11, w10
	b.eq	LBB0_28
; %bb.21:
	ldr	w9, [x8, #60]
	cmn	w9, #1
	b.eq	LBB0_31
; %bb.22:
	ldr	w10, [x8, #64]
	mul	w9, w10, w9
	mov	w10, #107
	mov	w11, #105
	cmp	w9, #127
	csel	w10, w11, w10, gt
	str	w10, [x19, w0, uxtw #2]
	add	w10, w0, #1
	ldr	w8, [x8, #16]
	orr	w8, w8, w8, lsl #3
	orr	w8, w8, #0xc0
	orr	w11, w0, #0x2
	str	w8, [x19, w10, uxtw #2]
	add	w8, w0, #3
	str	w9, [x19, w11, uxtw #2]
	cmp	w9, #128
	b.lt	LBB0_24
; %bb.23:
	lsr	w10, w9, #8
	orr	w11, w0, #0x4
	str	w10, [x19, w8, uxtw #2]
	lsr	w8, w9, #16
	add	w10, w0, #5
	str	w8, [x19, w11, uxtw #2]
	lsr	w11, w9, #24
	orr	w8, w0, #0x6
	str	w11, [x19, w10, uxtw #2]
LBB0_24:
	ldr	w10, [x20]
Lloh33:
	adrp	x11, _UT32_MAX@GOTPAGE
Lloh34:
	ldr	x11, [x11, _UT32_MAX@GOTPAGEOFF]
Lloh35:
	ldr	w11, [x11]
	cmp	w9, w11
	mov	w9, #64
	ccmp	w10, w9, #0, gt
	add	w9, w8, #4
	csel	w0, w9, w8, eq
	b	LBB0_45
LBB0_25:
	mov	w0, #-1
	b	LBB0_45
LBB0_26:
	ldr	w8, [x8, #16]
	mov	w10, #232
LBB0_27:
	orr	w8, w8, w10
	add	w0, w0, #2
	str	w8, [x19, w9, uxtw #2]
	b	LBB0_45
LBB0_28:
Lloh36:
	adrp	x11, _OT_MEMORY@GOTPAGE
Lloh37:
	ldr	x11, [x11, _OT_MEMORY@GOTPAGEOFF]
Lloh38:
	ldr	w11, [x11]
	tst	w11, w10
	b.eq	LBB0_34
; %bb.29:
	mov	w9, w0
	lsl	x10, x9, #2
	orr	w9, w0, #0x2
Lloh39:
	adrp	x11, lCPI0_1@PAGE
Lloh40:
	ldr	d0, [x11, lCPI0_1@PAGEOFF]
	str	d0, [x19, x10]
	ldr	x10, [x8, #48]
	ldr	w12, [x10]
Lloh41:
	adrp	x11, _X86R_UNDEFINED@GOTPAGE
Lloh42:
	ldr	x11, [x11, _X86R_UNDEFINED@GOTPAGEOFF]
Lloh43:
	ldr	w13, [x11]
	cmp	w12, w13
	b.ne	LBB0_36
; %bb.30:
	ldr	w10, [x8, #16]
	mov	w11, #5
	bfi	w11, w10, #3, #29
	ldp	w10, w8, [x8, #60]
	str	w11, [x19, w9, uxtw #2]
	mul	w8, w8, w10
	add	w9, w0, #3
	str	w8, [x19, w9, uxtw #2]
	asr	w9, w8, #8
	orr	w10, w0, #0x4
	str	w9, [x19, w10, uxtw #2]
	add	w9, w0, #5
	asr	w10, w8, #16
	orr	w11, w0, #0x6
	str	w10, [x19, w9, uxtw #2]
	asr	w8, w8, #24
	add	w0, w0, #7
	b	LBB0_44
LBB0_31:
Lloh44:
	adrp	x0, l_.str@PAGE
Lloh45:
	add	x0, x0, l_.str@PAGEOFF
	bl	_eprintf
	mov	w0, #-1
	b	LBB0_45
LBB0_32:
	ldr	w10, [x8, #16]
	ldr	w11, [x8, #56]
	orr	w10, w11, w10, lsl #3
	orr	w11, w10, #0xc0
	b	LBB0_40
LBB0_33:
	ldr	w11, [x8, #16]
	mov	w12, #4
	bfi	w12, w11, #3, #29
	str	w12, [x19, w9, uxtw #2]
	orr	w9, w0, #0x2
	ldp	w11, w10, [x10]
	orr	w11, w11, w10, lsl #3
	add	w10, w0, #3
                                        ; kill: def $w9 killed $w9 def $x9
	b	LBB0_41
LBB0_34:
	tst	w10, w9
	b.eq	LBB0_45
; %bb.35:
	mov	w9, w0
	lsl	x9, x9, #2
	orr	w10, w0, #0x2
Lloh46:
	adrp	x11, lCPI0_1@PAGE
Lloh47:
	ldr	d0, [x11, lCPI0_1@PAGEOFF]
	str	d0, [x19, x9]
	ldr	w9, [x8, #16]
	ldr	w8, [x8, #56]
	orr	w8, w8, w9, lsl #3
	orr	w8, w8, #0xc0
	add	w0, w0, #3
	str	w8, [x19, w10, uxtw #2]
	b	LBB0_45
LBB0_36:
	ldp	w11, w14, [x8, #68]
	mul	w11, w14, w11
	cbz	w11, LBB0_46
; %bb.37:
	sub	w12, w11, #128
	lsl	x9, x9, #2
	cmn	w12, #255
	mov	w13, #64
	mov	w14, #128
	csel	w13, w14, w13, lo
	str	w13, [x19, x9]
	ldr	w8, [x8, #16]
	ldr	w10, [x10]
	orr	w8, w10, w8, lsl #3
	add	w10, w0, #3
	orr	w8, w8, w13
	str	w8, [x19, x9]
	orr	w8, w0, #0x4
	str	w11, [x19, w10, uxtw #2]
	cmn	w12, #256
	b.hi	LBB0_48
; %bb.38:
	asr	w9, w11, #8
	add	w10, w0, #5
	str	w9, [x19, w8, uxtw #2]
	asr	w8, w11, #16
	orr	w9, w0, #0x6
	str	w8, [x19, w10, uxtw #2]
	asr	w8, w11, #24
	add	w0, w0, #7
	str	w8, [x19, w9, uxtw #2]
	b	LBB0_45
LBB0_39:
	ldr	w11, [x8, #16]
	ldr	w10, [x10]
	orr	w11, w10, w11, lsl #3
LBB0_40:
	orr	w10, w0, #0x2
LBB0_41:
	str	w11, [x19, w9, uxtw #2]
LBB0_42:
	ldp	w9, w8, [x8, #100]
	mul	w8, w8, w9
	add	w0, w10, #1
	str	w8, [x19, w10, uxtw #2]
	sub	w9, w8, #128
	cmn	w9, #256
	b.hi	LBB0_45
; %bb.43:
	dup.2s	v0, w8
Lloh48:
	adrp	x9, lCPI0_0@PAGE
Lloh49:
	ldr	d1, [x9, lCPI0_0@PAGEOFF]
	sshl.2s	v0, v0, v1
	lsl	x9, x0, #2
	add	w11, w10, #3
	str	d0, [x19, x9]
	asr	w8, w8, #24
	add	w0, w10, #4
LBB0_44:
	str	w8, [x19, w11, uxtw #2]
LBB0_45:
                                        ; kill: def $w0 killed $w0 killed $x0
	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
LBB0_46:
	ldr	w11, [x10, #4]
	ldr	w8, [x8, #16]
	lsl	w8, w8, #3
	cmp	w11, w13
	b.ne	LBB0_49
; %bb.47:
	orr	w8, w8, w12
	add	w0, w0, #3
	str	w8, [x19, w9, uxtw #2]
	b	LBB0_45
LBB0_48:
	mov	x0, x8
	b	LBB0_45
LBB0_49:
	orr	w8, w8, #0x4
	add	w11, w0, #3
	str	w8, [x19, w9, uxtw #2]
	ldp	w9, w8, [x10]
	orr	w8, w9, w8, lsl #3
	orr	w0, w0, #0x4
	b	LBB0_44
	.loh AdrpLdrGotLdr	Lloh0, Lloh1, Lloh2
	.loh AdrpLdrGotLdr	Lloh3, Lloh4, Lloh5
	.loh AdrpLdrGotLdr	Lloh9, Lloh10, Lloh11
	.loh AdrpLdrGotLdr	Lloh6, Lloh7, Lloh8
	.loh AdrpLdrGotLdr	Lloh12, Lloh13, Lloh14
	.loh AdrpLdrGotLdr	Lloh15, Lloh16, Lloh17
	.loh AdrpLdrGotLdr	Lloh18, Lloh19, Lloh20
	.loh AdrpLdrGotLdr	Lloh21, Lloh22, Lloh23
	.loh AdrpLdrGotLdr	Lloh24, Lloh25, Lloh26
	.loh AdrpLdrGotLdr	Lloh27, Lloh28, Lloh29
	.loh AdrpLdrGotLdr	Lloh30, Lloh31, Lloh32
	.loh AdrpLdrGotLdr	Lloh33, Lloh34, Lloh35
	.loh AdrpLdrGotLdr	Lloh36, Lloh37, Lloh38
	.loh AdrpLdrGotLdr	Lloh41, Lloh42, Lloh43
	.loh AdrpAdrp	Lloh39, Lloh41
	.loh AdrpLdr	Lloh39, Lloh40
	.loh AdrpAdd	Lloh44, Lloh45
	.loh AdrpLdr	Lloh46, Lloh47
	.loh AdrpLdr	Lloh48, Lloh49
	.cfi_endproc
                                        ; -- End function
	.comm	_OT_QWORD,4,2                   ; @OT_QWORD
	.comm	_OT_WORD,4,2                    ; @OT_WORD
	.comm	_OT_BYTE,4,2                    ; @OT_BYTE
	.comm	_OT_MEMORY,4,2                  ; @OT_MEMORY
	.comm	_OT_GPREG,4,2                   ; @OT_GPREG
	.comm	_OT_CONSTANT,4,2                ; @OT_CONSTANT
	.section	__TEXT,__cstring,cstring_literals
l_.str:                                 ; @.str
	.asciz	"Error: Immediate exceeds max\n"

	.comm	_UT32_MAX,4,2                   ; @UT32_MAX
	.comm	_X86R_UNDEFINED,4,2             ; @X86R_UNDEFINED
	.no_dead_strip	_opimul
.subsections_via_symbols
