// File: rpetit3[P]fastq-scan/fastq-scan.cpp
// Function: Stats::read_stats()
void read_stats(void) {
            sort(read_length.begin(), read_length.end());
            read_min = read_length.front();
            read_mean = total_bp / float(read_total);
            read_std = get_std(read_length, read_mean);
            read_max = read_length.back();
            read_25th = get_percentile(read_length, read_length.size(), 0.25);
            read_median = get_percentile(read_length, read_length.size(), 0.50);
            read_75th = get_percentile(read_length, read_length.size(), 0.75);
        }

// Assembly:
subq $0x118, %rsp            # imm = 0x118
movq %rdi, 0x110(%rsp)
movq 0x110(%rsp), %rdi
movq %rdi, 0x78(%rsp)
addq $0x8, %rdi
movq %rdi, 0x70(%rsp)
callq 0x5860
movq 0x70(%rsp), %rdi
movq %rax, 0x108(%rsp)
callq 0x54a0
movq %rax, 0x100(%rsp)
movq 0x108(%rsp), %rdi
movq 0x100(%rsp), %rsi
callq 0x80a0
movq 0x70(%rsp), %rdi
callq 0x80e0
movq 0x78(%rsp), %rcx
movl (%rax), %eax
movl %eax, 0x40(%rcx)
movq (%rcx), %rax
movq 0x38(%rcx), %rcx
movq %rcx, 0x80(%rsp)
movq %rax, %rdx
shrq %rdx
movl %eax, %ecx
andl $0x1, %ecx
orq %rdx, %rcx
cvtsi2ss %rcx, %xmm0
addss %xmm0, %xmm0
cvtsi2ss %rax, %xmm1
movss %xmm1, 0x88(%rsp)
testq %rax, %rax
movss %xmm0, 0x8c(%rsp)
js 0x31e1
movss 0x88(%rsp), %xmm0
movss %xmm0, 0x8c(%rsp)
movq 0x80(%rsp), %rax
movss 0x8c(%rsp), %xmm0
movss %xmm0, 0x64(%rsp)
movq %rax, %rdx
shrq %rdx
movl %eax, %ecx
andl $0x1, %ecx
orq %rdx, %rcx
cvtsi2ss %rcx, %xmm0
addss %xmm0, %xmm0
cvtsi2ss %rax, %xmm1
movss %xmm1, 0x68(%rsp)
testq %rax, %rax
movss %xmm0, 0x6c(%rsp)
js 0x3231
movss 0x68(%rsp), %xmm0
movss %xmm0, 0x6c(%rsp)
movq 0x78(%rsp), %rax
movq 0x70(%rsp), %rsi
movss 0x64(%rsp), %xmm0
movss 0x6c(%rsp), %xmm1
divss %xmm1, %xmm0
cvtss2sd %xmm0, %xmm0
movsd %xmm0, 0x48(%rax)
leaq 0xe8(%rsp), %rdi
movq %rdi, 0x50(%rsp)
callq 0x81e0
movq 0x78(%rsp), %rdi
movq 0x50(%rsp), %rsi
movsd 0x48(%rdi), %xmm0
callq 0x8110
movsd %xmm0, 0x58(%rsp)
jmp 0x3282
movq 0x78(%rsp), %rax
movsd 0x58(%rsp), %xmm0
movsd %xmm0, 0x50(%rax)
leaq 0xe8(%rsp), %rdi
callq 0x82e0
movq 0x78(%rsp), %rdi
addq $0x8, %rdi
movq %rdi, 0x38(%rsp)
callq 0x8340
movq 0x38(%rsp), %rsi
movq %rax, %rcx
movq 0x78(%rsp), %rax
movl (%rcx), %ecx
movl %ecx, 0x44(%rax)
leaq 0xc0(%rsp), %rdi
movq %rdi, 0x40(%rsp)
callq 0x81e0
movq 0x38(%rsp), %rdi
callq 0x4d80
movq 0x78(%rsp), %rdi
movq 0x40(%rsp), %rsi
movq %rax, %rdx
movss 0x9d13(%rip), %xmm0     # 0xd008
callq 0x8380
movsd %xmm0, 0x48(%rsp)
jmp 0x3302
movq 0x78(%rsp), %rax
movsd 0x48(%rsp), %xmm0
movsd %xmm0, 0x60(%rax)
leaq 0xc0(%rsp), %rdi
callq 0x82e0
movq 0x78(%rsp), %rsi
addq $0x8, %rsi
movq %rsi, 0x20(%rsp)
leaq 0xa8(%rsp), %rdi
movq %rdi, 0x28(%rsp)
callq 0x81e0
movq 0x20(%rsp), %rdi
callq 0x4d80
movq 0x78(%rsp), %rdi
movq 0x28(%rsp), %rsi
movq %rax, %rdx
movss 0x9cae(%rip), %xmm0     # 0xd00c
callq 0x8380
movsd %xmm0, 0x30(%rsp)
jmp 0x336b
movq 0x78(%rsp), %rax
movsd 0x30(%rsp), %xmm0
movsd %xmm0, 0x58(%rax)
leaq 0xa8(%rsp), %rdi
callq 0x82e0
movq 0x78(%rsp), %rsi
addq $0x8, %rsi
movq %rsi, 0x8(%rsp)
leaq 0x90(%rsp), %rdi
movq %rdi, 0x10(%rsp)
callq 0x81e0
movq 0x8(%rsp), %rdi
callq 0x4d80
movq 0x78(%rsp), %rdi
movq 0x10(%rsp), %rsi
movq %rax, %rdx
movss 0x9c49(%rip), %xmm0     # 0xd010
callq 0x8380
movsd %xmm0, 0x18(%rsp)
jmp 0x33d4
movq 0x78(%rsp), %rax
movsd 0x18(%rsp), %xmm0
movsd %xmm0, 0x68(%rax)
leaq 0x90(%rsp), %rdi
callq 0x82e0
addq $0x118, %rsp            # imm = 0x118
retq
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xe0(%rsp)
movl %eax, 0xdc(%rsp)
leaq 0xe8(%rsp), %rdi
callq 0x82e0
jmp 0x3483
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xe0(%rsp)
movl %eax, 0xdc(%rsp)
leaq 0xc0(%rsp), %rdi
callq 0x82e0
jmp 0x3483
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xe0(%rsp)
movl %eax, 0xdc(%rsp)
leaq 0xa8(%rsp), %rdi
callq 0x82e0
jmp 0x3483
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xe0(%rsp)
movl %eax, 0xdc(%rsp)
leaq 0x90(%rsp), %rdi
callq 0x82e0
movq 0xe0(%rsp), %rdi
callq 0x22e0