	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.section	__TEXT,__literal4,4byte_literals
	.p2align	2                               ## -- Begin function menu_animation_update_time
LCPI0_0:
	.long	0x38d1b717                      ## float 9.99999974E-5
LCPI0_1:
	.long	0x3f800000                      ## float 1
LCPI0_3:
	.long	0x447a0000                      ## float 1000
LCPI0_4:
	.long	0x3e800000                      ## float 0.25
LCPI0_5:
	.long	0x3f000000                      ## float 0.5
LCPI0_6:
	.long	0x3f4ccccd                      ## float 0.800000011
LCPI0_7:
	.long	0x44f00000                      ## float 1920
	.section	__TEXT,__literal8,8byte_literals
	.p2align	3
LCPI0_2:
	.quad	0x3fe0000000000000              ## double 0.5
	.section	__TEXT,__text,regular,pure_instructions
	.p2align	4, 0x90
_menu_animation_update_time:            ## @menu_animation_update_time
	.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	%r12
	pushq	%rbx
	subq	$48, %rsp
	.cfi_offset %rbx, -48
	.cfi_offset %r12, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
	movl	%edx, %r14d
	movl	%esi, %r15d
	movl	%edi, %ebx
	xorl	%eax, %eax
	callq	_config_get_ptr
	movq	%rax, %r12
	movss	4(%rax), %xmm0                  ## xmm0 = mem[0],zero,zero,zero
	movaps	%xmm0, -80(%rbp)                ## 16-byte Spill
	movq	_TICKER_SPEED@GOTPCREL(%rip), %rax
	xorps	%xmm0, %xmm0
	cvtsi2ssq	(%rax), %xmm0
	movss	%xmm0, -48(%rbp)                ## 4-byte Spill
	movq	_TICKER_SLOW_SPEED@GOTPCREL(%rip), %rax
	xorps	%xmm0, %xmm0
	cvtsi2ssq	(%rax), %xmm0
	movss	%xmm0, -52(%rbp)                ## 4-byte Spill
	xorl	%eax, %eax
	callq	_cpu_features_get_time_usec
	movq	_cur_time@GOTPCREL(%rip), %rcx
	movq	%rax, (%rcx)
	movq	_old_time@GOTPCREL(%rip), %rcx
	movq	(%rcx), %rdx
	testq	%rdx, %rdx
	je	LBB0_1
## %bb.2:
	movq	%rax, %rsi
	subq	%rdx, %rsi
	xorps	%xmm0, %xmm0
	cvtsi2ss	%rsi, %xmm0
	divss	LCPI0_3(%rip), %xmm0
	jmp	LBB0_3
LBB0_1:
	xorps	%xmm0, %xmm0
LBB0_3:
	movq	_delta_time@GOTPCREL(%rip), %rdx
	movss	%xmm0, (%rdx)
	movq	%rax, (%rcx)
	testl	%ebx, %ebx
	je	LBB0_6
## %bb.4:
	movq	%rax, %rcx
	subq	_menu_animation_update_time.last_clock_update(%rip), %rcx
	cmpq	$1000001, %rcx                  ## imm = 0xF4241
	jl	LBB0_6
## %bb.5:
	movq	_animation_is_active@GOTPCREL(%rip), %rcx
	movl	$1, (%rcx)
	movq	%rax, _menu_animation_update_time.last_clock_update(%rip)
LBB0_6:
	movq	_ticker_is_active@GOTPCREL(%rip), %rcx
	cmpq	$0, (%rcx)
	je	LBB0_23
## %bb.7:
	movss	LCPI0_0(%rip), %xmm4            ## xmm4 = mem[0],zero,zero,zero
	movaps	-80(%rbp), %xmm2                ## 16-byte Reload
	cmpltss	%xmm2, %xmm4
	movss	LCPI0_1(%rip), %xmm1            ## xmm1 = mem[0],zero,zero,zero
	andps	%xmm4, %xmm2
	andnps	%xmm1, %xmm4
	orps	%xmm2, %xmm4
	movss	-48(%rbp), %xmm1                ## 4-byte Reload
                                        ## xmm1 = mem[0],zero,zero,zero
	divss	%xmm4, %xmm1
	movss	-52(%rbp), %xmm3                ## 4-byte Reload
                                        ## xmm3 = mem[0],zero,zero,zero
	divss	%xmm4, %xmm3
	cvtss2sd	%xmm1, %xmm1
	movsd	LCPI0_2(%rip), %xmm2            ## xmm2 = mem[0],zero
	cvtss2sd	%xmm3, %xmm3
	addsd	%xmm2, %xmm1
	addsd	%xmm2, %xmm3
	cvttsd2si	%xmm1, %rdx
	cvttsd2si	%xmm3, %rcx
	movq	%rax, %rsi
	subq	_menu_animation_update_time.last_ticker_update(%rip), %rsi
	movl	%edx, %edx
	cmpq	%rdx, %rsi
	jl	LBB0_9
## %bb.8:
	movq	_ticker_idx@GOTPCREL(%rip), %rdx
	incl	(%rdx)
	movq	%rax, _menu_animation_update_time.last_ticker_update(%rip)
LBB0_9:
	movq	%rax, %rdx
	subq	_menu_animation_update_time.last_ticker_slow_update(%rip), %rdx
	movl	%ecx, %ecx
	cmpq	%rcx, %rdx
	jl	LBB0_11
## %bb.10:
	movq	_ticker_slow_idx@GOTPCREL(%rip), %rcx
	incl	(%rcx)
	movq	%rax, _menu_animation_update_time.last_ticker_slow_update(%rip)
LBB0_11:
	movq	_ticker_pixel_period@GOTPCREL(%rip), %rax
	divss	(%rax), %xmm0
	mulss	%xmm0, %xmm4
	movaps	%xmm4, -48(%rbp)                ## 16-byte Spill
	movl	(%r12), %edi
	leaq	L_.str(%rip), %rsi
	callq	_string_is_equal
	testq	%rax, %rax
	je	LBB0_13
## %bb.12:
	movaps	-48(%rbp), %xmm1                ## 16-byte Reload
	mulss	LCPI0_4(%rip), %xmm1
	jmp	LBB0_21
LBB0_13:
	movl	(%r12), %edi
	leaq	L_.str.1(%rip), %rsi
	callq	_string_is_equal
	testq	%rax, %rax
	je	LBB0_15
## %bb.14:
	movaps	-48(%rbp), %xmm1                ## 16-byte Reload
	mulss	LCPI0_5(%rip), %xmm1
	jmp	LBB0_21
LBB0_15:
	movl	(%r12), %edi
	leaq	L_.str.2(%rip), %rsi
	callq	_string_is_equal
	testq	%rax, %rax
	je	LBB0_17
## %bb.16:
	movl	%r15d, %edi
	movl	%r14d, %esi
	callq	_menu_display_get_dpi_scale
	mulss	LCPI0_6(%rip), %xmm0
	jmp	LBB0_20
LBB0_17:
	testl	%r15d, %r15d
	je	LBB0_18
## %bb.19:
	movl	%r15d, %eax
	xorps	%xmm0, %xmm0
	cvtsi2ss	%rax, %xmm0
	divss	LCPI0_7(%rip), %xmm0
LBB0_20:
	movaps	-48(%rbp), %xmm1                ## 16-byte Reload
	mulss	%xmm0, %xmm1
LBB0_21:
	addss	_menu_animation_update_time.ticker_pixel_accumulator(%rip), %xmm1
	movss	%xmm1, _menu_animation_update_time.ticker_pixel_accumulator(%rip)
	cvttss2si	%xmm1, %rax
	testl	%eax, %eax
	je	LBB0_23
## %bb.22:
	movq	_ticker_pixel_idx@GOTPCREL(%rip), %rcx
	addl	%eax, (%rcx)
	movl	%eax, %eax
	xorps	%xmm0, %xmm0
	cvtsi2ss	%rax, %xmm0
	subss	%xmm0, %xmm1
	movss	%xmm1, _menu_animation_update_time.ticker_pixel_accumulator(%rip)
LBB0_23:
	addq	$48, %rsp
	popq	%rbx
	popq	%r12
	popq	%r14
	popq	%r15
	popq	%rbp
	retq
LBB0_18:
	movaps	-48(%rbp), %xmm1                ## 16-byte Reload
	jmp	LBB0_21
	.cfi_endproc
                                        ## -- End function
.zerofill __DATA,__bss,_menu_animation_update_time.last_clock_update,8,3 ## @menu_animation_update_time.last_clock_update
.zerofill __DATA,__bss,_menu_animation_update_time.last_ticker_update,8,3 ## @menu_animation_update_time.last_ticker_update
.zerofill __DATA,__bss,_menu_animation_update_time.last_ticker_slow_update,8,3 ## @menu_animation_update_time.last_ticker_slow_update
.zerofill __DATA,__bss,_menu_animation_update_time.ticker_pixel_accumulator,4,2 ## @menu_animation_update_time.ticker_pixel_accumulator
	.comm	_TICKER_SPEED,8,3               ## @TICKER_SPEED
	.comm	_TICKER_SLOW_SPEED,8,3          ## @TICKER_SLOW_SPEED
	.comm	_cur_time,8,3                   ## @cur_time
	.comm	_old_time,8,3                   ## @old_time
	.comm	_delta_time,4,2                 ## @delta_time
	.comm	_animation_is_active,4,2        ## @animation_is_active
	.comm	_ticker_is_active,8,3           ## @ticker_is_active
	.comm	_ticker_idx,4,2                 ## @ticker_idx
	.comm	_ticker_slow_idx,4,2            ## @ticker_slow_idx
	.comm	_ticker_pixel_period,4,2        ## @ticker_pixel_period
	.section	__TEXT,__cstring,cstring_literals
L_.str:                                 ## @.str
	.asciz	"rgui"

L_.str.1:                               ## @.str.1
	.asciz	"ozone"

L_.str.2:                               ## @.str.2
	.asciz	"glui"

	.comm	_ticker_pixel_idx,4,2           ## @ticker_pixel_idx
	.no_dead_strip	_menu_animation_update_time
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	2                               ; -- Begin function menu_animation_update_time
_menu_animation_update_time:            ; @menu_animation_update_time
	.cfi_startproc
; %bb.0:
	stp	d9, d8, [sp, #-80]!             ; 16-byte Folded Spill
	.cfi_def_cfa_offset 80
	stp	x24, x23, [sp, #16]             ; 16-byte Folded Spill
	stp	x22, x21, [sp, #32]             ; 16-byte Folded Spill
	stp	x20, x19, [sp, #48]             ; 16-byte Folded Spill
	stp	x29, x30, [sp, #64]             ; 16-byte Folded Spill
	add	x29, sp, #64
	.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 b8, -72
	.cfi_offset b9, -80
	mov	x20, x2
	mov	x19, x1
	mov	x22, x0
	bl	_config_get_ptr
	mov	x21, x0
	ldr	s0, [x0, #4]
	mov	w8, #46871
	movk	w8, #14545, lsl #16
	fmov	s1, w8
	fcmp	s0, s1
	fmov	s1, #1.00000000
	fcsel	s8, s0, s1, gt
Lloh0:
	adrp	x8, _TICKER_SPEED@GOTPAGE
Lloh1:
	ldr	x8, [x8, _TICKER_SPEED@GOTPAGEOFF]
Lloh2:
	ldr	x23, [x8]
Lloh3:
	adrp	x8, _TICKER_SLOW_SPEED@GOTPAGE
Lloh4:
	ldr	x8, [x8, _TICKER_SLOW_SPEED@GOTPAGEOFF]
Lloh5:
	ldr	x24, [x8]
	bl	_cpu_features_get_time_usec
Lloh6:
	adrp	x8, _cur_time@GOTPAGE
Lloh7:
	ldr	x8, [x8, _cur_time@GOTPAGEOFF]
Lloh8:
	str	x0, [x8]
Lloh9:
	adrp	x8, _old_time@GOTPAGE
Lloh10:
	ldr	x8, [x8, _old_time@GOTPAGEOFF]
	ldr	x9, [x8]
	cbz	x9, LBB0_2
; %bb.1:
	sub	x9, x0, x9
	scvtf	s0, x9
	mov	w9, #1148846080
	fmov	s1, w9
	fdiv	s0, s0, s1
	b	LBB0_3
LBB0_2:
	movi	d0, #0000000000000000
LBB0_3:
Lloh11:
	adrp	x9, _delta_time@GOTPAGE
Lloh12:
	ldr	x9, [x9, _delta_time@GOTPAGEOFF]
Lloh13:
	str	s0, [x9]
	str	x0, [x8]
	cbz	w22, LBB0_6
; %bb.4:
	adrp	x8, _menu_animation_update_time.last_clock_update@PAGE
	ldr	x9, [x8, _menu_animation_update_time.last_clock_update@PAGEOFF]
	mov	w10, #16961
	movk	w10, #15, lsl #16
	sub	x9, x0, x9
	cmp	x9, x10
	b.lt	LBB0_6
; %bb.5:
Lloh14:
	adrp	x9, _animation_is_active@GOTPAGE
Lloh15:
	ldr	x9, [x9, _animation_is_active@GOTPAGEOFF]
	mov	w10, #1
Lloh16:
	str	w10, [x9]
	str	x0, [x8, _menu_animation_update_time.last_clock_update@PAGEOFF]
LBB0_6:
Lloh17:
	adrp	x8, _ticker_is_active@GOTPAGE
Lloh18:
	ldr	x8, [x8, _ticker_is_active@GOTPAGEOFF]
Lloh19:
	ldr	x8, [x8]
	cbz	x8, LBB0_20
; %bb.7:
	scvtf	s1, x23
	scvtf	s2, x24
	fdiv	s1, s1, s8
	fdiv	s2, s2, s8
	fcvt	d1, s1
	fmov	d3, #0.50000000
	fcvt	d2, s2
	fadd	d1, d1, d3
	fadd	d2, d2, d3
	fcvtzu	w10, d1
	fcvtzu	w8, d2
	adrp	x9, _menu_animation_update_time.last_ticker_update@PAGE
	ldr	x11, [x9, _menu_animation_update_time.last_ticker_update@PAGEOFF]
	sub	x11, x0, x11
	cmp	x11, w10, uxtw
	b.lt	LBB0_9
; %bb.8:
Lloh20:
	adrp	x10, _ticker_idx@GOTPAGE
Lloh21:
	ldr	x10, [x10, _ticker_idx@GOTPAGEOFF]
	ldr	w11, [x10]
	add	w11, w11, #1
	str	w11, [x10]
	str	x0, [x9, _menu_animation_update_time.last_ticker_update@PAGEOFF]
LBB0_9:
	adrp	x9, _menu_animation_update_time.last_ticker_slow_update@PAGE
	ldr	x10, [x9, _menu_animation_update_time.last_ticker_slow_update@PAGEOFF]
	sub	x10, x0, x10
	cmp	x10, w8, uxtw
	b.lt	LBB0_11
; %bb.10:
Lloh22:
	adrp	x8, _ticker_slow_idx@GOTPAGE
Lloh23:
	ldr	x8, [x8, _ticker_slow_idx@GOTPAGEOFF]
	ldr	w10, [x8]
	add	w10, w10, #1
	str	w10, [x8]
	str	x0, [x9, _menu_animation_update_time.last_ticker_slow_update@PAGEOFF]
LBB0_11:
Lloh24:
	adrp	x8, _ticker_pixel_period@GOTPAGE
Lloh25:
	ldr	x8, [x8, _ticker_pixel_period@GOTPAGEOFF]
Lloh26:
	ldr	s1, [x8]
	fdiv	s0, s0, s1
	fmul	s8, s8, s0
	ldr	w0, [x21]
Lloh27:
	adrp	x1, l_.str@PAGE
Lloh28:
	add	x1, x1, l_.str@PAGEOFF
	bl	_string_is_equal
	cbz	x0, LBB0_13
; %bb.12:
	fmov	s0, #0.25000000
	fmul	s0, s8, s0
	b	LBB0_18
LBB0_13:
	ldr	w0, [x21]
Lloh29:
	adrp	x1, l_.str.1@PAGE
Lloh30:
	add	x1, x1, l_.str.1@PAGEOFF
	bl	_string_is_equal
	cbz	x0, LBB0_15
; %bb.14:
	fmov	s0, #0.50000000
	fmul	s0, s8, s0
	b	LBB0_18
LBB0_15:
	ldr	w0, [x21]
Lloh31:
	adrp	x1, l_.str.2@PAGE
Lloh32:
	add	x1, x1, l_.str.2@PAGEOFF
	bl	_string_is_equal
	cbz	x0, LBB0_17
; %bb.16:
	mov	x0, x19
	mov	x1, x20
	bl	_menu_display_get_dpi_scale
	mov	w8, #52429
	movk	w8, #16204, lsl #16
	fmov	s1, w8
	fmul	s0, s0, s1
	fmul	s0, s8, s0
	b	LBB0_18
LBB0_17:
	ucvtf	s0, w19
	mov	w8, #1156579328
	fmov	s1, w8
	fdiv	s0, s0, s1
	fmul	s0, s0, s8
	cmp	w19, #0
	fcsel	s0, s8, s0, eq
LBB0_18:
	adrp	x8, _menu_animation_update_time.ticker_pixel_accumulator@PAGE
	ldr	s1, [x8, _menu_animation_update_time.ticker_pixel_accumulator@PAGEOFF]
	fadd	s0, s0, s1
	str	s0, [x8, _menu_animation_update_time.ticker_pixel_accumulator@PAGEOFF]
	fcvtzu	w9, s0
	cbz	w9, LBB0_20
; %bb.19:
Lloh33:
	adrp	x10, _ticker_pixel_idx@GOTPAGE
Lloh34:
	ldr	x10, [x10, _ticker_pixel_idx@GOTPAGEOFF]
	ldr	w11, [x10]
	add	w11, w11, w9
	str	w11, [x10]
	ucvtf	s1, w9
	fsub	s0, s0, s1
	str	s0, [x8, _menu_animation_update_time.ticker_pixel_accumulator@PAGEOFF]
LBB0_20:
	ldp	x29, x30, [sp, #64]             ; 16-byte Folded Reload
	ldp	x20, x19, [sp, #48]             ; 16-byte Folded Reload
	ldp	x22, x21, [sp, #32]             ; 16-byte Folded Reload
	ldp	x24, x23, [sp, #16]             ; 16-byte Folded Reload
	ldp	d9, d8, [sp], #80               ; 16-byte Folded Reload
	ret
	.loh AdrpLdrGot	Lloh9, Lloh10
	.loh AdrpLdrGotStr	Lloh6, Lloh7, Lloh8
	.loh AdrpLdrGotLdr	Lloh3, Lloh4, Lloh5
	.loh AdrpLdrGotLdr	Lloh0, Lloh1, Lloh2
	.loh AdrpLdrGotStr	Lloh11, Lloh12, Lloh13
	.loh AdrpLdrGotStr	Lloh14, Lloh15, Lloh16
	.loh AdrpLdrGotLdr	Lloh17, Lloh18, Lloh19
	.loh AdrpLdrGot	Lloh20, Lloh21
	.loh AdrpLdrGot	Lloh22, Lloh23
	.loh AdrpAdd	Lloh27, Lloh28
	.loh AdrpLdrGotLdr	Lloh24, Lloh25, Lloh26
	.loh AdrpAdd	Lloh29, Lloh30
	.loh AdrpAdd	Lloh31, Lloh32
	.loh AdrpLdrGot	Lloh33, Lloh34
	.cfi_endproc
                                        ; -- End function
.zerofill __DATA,__bss,_menu_animation_update_time.last_clock_update,8,3 ; @menu_animation_update_time.last_clock_update
.zerofill __DATA,__bss,_menu_animation_update_time.last_ticker_update,8,3 ; @menu_animation_update_time.last_ticker_update
.zerofill __DATA,__bss,_menu_animation_update_time.last_ticker_slow_update,8,3 ; @menu_animation_update_time.last_ticker_slow_update
.zerofill __DATA,__bss,_menu_animation_update_time.ticker_pixel_accumulator,4,2 ; @menu_animation_update_time.ticker_pixel_accumulator
	.comm	_TICKER_SPEED,8,3               ; @TICKER_SPEED
	.comm	_TICKER_SLOW_SPEED,8,3          ; @TICKER_SLOW_SPEED
	.comm	_cur_time,8,3                   ; @cur_time
	.comm	_old_time,8,3                   ; @old_time
	.comm	_delta_time,4,2                 ; @delta_time
	.comm	_animation_is_active,4,2        ; @animation_is_active
	.comm	_ticker_is_active,8,3           ; @ticker_is_active
	.comm	_ticker_idx,4,2                 ; @ticker_idx
	.comm	_ticker_slow_idx,4,2            ; @ticker_slow_idx
	.comm	_ticker_pixel_period,4,2        ; @ticker_pixel_period
	.section	__TEXT,__cstring,cstring_literals
l_.str:                                 ; @.str
	.asciz	"rgui"

l_.str.1:                               ; @.str.1
	.asciz	"ozone"

l_.str.2:                               ; @.str.2
	.asciz	"glui"

	.comm	_ticker_pixel_idx,4,2           ; @ticker_pixel_idx
	.no_dead_strip	_menu_animation_update_time
.subsections_via_symbols
