// File: /workspace/github_c_makefile_star2_O1/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 0x176a
movzwl %di, %edi
jmp 0x1be1
leal -0xa1(%rdi), %eax
cmpw $0x3e, %ax
ja 0x177e
addl $-0x21, %edi
jmp 0x1be1
leal 0x7f80(%rdi), %eax
cmpw $0x7d, %ax
ja 0x1795
addl $0xffff803f, %edi       # imm = 0xFFFF803F
jmp 0x1be1
leal 0x7ec0(%rdi), %eax
movzwl %ax, %eax
cmpl $0xbc, %eax
ja 0x17b0
addl $0xffff7ffd, %edi       # imm = 0xFFFF7FFD
jmp 0x1be1
leal 0x7dc0(%rdi), %eax
movzwl %ax, %eax
cmpl $0xbc, %eax
ja 0x17cb
addl $0xffff7fba, %edi       # imm = 0xFFFF7FBA
jmp 0x1be1
leal 0x7cc0(%rdi), %eax
movzwl %ax, %eax
cmpl $0xbc, %eax
ja 0x17e6
addl $0xffff7f77, %edi       # imm = 0xFFFF7F77
jmp 0x1be1
leal 0x7bc0(%rdi), %eax
movzwl %ax, %eax
cmpl $0xbc, %eax
ja 0x1801
addl $0xffff7f34, %edi       # imm = 0xFFFF7F34
jmp 0x1be1
leal 0x7761(%rdi), %eax
cmpw $0x5d, %ax
ja 0x1818
addl $0xffff7b92, %edi       # imm = 0xFFFF7B92
jmp 0x1be1
leal 0x76c0(%rdi), %eax
movzwl %ax, %eax
cmpl $0xbc, %eax
ja 0x1833
addl $0xffff7b4f, %edi       # imm = 0xFFFF7B4F
jmp 0x1be1
leal 0x75c0(%rdi), %eax
movzwl %ax, %eax
cmpl $0xbc, %eax
ja 0x184e
addl $0xffff7b0c, %edi       # imm = 0xFFFF7B0C
jmp 0x1be1
leal 0x74c0(%rdi), %eax
movzwl %ax, %eax
cmpl $0xbc, %eax
ja 0x1869
addl $0xffff7ac9, %edi       # imm = 0xFFFF7AC9
jmp 0x1be1
leal 0x73c0(%rdi), %eax
movzwl %ax, %eax
cmpl $0xbc, %eax
ja 0x1884
addl $0xffff7a86, %edi       # imm = 0xFFFF7A86
jmp 0x1be1
leal 0x72c0(%rdi), %eax
movzwl %ax, %eax
cmpl $0xbc, %eax
ja 0x189f
addl $0xffff7a43, %edi       # imm = 0xFFFF7A43
jmp 0x1be1
leal 0x71c0(%rdi), %eax
movzwl %ax, %eax
cmpl $0xbc, %eax
ja 0x18ba
addl $0xffff7a00, %edi       # imm = 0xFFFF7A00
jmp 0x1be1
leal 0x70c0(%rdi), %eax
movzwl %ax, %eax
cmpl $0xbc, %eax
ja 0x18d5
addl $0xffff79bd, %edi       # imm = 0xFFFF79BD
jmp 0x1be1
leal 0x6fc0(%rdi), %eax
movzwl %ax, %eax
cmpl $0xbc, %eax
ja 0x18f0
addl $0xffff797a, %edi       # imm = 0xFFFF797A
jmp 0x1be1
leal 0x6ec0(%rdi), %eax
movzwl %ax, %eax
cmpl $0xbc, %eax
ja 0x190b
addl $0xffff7937, %edi       # imm = 0xFFFF7937
jmp 0x1be1
leal 0x6dc0(%rdi), %eax
movzwl %ax, %eax
cmpl $0xbc, %eax
ja 0x1926
addl $0xffff78f4, %edi       # imm = 0xFFFF78F4
jmp 0x1be1
leal 0x6cc0(%rdi), %eax
movzwl %ax, %eax
cmpl $0xbc, %eax
ja 0x1941
addl $0xffff78b1, %edi       # imm = 0xFFFF78B1
jmp 0x1be1
leal 0x6bc0(%rdi), %eax
movzwl %ax, %eax
cmpl $0xbc, %eax
ja 0x195c
addl $0xffff786e, %edi       # imm = 0xFFFF786E
jmp 0x1be1
leal 0x6ac0(%rdi), %eax
movzwl %ax, %eax
cmpl $0xbc, %eax
ja 0x1977
addl $0xffff782b, %edi       # imm = 0xFFFF782B
jmp 0x1be1
leal 0x69c0(%rdi), %eax
movzwl %ax, %eax
cmpl $0xbc, %eax
ja 0x1992
addl $0xffff77e8, %edi       # imm = 0xFFFF77E8
jmp 0x1be1
leal 0x68c0(%rdi), %eax
movzwl %ax, %eax
cmpl $0xbc, %eax
ja 0x19ad
addl $0xffff77a5, %edi       # imm = 0xFFFF77A5
jmp 0x1be1
leal 0x67c0(%rdi), %eax
cmpw $0x32, %ax
ja 0x19c4
addl $0xffff7762, %edi       # imm = 0xFFFF7762
jmp 0x1be1
leal 0x6761(%rdi), %eax
cmpw $0x5d, %ax
ja 0x19db
addl $0xffff7736, %edi       # imm = 0xFFFF7736
jmp 0x1be1
leal 0x66c0(%rdi), %eax
movzwl %ax, %eax
cmpl $0xbc, %eax
ja 0x19f6
addl $0xffff76f3, %edi       # imm = 0xFFFF76F3
jmp 0x1be1
leal 0x65c0(%rdi), %eax
movzwl %ax, %eax
cmpl $0xbc, %eax
ja 0x1a11
addl $0xffff76b0, %edi       # imm = 0xFFFF76B0
jmp 0x1be1
leal 0x64c0(%rdi), %eax
movzwl %ax, %eax
cmpl $0xbc, %eax
ja 0x1a2c
addl $0xffff766d, %edi       # imm = 0xFFFF766D
jmp 0x1be1
leal 0x63c0(%rdi), %eax
movzwl %ax, %eax
cmpl $0xbc, %eax
ja 0x1a47
addl $0xffff762a, %edi       # imm = 0xFFFF762A
jmp 0x1be1
leal 0x62c0(%rdi), %eax
movzwl %ax, %eax
cmpl $0xbc, %eax
ja 0x1a62
addl $0xffff75e7, %edi       # imm = 0xFFFF75E7
jmp 0x1be1
leal 0x61c0(%rdi), %eax
movzwl %ax, %eax
cmpl $0xbc, %eax
ja 0x1a7d
addl $0xffff75a4, %edi       # imm = 0xFFFF75A4
jmp 0x1be1
leal 0x60c0(%rdi), %eax
movzwl %ax, %eax
cmpl $0xbc, %eax
ja 0x1a98
addl $0xffff7561, %edi       # imm = 0xFFFF7561
jmp 0x1be1
leal 0x1fc0(%rdi), %eax
movzwl %ax, %eax
cmpl $0xbc, %eax
ja 0x1ab3
addl $0xffff351e, %edi       # imm = 0xFFFF351E
jmp 0x1be1
leal 0x1ec0(%rdi), %eax
movzwl %ax, %eax
cmpl $0xbc, %eax
ja 0x1ace
addl $0xffff34db, %edi       # imm = 0xFFFF34DB
jmp 0x1be1
leal 0x1dc0(%rdi), %eax
movzwl %ax, %eax
cmpl $0xbc, %eax
ja 0x1ae9
addl $0xffff3498, %edi       # imm = 0xFFFF3498
jmp 0x1be1
leal 0x1cc0(%rdi), %eax
movzwl %ax, %eax
cmpl $0xbc, %eax
ja 0x1b04
addl $0xffff3455, %edi       # imm = 0xFFFF3455
jmp 0x1be1
leal 0x1bc0(%rdi), %eax
movzwl %ax, %eax
cmpl $0xbc, %eax
ja 0x1b1f
addl $0xffff3412, %edi       # imm = 0xFFFF3412
jmp 0x1be1
leal 0x1ac0(%rdi), %eax
movzwl %ax, %eax
cmpl $0xbc, %eax
ja 0x1b3a
addl $0xffff33cf, %edi       # imm = 0xFFFF33CF
jmp 0x1be1
leal 0x19c0(%rdi), %eax
movzwl %ax, %eax
cmpl $0xbc, %eax
ja 0x1b55
addl $0xffff338c, %edi       # imm = 0xFFFF338C
jmp 0x1be1
leal 0x18c0(%rdi), %eax
movzwl %ax, %eax
cmpl $0xbc, %eax
ja 0x1b6d
addl $0xffff3349, %edi       # imm = 0xFFFF3349
jmp 0x1be1
leal 0x17c0(%rdi), %eax
movzwl %ax, %eax
cmpl $0xbc, %eax
ja 0x1b85
addl $0xffff3306, %edi       # imm = 0xFFFF3306
jmp 0x1be1
leal 0x16c0(%rdi), %eax
movzwl %ax, %eax
cmpl $0xbc, %eax
ja 0x1b9d
addl $0xffff32c3, %edi       # imm = 0xFFFF32C3
jmp 0x1be1
leal 0x15c0(%rdi), %eax
cmpw $0x61, %ax
ja 0x1bb1
addl $0xffff3280, %edi       # imm = 0xFFFF3280
jmp 0x1be1
leal 0x1461(%rdi), %eax
cmpw $0x51, %ax
ja 0x1bc5
addl $0xffff3183, %edi       # imm = 0xFFFF3183
jmp 0x1be1
leal 0x1000(%rdi), %eax
movzwl %ax, %ecx
movl $0x203b, %eax           # imm = 0x203B
cmpl $0x3fd, %ecx            # imm = 0x3FD
ja 0x1beb
addl $0xffff2d74, %edi       # imm = 0xFFFF2D74
leaq 0x1458(%rip), %rax      # 0x3040
movl (%rax,%rdi,4), %eax
retq