	.file	"extr_jisx0212.h_jisx0212_wctomb.c"
	.intel_syntax noprefix
	.text
	.p2align 4
	.type	jisx0212_wctomb, @function
jisx0212_wctomb:
.LFB0:
	.cfi_startproc
	endbr64
	mov	eax, DWORD PTR RET_TOOSMALL[rip]
	cmp	ecx, 1
	jle	.L1
	cmp	edx, 1119
	ja	.L3
	mov	eax, edx
	mov	rcx, QWORD PTR jisx0212_uni2indx_page00[rip]
	sar	eax, 4
	cdqe
	lea	rdi, [rcx+rax*4]
.L4:
	test	rdi, rdi
	je	.L7
	movzx	eax, WORD PTR [rdi]
	and	edx, 15
	bt	eax, edx
	mov	r8d, eax
	jc	.L16
.L7:
	mov	eax, DWORD PTR RET_ILUNI[rip]
.L1:
	ret
	.p2align 4,,10
	.p2align 3
.L3:
	lea	eax, -8448[rdx]
	cmp	eax, 47
	jbe	.L17
	lea	eax, -19968[rdx]
	cmp	eax, 20911
	ja	.L6
	mov	eax, edx
	mov	rcx, QWORD PTR jisx0212_uni2indx_page4e[rip]
	sar	eax, 4
	cdqe
	lea	rdi, -4992[rcx+rax*4]
	jmp	.L4
	.p2align 4,,10
	.p2align 3
.L17:
	mov	eax, edx
	mov	rcx, QWORD PTR jisx0212_uni2indx_page21[rip]
	sar	eax, 4
	cdqe
	lea	rdi, -2112[rcx+rax*4]
	jmp	.L4
	.p2align 4,,10
	.p2align 3
.L16:
	mov	ecx, edx
	mov	eax, 1
	sal	eax, cl
	lea	edx, -1[rax]
	and	edx, r8d
	movsx	eax, dx
	mov	ecx, edx
	sar	eax
	and	cx, 21845
	and	ax, 21845
	add	eax, ecx
	mov	edx, eax
	shr	ax, 2
	and	dx, 13107
	and	ax, 13107
	add	eax, edx
	mov	edx, eax
	shr	ax, 4
	and	dx, 3855
	and	ax, 1807
	add	eax, edx
	movzx	edx, WORD PTR 2[rdi]
	movzx	ecx, al
	shr	ax, 8
	add	eax, ecx
	movzx	eax, ax
	add	eax, edx
	mov	rdx, QWORD PTR jisx0212_2charset[rip]
	cdqe
	movzx	eax, WORD PTR [rdx+rax*2]
	rol	ax, 8
	mov	WORD PTR [rsi], ax
	mov	eax, 2
	ret
	.p2align 4,,10
	.p2align 3
.L6:
	lea	eax, -65280[rdx]
	cmp	eax, 95
	ja	.L7
	mov	eax, edx
	mov	rcx, QWORD PTR jisx0212_uni2indx_pageff[rip]
	sar	eax, 4
	cdqe
	lea	rdi, -16320[rcx+rax*4]
	jmp	.L4
	.cfi_endproc
.LFE0:
	.size	jisx0212_wctomb, .-jisx0212_wctomb
	.comm	jisx0212_uni2indx_pageff,8,8
	.comm	jisx0212_uni2indx_page4e,8,8
	.comm	jisx0212_uni2indx_page21,8,8
	.comm	jisx0212_uni2indx_page00,8,8
	.comm	jisx0212_2charset,8,8
	.comm	RET_TOOSMALL,4,4
	.comm	RET_ILUNI,4,4
	.ident	"GCC: (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0"
	.section	.note.GNU-stack,"",@progbits
	.section	.note.gnu.property,"a"
	.align 8
	.long	 1f - 0f
	.long	 4f - 1f
	.long	 5
0:
	.string	 "GNU"
1:
	.align 8
	.long	 0xc0000002
	.long	 3f - 2f
2:
	.long	 0x3
3:
	.align 8
4:

	.arch armv5t
	.eabi_attribute 20, 1
	.eabi_attribute 21, 1
	.eabi_attribute 23, 3
	.eabi_attribute 24, 1
	.eabi_attribute 25, 1
	.eabi_attribute 26, 2
	.eabi_attribute 30, 2
	.eabi_attribute 34, 0
	.eabi_attribute 18, 4
	.file	"extr_jisx0212.h_jisx0212_wctomb.c"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	jisx0212_wctomb, %function
jisx0212_wctomb:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 0, uses_anonymous_args = 0
	@ link register save eliminated.
	cmp	r3, #1
	ble	.L2
	cmp	r2, #1120
	bcs	.L3
	ldr	r0, .L18
	asr	r3, r2, #4
	ldr	r0, [r0]
	add	r3, r0, r3, lsl #2
.L4:
	cmp	r3, #0
	beq	.L7
	ldrh	r0, [r3]
	and	r2, r2, #15
	asr	ip, r0, r2
	tst	ip, #1
	bne	.L16
.L7:
	ldr	r3, .L18+4
	ldr	r0, [r3]
	bx	lr
.L3:
	sub	r3, r2, #8448
	cmp	r3, #47
	bls	.L17
	ldr	r3, .L18+8
	sub	r0, r2, #19968
	cmp	r0, r3
	bhi	.L6
	ldr	r0, .L18+12
	asr	r3, r2, #4
	ldr	r0, [r0]
	add	r3, r3, #1073741824
	sub	r3, r3, #1248
	add	r3, r0, r3, lsl #2
	b	.L4
.L2:
	ldr	r3, .L18+16
	ldr	r0, [r3]
	bx	lr
.L17:
	ldr	r0, .L18+20
	asr	r3, r2, #4
	ldr	r0, [r0]
	add	r3, r3, #1073741824
	sub	r3, r3, #528
	add	r3, r0, r3, lsl #2
	b	.L4
.L16:
	mvn	ip, #0
	bic	r2, r0, ip, lsl r2
	ldr	r0, .L18+24
	lsl	r2, r2, #16
	and	ip, r0, r2, asr #16
	and	r2, r0, r2, asr #17
	ldr	r0, .L18+28
	add	r2, ip, r2
	and	ip, r2, r0
	and	r2, r0, r2, lsr #2
	ldr	r0, .L18+32
	add	ip, ip, r2
	and	r2, ip, r0
	and	r0, r0, ip, lsr #4
	add	r2, r2, r0
	ldrh	r3, [r3, #2]
	ldr	ip, .L18+36
	and	r0, r2, #255
	add	r2, r0, r2, lsr #8
	add	r3, r3, r2
	ldr	r2, [ip]
	lsl	r3, r3, #1
	ldrh	r3, [r2, r3]
	mov	r0, #2
	lsr	r2, r3, #8
	strb	r3, [r1, #1]
	strb	r2, [r1]
	bx	lr
.L6:
	sub	r3, r2, #65280
	cmp	r3, #95
	bhi	.L7
	ldr	r0, .L18+40
	asr	r3, r2, #4
	ldr	r0, [r0]
	add	r3, r3, #1073741824
	sub	r3, r3, #4080
	add	r3, r0, r3, lsl #2
	b	.L4
.L19:
	.align	2
.L18:
	.word	jisx0212_uni2indx_page00
	.word	RET_ILUNI
	.word	20911
	.word	jisx0212_uni2indx_page4e
	.word	RET_TOOSMALL
	.word	jisx0212_uni2indx_page21
	.word	21845
	.word	13107
	.word	3855
	.word	jisx0212_2charset
	.word	jisx0212_uni2indx_pageff
	.size	jisx0212_wctomb, .-jisx0212_wctomb
	.comm	jisx0212_uni2indx_pageff,4,4
	.comm	jisx0212_uni2indx_page4e,4,4
	.comm	jisx0212_uni2indx_page21,4,4
	.comm	jisx0212_uni2indx_page00,4,4
	.comm	jisx0212_2charset,4,4
	.comm	RET_TOOSMALL,4,4
	.comm	RET_ILUNI,4,4
	.ident	"GCC: (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0"
	.section	.note.GNU-stack,"",%progbits
