// File: /workspace/github_c_makefile_star2_O3/QwazyWabbitWOS[P]lmctf60/g_misc.c
// Function: barrel_explode
void barrel_explode (edict_t *self)
{
	vec3_t	org;
	float	spd;
	vec3_t	save;

	T_RadiusDamage (self, self->activator, self->dmg, NULL, self->dmg+40, MOD_BARREL);

	VectorCopy (self->s.origin, save);
	VectorMA (self->absmin, 0.5, self->size, self->s.origin);

	// a few big chunks
	spd = 1.5 * (float)self->dmg / 200.0;
	org[0] = self->s.origin[0] + crandom() * self->size[0];
	org[1] = self->s.origin[1] + crandom() * self->size[1];
	org[2] = self->s.origin[2] + crandom() * self->size[2];
	ThrowDebris (self, "models/objects/debris1/tris.md2", spd, org);
	org[0] = self->s.origin[0] + crandom() * self->size[0];
	org[1] = self->s.origin[1] + crandom() * self->size[1];
	org[2] = self->s.origin[2] + crandom() * self->size[2];
	ThrowDebris (self, "models/objects/debris1/tris.md2", spd, org);

	// bottom corners
	spd = 1.75 * self->dmg / 200;
	VectorCopy (self->absmin, org);
	ThrowDebris (self, "models/objects/debris3/tris.md2", spd, org);
	VectorCopy (self->absmin, org);
	org[0] += self->size[0];
	ThrowDebris (self, "models/objects/debris3/tris.md2", spd, org);
	VectorCopy (self->absmin, org);
	org[1] += self->size[1];
	ThrowDebris (self, "models/objects/debris3/tris.md2", spd, org);
	VectorCopy (self->absmin, org);
	org[0] += self->size[0];
	org[1] += self->size[1];
	ThrowDebris (self, "models/objects/debris3/tris.md2", spd, org);

	// a bunch of little chunks
	spd = (float)(2 * self->dmg / 200);
	org[0] = self->s.origin[0] + crandom() * self->size[0];
	org[1] = self->s.origin[1] + crandom() * self->size[1];
	org[2] = self->s.origin[2] + crandom() * self->size[2];
	ThrowDebris (self, "models/objects/debris2/tris.md2", spd, org);
	org[0] = self->s.origin[0] + crandom() * self->size[0];
	org[1] = self->s.origin[1] + crandom() * self->size[1];
	org[2] = self->s.origin[2] + crandom() * self->size[2];
	ThrowDebris (self, "models/objects/debris2/tris.md2", spd, org);
	org[0] = self->s.origin[0] + crandom() * self->size[0];
	org[1] = self->s.origin[1] + crandom() * self->size[1];
	org[2] = self->s.origin[2] + crandom() * self->size[2];
	ThrowDebris (self, "models/objects/debris2/tris.md2", spd, org);
	org[0] = self->s.origin[0] + crandom() * self->size[0];
	org[1] = self->s.origin[1] + crandom() * self->size[1];
	org[2] = self->s.origin[2] + crandom() * self->size[2];
	ThrowDebris (self, "models/objects/debris2/tris.md2", spd, org);
	org[0] = self->s.origin[0] + crandom() * self->size[0];
	org[1] = self->s.origin[1] + crandom() * self->size[1];
	org[2] = self->s.origin[2] + crandom() * self->size[2];
	ThrowDebris (self, "models/objects/debris2/tris.md2", spd, org);
	org[0] = self->s.origin[0] + crandom() * self->size[0];
	org[1] = self->s.origin[1] + crandom() * self->size[1];
	org[2] = self->s.origin[2] + crandom() * self->size[2];
	ThrowDebris (self, "models/objects/debris2/tris.md2", spd, org);
	org[0] = self->s.origin[0] + crandom() * self->size[0];
	org[1] = self->s.origin[1] + crandom() * self->size[1];
	org[2] = self->s.origin[2] + crandom() * self->size[2];
	ThrowDebris (self, "models/objects/debris2/tris.md2", spd, org);
	org[0] = self->s.origin[0] + crandom() * self->size[0];
	org[1] = self->s.origin[1] + crandom() * self->size[1];
	org[2] = self->s.origin[2] + crandom() * self->size[2];
	ThrowDebris (self, "models/objects/debris2/tris.md2", spd, org);

	VectorCopy (save, self->s.origin);
	if (self->groundentity)
		BecomeExplosion2 (self);
	else
		BecomeExplosion1 (self);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
subq $0x50, %rsp
movq %rdi, %rbx
movq 0x2b0(%rdi), %rsi
movl 0x280(%rdi), %eax
cvtsi2ss %eax, %xmm0
addl $0x28, %eax
cvtsi2ss %eax, %xmm1
xorl %edx, %edx
movl $0x1a, %ecx
callq 0x180c0
leaq 0x4(%rbx), %rdx
movss 0xc(%rbx), %xmm0
movss %xmm0, 0x34(%rsp)
leaq 0xe4(%rbx), %rdi
leaq 0xfc(%rbx), %rsi
movsd 0x4(%rbx), %xmm0
movsd %xmm0, 0x38(%rsp)
movss 0x1f985(%rip), %xmm0    # 0x54400
callq 0x19760
xorps %xmm0, %xmm0
cvtsi2ssl 0x280(%rbx), %xmm0
cvtss2sd %xmm0, %xmm0
mulsd 0x228c9(%rip), %xmm0    # 0x57360
divsd 0x228a9(%rip), %xmm0    # 0x57348
cvtsd2ss %xmm0, %xmm0
movss %xmm0, 0xc(%rsp)
movss 0x4(%rbx), %xmm0
movaps %xmm0, 0x10(%rsp)
callq 0x19a10
movl %eax, %ebp
movss 0x8(%rbx), %xmm0
movaps 0x10(%rsp), %xmm1
unpcklps %xmm0, %xmm1            # xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]
movss 0xfc(%rbx), %xmm0
movaps %xmm0, 0x20(%rsp)
cvtps2pd %xmm1, %xmm0
movaps %xmm0, 0x10(%rsp)
callq 0x19a10
movd %ebp, %xmm0
movd %eax, %xmm1
punpckldq %xmm1, %xmm0    # xmm0 = xmm0[0],xmm1[0],xmm0[1],xmm1[1]
pand 0x2289b(%rip), %xmm0    # 0x57390
cvtdq2ps %xmm0, %xmm0
divps 0x228a1(%rip), %xmm0    # 0x573a0
cvtps2pd %xmm0, %xmm0
addpd 0x228a6(%rip), %xmm0    # 0x573b0
addpd %xmm0, %xmm0
movss 0x100(%rbx), %xmm1
movaps 0x20(%rsp), %xmm2
unpcklps %xmm1, %xmm2            # xmm2 = xmm2[0],xmm1[0],xmm2[1],xmm1[1]
cvtps2pd %xmm2, %xmm1
mulpd %xmm0, %xmm1
addpd 0x10(%rsp), %xmm1
cvtpd2ps %xmm1, %xmm0
leaq 0x40(%rsp), %r14
movlpd %xmm0, (%r14)
xorps %xmm0, %xmm0
cvtss2sd 0xc(%rbx), %xmm0
movsd %xmm0, 0x10(%rsp)
callq 0x19a10
movl $0x7fff, %r12d          # imm = 0x7FFF
andl %r12d, %eax
xorps %xmm0, %xmm0
cvtsi2ss %eax, %xmm0
divss 0x1e724(%rip), %xmm0    # 0x53288
cvtss2sd %xmm0, %xmm0
addsd 0x210a8(%rip), %xmm0    # 0x55c18
addsd %xmm0, %xmm0
xorps %xmm1, %xmm1
cvtss2sd 0x104(%rbx), %xmm1
mulsd %xmm0, %xmm1
addsd 0x10(%rsp), %xmm1
xorps %xmm0, %xmm0
cvtsd2ss %xmm1, %xmm0
movss %xmm0, 0x8(%r14)
leaq 0x22a9b(%rip), %r15     # 0x57638
movq %rbx, %rdi
movq %r15, %rsi
movss 0xc(%rsp), %xmm0
movq %r14, %rdx
callq 0x186a0
movss 0x4(%rbx), %xmm0
movaps %xmm0, 0x10(%rsp)
callq 0x19a10
movl %eax, %ebp
movss 0x8(%rbx), %xmm0
movaps 0x10(%rsp), %xmm1
unpcklps %xmm0, %xmm1            # xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]
movss 0xfc(%rbx), %xmm0
movaps %xmm0, 0x20(%rsp)
cvtps2pd %xmm1, %xmm0
movaps %xmm0, 0x10(%rsp)
callq 0x19a10
movd %ebp, %xmm0
movd %eax, %xmm1
punpckldq %xmm1, %xmm0    # xmm0 = xmm0[0],xmm1[0],xmm0[1],xmm1[1]
pand 0x22793(%rip), %xmm0    # 0x57390
cvtdq2ps %xmm0, %xmm0
divps 0x22799(%rip), %xmm0    # 0x573a0
cvtps2pd %xmm0, %xmm0
addpd 0x2279e(%rip), %xmm0    # 0x573b0
addpd %xmm0, %xmm0
movss 0x100(%rbx), %xmm1
movaps 0x20(%rsp), %xmm2
unpcklps %xmm1, %xmm2            # xmm2 = xmm2[0],xmm1[0],xmm2[1],xmm1[1]
cvtps2pd %xmm2, %xmm1
mulpd %xmm0, %xmm1
addpd 0x10(%rsp), %xmm1
cvtpd2ps %xmm1, %xmm0
movlpd %xmm0, (%r14)
xorps %xmm0, %xmm0
cvtss2sd 0xc(%rbx), %xmm0
movsd %xmm0, 0x10(%rsp)
callq 0x19a10
andl %r12d, %eax
xorps %xmm0, %xmm0
cvtsi2ss %eax, %xmm0
divss 0x1e627(%rip), %xmm0    # 0x53288
cvtss2sd %xmm0, %xmm0
addsd 0x20fab(%rip), %xmm0    # 0x55c18
addsd %xmm0, %xmm0
xorps %xmm1, %xmm1
cvtss2sd 0x104(%rbx), %xmm1
mulsd %xmm0, %xmm1
addsd 0x10(%rsp), %xmm1
xorps %xmm0, %xmm0
cvtsd2ss %xmm1, %xmm0
movss %xmm0, 0x8(%r14)
movq %rbx, %rdi
movq %r15, %rsi
movss 0xc(%rsp), %xmm0
movq %r14, %rdx
callq 0x186a0
xorps %xmm0, %xmm0
cvtsi2sdl 0x280(%rbx), %xmm0
mulsd 0x226ae(%rip), %xmm0    # 0x57368
divsd 0x22686(%rip), %xmm0    # 0x57348
cvtsd2ss %xmm0, %xmm0
movss %xmm0, 0xc(%rsp)
movsd 0xe4(%rbx), %xmm1
movsd %xmm1, (%r14)
movss 0xec(%rbx), %xmm1
movss %xmm1, 0x8(%r14)
leaq 0x2296a(%rip), %r15     # 0x57658
movq %rbx, %rdi
movq %r15, %rsi
movq %r14, %rdx
callq 0x186a0
movss 0xe4(%rbx), %xmm0
movsd 0xe8(%rbx), %xmm1
movsd %xmm1, 0x4(%r14)
addss 0xfc(%rbx), %xmm0
movss %xmm0, (%r14)
movq %rbx, %rdi
movq %r15, %rsi
movss 0xc(%rsp), %xmm0
movq %r14, %rdx
callq 0x186a0
movss 0xe4(%rbx), %xmm0
movss %xmm0, (%r14)
movss 0xe8(%rbx), %xmm0
movss 0xec(%rbx), %xmm1
movss %xmm1, 0x8(%r14)
addss 0x100(%rbx), %xmm0
movss %xmm0, 0x4(%r14)
movq %rbx, %rdi
movq %r15, %rsi
movss 0xc(%rsp), %xmm0
movq %r14, %rdx
callq 0x186a0
movss 0xec(%rbx), %xmm0
movss %xmm0, 0x8(%r14)
movsd 0xe4(%rbx), %xmm0
movsd 0xfc(%rbx), %xmm1
addps %xmm0, %xmm1
movlps %xmm1, (%r14)
movq %rbx, %rdi
movq %r15, %rsi
movss 0xc(%rsp), %xmm0
movq %r14, %rdx
callq 0x186a0
movslq 0x280(%rbx), %rax
imulq $0x51eb851f, %rax, %rax # imm = 0x51EB851F
movq %rax, %rcx
shrq $0x3f, %rcx
sarq $0x25, %rax
addl %ecx, %eax
xorps %xmm0, %xmm0
cvtsi2ss %eax, %xmm0
movss %xmm0, 0xc(%rsp)
movss 0x4(%rbx), %xmm0
movaps %xmm0, 0x10(%rsp)
callq 0x19a10
movl %eax, %ebp
movss 0x8(%rbx), %xmm0
movaps 0x10(%rsp), %xmm1
unpcklps %xmm0, %xmm1            # xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]
movss 0xfc(%rbx), %xmm0
movaps %xmm0, 0x20(%rsp)
cvtps2pd %xmm1, %xmm0
movaps %xmm0, 0x10(%rsp)
callq 0x19a10
movd %ebp, %xmm0
movd %eax, %xmm1
punpckldq %xmm1, %xmm0    # xmm0 = xmm0[0],xmm1[0],xmm0[1],xmm1[1]
pand 0x2256b(%rip), %xmm0    # 0x57390
cvtdq2ps %xmm0, %xmm0
divps 0x22571(%rip), %xmm0    # 0x573a0
cvtps2pd %xmm0, %xmm0
addpd 0x22576(%rip), %xmm0    # 0x573b0
addpd %xmm0, %xmm0
movss 0x100(%rbx), %xmm1
movaps 0x20(%rsp), %xmm2
unpcklps %xmm1, %xmm2            # xmm2 = xmm2[0],xmm1[0],xmm2[1],xmm1[1]
cvtps2pd %xmm2, %xmm1
mulpd %xmm0, %xmm1
addpd 0x10(%rsp), %xmm1
cvtpd2ps %xmm1, %xmm0
movlpd %xmm0, (%r14)
xorps %xmm0, %xmm0
cvtss2sd 0xc(%rbx), %xmm0
movsd %xmm0, 0x10(%rsp)
callq 0x19a10
andl %r12d, %eax
xorps %xmm0, %xmm0
cvtsi2ss %eax, %xmm0
divss 0x1e3ff(%rip), %xmm0    # 0x53288
cvtss2sd %xmm0, %xmm0
addsd 0x20d83(%rip), %xmm0    # 0x55c18
addsd %xmm0, %xmm0
xorps %xmm1, %xmm1
cvtss2sd 0x104(%rbx), %xmm1
mulsd %xmm0, %xmm1
addsd 0x10(%rsp), %xmm1
xorps %xmm0, %xmm0
cvtsd2ss %xmm1, %xmm0
movss %xmm0, 0x8(%r14)
leaq 0x218ff(%rip), %r15     # 0x567c1
movq %rbx, %rdi
movq %r15, %rsi
movss 0xc(%rsp), %xmm0
movq %r14, %rdx
callq 0x186a0
movss 0x4(%rbx), %xmm0
movaps %xmm0, 0x10(%rsp)
callq 0x19a10
movl %eax, %ebp
movss 0x8(%rbx), %xmm0
movaps 0x10(%rsp), %xmm1
unpcklps %xmm0, %xmm1            # xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]
movss 0xfc(%rbx), %xmm0
movaps %xmm0, 0x20(%rsp)
cvtps2pd %xmm1, %xmm0
movaps %xmm0, 0x10(%rsp)
callq 0x19a10
movd %ebp, %xmm0
movd %eax, %xmm1
punpckldq %xmm1, %xmm0    # xmm0 = xmm0[0],xmm1[0],xmm0[1],xmm1[1]
pand 0x2246e(%rip), %xmm0    # 0x57390
cvtdq2ps %xmm0, %xmm0
divps 0x22474(%rip), %xmm0    # 0x573a0
cvtps2pd %xmm0, %xmm0
addpd 0x22479(%rip), %xmm0    # 0x573b0
addpd %xmm0, %xmm0
movss 0x100(%rbx), %xmm1
movaps 0x20(%rsp), %xmm2
unpcklps %xmm1, %xmm2            # xmm2 = xmm2[0],xmm1[0],xmm2[1],xmm1[1]
cvtps2pd %xmm2, %xmm1
mulpd %xmm0, %xmm1
addpd 0x10(%rsp), %xmm1
cvtpd2ps %xmm1, %xmm0
movlpd %xmm0, (%r14)
xorps %xmm0, %xmm0
cvtss2sd 0xc(%rbx), %xmm0
movsd %xmm0, 0x10(%rsp)
callq 0x19a10
andl %r12d, %eax
xorps %xmm0, %xmm0
cvtsi2ss %eax, %xmm0
divss 0x1e302(%rip), %xmm0    # 0x53288
cvtss2sd %xmm0, %xmm0
addsd 0x20c86(%rip), %xmm0    # 0x55c18
addsd %xmm0, %xmm0
xorps %xmm1, %xmm1
cvtss2sd 0x104(%rbx), %xmm1
mulsd %xmm0, %xmm1
addsd 0x10(%rsp), %xmm1
xorps %xmm0, %xmm0
cvtsd2ss %xmm1, %xmm0
movss %xmm0, 0x8(%r14)
movq %rbx, %rdi
movq %r15, %rsi
movss 0xc(%rsp), %xmm0
movq %r14, %rdx
callq 0x186a0
movss 0x4(%rbx), %xmm0
movaps %xmm0, 0x10(%rsp)
callq 0x19a10
movl %eax, %ebp
movss 0x8(%rbx), %xmm0
movaps 0x10(%rsp), %xmm1
unpcklps %xmm0, %xmm1            # xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]
movss 0xfc(%rbx), %xmm0
movaps %xmm0, 0x20(%rsp)
cvtps2pd %xmm1, %xmm0
movaps %xmm0, 0x10(%rsp)
callq 0x19a10
movd %ebp, %xmm0
movd %eax, %xmm1
punpckldq %xmm1, %xmm0    # xmm0 = xmm0[0],xmm1[0],xmm0[1],xmm1[1]
pand 0x22378(%rip), %xmm0    # 0x57390
cvtdq2ps %xmm0, %xmm0
divps 0x2237e(%rip), %xmm0    # 0x573a0
cvtps2pd %xmm0, %xmm0
addpd 0x22383(%rip), %xmm0    # 0x573b0
addpd %xmm0, %xmm0
movss 0x100(%rbx), %xmm1
movaps 0x20(%rsp), %xmm2
unpcklps %xmm1, %xmm2            # xmm2 = xmm2[0],xmm1[0],xmm2[1],xmm1[1]
cvtps2pd %xmm2, %xmm1
mulpd %xmm0, %xmm1
addpd 0x10(%rsp), %xmm1
cvtpd2ps %xmm1, %xmm0
movlpd %xmm0, (%r14)
xorps %xmm0, %xmm0
cvtss2sd 0xc(%rbx), %xmm0
movsd %xmm0, 0x10(%rsp)
callq 0x19a10
andl %r12d, %eax
xorps %xmm0, %xmm0
cvtsi2ss %eax, %xmm0
divss 0x1e20c(%rip), %xmm0    # 0x53288
cvtss2sd %xmm0, %xmm0
addsd 0x20b90(%rip), %xmm0    # 0x55c18
addsd %xmm0, %xmm0
xorps %xmm1, %xmm1
cvtss2sd 0x104(%rbx), %xmm1
mulsd %xmm0, %xmm1
addsd 0x10(%rsp), %xmm1
xorps %xmm0, %xmm0
cvtsd2ss %xmm1, %xmm0
movss %xmm0, 0x8(%r14)
movq %rbx, %rdi
movq %r15, %rsi
movss 0xc(%rsp), %xmm0
movq %r14, %rdx
callq 0x186a0
movss 0x4(%rbx), %xmm0
movaps %xmm0, 0x10(%rsp)
callq 0x19a10
movl %eax, %ebp
movss 0x8(%rbx), %xmm0
movaps 0x10(%rsp), %xmm1
unpcklps %xmm0, %xmm1            # xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]
movss 0xfc(%rbx), %xmm0
movaps %xmm0, 0x20(%rsp)
cvtps2pd %xmm1, %xmm0
movaps %xmm0, 0x10(%rsp)
callq 0x19a10
movd %ebp, %xmm0
movd %eax, %xmm1
punpckldq %xmm1, %xmm0    # xmm0 = xmm0[0],xmm1[0],xmm0[1],xmm1[1]
pand 0x22282(%rip), %xmm0    # 0x57390
cvtdq2ps %xmm0, %xmm0
divps 0x22288(%rip), %xmm0    # 0x573a0
cvtps2pd %xmm0, %xmm0
addpd 0x2228d(%rip), %xmm0    # 0x573b0
addpd %xmm0, %xmm0
movss 0x100(%rbx), %xmm1
movaps 0x20(%rsp), %xmm2
unpcklps %xmm1, %xmm2            # xmm2 = xmm2[0],xmm1[0],xmm2[1],xmm1[1]
cvtps2pd %xmm2, %xmm1
mulpd %xmm0, %xmm1
addpd 0x10(%rsp), %xmm1
cvtpd2ps %xmm1, %xmm0
movlpd %xmm0, (%r14)
xorps %xmm0, %xmm0
cvtss2sd 0xc(%rbx), %xmm0
movsd %xmm0, 0x10(%rsp)
callq 0x19a10
andl %r12d, %eax
xorps %xmm0, %xmm0
cvtsi2ss %eax, %xmm0
divss 0x1e116(%rip), %xmm0    # 0x53288
cvtss2sd %xmm0, %xmm0
addsd 0x20a9a(%rip), %xmm0    # 0x55c18
addsd %xmm0, %xmm0
xorps %xmm1, %xmm1
cvtss2sd 0x104(%rbx), %xmm1
mulsd %xmm0, %xmm1
addsd 0x10(%rsp), %xmm1
xorps %xmm0, %xmm0
cvtsd2ss %xmm1, %xmm0
movss %xmm0, 0x8(%r14)
movq %rbx, %rdi
movq %r15, %rsi
movss 0xc(%rsp), %xmm0
movq %r14, %rdx
callq 0x186a0
movss 0x4(%rbx), %xmm0
movaps %xmm0, 0x10(%rsp)
callq 0x19a10
movl %eax, %ebp
movss 0x8(%rbx), %xmm0
movaps 0x10(%rsp), %xmm1
unpcklps %xmm0, %xmm1            # xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]
movss 0xfc(%rbx), %xmm0
movaps %xmm0, 0x20(%rsp)
cvtps2pd %xmm1, %xmm0
movaps %xmm0, 0x10(%rsp)
callq 0x19a10
movd %ebp, %xmm0
movd %eax, %xmm1
punpckldq %xmm1, %xmm0    # xmm0 = xmm0[0],xmm1[0],xmm0[1],xmm1[1]
pand 0x2218c(%rip), %xmm0    # 0x57390
cvtdq2ps %xmm0, %xmm0
divps 0x22192(%rip), %xmm0    # 0x573a0
cvtps2pd %xmm0, %xmm0
addpd 0x22197(%rip), %xmm0    # 0x573b0
addpd %xmm0, %xmm0
movss 0x100(%rbx), %xmm1
movaps 0x20(%rsp), %xmm2
unpcklps %xmm1, %xmm2            # xmm2 = xmm2[0],xmm1[0],xmm2[1],xmm1[1]
cvtps2pd %xmm2, %xmm1
mulpd %xmm0, %xmm1
addpd 0x10(%rsp), %xmm1
cvtpd2ps %xmm1, %xmm0
movlpd %xmm0, (%r14)
xorps %xmm0, %xmm0
cvtss2sd 0xc(%rbx), %xmm0
movsd %xmm0, 0x10(%rsp)
callq 0x19a10
andl %r12d, %eax
xorps %xmm0, %xmm0
cvtsi2ss %eax, %xmm0
divss 0x1e020(%rip), %xmm0    # 0x53288
cvtss2sd %xmm0, %xmm0
addsd 0x209a4(%rip), %xmm0    # 0x55c18
addsd %xmm0, %xmm0
xorps %xmm1, %xmm1
cvtss2sd 0x104(%rbx), %xmm1
mulsd %xmm0, %xmm1
addsd 0x10(%rsp), %xmm1
xorps %xmm0, %xmm0
cvtsd2ss %xmm1, %xmm0
movss %xmm0, 0x8(%r14)
movq %rbx, %rdi
movq %r15, %rsi
movss 0xc(%rsp), %xmm0
movq %r14, %rdx
callq 0x186a0
movss 0x4(%rbx), %xmm0
movaps %xmm0, 0x10(%rsp)
callq 0x19a10
movl %eax, %ebp
movss 0x8(%rbx), %xmm0
movaps 0x10(%rsp), %xmm1
unpcklps %xmm0, %xmm1            # xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]
movss 0xfc(%rbx), %xmm0
movaps %xmm0, 0x20(%rsp)
cvtps2pd %xmm1, %xmm0
movaps %xmm0, 0x10(%rsp)
callq 0x19a10
movd %ebp, %xmm0
movd %eax, %xmm1
punpckldq %xmm1, %xmm0    # xmm0 = xmm0[0],xmm1[0],xmm0[1],xmm1[1]
pand 0x22096(%rip), %xmm0    # 0x57390
cvtdq2ps %xmm0, %xmm0
divps 0x2209c(%rip), %xmm0    # 0x573a0
cvtps2pd %xmm0, %xmm0
addpd 0x220a1(%rip), %xmm0    # 0x573b0
addpd %xmm0, %xmm0
movss 0x100(%rbx), %xmm1
movaps 0x20(%rsp), %xmm2
unpcklps %xmm1, %xmm2            # xmm2 = xmm2[0],xmm1[0],xmm2[1],xmm1[1]
cvtps2pd %xmm2, %xmm1
mulpd %xmm0, %xmm1
addpd 0x10(%rsp), %xmm1
cvtpd2ps %xmm1, %xmm0
movlpd %xmm0, (%r14)
xorps %xmm0, %xmm0
cvtss2sd 0xc(%rbx), %xmm0
movsd %xmm0, 0x10(%rsp)
callq 0x19a10
andl %r12d, %eax
xorps %xmm0, %xmm0
cvtsi2ss %eax, %xmm0
divss 0x1df2a(%rip), %xmm0    # 0x53288
cvtss2sd %xmm0, %xmm0
addsd 0x208ae(%rip), %xmm0    # 0x55c18
addsd %xmm0, %xmm0
xorps %xmm1, %xmm1
cvtss2sd 0x104(%rbx), %xmm1
mulsd %xmm0, %xmm1
addsd 0x10(%rsp), %xmm1
xorps %xmm0, %xmm0
cvtsd2ss %xmm1, %xmm0
movss %xmm0, 0x8(%r14)
movq %rbx, %rdi
movq %r15, %rsi
movss 0xc(%rsp), %xmm0
movq %r14, %rdx
callq 0x186a0
movss 0x4(%rbx), %xmm0
movaps %xmm0, 0x10(%rsp)
callq 0x19a10
movl %eax, %ebp
movss 0x8(%rbx), %xmm0
movaps 0x10(%rsp), %xmm1
unpcklps %xmm0, %xmm1            # xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]
movss 0xfc(%rbx), %xmm0
movaps %xmm0, 0x20(%rsp)
cvtps2pd %xmm1, %xmm0
movaps %xmm0, 0x10(%rsp)
callq 0x19a10
movd %ebp, %xmm0
movd %eax, %xmm1
punpckldq %xmm1, %xmm0    # xmm0 = xmm0[0],xmm1[0],xmm0[1],xmm1[1]
pand 0x21fa0(%rip), %xmm0    # 0x57390
cvtdq2ps %xmm0, %xmm0
divps 0x21fa6(%rip), %xmm0    # 0x573a0
cvtps2pd %xmm0, %xmm0
addpd 0x21fab(%rip), %xmm0    # 0x573b0
addpd %xmm0, %xmm0
movss 0x100(%rbx), %xmm1
movaps 0x20(%rsp), %xmm2
unpcklps %xmm1, %xmm2            # xmm2 = xmm2[0],xmm1[0],xmm2[1],xmm1[1]
cvtps2pd %xmm2, %xmm1
mulpd %xmm0, %xmm1
addpd 0x10(%rsp), %xmm1
cvtpd2ps %xmm1, %xmm0
movlpd %xmm0, (%r14)
xorps %xmm0, %xmm0
cvtss2sd 0xc(%rbx), %xmm0
movsd %xmm0, 0x10(%rsp)
callq 0x19a10
andl %r12d, %eax
xorps %xmm0, %xmm0
cvtsi2ss %eax, %xmm0
divss 0x1de34(%rip), %xmm0    # 0x53288
cvtss2sd %xmm0, %xmm0
addsd 0x207b8(%rip), %xmm0    # 0x55c18
addsd %xmm0, %xmm0
xorps %xmm1, %xmm1
cvtss2sd 0x104(%rbx), %xmm1
mulsd %xmm0, %xmm1
addsd 0x10(%rsp), %xmm1
xorps %xmm0, %xmm0
cvtsd2ss %xmm1, %xmm0
movss %xmm0, 0x8(%r14)
movq %rbx, %rdi
movq %r15, %rsi
movss 0xc(%rsp), %xmm0
movq %r14, %rdx
callq 0x186a0
movss 0x4(%rbx), %xmm0
movaps %xmm0, 0x10(%rsp)
callq 0x19a10
movl %eax, %ebp
movss 0x8(%rbx), %xmm0
movaps 0x10(%rsp), %xmm1
unpcklps %xmm0, %xmm1            # xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]
movss 0xfc(%rbx), %xmm0
movaps %xmm0, 0x20(%rsp)
cvtps2pd %xmm1, %xmm0
movaps %xmm0, 0x10(%rsp)
callq 0x19a10
movd %ebp, %xmm0
movd %eax, %xmm1
punpckldq %xmm1, %xmm0    # xmm0 = xmm0[0],xmm1[0],xmm0[1],xmm1[1]
pand 0x21eaa(%rip), %xmm0    # 0x57390
cvtdq2ps %xmm0, %xmm0
divps 0x21eb0(%rip), %xmm0    # 0x573a0
cvtps2pd %xmm0, %xmm0
addpd 0x21eb5(%rip), %xmm0    # 0x573b0
addpd %xmm0, %xmm0
movss 0x100(%rbx), %xmm1
movaps 0x20(%rsp), %xmm2
unpcklps %xmm1, %xmm2            # xmm2 = xmm2[0],xmm1[0],xmm2[1],xmm1[1]
cvtps2pd %xmm2, %xmm1
mulpd %xmm0, %xmm1
addpd 0x10(%rsp), %xmm1
cvtpd2ps %xmm1, %xmm0
movlpd %xmm0, (%r14)
xorps %xmm0, %xmm0
cvtss2sd 0xc(%rbx), %xmm0
movsd %xmm0, 0x10(%rsp)
callq 0x19a10
andl %r12d, %eax
xorps %xmm0, %xmm0
cvtsi2ss %eax, %xmm0
divss 0x1dd3e(%rip), %xmm0    # 0x53288
cvtss2sd %xmm0, %xmm0
addsd 0x206c2(%rip), %xmm0    # 0x55c18
addsd %xmm0, %xmm0
xorps %xmm1, %xmm1
cvtss2sd 0x104(%rbx), %xmm1
mulsd %xmm0, %xmm1
addsd 0x10(%rsp), %xmm1
xorps %xmm0, %xmm0
cvtsd2ss %xmm1, %xmm0
movss %xmm0, 0x8(%r14)
movq %rbx, %rdi
movq %r15, %rsi
movss 0xc(%rsp), %xmm0
movq %r14, %rdx
callq 0x186a0
movsd 0x38(%rsp), %xmm0
movsd %xmm0, 0x4(%rbx)
movss 0x34(%rsp), %xmm0
movss %xmm0, 0xc(%rbx)
cmpq $0x0, 0x2b8(%rbx)
je 0x355c4
movq %rbx, %rdi
addq $0x50, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
popq %rbp
jmp 0x18890
movq %rbx, %rdi
addq $0x50, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
popq %rbp
jmp 0x195c0