	.file	"77720.c"
	.intel_syntax noprefix
	.text
	.globl	sqlite3_api
	.bss
	.align 8
	.type	sqlite3_api, @object
	.size	sqlite3_api, 8
sqlite3_api:
	.zero	8
	.text
	.type	vsv_reader_init, @function
vsv_reader_init:
.LFB6:
	.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 -8[rbp], rdi
	mov	rax, QWORD PTR -8[rbp]
	mov	QWORD PTR [rax], 0
	mov	rax, QWORD PTR -8[rbp]
	mov	QWORD PTR 8[rax], 0
	mov	rax, QWORD PTR -8[rbp]
	mov	DWORD PTR 16[rax], 0
	mov	rax, QWORD PTR -8[rbp]
	mov	DWORD PTR 20[rax], 0
	mov	rax, QWORD PTR -8[rbp]
	mov	DWORD PTR 24[rax], 0
	mov	rax, QWORD PTR -8[rbp]
	mov	DWORD PTR 28[rax], 0
	mov	rax, QWORD PTR -8[rbp]
	mov	QWORD PTR 64[rax], 0
	mov	rax, QWORD PTR -8[rbp]
	mov	QWORD PTR 72[rax], 0
	mov	rax, QWORD PTR -8[rbp]
	mov	DWORD PTR 48[rax], 0
	mov	rax, QWORD PTR -8[rbp]
	mov	BYTE PTR 80[rax], 0
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE6:
	.size	vsv_reader_init, .-vsv_reader_init
	.type	vsv_reader_reset, @function
vsv_reader_reset:
.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, 16
	mov	QWORD PTR -8[rbp], rdi
	mov	rax, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR [rax]
	test	rax, rax
	je	.L3
	mov	rax, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR [rax]
	mov	rdi, rax
	call	fclose@PLT
	mov	rax, QWORD PTR sqlite3_api[rip]
	mov	rdx, QWORD PTR 464[rax]
	mov	rax, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR 72[rax]
	mov	rdi, rax
	call	rdx
.L3:
	mov	rax, QWORD PTR sqlite3_api[rip]
	mov	rdx, QWORD PTR 464[rax]
	mov	rax, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR 8[rax]
	mov	rdi, rax
	call	rdx
	mov	rax, QWORD PTR -8[rbp]
	mov	rdi, rax
	call	vsv_reader_init
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE7:
	.size	vsv_reader_reset, .-vsv_reader_reset
	.type	vsv_errmsg, @function
vsv_errmsg:
.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, 224
	mov	QWORD PTR -216[rbp], rdi
	mov	QWORD PTR -224[rbp], rsi
	mov	QWORD PTR -160[rbp], rdx
	mov	QWORD PTR -152[rbp], rcx
	mov	QWORD PTR -144[rbp], r8
	mov	QWORD PTR -136[rbp], r9
	test	al, al
	je	.L5
	movaps	XMMWORD PTR -128[rbp], xmm0
	movaps	XMMWORD PTR -112[rbp], xmm1
	movaps	XMMWORD PTR -96[rbp], xmm2
	movaps	XMMWORD PTR -80[rbp], xmm3
	movaps	XMMWORD PTR -64[rbp], xmm4
	movaps	XMMWORD PTR -48[rbp], xmm5
	movaps	XMMWORD PTR -32[rbp], xmm6
	movaps	XMMWORD PTR -16[rbp], xmm7
.L5:
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -184[rbp], rax
	xor	eax, eax
	mov	DWORD PTR -208[rbp], 16
	mov	DWORD PTR -204[rbp], 48
	lea	rax, 16[rbp]
	mov	QWORD PTR -200[rbp], rax
	lea	rax, -176[rbp]
	mov	QWORD PTR -192[rbp], rax
	mov	rax, QWORD PTR sqlite3_api[rip]
	mov	r8, QWORD PTR 1520[rax]
	mov	rax, QWORD PTR -216[rbp]
	lea	rsi, 80[rax]
	lea	rdx, -208[rbp]
	mov	rax, QWORD PTR -224[rbp]
	mov	rcx, rdx
	mov	rdx, rax
	mov	edi, 200
	call	r8
	nop
	mov	rax, QWORD PTR -184[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L6
	call	__stack_chk_fail@PLT
.L6:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE8:
	.size	vsv_errmsg, .-vsv_errmsg
	.section	.rodata
.LC0:
	.string	"out of memory"
.LC1:
	.string	"rb"
.LC2:
	.string	"cannot open '%s' for reading"
.LC3:
	.string	"the_stack_data/77720.c"
.LC4:
	.string	"p->in==0"
	.text
	.type	vsv_reader_open, @function
vsv_reader_open:
.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, 32
	mov	QWORD PTR -8[rbp], rdi
	mov	QWORD PTR -16[rbp], rsi
	mov	QWORD PTR -24[rbp], rdx
	cmp	QWORD PTR -16[rbp], 0
	je	.L8
	mov	rax, QWORD PTR sqlite3_api[rip]
	mov	rax, QWORD PTR 544[rax]
	mov	edi, 1024
	call	rax
	mov	rdx, QWORD PTR -8[rbp]
	mov	QWORD PTR 72[rdx], rax
	mov	rax, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR 72[rax]
	test	rax, rax
	jne	.L9
	mov	rax, QWORD PTR -8[rbp]
	lea	rsi, .LC0[rip]
	mov	rdi, rax
	mov	eax, 0
	call	vsv_errmsg
	mov	eax, 1
	jmp	.L10
.L9:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC1[rip]
	mov	rdi, rax
	call	fopen@PLT
	mov	rdx, QWORD PTR -8[rbp]
	mov	QWORD PTR [rdx], rax
	mov	rax, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR [rax]
	test	rax, rax
	jne	.L11
	mov	rax, QWORD PTR sqlite3_api[rip]
	mov	rdx, QWORD PTR 464[rax]
	mov	rax, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR 72[rax]
	mov	rdi, rax
	call	rdx
	mov	rax, QWORD PTR -8[rbp]
	mov	rdi, rax
	call	vsv_reader_reset
	mov	rdx, QWORD PTR -16[rbp]
	mov	rax, QWORD PTR -8[rbp]
	lea	rsi, .LC2[rip]
	mov	rdi, rax
	mov	eax, 0
	call	vsv_errmsg
	mov	eax, 1
	jmp	.L10
.L8:
	mov	rax, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR [rax]
	test	rax, rax
	je	.L12
	lea	rcx, __PRETTY_FUNCTION__.3[rip]
	mov	edx, 361
	lea	rsi, .LC3[rip]
	lea	rdi, .LC4[rip]
	call	__assert_fail@PLT
.L12:
	mov	rax, QWORD PTR -8[rbp]
	mov	rdx, QWORD PTR -24[rbp]
	mov	QWORD PTR 72[rax], rdx
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	strlen@PLT
	mov	rdx, QWORD PTR -8[rbp]
	mov	QWORD PTR 64[rdx], rax
.L11:
	mov	eax, 0
.L10:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE9:
	.size	vsv_reader_open, .-vsv_reader_open
	.section	.rodata
.LC5:
	.string	"p->iIn>=p->nIn"
.LC6:
	.string	"p->in!=0"
	.text
	.type	vsv_getc_refill, @function
vsv_getc_refill:
.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, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	rax, QWORD PTR -24[rbp]
	mov	rdx, QWORD PTR 56[rax]
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR 64[rax]
	cmp	rdx, rax
	jnb	.L14
	lea	rcx, __PRETTY_FUNCTION__.2[rip]
	mov	edx, 376
	lea	rsi, .LC3[rip]
	lea	rdi, .LC5[rip]
	call	__assert_fail@PLT
.L14:
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR [rax]
	test	rax, rax
	jne	.L15
	lea	rcx, __PRETTY_FUNCTION__.2[rip]
	mov	edx, 377
	lea	rsi, .LC3[rip]
	lea	rdi, .LC6[rip]
	call	__assert_fail@PLT
.L15:
	mov	rax, QWORD PTR -24[rbp]
	mov	rdx, QWORD PTR [rax]
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR 72[rax]
	mov	rcx, rdx
	mov	edx, 1024
	mov	esi, 1
	mov	rdi, rax
	call	fread@PLT
	mov	QWORD PTR -8[rbp], rax
	cmp	QWORD PTR -8[rbp], 0
	jne	.L16
	mov	eax, -1
	jmp	.L17
.L16:
	mov	rax, QWORD PTR -24[rbp]
	mov	rdx, QWORD PTR -8[rbp]
	mov	QWORD PTR 64[rax], rdx
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR 56[rax], 1
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR 72[rax]
	movzx	eax, BYTE PTR [rax]
	movsx	eax, al
.L17:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE10:
	.size	vsv_getc_refill, .-vsv_getc_refill
	.type	vsv_getc, @function
vsv_getc:
.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, 16
	mov	QWORD PTR -8[rbp], rdi
	mov	rax, QWORD PTR -8[rbp]
	mov	rdx, QWORD PTR 56[rax]
	mov	rax, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR 64[rax]
	cmp	rdx, rax
	jb	.L19
	mov	rax, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR [rax]
	test	rax, rax
	je	.L20
	mov	rax, QWORD PTR -8[rbp]
	mov	rdi, rax
	call	vsv_getc_refill
	jmp	.L21
.L20:
	mov	eax, -1
	jmp	.L21
.L19:
	mov	rax, QWORD PTR -8[rbp]
	mov	rsi, QWORD PTR 72[rax]
	mov	rax, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR 56[rax]
	lea	rcx, 1[rax]
	mov	rdx, QWORD PTR -8[rbp]
	mov	QWORD PTR 56[rdx], rcx
	add	rax, rsi
	movzx	eax, BYTE PTR [rax]
	movzx	eax, al
.L21:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE11:
	.size	vsv_getc, .-vsv_getc
	.type	vsv_resize_and_append, @function
vsv_resize_and_append:
.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, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	eax, esi
	mov	BYTE PTR -28[rbp], al
	mov	rax, QWORD PTR -24[rbp]
	mov	eax, DWORD PTR 20[rax]
	add	eax, 50
	add	eax, eax
	mov	DWORD PTR -12[rbp], eax
	mov	rax, QWORD PTR sqlite3_api[rip]
	mov	rcx, QWORD PTR 1592[rax]
	mov	eax, DWORD PTR -12[rbp]
	movsx	rdx, eax
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR 8[rax]
	mov	rsi, rdx
	mov	rdi, rax
	call	rcx
	mov	QWORD PTR -8[rbp], rax
	cmp	QWORD PTR -8[rbp], 0
	je	.L23
	mov	rax, QWORD PTR -24[rbp]
	mov	rdx, QWORD PTR -8[rbp]
	mov	QWORD PTR 8[rax], rdx
	mov	rax, QWORD PTR -24[rbp]
	mov	edx, DWORD PTR -12[rbp]
	mov	DWORD PTR 20[rax], edx
	mov	rax, QWORD PTR -24[rbp]
	mov	rsi, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -24[rbp]
	mov	eax, DWORD PTR 16[rax]
	lea	ecx, 1[rax]
	mov	rdx, QWORD PTR -24[rbp]
	mov	DWORD PTR 16[rdx], ecx
	cdqe
	lea	rdx, [rsi+rax]
	movzx	eax, BYTE PTR -28[rbp]
	mov	BYTE PTR [rdx], al
	mov	eax, 0
	jmp	.L24
.L23:
	mov	rax, QWORD PTR -24[rbp]
	lea	rsi, .LC0[rip]
	mov	rdi, rax
	mov	eax, 0
	call	vsv_errmsg
	mov	eax, 1
.L24:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE12:
	.size	vsv_resize_and_append, .-vsv_resize_and_append
	.type	vsv_append, @function
vsv_append:
.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, 16
	mov	QWORD PTR -8[rbp], rdi
	mov	eax, esi
	mov	BYTE PTR -12[rbp], al
	mov	rax, QWORD PTR -8[rbp]
	mov	edx, DWORD PTR 16[rax]
	mov	rax, QWORD PTR -8[rbp]
	mov	eax, DWORD PTR 20[rax]
	sub	eax, 1
	cmp	edx, eax
	jl	.L26
	movsx	edx, BYTE PTR -12[rbp]
	mov	rax, QWORD PTR -8[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	vsv_resize_and_append
	jmp	.L27
.L26:
	mov	rax, QWORD PTR -8[rbp]
	mov	rsi, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -8[rbp]
	mov	eax, DWORD PTR 16[rax]
	lea	ecx, 1[rax]
	mov	rdx, QWORD PTR -8[rbp]
	mov	DWORD PTR 16[rdx], ecx
	cdqe
	lea	rdx, [rsi+rax]
	movzx	eax, BYTE PTR -12[rbp]
	mov	BYTE PTR [rdx], al
	mov	eax, 0
.L27:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE13:
	.size	vsv_append, .-vsv_append
	.section	.rodata
	.align 8
.LC7:
	.string	"line %d: unescaped %c character"
	.align 8
.LC8:
	.string	"line %d: unterminated %c-quoted field\n"
	.text
	.type	vsv_read_one_field, @function
vsv_read_one_field:
.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, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	rax, QWORD PTR -24[rbp]
	mov	DWORD PTR 48[rax], 0
	mov	rax, QWORD PTR -24[rbp]
	mov	DWORD PTR 16[rax], 0
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	vsv_getc
	mov	DWORD PTR -16[rbp], eax
	cmp	DWORD PTR -16[rbp], -1
	jne	.L29
	mov	rax, QWORD PTR -24[rbp]
	mov	DWORD PTR 32[rax], -1
	mov	eax, 0
	jmp	.L30
.L29:
	cmp	DWORD PTR -16[rbp], 34
	jne	.L31
	mov	rax, QWORD PTR -24[rbp]
	mov	eax, DWORD PTR 24[rax]
	mov	DWORD PTR -4[rbp], eax
	mov	rax, QWORD PTR -24[rbp]
	mov	DWORD PTR 48[rax], 1
	mov	DWORD PTR -8[rbp], 0
	mov	eax, DWORD PTR -8[rbp]
	mov	DWORD PTR -12[rbp], eax
.L45:
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	vsv_getc
	mov	DWORD PTR -16[rbp], eax
	cmp	DWORD PTR -16[rbp], 10
	jne	.L32
	mov	rax, QWORD PTR -24[rbp]
	mov	eax, DWORD PTR 24[rax]
	lea	edx, 1[rax]
	mov	rax, QWORD PTR -24[rbp]
	mov	DWORD PTR 24[rax], edx
.L32:
	cmp	DWORD PTR -16[rbp], 34
	jne	.L33
	cmp	DWORD PTR -12[rbp], 34
	jne	.L33
	mov	eax, DWORD PTR -8[rbp]
	mov	DWORD PTR -12[rbp], eax
	mov	DWORD PTR -8[rbp], 0
	jmp	.L34
.L33:
	mov	rax, QWORD PTR -24[rbp]
	mov	eax, DWORD PTR 36[rax]
	cmp	DWORD PTR -16[rbp], eax
	jne	.L35
	cmp	DWORD PTR -12[rbp], 34
	je	.L40
.L35:
	mov	rax, QWORD PTR -24[rbp]
	mov	eax, DWORD PTR 40[rax]
	cmp	DWORD PTR -16[rbp], eax
	jne	.L37
	cmp	DWORD PTR -12[rbp], 34
	je	.L40
.L37:
	mov	rax, QWORD PTR -24[rbp]
	mov	eax, DWORD PTR 40[rax]
	cmp	eax, 10
	jne	.L38
	cmp	DWORD PTR -16[rbp], 10
	jne	.L38
	cmp	DWORD PTR -12[rbp], 13
	jne	.L38
	cmp	DWORD PTR -8[rbp], 34
	je	.L40
.L38:
	cmp	DWORD PTR -16[rbp], -1
	jne	.L39
	cmp	DWORD PTR -12[rbp], 34
	jne	.L39
.L40:
	mov	rax, QWORD PTR -24[rbp]
	mov	eax, DWORD PTR 16[rax]
	lea	edx, -1[rax]
	mov	rax, QWORD PTR -24[rbp]
	mov	DWORD PTR 16[rax], edx
	mov	rax, QWORD PTR -24[rbp]
	mov	rdx, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -24[rbp]
	mov	eax, DWORD PTR 16[rax]
	cdqe
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	cmp	al, 34
	jne	.L40
	mov	eax, DWORD PTR -16[rbp]
	movsx	edx, al
	mov	rax, QWORD PTR -24[rbp]
	mov	DWORD PTR 32[rax], edx
	jmp	.L46
.L39:
	cmp	DWORD PTR -12[rbp], 34
	jne	.L42
	mov	rax, QWORD PTR -24[rbp]
	mov	eax, DWORD PTR 40[rax]
	cmp	eax, 10
	jne	.L42
	cmp	DWORD PTR -16[rbp], 13
	je	.L42
	mov	rax, QWORD PTR -24[rbp]
	mov	edx, DWORD PTR 24[rax]
	mov	rax, QWORD PTR -24[rbp]
	mov	ecx, 34
	lea	rsi, .LC7[rip]
	mov	rdi, rax
	mov	eax, 0
	call	vsv_errmsg
	jmp	.L46
.L42:
	cmp	DWORD PTR -16[rbp], -1
	jne	.L43
	mov	edx, DWORD PTR -4[rbp]
	mov	rax, QWORD PTR -24[rbp]
	mov	ecx, 34
	lea	rsi, .LC8[rip]
	mov	rdi, rax
	mov	eax, 0
	call	vsv_errmsg
	mov	eax, DWORD PTR -16[rbp]
	movsx	edx, al
	mov	rax, QWORD PTR -24[rbp]
	mov	DWORD PTR 32[rax], edx
	jmp	.L46
.L43:
	mov	eax, DWORD PTR -16[rbp]
	movsx	edx, al
	mov	rax, QWORD PTR -24[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	vsv_append
	test	eax, eax
	je	.L44
	mov	eax, 0
	jmp	.L30
.L44:
	mov	eax, DWORD PTR -12[rbp]
	mov	DWORD PTR -8[rbp], eax
	mov	eax, DWORD PTR -16[rbp]
	mov	DWORD PTR -12[rbp], eax
.L34:
	jmp	.L45
.L31:
	mov	eax, DWORD PTR -16[rbp]
	movzx	eax, al
	cmp	eax, 239
	jne	.L48
	mov	rax, QWORD PTR -24[rbp]
	mov	eax, DWORD PTR 28[rax]
	test	eax, eax
	jne	.L48
	mov	eax, DWORD PTR -16[rbp]
	movsx	edx, al
	mov	rax, QWORD PTR -24[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	vsv_append
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	vsv_getc
	mov	DWORD PTR -16[rbp], eax
	mov	eax, DWORD PTR -16[rbp]
	movzx	eax, al
	cmp	eax, 187
	jne	.L48
	mov	eax, DWORD PTR -16[rbp]
	movsx	edx, al
	mov	rax, QWORD PTR -24[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	vsv_append
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	vsv_getc
	mov	DWORD PTR -16[rbp], eax
	mov	eax, DWORD PTR -16[rbp]
	movzx	eax, al
	cmp	eax, 191
	jne	.L48
	mov	rax, QWORD PTR -24[rbp]
	mov	DWORD PTR 28[rax], 1
	mov	rax, QWORD PTR -24[rbp]
	mov	DWORD PTR 16[rax], 0
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	vsv_read_one_field
	jmp	.L30
.L53:
	cmp	DWORD PTR -16[rbp], 10
	jne	.L49
	mov	rax, QWORD PTR -24[rbp]
	mov	eax, DWORD PTR 24[rax]
	lea	edx, 1[rax]
	mov	rax, QWORD PTR -24[rbp]
	mov	DWORD PTR 24[rax], edx
.L49:
	mov	rax, QWORD PTR -24[rbp]
	mov	eax, DWORD PTR 48[rax]
	test	eax, eax
	jne	.L50
	mov	rax, QWORD PTR -24[rbp]
	mov	DWORD PTR 48[rax], 1
.L50:
	mov	eax, DWORD PTR -16[rbp]
	movsx	edx, al
	mov	rax, QWORD PTR -24[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	vsv_append
	test	eax, eax
	je	.L51
	mov	eax, 0
	jmp	.L30
.L51:
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	vsv_getc
	mov	DWORD PTR -16[rbp], eax
.L48:
	cmp	DWORD PTR -16[rbp], -1
	je	.L52
	mov	rax, QWORD PTR -24[rbp]
	mov	eax, DWORD PTR 40[rax]
	cmp	DWORD PTR -16[rbp], eax
	je	.L52
	mov	rax, QWORD PTR -24[rbp]
	mov	eax, DWORD PTR 36[rax]
	cmp	DWORD PTR -16[rbp], eax
	jne	.L53
.L52:
	cmp	DWORD PTR -16[rbp], 10
	jne	.L54
	mov	rax, QWORD PTR -24[rbp]
	mov	eax, DWORD PTR 24[rax]
	lea	edx, 1[rax]
	mov	rax, QWORD PTR -24[rbp]
	mov	DWORD PTR 24[rax], edx
.L54:
	mov	rax, QWORD PTR -24[rbp]
	mov	eax, DWORD PTR 16[rax]
	test	eax, eax
	jle	.L55
	mov	rax, QWORD PTR -24[rbp]
	mov	eax, DWORD PTR 40[rax]
	cmp	eax, 10
	je	.L56
	mov	rax, QWORD PTR -24[rbp]
	mov	eax, DWORD PTR 36[rax]
	cmp	eax, 10
	jne	.L55
.L56:
	mov	rax, QWORD PTR -24[rbp]
	mov	rdx, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -24[rbp]
	mov	eax, DWORD PTR 16[rax]
	cdqe
	sub	rax, 1
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	cmp	al, 13
	jne	.L55
	mov	rax, QWORD PTR -24[rbp]
	mov	eax, DWORD PTR 16[rax]
	lea	edx, -1[rax]
	mov	rax, QWORD PTR -24[rbp]
	mov	DWORD PTR 16[rax], edx
	mov	rax, QWORD PTR -24[rbp]
	mov	eax, DWORD PTR 16[rax]
	test	eax, eax
	jne	.L55
	mov	rax, QWORD PTR -24[rbp]
	mov	DWORD PTR 48[rax], 0
.L55:
	mov	eax, DWORD PTR -16[rbp]
	movsx	edx, al
	mov	rax, QWORD PTR -24[rbp]
	mov	DWORD PTR 32[rax], edx
.L46:
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR 8[rax]
	test	rax, rax
	je	.L57
	mov	rax, QWORD PTR -24[rbp]
	mov	rdx, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -24[rbp]
	mov	eax, DWORD PTR 16[rax]
	cdqe
	add	rax, rdx
	mov	BYTE PTR [rax], 0
.L57:
	mov	rax, QWORD PTR -24[rbp]
	mov	DWORD PTR 28[rax], 1
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR 8[rax]
.L30:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE14:
	.size	vsv_read_one_field, .-vsv_read_one_field
	.section	.rodata
.LC9:
	.string	"%s"
	.text
	.type	vsv_xfer_error, @function
vsv_xfer_error:
.LFB15:
	.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	QWORD PTR -8[rbp], rdi
	mov	QWORD PTR -16[rbp], rsi
	mov	rax, QWORD PTR sqlite3_api[rip]
	mov	rdx, QWORD PTR 464[rax]
	mov	rax, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR 16[rax]
	mov	rdi, rax
	call	rdx
	mov	rax, QWORD PTR sqlite3_api[rip]
	mov	rdx, QWORD PTR 552[rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 80
	mov	rsi, rax
	lea	rdi, .LC9[rip]
	mov	eax, 0
	call	rdx
	mov	rdx, QWORD PTR -8[rbp]
	mov	QWORD PTR 16[rdx], rax
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE15:
	.size	vsv_xfer_error, .-vsv_xfer_error
	.type	vsvtabDisconnect, @function
vsvtabDisconnect:
.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	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR sqlite3_api[rip]
	mov	rdx, QWORD PTR 464[rax]
	mov	rax, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR 24[rax]
	mov	rdi, rax
	call	rdx
	mov	rax, QWORD PTR sqlite3_api[rip]
	mov	rdx, QWORD PTR 464[rax]
	mov	rax, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR 32[rax]
	mov	rdi, rax
	call	rdx
	mov	rax, QWORD PTR sqlite3_api[rip]
	mov	rdx, QWORD PTR 464[rax]
	mov	rax, QWORD PTR -8[rbp]
	mov	rdi, rax
	call	rdx
	mov	eax, 0
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE16:
	.size	vsvtabDisconnect, .-vsvtabDisconnect
	.type	vsv_skip_whitespace, @function
vsv_skip_whitespace:
.LFB17:
	.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	QWORD PTR -8[rbp], rdi
	jmp	.L62
.L63:
	add	QWORD PTR -8[rbp], 1
.L62:
	call	__ctype_b_loc@PLT
	mov	rdx, QWORD PTR [rax]
	mov	rax, QWORD PTR -8[rbp]
	movzx	eax, BYTE PTR [rax]
	movzx	eax, al
	add	rax, rax
	add	rax, rdx
	movzx	eax, WORD PTR [rax]
	movzx	eax, ax
	and	eax, 8192
	test	eax, eax
	jne	.L63
	mov	rax, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE17:
	.size	vsv_skip_whitespace, .-vsv_skip_whitespace
	.type	vsv_trim_whitespace, @function
vsv_trim_whitespace:
.LFB18:
	.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	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	strlen@PLT
	mov	QWORD PTR -8[rbp], rax
	jmp	.L66
.L68:
	sub	QWORD PTR -8[rbp], 1
.L66:
	cmp	QWORD PTR -8[rbp], 0
	je	.L67
	call	__ctype_b_loc@PLT
	mov	rdx, QWORD PTR [rax]
	mov	rcx, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR -8[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, 8192
	test	eax, eax
	jne	.L68
.L67:
	mov	rdx, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR -8[rbp]
	add	rax, rdx
	mov	BYTE PTR [rax], 0
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE18:
	.size	vsv_trim_whitespace, .-vsv_trim_whitespace
	.type	vsv_dequote, @function
vsv_dequote:
.LFB19:
	.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 -40[rbp], rdi
	mov	rax, QWORD PTR -40[rbp]
	movzx	eax, BYTE PTR [rax]
	mov	BYTE PTR -21[rbp], al
	cmp	BYTE PTR -21[rbp], 39
	je	.L70
	cmp	BYTE PTR -21[rbp], 34
	jne	.L77
.L70:
	mov	rax, QWORD PTR -40[rbp]
	mov	rdi, rax
	call	strlen@PLT
	mov	QWORD PTR -8[rbp], rax
	cmp	QWORD PTR -8[rbp], 1
	jbe	.L78
	mov	rax, QWORD PTR -8[rbp]
	lea	rdx, -1[rax]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rdx
	movzx	edx, BYTE PTR [rax]
	mov	rax, QWORD PTR -40[rbp]
	movzx	eax, BYTE PTR [rax]
	cmp	dl, al
	jne	.L78
	mov	QWORD PTR -16[rbp], 1
	mov	DWORD PTR -20[rbp], 0
	jmp	.L74
.L76:
	mov	rdx, QWORD PTR -40[rbp]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	cmp	BYTE PTR -21[rbp], al
	jne	.L75
	mov	rax, QWORD PTR -16[rbp]
	lea	rdx, 1[rax]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	cmp	BYTE PTR -21[rbp], al
	jne	.L75
	add	QWORD PTR -16[rbp], 1
.L75:
	mov	rdx, QWORD PTR -40[rbp]
	mov	rax, QWORD PTR -16[rbp]
	lea	rcx, [rdx+rax]
	mov	eax, DWORD PTR -20[rbp]
	lea	edx, 1[rax]
	mov	DWORD PTR -20[rbp], edx
	movsx	rdx, eax
	mov	rax, QWORD PTR -40[rbp]
	add	rdx, rax
	movzx	eax, BYTE PTR [rcx]
	mov	BYTE PTR [rdx], al
	add	QWORD PTR -16[rbp], 1
.L74:
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, 1
	cmp	QWORD PTR -16[rbp], rax
	jb	.L76
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rdx
	mov	BYTE PTR [rax], 0
	jmp	.L69
.L77:
	nop
	jmp	.L69
.L78:
	nop
.L69:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE19:
	.size	vsv_dequote, .-vsv_dequote
	.type	vsv_parameter, @function
vsv_parameter:
.LFB20:
	.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 -8[rbp], rdi
	mov	DWORD PTR -12[rbp], esi
	mov	QWORD PTR -24[rbp], rdx
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	vsv_skip_whitespace
	mov	QWORD PTR -24[rbp], rax
	mov	eax, DWORD PTR -12[rbp]
	movsx	rdx, eax
	mov	rcx, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR -8[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	strncmp@PLT
	test	eax, eax
	je	.L80
	mov	eax, 0
	jmp	.L81
.L80:
	mov	eax, DWORD PTR -12[rbp]
	movsx	rdx, eax
	mov	rax, QWORD PTR -24[rbp]
	add	rax, rdx
	mov	rdi, rax
	call	vsv_skip_whitespace
	mov	QWORD PTR -24[rbp], rax
	mov	rax, QWORD PTR -24[rbp]
	movzx	eax, BYTE PTR [rax]
	cmp	al, 61
	je	.L82
	mov	eax, 0
	jmp	.L81
.L82:
	mov	rax, QWORD PTR -24[rbp]
	add	rax, 1
	mov	rdi, rax
	call	vsv_skip_whitespace
.L81:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE20:
	.size	vsv_parameter, .-vsv_parameter
	.section	.rodata
.LC10:
	.string	"more than one '%s' parameter"
	.text
	.type	vsv_string_parameter, @function
vsv_string_parameter:
.LFB21:
	.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	QWORD PTR -40[rbp], rdx
	mov	QWORD PTR -48[rbp], rcx
	mov	rax, QWORD PTR -32[rbp]
	mov	rdi, rax
	call	strlen@PLT
	mov	ecx, eax
	mov	rdx, QWORD PTR -40[rbp]
	mov	rax, QWORD PTR -32[rbp]
	mov	esi, ecx
	mov	rdi, rax
	call	vsv_parameter
	mov	QWORD PTR -8[rbp], rax
	cmp	QWORD PTR -8[rbp], 0
	jne	.L84
	mov	eax, 0
	jmp	.L85
.L84:
	mov	rax, QWORD PTR -24[rbp]
	mov	BYTE PTR 80[rax], 0
	mov	rax, QWORD PTR -48[rbp]
	mov	rax, QWORD PTR [rax]
	test	rax, rax
	je	.L86
	mov	rdx, QWORD PTR -32[rbp]
	mov	rax, QWORD PTR -24[rbp]
	lea	rsi, .LC10[rip]
	mov	rdi, rax
	mov	eax, 0
	call	vsv_errmsg
	mov	eax, 1
	jmp	.L85
.L86:
	mov	rax, QWORD PTR sqlite3_api[rip]
	mov	rdx, QWORD PTR 552[rax]
	mov	rax, QWORD PTR -8[rbp]
	mov	rsi, rax
	lea	rdi, .LC9[rip]
	mov	eax, 0
	call	rdx
	mov	rdx, QWORD PTR -48[rbp]
	mov	QWORD PTR [rdx], rax
	mov	rax, QWORD PTR -48[rbp]
	mov	rax, QWORD PTR [rax]
	test	rax, rax
	jne	.L87
	mov	rax, QWORD PTR -24[rbp]
	lea	rsi, .LC0[rip]
	mov	rdi, rax
	mov	eax, 0
	call	vsv_errmsg
	mov	eax, 1
	jmp	.L85
.L87:
	mov	rax, QWORD PTR -48[rbp]
	mov	rax, QWORD PTR [rax]
	mov	rdi, rax
	call	vsv_trim_whitespace
	mov	rax, QWORD PTR -48[rbp]
	mov	rax, QWORD PTR [rax]
	mov	rdi, rax
	call	vsv_dequote
	mov	eax, 1
.L85:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE21:
	.size	vsv_string_parameter, .-vsv_string_parameter
	.section	.rodata
.LC11:
	.string	"yes"
.LC12:
	.string	"on"
.LC13:
	.string	"true"
.LC14:
	.string	"no"
.LC15:
	.string	"off"
.LC16:
	.string	"false"
	.text
	.type	vsv_boolean, @function
vsv_boolean:
.LFB22:
	.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	QWORD PTR -8[rbp], rdi
	mov	rax, QWORD PTR sqlite3_api[rip]
	mov	rdx, QWORD PTR 1488[rax]
	mov	rax, QWORD PTR -8[rbp]
	mov	rsi, rax
	lea	rdi, .LC11[rip]
	call	rdx
	test	eax, eax
	je	.L89
	mov	rax, QWORD PTR sqlite3_api[rip]
	mov	rdx, QWORD PTR 1488[rax]
	mov	rax, QWORD PTR -8[rbp]
	mov	rsi, rax
	lea	rdi, .LC12[rip]
	call	rdx
	test	eax, eax
	je	.L89
	mov	rax, QWORD PTR sqlite3_api[rip]
	mov	rdx, QWORD PTR 1488[rax]
	mov	rax, QWORD PTR -8[rbp]
	mov	rsi, rax
	lea	rdi, .LC13[rip]
	call	rdx
	test	eax, eax
	je	.L89
	mov	rax, QWORD PTR -8[rbp]
	movzx	eax, BYTE PTR [rax]
	cmp	al, 49
	jne	.L90
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 1
	movzx	eax, BYTE PTR [rax]
	test	al, al
	jne	.L90
.L89:
	mov	eax, 1
	jmp	.L91
.L90:
	mov	rax, QWORD PTR sqlite3_api[rip]
	mov	rdx, QWORD PTR 1488[rax]
	mov	rax, QWORD PTR -8[rbp]
	mov	rsi, rax
	lea	rdi, .LC14[rip]
	call	rdx
	test	eax, eax
	je	.L92
	mov	rax, QWORD PTR sqlite3_api[rip]
	mov	rdx, QWORD PTR 1488[rax]
	mov	rax, QWORD PTR -8[rbp]
	mov	rsi, rax
	lea	rdi, .LC15[rip]
	call	rdx
	test	eax, eax
	je	.L92
	mov	rax, QWORD PTR sqlite3_api[rip]
	mov	rdx, QWORD PTR 1488[rax]
	mov	rax, QWORD PTR -8[rbp]
	mov	rsi, rax
	lea	rdi, .LC16[rip]
	call	rdx
	test	eax, eax
	je	.L92
	mov	rax, QWORD PTR -8[rbp]
	movzx	eax, BYTE PTR [rax]
	cmp	al, 48
	jne	.L93
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 1
	movzx	eax, BYTE PTR [rax]
	test	al, al
	jne	.L93
.L92:
	mov	eax, 0
	jmp	.L91
.L93:
	mov	eax, -1
.L91:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE22:
	.size	vsv_boolean, .-vsv_boolean
	.type	vsv_boolean_parameter, @function
vsv_boolean_parameter:
.LFB23:
	.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	QWORD PTR -48[rbp], rcx
	mov	rax, QWORD PTR -40[rbp]
	mov	rdi, rax
	call	vsv_skip_whitespace
	mov	QWORD PTR -40[rbp], rax
	mov	eax, DWORD PTR -28[rbp]
	movsx	rdx, eax
	mov	rcx, QWORD PTR -40[rbp]
	mov	rax, QWORD PTR -24[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	strncmp@PLT
	test	eax, eax
	je	.L95
	mov	eax, 0
	jmp	.L96
.L95:
	mov	eax, DWORD PTR -28[rbp]
	movsx	rdx, eax
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rdx
	mov	rdi, rax
	call	vsv_skip_whitespace
	mov	QWORD PTR -40[rbp], rax
	mov	rax, QWORD PTR -40[rbp]
	movzx	eax, BYTE PTR [rax]
	test	al, al
	jne	.L97
	mov	rax, QWORD PTR -48[rbp]
	mov	DWORD PTR [rax], 1
	mov	eax, 1
	jmp	.L96
.L97:
	mov	rax, QWORD PTR -40[rbp]
	movzx	eax, BYTE PTR [rax]
	cmp	al, 61
	je	.L98
	mov	eax, 0
	jmp	.L96
.L98:
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 1
	mov	rdi, rax
	call	vsv_skip_whitespace
	mov	QWORD PTR -40[rbp], rax
	mov	rax, QWORD PTR -40[rbp]
	mov	rdi, rax
	call	vsv_boolean
	mov	DWORD PTR -4[rbp], eax
	cmp	DWORD PTR -4[rbp], 0
	js	.L99
	mov	rax, QWORD PTR -48[rbp]
	mov	edx, DWORD PTR -4[rbp]
	mov	DWORD PTR [rax], edx
	mov	eax, 1
	jmp	.L96
.L99:
	mov	eax, 0
.L96:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE23:
	.size	vsv_boolean_parameter, .-vsv_boolean_parameter
	.section	.rodata
.LC17:
	.string	"\\x"
	.text
	.type	vsv_parse_sep_char, @function
vsv_parse_sep_char:
.LFB24:
	.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 -8[rbp], rdi
	mov	DWORD PTR -12[rbp], esi
	mov	QWORD PTR -24[rbp], rdx
	cmp	QWORD PTR -8[rbp], 0
	jne	.L101
	mov	rax, QWORD PTR -24[rbp]
	mov	edx, DWORD PTR -12[rbp]
	mov	DWORD PTR [rax], edx
	mov	eax, 0
	jmp	.L102
.L101:
	mov	rax, QWORD PTR -8[rbp]
	mov	rdi, rax
	call	strlen@PLT
	cmp	rax, 4
	je	.L103
	cmp	rax, 4
	ja	.L104
	cmp	rax, 2
	je	.L105
	cmp	rax, 2
	ja	.L104
	test	rax, rax
	je	.L106
	cmp	rax, 1
	je	.L107
	jmp	.L104
.L106:
	mov	rax, QWORD PTR -24[rbp]
	mov	edx, DWORD PTR -12[rbp]
	mov	DWORD PTR [rax], edx
	mov	eax, 0
	jmp	.L102
.L107:
	mov	rax, QWORD PTR -8[rbp]
	movzx	eax, BYTE PTR [rax]
	movsx	edx, al
	mov	rax, QWORD PTR -24[rbp]
	mov	DWORD PTR [rax], edx
	mov	eax, 0
	jmp	.L102
.L105:
	mov	rax, QWORD PTR -8[rbp]
	movzx	eax, BYTE PTR [rax]
	cmp	al, 92
	je	.L108
	mov	eax, 1
	jmp	.L102
.L108:
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 1
	movzx	eax, BYTE PTR [rax]
	movsx	eax, al
	cmp	eax, 118
	je	.L109
	cmp	eax, 118
	jg	.L110
	cmp	eax, 116
	je	.L111
	cmp	eax, 116
	jg	.L110
	cmp	eax, 102
	je	.L112
	cmp	eax, 110
	je	.L113
	jmp	.L110
.L112:
	mov	rax, QWORD PTR -24[rbp]
	mov	DWORD PTR [rax], 12
	mov	eax, 0
	jmp	.L102
.L113:
	mov	rax, QWORD PTR -24[rbp]
	mov	DWORD PTR [rax], 10
	mov	eax, 0
	jmp	.L102
.L111:
	mov	rax, QWORD PTR -24[rbp]
	mov	DWORD PTR [rax], 9
	mov	eax, 0
	jmp	.L102
.L109:
	mov	rax, QWORD PTR -24[rbp]
	mov	DWORD PTR [rax], 11
	mov	eax, 0
	jmp	.L102
.L110:
	mov	eax, 1
	jmp	.L102
.L103:
	mov	rax, QWORD PTR sqlite3_api[rip]
	mov	rcx, QWORD PTR 1368[rax]
	mov	rax, QWORD PTR -8[rbp]
	mov	edx, 2
	lea	rsi, .LC17[rip]
	mov	rdi, rax
	call	rcx
	test	eax, eax
	je	.L114
	mov	eax, 1
	jmp	.L102
.L114:
	call	__ctype_b_loc@PLT
	mov	rdx, QWORD PTR [rax]
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 2
	movzx	eax, BYTE PTR [rax]
	movsx	rax, al
	add	rax, rax
	add	rax, rdx
	movzx	eax, WORD PTR [rax]
	movzx	eax, ax
	and	eax, 4096
	test	eax, eax
	je	.L115
	call	__ctype_b_loc@PLT
	mov	rdx, QWORD PTR [rax]
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 3
	movzx	eax, BYTE PTR [rax]
	movsx	rax, al
	add	rax, rax
	add	rax, rdx
	movzx	eax, WORD PTR [rax]
	movzx	eax, ax
	and	eax, 4096
	test	eax, eax
	jne	.L116
.L115:
	mov	eax, 1
	jmp	.L102
.L116:
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 2
	movzx	eax, BYTE PTR [rax]
	cmp	al, 57
	jle	.L117
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 2
	movzx	eax, BYTE PTR [rax]
	movsx	eax, al
	and	eax, 15
	add	eax, 9
	sal	eax, 4
	jmp	.L118
.L117:
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 2
	movzx	eax, BYTE PTR [rax]
	movsx	eax, al
	sal	eax, 4
	movzx	eax, al
.L118:
	mov	rdx, QWORD PTR -8[rbp]
	add	rdx, 3
	movzx	edx, BYTE PTR [rdx]
	cmp	dl, 57
	jle	.L119
	mov	rdx, QWORD PTR -8[rbp]
	add	rdx, 3
	movzx	edx, BYTE PTR [rdx]
	movsx	edx, dl
	and	edx, 15
	add	edx, 9
	jmp	.L120
.L119:
	mov	rdx, QWORD PTR -8[rbp]
	add	rdx, 3
	movzx	edx, BYTE PTR [rdx]
	movsx	edx, dl
	and	edx, 15
.L120:
	add	edx, eax
	mov	rax, QWORD PTR -24[rbp]
	mov	DWORD PTR [rax], edx
	mov	eax, 0
	jmp	.L102
.L104:
	mov	eax, 0
.L102:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE24:
	.size	vsv_parse_sep_char, .-vsv_parse_sep_char
	.section	.rodata
.LC18:
	.string	"header"
	.align 8
.LC19:
	.string	"more than one 'header' parameter"
.LC20:
	.string	"validatetext"
	.align 8
.LC21:
	.string	"more than one 'validatetext' parameter"
.LC22:
	.string	"nulls"
	.align 8
.LC23:
	.string	"more than one 'nulls' parameter"
.LC24:
	.string	"columns"
	.align 8
.LC25:
	.string	"more than one 'columns' parameter"
	.align 8
.LC26:
	.string	"column= value must be positive"
.LC27:
	.string	"skip"
	.align 8
.LC28:
	.string	"more than one 'skip' parameter"
.LC29:
	.string	"skip= value must be positive"
.LC30:
	.string	"affinity"
	.align 8
.LC31:
	.string	"more than one 'affinity' parameter"
.LC32:
	.string	"none"
.LC33:
	.string	"blob"
.LC34:
	.string	"text"
.LC35:
	.string	"integer"
.LC36:
	.string	"real"
.LC37:
	.string	"numeric"
.LC38:
	.string	"unknown affinity: '%s'"
.LC39:
	.string	"bad parameter: '%s'"
	.align 8
.LC40:
	.string	"must specify either filename= or data= but not both"
.LC41:
	.string	"cannot parse fsep: '%s'"
.LC42:
	.string	"cannot parse rsep: '%s'"
.LC43:
	.string	""
.LC44:
	.string	"CREATE TABLE x("
.LC45:
	.string	"%sc%d"
.LC46:
	.string	","
.LC47:
	.string	"%s\"%w\""
.LC48:
	.string	")"
	.align 8
.LC49:
	.string	"premature end of file during skip"
.LC50:
	.string	"bad schema: '%s' - %s"
	.text
	.type	vsvtabConnect, @function
vsvtabConnect:
.LFB25:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 480
	mov	QWORD PTR -440[rbp], rdi
	mov	QWORD PTR -448[rbp], rsi
	mov	DWORD PTR -452[rbp], edx
	mov	QWORD PTR -464[rbp], rcx
	mov	QWORD PTR -472[rbp], r8
	mov	QWORD PTR -480[rbp], r9
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	QWORD PTR -384[rbp], 0
	mov	DWORD PTR -428[rbp], -1
	mov	DWORD PTR -424[rbp], -1
	mov	DWORD PTR -420[rbp], -1
	mov	DWORD PTR -416[rbp], 0
	mov	DWORD PTR -404[rbp], -99
	mov	DWORD PTR -400[rbp], -1
	mov	DWORD PTR -396[rbp], -1
	lea	rax, -288[rbp]
	mov	edx, 280
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	lea	rax, -336[rbp]
	mov	edx, 40
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	DWORD PTR -412[rbp], 3
	jmp	.L122
.L148:
	mov	eax, DWORD PTR -412[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -464[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	mov	QWORD PTR -352[rbp], rax
	mov	DWORD PTR -408[rbp], 0
	jmp	.L123
.L126:
	lea	rdx, -336[rbp]
	mov	eax, DWORD PTR -408[rbp]
	cdqe
	sal	rax, 3
	lea	rcx, [rdx+rax]
	mov	eax, DWORD PTR -408[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, azParam.1[rip]
	mov	rsi, QWORD PTR [rdx+rax]
	mov	rdx, QWORD PTR -352[rbp]
	lea	rax, -288[rbp]
	mov	rdi, rax
	call	vsv_string_parameter
	test	eax, eax
	jne	.L195
	add	DWORD PTR -408[rbp], 1
.L123:
	mov	eax, DWORD PTR -408[rbp]
	cmp	eax, 4
	jbe	.L126
	jmp	.L125
.L195:
	nop
.L125:
	mov	eax, DWORD PTR -408[rbp]
	cmp	eax, 4
	ja	.L127
	movzx	eax, BYTE PTR -208[rbp]
	test	al, al
	je	.L128
	jmp	.L129
.L127:
	lea	rdx, -432[rbp]
	mov	rax, QWORD PTR -352[rbp]
	mov	rcx, rdx
	mov	rdx, rax
	mov	esi, 6
	lea	rdi, .LC18[rip]
	call	vsv_boolean_parameter
	test	eax, eax
	je	.L130
	cmp	DWORD PTR -424[rbp], 0
	js	.L131
	lea	rax, -288[rbp]
	lea	rsi, .LC19[rip]
	mov	rdi, rax
	mov	eax, 0
	call	vsv_errmsg
	jmp	.L129
.L131:
	mov	eax, DWORD PTR -432[rbp]
	mov	DWORD PTR -424[rbp], eax
	jmp	.L128
.L130:
	lea	rdx, -432[rbp]
	mov	rax, QWORD PTR -352[rbp]
	mov	rcx, rdx
	mov	rdx, rax
	mov	esi, 12
	lea	rdi, .LC20[rip]
	call	vsv_boolean_parameter
	test	eax, eax
	je	.L132
	cmp	DWORD PTR -420[rbp], 0
	js	.L133
	lea	rax, -288[rbp]
	lea	rsi, .LC21[rip]
	mov	rdi, rax
	mov	eax, 0
	call	vsv_errmsg
	jmp	.L129
.L133:
	mov	eax, DWORD PTR -432[rbp]
	mov	DWORD PTR -420[rbp], eax
	jmp	.L128
.L132:
	lea	rdx, -432[rbp]
	mov	rax, QWORD PTR -352[rbp]
	mov	rcx, rdx
	mov	rdx, rax
	mov	esi, 5
	lea	rdi, .LC22[rip]
	call	vsv_boolean_parameter
	test	eax, eax
	je	.L134
	cmp	DWORD PTR -396[rbp], 0
	js	.L135
	lea	rax, -288[rbp]
	lea	rsi, .LC23[rip]
	mov	rdi, rax
	mov	eax, 0
	call	vsv_errmsg
	jmp	.L129
.L135:
	mov	eax, DWORD PTR -432[rbp]
	mov	DWORD PTR -396[rbp], eax
	jmp	.L128
.L134:
	mov	rax, QWORD PTR -352[rbp]
	mov	rdx, rax
	mov	esi, 7
	lea	rdi, .LC24[rip]
	call	vsv_parameter
	mov	QWORD PTR -344[rbp], rax
	cmp	QWORD PTR -344[rbp], 0
	je	.L136
	cmp	DWORD PTR -404[rbp], 0
	jle	.L137
	lea	rax, -288[rbp]
	lea	rsi, .LC25[rip]
	mov	rdi, rax
	mov	eax, 0
	call	vsv_errmsg
	jmp	.L129
.L137:
	mov	rax, QWORD PTR -344[rbp]
	mov	rdi, rax
	call	atoi@PLT
	mov	DWORD PTR -404[rbp], eax
	cmp	DWORD PTR -404[rbp], 0
	jg	.L128
	lea	rax, -288[rbp]
	lea	rsi, .LC26[rip]
	mov	rdi, rax
	mov	eax, 0
	call	vsv_errmsg
	jmp	.L129
.L136:
	mov	rax, QWORD PTR -352[rbp]
	mov	rdx, rax
	mov	esi, 4
	lea	rdi, .LC27[rip]
	call	vsv_parameter
	mov	QWORD PTR -344[rbp], rax
	cmp	QWORD PTR -344[rbp], 0
	je	.L138
	cmp	DWORD PTR -400[rbp], 0
	jle	.L139
	lea	rax, -288[rbp]
	lea	rsi, .LC28[rip]
	mov	rdi, rax
	mov	eax, 0
	call	vsv_errmsg
	jmp	.L129
.L139:
	mov	rax, QWORD PTR -344[rbp]
	mov	rdi, rax
	call	atoi@PLT
	mov	DWORD PTR -400[rbp], eax
	cmp	DWORD PTR -400[rbp], 0
	jg	.L128
	lea	rax, -288[rbp]
	lea	rsi, .LC29[rip]
	mov	rdi, rax
	mov	eax, 0
	call	vsv_errmsg
	jmp	.L129
.L138:
	mov	rax, QWORD PTR -352[rbp]
	mov	rdx, rax
	mov	esi, 8
	lea	rdi, .LC30[rip]
	call	vsv_parameter
	mov	QWORD PTR -344[rbp], rax
	cmp	QWORD PTR -344[rbp], 0
	je	.L140
	cmp	DWORD PTR -428[rbp], 0
	js	.L141
	lea	rax, -288[rbp]
	lea	rsi, .LC31[rip]
	mov	rdi, rax
	mov	eax, 0
	call	vsv_errmsg
	jmp	.L129
.L141:
	mov	rax, QWORD PTR sqlite3_api[rip]
	mov	rcx, QWORD PTR 1368[rax]
	mov	rax, QWORD PTR -344[rbp]
	mov	edx, 4
	lea	rsi, .LC32[rip]
	mov	rdi, rax
	call	rcx
	test	eax, eax
	jne	.L142
	mov	DWORD PTR -428[rbp], 0
	jmp	.L128
.L142:
	mov	rax, QWORD PTR sqlite3_api[rip]
	mov	rcx, QWORD PTR 1368[rax]
	mov	rax, QWORD PTR -344[rbp]
	mov	edx, 4
	lea	rsi, .LC33[rip]
	mov	rdi, rax
	call	rcx
	test	eax, eax
	jne	.L143
	mov	DWORD PTR -428[rbp], 1
	jmp	.L128
.L143:
	mov	rax, QWORD PTR sqlite3_api[rip]
	mov	rcx, QWORD PTR 1368[rax]
	mov	rax, QWORD PTR -344[rbp]
	mov	edx, 4
	lea	rsi, .LC34[rip]
	mov	rdi, rax
	call	rcx
	test	eax, eax
	jne	.L144
	mov	DWORD PTR -428[rbp], 2
	jmp	.L128
.L144:
	mov	rax, QWORD PTR sqlite3_api[rip]
	mov	rcx, QWORD PTR 1368[rax]
	mov	rax, QWORD PTR -344[rbp]
	mov	edx, 7
	lea	rsi, .LC35[rip]
	mov	rdi, rax
	call	rcx
	test	eax, eax
	jne	.L145
	mov	DWORD PTR -428[rbp], 3
	jmp	.L128
.L145:
	mov	rax, QWORD PTR sqlite3_api[rip]
	mov	rcx, QWORD PTR 1368[rax]
	mov	rax, QWORD PTR -344[rbp]
	mov	edx, 4
	lea	rsi, .LC36[rip]
	mov	rdi, rax
	call	rcx
	test	eax, eax
	jne	.L146
	mov	DWORD PTR -428[rbp], 4
	jmp	.L128
.L146:
	mov	rax, QWORD PTR sqlite3_api[rip]
	mov	rcx, QWORD PTR 1368[rax]
	mov	rax, QWORD PTR -344[rbp]
	mov	edx, 7
	lea	rsi, .LC37[rip]
	mov	rdi, rax
	call	rcx
	test	eax, eax
	jne	.L147
	mov	DWORD PTR -428[rbp], 5
	jmp	.L128
.L147:
	mov	rdx, QWORD PTR -344[rbp]
	lea	rax, -288[rbp]
	lea	rsi, .LC38[rip]
	mov	rdi, rax
	mov	eax, 0
	call	vsv_errmsg
	jmp	.L129
.L140:
	mov	rdx, QWORD PTR -352[rbp]
	lea	rax, -288[rbp]
	lea	rsi, .LC39[rip]
	mov	rdi, rax
	mov	eax, 0
	call	vsv_errmsg
	jmp	.L129
.L128:
	add	DWORD PTR -412[rbp], 1
.L122:
	mov	eax, DWORD PTR -412[rbp]
	cmp	eax, DWORD PTR -452[rbp]
	jl	.L148
	cmp	DWORD PTR -428[rbp], -1
	jne	.L149
	mov	DWORD PTR -428[rbp], 0
.L149:
	cmp	DWORD PTR -396[rbp], -1
	jne	.L150
	mov	DWORD PTR -396[rbp], 0
.L150:
	cmp	DWORD PTR -420[rbp], -1
	jne	.L151
	mov	DWORD PTR -420[rbp], 0
.L151:
	mov	rax, QWORD PTR -336[rbp]
	test	rax, rax
	setne	dl
	mov	rax, QWORD PTR -328[rbp]
	test	rax, rax
	sete	al
	xor	eax, edx
	test	al, al
	je	.L152
	lea	rax, -288[rbp]
	lea	rsi, .LC40[rip]
	mov	rdi, rax
	mov	eax, 0
	call	vsv_errmsg
	jmp	.L129
.L152:
	mov	rax, QWORD PTR -312[rbp]
	lea	rdx, -288[rbp]
	add	rdx, 36
	mov	esi, 44
	mov	rdi, rax
	call	vsv_parse_sep_char
	test	eax, eax
	je	.L153
	mov	rdx, QWORD PTR -312[rbp]
	lea	rax, -288[rbp]
	lea	rsi, .LC41[rip]
	mov	rdi, rax
	mov	eax, 0
	call	vsv_errmsg
	jmp	.L129
.L153:
	mov	rax, QWORD PTR -304[rbp]
	lea	rdx, -288[rbp]
	add	rdx, 40
	mov	esi, 10
	mov	rdi, rax
	call	vsv_parse_sep_char
	test	eax, eax
	je	.L154
	mov	rdx, QWORD PTR -304[rbp]
	lea	rax, -288[rbp]
	lea	rsi, .LC42[rip]
	mov	rdi, rax
	mov	eax, 0
	call	vsv_errmsg
	jmp	.L129
.L154:
	cmp	DWORD PTR -404[rbp], 0
	jle	.L155
	cmp	DWORD PTR -424[rbp], 1
	jne	.L156
.L155:
	mov	rdx, QWORD PTR -328[rbp]
	mov	rcx, QWORD PTR -336[rbp]
	lea	rax, -288[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	vsv_reader_open
	test	eax, eax
	jne	.L196
.L156:
	mov	rax, QWORD PTR sqlite3_api[rip]
	mov	rax, QWORD PTR 544[rax]
	mov	edi, 80
	call	rax
	mov	QWORD PTR -384[rbp], rax
	mov	rax, QWORD PTR -472[rbp]
	mov	rdx, QWORD PTR -384[rbp]
	mov	QWORD PTR [rax], rdx
	cmp	QWORD PTR -384[rbp], 0
	je	.L197
	mov	rax, QWORD PTR -384[rbp]
	mov	edx, 80
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	edx, DWORD PTR -252[rbp]
	mov	rax, QWORD PTR -384[rbp]
	mov	DWORD PTR 52[rax], edx
	mov	edx, DWORD PTR -248[rbp]
	mov	rax, QWORD PTR -384[rbp]
	mov	DWORD PTR 56[rax], edx
	mov	rax, QWORD PTR -384[rbp]
	mov	edx, DWORD PTR -428[rbp]
	mov	DWORD PTR 60[rax], edx
	mov	rax, QWORD PTR -384[rbp]
	mov	edx, DWORD PTR -420[rbp]
	mov	DWORD PTR 68[rax], edx
	mov	rax, QWORD PTR -384[rbp]
	mov	edx, DWORD PTR -396[rbp]
	mov	DWORD PTR 64[rax], edx
	mov	rax, QWORD PTR -320[rbp]
	test	rax, rax
	jne	.L159
	mov	rax, QWORD PTR sqlite3_api[rip]
	mov	rax, QWORD PTR 1824[rax]
	mov	edi, 0
	call	rax
	mov	QWORD PTR -368[rbp], rax
	lea	rax, .LC43[rip]
	mov	QWORD PTR -376[rbp], rax
	mov	DWORD PTR -392[rbp], 0
	mov	rax, QWORD PTR sqlite3_api[rip]
	mov	rdx, QWORD PTR 1840[rax]
	mov	rax, QWORD PTR -368[rbp]
	lea	rsi, .LC44[rip]
	mov	rdi, rax
	mov	eax, 0
	call	rdx
	cmp	DWORD PTR -404[rbp], 0
	jns	.L160
	cmp	DWORD PTR -424[rbp], 0
	jg	.L160
	mov	DWORD PTR -404[rbp], 0
.L161:
	lea	rax, -288[rbp]
	mov	rdi, rax
	call	vsv_read_one_field
	add	DWORD PTR -404[rbp], 1
	mov	edx, DWORD PTR -256[rbp]
	mov	eax, DWORD PTR -252[rbp]
	cmp	edx, eax
	je	.L161
.L160:
	cmp	DWORD PTR -404[rbp], 0
	jle	.L169
	cmp	DWORD PTR -424[rbp], 0
	jg	.L169
	mov	DWORD PTR -392[rbp], 0
	jmp	.L163
.L164:
	mov	rax, QWORD PTR sqlite3_api[rip]
	mov	r8, QWORD PTR 1840[rax]
	mov	ecx, DWORD PTR -392[rbp]
	mov	rdx, QWORD PTR -376[rbp]
	mov	rax, QWORD PTR -368[rbp]
	lea	rsi, .LC45[rip]
	mov	rdi, rax
	mov	eax, 0
	call	r8
	lea	rax, .LC46[rip]
	mov	QWORD PTR -376[rbp], rax
	add	DWORD PTR -392[rbp], 1
.L163:
	mov	eax, DWORD PTR -392[rbp]
	cmp	eax, DWORD PTR -404[rbp]
	jl	.L164
	jmp	.L165
.L169:
	lea	rax, -288[rbp]
	mov	rdi, rax
	call	vsv_read_one_field
	mov	QWORD PTR -360[rbp], rax
	cmp	DWORD PTR -404[rbp], 0
	jle	.L166
	mov	eax, DWORD PTR -392[rbp]
	cmp	eax, DWORD PTR -404[rbp]
	jl	.L167
.L166:
	cmp	DWORD PTR -404[rbp], 0
	jns	.L168
	cmp	DWORD PTR -424[rbp], 0
	je	.L168
.L167:
	mov	rax, QWORD PTR sqlite3_api[rip]
	mov	r8, QWORD PTR 1840[rax]
	mov	rcx, QWORD PTR -360[rbp]
	mov	rdx, QWORD PTR -376[rbp]
	mov	rax, QWORD PTR -368[rbp]
	lea	rsi, .LC47[rip]
	mov	rdi, rax
	mov	eax, 0
	call	r8
	lea	rax, .LC46[rip]
	mov	QWORD PTR -376[rbp], rax
	add	DWORD PTR -392[rbp], 1
.L168:
	mov	edx, DWORD PTR -256[rbp]
	mov	eax, DWORD PTR -252[rbp]
	cmp	edx, eax
	je	.L169
	cmp	DWORD PTR -404[rbp], 0
	jns	.L171
	mov	eax, DWORD PTR -392[rbp]
	mov	DWORD PTR -404[rbp], eax
	jmp	.L165
.L172:
	mov	rax, QWORD PTR sqlite3_api[rip]
	mov	r8, QWORD PTR 1840[rax]
	add	DWORD PTR -392[rbp], 1
	mov	ecx, DWORD PTR -392[rbp]
	mov	rdx, QWORD PTR -376[rbp]
	mov	rax, QWORD PTR -368[rbp]
	lea	rsi, .LC45[rip]
	mov	rdi, rax
	mov	eax, 0
	call	r8
	lea	rax, .LC46[rip]
	mov	QWORD PTR -376[rbp], rax
.L171:
	mov	eax, DWORD PTR -392[rbp]
	cmp	eax, DWORD PTR -404[rbp]
	jl	.L172
.L165:
	mov	rax, QWORD PTR sqlite3_api[rip]
	mov	rdx, QWORD PTR 1840[rax]
	mov	rax, QWORD PTR -368[rbp]
	lea	rsi, .LC48[rip]
	mov	rdi, rax
	mov	eax, 0
	call	rdx
	mov	rax, QWORD PTR sqlite3_api[rip]
	mov	rdx, QWORD PTR 1832[rax]
	mov	rax, QWORD PTR -368[rbp]
	mov	rdi, rax
	call	rdx
	mov	QWORD PTR -320[rbp], rax
	mov	rax, QWORD PTR -320[rbp]
	test	rax, rax
	jne	.L173
	jmp	.L158
.L159:
	cmp	DWORD PTR -404[rbp], 0
	jns	.L174
	mov	DWORD PTR -404[rbp], 0
.L175:
	lea	rax, -288[rbp]
	mov	rdi, rax
	call	vsv_read_one_field
	add	DWORD PTR -404[rbp], 1
	mov	edx, DWORD PTR -256[rbp]
	mov	eax, DWORD PTR -252[rbp]
	cmp	edx, eax
	je	.L175
	jmp	.L173
.L174:
	cmp	DWORD PTR -400[rbp], 0
	jg	.L173
	cmp	DWORD PTR -424[rbp], 1
	jne	.L173
.L176:
	lea	rax, -288[rbp]
	mov	rdi, rax
	call	vsv_read_one_field
	mov	edx, DWORD PTR -256[rbp]
	mov	eax, DWORD PTR -252[rbp]
	cmp	edx, eax
	je	.L176
.L173:
	mov	rax, QWORD PTR -384[rbp]
	mov	edx, DWORD PTR -404[rbp]
	mov	DWORD PTR 48[rax], edx
	cmp	DWORD PTR -400[rbp], 0
	jle	.L177
	cmp	DWORD PTR -424[rbp], 1
	sete	al
	movzx	edx, al
	mov	eax, DWORD PTR -400[rbp]
	add	eax, edx
	mov	DWORD PTR -388[rbp], eax
	lea	rax, -288[rbp]
	mov	rdi, rax
	call	vsv_reader_reset
	mov	rdx, QWORD PTR -328[rbp]
	mov	rcx, QWORD PTR -336[rbp]
	lea	rax, -288[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	vsv_reader_open
	test	eax, eax
	jne	.L198
.L178:
	lea	rax, -288[rbp]
	mov	rdi, rax
	call	vsv_read_one_field
	test	rax, rax
	je	.L199
	mov	edx, DWORD PTR -256[rbp]
	mov	eax, DWORD PTR -252[rbp]
	cmp	edx, eax
	je	.L178
	sub	DWORD PTR -388[rbp], 1
	cmp	DWORD PTR -388[rbp], 0
	jle	.L180
	mov	edx, DWORD PTR -256[rbp]
	mov	eax, DWORD PTR -248[rbp]
	cmp	edx, eax
	je	.L178
.L180:
	cmp	DWORD PTR -388[rbp], 0
	jle	.L177
	lea	rax, -288[rbp]
	lea	rsi, .LC49[rip]
	mov	rdi, rax
	mov	eax, 0
	call	vsv_errmsg
	jmp	.L129
.L177:
	mov	rdx, QWORD PTR -336[rbp]
	mov	rax, QWORD PTR -384[rbp]
	mov	QWORD PTR 24[rax], rdx
	mov	QWORD PTR -336[rbp], 0
	mov	rdx, QWORD PTR -328[rbp]
	mov	rax, QWORD PTR -384[rbp]
	mov	QWORD PTR 32[rax], rdx
	mov	QWORD PTR -328[rbp], 0
	cmp	DWORD PTR -424[rbp], 1
	je	.L181
	cmp	DWORD PTR -400[rbp], 0
	jg	.L181
	mov	rax, QWORD PTR -384[rbp]
	mov	QWORD PTR 40[rax], 0
	jmp	.L182
.L181:
	mov	rax, QWORD PTR -384[rbp]
	mov	rax, QWORD PTR 32[rax]
	test	rax, rax
	je	.L183
	mov	rax, QWORD PTR -232[rbp]
	movsx	rdx, eax
	mov	rax, QWORD PTR -384[rbp]
	mov	QWORD PTR 40[rax], rdx
	jmp	.L182
.L183:
	mov	rax, QWORD PTR -288[rbp]
	mov	rdi, rax
	call	ftell@PLT
	mov	edx, eax
	mov	rax, QWORD PTR -224[rbp]
	sub	edx, eax
	mov	rax, QWORD PTR -232[rbp]
	add	eax, edx
	movsx	rdx, eax
	mov	rax, QWORD PTR -384[rbp]
	mov	QWORD PTR 40[rax], rdx
.L182:
	lea	rax, -288[rbp]
	mov	rdi, rax
	call	vsv_reader_reset
	mov	rax, QWORD PTR sqlite3_api[rip]
	mov	rcx, QWORD PTR 400[rax]
	mov	rdx, QWORD PTR -320[rbp]
	mov	rax, QWORD PTR -440[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	rcx
	mov	DWORD PTR -416[rbp], eax
	cmp	DWORD PTR -416[rbp], 0
	je	.L184
	mov	rax, QWORD PTR sqlite3_api[rip]
	mov	rdx, QWORD PTR 424[rax]
	mov	rax, QWORD PTR -440[rbp]
	mov	rdi, rax
	call	rdx
	mov	rcx, rax
	mov	rdx, QWORD PTR -320[rbp]
	lea	rax, -288[rbp]
	lea	rsi, .LC50[rip]
	mov	rdi, rax
	mov	eax, 0
	call	vsv_errmsg
	jmp	.L129
.L184:
	mov	DWORD PTR -412[rbp], 0
	jmp	.L185
.L186:
	mov	rax, QWORD PTR sqlite3_api[rip]
	mov	rdx, QWORD PTR 464[rax]
	mov	eax, DWORD PTR -412[rbp]
	cdqe
	mov	rax, QWORD PTR -336[rbp+rax*8]
	mov	rdi, rax
	call	rdx
	add	DWORD PTR -412[rbp], 1
.L185:
	mov	eax, DWORD PTR -412[rbp]
	cmp	eax, 4
	jbe	.L186
	mov	rax, QWORD PTR sqlite3_api[rip]
	mov	rdx, QWORD PTR 1416[rax]
	mov	rax, QWORD PTR -440[rbp]
	mov	esi, 3
	mov	rdi, rax
	mov	eax, 0
	call	rdx
	mov	eax, 0
	jmp	.L193
.L197:
	nop
.L158:
	mov	DWORD PTR -416[rbp], 7
	lea	rax, -288[rbp]
	lea	rsi, .LC0[rip]
	mov	rdi, rax
	mov	eax, 0
	call	vsv_errmsg
	jmp	.L129
.L196:
	nop
	jmp	.L129
.L198:
	nop
	jmp	.L129
.L199:
	nop
.L129:
	cmp	QWORD PTR -384[rbp], 0
	je	.L188
	mov	rax, QWORD PTR -384[rbp]
	mov	rdi, rax
	call	vsvtabDisconnect
.L188:
	mov	DWORD PTR -412[rbp], 0
	jmp	.L189
.L190:
	mov	rax, QWORD PTR sqlite3_api[rip]
	mov	rdx, QWORD PTR 464[rax]
	mov	eax, DWORD PTR -412[rbp]
	cdqe
	mov	rax, QWORD PTR -336[rbp+rax*8]
	mov	rdi, rax
	call	rdx
	add	DWORD PTR -412[rbp], 1
.L189:
	mov	eax, DWORD PTR -412[rbp]
	cmp	eax, 4
	jbe	.L190
	movzx	eax, BYTE PTR -208[rbp]
	test	al, al
	je	.L191
	mov	rax, QWORD PTR sqlite3_api[rip]
	mov	rdx, QWORD PTR 464[rax]
	mov	rax, QWORD PTR -480[rbp]
	mov	rax, QWORD PTR [rax]
	mov	rdi, rax
	call	rdx
	mov	rax, QWORD PTR sqlite3_api[rip]
	mov	rdx, QWORD PTR 552[rax]
	lea	rax, -288[rbp]
	add	rax, 80
	mov	rsi, rax
	lea	rdi, .LC9[rip]
	mov	eax, 0
	call	rdx
	mov	rdx, QWORD PTR -480[rbp]
	mov	QWORD PTR [rdx], rax
.L191:
	lea	rax, -288[rbp]
	mov	rdi, rax
	call	vsv_reader_reset
	cmp	DWORD PTR -416[rbp], 0
	jne	.L192
	mov	DWORD PTR -416[rbp], 1
.L192:
	mov	eax, DWORD PTR -416[rbp]
.L193:
	mov	rcx, QWORD PTR -8[rbp]
	sub	rcx, QWORD PTR fs:40
	je	.L194
	call	__stack_chk_fail@PLT
.L194:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE25:
	.size	vsvtabConnect, .-vsvtabConnect
	.type	vsvtabCursorRowReset, @function
vsvtabCursorRowReset:
.LFB26:
	.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	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR [rax]
	mov	QWORD PTR -8[rbp], rax
	mov	DWORD PTR -12[rbp], 0
	jmp	.L201
.L202:
	mov	rax, QWORD PTR sqlite3_api[rip]
	mov	rdx, QWORD PTR 464[rax]
	mov	rax, QWORD PTR -24[rbp]
	mov	rcx, QWORD PTR 288[rax]
	mov	eax, DWORD PTR -12[rbp]
	cdqe
	sal	rax, 3
	add	rax, rcx
	mov	rax, QWORD PTR [rax]
	mov	rdi, rax
	call	rdx
	mov	rax, QWORD PTR -24[rbp]
	mov	rdx, QWORD PTR 288[rax]
	mov	eax, DWORD PTR -12[rbp]
	cdqe
	sal	rax, 3
	add	rax, rdx
	mov	QWORD PTR [rax], 0
	mov	rax, QWORD PTR -24[rbp]
	mov	rdx, QWORD PTR 296[rax]
	mov	eax, DWORD PTR -12[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	mov	DWORD PTR [rax], 0
	mov	rax, QWORD PTR -24[rbp]
	mov	rdx, QWORD PTR 304[rax]
	mov	eax, DWORD PTR -12[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	mov	DWORD PTR [rax], -1
	add	DWORD PTR -12[rbp], 1
.L201:
	mov	rax, QWORD PTR -8[rbp]
	mov	eax, DWORD PTR 48[rax]
	cmp	DWORD PTR -12[rbp], eax
	jl	.L202
	nop
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE26:
	.size	vsvtabCursorRowReset, .-vsvtabCursorRowReset
	.type	vsvtabCreate, @function
vsvtabCreate:
.LFB27:
	.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 -8[rbp], rdi
	mov	QWORD PTR -16[rbp], rsi
	mov	DWORD PTR -20[rbp], edx
	mov	QWORD PTR -32[rbp], rcx
	mov	QWORD PTR -40[rbp], r8
	mov	QWORD PTR -48[rbp], r9
	mov	r8, QWORD PTR -48[rbp]
	mov	rdi, QWORD PTR -40[rbp]
	mov	rcx, QWORD PTR -32[rbp]
	mov	edx, DWORD PTR -20[rbp]
	mov	rsi, QWORD PTR -16[rbp]
	mov	rax, QWORD PTR -8[rbp]
	mov	r9, r8
	mov	r8, rdi
	mov	rdi, rax
	call	vsvtabConnect
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE27:
	.size	vsvtabCreate, .-vsvtabCreate
	.type	vsvtabClose, @function
vsvtabClose:
.LFB28:
	.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	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	mov	rdi, rax
	call	vsvtabCursorRowReset
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 8
	mov	rdi, rax
	call	vsv_reader_reset
	mov	rax, QWORD PTR sqlite3_api[rip]
	mov	rdx, QWORD PTR 464[rax]
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	rdx
	mov	eax, 0
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE28:
	.size	vsvtabClose, .-vsvtabClose
	.type	vsvtabOpen, @function
vsvtabOpen:
.LFB29:
	.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 -40[rbp], rdi
	mov	QWORD PTR -48[rbp], rsi
	mov	rax, QWORD PTR -40[rbp]
	mov	QWORD PTR -24[rbp], rax
	mov	rax, QWORD PTR -24[rbp]
	mov	eax, DWORD PTR 48[rax]
	cdqe
	add	rax, 20
	sal	rax, 4
	mov	QWORD PTR -16[rbp], rax
	mov	rax, QWORD PTR sqlite3_api[rip]
	mov	rdx, QWORD PTR 1576[rax]
	mov	rax, QWORD PTR -16[rbp]
	mov	rdi, rax
	call	rdx
	mov	QWORD PTR -8[rbp], rax
	cmp	QWORD PTR -8[rbp], 0
	jne	.L208
	mov	eax, 7
	jmp	.L209
.L208:
	mov	rdx, QWORD PTR -16[rbp]
	mov	rax, QWORD PTR -8[rbp]
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	rax, QWORD PTR -8[rbp]
	lea	rdx, 320[rax]
	mov	rax, QWORD PTR -8[rbp]
	mov	QWORD PTR 288[rax], rdx
	mov	rax, QWORD PTR -8[rbp]
	mov	rdx, QWORD PTR 288[rax]
	mov	rax, QWORD PTR -24[rbp]
	mov	eax, DWORD PTR 48[rax]
	cdqe
	sal	rax, 3
	add	rdx, rax
	mov	rax, QWORD PTR -8[rbp]
	mov	QWORD PTR 296[rax], rdx
	mov	rax, QWORD PTR -8[rbp]
	mov	rdx, QWORD PTR 296[rax]
	mov	rax, QWORD PTR -24[rbp]
	mov	eax, DWORD PTR 48[rax]
	cdqe
	sal	rax, 2
	add	rdx, rax
	mov	rax, QWORD PTR -8[rbp]
	mov	QWORD PTR 304[rax], rdx
	mov	rax, QWORD PTR -24[rbp]
	mov	edx, DWORD PTR 52[rax]
	mov	rax, QWORD PTR -8[rbp]
	mov	DWORD PTR 44[rax], edx
	mov	rax, QWORD PTR -24[rbp]
	mov	edx, DWORD PTR 56[rax]
	mov	rax, QWORD PTR -8[rbp]
	mov	DWORD PTR 48[rax], edx
	mov	rax, QWORD PTR -24[rbp]
	mov	edx, DWORD PTR 60[rax]
	mov	rax, QWORD PTR -8[rbp]
	mov	DWORD PTR 52[rax], edx
	mov	rdx, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -48[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -24[rbp]
	mov	rdx, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR 24[rax]
	mov	rcx, QWORD PTR -8[rbp]
	add	rcx, 8
	mov	rsi, rax
	mov	rdi, rcx
	call	vsv_reader_open
	test	eax, eax
	je	.L210
	mov	rax, QWORD PTR -8[rbp]
	lea	rdx, 8[rax]
	mov	rax, QWORD PTR -24[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	vsv_xfer_error
	mov	eax, 1
	jmp	.L209
.L210:
	mov	eax, 0
.L209:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE29:
	.size	vsvtabOpen, .-vsvtabOpen
	.type	vsvtabNext, @function
vsvtabNext:
.LFB30:
	.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	rax, QWORD PTR -56[rbp]
	mov	QWORD PTR -32[rbp], rax
	mov	rax, QWORD PTR -56[rbp]
	mov	rax, QWORD PTR [rax]
	mov	QWORD PTR -24[rbp], rax
	mov	DWORD PTR -36[rbp], 0
.L219:
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 8
	mov	rdi, rax
	call	vsv_read_one_field
	mov	QWORD PTR -16[rbp], rax
	cmp	QWORD PTR -16[rbp], 0
	jne	.L212
	mov	rax, QWORD PTR -24[rbp]
	mov	eax, DWORD PTR 48[rax]
	cmp	DWORD PTR -36[rbp], eax
	jge	.L213
	mov	rax, QWORD PTR -32[rbp]
	mov	rdx, QWORD PTR 304[rax]
	mov	eax, DWORD PTR -36[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	mov	DWORD PTR [rax], -1
	jmp	.L213
.L212:
	mov	rax, QWORD PTR -24[rbp]
	mov	eax, DWORD PTR 48[rax]
	cmp	DWORD PTR -36[rbp], eax
	jge	.L213
	mov	rax, QWORD PTR -32[rbp]
	mov	edx, DWORD PTR 24[rax]
	mov	rax, QWORD PTR -32[rbp]
	mov	rcx, QWORD PTR 296[rax]
	mov	eax, DWORD PTR -36[rbp]
	cdqe
	sal	rax, 2
	add	rax, rcx
	mov	eax, DWORD PTR [rax]
	cmp	edx, eax
	jl	.L214
	mov	rax, QWORD PTR sqlite3_api[rip]
	mov	rcx, QWORD PTR 1592[rax]
	mov	rax, QWORD PTR -32[rbp]
	mov	eax, DWORD PTR 24[rax]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, QWORD PTR -32[rbp]
	mov	rsi, QWORD PTR 288[rax]
	mov	eax, DWORD PTR -36[rbp]
	cdqe
	sal	rax, 3
	add	rax, rsi
	mov	rax, QWORD PTR [rax]
	mov	rsi, rdx
	mov	rdi, rax
	call	rcx
	mov	QWORD PTR -8[rbp], rax
	cmp	QWORD PTR -8[rbp], 0
	jne	.L215
	mov	QWORD PTR -16[rbp], 0
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 8
	lea	rsi, .LC0[rip]
	mov	rdi, rax
	mov	eax, 0
	call	vsv_errmsg
	mov	rax, QWORD PTR -32[rbp]
	lea	rdx, 8[rax]
	mov	rax, QWORD PTR -24[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	vsv_xfer_error
	jmp	.L216
.L215:
	mov	rax, QWORD PTR -32[rbp]
	mov	rdx, QWORD PTR 288[rax]
	mov	eax, DWORD PTR -36[rbp]
	cdqe
	sal	rax, 3
	add	rdx, rax
	mov	rax, QWORD PTR -8[rbp]
	mov	QWORD PTR [rdx], rax
	mov	rax, QWORD PTR -32[rbp]
	mov	edx, DWORD PTR 24[rax]
	mov	rax, QWORD PTR -32[rbp]
	mov	rcx, QWORD PTR 296[rax]
	mov	eax, DWORD PTR -36[rbp]
	cdqe
	sal	rax, 2
	add	rax, rcx
	add	edx, 1
	mov	DWORD PTR [rax], edx
.L214:
	mov	rax, QWORD PTR -32[rbp]
	mov	eax, DWORD PTR 56[rax]
	test	eax, eax
	jne	.L217
	mov	rax, QWORD PTR -24[rbp]
	mov	eax, DWORD PTR 64[rax]
	test	eax, eax
	je	.L217
	mov	rax, QWORD PTR -32[rbp]
	mov	rdx, QWORD PTR 304[rax]
	mov	eax, DWORD PTR -36[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	mov	DWORD PTR [rax], -1
	jmp	.L218
.L217:
	mov	rax, QWORD PTR -32[rbp]
	mov	rdx, QWORD PTR 304[rax]
	mov	eax, DWORD PTR -36[rbp]
	cdqe
	sal	rax, 2
	add	rdx, rax
	mov	rax, QWORD PTR -32[rbp]
	mov	eax, DWORD PTR 24[rax]
	mov	DWORD PTR [rdx], eax
	mov	rax, QWORD PTR -32[rbp]
	mov	eax, DWORD PTR 24[rax]
	add	eax, 1
	movsx	rdx, eax
	mov	rax, QWORD PTR -32[rbp]
	mov	rcx, QWORD PTR 288[rax]
	mov	eax, DWORD PTR -36[rbp]
	cdqe
	sal	rax, 3
	add	rax, rcx
	mov	rax, QWORD PTR [rax]
	mov	rcx, QWORD PTR -16[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	memcpy@PLT
.L218:
	add	DWORD PTR -36[rbp], 1
.L213:
	mov	rax, QWORD PTR -32[rbp]
	mov	edx, DWORD PTR 40[rax]
	mov	rax, QWORD PTR -32[rbp]
	mov	eax, DWORD PTR 44[rax]
	cmp	edx, eax
	je	.L219
.L216:
	mov	rax, QWORD PTR -32[rbp]
	mov	eax, DWORD PTR 40[rax]
	cmp	eax, -1
	jne	.L220
	cmp	DWORD PTR -36[rbp], 0
	jne	.L220
	mov	rax, QWORD PTR -32[rbp]
	mov	QWORD PTR 312[rax], -1
	jmp	.L221
.L220:
	mov	rax, QWORD PTR -32[rbp]
	mov	rax, QWORD PTR 312[rax]
	lea	rdx, 1[rax]
	mov	rax, QWORD PTR -32[rbp]
	mov	QWORD PTR 312[rax], rdx
	jmp	.L222
.L223:
	mov	rax, QWORD PTR -32[rbp]
	mov	rdx, QWORD PTR 304[rax]
	mov	eax, DWORD PTR -36[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	mov	DWORD PTR [rax], -1
	add	DWORD PTR -36[rbp], 1
.L222:
	mov	rax, QWORD PTR -24[rbp]
	mov	eax, DWORD PTR 48[rax]
	cmp	DWORD PTR -36[rbp], eax
	jl	.L223
.L221:
	mov	eax, 0
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE30:
	.size	vsvtabNext, .-vsvtabNext
	.type	vsv_isValidNumber, @function
vsv_isValidNumber:
.LFB31:
	.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 -40[rbp], rdi
	mov	DWORD PTR -24[rbp], 0
	mov	DWORD PTR -20[rbp], 0
	mov	rax, QWORD PTR -40[rbp]
	mov	QWORD PTR -16[rbp], rax
	mov	rax, QWORD PTR -40[rbp]
	mov	rdi, rax
	call	strlen@PLT
	lea	rdx, -1[rax]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rdx
	mov	QWORD PTR -8[rbp], rax
	jmp	.L226
.L228:
	add	QWORD PTR -16[rbp], 1
.L226:
	mov	rax, QWORD PTR -16[rbp]
	cmp	rax, QWORD PTR -8[rbp]
	ja	.L229
	mov	rax, QWORD PTR -16[rbp]
	movzx	eax, BYTE PTR [rax]
	cmp	al, 32
	je	.L228
	jmp	.L229
.L231:
	sub	QWORD PTR -8[rbp], 1
.L229:
	mov	rax, QWORD PTR -16[rbp]
	cmp	rax, QWORD PTR -8[rbp]
	ja	.L230
	mov	rax, QWORD PTR -8[rbp]
	movzx	eax, BYTE PTR [rax]
	cmp	al, 32
	je	.L231
.L230:
	mov	rax, QWORD PTR -16[rbp]
	cmp	rax, QWORD PTR -8[rbp]
	ja	.L256
	mov	rax, QWORD PTR -16[rbp]
	cmp	rax, QWORD PTR -8[rbp]
	ja	.L234
	mov	rax, QWORD PTR -16[rbp]
	movzx	eax, BYTE PTR [rax]
	cmp	al, 43
	je	.L235
	mov	rax, QWORD PTR -16[rbp]
	movzx	eax, BYTE PTR [rax]
	cmp	al, 45
	jne	.L234
.L235:
	add	QWORD PTR -16[rbp], 1
.L234:
	mov	rax, QWORD PTR -16[rbp]
	cmp	rax, QWORD PTR -8[rbp]
	ja	.L237
	call	__ctype_b_loc@PLT
	mov	rdx, QWORD PTR [rax]
	mov	rax, QWORD PTR -16[rbp]
	movzx	eax, BYTE PTR [rax]
	movsx	rax, al
	add	rax, rax
	add	rax, rdx
	movzx	eax, WORD PTR [rax]
	movzx	eax, ax
	and	eax, 2048
	test	eax, eax
	je	.L237
	mov	DWORD PTR -20[rbp], 1
	mov	DWORD PTR -24[rbp], 1
	jmp	.L237
.L239:
	add	QWORD PTR -16[rbp], 1
.L237:
	mov	rax, QWORD PTR -16[rbp]
	cmp	rax, QWORD PTR -8[rbp]
	ja	.L238
	call	__ctype_b_loc@PLT
	mov	rdx, QWORD PTR [rax]
	mov	rax, QWORD PTR -16[rbp]
	movzx	eax, BYTE PTR [rax]
	movsx	rax, al
	add	rax, rax
	add	rax, rdx
	movzx	eax, WORD PTR [rax]
	movzx	eax, ax
	and	eax, 2048
	test	eax, eax
	jne	.L239
.L238:
	mov	rax, QWORD PTR -16[rbp]
	cmp	rax, QWORD PTR -8[rbp]
	ja	.L240
	mov	rax, QWORD PTR -16[rbp]
	movzx	eax, BYTE PTR [rax]
	cmp	al, 46
	jne	.L240
	mov	DWORD PTR -24[rbp], 2
	add	QWORD PTR -16[rbp], 1
.L240:
	mov	rax, QWORD PTR -16[rbp]
	cmp	rax, QWORD PTR -8[rbp]
	ja	.L242
	call	__ctype_b_loc@PLT
	mov	rdx, QWORD PTR [rax]
	mov	rax, QWORD PTR -16[rbp]
	movzx	eax, BYTE PTR [rax]
	movsx	rax, al
	add	rax, rax
	add	rax, rdx
	movzx	eax, WORD PTR [rax]
	movzx	eax, ax
	and	eax, 2048
	test	eax, eax
	je	.L242
	mov	DWORD PTR -20[rbp], 1
	jmp	.L242
.L244:
	add	QWORD PTR -16[rbp], 1
.L242:
	mov	rax, QWORD PTR -16[rbp]
	cmp	rax, QWORD PTR -8[rbp]
	ja	.L243
	call	__ctype_b_loc@PLT
	mov	rdx, QWORD PTR [rax]
	mov	rax, QWORD PTR -16[rbp]
	movzx	eax, BYTE PTR [rax]
	movsx	rax, al
	add	rax, rax
	add	rax, rdx
	movzx	eax, WORD PTR [rax]
	movzx	eax, ax
	and	eax, 2048
	test	eax, eax
	jne	.L244
.L243:
	cmp	DWORD PTR -20[rbp], 0
	jne	.L245
	mov	DWORD PTR -24[rbp], 0
	jmp	.L233
.L245:
	mov	rax, QWORD PTR -16[rbp]
	cmp	rax, QWORD PTR -8[rbp]
	ja	.L246
	mov	rax, QWORD PTR -16[rbp]
	movzx	eax, BYTE PTR [rax]
	cmp	al, 101
	je	.L247
	mov	rax, QWORD PTR -16[rbp]
	movzx	eax, BYTE PTR [rax]
	cmp	al, 69
	jne	.L246
.L247:
	mov	DWORD PTR -24[rbp], 3
	add	QWORD PTR -16[rbp], 1
.L246:
	mov	rax, QWORD PTR -16[rbp]
	cmp	rax, QWORD PTR -8[rbp]
	ja	.L248
	cmp	DWORD PTR -24[rbp], 3
	jne	.L248
	mov	rax, QWORD PTR -16[rbp]
	movzx	eax, BYTE PTR [rax]
	cmp	al, 43
	je	.L249
	mov	rax, QWORD PTR -16[rbp]
	movzx	eax, BYTE PTR [rax]
	cmp	al, 45
	jne	.L248
.L249:
	add	QWORD PTR -16[rbp], 1
.L248:
	mov	rax, QWORD PTR -16[rbp]
	cmp	rax, QWORD PTR -8[rbp]
	ja	.L251
	cmp	DWORD PTR -24[rbp], 3
	jne	.L251
	call	__ctype_b_loc@PLT
	mov	rdx, QWORD PTR [rax]
	mov	rax, QWORD PTR -16[rbp]
	movzx	eax, BYTE PTR [rax]
	movsx	rax, al
	add	rax, rax
	add	rax, rdx
	movzx	eax, WORD PTR [rax]
	movzx	eax, ax
	and	eax, 2048
	test	eax, eax
	je	.L251
	mov	DWORD PTR -24[rbp], 2
	jmp	.L251
.L253:
	add	QWORD PTR -16[rbp], 1
.L251:
	mov	rax, QWORD PTR -16[rbp]
	cmp	rax, QWORD PTR -8[rbp]
	ja	.L252
	call	__ctype_b_loc@PLT
	mov	rdx, QWORD PTR [rax]
	mov	rax, QWORD PTR -16[rbp]
	movzx	eax, BYTE PTR [rax]
	movsx	rax, al
	add	rax, rax
	add	rax, rdx
	movzx	eax, WORD PTR [rax]
	movzx	eax, ax
	and	eax, 2048
	test	eax, eax
	jne	.L253
.L252:
	cmp	DWORD PTR -24[rbp], 3
	jne	.L257
	mov	DWORD PTR -24[rbp], 0
	jmp	.L233
.L256:
	nop
	jmp	.L233
.L257:
	nop
.L233:
	mov	rax, QWORD PTR -16[rbp]
	cmp	rax, QWORD PTR -8[rbp]
	ja	.L254
	mov	DWORD PTR -24[rbp], 0
.L254:
	mov	eax, DWORD PTR -24[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE31:
	.size	vsv_isValidNumber, .-vsv_isValidNumber
	.type	vsv_utf8IsValid, @function
vsv_utf8IsValid:
.LFB32:
	.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 -40[rbp], rdi
	mov	QWORD PTR -16[rbp], 0
	mov	DWORD PTR -20[rbp], 0
	mov	rax, QWORD PTR -40[rbp]
	mov	QWORD PTR -8[rbp], rax
	jmp	.L259
.L267:
	cmp	DWORD PTR -20[rbp], 0
	je	.L260
	movzx	eax, BYTE PTR -21[rbp]
	and	eax, 192
	cmp	eax, 128
	jne	.L261
	sub	DWORD PTR -20[rbp], 1
	add	QWORD PTR -8[rbp], 1
	add	QWORD PTR -16[rbp], 1
	jmp	.L259
.L261:
	mov	QWORD PTR -16[rbp], -1
	jmp	.L262
.L260:
	movzx	eax, BYTE PTR -21[rbp]
	test	al, al
	js	.L263
	add	QWORD PTR -8[rbp], 1
	add	QWORD PTR -16[rbp], 1
	jmp	.L259
.L263:
	movzx	eax, BYTE PTR -21[rbp]
	and	eax, 224
	cmp	eax, 192
	jne	.L264
	mov	DWORD PTR -20[rbp], 1
	add	QWORD PTR -8[rbp], 1
	add	QWORD PTR -16[rbp], 1
	jmp	.L259
.L264:
	movzx	eax, BYTE PTR -21[rbp]
	and	eax, 240
	cmp	eax, 224
	jne	.L265
	mov	DWORD PTR -20[rbp], 2
	add	QWORD PTR -8[rbp], 1
	add	QWORD PTR -16[rbp], 1
	jmp	.L259
.L265:
	movzx	eax, BYTE PTR -21[rbp]
	and	eax, 248
	cmp	eax, 240
	jne	.L266
	mov	DWORD PTR -20[rbp], 3
	add	QWORD PTR -8[rbp], 1
	add	QWORD PTR -16[rbp], 1
	jmp	.L259
.L266:
	mov	QWORD PTR -16[rbp], -1
	jmp	.L262
.L259:
	mov	rax, QWORD PTR -8[rbp]
	movzx	eax, BYTE PTR [rax]
	mov	BYTE PTR -21[rbp], al
	cmp	BYTE PTR -21[rbp], 0
	jne	.L267
.L262:
	mov	rax, QWORD PTR -16[rbp]
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE32:
	.size	vsv_utf8IsValid, .-vsv_utf8IsValid
	.section	.rodata
.LC51:
	.string	"Invalid UTF8 Data"
	.text
	.type	vsvtabColumn, @function
vsvtabColumn:
.LFB33:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 136
	.cfi_offset 3, -24
	mov	QWORD PTR -120[rbp], rdi
	mov	QWORD PTR -128[rbp], rsi
	mov	DWORD PTR -132[rbp], edx
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -24[rbp], rax
	xor	eax, eax
	mov	rax, QWORD PTR -120[rbp]
	mov	QWORD PTR -112[rbp], rax
	mov	rax, QWORD PTR -120[rbp]
	mov	rax, QWORD PTR [rax]
	mov	QWORD PTR -104[rbp], rax
	mov	rax, QWORD PTR -112[rbp]
	mov	rdx, QWORD PTR 304[rax]
	mov	eax, DWORD PTR -132[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	mov	eax, DWORD PTR [rax]
	cdqe
	mov	QWORD PTR -96[rbp], rax
	mov	QWORD PTR -88[rbp], 0
	cmp	DWORD PTR -132[rbp], 0
	js	.L312
	mov	rax, QWORD PTR -104[rbp]
	mov	eax, DWORD PTR 48[rax]
	cmp	DWORD PTR -132[rbp], eax
	jge	.L312
	mov	rax, QWORD PTR -112[rbp]
	mov	rdx, QWORD PTR 288[rax]
	mov	eax, DWORD PTR -132[rbp]
	cdqe
	sal	rax, 3
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	test	rax, rax
	je	.L312
	cmp	QWORD PTR -96[rbp], 0
	js	.L312
	mov	rax, QWORD PTR -104[rbp]
	mov	eax, DWORD PTR 60[rax]
	cmp	eax, 5
	ja	.L270
	mov	eax, eax
	lea	rdx, 0[0+rax*4]
	lea	rax, .L272[rip]
	mov	eax, DWORD PTR [rdx+rax]
	cdqe
	lea	rdx, .L272[rip]
	add	rax, rdx
	notrack jmp	rax
	.section	.rodata
	.align 4
	.align 4
.L272:
	.long	.L277-.L272
	.long	.L276-.L272
	.long	.L275-.L272
	.long	.L274-.L272
	.long	.L273-.L272
	.long	.L271-.L272
	.text
.L277:
	mov	rax, QWORD PTR -104[rbp]
	mov	eax, DWORD PTR 68[rax]
	test	eax, eax
	je	.L278
	mov	rax, QWORD PTR -112[rbp]
	mov	rdx, QWORD PTR 288[rax]
	mov	eax, DWORD PTR -132[rbp]
	cdqe
	sal	rax, 3
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	mov	rdi, rax
	call	vsv_utf8IsValid
	mov	QWORD PTR -88[rbp], rax
	mov	rax, QWORD PTR -88[rbp]
	cmp	rax, QWORD PTR -96[rbp]
	jne	.L279
	mov	rax, QWORD PTR sqlite3_api[rip]
	mov	r8, QWORD PTR 680[rax]
	mov	rax, QWORD PTR -96[rbp]
	mov	edx, eax
	mov	rax, QWORD PTR -112[rbp]
	mov	rcx, QWORD PTR 288[rax]
	mov	eax, DWORD PTR -132[rbp]
	cdqe
	sal	rax, 3
	add	rax, rcx
	mov	rsi, QWORD PTR [rax]
	mov	rax, QWORD PTR -128[rbp]
	mov	rcx, -1
	mov	rdi, rax
	call	r8
	jmp	.L270
.L279:
	mov	rax, QWORD PTR sqlite3_api[rip]
	mov	rcx, QWORD PTR 640[rax]
	mov	rax, QWORD PTR -128[rbp]
	mov	edx, -1
	lea	rsi, .LC51[rip]
	mov	rdi, rax
	call	rcx
	jmp	.L270
.L278:
	mov	rax, QWORD PTR sqlite3_api[rip]
	mov	r8, QWORD PTR 680[rax]
	mov	rax, QWORD PTR -112[rbp]
	mov	rdx, QWORD PTR 288[rax]
	mov	eax, DWORD PTR -132[rbp]
	cdqe
	sal	rax, 3
	add	rax, rdx
	mov	rsi, QWORD PTR [rax]
	mov	rax, QWORD PTR -128[rbp]
	mov	rcx, -1
	mov	edx, -1
	mov	rdi, rax
	call	r8
	jmp	.L270
.L276:
	mov	rax, QWORD PTR sqlite3_api[rip]
	mov	r8, QWORD PTR 624[rax]
	mov	rax, QWORD PTR -96[rbp]
	mov	edx, eax
	mov	rax, QWORD PTR -112[rbp]
	mov	rcx, QWORD PTR 288[rax]
	mov	eax, DWORD PTR -132[rbp]
	cdqe
	sal	rax, 3
	add	rax, rcx
	mov	rsi, QWORD PTR [rax]
	mov	rax, QWORD PTR -128[rbp]
	mov	rcx, -1
	mov	rdi, rax
	call	r8
	jmp	.L270
.L275:
	mov	rax, QWORD PTR -104[rbp]
	mov	eax, DWORD PTR 68[rax]
	test	eax, eax
	je	.L281
	mov	rax, QWORD PTR -112[rbp]
	mov	rdx, QWORD PTR 288[rax]
	mov	eax, DWORD PTR -132[rbp]
	cdqe
	sal	rax, 3
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	mov	rdi, rax
	call	vsv_utf8IsValid
	mov	QWORD PTR -88[rbp], rax
	mov	rax, QWORD PTR -88[rbp]
	cmp	rax, QWORD PTR -96[rbp]
	jge	.L282
	mov	rax, QWORD PTR sqlite3_api[rip]
	mov	r8, QWORD PTR 624[rax]
	mov	rax, QWORD PTR -96[rbp]
	mov	edx, eax
	mov	rax, QWORD PTR -112[rbp]
	mov	rcx, QWORD PTR 288[rax]
	mov	eax, DWORD PTR -132[rbp]
	cdqe
	sal	rax, 3
	add	rax, rcx
	mov	rsi, QWORD PTR [rax]
	mov	rax, QWORD PTR -128[rbp]
	mov	rcx, -1
	mov	rdi, rax
	call	r8
	jmp	.L270
.L282:
	mov	rax, QWORD PTR sqlite3_api[rip]
	mov	r8, QWORD PTR 680[rax]
	mov	rax, QWORD PTR -88[rbp]
	mov	edx, eax
	mov	rax, QWORD PTR -112[rbp]
	mov	rcx, QWORD PTR 288[rax]
	mov	eax, DWORD PTR -132[rbp]
	cdqe
	sal	rax, 3
	add	rax, rcx
	mov	rsi, QWORD PTR [rax]
	mov	rax, QWORD PTR -128[rbp]
	mov	rcx, -1
	mov	rdi, rax
	call	r8
	jmp	.L270
.L281:
	mov	rax, QWORD PTR sqlite3_api[rip]
	mov	r8, QWORD PTR 680[rax]
	mov	rax, QWORD PTR -112[rbp]
	mov	rdx, QWORD PTR 288[rax]
	mov	eax, DWORD PTR -132[rbp]
	cdqe
	sal	rax, 3
	add	rax, rdx
	mov	rsi, QWORD PTR [rax]
	mov	rax, QWORD PTR -128[rbp]
	mov	rcx, -1
	mov	edx, -1
	mov	rdi, rax
	call	r8
	jmp	.L270
.L274:
	mov	rax, QWORD PTR -112[rbp]
	mov	rdx, QWORD PTR 288[rax]
	mov	eax, DWORD PTR -132[rbp]
	cdqe
	sal	rax, 3
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	mov	rdi, rax
	call	vsv_isValidNumber
	cmp	eax, 1
	jne	.L284
	mov	rax, QWORD PTR sqlite3_api[rip]
	mov	rbx, QWORD PTR 664[rax]
	mov	rax, QWORD PTR -112[rbp]
	mov	rdx, QWORD PTR 288[rax]
	mov	eax, DWORD PTR -132[rbp]
	cdqe
	sal	rax, 3
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	mov	edx, 10
	mov	esi, 0
	mov	rdi, rax
	call	strtoll@PLT
	mov	rdx, rax
	mov	rax, QWORD PTR -128[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	rbx
	jmp	.L285
.L284:
	mov	rax, QWORD PTR -104[rbp]
	mov	eax, DWORD PTR 68[rax]
	test	eax, eax
	je	.L286
	mov	rax, QWORD PTR -112[rbp]
	mov	rdx, QWORD PTR 288[rax]
	mov	eax, DWORD PTR -132[rbp]
	cdqe
	sal	rax, 3
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	mov	rdi, rax
	call	vsv_utf8IsValid
	mov	QWORD PTR -88[rbp], rax
	mov	rax, QWORD PTR -88[rbp]
	cmp	rax, QWORD PTR -96[rbp]
	jge	.L287
	mov	rax, QWORD PTR sqlite3_api[rip]
	mov	r8, QWORD PTR 624[rax]
	mov	rax, QWORD PTR -96[rbp]
	mov	edx, eax
	mov	rax, QWORD PTR -112[rbp]
	mov	rcx, QWORD PTR 288[rax]
	mov	eax, DWORD PTR -132[rbp]
	cdqe
	sal	rax, 3
	add	rax, rcx
	mov	rsi, QWORD PTR [rax]
	mov	rax, QWORD PTR -128[rbp]
	mov	rcx, -1
	mov	rdi, rax
	call	r8
	jmp	.L313
.L287:
	mov	rax, QWORD PTR sqlite3_api[rip]
	mov	r8, QWORD PTR 680[rax]
	mov	rax, QWORD PTR -88[rbp]
	mov	edx, eax
	mov	rax, QWORD PTR -112[rbp]
	mov	rcx, QWORD PTR 288[rax]
	mov	eax, DWORD PTR -132[rbp]
	cdqe
	sal	rax, 3
	add	rax, rcx
	mov	rsi, QWORD PTR [rax]
	mov	rax, QWORD PTR -128[rbp]
	mov	rcx, -1
	mov	rdi, rax
	call	r8
	jmp	.L313
.L286:
	mov	rax, QWORD PTR sqlite3_api[rip]
	mov	r8, QWORD PTR 680[rax]
	mov	rax, QWORD PTR -112[rbp]
	mov	rdx, QWORD PTR 288[rax]
	mov	eax, DWORD PTR -132[rbp]
	cdqe
	sal	rax, 3
	add	rax, rdx
	mov	rsi, QWORD PTR [rax]
	mov	rax, QWORD PTR -128[rbp]
	mov	rcx, -1
	mov	edx, -1
	mov	rdi, rax
	call	r8
.L313:
	nop
.L285:
	jmp	.L270
.L273:
	mov	rax, QWORD PTR -112[rbp]
	mov	rdx, QWORD PTR 288[rax]
	mov	eax, DWORD PTR -132[rbp]
	cdqe
	sal	rax, 3
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	mov	rdi, rax
	call	vsv_isValidNumber
	sub	eax, 1
	cmp	eax, 1
	ja	.L289
	mov	rax, QWORD PTR sqlite3_api[rip]
	mov	rbx, QWORD PTR 632[rax]
	mov	rax, QWORD PTR -112[rbp]
	mov	rdx, QWORD PTR 288[rax]
	mov	eax, DWORD PTR -132[rbp]
	cdqe
	sal	rax, 3
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	mov	esi, 0
	mov	rdi, rax
	call	strtod@PLT
	movq	rax, xmm0
	mov	rdx, QWORD PTR -128[rbp]
	movq	xmm0, rax
	mov	rdi, rdx
	call	rbx
	jmp	.L290
.L289:
	mov	rax, QWORD PTR -104[rbp]
	mov	eax, DWORD PTR 68[rax]
	test	eax, eax
	je	.L291
	mov	rax, QWORD PTR -112[rbp]
	mov	rdx, QWORD PTR 288[rax]
	mov	eax, DWORD PTR -132[rbp]
	cdqe
	sal	rax, 3
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	mov	rdi, rax
	call	vsv_utf8IsValid
	mov	QWORD PTR -88[rbp], rax
	mov	rax, QWORD PTR -88[rbp]
	cmp	rax, QWORD PTR -96[rbp]
	jge	.L292
	mov	rax, QWORD PTR sqlite3_api[rip]
	mov	r8, QWORD PTR 624[rax]
	mov	rax, QWORD PTR -96[rbp]
	mov	edx, eax
	mov	rax, QWORD PTR -112[rbp]
	mov	rcx, QWORD PTR 288[rax]
	mov	eax, DWORD PTR -132[rbp]
	cdqe
	sal	rax, 3
	add	rax, rcx
	mov	rsi, QWORD PTR [rax]
	mov	rax, QWORD PTR -128[rbp]
	mov	rcx, -1
	mov	rdi, rax
	call	r8
	jmp	.L314
.L292:
	mov	rax, QWORD PTR sqlite3_api[rip]
	mov	r8, QWORD PTR 680[rax]
	mov	rax, QWORD PTR -88[rbp]
	mov	edx, eax
	mov	rax, QWORD PTR -112[rbp]
	mov	rcx, QWORD PTR 288[rax]
	mov	eax, DWORD PTR -132[rbp]
	cdqe
	sal	rax, 3
	add	rax, rcx
	mov	rsi, QWORD PTR [rax]
	mov	rax, QWORD PTR -128[rbp]
	mov	rcx, -1
	mov	rdi, rax
	call	r8
	jmp	.L314
.L291:
	mov	rax, QWORD PTR sqlite3_api[rip]
	mov	r8, QWORD PTR 680[rax]
	mov	rax, QWORD PTR -112[rbp]
	mov	rdx, QWORD PTR 288[rax]
	mov	eax, DWORD PTR -132[rbp]
	cdqe
	sal	rax, 3
	add	rax, rdx
	mov	rsi, QWORD PTR [rax]
	mov	rax, QWORD PTR -128[rbp]
	mov	rcx, -1
	mov	edx, -1
	mov	rdi, rax
	call	r8
.L314:
	nop
.L290:
	jmp	.L270
.L271:
	mov	rax, QWORD PTR -112[rbp]
	mov	rdx, QWORD PTR 288[rax]
	mov	eax, DWORD PTR -132[rbp]
	cdqe
	sal	rax, 3
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	mov	rdi, rax
	call	vsv_isValidNumber
	cmp	eax, 1
	je	.L294
	cmp	eax, 2
	je	.L295
	jmp	.L311
.L294:
	mov	rax, QWORD PTR sqlite3_api[rip]
	mov	rbx, QWORD PTR 664[rax]
	mov	rax, QWORD PTR -112[rbp]
	mov	rdx, QWORD PTR 288[rax]
	mov	eax, DWORD PTR -132[rbp]
	cdqe
	sal	rax, 3
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	mov	edx, 10
	mov	esi, 0
	mov	rdi, rax
	call	strtoll@PLT
	mov	rdx, rax
	mov	rax, QWORD PTR -128[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	rbx
	jmp	.L270
.L295:
	mov	rax, QWORD PTR -112[rbp]
	mov	rdx, QWORD PTR 288[rax]
	mov	eax, DWORD PTR -132[rbp]
	cdqe
	sal	rax, 3
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	mov	esi, 0
	mov	rdi, rax
	call	strtold@PLT
	fstp	TBYTE PTR -64[rbp]
	lea	rax, -80[rbp]
	push	QWORD PTR -56[rbp]
	push	QWORD PTR -64[rbp]
	mov	rdi, rax
	call	modfl@PLT
	add	rsp, 16
	fstp	TBYTE PTR -48[rbp]
	fld	TBYTE PTR -48[rbp]
	fldz
	fucomip	st, st(1)
	fstp	st(0)
	jp	.L297
	fld	TBYTE PTR -48[rbp]
	fldz
	fucomip	st, st(1)
	fstp	st(0)
	jne	.L297
	fld	TBYTE PTR .LC53[rip]
	fld	TBYTE PTR -64[rbp]
	fcomip	st, st(1)
	fstp	st(0)
	jb	.L297
	fld	TBYTE PTR -64[rbp]
	fld	TBYTE PTR .LC54[rip]
	fcomip	st, st(1)
	fstp	st(0)
	jb	.L297
	mov	rax, QWORD PTR sqlite3_api[rip]
	mov	rdx, QWORD PTR 664[rax]
	fld	TBYTE PTR -64[rbp]
	fnstcw	WORD PTR -134[rbp]
	movzx	eax, WORD PTR -134[rbp]
	or	ah, 12
	mov	WORD PTR -136[rbp], ax
	fldcw	WORD PTR -136[rbp]
	fistp	QWORD PTR -144[rbp]
	fldcw	WORD PTR -134[rbp]
	mov	rsi, QWORD PTR -144[rbp]
	mov	rax, QWORD PTR -128[rbp]
	mov	rdi, rax
	call	rdx
	jmp	.L270
.L297:
	mov	rax, QWORD PTR sqlite3_api[rip]
	mov	rdx, QWORD PTR 632[rax]
	fld	TBYTE PTR -64[rbp]
	fstp	QWORD PTR -144[rbp]
	movsd	xmm0, QWORD PTR -144[rbp]
	mov	rax, QWORD PTR -128[rbp]
	mov	rdi, rax
	call	rdx
	jmp	.L270
.L311:
	mov	rax, QWORD PTR -104[rbp]
	mov	eax, DWORD PTR 68[rax]
	test	eax, eax
	je	.L302
	mov	rax, QWORD PTR -112[rbp]
	mov	rdx, QWORD PTR 288[rax]
	mov	eax, DWORD PTR -132[rbp]
	cdqe
	sal	rax, 3
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	mov	rdi, rax
	call	vsv_utf8IsValid
	mov	QWORD PTR -88[rbp], rax
	mov	rax, QWORD PTR -88[rbp]
	cmp	rax, QWORD PTR -96[rbp]
	jge	.L303
	mov	rax, QWORD PTR sqlite3_api[rip]
	mov	r8, QWORD PTR 624[rax]
	mov	rax, QWORD PTR -96[rbp]
	mov	edx, eax
	mov	rax, QWORD PTR -112[rbp]
	mov	rcx, QWORD PTR 288[rax]
	mov	eax, DWORD PTR -132[rbp]
	cdqe
	sal	rax, 3
	add	rax, rcx
	mov	rsi, QWORD PTR [rax]
	mov	rax, QWORD PTR -128[rbp]
	mov	rcx, -1
	mov	rdi, rax
	call	r8
	jmp	.L270
.L303:
	mov	rax, QWORD PTR sqlite3_api[rip]
	mov	r8, QWORD PTR 680[rax]
	mov	rax, QWORD PTR -88[rbp]
	mov	edx, eax
	mov	rax, QWORD PTR -112[rbp]
	mov	rcx, QWORD PTR 288[rax]
	mov	eax, DWORD PTR -132[rbp]
	cdqe
	sal	rax, 3
	add	rax, rcx
	mov	rsi, QWORD PTR [rax]
	mov	rax, QWORD PTR -128[rbp]
	mov	rcx, -1
	mov	rdi, rax
	call	r8
	jmp	.L270
.L302:
	mov	rax, QWORD PTR sqlite3_api[rip]
	mov	r8, QWORD PTR 680[rax]
	mov	rax, QWORD PTR -112[rbp]
	mov	rdx, QWORD PTR 288[rax]
	mov	eax, DWORD PTR -132[rbp]
	cdqe
	sal	rax, 3
	add	rax, rdx
	mov	rsi, QWORD PTR [rax]
	mov	rax, QWORD PTR -128[rbp]
	mov	rcx, -1
	mov	edx, -1
	mov	rdi, rax
	call	r8
	jmp	.L270
.L312:
	nop
.L270:
	mov	eax, 0
	mov	rbx, QWORD PTR -24[rbp]
	sub	rbx, QWORD PTR fs:40
	je	.L315
	call	__stack_chk_fail@PLT
.L315:
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE33:
	.size	vsvtabColumn, .-vsvtabColumn
	.type	vsvtabRowid, @function
vsvtabRowid:
.LFB34:
	.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	QWORD PTR -32[rbp], rsi
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	mov	rdx, QWORD PTR 312[rax]
	mov	rax, QWORD PTR -32[rbp]
	mov	QWORD PTR [rax], rdx
	mov	eax, 0
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE34:
	.size	vsvtabRowid, .-vsvtabRowid
	.type	vsvtabEof, @function
vsvtabEof:
.LFB35:
	.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	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR 312[rax]
	shr	rax, 63
	movzx	eax, al
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE35:
	.size	vsvtabEof, .-vsvtabEof
	.section	.rodata
.LC56:
	.string	"pCur->rdr.zIn==pTab->zData"
.LC57:
	.string	"pTab->iStart>=0"
	.align 8
.LC58:
	.string	"(size_t)pTab->iStart<=pCur->rdr.nIn"
	.text
	.type	vsvtabFilter, @function
vsvtabFilter:
.LFB36:
	.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	QWORD PTR -48[rbp], r8
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR -16[rbp], rax
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR [rax]
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -16[rbp]
	mov	QWORD PTR 312[rax], 0
	mov	rax, QWORD PTR -16[rbp]
	mov	rax, QWORD PTR 8[rax]
	test	rax, rax
	jne	.L321
	mov	rax, QWORD PTR -16[rbp]
	mov	rdx, QWORD PTR 80[rax]
	mov	rax, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR 32[rax]
	cmp	rdx, rax
	je	.L322
	lea	rcx, __PRETTY_FUNCTION__.0[rip]
	mov	edx, 1803
	lea	rsi, .LC3[rip]
	lea	rdi, .LC56[rip]
	call	__assert_fail@PLT
.L322:
	mov	rax, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR 40[rax]
	test	rax, rax
	jns	.L323
	lea	rcx, __PRETTY_FUNCTION__.0[rip]
	mov	edx, 1804
	lea	rsi, .LC3[rip]
	lea	rdi, .LC57[rip]
	call	__assert_fail@PLT
.L323:
	mov	rax, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR 40[rax]
	mov	rdx, rax
	mov	rax, QWORD PTR -16[rbp]
	mov	rax, QWORD PTR 72[rax]
	cmp	rdx, rax
	jbe	.L324
	lea	rcx, __PRETTY_FUNCTION__.0[rip]
	mov	edx, 1805
	lea	rsi, .LC3[rip]
	lea	rdi, .LC58[rip]
	call	__assert_fail@PLT
.L324:
	mov	rax, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR 40[rax]
	mov	rdx, rax
	mov	rax, QWORD PTR -16[rbp]
	mov	QWORD PTR 64[rax], rdx
	jmp	.L325
.L321:
	mov	rax, QWORD PTR -8[rbp]
	mov	rcx, QWORD PTR 40[rax]
	mov	rax, QWORD PTR -16[rbp]
	mov	rax, QWORD PTR 8[rax]
	mov	edx, 0
	mov	rsi, rcx
	mov	rdi, rax
	call	fseek@PLT
	mov	rax, QWORD PTR -16[rbp]
	mov	QWORD PTR 64[rax], 0
	mov	rax, QWORD PTR -16[rbp]
	mov	QWORD PTR 72[rax], 0
.L325:
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	vsvtabNext
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE36:
	.size	vsvtabFilter, .-vsvtabFilter
	.type	vsvtabBestIndex, @function
vsvtabBestIndex:
.LFB37:
	.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 -8[rbp], rdi
	mov	QWORD PTR -16[rbp], rsi
	mov	rax, QWORD PTR -16[rbp]
	movsd	xmm0, QWORD PTR .LC59[rip]
	movsd	QWORD PTR 64[rax], xmm0
	mov	eax, 0
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE37:
	.size	vsvtabBestIndex, .-vsvtabBestIndex
	.section	.data.rel.local,"aw"
	.align 32
	.type	VsvModule, @object
	.size	VsvModule, 192
VsvModule:
	.long	0
	.zero	4
	.quad	vsvtabCreate
	.quad	vsvtabConnect
	.quad	vsvtabBestIndex
	.quad	vsvtabDisconnect
	.quad	vsvtabDisconnect
	.quad	vsvtabOpen
	.quad	vsvtabClose
	.quad	vsvtabFilter
	.quad	vsvtabNext
	.quad	vsvtabEof
	.quad	vsvtabColumn
	.quad	vsvtabRowid
	.quad	0
	.quad	0
	.quad	0
	.quad	0
	.quad	0
	.quad	0
	.quad	0
	.zero	32
	.section	.rodata
.LC60:
	.string	"vsv"
	.text
	.globl	sqlite3_vsv_init
	.type	sqlite3_vsv_init, @function
sqlite3_vsv_init:
.LFB38:
	.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	QWORD PTR -40[rbp], rdx
	mov	rax, QWORD PTR -40[rbp]
	mov	QWORD PTR sqlite3_api[rip], rax
	mov	rax, QWORD PTR sqlite3_api[rip]
	mov	r8, QWORD PTR 376[rax]
	mov	rax, QWORD PTR -24[rbp]
	mov	ecx, 0
	lea	rdx, VsvModule[rip]
	lea	rsi, .LC60[rip]
	mov	rdi, rax
	call	r8
	mov	DWORD PTR -4[rbp], eax
	mov	eax, DWORD PTR -4[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE38:
	.size	sqlite3_vsv_init, .-sqlite3_vsv_init
	.section	.rodata
	.align 16
	.type	__PRETTY_FUNCTION__.3, @object
	.size	__PRETTY_FUNCTION__.3, 16
__PRETTY_FUNCTION__.3:
	.string	"vsv_reader_open"
	.align 16
	.type	__PRETTY_FUNCTION__.2, @object
	.size	__PRETTY_FUNCTION__.2, 16
__PRETTY_FUNCTION__.2:
	.string	"vsv_getc_refill"
.LC61:
	.string	"filename"
.LC62:
	.string	"data"
.LC63:
	.string	"schema"
.LC64:
	.string	"fsep"
.LC65:
	.string	"rsep"
	.section	.data.rel.local
	.align 32
	.type	azParam.1, @object
	.size	azParam.1, 40
azParam.1:
	.quad	.LC61
	.quad	.LC62
	.quad	.LC63
	.quad	.LC64
	.quad	.LC65
	.section	.rodata
	.align 8
	.type	__PRETTY_FUNCTION__.0, @object
	.size	__PRETTY_FUNCTION__.0, 13
__PRETTY_FUNCTION__.0:
	.string	"vsvtabFilter"
	.align 16
.LC53:
	.long	0
	.long	-2147483648
	.long	49214
	.long	0
	.align 16
.LC54:
	.long	-2
	.long	-1
	.long	16445
	.long	0
	.align 8
.LC59:
	.long	0
	.long	1093567616
	.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	"77720.c"
	.text
	.global	sqlite3_api
	.bss
	.align	2
	.type	sqlite3_api, %object
	.size	sqlite3_api, 4
sqlite3_api:
	.space	4
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	vsv_reader_init, %function
vsv_reader_init:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, [fp, #-8]
	mov	r2, #0
	str	r2, [r3, #4]
	ldr	r3, [fp, #-8]
	mov	r2, #0
	str	r2, [r3, #8]
	ldr	r3, [fp, #-8]
	mov	r2, #0
	str	r2, [r3, #12]
	ldr	r3, [fp, #-8]
	mov	r2, #0
	str	r2, [r3, #16]
	ldr	r3, [fp, #-8]
	mov	r2, #0
	str	r2, [r3, #20]
	ldr	r3, [fp, #-8]
	mov	r2, #0
	str	r2, [r3, #48]
	ldr	r3, [fp, #-8]
	mov	r2, #0
	str	r2, [r3, #52]
	ldr	r3, [fp, #-8]
	mov	r2, #0
	str	r2, [r3, #40]
	ldr	r3, [fp, #-8]
	mov	r2, #0
	strb	r2, [r3, #56]
	nop
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	vsv_reader_init, .-vsv_reader_init
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	vsv_reader_reset, %function
vsv_reader_reset:
	@ 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]
	ldr	r3, [fp, #-8]
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L3
	ldr	r3, [fp, #-8]
	ldr	r3, [r3]
	mov	r0, r3
	bl	fclose
	ldr	r3, .L4
	ldr	r3, [r3]
	ldr	r3, [r3, #232]
	ldr	r2, [fp, #-8]
	ldr	r2, [r2, #52]
	mov	r0, r2
	blx	r3
.L3:
	ldr	r3, .L4
	ldr	r3, [r3]
	ldr	r3, [r3, #232]
	ldr	r2, [fp, #-8]
	ldr	r2, [r2, #4]
	mov	r0, r2
	blx	r3
	ldr	r0, [fp, #-8]
	bl	vsv_reader_init
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L5:
	.align	2
.L4:
	.word	sqlite3_api
	.size	vsv_reader_reset, .-vsv_reader_reset
	.section	.rodata
	.align	2
.LC0:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	vsv_errmsg, %function
vsv_errmsg:
	@ args = 4, pretend = 12, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 1
	push	{r1, r2, r3}
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #16
	str	r0, [fp, #-20]
	ldr	r3, [fp, #4]
	str	r3, [fp, #-24]
	ldr	r3, .L8
	ldr	r3, [r3]
	str	r3, [fp, #-12]
	mov	r3,#0
	add	r3, fp, #8
	str	r3, [fp, #-16]
	ldr	r3, .L8+4
	ldr	r3, [r3]
	ldr	r4, [r3, #760]
	ldr	r3, [fp, #-20]
	add	r1, r3, #56
	ldr	r3, [fp, #-16]
	ldr	r2, [fp, #-24]
	mov	r0, #200
	blx	r4
	nop
	ldr	r3, .L8
	ldr	r2, [r3]
	ldr	r3, [fp, #-12]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L7
	bl	__stack_chk_fail
.L7:
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, lr}
	add	sp, sp, #12
	bx	lr
.L9:
	.align	2
.L8:
	.word	.LC0
	.word	sqlite3_api
	.size	vsv_errmsg, .-vsv_errmsg
	.section	.rodata
	.align	2
.LC1:
	.ascii	"out of memory\000"
	.align	2
.LC2:
	.ascii	"rb\000"
	.align	2
.LC3:
	.ascii	"cannot open '%s' for reading\000"
	.align	2
.LC4:
	.ascii	"the_stack_data/77720.c\000"
	.align	2
.LC5:
	.ascii	"p->in==0\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	vsv_reader_open, %function
vsv_reader_open:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-8]
	str	r1, [fp, #-12]
	str	r2, [fp, #-16]
	ldr	r3, [fp, #-12]
	cmp	r3, #0
	beq	.L11
	ldr	r3, .L16
	ldr	r3, [r3]
	ldr	r3, [r3, #272]
	mov	r0, #1024
	blx	r3
	mov	r2, r0
	ldr	r3, [fp, #-8]
	str	r2, [r3, #52]
	ldr	r3, [fp, #-8]
	ldr	r3, [r3, #52]
	cmp	r3, #0
	bne	.L12
	ldr	r1, .L16+4
	ldr	r0, [fp, #-8]
	bl	vsv_errmsg
	mov	r3, #1
	b	.L13
.L12:
	ldr	r1, .L16+8
	ldr	r0, [fp, #-12]
	bl	fopen
	mov	r2, r0
	ldr	r3, [fp, #-8]
	str	r2, [r3]
	ldr	r3, [fp, #-8]
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L14
	ldr	r3, .L16
	ldr	r3, [r3]
	ldr	r3, [r3, #232]
	ldr	r2, [fp, #-8]
	ldr	r2, [r2, #52]
	mov	r0, r2
	blx	r3
	ldr	r0, [fp, #-8]
	bl	vsv_reader_reset
	ldr	r2, [fp, #-12]
	ldr	r1, .L16+12
	ldr	r0, [fp, #-8]
	bl	vsv_errmsg
	mov	r3, #1
	b	.L13
.L11:
	ldr	r3, [fp, #-8]
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L15
	ldr	r3, .L16+16
	ldr	r2, .L16+20
	ldr	r1, .L16+24
	ldr	r0, .L16+28
	bl	__assert_fail
.L15:
	ldr	r3, [fp, #-8]
	ldr	r2, [fp, #-16]
	str	r2, [r3, #52]
	ldr	r0, [fp, #-16]
	bl	strlen
	mov	r2, r0
	ldr	r3, [fp, #-8]
	str	r2, [r3, #48]
.L14:
	mov	r3, #0
.L13:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L17:
	.align	2
.L16:
	.word	sqlite3_api
	.word	.LC1
	.word	.LC2
	.word	.LC3
	.word	__PRETTY_FUNCTION__.9002
	.word	361
	.word	.LC4
	.word	.LC5
	.size	vsv_reader_open, .-vsv_reader_open
	.section	.rodata
	.align	2
.LC6:
	.ascii	"p->iIn>=p->nIn\000"
	.align	2
.LC7:
	.ascii	"p->in!=0\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	vsv_getc_refill, %function
vsv_getc_refill:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	ldr	r3, [fp, #-16]
	ldr	r2, [r3, #44]
	ldr	r3, [fp, #-16]
	ldr	r3, [r3, #48]
	cmp	r2, r3
	bcs	.L19
	ldr	r3, .L23
	mov	r2, #376
	ldr	r1, .L23+4
	ldr	r0, .L23+8
	bl	__assert_fail
.L19:
	ldr	r3, [fp, #-16]
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L20
	ldr	r3, .L23
	ldr	r2, .L23+12
	ldr	r1, .L23+4
	ldr	r0, .L23+16
	bl	__assert_fail
.L20:
	ldr	r3, [fp, #-16]
	ldr	r0, [r3, #52]
	ldr	r3, [fp, #-16]
	ldr	r3, [r3]
	mov	r2, #1024
	mov	r1, #1
	bl	fread
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	bne	.L21
	mvn	r3, #0
	b	.L22
.L21:
	ldr	r3, [fp, #-16]
	ldr	r2, [fp, #-8]
	str	r2, [r3, #48]
	ldr	r3, [fp, #-16]
	mov	r2, #1
	str	r2, [r3, #44]
	ldr	r3, [fp, #-16]
	ldr	r3, [r3, #52]
	ldrb	r3, [r3]	@ zero_extendqisi2
.L22:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L24:
	.align	2
.L23:
	.word	__PRETTY_FUNCTION__.9007
	.word	.LC4
	.word	.LC6
	.word	377
	.word	.LC7
	.size	vsv_getc_refill, .-vsv_getc_refill
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	vsv_getc, %function
vsv_getc:
	@ 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]
	ldr	r3, [fp, #-8]
	ldr	r2, [r3, #44]
	ldr	r3, [fp, #-8]
	ldr	r3, [r3, #48]
	cmp	r2, r3
	bcc	.L26
	ldr	r3, [fp, #-8]
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L27
	ldr	r0, [fp, #-8]
	bl	vsv_getc_refill
	mov	r3, r0
	b	.L28
.L27:
	mvn	r3, #0
	b	.L28
.L26:
	ldr	r3, [fp, #-8]
	ldr	r2, [r3, #52]
	ldr	r3, [fp, #-8]
	ldr	r3, [r3, #44]
	add	r0, r3, #1
	ldr	r1, [fp, #-8]
	str	r0, [r1, #44]
	add	r3, r2, r3
	ldrb	r3, [r3]	@ zero_extendqisi2
.L28:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	vsv_getc, .-vsv_getc
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	vsv_resize_and_append, %function
vsv_resize_and_append:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	mov	r3, r1
	strb	r3, [fp, #-17]
	ldr	r3, [fp, #-16]
	ldr	r3, [r3, #12]
	add	r3, r3, #50
	lsl	r3, r3, #1
	str	r3, [fp, #-12]
	ldr	r3, .L32
	ldr	r3, [r3]
	ldr	r1, [r3, #796]
	ldr	r3, [fp, #-16]
	ldr	r0, [r3, #4]
	ldr	r3, [fp, #-12]
	mov	r2, r3
	asr	r3, r2, #31
	blx	r1
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	beq	.L30
	ldr	r3, [fp, #-16]
	ldr	r2, [fp, #-8]
	str	r2, [r3, #4]
	ldr	r3, [fp, #-16]
	ldr	r2, [fp, #-12]
	str	r2, [r3, #12]
	ldr	r3, [fp, #-16]
	ldr	r2, [r3, #4]
	ldr	r3, [fp, #-16]
	ldr	r3, [r3, #8]
	add	r0, r3, #1
	ldr	r1, [fp, #-16]
	str	r0, [r1, #8]
	add	r3, r2, r3
	ldrb	r2, [fp, #-17]
	strb	r2, [r3]
	mov	r3, #0
	b	.L31
.L30:
	ldr	r1, .L32+4
	ldr	r0, [fp, #-16]
	bl	vsv_errmsg
	mov	r3, #1
.L31:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L33:
	.align	2
.L32:
	.word	sqlite3_api
	.word	.LC1
	.size	vsv_resize_and_append, .-vsv_resize_and_append
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	vsv_append, %function
vsv_append:
	@ 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]
	mov	r3, r1
	strb	r3, [fp, #-9]
	ldr	r3, [fp, #-8]
	ldr	r2, [r3, #8]
	ldr	r3, [fp, #-8]
	ldr	r3, [r3, #12]
	sub	r3, r3, #1
	cmp	r2, r3
	blt	.L35
	ldrb	r3, [fp, #-9]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r0, [fp, #-8]
	bl	vsv_resize_and_append
	mov	r3, r0
	b	.L36
.L35:
	ldr	r3, [fp, #-8]
	ldr	r2, [r3, #4]
	ldr	r3, [fp, #-8]
	ldr	r3, [r3, #8]
	add	r0, r3, #1
	ldr	r1, [fp, #-8]
	str	r0, [r1, #8]
	add	r3, r2, r3
	ldrb	r2, [fp, #-9]
	strb	r2, [r3]
	mov	r3, #0
.L36:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	vsv_append, .-vsv_append
	.section	.rodata
	.align	2
.LC8:
	.ascii	"line %d: unescaped %c character\000"
	.align	2
.LC9:
	.ascii	"line %d: unterminated %c-quoted field\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	vsv_read_one_field, %function
vsv_read_one_field:
	@ 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, #-24]
	ldr	r3, [fp, #-24]
	mov	r2, #0
	str	r2, [r3, #40]
	ldr	r3, [fp, #-24]
	mov	r2, #0
	str	r2, [r3, #8]
	ldr	r0, [fp, #-24]
	bl	vsv_getc
	str	r0, [fp, #-20]
	ldr	r3, [fp, #-20]
	cmn	r3, #1
	bne	.L38
	ldr	r3, [fp, #-24]
	mvn	r2, #0
	str	r2, [r3, #24]
	mov	r3, #0
	b	.L39
.L38:
	ldr	r3, [fp, #-20]
	cmp	r3, #34
	bne	.L40
	ldr	r3, [fp, #-24]
	ldr	r3, [r3, #16]
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-24]
	mov	r2, #1
	str	r2, [r3, #40]
	mov	r3, #0
	str	r3, [fp, #-12]
	ldr	r3, [fp, #-12]
	str	r3, [fp, #-16]
.L54:
	ldr	r0, [fp, #-24]
	bl	vsv_getc
	str	r0, [fp, #-20]
	ldr	r3, [fp, #-20]
	cmp	r3, #10
	bne	.L41
	ldr	r3, [fp, #-24]
	ldr	r3, [r3, #16]
	add	r2, r3, #1
	ldr	r3, [fp, #-24]
	str	r2, [r3, #16]
.L41:
	ldr	r3, [fp, #-20]
	cmp	r3, #34
	bne	.L42
	ldr	r3, [fp, #-16]
	cmp	r3, #34
	bne	.L42
	ldr	r3, [fp, #-12]
	str	r3, [fp, #-16]
	mov	r3, #0
	str	r3, [fp, #-12]
	b	.L43
.L42:
	ldr	r3, [fp, #-24]
	ldr	r3, [r3, #28]
	ldr	r2, [fp, #-20]
	cmp	r2, r3
	bne	.L44
	ldr	r3, [fp, #-16]
	cmp	r3, #34
	beq	.L49
.L44:
	ldr	r3, [fp, #-24]
	ldr	r3, [r3, #32]
	ldr	r2, [fp, #-20]
	cmp	r2, r3
	bne	.L46
	ldr	r3, [fp, #-16]
	cmp	r3, #34
	beq	.L49
.L46:
	ldr	r3, [fp, #-24]
	ldr	r3, [r3, #32]
	cmp	r3, #10
	bne	.L47
	ldr	r3, [fp, #-20]
	cmp	r3, #10
	bne	.L47
	ldr	r3, [fp, #-16]
	cmp	r3, #13
	bne	.L47
	ldr	r3, [fp, #-12]
	cmp	r3, #34
	beq	.L49
.L47:
	ldr	r3, [fp, #-20]
	cmn	r3, #1
	bne	.L48
	ldr	r3, [fp, #-16]
	cmp	r3, #34
	bne	.L48
.L49:
	ldr	r3, [fp, #-24]
	ldr	r3, [r3, #8]
	sub	r2, r3, #1
	ldr	r3, [fp, #-24]
	str	r2, [r3, #8]
	ldr	r3, [fp, #-24]
	ldr	r3, [r3, #4]
	ldr	r2, [fp, #-24]
	ldr	r2, [r2, #8]
	add	r3, r3, r2
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #34
	bne	.L49
	ldr	r3, [fp, #-20]
	and	r3, r3, #255
	mov	r2, r3
	ldr	r3, [fp, #-24]
	str	r2, [r3, #24]
	b	.L55
.L48:
	ldr	r3, [fp, #-16]
	cmp	r3, #34
	bne	.L51
	ldr	r3, [fp, #-24]
	ldr	r3, [r3, #32]
	cmp	r3, #10
	bne	.L51
	ldr	r3, [fp, #-20]
	cmp	r3, #13
	beq	.L51
	ldr	r3, [fp, #-24]
	ldr	r2, [r3, #16]
	mov	r3, #34
	ldr	r1, .L67
	ldr	r0, [fp, #-24]
	bl	vsv_errmsg
	b	.L55
.L51:
	ldr	r3, [fp, #-20]
	cmn	r3, #1
	bne	.L52
	mov	r3, #34
	ldr	r2, [fp, #-8]
	ldr	r1, .L67+4
	ldr	r0, [fp, #-24]
	bl	vsv_errmsg
	ldr	r3, [fp, #-20]
	and	r3, r3, #255
	mov	r2, r3
	ldr	r3, [fp, #-24]
	str	r2, [r3, #24]
	b	.L55
.L52:
	ldr	r3, [fp, #-20]
	and	r3, r3, #255
	mov	r1, r3
	ldr	r0, [fp, #-24]
	bl	vsv_append
	mov	r3, r0
	cmp	r3, #0
	beq	.L53
	mov	r3, #0
	b	.L39
.L53:
	ldr	r3, [fp, #-16]
	str	r3, [fp, #-12]
	ldr	r3, [fp, #-20]
	str	r3, [fp, #-16]
.L43:
	b	.L54
.L40:
	ldr	r3, [fp, #-20]
	and	r3, r3, #255
	cmp	r3, #239
	bne	.L57
	ldr	r3, [fp, #-24]
	ldr	r3, [r3, #20]
	cmp	r3, #0
	bne	.L57
	ldr	r3, [fp, #-20]
	and	r3, r3, #255
	mov	r1, r3
	ldr	r0, [fp, #-24]
	bl	vsv_append
	ldr	r0, [fp, #-24]
	bl	vsv_getc
	str	r0, [fp, #-20]
	ldr	r3, [fp, #-20]
	and	r3, r3, #255
	cmp	r3, #187
	bne	.L57
	ldr	r3, [fp, #-20]
	and	r3, r3, #255
	mov	r1, r3
	ldr	r0, [fp, #-24]
	bl	vsv_append
	ldr	r0, [fp, #-24]
	bl	vsv_getc
	str	r0, [fp, #-20]
	ldr	r3, [fp, #-20]
	and	r3, r3, #255
	cmp	r3, #191
	bne	.L57
	ldr	r3, [fp, #-24]
	mov	r2, #1
	str	r2, [r3, #20]
	ldr	r3, [fp, #-24]
	mov	r2, #0
	str	r2, [r3, #8]
	ldr	r0, [fp, #-24]
	bl	vsv_read_one_field
	mov	r3, r0
	b	.L39
.L62:
	ldr	r3, [fp, #-20]
	cmp	r3, #10
	bne	.L58
	ldr	r3, [fp, #-24]
	ldr	r3, [r3, #16]
	add	r2, r3, #1
	ldr	r3, [fp, #-24]
	str	r2, [r3, #16]
.L58:
	ldr	r3, [fp, #-24]
	ldr	r3, [r3, #40]
	cmp	r3, #0
	bne	.L59
	ldr	r3, [fp, #-24]
	mov	r2, #1
	str	r2, [r3, #40]
.L59:
	ldr	r3, [fp, #-20]
	and	r3, r3, #255
	mov	r1, r3
	ldr	r0, [fp, #-24]
	bl	vsv_append
	mov	r3, r0
	cmp	r3, #0
	beq	.L60
	mov	r3, #0
	b	.L39
.L60:
	ldr	r0, [fp, #-24]
	bl	vsv_getc
	str	r0, [fp, #-20]
.L57:
	ldr	r3, [fp, #-20]
	cmn	r3, #1
	beq	.L61
	ldr	r3, [fp, #-24]
	ldr	r3, [r3, #32]
	ldr	r2, [fp, #-20]
	cmp	r2, r3
	beq	.L61
	ldr	r3, [fp, #-24]
	ldr	r3, [r3, #28]
	ldr	r2, [fp, #-20]
	cmp	r2, r3
	bne	.L62
.L61:
	ldr	r3, [fp, #-20]
	cmp	r3, #10
	bne	.L63
	ldr	r3, [fp, #-24]
	ldr	r3, [r3, #16]
	add	r2, r3, #1
	ldr	r3, [fp, #-24]
	str	r2, [r3, #16]
.L63:
	ldr	r3, [fp, #-24]
	ldr	r3, [r3, #8]
	cmp	r3, #0
	ble	.L64
	ldr	r3, [fp, #-24]
	ldr	r3, [r3, #32]
	cmp	r3, #10
	beq	.L65
	ldr	r3, [fp, #-24]
	ldr	r3, [r3, #28]
	cmp	r3, #10
	bne	.L64
.L65:
	ldr	r3, [fp, #-24]
	ldr	r2, [r3, #4]
	ldr	r3, [fp, #-24]
	ldr	r3, [r3, #8]
	sub	r3, r3, #1
	add	r3, r2, r3
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #13
	bne	.L64
	ldr	r3, [fp, #-24]
	ldr	r3, [r3, #8]
	sub	r2, r3, #1
	ldr	r3, [fp, #-24]
	str	r2, [r3, #8]
	ldr	r3, [fp, #-24]
	ldr	r3, [r3, #8]
	cmp	r3, #0
	bne	.L64
	ldr	r3, [fp, #-24]
	mov	r2, #0
	str	r2, [r3, #40]
.L64:
	ldr	r3, [fp, #-20]
	and	r3, r3, #255
	mov	r2, r3
	ldr	r3, [fp, #-24]
	str	r2, [r3, #24]
.L55:
	ldr	r3, [fp, #-24]
	ldr	r3, [r3, #4]
	cmp	r3, #0
	beq	.L66
	ldr	r3, [fp, #-24]
	ldr	r3, [r3, #4]
	ldr	r2, [fp, #-24]
	ldr	r2, [r2, #8]
	add	r3, r3, r2
	mov	r2, #0
	strb	r2, [r3]
.L66:
	ldr	r3, [fp, #-24]
	mov	r2, #1
	str	r2, [r3, #20]
	ldr	r3, [fp, #-24]
	ldr	r3, [r3, #4]
.L39:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L68:
	.align	2
.L67:
	.word	.LC8
	.word	.LC9
	.size	vsv_read_one_field, .-vsv_read_one_field
	.section	.rodata
	.align	2
.LC10:
	.ascii	"%s\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	vsv_xfer_error, %function
vsv_xfer_error:
	@ 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]
	str	r1, [fp, #-12]
	ldr	r3, .L70
	ldr	r3, [r3]
	ldr	r3, [r3, #232]
	ldr	r2, [fp, #-8]
	ldr	r2, [r2, #8]
	mov	r0, r2
	blx	r3
	ldr	r3, .L70
	ldr	r3, [r3]
	ldr	r3, [r3, #276]
	ldr	r2, [fp, #-12]
	add	r2, r2, #56
	mov	r1, r2
	ldr	r0, .L70+4
	blx	r3
	mov	r2, r0
	ldr	r3, [fp, #-8]
	str	r2, [r3, #8]
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L71:
	.align	2
.L70:
	.word	sqlite3_api
	.word	.LC10
	.size	vsv_xfer_error, .-vsv_xfer_error
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	vsvtabDisconnect, %function
vsvtabDisconnect:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	ldr	r3, [fp, #-16]
	str	r3, [fp, #-8]
	ldr	r3, .L74
	ldr	r3, [r3]
	ldr	r3, [r3, #232]
	ldr	r2, [fp, #-8]
	ldr	r2, [r2, #12]
	mov	r0, r2
	blx	r3
	ldr	r3, .L74
	ldr	r3, [r3]
	ldr	r3, [r3, #232]
	ldr	r2, [fp, #-8]
	ldr	r2, [r2, #16]
	mov	r0, r2
	blx	r3
	ldr	r3, .L74
	ldr	r3, [r3]
	ldr	r3, [r3, #232]
	ldr	r0, [fp, #-8]
	blx	r3
	mov	r3, #0
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L75:
	.align	2
.L74:
	.word	sqlite3_api
	.size	vsvtabDisconnect, .-vsvtabDisconnect
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	vsv_skip_whitespace, %function
vsv_skip_whitespace:
	@ 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]
	b	.L77
.L78:
	ldr	r3, [fp, #-8]
	add	r3, r3, #1
	str	r3, [fp, #-8]
.L77:
	bl	__ctype_b_loc
	mov	r3, r0
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	ldrb	r3, [r3]	@ zero_extendqisi2
	lsl	r3, r3, #1
	add	r3, r2, r3
	ldrh	r3, [r3]
	and	r3, r3, #8192
	cmp	r3, #0
	bne	.L78
	ldr	r3, [fp, #-8]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	vsv_skip_whitespace, .-vsv_skip_whitespace
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	vsv_trim_whitespace, %function
vsv_trim_whitespace:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	ldr	r0, [fp, #-16]
	bl	strlen
	str	r0, [fp, #-8]
	b	.L81
.L83:
	ldr	r3, [fp, #-8]
	sub	r3, r3, #1
	str	r3, [fp, #-8]
.L81:
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	beq	.L82
	bl	__ctype_b_loc
	mov	r3, r0
	ldr	r2, [r3]
	ldr	r1, [fp, #-16]
	ldr	r3, [fp, #-8]
	add	r3, r1, r3
	ldrb	r3, [r3]	@ zero_extendqisi2
	lsl	r3, r3, #1
	add	r3, r2, r3
	ldrh	r3, [r3]
	and	r3, r3, #8192
	cmp	r3, #0
	bne	.L83
.L82:
	ldr	r2, [fp, #-16]
	ldr	r3, [fp, #-8]
	add	r3, r2, r3
	mov	r2, #0
	strb	r2, [r3]
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	vsv_trim_whitespace, .-vsv_trim_whitespace
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	vsv_dequote, %function
vsv_dequote:
	@ 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, #-24]
	ldr	r3, [fp, #-24]
	ldrb	r3, [r3]
	strb	r3, [fp, #-17]
	ldrb	r3, [fp, #-17]	@ zero_extendqisi2
	cmp	r3, #39
	beq	.L85
	ldrb	r3, [fp, #-17]	@ zero_extendqisi2
	cmp	r3, #34
	bne	.L92
.L85:
	ldr	r0, [fp, #-24]
	bl	strlen
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmp	r3, #1
	bls	.L93
	ldr	r3, [fp, #-8]
	sub	r3, r3, #1
	ldr	r2, [fp, #-24]
	add	r3, r2, r3
	ldrb	r2, [r3]	@ zero_extendqisi2
	ldr	r3, [fp, #-24]
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r2, r3
	bne	.L93
	mov	r3, #1
	str	r3, [fp, #-12]
	mov	r3, #0
	str	r3, [fp, #-16]
	b	.L89
.L91:
	ldr	r2, [fp, #-24]
	ldr	r3, [fp, #-12]
	add	r3, r2, r3
	ldrb	r3, [r3]	@ zero_extendqisi2
	ldrb	r2, [fp, #-17]	@ zero_extendqisi2
	cmp	r2, r3
	bne	.L90
	ldr	r3, [fp, #-12]
	add	r3, r3, #1
	ldr	r2, [fp, #-24]
	add	r3, r2, r3
	ldrb	r3, [r3]	@ zero_extendqisi2
	ldrb	r2, [fp, #-17]	@ zero_extendqisi2
	cmp	r2, r3
	bne	.L90
	ldr	r3, [fp, #-12]
	add	r3, r3, #1
	str	r3, [fp, #-12]
.L90:
	ldr	r2, [fp, #-24]
	ldr	r3, [fp, #-12]
	add	r2, r2, r3
	ldr	r3, [fp, #-16]
	add	r1, r3, #1
	str	r1, [fp, #-16]
	mov	r1, r3
	ldr	r3, [fp, #-24]
	add	r3, r3, r1
	ldrb	r2, [r2]	@ zero_extendqisi2
	strb	r2, [r3]
	ldr	r3, [fp, #-12]
	add	r3, r3, #1
	str	r3, [fp, #-12]
.L89:
	ldr	r3, [fp, #-8]
	sub	r3, r3, #1
	ldr	r2, [fp, #-12]
	cmp	r2, r3
	bcc	.L91
	ldr	r3, [fp, #-16]
	ldr	r2, [fp, #-24]
	add	r3, r2, r3
	mov	r2, #0
	strb	r2, [r3]
	b	.L84
.L92:
	nop
	b	.L84
.L93:
	nop
.L84:
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	vsv_dequote, .-vsv_dequote
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	vsv_parameter, %function
vsv_parameter:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-8]
	str	r1, [fp, #-12]
	str	r2, [fp, #-16]
	ldr	r0, [fp, #-16]
	bl	vsv_skip_whitespace
	str	r0, [fp, #-16]
	ldr	r3, [fp, #-12]
	mov	r2, r3
	ldr	r1, [fp, #-16]
	ldr	r0, [fp, #-8]
	bl	strncmp
	mov	r3, r0
	cmp	r3, #0
	beq	.L95
	mov	r3, #0
	b	.L96
.L95:
	ldr	r3, [fp, #-12]
	ldr	r2, [fp, #-16]
	add	r3, r2, r3
	mov	r0, r3
	bl	vsv_skip_whitespace
	str	r0, [fp, #-16]
	ldr	r3, [fp, #-16]
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #61
	beq	.L97
	mov	r3, #0
	b	.L96
.L97:
	ldr	r3, [fp, #-16]
	add	r3, r3, #1
	mov	r0, r3
	bl	vsv_skip_whitespace
	mov	r3, r0
.L96:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	vsv_parameter, .-vsv_parameter
	.section	.rodata
	.align	2
.LC11:
	.ascii	"more than one '%s' parameter\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	vsv_string_parameter, %function
vsv_string_parameter:
	@ 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]
	str	r3, [fp, #-28]
	ldr	r0, [fp, #-20]
	bl	strlen
	mov	r3, r0
	ldr	r2, [fp, #-24]
	mov	r1, r3
	ldr	r0, [fp, #-20]
	bl	vsv_parameter
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	bne	.L99
	mov	r3, #0
	b	.L100
.L99:
	ldr	r3, [fp, #-16]
	mov	r2, #0
	strb	r2, [r3, #56]
	ldr	r3, [fp, #-28]
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L101
	ldr	r2, [fp, #-20]
	ldr	r1, .L103
	ldr	r0, [fp, #-16]
	bl	vsv_errmsg
	mov	r3, #1
	b	.L100
.L101:
	ldr	r3, .L103+4
	ldr	r3, [r3]
	ldr	r3, [r3, #276]
	ldr	r1, [fp, #-8]
	ldr	r0, .L103+8
	blx	r3
	mov	r2, r0
	ldr	r3, [fp, #-28]
	str	r2, [r3]
	ldr	r3, [fp, #-28]
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L102
	ldr	r1, .L103+12
	ldr	r0, [fp, #-16]
	bl	vsv_errmsg
	mov	r3, #1
	b	.L100
.L102:
	ldr	r3, [fp, #-28]
	ldr	r3, [r3]
	mov	r0, r3
	bl	vsv_trim_whitespace
	ldr	r3, [fp, #-28]
	ldr	r3, [r3]
	mov	r0, r3
	bl	vsv_dequote
	mov	r3, #1
.L100:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L104:
	.align	2
.L103:
	.word	.LC11
	.word	sqlite3_api
	.word	.LC10
	.word	.LC1
	.size	vsv_string_parameter, .-vsv_string_parameter
	.section	.rodata
	.align	2
.LC12:
	.ascii	"yes\000"
	.align	2
.LC13:
	.ascii	"on\000"
	.align	2
.LC14:
	.ascii	"true\000"
	.align	2
.LC15:
	.ascii	"no\000"
	.align	2
.LC16:
	.ascii	"off\000"
	.align	2
.LC17:
	.ascii	"false\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	vsv_boolean, %function
vsv_boolean:
	@ 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]
	ldr	r3, .L111
	ldr	r3, [r3]
	ldr	r3, [r3, #744]
	ldr	r1, [fp, #-8]
	ldr	r0, .L111+4
	blx	r3
	mov	r3, r0
	cmp	r3, #0
	beq	.L106
	ldr	r3, .L111
	ldr	r3, [r3]
	ldr	r3, [r3, #744]
	ldr	r1, [fp, #-8]
	ldr	r0, .L111+8
	blx	r3
	mov	r3, r0
	cmp	r3, #0
	beq	.L106
	ldr	r3, .L111
	ldr	r3, [r3]
	ldr	r3, [r3, #744]
	ldr	r1, [fp, #-8]
	ldr	r0, .L111+12
	blx	r3
	mov	r3, r0
	cmp	r3, #0
	beq	.L106
	ldr	r3, [fp, #-8]
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #49
	bne	.L107
	ldr	r3, [fp, #-8]
	add	r3, r3, #1
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L107
.L106:
	mov	r3, #1
	b	.L108
.L107:
	ldr	r3, .L111
	ldr	r3, [r3]
	ldr	r3, [r3, #744]
	ldr	r1, [fp, #-8]
	ldr	r0, .L111+16
	blx	r3
	mov	r3, r0
	cmp	r3, #0
	beq	.L109
	ldr	r3, .L111
	ldr	r3, [r3]
	ldr	r3, [r3, #744]
	ldr	r1, [fp, #-8]
	ldr	r0, .L111+20
	blx	r3
	mov	r3, r0
	cmp	r3, #0
	beq	.L109
	ldr	r3, .L111
	ldr	r3, [r3]
	ldr	r3, [r3, #744]
	ldr	r1, [fp, #-8]
	ldr	r0, .L111+24
	blx	r3
	mov	r3, r0
	cmp	r3, #0
	beq	.L109
	ldr	r3, [fp, #-8]
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #48
	bne	.L110
	ldr	r3, [fp, #-8]
	add	r3, r3, #1
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L110
.L109:
	mov	r3, #0
	b	.L108
.L110:
	mvn	r3, #0
.L108:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L112:
	.align	2
.L111:
	.word	sqlite3_api
	.word	.LC12
	.word	.LC13
	.word	.LC14
	.word	.LC15
	.word	.LC16
	.word	.LC17
	.size	vsv_boolean, .-vsv_boolean
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	vsv_boolean_parameter, %function
vsv_boolean_parameter:
	@ 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]
	str	r3, [fp, #-28]
	ldr	r0, [fp, #-24]
	bl	vsv_skip_whitespace
	str	r0, [fp, #-24]
	ldr	r3, [fp, #-20]
	mov	r2, r3
	ldr	r1, [fp, #-24]
	ldr	r0, [fp, #-16]
	bl	strncmp
	mov	r3, r0
	cmp	r3, #0
	beq	.L114
	mov	r3, #0
	b	.L115
.L114:
	ldr	r3, [fp, #-20]
	ldr	r2, [fp, #-24]
	add	r3, r2, r3
	mov	r0, r3
	bl	vsv_skip_whitespace
	str	r0, [fp, #-24]
	ldr	r3, [fp, #-24]
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L116
	ldr	r3, [fp, #-28]
	mov	r2, #1
	str	r2, [r3]
	mov	r3, #1
	b	.L115
.L116:
	ldr	r3, [fp, #-24]
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #61
	beq	.L117
	mov	r3, #0
	b	.L115
.L117:
	ldr	r3, [fp, #-24]
	add	r3, r3, #1
	mov	r0, r3
	bl	vsv_skip_whitespace
	str	r0, [fp, #-24]
	ldr	r0, [fp, #-24]
	bl	vsv_boolean
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	blt	.L118
	ldr	r3, [fp, #-28]
	ldr	r2, [fp, #-8]
	str	r2, [r3]
	mov	r3, #1
	b	.L115
.L118:
	mov	r3, #0
.L115:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	vsv_boolean_parameter, .-vsv_boolean_parameter
	.section	.rodata
	.align	2
.LC18:
	.ascii	"\\x\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	vsv_parse_sep_char, %function
vsv_parse_sep_char:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-8]
	str	r1, [fp, #-12]
	str	r2, [fp, #-16]
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	bne	.L120
	ldr	r3, [fp, #-16]
	ldr	r2, [fp, #-12]
	str	r2, [r3]
	mov	r3, #0
	b	.L121
.L120:
	ldr	r0, [fp, #-8]
	bl	strlen
	mov	r3, r0
	cmp	r3, #4
	ldrls	pc, [pc, r3, asl #2]
	b	.L122
.L124:
	.word	.L127
	.word	.L126
	.word	.L125
	.word	.L122
	.word	.L123
.L127:
	ldr	r3, [fp, #-16]
	ldr	r2, [fp, #-12]
	str	r2, [r3]
	mov	r3, #0
	b	.L121
.L126:
	ldr	r3, [fp, #-8]
	ldrb	r3, [r3]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	mov	r3, #0
	b	.L121
.L125:
	ldr	r3, [fp, #-8]
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #92
	beq	.L128
	mov	r3, #1
	b	.L121
.L128:
	ldr	r3, [fp, #-8]
	add	r3, r3, #1
	ldrb	r3, [r3]	@ zero_extendqisi2
	sub	r3, r3, #102
	cmp	r3, #16
	ldrls	pc, [pc, r3, asl #2]
	b	.L129
.L131:
	.word	.L134
	.word	.L129
	.word	.L129
	.word	.L129
	.word	.L129
	.word	.L129
	.word	.L129
	.word	.L129
	.word	.L133
	.word	.L129
	.word	.L129
	.word	.L129
	.word	.L129
	.word	.L129
	.word	.L132
	.word	.L129
	.word	.L130
.L134:
	ldr	r3, [fp, #-16]
	mov	r2, #12
	str	r2, [r3]
	mov	r3, #0
	b	.L121
.L133:
	ldr	r3, [fp, #-16]
	mov	r2, #10
	str	r2, [r3]
	mov	r3, #0
	b	.L121
.L132:
	ldr	r3, [fp, #-16]
	mov	r2, #9
	str	r2, [r3]
	mov	r3, #0
	b	.L121
.L130:
	ldr	r3, [fp, #-16]
	mov	r2, #11
	str	r2, [r3]
	mov	r3, #0
	b	.L121
.L129:
	mov	r3, #1
	b	.L121
.L123:
	ldr	r3, .L142
	ldr	r3, [r3]
	ldr	r3, [r3, #684]
	mov	r2, #2
	ldr	r1, .L142+4
	ldr	r0, [fp, #-8]
	blx	r3
	mov	r3, r0
	cmp	r3, #0
	beq	.L135
	mov	r3, #1
	b	.L121
.L135:
	bl	__ctype_b_loc
	mov	r3, r0
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	add	r3, r3, #2
	ldrb	r3, [r3]	@ zero_extendqisi2
	lsl	r3, r3, #1
	add	r3, r2, r3
	ldrh	r3, [r3]
	and	r3, r3, #4096
	cmp	r3, #0
	beq	.L136
	bl	__ctype_b_loc
	mov	r3, r0
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	add	r3, r3, #3
	ldrb	r3, [r3]	@ zero_extendqisi2
	lsl	r3, r3, #1
	add	r3, r2, r3
	ldrh	r3, [r3]
	and	r3, r3, #4096
	cmp	r3, #0
	bne	.L137
.L136:
	mov	r3, #1
	b	.L121
.L137:
	ldr	r3, [fp, #-8]
	add	r3, r3, #2
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #57
	bls	.L138
	ldr	r3, [fp, #-8]
	add	r3, r3, #2
	ldrb	r3, [r3]	@ zero_extendqisi2
	and	r3, r3, #15
	add	r3, r3, #9
	lsl	r2, r3, #4
	b	.L139
.L138:
	ldr	r3, [fp, #-8]
	add	r3, r3, #2
	ldrb	r3, [r3]	@ zero_extendqisi2
	lsl	r3, r3, #4
	and	r2, r3, #255
.L139:
	ldr	r3, [fp, #-8]
	add	r3, r3, #3
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #57
	bls	.L140
	ldr	r3, [fp, #-8]
	add	r3, r3, #3
	ldrb	r3, [r3]	@ zero_extendqisi2
	and	r3, r3, #15
	add	r3, r3, #9
	b	.L141
.L140:
	ldr	r3, [fp, #-8]
	add	r3, r3, #3
	ldrb	r3, [r3]	@ zero_extendqisi2
	and	r3, r3, #15
.L141:
	add	r2, r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	mov	r3, #0
	b	.L121
.L122:
	mov	r3, #0
.L121:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L143:
	.align	2
.L142:
	.word	sqlite3_api
	.word	.LC18
	.size	vsv_parse_sep_char, .-vsv_parse_sep_char
	.section	.rodata
	.align	2
.LC19:
	.ascii	"header\000"
	.align	2
.LC20:
	.ascii	"more than one 'header' parameter\000"
	.align	2
.LC21:
	.ascii	"validatetext\000"
	.align	2
.LC22:
	.ascii	"more than one 'validatetext' parameter\000"
	.align	2
.LC23:
	.ascii	"nulls\000"
	.align	2
.LC24:
	.ascii	"more than one 'nulls' parameter\000"
	.align	2
.LC25:
	.ascii	"columns\000"
	.align	2
.LC26:
	.ascii	"more than one 'columns' parameter\000"
	.align	2
.LC27:
	.ascii	"column= value must be positive\000"
	.align	2
.LC28:
	.ascii	"skip\000"
	.align	2
.LC29:
	.ascii	"more than one 'skip' parameter\000"
	.align	2
.LC30:
	.ascii	"skip= value must be positive\000"
	.align	2
.LC31:
	.ascii	"affinity\000"
	.align	2
.LC32:
	.ascii	"more than one 'affinity' parameter\000"
	.align	2
.LC33:
	.ascii	"none\000"
	.align	2
.LC34:
	.ascii	"blob\000"
	.align	2
.LC35:
	.ascii	"text\000"
	.align	2
.LC36:
	.ascii	"integer\000"
	.align	2
.LC37:
	.ascii	"real\000"
	.align	2
.LC38:
	.ascii	"numeric\000"
	.align	2
.LC39:
	.ascii	"unknown affinity: '%s'\000"
	.align	2
.LC40:
	.ascii	"bad parameter: '%s'\000"
	.align	2
.LC41:
	.ascii	"must specify either filename= or data= but not both"
	.ascii	"\000"
	.align	2
.LC42:
	.ascii	"cannot parse fsep: '%s'\000"
	.align	2
.LC43:
	.ascii	"cannot parse rsep: '%s'\000"
	.align	2
.LC44:
	.ascii	"\000"
	.align	2
.LC45:
	.ascii	"CREATE TABLE x(\000"
	.align	2
.LC46:
	.ascii	"%sc%d\000"
	.align	2
.LC47:
	.ascii	",\000"
	.align	2
.LC48:
	.ascii	"%s\"%w\"\000"
	.align	2
.LC49:
	.ascii	")\000"
	.align	2
.LC50:
	.ascii	"premature end of file during skip\000"
	.align	2
.LC51:
	.ascii	"bad schema: '%s' - %s\000"
	.align	2
.LC52:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	vsvtabConnect, %function
vsvtabConnect:
	@ args = 8, pretend = 0, frame = 376
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #380
	str	r0, [fp, #-368]
	str	r1, [fp, #-372]
	str	r2, [fp, #-376]
	str	r3, [fp, #-380]
	ldr	r3, [fp, #4]
	str	r3, [fp, #-384]
	ldr	r3, [fp, #8]
	str	r3, [fp, #-388]
	ldr	r3, .L223
	ldr	r3, [r3]
	str	r3, [fp, #-16]
	mov	r3,#0
	mov	r3, #0
	str	r3, [fp, #-360]
	mvn	r3, #0
	str	r3, [fp, #-356]
	mvn	r3, #0
	str	r3, [fp, #-352]
	mvn	r3, #0
	str	r3, [fp, #-348]
	mov	r3, #0
	str	r3, [fp, #-344]
	mvn	r3, #98
	str	r3, [fp, #-332]
	mvn	r3, #0
	str	r3, [fp, #-328]
	mvn	r3, #0
	str	r3, [fp, #-324]
	sub	r3, fp, #272
	mov	r2, #256
	mov	r1, #0
	mov	r0, r3
	bl	memset
	sub	r3, fp, #292
	mov	r2, #20
	mov	r1, #0
	mov	r0, r3
	bl	memset
	mov	r3, #3
	str	r3, [fp, #-340]
	b	.L145
.L171:
	ldr	r3, [fp, #-340]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-380]
	add	r3, r2, r3
	ldr	r3, [r3]
	str	r3, [fp, #-300]
	mov	r3, #0
	str	r3, [fp, #-336]
	b	.L146
.L149:
	ldr	r2, .L223+4
	ldr	r3, [fp, #-336]
	ldr	r1, [r2, r3, lsl #2]
	sub	r2, fp, #292
	ldr	r3, [fp, #-336]
	lsl	r3, r3, #2
	add	r3, r2, r3
	sub	r0, fp, #272
	ldr	r2, [fp, #-300]
	bl	vsv_string_parameter
	mov	r3, r0
	cmp	r3, #0
	bne	.L218
	ldr	r3, [fp, #-336]
	add	r3, r3, #1
	str	r3, [fp, #-336]
.L146:
	ldr	r3, [fp, #-336]
	cmp	r3, #4
	bls	.L149
	b	.L148
.L218:
	nop
.L148:
	ldr	r3, [fp, #-336]
	cmp	r3, #4
	bhi	.L150
	ldrb	r3, [fp, #-216]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L151
	b	.L152
.L150:
	sub	r3, fp, #364
	ldr	r2, [fp, #-300]
	mov	r1, #6
	ldr	r0, .L223+8
	bl	vsv_boolean_parameter
	mov	r3, r0
	cmp	r3, #0
	beq	.L153
	ldr	r3, [fp, #-352]
	cmp	r3, #0
	blt	.L154
	sub	r3, fp, #272
	ldr	r1, .L223+12
	mov	r0, r3
	bl	vsv_errmsg
	b	.L152
.L154:
	ldr	r3, [fp, #-364]
	str	r3, [fp, #-352]
	b	.L151
.L153:
	sub	r3, fp, #364
	ldr	r2, [fp, #-300]
	mov	r1, #12
	ldr	r0, .L223+16
	bl	vsv_boolean_parameter
	mov	r3, r0
	cmp	r3, #0
	beq	.L155
	ldr	r3, [fp, #-348]
	cmp	r3, #0
	blt	.L156
	sub	r3, fp, #272
	ldr	r1, .L223+20
	mov	r0, r3
	bl	vsv_errmsg
	b	.L152
.L156:
	ldr	r3, [fp, #-364]
	str	r3, [fp, #-348]
	b	.L151
.L155:
	sub	r3, fp, #364
	ldr	r2, [fp, #-300]
	mov	r1, #5
	ldr	r0, .L223+24
	bl	vsv_boolean_parameter
	mov	r3, r0
	cmp	r3, #0
	beq	.L157
	ldr	r3, [fp, #-324]
	cmp	r3, #0
	blt	.L158
	sub	r3, fp, #272
	ldr	r1, .L223+28
	mov	r0, r3
	bl	vsv_errmsg
	b	.L152
.L158:
	ldr	r3, [fp, #-364]
	str	r3, [fp, #-324]
	b	.L151
.L157:
	ldr	r2, [fp, #-300]
	mov	r1, #7
	ldr	r0, .L223+32
	bl	vsv_parameter
	str	r0, [fp, #-296]
	ldr	r3, [fp, #-296]
	cmp	r3, #0
	beq	.L159
	ldr	r3, [fp, #-332]
	cmp	r3, #0
	ble	.L160
	sub	r3, fp, #272
	ldr	r1, .L223+36
	mov	r0, r3
	bl	vsv_errmsg
	b	.L152
.L160:
	ldr	r0, [fp, #-296]
	bl	atoi
	str	r0, [fp, #-332]
	ldr	r3, [fp, #-332]
	cmp	r3, #0
	bgt	.L151
	sub	r3, fp, #272
	ldr	r1, .L223+40
	mov	r0, r3
	bl	vsv_errmsg
	b	.L152
.L159:
	ldr	r2, [fp, #-300]
	mov	r1, #4
	ldr	r0, .L223+44
	bl	vsv_parameter
	str	r0, [fp, #-296]
	ldr	r3, [fp, #-296]
	cmp	r3, #0
	beq	.L161
	ldr	r3, [fp, #-328]
	cmp	r3, #0
	ble	.L162
	sub	r3, fp, #272
	ldr	r1, .L223+48
	mov	r0, r3
	bl	vsv_errmsg
	b	.L152
.L162:
	ldr	r0, [fp, #-296]
	bl	atoi
	str	r0, [fp, #-328]
	ldr	r3, [fp, #-328]
	cmp	r3, #0
	bgt	.L151
	sub	r3, fp, #272
	ldr	r1, .L223+52
	mov	r0, r3
	bl	vsv_errmsg
	b	.L152
.L161:
	ldr	r2, [fp, #-300]
	mov	r1, #8
	ldr	r0, .L223+56
	bl	vsv_parameter
	str	r0, [fp, #-296]
	ldr	r3, [fp, #-296]
	cmp	r3, #0
	beq	.L163
	ldr	r3, [fp, #-356]
	cmp	r3, #0
	blt	.L164
	sub	r3, fp, #272
	ldr	r1, .L223+60
	mov	r0, r3
	bl	vsv_errmsg
	b	.L152
.L164:
	ldr	r3, .L223+64
	ldr	r3, [r3]
	ldr	r3, [r3, #684]
	mov	r2, #4
	ldr	r1, .L223+68
	ldr	r0, [fp, #-296]
	blx	r3
	mov	r3, r0
	cmp	r3, #0
	bne	.L165
	mov	r3, #0
	str	r3, [fp, #-356]
	b	.L151
.L165:
	ldr	r3, .L223+64
	ldr	r3, [r3]
	ldr	r3, [r3, #684]
	mov	r2, #4
	ldr	r1, .L223+72
	ldr	r0, [fp, #-296]
	blx	r3
	mov	r3, r0
	cmp	r3, #0
	bne	.L166
	mov	r3, #1
	str	r3, [fp, #-356]
	b	.L151
.L166:
	ldr	r3, .L223+64
	ldr	r3, [r3]
	ldr	r3, [r3, #684]
	mov	r2, #4
	ldr	r1, .L223+76
	ldr	r0, [fp, #-296]
	blx	r3
	mov	r3, r0
	cmp	r3, #0
	bne	.L167
	mov	r3, #2
	str	r3, [fp, #-356]
	b	.L151
.L167:
	ldr	r3, .L223+64
	ldr	r3, [r3]
	ldr	r3, [r3, #684]
	mov	r2, #7
	ldr	r1, .L223+80
	ldr	r0, [fp, #-296]
	blx	r3
	mov	r3, r0
	cmp	r3, #0
	bne	.L168
	mov	r3, #3
	str	r3, [fp, #-356]
	b	.L151
.L168:
	ldr	r3, .L223+64
	ldr	r3, [r3]
	ldr	r3, [r3, #684]
	mov	r2, #4
	ldr	r1, .L223+84
	ldr	r0, [fp, #-296]
	blx	r3
	mov	r3, r0
	cmp	r3, #0
	bne	.L169
	mov	r3, #4
	str	r3, [fp, #-356]
	b	.L151
.L169:
	ldr	r3, .L223+64
	ldr	r3, [r3]
	ldr	r3, [r3, #684]
	mov	r2, #7
	ldr	r1, .L223+88
	ldr	r0, [fp, #-296]
	blx	r3
	mov	r3, r0
	cmp	r3, #0
	bne	.L170
	mov	r3, #5
	str	r3, [fp, #-356]
	b	.L151
.L170:
	sub	r3, fp, #272
	ldr	r2, [fp, #-296]
	ldr	r1, .L223+92
	mov	r0, r3
	bl	vsv_errmsg
	b	.L152
.L163:
	sub	r3, fp, #272
	ldr	r2, [fp, #-300]
	ldr	r1, .L223+96
	mov	r0, r3
	bl	vsv_errmsg
	b	.L152
.L151:
	ldr	r3, [fp, #-340]
	add	r3, r3, #1
	str	r3, [fp, #-340]
.L145:
	ldr	r2, [fp, #-340]
	ldr	r3, [fp, #-376]
	cmp	r2, r3
	blt	.L171
	ldr	r3, [fp, #-356]
	cmn	r3, #1
	bne	.L172
	mov	r3, #0
	str	r3, [fp, #-356]
.L172:
	ldr	r3, [fp, #-324]
	cmn	r3, #1
	bne	.L173
	mov	r3, #0
	str	r3, [fp, #-324]
.L173:
	ldr	r3, [fp, #-348]
	cmn	r3, #1
	bne	.L174
	mov	r3, #0
	str	r3, [fp, #-348]
.L174:
	ldr	r3, [fp, #-292]
	cmp	r3, #0
	movne	r3, #1
	moveq	r3, #0
	and	r2, r3, #255
	ldr	r3, [fp, #-288]
	cmp	r3, #0
	moveq	r3, #1
	movne	r3, #0
	and	r3, r3, #255
	eor	r3, r3, r2
	and	r3, r3, #255
	cmp	r3, #0
	beq	.L175
	sub	r3, fp, #272
	ldr	r1, .L223+100
	mov	r0, r3
	bl	vsv_errmsg
	b	.L152
.L175:
	ldr	r0, [fp, #-280]
	sub	r3, fp, #272
	add	r3, r3, #28
	mov	r2, r3
	mov	r1, #44
	bl	vsv_parse_sep_char
	mov	r3, r0
	cmp	r3, #0
	beq	.L176
	ldr	r2, [fp, #-280]
	sub	r3, fp, #272
	ldr	r1, .L223+104
	mov	r0, r3
	bl	vsv_errmsg
	b	.L152
.L176:
	ldr	r0, [fp, #-276]
	sub	r3, fp, #272
	add	r3, r3, #32
	mov	r2, r3
	mov	r1, #10
	bl	vsv_parse_sep_char
	mov	r3, r0
	cmp	r3, #0
	beq	.L177
	ldr	r2, [fp, #-276]
	sub	r3, fp, #272
	ldr	r1, .L223+108
	mov	r0, r3
	bl	vsv_errmsg
	b	.L152
.L177:
	ldr	r3, [fp, #-332]
	cmp	r3, #0
	ble	.L178
	ldr	r3, [fp, #-352]
	cmp	r3, #1
	bne	.L179
.L178:
	ldr	r1, [fp, #-292]
	ldr	r2, [fp, #-288]
	sub	r3, fp, #272
	mov	r0, r3
	bl	vsv_reader_open
	mov	r3, r0
	cmp	r3, #0
	bne	.L219
.L179:
	ldr	r3, .L223+64
	ldr	r3, [r3]
	ldr	r3, [r3, #272]
	mov	r0, #52
	blx	r3
	str	r0, [fp, #-360]
	ldr	r3, [fp, #-384]
	ldr	r2, [fp, #-360]
	str	r2, [r3]
	ldr	r3, [fp, #-360]
	cmp	r3, #0
	beq	.L220
	mov	r2, #52
	mov	r1, #0
	ldr	r0, [fp, #-360]
	bl	memset
	ldr	r2, [fp, #-244]
	ldr	r3, [fp, #-360]
	str	r2, [r3, #28]
	ldr	r2, [fp, #-240]
	ldr	r3, [fp, #-360]
	str	r2, [r3, #32]
	ldr	r3, [fp, #-360]
	ldr	r2, [fp, #-356]
	str	r2, [r3, #36]
	ldr	r3, [fp, #-360]
	ldr	r2, [fp, #-348]
	str	r2, [r3, #44]
	ldr	r3, [fp, #-360]
	ldr	r2, [fp, #-324]
	str	r2, [r3, #40]
	ldr	r3, [fp, #-284]
	cmp	r3, #0
	bne	.L182
	ldr	r3, .L223+64
	ldr	r3, [r3]
	ldr	r3, [r3, #912]
	mov	r0, #0
	blx	r3
	str	r0, [fp, #-308]
	ldr	r3, .L223+112
	str	r3, [fp, #-320]
	mov	r3, #0
	str	r3, [fp, #-316]
	ldr	r3, .L223+64
	ldr	r3, [r3]
	ldr	r3, [r3, #920]
	ldr	r1, .L223+116
	ldr	r0, [fp, #-308]
	blx	r3
	ldr	r3, [fp, #-332]
	cmp	r3, #0
	bge	.L183
	ldr	r3, [fp, #-352]
	cmp	r3, #0
	bgt	.L183
	mov	r3, #0
	str	r3, [fp, #-332]
.L184:
	sub	r3, fp, #272
	mov	r0, r3
	bl	vsv_read_one_field
	ldr	r3, [fp, #-332]
	add	r3, r3, #1
	str	r3, [fp, #-332]
	ldr	r2, [fp, #-248]
	ldr	r3, [fp, #-244]
	cmp	r2, r3
	beq	.L184
.L183:
	ldr	r3, [fp, #-332]
	cmp	r3, #0
	ble	.L192
	ldr	r3, [fp, #-352]
	cmp	r3, #0
	bgt	.L192
	mov	r3, #0
	str	r3, [fp, #-316]
	b	.L186
.L187:
	ldr	r3, .L223+64
	ldr	r3, [r3]
	ldr	r4, [r3, #920]
	ldr	r3, [fp, #-316]
	ldr	r2, [fp, #-320]
	ldr	r1, .L223+120
	ldr	r0, [fp, #-308]
	blx	r4
	ldr	r3, .L223+124
	str	r3, [fp, #-320]
	ldr	r3, [fp, #-316]
	add	r3, r3, #1
	str	r3, [fp, #-316]
.L186:
	ldr	r2, [fp, #-316]
	ldr	r3, [fp, #-332]
	cmp	r2, r3
	blt	.L187
	b	.L188
.L192:
	sub	r3, fp, #272
	mov	r0, r3
	bl	vsv_read_one_field
	str	r0, [fp, #-304]
	ldr	r3, [fp, #-332]
	cmp	r3, #0
	ble	.L189
	ldr	r2, [fp, #-316]
	ldr	r3, [fp, #-332]
	cmp	r2, r3
	blt	.L190
.L189:
	ldr	r3, [fp, #-332]
	cmp	r3, #0
	bge	.L191
	ldr	r3, [fp, #-352]
	cmp	r3, #0
	beq	.L191
.L190:
	ldr	r3, .L223+64
	ldr	r3, [r3]
	ldr	r4, [r3, #920]
	ldr	r3, [fp, #-304]
	ldr	r2, [fp, #-320]
	ldr	r1, .L223+128
	ldr	r0, [fp, #-308]
	blx	r4
	ldr	r3, .L223+124
	str	r3, [fp, #-320]
	ldr	r3, [fp, #-316]
	add	r3, r3, #1
	str	r3, [fp, #-316]
.L191:
	ldr	r2, [fp, #-248]
	ldr	r3, [fp, #-244]
	cmp	r2, r3
	beq	.L192
	ldr	r3, [fp, #-332]
	cmp	r3, #0
	bge	.L194
	ldr	r3, [fp, #-316]
	str	r3, [fp, #-332]
	b	.L188
.L195:
	ldr	r3, .L223+64
	ldr	r3, [r3]
	ldr	r4, [r3, #920]
	ldr	r3, [fp, #-316]
	add	r3, r3, #1
	str	r3, [fp, #-316]
	ldr	r3, [fp, #-316]
	ldr	r2, [fp, #-320]
	ldr	r1, .L223+120
	ldr	r0, [fp, #-308]
	blx	r4
	ldr	r3, .L223+124
	str	r3, [fp, #-320]
.L194:
	ldr	r2, [fp, #-316]
	ldr	r3, [fp, #-332]
	cmp	r2, r3
	blt	.L195
.L188:
	ldr	r3, .L223+64
	ldr	r3, [r3]
	ldr	r3, [r3, #920]
	ldr	r1, .L223+132
	ldr	r0, [fp, #-308]
	blx	r3
	ldr	r3, .L223+64
	ldr	r3, [r3]
	ldr	r3, [r3, #916]
	ldr	r0, [fp, #-308]
	blx	r3
	mov	r3, r0
	str	r3, [fp, #-284]
	ldr	r3, [fp, #-284]
	cmp	r3, #0
	bne	.L196
	b	.L181
.L182:
	ldr	r3, [fp, #-332]
	cmp	r3, #0
	bge	.L197
	mov	r3, #0
	str	r3, [fp, #-332]
.L198:
	sub	r3, fp, #272
	mov	r0, r3
	bl	vsv_read_one_field
	ldr	r3, [fp, #-332]
	add	r3, r3, #1
	str	r3, [fp, #-332]
	ldr	r2, [fp, #-248]
	ldr	r3, [fp, #-244]
	cmp	r2, r3
	beq	.L198
	b	.L196
.L197:
	ldr	r3, [fp, #-328]
	cmp	r3, #0
	bgt	.L196
	ldr	r3, [fp, #-352]
	cmp	r3, #1
	bne	.L196
.L199:
	sub	r3, fp, #272
	mov	r0, r3
	bl	vsv_read_one_field
	ldr	r2, [fp, #-248]
	ldr	r3, [fp, #-244]
	cmp	r2, r3
	beq	.L199
.L196:
	ldr	r3, [fp, #-360]
	ldr	r2, [fp, #-332]
	str	r2, [r3, #24]
	ldr	r3, [fp, #-328]
	cmp	r3, #0
	ble	.L200
	ldr	r3, [fp, #-352]
	cmp	r3, #1
	moveq	r3, #1
	movne	r3, #0
	and	r3, r3, #255
	mov	r2, r3
	ldr	r3, [fp, #-328]
	add	r3, r3, r2
	str	r3, [fp, #-312]
	sub	r3, fp, #272
	mov	r0, r3
	bl	vsv_reader_reset
	ldr	r1, [fp, #-292]
	ldr	r2, [fp, #-288]
	sub	r3, fp, #272
	mov	r0, r3
	bl	vsv_reader_open
	mov	r3, r0
	cmp	r3, #0
	bne	.L221
.L201:
	sub	r3, fp, #272
	mov	r0, r3
	bl	vsv_read_one_field
	mov	r3, r0
	cmp	r3, #0
	beq	.L222
	ldr	r2, [fp, #-248]
	ldr	r3, [fp, #-244]
	cmp	r2, r3
	beq	.L201
	ldr	r3, [fp, #-312]
	sub	r3, r3, #1
	str	r3, [fp, #-312]
	ldr	r3, [fp, #-312]
	cmp	r3, #0
	ble	.L203
	ldr	r2, [fp, #-248]
	ldr	r3, [fp, #-240]
	cmp	r2, r3
	beq	.L201
.L203:
	ldr	r3, [fp, #-312]
	cmp	r3, #0
	ble	.L200
	sub	r3, fp, #272
	ldr	r1, .L223+136
	mov	r0, r3
	bl	vsv_errmsg
	b	.L152
.L200:
	ldr	r2, [fp, #-292]
	ldr	r3, [fp, #-360]
	str	r2, [r3, #12]
	mov	r3, #0
	str	r3, [fp, #-292]
	ldr	r2, [fp, #-288]
	ldr	r3, [fp, #-360]
	str	r2, [r3, #16]
	mov	r3, #0
	str	r3, [fp, #-288]
	ldr	r3, [fp, #-352]
	cmp	r3, #1
	beq	.L204
	ldr	r3, [fp, #-328]
	cmp	r3, #0
	bgt	.L204
	ldr	r3, [fp, #-360]
	mov	r2, #0
	str	r2, [r3, #20]
	b	.L205
.L204:
	ldr	r3, [fp, #-360]
	ldr	r3, [r3, #16]
	cmp	r3, #0
	beq	.L206
	ldr	r3, [fp, #-228]
	mov	r2, r3
	ldr	r3, [fp, #-360]
	str	r2, [r3, #20]
	b	.L205
.L206:
	ldr	r3, [fp, #-272]
	mov	r0, r3
	bl	ftell
	mov	r3, r0
	mov	r2, r3
	ldr	r3, [fp, #-224]
	sub	r2, r2, r3
	ldr	r3, [fp, #-228]
	add	r3, r2, r3
	mov	r2, r3
	ldr	r3, [fp, #-360]
	str	r2, [r3, #20]
.L205:
	sub	r3, fp, #272
	mov	r0, r3
	bl	vsv_reader_reset
	ldr	r3, .L223+64
	ldr	r3, [r3]
	ldr	r3, [r3, #200]
	ldr	r2, [fp, #-284]
	mov	r1, r2
	ldr	r0, [fp, #-368]
	blx	r3
	str	r0, [fp, #-344]
	ldr	r3, [fp, #-344]
	cmp	r3, #0
	beq	.L207
	ldr	r4, [fp, #-284]
	ldr	r3, .L223+64
	ldr	r3, [r3]
	ldr	r3, [r3, #212]
	ldr	r0, [fp, #-368]
	blx	r3
	mov	r3, r0
	sub	r0, fp, #272
	mov	r2, r4
	ldr	r1, .L223+140
	bl	vsv_errmsg
	b	.L152
.L207:
	mov	r3, #0
	str	r3, [fp, #-340]
	b	.L208
.L209:
	ldr	r3, .L223+64
	ldr	r3, [r3]
	ldr	r2, [r3, #232]
	ldr	r3, [fp, #-340]
	lsl	r3, r3, #2
	sub	r1, fp, #12
	add	r3, r1, r3
	ldr	r3, [r3, #-280]
	mov	r0, r3
	blx	r2
	ldr	r3, [fp, #-340]
	add	r3, r3, #1
	str	r3, [fp, #-340]
.L208:
	ldr	r3, [fp, #-340]
	cmp	r3, #4
	bls	.L209
	ldr	r3, .L223+64
	ldr	r3, [r3]
	ldr	r3, [r3, #708]
	mov	r1, #3
	ldr	r0, [fp, #-368]
	blx	r3
	mov	r3, #0
	b	.L216
.L220:
	nop
.L181:
	mov	r3, #7
	str	r3, [fp, #-344]
	sub	r3, fp, #272
	ldr	r1, .L223+144
	mov	r0, r3
	bl	vsv_errmsg
	b	.L152
.L219:
	nop
	b	.L152
.L221:
	nop
	b	.L152
.L222:
	nop
.L152:
	ldr	r3, [fp, #-360]
	cmp	r3, #0
	beq	.L211
	ldr	r3, [fp, #-360]
	mov	r0, r3
	bl	vsvtabDisconnect
.L211:
	mov	r3, #0
	str	r3, [fp, #-340]
	b	.L212
.L213:
	ldr	r3, .L223+64
	ldr	r3, [r3]
	ldr	r2, [r3, #232]
	ldr	r3, [fp, #-340]
	lsl	r3, r3, #2
	sub	r1, fp, #12
	add	r3, r1, r3
	ldr	r3, [r3, #-280]
	mov	r0, r3
	blx	r2
	ldr	r3, [fp, #-340]
	add	r3, r3, #1
	str	r3, [fp, #-340]
.L212:
	ldr	r3, [fp, #-340]
	cmp	r3, #4
	bls	.L213
	ldrb	r3, [fp, #-216]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L214
	ldr	r3, .L223+64
	ldr	r3, [r3]
	ldr	r3, [r3, #232]
	ldr	r2, [fp, #-388]
	ldr	r2, [r2]
	mov	r0, r2
	blx	r3
	ldr	r3, .L223+64
	ldr	r3, [r3]
	ldr	r3, [r3, #276]
	sub	r2, fp, #272
	add	r2, r2, #56
	mov	r1, r2
	ldr	r0, .L223+148
	blx	r3
	mov	r2, r0
	ldr	r3, [fp, #-388]
	str	r2, [r3]
.L214:
	sub	r3, fp, #272
	mov	r0, r3
	bl	vsv_reader_reset
	ldr	r3, [fp, #-344]
	cmp	r3, #0
	bne	.L215
	mov	r3, #1
	str	r3, [fp, #-344]
.L215:
	ldr	r3, [fp, #-344]
.L216:
	ldr	r2, .L223
	ldr	r1, [r2]
	ldr	r2, [fp, #-16]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L217
	bl	__stack_chk_fail
.L217:
	mov	r0, r3
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L224:
	.align	2
.L223:
	.word	.LC52
	.word	azParam.9184
	.word	.LC19
	.word	.LC20
	.word	.LC21
	.word	.LC22
	.word	.LC23
	.word	.LC24
	.word	.LC25
	.word	.LC26
	.word	.LC27
	.word	.LC28
	.word	.LC29
	.word	.LC30
	.word	.LC31
	.word	.LC32
	.word	sqlite3_api
	.word	.LC33
	.word	.LC34
	.word	.LC35
	.word	.LC36
	.word	.LC37
	.word	.LC38
	.word	.LC39
	.word	.LC40
	.word	.LC41
	.word	.LC42
	.word	.LC43
	.word	.LC44
	.word	.LC45
	.word	.LC46
	.word	.LC47
	.word	.LC48
	.word	.LC49
	.word	.LC50
	.word	.LC51
	.word	.LC1
	.word	.LC10
	.size	vsvtabConnect, .-vsvtabConnect
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	vsvtabCursorRowReset, %function
vsvtabCursorRowReset:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	ldr	r3, [fp, #-16]
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3, #0
	str	r3, [fp, #-12]
	b	.L226
.L227:
	ldr	r3, .L228
	ldr	r3, [r3]
	ldr	r3, [r3, #232]
	ldr	r2, [fp, #-16]
	ldr	r1, [r2, #260]
	ldr	r2, [fp, #-12]
	lsl	r2, r2, #2
	add	r2, r1, r2
	ldr	r2, [r2]
	mov	r0, r2
	blx	r3
	ldr	r3, [fp, #-16]
	ldr	r2, [r3, #260]
	ldr	r3, [fp, #-12]
	lsl	r3, r3, #2
	add	r3, r2, r3
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, [fp, #-16]
	ldr	r2, [r3, #264]
	ldr	r3, [fp, #-12]
	lsl	r3, r3, #2
	add	r3, r2, r3
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, [fp, #-16]
	ldr	r2, [r3, #268]
	ldr	r3, [fp, #-12]
	lsl	r3, r3, #2
	add	r3, r2, r3
	mvn	r2, #0
	str	r2, [r3]
	ldr	r3, [fp, #-12]
	add	r3, r3, #1
	str	r3, [fp, #-12]
.L226:
	ldr	r3, [fp, #-8]
	ldr	r3, [r3, #24]
	ldr	r2, [fp, #-12]
	cmp	r2, r3
	blt	.L227
	nop
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L229:
	.align	2
.L228:
	.word	sqlite3_api
	.size	vsvtabCursorRowReset, .-vsvtabCursorRowReset
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	vsvtabCreate, %function
vsvtabCreate:
	@ args = 8, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	str	r0, [fp, #-8]
	str	r1, [fp, #-12]
	str	r2, [fp, #-16]
	str	r3, [fp, #-20]
	ldr	r3, [fp, #8]
	str	r3, [sp, #4]
	ldr	r3, [fp, #4]
	str	r3, [sp]
	ldr	r3, [fp, #-20]
	ldr	r2, [fp, #-16]
	ldr	r1, [fp, #-12]
	ldr	r0, [fp, #-8]
	bl	vsvtabConnect
	mov	r3, r0
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	vsvtabCreate, .-vsvtabCreate
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	vsvtabClose, %function
vsvtabClose:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	ldr	r3, [fp, #-16]
	str	r3, [fp, #-8]
	ldr	r0, [fp, #-8]
	bl	vsvtabCursorRowReset
	ldr	r3, [fp, #-8]
	add	r3, r3, #4
	mov	r0, r3
	bl	vsv_reader_reset
	ldr	r3, .L234
	ldr	r3, [r3]
	ldr	r3, [r3, #232]
	ldr	r0, [fp, #-16]
	blx	r3
	mov	r3, #0
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L235:
	.align	2
.L234:
	.word	sqlite3_api
	.size	vsvtabClose, .-vsvtabClose
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	vsvtabOpen, %function
vsvtabOpen:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #28
	str	r0, [fp, #-32]
	str	r1, [fp, #-36]
	ldr	r3, [fp, #-32]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-24]
	ldr	r3, [r3, #24]
	mov	r2, r3
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, #280
	str	r3, [fp, #-20]
	ldr	r3, .L240
	ldr	r3, [r3]
	ldr	r4, [r3, #788]
	ldr	r3, [fp, #-20]
	mov	r2, r3
	mov	r3, #0
	mov	r0, r2
	mov	r1, r3
	blx	r4
	str	r0, [fp, #-16]
	ldr	r3, [fp, #-16]
	cmp	r3, #0
	bne	.L237
	mov	r3, #7
	b	.L238
.L237:
	ldr	r2, [fp, #-20]
	mov	r1, #0
	ldr	r0, [fp, #-16]
	bl	memset
	ldr	r3, [fp, #-16]
	add	r2, r3, #280
	ldr	r3, [fp, #-16]
	str	r2, [r3, #260]
	ldr	r3, [fp, #-16]
	ldr	r2, [r3, #260]
	ldr	r3, [fp, #-24]
	ldr	r3, [r3, #24]
	lsl	r3, r3, #2
	add	r2, r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3, #264]
	ldr	r3, [fp, #-16]
	ldr	r2, [r3, #264]
	ldr	r3, [fp, #-24]
	ldr	r3, [r3, #24]
	lsl	r3, r3, #2
	add	r2, r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3, #268]
	ldr	r3, [fp, #-24]
	ldr	r2, [r3, #28]
	ldr	r3, [fp, #-16]
	str	r2, [r3, #32]
	ldr	r3, [fp, #-24]
	ldr	r2, [r3, #32]
	ldr	r3, [fp, #-16]
	str	r2, [r3, #36]
	ldr	r3, [fp, #-24]
	ldr	r2, [r3, #36]
	ldr	r3, [fp, #-16]
	str	r2, [r3, #40]
	ldr	r2, [fp, #-16]
	ldr	r3, [fp, #-36]
	str	r2, [r3]
	ldr	r3, [fp, #-16]
	add	r0, r3, #4
	ldr	r3, [fp, #-24]
	ldr	r1, [r3, #12]
	ldr	r3, [fp, #-24]
	ldr	r3, [r3, #16]
	mov	r2, r3
	bl	vsv_reader_open
	mov	r3, r0
	cmp	r3, #0
	beq	.L239
	ldr	r3, [fp, #-16]
	add	r3, r3, #4
	mov	r1, r3
	ldr	r0, [fp, #-24]
	bl	vsv_xfer_error
	mov	r3, #1
	b	.L238
.L239:
	mov	r3, #0
.L238:
	mov	r0, r3
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L241:
	.align	2
.L240:
	.word	sqlite3_api
	.size	vsvtabOpen, .-vsvtabOpen
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	vsvtabNext, %function
vsvtabNext:
	@ args = 0, pretend = 0, frame = 32
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	sub	sp, sp, #32
	str	r0, [fp, #-40]
	ldr	r3, [fp, #-40]
	str	r3, [fp, #-28]
	ldr	r3, [fp, #-40]
	ldr	r3, [r3]
	str	r3, [fp, #-24]
	mov	r3, #0
	str	r3, [fp, #-32]
.L250:
	ldr	r3, [fp, #-28]
	add	r3, r3, #4
	mov	r0, r3
	bl	vsv_read_one_field
	str	r0, [fp, #-20]
	ldr	r3, [fp, #-20]
	cmp	r3, #0
	bne	.L243
	ldr	r3, [fp, #-24]
	ldr	r3, [r3, #24]
	ldr	r2, [fp, #-32]
	cmp	r2, r3
	bge	.L244
	ldr	r3, [fp, #-28]
	ldr	r2, [r3, #268]
	ldr	r3, [fp, #-32]
	lsl	r3, r3, #2
	add	r3, r2, r3
	mvn	r2, #0
	str	r2, [r3]
	b	.L244
.L243:
	ldr	r3, [fp, #-24]
	ldr	r3, [r3, #24]
	ldr	r2, [fp, #-32]
	cmp	r2, r3
	bge	.L244
	ldr	r3, [fp, #-28]
	ldr	r2, [r3, #12]
	ldr	r3, [fp, #-28]
	ldr	r1, [r3, #264]
	ldr	r3, [fp, #-32]
	lsl	r3, r3, #2
	add	r3, r1, r3
	ldr	r3, [r3]
	cmp	r2, r3
	blt	.L245
	ldr	r3, .L256
	ldr	r3, [r3]
	ldr	r1, [r3, #796]
	ldr	r3, [fp, #-28]
	ldr	r2, [r3, #260]
	ldr	r3, [fp, #-32]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r0, [r3]
	ldr	r3, [fp, #-28]
	ldr	r3, [r3, #12]
	add	r3, r3, #1
	mov	r2, r3
	asr	r3, r2, #31
	blx	r1
	str	r0, [fp, #-16]
	ldr	r3, [fp, #-16]
	cmp	r3, #0
	bne	.L246
	mov	r3, #0
	str	r3, [fp, #-20]
	ldr	r3, [fp, #-28]
	add	r3, r3, #4
	ldr	r1, .L256+4
	mov	r0, r3
	bl	vsv_errmsg
	ldr	r3, [fp, #-28]
	add	r3, r3, #4
	mov	r1, r3
	ldr	r0, [fp, #-24]
	bl	vsv_xfer_error
	b	.L247
.L246:
	ldr	r3, [fp, #-28]
	ldr	r2, [r3, #260]
	ldr	r3, [fp, #-32]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r2, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-28]
	ldr	r2, [r3, #12]
	ldr	r3, [fp, #-28]
	ldr	r1, [r3, #264]
	ldr	r3, [fp, #-32]
	lsl	r3, r3, #2
	add	r3, r1, r3
	add	r2, r2, #1
	str	r2, [r3]
.L245:
	ldr	r3, [fp, #-28]
	ldr	r3, [r3, #44]
	cmp	r3, #0
	bne	.L248
	ldr	r3, [fp, #-24]
	ldr	r3, [r3, #40]
	cmp	r3, #0
	beq	.L248
	ldr	r3, [fp, #-28]
	ldr	r2, [r3, #268]
	ldr	r3, [fp, #-32]
	lsl	r3, r3, #2
	add	r3, r2, r3
	mvn	r2, #0
	str	r2, [r3]
	b	.L249
.L248:
	ldr	r3, [fp, #-28]
	ldr	r2, [r3, #268]
	ldr	r3, [fp, #-32]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r2, [fp, #-28]
	ldr	r2, [r2, #12]
	str	r2, [r3]
	ldr	r3, [fp, #-28]
	ldr	r2, [r3, #260]
	ldr	r3, [fp, #-32]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r0, [r3]
	ldr	r3, [fp, #-28]
	ldr	r3, [r3, #12]
	add	r3, r3, #1
	mov	r2, r3
	ldr	r1, [fp, #-20]
	bl	memcpy
.L249:
	ldr	r3, [fp, #-32]
	add	r3, r3, #1
	str	r3, [fp, #-32]
.L244:
	ldr	r3, [fp, #-28]
	ldr	r2, [r3, #28]
	ldr	r3, [fp, #-28]
	ldr	r3, [r3, #32]
	cmp	r2, r3
	beq	.L250
.L247:
	ldr	r3, [fp, #-28]
	ldr	r3, [r3, #28]
	cmn	r3, #1
	bne	.L251
	ldr	r3, [fp, #-32]
	cmp	r3, #0
	bne	.L251
	ldr	r1, [fp, #-28]
	mvn	r2, #0
	mvn	r3, #0
	str	r2, [r1, #272]
	str	r3, [r1, #276]
	b	.L252
.L251:
	ldr	r3, [fp, #-28]
	add	r3, r3, #272
	ldmia	r3, {r2-r3}
	adds	r4, r2, #1
	adc	r5, r3, #0
	ldr	r3, [fp, #-28]
	str	r4, [r3, #272]
	str	r5, [r3, #276]
	b	.L253
.L254:
	ldr	r3, [fp, #-28]
	ldr	r2, [r3, #268]
	ldr	r3, [fp, #-32]
	lsl	r3, r3, #2
	add	r3, r2, r3
	mvn	r2, #0
	str	r2, [r3]
	ldr	r3, [fp, #-32]
	add	r3, r3, #1
	str	r3, [fp, #-32]
.L253:
	ldr	r3, [fp, #-24]
	ldr	r3, [r3, #24]
	ldr	r2, [fp, #-32]
	cmp	r2, r3
	blt	.L254
.L252:
	mov	r3, #0
	mov	r0, r3
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
.L257:
	.align	2
.L256:
	.word	sqlite3_api
	.word	.LC1
	.size	vsvtabNext, .-vsvtabNext
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	vsv_isValidNumber, %function
vsv_isValidNumber:
	@ 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, #-24]
	mov	r3, #0
	str	r3, [fp, #-12]
	mov	r3, #0
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-24]
	str	r3, [fp, #-20]
	ldr	r0, [fp, #-24]
	bl	strlen
	mov	r3, r0
	sub	r3, r3, #1
	ldr	r2, [fp, #-24]
	add	r3, r2, r3
	str	r3, [fp, #-16]
	b	.L259
.L261:
	ldr	r3, [fp, #-20]
	add	r3, r3, #1
	str	r3, [fp, #-20]
.L259:
	ldr	r2, [fp, #-20]
	ldr	r3, [fp, #-16]
	cmp	r2, r3
	bhi	.L262
	ldr	r3, [fp, #-20]
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #32
	beq	.L261
	b	.L262
.L264:
	ldr	r3, [fp, #-16]
	sub	r3, r3, #1
	str	r3, [fp, #-16]
.L262:
	ldr	r2, [fp, #-20]
	ldr	r3, [fp, #-16]
	cmp	r2, r3
	bhi	.L263
	ldr	r3, [fp, #-16]
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #32
	beq	.L264
.L263:
	ldr	r2, [fp, #-20]
	ldr	r3, [fp, #-16]
	cmp	r2, r3
	bhi	.L289
	ldr	r2, [fp, #-20]
	ldr	r3, [fp, #-16]
	cmp	r2, r3
	bhi	.L267
	ldr	r3, [fp, #-20]
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #43
	beq	.L268
	ldr	r3, [fp, #-20]
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #45
	bne	.L267
.L268:
	ldr	r3, [fp, #-20]
	add	r3, r3, #1
	str	r3, [fp, #-20]
.L267:
	ldr	r2, [fp, #-20]
	ldr	r3, [fp, #-16]
	cmp	r2, r3
	bhi	.L270
	bl	__ctype_b_loc
	mov	r3, r0
	ldr	r2, [r3]
	ldr	r3, [fp, #-20]
	ldrb	r3, [r3]	@ zero_extendqisi2
	lsl	r3, r3, #1
	add	r3, r2, r3
	ldrh	r3, [r3]
	and	r3, r3, #2048
	cmp	r3, #0
	beq	.L270
	mov	r3, #1
	str	r3, [fp, #-8]
	mov	r3, #1
	str	r3, [fp, #-12]
	b	.L270
.L272:
	ldr	r3, [fp, #-20]
	add	r3, r3, #1
	str	r3, [fp, #-20]
.L270:
	ldr	r2, [fp, #-20]
	ldr	r3, [fp, #-16]
	cmp	r2, r3
	bhi	.L271
	bl	__ctype_b_loc
	mov	r3, r0
	ldr	r2, [r3]
	ldr	r3, [fp, #-20]
	ldrb	r3, [r3]	@ zero_extendqisi2
	lsl	r3, r3, #1
	add	r3, r2, r3
	ldrh	r3, [r3]
	and	r3, r3, #2048
	cmp	r3, #0
	bne	.L272
.L271:
	ldr	r2, [fp, #-20]
	ldr	r3, [fp, #-16]
	cmp	r2, r3
	bhi	.L273
	ldr	r3, [fp, #-20]
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #46
	bne	.L273
	mov	r3, #2
	str	r3, [fp, #-12]
	ldr	r3, [fp, #-20]
	add	r3, r3, #1
	str	r3, [fp, #-20]
.L273:
	ldr	r2, [fp, #-20]
	ldr	r3, [fp, #-16]
	cmp	r2, r3
	bhi	.L275
	bl	__ctype_b_loc
	mov	r3, r0
	ldr	r2, [r3]
	ldr	r3, [fp, #-20]
	ldrb	r3, [r3]	@ zero_extendqisi2
	lsl	r3, r3, #1
	add	r3, r2, r3
	ldrh	r3, [r3]
	and	r3, r3, #2048
	cmp	r3, #0
	beq	.L275
	mov	r3, #1
	str	r3, [fp, #-8]
	b	.L275
.L277:
	ldr	r3, [fp, #-20]
	add	r3, r3, #1
	str	r3, [fp, #-20]
.L275:
	ldr	r2, [fp, #-20]
	ldr	r3, [fp, #-16]
	cmp	r2, r3
	bhi	.L276
	bl	__ctype_b_loc
	mov	r3, r0
	ldr	r2, [r3]
	ldr	r3, [fp, #-20]
	ldrb	r3, [r3]	@ zero_extendqisi2
	lsl	r3, r3, #1
	add	r3, r2, r3
	ldrh	r3, [r3]
	and	r3, r3, #2048
	cmp	r3, #0
	bne	.L277
.L276:
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	bne	.L278
	mov	r3, #0
	str	r3, [fp, #-12]
	b	.L266
.L278:
	ldr	r2, [fp, #-20]
	ldr	r3, [fp, #-16]
	cmp	r2, r3
	bhi	.L279
	ldr	r3, [fp, #-20]
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #101
	beq	.L280
	ldr	r3, [fp, #-20]
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #69
	bne	.L279
.L280:
	mov	r3, #3
	str	r3, [fp, #-12]
	ldr	r3, [fp, #-20]
	add	r3, r3, #1
	str	r3, [fp, #-20]
.L279:
	ldr	r2, [fp, #-20]
	ldr	r3, [fp, #-16]
	cmp	r2, r3
	bhi	.L281
	ldr	r3, [fp, #-12]
	cmp	r3, #3
	bne	.L281
	ldr	r3, [fp, #-20]
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #43
	beq	.L282
	ldr	r3, [fp, #-20]
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #45
	bne	.L281
.L282:
	ldr	r3, [fp, #-20]
	add	r3, r3, #1
	str	r3, [fp, #-20]
.L281:
	ldr	r2, [fp, #-20]
	ldr	r3, [fp, #-16]
	cmp	r2, r3
	bhi	.L284
	ldr	r3, [fp, #-12]
	cmp	r3, #3
	bne	.L284
	bl	__ctype_b_loc
	mov	r3, r0
	ldr	r2, [r3]
	ldr	r3, [fp, #-20]
	ldrb	r3, [r3]	@ zero_extendqisi2
	lsl	r3, r3, #1
	add	r3, r2, r3
	ldrh	r3, [r3]
	and	r3, r3, #2048
	cmp	r3, #0
	beq	.L284
	mov	r3, #2
	str	r3, [fp, #-12]
	b	.L284
.L286:
	ldr	r3, [fp, #-20]
	add	r3, r3, #1
	str	r3, [fp, #-20]
.L284:
	ldr	r2, [fp, #-20]
	ldr	r3, [fp, #-16]
	cmp	r2, r3
	bhi	.L285
	bl	__ctype_b_loc
	mov	r3, r0
	ldr	r2, [r3]
	ldr	r3, [fp, #-20]
	ldrb	r3, [r3]	@ zero_extendqisi2
	lsl	r3, r3, #1
	add	r3, r2, r3
	ldrh	r3, [r3]
	and	r3, r3, #2048
	cmp	r3, #0
	bne	.L286
.L285:
	ldr	r3, [fp, #-12]
	cmp	r3, #3
	bne	.L290
	mov	r3, #0
	str	r3, [fp, #-12]
	b	.L266
.L289:
	nop
	b	.L266
.L290:
	nop
.L266:
	ldr	r2, [fp, #-20]
	ldr	r3, [fp, #-16]
	cmp	r2, r3
	bhi	.L287
	mov	r3, #0
	str	r3, [fp, #-12]
.L287:
	ldr	r3, [fp, #-12]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	vsv_isValidNumber, .-vsv_isValidNumber
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	vsv_utf8IsValid, %function
vsv_utf8IsValid:
	@ args = 0, pretend = 0, frame = 48
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	push	{r4, r5, r6, r7, r8, r9, fp}
	add	fp, sp, #24
	sub	sp, sp, #52
	str	r0, [fp, #-56]
	mov	r2, #0
	mov	r3, #0
	str	r2, [fp, #-36]
	str	r3, [fp, #-32]
	mov	r3, #0
	str	r3, [fp, #-40]
	ldr	r3, [fp, #-56]
	str	r3, [fp, #-44]
	b	.L292
.L300:
	ldr	r3, [fp, #-40]
	cmp	r3, #0
	beq	.L293
	ldrb	r3, [fp, #-45]	@ zero_extendqisi2
	and	r3, r3, #192
	cmp	r3, #128
	bne	.L294
	ldr	r3, [fp, #-40]
	sub	r3, r3, #1
	str	r3, [fp, #-40]
	ldr	r3, [fp, #-44]
	add	r3, r3, #1
	str	r3, [fp, #-44]
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	adds	r4, r2, #1
	adc	r5, r3, #0
	str	r4, [fp, #-36]
	str	r5, [fp, #-32]
	b	.L292
.L294:
	mvn	r2, #0
	mvn	r3, #0
	str	r2, [fp, #-36]
	str	r3, [fp, #-32]
	b	.L295
.L293:
	ldrsb	r3, [fp, #-45]
	cmp	r3, #0
	blt	.L296
	ldr	r3, [fp, #-44]
	add	r3, r3, #1
	str	r3, [fp, #-44]
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	adds	r6, r2, #1
	adc	r7, r3, #0
	str	r6, [fp, #-36]
	str	r7, [fp, #-32]
	b	.L292
.L296:
	ldrb	r3, [fp, #-45]	@ zero_extendqisi2
	and	r3, r3, #224
	cmp	r3, #192
	bne	.L297
	mov	r3, #1
	str	r3, [fp, #-40]
	ldr	r3, [fp, #-44]
	add	r3, r3, #1
	str	r3, [fp, #-44]
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	adds	r8, r2, #1
	adc	r9, r3, #0
	str	r8, [fp, #-36]
	str	r9, [fp, #-32]
	b	.L292
.L297:
	ldrb	r3, [fp, #-45]	@ zero_extendqisi2
	and	r3, r3, #240
	cmp	r3, #224
	bne	.L298
	mov	r3, #2
	str	r3, [fp, #-40]
	ldr	r3, [fp, #-44]
	add	r3, r3, #1
	str	r3, [fp, #-44]
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	adds	r1, r2, #1
	str	r1, [fp, #-68]
	adc	r3, r3, #0
	str	r3, [fp, #-64]
	sub	r3, fp, #68
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-36]
	str	r3, [fp, #-32]
	b	.L292
.L298:
	ldrb	r3, [fp, #-45]	@ zero_extendqisi2
	and	r3, r3, #248
	cmp	r3, #240
	bne	.L299
	mov	r3, #3
	str	r3, [fp, #-40]
	ldr	r3, [fp, #-44]
	add	r3, r3, #1
	str	r3, [fp, #-44]
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	adds	r1, r2, #1
	str	r1, [fp, #-76]
	adc	r3, r3, #0
	str	r3, [fp, #-72]
	sub	r3, fp, #76
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-36]
	str	r3, [fp, #-32]
	b	.L292
.L299:
	mvn	r2, #0
	mvn	r3, #0
	str	r2, [fp, #-36]
	str	r3, [fp, #-32]
	b	.L295
.L292:
	ldr	r3, [fp, #-44]
	ldrb	r3, [r3]
	strb	r3, [fp, #-45]
	ldrb	r3, [fp, #-45]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L300
.L295:
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	sub	sp, fp, #24
	@ sp needed
	pop	{r4, r5, r6, r7, r8, r9, fp}
	bx	lr
	.size	vsv_utf8IsValid, .-vsv_utf8IsValid
	.section	.rodata
	.align	2
.LC53:
	.ascii	"Invalid UTF8 Data\000"
	.global	__aeabi_dcmpeq
	.global	__aeabi_dcmpge
	.global	__aeabi_dcmple
	.global	__aeabi_d2lz
	.align	2
.LC54:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	vsvtabColumn, %function
vsvtabColumn:
	@ args = 0, pretend = 0, frame = 72
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #76
	str	r0, [fp, #-72]
	str	r1, [fp, #-76]
	str	r2, [fp, #-80]
	ldr	r3, .L347
	ldr	r3, [r3]
	str	r3, [fp, #-16]
	mov	r3,#0
	ldr	r3, [fp, #-72]
	str	r3, [fp, #-68]
	ldr	r3, [fp, #-72]
	ldr	r3, [r3]
	str	r3, [fp, #-64]
	ldr	r3, [fp, #-68]
	ldr	r2, [r3, #268]
	ldr	r3, [fp, #-80]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]
	mov	r2, r3
	asr	r3, r2, #31
	str	r2, [fp, #-52]
	str	r3, [fp, #-48]
	mov	r2, #0
	mov	r3, #0
	str	r2, [fp, #-44]
	str	r3, [fp, #-40]
	ldr	r3, [fp, #-80]
	cmp	r3, #0
	blt	.L344
	ldr	r3, [fp, #-64]
	ldr	r3, [r3, #24]
	ldr	r2, [fp, #-80]
	cmp	r2, r3
	bge	.L344
	ldr	r3, [fp, #-68]
	ldr	r2, [r3, #260]
	ldr	r3, [fp, #-80]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L344
	sub	r3, fp, #52
	ldmia	r3, {r2-r3}
	cmp	r2, #0
	sbcs	r3, r3, #0
	blt	.L344
	ldr	r3, [fp, #-64]
	ldr	r3, [r3, #36]
	cmp	r3, #5
	ldrls	pc, [pc, r3, asl #2]
	b	.L303
.L305:
	.word	.L310
	.word	.L309
	.word	.L308
	.word	.L307
	.word	.L306
	.word	.L304
.L310:
	ldr	r3, [fp, #-64]
	ldr	r3, [r3, #44]
	cmp	r3, #0
	beq	.L311
	ldr	r3, [fp, #-68]
	ldr	r2, [r3, #260]
	ldr	r3, [fp, #-80]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]
	mov	r0, r3
	bl	vsv_utf8IsValid
	str	r0, [fp, #-44]
	str	r1, [fp, #-40]
	sub	r1, fp, #44
	ldmia	r1, {r0-r1}
	sub	r3, fp, #52
	ldmia	r3, {r2-r3}
	cmp	r1, r3
	cmpeq	r0, r2
	bne	.L312
	ldr	r3, .L347+4
	ldr	r3, [r3]
	ldr	r4, [r3, #340]
	ldr	r3, [fp, #-68]
	ldr	r2, [r3, #260]
	ldr	r3, [fp, #-80]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r1, [r3]
	ldr	r2, [fp, #-52]
	mvn	r3, #0
	ldr	r0, [fp, #-76]
	blx	r4
	b	.L303
.L312:
	ldr	r3, .L347+4
	ldr	r3, [r3]
	ldr	r3, [r3, #320]
	mvn	r2, #0
	ldr	r1, .L347+8
	ldr	r0, [fp, #-76]
	blx	r3
	b	.L303
.L311:
	ldr	r3, .L347+4
	ldr	r3, [r3]
	ldr	r4, [r3, #340]
	ldr	r3, [fp, #-68]
	ldr	r2, [r3, #260]
	ldr	r3, [fp, #-80]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r1, [r3]
	mvn	r3, #0
	mvn	r2, #0
	ldr	r0, [fp, #-76]
	blx	r4
	b	.L303
.L309:
	ldr	r3, .L347+4
	ldr	r3, [r3]
	ldr	r4, [r3, #312]
	ldr	r3, [fp, #-68]
	ldr	r2, [r3, #260]
	ldr	r3, [fp, #-80]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r1, [r3]
	ldr	r2, [fp, #-52]
	mvn	r3, #0
	ldr	r0, [fp, #-76]
	blx	r4
	b	.L303
.L308:
	ldr	r3, [fp, #-64]
	ldr	r3, [r3, #44]
	cmp	r3, #0
	beq	.L314
	ldr	r3, [fp, #-68]
	ldr	r2, [r3, #260]
	ldr	r3, [fp, #-80]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]
	mov	r0, r3
	bl	vsv_utf8IsValid
	str	r0, [fp, #-44]
	str	r1, [fp, #-40]
	sub	r1, fp, #44
	ldmia	r1, {r0-r1}
	sub	r3, fp, #52
	ldmia	r3, {r2-r3}
	cmp	r0, r2
	sbcs	r3, r1, r3
	bge	.L315
	ldr	r3, .L347+4
	ldr	r3, [r3]
	ldr	r4, [r3, #312]
	ldr	r3, [fp, #-68]
	ldr	r2, [r3, #260]
	ldr	r3, [fp, #-80]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r1, [r3]
	ldr	r2, [fp, #-52]
	mvn	r3, #0
	ldr	r0, [fp, #-76]
	blx	r4
	b	.L303
.L315:
	ldr	r3, .L347+4
	ldr	r3, [r3]
	ldr	r4, [r3, #340]
	ldr	r3, [fp, #-68]
	ldr	r2, [r3, #260]
	ldr	r3, [fp, #-80]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r1, [r3]
	ldr	r2, [fp, #-44]
	mvn	r3, #0
	ldr	r0, [fp, #-76]
	blx	r4
	b	.L303
.L314:
	ldr	r3, .L347+4
	ldr	r3, [r3]
	ldr	r4, [r3, #340]
	ldr	r3, [fp, #-68]
	ldr	r2, [r3, #260]
	ldr	r3, [fp, #-80]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r1, [r3]
	mvn	r3, #0
	mvn	r2, #0
	ldr	r0, [fp, #-76]
	blx	r4
	b	.L303
.L307:
	ldr	r3, [fp, #-68]
	ldr	r2, [r3, #260]
	ldr	r3, [fp, #-80]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]
	mov	r0, r3
	bl	vsv_isValidNumber
	mov	r3, r0
	cmp	r3, #1
	bne	.L317
	ldr	r3, .L347+4
	ldr	r3, [r3]
	ldr	r4, [r3, #332]
	ldr	r3, [fp, #-68]
	ldr	r2, [r3, #260]
	ldr	r3, [fp, #-80]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]
	mov	r2, #10
	mov	r1, #0
	mov	r0, r3
	bl	strtoll
	mov	r2, r0
	mov	r3, r1
	ldr	r0, [fp, #-76]
	blx	r4
	b	.L318
.L317:
	ldr	r3, [fp, #-64]
	ldr	r3, [r3, #44]
	cmp	r3, #0
	beq	.L319
	ldr	r3, [fp, #-68]
	ldr	r2, [r3, #260]
	ldr	r3, [fp, #-80]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]
	mov	r0, r3
	bl	vsv_utf8IsValid
	str	r0, [fp, #-44]
	str	r1, [fp, #-40]
	sub	r1, fp, #44
	ldmia	r1, {r0-r1}
	sub	r3, fp, #52
	ldmia	r3, {r2-r3}
	cmp	r0, r2
	sbcs	r3, r1, r3
	bge	.L320
	ldr	r3, .L347+4
	ldr	r3, [r3]
	ldr	r4, [r3, #312]
	ldr	r3, [fp, #-68]
	ldr	r2, [r3, #260]
	ldr	r3, [fp, #-80]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r1, [r3]
	ldr	r2, [fp, #-52]
	mvn	r3, #0
	ldr	r0, [fp, #-76]
	blx	r4
	b	.L345
.L320:
	ldr	r3, .L347+4
	ldr	r3, [r3]
	ldr	r4, [r3, #340]
	ldr	r3, [fp, #-68]
	ldr	r2, [r3, #260]
	ldr	r3, [fp, #-80]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r1, [r3]
	ldr	r2, [fp, #-44]
	mvn	r3, #0
	ldr	r0, [fp, #-76]
	blx	r4
	b	.L345
.L319:
	ldr	r3, .L347+4
	ldr	r3, [r3]
	ldr	r4, [r3, #340]
	ldr	r3, [fp, #-68]
	ldr	r2, [r3, #260]
	ldr	r3, [fp, #-80]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r1, [r3]
	mvn	r3, #0
	mvn	r2, #0
	ldr	r0, [fp, #-76]
	blx	r4
.L345:
	nop
.L318:
	b	.L303
.L306:
	ldr	r3, [fp, #-68]
	ldr	r2, [r3, #260]
	ldr	r3, [fp, #-80]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]
	mov	r0, r3
	bl	vsv_isValidNumber
	mov	r3, r0
	sub	r3, r3, #1
	cmp	r3, #1
	bhi	.L322
	ldr	r3, .L347+4
	ldr	r3, [r3]
	ldr	r4, [r3, #316]
	ldr	r3, [fp, #-68]
	ldr	r2, [r3, #260]
	ldr	r3, [fp, #-80]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]
	mov	r1, #0
	mov	r0, r3
	bl	strtod
	mov	r2, r0
	mov	r3, r1
	ldr	r0, [fp, #-76]
	blx	r4
	b	.L323
.L322:
	ldr	r3, [fp, #-64]
	ldr	r3, [r3, #44]
	cmp	r3, #0
	beq	.L324
	ldr	r3, [fp, #-68]
	ldr	r2, [r3, #260]
	ldr	r3, [fp, #-80]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]
	mov	r0, r3
	bl	vsv_utf8IsValid
	str	r0, [fp, #-44]
	str	r1, [fp, #-40]
	sub	r1, fp, #44
	ldmia	r1, {r0-r1}
	sub	r3, fp, #52
	ldmia	r3, {r2-r3}
	cmp	r0, r2
	sbcs	r3, r1, r3
	bge	.L325
	ldr	r3, .L347+4
	ldr	r3, [r3]
	ldr	r4, [r3, #312]
	ldr	r3, [fp, #-68]
	ldr	r2, [r3, #260]
	ldr	r3, [fp, #-80]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r1, [r3]
	ldr	r2, [fp, #-52]
	mvn	r3, #0
	ldr	r0, [fp, #-76]
	blx	r4
	b	.L346
.L325:
	ldr	r3, .L347+4
	ldr	r3, [r3]
	ldr	r4, [r3, #340]
	ldr	r3, [fp, #-68]
	ldr	r2, [r3, #260]
	ldr	r3, [fp, #-80]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r1, [r3]
	ldr	r2, [fp, #-44]
	mvn	r3, #0
	ldr	r0, [fp, #-76]
	blx	r4
	b	.L346
.L324:
	ldr	r3, .L347+4
	ldr	r3, [r3]
	ldr	r4, [r3, #340]
	ldr	r3, [fp, #-68]
	ldr	r2, [r3, #260]
	ldr	r3, [fp, #-80]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r1, [r3]
	mvn	r3, #0
	mvn	r2, #0
	ldr	r0, [fp, #-76]
	blx	r4
.L346:
	nop
.L323:
	b	.L303
.L304:
	ldr	r3, [fp, #-68]
	ldr	r2, [r3, #260]
	ldr	r3, [fp, #-80]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]
	mov	r0, r3
	bl	vsv_isValidNumber
	mov	r3, r0
	cmp	r3, #1
	beq	.L327
	cmp	r3, #2
	beq	.L328
	b	.L343
.L327:
	ldr	r3, .L347+4
	ldr	r3, [r3]
	ldr	r4, [r3, #332]
	ldr	r3, [fp, #-68]
	ldr	r2, [r3, #260]
	ldr	r3, [fp, #-80]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]
	mov	r2, #10
	mov	r1, #0
	mov	r0, r3
	bl	strtoll
	mov	r2, r0
	mov	r3, r1
	ldr	r0, [fp, #-76]
	blx	r4
	b	.L303
.L328:
	ldr	r3, [fp, #-68]
	ldr	r2, [r3, #260]
	ldr	r3, [fp, #-80]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]
	mov	r1, #0
	mov	r0, r3
	bl	strtold
	str	r0, [fp, #-36]
	str	r1, [fp, #-32]
	sub	r3, fp, #60
	mov	r2, r3
	sub	r1, fp, #36
	ldmia	r1, {r0-r1}
	bl	modfl
	str	r0, [fp, #-28]
	str	r1, [fp, #-24]
	mov	r2, #0
	mov	r3, #0
	sub	r1, fp, #28
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmpeq
	mov	r3, r0
	cmp	r3, #0
	beq	.L330
	mov	r2, #0
	ldr	r3, .L347+12
	sub	r1, fp, #36
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmpge
	mov	r3, r0
	cmp	r3, #0
	beq	.L330
	mov	r2, #0
	ldr	r3, .L347+16
	sub	r1, fp, #36
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmple
	mov	r3, r0
	cmp	r3, #0
	beq	.L330
	ldr	r3, .L347+4
	ldr	r3, [r3]
	ldr	r4, [r3, #332]
	sub	r1, fp, #36
	ldmia	r1, {r0-r1}
	bl	__aeabi_d2lz
	mov	r2, r0
	mov	r3, r1
	ldr	r0, [fp, #-76]
	blx	r4
	b	.L303
.L330:
	ldr	r3, .L347+4
	ldr	r3, [r3]
	ldr	r1, [r3, #316]
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	ldr	r0, [fp, #-76]
	blx	r1
	b	.L303
.L343:
	ldr	r3, [fp, #-64]
	ldr	r3, [r3, #44]
	cmp	r3, #0
	beq	.L335
	ldr	r3, [fp, #-68]
	ldr	r2, [r3, #260]
	ldr	r3, [fp, #-80]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]
	mov	r0, r3
	bl	vsv_utf8IsValid
	str	r0, [fp, #-44]
	str	r1, [fp, #-40]
	sub	r1, fp, #44
	ldmia	r1, {r0-r1}
	sub	r3, fp, #52
	ldmia	r3, {r2-r3}
	cmp	r0, r2
	sbcs	r3, r1, r3
	bge	.L336
	ldr	r3, .L347+4
	ldr	r3, [r3]
	ldr	r4, [r3, #312]
	ldr	r3, [fp, #-68]
	ldr	r2, [r3, #260]
	ldr	r3, [fp, #-80]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r1, [r3]
	ldr	r2, [fp, #-52]
	mvn	r3, #0
	ldr	r0, [fp, #-76]
	blx	r4
	b	.L303
.L336:
	ldr	r3, .L347+4
	ldr	r3, [r3]
	ldr	r4, [r3, #340]
	ldr	r3, [fp, #-68]
	ldr	r2, [r3, #260]
	ldr	r3, [fp, #-80]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r1, [r3]
	ldr	r2, [fp, #-44]
	mvn	r3, #0
	ldr	r0, [fp, #-76]
	blx	r4
	b	.L303
.L335:
	ldr	r3, .L347+4
	ldr	r3, [r3]
	ldr	r4, [r3, #340]
	ldr	r3, [fp, #-68]
	ldr	r2, [r3, #260]
	ldr	r3, [fp, #-80]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r1, [r3]
	mvn	r3, #0
	mvn	r2, #0
	ldr	r0, [fp, #-76]
	blx	r4
	b	.L303
.L344:
	nop
.L303:
	mov	r3, #0
	ldr	r2, .L347
	ldr	r1, [r2]
	ldr	r2, [fp, #-16]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L339
	bl	__stack_chk_fail
.L339:
	mov	r0, r3
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L348:
	.align	2
.L347:
	.word	.LC54
	.word	sqlite3_api
	.word	.LC53
	.word	-1025507328
	.word	1121976320
	.size	vsvtabColumn, .-vsvtabColumn
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	vsvtabRowid, %function
vsvtabRowid:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #20
	str	r0, [fp, #-16]
	str	r1, [fp, #-20]
	ldr	r3, [fp, #-16]
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-8]
	add	r3, r3, #272
	ldmia	r3, {r2-r3}
	ldr	r1, [fp, #-20]
	stm	r1, {r2-r3}
	mov	r3, #0
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	vsvtabRowid, .-vsvtabRowid
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	vsvtabEof, %function
vsvtabEof:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #20
	str	r0, [fp, #-16]
	ldr	r3, [fp, #-16]
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-8]
	add	r3, r3, #272
	ldmia	r3, {r2-r3}
	lsr	r3, r3, #31
	and	r3, r3, #255
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	vsvtabEof, .-vsvtabEof
	.section	.rodata
	.align	2
.LC55:
	.ascii	"pCur->rdr.zIn==pTab->zData\000"
	.align	2
.LC56:
	.ascii	"pTab->iStart>=0\000"
	.align	2
.LC57:
	.ascii	"(size_t)pTab->iStart<=pCur->rdr.nIn\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	vsvtabFilter, %function
vsvtabFilter:
	@ 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, #-16]
	str	r3, [fp, #-12]
	ldr	r3, [fp, #-16]
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	ldr	r1, [fp, #-12]
	mov	r2, #0
	mov	r3, #0
	str	r2, [r1, #272]
	str	r3, [r1, #276]
	ldr	r3, [fp, #-12]
	ldr	r3, [r3, #4]
	cmp	r3, #0
	bne	.L354
	ldr	r3, [fp, #-12]
	ldr	r2, [r3, #56]
	ldr	r3, [fp, #-8]
	ldr	r3, [r3, #16]
	cmp	r2, r3
	beq	.L355
	ldr	r3, .L360
	ldr	r2, .L360+4
	ldr	r1, .L360+8
	ldr	r0, .L360+12
	bl	__assert_fail
.L355:
	ldr	r3, [fp, #-8]
	ldr	r3, [r3, #20]
	cmp	r3, #0
	bge	.L356
	ldr	r3, .L360
	ldr	r2, .L360+16
	ldr	r1, .L360+8
	ldr	r0, .L360+20
	bl	__assert_fail
.L356:
	ldr	r3, [fp, #-8]
	ldr	r3, [r3, #20]
	mov	r2, r3
	ldr	r3, [fp, #-12]
	ldr	r3, [r3, #52]
	cmp	r2, r3
	bls	.L357
	ldr	r3, .L360
	ldr	r2, .L360+24
	ldr	r1, .L360+8
	ldr	r0, .L360+28
	bl	__assert_fail
.L357:
	ldr	r3, [fp, #-8]
	ldr	r3, [r3, #20]
	mov	r2, r3
	ldr	r3, [fp, #-12]
	str	r2, [r3, #48]
	b	.L358
.L354:
	ldr	r3, [fp, #-12]
	ldr	r0, [r3, #4]
	ldr	r3, [fp, #-8]
	ldr	r3, [r3, #20]
	mov	r2, #0
	mov	r1, r3
	bl	fseek
	ldr	r3, [fp, #-12]
	mov	r2, #0
	str	r2, [r3, #48]
	ldr	r3, [fp, #-12]
	mov	r2, #0
	str	r2, [r3, #52]
.L358:
	ldr	r0, [fp, #-16]
	bl	vsvtabNext
	mov	r3, r0
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L361:
	.align	2
.L360:
	.word	__PRETTY_FUNCTION__.9347
	.word	1803
	.word	.LC4
	.word	.LC55
	.word	1804
	.word	.LC56
	.word	1805
	.word	.LC57
	.size	vsvtabFilter, .-vsvtabFilter
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	vsvtabBestIndex, %function
vsvtabBestIndex:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	str	r0, [fp, #-8]
	str	r1, [fp, #-12]
	ldr	r1, [fp, #-12]
	mov	r2, #0
	ldr	r3, .L364
	str	r2, [r1, #40]
	str	r3, [r1, #44]
	mov	r3, #0
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
.L365:
	.align	2
.L364:
	.word	1093567616
	.size	vsvtabBestIndex, .-vsvtabBestIndex
	.data
	.align	2
	.type	VsvModule, %object
	.size	VsvModule, 96
VsvModule:
	.word	0
	.word	vsvtabCreate
	.word	vsvtabConnect
	.word	vsvtabBestIndex
	.word	vsvtabDisconnect
	.word	vsvtabDisconnect
	.word	vsvtabOpen
	.word	vsvtabClose
	.word	vsvtabFilter
	.word	vsvtabNext
	.word	vsvtabEof
	.word	vsvtabColumn
	.word	vsvtabRowid
	.word	0
	.word	0
	.word	0
	.word	0
	.word	0
	.word	0
	.word	0
	.space	16
	.section	.rodata
	.align	2
.LC58:
	.ascii	"vsv\000"
	.text
	.align	2
	.global	sqlite3_vsv_init
	.syntax unified
	.arm
	.fpu softvfp
	.type	sqlite3_vsv_init, %function
sqlite3_vsv_init:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #28
	str	r0, [fp, #-24]
	str	r1, [fp, #-28]
	str	r2, [fp, #-32]
	ldr	r2, .L368
	ldr	r3, [fp, #-32]
	str	r3, [r2]
	ldr	r3, .L368
	ldr	r3, [r3]
	ldr	r4, [r3, #188]
	mov	r3, #0
	ldr	r2, .L368+4
	ldr	r1, .L368+8
	ldr	r0, [fp, #-24]
	blx	r4
	str	r0, [fp, #-16]
	ldr	r3, [fp, #-16]
	mov	r0, r3
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L369:
	.align	2
.L368:
	.word	sqlite3_api
	.word	VsvModule
	.word	.LC58
	.size	sqlite3_vsv_init, .-sqlite3_vsv_init
	.section	.rodata
	.align	2
	.type	__PRETTY_FUNCTION__.9002, %object
	.size	__PRETTY_FUNCTION__.9002, 16
__PRETTY_FUNCTION__.9002:
	.ascii	"vsv_reader_open\000"
	.align	2
	.type	__PRETTY_FUNCTION__.9007, %object
	.size	__PRETTY_FUNCTION__.9007, 16
__PRETTY_FUNCTION__.9007:
	.ascii	"vsv_getc_refill\000"
	.align	2
.LC59:
	.ascii	"filename\000"
	.align	2
.LC60:
	.ascii	"data\000"
	.align	2
.LC61:
	.ascii	"schema\000"
	.align	2
.LC62:
	.ascii	"fsep\000"
	.align	2
.LC63:
	.ascii	"rsep\000"
	.data
	.align	2
	.type	azParam.9184, %object
	.size	azParam.9184, 20
azParam.9184:
	.word	.LC59
	.word	.LC60
	.word	.LC61
	.word	.LC62
	.word	.LC63
	.section	.rodata
	.align	2
	.type	__PRETTY_FUNCTION__.9347, %object
	.size	__PRETTY_FUNCTION__.9347, 13
__PRETTY_FUNCTION__.9347:
	.ascii	"vsvtabFilter\000"
	.ident	"GCC: (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0"
	.section	.note.GNU-stack,"",%progbits
