// File: mortennobel[P]glMatrix-vs-GLM-Benchmark/main.cpp
// Function: testTranslation(long)
double testTranslation(long count){
    m4 m1 = createRandomMatrix();
    v3 v1 = v3(1, 2, 3);

    t.start();
    for (int i = 0; i < count; i++) {
        m1 = glm::translate(m1,v1);
    }
    t.stop();
    return t.getElapsedTimeInMilliSec();
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x630, %rsp            # imm = 0x630
movq %rdi, -0x4b8(%rbp)
leaq -0x4f8(%rbp), %rdi
callq 0xb000
movl $0x1, -0x508(%rbp)
movl $0x2, -0x50c(%rbp)
movl $0x3, -0x510(%rbp)
leaq -0x504(%rbp), %rax
movq %rax, -0x488(%rbp)
leaq -0x508(%rbp), %rax
movq %rax, -0x490(%rbp)
leaq -0x50c(%rbp), %rax
movq %rax, -0x498(%rbp)
leaq -0x510(%rbp), %rax
movq %rax, -0x4a0(%rbp)
movq -0x488(%rbp), %rax
movq -0x490(%rbp), %rcx
cvtsi2ssl (%rcx), %xmm0
movss %xmm0, (%rax)
movq -0x498(%rbp), %rcx
cvtsi2ssl (%rcx), %xmm0
movss %xmm0, 0x4(%rax)
movq -0x4a0(%rbp), %rcx
cvtsi2ssl (%rcx), %xmm0
movss %xmm0, 0x8(%rax)
leaq 0x1b1a7(%rip), %rdi     # 0x2a0d8
callq 0x1320
movl $0x0, -0x514(%rbp)
movslq -0x514(%rbp), %rax
cmpq -0x4b8(%rbp), %rax
jge 0x101af
leaq -0x554(%rbp), %rax
movq %rax, -0x410(%rbp)
leaq -0x4f8(%rbp), %rax
movq %rax, -0x418(%rbp)
leaq -0x504(%rbp), %rax
movq %rax, -0x420(%rbp)
movq -0x418(%rbp), %rax
leaq -0x554(%rbp), %rcx
movq %rcx, -0xf8(%rbp)
movq %rax, -0x100(%rbp)
movq -0xf8(%rbp), %rax
movq %rax, -0x570(%rbp)
movq %rax, %rcx
addq $0x40, %rcx
movq %rcx, -0x568(%rbp)
movq %rax, -0x560(%rbp)
movq -0x560(%rbp), %rax
movq -0x568(%rbp), %rcx
movq %rax, -0xb0(%rbp)
movq -0xb0(%rbp), %rdx
xorps %xmm0, %xmm0
movss %xmm0, (%rdx)
xorps %xmm0, %xmm0
movss %xmm0, 0x4(%rdx)
xorps %xmm0, %xmm0
movss %xmm0, 0x8(%rdx)
xorps %xmm0, %xmm0
movss %xmm0, 0xc(%rdx)
addq $0x10, %rax
cmpq %rcx, %rax
movq %rax, -0x560(%rbp)
jne 0xefbd
movq -0x100(%rbp), %rax
movq %rax, -0x70(%rbp)
movl $0x0, -0x74(%rbp)
movq -0x70(%rbp), %rcx
movq %rcx, -0x578(%rbp)
movl -0x74(%rbp), %eax
movq %rcx, -0x68(%rbp)
cmpl $0x4, %eax
jl 0xf050
leaq 0x18126(%rip), %rdi     # 0x2715e
leaq 0x1864b(%rip), %rsi     # 0x2768a
movl $0x3b, %edx
leaq 0x1865c(%rip), %rcx     # 0x276a7
callq 0x1040
movq -0x570(%rbp), %rcx
movq -0x578(%rbp), %rax
movslq -0x74(%rbp), %rdx
shlq $0x4, %rdx
addq %rdx, %rax
movq %rcx, -0xb8(%rbp)
movq %rax, -0xc0(%rbp)
movq -0xb8(%rbp), %rax
movq -0xc0(%rbp), %rcx
movss (%rcx), %xmm0
movss %xmm0, (%rax)
movq -0xc0(%rbp), %rcx
movss 0x4(%rcx), %xmm0
movss %xmm0, 0x4(%rax)
movq -0xc0(%rbp), %rcx
movss 0x8(%rcx), %xmm0
movss %xmm0, 0x8(%rax)
movq -0xc0(%rbp), %rcx
movss 0xc(%rcx), %xmm0
movss %xmm0, 0xc(%rax)
movq -0x100(%rbp), %rax
movq %rax, -0x80(%rbp)
movl $0x1, -0x84(%rbp)
movq -0x80(%rbp), %rcx
movq %rcx, -0x580(%rbp)
movl -0x84(%rbp), %eax
movq %rcx, -0x60(%rbp)
cmpl $0x4, %eax
jl 0xf10e
leaq 0x18068(%rip), %rdi     # 0x2715e
leaq 0x1858d(%rip), %rsi     # 0x2768a
movl $0x3b, %edx
leaq 0x1859e(%rip), %rcx     # 0x276a7
callq 0x1040
movq -0x570(%rbp), %rcx
movq -0x580(%rbp), %rax
movslq -0x84(%rbp), %rdx
shlq $0x4, %rdx
addq %rdx, %rax
addq $0x10, %rcx
movq %rcx, -0xc8(%rbp)
movq %rax, -0xd0(%rbp)
movq -0xc8(%rbp), %rax
movq -0xd0(%rbp), %rcx
movss (%rcx), %xmm0
movss %xmm0, (%rax)
movq -0xd0(%rbp), %rcx
movss 0x4(%rcx), %xmm0
movss %xmm0, 0x4(%rax)
movq -0xd0(%rbp), %rcx
movss 0x8(%rcx), %xmm0
movss %xmm0, 0x8(%rax)
movq -0xd0(%rbp), %rcx
movss 0xc(%rcx), %xmm0
movss %xmm0, 0xc(%rax)
movq -0x100(%rbp), %rax
movq %rax, -0x90(%rbp)
movl $0x2, -0x94(%rbp)
movq -0x90(%rbp), %rcx
movq %rcx, -0x588(%rbp)
movl -0x94(%rbp), %eax
movq %rcx, -0x58(%rbp)
cmpl $0x4, %eax
jl 0xf1d9
leaq 0x17f9d(%rip), %rdi     # 0x2715e
leaq 0x184c2(%rip), %rsi     # 0x2768a
movl $0x3b, %edx
leaq 0x184d3(%rip), %rcx     # 0x276a7
callq 0x1040
movq -0x570(%rbp), %rcx
movq -0x588(%rbp), %rax
movslq -0x94(%rbp), %rdx
shlq $0x4, %rdx
addq %rdx, %rax
addq $0x20, %rcx
movq %rcx, -0xd8(%rbp)
movq %rax, -0xe0(%rbp)
movq -0xd8(%rbp), %rax
movq -0xe0(%rbp), %rcx
movss (%rcx), %xmm0
movss %xmm0, (%rax)
movq -0xe0(%rbp), %rcx
movss 0x4(%rcx), %xmm0
movss %xmm0, 0x4(%rax)
movq -0xe0(%rbp), %rcx
movss 0x8(%rcx), %xmm0
movss %xmm0, 0x8(%rax)
movq -0xe0(%rbp), %rcx
movss 0xc(%rcx), %xmm0
movss %xmm0, 0xc(%rax)
movq -0x100(%rbp), %rax
movq %rax, -0xa0(%rbp)
movl $0x3, -0xa4(%rbp)
movq -0xa0(%rbp), %rcx
movq %rcx, -0x590(%rbp)
movl -0xa4(%rbp), %eax
movq %rcx, -0x50(%rbp)
cmpl $0x4, %eax
jl 0xf2a4
leaq 0x17ed2(%rip), %rdi     # 0x2715e
leaq 0x183f7(%rip), %rsi     # 0x2768a
movl $0x3b, %edx
leaq 0x18408(%rip), %rcx     # 0x276a7
callq 0x1040
movq -0x570(%rbp), %rcx
movq -0x590(%rbp), %rax
movslq -0xa4(%rbp), %rdx
shlq $0x4, %rdx
addq %rdx, %rax
addq $0x30, %rcx
movq %rcx, -0xe8(%rbp)
movq %rax, -0xf0(%rbp)
movq -0xe8(%rbp), %rax
movq -0xf0(%rbp), %rcx
movss (%rcx), %xmm0
movss %xmm0, (%rax)
movq -0xf0(%rbp), %rcx
movss 0x4(%rcx), %xmm0
movss %xmm0, 0x4(%rax)
movq -0xf0(%rbp), %rcx
movss 0x8(%rcx), %xmm0
movss %xmm0, 0x8(%rax)
movq -0xf0(%rbp), %rcx
movss 0xc(%rcx), %xmm0
movss %xmm0, 0xc(%rax)
movq -0x418(%rbp), %rax
movq %rax, -0x280(%rbp)
movl $0x0, -0x284(%rbp)
movq -0x280(%rbp), %rcx
movq %rcx, -0x598(%rbp)
movl -0x284(%rbp), %eax
movq %rcx, -0x128(%rbp)
cmpl $0x4, %eax
jl 0xf372
leaq 0x17e04(%rip), %rdi     # 0x2715e
leaq 0x18329(%rip), %rsi     # 0x2768a
movl $0x3b, %edx
leaq 0x1833a(%rip), %rcx     # 0x276a7
callq 0x1040
movq -0x598(%rbp), %rax
movslq -0x284(%rbp), %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, -0x5b0(%rbp)
movq -0x420(%rbp), %rax
movq %rax, -0x20(%rbp)
movl $0x0, -0x24(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0x5a8(%rbp)
xorl %eax, %eax
cmpl $0x0, -0x24(%rbp)
movb %al, -0x599(%rbp)
jl 0xf3d3
movq -0x5a8(%rbp), %rcx
movl -0x24(%rbp), %eax
movq %rcx, -0x18(%rbp)
cmpl $0x3, %eax
setl %al
movb %al, -0x599(%rbp)
movb -0x599(%rbp), %al
testb $0x1, %al
jne 0xf3fc
leaq 0x17d70(%rip), %rdi     # 0x27154
leaq 0x17e7f(%rip), %rsi     # 0x2726a
movl $0x33, %edx
leaq 0x1839f(%rip), %rcx     # 0x27796
callq 0x1040
movq -0x5b0(%rbp), %rcx
movq -0x5a8(%rbp), %rax
movslq -0x24(%rbp), %rdx
shlq $0x2, %rdx
addq %rdx, %rax
leaq -0x460(%rbp), %rdx
movq %rdx, -0x398(%rbp)
movq %rcx, -0x3a0(%rbp)
movq %rax, -0x3a8(%rbp)
movq -0x3a0(%rbp), %rax
movss (%rax), %xmm0
movq -0x3a8(%rbp), %rax
mulss (%rax), %xmm0
movss %xmm0, -0x3ac(%rbp)
movq -0x3a0(%rbp), %rax
movss 0x4(%rax), %xmm0
movq -0x3a8(%rbp), %rax
mulss (%rax), %xmm0
movss %xmm0, -0x3b0(%rbp)
movq -0x3a0(%rbp), %rax
movss 0x8(%rax), %xmm0
movq -0x3a8(%rbp), %rax
mulss (%rax), %xmm0
movss %xmm0, -0x3b4(%rbp)
movq -0x3a0(%rbp), %rax
movss 0xc(%rax), %xmm0
movq -0x3a8(%rbp), %rax
mulss (%rax), %xmm0
movss %xmm0, -0x3b8(%rbp)
leaq -0x460(%rbp), %rax
movq %rax, -0x2c0(%rbp)
leaq -0x3ac(%rbp), %rax
movq %rax, -0x2c8(%rbp)
leaq -0x3b0(%rbp), %rax
movq %rax, -0x2d0(%rbp)
leaq -0x3b4(%rbp), %rax
movq %rax, -0x2d8(%rbp)
leaq -0x3b8(%rbp), %rax
movq %rax, -0x2e0(%rbp)
movq -0x2c0(%rbp), %rax
movq -0x2c8(%rbp), %rcx
movss (%rcx), %xmm0
movss %xmm0, (%rax)
movq -0x2d0(%rbp), %rcx
movss (%rcx), %xmm0
movss %xmm0, 0x4(%rax)
movq -0x2d8(%rbp), %rcx
movss (%rcx), %xmm0
movss %xmm0, 0x8(%rax)
movq -0x2e0(%rbp), %rcx
movss (%rcx), %xmm0
movss %xmm0, 0xc(%rax)
movq -0x418(%rbp), %rax
movq %rax, -0x290(%rbp)
movl $0x1, -0x294(%rbp)
movq -0x290(%rbp), %rcx
movq %rcx, -0x5b8(%rbp)
movl -0x294(%rbp), %eax
movq %rcx, -0x120(%rbp)
cmpl $0x4, %eax
jl 0xf58f
leaq 0x17be7(%rip), %rdi     # 0x2715e
leaq 0x1810c(%rip), %rsi     # 0x2768a
movl $0x3b, %edx
leaq 0x1811d(%rip), %rcx     # 0x276a7
callq 0x1040
movq -0x5b8(%rbp), %rax
movslq -0x294(%rbp), %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, -0x5d0(%rbp)
movq -0x420(%rbp), %rax
movq %rax, -0x30(%rbp)
movl $0x1, -0x34(%rbp)
movq -0x30(%rbp), %rax
movq %rax, -0x5c8(%rbp)
xorl %eax, %eax
cmpl $0x0, -0x34(%rbp)
movb %al, -0x5b9(%rbp)
jl 0xf5f0
movq -0x5c8(%rbp), %rcx
movl -0x34(%rbp), %eax
movq %rcx, -0x10(%rbp)
cmpl $0x3, %eax
setl %al
movb %al, -0x5b9(%rbp)
movb -0x5b9(%rbp), %al
testb $0x1, %al
jne 0xf619
leaq 0x17b53(%rip), %rdi     # 0x27154
leaq 0x17c62(%rip), %rsi     # 0x2726a
movl $0x33, %edx
leaq 0x18182(%rip), %rcx     # 0x27796
callq 0x1040
movq -0x5d0(%rbp), %rcx
movq -0x5c8(%rbp), %rax
movslq -0x34(%rbp), %rdx
shlq $0x2, %rdx
addq %rdx, %rax
leaq -0x470(%rbp), %rdx
movq %rdx, -0x3c0(%rbp)
movq %rcx, -0x3c8(%rbp)
movq %rax, -0x3d0(%rbp)
movq -0x3c8(%rbp), %rax
movss (%rax), %xmm0
movq -0x3d0(%rbp), %rax
mulss (%rax), %xmm0
movss %xmm0, -0x3d4(%rbp)
movq -0x3c8(%rbp), %rax
movss 0x4(%rax), %xmm0
movq -0x3d0(%rbp), %rax
mulss (%rax), %xmm0
movss %xmm0, -0x3d8(%rbp)
movq -0x3c8(%rbp), %rax
movss 0x8(%rax), %xmm0
movq -0x3d0(%rbp), %rax
mulss (%rax), %xmm0
movss %xmm0, -0x3dc(%rbp)
movq -0x3c8(%rbp), %rax
movss 0xc(%rax), %xmm0
movq -0x3d0(%rbp), %rax
mulss (%rax), %xmm0
movss %xmm0, -0x3e0(%rbp)
leaq -0x470(%rbp), %rax
movq %rax, -0x2e8(%rbp)
leaq -0x3d4(%rbp), %rax
movq %rax, -0x2f0(%rbp)
leaq -0x3d8(%rbp), %rax
movq %rax, -0x2f8(%rbp)
leaq -0x3dc(%rbp), %rax
movq %rax, -0x300(%rbp)
leaq -0x3e0(%rbp), %rax
movq %rax, -0x308(%rbp)
movq -0x2e8(%rbp), %rax
movq -0x2f0(%rbp), %rcx
movss (%rcx), %xmm0
movss %xmm0, (%rax)
movq -0x2f8(%rbp), %rcx
movss (%rcx), %xmm0
movss %xmm0, 0x4(%rax)
movq -0x300(%rbp), %rcx
movss (%rcx), %xmm0
movss %xmm0, 0x8(%rax)
movq -0x308(%rbp), %rcx
movss (%rcx), %xmm0
movss %xmm0, 0xc(%rax)
leaq -0x450(%rbp), %rax
movq %rax, -0x178(%rbp)
leaq -0x460(%rbp), %rax
movq %rax, -0x180(%rbp)
leaq -0x470(%rbp), %rax
movq %rax, -0x188(%rbp)
movq -0x180(%rbp), %rax
movss (%rax), %xmm0
movq -0x188(%rbp), %rax
addss (%rax), %xmm0
movss %xmm0, -0x18c(%rbp)
movq -0x180(%rbp), %rax
movss 0x4(%rax), %xmm0
movq -0x188(%rbp), %rax
addss 0x4(%rax), %xmm0
movss %xmm0, -0x190(%rbp)
movq -0x180(%rbp), %rax
movss 0x8(%rax), %xmm0
movq -0x188(%rbp), %rax
addss 0x8(%rax), %xmm0
movss %xmm0, -0x194(%rbp)
movq -0x180(%rbp), %rax
movss 0xc(%rax), %xmm0
movq -0x188(%rbp), %rax
addss 0xc(%rax), %xmm0
movss %xmm0, -0x198(%rbp)
leaq -0x450(%rbp), %rax
movq %rax, -0x150(%rbp)
leaq -0x18c(%rbp), %rax
movq %rax, -0x158(%rbp)
leaq -0x190(%rbp), %rax
movq %rax, -0x160(%rbp)
leaq -0x194(%rbp), %rax
movq %rax, -0x168(%rbp)
leaq -0x198(%rbp), %rax
movq %rax, -0x170(%rbp)
movq -0x150(%rbp), %rax
movq -0x158(%rbp), %rcx
movss (%rcx), %xmm0
movss %xmm0, (%rax)
movq -0x160(%rbp), %rcx
movss (%rcx), %xmm0
movss %xmm0, 0x4(%rax)
movq -0x168(%rbp), %rcx
movss (%rcx), %xmm0
movss %xmm0, 0x8(%rax)
movq -0x170(%rbp), %rcx
movss (%rcx), %xmm0
movss %xmm0, 0xc(%rax)
movq -0x418(%rbp), %rax
movq %rax, -0x2a0(%rbp)
movl $0x2, -0x2a4(%rbp)
movq -0x2a0(%rbp), %rcx
movq %rcx, -0x5d8(%rbp)
movl -0x2a4(%rbp), %eax
movq %rcx, -0x118(%rbp)
cmpl $0x4, %eax
jl 0xf8e0
leaq 0x17896(%rip), %rdi     # 0x2715e
leaq 0x17dbb(%rip), %rsi     # 0x2768a
movl $0x3b, %edx
leaq 0x17dcc(%rip), %rcx     # 0x276a7
callq 0x1040
movq -0x5d8(%rbp), %rax
movslq -0x2a4(%rbp), %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, -0x5f0(%rbp)
movq -0x420(%rbp), %rax
movq %rax, -0x40(%rbp)
movl $0x2, -0x44(%rbp)
movq -0x40(%rbp), %rax
movq %rax, -0x5e8(%rbp)
xorl %eax, %eax
cmpl $0x0, -0x44(%rbp)
movb %al, -0x5d9(%rbp)
jl 0xf941
movq -0x5e8(%rbp), %rcx
movl -0x44(%rbp), %eax
movq %rcx, -0x8(%rbp)
cmpl $0x3, %eax
setl %al
movb %al, -0x5d9(%rbp)
movb -0x5d9(%rbp), %al
testb $0x1, %al
jne 0xf96a
leaq 0x17802(%rip), %rdi     # 0x27154
leaq 0x17911(%rip), %rsi     # 0x2726a
movl $0x33, %edx
leaq 0x17e31(%rip), %rcx     # 0x27796
callq 0x1040
movq -0x5f0(%rbp), %rcx
movq -0x5e8(%rbp), %rax
movslq -0x44(%rbp), %rdx
shlq $0x2, %rdx
addq %rdx, %rax
leaq -0x480(%rbp), %rdx
movq %rdx, -0x3e8(%rbp)
movq %rcx, -0x3f0(%rbp)
movq %rax, -0x3f8(%rbp)
movq -0x3f0(%rbp), %rax
movss (%rax), %xmm0
movq -0x3f8(%rbp), %rax
mulss (%rax), %xmm0
movss %xmm0, -0x3fc(%rbp)
movq -0x3f0(%rbp), %rax
movss 0x4(%rax), %xmm0
movq -0x3f8(%rbp), %rax
mulss (%rax), %xmm0
movss %xmm0, -0x400(%rbp)
movq -0x3f0(%rbp), %rax
movss 0x8(%rax), %xmm0
movq -0x3f8(%rbp), %rax
mulss (%rax), %xmm0
movss %xmm0, -0x404(%rbp)
movq -0x3f0(%rbp), %rax
movss 0xc(%rax), %xmm0
movq -0x3f8(%rbp), %rax
mulss (%rax), %xmm0
movss %xmm0, -0x408(%rbp)
leaq -0x480(%rbp), %rax
movq %rax, -0x310(%rbp)
leaq -0x3fc(%rbp), %rax
movq %rax, -0x318(%rbp)
leaq -0x400(%rbp), %rax
movq %rax, -0x320(%rbp)
leaq -0x404(%rbp), %rax
movq %rax, -0x328(%rbp)
leaq -0x408(%rbp), %rax
movq %rax, -0x330(%rbp)
movq -0x310(%rbp), %rax
movq -0x318(%rbp), %rcx
movss (%rcx), %xmm0
movss %xmm0, (%rax)
movq -0x320(%rbp), %rcx
movss (%rcx), %xmm0
movss %xmm0, 0x4(%rax)
movq -0x328(%rbp), %rcx
movss (%rcx), %xmm0
movss %xmm0, 0x8(%rax)
movq -0x330(%rbp), %rcx
movss (%rcx), %xmm0
movss %xmm0, 0xc(%rax)
leaq -0x440(%rbp), %rax
movq %rax, -0x1c8(%rbp)
leaq -0x450(%rbp), %rax
movq %rax, -0x1d0(%rbp)
leaq -0x480(%rbp), %rax
movq %rax, -0x1d8(%rbp)
movq -0x1d0(%rbp), %rax
movss (%rax), %xmm0
movq -0x1d8(%rbp), %rax
addss (%rax), %xmm0
movss %xmm0, -0x1dc(%rbp)
movq -0x1d0(%rbp), %rax
movss 0x4(%rax), %xmm0
movq -0x1d8(%rbp), %rax
addss 0x4(%rax), %xmm0
movss %xmm0, -0x1e0(%rbp)
movq -0x1d0(%rbp), %rax
movss 0x8(%rax), %xmm0
movq -0x1d8(%rbp), %rax
addss 0x8(%rax), %xmm0
movss %xmm0, -0x1e4(%rbp)
movq -0x1d0(%rbp), %rax
movss 0xc(%rax), %xmm0
movq -0x1d8(%rbp), %rax
addss 0xc(%rax), %xmm0
movss %xmm0, -0x1e8(%rbp)
leaq -0x440(%rbp), %rax
movq %rax, -0x1a0(%rbp)
leaq -0x1dc(%rbp), %rax
movq %rax, -0x1a8(%rbp)
leaq -0x1e0(%rbp), %rax
movq %rax, -0x1b0(%rbp)
leaq -0x1e4(%rbp), %rax
movq %rax, -0x1b8(%rbp)
leaq -0x1e8(%rbp), %rax
movq %rax, -0x1c0(%rbp)
movq -0x1a0(%rbp), %rax
movq -0x1a8(%rbp), %rcx
movss (%rcx), %xmm0
movss %xmm0, (%rax)
movq -0x1b0(%rbp), %rcx
movss (%rcx), %xmm0
movss %xmm0, 0x4(%rax)
movq -0x1b8(%rbp), %rcx
movss (%rcx), %xmm0
movss %xmm0, 0x8(%rax)
movq -0x1c0(%rbp), %rcx
movss (%rcx), %xmm0
movss %xmm0, 0xc(%rax)
movq -0x418(%rbp), %rax
movq %rax, -0x2b0(%rbp)
movl $0x3, -0x2b4(%rbp)
movq -0x2b0(%rbp), %rcx
movq %rcx, -0x5f8(%rbp)
movl -0x2b4(%rbp), %eax
movq %rcx, -0x110(%rbp)
cmpl $0x4, %eax
jl 0xfc31
leaq 0x17545(%rip), %rdi     # 0x2715e
leaq 0x17a6a(%rip), %rsi     # 0x2768a
movl $0x3b, %edx
leaq 0x17a7b(%rip), %rcx     # 0x276a7
callq 0x1040
movq -0x5f8(%rbp), %rax
movslq -0x2b4(%rbp), %rcx
shlq $0x4, %rcx
addq %rcx, %rax
leaq -0x430(%rbp), %rcx
movq %rcx, -0x218(%rbp)
leaq -0x440(%rbp), %rcx
movq %rcx, -0x220(%rbp)
movq %rax, -0x228(%rbp)
movq -0x220(%rbp), %rax
movss (%rax), %xmm0
movq -0x228(%rbp), %rax
addss (%rax), %xmm0
movss %xmm0, -0x22c(%rbp)
movq -0x220(%rbp), %rax
movss 0x4(%rax), %xmm0
movq -0x228(%rbp), %rax
addss 0x4(%rax), %xmm0
movss %xmm0, -0x230(%rbp)
movq -0x220(%rbp), %rax
movss 0x8(%rax), %xmm0
movq -0x228(%rbp), %rax
addss 0x8(%rax), %xmm0
movss %xmm0, -0x234(%rbp)
movq -0x220(%rbp), %rax
movss 0xc(%rax), %xmm0
movq -0x228(%rbp), %rax
addss 0xc(%rax), %xmm0
movss %xmm0, -0x238(%rbp)
leaq -0x430(%rbp), %rax
movq %rax, -0x1f0(%rbp)
leaq -0x22c(%rbp), %rax
movq %rax, -0x1f8(%rbp)
leaq -0x230(%rbp), %rax
movq %rax, -0x200(%rbp)
leaq -0x234(%rbp), %rax
movq %rax, -0x208(%rbp)
leaq -0x238(%rbp), %rax
movq %rax, -0x210(%rbp)
movq -0x1f0(%rbp), %rax
movq -0x1f8(%rbp), %rcx
movss (%rcx), %xmm0
movss %xmm0, (%rax)
movq -0x200(%rbp), %rcx
movss (%rcx), %xmm0
movss %xmm0, 0x4(%rax)
movq -0x208(%rbp), %rcx
movss (%rcx), %xmm0
movss %xmm0, 0x8(%rax)
movq -0x210(%rbp), %rcx
movss (%rcx), %xmm0
movss %xmm0, 0xc(%rax)
leaq -0x554(%rbp), %rax
movq %rax, -0x388(%rbp)
movl $0x3, -0x38c(%rbp)
movq -0x388(%rbp), %rcx
movq %rcx, -0x600(%rbp)
movl -0x38c(%rbp), %eax
movq %rcx, -0x108(%rbp)
cmpl $0x4, %eax
jl 0xfdca
leaq 0x173ac(%rip), %rdi     # 0x2715e
leaq 0x178d1(%rip), %rsi     # 0x2768a
movl $0x30, %edx
leaq 0x17a38(%rip), %rcx     # 0x277fd
callq 0x1040
movq -0x600(%rbp), %rax
movslq -0x38c(%rbp), %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, -0x378(%rbp)
leaq -0x430(%rbp), %rax
movq %rax, -0x380(%rbp)
movq -0x378(%rbp), %rax
movq -0x380(%rbp), %rcx
movss (%rcx), %xmm0
movss %xmm0, (%rax)
movq -0x380(%rbp), %rcx
movss 0x4(%rcx), %xmm0
movss %xmm0, 0x4(%rax)
movq -0x380(%rbp), %rcx
movss 0x8(%rcx), %xmm0
movss %xmm0, 0x8(%rax)
movq -0x380(%rbp), %rcx
movss 0xc(%rcx), %xmm0
movss %xmm0, 0xc(%rax)
leaq -0x4f8(%rbp), %rax
movq %rax, -0x4a8(%rbp)
leaq -0x554(%rbp), %rax
movq %rax, -0x4b0(%rbp)
movq -0x4a8(%rbp), %rax
movq %rax, -0x610(%rbp)
movq -0x4b0(%rbp), %rax
movq %rax, -0x240(%rbp)
movl $0x0, -0x244(%rbp)
movq -0x240(%rbp), %rcx
movq %rcx, -0x608(%rbp)
movl -0x244(%rbp), %eax
movq %rcx, -0x148(%rbp)
cmpl $0x4, %eax
jl 0xfebe
leaq 0x172b8(%rip), %rdi     # 0x2715e
leaq 0x177dd(%rip), %rsi     # 0x2768a
movl $0x3b, %edx
leaq 0x177ee(%rip), %rcx     # 0x276a7
callq 0x1040
movq -0x610(%rbp), %rcx
movq -0x608(%rbp), %rax
movslq -0x244(%rbp), %rdx
shlq $0x4, %rdx
addq %rdx, %rax
movq %rcx, -0x338(%rbp)
movq %rax, -0x340(%rbp)
movq -0x338(%rbp), %rax
movq -0x340(%rbp), %rcx
movss (%rcx), %xmm0
movss %xmm0, (%rax)
movq -0x340(%rbp), %rcx
movss 0x4(%rcx), %xmm0
movss %xmm0, 0x4(%rax)
movq -0x340(%rbp), %rcx
movss 0x8(%rcx), %xmm0
movss %xmm0, 0x8(%rax)
movq -0x340(%rbp), %rcx
movss 0xc(%rcx), %xmm0
movss %xmm0, 0xc(%rax)
movq -0x4b0(%rbp), %rax
movq %rax, -0x250(%rbp)
movl $0x1, -0x254(%rbp)
movq -0x250(%rbp), %rcx
movq %rcx, -0x618(%rbp)
movl -0x254(%rbp), %eax
movq %rcx, -0x140(%rbp)
cmpl $0x4, %eax
jl 0xff88
leaq 0x171ee(%rip), %rdi     # 0x2715e
leaq 0x17713(%rip), %rsi     # 0x2768a
movl $0x3b, %edx
leaq 0x17724(%rip), %rcx     # 0x276a7
callq 0x1040
movq -0x610(%rbp), %rcx
movq -0x618(%rbp), %rax
movslq -0x254(%rbp), %rdx
shlq $0x4, %rdx
addq %rdx, %rax
addq $0x10, %rcx
movq %rcx, -0x348(%rbp)
movq %rax, -0x350(%rbp)
movq -0x348(%rbp), %rax
movq -0x350(%rbp), %rcx
movss (%rcx), %xmm0
movss %xmm0, (%rax)
movq -0x350(%rbp), %rcx
movss 0x4(%rcx), %xmm0
movss %xmm0, 0x4(%rax)
movq -0x350(%rbp), %rcx
movss 0x8(%rcx), %xmm0
movss %xmm0, 0x8(%rax)
movq -0x350(%rbp), %rcx
movss 0xc(%rcx), %xmm0
movss %xmm0, 0xc(%rax)
movq -0x4b0(%rbp), %rax
movq %rax, -0x260(%rbp)
movl $0x2, -0x264(%rbp)
movq -0x260(%rbp), %rcx
movq %rcx, -0x620(%rbp)
movl -0x264(%rbp), %eax
movq %rcx, -0x138(%rbp)
cmpl $0x4, %eax
jl 0x10056
leaq 0x17120(%rip), %rdi     # 0x2715e
leaq 0x17645(%rip), %rsi     # 0x2768a
movl $0x3b, %edx
leaq 0x17656(%rip), %rcx     # 0x276a7
callq 0x1040
movq -0x610(%rbp), %rcx
movq -0x620(%rbp), %rax
movslq -0x264(%rbp), %rdx
shlq $0x4, %rdx
addq %rdx, %rax
addq $0x20, %rcx
movq %rcx, -0x358(%rbp)
movq %rax, -0x360(%rbp)
movq -0x358(%rbp), %rax
movq -0x360(%rbp), %rcx
movss (%rcx), %xmm0
movss %xmm0, (%rax)
movq -0x360(%rbp), %rcx
movss 0x4(%rcx), %xmm0
movss %xmm0, 0x4(%rax)
movq -0x360(%rbp), %rcx
movss 0x8(%rcx), %xmm0
movss %xmm0, 0x8(%rax)
movq -0x360(%rbp), %rcx
movss 0xc(%rcx), %xmm0
movss %xmm0, 0xc(%rax)
movq -0x4b0(%rbp), %rax
movq %rax, -0x270(%rbp)
movl $0x3, -0x274(%rbp)
movq -0x270(%rbp), %rcx
movq %rcx, -0x628(%rbp)
movl -0x274(%rbp), %eax
movq %rcx, -0x130(%rbp)
cmpl $0x4, %eax
jl 0x10124
leaq 0x17052(%rip), %rdi     # 0x2715e
leaq 0x17577(%rip), %rsi     # 0x2768a
movl $0x3b, %edx
leaq 0x17588(%rip), %rcx     # 0x276a7
callq 0x1040
movq -0x610(%rbp), %rcx
movq -0x628(%rbp), %rax
movslq -0x274(%rbp), %rdx
shlq $0x4, %rdx
addq %rdx, %rax
addq $0x30, %rcx
movq %rcx, -0x368(%rbp)
movq %rax, -0x370(%rbp)
movq -0x368(%rbp), %rax
movq -0x370(%rbp), %rcx
movss (%rcx), %xmm0
movss %xmm0, (%rax)
movq -0x370(%rbp), %rcx
movss 0x4(%rcx), %xmm0
movss %xmm0, 0x4(%rax)
movq -0x370(%rbp), %rcx
movss 0x8(%rcx), %xmm0
movss %xmm0, 0x8(%rax)
movq -0x370(%rbp), %rcx
movss 0xc(%rcx), %xmm0
movss %xmm0, 0xc(%rax)
movl -0x514(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x514(%rbp)
jmp 0xef40
leaq 0x19f22(%rip), %rdi     # 0x2a0d8
callq 0x1350
leaq 0x19f16(%rip), %rdi     # 0x2a0d8
callq 0x1400
addq $0x630, %rsp            # imm = 0x630
popq %rbp
retq