// File: /workspace/github_c_makefile_star2_O3/ToniWestbrook[P]paladin/bwamem.c
// Function: worker1
static void worker1(void *data, int i, int tid)
{
	worker_t *w = (worker_t*)data;
	if (!(w->opt->flag&MEM_F_PE)) {
		if (bwa_verbose >= 4) printf("=====> Processing read '%s' <=====\n", w->seqs[i].name);
		w->regs[i] = mem_align1_core(w->opt, w->bwt, w->bns, w->pac, w->seqs[i].l_seq, w->seqs[i].seq, w->aux[tid]);
	} else {
		if (bwa_verbose >= 4) printf("=====> Processing read '%s'/1 <=====\n", w->seqs[i<<1|0].name);
		w->regs[i<<1|0] = mem_align1_core(w->opt, w->bwt, w->bns, w->pac, w->seqs[i<<1|0].l_seq, w->seqs[i<<1|0].seq, w->aux[tid]);
		if (bwa_verbose >= 4) printf("=====> Processing read '%s'/2 <=====\n", w->seqs[i<<1|1].name);
		w->regs[i<<1|1] = mem_align1_core(w->opt, w->bwt, w->bns, w->pac, w->seqs[i<<1|1].l_seq, w->seqs[i<<1|1].seq, w->aux[tid]);
	}
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
movl %edx, %ebp
movl %esi, %r14d
movq %rdi, %rbx
movq (%rdi), %rsi
testb $0x2, 0x48(%rsi)
leaq 0x11999(%rip), %rax     # 0x30e40
movl (%rax), %eax
jne 0x1f4d7
cmpl $0x3, %eax
jle 0x1f506
movq 0x30(%rbx), %rax
movslq %r14d, %r14
leaq (%r14,%r14,2), %rcx
shlq $0x4, %rcx
movq 0x8(%rax,%rcx), %rsi
leaq 0x9d32(%rip), %rdi      # 0x291fd
xorl %eax, %eax
callq 0x3060
movq (%rbx), %rsi
jmp 0x1f509
cmpl $0x3, %eax
jle 0x1f545
movq 0x30(%rbx), %rax
addl %r14d, %r14d
movslq %r14d, %r12
leaq (%r12,%r12,2), %rcx
shlq $0x4, %rcx
movq 0x8(%rax,%rcx), %rsi
leaq 0x9d27(%rip), %rdi      # 0x29221
xorl %eax, %eax
callq 0x3060
movq (%rbx), %rsi
jmp 0x1f54b
movslq %r14d, %r14
movq 0x38(%rbx), %r15
movq 0x8(%rbx), %rdx
movq 0x10(%rbx), %rcx
movq 0x18(%rbx), %r8
movq 0x30(%rbx), %rax
leaq (%r14,%r14,2), %r10
shlq $0x5, %r14
shlq $0x4, %r10
movl (%rax,%r10), %r9d
movq 0x28(%rbx), %r11
movslq %ebp, %r12
leaq 0x8(%rsp), %rbx
movq %rbx, %rdi
pushq (%r11,%r12,8)
jmp 0x1f617
addl %r14d, %r14d
movslq %r14d, %r12
movq 0x38(%rbx), %r13
movq 0x8(%rbx), %rdx
movq 0x10(%rbx), %rcx
movq 0x18(%rbx), %r8
movq 0x30(%rbx), %rax
leaq (%r12,%r12,2), %r10
shlq $0x5, %r12
shlq $0x4, %r10
movl (%rax,%r10), %r9d
movq 0x28(%rbx), %r11
movslq %ebp, %rbp
leaq 0x8(%rsp), %r15
movq %r15, %rdi
pushq (%r11,%rbp,8)
pushq 0x18(%rax,%r10)
callq 0x1ef9d
addq $0x10, %rsp
movups (%r15), %xmm0
movups 0x10(%r15), %xmm1
movups %xmm1, 0x10(%r13,%r12)
movups %xmm0, (%r13,%r12)
leaq 0x11894(%rip), %rax     # 0x30e40
cmpl $0x3, (%rax)
jle 0x1f5d9
movq 0x30(%rbx), %rax
orl $0x1, %r14d
movslq %r14d, %r14
leaq (%r14,%r14,2), %rcx
shlq $0x4, %rcx
movq 0x8(%rax,%rcx), %rsi
leaq 0x9c77(%rip), %rdi      # 0x29247
xorl %eax, %eax
callq 0x3060
jmp 0x1f5e0
orl $0x1, %r14d
movslq %r14d, %r14
movq 0x38(%rbx), %r15
movq (%rbx), %rsi
movq 0x8(%rbx), %rdx
movq 0x10(%rbx), %rcx
movq 0x18(%rbx), %r8
movq 0x30(%rbx), %rax
leaq (%r14,%r14,2), %r10
shlq $0x5, %r14
shlq $0x4, %r10
movl (%rax,%r10), %r9d
movq 0x28(%rbx), %r11
leaq 0x8(%rsp), %rbx
movq %rbx, %rdi
pushq (%r11,%rbp,8)
pushq 0x18(%rax,%r10)
callq 0x1ef9d
addq $0x10, %rsp
movups (%rbx), %xmm0
movups 0x10(%rbx), %xmm1
movups %xmm1, 0x10(%r15,%r14)
movups %xmm0, (%r15,%r14)
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq