// File: /workspace/github_c_makefile_star2_O0/ToniWestbrook[P]paladin/bwamem.c
// Function: mem_opt_init
mem_opt_t *mem_opt_init()
{
	mem_opt_t *o;
	o = calloc(1, sizeof(mem_opt_t));
	o->outputStream = stdout;
	o->outputType = OUTPUT_TYPE_UNIPROT_FULL;
	o->flag = 0;
	o->a = 1; o->b = 3; //4;
	o->o_del = o->o_ins = 0; //6
	o->e_del = o->e_ins = 1;
	o->w = 100;
	o->T = 15;
	o->zdrop = 100;
	o->pen_unpaired = 17;
	o->pen_clip5 = o->pen_clip3 = 0;
	o->max_mem_intv = 20;
	o->min_orf_len = 250;
	o->min_orf_percent = 0;
	o->proteinFlag = 0;
	o->proteinFlag |= ALIGN_FLAG_BRUTE_ORF;
	o->proteinFlag |= ALIGN_FLAG_ADJUST_ORF;
	o->min_seed_len = 11;
	o->split_width = 10;
	o->max_occ = 500;
	o->max_chain_gap = 10000;
	o->max_ins = 10000;
	o->mask_level = 0.50;
	o->drop_ratio = 0.50;
	o->XA_drop_ratio = 0.8;
	o->split_factor = 1.5;
	o->chunk_size = 10000000;
	o->n_threads = 1;
	o->max_XA_hits = 5;
	o->max_XA_hits_alt = 200;
	o->max_matesw = 50;
	o->mask_level_redun = 0.95;
	o->min_chain_weight = 0;
	o->max_chain_extend = 1<<30;
	o->mapQ_coef_len = 50; o->mapQ_coef_fac = log(o->mapQ_coef_len);
	bwa_fill_scmat(o->a, o->b, o->mat);
	return o;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x10, %rsp
movl $0x1, %edi
movl $0x2a8, %esi            # imm = 0x2A8
leaq 0x1f87f(%rip), %rdx     # 0x3a6b8
movl $0x35, %ecx
leaq 0x1f87c(%rip), %r8      # 0x3a6c1
callq 0x31bf0
movq %rax, -0x8(%rbp)
movq 0x2515b(%rip), %rax     # 0x3ffb0
movq (%rax), %rcx
movq -0x8(%rbp), %rax
movq %rcx, 0x38(%rax)
movq -0x8(%rbp), %rax
movl $0x1, 0x40(%rax)
movq -0x8(%rbp), %rax
movl $0x0, 0x48(%rax)
movq -0x8(%rbp), %rax
movl $0x1, (%rax)
movq -0x8(%rbp), %rax
movl $0x3, 0x4(%rax)
movq -0x8(%rbp), %rax
movl $0x0, 0x10(%rax)
movq -0x8(%rbp), %rax
movl $0x0, 0x8(%rax)
movq -0x8(%rbp), %rax
movl $0x1, 0x14(%rax)
movq -0x8(%rbp), %rax
movl $0x1, 0xc(%rax)
movq -0x8(%rbp), %rax
movl $0x64, 0x24(%rax)
movq -0x8(%rbp), %rax
movl $0xf, 0x44(%rax)
movq -0x8(%rbp), %rax
movl $0x64, 0x28(%rax)
movq -0x8(%rbp), %rax
movl $0x11, 0x18(%rax)
movq -0x8(%rbp), %rax
movl $0x0, 0x20(%rax)
movq -0x8(%rbp), %rax
movl $0x0, 0x1c(%rax)
movq -0x8(%rbp), %rax
movq $0x14, 0x30(%rax)
movq -0x8(%rbp), %rax
movl $0xfa, 0x68(%rax)
movq -0x8(%rbp), %rax
xorps %xmm0, %xmm0
movss %xmm0, 0x6c(%rax)
movq -0x8(%rbp), %rax
movl $0x0, 0x4c(%rax)
movq -0x8(%rbp), %rax
movl 0x4c(%rax), %ecx
orl $0x1, %ecx
movl %ecx, 0x4c(%rax)
movq -0x8(%rbp), %rax
movl 0x4c(%rax), %ecx
orl $0x8, %ecx
movl %ecx, 0x4c(%rax)
movq -0x8(%rbp), %rax
movl $0xb, 0x78(%rax)
movq -0x8(%rbp), %rax
movl $0xa, 0x88(%rax)
movq -0x8(%rbp), %rax
movl $0x1f4, 0x8c(%rax)      # imm = 0x1F4
movq -0x8(%rbp), %rax
movl $0x2710, 0x90(%rax)     # imm = 0x2710
movq -0x8(%rbp), %rax
movl $0x2710, 0xb4(%rax)     # imm = 0x2710
movq -0x8(%rbp), %rax
movss 0x1f6d0(%rip), %xmm0    # 0x3a660
movss %xmm0, 0x9c(%rax)
movq -0x8(%rbp), %rax
movss 0x1f6bc(%rip), %xmm0    # 0x3a660
movss %xmm0, 0xa0(%rax)
movq -0x8(%rbp), %rax
movss 0x1f6a4(%rip), %xmm0    # 0x3a65c
movss %xmm0, 0xa4(%rax)
movq -0x8(%rbp), %rax
movss 0x1f68c(%rip), %xmm0    # 0x3a658
movss %xmm0, 0x84(%rax)
movq -0x8(%rbp), %rax
movl $0x989680, 0x98(%rax)   # imm = 0x989680
movq -0x8(%rbp), %rax
movl $0x1, 0x94(%rax)
movq -0x8(%rbp), %rax
movl $0x5, 0xbc(%rax)
movq -0x8(%rbp), %rax
movl $0xc8, 0xc0(%rax)
movq -0x8(%rbp), %rax
movl $0x32, 0xb8(%rax)
movq -0x8(%rbp), %rax
movss 0x1f62e(%rip), %xmm0    # 0x3a654
movss %xmm0, 0xa8(%rax)
movq -0x8(%rbp), %rax
movl $0x0, 0x7c(%rax)
movq -0x8(%rbp), %rax
movl $0x40000000, 0x80(%rax) # imm = 0x40000000
movq -0x8(%rbp), %rax
movss 0x1f5fd(%rip), %xmm0    # 0x3a650
movss %xmm0, 0xac(%rax)
movq -0x8(%rbp), %rax
movss 0xac(%rax), %xmm0
cvtss2sd %xmm0, %xmm0
callq 0x3240
cvttsd2si %xmm0, %ecx
movq -0x8(%rbp), %rax
movl %ecx, 0xb0(%rax)
movq -0x8(%rbp), %rax
movl (%rax), %edi
movq -0x8(%rbp), %rax
movl 0x4(%rax), %esi
movq -0x8(%rbp), %rdx
addq $0xc4, %rdx
callq 0x18ea0
movq -0x8(%rbp), %rax
addq $0x10, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)