LLM4Binary/decompile-bench-makefile huggingface dataset:
// File: /workspace/github_c_makefile_star2_O0/nurse[P]nkf/nkf.c
// Function: status_disable
static void
status_disable(struct input_code *ptr)
{
    ptr->stat = -1;
    ptr->buf[0] = -1;
    code_score(ptr);
    if (iconv == ptr->iconv_func) set_iconv(FALSE, 0);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x10, %rsp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rax
movl $0xffffffff, 0x8(%rax)  # imm = 0xFFFFFFFF
movq -0x8(%rbp), %rax
movl $0xffffffff, 0x14(%rax) # imm = 0xFFFFFFFF
movq -0x8(%rbp), %rdi
callq 0x13bd0
movq 0x3e4f6(%rip), %rax     # 0x522b8
movq -0x8(%rbp), %rcx
cmpq 0x28(%rcx), %rax
jne 0x13dd7
xorl %edi, %edi
xorl %eax, %eax
movl %eax, %esi
callq 0x135a0
addq $0x10, %rsp
popq %rbp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/nurse[P]nkf/nkf.c
// Function: nkf_buf_new
static nkf_buf_t *
nkf_buf_new(int length)
{
    nkf_buf_t *buf = nkf_xmalloc(sizeof(nkf_buf_t));
    buf->ptr = nkf_xmalloc(sizeof(nkf_char) * length);
    buf->capa = length;
    buf->len = 0;
    return buf;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x10, %rsp
movl %edi, -0x4(%rbp)
movl $0x18, %edi
callq 0x11d50
movq %rax, -0x10(%rbp)
movslq -0x4(%rbp), %rdi
shlq $0x2, %rdi
callq 0x11d50
movq %rax, %rcx
movq -0x10(%rbp), %rax
movq %rcx, 0x10(%rax)
movslq -0x4(%rbp), %rcx
movq -0x10(%rbp), %rax
movq %rcx, (%rax)
movq -0x10(%rbp), %rax
movq $0x0, 0x8(%rax)
movq -0x10(%rbp), %rax
addq $0x10, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/nurse[P]nkf/nkf.c
// Function: nkf_enc_find
static nkf_encoding*
nkf_enc_find(const char *name)
{
    int idx = -1;
    idx = nkf_enc_find_index(name);
    if (idx < 0) return 0;
    return nkf_enc_from_index(idx);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x10(%rbp)
movl $0xffffffff, -0x14(%rbp) # imm = 0xFFFFFFFF
movq -0x10(%rbp), %rdi
callq 0x14570
movl %eax, -0x14(%rbp)
cmpl $0x0, -0x14(%rbp)
jge 0x13faf
movq $0x0, -0x8(%rbp)
jmp 0x13fbb
movl -0x14(%rbp), %edi
callq 0x144a0
movq %rax, -0x8(%rbp)
movq -0x8(%rbp), %rax
addq $0x20, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/nurse[P]nkf/nkf.c
// Function: encode_fallback_html
static void
encode_fallback_html(nkf_char c)
{
    (*oconv)(0, '&');
    (*oconv)(0, '#');
    c &= VALUE_MASK;
    if(c >= NKF_INT32_C(1000000))
	(*oconv)(0, 0x30+(c/NKF_INT32_C(1000000))%10);
    if(c >= NKF_INT32_C(100000))
	(*oconv)(0, 0x30+(c/NKF_INT32_C(100000) )%10);
    if(c >= 10000)
	(*oconv)(0, 0x30+(c/10000  )%10);
    if(c >= 1000)
	(*oconv)(0, 0x30+(c/1000   )%10);
    if(c >= 100)
	(*oconv)(0, 0x30+(c/100    )%10);
    if(c >= 10)
	(*oconv)(0, 0x30+(c/10     )%10);
    if(c >= 0)
	(*oconv)(0, 0x30+ c         %10);
    (*oconv)(0, ';');
    return;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x40, %rsp
movl %edi, -0x4(%rbp)
xorl %edi, %edi
movl $0x26, %esi
callq *0x3e2b0(%rip)          # 0x52298
xorl %edi, %edi
movl $0x23, %esi
callq *0x3e2a3(%rip)          # 0x52298
movl -0x4(%rbp), %eax
andl $0xffffff, %eax         # imm = 0xFFFFFF
movl %eax, -0x4(%rbp)
cmpl $0xf4240, -0x4(%rbp)    # imm = 0xF4240
jl 0x14034
movq 0x3e288(%rip), %rax     # 0x52298
movq %rax, -0x10(%rbp)
movl -0x4(%rbp), %eax
movl $0xf4240, %ecx          # imm = 0xF4240
cltd
idivl %ecx
movl $0xa, %ecx
cltd
idivl %ecx
movq -0x10(%rbp), %rax
movl %edx, %esi
addl $0x30, %esi
xorl %edi, %edi
callq *%rax
cmpl $0x186a0, -0x4(%rbp)    # imm = 0x186A0
jl 0x14068
movq 0x3e254(%rip), %rax     # 0x52298
movq %rax, -0x18(%rbp)
movl -0x4(%rbp), %eax
movl $0x186a0, %ecx          # imm = 0x186A0
cltd
idivl %ecx
movl $0xa, %ecx
cltd
idivl %ecx
movq -0x18(%rbp), %rax
movl %edx, %esi
addl $0x30, %esi
xorl %edi, %edi
callq *%rax
cmpl $0x2710, -0x4(%rbp)     # imm = 0x2710
jl 0x1409c
movq 0x3e220(%rip), %rax     # 0x52298
movq %rax, -0x20(%rbp)
movl -0x4(%rbp), %eax
movl $0x2710, %ecx           # imm = 0x2710
cltd
idivl %ecx
movl $0xa, %ecx
cltd
idivl %ecx
movq -0x20(%rbp), %rax
movl %edx, %esi
addl $0x30, %esi
xorl %edi, %edi
callq *%rax
cmpl $0x3e8, -0x4(%rbp)      # imm = 0x3E8
jl 0x140d0
movq 0x3e1ec(%rip), %rax     # 0x52298
movq %rax, -0x28(%rbp)
movl -0x4(%rbp), %eax
movl $0x3e8, %ecx            # imm = 0x3E8
cltd
idivl %ecx
movl $0xa, %ecx
cltd
idivl %ecx
movq -0x28(%rbp), %rax
movl %edx, %esi
addl $0x30, %esi
xorl %edi, %edi
callq *%rax
cmpl $0x64, -0x4(%rbp)
jl 0x14101
movq 0x3e1bb(%rip), %rax     # 0x52298
movq %rax, -0x30(%rbp)
movl -0x4(%rbp), %eax
movl $0x64, %ecx
cltd
idivl %ecx
movl $0xa, %ecx
cltd
idivl %ecx
movq -0x30(%rbp), %rax
movl %edx, %esi
addl $0x30, %esi
xorl %edi, %edi
callq *%rax
cmpl $0xa, -0x4(%rbp)
jl 0x14132
movq 0x3e18a(%rip), %rax     # 0x52298
movq %rax, -0x38(%rbp)
movl -0x4(%rbp), %eax
movl $0xa, %ecx
cltd
idivl %ecx
movl $0xa, %ecx
cltd
idivl %ecx
movq -0x38(%rbp), %rax
movl %edx, %esi
addl $0x30, %esi
xorl %edi, %edi
callq *%rax
cmpl $0x0, -0x4(%rbp)
jl 0x1415b
movq 0x3e159(%rip), %rax     # 0x52298
movq %rax, -0x40(%rbp)
movl -0x4(%rbp), %eax
movl $0xa, %ecx
cltd
idivl %ecx
movq -0x40(%rbp), %rax
movl %edx, %esi
addl $0x30, %esi
xorl %edi, %edi
callq *%rax
xorl %edi, %edi
movl $0x3b, %esi
callq *0x3e130(%rip)          # 0x52298
addq $0x40, %rsp
popq %rbp
retq
nop
// File: /workspace/github_c_makefile_star2_O0/nurse[P]nkf/nkf.c
// Function: encode_fallback_xml
static void
encode_fallback_xml(nkf_char c)
{
    (*oconv)(0, '&');
    (*oconv)(0, '#');
    (*oconv)(0, 'x');
    nkf_each_char_to_hex(oconv, c);
    (*oconv)(0, ';');
    return;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x10, %rsp
movl %edi, -0x4(%rbp)
xorl %edi, %edi
movl $0x26, %esi
callq *0x3e110(%rip)          # 0x52298
xorl %edi, %edi
movl $0x23, %esi
callq *0x3e103(%rip)          # 0x52298
xorl %edi, %edi
movl $0x78, %esi
callq *0x3e0f6(%rip)          # 0x52298
movq 0x3e0ef(%rip), %rdi     # 0x52298
movl -0x4(%rbp), %esi
callq 0x14760
xorl %edi, %edi
movl $0x3b, %esi
callq *0x3e0da(%rip)          # 0x52298
addq $0x10, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/nurse[P]nkf/nkf.c
// Function: encode_fallback_perl
static void
encode_fallback_perl(nkf_char c)
{
    (*oconv)(0, '\\');
    (*oconv)(0, 'x');
    (*oconv)(0, '{');
    nkf_each_char_to_hex(oconv, c);
    (*oconv)(0, '}');
    return;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x10, %rsp
movl %edi, -0x4(%rbp)
xorl %edi, %edi
movl $0x5c, %esi
callq *0x3de80(%rip)          # 0x52298
xorl %edi, %edi
movl $0x78, %esi
callq *0x3de73(%rip)          # 0x52298
xorl %edi, %edi
movl $0x7b, %esi
callq *0x3de66(%rip)          # 0x52298
movq 0x3de5f(%rip), %rdi     # 0x52298
movl -0x4(%rbp), %esi
callq 0x14760
xorl %edi, %edi
movl $0x7d, %esi
callq *0x3de4a(%rip)          # 0x52298
addq $0x10, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/nurse[P]nkf/nkf.c
// Function: nkf_enc_find_index
static int
nkf_enc_find_index(const char *name)
{
    int i;
    if (name[0] == 'X' && *(name+1) == '-') name += 2;
    for (i = 0; encoding_name_to_id_table[i].id >= 0; i++) {
	if (nkf_str_caseeql(encoding_name_to_id_table[i].name, name)) {
	    return encoding_name_to_id_table[i].id;
	}
    }
    return -1;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x10(%rbp)
movq -0x10(%rbp), %rax
movsbl (%rax), %eax
cmpl $0x58, %eax
jne 0x145a1
movq -0x10(%rbp), %rax
movsbl 0x1(%rax), %eax
cmpl $0x2d, %eax
jne 0x145a1
movq -0x10(%rbp), %rax
addq $0x2, %rax
movq %rax, -0x10(%rbp)
movl $0x0, -0x14(%rbp)
movslq -0x14(%rbp), %rcx
leaq 0x37a0d(%rip), %rax     # 0x4bfc0
shlq $0x4, %rcx
addq %rcx, %rax
cmpl $0x0, 0x8(%rax)
jl 0x1460a
movslq -0x14(%rbp), %rcx
leaq 0x379f5(%rip), %rax     # 0x4bfc0
shlq $0x4, %rcx
addq %rcx, %rax
movq (%rax), %rdi
movq -0x10(%rbp), %rsi
callq 0x14620
cmpl $0x0, %eax
je 0x145fd
movslq -0x14(%rbp), %rcx
leaq 0x379d2(%rip), %rax     # 0x4bfc0
shlq $0x4, %rcx
addq %rcx, %rax
movl 0x8(%rax), %eax
movl %eax, -0x4(%rbp)
jmp 0x14611
jmp 0x145ff
movl -0x14(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x14(%rbp)
jmp 0x145a8
movl $0xffffffff, -0x4(%rbp) # imm = 0xFFFFFFFF
movl -0x4(%rbp), %eax
addq $0x20, %rsp
popq %rbp
retq
nopw (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/nurse[P]nkf/nkf.c
// Function: nkf_str_caseeql
static int
nkf_str_caseeql(const char *src, const char *target)
{
    int i;
    for (i = 0; src[i] && target[i]; i++) {
	if (nkf_toupper(src[i]) != nkf_toupper(target[i])) return FALSE;
    }
    if (src[i] || target[i]) return FALSE;
    else return TRUE;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
movq %rdi, -0x10(%rbp)
movq %rsi, -0x18(%rbp)
movl $0x0, -0x1c(%rbp)
movq -0x10(%rbp), %rax
movslq -0x1c(%rbp), %rcx
movsbl (%rax,%rcx), %ecx
xorl %eax, %eax
cmpl $0x0, %ecx
movb %al, -0x1d(%rbp)
je 0x1465e
movq -0x18(%rbp), %rax
movslq -0x1c(%rbp), %rcx
movsbl (%rax,%rcx), %eax
cmpl $0x0, %eax
setne %al
movb %al, -0x1d(%rbp)
movb -0x1d(%rbp), %al
testb $0x1, %al
jne 0x1466a
jmp 0x14725
movq -0x10(%rbp), %rax
movslq -0x1c(%rbp), %rcx
movsbl (%rax,%rcx), %ecx
movl $0x61, %eax
cmpl %ecx, %eax
jg 0x146a4
movq -0x10(%rbp), %rax
movslq -0x1c(%rbp), %rcx
movsbl (%rax,%rcx), %eax
cmpl $0x7a, %eax
jg 0x146a4
movq -0x10(%rbp), %rax
movslq -0x1c(%rbp), %rcx
movsbl (%rax,%rcx), %eax
subl $0x20, %eax
movl %eax, -0x24(%rbp)
jmp 0x146b3
movq -0x10(%rbp), %rax
movslq -0x1c(%rbp), %rcx
movsbl (%rax,%rcx), %eax
movl %eax, -0x24(%rbp)
movl -0x24(%rbp), %eax
movl %eax, -0x28(%rbp)
movq -0x18(%rbp), %rax
movslq -0x1c(%rbp), %rcx
movsbl (%rax,%rcx), %ecx
movl $0x61, %eax
cmpl %ecx, %eax
jg 0x146f3
movq -0x18(%rbp), %rax
movslq -0x1c(%rbp), %rcx
movsbl (%rax,%rcx), %eax
cmpl $0x7a, %eax
jg 0x146f3
movq -0x18(%rbp), %rax
movslq -0x1c(%rbp), %rcx
movsbl (%rax,%rcx), %eax
subl $0x20, %eax
movl %eax, -0x2c(%rbp)
jmp 0x14702
movq -0x18(%rbp), %rax
movslq -0x1c(%rbp), %rcx
movsbl (%rax,%rcx), %eax
movl %eax, -0x2c(%rbp)
movl -0x28(%rbp), %eax
movl -0x2c(%rbp), %ecx
cmpl %ecx, %eax
je 0x14715
movl $0x0, -0x4(%rbp)
jmp 0x14757
jmp 0x14717
movl -0x1c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
jmp 0x14633
movq -0x10(%rbp), %rax
movslq -0x1c(%rbp), %rcx
movsbl (%rax,%rcx), %eax
cmpl $0x0, %eax
jne 0x14747
movq -0x18(%rbp), %rax
movslq -0x1c(%rbp), %rcx
movsbl (%rax,%rcx), %eax
cmpl $0x0, %eax
je 0x14750
movl $0x0, -0x4(%rbp)
jmp 0x14757
movl $0x1, -0x4(%rbp)
movl -0x4(%rbp), %eax
popq %rbp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/nurse[P]nkf/nkf.c
// Function: nkf_each_char_to_hex
static void
nkf_each_char_to_hex(void (*f)(nkf_char c2,nkf_char c1), nkf_char c)
{
    int shift = 20;
    c &= VALUE_MASK;
    while(shift >= 0){
	if(c >= NKF_INT32_C(1)<<shift){
	    while(shift >= 0){
		(*f)(0, bin2hex(c>>shift));
		shift -= 4;
	    }
	}else{
	    shift -= 4;
	}
    }
    return;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x10, %rsp
movq %rdi, -0x8(%rbp)
movl %esi, -0xc(%rbp)
movl $0x14, -0x10(%rbp)
movl -0xc(%rbp), %eax
andl $0xffffff, %eax         # imm = 0xFFFFFF
movl %eax, -0xc(%rbp)
cmpl $0x0, -0x10(%rbp)
jl 0x147dd
movl -0xc(%rbp), %eax
movl -0x10(%rbp), %ecx
movl $0x1, %edx
shll %cl, %edx
movl %edx, %ecx
cmpl %ecx, %eax
jl 0x147d2
jmp 0x1479c
cmpl $0x0, -0x10(%rbp)
jl 0x147d0
movq -0x8(%rbp), %rax
movl -0xc(%rbp), %edx
movl -0x10(%rbp), %ecx
sarl %cl, %edx
movl %edx, %ecx
andl $0xf, %ecx
movslq %ecx, %rdx
leaq 0x90ee(%rip), %rcx      # 0x1d8ab
movsbl (%rcx,%rdx), %esi
xorl %edi, %edi
callq *%rax
movl -0x10(%rbp), %eax
subl $0x4, %eax
movl %eax, -0x10(%rbp)
jmp 0x1479c
jmp 0x147db
movl -0x10(%rbp), %eax
subl $0x4, %eax
movl %eax, -0x10(%rbp)
jmp 0x14781
addq $0x10, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/nurse[P]nkf/nkf.c
// Function: nkf_default_encoding
static nkf_encoding*
nkf_default_encoding(void)
{
    nkf_encoding *enc = 0;
#ifdef DEFAULT_CODE_LOCALE
    enc = nkf_locale_encoding();
#elif defined(DEFAULT_ENCIDX)
    enc = nkf_enc_from_index(DEFAULT_ENCIDX);
#endif
    if (!enc) enc = nkf_utf8_encoding();
    return enc;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x10, %rsp
movq $0x0, -0x8(%rbp)
callq 0x14830
movq %rax, -0x8(%rbp)
cmpq $0x0, -0x8(%rbp)
jne 0x14819
callq 0x14870
movq %rax, -0x8(%rbp)
movq -0x8(%rbp), %rax
addq $0x10, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/nurse[P]nkf/nkf.c
// Function: nkf_locale_encoding
static nkf_encoding*
nkf_locale_encoding(void)
{
    nkf_encoding *enc = 0;
    const char *encname = nkf_locale_charmap();
    if (encname)
	enc = nkf_enc_find(encname);
    return enc;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x10, %rsp
movq $0x0, -0x8(%rbp)
callq 0x14890
movq %rax, -0x10(%rbp)
cmpq $0x0, -0x10(%rbp)
je 0x1485d
movq -0x10(%rbp), %rdi
callq 0x13f80
movq %rax, -0x8(%rbp)
movq -0x8(%rbp), %rax
addq $0x10, %rsp
popq %rbp
retq
nopw (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/nurse[P]nkf/nkf.c
// Function: eol_conv
static void
eol_conv(nkf_char c2, nkf_char c1)
{
    if (guess_f && input_eol != EOF) {
	if (c2 == 0 && c1 == LF) {
	    if (!input_eol) input_eol = prev_cr ? CRLF : LF;
	    else if (input_eol != (prev_cr ? CRLF : LF)) input_eol = EOF;
	} else if (c2 == 0 && c1 == CR && input_eol == LF) input_eol = EOF;
	else if (!prev_cr);
	else if (!input_eol) input_eol = CR;
	else if (input_eol != CR) input_eol = EOF;
    }
    if (prev_cr || (c2 == 0 && c1 == LF)) {
	prev_cr = 0;
	if (eolmode_f != LF) (*o_eol_conv)(0, CR);
	if (eolmode_f != CR) (*o_eol_conv)(0, LF);
    }
    if (c2 == 0 && c1 == CR) prev_cr = CR;
    else if (c2 != 0 || c1 != LF) (*o_eol_conv)(c2, c1);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x10, %rsp
movl %edi, -0x4(%rbp)
movl %esi, -0x8(%rbp)
cmpl $0x0, 0x3c4bb(%rip)     # 0x52410
je 0x16027
cmpl $-0x1, 0x444de(%rip)    # 0x5a440
je 0x16027
cmpl $0x0, -0x4(%rbp)
jne 0x15fc9
cmpl $0xa, -0x8(%rbp)
jne 0x15fc9
cmpl $0x0, 0x444c5(%rip)     # 0x5a440
jne 0x15f9b
movl 0x446dd(%rip), %edx     # 0x5a660
movl $0xa, %eax
movl $0xd0a, %ecx            # imm = 0xD0A
cmpl $0x0, %edx
cmovnel %ecx, %eax
movl %eax, 0x444a7(%rip)     # 0x5a440
jmp 0x15fc7
movl 0x4449f(%rip), %eax     # 0x5a440
movl 0x446b9(%rip), %esi     # 0x5a660
movl $0xa, %ecx
movl $0xd0a, %edx            # imm = 0xD0A
cmpl $0x0, %esi
cmovnel %edx, %ecx
cmpl %ecx, %eax
je 0x15fc5
movl $0xffffffff, 0x4447b(%rip) # imm = 0xFFFFFFFF
jmp 0x15fc7
jmp 0x16025
cmpl $0x0, -0x4(%rbp)
jne 0x15fea
cmpl $0xd, -0x8(%rbp)
jne 0x15fea
cmpl $0xa, 0x44464(%rip)     # 0x5a440
jne 0x15fea
movl $0xffffffff, 0x44458(%rip) # imm = 0xFFFFFFFF
jmp 0x16023
cmpl $0x0, 0x4466f(%rip)     # 0x5a660
jne 0x15ff5
jmp 0x16021
cmpl $0x0, 0x44444(%rip)     # 0x5a440
jne 0x1600a
movl $0xd, 0x44438(%rip)     # 0x5a440
jmp 0x1601f
cmpl $0xd, 0x4442f(%rip)     # 0x5a440
je 0x1601d
movl $0xffffffff, 0x44423(%rip) # imm = 0xFFFFFFFF
jmp 0x1601f
jmp 0x16021
jmp 0x16023
jmp 0x16025
jmp 0x16027
cmpl $0x0, 0x44632(%rip)     # 0x5a660
jne 0x1603c
cmpl $0x0, -0x4(%rbp)
jne 0x16074
cmpl $0xa, -0x8(%rbp)
jne 0x16074
movl $0x0, 0x4461a(%rip)     # 0x5a660
cmpl $0xa, 0x445ab(%rip)     # 0x5a5f8
je 0x1605c
xorl %edi, %edi
movl $0xd, %esi
callq *0x3c284(%rip)          # 0x522e0
cmpl $0xd, 0x44595(%rip)     # 0x5a5f8
je 0x16072
xorl %edi, %edi
movl $0xa, %esi
callq *0x3c26e(%rip)          # 0x522e0
jmp 0x16074
cmpl $0x0, -0x4(%rbp)
jne 0x1608c
cmpl $0xd, -0x8(%rbp)
jne 0x1608c
movl $0xd, 0x445d6(%rip)     # 0x5a660
jmp 0x160a9
cmpl $0x0, -0x4(%rbp)
jne 0x16098
cmpl $0xa, -0x8(%rbp)
je 0x160a7
movq 0x3c241(%rip), %rax     # 0x522e0
movl -0x4(%rbp), %edi
movl -0x8(%rbp), %esi
callq *%rax
jmp 0x160a9
addq $0x10, %rsp
popq %rbp
retq
nop
// File: /workspace/github_c_makefile_star2_O0/nurse[P]nkf/nkf.c
// Function: rot_conv
static void
rot_conv(nkf_char c2, nkf_char c1)
{
    if (c2 == 0 || c2 == JIS_X_0201_1976_K || c2 == ISO_8859_1) {
	c1 = rot13(c1);
    } else if (c2) {
	c1 = rot47(c1);
	c2 = rot47(c2);
    }
    (*o_rot_conv)(c2,c1);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x40, %rsp
movl %edi, -0x4(%rbp)
movl %esi, -0x8(%rbp)
cmpl $0x0, -0x4(%rbp)
je 0x160d7
cmpl $0x1013, -0x4(%rbp)     # imm = 0x1013
je 0x160d7
cmpl $0x1, -0x4(%rbp)
jne 0x16166
cmpl $0x41, -0x8(%rbp)
jge 0x160e5
movl -0x8(%rbp), %eax
movl %eax, -0xc(%rbp)
jmp 0x1615b
cmpl $0x4d, -0x8(%rbp)
jg 0x160f6
movl -0x8(%rbp), %eax
addl $0xd, %eax
movl %eax, -0x10(%rbp)
jmp 0x16155
cmpl $0x5a, -0x8(%rbp)
jg 0x16107
movl -0x8(%rbp), %eax
subl $0xd, %eax
movl %eax, -0x14(%rbp)
jmp 0x1614f
cmpl $0x61, -0x8(%rbp)
jge 0x16115
movl -0x8(%rbp), %eax
movl %eax, -0x18(%rbp)
jmp 0x16149
cmpl $0x6d, -0x8(%rbp)
jg 0x16126
movl -0x8(%rbp), %eax
addl $0xd, %eax
movl %eax, -0x1c(%rbp)
jmp 0x16143
cmpl $0x7a, -0x8(%rbp)
jg 0x16137
movl -0x8(%rbp), %eax
subl $0xd, %eax
movl %eax, -0x20(%rbp)
jmp 0x1613d
movl -0x8(%rbp), %eax
movl %eax, -0x20(%rbp)
movl -0x20(%rbp), %eax
movl %eax, -0x1c(%rbp)
movl -0x1c(%rbp), %eax
movl %eax, -0x18(%rbp)
movl -0x18(%rbp), %eax
movl %eax, -0x14(%rbp)
movl -0x14(%rbp), %eax
movl %eax, -0x10(%rbp)
movl -0x10(%rbp), %eax
movl %eax, -0xc(%rbp)
movl -0xc(%rbp), %eax
movl %eax, -0x8(%rbp)
jmp 0x16202
cmpl $0x0, -0x4(%rbp)
je 0x16200
cmpl $0x21, -0x8(%rbp)
jge 0x1617e
movl -0x8(%rbp), %eax
movl %eax, -0x24(%rbp)
jmp 0x161b2
cmpl $0x4f, -0x8(%rbp)
jg 0x1618f
movl -0x8(%rbp), %eax
addl $0x2f, %eax
movl %eax, -0x28(%rbp)
jmp 0x161ac
cmpl $0x7e, -0x8(%rbp)
jg 0x161a0
movl -0x8(%rbp), %eax
subl $0x2f, %eax
movl %eax, -0x2c(%rbp)
jmp 0x161a6
movl -0x8(%rbp), %eax
movl %eax, -0x2c(%rbp)
movl -0x2c(%rbp), %eax
movl %eax, -0x28(%rbp)
movl -0x28(%rbp), %eax
movl %eax, -0x24(%rbp)
movl -0x24(%rbp), %eax
movl %eax, -0x8(%rbp)
cmpl $0x21, -0x4(%rbp)
jge 0x161c6
movl -0x4(%rbp), %eax
movl %eax, -0x30(%rbp)
jmp 0x161fa
cmpl $0x4f, -0x4(%rbp)
jg 0x161d7
movl -0x4(%rbp), %eax
addl $0x2f, %eax
movl %eax, -0x34(%rbp)
jmp 0x161f4
cmpl $0x7e, -0x4(%rbp)
jg 0x161e8
movl -0x4(%rbp), %eax
subl $0x2f, %eax
movl %eax, -0x38(%rbp)
jmp 0x161ee
movl -0x4(%rbp), %eax
movl %eax, -0x38(%rbp)
movl -0x38(%rbp), %eax
movl %eax, -0x34(%rbp)
movl -0x34(%rbp), %eax
movl %eax, -0x30(%rbp)
movl -0x30(%rbp), %eax
movl %eax, -0x4(%rbp)
jmp 0x16202
movq 0x3c0df(%rip), %rax     # 0x522e8
movl -0x4(%rbp), %edi
movl -0x8(%rbp), %esi
callq *%rax
addq $0x40, %rsp
popq %rbp
retq
nopw (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/nurse[P]nkf/nkf.c
// Function: iso2022jp_check_conv
static void
iso2022jp_check_conv(nkf_char c2, nkf_char c1)
{
#define RANGE_NUM_MAX 18
    static const nkf_char range[RANGE_NUM_MAX][2] = {
	{0x222f, 0x2239,},
	{0x2242, 0x2249,},
	{0x2251, 0x225b,},
	{0x226b, 0x2271,},
	{0x227a, 0x227d,},
	{0x2321, 0x232f,},
	{0x233a, 0x2340,},
	{0x235b, 0x2360,},
	{0x237b, 0x237e,},
	{0x2474, 0x247e,},
	{0x2577, 0x257e,},
	{0x2639, 0x2640,},
	{0x2659, 0x267e,},
	{0x2742, 0x2750,},
	{0x2772, 0x277e,},
	{0x2841, 0x287e,},
	{0x4f54, 0x4f7e,},
	{0x7425, 0x747e},
    };
    nkf_char i;
    nkf_char start, end, c;

    if(c2 >= 0x00 && c2 <= 0x20 && c1 >= 0x7f && c1 <= 0xff) {
	c2 = GETA1;
	c1 = GETA2;
    }
    if((c2 >= 0x29 && c2 <= 0x2f) || (c2 >= 0x75 && c2 <= 0x7e)) {
	c2 = GETA1;
	c1 = GETA2;
    }

    for (i = 0; i < RANGE_NUM_MAX; i++) {
	start = range[i][0];
	end   = range[i][1];
	c     = (c2 << 8) + c1;
	if (c >= start && c <= end) {
	    c2 = GETA1;
	    c1 = GETA2;
	}
    }
    (*o_iso2022jp_check_conv)(c2,c1);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movl %edi, -0x4(%rbp)
movl %esi, -0x8(%rbp)
cmpl $0x0, -0x4(%rbp)
jl 0x16257
cmpl $0x20, -0x4(%rbp)
jg 0x16257
cmpl $0x7f, -0x8(%rbp)
jl 0x16257
cmpl $0xff, -0x8(%rbp)
jg 0x16257
movl $0x22, -0x4(%rbp)
movl $0x2e, -0x8(%rbp)
cmpl $0x29, -0x4(%rbp)
jl 0x16263
cmpl $0x2f, -0x4(%rbp)
jle 0x1626f
cmpl $0x75, -0x4(%rbp)
jl 0x1627d
cmpl $0x7e, -0x4(%rbp)
jg 0x1627d
movl $0x22, -0x4(%rbp)
movl $0x2e, -0x8(%rbp)
movl $0x0, -0xc(%rbp)
cmpl $0x12, -0xc(%rbp)
jge 0x162e4
movslq -0xc(%rbp), %rcx
leaq 0x666b(%rip), %rax      # 0x1c900
movl (%rax,%rcx,8), %eax
movl %eax, -0x10(%rbp)
movslq -0xc(%rbp), %rcx
leaq 0x665a(%rip), %rax      # 0x1c900
movl 0x4(%rax,%rcx,8), %eax
movl %eax, -0x14(%rbp)
movl -0x4(%rbp), %eax
shll $0x8, %eax
addl -0x8(%rbp), %eax
movl %eax, -0x18(%rbp)
movl -0x18(%rbp), %eax
cmpl -0x10(%rbp), %eax
jl 0x162d7
movl -0x18(%rbp), %eax
cmpl -0x14(%rbp), %eax
jg 0x162d7
movl $0x22, -0x4(%rbp)
movl $0x2e, -0x8(%rbp)
jmp 0x162d9
movl -0xc(%rbp), %eax
addl $0x1, %eax
movl %eax, -0xc(%rbp)
jmp 0x16284
movq 0x3c015(%rip), %rax     # 0x52300
movl -0x4(%rbp), %edi
movl -0x8(%rbp), %esi
callq *%rax
addq $0x20, %rsp
popq %rbp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/nurse[P]nkf/nkf.c
// Function: hira_conv
static void
hira_conv(nkf_char c2, nkf_char c1)
{
    if (hira_f & 1) {
	if (c2 == 0x25) {
	    if (0x20 < c1 && c1 < 0x74) {
		c2 = 0x24;
		(*o_hira_conv)(c2,c1);
		return;
	    } else if (c1 == 0x74 && nkf_enc_unicode_p(output_encoding)) {
		c2 = 0;
		c1 = nkf_char_unicode_new(0x3094);
		(*o_hira_conv)(c2,c1);
		return;
	    }
	} else if (c2 == 0x21 && (c1 == 0x33 || c1 == 0x34)) {
	    c1 += 2;
	    (*o_hira_conv)(c2,c1);
	    return;
	}
    }
    if (hira_f & 2) {
	if (c2 == 0 && c1 == nkf_char_unicode_new(0x3094)) {
	    c2 = 0x25;
	    c1 = 0x74;
	} else if (c2 == 0x24 && 0x20 < c1 && c1 < 0x74) {
	    c2 = 0x25;
	} else if (c2 == 0x21 && (c1 == 0x35 || c1 == 0x36)) {
	    c1 -= 2;
	}
    }
    (*o_hira_conv)(c2,c1);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x10, %rsp
movl %edi, -0x4(%rbp)
movl %esi, -0x8(%rbp)
movl 0x442b4(%rip), %eax     # 0x5a5c8
andl $0x1, %eax
cmpl $0x0, %eax
je 0x163f0
cmpl $0x25, -0x4(%rbp)
jne 0x163bd
movl $0x20, %eax
cmpl -0x8(%rbp), %eax
jge 0x16355
cmpl $0x74, -0x8(%rbp)
jge 0x16355
movl $0x24, -0x4(%rbp)
movq 0x3bfa8(%rip), %rax     # 0x522f0
movl -0x4(%rbp), %edi
movl -0x8(%rbp), %esi
callq *%rax
jmp 0x1646c
cmpl $0x74, -0x8(%rbp)
jne 0x163b9
movq 0x44246(%rip), %rax     # 0x5a5a8
leaq 0x35547(%rip), %rcx     # 0x4b8b0
cmpq %rcx, 0x10(%rax)
je 0x16397
movq 0x44232(%rip), %rax     # 0x5a5a8
leaq 0x3554b(%rip), %rcx     # 0x4b8c8
cmpq %rcx, 0x10(%rax)
je 0x16397
movq 0x4421e(%rip), %rax     # 0x5a5a8
leaq 0x3554f(%rip), %rcx     # 0x4b8e0
cmpq %rcx, 0x10(%rax)
jne 0x163b9
movl $0x0, -0x4(%rbp)
movl $0x1003094, -0x8(%rbp)  # imm = 0x1003094
movq 0x3bf44(%rip), %rax     # 0x522f0
movl -0x4(%rbp), %edi
movl -0x8(%rbp), %esi
callq *%rax
jmp 0x1646c
jmp 0x163bb
jmp 0x163ee
cmpl $0x21, -0x4(%rbp)
jne 0x163ec
cmpl $0x33, -0x8(%rbp)
je 0x163cf
cmpl $0x34, -0x8(%rbp)
jne 0x163ec
movl -0x8(%rbp), %eax
addl $0x2, %eax
movl %eax, -0x8(%rbp)
movq 0x3bf11(%rip), %rax     # 0x522f0
movl -0x4(%rbp), %edi
movl -0x8(%rbp), %esi
callq *%rax
jmp 0x1646c
jmp 0x163ee
jmp 0x163f0
movl 0x441d2(%rip), %eax     # 0x5a5c8
andl $0x2, %eax
cmpl $0x0, %eax
je 0x1645d
cmpl $0x0, -0x4(%rbp)
jne 0x1641d
cmpl $0x1003094, -0x8(%rbp)  # imm = 0x1003094
jne 0x1641d
movl $0x25, -0x4(%rbp)
movl $0x74, -0x8(%rbp)
jmp 0x1645b
cmpl $0x24, -0x4(%rbp)
jne 0x1643c
movl $0x20, %eax
cmpl -0x8(%rbp), %eax
jge 0x1643c
cmpl $0x74, -0x8(%rbp)
jge 0x1643c
movl $0x25, -0x4(%rbp)
jmp 0x16459
cmpl $0x21, -0x4(%rbp)
jne 0x16457
cmpl $0x35, -0x8(%rbp)
je 0x1644e
cmpl $0x36, -0x8(%rbp)
jne 0x16457
movl -0x8(%rbp), %eax
subl $0x2, %eax
movl %eax, -0x8(%rbp)
jmp 0x16459
jmp 0x1645b
jmp 0x1645d
movq 0x3be8c(%rip), %rax     # 0x522f0
movl -0x4(%rbp), %edi
movl -0x8(%rbp), %esi
callq *%rax
addq $0x10, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/nurse[P]nkf/nkf.c
// Function: put_newline
static void
put_newline(void (*func)(nkf_char))
{
    switch (eolmode_f ? eolmode_f : DEFAULT_NEWLINE) {
      case CRLF:
	(*func)(0x0D);
	(*func)(0x0A);
	break;
      case CR:
	(*func)(0x0D);
	break;
      case LF:
	(*func)(0x0A);
	break;
    }
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x10, %rsp
movq %rdi, -0x8(%rbp)
cmpl $0x0, 0x42155(%rip)     # 0x5a5f8
je 0x184b0
movl 0x4214d(%rip), %eax     # 0x5a5f8
movl %eax, -0xc(%rbp)
jmp 0x184ba
movl $0xa, %eax
movl %eax, -0xc(%rbp)
jmp 0x184ba
movl -0xc(%rbp), %eax
movl %eax, -0x10(%rbp)
subl $0xa, %eax
je 0x184f9
jmp 0x184c7
movl -0x10(%rbp), %eax
subl $0xd, %eax
je 0x184ef
jmp 0x184d1
movl -0x10(%rbp), %eax
subl $0xd0a, %eax            # imm = 0xD0A
jne 0x18501
jmp 0x184dd
movl $0xd, %edi
callq *-0x8(%rbp)
movl $0xa, %edi
callq *-0x8(%rbp)
jmp 0x18501
movl $0xd, %edi
callq *-0x8(%rbp)
jmp 0x18501
movl $0xa, %edi
callq *-0x8(%rbp)
addq $0x10, %rsp
popq %rbp
retq
nopw (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/nurse[P]nkf/nkf.c
// Function: eof_mime
static void
eof_mime(void)
{
    switch(mimeout_mode) {
    case 'Q':
    case 'B':
	break;
    case 2:
	(*o_mputc)(basis_64[((nkf_state->mimeout_state & 0x3)<< 4)]);
	(*o_mputc)('=');
	(*o_mputc)('=');
	base64_count += 3;
	break;
    case 1:
	(*o_mputc)(basis_64[((nkf_state->mimeout_state & 0xF) << 2)]);
	(*o_mputc)('=');
	base64_count += 2;
	break;
    }
    if (mimeout_mode > 0) {
	if (mimeout_f!=FIXED_MIME) {
	    close_mime();
	} else if (mimeout_mode != 'Q')
	    mimeout_mode = 'B';
    }
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x10, %rsp
movl 0x420ce(%rip), %eax     # 0x5a5ec
movl %eax, -0x4(%rbp)
subl $0x1, %eax
je 0x1859d
jmp 0x18528
movl -0x4(%rbp), %eax
subl $0x2, %eax
je 0x1854f
jmp 0x18532
movl -0x4(%rbp), %eax
subl $0x42, %eax
je 0x1854a
jmp 0x1853c
movl -0x4(%rbp), %eax
subl $0x51, %eax
jne 0x185de
jmp 0x1854a
jmp 0x185de
movq 0x39dd2(%rip), %rax     # 0x52328
movq 0x4203b(%rip), %rcx     # 0x5a598
movl 0x18(%rcx), %ecx
andl $0x3, %ecx
shll $0x4, %ecx
movslq %ecx, %rdx
leaq 0x42e0(%rip), %rcx      # 0x1c850
movsbl (%rcx,%rdx), %edi
callq *%rax
movl $0x3d, %edi
callq *0x39da7(%rip)          # 0x52328
movl $0x3d, %edi
callq *0x39d9c(%rip)          # 0x52328
movl 0x420be(%rip), %eax     # 0x5a650
addl $0x3, %eax
movl %eax, 0x420b5(%rip)     # 0x5a650
jmp 0x185de
movq 0x39d84(%rip), %rax     # 0x52328
movq 0x41fed(%rip), %rcx     # 0x5a598
movl 0x18(%rcx), %ecx
andl $0xf, %ecx
shll $0x2, %ecx
movslq %ecx, %rdx
leaq 0x4292(%rip), %rcx      # 0x1c850
movsbl (%rcx,%rdx), %edi
callq *%rax
movl $0x3d, %edi
callq *0x39d59(%rip)          # 0x52328
movl 0x4207b(%rip), %eax     # 0x5a650
addl $0x2, %eax
movl %eax, 0x42072(%rip)     # 0x5a650
cmpl $0x0, 0x42007(%rip)     # 0x5a5ec
jle 0x1860e
cmpl $0x7, 0x42002(%rip)     # 0x5a5f0
je 0x185f7
callq 0x18b00
jmp 0x1860c
cmpl $0x51, 0x41fee(%rip)    # 0x5a5ec
je 0x1860a
movl $0x42, 0x41fe2(%rip)    # 0x5a5ec
jmp 0x1860c
jmp 0x1860e
addq $0x10, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/nurse[P]nkf/nkf.c
// Function: close_mime
static void
close_mime(void)
{
    (*o_mputc)('?');
    (*o_mputc)('=');
    base64_count += 2;
    mimeout_mode = 0;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
movl $0x3f, %edi
callq *0x39819(%rip)          # 0x52328
movl $0x3d, %edi
callq *0x3980e(%rip)          # 0x52328
movl 0x41b30(%rip), %eax     # 0x5a650
addl $0x2, %eax
movl %eax, 0x41b27(%rip)     # 0x5a650
movl $0x0, 0x41ab9(%rip)     # 0x5a5ec
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/nurse[P]nkf/nkf.c
// Function: oconv_newline
static void
oconv_newline(void (*func)(nkf_char, nkf_char))
{
    switch (eolmode_f ? eolmode_f : DEFAULT_NEWLINE) {
      case CRLF:
	(*func)(0, 0x0D);
	(*func)(0, 0x0A);
	break;
      case CR:
	(*func)(0, 0x0D);
	break;
      case LF:
	(*func)(0, 0x0A);
	break;
    }
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x10, %rsp
movq %rdi, -0x8(%rbp)
cmpl $0x0, 0x418f5(%rip)     # 0x5a5f8
je 0x18d10
movl 0x418ed(%rip), %eax     # 0x5a5f8
movl %eax, -0xc(%rbp)
jmp 0x18d1a
movl $0xa, %eax
movl %eax, -0xc(%rbp)
jmp 0x18d1a
movl -0xc(%rbp), %eax
movl %eax, -0x10(%rbp)
subl $0xa, %eax
je 0x18d5f
jmp 0x18d27
movl -0x10(%rbp), %eax
subl $0xd, %eax
je 0x18d53
jmp 0x18d31
movl -0x10(%rbp), %eax
subl $0xd0a, %eax            # imm = 0xD0A
jne 0x18d69
jmp 0x18d3d
xorl %edi, %edi
movl $0xd, %esi
callq *-0x8(%rbp)
xorl %edi, %edi
movl $0xa, %esi
callq *-0x8(%rbp)
jmp 0x18d69
xorl %edi, %edi
movl $0xd, %esi
callq *-0x8(%rbp)
jmp 0x18d69
xorl %edi, %edi
movl $0xa, %esi
callq *-0x8(%rbp)
addq $0x10, %rsp
popq %rbp
retq
nop
// File: /workspace/github_c_makefile_star2_O0/nurse[P]nkf/nkf.c
// Function: unswitch_mime_getc
static void
unswitch_mime_getc(void)
{
    if(mime_f==STRICT_MIME) {
	i_mgetc = i_mgetc_buf;
	i_mungetc = i_mungetc_buf;
    }
    i_getc = i_mgetc;
    i_ungetc = i_mungetc;
    if(mime_iconv_back)set_iconv(FALSE, mime_iconv_back);
    mime_iconv_back = NULL;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
cmpl $0x8, 0x392c5(%rip)     # 0x52280
jne 0x18fd9
movq 0x3937c(%rip), %rax     # 0x52340
movq %rax, 0x39365(%rip)     # 0x52330
movq 0x39376(%rip), %rax     # 0x52348
movq %rax, 0x3935f(%rip)     # 0x52338
movq 0x39350(%rip), %rax     # 0x52330
movq %rax, 0x39321(%rip)     # 0x52308
movq 0x3934a(%rip), %rax     # 0x52338
movq %rax, 0x3931b(%rip)     # 0x52310
cmpq $0x0, 0x41a7b(%rip)     # 0x5aa78
je 0x1900d
movq 0x41a72(%rip), %rsi     # 0x5aa78
xorl %edi, %edi
callq 0x135a0
movq $0x0, 0x41a60(%rip) # 0x5aa78
popq %rbp
retq
nopw (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/nurse[P]nkf/nkf.c
// Function: nkf_xrealloc
static void *
nkf_xrealloc(void *ptr, size_t size)
{
    if (size == 0) size = 1;

    ptr = realloc(ptr, size);
    if (ptr == NULL) {
	perror("can't realloc");
	exit(EXIT_FAILURE);
    }

    return ptr;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x10, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
cmpq $0x0, -0x10(%rbp)
jne 0x1903f
movq $0x1, -0x10(%rbp)
movq -0x8(%rbp), %rdi
movq -0x10(%rbp), %rsi
callq 0xc1a0
movq %rax, -0x8(%rbp)
cmpq $0x0, -0x8(%rbp)
jne 0x1906d
leaq 0x4b48(%rip), %rdi      # 0x1dba6
callq 0xc1f0
movl $0x1, %edi
callq 0xc220
movq -0x8(%rbp), %rax
addq $0x10, %rsp
popq %rbp
retq
nopw (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/nurse[P]nkf/nkf.c
// Function: base64decode
static nkf_char
base64decode(nkf_char c)
{
    int             i;
    if (c > '@') {
	if (c < '[') {
	    i = c - 'A';                        /* A..Z 0-25 */
	} else if (c == '_') {
	    i = '?'         /* 63 */ ;          /* _  63 */
	} else {
	    i = c - 'G'     /* - 'a' + 26 */ ;  /* a..z 26-51 */
	}
    } else if (c > '/') {
	i = c - '0' + '4'   /* - '0' + 52 */ ;  /* 0..9 52-61 */
    } else if (c == '+' || c == '-') {
	i = '>'             /* 62 */ ;          /* + and -  62 */
    } else {
	i = '?'             /* 63 */ ;          /* / 63 */
    }
    return (i);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
movl %edi, -0x4(%rbp)
cmpl $0x40, -0x4(%rbp)
jle 0x190ba
cmpl $0x5b, -0x4(%rbp)
jge 0x1909e
movl -0x4(%rbp), %eax
subl $0x41, %eax
movl %eax, -0x8(%rbp)
jmp 0x190b8
cmpl $0x5f, -0x4(%rbp)
jne 0x190ad
movl $0x3f, -0x8(%rbp)
jmp 0x190b6
movl -0x4(%rbp), %eax
subl $0x47, %eax
movl %eax, -0x8(%rbp)
jmp 0x190b8
jmp 0x190ee
cmpl $0x2f, -0x4(%rbp)
jle 0x190ce
movl -0x4(%rbp), %eax
subl $0x30, %eax
addl $0x34, %eax
movl %eax, -0x8(%rbp)
jmp 0x190ec
cmpl $0x2b, -0x4(%rbp)
je 0x190da
cmpl $0x2d, -0x4(%rbp)
jne 0x190e3
movl $0x3e, -0x8(%rbp)
jmp 0x190ea
movl $0x3f, -0x8(%rbp)
jmp 0x190ec
jmp 0x190ee
movl -0x8(%rbp), %eax
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/nurse[P]nkf/nkf.c
// Function: nkf_iconv_utf_32
static size_t
nkf_iconv_utf_32(nkf_char c1, nkf_char c2, nkf_char c3, nkf_char c4)
{
    nkf_char wc;

    if (c1 == EOF) {
	(*oconv)(EOF, 0);
	return 0;
    }

    wc = utf32_to_nkf_char(c1, c2, c3, c4);
    if (wc < 0)
	return wc;

    return (*unicode_iconv)(wc, FALSE);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movl %edi, -0xc(%rbp)
movl %esi, -0x10(%rbp)
movl %edx, -0x14(%rbp)
movl %ecx, -0x18(%rbp)
cmpl $-0x1, -0xc(%rbp)
jne 0x196e1
movl $0xffffffff, %edi       # imm = 0xFFFFFFFF
xorl %esi, %esi
callq *0x38bc1(%rip)          # 0x52298
movq $0x0, -0x8(%rbp)
jmp 0x19713
movl -0xc(%rbp), %edi
movl -0x10(%rbp), %esi
movl -0x14(%rbp), %edx
movl -0x18(%rbp), %ecx
callq 0x1a850
movl %eax, -0x1c(%rbp)
cmpl $0x0, -0x1c(%rbp)
jge 0x19705
movslq -0x1c(%rbp), %rax
movq %rax, -0x8(%rbp)
jmp 0x19713
movl -0x1c(%rbp), %edi
xorl %esi, %esi
callq 0x1a900
movq %rax, -0x8(%rbp)
movq -0x8(%rbp), %rax
addq $0x20, %rsp
popq %rbp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/nurse[P]nkf/nkf.c
// Function: nkf_iconv_utf_32_combine
static nkf_char
nkf_iconv_utf_32_combine(nkf_char c1, nkf_char c2, nkf_char c3, nkf_char c4, nkf_char c5, nkf_char c6, nkf_char c7, nkf_char c8)
{
    nkf_char wc, wc2;

    wc = utf32_to_nkf_char(c1, c2, c3, c4);
    if (wc < 0)
	return wc;
    wc2 = utf32_to_nkf_char(c5, c6, c7, c8);
    if (wc2 < 0)
	return wc2;

    return unicode_iconv_combine(wc, wc2);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x30, %rsp
movl 0x18(%rbp), %eax
movl 0x10(%rbp), %eax
movl %edi, -0x8(%rbp)
movl %esi, -0xc(%rbp)
movl %edx, -0x10(%rbp)
movl %ecx, -0x14(%rbp)
movl %r8d, -0x18(%rbp)
movl %r9d, -0x1c(%rbp)
movl -0x8(%rbp), %edi
movl -0xc(%rbp), %esi
movl -0x10(%rbp), %edx
movl -0x14(%rbp), %ecx
callq 0x1a850
movl %eax, -0x20(%rbp)
cmpl $0x0, -0x20(%rbp)
jge 0x19764
movl -0x20(%rbp), %eax
movl %eax, -0x4(%rbp)
jmp 0x19794
movl -0x18(%rbp), %edi
movl -0x1c(%rbp), %esi
movl 0x10(%rbp), %edx
movl 0x18(%rbp), %ecx
callq 0x1a850
movl %eax, -0x24(%rbp)
cmpl $0x0, -0x24(%rbp)
jge 0x19786
movl -0x24(%rbp), %eax
movl %eax, -0x4(%rbp)
jmp 0x19794
movl -0x20(%rbp), %edi
movl -0x24(%rbp), %esi
callq 0x1a9f0
movl %eax, -0x4(%rbp)
movl -0x4(%rbp), %eax
addq $0x30, %rsp
popq %rbp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/nurse[P]nkf/nkf.c
// Function: nkf_iconv_utf_16
static size_t
nkf_iconv_utf_16(nkf_char c1, nkf_char c2, nkf_char c3, nkf_char c4)
{
    nkf_char wc;

    if (c1 == EOF) {
	(*oconv)(EOF, 0);
	return 0;
    }

    if (input_endian == ENDIAN_BIG) {
	if (0xD8 <= c1 && c1 <= 0xDB) {
	    if (0xDC <= c3 && c3 <= 0xDF) {
		wc = UTF16_TO_UTF32(c1 << 8 | c2, c3 << 8 | c4);
	    } else return NKF_ICONV_NEED_TWO_MORE_BYTES;
	} else {
	    wc = c1 << 8 | c2;
	}
    } else {
	if (0xD8 <= c2 && c2 <= 0xDB) {
	    if (0xDC <= c4 && c4 <= 0xDF) {
		wc = UTF16_TO_UTF32(c2 << 8 | c1, c4 << 8 | c3);
	    } else return NKF_ICONV_NEED_TWO_MORE_BYTES;
	} else {
	    wc = c2 << 8 | c1;
	}
    }

    return (*unicode_iconv)(wc, FALSE);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movl %edi, -0xc(%rbp)
movl %esi, -0x10(%rbp)
movl %edx, -0x14(%rbp)
movl %ecx, -0x18(%rbp)
cmpl $-0x1, -0xc(%rbp)
jne 0x19814
movl $0xffffffff, %edi       # imm = 0xFFFFFFFF
xorl %esi, %esi
callq *0x38a91(%rip)          # 0x52298
movq $0x0, -0x8(%rbp)
jmp 0x198ed
cmpl $0x1, 0x38aad(%rip)     # 0x522c8
jne 0x1987e
movl $0xd8, %eax
cmpl -0xc(%rbp), %eax
jg 0x19870
cmpl $0xdb, -0xc(%rbp)
jg 0x19870
movl $0xdc, %eax
cmpl -0x14(%rbp), %eax
jg 0x19864
cmpl $0xdf, -0x14(%rbp)
jg 0x19864
movl -0xc(%rbp), %eax
shll $0x8, %eax
orl -0x10(%rbp), %eax
shll $0xa, %eax
movl -0x14(%rbp), %ecx
shll $0x8, %ecx
orl -0x18(%rbp), %ecx
addl %ecx, %eax
subl $0x35fdc00, %eax        # imm = 0x35FDC00
movl %eax, -0x1c(%rbp)
jmp 0x1986e
movq $-0x2, -0x8(%rbp)
jmp 0x198ed
jmp 0x1987c
movl -0xc(%rbp), %eax
shll $0x8, %eax
orl -0x10(%rbp), %eax
movl %eax, -0x1c(%rbp)
jmp 0x198df
movl $0xd8, %eax
cmpl -0x10(%rbp), %eax
jg 0x198d1
cmpl $0xdb, -0x10(%rbp)
jg 0x198d1
movl $0xdc, %eax
cmpl -0x18(%rbp), %eax
jg 0x198c5
cmpl $0xdf, -0x18(%rbp)
jg 0x198c5
movl -0x10(%rbp), %eax
shll $0x8, %eax
orl -0xc(%rbp), %eax
shll $0xa, %eax
movl -0x18(%rbp), %ecx
shll $0x8, %ecx
orl -0x14(%rbp), %ecx
addl %ecx, %eax
subl $0x35fdc00, %eax        # imm = 0x35FDC00
movl %eax, -0x1c(%rbp)
jmp 0x198cf
movq $-0x2, -0x8(%rbp)
jmp 0x198ed
jmp 0x198dd
movl -0x10(%rbp), %eax
shll $0x8, %eax
orl -0xc(%rbp), %eax
movl %eax, -0x1c(%rbp)
jmp 0x198df
movl -0x1c(%rbp), %edi
xorl %esi, %esi
callq 0x1a900
movq %rax, -0x8(%rbp)
movq -0x8(%rbp), %rax
addq $0x20, %rsp
popq %rbp
retq
nopw (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/nurse[P]nkf/nkf.c
// Function: nkf_iconv_utf_16_combine
static size_t
nkf_iconv_utf_16_combine(nkf_char c1, nkf_char c2, nkf_char c3, nkf_char c4)
{
    nkf_char wc, wc2;

    if (input_endian == ENDIAN_BIG) {
	if (0xD8 <= c3 && c3 <= 0xDB) {
	    return NKF_ICONV_NOT_COMBINED;
	} else {
	    wc = c1 << 8 | c2;
	    wc2 = c3 << 8 | c4;
	}
    } else {
	if (0xD8 <= c2 && c2 <= 0xDB) {
	    return NKF_ICONV_NOT_COMBINED;
	} else {
	    wc = c2 << 8 | c1;
	    wc2 = c4 << 8 | c3;
	}
    }

    return unicode_iconv_combine(wc, wc2);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movl %edi, -0xc(%rbp)
movl %esi, -0x10(%rbp)
movl %edx, -0x14(%rbp)
movl %ecx, -0x18(%rbp)
cmpl $0x1, 0x389ad(%rip)     # 0x522c8
jne 0x19954
movl $0xd8, %eax
cmpl -0x14(%rbp), %eax
jg 0x1993a
cmpl $0xdb, -0x14(%rbp)
jg 0x1993a
movq $-0xf, -0x8(%rbp)
jmp 0x1999c
movl -0xc(%rbp), %eax
shll $0x8, %eax
orl -0x10(%rbp), %eax
movl %eax, -0x1c(%rbp)
movl -0x14(%rbp), %eax
shll $0x8, %eax
orl -0x18(%rbp), %eax
movl %eax, -0x20(%rbp)
jmp 0x1998b
movl $0xd8, %eax
cmpl -0x10(%rbp), %eax
jg 0x19971
cmpl $0xdb, -0x10(%rbp)
jg 0x19971
movq $-0xf, -0x8(%rbp)
jmp 0x1999c
movl -0x10(%rbp), %eax
shll $0x8, %eax
orl -0xc(%rbp), %eax
movl %eax, -0x1c(%rbp)
movl -0x18(%rbp), %eax
shll $0x8, %eax
orl -0x14(%rbp), %eax
movl %eax, -0x20(%rbp)
jmp 0x1998b
movl -0x1c(%rbp), %edi
movl -0x20(%rbp), %esi
callq 0x1a9f0
cltq
movq %rax, -0x8(%rbp)
movq -0x8(%rbp), %rax
addq $0x20, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/nurse[P]nkf/nkf.c
// Function: nkf_iconv_utf_16_nocombine
static size_t
nkf_iconv_utf_16_nocombine(nkf_char c1, nkf_char c2)
{
    nkf_char wc;
    if (input_endian == ENDIAN_BIG)
	wc = c1 << 8 | c2;
    else
	wc = c2 << 8 | c1;
    return (*unicode_iconv)(wc, TRUE);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x10, %rsp
movl %edi, -0x4(%rbp)
movl %esi, -0x8(%rbp)
cmpl $0x1, 0x38903(%rip)     # 0x522c8
jne 0x199d5
movl -0x4(%rbp), %eax
shll $0x8, %eax
orl -0x8(%rbp), %eax
movl %eax, -0xc(%rbp)
jmp 0x199e1
movl -0x8(%rbp), %eax
shll $0x8, %eax
orl -0x4(%rbp), %eax
movl %eax, -0xc(%rbp)
movl -0xc(%rbp), %edi
movl $0x1, %esi
callq 0x1a900
addq $0x10, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/nurse[P]nkf/nkf.c
// Function: code_status
static void
code_status(nkf_char c)
{
    int action_flag = 1;
    struct input_code *result = 0;
    struct input_code *p = input_code_list;
    while (p->name){
	if (!p->status_func) {
	    ++p;
	    continue;
	}
	if (!p->status_func)
	    continue;
	(p->status_func)(p, c);
	if (p->stat > 0){
	    action_flag = 0;
	}else if(p->stat == 0){
	    if (result){
		action_flag = 0;
	    }else{
		result = p;
	    }
	}
	++p;
    }

    if (action_flag){
	if (result && !estab_f){
	    set_iconv(TRUE, result->iconv_func);
	}else if (c <= DEL){
	    struct input_code *ptr = input_code_list;
	    while (ptr->name){
		status_reset(ptr);
		++ptr;
	    }
	}
    }
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movl %edi, -0x4(%rbp)
movl $0x1, -0x8(%rbp)
movq $0x0, -0x10(%rbp)
leaq 0x3870f(%rip), %rax     # 0x52130
movq %rax, -0x18(%rbp)
movq -0x18(%rbp), %rax
cmpq $0x0, (%rax)
je 0x19ab4
movq -0x18(%rbp), %rax
cmpq $0x0, 0x20(%rax)
jne 0x19a4c
movq -0x18(%rbp), %rax
addq $0x38, %rax
movq %rax, -0x18(%rbp)
jmp 0x19a25
movq -0x18(%rbp), %rax
cmpq $0x0, 0x20(%rax)
jne 0x19a59
jmp 0x19a25
movq -0x18(%rbp), %rax
movq 0x20(%rax), %rax
movq -0x18(%rbp), %rdi
movl -0x4(%rbp), %esi
callq *%rax
movq -0x18(%rbp), %rax
cmpl $0x0, 0x8(%rax)
jle 0x19a7d
movl $0x0, -0x8(%rbp)
jmp 0x19aa3
movq -0x18(%rbp), %rax
cmpl $0x0, 0x8(%rax)
jne 0x19aa1
cmpq $0x0, -0x10(%rbp)
je 0x19a97
movl $0x0, -0x8(%rbp)
jmp 0x19a9f
movq -0x18(%rbp), %rax
movq %rax, -0x10(%rbp)
jmp 0x19aa1
jmp 0x19aa3
movq -0x18(%rbp), %rax
addq $0x38, %rax
movq %rax, -0x18(%rbp)
jmp 0x19a25
cmpl $0x0, -0x8(%rbp)
je 0x19b16
cmpq $0x0, -0x10(%rbp)
je 0x19ade
cmpl $0x0, 0x409c0(%rip)     # 0x5a488
jne 0x19ade
movq -0x10(%rbp), %rax
movq 0x28(%rax), %rsi
movl $0x1, %edi
callq 0x135a0
jmp 0x19b14
cmpl $0x7f, -0x4(%rbp)
jg 0x19b12
leaq 0x38645(%rip), %rax     # 0x52130
movq %rax, -0x20(%rbp)
movq -0x20(%rbp), %rax
cmpq $0x0, (%rax)
je 0x19b10
movq -0x20(%rbp), %rdi
callq 0x13e10
movq -0x20(%rbp), %rax
addq $0x38, %rax
movq %rax, -0x20(%rbp)
jmp 0x19aef
jmp 0x19b12
jmp 0x19b14
jmp 0x19b16
addq $0x20, %rsp
popq %rbp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/nurse[P]nkf/nkf.c
// Function: w_iconv_combine
static nkf_char
w_iconv_combine(nkf_char c1, nkf_char c2, nkf_char c3, nkf_char c4, nkf_char c5, nkf_char c6)
{
    nkf_char wc, wc2;
    wc = nkf_utf8_to_unicode(c1, c2, c3, 0);
    wc2 = nkf_utf8_to_unicode(c4, c5, c6, 0);
    if (wc2 < 0)
	return wc2;
    return unicode_iconv_combine(wc, wc2);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x30, %rsp
movl %edi, -0x8(%rbp)
movl %esi, -0xc(%rbp)
movl %edx, -0x10(%rbp)
movl %ecx, -0x14(%rbp)
movl %r8d, -0x18(%rbp)
movl %r9d, -0x1c(%rbp)
movl -0x8(%rbp), %edi
movl -0xc(%rbp), %esi
movl -0x10(%rbp), %edx
xorl %ecx, %ecx
callq 0x12680
movl %eax, -0x20(%rbp)
movl -0x14(%rbp), %edi
movl -0x18(%rbp), %esi
movl -0x1c(%rbp), %edx
xorl %ecx, %ecx
callq 0x12680
movl %eax, -0x24(%rbp)
cmpl $0x0, -0x24(%rbp)
jge 0x1a7e0
movl -0x24(%rbp), %eax
movl %eax, -0x4(%rbp)
jmp 0x1a7ee
movl -0x20(%rbp), %edi
movl -0x24(%rbp), %esi
callq 0x1a9f0
movl %eax, -0x4(%rbp)
movl -0x4(%rbp), %eax
addq $0x30, %rsp
popq %rbp
retq
nopw (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/nurse[P]nkf/nkf.c
// Function: w_iconv_nocombine
static nkf_char
w_iconv_nocombine(nkf_char c1, nkf_char c2, nkf_char c3)
{
    /* continue from the line below 'return -3;' in w_iconv() */
    nkf_char ret = w2e_conv(c1, c2, c3, &c1, &c2);
    if (ret == 0){
	(*oconv)(c1, c2);
    }
    return ret;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x10, %rsp
movl %edi, -0x4(%rbp)
movl %esi, -0x8(%rbp)
movl %edx, -0xc(%rbp)
movl -0x4(%rbp), %edi
movl -0x8(%rbp), %esi
movl -0xc(%rbp), %edx
leaq -0x4(%rbp), %rcx
leaq -0x8(%rbp), %r8
callq 0x127d0
movl %eax, -0x10(%rbp)
cmpl $0x0, -0x10(%rbp)
jne 0x1a83f
movq 0x37a61(%rip), %rax     # 0x52298
movl -0x4(%rbp), %edi
movl -0x8(%rbp), %esi
callq *%rax
movl -0x10(%rbp), %eax
addq $0x10, %rsp
popq %rbp
retq
nopl (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/nurse[P]nkf/nkf.c
// Function: utf32_to_nkf_char
static nkf_char
utf32_to_nkf_char(nkf_char c1, nkf_char c2, nkf_char c3, nkf_char c4)
{
    nkf_char wc;

    switch(input_endian){
    case ENDIAN_BIG:
	wc = c2 << 16 | c3 << 8 | c4;
	break;
    case ENDIAN_LITTLE:
	wc = c3 << 16 | c2 << 8 | c1;
	break;
    case ENDIAN_2143:
	wc = c1 << 16 | c4 << 8 | c3;
	break;
    case ENDIAN_3412:
	wc = c4 << 16 | c1 << 8 | c2;
	break;
    default:
	return NKF_ICONV_INVALID_CODE_RANGE;
    }
    return wc;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
movl %edi, -0x8(%rbp)
movl %esi, -0xc(%rbp)
movl %edx, -0x10(%rbp)
movl %ecx, -0x14(%rbp)
movl 0x37a62(%rip), %eax     # 0x522c8
decl %eax
movl %eax, %ecx
movq %rcx, -0x20(%rbp)
subl $0x3, %eax
ja 0x1a8df
movq -0x20(%rbp), %rax
leaq 0x1d22(%rip), %rcx      # 0x1c5a0
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movl -0xc(%rbp), %eax
shll $0x10, %eax
movl -0x10(%rbp), %ecx
shll $0x8, %ecx
orl %ecx, %eax
orl -0x14(%rbp), %eax
movl %eax, -0x18(%rbp)
jmp 0x1a8e8
movl -0x10(%rbp), %eax
shll $0x10, %eax
movl -0xc(%rbp), %ecx
shll $0x8, %ecx
orl %ecx, %eax
orl -0x8(%rbp), %eax
movl %eax, -0x18(%rbp)
jmp 0x1a8e8
movl -0x8(%rbp), %eax
shll $0x10, %eax
movl -0x14(%rbp), %ecx
shll $0x8, %ecx
orl %ecx, %eax
orl -0x10(%rbp), %eax
movl %eax, -0x18(%rbp)
jmp 0x1a8e8
movl -0x14(%rbp), %eax
shll $0x10, %eax
movl -0x8(%rbp), %ecx
shll $0x8, %ecx
orl %ecx, %eax
orl -0xc(%rbp), %eax
movl %eax, -0x18(%rbp)
jmp 0x1a8e8
movl $0xfffffff3, -0x4(%rbp) # imm = 0xFFFFFFF3
jmp 0x1a8ee
movl -0x18(%rbp), %eax
movl %eax, -0x4(%rbp)
movl -0x4(%rbp), %eax
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/nurse[P]nkf/nkf.c
// Function: unicode_iconv
static size_t
unicode_iconv(nkf_char wc, int nocombine)
{
    nkf_char c1, c2;
    int ret = 0;

    if (wc < 0x80) {
	c2 = 0;
	c1 = wc;
    }else if ((wc>>11) == 27) {
	/* unpaired surrogate */
	return NKF_ICONV_INVALID_CODE_RANGE;
    }else if (wc < 0xFFFF) {
	if (!nocombine && x0213_f && x0213_wait_combining_p(wc))
	    return NKF_ICONV_WAIT_COMBINING_CHAR;
	ret = w16e_conv(wc, &c2, &c1);
	if (ret) return ret;
    }else if (wc < 0x10FFFF) {
	c2 = 0;
	c1 = nkf_char_unicode_new(wc);
    } else {
	return NKF_ICONV_INVALID_CODE_RANGE;
    }
    (*oconv)(c2, c1);
    return 0;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movl %edi, -0xc(%rbp)
movl %esi, -0x10(%rbp)
movl $0x0, -0x1c(%rbp)
cmpl $0x80, -0xc(%rbp)
jge 0x1a930
movl $0x0, -0x18(%rbp)
movl -0xc(%rbp), %eax
movl %eax, -0x14(%rbp)
jmp 0x1a9c9
movl -0xc(%rbp), %eax
sarl $0xb, %eax
cmpl $0x1b, %eax
jne 0x1a948
movq $-0xd, -0x8(%rbp)
jmp 0x1a9e0
cmpl $0xffff, -0xc(%rbp)     # imm = 0xFFFF
jge 0x1a99c
cmpl $0x0, -0x10(%rbp)
jne 0x1a977
cmpl $0x0, 0x37abe(%rip)     # 0x5241c
je 0x1a977
movl -0xc(%rbp), %edi
callq 0x12770
cmpl $0x0, %eax
je 0x1a977
movq $-0xe, -0x8(%rbp)
jmp 0x1a9e0
movl -0xc(%rbp), %edi
leaq -0x18(%rbp), %rsi
leaq -0x14(%rbp), %rdx
callq 0x13020
movl %eax, -0x1c(%rbp)
cmpl $0x0, -0x1c(%rbp)
je 0x1a99a
movslq -0x1c(%rbp), %rax
movq %rax, -0x8(%rbp)
jmp 0x1a9e0
jmp 0x1a9c5
cmpl $0x10ffff, -0xc(%rbp)   # imm = 0x10FFFF
jge 0x1a9b9
movl $0x0, -0x18(%rbp)
movl -0xc(%rbp), %eax
orl $0x1000000, %eax        # imm = 0x1000000
movl %eax, -0x14(%rbp)
jmp 0x1a9c3
movq $-0xd, -0x8(%rbp)
jmp 0x1a9e0
jmp 0x1a9c5
jmp 0x1a9c7
jmp 0x1a9c9
movq 0x378c8(%rip), %rax     # 0x52298
movl -0x18(%rbp), %edi
movl -0x14(%rbp), %esi
callq *%rax
movq $0x0, -0x8(%rbp)
movq -0x8(%rbp), %rax
addq $0x20, %rsp
popq %rbp
retq
nopw (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/nurse[P]nkf/nkf.c
// Function: unicode_iconv_combine
static nkf_char
unicode_iconv_combine(nkf_char wc, nkf_char wc2)
{
    nkf_char c1, c2;
    int i;

    if (wc2 < 0x80) {
	return NKF_ICONV_NOT_COMBINED;
    }else if ((wc2>>11) == 27) {
	/* unpaired surrogate */
	return NKF_ICONV_INVALID_CODE_RANGE;
    }else if (wc2 < 0xFFFF) {
	if (!x0213_combining_p(wc2))
	    return NKF_ICONV_NOT_COMBINED;
	for (i = 0; i < sizeof_x0213_combining_table; i++) {
	    if (x0213_combining_table[i][1] == wc &&
		x0213_combining_table[i][2] == wc2) {
		c2 = x0213_combining_table[i][0] >> 8;
		c1 = x0213_combining_table[i][0] & 0x7f;
		(*oconv)(c2, c1);
		return 0;
	    }
	}
    }else if (wc2 < 0x10FFFF) {
	return NKF_ICONV_NOT_COMBINED;
    } else {
	return NKF_ICONV_INVALID_CODE_RANGE;
    }
    return NKF_ICONV_NOT_COMBINED;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movl %edi, -0x8(%rbp)
movl %esi, -0xc(%rbp)
cmpl $0x80, -0xc(%rbp)
jge 0x1aa13
movl $0xfffffff1, -0x4(%rbp) # imm = 0xFFFFFFF1
jmp 0x1ab1d
movl -0xc(%rbp), %eax
sarl $0xb, %eax
cmpl $0x1b, %eax
jne 0x1aa2a
movl $0xfffffff3, -0x4(%rbp) # imm = 0xFFFFFFF3
jmp 0x1ab1d
cmpl $0xffff, -0xc(%rbp)     # imm = 0xFFFF
jge 0x1aaf7
movl -0xc(%rbp), %edi
callq 0x1ab30
cmpl $0x0, %eax
jne 0x1aa50
movl $0xfffffff1, -0x4(%rbp) # imm = 0xFFFFFFF1
jmp 0x1ab1d
movl $0x0, -0x18(%rbp)
cmpl $0x19, -0x18(%rbp)
jge 0x1aaf5
movslq -0x18(%rbp), %rcx
leaq 0xc894(%rip), %rax      # 0x27300
imulq $0x6, %rcx, %rcx
addq %rcx, %rax
movzwl 0x2(%rax), %eax
cmpl -0x8(%rbp), %eax
jne 0x1aae5
movslq -0x18(%rbp), %rcx
leaq 0xc879(%rip), %rax      # 0x27300
imulq $0x6, %rcx, %rcx
addq %rcx, %rax
movzwl 0x4(%rax), %eax
cmpl -0xc(%rbp), %eax
jne 0x1aae5
movslq -0x18(%rbp), %rcx
leaq 0xc85e(%rip), %rax      # 0x27300
imulq $0x6, %rcx, %rcx
addq %rcx, %rax
movzwl (%rax), %eax
sarl $0x8, %eax
movl %eax, -0x14(%rbp)
movslq -0x18(%rbp), %rcx
leaq 0xc843(%rip), %rax      # 0x27300
imulq $0x6, %rcx, %rcx
addq %rcx, %rax
movzwl (%rax), %eax
andl $0x7f, %eax
movl %eax, -0x10(%rbp)
movq 0x377c4(%rip), %rax     # 0x52298
movl -0x14(%rbp), %edi
movl -0x10(%rbp), %esi
callq *%rax
movl $0x0, -0x4(%rbp)
jmp 0x1ab1d
jmp 0x1aae7
movl -0x18(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x18(%rbp)
jmp 0x1aa57
jmp 0x1ab12
cmpl $0x10ffff, -0xc(%rbp)   # imm = 0x10FFFF
jge 0x1ab09
movl $0xfffffff1, -0x4(%rbp) # imm = 0xFFFFFFF1
jmp 0x1ab1d
movl $0xfffffff3, -0x4(%rbp) # imm = 0xFFFFFFF3
jmp 0x1ab1d
jmp 0x1ab14
jmp 0x1ab16
movl $0xfffffff1, -0x4(%rbp) # imm = 0xFFFFFFF1
movl -0x4(%rbp), %eax
addq $0x20, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)