	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.globl	_assembly_get_pubkey_token      ## -- Begin function assembly_get_pubkey_token
	.p2align	4, 0x90
_assembly_get_pubkey_token:             ## @assembly_get_pubkey_token
	.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
	subq	$104, %rsp
	.cfi_offset %rbx, -56
	.cfi_offset %r12, -48
	.cfi_offset %r13, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
	movq	%rsi, %r15
	movq	%rdi, %r12
	movq	%rsp, %r13
	movq	___stack_chk_guard@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	movq	%rax, -48(%rbp)
	movq	_BYTES_PER_TOKEN@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	shlq	$2, %rax
	callq	____chkstk_darwin
	addq	$15, %rax
	andq	$-16, %rax
	subq	%rax, %rsp
	movq	%rsp, %r14
	movq	$0, (%r15)
	movq	8(%r12), %rbx
	movq	_mdtAssembly@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	callq	_TableFromToken
	movl	(%rbx,%rax,4), %esi
	cmpl	$-1, %esi
	je	LBB0_1
## %bb.2:
	movq	%r12, %rdi
	callq	_assembly_data_offset
	testq	%rax, %rax
	je	LBB0_1
## %bb.3:
	movq	%rax, %rbx
	movq	_ASSEMBLYTABLE@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	movq	_PublicKey@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	callq	_FIELD_OFFSET
	cltq
	movl	(%rbx,%rax,4), %esi
	leaq	-136(%rbp), %rdx
	movq	%r12, %rdi
	callq	_assembly_get_blob
	movq	%rax, %rbx
	movq	_BCRYPT_SHA1_ALGORITHM@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	_MS_PRIMITIVE_PROVIDER@GOTPCREL(%rip), %rax
	movl	(%rax), %edx
	leaq	-132(%rbp), %rdi
	xorl	%ecx, %ecx
	callq	_BCryptOpenAlgorithmProvider
	movq	_STATUS_SUCCESS@GOTPCREL(%rip), %r12
	cmpq	(%r12), %rax
	jne	LBB0_1
## %bb.4:
	movl	-132(%rbp), %edi
	movl	-136(%rbp), %r8d
	subq	$8, %rsp
	leaq	-128(%rbp), %r9
	xorl	%esi, %esi
	xorl	%edx, %edx
	movq	%rbx, %rcx
	pushq	$80
	callq	_BCryptHash
	addq	$16, %rsp
	cmpq	(%r12), %rax
	jne	LBB0_5
## %bb.6:
	pshufd	$27, 176(%rbp), %xmm0           ## xmm0 = mem[3,2,1,0]
	movl	$80, -136(%rbp)
	movdqa	%xmm0, (%r14)
	pshufd	$27, 160(%rbp), %xmm0           ## xmm0 = mem[3,2,1,0]
	movdqa	%xmm0, 16(%r14)
	movq	_TOKEN_LENGTH@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	leal	4(,%rax,4), %edi
	callq	_heap_alloc
	testq	%rax, %rax
	je	LBB0_7
## %bb.8:
	movq	%rax, %rbx
	movq	%r14, %rdi
	movq	%rax, %rsi
	callq	_token_to_str
	movq	%rbx, (%r15)
	movq	_S_OK@GOTPCREL(%rip), %rax
	jmp	LBB0_9
LBB0_1:
	movq	_E_FAIL@GOTPCREL(%rip), %rax
	movl	(%rax), %ebx
LBB0_10:
	movq	%r13, %rsp
	movq	___stack_chk_guard@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	cmpq	-48(%rbp), %rax
	jne	LBB0_12
## %bb.11:
	movl	%ebx, %eax
	leaq	-40(%rbp), %rsp
	popq	%rbx
	popq	%r12
	popq	%r13
	popq	%r14
	popq	%r15
	popq	%rbp
	retq
LBB0_5:
	movq	_E_FAIL@GOTPCREL(%rip), %rax
	jmp	LBB0_9
LBB0_7:
	movq	_E_OUTOFMEMORY@GOTPCREL(%rip), %rax
LBB0_9:
	movl	(%rax), %ebx
	movl	-132(%rbp), %edi
	xorl	%esi, %esi
	callq	_BCryptCloseAlgorithmProvider
	jmp	LBB0_10
LBB0_12:
	callq	___stack_chk_fail
	.cfi_endproc
                                        ## -- End function
	.comm	_BYTES_PER_TOKEN,4,2            ## @BYTES_PER_TOKEN
	.comm	_E_FAIL,4,2                     ## @E_FAIL
	.comm	_mdtAssembly,4,2                ## @mdtAssembly
	.comm	_ASSEMBLYTABLE,4,2              ## @ASSEMBLYTABLE
	.comm	_PublicKey,4,2                  ## @PublicKey
	.comm	_BCRYPT_SHA1_ALGORITHM,4,2      ## @BCRYPT_SHA1_ALGORITHM
	.comm	_MS_PRIMITIVE_PROVIDER,4,2      ## @MS_PRIMITIVE_PROVIDER
	.comm	_STATUS_SUCCESS,8,3             ## @STATUS_SUCCESS
	.comm	_TOKEN_LENGTH,4,2               ## @TOKEN_LENGTH
	.comm	_E_OUTOFMEMORY,4,2              ## @E_OUTOFMEMORY
	.comm	_S_OK,4,2                       ## @S_OK
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.globl	_assembly_get_pubkey_token      ; -- Begin function assembly_get_pubkey_token
	.p2align	2
_assembly_get_pubkey_token:             ; @assembly_get_pubkey_token
	.cfi_startproc
; %bb.0:
	stp	x24, x23, [sp, #-64]!           ; 16-byte Folded Spill
	.cfi_def_cfa_offset 64
	stp	x22, x21, [sp, #16]             ; 16-byte Folded Spill
	stp	x20, x19, [sp, #32]             ; 16-byte Folded Spill
	stp	x29, x30, [sp, #48]             ; 16-byte Folded Spill
	add	x29, sp, #48
	.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
	sub	sp, sp, #96
	mov	x19, x1
	mov	x21, x0
	mov	x23, sp
Lloh0:
	adrp	x8, ___stack_chk_guard@GOTPAGE
Lloh1:
	ldr	x8, [x8, ___stack_chk_guard@GOTPAGEOFF]
Lloh2:
	ldr	x8, [x8]
	stur	x8, [x29, #-56]
Lloh3:
	adrp	x8, _BYTES_PER_TOKEN@GOTPAGE
Lloh4:
	ldr	x8, [x8, _BYTES_PER_TOKEN@GOTPAGEOFF]
Lloh5:
	ldr	w8, [x8]
	lsl	x8, x8, #2
	mov	x9, x8
Lloh6:
	adrp	x16, ___chkstk_darwin@GOTPAGE
Lloh7:
	ldr	x16, [x16, ___chkstk_darwin@GOTPAGEOFF]
	blr	x16
	mov	x9, sp
	add	x8, x8, #15
	and	x8, x8, #0x7fffffff0
	sub	x20, x9, x8
	mov	sp, x20
	str	xzr, [x1]
	ldr	x22, [x0, #8]
Lloh8:
	adrp	x8, _mdtAssembly@GOTPAGE
Lloh9:
	ldr	x8, [x8, _mdtAssembly@GOTPAGEOFF]
Lloh10:
	ldr	w0, [x8]
	bl	_TableFromToken
	ldr	w1, [x22, x0, lsl #2]
	cmn	w1, #1
	b.eq	LBB0_6
; %bb.1:
	mov	x0, x21
	bl	_assembly_data_offset
	cbz	x0, LBB0_6
; %bb.2:
	mov	x22, x0
Lloh11:
	adrp	x8, _ASSEMBLYTABLE@GOTPAGE
Lloh12:
	ldr	x8, [x8, _ASSEMBLYTABLE@GOTPAGEOFF]
Lloh13:
	ldr	w0, [x8]
Lloh14:
	adrp	x8, _PublicKey@GOTPAGE
Lloh15:
	ldr	x8, [x8, _PublicKey@GOTPAGEOFF]
Lloh16:
	ldr	w1, [x8]
	bl	_FIELD_OFFSET
	ldr	w1, [x22, w0, sxtw #2]
	sub	x2, x29, #140
	mov	x0, x21
	bl	_assembly_get_blob
	mov	x21, x0
Lloh17:
	adrp	x8, _BCRYPT_SHA1_ALGORITHM@GOTPAGE
Lloh18:
	ldr	x8, [x8, _BCRYPT_SHA1_ALGORITHM@GOTPAGEOFF]
Lloh19:
	ldr	w1, [x8]
Lloh20:
	adrp	x8, _MS_PRIMITIVE_PROVIDER@GOTPAGE
Lloh21:
	ldr	x8, [x8, _MS_PRIMITIVE_PROVIDER@GOTPAGEOFF]
Lloh22:
	ldr	w2, [x8]
	sub	x0, x29, #144
	mov	w3, #0
	bl	_BCryptOpenAlgorithmProvider
Lloh23:
	adrp	x22, _STATUS_SUCCESS@GOTPAGE
Lloh24:
	ldr	x22, [x22, _STATUS_SUCCESS@GOTPAGEOFF]
	ldr	x8, [x22]
	cmp	x0, x8
	b.ne	LBB0_6
; %bb.3:
	ldp	w0, w4, [x29, #-144]
	mov	w24, #80
	sub	x5, x29, #136
	mov	x1, #0
	mov	w2, #0
	mov	x3, x21
	mov	w6, #80
	bl	_BCryptHash
	ldr	x8, [x22]
	cmp	x0, x8
	b.ne	LBB0_9
; %bb.4:
	stur	w24, [x29, #-140]
	ldur	q0, [x29, #168]
	ldur	q1, [x29, #152]
	rev64.4s	v0, v0
	ext.16b	v0, v0, v0, #8
	rev64.4s	v1, v1
	ext.16b	v1, v1, v1, #8
	stp	q0, q1, [x20]
Lloh25:
	adrp	x8, _TOKEN_LENGTH@GOTPAGE
Lloh26:
	ldr	x8, [x8, _TOKEN_LENGTH@GOTPAGEOFF]
Lloh27:
	ldr	w8, [x8]
	lsl	w8, w8, #2
	add	w0, w8, #4
	bl	_heap_alloc
	cbz	x0, LBB0_10
; %bb.5:
	mov	x21, x0
	mov	x0, x20
	mov	x1, x21
	bl	_token_to_str
	str	x21, [x19]
Lloh28:
	adrp	x8, _S_OK@GOTPAGE
Lloh29:
	ldr	x8, [x8, _S_OK@GOTPAGEOFF]
	b	LBB0_11
LBB0_6:
Lloh30:
	adrp	x8, _E_FAIL@GOTPAGE
Lloh31:
	ldr	x8, [x8, _E_FAIL@GOTPAGEOFF]
Lloh32:
	ldr	w19, [x8]
LBB0_7:
	mov	sp, x23
	ldur	x8, [x29, #-56]
Lloh33:
	adrp	x9, ___stack_chk_guard@GOTPAGE
Lloh34:
	ldr	x9, [x9, ___stack_chk_guard@GOTPAGEOFF]
Lloh35:
	ldr	x9, [x9]
	cmp	x9, x8
	b.ne	LBB0_12
; %bb.8:
	mov	x0, x19
	sub	sp, x29, #48
	ldp	x29, x30, [sp, #48]             ; 16-byte Folded Reload
	ldp	x20, x19, [sp, #32]             ; 16-byte Folded Reload
	ldp	x22, x21, [sp, #16]             ; 16-byte Folded Reload
	ldp	x24, x23, [sp], #64             ; 16-byte Folded Reload
	ret
LBB0_9:
Lloh36:
	adrp	x8, _E_FAIL@GOTPAGE
Lloh37:
	ldr	x8, [x8, _E_FAIL@GOTPAGEOFF]
	b	LBB0_11
LBB0_10:
Lloh38:
	adrp	x8, _E_OUTOFMEMORY@GOTPAGE
Lloh39:
	ldr	x8, [x8, _E_OUTOFMEMORY@GOTPAGEOFF]
LBB0_11:
	ldr	w19, [x8]
	ldur	w0, [x29, #-144]
	mov	w1, #0
	bl	_BCryptCloseAlgorithmProvider
	b	LBB0_7
LBB0_12:
	bl	___stack_chk_fail
	.loh AdrpLdrGotLdr	Lloh8, Lloh9, Lloh10
	.loh AdrpLdrGot	Lloh6, Lloh7
	.loh AdrpLdrGotLdr	Lloh3, Lloh4, Lloh5
	.loh AdrpLdrGotLdr	Lloh0, Lloh1, Lloh2
	.loh AdrpLdrGot	Lloh23, Lloh24
	.loh AdrpLdrGotLdr	Lloh20, Lloh21, Lloh22
	.loh AdrpLdrGotLdr	Lloh17, Lloh18, Lloh19
	.loh AdrpLdrGotLdr	Lloh14, Lloh15, Lloh16
	.loh AdrpLdrGotLdr	Lloh11, Lloh12, Lloh13
	.loh AdrpLdrGotLdr	Lloh25, Lloh26, Lloh27
	.loh AdrpLdrGot	Lloh28, Lloh29
	.loh AdrpLdrGotLdr	Lloh30, Lloh31, Lloh32
	.loh AdrpLdrGotLdr	Lloh33, Lloh34, Lloh35
	.loh AdrpLdrGot	Lloh36, Lloh37
	.loh AdrpLdrGot	Lloh38, Lloh39
	.cfi_endproc
                                        ; -- End function
	.comm	_BYTES_PER_TOKEN,4,2            ; @BYTES_PER_TOKEN
	.comm	_E_FAIL,4,2                     ; @E_FAIL
	.comm	_mdtAssembly,4,2                ; @mdtAssembly
	.comm	_ASSEMBLYTABLE,4,2              ; @ASSEMBLYTABLE
	.comm	_PublicKey,4,2                  ; @PublicKey
	.comm	_BCRYPT_SHA1_ALGORITHM,4,2      ; @BCRYPT_SHA1_ALGORITHM
	.comm	_MS_PRIMITIVE_PROVIDER,4,2      ; @MS_PRIMITIVE_PROVIDER
	.comm	_STATUS_SUCCESS,8,3             ; @STATUS_SUCCESS
	.comm	_TOKEN_LENGTH,4,2               ; @TOKEN_LENGTH
	.comm	_E_OUTOFMEMORY,4,2              ; @E_OUTOFMEMORY
	.comm	_S_OK,4,2                       ; @S_OK
.subsections_via_symbols
