LLM4Binary/decompile-bench-makefile huggingface dataset:
// File: /workspace/github_c_makefile_star2_O1/nh13[P]ksw/src/parasail/src/satcheck.c
// Function: parasail_sg_qe_db_rowcol_diag_sse41_128_sat
parasail_result_t* parasail_sg_qe_db_rowcol_diag_sse41_128_sat(
        const char * const restrict s1, const int s1Len,
        const char * const restrict s2, const int s2Len,
        const int open, const int gap,
        const parasail_matrix_t *matrix)
{
    parasail_result_t * result = NULL;

    result = parasail_sg_qe_db_rowcol_diag_sse41_128_8(s1, s1Len, s2, s2Len, open, gap, matrix);
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_qe_db_rowcol_diag_sse41_128_16(s1, s1Len, s2, s2Len, open, gap, matrix);
    }
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_qe_db_rowcol_diag_sse41_128_32(s1, s1Len, s2, s2Len, open, gap, matrix);
    }

    return result;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
movl %r8d, %r15d
movl %ecx, %r12d
movq %rdx, %r13
movl %esi, %ebp
movq %rdi, %r14
movq 0x60(%rsp), %rax
movq %rax, 0x18(%rsp)
movq %rax, (%rsp)
movl %r9d, 0x14(%rsp)
callq 0x4339ca
movq %rax, %rbx
movq %rax, %rdi
callq 0x20a805
testl %eax, %eax
movq %r14, 0x20(%rsp)
je 0x275a19
movq %rbx, %rdi
callq 0x209999
movq 0x18(%rsp), %rax
movq %rax, (%rsp)
movq %r14, %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl 0x14(%rsp), %r14d
movl %r14d, %r9d
callq 0x4300e6
movq %rax, %rbx
jmp 0x275a1e
movl 0x14(%rsp), %r14d
movq %rbx, %rdi
callq 0x20a805
testl %eax, %eax
je 0x275a58
movq %rbx, %rdi
callq 0x209999
movq 0x20(%rsp), %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl %r14d, %r9d
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x42db86
movq %rbx, %rax
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O1/nh13[P]ksw/src/parasail/src/satcheck.c
// Function: parasail_sg_qe_db_rowcol_diag_avx2_256_sat
parasail_result_t* parasail_sg_qe_db_rowcol_diag_avx2_256_sat(
        const char * const restrict s1, const int s1Len,
        const char * const restrict s2, const int s2Len,
        const int open, const int gap,
        const parasail_matrix_t *matrix)
{
    parasail_result_t * result = NULL;

    result = parasail_sg_qe_db_rowcol_diag_avx2_256_8(s1, s1Len, s2, s2Len, open, gap, matrix);
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_qe_db_rowcol_diag_avx2_256_16(s1, s1Len, s2, s2Len, open, gap, matrix);
    }
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_qe_db_rowcol_diag_avx2_256_32(s1, s1Len, s2, s2Len, open, gap, matrix);
    }

    return result;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
movl %r8d, %r15d
movl %ecx, %r12d
movq %rdx, %r13
movl %esi, %ebp
movq %rdi, %r14
movq 0x60(%rsp), %rax
movq %rax, 0x18(%rsp)
movq %rax, (%rsp)
movl %r9d, 0x14(%rsp)
callq 0x534be7
movq %rax, %rbx
movq %rax, %rdi
callq 0x20a805
testl %eax, %eax
movq %r14, 0x20(%rsp)
je 0x275ae3
movq %rbx, %rdi
callq 0x209999
movq 0x18(%rsp), %rax
movq %rax, (%rsp)
movq %r14, %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl 0x14(%rsp), %r14d
movl %r14d, %r9d
callq 0x52eda7
movq %rax, %rbx
jmp 0x275ae8
movl 0x14(%rsp), %r14d
movq %rbx, %rdi
callq 0x20a805
testl %eax, %eax
je 0x275b22
movq %rbx, %rdi
callq 0x209999
movq 0x20(%rsp), %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl %r14d, %r9d
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x52b542
movq %rbx, %rax
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O1/nh13[P]ksw/src/parasail/src/satcheck.c
// Function: parasail_sg_qe_db_stats_rowcol_scan_sat
parasail_result_t* parasail_sg_qe_db_stats_rowcol_scan_sat(
        const char * const restrict s1, const int s1Len,
        const char * const restrict s2, const int s2Len,
        const int open, const int gap,
        const parasail_matrix_t *matrix)
{
    parasail_result_t * result = NULL;

    result = parasail_sg_qe_db_stats_rowcol_scan_8(s1, s1Len, s2, s2Len, open, gap, matrix);
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_qe_db_stats_rowcol_scan_16(s1, s1Len, s2, s2Len, open, gap, matrix);
    }
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_qe_db_stats_rowcol_scan_32(s1, s1Len, s2, s2Len, open, gap, matrix);
    }

    return result;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
movl %r8d, %r15d
movl %ecx, %r12d
movq %rdx, %r13
movl %esi, %ebp
movq %rdi, %r14
movq 0x60(%rsp), %rax
movq %rax, 0x18(%rsp)
movq %rax, (%rsp)
movl %r9d, 0x14(%rsp)
callq 0x23f48f
movq %rax, %rbx
movq %rax, %rdi
callq 0x20a805
testl %eax, %eax
movq %r14, 0x20(%rsp)
je 0x275bad
movq %rbx, %rdi
callq 0x209999
movq 0x18(%rsp), %rax
movq %rax, (%rsp)
movq %r14, %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl 0x14(%rsp), %r14d
movl %r14d, %r9d
callq 0x23f486
movq %rax, %rbx
jmp 0x275bb2
movl 0x14(%rsp), %r14d
movq %rbx, %rdi
callq 0x20a805
testl %eax, %eax
je 0x275bec
movq %rbx, %rdi
callq 0x209999
movq 0x20(%rsp), %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl %r14d, %r9d
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x23f47d
movq %rbx, %rax
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O1/nh13[P]ksw/src/parasail/src/satcheck.c
// Function: parasail_sg_qe_db_stats_rowcol_scan_sse2_128_sat
parasail_result_t* parasail_sg_qe_db_stats_rowcol_scan_sse2_128_sat(
        const char * const restrict s1, const int s1Len,
        const char * const restrict s2, const int s2Len,
        const int open, const int gap,
        const parasail_matrix_t *matrix)
{
    parasail_result_t * result = NULL;

    result = parasail_sg_qe_db_stats_rowcol_scan_sse2_128_8(s1, s1Len, s2, s2Len, open, gap, matrix);
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_qe_db_stats_rowcol_scan_sse2_128_16(s1, s1Len, s2, s2Len, open, gap, matrix);
    }
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_qe_db_stats_rowcol_scan_sse2_128_32(s1, s1Len, s2, s2Len, open, gap, matrix);
    }

    return result;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
movl %r8d, %r15d
movl %ecx, %r12d
movq %rdx, %r13
movl %esi, %ebp
movq %rdi, %r14
movq 0x60(%rsp), %rax
movq %rax, 0x18(%rsp)
movq %rax, (%rsp)
movl %r9d, 0x14(%rsp)
callq 0x361288
movq %rax, %rbx
movq %rax, %rdi
callq 0x20a805
testl %eax, %eax
movq %r14, 0x20(%rsp)
je 0x275c77
movq %rbx, %rdi
callq 0x209999
movq 0x18(%rsp), %rax
movq %rax, (%rsp)
movq %r14, %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl 0x14(%rsp), %r14d
movl %r14d, %r9d
callq 0x35cbfe
movq %rax, %rbx
jmp 0x275c7c
movl 0x14(%rsp), %r14d
movq %rbx, %rdi
callq 0x20a805
testl %eax, %eax
je 0x275cb6
movq %rbx, %rdi
callq 0x209999
movq 0x20(%rsp), %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl %r14d, %r9d
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x358f79
movq %rbx, %rax
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O1/nh13[P]ksw/src/parasail/src/satcheck.c
// Function: parasail_sg_qe_db_stats_rowcol_scan_sse41_128_sat
parasail_result_t* parasail_sg_qe_db_stats_rowcol_scan_sse41_128_sat(
        const char * const restrict s1, const int s1Len,
        const char * const restrict s2, const int s2Len,
        const int open, const int gap,
        const parasail_matrix_t *matrix)
{
    parasail_result_t * result = NULL;

    result = parasail_sg_qe_db_stats_rowcol_scan_sse41_128_8(s1, s1Len, s2, s2Len, open, gap, matrix);
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_qe_db_stats_rowcol_scan_sse41_128_16(s1, s1Len, s2, s2Len, open, gap, matrix);
    }
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_qe_db_stats_rowcol_scan_sse41_128_32(s1, s1Len, s2, s2Len, open, gap, matrix);
    }

    return result;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
movl %r8d, %r15d
movl %ecx, %r12d
movq %rdx, %r13
movl %esi, %ebp
movq %rdi, %r14
movq 0x60(%rsp), %rax
movq %rax, 0x18(%rsp)
movq %rax, (%rsp)
movl %r9d, 0x14(%rsp)
callq 0x44968a
movq %rax, %rbx
movq %rax, %rdi
callq 0x20a805
testl %eax, %eax
movq %r14, 0x20(%rsp)
je 0x275d41
movq %rbx, %rdi
callq 0x209999
movq 0x18(%rsp), %rax
movq %rax, (%rsp)
movq %r14, %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl 0x14(%rsp), %r14d
movl %r14d, %r9d
callq 0x4455b3
movq %rax, %rbx
jmp 0x275d46
movl 0x14(%rsp), %r14d
movq %rbx, %rdi
callq 0x20a805
testl %eax, %eax
je 0x275d80
movq %rbx, %rdi
callq 0x209999
movq 0x20(%rsp), %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl %r14d, %r9d
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x441da8
movq %rbx, %rax
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O1/nh13[P]ksw/src/parasail/src/satcheck.c
// Function: parasail_sg_qe_db_stats_rowcol_striped_sat
parasail_result_t* parasail_sg_qe_db_stats_rowcol_striped_sat(
        const char * const restrict s1, const int s1Len,
        const char * const restrict s2, const int s2Len,
        const int open, const int gap,
        const parasail_matrix_t *matrix)
{
    parasail_result_t * result = NULL;

    result = parasail_sg_qe_db_stats_rowcol_striped_8(s1, s1Len, s2, s2Len, open, gap, matrix);
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_qe_db_stats_rowcol_striped_16(s1, s1Len, s2, s2Len, open, gap, matrix);
    }
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_qe_db_stats_rowcol_striped_32(s1, s1Len, s2, s2Len, open, gap, matrix);
    }

    return result;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
movl %r8d, %r15d
movl %ecx, %r12d
movq %rdx, %r13
movl %esi, %ebp
movq %rdi, %r14
movq 0x60(%rsp), %rax
movq %rax, 0x18(%rsp)
movq %rax, (%rsp)
movl %r9d, 0x14(%rsp)
callq 0x23f4b3
movq %rax, %rbx
movq %rax, %rdi
callq 0x20a805
testl %eax, %eax
movq %r14, 0x20(%rsp)
je 0x275ed5
movq %rbx, %rdi
callq 0x209999
movq 0x18(%rsp), %rax
movq %rax, (%rsp)
movq %r14, %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl 0x14(%rsp), %r14d
movl %r14d, %r9d
callq 0x23f4aa
movq %rax, %rbx
jmp 0x275eda
movl 0x14(%rsp), %r14d
movq %rbx, %rdi
callq 0x20a805
testl %eax, %eax
je 0x275f14
movq %rbx, %rdi
callq 0x209999
movq 0x20(%rsp), %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl %r14d, %r9d
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x23f4a1
movq %rbx, %rax
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O1/nh13[P]ksw/src/parasail/src/satcheck.c
// Function: parasail_sg_qe_db_stats_rowcol_striped_sse2_128_sat
parasail_result_t* parasail_sg_qe_db_stats_rowcol_striped_sse2_128_sat(
        const char * const restrict s1, const int s1Len,
        const char * const restrict s2, const int s2Len,
        const int open, const int gap,
        const parasail_matrix_t *matrix)
{
    parasail_result_t * result = NULL;

    result = parasail_sg_qe_db_stats_rowcol_striped_sse2_128_8(s1, s1Len, s2, s2Len, open, gap, matrix);
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_qe_db_stats_rowcol_striped_sse2_128_16(s1, s1Len, s2, s2Len, open, gap, matrix);
    }
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_qe_db_stats_rowcol_striped_sse2_128_32(s1, s1Len, s2, s2Len, open, gap, matrix);
    }

    return result;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
movl %r8d, %r15d
movl %ecx, %r12d
movq %rdx, %r13
movl %esi, %ebp
movq %rdi, %r14
movq 0x60(%rsp), %rax
movq %rax, 0x18(%rsp)
movq %rax, (%rsp)
movl %r9d, 0x14(%rsp)
callq 0x383b77
movq %rax, %rbx
movq %rax, %rdi
callq 0x20a805
testl %eax, %eax
movq %r14, 0x20(%rsp)
je 0x275f9f
movq %rbx, %rdi
callq 0x209999
movq 0x18(%rsp), %rax
movq %rax, (%rsp)
movq %r14, %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl 0x14(%rsp), %r14d
movl %r14d, %r9d
callq 0x37f86c
movq %rax, %rbx
jmp 0x275fa4
movl 0x14(%rsp), %r14d
movq %rbx, %rdi
callq 0x20a805
testl %eax, %eax
je 0x275fde
movq %rbx, %rdi
callq 0x209999
movq 0x20(%rsp), %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl %r14d, %r9d
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x37bfa9
movq %rbx, %rax
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O1/nh13[P]ksw/src/parasail/src/satcheck.c
// Function: parasail_sg_qe_db_stats_rowcol_striped_sse41_128_sat
parasail_result_t* parasail_sg_qe_db_stats_rowcol_striped_sse41_128_sat(
        const char * const restrict s1, const int s1Len,
        const char * const restrict s2, const int s2Len,
        const int open, const int gap,
        const parasail_matrix_t *matrix)
{
    parasail_result_t * result = NULL;

    result = parasail_sg_qe_db_stats_rowcol_striped_sse41_128_8(s1, s1Len, s2, s2Len, open, gap, matrix);
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_qe_db_stats_rowcol_striped_sse41_128_16(s1, s1Len, s2, s2Len, open, gap, matrix);
    }
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_qe_db_stats_rowcol_striped_sse41_128_32(s1, s1Len, s2, s2Len, open, gap, matrix);
    }

    return result;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
movl %r8d, %r15d
movl %ecx, %r12d
movq %rdx, %r13
movl %esi, %ebp
movq %rdi, %r14
movq 0x60(%rsp), %rax
movq %rax, 0x18(%rsp)
movq %rax, (%rsp)
movl %r9d, 0x14(%rsp)
callq 0x46948d
movq %rax, %rbx
movq %rax, %rdi
callq 0x20a805
testl %eax, %eax
movq %r14, 0x20(%rsp)
je 0x276069
movq %rbx, %rdi
callq 0x209999
movq 0x18(%rsp), %rax
movq %rax, (%rsp)
movq %r14, %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl 0x14(%rsp), %r14d
movl %r14d, %r9d
callq 0x4655e2
movq %rax, %rbx
jmp 0x27606e
movl 0x14(%rsp), %r14d
movq %rbx, %rdi
callq 0x20a805
testl %eax, %eax
je 0x2760a8
movq %rbx, %rdi
callq 0x209999
movq 0x20(%rsp), %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl %r14d, %r9d
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x462175
movq %rbx, %rax
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O1/nh13[P]ksw/src/parasail/src/satcheck.c
// Function: parasail_sg_qe_db_stats_rowcol_striped_avx2_256_sat
parasail_result_t* parasail_sg_qe_db_stats_rowcol_striped_avx2_256_sat(
        const char * const restrict s1, const int s1Len,
        const char * const restrict s2, const int s2Len,
        const int open, const int gap,
        const parasail_matrix_t *matrix)
{
    parasail_result_t * result = NULL;

    result = parasail_sg_qe_db_stats_rowcol_striped_avx2_256_8(s1, s1Len, s2, s2Len, open, gap, matrix);
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_qe_db_stats_rowcol_striped_avx2_256_16(s1, s1Len, s2, s2Len, open, gap, matrix);
    }
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_qe_db_stats_rowcol_striped_avx2_256_32(s1, s1Len, s2, s2Len, open, gap, matrix);
    }

    return result;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
movl %r8d, %r15d
movl %ecx, %r12d
movq %rdx, %r13
movl %esi, %ebp
movq %rdi, %r14
movq 0x60(%rsp), %rax
movq %rax, 0x18(%rsp)
movq %rax, (%rsp)
movl %r9d, 0x14(%rsp)
callq 0x5735b3
movq %rax, %rbx
movq %rax, %rdi
callq 0x20a805
testl %eax, %eax
movq %r14, 0x20(%rsp)
je 0x276133
movq %rbx, %rdi
callq 0x209999
movq 0x18(%rsp), %rax
movq %rax, (%rsp)
movq %r14, %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl 0x14(%rsp), %r14d
movl %r14d, %r9d
callq 0x56f71a
movq %rax, %rbx
jmp 0x276138
movl 0x14(%rsp), %r14d
movq %rbx, %rdi
callq 0x20a805
testl %eax, %eax
je 0x276172
movq %rbx, %rdi
callq 0x209999
movq 0x20(%rsp), %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl %r14d, %r9d
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x56bb6b
movq %rbx, %rax
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O1/nh13[P]ksw/src/parasail/src/satcheck.c
// Function: parasail_sg_qe_db_stats_rowcol_diag_sat
parasail_result_t* parasail_sg_qe_db_stats_rowcol_diag_sat(
        const char * const restrict s1, const int s1Len,
        const char * const restrict s2, const int s2Len,
        const int open, const int gap,
        const parasail_matrix_t *matrix)
{
    parasail_result_t * result = NULL;

    result = parasail_sg_qe_db_stats_rowcol_diag_8(s1, s1Len, s2, s2Len, open, gap, matrix);
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_qe_db_stats_rowcol_diag_16(s1, s1Len, s2, s2Len, open, gap, matrix);
    }
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_qe_db_stats_rowcol_diag_32(s1, s1Len, s2, s2Len, open, gap, matrix);
    }

    return result;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
movl %r8d, %r15d
movl %ecx, %r12d
movq %rdx, %r13
movl %esi, %ebp
movq %rdi, %r14
movq 0x60(%rsp), %rax
movq %rax, 0x18(%rsp)
movq %rax, (%rsp)
movl %r9d, 0x14(%rsp)
callq 0x23f4d7
movq %rax, %rbx
movq %rax, %rdi
callq 0x20a805
testl %eax, %eax
movq %r14, 0x20(%rsp)
je 0x2761fd
movq %rbx, %rdi
callq 0x209999
movq 0x18(%rsp), %rax
movq %rax, (%rsp)
movq %r14, %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl 0x14(%rsp), %r14d
movl %r14d, %r9d
callq 0x23f4ce
movq %rax, %rbx
jmp 0x276202
movl 0x14(%rsp), %r14d
movq %rbx, %rdi
callq 0x20a805
testl %eax, %eax
je 0x27623c
movq %rbx, %rdi
callq 0x209999
movq 0x20(%rsp), %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl %r14d, %r9d
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x23f4c5
movq %rbx, %rax
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O1/nh13[P]ksw/src/parasail/src/satcheck.c
// Function: parasail_sg_qe_db_stats_rowcol_diag_sse2_128_sat
parasail_result_t* parasail_sg_qe_db_stats_rowcol_diag_sse2_128_sat(
        const char * const restrict s1, const int s1Len,
        const char * const restrict s2, const int s2Len,
        const int open, const int gap,
        const parasail_matrix_t *matrix)
{
    parasail_result_t * result = NULL;

    result = parasail_sg_qe_db_stats_rowcol_diag_sse2_128_8(s1, s1Len, s2, s2Len, open, gap, matrix);
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_qe_db_stats_rowcol_diag_sse2_128_16(s1, s1Len, s2, s2Len, open, gap, matrix);
    }
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_qe_db_stats_rowcol_diag_sse2_128_32(s1, s1Len, s2, s2Len, open, gap, matrix);
    }

    return result;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
movl %r8d, %r15d
movl %ecx, %r12d
movq %rdx, %r13
movl %esi, %ebp
movq %rdi, %r14
movq 0x60(%rsp), %rax
movq %rax, 0x18(%rsp)
movq %rax, (%rsp)
movl %r9d, 0x14(%rsp)
callq 0x373d0e
movq %rax, %rbx
movq %rax, %rdi
callq 0x20a805
testl %eax, %eax
movq %r14, 0x20(%rsp)
je 0x2762c7
movq %rbx, %rdi
callq 0x209999
movq 0x18(%rsp), %rax
movq %rax, (%rsp)
movq %r14, %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl 0x14(%rsp), %r14d
movl %r14d, %r9d
callq 0x36e2d6
movq %rax, %rbx
jmp 0x2762cc
movl 0x14(%rsp), %r14d
movq %rbx, %rdi
callq 0x20a805
testl %eax, %eax
je 0x276306
movq %rbx, %rdi
callq 0x209999
movq 0x20(%rsp), %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl %r14d, %r9d
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x369c47
movq %rbx, %rax
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O1/nh13[P]ksw/src/parasail/src/satcheck.c
// Function: parasail_sg_qe_db_trace_scan_sat
parasail_result_t* parasail_sg_qe_db_trace_scan_sat(
        const char * const restrict s1, const int s1Len,
        const char * const restrict s2, const int s2Len,
        const int open, const int gap,
        const parasail_matrix_t *matrix)
{
    parasail_result_t * result = NULL;

    result = parasail_sg_qe_db_trace_scan_8(s1, s1Len, s2, s2Len, open, gap, matrix);
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_qe_db_trace_scan_16(s1, s1Len, s2, s2Len, open, gap, matrix);
    }
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_qe_db_trace_scan_32(s1, s1Len, s2, s2Len, open, gap, matrix);
    }

    return result;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
movl %r8d, %r15d
movl %ecx, %r12d
movq %rdx, %r13
movl %esi, %ebp
movq %rdi, %r14
movq 0x60(%rsp), %rax
movq %rax, 0x18(%rsp)
movq %rax, (%rsp)
movl %r9d, 0x14(%rsp)
callq 0x23f4fb
movq %rax, %rbx
movq %rax, %rdi
callq 0x20a805
testl %eax, %eax
movq %r14, 0x20(%rsp)
je 0x276525
movq %rbx, %rdi
callq 0x209999
movq 0x18(%rsp), %rax
movq %rax, (%rsp)
movq %r14, %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl 0x14(%rsp), %r14d
movl %r14d, %r9d
callq 0x23f4f2
movq %rax, %rbx
jmp 0x27652a
movl 0x14(%rsp), %r14d
movq %rbx, %rdi
callq 0x20a805
testl %eax, %eax
je 0x276564
movq %rbx, %rdi
callq 0x209999
movq 0x20(%rsp), %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl %r14d, %r9d
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x23f4e9
movq %rbx, %rax
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O1/nh13[P]ksw/src/parasail/src/satcheck.c
// Function: parasail_sg_qe_db_trace_scan_sse2_128_sat
parasail_result_t* parasail_sg_qe_db_trace_scan_sse2_128_sat(
        const char * const restrict s1, const int s1Len,
        const char * const restrict s2, const int s2Len,
        const int open, const int gap,
        const parasail_matrix_t *matrix)
{
    parasail_result_t * result = NULL;

    result = parasail_sg_qe_db_trace_scan_sse2_128_8(s1, s1Len, s2, s2Len, open, gap, matrix);
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_qe_db_trace_scan_sse2_128_16(s1, s1Len, s2, s2Len, open, gap, matrix);
    }
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_qe_db_trace_scan_sse2_128_32(s1, s1Len, s2, s2Len, open, gap, matrix);
    }

    return result;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
movl %r8d, %r15d
movl %ecx, %r12d
movq %rdx, %r13
movl %esi, %ebp
movq %rdi, %r14
movq 0x60(%rsp), %rax
movq %rax, 0x18(%rsp)
movq %rax, (%rsp)
movl %r9d, 0x14(%rsp)
callq 0x38c2ea
movq %rax, %rbx
movq %rax, %rdi
callq 0x20a805
testl %eax, %eax
movq %r14, 0x20(%rsp)
je 0x2765ef
movq %rbx, %rdi
callq 0x209999
movq 0x18(%rsp), %rax
movq %rax, (%rsp)
movq %r14, %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl 0x14(%rsp), %r14d
movl %r14d, %r9d
callq 0x38a5da
movq %rax, %rbx
jmp 0x2765f4
movl 0x14(%rsp), %r14d
movq %rbx, %rdi
callq 0x20a805
testl %eax, %eax
je 0x27662e
movq %rbx, %rdi
callq 0x209999
movq 0x20(%rsp), %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl %r14d, %r9d
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x388a29
movq %rbx, %rax
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O1/nh13[P]ksw/src/parasail/src/satcheck.c
// Function: parasail_sg_qe_db_trace_scan_sse41_128_sat
parasail_result_t* parasail_sg_qe_db_trace_scan_sse41_128_sat(
        const char * const restrict s1, const int s1Len,
        const char * const restrict s2, const int s2Len,
        const int open, const int gap,
        const parasail_matrix_t *matrix)
{
    parasail_result_t * result = NULL;

    result = parasail_sg_qe_db_trace_scan_sse41_128_8(s1, s1Len, s2, s2Len, open, gap, matrix);
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_qe_db_trace_scan_sse41_128_16(s1, s1Len, s2, s2Len, open, gap, matrix);
    }
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_qe_db_trace_scan_sse41_128_32(s1, s1Len, s2, s2Len, open, gap, matrix);
    }

    return result;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
movl %r8d, %r15d
movl %ecx, %r12d
movq %rdx, %r13
movl %esi, %ebp
movq %rdi, %r14
movq 0x60(%rsp), %rax
movq %rax, 0x18(%rsp)
movq %rax, (%rsp)
movl %r9d, 0x14(%rsp)
callq 0x471163
movq %rax, %rbx
movq %rax, %rdi
callq 0x20a805
testl %eax, %eax
movq %r14, 0x20(%rsp)
je 0x2766b9
movq %rbx, %rdi
callq 0x209999
movq 0x18(%rsp), %rax
movq %rax, (%rsp)
movq %r14, %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl 0x14(%rsp), %r14d
movl %r14d, %r9d
callq 0x46f711
movq %rax, %rbx
jmp 0x2766be
movl 0x14(%rsp), %r14d
movq %rbx, %rdi
callq 0x20a805
testl %eax, %eax
je 0x2766f8
movq %rbx, %rdi
callq 0x209999
movq 0x20(%rsp), %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl %r14d, %r9d
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x46dce8
movq %rbx, %rax
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O1/nh13[P]ksw/src/parasail/src/satcheck.c
// Function: parasail_sg_qe_db_trace_scan_avx2_256_sat
parasail_result_t* parasail_sg_qe_db_trace_scan_avx2_256_sat(
        const char * const restrict s1, const int s1Len,
        const char * const restrict s2, const int s2Len,
        const int open, const int gap,
        const parasail_matrix_t *matrix)
{
    parasail_result_t * result = NULL;

    result = parasail_sg_qe_db_trace_scan_avx2_256_8(s1, s1Len, s2, s2Len, open, gap, matrix);
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_qe_db_trace_scan_avx2_256_16(s1, s1Len, s2, s2Len, open, gap, matrix);
    }
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_qe_db_trace_scan_avx2_256_32(s1, s1Len, s2, s2Len, open, gap, matrix);
    }

    return result;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
movl %r8d, %r15d
movl %ecx, %r12d
movq %rdx, %r13
movl %esi, %ebp
movq %rdi, %r14
movq 0x60(%rsp), %rax
movq %rax, 0x18(%rsp)
movq %rax, (%rsp)
movl %r9d, 0x14(%rsp)
callq 0x57bd4f
movq %rax, %rbx
movq %rax, %rdi
callq 0x20a805
testl %eax, %eax
movq %r14, 0x20(%rsp)
je 0x276783
movq %rbx, %rdi
callq 0x209999
movq 0x18(%rsp), %rax
movq %rax, (%rsp)
movq %r14, %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl 0x14(%rsp), %r14d
movl %r14d, %r9d
callq 0x57a2ae
movq %rax, %rbx
jmp 0x276788
movl 0x14(%rsp), %r14d
movq %rbx, %rdi
callq 0x20a805
testl %eax, %eax
je 0x2767c2
movq %rbx, %rdi
callq 0x209999
movq 0x20(%rsp), %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl %r14d, %r9d
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x5787ef
movq %rbx, %rax
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O1/nh13[P]ksw/src/parasail/src/satcheck.c
// Function: parasail_sg_qe_db_trace_striped_sat
parasail_result_t* parasail_sg_qe_db_trace_striped_sat(
        const char * const restrict s1, const int s1Len,
        const char * const restrict s2, const int s2Len,
        const int open, const int gap,
        const parasail_matrix_t *matrix)
{
    parasail_result_t * result = NULL;

    result = parasail_sg_qe_db_trace_striped_8(s1, s1Len, s2, s2Len, open, gap, matrix);
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_qe_db_trace_striped_16(s1, s1Len, s2, s2Len, open, gap, matrix);
    }
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_qe_db_trace_striped_32(s1, s1Len, s2, s2Len, open, gap, matrix);
    }

    return result;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
movl %r8d, %r15d
movl %ecx, %r12d
movq %rdx, %r13
movl %esi, %ebp
movq %rdi, %r14
movq 0x60(%rsp), %rax
movq %rax, 0x18(%rsp)
movq %rax, (%rsp)
movl %r9d, 0x14(%rsp)
callq 0x23f51f
movq %rax, %rbx
movq %rax, %rdi
callq 0x20a805
testl %eax, %eax
movq %r14, 0x20(%rsp)
je 0x27684d
movq %rbx, %rdi
callq 0x209999
movq 0x18(%rsp), %rax
movq %rax, (%rsp)
movq %r14, %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl 0x14(%rsp), %r14d
movl %r14d, %r9d
callq 0x23f516
movq %rax, %rbx
jmp 0x276852
movl 0x14(%rsp), %r14d
movq %rbx, %rdi
callq 0x20a805
testl %eax, %eax
je 0x27688c
movq %rbx, %rdi
callq 0x209999
movq 0x20(%rsp), %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl %r14d, %r9d
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x23f50d
movq %rbx, %rax
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O1/nh13[P]ksw/src/parasail/src/satcheck.c
// Function: parasail_sg_qe_db_trace_striped_sse2_128_sat
parasail_result_t* parasail_sg_qe_db_trace_striped_sse2_128_sat(
        const char * const restrict s1, const int s1Len,
        const char * const restrict s2, const int s2Len,
        const int open, const int gap,
        const parasail_matrix_t *matrix)
{
    parasail_result_t * result = NULL;

    result = parasail_sg_qe_db_trace_striped_sse2_128_8(s1, s1Len, s2, s2Len, open, gap, matrix);
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_qe_db_trace_striped_sse2_128_16(s1, s1Len, s2, s2Len, open, gap, matrix);
    }
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_qe_db_trace_striped_sse2_128_32(s1, s1Len, s2, s2Len, open, gap, matrix);
    }

    return result;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
movl %r8d, %r15d
movl %ecx, %r12d
movq %rdx, %r13
movl %esi, %ebp
movq %rdi, %r14
movq 0x60(%rsp), %rax
movq %rax, 0x18(%rsp)
movq %rax, (%rsp)
movl %r9d, 0x14(%rsp)
callq 0x3a0fea
movq %rax, %rbx
movq %rax, %rdi
callq 0x20a805
testl %eax, %eax
movq %r14, 0x20(%rsp)
je 0x276917
movq %rbx, %rdi
callq 0x209999
movq 0x18(%rsp), %rax
movq %rax, (%rsp)
movq %r14, %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl 0x14(%rsp), %r14d
movl %r14d, %r9d
callq 0x39eba0
movq %rax, %rbx
jmp 0x27691c
movl 0x14(%rsp), %r14d
movq %rbx, %rdi
callq 0x20a805
testl %eax, %eax
je 0x276956
movq %rbx, %rdi
callq 0x209999
movq 0x20(%rsp), %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl %r14d, %r9d
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x39c951
movq %rbx, %rax
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O1/nh13[P]ksw/src/parasail/src/satcheck.c
// Function: parasail_sg_qe_db_trace_diag_sat
parasail_result_t* parasail_sg_qe_db_trace_diag_sat(
        const char * const restrict s1, const int s1Len,
        const char * const restrict s2, const int s2Len,
        const int open, const int gap,
        const parasail_matrix_t *matrix)
{
    parasail_result_t * result = NULL;

    result = parasail_sg_qe_db_trace_diag_8(s1, s1Len, s2, s2Len, open, gap, matrix);
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_qe_db_trace_diag_16(s1, s1Len, s2, s2Len, open, gap, matrix);
    }
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_qe_db_trace_diag_32(s1, s1Len, s2, s2Len, open, gap, matrix);
    }

    return result;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
movl %r8d, %r15d
movl %ecx, %r12d
movq %rdx, %r13
movl %esi, %ebp
movq %rdi, %r14
movq 0x60(%rsp), %rax
movq %rax, 0x18(%rsp)
movq %rax, (%rsp)
movl %r9d, 0x14(%rsp)
callq 0x23f543
movq %rax, %rbx
movq %rax, %rdi
callq 0x20a805
testl %eax, %eax
movq %r14, 0x20(%rsp)
je 0x276b75
movq %rbx, %rdi
callq 0x209999
movq 0x18(%rsp), %rax
movq %rax, (%rsp)
movq %r14, %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl 0x14(%rsp), %r14d
movl %r14d, %r9d
callq 0x23f53a
movq %rax, %rbx
jmp 0x276b7a
movl 0x14(%rsp), %r14d
movq %rbx, %rdi
callq 0x20a805
testl %eax, %eax
je 0x276bb4
movq %rbx, %rdi
callq 0x209999
movq 0x20(%rsp), %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl %r14d, %r9d
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x23f531
movq %rbx, %rax
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O1/nh13[P]ksw/src/parasail/src/satcheck.c
// Function: parasail_sg_qe_db_trace_diag_sse2_128_sat
parasail_result_t* parasail_sg_qe_db_trace_diag_sse2_128_sat(
        const char * const restrict s1, const int s1Len,
        const char * const restrict s2, const int s2Len,
        const int open, const int gap,
        const parasail_matrix_t *matrix)
{
    parasail_result_t * result = NULL;

    result = parasail_sg_qe_db_trace_diag_sse2_128_8(s1, s1Len, s2, s2Len, open, gap, matrix);
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_qe_db_trace_diag_sse2_128_16(s1, s1Len, s2, s2Len, open, gap, matrix);
    }
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_qe_db_trace_diag_sse2_128_32(s1, s1Len, s2, s2Len, open, gap, matrix);
    }

    return result;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
movl %r8d, %r15d
movl %ecx, %r12d
movq %rdx, %r13
movl %esi, %ebp
movq %rdi, %r14
movq 0x60(%rsp), %rax
movq %rax, 0x18(%rsp)
movq %rax, (%rsp)
movl %r9d, 0x14(%rsp)
callq 0x396c48
movq %rax, %rbx
movq %rax, %rdi
callq 0x20a805
testl %eax, %eax
movq %r14, 0x20(%rsp)
je 0x276c3f
movq %rbx, %rdi
callq 0x209999
movq 0x18(%rsp), %rax
movq %rax, (%rsp)
movq %r14, %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl 0x14(%rsp), %r14d
movl %r14d, %r9d
callq 0x393290
movq %rax, %rbx
jmp 0x276c44
movl 0x14(%rsp), %r14d
movq %rbx, %rdi
callq 0x20a805
testl %eax, %eax
je 0x276c7e
movq %rbx, %rdi
callq 0x209999
movq 0x20(%rsp), %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl %r14d, %r9d
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x390b02
movq %rbx, %rax
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O1/nh13[P]ksw/src/parasail/src/satcheck.c
// Function: parasail_sg_qe_db_trace_diag_sse41_128_sat
parasail_result_t* parasail_sg_qe_db_trace_diag_sse41_128_sat(
        const char * const restrict s1, const int s1Len,
        const char * const restrict s2, const int s2Len,
        const int open, const int gap,
        const parasail_matrix_t *matrix)
{
    parasail_result_t * result = NULL;

    result = parasail_sg_qe_db_trace_diag_sse41_128_8(s1, s1Len, s2, s2Len, open, gap, matrix);
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_qe_db_trace_diag_sse41_128_16(s1, s1Len, s2, s2Len, open, gap, matrix);
    }
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_qe_db_trace_diag_sse41_128_32(s1, s1Len, s2, s2Len, open, gap, matrix);
    }

    return result;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
movl %r8d, %r15d
movl %ecx, %r12d
movq %rdx, %r13
movl %esi, %ebp
movq %rdi, %r14
movq 0x60(%rsp), %rax
movq %rax, 0x18(%rsp)
movq %rax, (%rsp)
movl %r9d, 0x14(%rsp)
callq 0x47aa76
movq %rax, %rbx
movq %rax, %rdi
callq 0x20a805
testl %eax, %eax
movq %r14, 0x20(%rsp)
je 0x276d09
movq %rbx, %rdi
callq 0x209999
movq 0x18(%rsp), %rax
movq %rax, (%rsp)
movq %r14, %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl 0x14(%rsp), %r14d
movl %r14d, %r9d
callq 0x47761a
movq %rax, %rbx
jmp 0x276d0e
movl 0x14(%rsp), %r14d
movq %rbx, %rdi
callq 0x20a805
testl %eax, %eax
je 0x276d48
movq %rbx, %rdi
callq 0x209999
movq 0x20(%rsp), %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl %r14d, %r9d
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x4750d9
movq %rbx, %rax
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O1/nh13[P]ksw/src/parasail/src/satcheck.c
// Function: parasail_sg_qe_db_trace_diag_avx2_256_sat
parasail_result_t* parasail_sg_qe_db_trace_diag_avx2_256_sat(
        const char * const restrict s1, const int s1Len,
        const char * const restrict s2, const int s2Len,
        const int open, const int gap,
        const parasail_matrix_t *matrix)
{
    parasail_result_t * result = NULL;

    result = parasail_sg_qe_db_trace_diag_avx2_256_8(s1, s1Len, s2, s2Len, open, gap, matrix);
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_qe_db_trace_diag_avx2_256_16(s1, s1Len, s2, s2Len, open, gap, matrix);
    }
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_qe_db_trace_diag_avx2_256_32(s1, s1Len, s2, s2Len, open, gap, matrix);
    }

    return result;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
movl %r8d, %r15d
movl %ecx, %r12d
movq %rdx, %r13
movl %esi, %ebp
movq %rdi, %r14
movq 0x60(%rsp), %rax
movq %rax, 0x18(%rsp)
movq %rax, (%rsp)
movl %r9d, 0x14(%rsp)
callq 0x5898c7
movq %rax, %rbx
movq %rax, %rdi
callq 0x20a805
testl %eax, %eax
movq %r14, 0x20(%rsp)
je 0x276dd3
movq %rbx, %rdi
callq 0x209999
movq 0x18(%rsp), %rax
movq %rax, (%rsp)
movq %r14, %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl 0x14(%rsp), %r14d
movl %r14d, %r9d
callq 0x5843c1
movq %rax, %rbx
jmp 0x276dd8
movl 0x14(%rsp), %r14d
movq %rbx, %rdi
callq 0x20a805
testl %eax, %eax
je 0x276e12
movq %rbx, %rdi
callq 0x209999
movq 0x20(%rsp), %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl %r14d, %r9d
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x580dd1
movq %rbx, %rax
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O1/nh13[P]ksw/src/parasail/src/satcheck.c
// Function: parasail_sg_qb_db_scan_sat
parasail_result_t* parasail_sg_qb_db_scan_sat(
        const char * const restrict s1, const int s1Len,
        const char * const restrict s2, const int s2Len,
        const int open, const int gap,
        const parasail_matrix_t *matrix)
{
    parasail_result_t * result = NULL;

    result = parasail_sg_qb_db_scan_8(s1, s1Len, s2, s2Len, open, gap, matrix);
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_qb_db_scan_16(s1, s1Len, s2, s2Len, open, gap, matrix);
    }
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_qb_db_scan_32(s1, s1Len, s2, s2Len, open, gap, matrix);
    }

    return result;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
movl %r8d, %r15d
movl %ecx, %r12d
movq %rdx, %r13
movl %esi, %ebp
movq %rdi, %r14
movq 0x60(%rsp), %rax
movq %rax, 0x18(%rsp)
movq %rax, (%rsp)
movl %r9d, 0x14(%rsp)
callq 0x243f03
movq %rax, %rbx
movq %rax, %rdi
callq 0x20a805
testl %eax, %eax
movq %r14, 0x20(%rsp)
je 0x276e9d
movq %rbx, %rdi
callq 0x209999
movq 0x18(%rsp), %rax
movq %rax, (%rsp)
movq %r14, %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl 0x14(%rsp), %r14d
movl %r14d, %r9d
callq 0x243efa
movq %rax, %rbx
jmp 0x276ea2
movl 0x14(%rsp), %r14d
movq %rbx, %rdi
callq 0x20a805
testl %eax, %eax
je 0x276edc
movq %rbx, %rdi
callq 0x209999
movq 0x20(%rsp), %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl %r14d, %r9d
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x243ef1
movq %rbx, %rax
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O1/nh13[P]ksw/src/parasail/src/satcheck.c
// Function: parasail_sg_qb_db_scan_sse2_128_sat
parasail_result_t* parasail_sg_qb_db_scan_sse2_128_sat(
        const char * const restrict s1, const int s1Len,
        const char * const restrict s2, const int s2Len,
        const int open, const int gap,
        const parasail_matrix_t *matrix)
{
    parasail_result_t * result = NULL;

    result = parasail_sg_qb_db_scan_sse2_128_8(s1, s1Len, s2, s2Len, open, gap, matrix);
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_qb_db_scan_sse2_128_16(s1, s1Len, s2, s2Len, open, gap, matrix);
    }
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_qb_db_scan_sse2_128_32(s1, s1Len, s2, s2Len, open, gap, matrix);
    }

    return result;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
movl %r8d, %r15d
movl %ecx, %r12d
movq %rdx, %r13
movl %esi, %ebp
movq %rdi, %r14
movq 0x60(%rsp), %rax
movq %rax, 0x18(%rsp)
movq %rax, (%rsp)
movl %r9d, 0x14(%rsp)
callq 0x2b0b8f
movq %rax, %rbx
movq %rax, %rdi
callq 0x20a805
testl %eax, %eax
movq %r14, 0x20(%rsp)
je 0x276f67
movq %rbx, %rdi
callq 0x209999
movq 0x18(%rsp), %rax
movq %rax, (%rsp)
movq %r14, %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl 0x14(%rsp), %r14d
movl %r14d, %r9d
callq 0x2af202
movq %rax, %rbx
jmp 0x276f6c
movl 0x14(%rsp), %r14d
movq %rbx, %rdi
callq 0x20a805
testl %eax, %eax
je 0x276fa6
movq %rbx, %rdi
callq 0x209999
movq 0x20(%rsp), %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl %r14d, %r9d
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x2ada29
movq %rbx, %rax
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O1/nh13[P]ksw/src/parasail/src/satcheck.c
// Function: parasail_sg_qb_db_scan_sse41_128_sat
parasail_result_t* parasail_sg_qb_db_scan_sse41_128_sat(
        const char * const restrict s1, const int s1Len,
        const char * const restrict s2, const int s2Len,
        const int open, const int gap,
        const parasail_matrix_t *matrix)
{
    parasail_result_t * result = NULL;

    result = parasail_sg_qb_db_scan_sse41_128_8(s1, s1Len, s2, s2Len, open, gap, matrix);
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_qb_db_scan_sse41_128_16(s1, s1Len, s2, s2Len, open, gap, matrix);
    }
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_qb_db_scan_sse41_128_32(s1, s1Len, s2, s2Len, open, gap, matrix);
    }

    return result;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
movl %r8d, %r15d
movl %ecx, %r12d
movq %rdx, %r13
movl %esi, %ebp
movq %rdi, %r14
movq 0x60(%rsp), %rax
movq %rax, 0x18(%rsp)
movq %rax, (%rsp)
movl %r9d, 0x14(%rsp)
callq 0x3a738c
movq %rax, %rbx
movq %rax, %rdi
callq 0x20a805
testl %eax, %eax
movq %r14, 0x20(%rsp)
je 0x277031
movq %rbx, %rdi
callq 0x209999
movq 0x18(%rsp), %rax
movq %rax, (%rsp)
movq %r14, %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl 0x14(%rsp), %r14d
movl %r14d, %r9d
callq 0x3a5cca
movq %rax, %rbx
jmp 0x277036
movl 0x14(%rsp), %r14d
movq %rbx, %rdi
callq 0x20a805
testl %eax, %eax
je 0x277070
movq %rbx, %rdi
callq 0x209999
movq 0x20(%rsp), %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl %r14d, %r9d
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x3a45f7
movq %rbx, %rax
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O1/nh13[P]ksw/src/parasail/src/satcheck.c
// Function: parasail_sg_qb_db_scan_avx2_256_sat
parasail_result_t* parasail_sg_qb_db_scan_avx2_256_sat(
        const char * const restrict s1, const int s1Len,
        const char * const restrict s2, const int s2Len,
        const int open, const int gap,
        const parasail_matrix_t *matrix)
{
    parasail_result_t * result = NULL;

    result = parasail_sg_qb_db_scan_avx2_256_8(s1, s1Len, s2, s2Len, open, gap, matrix);
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_qb_db_scan_avx2_256_16(s1, s1Len, s2, s2Len, open, gap, matrix);
    }
    if (parasail_result_is_saturated(result)) {
        parasail_result_free(result);
        result = parasail_sg_qb_db_scan_avx2_256_32(s1, s1Len, s2, s2Len, open, gap, matrix);
    }

    return result;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
movl %r8d, %r15d
movl %ecx, %r12d
movq %rdx, %r13
movl %esi, %ebp
movq %rdi, %r14
movq 0x60(%rsp), %rax
movq %rax, 0x18(%rsp)
movq %rax, (%rsp)
movl %r9d, 0x14(%rsp)
callq 0x48aed2
movq %rax, %rbx
movq %rax, %rdi
callq 0x20a805
testl %eax, %eax
movq %r14, 0x20(%rsp)
je 0x2770fb
movq %rbx, %rdi
callq 0x209999
movq 0x18(%rsp), %rax
movq %rax, (%rsp)
movq %r14, %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl 0x14(%rsp), %r14d
movl %r14d, %r9d
callq 0x48980c
movq %rax, %rbx
jmp 0x277100
movl 0x14(%rsp), %r14d
movq %rbx, %rdi
callq 0x20a805
testl %eax, %eax
je 0x27713a
movq %rbx, %rdi
callq 0x209999
movq 0x20(%rsp), %rdi
movl %ebp, %esi
movq %r13, %rdx
movl %r12d, %ecx
movl %r15d, %r8d
movl %r14d, %r9d
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x48811d
movq %rbx, %rax
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq