// File: /workspace/github_c_makefile_star2_O3/jonof[P]jftekwar/jfbuild/src/mdsprite.c
// Function: mddraw
int mddraw (spritetype *tspr, int method)
{
	mdmodel *vm;

	if (maxmodelverts > allocmodelverts)
	{
		point3d *vl = (point3d *)realloc(vertlist,sizeof(point3d)*maxmodelverts);
		if (!vl) { buildprintf("ERROR: Not enough memory to allocate %d vertices!\n",maxmodelverts); return 0; }
		vertlist = vl; allocmodelverts = maxmodelverts;
	}
	if (maxelementvbo > allocelementvbo)
	{
		struct polymostvboitem *vbo = (struct polymostvboitem *)realloc(elementvbo, maxelementvbo * sizeof(struct polymostvboitem));
		if (!vbo) { buildprintf("ERROR: Not enough memory to allocate %d vertex buffer items!\n",maxelementvbo); return 0; }
		elementvbo = vbo; allocelementvbo = maxelementvbo;
	}

	vm = models[tile2model[tspr->picnum].modelid];
	if (vm->mdnum == 1) { return voxdraw((voxmodel *)vm,tspr,method); }
	if (vm->mdnum == 2) { return md2draw((md2model *)vm,tspr,method); }
	if (vm->mdnum == 3) { return md3draw((md3model *)vm,tspr,method); }
	return 0;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x188, %rsp            # imm = 0x188
movl %esi, %ebp
movq %rdi, %rbx
movl 0x600748(%rip), %r14d   # 0x664048
cmpl 0x600745(%rip), %r14d   # 0x66404c
jle 0x63938
movq 0x600730(%rip), %rdi    # 0x664040
leaq (,%r14,4), %rax
leaq (%rax,%rax,2), %rsi
callq 0x6120
testq %rax, %rax
je 0x639d1
movq %rax, 0x60070f(%rip)    # 0x664040
movl %r14d, 0x600714(%rip)   # 0x66404c
movl 0x600719(%rip), %r14d   # 0x664058
cmpl 0x600716(%rip), %r14d   # 0x66405c
jle 0x63977
movq 0x600701(%rip), %rdi    # 0x664050
leaq (,%r14,4), %rax
leaq (%rax,%rax,4), %rsi
callq 0x6120
testq %rax, %rax
je 0x63bf4
movq %rax, 0x6006e0(%rip)    # 0x664050
movl %r14d, 0x6006e5(%rip)   # 0x66405c
movq 0x5e56aa(%rip), %rax    # 0x649028
movswq 0xe(%rbx), %rcx
leaq (%rcx,%rcx,2), %rcx
leaq 0x5e56b2(%rip), %rdx    # 0x649040
movslq (%rdx,%rcx,4), %rcx
movq (%rax,%rcx,8), %r14
movl (%r14), %eax
cmpl $0x3, %eax
je 0x63b31
cmpl $0x2, %eax
je 0x639dd
xorl %r12d, %r12d
cmpl $0x1, %eax
jne 0x652ae
movq %r14, %rdi
movq %rbx, %rsi
movl %ebp, %edx
addq $0x188, %rsp            # imm = 0x188
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x62b8a
leaq 0x17b28(%rip), %rdi     # 0x7b500
jmp 0x63bfb
movq %r14, %rdi
movq %rbx, %rsi
callq 0x6604e
movq 0x70(%r14), %rax
movslq 0x24(%r14), %rcx
movslq 0x64(%r14), %rsi
imulq %rsi, %rcx
movslq 0x28(%r14), %rdx
imulq %rsi, %rdx
movss 0x8(%r14), %xmm14
movss 0x3c(%r14), %xmm2
movss 0x13700(%rip), %xmm4    # 0x77114
movaps %xmm4, %xmm11
subss %xmm2, %xmm11
movaps %xmm14, %xmm0
shufps $0x0, %xmm14, %xmm0     # xmm0 = xmm0[0,0],xmm14[0,0]
movss 0x8(%rax,%rcx), %xmm1
movss 0x8(%rax,%rdx), %xmm3
unpcklps %xmm1, %xmm3            # xmm3 = xmm3[0],xmm1[0],xmm3[1],xmm1[1]
mulps %xmm0, %xmm3
movaps %xmm2, %xmm13
unpcklps %xmm11, %xmm13          # xmm13 = xmm13[0],xmm11[0],xmm13[1],xmm11[1]
movss 0xc(%rax,%rcx), %xmm8
mulss %xmm14, %xmm8
movss 0xc(%rax,%rdx), %xmm12
mulss %xmm14, %xmm12
subss %xmm8, %xmm12
movss 0x10(%rax,%rcx), %xmm10
mulss %xmm14, %xmm10
movss 0x10(%rax,%rdx), %xmm6
mulss %xmm14, %xmm6
subss %xmm10, %xmm6
movss 0x14(%rax,%rcx), %xmm0
mulss %xmm14, %xmm0
movss 0x14(%rax,%rdx), %xmm1
mulss %xmm14, %xmm1
subss %xmm0, %xmm1
mulss %xmm2, %xmm1
addss %xmm0, %xmm1
movss 0x10(%r14), %xmm9
mulss %xmm14, %xmm9
cvtsi2ssl 0x8(%rbx), %xmm7
leaq 0x3ac54e(%rip), %rsi    # 0x410000
movl (%rsi), %edi
testb %dil, %dil
setns %r8b
movl %edi, %esi
andl $0x30, %esi
cmpl $0x20, %esi
sete %r9b
orb %r8b, %r9b
jne 0x63af5
movswq 0xe(%rbx), %r8
leaq 0x39dd08(%rip), %r9     # 0x4017e0
movswl (%r9,%r8,2), %r8d
movzbl 0x15(%rbx), %r9d
imull %r8d, %r9d
addl %r9d, %r9d
xorps %xmm0, %xmm0
cvtsi2ss %r9d, %xmm0
addss %xmm0, %xmm7
movss 0x4(%rax,%rcx), %xmm15
mulss %xmm14, %xmm15
movss 0x4(%rax,%rdx), %xmm5
mulss %xmm14, %xmm5
mulss %xmm2, %xmm6
mulss %xmm2, %xmm12
mulps %xmm3, %xmm13
addss %xmm1, %xmm9
testb $0x8, %dil
jne 0x63c0d
movb 0x15(%rbx), %r8b
jmp 0x63c46
movq %r14, %rdi
movq %rbx, %rsi
callq 0x6604e
movss 0x8(%r14), %xmm0
movss 0x3c(%r14), %xmm1
movss 0x135c3(%rip), %xmm12   # 0x77114
movaps %xmm12, %xmm2
cvtss2sd %xmm0, %xmm3
mulsd 0x1792f(%rip), %xmm3    # 0x7b490
subss %xmm1, %xmm2
unpcklps %xmm2, %xmm1            # xmm1 = xmm1[0],xmm2[0],xmm1[1],xmm2[1]
cvtps2pd %xmm1, %xmm1
unpcklpd %xmm3, %xmm3            # xmm3 = xmm3[0,0]
mulpd %xmm1, %xmm3
cvtpd2ps %xmm3, %xmm5
xorps %xmm1, %xmm1
cvtsi2ssl 0x8(%rbx), %xmm1
leaq 0x3ac47a(%rip), %r15    # 0x410000
movl (%r15), %ecx
testb %cl, %cl
setns %dl
movl %ecx, %eax
andl $0x30, %eax
cmpl $0x20, %eax
sete %sil
orb %dl, %sil
jne 0x63bc3
movswq 0xe(%rbx), %rdx
leaq 0x39dc35(%rip), %rsi    # 0x4017e0
movswl (%rsi,%rdx,2), %edx
movzbl 0x15(%rbx), %esi
imull %edx, %esi
addl %esi, %esi
xorps %xmm2, %xmm2
cvtsi2ss %esi, %xmm2
addss %xmm2, %xmm1
mulss 0x10(%r14), %xmm0
movapd %xmm5, %xmm6
shufps $0x55, %xmm5, %xmm6     # xmm6 = xmm6[1,1],xmm5[1,1]
testb $0x8, %cl
jne 0x646fe
movb 0x15(%rbx), %dl
movaps 0x1050c(%rip), %xmm3    # 0x740f0
xorps %xmm5, %xmm3
movaps %xmm5, %xmm8
movaps %xmm6, %xmm9
jmp 0x6473f
leaq 0x17938(%rip), %rdi     # 0x7b533
xorl %r12d, %r12d
movl %r14d, %esi
xorl %eax, %eax
callq 0x25221
jmp 0x652ae
movaps 0x104dc(%rip), %xmm0    # 0x740f0
xorps %xmm0, %xmm13
xorps %xmm0, %xmm9
movswq 0xe(%rbx), %r8
leaq 0x39dbb8(%rip), %r9     # 0x4017e0
movswl (%r9,%r8,2), %r9d
movzbl 0x15(%rbx), %r8d
imull %r8d, %r9d
shll $0x2, %r9d
xorps %xmm0, %xmm0
cvtsi2ss %r9d, %xmm0
subss %xmm0, %xmm7
mulss %xmm11, %xmm15
mulss %xmm2, %xmm5
addss %xmm10, %xmm6
addss %xmm8, %xmm12
movaps 0x10490(%rip), %xmm3    # 0x740f0
testb $0x4, %dil
movaps %xmm2, 0x60(%rsp)
je 0x63c75
xorps %xmm3, %xmm15
xorps %xmm3, %xmm5
xorps %xmm3, %xmm6
movaps %xmm11, 0xa0(%rsp)
movzbl 0x14(%rbx), %edi
xorps %xmm8, %xmm8
cvtsi2ss %edi, %xmm8
movss 0x177bd(%rip), %xmm0    # 0x7b450
mulss %xmm0, %xmm8
movss 0xc(%r14), %xmm1
mulss %xmm1, %xmm8
mulss %xmm8, %xmm12
movaps %xmm8, 0x170(%rsp)
xorps %xmm3, %xmm8
mulss %xmm8, %xmm15
mulss %xmm8, %xmm5
mulss %xmm6, %xmm8
movzbl %r8b, %r8d
cvtsi2ss %r8d, %xmm2
mulss %xmm0, %xmm2
mulss %xmm1, %xmm2
movaps %xmm13, %xmm6
shufps $0x55, %xmm13, %xmm6    # xmm6 = xmm6[1,1],xmm13[1,1]
mulss %xmm2, %xmm6
mulss %xmm2, %xmm13
mulss %xmm2, %xmm9
movl 0x4(%rbx), %edi
cvtsi2ss %edi, %xmm10
cmpl $0x20, %esi
movl %ebp, 0x8(%rsp)
movaps %xmm14, 0x10(%rsp)
jne 0x63d5f
xorps %xmm3, %xmm6
xorps %xmm3, %xmm13
movaps %xmm13, 0x90(%rsp)
xorps %xmm3, %xmm9
xorps %xmm3, %xmm15
movaps %xmm15, 0x80(%rsp)
movswq 0xe(%rbx), %r9
leaq 0x39dab0(%rip), %r10    # 0x4017e0
movswl (%r10,%r9,2), %r9d
imull %r8d, %r9d
sarl $0x3, %r9d
xorps %xmm0, %xmm0
cvtsi2ss %r9d, %xmm0
xorps %xmm3, %xmm5
movaps %xmm5, 0xd0(%rsp)
xorps %xmm3, %xmm8
addss %xmm0, %xmm10
movaps %xmm9, %xmm11
jmp 0x63d81
movaps %xmm5, 0xd0(%rsp)
movaps %xmm15, 0x80(%rsp)
movaps %xmm13, 0x90(%rsp)
movaps %xmm12, %xmm11
movaps %xmm9, %xmm12
movl (%rbx), %r11d
leaq 0x1d6cc5(%rip), %r8     # 0x23aa50
subl (%r8), %r11d
leaq 0x1d6cbf(%rip), %r8     # 0x23aa54
movl (%r8), %r10d
subl %r10d, %edi
movzwl 0x1c(%rbx), %r9d
movswq 0x1e(%rbx), %r8
leaq (%r8,%r8,2), %r8
leaq 0x2c8f00(%rip), %r15    # 0x32ccb0
movzwl 0x6(%r15,%r8,4), %r15d
leal (%r15,%r9), %r8d
movl $0x7ff, %ebp            # imm = 0x7FF
andl %ebp, %r8d
xorl $0x400, %r8d            # imm = 0x400
addl %r15d, %r9d
addl $0x200, %r9d            # imm = 0x200
leaq 0x40a56(%rip), %r15     # 0xa4830
xorps %xmm0, %xmm0
cvtsi2ssl (%r15), %xmm0
leaq 0x36bf67(%rip), %r15    # 0x3cfd50
xorps %xmm1, %xmm1
cvtsi2ssl (%r15), %xmm1
andl %ebp, %r9d
mulss %xmm0, %xmm1
movss 0x17647(%rip), %xmm15   # 0x7b448
divss %xmm1, %xmm15
cvtss2sd %xmm0, %xmm0
leaq 0x59adaf(%rip), %r15    # 0x5febc0
mulsd (%r15), %xmm0
movsd 0x16a82(%rip), %xmm1    # 0x7a8a0
divsd %xmm0, %xmm1
xorps %xmm9, %xmm9
cvtsd2ss %xmm1, %xmm9
cvtsi2ss %r11d, %xmm14
xorps %xmm0, %xmm0
cvtss2sd %xmm14, %xmm0
movsd 0x13278(%rip), %xmm1    # 0x770b8
mulsd %xmm1, %xmm0
xorps %xmm2, %xmm2
cvtss2sd %xmm8, %xmm2
addsd %xmm0, %xmm2
xorps %xmm0, %xmm0
cvtss2sd %xmm15, %xmm0
mulsd %xmm2, %xmm0
movsd %xmm0, 0xb0(%rsp)
movaps %xmm15, %xmm2
xorps %xmm3, %xmm2
xorps %xmm0, %xmm0
cvtsi2ss %r10d, %xmm0
subss %xmm0, %xmm10
xorps %xmm0, %xmm0
cvtss2sd %xmm10, %xmm0
mulsd %xmm1, %xmm0
xorps %xmm1, %xmm1
cvtss2sd %xmm11, %xmm1
subsd %xmm0, %xmm1
leaq 0x207bc8(%rip), %r10    # 0x26ba60
xorps %xmm0, %xmm0
cvtsi2ssl (%r10), %xmm0
movaps %xmm2, 0x150(%rsp)
cvtss2sd %xmm2, %xmm2
mulsd %xmm1, %xmm2
movsd %xmm2, 0x78(%rsp)
subss %xmm0, %xmm7
xorps %xmm1, %xmm1
cvtss2sd %xmm7, %xmm1
movsd 0x175cf(%rip), %xmm0    # 0x7b498
mulsd %xmm0, %xmm1
xorps %xmm2, %xmm2
cvtss2sd %xmm12, %xmm2
subsd %xmm1, %xmm2
movss %xmm9, 0x4(%rsp)
xorps %xmm1, %xmm1
cvtss2sd %xmm9, %xmm1
mulsd %xmm2, %xmm1
movsd %xmm1, 0xe0(%rsp)
mulss %xmm15, %xmm14
movss 0x1754a(%rip), %xmm2    # 0x7b44c
mulss %xmm2, %xmm14
xorps %xmm1, %xmm1
cvtsi2ss %edi, %xmm1
leaq 0x596c2b(%rip), %rdi    # 0x5fab40
movsd (%rdi), %xmm13
leaq 0x596a97(%rip), %rdi    # 0x5fa9b8
movsd (%rdi), %xmm9
movapd %xmm13, %xmm3
mulsd %xmm9, %xmm3
cvtsd2ss %xmm3, %xmm8
leaq 0x36ae14(%rip), %rdi    # 0x3ced50
movswl (%rdi,%r8,2), %r8d
xorps %xmm3, %xmm3
cvtsi2sd %r8d, %xmm3
movaps %xmm15, 0x160(%rsp)
mulss %xmm15, %xmm1
mulsd %xmm0, %xmm3
cvtsd2ss %xmm3, %xmm3
mulss %xmm2, %xmm1
movswl (%rdi,%r9,2), %edi
xorps %xmm2, %xmm2
cvtsi2sd %edi, %xmm2
mulsd %xmm0, %xmm2
cvtsd2ss %xmm2, %xmm2
movss %xmm4, 0xc(%rsp)
movaps %xmm4, %xmm7
subss %xmm3, %xmm7
movaps %xmm14, %xmm10
mulss %xmm7, %xmm10
mulss %xmm1, %xmm7
mulss %xmm2, %xmm1
addss %xmm1, %xmm10
mulss %xmm2, %xmm14
subss %xmm14, %xmm7
leaq 0x596b9d(%rip), %rdi    # 0x5fab48
leaq 0x596a0e(%rip), %r8     # 0x5fa9c0
leaq 0x596b6f(%rip), %r9     # 0x5fab28
movsd (%r9), %xmm0
movsd (%rdi), %xmm1
movapd %xmm1, %xmm12
unpcklpd %xmm0, %xmm12           # xmm12 = xmm12[0],xmm0[0]
unpcklpd %xmm1, %xmm0            # xmm0 = xmm0[0],xmm1[0]
movapd 0x14058(%rip), %xmm1    # 0x78030
movsd (%r8), %xmm4
movapd %xmm4, %xmm11
xorpd %xmm1, %xmm11
leaq 0x5969c2(%rip), %rdi    # 0x5fa9b0
movsd (%rdi), %xmm14
xorpd %xmm14, %xmm1
unpcklpd %xmm1, %xmm14           # xmm14 = xmm14[0],xmm1[0]
xorps %xmm1, %xmm1
cvtss2sd %xmm8, %xmm1
mulpd %xmm0, %xmm14
movlhps %xmm1, %xmm1            # xmm1 = xmm1[0,0]
mulpd %xmm12, %xmm1
addpd %xmm14, %xmm1
unpcklpd %xmm4, %xmm11           # xmm11 = xmm11[0],xmm4[0]
leaq 0x596985(%rip), %rdi    # 0x5fa9a8
mulpd %xmm0, %xmm11
movsd (%rdi), %xmm0
movapd %xmm0, %xmm4
mulsd %xmm13, %xmm4
cvtsd2ss %xmm4, %xmm4
xorps %xmm8, %xmm8
cvtss2sd %xmm4, %xmm8
movlhps %xmm8, %xmm8            # xmm8 = xmm8[0,0]
mulpd %xmm12, %xmm8
addpd %xmm11, %xmm8
leaq 0x596ac9(%rip), %rdi    # 0x5fab20
movsd (%rdi), %xmm4
mulsd %xmm4, %xmm0
mulsd %xmm4, %xmm9
unpcklpd %xmm4, %xmm4            # xmm4 = xmm4[0,0]
cvtpd2ps %xmm1, %xmm1
cvtpd2ps %xmm8, %xmm15
mulpd %xmm12, %xmm4
movaps %xmm2, %xmm11
shufps $0x0, %xmm2, %xmm11     # xmm11 = xmm11[0,0],xmm2[0,0]
movaps %xmm11, %xmm12
mulps %xmm15, %xmm12
movaps %xmm3, %xmm14
shufps $0x0, %xmm3, %xmm14     # xmm14 = xmm14[0,0],xmm3[0,0]
movaps %xmm14, %xmm8
mulps %xmm1, %xmm8
subps %xmm12, %xmm8
cvtsd2ss %xmm13, %xmm5
movss (%rax,%rcx), %xmm13
movaps 0x10(%rsp), %xmm12
mulss %xmm12, %xmm13
movss %xmm13, 0xcc(%rsp)
mulss (%rax,%rdx), %xmm12
movaps %xmm12, 0x10(%rsp)
xorps %xmm13, %xmm13
cvtsd2ss %xmm0, %xmm13
xorps %xmm0, %xmm0
cvtsd2ss %xmm9, %xmm0
movaps %xmm2, %xmm9
mulss %xmm0, %xmm9
movaps %xmm3, %xmm12
mulss %xmm13, %xmm12
addss %xmm9, %xmm12
cvtpd2ps %xmm4, %xmm9
movlpd %xmm9, 0x30(%rsp)
movlps %xmm8, 0x40(%rsp)
movss %xmm12, 0x28(%rsp)
movaps %xmm5, %xmm4
xorps 0xffdd(%rip), %xmm4     # 0x740f0
movss %xmm4, 0x38(%rsp)
mulss %xmm13, %xmm2
mulss %xmm0, %xmm3
subss %xmm2, %xmm3
mulss %xmm7, %xmm0
mulss %xmm10, %xmm13
addss %xmm0, %xmm13
mulps %xmm1, %xmm11
mulps %xmm15, %xmm14
addps %xmm11, %xmm14
shufps $0x0, %xmm7, %xmm7      # xmm7 = xmm7[0,0,0,0]
mulps %xmm1, %xmm7
shufps $0x0, %xmm10, %xmm10    # xmm10 = xmm10[0,0,0,0]
mulps %xmm15, %xmm10
xorps %xmm2, %xmm2
cvtsd2ss 0xb0(%rsp), %xmm2
xorps %xmm0, %xmm0
cvtsd2ss 0x78(%rsp), %xmm0
xorps %xmm4, %xmm4
cvtsd2ss 0xe0(%rsp), %xmm4
addps %xmm7, %xmm10
movaps %xmm5, %xmm1
mulss %xmm4, %xmm1
shufps $0x0, %xmm4, %xmm4      # xmm4 = xmm4[0,0,0,0]
mulps %xmm9, %xmm4
mulss %xmm2, %xmm12
shufps $0x0, %xmm2, %xmm2      # xmm2 = xmm2[0,0,0,0]
mulps %xmm14, %xmm2
addps %xmm4, %xmm2
movaps %xmm0, %xmm7
shufps $0x0, %xmm0, %xmm7      # xmm7 = xmm7[0,0],xmm0[0,0]
mulps %xmm8, %xmm7
addps %xmm2, %xmm7
addps %xmm10, %xmm7
subss %xmm1, %xmm12
mulss %xmm3, %xmm0
addss %xmm12, %xmm0
addss %xmm13, %xmm0
movss %xmm3, 0x48(%rsp)
movlps %xmm14, 0x20(%rsp)
movlps %xmm7, 0x50(%rsp)
movss %xmm0, 0x58(%rsp)
cmpl $0x20, %esi
jne 0x64219
mulps 0x17293(%rip), %xmm8    # 0x7b470
mulps 0x1729b(%rip), %xmm9    # 0x7b480
movlps %xmm8, 0x30(%rsp)
mulss 0x17261(%rip), %xmm3    # 0x7b454
movlps %xmm9, 0x40(%rsp)
movss %xmm3, 0x38(%rsp)
mulss 0x17251(%rip), %xmm5    # 0x7b458
movss %xmm5, 0x48(%rsp)
movaps %xmm8, %xmm0
movaps %xmm9, %xmm8
movaps %xmm0, %xmm9
movaps 0x60(%rsp), %xmm2
movaps 0xa0(%rsp), %xmm3
leaq 0x596973(%rip), %r13    # 0x5faba0
xorps %xmm0, %xmm0
ucomisd (%r13), %xmm0
movaps 0x90(%rsp), %xmm4
movaps 0x80(%rsp), %xmm10
movaps 0xd0(%rsp), %xmm5
jbe 0x64282
movaps 0xfe98(%rip), %xmm0     # 0x740f0
xorps %xmm0, %xmm14
movss %xmm14, 0x20(%rsp)
xorps %xmm0, %xmm9
movss %xmm9, 0x30(%rsp)
xorps %xmm0, %xmm8
movss %xmm8, 0x40(%rsp)
xorps %xmm0, %xmm7
movss %xmm7, 0x50(%rsp)
xorl %r12d, %r12d
movl %r12d, 0x4c(%rsp)
movl %r12d, 0x3c(%rsp)
movl %r12d, 0x2c(%rsp)
movl $0x3f800000, 0x5c(%rsp) # imm = 0x3F800000
movslq 0x58(%r14), %rsi
testq %rsi, %rsi
jle 0x643a6
mulss 0xcc(%rsp), %xmm3
mulss 0x10(%rsp), %xmm2
movaps 0x170(%rsp), %xmm0
mulss %xmm0, %xmm3
mulss %xmm0, %xmm2
movaps 0x160(%rsp), %xmm0
mulss %xmm0, %xmm10
mulss %xmm0, %xmm5
movaps 0x150(%rsp), %xmm0
mulss %xmm0, %xmm3
mulss %xmm0, %xmm2
movss 0x4(%rsp), %xmm0
mulss %xmm0, %xmm6
mulss %xmm0, %xmm4
movq 0x5ffd42(%rip), %rdi    # 0x664040
leaq (%rsi,%rsi,2), %r8
leaq (%rdi,%r8,4), %rdi
addq $-0x4, %rdi
addq %rax, %rdx
addq $0x26, %rdx
addq %rcx, %rax
addq $0x26, %rax
movzbl -0x2(%rax,%rsi,4), %ecx
xorps %xmm0, %xmm0
cvtsi2ss %ecx, %xmm0
movzbl -0x2(%rdx,%rsi,4), %ecx
xorps %xmm1, %xmm1
cvtsi2ss %ecx, %xmm1
mulss %xmm3, %xmm0
mulss %xmm2, %xmm1
addss %xmm0, %xmm1
movss %xmm1, (%rdi)
movzbl (%rax,%rsi,4), %ecx
xorps %xmm0, %xmm0
cvtsi2ss %ecx, %xmm0
movzbl (%rdx,%rsi,4), %ecx
xorps %xmm1, %xmm1
cvtsi2ss %ecx, %xmm1
mulss %xmm6, %xmm0
mulss %xmm4, %xmm1
addss %xmm0, %xmm1
movss %xmm1, -0x4(%rdi)
movzbl -0x1(%rax,%rsi,4), %ecx
xorps %xmm0, %xmm0
cvtsi2ss %ecx, %xmm0
movzbl -0x1(%rdx,%rsi,4), %ecx
xorps %xmm1, %xmm1
cvtsi2ss %ecx, %xmm1
leaq -0x1(%rsi), %rcx
mulss %xmm10, %xmm0
mulss %xmm5, %xmm1
addss %xmm0, %xmm1
movss %xmm1, -0x8(%rdi)
addq $-0xc, %rdi
cmpq $0x1, %rsi
movq %rcx, %rsi
ja 0x64318
movswq 0xe(%rbx), %rax
leaq (%rax,%rax,2), %rax
leaq 0x5e4c8a(%rip), %rcx    # 0x649040
movl 0x4(%rcx,%rax,4), %esi
leaq 0x3abc43(%rip), %rbp    # 0x410004
movl (%rbp), %edx
movq %r14, %rdi
xorl %ecx, %ecx
callq 0x60e84
testq %rax, %rax
je 0x652ae
movq %rax, %r15
cmpl $0x0, (%rax)
je 0x652ae
testb $0x4, 0xd(%rbx)
je 0x64410
leaq 0x596350(%rip), %r12    # 0x5fa740
movl $0x201, %edi            # imm = 0x201
callq *0x98(%r12)
movsd 0x1709b(%rip), %xmm1    # 0x7b4a0
xorps %xmm0, %xmm0
callq *0xa8(%r12)
movsd (%r13), %xmm0
xorps %xmm1, %xmm1
xorl %eax, %eax
ucomisd %xmm1, %xmm0
setae %al
leaq 0x3abbd7(%rip), %rcx    # 0x410000
movl (%rcx), %ecx
movl %ecx, %edx
shrl $0x3, %edx
andl $0x1, %edx
xorl %eax, %edx
btl $0x2, %ecx
sbbl $0x0, %edx
sete %al
leaq 0x5962fa(%rip), %r13    # 0x5fa740
movzbl %al, %edi
orl $0x900, %edi            # imm = 0x900
callq *0x28(%r13)
movl $0xb44, %edi            # imm = 0xB44
callq *0x40(%r13)
movl $0x405, %edi            # imm = 0x405
callq *0x20(%r13)
leaq 0x3b03bc(%rip), %rax    # 0x414828
leaq 0x3b03b9(%rip), %rcx    # 0x41482c
movl 0x4(%r14), %edx
addl (%rcx), %edx
xorl %ecx, %ecx
testl %edx, %edx
cmovgl %edx, %ecx
movswl (%rax), %eax
cmpl %eax, %ecx
cmovgel %eax, %ecx
xorps %xmm0, %xmm0
cvtsi2ss %eax, %xmm0
subl %ecx, %eax
xorps %xmm1, %xmm1
cvtsi2ss %eax, %xmm1
divss %xmm0, %xmm1
movslq (%rbp), %rax
leaq 0x5e4779(%rip), %rcx    # 0x648c20
movd (%rcx,%rax,4), %xmm0
xorps %xmm2, %xmm2
punpcklbw %xmm2, %xmm0    # xmm0 = xmm0[0],xmm2[0],xmm0[1],xmm2[1],xmm0[2],xmm2[2],xmm0[3],xmm2[3],xmm0[4],xmm2[4],xmm0[5],xmm2[5],xmm0[6],xmm2[6],xmm0[7],xmm2[7]
punpcklwd %xmm2, %xmm0    # xmm0 = xmm0[0],xmm2[0],xmm0[1],xmm2[1],xmm0[2],xmm2[2],xmm0[3],xmm2[3]
cvtdq2pd %xmm0, %xmm2
divpd 0x1617d(%rip), %xmm2    # 0x7a640
cvtss2sd %xmm1, %xmm1
movzbl 0x2(%rcx,%rax,4), %eax
xorps %xmm0, %xmm0
cvtsi2sd %eax, %xmm0
divsd 0x12c15(%rip), %xmm0    # 0x770f0
mulsd %xmm1, %xmm0
unpcklpd %xmm1, %xmm1            # xmm1 = xmm1[0,0]
mulpd %xmm2, %xmm1
movzwl 0xc(%rbx), %eax
testb $0x2, %al
je 0x6450a
xorl %ecx, %ecx
btl $0x9, %eax
setae %cl
leaq 0x16fa9(%rip), %rdx     # 0x7b4a8
movss (%rdx,%rcx,4), %xmm2
movss %xmm2, 0xc(%rsp)
cvtpd2ps %xmm1, %xmm1
movapd %xmm1, 0x10(%rsp)
cvtsd2ss %xmm0, %xmm0
movss %xmm0, 0x60(%rsp)
leaq 0x48(%r13), %rcx
leaq 0x40(%r13), %rdx
cmpl $0x0, 0x30(%r14)
cmovneq %rdx, %rcx
testb $0x2, %al
cmovneq %rdx, %rcx
movl $0xbe2, %edi            # imm = 0xBE2
callq *(%rcx)
movl 0x60(%r14), %edx
movq 0x5ffb09(%rip), %rax    # 0x664050
testl %edx, %edx
movl 0x8(%rsp), %ebp
movss 0xc(%rsp), %xmm2
jle 0x64637
movq 0x5ffae0(%rip), %rcx    # 0x664040
leaq 0x38(%rax), %rsi
xorl %edi, %edi
xorl %r8d, %r8d
movq 0x80(%r14), %rdx
addq %rdi, %rdx
movl $0x2, %r9d
movq %rsi, %r10
movswq (%rdx,%r9,2), %r11
leaq (%r11,%r11,2), %r11
movss (%rcx,%r11,4), %xmm0
movss %xmm0, -0x10(%r10)
movswq (%rdx,%r9,2), %r11
leaq (%r11,%r11,2), %r11
movss 0x4(%rcx,%r11,4), %xmm0
movss %xmm0, -0xc(%r10)
movswq (%rdx,%r9,2), %r11
leaq (%r11,%r11,2), %r11
movss 0x8(%rcx,%r11,4), %xmm0
movss %xmm0, -0x8(%r10)
movq 0x78(%r14), %r11
movswq 0x6(%rdx,%r9,2), %r12
movswl (%r11,%r12,4), %r11d
xorps %xmm0, %xmm0
cvtsi2ss %r11d, %xmm0
xorps %xmm1, %xmm1
cvtsi2ssl 0x68(%r14), %xmm1
divss %xmm1, %xmm0
movss %xmm0, -0x4(%r10)
movq 0x78(%r14), %r11
movswq 0x6(%rdx,%r9,2), %r12
movswl 0x2(%r11,%r12,4), %r11d
xorps %xmm0, %xmm0
cvtsi2ss %r11d, %xmm0
xorps %xmm1, %xmm1
cvtsi2ssl 0x6c(%r14), %xmm1
divss %xmm1, %xmm0
movss %xmm0, (%r10)
addq $-0x14, %r10
addq $-0x1, %r9
jb 0x6457c
incq %r8
movslq 0x60(%r14), %rdx
addq $0xc, %rdi
addq $0x3c, %rsi
cmpq %rdx, %r8
jl 0x64569
movl (%r15), %ecx
movl %ecx, 0xf8(%rsp)
movabsq $0x3ea3d70a00000000, %rcx # imm = 0x3EA3D70A00000000
movq %rcx, 0xfc(%rsp)
movaps 0x10(%rsp), %xmm0
movlps %xmm0, 0x104(%rsp)
movss 0x60(%rsp), %xmm0
movss %xmm0, 0x10c(%rsp)
movss %xmm2, 0x110(%rsp)
leaq 0x5962f9(%rip), %rcx    # 0x5fa978
movslq (%rcx), %rcx
leaq 0x3d1f27(%rip), %rsi    # 0x4365b0
movd (%rsi,%rcx,4), %xmm0
xorpd %xmm1, %xmm1
punpcklbw %xmm1, %xmm0    # xmm0 = xmm0[0],xmm1[0],xmm0[1],xmm1[1],xmm0[2],xmm1[2],xmm0[3],xmm1[3],xmm0[4],xmm1[4],xmm0[5],xmm1[5],xmm0[6],xmm1[6],xmm0[7],xmm1[7]
punpcklwd %xmm1, %xmm0    # xmm0 = xmm0[0],xmm1[0],xmm0[1],xmm1[1],xmm0[2],xmm1[2],xmm0[3],xmm1[3]
cvtdq2ps %xmm0, %xmm0
divps 0x15f8c(%rip), %xmm0    # 0x7a630
movlps %xmm0, 0x114(%rsp)
movzbl 0x2(%rsi,%rcx,4), %ecx
xorps %xmm0, %xmm0
cvtsi2ss %ecx, %xmm0
divss 0x15ed8(%rip), %xmm0    # 0x7a598
movss %xmm0, 0x11c(%rsp)
movl $0x3f800000, 0x120(%rsp) # imm = 0x3F800000
leaq 0x5962a1(%rip), %rcx    # 0x5fa97c
movss (%rcx), %xmm0
movss %xmm0, 0x124(%rsp)
testb $0x1, %bpl
jne 0x652c3
leaq 0x596367(%rip), %rcx    # 0x5faa60
jmp 0x652ca
movaps 0xf9eb(%rip), %xmm2     # 0x740f0
movaps %xmm5, %xmm8
xorps %xmm2, %xmm8
movswq 0xe(%rbx), %rdx
leaq 0x39d0c7(%rip), %rsi    # 0x4017e0
movswl (%rsi,%rdx,2), %esi
movzbl 0x15(%rbx), %edx
imull %edx, %esi
shll $0x2, %esi
xorps %xmm3, %xmm3
cvtsi2ss %esi, %xmm3
xorps %xmm2, %xmm0
pshufd $0x55, %xmm8, %xmm9     # xmm9 = xmm8[1,1,1,1]
subss %xmm3, %xmm1
movaps %xmm8, %xmm3
xorps %xmm4, %xmm4
xorps %xmm2, %xmm2
testb $0x4, %cl
je 0x64752
movss 0x16cf2(%rip), %xmm2    # 0x7b444
movaps %xmm5, %xmm10
je 0x6475c
movaps %xmm3, %xmm10
movaps %xmm5, 0x10(%rsp)
movaps %xmm6, 0x60(%rsp)
movaps %xmm6, %xmm11
je 0x64774
shufps $0x55, %xmm3, %xmm3     # xmm3 = xmm3[1,1,1,1]
movaps %xmm3, %xmm11
movzbl 0x14(%rbx), %ecx
cvtsi2ss %ecx, %xmm13
movss 0x16ccb(%rip), %xmm3    # 0x7b450
mulss %xmm3, %xmm13
movss 0xc(%r14), %xmm5
mulss %xmm5, %xmm13
movaps 0xf954(%rip), %xmm6     # 0x740f0
xorps %xmm13, %xmm6
mulss %xmm6, %xmm11
mulss %xmm6, %xmm10
movzbl %dl, %edx
cvtsi2ss %edx, %xmm7
mulss %xmm6, %xmm2
movaps %xmm13, 0x170(%rsp)
mulss %xmm13, %xmm4
mulss %xmm3, %xmm7
mulss %xmm5, %xmm7
mulss %xmm7, %xmm9
mulss %xmm7, %xmm8
mulss %xmm7, %xmm0
movl 0x4(%rbx), %ecx
xorps %xmm3, %xmm3
cvtsi2ss %ecx, %xmm3
cmpl $0x20, %eax
jne 0x6484f
movaps 0xf901(%rip), %xmm5     # 0x740f0
xorps %xmm5, %xmm9
movaps %xmm9, 0x90(%rsp)
xorps %xmm5, %xmm8
movaps %xmm8, 0xa0(%rsp)
xorps %xmm5, %xmm0
xorps %xmm5, %xmm11
movaps %xmm11, 0xb0(%rsp)
movswq 0xe(%rbx), %rsi
leaq 0x39cfbb(%rip), %rdi    # 0x4017e0
movswl (%rdi,%rsi,2), %esi
imull %edx, %esi
sarl $0x3, %esi
xorps %xmm6, %xmm6
cvtsi2ss %esi, %xmm6
xorps %xmm5, %xmm10
movaps %xmm10, 0x80(%rsp)
xorps %xmm5, %xmm2
addss %xmm6, %xmm3
movaps %xmm0, %xmm5
jmp 0x64879
movaps %xmm11, 0xb0(%rsp)
movaps %xmm10, 0x80(%rsp)
movaps %xmm9, 0x90(%rsp)
movaps %xmm8, 0xa0(%rsp)
movaps %xmm4, %xmm5
movaps %xmm0, %xmm4
movl (%rbx), %r8d
leaq 0x1d61cd(%rip), %rdx    # 0x23aa50
subl (%rdx), %r8d
leaq 0x1d61c7(%rip), %rdx    # 0x23aa54
movl (%rdx), %edi
subl %edi, %ecx
movzwl 0x1c(%rbx), %esi
movswq 0x1e(%rbx), %rdx
leaq (%rdx,%rdx,2), %rdx
leaq 0x2c840b(%rip), %r9     # 0x32ccb0
movzwl 0x6(%r9,%rdx,4), %r9d
leal (%r9,%rsi), %edx
movl $0x7ff, %r10d           # imm = 0x7FF
andl %r10d, %edx
xorl $0x400, %edx            # imm = 0x400
addl %r9d, %esi
addl $0x200, %esi            # imm = 0x200
andl %r10d, %esi
leaq 0x3ff5f(%rip), %r9      # 0xa4830
xorps %xmm0, %xmm0
cvtsi2ssl (%r9), %xmm0
leaq 0x36b470(%rip), %r9     # 0x3cfd50
xorps %xmm6, %xmm6
cvtsi2ssl (%r9), %xmm6
mulss %xmm0, %xmm6
movss 0x16b53(%rip), %xmm10   # 0x7b448
divss %xmm6, %xmm10
cvtss2sd %xmm0, %xmm0
leaq 0x59a2bb(%rip), %r9     # 0x5febc0
mulsd (%r9), %xmm0
movsd 0x15f8e(%rip), %xmm6    # 0x7a8a0
divsd %xmm0, %xmm6
xorps %xmm7, %xmm7
cvtsi2ss %r8d, %xmm7
xorps %xmm9, %xmm9
cvtsd2ss %xmm6, %xmm9
xorps %xmm0, %xmm0
cvtss2sd %xmm7, %xmm0
movsd 0x12782(%rip), %xmm6    # 0x770b8
mulsd %xmm6, %xmm0
xorps %xmm8, %xmm8
cvtss2sd %xmm2, %xmm8
addsd %xmm0, %xmm8
xorps %xmm0, %xmm0
cvtss2sd %xmm10, %xmm0
mulsd %xmm8, %xmm0
movsd %xmm0, 0xe0(%rsp)
movaps %xmm10, %xmm2
xorps 0xf787(%rip), %xmm2     # 0x740f0
xorps %xmm0, %xmm0
cvtsi2ss %edi, %xmm0
subss %xmm0, %xmm3
xorps %xmm0, %xmm0
cvtss2sd %xmm3, %xmm0
mulsd %xmm6, %xmm0
cvtss2sd %xmm5, %xmm5
subsd %xmm0, %xmm5
leaq 0x2070d2(%rip), %rdi    # 0x26ba60
xorps %xmm0, %xmm0
cvtsi2ssl (%rdi), %xmm0
movaps %xmm2, 0x150(%rsp)
cvtss2sd %xmm2, %xmm2
mulsd %xmm5, %xmm2
movsd %xmm2, 0xd0(%rsp)
subss %xmm0, %xmm1
cvtss2sd %xmm1, %xmm1
movsd 0x16ada(%rip), %xmm0    # 0x7b498
mulsd %xmm0, %xmm1
xorps %xmm5, %xmm5
cvtss2sd %xmm4, %xmm5
subsd %xmm1, %xmm5
movss %xmm9, 0x4(%rsp)
xorps %xmm3, %xmm3
cvtss2sd %xmm9, %xmm3
mulsd %xmm5, %xmm3
mulss %xmm10, %xmm7
movss 0x16a5f(%rip), %xmm1    # 0x7b44c
mulss %xmm1, %xmm7
xorps %xmm9, %xmm9
cvtsi2ss %ecx, %xmm9
movaps %xmm10, 0x160(%rsp)
mulss %xmm10, %xmm9
mulss %xmm1, %xmm9
leaq 0x59612c(%rip), %rcx    # 0x5fab40
movsd (%rcx), %xmm8
leaq 0x36a330(%rip), %rcx    # 0x3ced50
movswl (%rcx,%rdx,2), %edx
xorps %xmm1, %xmm1
cvtsi2sd %edx, %xmm1
leaq 0x595f86(%rip), %rdx    # 0x5fa9b8
mulsd %xmm0, %xmm1
xorps %xmm2, %xmm2
cvtsd2ss %xmm1, %xmm2
movsd (%rdx), %xmm11
movswl (%rcx,%rsi,2), %ecx
xorps %xmm5, %xmm5
cvtsi2sd %ecx, %xmm5
mulsd %xmm0, %xmm5
xorps %xmm0, %xmm0
cvtsd2ss %xmm5, %xmm0
movss %xmm12, 0x78(%rsp)
movaps %xmm12, %xmm6
subss %xmm2, %xmm6
movaps %xmm7, %xmm5
mulss %xmm6, %xmm5
mulss %xmm9, %xmm6
mulss %xmm0, %xmm9
addss %xmm9, %xmm5
mulss %xmm0, %xmm7
subss %xmm7, %xmm6
leaq 0x5960bc(%rip), %rcx    # 0x5fab48
leaq 0x596095(%rip), %rdx    # 0x5fab28
movsd (%rdx), %xmm10
movsd (%rcx), %xmm9
movapd %xmm9, %xmm7
unpcklpd %xmm10, %xmm7           # xmm7 = xmm7[0],xmm10[0]
unpcklpd %xmm9, %xmm10           # xmm10 = xmm10[0],xmm9[0]
movapd %xmm8, %xmm9
mulsd %xmm11, %xmm9
cvtsd2ss %xmm9, %xmm9
leaq 0x595efe(%rip), %rcx    # 0x5fa9c0
movapd 0x13565(%rip), %xmm12   # 0x78030
movsd (%rcx), %xmm13
movapd %xmm13, %xmm14
xorpd %xmm12, %xmm14
leaq 0x595ecf(%rip), %rcx    # 0x5fa9b0
movsd (%rcx), %xmm15
xorpd %xmm15, %xmm12
unpcklpd %xmm12, %xmm15          # xmm15 = xmm15[0],xmm12[0]
cvtss2sd %xmm9, %xmm9
mulpd %xmm10, %xmm15
movlhps %xmm9, %xmm9            # xmm9 = xmm9[0,0]
mulpd %xmm7, %xmm9
addpd %xmm15, %xmm9
unpcklpd %xmm13, %xmm14          # xmm14 = xmm14[0],xmm13[0]
mulpd %xmm10, %xmm14
leaq 0x595e8f(%rip), %rcx    # 0x5fa9a8
movsd (%rcx), %xmm13
movapd %xmm13, %xmm10
mulsd %xmm8, %xmm10
cvtsd2ss %xmm10, %xmm10
cvtss2sd %xmm10, %xmm10
movlhps %xmm10, %xmm10          # xmm10 = xmm10[0,0]
mulpd %xmm7, %xmm10
addpd %xmm14, %xmm10
leaq 0x595fd9(%rip), %rcx    # 0x5fab20
movsd (%rcx), %xmm12
mulsd %xmm12, %xmm13
mulsd %xmm12, %xmm11
unpcklpd %xmm12, %xmm12          # xmm12 = xmm12[0,0]
cvtpd2ps %xmm9, %xmm15
cvtpd2ps %xmm10, %xmm14
mulpd %xmm7, %xmm12
movaps %xmm0, %xmm10
shufps $0x0, %xmm0, %xmm10     # xmm10 = xmm10[0,0],xmm0[0,0]
movaps %xmm10, %xmm4
mulps %xmm14, %xmm4
movaps %xmm2, %xmm9
shufps $0x0, %xmm2, %xmm9      # xmm9 = xmm9[0,0],xmm2[0,0]
movaps %xmm9, %xmm7
mulps %xmm15, %xmm7
subps %xmm4, %xmm7
cvtsd2ss %xmm8, %xmm1
cvtsd2ss %xmm13, %xmm13
xorps %xmm4, %xmm4
cvtsd2ss %xmm11, %xmm4
movaps %xmm0, %xmm8
mulss %xmm4, %xmm8
movaps %xmm2, %xmm11
mulss %xmm13, %xmm11
addss %xmm8, %xmm11
cvtpd2ps %xmm12, %xmm8
movlpd %xmm8, 0x30(%rsp)
movlps %xmm7, 0x40(%rsp)
movss %xmm11, 0x28(%rsp)
movaps %xmm1, %xmm12
xorps 0xf514(%rip), %xmm12    # 0x740f0
movss %xmm12, 0x38(%rsp)
movaps %xmm1, %xmm12
mulss %xmm13, %xmm0
mulss %xmm4, %xmm2
subss %xmm0, %xmm2
movaps %xmm2, %xmm1
mulss %xmm6, %xmm4
mulss %xmm5, %xmm13
addss %xmm4, %xmm13
mulps %xmm15, %xmm10
mulps %xmm14, %xmm9
addps %xmm10, %xmm9
shufps $0x0, %xmm6, %xmm6      # xmm6 = xmm6[0,0,0,0]
mulps %xmm15, %xmm6
shufps $0x0, %xmm5, %xmm5      # xmm5 = xmm5[0,0,0,0]
mulps %xmm14, %xmm5
xorps %xmm4, %xmm4
cvtsd2ss 0xe0(%rsp), %xmm4
xorps %xmm0, %xmm0
cvtsd2ss 0xd0(%rsp), %xmm0
xorps %xmm2, %xmm2
cvtsd2ss %xmm3, %xmm2
addps %xmm6, %xmm5
movaps %xmm12, %xmm3
mulss %xmm2, %xmm3
shufps $0x0, %xmm2, %xmm2      # xmm2 = xmm2[0,0,0,0]
mulps %xmm8, %xmm2
mulss %xmm4, %xmm11
shufps $0x0, %xmm4, %xmm4      # xmm4 = xmm4[0,0,0,0]
mulps %xmm9, %xmm4
addps %xmm2, %xmm4
movaps %xmm0, %xmm2
shufps $0x0, %xmm0, %xmm2      # xmm2 = xmm2[0,0],xmm0[0,0]
mulps %xmm7, %xmm2
addps %xmm4, %xmm2
addps %xmm5, %xmm2
subss %xmm3, %xmm11
mulss %xmm1, %xmm0
addss %xmm11, %xmm0
addss %xmm13, %xmm0
movss %xmm1, 0x48(%rsp)
movlps %xmm9, 0x20(%rsp)
movlps %xmm2, 0x50(%rsp)
movss %xmm0, 0x58(%rsp)
cmpl $0x20, %eax
jne 0x64ce5
mulps 0x167c7(%rip), %xmm7    # 0x7b470
mulps 0x167cf(%rip), %xmm8    # 0x7b480
movlps %xmm7, 0x30(%rsp)
mulss 0x16796(%rip), %xmm1    # 0x7b454
movlps %xmm8, 0x40(%rsp)
movss %xmm1, 0x38(%rsp)
mulss 0x16785(%rip), %xmm12   # 0x7b458
movss %xmm12, 0x48(%rsp)
movaps %xmm7, %xmm0
movaps %xmm8, %xmm7
movaps %xmm0, %xmm8
movl %ebp, 0x8(%rsp)
leaq 0x595eb0(%rip), %r12    # 0x5faba0
movsd (%r12), %xmm0
xorps %xmm1, %xmm1
ucomisd %xmm0, %xmm1
jbe 0x64d2e
movaps 0xf3ea(%rip), %xmm1     # 0x740f0
xorps %xmm1, %xmm9
movss %xmm9, 0x20(%rsp)
xorps %xmm1, %xmm8
movss %xmm8, 0x30(%rsp)
xorps %xmm1, %xmm7
movss %xmm7, 0x40(%rsp)
xorps %xmm1, %xmm2
movss %xmm2, 0x50(%rsp)
xorl %ebp, %ebp
movl %ebp, 0x4c(%rsp)
movl %ebp, 0x3c(%rsp)
movl %ebp, 0x2c(%rsp)
movl $0x3f800000, 0x5c(%rsp) # imm = 0x3F800000
testb $0x4, 0xd(%rbx)
je 0x64d76
leaq 0x5959ef(%rip), %r13    # 0x5fa740
movl $0x201, %edi            # imm = 0x201
callq *0x98(%r13)
movsd 0x1673b(%rip), %xmm1    # 0x7b4a0
xorpd %xmm0, %xmm0
callq *0xa8(%r13)
movsd (%r12), %xmm0
xorpd %xmm1, %xmm1
xorl %eax, %eax
ucomisd %xmm1, %xmm0
setae %al
movl (%r15), %ecx
movl %ecx, %edx
shrl $0x3, %edx
andl $0x1, %edx
xorl %eax, %edx
btl $0x2, %ecx
sbbl $0x0, %edx
sete %al
leaq 0x59599f(%rip), %r15    # 0x5fa740
movzbl %al, %edi
orl $0x900, %edi            # imm = 0x900
callq *0x28(%r15)
movl $0xb44, %edi            # imm = 0xB44
callq *0x40(%r15)
movl $0x405, %edi            # imm = 0x405
callq *0x20(%r15)
leaq 0x3afa65(%rip), %rax    # 0x41482c
movl 0x4(%r14), %ecx
addl (%rax), %ecx
leaq 0x3afa54(%rip), %rax    # 0x414828
testl %ecx, %ecx
cmovgl %ecx, %ebp
movswl (%rax), %eax
cmpl %eax, %ebp
cmovgel %eax, %ebp
xorps %xmm0, %xmm0
cvtsi2ss %eax, %xmm0
subl %ebp, %eax
xorps %xmm1, %xmm1
cvtsi2ss %eax, %xmm1
divss %xmm0, %xmm1
leaq 0x3ab208(%rip), %r13    # 0x410004
movslq (%r13), %rax
leaq 0x5e3e19(%rip), %rcx    # 0x648c20
movd (%rcx,%rax,4), %xmm0
xorps %xmm2, %xmm2
punpcklbw %xmm2, %xmm0    # xmm0 = xmm0[0],xmm2[0],xmm0[1],xmm2[1],xmm0[2],xmm2[2],xmm0[3],xmm2[3],xmm0[4],xmm2[4],xmm0[5],xmm2[5],xmm0[6],xmm2[6],xmm0[7],xmm2[7]
punpcklwd %xmm2, %xmm0    # xmm0 = xmm0[0],xmm2[0],xmm0[1],xmm2[1],xmm0[2],xmm2[2],xmm0[3],xmm2[3]
cvtdq2pd %xmm0, %xmm0
divpd 0x1581d(%rip), %xmm0    # 0x7a640
cvtss2sd %xmm1, %xmm1
movzbl 0x2(%rcx,%rax,4), %eax
xorps %xmm2, %xmm2
cvtsi2sd %eax, %xmm2
divsd 0x122b5(%rip), %xmm2    # 0x770f0
mulsd %xmm1, %xmm2
unpcklpd %xmm1, %xmm1            # xmm1 = xmm1[0,0]
mulpd %xmm0, %xmm1
cvtpd2ps %xmm1, %xmm0
movapd %xmm0, 0xe0(%rsp)
xorps %xmm0, %xmm0
cvtsd2ss %xmm2, %xmm0
movss %xmm0, 0xd0(%rsp)
movzwl 0xc(%rbx), %eax
testb $0x2, %al
je 0x64e87
xorl %ecx, %ecx
btl $0x9, %eax
setae %cl
leaq 0x1662c(%rip), %rdx     # 0x7b4a8
movss (%rdx,%rcx,4), %xmm0
movss %xmm0, 0x78(%rsp)
leaq 0x48(%r15), %rcx
leaq 0x40(%r15), %rdx
xorl %ebp, %ebp
cmpl %ebp, 0x30(%r14)
cmovneq %rdx, %rcx
testb $0x2, %al
cmovneq %rdx, %rcx
movl $0xbe2, %edi            # imm = 0xBE2
callq *(%rcx)
movabsq $0x3ea3d70a00000000, %rax # imm = 0x3EA3D70A00000000
movq %rax, 0xfc(%rsp)
movaps 0xe0(%rsp), %xmm0
movlps %xmm0, 0x104(%rsp)
movss 0xd0(%rsp), %xmm0
movss %xmm0, 0x10c(%rsp)
movss 0x78(%rsp), %xmm0
movss %xmm0, 0x110(%rsp)
leaq 0x595a88(%rip), %rax    # 0x5fa978
movslq (%rax), %rax
leaq 0x3d16b6(%rip), %rcx    # 0x4365b0
movd (%rcx,%rax,4), %xmm0
xorpd %xmm1, %xmm1
punpcklbw %xmm1, %xmm0    # xmm0 = xmm0[0],xmm1[0],xmm0[1],xmm1[1],xmm0[2],xmm1[2],xmm0[3],xmm1[3],xmm0[4],xmm1[4],xmm0[5],xmm1[5],xmm0[6],xmm1[6],xmm0[7],xmm1[7]
punpcklwd %xmm1, %xmm0    # xmm0 = xmm0[0],xmm1[0],xmm0[1],xmm1[1],xmm0[2],xmm1[2],xmm0[3],xmm1[3]
cvtdq2ps %xmm0, %xmm0
divps 0x1571b(%rip), %xmm0    # 0x7a630
movlps %xmm0, 0x114(%rsp)
movzbl 0x2(%rcx,%rax,4), %eax
xorps %xmm0, %xmm0
cvtsi2ss %eax, %xmm0
divss 0x15667(%rip), %xmm0    # 0x7a598
movss %xmm0, 0x11c(%rsp)
movl $0x3f800000, 0x120(%rsp) # imm = 0x3F800000
leaq 0x595a30(%rip), %rax    # 0x5fa97c
movss (%rax), %xmm0
movss %xmm0, 0x124(%rsp)
movl %ebp, 0x138(%rsp)
movl %ebp, 0x140(%rsp)
movq 0x5ff0e2(%rip), %rax    # 0x664050
movq %rax, 0x148(%rsp)
testb $0x1, 0x8(%rsp)
jne 0x64f86
leaq 0x595adc(%rip), %rax    # 0x5faa60
jmp 0x64f8d
leaq 0x595b13(%rip), %rax    # 0x5faaa0
movaps 0x10(%rsp), %xmm2
movaps 0x60(%rsp), %xmm3
movaps 0xa0(%rsp), %xmm4
movaps 0x90(%rsp), %xmm5
movaps 0x80(%rsp), %xmm6
movaps 0xb0(%rsp), %xmm7
movq %rax, 0x130(%rsp)
leaq 0x20(%rsp), %rax
movq %rax, 0x128(%rsp)
cmpl %ebp, 0xac(%r14)
jle 0x6526b
movaps 0x170(%rsp), %xmm0
mulss %xmm0, %xmm3
mulss %xmm0, %xmm2
movaps 0x160(%rsp), %xmm0
mulss %xmm0, %xmm7
mulss %xmm0, %xmm6
movaps 0x150(%rsp), %xmm0
mulss %xmm0, %xmm3
mulss %xmm0, %xmm2
movss 0x4(%rsp), %xmm0
mulss %xmm0, %xmm5
mulss %xmm0, %xmm4
xorl %r15d, %r15d
movaps %xmm2, 0x10(%rsp)
movaps %xmm3, 0x60(%rsp)
movaps %xmm4, 0xa0(%rsp)
movaps %xmm5, 0x90(%rsp)
movaps %xmm6, 0x80(%rsp)
movaps %xmm7, 0xb0(%rsp)
movq 0xc8(%r14), %rbp
movq %r15, %r12
shlq $0x7, %r12
movslq 0x50(%rbp,%r12), %rax
testq %rax, %rax
jle 0x65122
movq 0x70(%rbp,%r12), %rdx
movl 0x24(%r14), %ecx
imull %eax, %ecx
movl 0x28(%r14), %esi
imull %eax, %esi
movslq %ecx, %rcx
leaq (%rdx,%rcx,8), %rcx
movslq %esi, %rsi
leaq (%rdx,%rsi,8), %rdx
movq 0x5fefb8(%rip), %rsi    # 0x664040
leaq (%rax,%rax,2), %rdi
incq %rax
leaq (%rsi,%rdi,4), %rsi
addq $-0x4, %rsi
movswl -0x10(%rcx,%rax,8), %edi
xorps %xmm0, %xmm0
cvtsi2ss %edi, %xmm0
movswl -0x10(%rdx,%rax,8), %edi
xorps %xmm1, %xmm1
cvtsi2ss %edi, %xmm1
mulss %xmm3, %xmm0
mulss %xmm2, %xmm1
addss %xmm0, %xmm1
movss %xmm1, (%rsi)
movswl -0xc(%rcx,%rax,8), %edi
xorps %xmm0, %xmm0
cvtsi2ss %edi, %xmm0
movswl -0xc(%rdx,%rax,8), %edi
xorps %xmm1, %xmm1
cvtsi2ss %edi, %xmm1
mulss %xmm5, %xmm0
mulss %xmm4, %xmm1
addss %xmm0, %xmm1
movss %xmm1, -0x4(%rsi)
movswl -0xe(%rcx,%rax,8), %edi
xorps %xmm0, %xmm0
cvtsi2ss %edi, %xmm0
movswl -0xe(%rdx,%rax,8), %edi
xorps %xmm1, %xmm1
cvtsi2ss %edi, %xmm1
mulss %xmm7, %xmm0
mulss %xmm6, %xmm1
addss %xmm0, %xmm1
movss %xmm1, -0x8(%rsi)
decq %rax
addq $-0xc, %rsi
cmpq $0x1, %rax
ja 0x65097
movswq 0xe(%rbx), %rax
leaq (%rax,%rax,2), %rax
leaq 0x5e3f0e(%rip), %rcx    # 0x649040
movl 0x4(%rcx,%rax,4), %esi
movl (%r13), %edx
movq %r14, %rdi
movl %r15d, %ecx
callq 0x60e84
testq %rax, %rax
je 0x6522e
movl (%rax), %eax
testl %eax, %eax
je 0x6522e
addq %r12, %rbp
movl %eax, 0xf8(%rsp)
movl 0x54(%rbp), %edi
testl %edi, %edi
jle 0x65205
movq 0x5feecc(%rip), %rax    # 0x664040
movq 0x5feed5(%rip), %rcx    # 0x664050
addq $0x38, %rcx
movl $0x8, %edx
xorl %esi, %esi
movq %rdx, %rdi
xorl %r8d, %r8d
movq 0x58(%rbp), %r9
movslq (%r9,%rdi), %r9
leaq (%r9,%r9,2), %r10
movss (%rax,%r10,4), %xmm0
movss %xmm0, -0x10(%rcx,%r8,4)
movss 0x4(%rax,%r10,4), %xmm0
movss %xmm0, -0xc(%rcx,%r8,4)
movss 0x8(%rax,%r10,4), %xmm0
movss %xmm0, -0x8(%rcx,%r8,4)
movq 0x68(%rbp), %r10
movss (%r10,%r9,8), %xmm0
movss %xmm0, -0x4(%rcx,%r8,4)
movq 0x68(%rbp), %r10
movss 0x4(%r10,%r9,8), %xmm0
movss %xmm0, (%rcx,%r8,4)
addq $-0x5, %r8
addq $-0x4, %rdi
cmpq $-0xf, %r8
jne 0x6518c
incq %rsi
movslq 0x54(%rbp), %rdi
addq $0x3c, %rcx
addq $0xc, %rdx
cmpq %rdi, %rsi
jl 0x65186
leal (%rdi,%rdi,2), %eax
movl %eax, 0x13c(%rsp)
movl 0x54(%rbp), %eax
leal (%rax,%rax,2), %eax
movl %eax, 0x144(%rsp)
movl $0x4, %edi
leaq 0xf8(%rsp), %rsi
callq 0x50d4b
incq %r15
movslq 0xac(%r14), %rax
cmpq %rax, %r15
movaps 0x10(%rsp), %xmm2
movaps 0x60(%rsp), %xmm3
movaps 0xa0(%rsp), %xmm4
movaps 0x90(%rsp), %xmm5
movaps 0x80(%rsp), %xmm6
movaps 0xb0(%rsp), %xmm7
jl 0x65044
movl $0xb44, %edi            # imm = 0xB44
leaq 0x5954c9(%rip), %r14    # 0x5fa740
callq *0x48(%r14)
movl $0x901, %edi            # imm = 0x901
callq *0x28(%r14)
testb $0x4, 0xd(%rbx)
je 0x652a8
movl $0x203, %edi            # imm = 0x203
callq *0x98(%r14)
movsd 0x155da(%rip), %xmm1    # 0x7a878
xorps %xmm0, %xmm0
callq *0xa8(%r14)
movl $0x1, %r12d
movl %r12d, %eax
addq $0x188, %rsp            # imm = 0x188
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
leaq 0x5957d6(%rip), %rcx    # 0x5faaa0
leaq 0xf8(%rsp), %rsi
movq %rcx, 0x38(%rsi)
leaq 0x20(%rsp), %rcx
movq %rcx, 0x30(%rsi)
leal (%rdx,%rdx,2), %ecx
movl %ecx, 0x44(%rsi)
xorl %edx, %edx
movl %edx, 0x40(%rsi)
movl %edx, 0x48(%rsi)
movl %ecx, 0x4c(%rsi)
movq %rax, 0x50(%rsi)
movl $0x4, %edi
callq 0x50d4b
movl $0xb44, %edi            # imm = 0xB44
callq *0x48(%r13)
movl $0x901, %edi            # imm = 0x901
callq *0x28(%r13)
movl $0x1, %r12d
testb $0x4, 0xd(%rbx)
je 0x652ae
movl $0x203, %edi            # imm = 0x203
callq *0x98(%r13)
movsd 0x15548(%rip), %xmm1    # 0x7a878
xorps %xmm0, %xmm0
callq *0xa8(%r13)
jmp 0x652ae