	.file	"extr_virtchnl.h_virtchnl_vc_validate_vf_msg.c"
	.intel_syntax noprefix
	.text
	.p2align 4
	.type	virtchnl_vc_validate_vf_msg, @function
virtchnl_vc_validate_vf_msg:
.LFB0:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	add	esi, -128
	push	rbx
	.cfi_def_cfa_offset 24
	.cfi_offset 3, -24
	sub	rsp, 8
	.cfi_def_cfa_offset 32
	mov	ebp, DWORD PTR FALSE[rip]
	cmp	esi, 26
	ja	.L2
	mov	ebx, ecx
	lea	rcx, .L4[rip]
	movsx	rax, DWORD PTR [rcx+rsi*4]
	add	rax, rcx
	notrack jmp	rax
	.section	.rodata
	.align 4
	.align 4
.L4:
	.long	.L8-.L4
	.long	.L2-.L4
	.long	.L8-.L4
	.long	.L12-.L4
	.long	.L8-.L4
	.long	.L12-.L4
	.long	.L14-.L4
	.long	.L13-.L4
	.long	.L8-.L4
	.long	.L12-.L4
	.long	.L2-.L4
	.long	.L12-.L4
	.long	.L8-.L4
	.long	.L12-.L4
	.long	.L8-.L4
	.long	.L5-.L4
	.long	.L5-.L4
	.long	.L5-.L4
	.long	.L8-.L4
	.long	.L8-.L4
	.long	.L10-.L4
	.long	.L10-.L4
	.long	.L8-.L4
	.long	.L7-.L4
	.long	.L5-.L4
	.long	.L5-.L4
	.long	.L5-.L4
	.text
	.p2align 4,,10
	.p2align 3
.L13:
	call	VF_IS_V11@PLT
	test	eax, eax
	je	.L12
	.p2align 4,,10
	.p2align 3
.L8:
	cmp	ebx, 4
	setne	dl
.L16:
	test	ebp, ebp
	jne	.L17
	xor	eax, eax
	test	dl, dl
	jne	.L17
.L1:
	add	rsp, 8
	.cfi_remember_state
	.cfi_def_cfa_offset 24
	pop	rbx
	.cfi_def_cfa_offset 16
	pop	rbp
	.cfi_def_cfa_offset 8
	ret
	.p2align 4,,10
	.p2align 3
.L5:
	.cfi_restore_state
	cmp	ebx, 3
	jle	.L17
	mov	eax, DWORD PTR [rdx]
	lea	edx, 4[0+rax*4]
	cmp	edx, ebx
	setne	dl
	test	eax, eax
	cmove	ebp, DWORD PTR TRUE[rip]
	jmp	.L16
	.p2align 4,,10
	.p2align 3
.L7:
	cmp	ebx, 3
	jg	.L33
.L17:
	mov	eax, DWORD PTR VIRTCHNL_STATUS_ERR_OPCODE_MISMATCH[rip]
	add	rsp, 8
	.cfi_remember_state
	.cfi_def_cfa_offset 24
	pop	rbx
	.cfi_def_cfa_offset 16
	pop	rbp
	.cfi_def_cfa_offset 8
	ret
	.p2align 4,,10
	.p2align 3
.L12:
	.cfi_restore_state
	test	ebx, ebx
	setne	dl
	jmp	.L16
	.p2align 4,,10
	.p2align 3
.L10:
	cmp	ebx, 3
	jle	.L17
	mov	eax, DWORD PTR [rdx]
	add	eax, 3
	cmp	eax, ebx
	setne	dl
	jmp	.L16
	.p2align 4,,10
	.p2align 3
.L14:
	xor	edx, edx
	test	ebx, ebx
	cmove	ebp, DWORD PTR TRUE[rip]
	jmp	.L16
	.p2align 4,,10
	.p2align 3
.L2:
	mov	eax, DWORD PTR VIRTCHNL_ERR_PARAM[rip]
	jmp	.L1
	.p2align 4,,10
	.p2align 3
.L33:
	mov	eax, DWORD PTR [rdx]
	test	eax, eax
	jne	.L18
	cmp	ebx, 4
	mov	ebp, DWORD PTR TRUE[rip]
	setne	dl
	jmp	.L16
	.p2align 4,,10
	.p2align 3
.L18:
	sal	eax, 2
	cmp	eax, ebx
	setne	dl
	jmp	.L16
	.cfi_endproc
.LFE0:
	.size	virtchnl_vc_validate_vf_msg, .-virtchnl_vc_validate_vf_msg
	.comm	VIRTCHNL_STATUS_ERR_OPCODE_MISMATCH,4,4
	.comm	VIRTCHNL_ERR_PARAM,4,4
	.comm	TRUE,4,4
	.comm	FALSE,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_virtchnl.h_virtchnl_vc_validate_vf_msg.c"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	virtchnl_vc_validate_vf_msg, %function
virtchnl_vc_validate_vf_msg:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 0, uses_anonymous_args = 0
	ldr	ip, .L34
	sub	r1, r1, #128
	push	{r4, r5, r6, lr}
	mov	r4, r3
	ldr	r5, [ip]
	cmp	r1, #26
	ldrls	pc, [pc, r1, asl #2]
	b	.L2
.L4:
	.word	.L8
	.word	.L2
	.word	.L8
	.word	.L12
	.word	.L8
	.word	.L12
	.word	.L14
	.word	.L13
	.word	.L8
	.word	.L12
	.word	.L2
	.word	.L12
	.word	.L8
	.word	.L12
	.word	.L8
	.word	.L5
	.word	.L5
	.word	.L5
	.word	.L8
	.word	.L8
	.word	.L10
	.word	.L10
	.word	.L8
	.word	.L7
	.word	.L5
	.word	.L5
	.word	.L5
.L13:
	bl	VF_IS_V11
	cmp	r0, #0
	beq	.L12
.L8:
	subs	r0, r4, #4
	movne	r0, #1
.L16:
	cmp	r5, #0
	movne	r0, #1
	cmp	r0, #0
	popeq	{r4, r5, r6, pc}
.L17:
	ldr	r3, .L34+4
	ldr	r0, [r3]
	pop	{r4, r5, r6, pc}
.L5:
	cmp	r3, #3
	ble	.L17
	ldr	r3, [r2]
	add	r2, r3, #1
	cmp	r4, r2, lsl #2
	movne	r0, #1
	moveq	r0, #0
	cmp	r3, #0
	ldreq	r3, .L34+8
	ldreq	r5, [r3]
	b	.L16
.L12:
	subs	r0, r4, #0
	movne	r0, #1
	b	.L16
.L10:
	cmp	r3, #3
	ble	.L17
	ldr	r0, [r2]
	add	r0, r0, #3
	subs	r0, r0, r3
	movne	r0, #1
	b	.L16
.L14:
	cmp	r3, #0
	movne	r0, #0
	ldreq	r3, .L34+8
	moveq	r0, r4
	ldreq	r5, [r3]
	b	.L16
.L2:
	ldr	r3, .L34+12
	ldr	r0, [r3]
	pop	{r4, r5, r6, pc}
.L7:
	cmp	r3, #3
	ble	.L17
	ldr	r3, [r2]
	cmp	r3, #0
	bne	.L18
	ldr	r3, .L34+8
	subs	r0, r4, #4
	movne	r0, #1
	ldr	r5, [r3]
	b	.L16
.L18:
	cmp	r4, r3, lsl #2
	movne	r0, #1
	moveq	r0, #0
	b	.L16
.L35:
	.align	2
.L34:
	.word	FALSE
	.word	VIRTCHNL_STATUS_ERR_OPCODE_MISMATCH
	.word	TRUE
	.word	VIRTCHNL_ERR_PARAM
	.size	virtchnl_vc_validate_vf_msg, .-virtchnl_vc_validate_vf_msg
	.comm	VIRTCHNL_STATUS_ERR_OPCODE_MISMATCH,4,4
	.comm	VIRTCHNL_ERR_PARAM,4,4
	.comm	TRUE,4,4
	.comm	FALSE,4,4
	.ident	"GCC: (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0"
	.section	.note.GNU-stack,"",%progbits
