// File: /workspace/github_c_makefile_star2_O1/nurse[P]nkf/nkf.c
// Function: w_oconv16
void
w_oconv16(nkf_char c2, nkf_char c1)
{
    if (output_bom_f) {
	output_bom_f = FALSE;
	OUTPUT_UTF16_BYTES(0xFF, 0xFE);
    }

    if (c2 == EOF) {
	(*o_putc)(EOF);
	return;
    }

    if (c2 == 0 && nkf_char_unicode_p(c1)) {
	OUTPUT_UTF16(c1);
    } else if (c2) {
	nkf_char val, val2;
	val = e2w_conv(c2, c1);
	if (!val) return;
	val2 = e2w_combining(val, c2, c1);
	if (val2)
	    OUTPUT_UTF16(val2);
	OUTPUT_UTF16(val);
    } else {
	OUTPUT_UTF16_BYTES(c1, c2);
    }
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %rbx
pushq %rax
movl %esi, %ebx
movl %edi, %r14d
cmpb $0x1, 0x482c4(%rip)     # 0x55530
jne 0xd29a
movb $0x0, 0x482bb(%rip)     # 0x55530
movzbl 0x482b7(%rip), %r15d    # 0x55534
leal 0xfe(%r15), %edi
xorl $0xff, %r15d
callq *0x40037(%rip)          # 0x4d2c8
movl %r15d, %edi
callq *0x4002e(%rip)          # 0x4d2c8
testl %r14d, %r14d
je 0xd2af
cmpl $-0x1, %r14d
jne 0xd302
movl $0xffffffff, %edi       # imm = 0xFFFFFFFF
jmp 0xd45f
movl %ebx, %eax
andl $0xff000000, %eax       # imm = 0xFF000000
cmpl $0x1000000, %eax        # imm = 0x1000000
jne 0xd2f9
movl %ebx, %r14d
andl $0xffffff, %r14d        # imm = 0xFFFFFF
cmpl $0xffff, %r14d          # imm = 0xFFFF
ja 0xd3b4
movl %ebx, %ebp
shrl $0x8, %ebp
movl $0xff, %eax
andl %eax, %ebp
andl %eax, %ebx
movq 0x3ffdf(%rip), %rax     # 0x4d2c8
cmpb $0x1, 0x48244(%rip)     # 0x55534
je 0xd36c
movl %ebp, %edi
jmp 0xd45b
testl %r14d, %r14d
je 0xd401
movl %r14d, %edi
movl %ebx, %esi
callq 0x11ca5
testl %eax, %eax
je 0xd3f6
movl %eax, %ebp
movl %eax, %edi
movl %r14d, %esi
movl %ebx, %edx
callq 0x11e7b
testl %eax, %eax
je 0xd34b
movl %eax, %ebx
shrl $0x8, %ebx
movzbl %al, %eax
cmpb $0x0, 0x481ff(%rip)     # 0x55534
movl %ebx, %edi
cmovnel %eax, %edi
cmovel %eax, %ebx
callq *0x3ff85(%rip)          # 0x4d2c8
movl %ebx, %edi
callq *0x3ff7d(%rip)          # 0x4d2c8
cmpl $0xffff, %ebp           # imm = 0xFFFF
ja 0xd377
movl %ebp, %ebx
shrl $0x8, %ebx
movzbl %bpl, %ebp
movq 0x3ff65(%rip), %rax     # 0x4d2c8
cmpb $0x1, 0x481ca(%rip)     # 0x55534
je 0xd2f2
movl %ebx, %edi
callq *%rax
movl %ebp, %edi
jmp 0xd45f
cmpl $0x10ffff, %ebp         # imm = 0x10FFFF
ja 0xd3f6
movl %ebp, %r14d
shrl $0xa, %r14d
addl $0xd7c0, %r14d          # imm = 0xD7C0
movl %ebp, %ebx
andl $0x3ff, %ebx            # imm = 0x3FF
movq 0x3ff2c(%rip), %rax     # 0x4d2c8
cmpb $0x1, 0x48191(%rip)     # 0x55534
jne 0xd419
movzbl %r14b, %edi
callq *%rax
shrl $0x8, %r14d
movl %r14d, %edi
jmp 0xd425
cmpl $0x10ffff, %r14d        # imm = 0x10FFFF
ja 0xd3f6
shrl $0xa, %r14d
addl $0xd7c0, %r14d          # imm = 0xD7C0
movl %ebx, %ebp
andl $0x3ff, %ebp            # imm = 0x3FF
movq 0x3fef1(%rip), %rax     # 0x4d2c8
cmpb $0x1, 0x48156(%rip)     # 0x55534
jne 0xd46f
movzbl %r14b, %edi
callq *%rax
shrl $0x8, %r14d
movl %r14d, %edi
jmp 0xd47b
addq $0x8, %rsp
popq %rbx
popq %r14
popq %r15
popq %rbp
retq
movq 0x3fec0(%rip), %rax     # 0x4d2c8
cmpb $0x1, 0x48125(%rip)     # 0x55534
jne 0xd459
movl %ebx, %edi
callq *%rax
xorl %edi, %edi
jmp 0xd45f
movl %r14d, %edi
shrl $0x8, %edi
callq *%rax
movzbl %r14b, %edi
callq *0x3fe9d(%rip)          # 0x4d2c8
orl $0xdc00, %ebx           # imm = 0xDC00
movq 0x3fe90(%rip), %rax     # 0x4d2c8
cmpb $0x1, 0x480f5(%rip)     # 0x55534
jne 0xd44c
movzbl %bpl, %edi
callq *%rax
shrl $0x8, %ebx
jmp 0xd45d
shrl $0x8, %ebx
movl %ebx, %edi
callq *%rax
movzbl %bpl, %edi
jmp 0xd45f
xorl %edi, %edi
callq *%rax
movl %ebx, %edi
addq $0x8, %rsp
popq %rbx
popq %r14
popq %r15
popq %rbp
jmpq *0x3fe59(%rip)          # 0x4d2c8
movl %r14d, %edi
shrl $0x8, %edi
callq *%rax
movzbl %r14b, %edi
callq *0x3fe47(%rip)          # 0x4d2c8
orl $0xdc00, %ebp           # imm = 0xDC00
movq 0x3fe3a(%rip), %rax     # 0x4d2c8
cmpb $0x1, 0x4809f(%rip)     # 0x55534
jne 0xd4a4
movzbl %bl, %edi
callq *%rax
shrl $0x8, %ebp
jmp 0xd370
shrl $0x8, %ebp
movl %ebp, %edi
callq *%rax
movzbl %bl, %edi
jmp 0xd45f