	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.globl	_mod_stats_update_vupdate       ## -- Begin function mod_stats_update_vupdate
	.p2align	4, 0x90
_mod_stats_update_vupdate:              ## @mod_stats_update_vupdate
	.cfi_startproc
## %bb.0:
	pushq	%rbp
	.cfi_def_cfa_offset 16
	.cfi_offset %rbp, -16
	movq	%rsp, %rbp
	.cfi_def_cfa_register %rbp
	pushq	%rbx
	pushq	%rax
	.cfi_offset %rbx, -24
	testq	%rdi, %rdi
	je	LBB0_8
## %bb.1:
	movq	%rsi, %rbx
	callq	_MOD_STATS_TO_CORE
	movl	(%rax), %edx
	cmpl	4(%rax), %edx
	jae	LBB0_8
## %bb.2:
	movq	8(%rax), %rcx
	movq	%rdx, %rsi
	shlq	$5, %rsi
	leaq	(%rcx,%rsi), %r8
	movl	(%rcx,%rsi), %edi
	movq	_MOD_STATS_NUM_VSYNCS@GOTPCREL(%rip), %rax
	cmpl	(%rax), %edi
	jae	LBB0_7
## %bb.3:
	movabsq	$2361183241434822607, %r9       ## imm = 0x20C49BA5E353F7CF
	testq	%rdi, %rdi
	je	LBB0_4
## %bb.5:
	movl	4(%rcx,%rsi), %r10d
	jmp	LBB0_6
LBB0_4:
	decl	%edx
	shlq	$5, %rdx
	movl	4(%rcx,%rdx), %r10d
	movq	%rbx, %rax
	subq	16(%rcx,%rdx), %rax
	shrq	$3, %rax
	mulq	%r9
	shrq	$4, %rdx
	movq	%rdx, 8(%rcx,%rsi)
LBB0_6:
	movl	%r10d, %edx
	movq	%rbx, %rax
	subq	%rdx, %rax
	shrq	$3, %rax
	mulq	%r9
	shrq	$4, %rdx
	movq	24(%rcx,%rsi), %rax
	movq	%rdx, (%rax,%rdi,8)
LBB0_7:
	movl	%ebx, 4(%rcx,%rsi)
	incl	%edi
	movl	%edi, (%r8)
LBB0_8:
	addq	$8, %rsp
	popq	%rbx
	popq	%rbp
	retq
	.cfi_endproc
                                        ## -- End function
	.comm	_MOD_STATS_NUM_VSYNCS,4,2       ## @MOD_STATS_NUM_VSYNCS
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.globl	_mod_stats_update_vupdate       ; -- Begin function mod_stats_update_vupdate
	.p2align	2
_mod_stats_update_vupdate:              ; @mod_stats_update_vupdate
	.cfi_startproc
; %bb.0:
	stp	x20, x19, [sp, #-32]!           ; 16-byte Folded Spill
	.cfi_def_cfa_offset 32
	stp	x29, x30, [sp, #16]             ; 16-byte Folded Spill
	add	x29, sp, #16
	.cfi_def_cfa w29, 16
	.cfi_offset w30, -8
	.cfi_offset w29, -16
	.cfi_offset w19, -24
	.cfi_offset w20, -32
	cbz	x0, LBB0_8
; %bb.1:
	mov	x19, x1
	bl	_MOD_STATS_TO_CORE
	ldp	w8, w9, [x0]
	cmp	w8, w9
	b.hs	LBB0_8
; %bb.2:
	ldr	x11, [x0, #8]
	add	x9, x11, x8, lsl #5
	ldr	w10, [x9]
Lloh0:
	adrp	x12, _MOD_STATS_NUM_VSYNCS@GOTPAGE
Lloh1:
	ldr	x12, [x12, _MOD_STATS_NUM_VSYNCS@GOTPAGEOFF]
Lloh2:
	ldr	w12, [x12]
	cmp	w10, w12
	b.hs	LBB0_7
; %bb.3:
	cbz	w10, LBB0_5
; %bb.4:
	add	x12, x11, x8, lsl #5
	ldr	w12, [x12, #4]
	b	LBB0_6
LBB0_5:
	sub	w12, w8, #1
	add	x13, x11, x12, lsl #5
	ldr	w12, [x13, #4]
	ldr	x13, [x13, #16]
	sub	x13, x19, x13
	lsr	x13, x13, #3
	mov	x14, #63439
	movk	x14, #58195, lsl #16
	movk	x14, #39845, lsl #32
	movk	x14, #8388, lsl #48
	umulh	x13, x13, x14
	lsr	x13, x13, #4
	add	x14, x11, x8, lsl #5
	str	x13, [x14, #8]
LBB0_6:
	sub	x12, x19, w12, uxtw
	lsr	x12, x12, #3
	mov	x13, #63439
	movk	x13, #58195, lsl #16
	movk	x13, #39845, lsl #32
	movk	x13, #8388, lsl #48
	umulh	x12, x12, x13
	lsr	x12, x12, #4
	add	x8, x11, x8, lsl #5
	ldr	x8, [x8, #24]
	str	x12, [x8, x10, lsl #3]
LBB0_7:
	add	w8, w10, #1
	stp	w8, w19, [x9]
LBB0_8:
	ldp	x29, x30, [sp, #16]             ; 16-byte Folded Reload
	ldp	x20, x19, [sp], #32             ; 16-byte Folded Reload
	ret
	.loh AdrpLdrGotLdr	Lloh0, Lloh1, Lloh2
	.cfi_endproc
                                        ; -- End function
	.comm	_MOD_STATS_NUM_VSYNCS,4,2       ; @MOD_STATS_NUM_VSYNCS
.subsections_via_symbols
