431890:	e8 3b a0 fe ff       	call   0x41b8d0
431895:	c9                   	leave
431896:	c3                   	ret
431897:	8b ff                	mov    %edi,%edi
431899:	55                   	push   %ebp
43189a:	8b ec                	mov    %esp,%ebp
43189c:	57                   	push   %edi
43189d:	8b 7d 08             	mov    0x8(%ebp),%edi
4318a0:	85 ff                	test   %edi,%edi
4318a2:	75 0b                	jne    0x4318af
4318a4:	ff 75 0c             	push   0xc(%ebp)
4318a7:	e8 05 ac ff ff       	call   0x42c4b1
4318ac:	59                   	pop    %ecx
4318ad:	eb 24                	jmp    0x4318d3
4318af:	56                   	push   %esi
4318b0:	8b 75 0c             	mov    0xc(%ebp),%esi
4318b3:	85 f6                	test   %esi,%esi
4318b5:	75 09                	jne    0x4318c0
4318b7:	57                   	push   %edi
4318b8:	e8 ba ab ff ff       	call   0x42c477
4318bd:	59                   	pop    %ecx
4318be:	eb 10                	jmp    0x4318d0
4318c0:	83 fe e0             	cmp    $0xffffffe0,%esi
4318c3:	76 25                	jbe    0x4318ea
4318c5:	e8 76 4d ff ff       	call   0x426640
4318ca:	c7 00 0c 00 00 00    	movl   $0xc,(%eax)
4318d0:	33 c0                	xor    %eax,%eax
4318d2:	5e                   	pop    %esi
4318d3:	5f                   	pop    %edi
4318d4:	5d                   	pop    %ebp
4318d5:	c3                   	ret
4318d6:	e8 a6 9e ff ff       	call   0x42b781
4318db:	85 c0                	test   %eax,%eax
4318dd:	74 e6                	je     0x4318c5
4318df:	56                   	push   %esi
4318e0:	e8 f0 79 ff ff       	call   0x4292d5
4318e5:	59                   	pop    %ecx
4318e6:	85 c0                	test   %eax,%eax
4318e8:	74 db                	je     0x4318c5
4318ea:	56                   	push   %esi
4318eb:	57                   	push   %edi
4318ec:	6a 00                	push   $0x0
4318ee:	ff 35 3c 61 45 00    	push   0x45613c
4318f4:	ff 15 14 f1 43 00    	call   *0x43f114
4318fa:	85 c0                	test   %eax,%eax
4318fc:	74 d8                	je     0x4318d6
4318fe:	eb d2                	jmp    0x4318d2
431900:	6a 0a                	push   $0xa
431902:	ff 15 48 f1 43 00    	call   *0x43f148
431908:	a3 6c 62 45 00       	mov    %eax,0x45626c
43190d:	33 c0                	xor    %eax,%eax
43190f:	c3                   	ret
431910:	55                   	push   %ebp
431911:	8b ec                	mov    %esp,%ebp
431913:	83 ec 10             	sub    $0x10,%esp
431916:	83 e4 f0             	and    $0xfffffff0,%esp
431919:	d9 c9                	fxch   %st(1)
43191b:	dd 1c 24             	fstpl  (%esp)
43191e:	dd 5c 24 08          	fstpl  0x8(%esp)
431922:	e8 02 00 00 00       	call   0x431929
431927:	c9                   	leave
431928:	c3                   	ret
431929:	66 0f 12 44 24 04    	movlpd 0x4(%esp),%xmm0
43192f:	66 0f 12 3d 60 38 44 	movlpd 0x443860,%xmm7
431936:	00
431937:	66 0f 12 15 70 38 44 	movlpd 0x443870,%xmm2
43193e:	00
43193f:	66 0f 54 f8          	andpd  %xmm0,%xmm7
431943:	f2 0f 10 e0          	movsd  %xmm0,%xmm4
431947:	66 0f 73 d0 2c       	psrlq  $0x2c,%xmm0
43194c:	66 0f c5 c0 00       	pextrw $0x0,%xmm0,%eax
431951:	66 0f 56 fa          	orpd   %xmm2,%xmm7
431955:	66 0f c5 cc 03       	pextrw $0x3,%xmm4,%ecx
43195a:	25 ff 00 00 00       	and    $0xff,%eax
43195f:	83 c0 01             	add    $0x1,%eax
431962:	25 fe 01 00 00       	and    $0x1fe,%eax
431967:	f2 0f 59 3c 85 a8 68 	mulsd  0x4468a8(,%eax,4),%xmm7
43196e:	44 00
431970:	66 0f 12 2c 85 a8 68 	movlpd 0x4468a8(,%eax,4),%xmm5
431977:	44 00
431979:	03 c0                	add    %eax,%eax
43197b:	66 0f 28 34 85 c0 6c 	movapd 0x446cc0(,%eax,4),%xmm6
431982:	44 00
431984:	ba ef 7f 00 00       	mov    $0x7fef,%edx
431989:	2b d1                	sub    %ecx,%edx
43198b:	83 e9 10             	sub    $0x10,%ecx
43198e:	0b ca                	or     %edx,%ecx
431990:	81 f9 00 00 00 80    	cmp    $0x80000000,%ecx
431996:	0f 83 db 02 00 00    	jae    0x431c77
43199c:	b9 00 00 00 00       	mov    $0x0,%ecx
4319a1:	ba 7f fe 03 00       	mov    $0x3fe7f,%edx
4319a6:	66 0f 6e ca          	movd   %edx,%xmm1
4319aa:	66 0f fb c1          	psubq  %xmm1,%xmm0
4319ae:	66 0f 73 d0 08       	psrlq  $0x8,%xmm0
4319b3:	f3 0f e6 c0          	cvtdq2pd %xmm0,%xmm0
4319b7:	66 0f 12 0d b8 38 44 	movlpd 0x4438b8,%xmm1
4319be:	00
4319bf:	f2 0f 10 df          	movsd  %xmm7,%xmm3
4319c3:	66 0f 73 d7 26       	psrlq  $0x26,%xmm7
4319c8:	66 0f c5 c7 00       	pextrw $0x0,%xmm7,%eax
4319cd:	66 0f 54 25 60 38 44 	andpd  0x443860,%xmm4
4319d4:	00
4319d5:	25 ff 00 00 00       	and    $0xff,%eax
4319da:	83 c0 01             	add    $0x1,%eax
4319dd:	25 fe 01 00 00       	and    $0x1fe,%eax
4319e2:	f2 0f 59 1c 85 d0 74 	mulsd  0x4474d0(,%eax,4),%xmm3
4319e9:	44 00
4319eb:	f2 0f 59 2c 85 d0 74 	mulsd  0x4474d0(,%eax,4),%xmm5
4319f2:	44 00
4319f4:	03 c0                	add    %eax,%eax
4319f6:	66 0f 58 34 85 e0 78 	addpd  0x4478e0(,%eax,4),%xmm6
4319fd:	44 00
4319ff:	66 0f 56 25 70 38 44 	orpd   0x443870,%xmm4
431a06:	00
431a07:	f2 0f 58 f0          	addsd  %xmm0,%xmm6
431a0b:	66 0f 54 cc          	andpd  %xmm4,%xmm1
431a0f:	f2 0f 10 d3          	movsd  %xmm3,%xmm2
431a13:	66 0f 73 d3 1f       	psrlq  $0x1f,%xmm3
431a18:	66 0f c5 c3 00       	pextrw $0x0,%xmm3,%eax
431a1d:	66 0f 12 05 b8 38 44 	movlpd 0x4438b8,%xmm0
431a24:	00
431a25:	f2 0f 5c e1          	subsd  %xmm1,%xmm4
431a29:	66 0f 12 3d c0 38 44 	movlpd 0x4438c0,%xmm7
431a30:	00
431a31:	25 ff 01 00 00       	and    $0x1ff,%eax
431a36:	83 c0 01             	add    $0x1,%eax
431a39:	25 fe 03 00 00       	and    $0x3fe,%eax
431a3e:	f2 0f 59 2c 85 f0 80 	mulsd  0x4480f0(,%eax,4),%xmm5
431a45:	44 00
431a47:	f2 0f 59 14 85 f0 80 	mulsd  0x4480f0(,%eax,4),%xmm2
431a4e:	44 00
431a50:	66 0f 58 34 c5 00 89 	addpd  0x448900(,%eax,8),%xmm6
431a57:	44 00
431a59:	66 0f 54 c5          	andpd  %xmm5,%xmm0
431a5d:	f2 0f 5c e8          	subsd  %xmm0,%xmm5
431a61:	f2 0f 58 fa          	addsd  %xmm2,%xmm7
431a65:	f2 0f 10 d8          	movsd  %xmm0,%xmm3
431a69:	f2 0f 59 c1          	mulsd  %xmm1,%xmm0
431a6d:	f2 0f 59 cd          	mulsd  %xmm5,%xmm1
431a71:	f2 0f 59 dc          	mulsd  %xmm4,%xmm3
431a75:	f2 0f 5c d0          	subsd  %xmm0,%xmm2
431a79:	f2 0f 59 e5          	mulsd  %xmm5,%xmm4
431a7d:	f2 0f 10 c6          	movsd  %xmm6,%xmm0
431a81:	f2 0f 5c d1          	subsd  %xmm1,%xmm2
431a85:	f2 0f 58 f7          	addsd  %xmm7,%xmm6
431a89:	66 0f 12 4c 24 0c    	movlpd 0xc(%esp),%xmm1
431a8f:	66 0f c5 c1 03       	pextrw $0x3,%xmm1,%eax
431a94:	f2 0f 5c d3          	subsd  %xmm3,%xmm2
431a98:	f2 0f 5c c6          	subsd  %xmm6,%xmm0
431a9c:	66 0f 12 1d b8 38 44 	movlpd 0x4438b8,%xmm3
431aa3:	00
431aa4:	66 0f c5 d6 03       	pextrw $0x3,%xmm6,%edx
431aa9:	f2 0f 5c d4          	subsd  %xmm4,%xmm2
431aad:	f2 0f 10 e6          	movsd  %xmm6,%xmm4
431ab1:	f2 0f 58 c7          	addsd  %xmm7,%xmm0
431ab5:	f2 0f 5c fa          	subsd  %xmm2,%xmm7
431ab9:	f2 0f 5c f2          	subsd  %xmm2,%xmm6
431abd:	66 0f 14 ff          	unpcklpd %xmm7,%xmm7
431ac1:	25 f0 7f 00 00       	and    $0x7ff0,%eax
431ac6:	3d f0 7f 00 00       	cmp    $0x7ff0,%eax
431acb:	0f 83 17 05 00 00    	jae    0x431fe8
431ad1:	81 e2 f0 7f 00 00    	and    $0x7ff0,%edx
431ad7:	2d f0 3f 00 00       	sub    $0x3ff0,%eax
431adc:	03 c2                	add    %edx,%eax
431ade:	ba a0 40 00 00       	mov    $0x40a0,%edx
431ae3:	2b d0                	sub    %eax,%edx
431ae5:	2d 70 3c 00 00       	sub    $0x3c70,%eax
431aea:	0b d0                	or     %eax,%edx
431aec:	81 fa 00 00 00 80    	cmp    $0x80000000,%edx
431af2:	0f 83 b2 08 00 00    	jae    0x4323aa
431af8:	f2 0f 5c e6          	subsd  %xmm6,%xmm4
431afc:	f2 0f 5c d4          	subsd  %xmm4,%xmm2
431b00:	66 0f 12 25 b8 38 44 	movlpd 0x4438b8,%xmm4
431b07:	00
431b08:	66 0f 54 d9          	andpd  %xmm1,%xmm3
431b0c:	66 0f 54 e6          	andpd  %xmm6,%xmm4
431b10:	f2 0f 5c c2          	subsd  %xmm2,%xmm0
431b14:	66 0f 57 d2          	xorpd  %xmm2,%xmm2
431b18:	ba 60 40 00 00       	mov    $0x4060,%edx
431b1d:	66 0f c4 d2 03       	pinsrw $0x3,%edx,%xmm2
431b22:	f2 0f 10 eb          	movsd  %xmm3,%xmm5
431b26:	f2 0f 59 dc          	mulsd  %xmm4,%xmm3
431b2a:	f2 0f 5c f4          	subsd  %xmm4,%xmm6
431b2e:	f2 0f 5c cd          	subsd  %xmm5,%xmm1
431b32:	f2 0f 59 da          	mulsd  %xmm2,%xmm3
431b36:	f2 0f 59 ee          	mulsd  %xmm6,%xmm5
431b3a:	66 0f 28 15 10 99 44 	movapd 0x449910,%xmm2
431b41:	00
431b42:	f2 0f 59 e1          	mulsd  %xmm1,%xmm4
431b46:	f2 0f 2d c3          	cvtsd2si %xmm3,%eax
431b4a:	f2 0f 59 f1          	mulsd  %xmm1,%xmm6
431b4e:	66 0f 28 0d 20 99 44 	movapd 0x449920,%xmm1
431b55:	00
431b56:	f2 0f 58 ec          	addsd  %xmm4,%xmm5
431b5a:	66 0f 70 e6 ee       	pshufd $0xee,%xmm6,%xmm4
431b5f:	f2 0f 58 ee          	addsd  %xmm6,%xmm5
431b63:	ba 7f ff 01 00       	mov    $0x1ff7f,%edx
431b68:	2b d0                	sub    %eax,%edx
431b6a:	05 ff e1 01 00       	add    $0x1e1ff,%eax
431b6f:	0b d0                	or     %eax,%edx
431b71:	2d ff e1 01 00       	sub    $0x1e1ff,%eax
431b76:	83 fa 00             	cmp    $0x0,%edx
431b79:	0f 8e af 05 00 00    	jle    0x43212e
431b7f:	03 c8                	add    %eax,%ecx
431b81:	83 e0 7f             	and    $0x7f,%eax
431b84:	83 e1 80             	and    $0xffffff80,%ecx
431b87:	81 c1 80 ff 01 00    	add    $0x1ff80,%ecx
431b8d:	f2 0f 58 e0          	addsd  %xmm0,%xmm4
431b91:	f2 0f 10 c3          	movsd  %xmm3,%xmm0
431b95:	f2 0f 58 1d 50 38 44 	addsd  0x443850,%xmm3
431b9c:	00
431b9d:	66 0f 59 d7          	mulpd  %xmm7,%xmm2
431ba1:	f2 0f 5c 1d 50 38 44 	subsd  0x443850,%xmm3
431ba8:	00
431ba9:	66 0f 59 ff          	mulpd  %xmm7,%xmm7
431bad:	f2 0f 5c c3          	subsd  %xmm3,%xmm0
431bb1:	03 c0                	add    %eax,%eax
431bb3:	03 c0                	add    %eax,%eax
431bb5:	03 c0                	add    %eax,%eax
431bb7:	03 c0                	add    %eax,%eax
431bb9:	66 0f 28 98 30 99 44 	movapd 0x449930(%eax),%xmm3
431bc0:	00
431bc1:	66 0f 28 35 90 38 44 	movapd 0x443890,%xmm6
431bc8:	00
431bc9:	66 0f 59 cf          	mulpd  %xmm7,%xmm1
431bcd:	66 0f 58 d1          	addpd  %xmm1,%xmm2
431bd1:	66 0f 70 ca ee       	pshufd $0xee,%xmm2,%xmm1
431bd6:	f2 0f 59 d7          	mulsd  %xmm7,%xmm2
431bda:	66 0f 57 ff          	xorpd  %xmm7,%xmm7
431bde:	ba 80 3f 00 00       	mov    $0x3f80,%edx
431be3:	f2 0f 58 d1          	addsd  %xmm1,%xmm2
431be7:	66 0f c4 fa 03       	pinsrw $0x3,%edx,%xmm7
431bec:	f2 0f 58 d4          	addsd  %xmm4,%xmm2
431bf0:	66 0f 12 25 b0 38 44 	movlpd 0x4438b0,%xmm4
431bf7:	00
431bf8:	66 0f 6e c9          	movd   %ecx,%xmm1
431bfc:	f2 0f 59 54 24 0c    	mulsd  0xc(%esp),%xmm2
431c02:	f2 0f 59 c7          	mulsd  %xmm7,%xmm0
431c06:	66 0f 73 f1 2d       	psllq  $0x2d,%xmm1
431c0b:	66 0f 70 c9 44       	pshufd $0x44,%xmm1,%xmm1
431c10:	66 0f 28 3d a0 38 44 	movapd 0x4438a0,%xmm7
431c17:	00
431c18:	f2 0f 58 ea          	addsd  %xmm2,%xmm5
431c1c:	66 0f 59 d9          	mulpd  %xmm1,%xmm3
431c20:	f2 0f 58 c5          	addsd  %xmm5,%xmm0
431c24:	66 0f 14 c0          	unpcklpd %xmm0,%xmm0
431c28:	66 0f 59 f0          	mulpd  %xmm0,%xmm6
431c2c:	f2 0f 59 e0          	mulsd  %xmm0,%xmm4
431c30:	66 0f 59 c0          	mulpd  %xmm0,%xmm0
431c34:	66 0f 58 fe          	addpd  %xmm6,%xmm7
431c38:	66 0f 59 f8          	mulpd  %xmm0,%xmm7
431c3c:	f2 0f 59 c3          	mulsd  %xmm3,%xmm0
431c40:	66 0f 70 f7 ee       	pshufd $0xee,%xmm7,%xmm6
431c45:	f2 0f 59 c7          	mulsd  %xmm7,%xmm0
431c49:	66 0f 70 eb ee       	pshufd $0xee,%xmm3,%xmm5
431c4e:	f2 0f 59 f3          	mulsd  %xmm3,%xmm6
431c52:	f2 0f 59 e3          	mulsd  %xmm3,%xmm4
431c56:	f2 0f 58 c5          	addsd  %xmm5,%xmm0
431c5a:	83 ec 10             	sub    $0x10,%esp
431c5d:	f2 0f 58 c6          	addsd  %xmm6,%xmm0
431c61:	f2 0f 58 c4          	addsd  %xmm4,%xmm0
431c65:	f2 0f 58 c3          	addsd  %xmm3,%xmm0
431c69:	66 0f 13 44 24 04    	movlpd %xmm0,0x4(%esp)
431c6f:	dd 44 24 04          	fldl   0x4(%esp)
431c73:	83 c4 10             	add    $0x10,%esp
431c76:	c3                   	ret
431c77:	66 0f 12 4c 24 0c    	movlpd 0xc(%esp),%xmm1
431c7d:	66 0f 12 1d 80 38 44 	movlpd 0x443880,%xmm3
431c84:	00
431c85:	66 0f 7e c8          	movd   %xmm1,%eax
431c89:	f2 0f 10 d1          	movsd  %xmm1,%xmm2
431c8d:	66 0f 54 cb          	andpd  %xmm3,%xmm1
431c91:	66 0f 73 d1 20       	psrlq  $0x20,%xmm1
431c96:	66 0f 7e c9          	movd   %xmm1,%ecx
431c9a:	81 f9 00 00 f0 7f    	cmp    $0x7ff00000,%ecx
431ca0:	0f 83 da 00 00 00    	jae    0x431d80
431ca6:	0b c1                	or     %ecx,%eax
431ca8:	83 f8 00             	cmp    $0x0,%eax
431cab:	0f 84 f4 03 00 00    	je     0x4320a5
431cb1:	83 fa 00             	cmp    $0x0,%edx
431cb4:	0f 8d 05 01 00 00    	jge    0x431dbf
431cba:	f7 da                	neg    %edx
431cbc:	81 c2 ef 7f 00 00    	add    $0x7fef,%edx
431cc2:	66 0f 73 f3 34       	psllq  $0x34,%xmm3
431cc7:	66 0f 56 d3          	orpd   %xmm3,%xmm2
431ccb:	b9 f3 03 00 00       	mov    $0x3f3,%ecx
431cd0:	66 0f 6e d9          	movd   %ecx,%xmm3
431cd4:	66 0f 73 d1 14       	psrlq  $0x14,%xmm1
431cd9:	66 0f fa cb          	psubd  %xmm3,%xmm1
431cdd:	66 0f ef db          	pxor   %xmm3,%xmm3
431ce1:	66 0f ee cb          	pmaxsw %xmm3,%xmm1
431ce5:	66 0f f3 d1          	psllq  %xmm1,%xmm2
431ce9:	66 0f 76 d3          	pcmpeqd %xmm3,%xmm2
431ced:	66 0f d7 c2          	pmovmskb %xmm2,%eax
431cf1:	8b ca                	mov    %edx,%ecx
431cf3:	81 e2 ff 7f 00 00    	and    $0x7fff,%edx
431cf9:	81 fa f0 7f 00 00    	cmp    $0x7ff0,%edx
431cff:	0f 83 a3 01 00 00    	jae    0x431ea8
431d05:	25 ff 00 00 00       	and    $0xff,%eax
431d0a:	3d ff 00 00 00       	cmp    $0xff,%eax
431d0f:	0f 85 8c 02 00 00    	jne    0x431fa1
431d15:	66 0f 12 4c 24 0c    	movlpd 0xc(%esp),%xmm1
431d1b:	66 0f 12 54 24 0c    	movlpd 0xc(%esp),%xmm2
431d21:	b9 f4 03 00 00       	mov    $0x3f4,%ecx
431d26:	66 0f 6e d9          	movd   %ecx,%xmm3
431d2a:	66 0f 54 0d 80 38 44 	andpd  0x443880,%xmm1
431d31:	00
431d32:	66 0f 73 d1 34       	psrlq  $0x34,%xmm1
431d37:	66 0f fa cb          	psubd  %xmm3,%xmm1
431d3b:	66 0f 12 1d e0 38 44 	movlpd 0x4438e0,%xmm3
431d42:	00
431d43:	66 0f f3 d1          	psllq  %xmm1,%xmm2
431d47:	66 0f 76 d3          	pcmpeqd %xmm3,%xmm2
431d4b:	66 0f d7 c2          	pmovmskb %xmm2,%eax
431d4f:	25 ff 00 00 00       	and    $0xff,%eax
431d54:	b9 01 ff 03 00       	mov    $0x3ff01,%ecx
431d59:	03 c8                	add    %eax,%ecx
431d5b:	81 e1 00 00 04 00    	and    $0x40000,%ecx
431d61:	83 fa 10             	cmp    $0x10,%edx
431d64:	72 5e                	jb     0x431dc4
431d66:	ba 7f fe 0b 00       	mov    $0xbfe7f,%edx
431d6b:	66 0f 12 1d 60 38 44 	movlpd 0x443860,%xmm3
431d72:	00
431d73:	66 0f 12 15 70 38 44 	movlpd 0x443870,%xmm2
431d7a:	00
431d7b:	e9 26 fc ff ff       	jmp    0x4319a6
431d80:	66 0f 12 7c 24 04    	movlpd 0x4(%esp),%xmm7
431d86:	66 0f 12 64 24 04    	movlpd 0x4(%esp),%xmm4
431d8c:	66 0f 7e fa          	movd   %xmm7,%edx
431d90:	66 0f 73 d7 20       	psrlq  $0x20,%xmm7
431d95:	66 0f 7e f8          	movd   %xmm7,%eax
431d99:	8b c8                	mov    %eax,%ecx
431d9b:	25 ff ff ff 7f       	and    $0x7fffffff,%eax
431da0:	3d 00 00 f0 7f       	cmp    $0x7ff00000,%eax
431da5:	0f 82 72 02 00 00    	jb     0x43201d
431dab:	0f 87 de 01 00 00    	ja     0x431f8f
431db1:	83 fa 00             	cmp    $0x0,%edx
431db4:	0f 87 d5 01 00 00    	ja     0x431f8f
431dba:	e9 5e 02 00 00       	jmp    0x43201d
431dbf:	b9 00 00 00 00       	mov    $0x0,%ecx
431dc4:	66 0f 57 c0          	xorpd  %xmm0,%xmm0
431dc8:	b8 f0 43 00 00       	mov    $0x43f0,%eax
431dcd:	66 0f c4 c0 03       	pinsrw $0x3,%eax,%xmm0
431dd2:	66 0f 12 3d 60 38 44 	movlpd 0x443860,%xmm7
431dd9:	00
431dda:	66 0f 12 15 70 38 44 	movlpd 0x443870,%xmm2
431de1:	00
431de2:	f2 0f 59 c4          	mulsd  %xmm4,%xmm0
431de6:	66 0f 7e e2          	movd   %xmm4,%edx
431dea:	66 0f 73 d4 20       	psrlq  $0x20,%xmm4