// File: /workspace/github_c_makefile_star2_O2/icebert[P]pblat/lib/dnautil.c
// Function: initNtVal
static void initNtVal()
{
if (!inittedNtVal)
    {
    int i;
    for (i=0; i<ArraySize(ntVal); i++)
        {
	ntValUpper[i] = ntValLower[i] = ntVal[i] = -1;
        ntValNoN[i] = T_BASE_VAL;
	if (isspace(i) || isdigit(i))
	    ntVal5[i] = ntValMasked[i] = -1;
	else
            {
	    ntVal5[i] = N_BASE_VAL;
	    ntValMasked[i] = (islower(i) ? (N_BASE_VAL|MASKED_BASE_BIT) : N_BASE_VAL);
            }
        }
    ntVal5['t'] = ntVal5['T'] = ntValNoN['t'] = ntValNoN['T'] = ntVal['t'] = ntVal['T'] = 
    	ntValLower['t'] = ntValUpper['T'] = T_BASE_VAL;
    ntVal5['u'] = ntVal5['U'] = ntValNoN['u'] = ntValNoN['U'] = ntVal['u'] = ntVal['U'] = 
    	ntValLower['u'] = ntValUpper['U'] = U_BASE_VAL;
    ntVal5['c'] = ntVal5['C'] = ntValNoN['c'] = ntValNoN['C'] = ntVal['c'] = ntVal['C'] = 
    	ntValLower['c'] = ntValUpper['C'] = C_BASE_VAL;
    ntVal5['a'] = ntVal5['A'] = ntValNoN['a'] = ntValNoN['A'] = ntVal['a'] = ntVal['A'] = 
    	ntValLower['a'] = ntValUpper['A'] = A_BASE_VAL;
    ntVal5['g'] = ntVal5['G'] = ntValNoN['g'] = ntValNoN['G'] = ntVal['g'] = ntVal['G'] = 
    	ntValLower['g'] = ntValUpper['G'] = G_BASE_VAL;

    valToNt[T_BASE_VAL] = valToNt[T_BASE_VAL|MASKED_BASE_BIT] = 't';
    valToNt[C_BASE_VAL] = valToNt[C_BASE_VAL|MASKED_BASE_BIT] = 'c';
    valToNt[A_BASE_VAL] = valToNt[A_BASE_VAL|MASKED_BASE_BIT] = 'a';
    valToNt[G_BASE_VAL] = valToNt[G_BASE_VAL|MASKED_BASE_BIT] = 'g';
    valToNt[N_BASE_VAL] = valToNt[N_BASE_VAL|MASKED_BASE_BIT] = 'n';

    /* masked values */
    ntValMasked['T'] = T_BASE_VAL;
    ntValMasked['U'] = U_BASE_VAL;
    ntValMasked['C'] = C_BASE_VAL;
    ntValMasked['A'] = A_BASE_VAL;
    ntValMasked['G'] = G_BASE_VAL;

    ntValMasked['t'] = T_BASE_VAL|MASKED_BASE_BIT;
    ntValMasked['u'] = U_BASE_VAL|MASKED_BASE_BIT;
    ntValMasked['c'] = C_BASE_VAL|MASKED_BASE_BIT;
    ntValMasked['a'] = A_BASE_VAL|MASKED_BASE_BIT;
    ntValMasked['g'] = G_BASE_VAL|MASKED_BASE_BIT;

    valToNtMasked[T_BASE_VAL] = 'T';
    valToNtMasked[C_BASE_VAL] = 'C';
    valToNtMasked[A_BASE_VAL] = 'A';
    valToNtMasked[G_BASE_VAL] = 'G';
    valToNtMasked[N_BASE_VAL] = 'N';

    valToNtMasked[T_BASE_VAL|MASKED_BASE_BIT] = 't';
    valToNtMasked[C_BASE_VAL|MASKED_BASE_BIT] = 'c';
    valToNtMasked[A_BASE_VAL|MASKED_BASE_BIT] = 'a';
    valToNtMasked[G_BASE_VAL|MASKED_BASE_BIT] = 'g';
    valToNtMasked[N_BASE_VAL|MASKED_BASE_BIT] = 'n';

    inittedNtVal = TRUE;
    }
}

// Assembly:
cmpb $0x0, 0x93bba(%rip)     # 0xb5470
jne 0x21aac
pushq %rbx
callq 0x6790
movq (%rax), %rax
xorl %ecx, %ecx
leaq 0x93bb2(%rip), %rdx     # 0xb5480
leaq 0x947db(%rip), %rsi     # 0xb60b0
leaq 0x94bd4(%rip), %rdi     # 0xb64b0
leaq 0x943ad(%rip), %r8      # 0xb5c90
leaq 0x94fc6(%rip), %r9      # 0xb68b0
leaq 0x953bf(%rip), %r10     # 0xb6cb0
cmpq $0x400, %rcx            # imm = 0x400
je 0x21942
orl $-0x1, (%rcx,%rdx)
orl $-0x1, (%rcx,%rsi)
orl $-0x1, (%rcx,%rdi)
andl $0x0, (%rcx,%r8)
movzwl (%rax), %r11d
movl %r11d, %ebx
andl $0x2800, %ebx           # imm = 0x2800
shrl $0x6, %r11d
andl $0x8, %r11d
negw %bx
movl $0x0, %ebx
sbbl %ebx, %ebx
orl $0x4, %ebx
orl %ebx, %r11d
movl %ebx, (%rcx,%r9)
movl %r11d, (%rcx,%r10)
addq $0x4, %rcx
addq $0x2, %rax
jmp 0x218f1
andq $0x0, 0x94cb6(%rip)     # 0xb6600
andq $0x0, 0x9492e(%rip)     # 0xb6280
andq $0x0, 0x93c76(%rip)     # 0xb55d0
andq $0x0, 0x93cee(%rip)     # 0xb5650
andq $0x0, 0x94476(%rip)     # 0xb5de0
andq $0x0, 0x944ee(%rip)     # 0xb5e60
andq $0x0, 0x95086(%rip)     # 0xb6a00
andq $0x0, 0x950fe(%rip)     # 0xb6a80
pushq $0x1
popq %rax
movl %eax, 0x94c31(%rip)     # 0xb65bc
movl %eax, 0x948ab(%rip)     # 0xb623c
movl %eax, 0x93bf5(%rip)     # 0xb558c
movl %eax, 0x93c6f(%rip)     # 0xb560c
movl %eax, 0x943f9(%rip)     # 0xb5d9c
movl %eax, 0x94473(%rip)     # 0xb5e1c
movl %eax, 0x9500d(%rip)     # 0xb69bc
movl %eax, 0x95087(%rip)     # 0xb6a3c
pushq $0x2
popq %rcx
movl %ecx, 0x94bf6(%rip)     # 0xb65b4
movl %ecx, 0x94870(%rip)     # 0xb6234
movl %ecx, 0x93bba(%rip)     # 0xb5584
movl %ecx, 0x93c34(%rip)     # 0xb5604
movl %ecx, 0x943be(%rip)     # 0xb5d94
movl %ecx, 0x94438(%rip)     # 0xb5e14
movl %ecx, 0x94fd2(%rip)     # 0xb69b4
movl %ecx, 0x9504c(%rip)     # 0xb6a34
pushq $0x3
popq %rdx
movl %edx, 0x94bdb(%rip)     # 0xb65cc
movl %edx, 0x94855(%rip)     # 0xb624c
movl %edx, 0x93b9f(%rip)     # 0xb559c
movl %edx, 0x93c19(%rip)     # 0xb561c
movl %edx, 0x943a3(%rip)     # 0xb5dac
movl %edx, 0x9441d(%rip)     # 0xb5e2c
movl %edx, 0x94fb7(%rip)     # 0xb69cc
movl %edx, 0x95031(%rip)     # 0xb6a4c
movl $0x67616374, %esi       # imm = 0x67616374
movl %esi, 0x94672(%rip)     # 0xb6098
movl %esi, 0x94664(%rip)     # 0xb6090
movb $0x6e, %dil
movb %dil, 0x94666(%rip)     # 0xb609c
movb %dil, 0x94657(%rip)     # 0xb6094
andq $0x0, 0x953bb(%rip)     # 0xb6e00
movl %eax, 0x95371(%rip)     # 0xb6dbc
movl %ecx, 0x95363(%rip)     # 0xb6db4
movl %edx, 0x95375(%rip)     # 0xb6dcc
movabsq $0x800000008, %rax      # imm = 0x800000008
movq %rax, 0x95418(%rip)     # 0xb6e80
movl $0x9, 0x953ca(%rip)     # 0xb6e3c
movl $0xa, 0x953b8(%rip)     # 0xb6e34
movl $0xb, 0x953c6(%rip)     # 0xb6e4c
movl $0x47414354, 0x95620(%rip) # imm = 0x47414354
movb $0x4e, 0x9561d(%rip)    # 0xb70b4
movl %esi, 0x9561b(%rip)     # 0xb70b8
movb %dil, 0x95618(%rip)     # 0xb70bc
movb $0x1, 0x939c5(%rip)     # 0xb5470
popq %rbx
retq