// File: /workspace/github_cpp_makefile_star2_O3/CK7[P]abawaca/src/String.h
// Function: Bio::DNAString::Illegal_DNAString::Illegal_DNAString(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>)
Illegal_DNAString(string str, const char* func, string err_msg) : exception_base("", "")
                {
                        msg = string("Fatal error, attempted to initialize DNAString with illegal string:\n\n") + str;
                        if(err_msg.size() != 0)
                                msg += string("\n\nError message:\t") + err_msg + string("\n");
			else
				msg += "\n\n";
                        msg += string("Function:\t") + string(func) + string("\n");
                }

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0xe8, %rsp
movq %rcx, -0xc8(%rbp)
movq %rdx, -0xc0(%rbp)
movq %rsi, %r14
movq %rdi, %r12
leaq -0xf8(%rbp), %r15
movq %r15, -0x10(%r15)
leaq 0x3c1a(%rip), %r13      # 0x1a25a
leaq -0x108(%rbp), %rbx
movq %rbx, %rdi
movq %r13, %rsi
movq %r13, %rdx
callq 0xb226
movq %r12, -0x78(%rbp)
movq %r12, %rdi
movq %rbx, %rsi
movq %r13, %rdx
callq 0xadfc
movq -0x108(%rbp), %rdi
cmpq %r15, %rdi
je 0x16678
callq 0x5340
leaq 0xb6c1(%rip), %rax      # 0x21d40
movq -0x78(%rbp), %rcx
movq %rax, (%rcx)
leaq -0x40(%rbp), %r13
movq %r13, -0x10(%r13)
leaq 0x3ec4(%rip), %rsi      # 0x1a559
leaq 0x3f02(%rip), %rdx      # 0x1a59e
leaq -0x50(%rbp), %rdi
callq 0xb226
movq -0xc8(%rbp), %r12
movq (%r14), %rsi
movq 0x8(%r14), %rdx
leaq -0x50(%rbp), %rdi
callq 0x5120
leaq -0x60(%rbp), %r15
movq %r15, -0x10(%r15)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x166e0
movq %rdx, -0x70(%rbp)
movq (%rcx), %rdx
movq %rdx, -0x60(%rbp)
jmp 0x166e7
movups (%rcx), %xmm0
movups %xmm0, (%r15)
movq 0x8(%rax), %rdx
leaq -0x70(%rbp), %rbx
movq %rdx, 0x8(%rbx)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq -0x78(%rbp), %rax
leaq 0x8(%rax), %r14
movq %r14, %rdi
movq %rbx, %rsi
callq 0x5490
movq (%rbx), %rdi
cmpq %r15, %rdi
je 0x16722
callq 0x5340
movq -0x50(%rbp), %rdi
cmpq %r13, %rdi
je 0x16730
callq 0x5340
cmpq $0x0, 0x8(%r12)
je 0x16792
leaq -0xa8(%rbp), %rbx
movq %rbx, -0x10(%rbx)
leaq 0x3e55(%rip), %rsi      # 0x1a59f
leaq 0x3e5f(%rip), %rdx      # 0x1a5b0
leaq -0xb8(%rbp), %rdi
callq 0xb226
movq (%r12), %rsi
movq 0x8(%r12), %rdx
leaq -0xb8(%rbp), %rdi
callq 0x5120
movq %r13, -0x50(%rbp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x167a6
movq %rdx, -0x50(%rbp)
movq (%rcx), %rdx
movq %rdx, -0x40(%rbp)
jmp 0x167ae
leaq 0x3e03(%rip), %rsi      # 0x1a59c
movq %r14, %rdi
callq 0x5740
jmp 0x168d7
movups (%rcx), %xmm0
movups %xmm0, (%r13)
movq 0x8(%rax), %rdx
movq %rdx, -0x48(%rbp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq -0x88(%rbp), %r12
movq %r12, -0x10(%r12)
leaq 0x3dc5(%rip), %rsi      # 0x1a59d
leaq 0x3dbf(%rip), %rdx      # 0x1a59e
leaq -0x98(%rbp), %rdi
callq 0xb226
movq -0x50(%rbp), %rcx
movq -0x48(%rbp), %r8
movq -0x90(%rbp), %rdx
leaq (%rdx,%r8), %rax
movl $0xf, %edi
cmpq %r13, %rcx
je 0x1680c
movq -0x40(%rbp), %rdi
movq -0x98(%rbp), %rsi
cmpq %rdi, %rax
jbe 0x1682e
movl $0xf, %edi
cmpq %r12, %rsi
je 0x16829
movq -0x88(%rbp), %rdi
cmpq %rdi, %rax
jbe 0x16839
leaq -0x50(%rbp), %rdi
callq 0x5120
jmp 0x16849
leaq -0x98(%rbp), %rdi
xorl %esi, %esi
xorl %edx, %edx
callq 0x5400
movq %r15, -0x70(%rbp)
movq (%rax), %rdx
leaq 0x10(%rax), %rcx
cmpq %rcx, %rdx
je 0x16866
movq %rdx, -0x70(%rbp)
movq (%rcx), %rdx
movq %rdx, -0x60(%rbp)
jmp 0x1686d
movups (%rcx), %xmm0
movups %xmm0, (%r15)
movq %rax, %rdx
addq $0x8, %rdx
movq 0x8(%rax), %rsi
movq %rsi, -0x68(%rbp)
movq %rcx, (%rax)
movq $0x0, (%rdx)
movb $0x0, (%rcx)
movq -0x70(%rbp), %rsi
movq -0x68(%rbp), %rdx
movq %r14, %rdi
callq 0x5120
movq -0x70(%rbp), %rdi
cmpq %r15, %rdi
je 0x168a7
callq 0x5340
movq -0x98(%rbp), %rdi
cmpq %r12, %rdi
je 0x168b8
callq 0x5340
movq -0x50(%rbp), %rdi
cmpq %r13, %rdi
je 0x168c6
callq 0x5340
movq -0xb8(%rbp), %rdi
cmpq %rbx, %rdi
je 0x168d7
callq 0x5340
leaq -0xa8(%rbp), %rbx
movq %rbx, -0x10(%rbx)
leaq 0x2c38(%rip), %rsi      # 0x19521
leaq 0x2c3b(%rip), %rdx      # 0x1952b
leaq -0xb8(%rbp), %rdi
callq 0xb226
leaq -0x98(%rbp), %rdi
leaq -0x29(%rbp), %rdx
movq -0xc0(%rbp), %rsi
callq 0x5160
movq -0xb8(%rbp), %rcx
movq -0xb0(%rbp), %r8
movq -0x90(%rbp), %rdx
leaq (%rdx,%r8), %rax
movl $0xf, %edi
cmpq %rbx, %rcx
je 0x1693d
movq -0xa8(%rbp), %rdi
movq -0x98(%rbp), %rsi
cmpq %rdi, %rax
jbe 0x16966
leaq -0x88(%rbp), %r9
movl $0xf, %edi
cmpq %r9, %rsi
je 0x16961
movq -0x88(%rbp), %rdi
cmpq %rdi, %rax
jbe 0x16974
leaq -0xb8(%rbp), %rdi
callq 0x5120
jmp 0x16984
leaq -0x98(%rbp), %rdi
xorl %esi, %esi
xorl %edx, %edx
callq 0x5400
movq %r13, -0x50(%rbp)
movq (%rax), %rdx
leaq 0x10(%rax), %rcx
cmpq %rcx, %rdx
je 0x169a1
movq %rdx, -0x50(%rbp)
movq (%rcx), %rdx
movq %rdx, -0x40(%rbp)
jmp 0x169a9
movups (%rcx), %xmm0
movups %xmm0, (%r13)
movq %rax, %rdx
addq $0x8, %rdx
movq 0x8(%rax), %rsi
movq %rsi, -0x48(%rbp)
movq %rcx, (%rax)
movq $0x0, (%rdx)
movb $0x0, (%rcx)
leaq -0xd8(%rbp), %r12
movq %r12, -0x10(%r12)
leaq 0x3bc5(%rip), %rsi      # 0x1a59d
leaq 0x3bbf(%rip), %rdx      # 0x1a59e
leaq -0xe8(%rbp), %rdi
callq 0xb226
movq -0x50(%rbp), %rcx
movq -0x48(%rbp), %r8
movq -0xe0(%rbp), %rdx
leaq (%rdx,%r8), %rax
movl $0xf, %edi
cmpq %r13, %rcx
je 0x16a0c
movq -0x40(%rbp), %rdi
movq -0xe8(%rbp), %rsi
cmpq %rdi, %rax
jbe 0x16a2e
movl $0xf, %edi
cmpq %r12, %rsi
je 0x16a29
movq -0xd8(%rbp), %rdi
cmpq %rdi, %rax
jbe 0x16a39
leaq -0x50(%rbp), %rdi
callq 0x5120
jmp 0x16a49
leaq -0xe8(%rbp), %rdi
xorl %esi, %esi
xorl %edx, %edx
callq 0x5400
movq %r15, -0x70(%rbp)
movq (%rax), %rdx
leaq 0x10(%rax), %rcx
cmpq %rcx, %rdx
je 0x16a66
movq %rdx, -0x70(%rbp)
movq (%rcx), %rdx
movq %rdx, -0x60(%rbp)
jmp 0x16a6d
movups (%rcx), %xmm0
movups %xmm0, (%r15)
movq %rax, %rdx
addq $0x8, %rdx
movq 0x8(%rax), %rsi
movq %rsi, -0x68(%rbp)
movq %rcx, (%rax)
movq $0x0, (%rdx)
movb $0x0, (%rcx)
movq -0x70(%rbp), %rsi
movq -0x68(%rbp), %rdx
movq %r14, %rdi
callq 0x5120
movq -0x70(%rbp), %rdi
cmpq %r15, %rdi
je 0x16aa7
callq 0x5340
movq -0xe8(%rbp), %rdi
cmpq %r12, %rdi
je 0x16ab8
callq 0x5340
movq -0x50(%rbp), %rdi
cmpq %r13, %rdi
je 0x16ac6
callq 0x5340
leaq -0x88(%rbp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x16adb
callq 0x5340
movq -0xb8(%rbp), %rdi
cmpq %rbx, %rdi
je 0x16aec
callq 0x5340
addq $0xe8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
jmp 0x16bba
movq %rax, %r14
movq -0x70(%rbp), %rdi
cmpq %r15, %rdi
je 0x16b19
callq 0x5340
jmp 0x16b19
movq %rax, %r14
movq -0x98(%rbp), %rdi
cmpq %r12, %rdi
je 0x16b2f
callq 0x5340
jmp 0x16b2f
movq %rax, %r14
movq -0x50(%rbp), %rdi
cmpq %r13, %rdi
jne 0x16b8d
jmp 0x16b97
jmp 0x16b94
jmp 0x16bba
movq %rax, %r14
movq -0x70(%rbp), %rdi
cmpq %r15, %rdi
je 0x16b54
callq 0x5340
jmp 0x16b54
movq %rax, %r14
movq -0xe8(%rbp), %rdi
cmpq %r12, %rdi
je 0x16b6a
callq 0x5340
jmp 0x16b6a
movq %rax, %r14
movq -0x50(%rbp), %rdi
cmpq %r13, %rdi
je 0x16b7d
callq 0x5340
jmp 0x16b7d
movq %rax, %r14
leaq -0x88(%rbp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x16b97
callq 0x5340
jmp 0x16b97
movq %rax, %r14
movq -0xb8(%rbp), %rdi
cmpq %rbx, %rdi
je 0x16bbd
callq 0x5340
jmp 0x16bbd
jmp 0x16bba
movq %rax, %r14
movq -0x50(%rbp), %rdi
cmpq %r13, %rdi
jne 0x16ba3
jmp 0x16bbd
movq %rax, %r14
movq -0x78(%rbp), %rdi
callq 0xadc8
movq %r14, %rdi
callq 0x56a0
movq %rax, %r14
movq -0x108(%rbp), %rdi
cmpq %r15, %rdi
je 0x16bc6
callq 0x5340
jmp 0x16bc6