	.file	"90764927.c"
	.intel_syntax noprefix
	.text
	.globl	print_types
	.bss
	.align 4
	.type	print_types, @object
	.size	print_types, 4
print_types:
	.zero	4
	.globl	print_id_and_len
	.data
	.align 4
	.type	print_id_and_len, @object
	.size	print_id_and_len, 4
print_id_and_len:
	.long	1
	.globl	print_constructed_length
	.align 4
	.type	print_constructed_length, @object
	.size	print_constructed_length, 4
print_constructed_length:
	.long	1
	.globl	print_primitive_length
	.align 4
	.type	print_primitive_length, @object
	.size	print_primitive_length, 4
print_primitive_length:
	.long	1
	.globl	print_skip_context
	.bss
	.align 4
	.type	print_skip_context, @object
	.size	print_skip_context, 4
print_skip_context:
	.zero	4
	.globl	print_skip_tagnum
	.data
	.align 4
	.type	print_skip_tagnum, @object
	.size	print_skip_tagnum, 4
print_skip_tagnum:
	.long	1
	.globl	print_context_shortcut
	.bss
	.align 4
	.type	print_context_shortcut, @object
	.size	print_context_shortcut, 4
print_context_shortcut:
	.zero	4
	.globl	do_hex
	.align 4
	.type	do_hex, @object
	.size	do_hex, 4
do_hex:
	.zero	4
	.globl	print_krb5_types
	.align 4
	.type	print_krb5_types, @object
	.size	print_krb5_types, 4
print_krb5_types:
	.zero	4
	.globl	current_appl_type
	.data
	.align 4
	.type	current_appl_type, @object
	.size	current_appl_type, 4
current_appl_type:
	.long	-1
	.text
	.type	convert_nibble, @function
convert_nibble:
.LFB6:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	DWORD PTR -4[rbp], edi
	call	__ctype_b_loc@PLT
	mov	rdx, QWORD PTR [rax]
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	add	rax, rax
	add	rax, rdx
	movzx	eax, WORD PTR [rax]
	movzx	eax, ax
	and	eax, 2048
	test	eax, eax
	je	.L2
	mov	eax, DWORD PTR -4[rbp]
	sub	eax, 48
	jmp	.L3
.L2:
	cmp	DWORD PTR -4[rbp], 96
	jle	.L4
	cmp	DWORD PTR -4[rbp], 102
	jg	.L4
	mov	eax, DWORD PTR -4[rbp]
	sub	eax, 87
	jmp	.L3
.L4:
	cmp	DWORD PTR -4[rbp], 64
	jle	.L5
	cmp	DWORD PTR -4[rbp], 70
	jg	.L5
	mov	eax, DWORD PTR -4[rbp]
	sub	eax, 55
	jmp	.L3
.L5:
	mov	eax, -1
.L3:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE6:
	.size	convert_nibble, .-convert_nibble
	.section	.rodata
.LC0:
	.string	"<%d>"
	.text
	.globl	trval
	.type	trval, @function
trval:
.LFB7:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 64
	mov	QWORD PTR -56[rbp], rdi
	mov	QWORD PTR -64[rbp], rsi
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	DWORD PTR -44[rbp], 8192
	mov	eax, DWORD PTR -44[rbp]
	mov	rdi, rax
	call	malloc@PLT
	mov	QWORD PTR -16[rbp], rax
	mov	DWORD PTR -40[rbp], 0
	jmp	.L7
.L14:
	mov	eax, DWORD PTR -40[rbp]
	cmp	DWORD PTR -44[rbp], eax
	jne	.L8
	add	DWORD PTR -44[rbp], 8192
	mov	edx, DWORD PTR -44[rbp]
	mov	rax, QWORD PTR -16[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	realloc@PLT
	mov	QWORD PTR -16[rbp], rax
.L8:
	mov	eax, DWORD PTR do_hex[rip]
	test	eax, eax
	je	.L9
	cmp	DWORD PTR -36[rbp], 32
	je	.L7
	cmp	DWORD PTR -36[rbp], 10
	je	.L7
	cmp	DWORD PTR -36[rbp], 9
	jne	.L11
	jmp	.L7
.L11:
	mov	rax, QWORD PTR -56[rbp]
	mov	rdi, rax
	call	fgetc@PLT
	mov	DWORD PTR -32[rbp], eax
	cmp	DWORD PTR -32[rbp], -1
	je	.L17
	mov	eax, DWORD PTR -36[rbp]
	mov	edi, eax
	call	convert_nibble
	mov	DWORD PTR -28[rbp], eax
	mov	eax, DWORD PTR -32[rbp]
	mov	edi, eax
	call	convert_nibble
	mov	DWORD PTR -24[rbp], eax
	mov	eax, DWORD PTR -28[rbp]
	sal	eax, 4
	mov	edx, eax
	mov	eax, DWORD PTR -24[rbp]
	add	eax, edx
	mov	DWORD PTR -36[rbp], eax
.L9:
	mov	eax, DWORD PTR -40[rbp]
	lea	edx, 1[rax]
	mov	DWORD PTR -40[rbp], edx
	movsx	rdx, eax
	mov	rax, QWORD PTR -16[rbp]
	add	rax, rdx
	mov	edx, DWORD PTR -36[rbp]
	mov	BYTE PTR [rax], dl
.L7:
	mov	rax, QWORD PTR -56[rbp]
	mov	rdi, rax
	call	fgetc@PLT
	mov	DWORD PTR -36[rbp], eax
	cmp	DWORD PTR -36[rbp], -1
	jne	.L14
	jmp	.L13
.L17:
	nop
.L13:
	mov	edx, DWORD PTR -40[rbp]
	mov	rax, QWORD PTR -64[rbp]
	lea	rsi, .LC0[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	lea	rcx, -48[rbp]
	mov	edx, DWORD PTR -40[rbp]
	mov	rsi, QWORD PTR -16[rbp]
	mov	rax, QWORD PTR -64[rbp]
	mov	r8, rcx
	mov	ecx, 0
	mov	rdi, rax
	call	trval2
	mov	DWORD PTR -20[rbp], eax
	mov	rax, QWORD PTR -64[rbp]
	mov	rsi, rax
	mov	edi, 10
	call	fputc@PLT
	mov	rax, QWORD PTR -16[rbp]
	mov	rdi, rax
	call	free@PLT
	mov	eax, DWORD PTR -20[rbp]
	mov	rcx, QWORD PTR -8[rbp]
	sub	rcx, QWORD PTR fs:40
	je	.L16
	call	__stack_chk_fail@PLT
.L16:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE7:
	.size	trval, .-trval
	.section	.rodata
	.align 8
.LC1:
	.string	"missing id and length octets (%d)\n"
.LC2:
	.string	".  "
.LC3:
	.string	"%02x "
	.align 8
.LC4:
	.string	"indefinite length encoding not implemented (0x%02x)\n"
	.align 8
.LC5:
	.string	"extended length too long (%d > %d - 2)\n"
	.align 8
.LC6:
	.string	"length too long (%d > %d - 2 - %d)\n"
.LC7:
	.string	"constr "
	.text
	.globl	trval2
	.type	trval2, @function
trval2:
.LFB8:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 80
	mov	QWORD PTR -56[rbp], rdi
	mov	QWORD PTR -64[rbp], rsi
	mov	DWORD PTR -68[rbp], edx
	mov	DWORD PTR -72[rbp], ecx
	mov	QWORD PTR -80[rbp], r8
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	DWORD PTR -16[rbp], 0
	mov	DWORD PTR -20[rbp], 0
	cmp	DWORD PTR -68[rbp], 1
	jg	.L19
	mov	edx, DWORD PTR -68[rbp]
	mov	rax, QWORD PTR -56[rbp]
	lea	rsi, .LC1[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	eax, -1
	jmp	.L34
.L19:
	mov	rax, QWORD PTR -56[rbp]
	mov	rsi, rax
	mov	edi, 10
	call	fputc@PLT
	mov	DWORD PTR -32[rbp], 0
	jmp	.L21
.L22:
	mov	rax, QWORD PTR -56[rbp]
	mov	rcx, rax
	mov	edx, 3
	mov	esi, 1
	lea	rdi, .LC2[rip]
	call	fwrite@PLT
	add	DWORD PTR -32[rbp], 1
.L21:
	mov	eax, DWORD PTR -32[rbp]
	cmp	eax, DWORD PTR -72[rbp]
	jl	.L22
	nop
.L23:
	mov	rax, QWORD PTR -64[rbp]
	movzx	eax, BYTE PTR [rax]
	movzx	eax, al
	mov	DWORD PTR -12[rbp], eax
	mov	rax, QWORD PTR -64[rbp]
	add	rax, 1
	movzx	eax, BYTE PTR [rax]
	movzx	eax, al
	mov	DWORD PTR -28[rbp], eax
	mov	eax, DWORD PTR print_id_and_len[rip]
	test	eax, eax
	je	.L24
	mov	edx, DWORD PTR -12[rbp]
	mov	rax, QWORD PTR -56[rbp]
	lea	rsi, .LC3[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	edx, DWORD PTR -28[rbp]
	mov	rax, QWORD PTR -56[rbp]
	lea	rsi, .LC3[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
.L24:
	cmp	DWORD PTR -28[rbp], 128
	jne	.L25
	mov	edx, DWORD PTR -28[rbp]
	mov	rax, QWORD PTR -56[rbp]
	lea	rsi, .LC4[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	eax, -1
	jmp	.L34
.L25:
	mov	DWORD PTR -24[rbp], 0
	mov	eax, DWORD PTR -28[rbp]
	and	eax, 128
	test	eax, eax
	je	.L26
	mov	eax, DWORD PTR -28[rbp]
	and	eax, 127
	mov	DWORD PTR -24[rbp], eax
	mov	eax, DWORD PTR -68[rbp]
	sub	eax, 1
	cmp	DWORD PTR -24[rbp], eax
	jl	.L27
	mov	ecx, DWORD PTR -68[rbp]
	mov	edx, DWORD PTR -24[rbp]
	mov	rax, QWORD PTR -56[rbp]
	lea	rsi, .LC5[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	eax, -1
	jmp	.L34
.L27:
	mov	rax, QWORD PTR -64[rbp]
	lea	rcx, 2[rax]
	mov	edx, DWORD PTR -24[rbp]
	mov	rax, QWORD PTR -56[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	decode_len
	mov	DWORD PTR -28[rbp], eax
.L26:
	mov	eax, DWORD PTR -68[rbp]
	sub	eax, 2
	sub	eax, DWORD PTR -24[rbp]
	cmp	DWORD PTR -28[rbp], eax
	jle	.L28
	mov	esi, DWORD PTR -24[rbp]
	mov	ecx, DWORD PTR -68[rbp]
	mov	edx, DWORD PTR -28[rbp]
	mov	rax, QWORD PTR -56[rbp]
	mov	r8d, esi
	lea	rsi, .LC6[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	eax, -1
	jmp	.L34
.L28:
	mov	edx, DWORD PTR -72[rbp]
	mov	ecx, DWORD PTR -12[rbp]
	mov	rax, QWORD PTR -56[rbp]
	mov	esi, ecx
	mov	rdi, rax
	call	print_tag_type
	mov	eax, DWORD PTR print_context_shortcut[rip]
	test	eax, eax
	je	.L29
	mov	eax, DWORD PTR -12[rbp]
	and	eax, 192
	cmp	eax, 128
	jne	.L29
	cmp	DWORD PTR -72[rbp], 0
	jle	.L29
	mov	eax, DWORD PTR -24[rbp]
	add	eax, 2
	add	DWORD PTR -16[rbp], eax
	mov	eax, DWORD PTR -24[rbp]
	add	eax, 2
	cdqe
	add	QWORD PTR -64[rbp], rax
	jmp	.L23
.L29:
	mov	eax, DWORD PTR -12[rbp]
	and	eax, 32
	test	eax, eax
	je	.L30
	cmp	eax, 32
	je	.L31
	jmp	.L32
.L30:
	mov	eax, DWORD PTR -72[rbp]
	lea	ecx, 1[rax]
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	lea	rdx, 2[rax]
	mov	rax, QWORD PTR -64[rbp]
	lea	rdi, [rdx+rax]
	mov	eax, DWORD PTR -12[rbp]
	and	eax, 31
	mov	esi, eax
	mov	edx, DWORD PTR -28[rbp]
	mov	rax, QWORD PTR -56[rbp]
	mov	r8d, ecx
	mov	ecx, edx
	mov	rdx, rdi
	mov	rdi, rax
	call	do_prim
	mov	DWORD PTR -20[rbp], eax
	mov	eax, DWORD PTR -24[rbp]
	lea	edx, 2[rax]
	mov	eax, DWORD PTR -28[rbp]
	add	edx, eax
	mov	eax, DWORD PTR -16[rbp]
	add	edx, eax
	mov	rax, QWORD PTR -80[rbp]
	mov	DWORD PTR [rax], edx
	jmp	.L32
.L31:
	mov	eax, DWORD PTR print_constructed_length[rip]
	test	eax, eax
	je	.L33
	mov	rax, QWORD PTR -56[rbp]
	mov	rcx, rax
	mov	edx, 7
	mov	esi, 1
	lea	rdi, .LC7[rip]
	call	fwrite@PLT
	mov	edx, DWORD PTR -28[rbp]
	mov	rax, QWORD PTR -56[rbp]
	lea	rsi, .LC0[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
.L33:
	mov	eax, DWORD PTR -72[rbp]
	lea	ecx, 1[rax]
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	lea	rdx, 2[rax]
	mov	rax, QWORD PTR -64[rbp]
	lea	rsi, [rdx+rax]
	lea	rdi, -36[rbp]
	mov	edx, DWORD PTR -28[rbp]
	mov	rax, QWORD PTR -56[rbp]
	mov	r8, rdi
	mov	rdi, rax
	call	do_cons
	mov	DWORD PTR -20[rbp], eax
	mov	eax, DWORD PTR -24[rbp]
	lea	edx, 2[rax]
	mov	eax, DWORD PTR -36[rbp]
	add	edx, eax
	mov	eax, DWORD PTR -16[rbp]
	add	edx, eax
	mov	rax, QWORD PTR -80[rbp]
	mov	DWORD PTR [rax], edx
	nop
.L32:
	mov	eax, DWORD PTR -20[rbp]
.L34:
	mov	rcx, QWORD PTR -8[rbp]
	sub	rcx, QWORD PTR fs:40
	je	.L35
	call	__stack_chk_fail@PLT
.L35:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE8:
	.size	trval2, .-trval2
	.globl	decode_len
	.type	decode_len, @function
decode_len:
.LFB9:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 48
	mov	QWORD PTR -24[rbp], rdi
	mov	QWORD PTR -32[rbp], rsi
	mov	DWORD PTR -36[rbp], edx
	mov	eax, DWORD PTR print_id_and_len[rip]
	test	eax, eax
	je	.L37
	mov	rax, QWORD PTR -32[rbp]
	movzx	eax, BYTE PTR [rax]
	movzx	edx, al
	mov	rax, QWORD PTR -24[rbp]
	lea	rsi, .LC3[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
.L37:
	mov	rax, QWORD PTR -32[rbp]
	movzx	eax, BYTE PTR [rax]
	movzx	eax, al
	mov	DWORD PTR -8[rbp], eax
	mov	DWORD PTR -4[rbp], 1
	jmp	.L38
.L40:
	mov	eax, DWORD PTR print_id_and_len[rip]
	test	eax, eax
	je	.L39
	mov	eax, DWORD PTR -4[rbp]
	movsx	rdx, eax
	mov	rax, QWORD PTR -32[rbp]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	movzx	edx, al
	mov	rax, QWORD PTR -24[rbp]
	lea	rsi, .LC3[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
.L39:
	mov	eax, DWORD PTR -8[rbp]
	sal	eax, 8
	mov	ecx, eax
	mov	eax, DWORD PTR -4[rbp]
	movsx	rdx, eax
	mov	rax, QWORD PTR -32[rbp]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	movzx	eax, al
	add	eax, ecx
	mov	DWORD PTR -8[rbp], eax
	add	DWORD PTR -4[rbp], 1
.L38:
	mov	eax, DWORD PTR -4[rbp]
	cmp	eax, DWORD PTR -36[rbp]
	jl	.L40
	mov	eax, DWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE9:
	.size	decode_len, .-decode_len
	.section	.rodata
.LC8:
	.string	"0x%lx"
.LC9:
	.string	" (%d unused bits)"
	.text
	.globl	do_prim_bitstring
	.type	do_prim_bitstring, @function
do_prim_bitstring:
.LFB10:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 48
	mov	QWORD PTR -24[rbp], rdi
	mov	DWORD PTR -28[rbp], esi
	mov	QWORD PTR -40[rbp], rdx
	mov	DWORD PTR -32[rbp], ecx
	mov	DWORD PTR -44[rbp], r8d
	mov	QWORD PTR -8[rbp], 0
	cmp	DWORD PTR -28[rbp], 3
	jne	.L43
	cmp	DWORD PTR -32[rbp], 5
	jle	.L44
.L43:
	mov	eax, 0
	jmp	.L45
.L44:
	mov	DWORD PTR -12[rbp], 1
	jmp	.L46
.L47:
	sal	QWORD PTR -8[rbp], 8
	mov	eax, DWORD PTR -12[rbp]
	movsx	rdx, eax
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	movzx	eax, al
	add	QWORD PTR -8[rbp], rax
	add	DWORD PTR -12[rbp], 1
.L46:
	mov	eax, DWORD PTR -12[rbp]
	cmp	eax, DWORD PTR -32[rbp]
	jl	.L47
	mov	rdx, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	lea	rsi, .LC8[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	rax, QWORD PTR -40[rbp]
	movzx	eax, BYTE PTR [rax]
	test	al, al
	je	.L48
	mov	rax, QWORD PTR -40[rbp]
	movzx	eax, BYTE PTR [rax]
	movzx	edx, al
	mov	rax, QWORD PTR -24[rbp]
	lea	rsi, .LC9[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
.L48:
	mov	eax, 1
.L45:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE10:
	.size	do_prim_bitstring, .-do_prim_bitstring
	.section	.rodata
.LC10:
	.string	"%ld"
	.text
	.globl	do_prim_int
	.type	do_prim_int, @function
do_prim_int:
.LFB11:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 48
	mov	QWORD PTR -24[rbp], rdi
	mov	DWORD PTR -28[rbp], esi
	mov	QWORD PTR -40[rbp], rdx
	mov	DWORD PTR -32[rbp], ecx
	mov	DWORD PTR -44[rbp], r8d
	mov	QWORD PTR -8[rbp], 0
	cmp	DWORD PTR -28[rbp], 2
	jne	.L50
	cmp	DWORD PTR -32[rbp], 4
	jle	.L51
.L50:
	mov	eax, 0
	jmp	.L52
.L51:
	mov	rax, QWORD PTR -40[rbp]
	movzx	eax, BYTE PTR [rax]
	test	al, al
	jns	.L53
	mov	QWORD PTR -8[rbp], -1
.L53:
	mov	DWORD PTR -12[rbp], 0
	jmp	.L54
.L55:
	sal	QWORD PTR -8[rbp], 8
	mov	eax, DWORD PTR -12[rbp]
	movsx	rdx, eax
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	movzx	eax, al
	add	QWORD PTR -8[rbp], rax
	add	DWORD PTR -12[rbp], 1
.L54:
	mov	eax, DWORD PTR -12[rbp]
	cmp	eax, DWORD PTR -32[rbp]
	jl	.L55
	mov	rdx, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	lea	rsi, .LC10[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	eax, 1
.L52:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE11:
	.size	do_prim_int, .-do_prim_int
	.section	.rodata
.LC11:
	.string	"\"%.*s\""
	.text
	.globl	do_prim_string
	.type	do_prim_string, @function
do_prim_string:
.LFB12:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 48
	mov	QWORD PTR -24[rbp], rdi
	mov	DWORD PTR -28[rbp], esi
	mov	QWORD PTR -40[rbp], rdx
	mov	DWORD PTR -32[rbp], ecx
	mov	DWORD PTR -44[rbp], r8d
	cmp	DWORD PTR -28[rbp], 17
	jg	.L57
	cmp	DWORD PTR -28[rbp], 4
	je	.L57
	mov	eax, 0
	jmp	.L58
.L57:
	mov	DWORD PTR -4[rbp], 0
	jmp	.L59
.L61:
	call	__ctype_b_loc@PLT
	mov	rdx, QWORD PTR [rax]
	mov	eax, DWORD PTR -4[rbp]
	movsx	rcx, eax
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rcx
	movzx	eax, BYTE PTR [rax]
	movzx	eax, al
	add	rax, rax
	add	rax, rdx
	movzx	eax, WORD PTR [rax]
	movzx	eax, ax
	and	eax, 16384
	test	eax, eax
	jne	.L60
	mov	eax, 0
	jmp	.L58
.L60:
	add	DWORD PTR -4[rbp], 1
.L59:
	mov	eax, DWORD PTR -4[rbp]
	cmp	eax, DWORD PTR -32[rbp]
	jl	.L61
	mov	rcx, QWORD PTR -40[rbp]
	mov	edx, DWORD PTR -32[rbp]
	mov	rax, QWORD PTR -24[rbp]
	lea	rsi, .LC11[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	eax, 1
.L58:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE12:
	.size	do_prim_string, .-do_prim_string
	.section	.rodata
.LC12:
	.string	"   "
.LC13:
	.string	"    "
	.text
	.globl	do_prim
	.type	do_prim, @function
do_prim:
.LFB13:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 48
	mov	QWORD PTR -24[rbp], rdi
	mov	DWORD PTR -28[rbp], esi
	mov	QWORD PTR -40[rbp], rdx
	mov	DWORD PTR -32[rbp], ecx
	mov	DWORD PTR -44[rbp], r8d
	mov	edi, DWORD PTR -44[rbp]
	mov	ecx, DWORD PTR -32[rbp]
	mov	rdx, QWORD PTR -40[rbp]
	mov	esi, DWORD PTR -28[rbp]
	mov	rax, QWORD PTR -24[rbp]
	mov	r8d, edi
	mov	rdi, rax
	call	do_prim_string
	test	eax, eax
	je	.L63
	mov	eax, 0
	jmp	.L64
.L63:
	mov	edi, DWORD PTR -44[rbp]
	mov	ecx, DWORD PTR -32[rbp]
	mov	rdx, QWORD PTR -40[rbp]
	mov	esi, DWORD PTR -28[rbp]
	mov	rax, QWORD PTR -24[rbp]
	mov	r8d, edi
	mov	rdi, rax
	call	do_prim_int
	test	eax, eax
	je	.L65
	mov	eax, 0
	jmp	.L64
.L65:
	mov	edi, DWORD PTR -44[rbp]
	mov	ecx, DWORD PTR -32[rbp]
	mov	rdx, QWORD PTR -40[rbp]
	mov	esi, DWORD PTR -28[rbp]
	mov	rax, QWORD PTR -24[rbp]
	mov	r8d, edi
	mov	rdi, rax
	call	do_prim_bitstring
	test	eax, eax
	je	.L66
	mov	eax, 0
	jmp	.L64
.L66:
	mov	eax, DWORD PTR print_primitive_length[rip]
	test	eax, eax
	je	.L67
	mov	edx, DWORD PTR -32[rbp]
	mov	rax, QWORD PTR -24[rbp]
	lea	rsi, .LC0[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
.L67:
	mov	eax, DWORD PTR -44[rbp]
	mov	ecx, eax
	lea	edx, 0[0+rax*4]
	mov	eax, ecx
	sub	eax, edx
	add	eax, 72
	lea	edx, 3[rax]
	test	eax, eax
	cmovs	eax, edx
	sar	eax, 2
	mov	DWORD PTR -8[rbp], eax
	mov	DWORD PTR -16[rbp], 0
	jmp	.L68
.L77:
	mov	eax, DWORD PTR -16[rbp]
	cdq
	idiv	DWORD PTR -8[rbp]
	mov	eax, edx
	test	eax, eax
	jne	.L69
	mov	rax, QWORD PTR -24[rbp]
	mov	rsi, rax
	mov	edi, 10
	call	fputc@PLT
	mov	DWORD PTR -12[rbp], 0
	jmp	.L70
.L71:
	mov	rax, QWORD PTR -24[rbp]
	mov	rcx, rax
	mov	edx, 3
	mov	esi, 1
	lea	rdi, .LC12[rip]
	call	fwrite@PLT
	add	DWORD PTR -12[rbp], 1
.L70:
	mov	eax, DWORD PTR -12[rbp]
	cmp	eax, DWORD PTR -44[rbp]
	jl	.L71
.L69:
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	movzx	edx, al
	mov	rax, QWORD PTR -24[rbp]
	lea	rsi, .LC3[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	eax, DWORD PTR -16[rbp]
	cdq
	idiv	DWORD PTR -8[rbp]
	mov	eax, DWORD PTR -8[rbp]
	sub	eax, 1
	cmp	edx, eax
	jne	.L72
	mov	rax, QWORD PTR -24[rbp]
	mov	rcx, rax
	mov	edx, 4
	mov	esi, 1
	lea	rdi, .LC13[rip]
	call	fwrite@PLT
	mov	eax, DWORD PTR -8[rbp]
	lea	edx, -1[rax]
	mov	eax, DWORD PTR -16[rbp]
	sub	eax, edx
	mov	DWORD PTR -12[rbp], eax
	jmp	.L73
.L76:
	call	__ctype_b_loc@PLT
	mov	rdx, QWORD PTR [rax]
	mov	eax, DWORD PTR -12[rbp]
	movsx	rcx, eax
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rcx
	movzx	eax, BYTE PTR [rax]
	movzx	eax, al
	add	rax, rax
	add	rax, rdx
	movzx	eax, WORD PTR [rax]
	movzx	eax, ax
	and	eax, 16384
	test	eax, eax
	je	.L74
	mov	eax, DWORD PTR -12[rbp]
	movsx	rdx, eax
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	movzx	eax, al
	mov	rdx, QWORD PTR -24[rbp]
	mov	rsi, rdx
	mov	edi, eax
	call	fputc@PLT
	jmp	.L75
.L74:
	mov	rax, QWORD PTR -24[rbp]
	mov	rsi, rax
	mov	edi, 46
	call	fputc@PLT
.L75:
	add	DWORD PTR -12[rbp], 1
.L73:
	mov	eax, DWORD PTR -12[rbp]
	cmp	eax, DWORD PTR -16[rbp]
	jle	.L76
.L72:
	add	DWORD PTR -16[rbp], 1
.L68:
	mov	eax, DWORD PTR -16[rbp]
	cmp	eax, DWORD PTR -32[rbp]
	jl	.L77
	mov	eax, DWORD PTR -16[rbp]
	cdq
	idiv	DWORD PTR -8[rbp]
	mov	DWORD PTR -4[rbp], edx
	cmp	DWORD PTR -4[rbp], 0
	je	.L78
	mov	rax, QWORD PTR -24[rbp]
	mov	rcx, rax
	mov	edx, 4
	mov	esi, 1
	lea	rdi, .LC13[rip]
	call	fwrite@PLT
	mov	DWORD PTR -12[rbp], 0
	jmp	.L79
.L80:
	mov	rax, QWORD PTR -24[rbp]
	mov	rcx, rax
	mov	edx, 3
	mov	esi, 1
	lea	rdi, .LC12[rip]
	call	fwrite@PLT
	add	DWORD PTR -12[rbp], 1
.L79:
	mov	eax, DWORD PTR -8[rbp]
	sub	eax, DWORD PTR -4[rbp]
	cmp	DWORD PTR -12[rbp], eax
	jl	.L80
	mov	eax, DWORD PTR -16[rbp]
	sub	eax, DWORD PTR -4[rbp]
	mov	DWORD PTR -12[rbp], eax
	jmp	.L81
.L84:
	call	__ctype_b_loc@PLT
	mov	rdx, QWORD PTR [rax]
	mov	eax, DWORD PTR -12[rbp]
	movsx	rcx, eax
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rcx
	movzx	eax, BYTE PTR [rax]
	movzx	eax, al
	add	rax, rax
	add	rax, rdx
	movzx	eax, WORD PTR [rax]
	movzx	eax, ax
	and	eax, 16384
	test	eax, eax
	je	.L82
	mov	eax, DWORD PTR -12[rbp]
	movsx	rdx, eax
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	movzx	eax, al
	mov	rdx, QWORD PTR -24[rbp]
	mov	rsi, rdx
	mov	edi, eax
	call	fputc@PLT
	jmp	.L83
.L82:
	mov	rax, QWORD PTR -24[rbp]
	mov	rsi, rax
	mov	edi, 46
	call	fputc@PLT
.L83:
	add	DWORD PTR -12[rbp], 1
.L81:
	mov	eax, DWORD PTR -12[rbp]
	cmp	eax, DWORD PTR -16[rbp]
	jl	.L84
.L78:
	mov	eax, 0
.L64:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE13:
	.size	do_prim, .-do_prim
	.section	.rodata
	.align 8
.LC14:
	.string	"inconsistent constructed lengths (%d != %d)\n"
	.text
	.globl	do_cons
	.type	do_cons, @function
do_cons:
.LFB14:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 64
	mov	QWORD PTR -40[rbp], rdi
	mov	QWORD PTR -48[rbp], rsi
	mov	DWORD PTR -52[rbp], edx
	mov	DWORD PTR -56[rbp], ecx
	mov	QWORD PTR -64[rbp], r8
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	DWORD PTR -20[rbp], 0
	mov	eax, DWORD PTR current_appl_type[rip]
	mov	DWORD PTR -12[rbp], eax
	mov	DWORD PTR -24[rbp], 0
	mov	DWORD PTR -16[rbp], 0
	jmp	.L86
.L89:
	mov	eax, DWORD PTR -52[rbp]
	sub	eax, DWORD PTR -24[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -24[rbp]
	movsx	rcx, eax
	mov	rax, QWORD PTR -48[rbp]
	lea	rsi, [rcx+rax]
	lea	rdi, -28[rbp]
	mov	ecx, DWORD PTR -56[rbp]
	mov	rax, QWORD PTR -40[rbp]
	mov	r8, rdi
	mov	rdi, rax
	call	trval2
	mov	DWORD PTR -20[rbp], eax
	mov	eax, DWORD PTR -12[rbp]
	mov	DWORD PTR current_appl_type[rip], eax
	cmp	DWORD PTR -20[rbp], 0
	je	.L87
	mov	eax, DWORD PTR -20[rbp]
	jmp	.L91
.L87:
	mov	eax, DWORD PTR -28[rbp]
	add	DWORD PTR -24[rbp], eax
	mov	eax, DWORD PTR -28[rbp]
	add	DWORD PTR -16[rbp], eax
.L86:
	mov	eax, DWORD PTR -24[rbp]
	cmp	eax, DWORD PTR -52[rbp]
	jl	.L89
	mov	eax, DWORD PTR -16[rbp]
	cmp	eax, DWORD PTR -52[rbp]
	je	.L90
	mov	ecx, DWORD PTR -52[rbp]
	mov	edx, DWORD PTR -16[rbp]
	mov	rax, QWORD PTR -40[rbp]
	lea	rsi, .LC14[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	eax, -1
	jmp	.L91
.L90:
	mov	rax, QWORD PTR -64[rbp]
	mov	edx, DWORD PTR -16[rbp]
	mov	DWORD PTR [rax], edx
	mov	eax, DWORD PTR -20[rbp]
.L91:
	mov	rsi, QWORD PTR -8[rbp]
	sub	rsi, QWORD PTR fs:40
	je	.L92
	call	__stack_chk_fail@PLT
.L92:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE14:
	.size	do_cons, .-do_cons
	.type	lookup_typestring, @function
lookup_typestring:
.LFB15:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	QWORD PTR -24[rbp], rdi
	mov	DWORD PTR -28[rbp], esi
	mov	DWORD PTR -32[rbp], edx
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR -8[rbp], rax
	jmp	.L94
.L98:
	mov	rax, QWORD PTR -8[rbp]
	mov	eax, DWORD PTR [rax]
	cmp	DWORD PTR -28[rbp], eax
	jne	.L95
	mov	rax, QWORD PTR -8[rbp]
	mov	eax, DWORD PTR 4[rax]
	cmp	DWORD PTR -32[rbp], eax
	jne	.L95
	mov	rax, QWORD PTR -8[rbp]
	mov	eax, DWORD PTR 16[rax]
	test	eax, eax
	je	.L96
	mov	rax, QWORD PTR -8[rbp]
	mov	eax, DWORD PTR 16[rax]
	mov	DWORD PTR current_appl_type[rip], eax
.L96:
	mov	rax, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR 8[rax]
	jmp	.L97
.L95:
	add	QWORD PTR -8[rbp], 24
.L94:
	mov	rax, QWORD PTR -8[rbp]
	mov	eax, DWORD PTR [rax]
	test	eax, eax
	jg	.L98
	mov	eax, 0
.L97:
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE15:
	.size	lookup_typestring, .-lookup_typestring
	.globl	univ_types
	.section	.rodata
.LC15:
	.string	"Boolean"
.LC16:
	.string	"Integer"
.LC17:
	.string	"Bit String"
.LC18:
	.string	"Octet String"
.LC19:
	.string	"Null"
.LC20:
	.string	"Object Identifier"
.LC21:
	.string	"Object Descriptor"
.LC22:
	.string	"External"
.LC23:
	.string	"Real"
.LC24:
	.string	"Enumerated type"
.LC25:
	.string	"Encrypted"
.LC26:
	.string	"Sequence/Sequence Of"
.LC27:
	.string	"Set/Set Of"
.LC28:
	.string	"Numeric String"
.LC29:
	.string	"Printable String"
.LC30:
	.string	"T.61 String"
.LC31:
	.string	"Videotex String"
.LC32:
	.string	"IA5 String"
.LC33:
	.string	"UTCTime"
.LC34:
	.string	"Generalized Time"
.LC35:
	.string	"Graphics string (ISO2375)"
.LC36:
	.string	"Visible string"
.LC37:
	.string	"General string"
.LC38:
	.string	"Character string"
	.section	.data.rel.local,"aw"
	.align 32
	.type	univ_types, @object
	.size	univ_types, 600
univ_types:
	.long	1
	.long	-1
	.quad	.LC15
	.zero	8
	.long	2
	.long	-1
	.quad	.LC16
	.zero	8
	.long	3
	.long	-1
	.quad	.LC17
	.zero	8
	.long	4
	.long	-1
	.quad	.LC18
	.zero	8
	.long	5
	.long	-1
	.quad	.LC19
	.zero	8
	.long	6
	.long	-1
	.quad	.LC20
	.zero	8
	.long	7
	.long	-1
	.quad	.LC21
	.zero	8
	.long	8
	.long	-1
	.quad	.LC22
	.zero	8
	.long	9
	.long	-1
	.quad	.LC23
	.zero	8
	.long	10
	.long	-1
	.quad	.LC24
	.zero	8
	.long	11
	.long	-1
	.quad	.LC25
	.zero	8
	.long	16
	.long	-1
	.quad	.LC26
	.zero	8
	.long	17
	.long	-1
	.quad	.LC27
	.zero	8
	.long	18
	.long	-1
	.quad	.LC28
	.zero	8
	.long	19
	.long	-1
	.quad	.LC29
	.zero	8
	.long	20
	.long	-1
	.quad	.LC30
	.zero	8
	.long	21
	.long	-1
	.quad	.LC31
	.zero	8
	.long	22
	.long	-1
	.quad	.LC32
	.zero	8
	.long	23
	.long	-1
	.quad	.LC33
	.zero	8
	.long	24
	.long	-1
	.quad	.LC34
	.zero	8
	.long	25
	.long	-1
	.quad	.LC35
	.zero	8
	.long	26
	.long	-1
	.quad	.LC36
	.zero	8
	.long	27
	.long	-1
	.quad	.LC37
	.zero	8
	.long	28
	.long	-1
	.quad	.LC38
	.zero	8
	.long	-1
	.long	-1
	.quad	0
	.zero	8
	.globl	krb5_types
	.section	.rodata
.LC39:
	.string	"Krb5 Ticket"
.LC40:
	.string	"Krb5 Autenticator"
.LC41:
	.string	"Krb5 Encrypted ticket part"
.LC42:
	.string	"Krb5 AS-REQ packet"
.LC43:
	.string	"Krb5 AS-REP packet"
.LC44:
	.string	"Krb5 TGS-REQ packet"
.LC45:
	.string	"Krb5 TGS-REP packet"
.LC46:
	.string	"Krb5 AP-REQ packet"
.LC47:
	.string	"Krb5 AP-REP packet"
.LC48:
	.string	"Krb5 SAFE packet"
.LC49:
	.string	"Krb5 PRIV packet"
.LC50:
	.string	"Krb5 CRED packet"
.LC51:
	.string	"Krb5 ERROR packet"
.LC52:
	.string	"Krb5 Encrypted AS-REP part"
.LC53:
	.string	"Krb5 Encrypted TGS-REP part"
.LC54:
	.string	"Krb5 Encrypted AP-REP part"
.LC55:
	.string	"Krb5 Encrypted PRIV part"
.LC56:
	.string	"Krb5 Encrypted CRED part"
	.section	.data.rel.local
	.align 32
	.type	krb5_types, @object
	.size	krb5_types, 456
krb5_types:
	.long	1
	.long	-1
	.quad	.LC39
	.zero	8
	.long	2
	.long	-1
	.quad	.LC40
	.zero	8
	.long	3
	.long	-1
	.quad	.LC41
	.zero	8
	.long	10
	.long	-1
	.quad	.LC42
	.zero	8
	.long	11
	.long	-1
	.quad	.LC43
	.zero	8
	.long	12
	.long	-1
	.quad	.LC44
	.zero	8
	.long	13
	.long	-1
	.quad	.LC45
	.zero	8
	.long	14
	.long	-1
	.quad	.LC46
	.zero	8
	.long	15
	.long	-1
	.quad	.LC47
	.zero	8
	.long	20
	.long	-1
	.quad	.LC48
	.zero	8
	.long	21
	.long	-1
	.quad	.LC49
	.zero	8
	.long	22
	.long	-1
	.quad	.LC50
	.zero	8
	.long	30
	.long	-1
	.quad	.LC51
	.zero	8
	.long	25
	.long	-1
	.quad	.LC52
	.zero	8
	.long	26
	.long	-1
	.quad	.LC53
	.zero	8
	.long	27
	.long	-1
	.quad	.LC54
	.zero	8
	.long	28
	.long	-1
	.quad	.LC55
	.zero	8
	.long	29
	.long	-1
	.quad	.LC56
	.zero	8
	.long	-1
	.long	-1
	.quad	0
	.zero	8
	.globl	krb5_fields
	.section	.rodata
.LC57:
	.string	"name-type"
.LC58:
	.string	"name-string"
.LC59:
	.string	"etype"
.LC60:
	.string	"kvno"
.LC61:
	.string	"cipher"
.LC62:
	.string	"addr-type"
.LC63:
	.string	"address"
.LC64:
	.string	"ad-type"
.LC65:
	.string	"ad-data"
.LC66:
	.string	"keytype"
.LC67:
	.string	"keyvalue"
.LC68:
	.string	"cksumtype"
.LC69:
	.string	"checksum"
.LC70:
	.string	"kdc-options"
.LC71:
	.string	"cname"
.LC72:
	.string	"realm"
.LC73:
	.string	"sname"
.LC74:
	.string	"from"
.LC75:
	.string	"till"
.LC76:
	.string	"rtime"
.LC77:
	.string	"nonce"
.LC78:
	.string	"addresses"
.LC79:
	.string	"enc-authorization-data"
.LC80:
	.string	"additional-tickets"
.LC81:
	.string	"padata-type"
.LC82:
	.string	"pa-data"
.LC83:
	.string	"user-data"
.LC84:
	.string	"timestamp"
.LC85:
	.string	"usec"
.LC86:
	.string	"seq-number"
.LC87:
	.string	"s-address"
.LC88:
	.string	"r-address"
.LC89:
	.string	"lr-type"
.LC90:
	.string	"lr-value"
.LC91:
	.string	"key"
.LC92:
	.string	"prealm"
.LC93:
	.string	"pname"
.LC94:
	.string	"flags"
.LC95:
	.string	"authtime"
.LC96:
	.string	"startime"
.LC97:
	.string	"endtime"
.LC98:
	.string	"renew-till"
.LC99:
	.string	"srealm"
.LC100:
	.string	"caddr"
.LC101:
	.string	"tkt-vno"
.LC102:
	.string	"tkt-enc-part"
.LC103:
	.string	"authenticator-vno"
.LC104:
	.string	"crealm"
.LC105:
	.string	"cksum"
.LC106:
	.string	"cusec"
.LC107:
	.string	"ctime"
.LC108:
	.string	"subkey"
.LC109:
	.string	"authorization-data"
.LC110:
	.string	"transited"
.LC111:
	.string	"starttime"
.LC112:
	.string	"pvno"
.LC113:
	.string	"msg-type"
.LC114:
	.string	"padata"
.LC115:
	.string	"req-body"
.LC116:
	.string	"ticket"
.LC117:
	.string	"enc-part"
.LC118:
	.string	"ap-options"
.LC119:
	.string	"authenticator"
.LC120:
	.string	"safe-body"
.LC121:
	.string	"tickets"
.LC122:
	.string	"last-req"
.LC123:
	.string	"key-expiration"
.LC124:
	.string	"enddtime"
.LC125:
	.string	"ticket-info"
.LC126:
	.string	"stime"
.LC127:
	.string	"susec"
.LC128:
	.string	"error-code"
.LC129:
	.string	"e-text"
.LC130:
	.string	"e-data"
	.section	.data.rel.local
	.align 32
	.type	krb5_fields, @object
	.size	krb5_fields, 4008
krb5_fields:
	.long	1000
	.long	0
	.quad	.LC57
	.zero	8
	.long	1000
	.long	1
	.quad	.LC58
	.zero	8
	.long	1001
	.long	0
	.quad	.LC59
	.zero	8
	.long	1001
	.long	1
	.quad	.LC60
	.zero	8
	.long	1001
	.long	2
	.quad	.LC61
	.zero	8
	.long	1002
	.long	0
	.quad	.LC62
	.zero	8
	.long	1002
	.long	1
	.quad	.LC63
	.zero	8
	.long	1003
	.long	0
	.quad	.LC62
	.zero	8
	.long	1003
	.long	1
	.quad	.LC63
	.zero	8
	.long	1004
	.long	0
	.quad	.LC64
	.zero	8
	.long	1004
	.long	1
	.quad	.LC65
	.zero	8
	.long	1005
	.long	0
	.quad	.LC66
	.zero	8
	.long	1005
	.long	1
	.quad	.LC67
	.zero	8
	.long	1006
	.long	0
	.quad	.LC68
	.zero	8
	.long	1006
	.long	1
	.quad	.LC69
	.zero	8
	.long	1007
	.long	0
	.quad	.LC70
	.zero	8
	.long	1007
	.long	1
	.quad	.LC71
	.long	1000
	.zero	4
	.long	1007
	.long	2
	.quad	.LC72
	.zero	8
	.long	1007
	.long	3
	.quad	.LC73
	.long	1000
	.zero	4
	.long	1007
	.long	4
	.quad	.LC74
	.zero	8
	.long	1007
	.long	5
	.quad	.LC75
	.zero	8
	.long	1007
	.long	6
	.quad	.LC76
	.zero	8
	.long	1007
	.long	7
	.quad	.LC77
	.zero	8
	.long	1007
	.long	8
	.quad	.LC59
	.zero	8
	.long	1007
	.long	9
	.quad	.LC78
	.long	1003
	.zero	4
	.long	1007
	.long	10
	.quad	.LC79
	.long	1001
	.zero	4
	.long	1007
	.long	11
	.quad	.LC80
	.zero	8
	.long	1008
	.long	1
	.quad	.LC81
	.zero	8
	.long	1008
	.long	2
	.quad	.LC82
	.zero	8
	.long	1009
	.long	0
	.quad	.LC83
	.zero	8
	.long	1009
	.long	1
	.quad	.LC84
	.zero	8
	.long	1009
	.long	2
	.quad	.LC85
	.zero	8
	.long	1009
	.long	3
	.quad	.LC86
	.zero	8
	.long	1009
	.long	4
	.quad	.LC87
	.long	1002
	.zero	4
	.long	1009
	.long	5
	.quad	.LC88
	.long	1002
	.zero	4
	.long	1010
	.long	0
	.quad	.LC89
	.zero	8
	.long	1010
	.long	1
	.quad	.LC90
	.zero	8
	.long	1011
	.long	0
	.quad	.LC91
	.long	1005
	.zero	4
	.long	1011
	.long	1
	.quad	.LC92
	.zero	8
	.long	1011
	.long	2
	.quad	.LC93
	.long	1000
	.zero	4
	.long	1011
	.long	3
	.quad	.LC94
	.zero	8
	.long	1011
	.long	4
	.quad	.LC95
	.zero	8
	.long	1011
	.long	5
	.quad	.LC96
	.zero	8
	.long	1011
	.long	6
	.quad	.LC97
	.zero	8
	.long	1011
	.long	7
	.quad	.LC98
	.zero	8
	.long	1011
	.long	8
	.quad	.LC99
	.zero	8
	.long	1011
	.long	9
	.quad	.LC73
	.long	1000
	.zero	4
	.long	1011
	.long	10
	.quad	.LC100
	.long	1002
	.zero	4
	.long	1
	.long	0
	.quad	.LC101
	.zero	8
	.long	1
	.long	1
	.quad	.LC72
	.zero	8
	.long	1
	.long	2
	.quad	.LC73
	.long	1000
	.zero	4
	.long	1
	.long	3
	.quad	.LC102
	.long	1001
	.zero	4
	.long	2
	.long	0
	.quad	.LC103
	.zero	8
	.long	2
	.long	1
	.quad	.LC104
	.zero	8
	.long	2
	.long	2
	.quad	.LC71
	.long	1000
	.zero	4
	.long	2
	.long	3
	.quad	.LC105
	.long	1006
	.zero	4
	.long	2
	.long	4
	.quad	.LC106
	.zero	8
	.long	2
	.long	5
	.quad	.LC107
	.zero	8
	.long	2
	.long	6
	.quad	.LC108
	.long	1005
	.zero	4
	.long	2
	.long	7
	.quad	.LC86
	.zero	8
	.long	2
	.long	8
	.quad	.LC109
	.long	1004
	.zero	4
	.long	3
	.long	0
	.quad	.LC94
	.zero	8
	.long	3
	.long	1
	.quad	.LC91
	.long	1005
	.zero	4
	.long	3
	.long	2
	.quad	.LC104
	.zero	8
	.long	3
	.long	3
	.quad	.LC71
	.long	1000
	.zero	4
	.long	3
	.long	4
	.quad	.LC110
	.zero	8
	.long	3
	.long	5
	.quad	.LC95
	.zero	8
	.long	3
	.long	6
	.quad	.LC111
	.zero	8
	.long	3
	.long	7
	.quad	.LC97
	.zero	8
	.long	3
	.long	8
	.quad	.LC98
	.zero	8
	.long	3
	.long	9
	.quad	.LC100
	.long	1003
	.zero	4
	.long	3
	.long	10
	.quad	.LC109
	.long	1004
	.zero	4
	.long	10
	.long	1
	.quad	.LC112
	.zero	8
	.long	10
	.long	2
	.quad	.LC113
	.zero	8
	.long	10
	.long	3
	.quad	.LC114
	.long	1008
	.zero	4
	.long	10
	.long	4
	.quad	.LC115
	.long	1007
	.zero	4
	.long	11
	.long	0
	.quad	.LC112
	.zero	8
	.long	11
	.long	1
	.quad	.LC113
	.zero	8
	.long	11
	.long	2
	.quad	.LC114
	.long	1008
	.zero	4
	.long	11
	.long	3
	.quad	.LC104
	.zero	8
	.long	11
	.long	4
	.quad	.LC71
	.long	1000
	.zero	4
	.long	11
	.long	5
	.quad	.LC116
	.zero	8
	.long	11
	.long	6
	.quad	.LC117
	.long	1001
	.zero	4
	.long	12
	.long	1
	.quad	.LC112
	.zero	8
	.long	12
	.long	2
	.quad	.LC113
	.zero	8
	.long	12
	.long	3
	.quad	.LC114
	.long	1008
	.zero	4
	.long	12
	.long	4
	.quad	.LC115
	.long	1007
	.zero	4
	.long	13
	.long	0
	.quad	.LC112
	.zero	8
	.long	13
	.long	1
	.quad	.LC113
	.zero	8
	.long	13
	.long	2
	.quad	.LC114
	.long	1008
	.zero	4
	.long	13
	.long	3
	.quad	.LC104
	.zero	8
	.long	13
	.long	4
	.quad	.LC71
	.long	1000
	.zero	4
	.long	13
	.long	5
	.quad	.LC116
	.zero	8
	.long	13
	.long	6
	.quad	.LC117
	.long	1001
	.zero	4
	.long	14
	.long	0
	.quad	.LC112
	.zero	8
	.long	14
	.long	1
	.quad	.LC113
	.zero	8
	.long	14
	.long	2
	.quad	.LC118
	.zero	8
	.long	14
	.long	3
	.quad	.LC116
	.zero	8
	.long	14
	.long	4
	.quad	.LC119
	.long	1001
	.zero	4
	.long	15
	.long	0
	.quad	.LC112
	.zero	8
	.long	15
	.long	1
	.quad	.LC113
	.zero	8
	.long	15
	.long	2
	.quad	.LC117
	.long	1001
	.zero	4
	.long	20
	.long	0
	.quad	.LC112
	.zero	8
	.long	20
	.long	1
	.quad	.LC113
	.zero	8
	.long	20
	.long	2
	.quad	.LC120
	.long	1009
	.zero	4
	.long	20
	.long	3
	.quad	.LC105
	.long	1006
	.zero	4
	.long	21
	.long	0
	.quad	.LC112
	.zero	8
	.long	21
	.long	1
	.quad	.LC113
	.zero	8
	.long	21
	.long	2
	.quad	.LC117
	.long	1001
	.zero	4
	.long	22
	.long	0
	.quad	.LC112
	.zero	8
	.long	22
	.long	1
	.quad	.LC113
	.zero	8
	.long	22
	.long	2
	.quad	.LC121
	.zero	8
	.long	22
	.long	3
	.quad	.LC117
	.long	1001
	.zero	4
	.long	25
	.long	0
	.quad	.LC91
	.long	1005
	.zero	4
	.long	25
	.long	1
	.quad	.LC122
	.long	1010
	.zero	4
	.long	25
	.long	2
	.quad	.LC77
	.zero	8
	.long	25
	.long	3
	.quad	.LC123
	.zero	8
	.long	25
	.long	4
	.quad	.LC94
	.zero	8
	.long	25
	.long	5
	.quad	.LC95
	.zero	8
	.long	25
	.long	6
	.quad	.LC111
	.zero	8
	.long	25
	.long	7
	.quad	.LC124
	.zero	8
	.long	25
	.long	8
	.quad	.LC98
	.zero	8
	.long	25
	.long	9
	.quad	.LC99
	.zero	8
	.long	25
	.long	10
	.quad	.LC73
	.long	1000
	.zero	4
	.long	25
	.long	11
	.quad	.LC100
	.long	1003
	.zero	4
	.long	26
	.long	0
	.quad	.LC91
	.long	1005
	.zero	4
	.long	26
	.long	1
	.quad	.LC122
	.long	1010
	.zero	4
	.long	26
	.long	2
	.quad	.LC77
	.zero	8
	.long	26
	.long	3
	.quad	.LC123
	.zero	8
	.long	26
	.long	4
	.quad	.LC94
	.zero	8
	.long	26
	.long	5
	.quad	.LC95
	.zero	8
	.long	26
	.long	6
	.quad	.LC111
	.zero	8
	.long	26
	.long	7
	.quad	.LC124
	.zero	8
	.long	26
	.long	8
	.quad	.LC98
	.zero	8
	.long	26
	.long	9
	.quad	.LC99
	.zero	8
	.long	26
	.long	10
	.quad	.LC73
	.long	1000
	.zero	4
	.long	26
	.long	11
	.quad	.LC100
	.long	1003
	.zero	4
	.long	27
	.long	0
	.quad	.LC107
	.zero	8
	.long	27
	.long	1
	.quad	.LC106
	.zero	8
	.long	27
	.long	2
	.quad	.LC108
	.long	1005
	.zero	4
	.long	27
	.long	3
	.quad	.LC86
	.zero	8
	.long	28
	.long	0
	.quad	.LC83
	.zero	8
	.long	28
	.long	1
	.quad	.LC84
	.zero	8
	.long	28
	.long	2
	.quad	.LC85
	.zero	8
	.long	28
	.long	3
	.quad	.LC86
	.zero	8
	.long	28
	.long	4
	.quad	.LC87
	.long	1002
	.zero	4
	.long	28
	.long	5
	.quad	.LC88
	.long	1002
	.zero	4
	.long	29
	.long	0
	.quad	.LC125
	.long	1011
	.zero	4
	.long	29
	.long	1
	.quad	.LC77
	.zero	8
	.long	29
	.long	2
	.quad	.LC84
	.zero	8
	.long	29
	.long	3
	.quad	.LC85
	.zero	8
	.long	29
	.long	4
	.quad	.LC87
	.long	1002
	.zero	4
	.long	29
	.long	5
	.quad	.LC88
	.long	1002
	.zero	4
	.long	30
	.long	0
	.quad	.LC112
	.zero	8
	.long	30
	.long	1
	.quad	.LC113
	.zero	8
	.long	30
	.long	2
	.quad	.LC107
	.zero	8
	.long	30
	.long	3
	.quad	.LC106
	.zero	8
	.long	30
	.long	4
	.quad	.LC126
	.zero	8
	.long	30
	.long	5
	.quad	.LC127
	.zero	8
	.long	30
	.long	6
	.quad	.LC128
	.zero	8
	.long	30
	.long	7
	.quad	.LC104
	.zero	8
	.long	30
	.long	8
	.quad	.LC71
	.long	1000
	.zero	4
	.long	30
	.long	9
	.quad	.LC72
	.zero	8
	.long	30
	.long	10
	.quad	.LC73
	.long	1000
	.zero	4
	.long	30
	.long	11
	.quad	.LC129
	.zero	8
	.long	30
	.long	12
	.quad	.LC130
	.zero	8
	.long	-1
	.long	-1
	.quad	0
	.zero	8
	.section	.rodata
.LC131:
	.string	"UNIV %d"
.LC132:
	.string	"APPL %d"
.LC133:
	.string	"%d"
.LC134:
	.string	"CONT %d"
.LC135:
	.string	"PRIV %d"
.LC136:
	.string	"UNIV %d???"
.LC137:
	.string	"] "
	.text
	.globl	print_tag_type
	.type	print_tag_type, @function
print_tag_type:
.LFB16:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	DWORD PTR -28[rbp], esi
	mov	DWORD PTR -32[rbp], edx
	mov	eax, DWORD PTR -28[rbp]
	and	eax, 31
	mov	DWORD PTR -12[rbp], eax
	mov	DWORD PTR -16[rbp], 1
	mov	rax, QWORD PTR -24[rbp]
	mov	rsi, rax
	mov	edi, 91
	call	fputc@PLT
	mov	eax, DWORD PTR -28[rbp]
	and	eax, 192
	cmp	eax, 192
	je	.L100
	cmp	eax, 192
	jg	.L101
	cmp	eax, 128
	je	.L102
	cmp	eax, 128
	jg	.L101
	test	eax, eax
	je	.L103
	cmp	eax, 64
	je	.L104
	jmp	.L101
.L103:
	mov	eax, DWORD PTR print_types[rip]
	test	eax, eax
	je	.L105
	mov	eax, DWORD PTR print_skip_tagnum[rip]
	test	eax, eax
	je	.L105
	mov	DWORD PTR -16[rbp], 0
	jmp	.L101
.L105:
	mov	edx, DWORD PTR -12[rbp]
	mov	rax, QWORD PTR -24[rbp]
	lea	rsi, .LC131[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	jmp	.L101
.L104:
	mov	eax, DWORD PTR -12[rbp]
	mov	DWORD PTR current_appl_type[rip], eax
	mov	eax, DWORD PTR print_krb5_types[rip]
	test	eax, eax
	je	.L107
	mov	eax, DWORD PTR -12[rbp]
	mov	edx, -1
	mov	esi, eax
	lea	rdi, krb5_types[rip]
	mov	eax, 0
	call	lookup_typestring
	mov	QWORD PTR -8[rbp], rax
	cmp	QWORD PTR -8[rbp], 0
	je	.L107
	mov	rdx, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR -8[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	fputs@PLT
	jmp	.L101
.L107:
	mov	edx, DWORD PTR -12[rbp]
	mov	rax, QWORD PTR -24[rbp]
	lea	rsi, .LC132[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	jmp	.L101
.L102:
	mov	eax, DWORD PTR print_krb5_types[rip]
	test	eax, eax
	je	.L108
	mov	eax, DWORD PTR current_appl_type[rip]
	test	eax, eax
	je	.L108
	mov	eax, DWORD PTR current_appl_type[rip]
	mov	edx, DWORD PTR -12[rbp]
	mov	esi, eax
	lea	rdi, krb5_fields[rip]
	mov	eax, 0
	call	lookup_typestring
	mov	QWORD PTR -8[rbp], rax
	cmp	QWORD PTR -8[rbp], 0
	je	.L108
	mov	rdx, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR -8[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	fputs@PLT
	jmp	.L101
.L108:
	mov	eax, DWORD PTR print_skip_context[rip]
	test	eax, eax
	je	.L109
	cmp	DWORD PTR -32[rbp], 0
	je	.L109
	mov	edx, DWORD PTR -12[rbp]
	mov	rax, QWORD PTR -24[rbp]
	lea	rsi, .LC133[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	jmp	.L101
.L109:
	mov	edx, DWORD PTR -12[rbp]
	mov	rax, QWORD PTR -24[rbp]
	lea	rsi, .LC134[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	jmp	.L101
.L100:
	mov	edx, DWORD PTR -12[rbp]
	mov	rax, QWORD PTR -24[rbp]
	lea	rsi, .LC135[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	nop
.L101:
	mov	eax, DWORD PTR print_types[rip]
	test	eax, eax
	je	.L111
	mov	eax, DWORD PTR -28[rbp]
	and	eax, 192
	test	eax, eax
	jne	.L111
	cmp	DWORD PTR -16[rbp], 0
	je	.L112
	mov	rax, QWORD PTR -24[rbp]
	mov	rsi, rax
	mov	edi, 32
	call	fputc@PLT
.L112:
	mov	eax, DWORD PTR -28[rbp]
	and	eax, 31
	mov	edx, -1
	mov	esi, eax
	lea	rdi, univ_types[rip]
	mov	eax, 0
	call	lookup_typestring
	mov	QWORD PTR -8[rbp], rax
	cmp	QWORD PTR -8[rbp], 0
	je	.L113
	mov	rdx, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR -8[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	fputs@PLT
	jmp	.L111
.L113:
	mov	eax, DWORD PTR -28[rbp]
	and	eax, 31
	mov	edx, eax
	mov	rax, QWORD PTR -24[rbp]
	lea	rsi, .LC136[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
.L111:
	mov	rax, QWORD PTR -24[rbp]
	mov	rcx, rax
	mov	edx, 2
	mov	esi, 1
	lea	rdi, .LC137[rip]
	call	fwrite@PLT
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE16:
	.size	print_tag_type, .-print_tag_type
	.ident	"GCC: (Ubuntu 10.5.0-1ubuntu1~20.04) 10.5.0"
	.section	.note.GNU-stack,"",@progbits
	.section	.note.gnu.property,"a"
	.align 8
	.long	 1f - 0f
	.long	 4f - 1f
	.long	 5
0:
	.string	 "GNU"
1:
	.align 8
	.long	 0xc0000002
	.long	 3f - 2f
2:
	.long	 0x3
3:
	.align 8
4:

	.arch armv5t
	.eabi_attribute 20, 1
	.eabi_attribute 21, 1
	.eabi_attribute 23, 3
	.eabi_attribute 24, 1
	.eabi_attribute 25, 1
	.eabi_attribute 26, 2
	.eabi_attribute 30, 6
	.eabi_attribute 34, 0
	.eabi_attribute 18, 4
	.file	"90764927.c"
	.text
	.global	print_types
	.bss
	.align	2
	.type	print_types, %object
	.size	print_types, 4
print_types:
	.space	4
	.global	print_id_and_len
	.data
	.align	2
	.type	print_id_and_len, %object
	.size	print_id_and_len, 4
print_id_and_len:
	.word	1
	.global	print_constructed_length
	.align	2
	.type	print_constructed_length, %object
	.size	print_constructed_length, 4
print_constructed_length:
	.word	1
	.global	print_primitive_length
	.align	2
	.type	print_primitive_length, %object
	.size	print_primitive_length, 4
print_primitive_length:
	.word	1
	.global	print_skip_context
	.bss
	.align	2
	.type	print_skip_context, %object
	.size	print_skip_context, 4
print_skip_context:
	.space	4
	.global	print_skip_tagnum
	.data
	.align	2
	.type	print_skip_tagnum, %object
	.size	print_skip_tagnum, 4
print_skip_tagnum:
	.word	1
	.global	print_context_shortcut
	.bss
	.align	2
	.type	print_context_shortcut, %object
	.size	print_context_shortcut, 4
print_context_shortcut:
	.space	4
	.global	do_hex
	.align	2
	.type	do_hex, %object
	.size	do_hex, 4
do_hex:
	.space	4
	.global	print_krb5_types
	.align	2
	.type	print_krb5_types, %object
	.size	print_krb5_types, 4
print_krb5_types:
	.space	4
	.global	current_appl_type
	.data
	.align	2
	.type	current_appl_type, %object
	.size	current_appl_type, 4
current_appl_type:
	.word	-1
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	convert_nibble, %function
convert_nibble:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	bl	__ctype_b_loc
	mov	r3, r0
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #1
	add	r3, r2, r3
	ldrh	r3, [r3]
	and	r3, r3, #2048
	cmp	r3, #0
	beq	.L2
	ldr	r3, [fp, #-8]
	sub	r3, r3, #48
	b	.L3
.L2:
	ldr	r3, [fp, #-8]
	cmp	r3, #96
	ble	.L4
	ldr	r3, [fp, #-8]
	cmp	r3, #102
	bgt	.L4
	ldr	r3, [fp, #-8]
	sub	r3, r3, #87
	b	.L3
.L4:
	ldr	r3, [fp, #-8]
	cmp	r3, #64
	ble	.L5
	ldr	r3, [fp, #-8]
	cmp	r3, #70
	bgt	.L5
	ldr	r3, [fp, #-8]
	sub	r3, r3, #55
	b	.L3
.L5:
	mvn	r3, #0
.L3:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	convert_nibble, .-convert_nibble
	.section	.rodata
	.align	2
.LC0:
	.ascii	"<%d>\000"
	.align	2
.LC1:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	trval
	.syntax unified
	.arm
	.fpu softvfp
	.type	trval, %function
trval:
	@ args = 0, pretend = 0, frame = 48
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #56
	str	r0, [fp, #-48]
	str	r1, [fp, #-52]
	ldr	r3, .L18
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	mov	r3, #8192
	str	r3, [fp, #-36]
	ldr	r0, [fp, #-36]
	bl	malloc
	mov	r3, r0
	str	r3, [fp, #-40]
	mov	r3, #0
	str	r3, [fp, #-32]
	b	.L7
.L14:
	ldr	r3, [fp, #-32]
	ldr	r2, [fp, #-36]
	cmp	r2, r3
	bne	.L8
	ldr	r3, [fp, #-36]
	add	r3, r3, #8192
	str	r3, [fp, #-36]
	ldr	r1, [fp, #-36]
	ldr	r0, [fp, #-40]
	bl	realloc
	str	r0, [fp, #-40]
.L8:
	ldr	r3, .L18+4
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L9
	ldr	r3, [fp, #-28]
	cmp	r3, #32
	beq	.L7
	ldr	r3, [fp, #-28]
	cmp	r3, #10
	beq	.L7
	ldr	r3, [fp, #-28]
	cmp	r3, #9
	bne	.L11
	b	.L7
.L11:
	ldr	r0, [fp, #-48]
	bl	fgetc
	str	r0, [fp, #-24]
	ldr	r3, [fp, #-24]
	cmn	r3, #1
	beq	.L17
	ldr	r0, [fp, #-28]
	bl	convert_nibble
	str	r0, [fp, #-20]
	ldr	r0, [fp, #-24]
	bl	convert_nibble
	str	r0, [fp, #-16]
	ldr	r3, [fp, #-20]
	lsl	r3, r3, #4
	ldr	r2, [fp, #-16]
	add	r3, r2, r3
	str	r3, [fp, #-28]
.L9:
	ldr	r3, [fp, #-32]
	add	r2, r3, #1
	str	r2, [fp, #-32]
	mov	r2, r3
	ldr	r3, [fp, #-40]
	add	r3, r3, r2
	ldr	r2, [fp, #-28]
	and	r2, r2, #255
	strb	r2, [r3]
.L7:
	ldr	r0, [fp, #-48]
	bl	fgetc
	str	r0, [fp, #-28]
	ldr	r3, [fp, #-28]
	cmn	r3, #1
	bne	.L14
	b	.L13
.L17:
	nop
.L13:
	ldr	r2, [fp, #-32]
	ldr	r1, .L18+8
	ldr	r0, [fp, #-52]
	bl	fprintf
	sub	r3, fp, #44
	str	r3, [sp]
	mov	r3, #0
	ldr	r2, [fp, #-32]
	ldr	r1, [fp, #-40]
	ldr	r0, [fp, #-52]
	bl	trval2
	str	r0, [fp, #-12]
	ldr	r1, [fp, #-52]
	mov	r0, #10
	bl	fputc
	ldr	r0, [fp, #-40]
	bl	free
	ldr	r3, [fp, #-12]
	ldr	r2, .L18
	ldr	r1, [r2]
	ldr	r2, [fp, #-8]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L16
	bl	__stack_chk_fail
.L16:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L19:
	.align	2
.L18:
	.word	.LC1
	.word	do_hex
	.word	.LC0
	.size	trval, .-trval
	.section	.rodata
	.align	2
.LC2:
	.ascii	"missing id and length octets (%d)\012\000"
	.align	2
.LC3:
	.ascii	".  \000"
	.align	2
.LC4:
	.ascii	"%02x \000"
	.align	2
.LC5:
	.ascii	"indefinite length encoding not implemented (0x%02x)"
	.ascii	"\012\000"
	.align	2
.LC6:
	.ascii	"extended length too long (%d > %d - 2)\012\000"
	.align	2
.LC7:
	.ascii	"length too long (%d > %d - 2 - %d)\012\000"
	.align	2
.LC8:
	.ascii	"constr \000"
	.align	2
.LC9:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	trval2
	.syntax unified
	.arm
	.fpu softvfp
	.type	trval2, %function
trval2:
	@ args = 4, pretend = 0, frame = 56
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #64
	str	r0, [fp, #-40]
	str	r1, [fp, #-44]
	str	r2, [fp, #-48]
	str	r3, [fp, #-52]
	ldr	r3, [fp, #4]
	str	r3, [fp, #-56]
	ldr	r3, .L38
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	mov	r3, #0
	str	r3, [fp, #-16]
	mov	r3, #0
	str	r3, [fp, #-20]
	ldr	r3, [fp, #-48]
	cmp	r3, #1
	bgt	.L21
	ldr	r2, [fp, #-48]
	ldr	r1, .L38+4
	ldr	r0, [fp, #-40]
	bl	fprintf
	mvn	r3, #0
	b	.L36
.L21:
	ldr	r1, [fp, #-40]
	mov	r0, #10
	bl	fputc
	mov	r3, #0
	str	r3, [fp, #-32]
	b	.L23
.L24:
	ldr	r3, [fp, #-40]
	mov	r2, #3
	mov	r1, #1
	ldr	r0, .L38+8
	bl	fwrite
	ldr	r3, [fp, #-32]
	add	r3, r3, #1
	str	r3, [fp, #-32]
.L23:
	ldr	r2, [fp, #-32]
	ldr	r3, [fp, #-52]
	cmp	r2, r3
	blt	.L24
	nop
.L25:
	ldr	r3, [fp, #-44]
	ldrb	r3, [r3]	@ zero_extendqisi2
	str	r3, [fp, #-12]
	ldr	r3, [fp, #-44]
	add	r3, r3, #1
	ldrb	r3, [r3]	@ zero_extendqisi2
	str	r3, [fp, #-28]
	ldr	r3, .L38+12
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L26
	ldr	r2, [fp, #-12]
	ldr	r1, .L38+16
	ldr	r0, [fp, #-40]
	bl	fprintf
	ldr	r2, [fp, #-28]
	ldr	r1, .L38+16
	ldr	r0, [fp, #-40]
	bl	fprintf
.L26:
	ldr	r3, [fp, #-28]
	cmp	r3, #128
	bne	.L27
	ldr	r2, [fp, #-28]
	ldr	r1, .L38+20
	ldr	r0, [fp, #-40]
	bl	fprintf
	mvn	r3, #0
	b	.L36
.L27:
	mov	r3, #0
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-28]
	and	r3, r3, #128
	cmp	r3, #0
	beq	.L28
	ldr	r3, [fp, #-28]
	and	r3, r3, #127
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-48]
	sub	r3, r3, #1
	ldr	r2, [fp, #-24]
	cmp	r2, r3
	blt	.L29
	ldr	r3, [fp, #-48]
	ldr	r2, [fp, #-24]
	ldr	r1, .L38+24
	ldr	r0, [fp, #-40]
	bl	fprintf
	mvn	r3, #0
	b	.L36
.L29:
	ldr	r3, [fp, #-44]
	add	r3, r3, #2
	ldr	r2, [fp, #-24]
	mov	r1, r3
	ldr	r0, [fp, #-40]
	bl	decode_len
	str	r0, [fp, #-28]
.L28:
	ldr	r3, [fp, #-48]
	sub	r2, r3, #2
	ldr	r3, [fp, #-24]
	sub	r3, r2, r3
	ldr	r2, [fp, #-28]
	cmp	r2, r3
	ble	.L30
	ldr	r3, [fp, #-24]
	str	r3, [sp]
	ldr	r3, [fp, #-48]
	ldr	r2, [fp, #-28]
	ldr	r1, .L38+28
	ldr	r0, [fp, #-40]
	bl	fprintf
	mvn	r3, #0
	b	.L36
.L30:
	ldr	r2, [fp, #-52]
	ldr	r1, [fp, #-12]
	ldr	r0, [fp, #-40]
	bl	print_tag_type
	ldr	r3, .L38+32
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L31
	ldr	r3, [fp, #-12]
	and	r3, r3, #192
	cmp	r3, #128
	bne	.L31
	ldr	r3, [fp, #-52]
	cmp	r3, #0
	ble	.L31
	ldr	r3, [fp, #-24]
	add	r3, r3, #2
	ldr	r2, [fp, #-16]
	add	r3, r2, r3
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-24]
	add	r3, r3, #2
	mov	r2, r3
	ldr	r3, [fp, #-44]
	add	r3, r3, r2
	str	r3, [fp, #-44]
	b	.L25
.L31:
	ldr	r3, [fp, #-12]
	and	r3, r3, #32
	cmp	r3, #0
	beq	.L32
	cmp	r3, #32
	beq	.L33
	b	.L34
.L32:
	ldr	r3, [fp, #-12]
	and	r1, r3, #31
	ldr	r3, [fp, #-24]
	add	r3, r3, #2
	ldr	r2, [fp, #-44]
	add	r2, r2, r3
	ldr	r3, [fp, #-52]
	add	r3, r3, #1
	str	r3, [sp]
	ldr	r3, [fp, #-28]
	ldr	r0, [fp, #-40]
	bl	do_prim
	str	r0, [fp, #-20]
	ldr	r3, [fp, #-24]
	add	r2, r3, #2
	ldr	r3, [fp, #-28]
	add	r2, r2, r3
	ldr	r3, [fp, #-16]
	add	r2, r2, r3
	ldr	r3, [fp, #-56]
	str	r2, [r3]
	b	.L34
.L33:
	ldr	r3, .L38+36
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L35
	ldr	r3, [fp, #-40]
	mov	r2, #7
	mov	r1, #1
	ldr	r0, .L38+40
	bl	fwrite
	ldr	r2, [fp, #-28]
	ldr	r1, .L38+44
	ldr	r0, [fp, #-40]
	bl	fprintf
.L35:
	ldr	r3, [fp, #-24]
	add	r3, r3, #2
	ldr	r2, [fp, #-44]
	add	r1, r2, r3
	ldr	r3, [fp, #-52]
	add	r2, r3, #1
	sub	r3, fp, #36
	str	r3, [sp]
	mov	r3, r2
	ldr	r2, [fp, #-28]
	ldr	r0, [fp, #-40]
	bl	do_cons
	str	r0, [fp, #-20]
	ldr	r3, [fp, #-24]
	add	r2, r3, #2
	ldr	r3, [fp, #-36]
	add	r2, r2, r3
	ldr	r3, [fp, #-16]
	add	r2, r2, r3
	ldr	r3, [fp, #-56]
	str	r2, [r3]
	nop
.L34:
	ldr	r3, [fp, #-20]
.L36:
	ldr	r2, .L38
	ldr	r1, [r2]
	ldr	r2, [fp, #-8]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L37
	bl	__stack_chk_fail
.L37:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L39:
	.align	2
.L38:
	.word	.LC9
	.word	.LC2
	.word	.LC3
	.word	print_id_and_len
	.word	.LC4
	.word	.LC5
	.word	.LC6
	.word	.LC7
	.word	print_context_shortcut
	.word	print_constructed_length
	.word	.LC8
	.word	.LC0
	.size	trval2, .-trval2
	.align	2
	.global	decode_len
	.syntax unified
	.arm
	.fpu softvfp
	.type	decode_len, %function
decode_len:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	str	r0, [fp, #-16]
	str	r1, [fp, #-20]
	str	r2, [fp, #-24]
	ldr	r3, .L46
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L41
	ldr	r3, [fp, #-20]
	ldrb	r3, [r3]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r1, .L46+4
	ldr	r0, [fp, #-16]
	bl	fprintf
.L41:
	ldr	r3, [fp, #-20]
	ldrb	r3, [r3]	@ zero_extendqisi2
	str	r3, [fp, #-12]
	mov	r3, #1
	str	r3, [fp, #-8]
	b	.L42
.L44:
	ldr	r3, .L46
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L43
	ldr	r3, [fp, #-8]
	ldr	r2, [fp, #-20]
	add	r3, r2, r3
	ldrb	r3, [r3]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r1, .L46+4
	ldr	r0, [fp, #-16]
	bl	fprintf
.L43:
	ldr	r3, [fp, #-12]
	lsl	r3, r3, #8
	ldr	r2, [fp, #-8]
	ldr	r1, [fp, #-20]
	add	r2, r1, r2
	ldrb	r2, [r2]	@ zero_extendqisi2
	add	r3, r3, r2
	str	r3, [fp, #-12]
	ldr	r3, [fp, #-8]
	add	r3, r3, #1
	str	r3, [fp, #-8]
.L42:
	ldr	r2, [fp, #-8]
	ldr	r3, [fp, #-24]
	cmp	r2, r3
	blt	.L44
	ldr	r3, [fp, #-12]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L47:
	.align	2
.L46:
	.word	print_id_and_len
	.word	.LC4
	.size	decode_len, .-decode_len
	.section	.rodata
	.align	2
.LC10:
	.ascii	"0x%lx\000"
	.align	2
.LC11:
	.ascii	" (%d unused bits)\000"
	.text
	.align	2
	.global	do_prim_bitstring
	.syntax unified
	.arm
	.fpu softvfp
	.type	do_prim_bitstring, %function
do_prim_bitstring:
	@ args = 4, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	str	r0, [fp, #-16]
	str	r1, [fp, #-20]
	str	r2, [fp, #-24]
	str	r3, [fp, #-28]
	mov	r3, #0
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-20]
	cmp	r3, #3
	bne	.L49
	ldr	r3, [fp, #-28]
	cmp	r3, #5
	ble	.L50
.L49:
	mov	r3, #0
	b	.L51
.L50:
	mov	r3, #1
	str	r3, [fp, #-12]
	b	.L52
.L53:
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #8
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-12]
	ldr	r2, [fp, #-24]
	add	r3, r2, r3
	ldrb	r3, [r3]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, [fp, #-8]
	add	r3, r3, r2
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-12]
	add	r3, r3, #1
	str	r3, [fp, #-12]
.L52:
	ldr	r2, [fp, #-12]
	ldr	r3, [fp, #-28]
	cmp	r2, r3
	blt	.L53
	ldr	r2, [fp, #-8]
	ldr	r1, .L55
	ldr	r0, [fp, #-16]
	bl	fprintf
	ldr	r3, [fp, #-24]
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L54
	ldr	r3, [fp, #-24]
	ldrb	r3, [r3]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r1, .L55+4
	ldr	r0, [fp, #-16]
	bl	fprintf
.L54:
	mov	r3, #1
.L51:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L56:
	.align	2
.L55:
	.word	.LC10
	.word	.LC11
	.size	do_prim_bitstring, .-do_prim_bitstring
	.section	.rodata
	.align	2
.LC12:
	.ascii	"%ld\000"
	.text
	.align	2
	.global	do_prim_int
	.syntax unified
	.arm
	.fpu softvfp
	.type	do_prim_int, %function
do_prim_int:
	@ args = 4, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	str	r0, [fp, #-16]
	str	r1, [fp, #-20]
	str	r2, [fp, #-24]
	str	r3, [fp, #-28]
	mov	r3, #0
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-20]
	cmp	r3, #2
	bne	.L58
	ldr	r3, [fp, #-28]
	cmp	r3, #4
	ble	.L59
.L58:
	mov	r3, #0
	b	.L60
.L59:
	ldr	r3, [fp, #-24]
	ldrb	r3, [r3]	@ zero_extendqisi2
	lsl	r3, r3, #24
	asr	r3, r3, #24
	cmp	r3, #0
	bge	.L61
	mvn	r3, #0
	str	r3, [fp, #-8]
.L61:
	mov	r3, #0
	str	r3, [fp, #-12]
	b	.L62
.L63:
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #8
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-12]
	ldr	r2, [fp, #-24]
	add	r3, r2, r3
	ldrb	r3, [r3]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, [fp, #-8]
	add	r3, r3, r2
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-12]
	add	r3, r3, #1
	str	r3, [fp, #-12]
.L62:
	ldr	r2, [fp, #-12]
	ldr	r3, [fp, #-28]
	cmp	r2, r3
	blt	.L63
	ldr	r2, [fp, #-8]
	ldr	r1, .L64
	ldr	r0, [fp, #-16]
	bl	fprintf
	mov	r3, #1
.L60:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L65:
	.align	2
.L64:
	.word	.LC12
	.size	do_prim_int, .-do_prim_int
	.section	.rodata
	.align	2
.LC13:
	.ascii	"\"%.*s\"\000"
	.text
	.align	2
	.global	do_prim_string
	.syntax unified
	.arm
	.fpu softvfp
	.type	do_prim_string, %function
do_prim_string:
	@ args = 4, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	str	r0, [fp, #-16]
	str	r1, [fp, #-20]
	str	r2, [fp, #-24]
	str	r3, [fp, #-28]
	ldr	r3, [fp, #-20]
	cmp	r3, #17
	bgt	.L67
	ldr	r3, [fp, #-20]
	cmp	r3, #4
	beq	.L67
	mov	r3, #0
	b	.L68
.L67:
	mov	r3, #0
	str	r3, [fp, #-8]
	b	.L69
.L71:
	bl	__ctype_b_loc
	mov	r3, r0
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	ldr	r1, [fp, #-24]
	add	r3, r1, r3
	ldrb	r3, [r3]	@ zero_extendqisi2
	lsl	r3, r3, #1
	add	r3, r2, r3
	ldrh	r3, [r3]
	and	r3, r3, #16384
	cmp	r3, #0
	bne	.L70
	mov	r3, #0
	b	.L68
.L70:
	ldr	r3, [fp, #-8]
	add	r3, r3, #1
	str	r3, [fp, #-8]
.L69:
	ldr	r2, [fp, #-8]
	ldr	r3, [fp, #-28]
	cmp	r2, r3
	blt	.L71
	ldr	r3, [fp, #-24]
	ldr	r2, [fp, #-28]
	ldr	r1, .L72
	ldr	r0, [fp, #-16]
	bl	fprintf
	mov	r3, #1
.L68:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L73:
	.align	2
.L72:
	.word	.LC13
	.size	do_prim_string, .-do_prim_string
	.global	__aeabi_idivmod
	.section	.rodata
	.align	2
.LC14:
	.ascii	"   \000"
	.align	2
.LC15:
	.ascii	"    \000"
	.text
	.align	2
	.global	do_prim
	.syntax unified
	.arm
	.fpu softvfp
	.type	do_prim, %function
do_prim:
	@ args = 4, pretend = 0, frame = 32
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #40
	str	r0, [fp, #-24]
	str	r1, [fp, #-28]
	str	r2, [fp, #-32]
	str	r3, [fp, #-36]
	ldr	r3, [fp, #4]
	str	r3, [sp]
	ldr	r3, [fp, #-36]
	ldr	r2, [fp, #-32]
	ldr	r1, [fp, #-28]
	ldr	r0, [fp, #-24]
	bl	do_prim_string
	mov	r3, r0
	cmp	r3, #0
	beq	.L75
	mov	r3, #0
	b	.L76
.L75:
	ldr	r3, [fp, #4]
	str	r3, [sp]
	ldr	r3, [fp, #-36]
	ldr	r2, [fp, #-32]
	ldr	r1, [fp, #-28]
	ldr	r0, [fp, #-24]
	bl	do_prim_int
	mov	r3, r0
	cmp	r3, #0
	beq	.L77
	mov	r3, #0
	b	.L76
.L77:
	ldr	r3, [fp, #4]
	str	r3, [sp]
	ldr	r3, [fp, #-36]
	ldr	r2, [fp, #-32]
	ldr	r1, [fp, #-28]
	ldr	r0, [fp, #-24]
	bl	do_prim_bitstring
	mov	r3, r0
	cmp	r3, #0
	beq	.L78
	mov	r3, #0
	b	.L76
.L78:
	ldr	r3, .L97
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L79
	ldr	r2, [fp, #-36]
	ldr	r1, .L97+4
	ldr	r0, [fp, #-24]
	bl	fprintf
.L79:
	ldr	r3, [fp, #4]
	mov	r2, r3
	lsl	r3, r3, #2
	sub	r3, r2, r3
	add	r3, r3, #72
	add	r2, r3, #3
	cmp	r3, #0
	movlt	r3, r2
	movge	r3, r3
	asr	r3, r3, #2
	str	r3, [fp, #-12]
	mov	r3, #0
	str	r3, [fp, #-20]
	b	.L80
.L89:
	ldr	r3, [fp, #-20]
	ldr	r1, [fp, #-12]
	mov	r0, r3
	bl	__aeabi_idivmod
	mov	r3, r1
	cmp	r3, #0
	bne	.L81
	ldr	r1, [fp, #-24]
	mov	r0, #10
	bl	fputc
	mov	r3, #0
	str	r3, [fp, #-16]
	b	.L82
.L83:
	ldr	r3, [fp, #-24]
	mov	r2, #3
	mov	r1, #1
	ldr	r0, .L97+8
	bl	fwrite
	ldr	r3, [fp, #-16]
	add	r3, r3, #1
	str	r3, [fp, #-16]
.L82:
	ldr	r2, [fp, #-16]
	ldr	r3, [fp, #4]
	cmp	r2, r3
	blt	.L83
.L81:
	ldr	r3, [fp, #-20]
	ldr	r2, [fp, #-32]
	add	r3, r2, r3
	ldrb	r3, [r3]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r1, .L97+12
	ldr	r0, [fp, #-24]
	bl	fprintf
	ldr	r3, [fp, #-20]
	ldr	r1, [fp, #-12]
	mov	r0, r3
	bl	__aeabi_idivmod
	mov	r3, r1
	mov	r2, r3
	ldr	r3, [fp, #-12]
	sub	r3, r3, #1
	cmp	r2, r3
	bne	.L84
	ldr	r3, [fp, #-24]
	mov	r2, #4
	mov	r1, #1
	ldr	r0, .L97+16
	bl	fwrite
	ldr	r3, [fp, #-12]
	sub	r3, r3, #1
	ldr	r2, [fp, #-20]
	sub	r3, r2, r3
	str	r3, [fp, #-16]
	b	.L85
.L88:
	bl	__ctype_b_loc
	mov	r3, r0
	ldr	r2, [r3]
	ldr	r3, [fp, #-16]
	ldr	r1, [fp, #-32]
	add	r3, r1, r3
	ldrb	r3, [r3]	@ zero_extendqisi2
	lsl	r3, r3, #1
	add	r3, r2, r3
	ldrh	r3, [r3]
	and	r3, r3, #16384
	cmp	r3, #0
	beq	.L86
	ldr	r3, [fp, #-16]
	ldr	r2, [fp, #-32]
	add	r3, r2, r3
	ldrb	r3, [r3]	@ zero_extendqisi2
	ldr	r1, [fp, #-24]
	mov	r0, r3
	bl	fputc
	b	.L87
.L86:
	ldr	r1, [fp, #-24]
	mov	r0, #46
	bl	fputc
.L87:
	ldr	r3, [fp, #-16]
	add	r3, r3, #1
	str	r3, [fp, #-16]
.L85:
	ldr	r2, [fp, #-16]
	ldr	r3, [fp, #-20]
	cmp	r2, r3
	ble	.L88
.L84:
	ldr	r3, [fp, #-20]
	add	r3, r3, #1
	str	r3, [fp, #-20]
.L80:
	ldr	r2, [fp, #-20]
	ldr	r3, [fp, #-36]
	cmp	r2, r3
	blt	.L89
	ldr	r3, [fp, #-20]
	ldr	r1, [fp, #-12]
	mov	r0, r3
	bl	__aeabi_idivmod
	mov	r3, r1
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	beq	.L90
	ldr	r3, [fp, #-24]
	mov	r2, #4
	mov	r1, #1
	ldr	r0, .L97+16
	bl	fwrite
	mov	r3, #0
	str	r3, [fp, #-16]
	b	.L91
.L92:
	ldr	r3, [fp, #-24]
	mov	r2, #3
	mov	r1, #1
	ldr	r0, .L97+8
	bl	fwrite
	ldr	r3, [fp, #-16]
	add	r3, r3, #1
	str	r3, [fp, #-16]
.L91:
	ldr	r2, [fp, #-12]
	ldr	r3, [fp, #-8]
	sub	r3, r2, r3
	ldr	r2, [fp, #-16]
	cmp	r2, r3
	blt	.L92
	ldr	r2, [fp, #-20]
	ldr	r3, [fp, #-8]
	sub	r3, r2, r3
	str	r3, [fp, #-16]
	b	.L93
.L96:
	bl	__ctype_b_loc
	mov	r3, r0
	ldr	r2, [r3]
	ldr	r3, [fp, #-16]
	ldr	r1, [fp, #-32]
	add	r3, r1, r3
	ldrb	r3, [r3]	@ zero_extendqisi2
	lsl	r3, r3, #1
	add	r3, r2, r3
	ldrh	r3, [r3]
	and	r3, r3, #16384
	cmp	r3, #0
	beq	.L94
	ldr	r3, [fp, #-16]
	ldr	r2, [fp, #-32]
	add	r3, r2, r3
	ldrb	r3, [r3]	@ zero_extendqisi2
	ldr	r1, [fp, #-24]
	mov	r0, r3
	bl	fputc
	b	.L95
.L94:
	ldr	r1, [fp, #-24]
	mov	r0, #46
	bl	fputc
.L95:
	ldr	r3, [fp, #-16]
	add	r3, r3, #1
	str	r3, [fp, #-16]
.L93:
	ldr	r2, [fp, #-16]
	ldr	r3, [fp, #-20]
	cmp	r2, r3
	blt	.L96
.L90:
	mov	r3, #0
.L76:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L98:
	.align	2
.L97:
	.word	print_primitive_length
	.word	.LC0
	.word	.LC14
	.word	.LC4
	.word	.LC15
	.size	do_prim, .-do_prim
	.section	.rodata
	.align	2
.LC16:
	.ascii	"inconsistent constructed lengths (%d != %d)\012\000"
	.align	2
.LC17:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	do_cons
	.syntax unified
	.arm
	.fpu softvfp
	.type	do_cons, %function
do_cons:
	@ args = 4, pretend = 0, frame = 48
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #56
	str	r0, [fp, #-32]
	str	r1, [fp, #-36]
	str	r2, [fp, #-40]
	str	r3, [fp, #-44]
	ldr	r3, [fp, #4]
	str	r3, [fp, #-48]
	ldr	r3, .L107
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	mov	r3, #0
	str	r3, [fp, #-20]
	ldr	r3, .L107+4
	ldr	r3, [r3]
	str	r3, [fp, #-12]
	mov	r3, #0
	str	r3, [fp, #-24]
	mov	r3, #0
	str	r3, [fp, #-16]
	b	.L100
.L103:
	ldr	r3, [fp, #-24]
	ldr	r2, [fp, #-36]
	add	r1, r2, r3
	ldr	r2, [fp, #-40]
	ldr	r3, [fp, #-24]
	sub	r2, r2, r3
	sub	r3, fp, #28
	str	r3, [sp]
	ldr	r3, [fp, #-44]
	ldr	r0, [fp, #-32]
	bl	trval2
	str	r0, [fp, #-20]
	ldr	r2, .L107+4
	ldr	r3, [fp, #-12]
	str	r3, [r2]
	ldr	r3, [fp, #-20]
	cmp	r3, #0
	beq	.L101
	ldr	r3, [fp, #-20]
	b	.L105
.L101:
	ldr	r3, [fp, #-28]
	ldr	r2, [fp, #-24]
	add	r3, r2, r3
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-28]
	ldr	r2, [fp, #-16]
	add	r3, r2, r3
	str	r3, [fp, #-16]
.L100:
	ldr	r2, [fp, #-24]
	ldr	r3, [fp, #-40]
	cmp	r2, r3
	blt	.L103
	ldr	r2, [fp, #-16]
	ldr	r3, [fp, #-40]
	cmp	r2, r3
	beq	.L104
	ldr	r3, [fp, #-40]
	ldr	r2, [fp, #-16]
	ldr	r1, .L107+8
	ldr	r0, [fp, #-32]
	bl	fprintf
	mvn	r3, #0
	b	.L105
.L104:
	ldr	r3, [fp, #-48]
	ldr	r2, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
.L105:
	ldr	r2, .L107
	ldr	r1, [r2]
	ldr	r2, [fp, #-8]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L106
	bl	__stack_chk_fail
.L106:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L108:
	.align	2
.L107:
	.word	.LC17
	.word	current_appl_type
	.word	.LC16
	.size	do_cons, .-do_cons
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	lookup_typestring, %function
lookup_typestring:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #28
	str	r0, [fp, #-16]
	str	r1, [fp, #-20]
	str	r2, [fp, #-24]
	ldr	r3, [fp, #-16]
	str	r3, [fp, #-8]
	b	.L110
.L114:
	ldr	r3, [fp, #-8]
	ldr	r3, [r3]
	ldr	r2, [fp, #-20]
	cmp	r2, r3
	bne	.L111
	ldr	r3, [fp, #-8]
	ldr	r3, [r3, #4]
	ldr	r2, [fp, #-24]
	cmp	r2, r3
	bne	.L111
	ldr	r3, [fp, #-8]
	ldr	r3, [r3, #12]
	cmp	r3, #0
	beq	.L112
	ldr	r3, [fp, #-8]
	ldr	r3, [r3, #12]
	ldr	r2, .L115
	str	r3, [r2]
.L112:
	ldr	r3, [fp, #-8]
	ldr	r3, [r3, #8]
	b	.L113
.L111:
	ldr	r3, [fp, #-8]
	add	r3, r3, #16
	str	r3, [fp, #-8]
.L110:
	ldr	r3, [fp, #-8]
	ldr	r3, [r3]
	cmp	r3, #0
	bgt	.L114
	mov	r3, #0
.L113:
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
.L116:
	.align	2
.L115:
	.word	current_appl_type
	.size	lookup_typestring, .-lookup_typestring
	.global	univ_types
	.section	.rodata
	.align	2
.LC18:
	.ascii	"Boolean\000"
	.align	2
.LC19:
	.ascii	"Integer\000"
	.align	2
.LC20:
	.ascii	"Bit String\000"
	.align	2
.LC21:
	.ascii	"Octet String\000"
	.align	2
.LC22:
	.ascii	"Null\000"
	.align	2
.LC23:
	.ascii	"Object Identifier\000"
	.align	2
.LC24:
	.ascii	"Object Descriptor\000"
	.align	2
.LC25:
	.ascii	"External\000"
	.align	2
.LC26:
	.ascii	"Real\000"
	.align	2
.LC27:
	.ascii	"Enumerated type\000"
	.align	2
.LC28:
	.ascii	"Encrypted\000"
	.align	2
.LC29:
	.ascii	"Sequence/Sequence Of\000"
	.align	2
.LC30:
	.ascii	"Set/Set Of\000"
	.align	2
.LC31:
	.ascii	"Numeric String\000"
	.align	2
.LC32:
	.ascii	"Printable String\000"
	.align	2
.LC33:
	.ascii	"T.61 String\000"
	.align	2
.LC34:
	.ascii	"Videotex String\000"
	.align	2
.LC35:
	.ascii	"IA5 String\000"
	.align	2
.LC36:
	.ascii	"UTCTime\000"
	.align	2
.LC37:
	.ascii	"Generalized Time\000"
	.align	2
.LC38:
	.ascii	"Graphics string (ISO2375)\000"
	.align	2
.LC39:
	.ascii	"Visible string\000"
	.align	2
.LC40:
	.ascii	"General string\000"
	.align	2
.LC41:
	.ascii	"Character string\000"
	.data
	.align	2
	.type	univ_types, %object
	.size	univ_types, 400
univ_types:
	.word	1
	.word	-1
	.word	.LC18
	.space	4
	.word	2
	.word	-1
	.word	.LC19
	.space	4
	.word	3
	.word	-1
	.word	.LC20
	.space	4
	.word	4
	.word	-1
	.word	.LC21
	.space	4
	.word	5
	.word	-1
	.word	.LC22
	.space	4
	.word	6
	.word	-1
	.word	.LC23
	.space	4
	.word	7
	.word	-1
	.word	.LC24
	.space	4
	.word	8
	.word	-1
	.word	.LC25
	.space	4
	.word	9
	.word	-1
	.word	.LC26
	.space	4
	.word	10
	.word	-1
	.word	.LC27
	.space	4
	.word	11
	.word	-1
	.word	.LC28
	.space	4
	.word	16
	.word	-1
	.word	.LC29
	.space	4
	.word	17
	.word	-1
	.word	.LC30
	.space	4
	.word	18
	.word	-1
	.word	.LC31
	.space	4
	.word	19
	.word	-1
	.word	.LC32
	.space	4
	.word	20
	.word	-1
	.word	.LC33
	.space	4
	.word	21
	.word	-1
	.word	.LC34
	.space	4
	.word	22
	.word	-1
	.word	.LC35
	.space	4
	.word	23
	.word	-1
	.word	.LC36
	.space	4
	.word	24
	.word	-1
	.word	.LC37
	.space	4
	.word	25
	.word	-1
	.word	.LC38
	.space	4
	.word	26
	.word	-1
	.word	.LC39
	.space	4
	.word	27
	.word	-1
	.word	.LC40
	.space	4
	.word	28
	.word	-1
	.word	.LC41
	.space	4
	.word	-1
	.word	-1
	.word	0
	.space	4
	.global	krb5_types
	.section	.rodata
	.align	2
.LC42:
	.ascii	"Krb5 Ticket\000"
	.align	2
.LC43:
	.ascii	"Krb5 Autenticator\000"
	.align	2
.LC44:
	.ascii	"Krb5 Encrypted ticket part\000"
	.align	2
.LC45:
	.ascii	"Krb5 AS-REQ packet\000"
	.align	2
.LC46:
	.ascii	"Krb5 AS-REP packet\000"
	.align	2
.LC47:
	.ascii	"Krb5 TGS-REQ packet\000"
	.align	2
.LC48:
	.ascii	"Krb5 TGS-REP packet\000"
	.align	2
.LC49:
	.ascii	"Krb5 AP-REQ packet\000"
	.align	2
.LC50:
	.ascii	"Krb5 AP-REP packet\000"
	.align	2
.LC51:
	.ascii	"Krb5 SAFE packet\000"
	.align	2
.LC52:
	.ascii	"Krb5 PRIV packet\000"
	.align	2
.LC53:
	.ascii	"Krb5 CRED packet\000"
	.align	2
.LC54:
	.ascii	"Krb5 ERROR packet\000"
	.align	2
.LC55:
	.ascii	"Krb5 Encrypted AS-REP part\000"
	.align	2
.LC56:
	.ascii	"Krb5 Encrypted TGS-REP part\000"
	.align	2
.LC57:
	.ascii	"Krb5 Encrypted AP-REP part\000"
	.align	2
.LC58:
	.ascii	"Krb5 Encrypted PRIV part\000"
	.align	2
.LC59:
	.ascii	"Krb5 Encrypted CRED part\000"
	.data
	.align	2
	.type	krb5_types, %object
	.size	krb5_types, 304
krb5_types:
	.word	1
	.word	-1
	.word	.LC42
	.space	4
	.word	2
	.word	-1
	.word	.LC43
	.space	4
	.word	3
	.word	-1
	.word	.LC44
	.space	4
	.word	10
	.word	-1
	.word	.LC45
	.space	4
	.word	11
	.word	-1
	.word	.LC46
	.space	4
	.word	12
	.word	-1
	.word	.LC47
	.space	4
	.word	13
	.word	-1
	.word	.LC48
	.space	4
	.word	14
	.word	-1
	.word	.LC49
	.space	4
	.word	15
	.word	-1
	.word	.LC50
	.space	4
	.word	20
	.word	-1
	.word	.LC51
	.space	4
	.word	21
	.word	-1
	.word	.LC52
	.space	4
	.word	22
	.word	-1
	.word	.LC53
	.space	4
	.word	30
	.word	-1
	.word	.LC54
	.space	4
	.word	25
	.word	-1
	.word	.LC55
	.space	4
	.word	26
	.word	-1
	.word	.LC56
	.space	4
	.word	27
	.word	-1
	.word	.LC57
	.space	4
	.word	28
	.word	-1
	.word	.LC58
	.space	4
	.word	29
	.word	-1
	.word	.LC59
	.space	4
	.word	-1
	.word	-1
	.word	0
	.space	4
	.global	krb5_fields
	.section	.rodata
	.align	2
.LC60:
	.ascii	"name-type\000"
	.align	2
.LC61:
	.ascii	"name-string\000"
	.align	2
.LC62:
	.ascii	"etype\000"
	.align	2
.LC63:
	.ascii	"kvno\000"
	.align	2
.LC64:
	.ascii	"cipher\000"
	.align	2
.LC65:
	.ascii	"addr-type\000"
	.align	2
.LC66:
	.ascii	"address\000"
	.align	2
.LC67:
	.ascii	"ad-type\000"
	.align	2
.LC68:
	.ascii	"ad-data\000"
	.align	2
.LC69:
	.ascii	"keytype\000"
	.align	2
.LC70:
	.ascii	"keyvalue\000"
	.align	2
.LC71:
	.ascii	"cksumtype\000"
	.align	2
.LC72:
	.ascii	"checksum\000"
	.align	2
.LC73:
	.ascii	"kdc-options\000"
	.align	2
.LC74:
	.ascii	"cname\000"
	.align	2
.LC75:
	.ascii	"realm\000"
	.align	2
.LC76:
	.ascii	"sname\000"
	.align	2
.LC77:
	.ascii	"from\000"
	.align	2
.LC78:
	.ascii	"till\000"
	.align	2
.LC79:
	.ascii	"rtime\000"
	.align	2
.LC80:
	.ascii	"nonce\000"
	.align	2
.LC81:
	.ascii	"addresses\000"
	.align	2
.LC82:
	.ascii	"enc-authorization-data\000"
	.align	2
.LC83:
	.ascii	"additional-tickets\000"
	.align	2
.LC84:
	.ascii	"padata-type\000"
	.align	2
.LC85:
	.ascii	"pa-data\000"
	.align	2
.LC86:
	.ascii	"user-data\000"
	.align	2
.LC87:
	.ascii	"timestamp\000"
	.align	2
.LC88:
	.ascii	"usec\000"
	.align	2
.LC89:
	.ascii	"seq-number\000"
	.align	2
.LC90:
	.ascii	"s-address\000"
	.align	2
.LC91:
	.ascii	"r-address\000"
	.align	2
.LC92:
	.ascii	"lr-type\000"
	.align	2
.LC93:
	.ascii	"lr-value\000"
	.align	2
.LC94:
	.ascii	"key\000"
	.align	2
.LC95:
	.ascii	"prealm\000"
	.align	2
.LC96:
	.ascii	"pname\000"
	.align	2
.LC97:
	.ascii	"flags\000"
	.align	2
.LC98:
	.ascii	"authtime\000"
	.align	2
.LC99:
	.ascii	"startime\000"
	.align	2
.LC100:
	.ascii	"endtime\000"
	.align	2
.LC101:
	.ascii	"renew-till\000"
	.align	2
.LC102:
	.ascii	"srealm\000"
	.align	2
.LC103:
	.ascii	"caddr\000"
	.align	2
.LC104:
	.ascii	"tkt-vno\000"
	.align	2
.LC105:
	.ascii	"tkt-enc-part\000"
	.align	2
.LC106:
	.ascii	"authenticator-vno\000"
	.align	2
.LC107:
	.ascii	"crealm\000"
	.align	2
.LC108:
	.ascii	"cksum\000"
	.align	2
.LC109:
	.ascii	"cusec\000"
	.align	2
.LC110:
	.ascii	"ctime\000"
	.align	2
.LC111:
	.ascii	"subkey\000"
	.align	2
.LC112:
	.ascii	"authorization-data\000"
	.align	2
.LC113:
	.ascii	"transited\000"
	.align	2
.LC114:
	.ascii	"starttime\000"
	.align	2
.LC115:
	.ascii	"pvno\000"
	.align	2
.LC116:
	.ascii	"msg-type\000"
	.align	2
.LC117:
	.ascii	"padata\000"
	.align	2
.LC118:
	.ascii	"req-body\000"
	.align	2
.LC119:
	.ascii	"ticket\000"
	.align	2
.LC120:
	.ascii	"enc-part\000"
	.align	2
.LC121:
	.ascii	"ap-options\000"
	.align	2
.LC122:
	.ascii	"authenticator\000"
	.align	2
.LC123:
	.ascii	"safe-body\000"
	.align	2
.LC124:
	.ascii	"tickets\000"
	.align	2
.LC125:
	.ascii	"last-req\000"
	.align	2
.LC126:
	.ascii	"key-expiration\000"
	.align	2
.LC127:
	.ascii	"enddtime\000"
	.align	2
.LC128:
	.ascii	"ticket-info\000"
	.align	2
.LC129:
	.ascii	"stime\000"
	.align	2
.LC130:
	.ascii	"susec\000"
	.align	2
.LC131:
	.ascii	"error-code\000"
	.align	2
.LC132:
	.ascii	"e-text\000"
	.align	2
.LC133:
	.ascii	"e-data\000"
	.data
	.align	2
	.type	krb5_fields, %object
	.size	krb5_fields, 2672
krb5_fields:
	.word	1000
	.word	0
	.word	.LC60
	.space	4
	.word	1000
	.word	1
	.word	.LC61
	.space	4
	.word	1001
	.word	0
	.word	.LC62
	.space	4
	.word	1001
	.word	1
	.word	.LC63
	.space	4
	.word	1001
	.word	2
	.word	.LC64
	.space	4
	.word	1002
	.word	0
	.word	.LC65
	.space	4
	.word	1002
	.word	1
	.word	.LC66
	.space	4
	.word	1003
	.word	0
	.word	.LC65
	.space	4
	.word	1003
	.word	1
	.word	.LC66
	.space	4
	.word	1004
	.word	0
	.word	.LC67
	.space	4
	.word	1004
	.word	1
	.word	.LC68
	.space	4
	.word	1005
	.word	0
	.word	.LC69
	.space	4
	.word	1005
	.word	1
	.word	.LC70
	.space	4
	.word	1006
	.word	0
	.word	.LC71
	.space	4
	.word	1006
	.word	1
	.word	.LC72
	.space	4
	.word	1007
	.word	0
	.word	.LC73
	.space	4
	.word	1007
	.word	1
	.word	.LC74
	.word	1000
	.word	1007
	.word	2
	.word	.LC75
	.space	4
	.word	1007
	.word	3
	.word	.LC76
	.word	1000
	.word	1007
	.word	4
	.word	.LC77
	.space	4
	.word	1007
	.word	5
	.word	.LC78
	.space	4
	.word	1007
	.word	6
	.word	.LC79
	.space	4
	.word	1007
	.word	7
	.word	.LC80
	.space	4
	.word	1007
	.word	8
	.word	.LC62
	.space	4
	.word	1007
	.word	9
	.word	.LC81
	.word	1003
	.word	1007
	.word	10
	.word	.LC82
	.word	1001
	.word	1007
	.word	11
	.word	.LC83
	.space	4
	.word	1008
	.word	1
	.word	.LC84
	.space	4
	.word	1008
	.word	2
	.word	.LC85
	.space	4
	.word	1009
	.word	0
	.word	.LC86
	.space	4
	.word	1009
	.word	1
	.word	.LC87
	.space	4
	.word	1009
	.word	2
	.word	.LC88
	.space	4
	.word	1009
	.word	3
	.word	.LC89
	.space	4
	.word	1009
	.word	4
	.word	.LC90
	.word	1002
	.word	1009
	.word	5
	.word	.LC91
	.word	1002
	.word	1010
	.word	0
	.word	.LC92
	.space	4
	.word	1010
	.word	1
	.word	.LC93
	.space	4
	.word	1011
	.word	0
	.word	.LC94
	.word	1005
	.word	1011
	.word	1
	.word	.LC95
	.space	4
	.word	1011
	.word	2
	.word	.LC96
	.word	1000
	.word	1011
	.word	3
	.word	.LC97
	.space	4
	.word	1011
	.word	4
	.word	.LC98
	.space	4
	.word	1011
	.word	5
	.word	.LC99
	.space	4
	.word	1011
	.word	6
	.word	.LC100
	.space	4
	.word	1011
	.word	7
	.word	.LC101
	.space	4
	.word	1011
	.word	8
	.word	.LC102
	.space	4
	.word	1011
	.word	9
	.word	.LC76
	.word	1000
	.word	1011
	.word	10
	.word	.LC103
	.word	1002
	.word	1
	.word	0
	.word	.LC104
	.space	4
	.word	1
	.word	1
	.word	.LC75
	.space	4
	.word	1
	.word	2
	.word	.LC76
	.word	1000
	.word	1
	.word	3
	.word	.LC105
	.word	1001
	.word	2
	.word	0
	.word	.LC106
	.space	4
	.word	2
	.word	1
	.word	.LC107
	.space	4
	.word	2
	.word	2
	.word	.LC74
	.word	1000
	.word	2
	.word	3
	.word	.LC108
	.word	1006
	.word	2
	.word	4
	.word	.LC109
	.space	4
	.word	2
	.word	5
	.word	.LC110
	.space	4
	.word	2
	.word	6
	.word	.LC111
	.word	1005
	.word	2
	.word	7
	.word	.LC89
	.space	4
	.word	2
	.word	8
	.word	.LC112
	.word	1004
	.word	3
	.word	0
	.word	.LC97
	.space	4
	.word	3
	.word	1
	.word	.LC94
	.word	1005
	.word	3
	.word	2
	.word	.LC107
	.space	4
	.word	3
	.word	3
	.word	.LC74
	.word	1000
	.word	3
	.word	4
	.word	.LC113
	.space	4
	.word	3
	.word	5
	.word	.LC98
	.space	4
	.word	3
	.word	6
	.word	.LC114
	.space	4
	.word	3
	.word	7
	.word	.LC100
	.space	4
	.word	3
	.word	8
	.word	.LC101
	.space	4
	.word	3
	.word	9
	.word	.LC103
	.word	1003
	.word	3
	.word	10
	.word	.LC112
	.word	1004
	.word	10
	.word	1
	.word	.LC115
	.space	4
	.word	10
	.word	2
	.word	.LC116
	.space	4
	.word	10
	.word	3
	.word	.LC117
	.word	1008
	.word	10
	.word	4
	.word	.LC118
	.word	1007
	.word	11
	.word	0
	.word	.LC115
	.space	4
	.word	11
	.word	1
	.word	.LC116
	.space	4
	.word	11
	.word	2
	.word	.LC117
	.word	1008
	.word	11
	.word	3
	.word	.LC107
	.space	4
	.word	11
	.word	4
	.word	.LC74
	.word	1000
	.word	11
	.word	5
	.word	.LC119
	.space	4
	.word	11
	.word	6
	.word	.LC120
	.word	1001
	.word	12
	.word	1
	.word	.LC115
	.space	4
	.word	12
	.word	2
	.word	.LC116
	.space	4
	.word	12
	.word	3
	.word	.LC117
	.word	1008
	.word	12
	.word	4
	.word	.LC118
	.word	1007
	.word	13
	.word	0
	.word	.LC115
	.space	4
	.word	13
	.word	1
	.word	.LC116
	.space	4
	.word	13
	.word	2
	.word	.LC117
	.word	1008
	.word	13
	.word	3
	.word	.LC107
	.space	4
	.word	13
	.word	4
	.word	.LC74
	.word	1000
	.word	13
	.word	5
	.word	.LC119
	.space	4
	.word	13
	.word	6
	.word	.LC120
	.word	1001
	.word	14
	.word	0
	.word	.LC115
	.space	4
	.word	14
	.word	1
	.word	.LC116
	.space	4
	.word	14
	.word	2
	.word	.LC121
	.space	4
	.word	14
	.word	3
	.word	.LC119
	.space	4
	.word	14
	.word	4
	.word	.LC122
	.word	1001
	.word	15
	.word	0
	.word	.LC115
	.space	4
	.word	15
	.word	1
	.word	.LC116
	.space	4
	.word	15
	.word	2
	.word	.LC120
	.word	1001
	.word	20
	.word	0
	.word	.LC115
	.space	4
	.word	20
	.word	1
	.word	.LC116
	.space	4
	.word	20
	.word	2
	.word	.LC123
	.word	1009
	.word	20
	.word	3
	.word	.LC108
	.word	1006
	.word	21
	.word	0
	.word	.LC115
	.space	4
	.word	21
	.word	1
	.word	.LC116
	.space	4
	.word	21
	.word	2
	.word	.LC120
	.word	1001
	.word	22
	.word	0
	.word	.LC115
	.space	4
	.word	22
	.word	1
	.word	.LC116
	.space	4
	.word	22
	.word	2
	.word	.LC124
	.space	4
	.word	22
	.word	3
	.word	.LC120
	.word	1001
	.word	25
	.word	0
	.word	.LC94
	.word	1005
	.word	25
	.word	1
	.word	.LC125
	.word	1010
	.word	25
	.word	2
	.word	.LC80
	.space	4
	.word	25
	.word	3
	.word	.LC126
	.space	4
	.word	25
	.word	4
	.word	.LC97
	.space	4
	.word	25
	.word	5
	.word	.LC98
	.space	4
	.word	25
	.word	6
	.word	.LC114
	.space	4
	.word	25
	.word	7
	.word	.LC127
	.space	4
	.word	25
	.word	8
	.word	.LC101
	.space	4
	.word	25
	.word	9
	.word	.LC102
	.space	4
	.word	25
	.word	10
	.word	.LC76
	.word	1000
	.word	25
	.word	11
	.word	.LC103
	.word	1003
	.word	26
	.word	0
	.word	.LC94
	.word	1005
	.word	26
	.word	1
	.word	.LC125
	.word	1010
	.word	26
	.word	2
	.word	.LC80
	.space	4
	.word	26
	.word	3
	.word	.LC126
	.space	4
	.word	26
	.word	4
	.word	.LC97
	.space	4
	.word	26
	.word	5
	.word	.LC98
	.space	4
	.word	26
	.word	6
	.word	.LC114
	.space	4
	.word	26
	.word	7
	.word	.LC127
	.space	4
	.word	26
	.word	8
	.word	.LC101
	.space	4
	.word	26
	.word	9
	.word	.LC102
	.space	4
	.word	26
	.word	10
	.word	.LC76
	.word	1000
	.word	26
	.word	11
	.word	.LC103
	.word	1003
	.word	27
	.word	0
	.word	.LC110
	.space	4
	.word	27
	.word	1
	.word	.LC109
	.space	4
	.word	27
	.word	2
	.word	.LC111
	.word	1005
	.word	27
	.word	3
	.word	.LC89
	.space	4
	.word	28
	.word	0
	.word	.LC86
	.space	4
	.word	28
	.word	1
	.word	.LC87
	.space	4
	.word	28
	.word	2
	.word	.LC88
	.space	4
	.word	28
	.word	3
	.word	.LC89
	.space	4
	.word	28
	.word	4
	.word	.LC90
	.word	1002
	.word	28
	.word	5
	.word	.LC91
	.word	1002
	.word	29
	.word	0
	.word	.LC128
	.word	1011
	.word	29
	.word	1
	.word	.LC80
	.space	4
	.word	29
	.word	2
	.word	.LC87
	.space	4
	.word	29
	.word	3
	.word	.LC88
	.space	4
	.word	29
	.word	4
	.word	.LC90
	.word	1002
	.word	29
	.word	5
	.word	.LC91
	.word	1002
	.word	30
	.word	0
	.word	.LC115
	.space	4
	.word	30
	.word	1
	.word	.LC116
	.space	4
	.word	30
	.word	2
	.word	.LC110
	.space	4
	.word	30
	.word	3
	.word	.LC109
	.space	4
	.word	30
	.word	4
	.word	.LC129
	.space	4
	.word	30
	.word	5
	.word	.LC130
	.space	4
	.word	30
	.word	6
	.word	.LC131
	.space	4
	.word	30
	.word	7
	.word	.LC107
	.space	4
	.word	30
	.word	8
	.word	.LC74
	.word	1000
	.word	30
	.word	9
	.word	.LC75
	.space	4
	.word	30
	.word	10
	.word	.LC76
	.word	1000
	.word	30
	.word	11
	.word	.LC132
	.space	4
	.word	30
	.word	12
	.word	.LC133
	.space	4
	.word	-1
	.word	-1
	.word	0
	.space	4
	.section	.rodata
	.align	2
.LC134:
	.ascii	"UNIV %d\000"
	.align	2
.LC135:
	.ascii	"APPL %d\000"
	.align	2
.LC136:
	.ascii	"%d\000"
	.align	2
.LC137:
	.ascii	"CONT %d\000"
	.align	2
.LC138:
	.ascii	"PRIV %d\000"
	.align	2
.LC139:
	.ascii	"UNIV %d???\000"
	.align	2
.LC140:
	.ascii	"] \000"
	.text
	.align	2
	.global	print_tag_type
	.syntax unified
	.arm
	.fpu softvfp
	.type	print_tag_type, %function
print_tag_type:
	@ args = 0, pretend = 0, frame = 32
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #32
	str	r0, [fp, #-24]
	str	r1, [fp, #-28]
	str	r2, [fp, #-32]
	ldr	r3, [fp, #-28]
	and	r3, r3, #31
	str	r3, [fp, #-12]
	mov	r3, #1
	str	r3, [fp, #-16]
	ldr	r1, [fp, #-24]
	mov	r0, #91
	bl	fputc
	ldr	r3, [fp, #-28]
	and	r3, r3, #192
	cmp	r3, #192
	beq	.L118
	cmp	r3, #192
	bgt	.L119
	cmp	r3, #128
	beq	.L120
	cmp	r3, #128
	bgt	.L119
	cmp	r3, #0
	beq	.L121
	cmp	r3, #64
	beq	.L122
	b	.L119
.L121:
	ldr	r3, .L132
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L123
	ldr	r3, .L132+4
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L123
	mov	r3, #0
	str	r3, [fp, #-16]
	b	.L119
.L123:
	ldr	r2, [fp, #-12]
	ldr	r1, .L132+8
	ldr	r0, [fp, #-24]
	bl	fprintf
	b	.L119
.L122:
	ldr	r2, .L132+12
	ldr	r3, [fp, #-12]
	str	r3, [r2]
	ldr	r3, .L132+16
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L125
	mvn	r2, #0
	ldr	r1, [fp, #-12]
	ldr	r0, .L132+20
	bl	lookup_typestring
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	beq	.L125
	ldr	r1, [fp, #-24]
	ldr	r0, [fp, #-8]
	bl	fputs
	b	.L119
.L125:
	ldr	r2, [fp, #-12]
	ldr	r1, .L132+24
	ldr	r0, [fp, #-24]
	bl	fprintf
	b	.L119
.L120:
	ldr	r3, .L132+16
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L126
	ldr	r3, .L132+12
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L126
	ldr	r3, .L132+12
	ldr	r3, [r3]
	ldr	r2, [fp, #-12]
	mov	r1, r3
	ldr	r0, .L132+28
	bl	lookup_typestring
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	beq	.L126
	ldr	r1, [fp, #-24]
	ldr	r0, [fp, #-8]
	bl	fputs
	b	.L119
.L126:
	ldr	r3, .L132+32
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L127
	ldr	r3, [fp, #-32]
	cmp	r3, #0
	beq	.L127
	ldr	r2, [fp, #-12]
	ldr	r1, .L132+36
	ldr	r0, [fp, #-24]
	bl	fprintf
	b	.L119
.L127:
	ldr	r2, [fp, #-12]
	ldr	r1, .L132+40
	ldr	r0, [fp, #-24]
	bl	fprintf
	b	.L119
.L118:
	ldr	r2, [fp, #-12]
	ldr	r1, .L132+44
	ldr	r0, [fp, #-24]
	bl	fprintf
	nop
.L119:
	ldr	r3, .L132
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L129
	ldr	r3, [fp, #-28]
	and	r3, r3, #192
	cmp	r3, #0
	bne	.L129
	ldr	r3, [fp, #-16]
	cmp	r3, #0
	beq	.L130
	ldr	r1, [fp, #-24]
	mov	r0, #32
	bl	fputc
.L130:
	ldr	r3, [fp, #-28]
	and	r3, r3, #31
	mvn	r2, #0
	mov	r1, r3
	ldr	r0, .L132+48
	bl	lookup_typestring
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	beq	.L131
	ldr	r1, [fp, #-24]
	ldr	r0, [fp, #-8]
	bl	fputs
	b	.L129
.L131:
	ldr	r3, [fp, #-28]
	and	r3, r3, #31
	mov	r2, r3
	ldr	r1, .L132+52
	ldr	r0, [fp, #-24]
	bl	fprintf
.L129:
	ldr	r3, [fp, #-24]
	mov	r2, #2
	mov	r1, #1
	ldr	r0, .L132+56
	bl	fwrite
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L133:
	.align	2
.L132:
	.word	print_types
	.word	print_skip_tagnum
	.word	.LC134
	.word	current_appl_type
	.word	print_krb5_types
	.word	krb5_types
	.word	.LC135
	.word	krb5_fields
	.word	print_skip_context
	.word	.LC136
	.word	.LC137
	.word	.LC138
	.word	univ_types
	.word	.LC139
	.word	.LC140
	.size	print_tag_type, .-print_tag_type
	.ident	"GCC: (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0"
	.section	.note.GNU-stack,"",%progbits
