// File: /workspace/github_c_makefile_star2_O0/nh13[P]ksw/src/parasail/src/traceback_template.c
// Function: parasail_result_get_traceback_striped_8
static inline parasail_traceback_t* CONCAT(NAME, T) (
        parasail_result_t *result,
        const char *seqA,
        int lena,
        const char *seqB,
        int lenb,
        const parasail_matrix_t *matrix,
        char match, char pos, char neg,
        int case_sensitive,
        const char *alphabet_aliases_)
{
    char alphabet_aliases[256];
    size_t aliases_size = 0;
    parasail_traceback_t *traceback = NULL;
    char *q = malloc(sizeof(char)*(lena+lenb));
    char *d = malloc(sizeof(char)*(lena+lenb));
    char *a = malloc(sizeof(char)*(lena+lenb));
    char *qc = q;
    char *dc = d;
    char *ac = a;
    int64_t i = result->end_query;
    int64_t j = result->end_ref;
    int where = PARASAIL_DIAG;
    D *HT = (D*)result->trace->trace_table;
#if defined(STRIPED)
    int64_t segWidth = 0;
    int64_t segLen = 0;
    if (result->flag & PARASAIL_FLAG_LANES_1) {
        segWidth = 1;
    }
    if (result->flag & PARASAIL_FLAG_LANES_2) {
        segWidth = 2;
    }
    if (result->flag & PARASAIL_FLAG_LANES_4) {
        segWidth = 4;
    }
    if (result->flag & PARASAIL_FLAG_LANES_8) {
        segWidth = 8;
    }
    if (result->flag & PARASAIL_FLAG_LANES_16) {
        segWidth = 16;
    }
    if (result->flag & PARASAIL_FLAG_LANES_32) {
        segWidth = 32;
    }
    if (result->flag & PARASAIL_FLAG_LANES_64) {
        segWidth = 64;
    }
    segLen = (lena + segWidth - 1) / segWidth;
#endif
    if (NULL != alphabet_aliases_) {
        size_t i;
        aliases_size = strlen(alphabet_aliases_);
        PARASAIL_ASSERT(aliases_size % 2 == 0 && aliases_size < 256); // even number of characters in alias
        for (i=0; i<aliases_size; ++i) {
            alphabet_aliases[i] = case_sensitive ? alphabet_aliases_[i] :
                                                   toupper(alphabet_aliases_[i]);
        }
    }
    /* semi-global alignment includes the end gaps */
    if (result->flag & PARASAIL_FLAG_SG) {
        int k;
        if (result->end_query+1 == lena) {
            k = lenb-1;
            while (k > j) {
                *(qc++) = '-';
                *(dc++) = seqB[k];
                *(ac++) = ' ';
                --k;
            }
        }
        else if (result->end_ref+1 == lenb) {
            k = lena-1;
            while (k > i) {
                *(qc++) = missing_char(seqA, k);
                *(dc++) = '-';
                *(ac++) = ' ';
                --k;
            }
        }
        else {
            PARASAIL_ASSERT(0 && "internal error");
        }
    }
    while (i >= 0 || j >= 0) {
        LOC
        if (i < 0) {
            if (!(result->flag & PARASAIL_FLAG_SW)) {
                while (j >= 0) {
                    *(qc++) = '-';
                    *(dc++) = seqB[j];
                    *(ac++) = ' ';
                    --j;
                }
            }
            break;
        }
        if (j < 0) {
            if (!(result->flag & PARASAIL_FLAG_SW)) {
                while (i >= 0) {
                    *(qc++) = missing_char(seqA, i);
                    *(dc++) = '-';
                    *(ac++) = ' ';
                    --i;
                }
            }
            break;
        }
        if (PARASAIL_DIAG == where) {
            if (HT[loc] & PARASAIL_DIAG) {
                *(qc++) = missing_char(seqA, i);
                *(dc++) = seqB[j];
                *(ac++) = match_char(seqA, i, seqB, j, matrix, match, pos, neg, case_sensitive, alphabet_aliases, aliases_size);
                --i;
                --j;
            }
            else if (HT[loc] & PARASAIL_INS) {
                where = PARASAIL_INS;
            }
            else if (HT[loc] & PARASAIL_DEL) {
                where = PARASAIL_DEL;
            }
            else {
                break;
            }
        }
        else if (PARASAIL_INS == where) {
            *(qc++) = '-';
            *(dc++) = seqB[j];
            *(ac++) = ' ';
            --j;
            if (HT[loc] & PARASAIL_DIAG_E) {
                where = PARASAIL_DIAG;
            }
            else if (HT[loc] & PARASAIL_INS_E) {
                where = PARASAIL_INS;
            }
            else {
                PARASAIL_ASSERT(0 && "internal error");
            }
        }
        else if (PARASAIL_DEL == where) {
            *(qc++) = missing_char(seqA, i);
            *(dc++) = '-';
            *(ac++) = ' ';
            --i;
            if (HT[loc] & PARASAIL_DIAG_F) {
                where = PARASAIL_DIAG;
            }
            else if (HT[loc] & PARASAIL_DEL_F) {
                where = PARASAIL_DEL;
            }
            else {
                PARASAIL_ASSERT(0 && "internal error");
            }
        }
        else if (PARASAIL_ZERO == where) {
            break;
        }
        else {
            PARASAIL_ASSERT(0 && "internal error");
        }
    }
    *(qc++) = '\0';
    *(dc++) = '\0';
    *(ac++) = '\0';

    traceback = malloc(sizeof(parasail_traceback_t));
    traceback->query = parasail_reverse(q, strlen(q));
    traceback->comp = parasail_reverse(a, strlen(a));
    traceback->ref = parasail_reverse(d, strlen(d));

    free(q);
    free(d);
    free(a);

    return traceback;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r14
pushq %rbx
subq $0x220, %rsp            # imm = 0x220
movq 0x30(%rbp), %rax
movl 0x28(%rbp), %eax
movb 0x20(%rbp), %al
movb 0x18(%rbp), %al
movb 0x10(%rbp), %al
movq %rdi, -0x20(%rbp)
movq %rsi, -0x28(%rbp)
movl %edx, -0x2c(%rbp)
movq %rcx, -0x38(%rbp)
movl %r8d, -0x3c(%rbp)
movq %r9, -0x48(%rbp)
movq $0x0, -0x158(%rbp)
movq $0x0, -0x160(%rbp)
movl -0x2c(%rbp), %eax
addl -0x3c(%rbp), %eax
movslq %eax, %rdi
shlq $0x0, %rdi
callq 0x2af400
movq %rax, -0x168(%rbp)
movl -0x2c(%rbp), %eax
addl -0x3c(%rbp), %eax
movslq %eax, %rdi
shlq $0x0, %rdi
callq 0x2af400
movq %rax, -0x170(%rbp)
movl -0x2c(%rbp), %eax
addl -0x3c(%rbp), %eax
movslq %eax, %rdi
shlq $0x0, %rdi
callq 0x2af400
movq %rax, -0x178(%rbp)
movq -0x168(%rbp), %rax
movq %rax, -0x180(%rbp)
movq -0x170(%rbp), %rax
movq %rax, -0x188(%rbp)
movq -0x178(%rbp), %rax
movq %rax, -0x190(%rbp)
movq -0x20(%rbp), %rax
movslq 0x4(%rax), %rax
movq %rax, -0x198(%rbp)
movq -0x20(%rbp), %rax
movslq 0x8(%rax), %rax
movq %rax, -0x1a0(%rbp)
movl $0x4, -0x1a4(%rbp)
movq -0x20(%rbp), %rax
movq 0x10(%rax), %rax
movq (%rax), %rax
movq %rax, -0x1b0(%rbp)
movq $0x0, -0x1b8(%rbp)
movq $0x0, -0x1c0(%rbp)
movq -0x20(%rbp), %rax
movl 0xc(%rax), %eax
andl $0x1000000, %eax        # imm = 0x1000000
cmpl $0x0, %eax
je 0x3ac28c
movq $0x1, -0x1b8(%rbp)
movq -0x20(%rbp), %rax
movl 0xc(%rax), %eax
andl $0x2000000, %eax        # imm = 0x2000000
cmpl $0x0, %eax
je 0x3ac2a8
movq $0x2, -0x1b8(%rbp)
movq -0x20(%rbp), %rax
movl 0xc(%rax), %eax
andl $0x4000000, %eax        # imm = 0x4000000
cmpl $0x0, %eax
je 0x3ac2c4
movq $0x4, -0x1b8(%rbp)
movq -0x20(%rbp), %rax
movl 0xc(%rax), %eax
andl $0x8000000, %eax        # imm = 0x8000000
cmpl $0x0, %eax
je 0x3ac2e0
movq $0x8, -0x1b8(%rbp)
movq -0x20(%rbp), %rax
movl 0xc(%rax), %eax
andl $0x10000000, %eax       # imm = 0x10000000
cmpl $0x0, %eax
je 0x3ac2fc
movq $0x10, -0x1b8(%rbp)
movq -0x20(%rbp), %rax
movl 0xc(%rax), %eax
andl $0x20000000, %eax       # imm = 0x20000000
cmpl $0x0, %eax
je 0x3ac318
movq $0x20, -0x1b8(%rbp)
movq -0x20(%rbp), %rax
movl 0xc(%rax), %eax
andl $0x40000000, %eax       # imm = 0x40000000
cmpl $0x0, %eax
je 0x3ac334
movq $0x40, -0x1b8(%rbp)
movslq -0x2c(%rbp), %rax
addq -0x1b8(%rbp), %rax
subq $0x1, %rax
cqto
idivq -0x1b8(%rbp)
movq %rax, -0x1c0(%rbp)
xorl %eax, %eax
cmpq 0x30(%rbp), %rax
je 0x3ac440
movq 0x30(%rbp), %rdi
callq 0x2af0e0
movq %rax, -0x158(%rbp)
movq -0x158(%rbp), %rax
andq $0x1, %rax
cmpq $0x0, %rax
jne 0x3ac38d
cmpq $0x100, -0x158(%rbp) # imm = 0x100
jb 0x3ac3c0
movq 0xbcec3c(%rip), %rax    # 0xf7afd0
movq (%rax), %rdi
leaq 0xa03c6e(%rip), %rsi    # 0xdb000c
leaq 0xa89f11(%rip), %rdx    # 0xe362b6
leaq 0xa03cd1(%rip), %rcx    # 0xdb007d
movb $0x0, %al
callq 0x2af440
movq $0x0, -0x18(%rbp)
jmp 0x3acc8a
jmp 0x3ac3c2
movq $0x0, -0x1c8(%rbp)
movq -0x1c8(%rbp), %rax
cmpq -0x158(%rbp), %rax
jae 0x3ac43e
cmpl $0x0, 0x28(%rbp)
je 0x3ac3fa
movq 0x30(%rbp), %rax
movq -0x1c8(%rbp), %rcx
movsbl (%rax,%rcx), %eax
movl %eax, -0x1dc(%rbp)
jmp 0x3ac414
movq 0x30(%rbp), %rax
movq -0x1c8(%rbp), %rcx
movsbl (%rax,%rcx), %edi
callq 0x2af570
movl %eax, -0x1dc(%rbp)
movl -0x1dc(%rbp), %eax
movb %al, %cl
movq -0x1c8(%rbp), %rax
movb %cl, -0x150(%rbp,%rax)
movq -0x1c8(%rbp), %rax
addq $0x1, %rax
movq %rax, -0x1c8(%rbp)
jmp 0x3ac3cd
jmp 0x3ac440
movq -0x20(%rbp), %rax
movl 0xc(%rax), %eax
andl $0x2, %eax
cmpl $0x0, %eax
je 0x3ac5c0
movq -0x20(%rbp), %rax
movl 0x4(%rax), %eax
addl $0x1, %eax
cmpl -0x2c(%rbp), %eax
jne 0x3ac4ed
movl -0x3c(%rbp), %eax
subl $0x1, %eax
movl %eax, -0x1cc(%rbp)
movslq -0x1cc(%rbp), %rax
cmpq -0x1a0(%rbp), %rax
jle 0x3ac4e8
movq -0x180(%rbp), %rax
movq %rax, %rcx
addq $0x1, %rcx
movq %rcx, -0x180(%rbp)
movb $0x2d, (%rax)
movq -0x38(%rbp), %rax
movslq -0x1cc(%rbp), %rcx
movb (%rax,%rcx), %cl
movq -0x188(%rbp), %rax
movq %rax, %rdx
addq $0x1, %rdx
movq %rdx, -0x188(%rbp)
movb %cl, (%rax)
movq -0x190(%rbp), %rax
movq %rax, %rcx
addq $0x1, %rcx
movq %rcx, -0x190(%rbp)
movb $0x20, (%rax)
movl -0x1cc(%rbp), %eax
addl $-0x1, %eax
movl %eax, -0x1cc(%rbp)
jmp 0x3ac472
jmp 0x3ac5be
movq -0x20(%rbp), %rax
movl 0x8(%rax), %eax
addl $0x1, %eax
cmpl -0x3c(%rbp), %eax
jne 0x3ac587
movl -0x2c(%rbp), %eax
subl $0x1, %eax
movl %eax, -0x1cc(%rbp)
movslq -0x1cc(%rbp), %rax
cmpq -0x198(%rbp), %rax
jle 0x3ac585
movq -0x28(%rbp), %rdi
movl -0x1cc(%rbp), %esi
callq 0x3b6400
movb %al, %cl
movq -0x180(%rbp), %rax
movq %rax, %rdx
addq $0x1, %rdx
movq %rdx, -0x180(%rbp)
movb %cl, (%rax)
movq -0x188(%rbp), %rax
movq %rax, %rcx
addq $0x1, %rcx
movq %rcx, -0x188(%rbp)
movb $0x2d, (%rax)
movq -0x190(%rbp), %rax
movq %rax, %rcx
addq $0x1, %rcx
movq %rcx, -0x190(%rbp)
movb $0x20, (%rax)
movl -0x1cc(%rbp), %eax
addl $-0x1, %eax
movl %eax, -0x1cc(%rbp)
jmp 0x3ac50c
jmp 0x3ac5bc
jmp 0x3ac589
movq 0xbcea40(%rip), %rax    # 0xf7afd0
movq (%rax), %rdi
leaq 0xa03a72(%rip), %rsi    # 0xdb000c
leaq 0xa89d15(%rip), %rdx    # 0xe362b6
leaq 0xa89d36(%rip), %rcx    # 0xe362de
movb $0x0, %al
callq 0x2af440
movq $0x0, -0x18(%rbp)
jmp 0x3acc8a
jmp 0x3ac5be
jmp 0x3ac5c0
jmp 0x3ac5c2
movb $0x1, %al
cmpq $0x0, -0x198(%rbp)
movb %al, -0x1dd(%rbp)
jge 0x3ac5e5
cmpq $0x0, -0x1a0(%rbp)
setge %al
movb %al, -0x1dd(%rbp)
movb -0x1dd(%rbp), %al
testb $0x1, %al
jne 0x3ac5f4
jmp 0x3acb5e
movq -0x1a0(%rbp), %rax
imulq -0x1c0(%rbp), %rax
imulq -0x1b8(%rbp), %rax
movq %rax, -0x1f0(%rbp)
movq -0x198(%rbp), %rax
cqto
idivq -0x1c0(%rbp)
movq -0x1f0(%rbp), %rax
imulq -0x1b8(%rbp), %rdx
addq %rdx, %rax
movq %rax, -0x1e8(%rbp)
movq -0x198(%rbp), %rax
cqto
idivq -0x1c0(%rbp)
movq %rax, %rcx
movq -0x1e8(%rbp), %rax
addq %rcx, %rax
movq %rax, -0x1d8(%rbp)
cmpq $0x0, -0x198(%rbp)
jge 0x3ac6f8
movq -0x20(%rbp), %rax
movl 0xc(%rax), %eax
andl $0x4, %eax
cmpl $0x0, %eax
jne 0x3ac6f3
jmp 0x3ac67e
cmpq $0x0, -0x1a0(%rbp)
jl 0x3ac6f1
movq -0x180(%rbp), %rax
movq %rax, %rcx
addq $0x1, %rcx
movq %rcx, -0x180(%rbp)
movb $0x2d, (%rax)
movq -0x38(%rbp), %rax
movq -0x1a0(%rbp), %rcx
movb (%rax,%rcx), %cl
movq -0x188(%rbp), %rax
movq %rax, %rdx
addq $0x1, %rdx
movq %rdx, -0x188(%rbp)
movb %cl, (%rax)
movq -0x190(%rbp), %rax
movq %rax, %rcx
addq $0x1, %rcx
movq %rcx, -0x190(%rbp)
movb $0x20, (%rax)
movq -0x1a0(%rbp), %rax
addq $-0x1, %rax
movq %rax, -0x1a0(%rbp)
jmp 0x3ac67e
jmp 0x3ac6f3
jmp 0x3acb5e
cmpq $0x0, -0x1a0(%rbp)
jge 0x3ac797
movq -0x20(%rbp), %rax
movl 0xc(%rax), %eax
andl $0x4, %eax
cmpl $0x0, %eax
jne 0x3ac792
jmp 0x3ac717
cmpq $0x0, -0x198(%rbp)
jl 0x3ac790
movq -0x28(%rbp), %rdi
movq -0x198(%rbp), %rax
movl %eax, %esi
callq 0x3b6400
movb %al, %cl
movq -0x180(%rbp), %rax
movq %rax, %rdx
addq $0x1, %rdx
movq %rdx, -0x180(%rbp)
movb %cl, (%rax)
movq -0x188(%rbp), %rax
movq %rax, %rcx
addq $0x1, %rcx
movq %rcx, -0x188(%rbp)
movb $0x2d, (%rax)
movq -0x190(%rbp), %rax
movq %rax, %rcx
addq $0x1, %rcx
movq %rcx, -0x190(%rbp)
movb $0x20, (%rax)
movq -0x198(%rbp), %rax
addq $-0x1, %rax
movq %rax, -0x198(%rbp)
jmp 0x3ac717
jmp 0x3ac792
jmp 0x3acb5e
movl $0x4, %eax
cmpl -0x1a4(%rbp), %eax
jne 0x3ac911
movq -0x1b0(%rbp), %rax
movq -0x1d8(%rbp), %rcx
movsbl (%rax,%rcx), %eax
andl $0x4, %eax
cmpl $0x0, %eax
je 0x3ac8b7
movq -0x28(%rbp), %rdi
movq -0x198(%rbp), %rax
movl %eax, %esi
callq 0x3b6400
movb %al, %cl
movq -0x180(%rbp), %rax
movq %rax, %rdx
addq $0x1, %rdx
movq %rdx, -0x180(%rbp)
movb %cl, (%rax)
movq -0x38(%rbp), %rax
movq -0x1a0(%rbp), %rcx
movb (%rax,%rcx), %cl
movq -0x188(%rbp), %rax
movq %rax, %rdx
addq $0x1, %rdx
movq %rdx, -0x188(%rbp)
movb %cl, (%rax)
movq -0x28(%rbp), %rdi
movq -0x198(%rbp), %rax
movl %eax, %esi
movq -0x38(%rbp), %rdx
movq -0x1a0(%rbp), %rax
movl %eax, %ecx
movq -0x48(%rbp), %r8
movb 0x10(%rbp), %r9b
movb 0x18(%rbp), %r14b
movb 0x20(%rbp), %bl
movl 0x28(%rbp), %r11d
leaq -0x150(%rbp), %r10
movq -0x158(%rbp), %rax
movsbl %r9b, %r9d
movsbl %r14b, %r14d
movl %r14d, (%rsp)
movsbl %bl, %ebx
movl %ebx, 0x8(%rsp)
movl %r11d, 0x10(%rsp)
movq %r10, 0x18(%rsp)
movq %rax, 0x20(%rsp)
callq 0x3b6430
movb %al, %cl
movq -0x190(%rbp), %rax
movq %rax, %rdx
addq $0x1, %rdx
movq %rdx, -0x190(%rbp)
movb %cl, (%rax)
movq -0x198(%rbp), %rax
addq $-0x1, %rax
movq %rax, -0x198(%rbp)
movq -0x1a0(%rbp), %rax
addq $-0x1, %rax
movq %rax, -0x1a0(%rbp)
jmp 0x3ac90c
movq -0x1b0(%rbp), %rax
movq -0x1d8(%rbp), %rcx
movsbl (%rax,%rcx), %eax
andl $0x1, %eax
cmpl $0x0, %eax
je 0x3ac8dd
movl $0x1, -0x1a4(%rbp)
jmp 0x3ac90a
movq -0x1b0(%rbp), %rax
movq -0x1d8(%rbp), %rcx
movsbl (%rax,%rcx), %eax
andl $0x2, %eax
cmpl $0x0, %eax
je 0x3ac903
movl $0x2, -0x1a4(%rbp)
jmp 0x3ac908
jmp 0x3acb5e
jmp 0x3ac90a
jmp 0x3ac90c
jmp 0x3acb59
movl $0x1, %eax
cmpl -0x1a4(%rbp), %eax
jne 0x3aca11
movq -0x180(%rbp), %rax
movq %rax, %rcx
addq $0x1, %rcx
movq %rcx, -0x180(%rbp)
movb $0x2d, (%rax)
movq -0x38(%rbp), %rax
movq -0x1a0(%rbp), %rcx
movb (%rax,%rcx), %cl
movq -0x188(%rbp), %rax
movq %rax, %rdx
addq $0x1, %rdx
movq %rdx, -0x188(%rbp)
movb %cl, (%rax)
movq -0x190(%rbp), %rax
movq %rax, %rcx
addq $0x1, %rcx
movq %rcx, -0x190(%rbp)
movb $0x20, (%rax)
movq -0x1a0(%rbp), %rax
addq $-0x1, %rax
movq %rax, -0x1a0(%rbp)
movq -0x1b0(%rbp), %rax
movq -0x1d8(%rbp), %rcx
movsbl (%rax,%rcx), %eax
andl $0x8, %eax
cmpl $0x0, %eax
je 0x3ac9af
movl $0x4, -0x1a4(%rbp)
jmp 0x3aca0c
movq -0x1b0(%rbp), %rax
movq -0x1d8(%rbp), %rcx
movsbl (%rax,%rcx), %eax
andl $0x10, %eax
cmpl $0x0, %eax
je 0x3ac9d5
movl $0x1, -0x1a4(%rbp)
jmp 0x3aca0a
jmp 0x3ac9d7
movq 0xbce5f2(%rip), %rax    # 0xf7afd0
movq (%rax), %rdi
leaq 0xa03624(%rip), %rsi    # 0xdb000c
leaq 0xa898c7(%rip), %rdx    # 0xe362b6
leaq 0xa898e8(%rip), %rcx    # 0xe362de
movb $0x0, %al
callq 0x2af440
movq $0x0, -0x18(%rbp)
jmp 0x3acc8a
jmp 0x3aca0c
jmp 0x3acb57
movl $0x2, %eax
cmpl -0x1a4(%rbp), %eax
jne 0x3acb14
movq -0x28(%rbp), %rdi
movq -0x198(%rbp), %rax
movl %eax, %esi
callq 0x3b6400
movb %al, %cl
movq -0x180(%rbp), %rax
movq %rax, %rdx
addq $0x1, %rdx
movq %rdx, -0x180(%rbp)
movb %cl, (%rax)
movq -0x188(%rbp), %rax
movq %rax, %rcx
addq $0x1, %rcx
movq %rcx, -0x188(%rbp)
movb $0x2d, (%rax)
movq -0x190(%rbp), %rax
movq %rax, %rcx
addq $0x1, %rcx
movq %rcx, -0x190(%rbp)
movb $0x20, (%rax)
movq -0x198(%rbp), %rax
addq $-0x1, %rax
movq %rax, -0x198(%rbp)
movq -0x1b0(%rbp), %rax
movq -0x1d8(%rbp), %rcx
movsbl (%rax,%rcx), %eax
andl $0x20, %eax
cmpl $0x0, %eax
je 0x3acab5
movl $0x4, -0x1a4(%rbp)
jmp 0x3acb12
movq -0x1b0(%rbp), %rax
movq -0x1d8(%rbp), %rcx
movsbl (%rax,%rcx), %eax
andl $0x40, %eax
cmpl $0x0, %eax
je 0x3acadb
movl $0x2, -0x1a4(%rbp)
jmp 0x3acb10
jmp 0x3acadd
movq 0xbce4ec(%rip), %rax    # 0xf7afd0
movq (%rax), %rdi
leaq 0xa0351e(%rip), %rsi    # 0xdb000c
leaq 0xa897c1(%rip), %rdx    # 0xe362b6
leaq 0xa897e2(%rip), %rcx    # 0xe362de
movb $0x0, %al
callq 0x2af440
movq $0x0, -0x18(%rbp)
jmp 0x3acc8a
jmp 0x3acb12
jmp 0x3acb55
xorl %eax, %eax
cmpl -0x1a4(%rbp), %eax
jne 0x3acb20
jmp 0x3acb5e
jmp 0x3acb22
movq 0xbce4a7(%rip), %rax    # 0xf7afd0
movq (%rax), %rdi
leaq 0xa034d9(%rip), %rsi    # 0xdb000c
leaq 0xa8977c(%rip), %rdx    # 0xe362b6
leaq 0xa8979d(%rip), %rcx    # 0xe362de
movb $0x0, %al
callq 0x2af440
movq $0x0, -0x18(%rbp)
jmp 0x3acc8a
jmp 0x3acb57
jmp 0x3acb59
jmp 0x3ac5c2
movq -0x180(%rbp), %rax
movq %rax, %rcx
addq $0x1, %rcx
movq %rcx, -0x180(%rbp)
movb $0x0, (%rax)
movq -0x188(%rbp), %rax
movq %rax, %rcx
addq $0x1, %rcx
movq %rcx, -0x188(%rbp)
movb $0x0, (%rax)
movq -0x190(%rbp), %rax
movq %rax, %rcx
addq $0x1, %rcx
movq %rcx, -0x190(%rbp)
movb $0x0, (%rax)
movl $0x18, %edi
callq 0x2af400
movq %rax, -0x160(%rbp)
movq -0x168(%rbp), %rax
movq %rax, -0x208(%rbp)
movq -0x168(%rbp), %rdi
callq 0x2af0e0
movq -0x208(%rbp), %rdi
movq %rax, %rsi
callq 0x2da790
movq %rax, %rcx
movq -0x160(%rbp), %rax
movq %rcx, (%rax)
movq -0x178(%rbp), %rax
movq %rax, -0x200(%rbp)
movq -0x178(%rbp), %rdi
callq 0x2af0e0
movq -0x200(%rbp), %rdi
movq %rax, %rsi
callq 0x2da790
movq %rax, %rcx
movq -0x160(%rbp), %rax
movq %rcx, 0x8(%rax)
movq -0x170(%rbp), %rax
movq %rax, -0x1f8(%rbp)
movq -0x170(%rbp), %rdi
callq 0x2af0e0
movq -0x1f8(%rbp), %rdi
movq %rax, %rsi
callq 0x2da790
movq %rax, %rcx
movq -0x160(%rbp), %rax
movq %rcx, 0x10(%rax)
movq -0x168(%rbp), %rdi
callq 0x2af3a0
movq -0x170(%rbp), %rdi
callq 0x2af3a0
movq -0x178(%rbp), %rdi
callq 0x2af3a0
movq -0x160(%rbp), %rax
movq %rax, -0x18(%rbp)
movq -0x18(%rbp), %rax
addq $0x220, %rsp            # imm = 0x220
popq %rbx
popq %r14
popq %rbp
retq
nopw (%rax,%rax)