	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.globl	_ssp_pm_write                   ## -- Begin function ssp_pm_write
	.p2align	4, 0x90
_ssp_pm_write:                          ## @ssp_pm_write
	.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	_ssp@GOTPCREL(%rip), %r8
	movq	(%r8), %rax
	movl	(%rax), %ecx
	movq	_SSP_PMC_SET@GOTPCREL(%rip), %rdx
	testl	%ecx, (%rdx)
	je	LBB0_2
## %bb.1:
	movq	_rPMC@GOTPCREL(%rip), %rcx
	movl	(%rcx), %ecx
	movq	8(%rax), %rdi
	movslq	%esi, %rsi
	movl	%ecx, (%rdi,%rsi,4)
	movl	(%rdx), %ecx
	notl	%ecx
	andl	%ecx, (%rax)
	jmp	LBB0_15
LBB0_2:
	movl	%edi, %r14d
	movq	_SSP_PMC_HAVE_ADDR@GOTPCREL(%rip), %rdx
	movl	(%rdx), %edx
	notl	%edx
	andl	%edx, %ecx
	movl	%ecx, (%rax)
	movq	_svp@GOTPCREL(%rip), %r13
	movq	(%r13), %rcx
	movq	8(%rcx), %rdx
	movq	8(%rax), %rax
	movslq	%esi, %r15
	movl	(%rax,%r15,4), %ebx
	movl	%ebx, %edi
	sarl	$16, %edi
	movzwl	%bx, %r12d
	movl	%ebx, %ecx
	andl	$1140785152, %ecx               ## imm = 0x43FF0000
	cmpl	$1572864, %ecx                  ## imm = 0x180000
	jne	LBB0_7
## %bb.3:
	movq	%rdx, -48(%rbp)                 ## 8-byte Spill
	callq	_get_inc
	movl	%eax, %r13d
	testl	$67108864, %ebx                 ## imm = 0x4000000
	jne	LBB0_4
## %bb.5:
	movq	-48(%rbp), %rax                 ## 8-byte Reload
	movw	%r14w, (%rax,%r12,2)
	jmp	LBB0_6
LBB0_7:
	movl	%edi, %ecx
	andl	$64511, %ecx                    ## imm = 0xFBFF
	cmpl	$16408, %ecx                    ## imm = 0x4018
	jne	LBB0_12
## %bb.8:
	movl	%r12d, %ecx
	testl	$67108864, %ebx                 ## imm = 0x4000000
	jne	LBB0_9
## %bb.10:
	movw	%r14w, (%rdx,%rcx,2)
	movl	%ebx, %ecx
	jmp	LBB0_11
LBB0_4:
	movq	-48(%rbp), %rax                 ## 8-byte Reload
	movzwl	(%rax,%r12,2), %edi
	movzwl	%r14w, %esi
	callq	_overwrite_write
LBB0_6:
	movq	_ssp@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	movq	8(%rax), %rax
	addl	(%rax,%r15,4), %r13d
	movl	%r13d, (%rax,%r15,4)
	movl	%r13d, %ebx
	jmp	LBB0_14
LBB0_12:
	movl	%ebx, %eax
	andl	$1207894016, %eax               ## imm = 0x47FF0000
	cmpl	$1835008, %eax                  ## imm = 0x1C0000
	jne	LBB0_14
## %bb.13:
	movq	%r8, %r12
	callq	_get_inc
	movq	(%r13), %rcx
	movq	(%rcx), %rcx
	andl	$1023, %ebx                     ## imm = 0x3FF
	movw	%r14w, (%rcx,%rbx,2)
	movq	(%r12), %rcx
	movq	8(%rcx), %rdx
	addl	%eax, (%rdx,%r15,4)
	movl	$1, 16(%rcx)
	movl	(%rdx,%r15,4), %ebx
	jmp	LBB0_14
LBB0_9:
	movzwl	(%rdx,%rcx,2), %edi
	movzwl	%r14w, %esi
	movq	%r8, %r14
	callq	_overwrite_write
	movq	(%r14), %rax
	movq	8(%rax), %rax
	movl	(%rax,%r15,4), %ecx
LBB0_11:
	leal	31(%rcx), %edx
	incl	%ecx
	testb	$1, %bl
	cmovnel	%edx, %ecx
	movl	%ecx, (%rax,%r15,4)
	movl	%ecx, %ebx
LBB0_14:
	movq	_rPMC@GOTPCREL(%rip), %rax
	movl	%ebx, (%rax)
LBB0_15:
	addq	$8, %rsp
	popq	%rbx
	popq	%r12
	popq	%r13
	popq	%r14
	popq	%r15
	popq	%rbp
	retq
	.cfi_endproc
                                        ## -- End function
	.comm	_ssp,8,3                        ## @ssp
	.comm	_SSP_PMC_SET,4,2                ## @SSP_PMC_SET
	.comm	_rPMC,4,2                       ## @rPMC
	.comm	_SSP_PMC_HAVE_ADDR,4,2          ## @SSP_PMC_HAVE_ADDR
	.comm	_svp,8,3                        ## @svp
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.globl	_ssp_pm_write                   ; -- Begin function ssp_pm_write
	.p2align	2
_ssp_pm_write:                          ; @ssp_pm_write
	.cfi_startproc
; %bb.0:
	stp	x26, x25, [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 w25, -72
	.cfi_offset w26, -80
                                        ; kill: def $w1 killed $w1 def $x1
Lloh0:
	adrp	x22, _ssp@GOTPAGE
Lloh1:
	ldr	x22, [x22, _ssp@GOTPAGEOFF]
	ldr	x8, [x22]
	ldr	w9, [x8]
Lloh2:
	adrp	x10, _SSP_PMC_SET@GOTPAGE
Lloh3:
	ldr	x10, [x10, _SSP_PMC_SET@GOTPAGEOFF]
	ldr	w11, [x10]
	tst	w11, w9
	b.eq	LBB0_2
; %bb.1:
Lloh4:
	adrp	x9, _rPMC@GOTPAGE
Lloh5:
	ldr	x9, [x9, _rPMC@GOTPAGEOFF]
Lloh6:
	ldr	w9, [x9]
	ldr	x11, [x8, #8]
	str	w9, [x11, w1, sxtw #2]
	ldr	w9, [x10]
	ldr	w10, [x8]
	bic	w9, w10, w9
	str	w9, [x8]
	b	LBB0_15
LBB0_2:
	mov	x19, x0
Lloh7:
	adrp	x10, _SSP_PMC_HAVE_ADDR@GOTPAGE
Lloh8:
	ldr	x10, [x10, _SSP_PMC_HAVE_ADDR@GOTPAGEOFF]
Lloh9:
	ldr	w10, [x10]
	bic	w9, w9, w10
Lloh10:
	adrp	x20, _svp@GOTPAGE
Lloh11:
	ldr	x20, [x20, _svp@GOTPAGEOFF]
	str	w9, [x8]
	ldr	x9, [x20]
	ldr	x24, [x9, #8]
	ldr	x8, [x8, #8]
	ldr	w23, [x8, w1, sxtw #2]
	sxtw	x21, w1
	asr	w0, w23, #16
	and	x25, x23, #0xffff
	mov	w9, #1140785152
	and	w9, w23, w9
	cmp	w9, #384, lsl #12               ; =1572864
	b.ne	LBB0_5
; %bb.3:
	bl	_get_inc
	mov	x20, x0
	tbnz	w23, #26, LBB0_8
; %bb.4:
	strh	w19, [x24, x25, lsl #1]
	b	LBB0_9
LBB0_5:
	mov	w9, #64511
	and	w9, w0, w9
	mov	w10, #16408
	cmp	w9, w10
	b.ne	LBB0_10
; %bb.6:
	mov	w9, w25
	tbnz	w23, #26, LBB0_12
; %bb.7:
	strh	w19, [x24, x9, lsl #1]
	mov	x9, x23
	b	LBB0_13
LBB0_8:
	ldrh	w0, [x24, x25, lsl #1]
	mov	x1, x19
	bl	_overwrite_write
LBB0_9:
	ldr	x8, [x22]
	ldr	x8, [x8, #8]
	lsl	x9, x21, #2
	ldr	w10, [x8, x9]
	add	w23, w10, w20
	str	w23, [x8, x9]
	b	LBB0_14
LBB0_10:
	mov	w8, #1207894016
	and	w8, w23, w8
	cmp	w8, #448, lsl #12               ; =1835008
	b.ne	LBB0_14
; %bb.11:
	bl	_get_inc
	ldr	x8, [x20]
	ldr	x8, [x8]
	and	x9, x23, #0x3ff
	strh	w19, [x8, x9, lsl #1]
	ldr	x8, [x22]
	ldr	x9, [x8, #8]
	lsl	x10, x21, #2
	ldr	w11, [x9, x10]
	add	w11, w11, w0
	str	w11, [x9, x10]
	mov	w11, #1
	str	w11, [x8, #16]
	ldr	w23, [x9, x10]
	b	LBB0_14
LBB0_12:
	ldrh	w0, [x24, x9, lsl #1]
	mov	x1, x19
	bl	_overwrite_write
	ldr	x8, [x22]
	ldr	x8, [x8, #8]
	ldr	w9, [x8, x21, lsl #2]
LBB0_13:
	tst	w23, #0x1
	add	w10, w9, #31
	csinc	w23, w10, w9, ne
	str	w23, [x8, x21, lsl #2]
LBB0_14:
Lloh12:
	adrp	x8, _rPMC@GOTPAGE
Lloh13:
	ldr	x8, [x8, _rPMC@GOTPAGEOFF]
Lloh14:
	str	w23, [x8]
LBB0_15:
	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	x26, x25, [sp], #80             ; 16-byte Folded Reload
	ret
	.loh AdrpLdrGot	Lloh2, Lloh3
	.loh AdrpLdrGot	Lloh0, Lloh1
	.loh AdrpLdrGotLdr	Lloh4, Lloh5, Lloh6
	.loh AdrpLdrGot	Lloh10, Lloh11
	.loh AdrpLdrGotLdr	Lloh7, Lloh8, Lloh9
	.loh AdrpLdrGotStr	Lloh12, Lloh13, Lloh14
	.cfi_endproc
                                        ; -- End function
	.comm	_ssp,8,3                        ; @ssp
	.comm	_SSP_PMC_SET,4,2                ; @SSP_PMC_SET
	.comm	_rPMC,4,2                       ; @rPMC
	.comm	_SSP_PMC_HAVE_ADDR,4,2          ; @SSP_PMC_HAVE_ADDR
	.comm	_svp,8,3                        ; @svp
.subsections_via_symbols
