	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	4, 0x90                         ## -- Begin function macsec_changelink_common
_macsec_changelink_common:              ## @macsec_changelink_common
	.cfi_startproc
## %bb.0:
	pushq	%rbp
	.cfi_def_cfa_offset 16
	.cfi_offset %rbp, -16
	movq	%rsp, %rbp
	.cfi_def_cfa_register %rbp
	pushq	%r14
	pushq	%rbx
	.cfi_offset %rbx, -32
	.cfi_offset %r14, -24
	movq	%rsi, %rbx
	callq	_macsec_priv
	movq	%rax, %r14
	movq	_IFLA_MACSEC_ENCODING_SA@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	movq	(%rbx,%rax,8), %rdi
	testq	%rdi, %rdi
	je	LBB0_4
## %bb.1:
	callq	_nla_get_u8
	movq	%rax, 32(%r14)
	movq	56(%r14), %rcx
	movl	(%rcx,%rax,4), %edi
	callq	_rtnl_dereference
	xorl	%ecx, %ecx
	testq	%rax, %rax
	je	LBB0_3
## %bb.2:
	cmpq	$0, (%rax)
	setne	%cl
LBB0_3:
	movl	%ecx, (%r14)
LBB0_4:
	movq	_IFLA_MACSEC_WINDOW@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	movq	(%rbx,%rax,8), %rdi
	testq	%rdi, %rdi
	je	LBB0_6
## %bb.5:
	callq	_nla_get_u32
	movl	%eax, 24(%r14)
LBB0_6:
	movq	_IFLA_MACSEC_ENCRYPT@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	movq	(%rbx,%rax,8), %rdi
	testq	%rdi, %rdi
	je	LBB0_8
## %bb.7:
	callq	_nla_get_u8
	xorl	%ecx, %ecx
	testq	%rax, %rax
	setne	%cl
	movl	%ecx, 40(%r14)
LBB0_8:
	movq	_IFLA_MACSEC_PROTECT@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	movq	(%rbx,%rax,8), %rdi
	testq	%rdi, %rdi
	je	LBB0_10
## %bb.9:
	callq	_nla_get_u8
	xorl	%ecx, %ecx
	testq	%rax, %rax
	setne	%cl
	movl	%ecx, 4(%r14)
LBB0_10:
	movq	_IFLA_MACSEC_INC_SCI@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	movq	(%rbx,%rax,8), %rdi
	testq	%rdi, %rdi
	je	LBB0_12
## %bb.11:
	callq	_nla_get_u8
	xorl	%ecx, %ecx
	testq	%rax, %rax
	setne	%cl
	movl	%ecx, 44(%r14)
LBB0_12:
	movq	_IFLA_MACSEC_ES@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	movq	(%rbx,%rax,8), %rdi
	testq	%rdi, %rdi
	je	LBB0_14
## %bb.13:
	callq	_nla_get_u8
	xorl	%ecx, %ecx
	testq	%rax, %rax
	setne	%cl
	movl	%ecx, 48(%r14)
LBB0_14:
	movq	_IFLA_MACSEC_SCB@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	movq	(%rbx,%rax,8), %rdi
	testq	%rdi, %rdi
	je	LBB0_16
## %bb.15:
	callq	_nla_get_u8
	xorl	%ecx, %ecx
	testq	%rax, %rax
	setne	%cl
	movl	%ecx, 52(%r14)
LBB0_16:
	movq	_IFLA_MACSEC_REPLAY_PROTECT@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	movq	(%rbx,%rax,8), %rdi
	testq	%rdi, %rdi
	je	LBB0_18
## %bb.17:
	callq	_nla_get_u8
	xorl	%ecx, %ecx
	testq	%rax, %rax
	setne	%cl
	movl	%ecx, 8(%r14)
LBB0_18:
	movq	_IFLA_MACSEC_VALIDATION@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	movq	(%rbx,%rax,8), %rdi
	testq	%rdi, %rdi
	je	LBB0_20
## %bb.19:
	callq	_nla_get_u8
	movq	%rax, 16(%r14)
LBB0_20:
	movq	_IFLA_MACSEC_CIPHER_SUITE@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	movq	(%rbx,%rax,8), %rdi
	xorl	%ebx, %ebx
	testq	%rdi, %rdi
	je	LBB0_28
## %bb.21:
	callq	_nla_get_u64
	cmpl	$130, %eax
	je	LBB0_24
## %bb.22:
	cmpl	$129, %eax
	je	LBB0_26
## %bb.23:
	cmpl	$128, %eax
	jne	LBB0_27
LBB0_24:
	movq	_MACSEC_GCM_AES_128_SAK_LEN@GOTPCREL(%rip), %rax
	jmp	LBB0_25
LBB0_26:
	movq	_MACSEC_GCM_AES_256_SAK_LEN@GOTPCREL(%rip), %rax
LBB0_25:
	movl	(%rax), %eax
	movl	%eax, 12(%r14)
	jmp	LBB0_28
LBB0_27:
	movq	_EINVAL@GOTPCREL(%rip), %rax
	xorl	%ebx, %ebx
	subl	(%rax), %ebx
LBB0_28:
	movl	%ebx, %eax
	popq	%rbx
	popq	%r14
	popq	%rbp
	retq
	.cfi_endproc
                                        ## -- End function
	.comm	_IFLA_MACSEC_ENCODING_SA,8,3    ## @IFLA_MACSEC_ENCODING_SA
	.comm	_IFLA_MACSEC_WINDOW,8,3         ## @IFLA_MACSEC_WINDOW
	.comm	_IFLA_MACSEC_ENCRYPT,8,3        ## @IFLA_MACSEC_ENCRYPT
	.comm	_IFLA_MACSEC_PROTECT,8,3        ## @IFLA_MACSEC_PROTECT
	.comm	_IFLA_MACSEC_INC_SCI,8,3        ## @IFLA_MACSEC_INC_SCI
	.comm	_IFLA_MACSEC_ES,8,3             ## @IFLA_MACSEC_ES
	.comm	_IFLA_MACSEC_SCB,8,3            ## @IFLA_MACSEC_SCB
	.comm	_IFLA_MACSEC_REPLAY_PROTECT,8,3 ## @IFLA_MACSEC_REPLAY_PROTECT
	.comm	_IFLA_MACSEC_VALIDATION,8,3     ## @IFLA_MACSEC_VALIDATION
	.comm	_IFLA_MACSEC_CIPHER_SUITE,8,3   ## @IFLA_MACSEC_CIPHER_SUITE
	.comm	_MACSEC_GCM_AES_128_SAK_LEN,4,2 ## @MACSEC_GCM_AES_128_SAK_LEN
	.comm	_MACSEC_GCM_AES_256_SAK_LEN,4,2 ## @MACSEC_GCM_AES_256_SAK_LEN
	.comm	_EINVAL,4,2                     ## @EINVAL
	.no_dead_strip	_macsec_changelink_common
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	2                               ; -- Begin function macsec_changelink_common
_macsec_changelink_common:              ; @macsec_changelink_common
	.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
	mov	x20, x1
	bl	_macsec_priv
	mov	x19, x0
Lloh0:
	adrp	x8, _IFLA_MACSEC_ENCODING_SA@GOTPAGE
Lloh1:
	ldr	x8, [x8, _IFLA_MACSEC_ENCODING_SA@GOTPAGEOFF]
Lloh2:
	ldr	x8, [x8]
	ldr	x0, [x20, x8, lsl #3]
	cbz	x0, LBB0_5
; %bb.1:
	bl	_nla_get_u8
	str	x0, [x19, #32]
	ldr	x8, [x19, #56]
	ldr	w0, [x8, x0, lsl #2]
	bl	_rtnl_dereference
	cbz	x0, LBB0_3
; %bb.2:
	ldr	x8, [x0]
	cmp	x8, #0
	cset	w8, ne
	b	LBB0_4
LBB0_3:
	mov	w8, #0
LBB0_4:
	str	w8, [x19]
LBB0_5:
Lloh3:
	adrp	x8, _IFLA_MACSEC_WINDOW@GOTPAGE
Lloh4:
	ldr	x8, [x8, _IFLA_MACSEC_WINDOW@GOTPAGEOFF]
Lloh5:
	ldr	x8, [x8]
	ldr	x0, [x20, x8, lsl #3]
	cbz	x0, LBB0_7
; %bb.6:
	bl	_nla_get_u32
	str	w0, [x19, #24]
LBB0_7:
Lloh6:
	adrp	x8, _IFLA_MACSEC_ENCRYPT@GOTPAGE
Lloh7:
	ldr	x8, [x8, _IFLA_MACSEC_ENCRYPT@GOTPAGEOFF]
Lloh8:
	ldr	x8, [x8]
	ldr	x0, [x20, x8, lsl #3]
	cbz	x0, LBB0_9
; %bb.8:
	bl	_nla_get_u8
	cmp	x0, #0
	cset	w8, ne
	str	w8, [x19, #40]
LBB0_9:
Lloh9:
	adrp	x8, _IFLA_MACSEC_PROTECT@GOTPAGE
Lloh10:
	ldr	x8, [x8, _IFLA_MACSEC_PROTECT@GOTPAGEOFF]
Lloh11:
	ldr	x8, [x8]
	ldr	x0, [x20, x8, lsl #3]
	cbz	x0, LBB0_11
; %bb.10:
	bl	_nla_get_u8
	cmp	x0, #0
	cset	w8, ne
	str	w8, [x19, #4]
LBB0_11:
Lloh12:
	adrp	x8, _IFLA_MACSEC_INC_SCI@GOTPAGE
Lloh13:
	ldr	x8, [x8, _IFLA_MACSEC_INC_SCI@GOTPAGEOFF]
Lloh14:
	ldr	x8, [x8]
	ldr	x0, [x20, x8, lsl #3]
	cbz	x0, LBB0_13
; %bb.12:
	bl	_nla_get_u8
	cmp	x0, #0
	cset	w8, ne
	str	w8, [x19, #44]
LBB0_13:
Lloh15:
	adrp	x8, _IFLA_MACSEC_ES@GOTPAGE
Lloh16:
	ldr	x8, [x8, _IFLA_MACSEC_ES@GOTPAGEOFF]
Lloh17:
	ldr	x8, [x8]
	ldr	x0, [x20, x8, lsl #3]
	cbz	x0, LBB0_15
; %bb.14:
	bl	_nla_get_u8
	cmp	x0, #0
	cset	w8, ne
	str	w8, [x19, #48]
LBB0_15:
Lloh18:
	adrp	x8, _IFLA_MACSEC_SCB@GOTPAGE
Lloh19:
	ldr	x8, [x8, _IFLA_MACSEC_SCB@GOTPAGEOFF]
Lloh20:
	ldr	x8, [x8]
	ldr	x0, [x20, x8, lsl #3]
	cbz	x0, LBB0_17
; %bb.16:
	bl	_nla_get_u8
	cmp	x0, #0
	cset	w8, ne
	str	w8, [x19, #52]
LBB0_17:
Lloh21:
	adrp	x8, _IFLA_MACSEC_REPLAY_PROTECT@GOTPAGE
Lloh22:
	ldr	x8, [x8, _IFLA_MACSEC_REPLAY_PROTECT@GOTPAGEOFF]
Lloh23:
	ldr	x8, [x8]
	ldr	x0, [x20, x8, lsl #3]
	cbz	x0, LBB0_19
; %bb.18:
	bl	_nla_get_u8
	cmp	x0, #0
	cset	w8, ne
	str	w8, [x19, #8]
LBB0_19:
Lloh24:
	adrp	x8, _IFLA_MACSEC_VALIDATION@GOTPAGE
Lloh25:
	ldr	x8, [x8, _IFLA_MACSEC_VALIDATION@GOTPAGEOFF]
Lloh26:
	ldr	x8, [x8]
	ldr	x0, [x20, x8, lsl #3]
	cbz	x0, LBB0_21
; %bb.20:
	bl	_nla_get_u8
	str	x0, [x19, #16]
LBB0_21:
Lloh27:
	adrp	x8, _IFLA_MACSEC_CIPHER_SUITE@GOTPAGE
Lloh28:
	ldr	x8, [x8, _IFLA_MACSEC_CIPHER_SUITE@GOTPAGEOFF]
Lloh29:
	ldr	x8, [x8]
	ldr	x0, [x20, x8, lsl #3]
	cbz	x0, LBB0_29
; %bb.22:
	bl	_nla_get_u64
	cmp	w0, #130
	b.eq	LBB0_25
; %bb.23:
	cmp	w0, #129
	b.eq	LBB0_26
; %bb.24:
	cmp	w0, #128
	b.ne	LBB0_28
LBB0_25:
	mov	w0, #0
Lloh30:
	adrp	x8, _MACSEC_GCM_AES_128_SAK_LEN@GOTPAGE
Lloh31:
	ldr	x8, [x8, _MACSEC_GCM_AES_128_SAK_LEN@GOTPAGEOFF]
	b	LBB0_27
LBB0_26:
	mov	w0, #0
Lloh32:
	adrp	x8, _MACSEC_GCM_AES_256_SAK_LEN@GOTPAGE
Lloh33:
	ldr	x8, [x8, _MACSEC_GCM_AES_256_SAK_LEN@GOTPAGEOFF]
LBB0_27:
	ldr	w8, [x8]
	str	w8, [x19, #12]
	b	LBB0_29
LBB0_28:
Lloh34:
	adrp	x8, _EINVAL@GOTPAGE
Lloh35:
	ldr	x8, [x8, _EINVAL@GOTPAGEOFF]
Lloh36:
	ldr	w8, [x8]
	neg	w0, w8
LBB0_29:
	ldp	x29, x30, [sp, #16]             ; 16-byte Folded Reload
	ldp	x20, x19, [sp], #32             ; 16-byte Folded Reload
	ret
	.loh AdrpLdrGotLdr	Lloh0, Lloh1, Lloh2
	.loh AdrpLdrGotLdr	Lloh3, Lloh4, Lloh5
	.loh AdrpLdrGotLdr	Lloh6, Lloh7, Lloh8
	.loh AdrpLdrGotLdr	Lloh9, Lloh10, Lloh11
	.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 AdrpLdrGot	Lloh30, Lloh31
	.loh AdrpLdrGot	Lloh32, Lloh33
	.loh AdrpLdrGotLdr	Lloh34, Lloh35, Lloh36
	.cfi_endproc
                                        ; -- End function
	.comm	_IFLA_MACSEC_ENCODING_SA,8,3    ; @IFLA_MACSEC_ENCODING_SA
	.comm	_IFLA_MACSEC_WINDOW,8,3         ; @IFLA_MACSEC_WINDOW
	.comm	_IFLA_MACSEC_ENCRYPT,8,3        ; @IFLA_MACSEC_ENCRYPT
	.comm	_IFLA_MACSEC_PROTECT,8,3        ; @IFLA_MACSEC_PROTECT
	.comm	_IFLA_MACSEC_INC_SCI,8,3        ; @IFLA_MACSEC_INC_SCI
	.comm	_IFLA_MACSEC_ES,8,3             ; @IFLA_MACSEC_ES
	.comm	_IFLA_MACSEC_SCB,8,3            ; @IFLA_MACSEC_SCB
	.comm	_IFLA_MACSEC_REPLAY_PROTECT,8,3 ; @IFLA_MACSEC_REPLAY_PROTECT
	.comm	_IFLA_MACSEC_VALIDATION,8,3     ; @IFLA_MACSEC_VALIDATION
	.comm	_IFLA_MACSEC_CIPHER_SUITE,8,3   ; @IFLA_MACSEC_CIPHER_SUITE
	.comm	_MACSEC_GCM_AES_128_SAK_LEN,4,2 ; @MACSEC_GCM_AES_128_SAK_LEN
	.comm	_MACSEC_GCM_AES_256_SAK_LEN,4,2 ; @MACSEC_GCM_AES_256_SAK_LEN
	.comm	_EINVAL,4,2                     ; @EINVAL
	.no_dead_strip	_macsec_changelink_common
.subsections_via_symbols
