// File: /workspace/github_c_makefile_star2_O1/fukunagatsu[P]RIblast/./seed_search.h
// Function: SeedSearch::SeedSearch(int, int, int, double)
SeedSearch(int h, int l, int mal, double he){
    _max_seed_length = l;
    _pair_size = 6;
    _hash_size = h;
    _min_accessible_length = mal;
    _hybrid_energy_threshold = he;
    
    _stem_pair.resize(_pair_size);
    _stem_pair[0].push_back(3); _stem_pair[0].push_back(4);
    _stem_pair[1].push_back(4); _stem_pair[1].push_back(3);
    _stem_pair[2].push_back(4); _stem_pair[2].push_back(5);
    _stem_pair[3].push_back(5); _stem_pair[3].push_back(4);
    _stem_pair[4].push_back(2); _stem_pair[4].push_back(5);
    _stem_pair[5].push_back(5); _stem_pair[5].push_back(2);
    _hit_candidate_result.reserve(5000);
  }

// Assembly:
pushq %r15
pushq %r14
pushq %rbx
subq $0x10, %rsp
movq %rdi, %rbx
xorps %xmm1, %xmm1
movups %xmm1, (%rdi)
xorl %eax, %eax
movq %rax, 0x10(%rdi)
leaq 0x30(%rdi), %r14
movups %xmm1, 0x30(%rdi)
movq %rax, 0x40(%rdi)
movl %edx, 0x1c(%rdi)
movl $0x6, 0x18(%rdi)
movl %esi, 0x20(%rdi)
movl %ecx, 0x24(%rdi)
movsd %xmm0, 0x28(%rdi)
movl $0x6, %esi
callq 0x113e2
movq (%rbx), %rdi
movl $0x3, 0xc(%rsp)
movq 0x8(%rdi), %rsi
cmpq 0x10(%rdi), %rsi
je 0x10eee
movl $0x3, (%rsi)
addq $0x4, %rsi
movq %rsi, 0x8(%rdi)
jmp 0x10ef8
leaq 0xc(%rsp), %rdx
callq 0x11b9a
movq (%rbx), %rdi
movl $0x4, 0xc(%rsp)
movq 0x8(%rdi), %rsi
cmpq 0x10(%rdi), %rsi
je 0x10f1d
movl $0x4, (%rsi)
addq $0x4, %rsi
movq %rsi, 0x8(%rdi)
jmp 0x10f27
leaq 0xc(%rsp), %rdx
callq 0x11b9a
movq (%rbx), %rdi
movl $0x4, 0xc(%rsp)
movq 0x20(%rdi), %rsi
cmpq 0x28(%rdi), %rsi
je 0x10f4c
movl $0x4, (%rsi)
addq $0x4, %rsi
movq %rsi, 0x20(%rdi)
jmp 0x10f5a
addq $0x18, %rdi
leaq 0xc(%rsp), %rdx
callq 0x11b9a
movq (%rbx), %rdi
movl $0x3, 0xc(%rsp)
movq 0x20(%rdi), %rsi
cmpq 0x28(%rdi), %rsi
je 0x10f7f
movl $0x3, (%rsi)
addq $0x4, %rsi
movq %rsi, 0x20(%rdi)
jmp 0x10f8d
addq $0x18, %rdi
leaq 0xc(%rsp), %rdx
callq 0x11b9a
movq (%rbx), %rdi
movl $0x4, 0xc(%rsp)
movq 0x38(%rdi), %rsi
cmpq 0x40(%rdi), %rsi
je 0x10fb2
movl $0x4, (%rsi)
addq $0x4, %rsi
movq %rsi, 0x38(%rdi)
jmp 0x10fc0
addq $0x30, %rdi
leaq 0xc(%rsp), %rdx
callq 0x11b9a
movq (%rbx), %rdi
movl $0x5, 0xc(%rsp)
movq 0x38(%rdi), %rsi
cmpq 0x40(%rdi), %rsi
je 0x10fe5
movl $0x5, (%rsi)
addq $0x4, %rsi
movq %rsi, 0x38(%rdi)
jmp 0x10ff3
addq $0x30, %rdi
leaq 0xc(%rsp), %rdx
callq 0x11b9a
movq (%rbx), %rdi
movl $0x5, 0xc(%rsp)
movq 0x50(%rdi), %rsi
cmpq 0x58(%rdi), %rsi
je 0x11018
movl $0x5, (%rsi)
addq $0x4, %rsi
movq %rsi, 0x50(%rdi)
jmp 0x11026
addq $0x48, %rdi
leaq 0xc(%rsp), %rdx
callq 0x11b9a
movq (%rbx), %rdi
movl $0x4, 0xc(%rsp)
movq 0x50(%rdi), %rsi
cmpq 0x58(%rdi), %rsi
je 0x1104b
movl $0x4, (%rsi)
addq $0x4, %rsi
movq %rsi, 0x50(%rdi)
jmp 0x11059
addq $0x48, %rdi
leaq 0xc(%rsp), %rdx
callq 0x11b9a
movq (%rbx), %rdi
movl $0x2, 0xc(%rsp)
movq 0x68(%rdi), %rsi
cmpq 0x70(%rdi), %rsi
je 0x1107e
movl $0x2, (%rsi)
addq $0x4, %rsi
movq %rsi, 0x68(%rdi)
jmp 0x1108c
addq $0x60, %rdi
leaq 0xc(%rsp), %rdx
callq 0x11b9a
movq (%rbx), %rdi
movl $0x5, 0xc(%rsp)
movq 0x68(%rdi), %rsi
cmpq 0x70(%rdi), %rsi
je 0x110b1
movl $0x5, (%rsi)
addq $0x4, %rsi
movq %rsi, 0x68(%rdi)
jmp 0x110bf
addq $0x60, %rdi
leaq 0xc(%rsp), %rdx
callq 0x11b9a
movq (%rbx), %rdi
movl $0x5, 0xc(%rsp)
movq 0x80(%rdi), %rsi
cmpq 0x88(%rdi), %rsi
je 0x110ed
movl $0x5, (%rsi)
addq $0x4, %rsi
movq %rsi, 0x80(%rdi)
jmp 0x110fb
addq $0x78, %rdi
leaq 0xc(%rsp), %rdx
callq 0x11b9a
movq (%rbx), %rdi
movl $0x2, 0xc(%rsp)
movq 0x80(%rdi), %rsi
cmpq 0x88(%rdi), %rsi
je 0x11129
movl $0x2, (%rsi)
addq $0x4, %rsi
movq %rsi, 0x80(%rdi)
jmp 0x11137
addq $0x78, %rdi
leaq 0xc(%rsp), %rdx
callq 0x11b9a
movl $0x1388, %esi           # imm = 0x1388
movq %r14, %rdi
callq 0x1141e
addq $0x10, %rsp
popq %rbx
popq %r14
popq %r15
retq
jmp 0x11166
jmp 0x11166
jmp 0x11166
jmp 0x11166
jmp 0x11166
jmp 0x11166
jmp 0x11166
jmp 0x11166
jmp 0x11166
jmp 0x11166
jmp 0x11166
jmp 0x11166
movq %rax, %r15
movq (%r14), %rdi
testq %rdi, %rdi
je 0x1117d
movq 0x40(%rbx), %rsi
subq %rdi, %rsi
callq 0x3230
movq %rbx, %rdi
callq 0x48c8
movq %r15, %rdi
callq 0x33e0
nop