// File: /workspace/github_cpp_makefile_star2_O1/millanek[P]evo/process_vcf_IUPAC.cpp
// Function: getAmbiguityCode(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>)
std::string getAmbiguityCode(std::string b1, std::string b2) {
    if ((b1 == "A" && b2 == "C") || (b1 == "C" && b2 == "A"))
        return "M";
    else if ((b1 == "A" && b2 == "G") || (b1 == "G" && b2 == "A"))
        return "R";
    else if ((b1 == "A" && b2 == "T") || (b1 == "T" && b2 == "A"))
        return "W";
    else if ((b1 == "C" && b2 == "G") || (b1 == "G" && b2 == "C"))
        return "S";
    else if ((b1 == "C" && b2 == "T") || (b1 == "T" && b2 == "C"))
        return "Y";
    else if ((b1 == "G" && b2 == "T") || (b1 == "T" && b2 == "G"))
        return "K";
    else
        return "?";
}

// Assembly:
pushq %r15
pushq %r14
pushq %rbx
movq %rdx, %r14
movq %rsi, %r15
movq %rdi, %rbx
leaq 0x7398d(%rip), %rsi     # 0xcb2b0
movq %r15, %rdi
callq 0x8160
testl %eax, %eax
jne 0x57946
leaq 0x7396c(%rip), %rsi     # 0xcb2a2
movq %r14, %rdi
callq 0x8160
testl %eax, %eax
je 0x57b2e
leaq 0x73955(%rip), %rsi     # 0xcb2a2
movq %r15, %rdi
callq 0x8160
testl %eax, %eax
jne 0x57970
leaq 0x73950(%rip), %rsi     # 0xcb2b0
movq %r14, %rdi
callq 0x8160
testl %eax, %eax
je 0x57b2e
leaq 0x73939(%rip), %rsi     # 0xcb2b0
movq %r15, %rdi
callq 0x8160
testl %eax, %eax
jne 0x5799a
leaq 0x7391f(%rip), %rsi     # 0xcb2a9
movq %r14, %rdi
callq 0x8160
testl %eax, %eax
je 0x57b45
leaq 0x73908(%rip), %rsi     # 0xcb2a9
movq %r15, %rdi
callq 0x8160
testl %eax, %eax
jne 0x579c4
leaq 0x738fc(%rip), %rsi     # 0xcb2b0
movq %r14, %rdi
callq 0x8160
testl %eax, %eax
je 0x57b45
leaq 0x738e5(%rip), %rsi     # 0xcb2b0
movq %r15, %rdi
callq 0x8160
testl %eax, %eax
jne 0x579ee
leaq 0x738bd(%rip), %rsi     # 0xcb29b
movq %r14, %rdi
callq 0x8160
testl %eax, %eax
je 0x57b5c
leaq 0x738a6(%rip), %rsi     # 0xcb29b
movq %r15, %rdi
callq 0x8160
testl %eax, %eax
jne 0x57a18
leaq 0x738a8(%rip), %rsi     # 0xcb2b0
movq %r14, %rdi
callq 0x8160
testl %eax, %eax
je 0x57b5c
leaq 0x73883(%rip), %rsi     # 0xcb2a2
movq %r15, %rdi
callq 0x8160
testl %eax, %eax
jne 0x57a42
leaq 0x73877(%rip), %rsi     # 0xcb2a9
movq %r14, %rdi
callq 0x8160
testl %eax, %eax
je 0x57b73
leaq 0x73860(%rip), %rsi     # 0xcb2a9
movq %r15, %rdi
callq 0x8160
testl %eax, %eax
jne 0x57a6c
leaq 0x73846(%rip), %rsi     # 0xcb2a2
movq %r14, %rdi
callq 0x8160
testl %eax, %eax
je 0x57b73
leaq 0x7382f(%rip), %rsi     # 0xcb2a2
movq %r15, %rdi
callq 0x8160
testl %eax, %eax
jne 0x57a96
leaq 0x73815(%rip), %rsi     # 0xcb29b
movq %r14, %rdi
callq 0x8160
testl %eax, %eax
je 0x57b8a
leaq 0x737fe(%rip), %rsi     # 0xcb29b
movq %r15, %rdi
callq 0x8160
testl %eax, %eax
jne 0x57ac0
leaq 0x737f2(%rip), %rsi     # 0xcb2a2
movq %r14, %rdi
callq 0x8160
testl %eax, %eax
je 0x57b8a
leaq 0x737e2(%rip), %rsi     # 0xcb2a9
movq %r15, %rdi
callq 0x8160
testl %eax, %eax
jne 0x57aea
leaq 0x737c1(%rip), %rsi     # 0xcb29b
movq %r14, %rdi
callq 0x8160
testl %eax, %eax
je 0x57ba1
leaq 0x737aa(%rip), %rsi     # 0xcb29b
movq %r15, %rdi
callq 0x8160
testl %eax, %eax
jne 0x57b14
leaq 0x737a5(%rip), %rsi     # 0xcb2a9
movq %r14, %rdi
callq 0x8160
testl %eax, %eax
je 0x57ba1
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0x8a7b1(%rip), %rsi     # 0xe22d3
leaq 0x8a7ab(%rip), %rdx     # 0xe22d4
jmp 0x57bb6
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0x73a5b(%rip), %rsi     # 0xcb597
leaq 0x73a55(%rip), %rdx     # 0xcb598
jmp 0x57bb6
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0x8cf94(%rip), %rsi     # 0xe4ae7
leaq 0x8cf8e(%rip), %rdx     # 0xe4ae8
jmp 0x57bb6
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0x8fdc1(%rip), %rsi     # 0xe792b
leaq 0x8fdbb(%rip), %rdx     # 0xe792c
jmp 0x57bb6
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0x73997(%rip), %rsi     # 0xcb518
leaq 0x73991(%rip), %rdx     # 0xcb519
jmp 0x57bb6
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0x7ca97(%rip), %rsi     # 0xd462f
leaq 0x7ca91(%rip), %rdx     # 0xd4630
jmp 0x57bb6
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0x801c8(%rip), %rsi     # 0xd7d77
leaq 0x801c2(%rip), %rdx     # 0xd7d78
movq %rbx, %rdi
callq 0x28952
movq %rbx, %rax
popq %rbx
popq %r14
popq %r15
retq
nop