	.file	"extr_dhav.c_dhav_read_packet.c"
	.intel_syntax noprefix
	.text
	.section	.rodata.str1.1,"aMS",@progbits,1
.LC0:
	.string	"Unknown video codec %X\n"
.LC1:
	.string	"Unknown audio codec %X\n"
	.text
	.p2align 4
	.type	dhav_read_packet, @function
dhav_read_packet:
.LFB0:
	.cfi_startproc
	endbr64
	push	r15
	.cfi_def_cfa_offset 16
	.cfi_offset 15, -16
	push	r14
	.cfi_def_cfa_offset 24
	.cfi_offset 14, -24
	lea	r14, .L10[rip]
	push	r13
	.cfi_def_cfa_offset 32
	.cfi_offset 13, -32
	mov	r13, rsi
	push	r12
	.cfi_def_cfa_offset 40
	.cfi_offset 12, -40
	push	rbp
	.cfi_def_cfa_offset 48
	.cfi_offset 6, -48
	push	rbx
	.cfi_def_cfa_offset 56
	.cfi_offset 3, -56
	mov	rbx, rdi
	sub	rsp, 24
	.cfi_def_cfa_offset 80
	mov	r12, QWORD PTR 16[rdi]
	.p2align 4,,10
	.p2align 3
.L3:
	mov	rdi, rbx
	call	read_chunk@PLT
	mov	ebp, eax
	test	eax, eax
	je	.L3
	js	.L1
	mov	eax, DWORD PTR [r12]
	cmp	eax, 253
	je	.L45
	cmp	eax, 240
	jne	.L42
	mov	ecx, DWORD PTR 12[r12]
	cmp	ecx, -1
	je	.L46
.L33:
	mov	edi, DWORD PTR [rbx]
	test	ecx, ecx
	jns	.L34
.L47:
	mov	esi, ebp
	call	avio_skip@PLT
	mov	edi, DWORD PTR [rbx]
	call	avio_rl32@PLT
	mov	ecx, 118
	mov	edx, 97
	mov	esi, 104
	mov	edi, 100
	mov	rbp, rax
	call	MKTAG@PLT
	cmp	rbp, rax
	jne	.L3
.L2:
	endbr64
	mov	edi, DWORD PTR [rbx]
	mov	esi, 4
	call	avio_skip@PLT
	jmp	.L3
	.p2align 4,,10
	.p2align 3
.L42:
	mov	ecx, DWORD PTR 4[r12]
	mov	edi, DWORD PTR [rbx]
	test	ecx, ecx
	js	.L47
.L34:
	mov	edx, ebp
	mov	rsi, r13
	mov	DWORD PTR 12[rsp], ecx
	call	av_get_packet@PLT
	mov	ebp, eax
	test	eax, eax
	js	.L1
	movsx	rcx, DWORD PTR 12[rsp]
	cmp	DWORD PTR [r12], 252
	mov	DWORD PTR 0[r13], ecx
	je	.L36
	mov	eax, DWORD PTR AV_PKT_FLAG_KEY[rip]
	or	DWORD PTR 16[r13], eax
.L36:
	mov	rax, QWORD PTR 8[rbx]
	mov	rdi, rbx
	mov	rax, QWORD PTR [rax+rcx*8]
	mov	esi, DWORD PTR [rax]
	call	get_pts@PLT
	mov	DWORD PTR 4[r13], 1
	mov	edi, DWORD PTR [rbx]
	mov	DWORD PTR 12[r13], eax
	mov	eax, DWORD PTR 20[r12]
	mov	DWORD PTR 8[r13], eax
	call	avio_rl32@PLT
	mov	ecx, 118
	mov	edx, 97
	mov	esi, 104
	mov	edi, 100
	mov	r12, rax
	call	MKTAG@PLT
	cmp	r12, rax
	je	.L48
.L1:
	add	rsp, 24
	.cfi_remember_state
	.cfi_def_cfa_offset 56
	mov	eax, ebp
	pop	rbx
	.cfi_def_cfa_offset 48
	pop	rbp
	.cfi_def_cfa_offset 40
	pop	r12
	.cfi_def_cfa_offset 32
	pop	r13
	.cfi_def_cfa_offset 24
	pop	r14
	.cfi_def_cfa_offset 16
	pop	r15
	.cfi_def_cfa_offset 8
	ret
	.p2align 4,,10
	.p2align 3
.L45:
	.cfi_restore_state
	mov	ecx, DWORD PTR 4[r12]
	cmp	ecx, -1
	jne	.L33
	xor	esi, esi
	mov	rdi, rbx
	call	avformat_new_stream@PLT
	mov	r15, rax
	test	rax, rax
	je	.L43
	mov	edx, DWORD PTR AVMEDIA_TYPE_VIDEO[rip]
	mov	rax, QWORD PTR 16[rax]
	mov	DWORD PTR 16[rax], edx
	mov	edx, DWORD PTR 8[r12]
	cmp	edx, 12
	ja	.L8
	mov	ecx, edx
	movsx	rcx, DWORD PTR [r14+rcx*4]
	add	rcx, r14
	notrack jmp	rcx
	.section	.rodata
	.align 4
	.align 4
.L10:
	.long	.L8-.L10
	.long	.L13-.L10
	.long	.L11-.L10
	.long	.L12-.L10
	.long	.L11-.L10
	.long	.L8-.L10
	.long	.L8-.L10
	.long	.L8-.L10
	.long	.L11-.L10
	.long	.L8-.L10
	.long	.L8-.L10
	.long	.L8-.L10
	.long	.L9-.L10
	.text
.L46:
	xor	esi, esi
	mov	rdi, rbx
	call	avformat_new_stream@PLT
	mov	r15, rax
	test	rax, rax
	je	.L43
	mov	edx, DWORD PTR AVMEDIA_TYPE_AUDIO[rip]
	mov	rax, QWORD PTR 16[rax]
	mov	r9d, DWORD PTR 16[r12]
	mov	DWORD PTR 16[rax], edx
	lea	edx, -7[r9]
	cmp	edx, 26
	ja	.L20
	lea	rsi, .L22[rip]
	movsx	rdx, DWORD PTR [rsi+rdx*4]
	add	rdx, rsi
	notrack jmp	rdx
	.section	.rodata
	.align 4
	.align 4
.L22:
	.long	.L29-.L22
	.long	.L20-.L22
	.long	.L20-.L22
	.long	.L25-.L22
	.long	.L20-.L22
	.long	.L26-.L22
	.long	.L28-.L22
	.long	.L27-.L22
	.long	.L20-.L22
	.long	.L26-.L22
	.long	.L20-.L22
	.long	.L20-.L22
	.long	.L20-.L22
	.long	.L20-.L22
	.long	.L20-.L22
	.long	.L25-.L22
	.long	.L20-.L22
	.long	.L20-.L22
	.long	.L20-.L22
	.long	.L24-.L22
	.long	.L20-.L22
	.long	.L20-.L22
	.long	.L20-.L22
	.long	.L20-.L22
	.long	.L23-.L22
	.long	.L20-.L22
	.long	.L21-.L22
	.text
.L11:
	mov	rdx, QWORD PTR AV_CODEC_ID_H264[rip]
	mov	QWORD PTR 8[rax], rdx
.L14:
	mov	edx, DWORD PTR 40[r12]
	mov	edi, 8
	mov	DWORD PTR 24[rax], edx
	mov	edx, DWORD PTR 36[r12]
	mov	DWORD PTR 20[rax], edx
	mov	eax, DWORD PTR 32[r12]
	mov	DWORD PTR 24[r15], 1
	mov	DWORD PTR 28[r15], eax
	call	av_mallocz@PLT
	mov	QWORD PTR 8[r15], rax
	test	rax, rax
	je	.L43
	mov	rdx, QWORD PTR AV_NOPTS_VALUE[rip]
	mov	QWORD PTR [rax], rdx
	mov	eax, DWORD PTR [r15]
	mov	DWORD PTR 4[r12], eax
.L41:
	mov	ecx, 1000
	mov	edx, 1
	mov	esi, 64
	mov	rdi, r15
	call	avpriv_set_pts_info@PLT
	cmp	DWORD PTR [r12], 240
	jne	.L42
	mov	ecx, DWORD PTR 12[r12]
	jmp	.L33
.L8:
	lea	rsi, .LC0[rip]
	mov	rdi, rbx
	call	avpriv_request_sample@PLT
	mov	rax, QWORD PTR 16[r15]
	jmp	.L14
.L13:
	mov	rdx, QWORD PTR AV_CODEC_ID_MPEG4[rip]
	mov	QWORD PTR 8[rax], rdx
	jmp	.L14
.L9:
	mov	rdx, QWORD PTR AV_CODEC_ID_HEVC[rip]
	mov	QWORD PTR 8[rax], rdx
	jmp	.L14
.L12:
	mov	rdx, QWORD PTR AV_CODEC_ID_MJPEG[rip]
	mov	QWORD PTR 8[rax], rdx
	jmp	.L14
.L26:
	mov	rdx, QWORD PTR AV_CODEC_ID_PCM_S16LE[rip]
	mov	QWORD PTR 8[rax], rdx
.L30:
	mov	edx, DWORD PTR 28[r12]
	mov	edi, 8
	mov	DWORD PTR 4[rax], edx
	mov	edx, DWORD PTR 24[r12]
	mov	DWORD PTR [rax], edx
	call	av_mallocz@PLT
	mov	QWORD PTR 8[r15], rax
	test	rax, rax
	je	.L43
	mov	rdx, QWORD PTR AV_NOPTS_VALUE[rip]
	mov	QWORD PTR [rax], rdx
	mov	eax, DWORD PTR [r15]
	mov	DWORD PTR 12[r12], eax
	jmp	.L41
.L25:
	mov	rdx, QWORD PTR AV_CODEC_ID_PCM_MULAW[rip]
	mov	QWORD PTR 8[rax], rdx
	jmp	.L30
.L20:
	mov	edx, r9d
	lea	rsi, .LC1[rip]
	mov	rdi, rbx
	call	avpriv_request_sample@PLT
	mov	rax, QWORD PTR 16[r15]
	jmp	.L30
.L27:
	mov	rdx, QWORD PTR AV_CODEC_ID_PCM_ALAW[rip]
	mov	QWORD PTR 8[rax], rdx
	jmp	.L30
.L24:
	mov	rdx, QWORD PTR AV_CODEC_ID_AAC[rip]
	mov	QWORD PTR 8[rax], rdx
	jmp	.L30
.L23:
	mov	rdx, QWORD PTR AV_CODEC_ID_MP2[rip]
	mov	QWORD PTR 8[rax], rdx
	jmp	.L30
.L21:
	mov	rdx, QWORD PTR AV_CODEC_ID_MP3[rip]
	mov	QWORD PTR 8[rax], rdx
	jmp	.L30
.L29:
	mov	rdx, QWORD PTR AV_CODEC_ID_PCM_S8[rip]
	mov	QWORD PTR 8[rax], rdx
	jmp	.L30
.L28:
	mov	rdx, QWORD PTR AV_CODEC_ID_ADPCM_MS[rip]
	mov	QWORD PTR 8[rax], rdx
	jmp	.L30
.L48:
	mov	edi, DWORD PTR [rbx]
	mov	esi, 4
	call	avio_skip@PLT
	jmp	.L1
.L43:
	mov	edi, DWORD PTR ENOMEM[rip]
	add	rsp, 24
	.cfi_def_cfa_offset 56
	pop	rbx
	.cfi_def_cfa_offset 48
	pop	rbp
	.cfi_def_cfa_offset 40
	pop	r12
	.cfi_def_cfa_offset 32
	pop	r13
	.cfi_def_cfa_offset 24
	pop	r14
	.cfi_def_cfa_offset 16
	pop	r15
	.cfi_def_cfa_offset 8
	jmp	AVERROR@PLT
	.cfi_endproc
.LFE0:
	.size	dhav_read_packet, .-dhav_read_packet
	.comm	ENOMEM,4,4
	.comm	AV_PKT_FLAG_KEY,4,4
	.comm	AV_NOPTS_VALUE,8,8
	.comm	AV_CODEC_ID_PCM_S8,8,8
	.comm	AV_CODEC_ID_PCM_S16LE,8,8
	.comm	AV_CODEC_ID_PCM_MULAW,8,8
	.comm	AV_CODEC_ID_PCM_ALAW,8,8
	.comm	AV_CODEC_ID_MPEG4,8,8
	.comm	AV_CODEC_ID_MP3,8,8
	.comm	AV_CODEC_ID_MP2,8,8
	.comm	AV_CODEC_ID_MJPEG,8,8
	.comm	AV_CODEC_ID_HEVC,8,8
	.comm	AV_CODEC_ID_H264,8,8
	.comm	AV_CODEC_ID_ADPCM_MS,8,8
	.comm	AV_CODEC_ID_AAC,8,8
	.comm	AVMEDIA_TYPE_VIDEO,4,4
	.comm	AVMEDIA_TYPE_AUDIO,4,4
	.ident	"GCC: (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.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, 2
	.eabi_attribute 34, 0
	.eabi_attribute 18, 4
	.file	"extr_dhav.c_dhav_read_packet.c"
	.text
	.section	.rodata.str1.4,"aMS",%progbits,1
	.align	2
.LC0:
	.ascii	"Unknown video codec %X\012\000"
	.align	2
.LC1:
	.ascii	"Unknown audio codec %X\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	dhav_read_packet, %function
dhav_read_packet:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 0, uses_anonymous_args = 0
	push	{r4, r5, r6, r7, r8, r9, r10, fp, lr}
	mov	r5, r0
	sub	sp, sp, #12
	ldr	r6, [r0, #8]
	ldr	fp, .L52
	ldr	r10, .L52+4
	str	r1, [sp]
.L2:
	ldr	r8, .L52+8
	ldr	r7, .L52+12
.L3:
	mov	r0, r5
	bl	read_chunk
	subs	r4, r0, #0
	beq	.L3
	blt	.L1
	ldr	r3, [r6]
	cmp	r3, #253
	beq	.L48
	cmp	r3, #240
	bne	.L45
	ldr	r3, [r6, #12]
	cmn	r3, #1
	beq	.L49
.L33:
	cmp	r3, #0
	ldr	r0, [r5]
	bge	.L34
.L50:
	mov	r1, r4
	bl	avio_skip
	ldr	r0, [r5]
	bl	avio_rl32
	mov	r3, #118
	mov	r4, r0
	mov	r2, #97
	mov	r1, #104
	mov	r0, #100
	bl	MKTAG
	cmp	r4, r0
	bne	.L3
	mov	r1, #4
	ldr	r0, [r5]
	bl	avio_skip
	b	.L2
.L11:
	ldr	r2, .L52+16
	ldr	r2, [r2]
	str	r2, [r3, #8]
.L14:
	mov	r2, #1
	ldr	r0, [r6, #40]
	ldr	r1, [r6, #36]
	str	r0, [r3, #20]
	str	r1, [r3, #16]
	ldr	r3, [r6, #32]
	mov	r0, #4
	str	r2, [r9, #12]
	str	r3, [r9, #16]
	bl	av_mallocz
	cmp	r0, #0
	mov	r2, #1
	str	r0, [r9, #4]
	beq	.L46
	ldr	r3, [r9]
	ldr	r1, [r10]
	str	r1, [r0]
	str	r3, [r6, #4]
	mov	r0, r9
	mov	r3, #1000
	mov	r1, #64
	bl	avpriv_set_pts_info
.L16:
	ldr	r3, [r6]
	cmp	r3, #240
	ldreq	r3, [r6, #12]
	beq	.L33
.L45:
	ldr	r3, [r6, #4]
	ldr	r0, [r5]
	cmp	r3, #0
	blt	.L50
.L34:
	ldr	r7, [sp]
	mov	r2, r4
	mov	r1, r7
	str	r3, [sp, #4]
	bl	av_get_packet
	subs	r4, r0, #0
	blt	.L1
	ldr	r2, [r6]
	ldr	r3, [sp, #4]
	cmp	r2, #252
	ldrne	r1, .L52+20
	ldrne	r2, [r7, #16]
	ldrne	r1, [r1]
	str	r3, [r7]
	orrne	r2, r2, r1
	strne	r2, [r7, #16]
	ldr	r2, [r5, #4]
	mov	r0, r5
	ldr	r3, [r2, r3, lsl #2]
	ldr	r1, [r3]
	bl	get_pts
	mov	r3, #1
	ldr	r2, [r6, #20]
	ldr	r1, [sp]
	str	r0, [r1, #12]
	str	r2, [r1, #8]
	str	r3, [r1, #4]
	ldr	r0, [r5]
	bl	avio_rl32
	mov	r3, #118
	mov	r6, r0
	mov	r2, #97
	mov	r1, #104
	mov	r0, #100
	bl	MKTAG
	cmp	r6, r0
	beq	.L51
.L1:
	mov	r0, r4
	add	sp, sp, #12
	@ sp needed
	pop	{r4, r5, r6, r7, r8, r9, r10, fp, pc}
.L48:
	ldr	r3, [r6, #4]
	cmn	r3, #1
	bne	.L33
	mov	r1, #0
	mov	r0, r5
	bl	avformat_new_stream
	subs	r9, r0, #0
	beq	.L46
	ldr	r3, .L52+24
	ldr	r2, [r6, #8]
	ldr	r0, [r3]
	ldr	r3, [r9, #8]
	sub	r1, r2, #1
	str	r0, [r3, #12]
	cmp	r1, #11
	ldrls	pc, [pc, r1, asl #2]
	b	.L8
.L10:
	.word	.L13
	.word	.L11
	.word	.L12
	.word	.L11
	.word	.L8
	.word	.L8
	.word	.L8
	.word	.L11
	.word	.L8
	.word	.L8
	.word	.L8
	.word	.L9
.L49:
	mov	r1, #0
	mov	r0, r5
	bl	avformat_new_stream
	subs	r9, r0, #0
	beq	.L46
	ldr	r2, [r6, #16]
	ldr	r3, [r9, #8]
	ldr	r0, [fp]
	sub	r1, r2, #7
	str	r0, [r3, #12]
	cmp	r1, #26
	ldrls	pc, [pc, r1, asl #2]
	b	.L20
.L22:
	.word	.L29
	.word	.L20
	.word	.L20
	.word	.L25
	.word	.L20
	.word	.L26
	.word	.L28
	.word	.L27
	.word	.L20
	.word	.L26
	.word	.L20
	.word	.L20
	.word	.L20
	.word	.L20
	.word	.L20
	.word	.L25
	.word	.L20
	.word	.L20
	.word	.L20
	.word	.L24
	.word	.L20
	.word	.L20
	.word	.L20
	.word	.L20
	.word	.L23
	.word	.L20
	.word	.L21
.L8:
	mov	r0, r5
	ldr	r1, .L52+28
	bl	avpriv_request_sample
	ldr	r3, [r9, #8]
	b	.L14
.L13:
	ldr	r2, .L52+32
	ldr	r2, [r2]
	str	r2, [r3, #8]
	b	.L14
.L9:
	ldr	r2, .L52+36
	ldr	r2, [r2]
	str	r2, [r3, #8]
	b	.L14
.L12:
	ldr	r2, .L52+40
	ldr	r2, [r2]
	str	r2, [r3, #8]
	b	.L14
.L26:
	ldr	r2, .L52+44
	ldr	r2, [r2]
	str	r2, [r3, #8]
.L30:
	ldr	r1, [r6, #28]
	ldr	r2, [r6, #24]
	mov	r0, #4
	str	r1, [r3, #4]
	str	r2, [r3]
	bl	av_mallocz
	cmp	r0, #0
	str	r0, [r9, #4]
	beq	.L46
	ldr	r3, [r9]
	ldr	r2, [r10]
	mov	r1, #64
	str	r2, [r0]
	str	r3, [r6, #12]
	mov	r0, r9
	mov	r3, #1000
	mov	r2, #1
	bl	avpriv_set_pts_info
	b	.L16
.L25:
	ldr	r2, .L52+48
	ldr	r2, [r2]
	str	r2, [r3, #8]
	b	.L30
.L20:
	mov	r0, r5
	ldr	r1, .L52+52
	bl	avpriv_request_sample
	ldr	r3, [r9, #8]
	b	.L30
.L27:
	ldr	r2, .L52+56
	ldr	r2, [r2]
	str	r2, [r3, #8]
	b	.L30
.L24:
	ldr	r2, .L52+60
	ldr	r2, [r2]
	str	r2, [r3, #8]
	b	.L30
.L23:
	ldr	r2, [r7]
	str	r2, [r3, #8]
	b	.L30
.L21:
	ldr	r2, [r8]
	str	r2, [r3, #8]
	b	.L30
.L29:
	ldr	r2, .L52+64
	ldr	r2, [r2]
	str	r2, [r3, #8]
	b	.L30
.L28:
	ldr	r2, .L52+68
	ldr	r2, [r2]
	str	r2, [r3, #8]
	b	.L30
.L51:
	mov	r1, #4
	ldr	r0, [r5]
	bl	avio_skip
	b	.L1
.L46:
	ldr	r3, .L52+72
	ldr	r0, [r3]
	add	sp, sp, #12
	@ sp needed
	pop	{r4, r5, r6, r7, r8, r9, r10, fp, lr}
	b	AVERROR
.L53:
	.align	2
.L52:
	.word	AVMEDIA_TYPE_AUDIO
	.word	AV_NOPTS_VALUE
	.word	AV_CODEC_ID_MP3
	.word	AV_CODEC_ID_MP2
	.word	AV_CODEC_ID_H264
	.word	AV_PKT_FLAG_KEY
	.word	AVMEDIA_TYPE_VIDEO
	.word	.LC0
	.word	AV_CODEC_ID_MPEG4
	.word	AV_CODEC_ID_HEVC
	.word	AV_CODEC_ID_MJPEG
	.word	AV_CODEC_ID_PCM_S16LE
	.word	AV_CODEC_ID_PCM_MULAW
	.word	.LC1
	.word	AV_CODEC_ID_PCM_ALAW
	.word	AV_CODEC_ID_AAC
	.word	AV_CODEC_ID_PCM_S8
	.word	AV_CODEC_ID_ADPCM_MS
	.word	ENOMEM
	.size	dhav_read_packet, .-dhav_read_packet
	.comm	ENOMEM,4,4
	.comm	AV_PKT_FLAG_KEY,4,4
	.comm	AV_NOPTS_VALUE,4,4
	.comm	AV_CODEC_ID_PCM_S8,4,4
	.comm	AV_CODEC_ID_PCM_S16LE,4,4
	.comm	AV_CODEC_ID_PCM_MULAW,4,4
	.comm	AV_CODEC_ID_PCM_ALAW,4,4
	.comm	AV_CODEC_ID_MPEG4,4,4
	.comm	AV_CODEC_ID_MP3,4,4
	.comm	AV_CODEC_ID_MP2,4,4
	.comm	AV_CODEC_ID_MJPEG,4,4
	.comm	AV_CODEC_ID_HEVC,4,4
	.comm	AV_CODEC_ID_H264,4,4
	.comm	AV_CODEC_ID_ADPCM_MS,4,4
	.comm	AV_CODEC_ID_AAC,4,4
	.comm	AVMEDIA_TYPE_VIDEO,4,4
	.comm	AVMEDIA_TYPE_AUDIO,4,4
	.ident	"GCC: (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0"
	.section	.note.GNU-stack,"",%progbits
