// File: /workspace/github_cpp_makefile_star2_O1/NishadSaraf[P]Championship-Simulator/src/main.cc
// Function: print_cache_stats(CACHE*)
void print_cache_stats(CACHE *stats)
{
    uint64_t TOTAL_ACCESS = 0, TOTAL_HIT = 0, TOTAL_MISS = 0, TOTAL_MSHR_MERGED = 0, TOTAL_STALL = 0;

    for (uint32_t i=0; i<NUM_TYPES; i++) {
        TOTAL_ACCESS += stats->ACCESS[i];
        TOTAL_HIT += stats->HIT[i];
        TOTAL_MISS += stats->MISS[i];
        TOTAL_MSHR_MERGED += stats->MSHR_MERGED[i];
        TOTAL_STALL += stats->STALL[i];
    }

    cout << stats->NAME;
    cout << " RQ ACCESS: " << setw(10) << stats->RQ.ACCESS << "  MERGED: " << setw(10) << stats->RQ.MERGED << "  TO_CACHE: " << setw(10) << stats->RQ.TO_CACHE << endl;
    cout << stats->NAME;
    cout << " WQ ACCESS: " << setw(10) << stats->WQ.ACCESS << "  MERGED: " << setw(10) << stats->WQ.MERGED << "  TO_CACHE: " << setw(10) << stats->WQ.TO_CACHE << "  FORWARD: " << setw(10) << stats->WQ.FORWARD << endl;
    cout << stats->NAME;
    cout << " PQ ACCESS: " << setw(10) << stats->PQ.ACCESS << "  MERGED: " << setw(10) << stats->PQ.MERGED << "  TO_CACHE: " << setw(10) << stats->PQ.TO_CACHE << endl;

    cout << stats->NAME;
    cout << " TOTAL     ACCESS: " << setw(10) << TOTAL_ACCESS << "  HIT: " << setw(10) << TOTAL_HIT << "  MISS: " << setw(10) << TOTAL_MISS;
    cout << "  MSHR_MERGED: " << setw(10) << TOTAL_MSHR_MERGED << "  STALL: " << setw(10) << TOTAL_STALL;
    cout << "  MPKI: " << (1000.0*TOTAL_MISS)/simulation_instructions << endl;

    cout << stats->NAME;
    cout << " LOAD      ACCESS: " << setw(10) << stats->ACCESS[0] << "  HIT: " << setw(10) << stats->HIT[0] << "  MISS: " << setw(10) << stats->MISS[0];
    cout << "  MSHR_MERGED: " << setw(10) << stats->MSHR_MERGED[0] << "  STALL: " << setw(10) << stats->STALL[0];
    cout << "  MPKI: " << (1000.0*stats->MISS[0])/simulation_instructions << endl;

    cout << stats->NAME;
    cout << " RFO       ACCESS: " << setw(10) << stats->ACCESS[1] << "  HIT: " << setw(10) << stats->HIT[1] << "  MISS: " << setw(10) << stats->MISS[1];
    cout << "  MSHR_MERGED: " << setw(10) << stats->MSHR_MERGED[1] << "  STALL: " << setw(10) << stats->STALL[1];
    cout << "  MPKI: " << (1000.0*stats->MISS[1])/simulation_instructions << endl;

    cout << stats->NAME;
    cout << " PREFETCH  ACCESS: " << setw(10) << stats->ACCESS[2] << "  HIT: " << setw(10) << stats->HIT[2] << "  MISS: " << setw(10) << stats->MISS[2];
    cout << "  MSHR_MERGED: " << setw(10) << stats->MSHR_MERGED[2] << "  STALL: " << setw(10) << stats->STALL[2];
    cout << "  MPKI: " << (1000.0*stats->MISS[2])/simulation_instructions << endl;

    cout << stats->NAME;
    cout << " WRITEBACK ACCESS: " << setw(10) << stats->ACCESS[3] << "  HIT: " << setw(10) << stats->HIT[3] << "  MISS: " << setw(10) << stats->MISS[3];
    cout << "  MSHR_MERGED: " << setw(10) << stats->MSHR_MERGED[3] << "  STALL: " << setw(10) << stats->STALL[3];
    cout << "  MPKI: " << (1000.0*stats->MISS[3])/simulation_instructions << endl;

    cout << stats->NAME;
    cout << " PREFETCH  FILL:   " << setw(10) << stats->STATS.pf_fill << "  USEFUL: " << setw(10) << stats->STATS.pf_useful << " USELESS: " << setw(10) << stats->STATS.pf_useless;
    cout << endl;

    cout << endl;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x48, %rsp
movq %rdi, %rbx
pxor %xmm3, %xmm3
movq $-0x4, %rax
pxor %xmm4, %xmm4
pxor %xmm2, %xmm2
pxor %xmm1, %xmm1
pxor %xmm0, %xmm0
movdqu 0x72c8(%rbx,%rax,8), %xmm5
paddq %xmm5, %xmm3
movdqu 0x72e8(%rbx,%rax,8), %xmm5
paddq %xmm5, %xmm4
movdqu 0x7308(%rbx,%rax,8), %xmm5
paddq %xmm5, %xmm2
movdqu 0x7328(%rbx,%rax,8), %xmm5
paddq %xmm5, %xmm1
movdqu 0x7348(%rbx,%rax,8), %xmm5
paddq %xmm5, %xmm0
addq $0x2, %rax
jne 0x6894
pshufd $0xee, %xmm3, %xmm5     # xmm5 = xmm3[2,3,2,3]
paddq %xmm3, %xmm5
movq %xmm5, 0x8(%rsp)
pshufd $0xee, %xmm4, %xmm3     # xmm3 = xmm4[2,3,2,3]
paddq %xmm4, %xmm3
movq %xmm3, 0x10(%rsp)
pshufd $0xee, %xmm2, %xmm3     # xmm3 = xmm2[2,3,2,3]
paddq %xmm2, %xmm3
movdqa %xmm3, 0x30(%rsp)
movq %xmm3, 0x18(%rsp)
pshufd $0xee, %xmm1, %xmm2     # xmm2 = xmm1[2,3,2,3]
paddq %xmm1, %xmm2
movq %xmm2, 0x20(%rsp)
pshufd $0xee, %xmm0, %xmm1     # xmm1 = xmm0[2,3,2,3]
paddq %xmm0, %xmm1
movq %xmm1, 0x28(%rsp)
movq 0x7350(%rbx), %rsi
movq 0x7358(%rbx), %rdx
movq 0x1368f(%rip), %r14     # 0x19fd0
movq %r14, %rdi
callq 0x3280
leaq 0xda40(%rip), %rsi      # 0x14390
movl $0xc, %edx
movq %r14, %rdi
callq 0x3280
movq (%r14), %rax
movq -0x18(%rax), %rax
movl $0xa, %ebp
movq %rbp, 0x10(%r14,%rax)
movq 0x90a8(%rbx), %rsi
movq %r14, %rdi
callq 0x3170
movq %rax, %r13
leaq 0xda16(%rip), %r15      # 0x1439d
movl $0xa, %edx
movq %rax, %rdi
movq %r15, %rsi
callq 0x3280
movq (%r13), %rax
movq -0x18(%rax), %rax
movq %rbp, 0x10(%r13,%rax)
movq 0x90b8(%rbx), %rsi
movq %r13, %rdi
callq 0x3170
movq %rax, %r12
leaq 0xd9eb(%rip), %r13      # 0x143a8
movl $0xc, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x3280
movq (%r12), %rax
movq -0x18(%rax), %rax
movq %rbp, 0x10(%r12,%rax)
movq 0x90c0(%rbx), %rsi
movq %r12, %rdi
callq 0x3170
movq %rax, %r12
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r12, %rdi
movl $0xa, %esi
callq 0x3240
movsbl %al, %esi
movq %r12, %rdi
callq 0x3040
movq %rax, %rdi
callq 0x3180
movq 0x7350(%rbx), %rsi
movq 0x7358(%rbx), %rdx
movq %r14, %rdi
callq 0x3280
leaq 0xd985(%rip), %rsi      # 0x143b5
movl $0xc, %edx
movq %r14, %rdi
callq 0x3280
movq (%r14), %rax
movq -0x18(%rax), %rax
movq %rbp, 0x10(%r14,%rax)
movq 0x7408(%rbx), %rsi
movq %r14, %rdi
callq 0x3170
movq %rax, %r12
movl $0xa, %edx
movq %rax, %rdi
movq %r15, %rsi
callq 0x3280
movq (%r12), %rax
movq -0x18(%rax), %rax
movq %rbp, 0x10(%r12,%rax)
movq 0x7418(%rbx), %rsi
movq %r12, %rdi
callq 0x3170
movq %rax, %r12
movl $0xc, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x3280
movq (%r12), %rax
movq -0x18(%rax), %rax
movq %rbp, 0x10(%r12,%rax)
movq 0x7420(%rbx), %rsi
movq %r12, %rdi
callq 0x3170
movq %rax, %r12
leaq 0xd902(%rip), %rsi      # 0x143c2
movl $0xb, %edx
movq %rax, %rdi
callq 0x3280
movq (%r12), %rax
movq -0x18(%rax), %rax
movq %rbp, 0x10(%r12,%rax)
movq 0x7410(%rbx), %rsi
movq %r12, %rdi
callq 0x3170
movq %rax, %r12
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r12, %rdi
movl $0xa, %esi
callq 0x3240
movsbl %al, %esi
movq %r12, %rdi
callq 0x3040
movq %rax, %rdi
callq 0x3180
movq 0x7350(%rbx), %rsi
movq 0x7358(%rbx), %rdx
movq %r14, %rdi
callq 0x3280
leaq 0xd89e(%rip), %rsi      # 0x143ce
movl $0xc, %edx
movq %r14, %rdi
callq 0x3280
movq (%r14), %rax
movq -0x18(%rax), %rax
movq %rbp, 0x10(%r14,%rax)
movq 0xad48(%rbx), %rsi
movq %r14, %rdi
callq 0x3170
movq %rax, %r12
movl $0xa, %edx
movq %rax, %rdi
movq %r15, %rsi
callq 0x3280
movq (%r12), %rax
movq -0x18(%rax), %rax
movq %rbp, 0x10(%r12,%rax)
movq 0xad58(%rbx), %rsi
movq %r12, %rdi
callq 0x3170
movq %rax, %r12
movl $0xc, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x3280
movq (%r12), %rax
movq -0x18(%rax), %rax
movq %rbp, 0x10(%r12,%rax)
movq 0xad60(%rbx), %rsi
movq %r12, %rdi
callq 0x3170
movq %rax, %r12
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r12, %rdi
movl $0xa, %esi
callq 0x3240
movsbl %al, %esi
movq %r12, %rdi
callq 0x3040
movq %rax, %rdi
callq 0x3180
movq 0x7350(%rbx), %rsi
movq 0x7358(%rbx), %rdx
movq %r14, %rdi
callq 0x3280
leaq 0xd7de(%rip), %rsi      # 0x143db
movl $0x13, %edx
movq %r14, %rdi
callq 0x3280
movq (%r14), %rax
movq -0x18(%rax), %rax
movq %rbp, 0x10(%r14,%rax)
movq %r14, %rdi
movq 0x8(%rsp), %rsi
callq 0x3170
movq %rax, %r15
leaq 0xd7c2(%rip), %r13      # 0x143ef
movl $0x7, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x3280
movq (%r15), %rax
movq -0x18(%rax), %rax
movq %rbp, 0x10(%r15,%rax)
movq %r15, %rdi
movq 0x10(%rsp), %rsi
callq 0x3170
movq %rax, %r15
leaq 0xd797(%rip), %rsi      # 0x143f7
movl $0x8, %edx
movq %rax, %rdi
callq 0x3280
movq (%r15), %rax
movq -0x18(%rax), %rax
movq %rbp, 0x10(%r15,%rax)
movq %r15, %rdi
movq 0x18(%rsp), %rsi
callq 0x3170
leaq 0xd773(%rip), %rsi      # 0x14400
movl $0xf, %edx
movq %r14, %rdi
callq 0x3280
movq (%r14), %rax
movq -0x18(%rax), %rax
movq %rbp, 0x10(%r14,%rax)
movq %r14, %rdi
movq 0x20(%rsp), %rsi
callq 0x3170
movq %rax, %r15
leaq 0xd753(%rip), %rsi      # 0x14410
movl $0x9, %edx
movq %rax, %rdi
callq 0x3280
movq (%r15), %rax
movq -0x18(%rax), %rax
movq %rbp, 0x10(%r15,%rax)
movq %r15, %rdi
movq 0x28(%rsp), %rsi
callq 0x3170
leaq 0xd730(%rip), %rsi      # 0x1441a
movl $0x8, %edx
movq %r14, %rdi
callq 0x3280
movsd 0xd611(%rip), %xmm0     # 0x14310
movapd 0x30(%rsp), %xmm1
unpcklps %xmm0, %xmm1            # xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]
movapd %xmm0, %xmm2
movapd 0xd60c(%rip), %xmm0     # 0x14320
subpd %xmm0, %xmm1
movapd %xmm0, %xmm3
movapd %xmm1, %xmm0
unpckhpd %xmm1, %xmm0            # xmm0 = xmm0[1],xmm1[1]
addsd %xmm1, %xmm0
mulsd 0xd630(%rip), %xmm0     # 0x14360
movsd 0x134e8(%rip), %xmm1    # 0x1a220
unpcklps %xmm2, %xmm1            # xmm1 = xmm1[0],xmm2[0],xmm1[1],xmm2[1]
subpd %xmm3, %xmm1
movapd %xmm1, %xmm2
unpckhpd %xmm1, %xmm2            # xmm2 = xmm2[1],xmm1[1]
addsd %xmm1, %xmm2
divsd %xmm2, %xmm0
movq %r14, %rdi
callq 0x3380
movq %rax, %r12
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r12, %rdi
movl $0xa, %esi
callq 0x3240
movsbl %al, %esi
movq %r12, %rdi
callq 0x3040
movq %rax, %rdi
callq 0x3180
movq 0x7350(%rbx), %rsi
movq 0x7358(%rbx), %rdx
movq %r14, %rdi
callq 0x3280
leaq 0xd685(%rip), %rsi      # 0x14423
movl $0x13, %edx
movq %r14, %rdi
callq 0x3280
movq (%r14), %rax
movq -0x18(%rax), %rax
movq %rbp, 0x10(%r14,%rax)
movq 0x72a8(%rbx), %rsi
movq %r14, %rdi
callq 0x3170
movq %rax, %r12
movl $0x7, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x3280
movq (%r12), %rax
movq -0x18(%rax), %rax
movq %rbp, 0x10(%r12,%rax)
movq 0x72c8(%rbx), %rsi
movq %r12, %rdi
callq 0x3170
movq %rax, %r12
movl $0x8, %edx
movq %rax, %rdi
leaq 0xd5f0(%rip), %r15      # 0x143f7
movq %r15, %rsi
callq 0x3280
movq (%r12), %rax
movq -0x18(%rax), %rax
movq %rbp, 0x10(%r12,%rax)
movq 0x72e8(%rbx), %rsi
movq %r12, %rdi
callq 0x3170
movl $0xf, %edx
movq %r14, %rdi
leaq 0xd5c6(%rip), %rsi      # 0x14400
callq 0x3280
movq (%r14), %rax
movq -0x18(%rax), %rax
movq %rbp, 0x10(%r14,%rax)
movq 0x7308(%rbx), %rsi
movq %r14, %rdi
callq 0x3170
movq %rax, %r12
movl $0x9, %edx
movq %rax, %rdi
leaq 0xd5a4(%rip), %rsi      # 0x14410
callq 0x3280
movq (%r12), %rax
movq -0x18(%rax), %rax
movq %rbp, 0x10(%r12,%rax)
movq 0x7328(%rbx), %rsi
movq %r12, %rdi
callq 0x3170
movl $0x8, %edx
movq %r14, %rdi
leaq 0xd57e(%rip), %rsi      # 0x1441a
callq 0x3280
movsd 0x72e8(%rbx), %xmm1
movsd 0xd45f(%rip), %xmm2     # 0x14310
unpcklps %xmm2, %xmm1            # xmm1 = xmm1[0],xmm2[0],xmm1[1],xmm2[1]
movapd 0xd464(%rip), %xmm3     # 0x14320
subpd %xmm3, %xmm1
movapd %xmm1, %xmm0
unpckhpd %xmm1, %xmm0            # xmm0 = xmm0[1],xmm1[1]
addsd %xmm1, %xmm0
mulsd 0xd48c(%rip), %xmm0     # 0x14360
movsd 0x13344(%rip), %xmm1    # 0x1a220
unpcklps %xmm2, %xmm1            # xmm1 = xmm1[0],xmm2[0],xmm1[1],xmm2[1]
subpd %xmm3, %xmm1
movapd %xmm1, %xmm2
unpckhpd %xmm1, %xmm2            # xmm2 = xmm2[1],xmm1[1]
addsd %xmm1, %xmm2
divsd %xmm2, %xmm0
movq %r14, %rdi
callq 0x3380
movq %rax, %r12
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r12, %rdi
movl $0xa, %esi
callq 0x3240
movsbl %al, %esi
movq %r12, %rdi
callq 0x3040
movq %rax, %rdi
callq 0x3180
movq 0x7350(%rbx), %rsi
movq 0x7358(%rbx), %rdx
movq %r14, %rdi
callq 0x3280
leaq 0xd4f5(%rip), %rsi      # 0x14437
movl $0x13, %edx
movq %r14, %rdi
callq 0x3280
movq (%r14), %rax
movq -0x18(%rax), %rax
movq %rbp, 0x10(%r14,%rax)
movq 0x72b0(%rbx), %rsi
movq %r14, %rdi
callq 0x3170
movq %rax, %r12
movl $0x7, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x3280
movq (%r12), %rax
movq -0x18(%rax), %rax
movq %rbp, 0x10(%r12,%rax)
movq 0x72d0(%rbx), %rsi
movq %r12, %rdi
callq 0x3170
movq %rax, %r12
movl $0x8, %edx
movq %rax, %rdi
movq %r15, %rsi
callq 0x3280
movq (%r12), %rax
movq -0x18(%rax), %rax
movq %rbp, 0x10(%r12,%rax)
movq 0x72f0(%rbx), %rsi
movq %r12, %rdi
callq 0x3170
movl $0xf, %edx
movq %r14, %rdi
leaq 0xd429(%rip), %rsi      # 0x14400
callq 0x3280
movq (%r14), %rax
movq -0x18(%rax), %rax
movq %rbp, 0x10(%r14,%rax)
movq 0x7310(%rbx), %rsi
movq %r14, %rdi
callq 0x3170
movq %rax, %r12
movl $0x9, %edx
movq %rax, %rdi
leaq 0xd407(%rip), %rsi      # 0x14410
callq 0x3280
movq (%r12), %rax
movq -0x18(%rax), %rax
movq %rbp, 0x10(%r12,%rax)
movq 0x7330(%rbx), %rsi
movq %r12, %rdi
callq 0x3170
movl $0x8, %edx
movq %r14, %rdi
leaq 0xd3e1(%rip), %r15      # 0x1441a
movq %r15, %rsi
callq 0x3280
movsd 0x72f0(%rbx), %xmm1
movsd 0xd2bf(%rip), %xmm2     # 0x14310
unpcklps %xmm2, %xmm1            # xmm1 = xmm1[0],xmm2[0],xmm1[1],xmm2[1]
movapd 0xd2c4(%rip), %xmm3     # 0x14320
subpd %xmm3, %xmm1
movapd %xmm1, %xmm0
unpckhpd %xmm1, %xmm0            # xmm0 = xmm0[1],xmm1[1]
addsd %xmm1, %xmm0
mulsd 0xd2ec(%rip), %xmm0     # 0x14360
movsd 0x131a4(%rip), %xmm1    # 0x1a220
unpcklps %xmm2, %xmm1            # xmm1 = xmm1[0],xmm2[0],xmm1[1],xmm2[1]
subpd %xmm3, %xmm1
movapd %xmm1, %xmm2
unpckhpd %xmm1, %xmm2            # xmm2 = xmm2[1],xmm1[1]
addsd %xmm1, %xmm2
divsd %xmm2, %xmm0
movq %r14, %rdi
callq 0x3380
movq %rax, %r12
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r12, %rdi
movl $0xa, %esi
callq 0x3240
movsbl %al, %esi
movq %r12, %rdi
callq 0x3040
movq %rax, %rdi
callq 0x3180
movq 0x7350(%rbx), %rsi
movq 0x7358(%rbx), %rdx
movq %r14, %rdi
callq 0x3280
leaq 0xd369(%rip), %rsi      # 0x1444b
movl $0x13, %edx
movq %r14, %rdi
callq 0x3280
movq (%r14), %rax
movq -0x18(%rax), %rax
movq %rbp, 0x10(%r14,%rax)
movq 0x72b8(%rbx), %rsi
movq %r14, %rdi
callq 0x3170
movq %rax, %r12
movl $0x7, %edx
movq %rax, %rdi
leaq 0xd2d3(%rip), %rsi      # 0x143ef
callq 0x3280
movq (%r12), %rax
movq -0x18(%rax), %rax
movq %rbp, 0x10(%r12,%rax)
movq 0x72d8(%rbx), %rsi
movq %r12, %rdi
callq 0x3170
movq %rax, %r12
movl $0x8, %edx
movq %rax, %rdi
leaq 0xd2a8(%rip), %r13      # 0x143f7
movq %r13, %rsi
callq 0x3280
movq (%r12), %rax
movq -0x18(%rax), %rax
movq %rbp, 0x10(%r12,%rax)
movq 0x72f8(%rbx), %rsi
movq %r12, %rdi
callq 0x3170
movl $0xf, %edx
movq %r14, %rdi
leaq 0xd27e(%rip), %rsi      # 0x14400
callq 0x3280
movq (%r14), %rax
movq -0x18(%rax), %rax
movq %rbp, 0x10(%r14,%rax)
movq 0x7318(%rbx), %rsi
movq %r14, %rdi
callq 0x3170
movq %rax, %r12
movl $0x9, %edx
movq %rax, %rdi
leaq 0xd25c(%rip), %rsi      # 0x14410
callq 0x3280
movq (%r12), %rax
movq -0x18(%rax), %rax
movq %rbp, 0x10(%r12,%rax)
movq 0x7338(%rbx), %rsi
movq %r12, %rdi
callq 0x3170
movl $0x8, %edx
movq %r14, %rdi
movq %r15, %rsi
callq 0x3280
movsd 0x72f8(%rbx), %xmm1
movsd 0xd11b(%rip), %xmm2     # 0x14310
unpcklps %xmm2, %xmm1            # xmm1 = xmm1[0],xmm2[0],xmm1[1],xmm2[1]
movapd 0xd120(%rip), %xmm3     # 0x14320
subpd %xmm3, %xmm1
movapd %xmm1, %xmm0
unpckhpd %xmm1, %xmm0            # xmm0 = xmm0[1],xmm1[1]
addsd %xmm1, %xmm0
mulsd 0xd148(%rip), %xmm0     # 0x14360
movsd 0x13000(%rip), %xmm1    # 0x1a220
unpcklps %xmm2, %xmm1            # xmm1 = xmm1[0],xmm2[0],xmm1[1],xmm2[1]
subpd %xmm3, %xmm1
movapd %xmm1, %xmm2
unpckhpd %xmm1, %xmm2            # xmm2 = xmm2[1],xmm1[1]
addsd %xmm1, %xmm2
divsd %xmm2, %xmm0
movq %r14, %rdi
callq 0x3380
movq %rax, %r12
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r12, %rdi
movl $0xa, %esi
callq 0x3240
movsbl %al, %esi
movq %r12, %rdi
callq 0x3040
movq %rax, %rdi
callq 0x3180
movq 0x7350(%rbx), %rsi
movq 0x7358(%rbx), %rdx
movq %r14, %rdi
callq 0x3280
leaq 0xd1d9(%rip), %rsi      # 0x1445f
movl $0x13, %edx
movq %r14, %rdi
callq 0x3280
movq (%r14), %rax
movq -0x18(%rax), %rax
movq %rbp, 0x10(%r14,%rax)
movq 0x72c0(%rbx), %rsi
movq %r14, %rdi
callq 0x3170
movq %rax, %r12
movl $0x7, %edx
movq %rax, %rdi
leaq 0xd12f(%rip), %rsi      # 0x143ef
callq 0x3280
movq (%r12), %rax
movq -0x18(%rax), %rax
movq %rbp, 0x10(%r12,%rax)
movq 0x72e0(%rbx), %rsi
movq %r12, %rdi
callq 0x3170
movq %rax, %r12
movl $0x8, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x3280
movq (%r12), %rax
movq -0x18(%rax), %rax
movq %rbp, 0x10(%r12,%rax)
movq 0x7300(%rbx), %rsi
movq %r12, %rdi
callq 0x3170
movl $0xf, %edx
movq %r14, %rdi
leaq 0xd0e1(%rip), %rsi      # 0x14400
callq 0x3280
movq (%r14), %rax
movq -0x18(%rax), %rax
movq %rbp, 0x10(%r14,%rax)
movq 0x7320(%rbx), %rsi
movq %r14, %rdi
callq 0x3170
movq %rax, %r12
movl $0x9, %edx
movq %rax, %rdi
leaq 0xd0bf(%rip), %rsi      # 0x14410
callq 0x3280
movq (%r12), %rax
movq -0x18(%rax), %rax
movq %rbp, 0x10(%r12,%rax)
movq 0x7340(%rbx), %rsi
movq %r12, %rdi
callq 0x3170
movl $0x8, %edx
movq %r14, %rdi
movq %r15, %rsi
callq 0x3280
movsd 0x7300(%rbx), %xmm1
movsd 0xcf7e(%rip), %xmm2     # 0x14310
unpcklps %xmm2, %xmm1            # xmm1 = xmm1[0],xmm2[0],xmm1[1],xmm2[1]
movapd 0xcf83(%rip), %xmm3     # 0x14320
subpd %xmm3, %xmm1
movapd %xmm1, %xmm0
unpckhpd %xmm1, %xmm0            # xmm0 = xmm0[1],xmm1[1]
addsd %xmm1, %xmm0
mulsd 0xcfab(%rip), %xmm0     # 0x14360
movsd 0x12e63(%rip), %xmm1    # 0x1a220
unpcklps %xmm2, %xmm1            # xmm1 = xmm1[0],xmm2[0],xmm1[1],xmm2[1]
subpd %xmm3, %xmm1
movapd %xmm1, %xmm2
unpckhpd %xmm1, %xmm2            # xmm2 = xmm2[1],xmm1[1]
addsd %xmm1, %xmm2
divsd %xmm2, %xmm0
movq %r14, %rdi
callq 0x3380
movq %rax, %r15
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r15, %rdi
movl $0xa, %esi
callq 0x3240
movsbl %al, %esi
movq %r15, %rdi
callq 0x3040
movq %rax, %rdi
callq 0x3180
movq 0x7350(%rbx), %rsi
movq 0x7358(%rbx), %rdx
movq %r14, %rdi
callq 0x3280
leaq 0xd050(%rip), %rsi      # 0x14473
movl $0x13, %edx
movq %r14, %rdi
callq 0x3280
movq (%r14), %rax
movq -0x18(%rax), %rax
movq %rbp, 0x10(%r14,%rax)
movq 0x102e0(%rbx), %rsi
movq %r14, %rdi
callq 0x3170
movq %rax, %r15
leaq 0xd032(%rip), %rsi      # 0x14487
movl $0xa, %edx
movq %rax, %rdi
callq 0x3280
movq (%r15), %rax
movq -0x18(%rax), %rax
movq %rbp, 0x10(%r15,%rax)
movq 0x102d0(%rbx), %rsi
movq %r15, %rdi
callq 0x3170
movq %rax, %r15
leaq 0xd00b(%rip), %rsi      # 0x14492
movl $0xa, %edx
movq %rax, %rdi
callq 0x3280
movq (%r15), %rax
movq -0x18(%rax), %rax
movq %rbp, 0x10(%r15,%rax)
movq 0x102d8(%rbx), %rsi
movq %r15, %rdi
callq 0x3170
movq (%r14), %rax
movq -0x18(%rax), %rdi
addq %r14, %rdi
movl $0xa, %esi
callq 0x3240
movsbl %al, %esi
movq %r14, %rdi
callq 0x3040
movq %rax, %rdi
callq 0x3180
movq (%r14), %rax
movq -0x18(%rax), %rdi
addq %r14, %rdi
movl $0xa, %esi
callq 0x3240
movsbl %al, %esi
movq %r14, %rdi
callq 0x3040
movq %rax, %rdi
addq $0x48, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x3180