// File: /workspace/github_c_makefile_star2_O2/vampirefrog[P]x68ksjis/sjis_unicode.c
// Function: sjis_char_to_unicode
uint32_t sjis_char_to_unicode(uint16_t sjis) {
	if(sjis >= 0x0000 && sjis <= 0x007f) return sjis_table[0x0000 + sjis - 0x0000];
	if(sjis >= 0x00a1 && sjis <= 0x00df) return sjis_table[0x0080 + sjis - 0x00a1];
	if(sjis >= 0x8080 && sjis <= 0x80fd) return sjis_table[0x00bf + sjis - 0x8080];
	if(sjis >= 0x8140 && sjis <= 0x81fc) return sjis_table[0x013d + sjis - 0x8140];
	if(sjis >= 0x8240 && sjis <= 0x82fc) return sjis_table[0x01fa + sjis - 0x8240];
	if(sjis >= 0x8340 && sjis <= 0x83fc) return sjis_table[0x02b7 + sjis - 0x8340];
	if(sjis >= 0x8440 && sjis <= 0x84fc) return sjis_table[0x0374 + sjis - 0x8440];
	if(sjis >= 0x889f && sjis <= 0x88fc) return sjis_table[0x0431 + sjis - 0x889f];
	if(sjis >= 0x8940 && sjis <= 0x89fc) return sjis_table[0x048f + sjis - 0x8940];
	if(sjis >= 0x8a40 && sjis <= 0x8afc) return sjis_table[0x054c + sjis - 0x8a40];
	if(sjis >= 0x8b40 && sjis <= 0x8bfc) return sjis_table[0x0609 + sjis - 0x8b40];
	if(sjis >= 0x8c40 && sjis <= 0x8cfc) return sjis_table[0x06c6 + sjis - 0x8c40];
	if(sjis >= 0x8d40 && sjis <= 0x8dfc) return sjis_table[0x0783 + sjis - 0x8d40];
	if(sjis >= 0x8e40 && sjis <= 0x8efc) return sjis_table[0x0840 + sjis - 0x8e40];
	if(sjis >= 0x8f40 && sjis <= 0x8ffc) return sjis_table[0x08fd + sjis - 0x8f40];
	if(sjis >= 0x9040 && sjis <= 0x90fc) return sjis_table[0x09ba + sjis - 0x9040];
	if(sjis >= 0x9140 && sjis <= 0x91fc) return sjis_table[0x0a77 + sjis - 0x9140];
	if(sjis >= 0x9240 && sjis <= 0x92fc) return sjis_table[0x0b34 + sjis - 0x9240];
	if(sjis >= 0x9340 && sjis <= 0x93fc) return sjis_table[0x0bf1 + sjis - 0x9340];
	if(sjis >= 0x9440 && sjis <= 0x94fc) return sjis_table[0x0cae + sjis - 0x9440];
	if(sjis >= 0x9540 && sjis <= 0x95fc) return sjis_table[0x0d6b + sjis - 0x9540];
	if(sjis >= 0x9640 && sjis <= 0x96fc) return sjis_table[0x0e28 + sjis - 0x9640];
	if(sjis >= 0x9740 && sjis <= 0x97fc) return sjis_table[0x0ee5 + sjis - 0x9740];
	if(sjis >= 0x9840 && sjis <= 0x9872) return sjis_table[0x0fa2 + sjis - 0x9840];
	if(sjis >= 0x989f && sjis <= 0x98fc) return sjis_table[0x0fd5 + sjis - 0x989f];
	if(sjis >= 0x9940 && sjis <= 0x99fc) return sjis_table[0x1033 + sjis - 0x9940];
	if(sjis >= 0x9a40 && sjis <= 0x9afc) return sjis_table[0x10f0 + sjis - 0x9a40];
	if(sjis >= 0x9b40 && sjis <= 0x9bfc) return sjis_table[0x11ad + sjis - 0x9b40];
	if(sjis >= 0x9c40 && sjis <= 0x9cfc) return sjis_table[0x126a + sjis - 0x9c40];
	if(sjis >= 0x9d40 && sjis <= 0x9dfc) return sjis_table[0x1327 + sjis - 0x9d40];
	if(sjis >= 0x9e40 && sjis <= 0x9efc) return sjis_table[0x13e4 + sjis - 0x9e40];
	if(sjis >= 0x9f40 && sjis <= 0x9ffc) return sjis_table[0x14a1 + sjis - 0x9f40];
	if(sjis >= 0xe040 && sjis <= 0xe0fc) return sjis_table[0x155e + sjis - 0xe040];
	if(sjis >= 0xe140 && sjis <= 0xe1fc) return sjis_table[0x161b + sjis - 0xe140];
	if(sjis >= 0xe240 && sjis <= 0xe2fc) return sjis_table[0x16d8 + sjis - 0xe240];
	if(sjis >= 0xe340 && sjis <= 0xe3fc) return sjis_table[0x1795 + sjis - 0xe340];
	if(sjis >= 0xe440 && sjis <= 0xe4fc) return sjis_table[0x1852 + sjis - 0xe440];
	if(sjis >= 0xe540 && sjis <= 0xe5fc) return sjis_table[0x190f + sjis - 0xe540];
	if(sjis >= 0xe640 && sjis <= 0xe6fc) return sjis_table[0x19cc + sjis - 0xe640];
	if(sjis >= 0xe740 && sjis <= 0xe7fc) return sjis_table[0x1a89 + sjis - 0xe740];
	if(sjis >= 0xe840 && sjis <= 0xe8fc) return sjis_table[0x1b46 + sjis - 0xe840];
	if(sjis >= 0xe940 && sjis <= 0xe9fc) return sjis_table[0x1c03 + sjis - 0xe940];
	if(sjis >= 0xea40 && sjis <= 0xeaa1) return sjis_table[0x1cc0 + sjis - 0xea40];
	if(sjis >= 0xeb9f && sjis <= 0xebf0) return sjis_table[0x1d22 + sjis - 0xeb9f];
	if(sjis >= 0xf000 && sjis <= 0xf3fd) return sjis_table[0x1d74 + sjis - 0xf000];
	return 0x203b; // ※
}

// Assembly:
cmpw $0x7f, %di
ja 0x16fa
movzwl %di, %edi
jmp 0x1ada
leal -0xa1(%rdi), %eax
cmpw $0x3e, %ax
ja 0x170e
addl $-0x21, %edi
jmp 0x1ada
leal 0x7f80(%rdi), %eax
cmpw $0x7d, %ax
ja 0x1725
addl $0xffff803f, %edi       # imm = 0xFFFF803F
jmp 0x1ada
leal 0x7ec0(%rdi), %eax
cmpw $0xbc, %ax
ja 0x173c
addl $0xffff7ffd, %edi       # imm = 0xFFFF7FFD
jmp 0x1ada
leal 0x7dc0(%rdi), %eax
cmpw $0xbc, %ax
ja 0x1753
addl $0xffff7fba, %edi       # imm = 0xFFFF7FBA
jmp 0x1ada
leal 0x7cc0(%rdi), %eax
cmpw $0xbc, %ax
ja 0x176a
addl $0xffff7f77, %edi       # imm = 0xFFFF7F77
jmp 0x1ada
leal 0x7bc0(%rdi), %eax
cmpw $0xbc, %ax
ja 0x1781
addl $0xffff7f34, %edi       # imm = 0xFFFF7F34
jmp 0x1ada
leal 0x7761(%rdi), %eax
cmpw $0x5d, %ax
ja 0x1798
addl $0xffff7b92, %edi       # imm = 0xFFFF7B92
jmp 0x1ada
leal 0x76c0(%rdi), %eax
cmpw $0xbc, %ax
ja 0x17af
addl $0xffff7b4f, %edi       # imm = 0xFFFF7B4F
jmp 0x1ada
leal 0x75c0(%rdi), %eax
cmpw $0xbc, %ax
ja 0x17c6
addl $0xffff7b0c, %edi       # imm = 0xFFFF7B0C
jmp 0x1ada
leal 0x74c0(%rdi), %eax
cmpw $0xbc, %ax
ja 0x17dd
addl $0xffff7ac9, %edi       # imm = 0xFFFF7AC9
jmp 0x1ada
leal 0x73c0(%rdi), %eax
cmpw $0xbc, %ax
ja 0x17f4
addl $0xffff7a86, %edi       # imm = 0xFFFF7A86
jmp 0x1ada
leal 0x72c0(%rdi), %eax
cmpw $0xbc, %ax
ja 0x180b
addl $0xffff7a43, %edi       # imm = 0xFFFF7A43
jmp 0x1ada
leal 0x71c0(%rdi), %eax
cmpw $0xbc, %ax
ja 0x1822
addl $0xffff7a00, %edi       # imm = 0xFFFF7A00
jmp 0x1ada
leal 0x70c0(%rdi), %eax
cmpw $0xbc, %ax
ja 0x1839
addl $0xffff79bd, %edi       # imm = 0xFFFF79BD
jmp 0x1ada
leal 0x6fc0(%rdi), %eax
cmpw $0xbc, %ax
ja 0x1850
addl $0xffff797a, %edi       # imm = 0xFFFF797A
jmp 0x1ada
leal 0x6ec0(%rdi), %eax
cmpw $0xbc, %ax
ja 0x1867
addl $0xffff7937, %edi       # imm = 0xFFFF7937
jmp 0x1ada
leal 0x6dc0(%rdi), %eax
cmpw $0xbc, %ax
ja 0x187e
addl $0xffff78f4, %edi       # imm = 0xFFFF78F4
jmp 0x1ada
leal 0x6cc0(%rdi), %eax
cmpw $0xbc, %ax
ja 0x1895
addl $0xffff78b1, %edi       # imm = 0xFFFF78B1
jmp 0x1ada
leal 0x6bc0(%rdi), %eax
cmpw $0xbc, %ax
ja 0x18ac
addl $0xffff786e, %edi       # imm = 0xFFFF786E
jmp 0x1ada
leal 0x6ac0(%rdi), %eax
cmpw $0xbc, %ax
ja 0x18c3
addl $0xffff782b, %edi       # imm = 0xFFFF782B
jmp 0x1ada
leal 0x69c0(%rdi), %eax
cmpw $0xbc, %ax
ja 0x18da
addl $0xffff77e8, %edi       # imm = 0xFFFF77E8
jmp 0x1ada
leal 0x68c0(%rdi), %eax
cmpw $0xbc, %ax
ja 0x18f1
addl $0xffff77a5, %edi       # imm = 0xFFFF77A5
jmp 0x1ada
leal 0x67c0(%rdi), %eax
cmpw $0x32, %ax
ja 0x1908
addl $0xffff7762, %edi       # imm = 0xFFFF7762
jmp 0x1ada
leal 0x6761(%rdi), %eax
cmpw $0x5d, %ax
ja 0x191f
addl $0xffff7736, %edi       # imm = 0xFFFF7736
jmp 0x1ada
leal 0x66c0(%rdi), %eax
cmpw $0xbc, %ax
ja 0x1936
addl $0xffff76f3, %edi       # imm = 0xFFFF76F3
jmp 0x1ada
leal 0x65c0(%rdi), %eax
cmpw $0xbc, %ax
ja 0x194d
addl $0xffff76b0, %edi       # imm = 0xFFFF76B0
jmp 0x1ada
leal 0x64c0(%rdi), %eax
cmpw $0xbc, %ax
ja 0x1964
addl $0xffff766d, %edi       # imm = 0xFFFF766D
jmp 0x1ada
leal 0x63c0(%rdi), %eax
cmpw $0xbc, %ax
ja 0x197b
addl $0xffff762a, %edi       # imm = 0xFFFF762A
jmp 0x1ada
leal 0x62c0(%rdi), %eax
cmpw $0xbc, %ax
ja 0x1992
addl $0xffff75e7, %edi       # imm = 0xFFFF75E7
jmp 0x1ada
leal 0x61c0(%rdi), %eax
cmpw $0xbc, %ax
ja 0x19a9
addl $0xffff75a4, %edi       # imm = 0xFFFF75A4
jmp 0x1ada
leal 0x60c0(%rdi), %eax
cmpw $0xbc, %ax
ja 0x19c0
addl $0xffff7561, %edi       # imm = 0xFFFF7561
jmp 0x1ada
leal 0x1fc0(%rdi), %eax
cmpw $0xbc, %ax
ja 0x19d7
addl $0xffff351e, %edi       # imm = 0xFFFF351E
jmp 0x1ada
leal 0x1ec0(%rdi), %eax
cmpw $0xbc, %ax
ja 0x19ee
addl $0xffff34db, %edi       # imm = 0xFFFF34DB
jmp 0x1ada
leal 0x1dc0(%rdi), %eax
cmpw $0xbc, %ax
ja 0x1a05
addl $0xffff3498, %edi       # imm = 0xFFFF3498
jmp 0x1ada
leal 0x1cc0(%rdi), %eax
cmpw $0xbc, %ax
ja 0x1a1c
addl $0xffff3455, %edi       # imm = 0xFFFF3455
jmp 0x1ada
leal 0x1bc0(%rdi), %eax
cmpw $0xbc, %ax
ja 0x1a33
addl $0xffff3412, %edi       # imm = 0xFFFF3412
jmp 0x1ada
leal 0x1ac0(%rdi), %eax
cmpw $0xbc, %ax
ja 0x1a4a
addl $0xffff33cf, %edi       # imm = 0xFFFF33CF
jmp 0x1ada
leal 0x19c0(%rdi), %eax
cmpw $0xbc, %ax
ja 0x1a5e
addl $0xffff338c, %edi       # imm = 0xFFFF338C
jmp 0x1ada
leal 0x18c0(%rdi), %eax
cmpw $0xbc, %ax
ja 0x1a72
addl $0xffff3349, %edi       # imm = 0xFFFF3349
jmp 0x1ada
leal 0x17c0(%rdi), %eax
cmpw $0xbc, %ax
ja 0x1a86
addl $0xffff3306, %edi       # imm = 0xFFFF3306
jmp 0x1ada
leal 0x16c0(%rdi), %eax
cmpw $0xbc, %ax
ja 0x1a9a
addl $0xffff32c3, %edi       # imm = 0xFFFF32C3
jmp 0x1ada
leal 0x15c0(%rdi), %eax
cmpw $0x61, %ax
ja 0x1aae
addl $0xffff3280, %edi       # imm = 0xFFFF3280
jmp 0x1ada
leal 0x1461(%rdi), %eax
cmpw $0x51, %ax
ja 0x1ac2
addl $0xffff3183, %edi       # imm = 0xFFFF3183
jmp 0x1ada
leal 0x1000(%rdi), %ecx
movl $0x203b, %eax           # imm = 0x203B
cmpw $0x3fd, %cx             # imm = 0x3FD
ja 0x1ae4
addl $0xffff2d74, %edi       # imm = 0xFFFF2D74
leaq 0x155f(%rip), %rax      # 0x3040
movl (%rax,%rdi,4), %eax
retq