487727:	5f                   	pop    %edi
487728:	5e                   	pop    %esi
487729:	ab                   	stos   %eax,%es:(%edi)
48772a:	ad                   	lods   %ds:(%esi),%eax
48772b:	56                   	push   %esi
48772c:	57                   	push   %edi
48772d:	85 c0                	test   %eax,%eax
48772f:	74 13                	je     0x487744
487731:	50                   	push   %eax
487732:	8b 40 04             	mov    0x4(%eax),%eax
487735:	83 c0 08             	add    $0x8,%eax
487738:	50                   	push   %eax
487739:	e8 60 8e 01 00       	call   0x4a059e
48773e:	59                   	pop    %ecx
48773f:	5e                   	pop    %esi
487740:	8b f8                	mov    %eax,%edi
487742:	f3 a4                	rep movsb %ds:(%esi),%es:(%edi)
487744:	5f                   	pop    %edi
487745:	5e                   	pop    %esi
487746:	ab                   	stos   %eax,%es:(%edi)
487747:	b9 08 00 00 00       	mov    $0x8,%ecx
48774c:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
48774e:	58                   	pop    %eax
48774f:	59                   	pop    %ecx
487750:	5f                   	pop    %edi
487751:	5e                   	pop    %esi
487752:	ab                   	stos   %eax,%es:(%edi)
487753:	49                   	dec    %ecx
487754:	0f 85 9d ff ff ff    	jne    0x4876f7
48775a:	58                   	pop    %eax
48775b:	5f                   	pop    %edi
48775c:	5e                   	pop    %esi
48775d:	ab                   	stos   %eax,%es:(%edi)
48775e:	b9 05 00 00 00       	mov    $0x5,%ecx
487763:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
487765:	58                   	pop    %eax
487766:	c3                   	ret
487767:	55                   	push   %ebp
487768:	8b ec                	mov    %esp,%ebp
48776a:	81 ec 10 00 00 00    	sub    $0x10,%esp
487770:	83 7d 14 0f          	cmpl   $0xf,0x14(%ebp)
487774:	0f 85 24 00 00 00    	jne    0x48779e
48777a:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
487781:	6a 00                	push   $0x0
487783:	ff 75 fc             	push   -0x4(%ebp)
487786:	ff 75 10             	push   0x10(%ebp)
487789:	ff 75 08             	push   0x8(%ebp)
48778c:	8b 04 24             	mov    (%esp),%eax
48778f:	8b 00                	mov    (%eax),%eax
487791:	8b 00                	mov    (%eax),%eax
487793:	ff 90 70 01 00 00    	call   *0x170(%eax)
487799:	e9 c5 00 00 00       	jmp    0x487863
48779e:	83 7d 14 01          	cmpl   $0x1,0x14(%ebp)
4877a2:	0f 85 9b 00 00 00    	jne    0x487843
4877a8:	8b 5d 08             	mov    0x8(%ebp),%ebx
4877ab:	8b 1b                	mov    (%ebx),%ebx
4877ad:	81 c3 14 01 00 00    	add    $0x114,%ebx
4877b3:	89 5d fc             	mov    %ebx,-0x4(%ebp)
4877b6:	c7 45 f8 00 00 00 00 	movl   $0x0,-0x8(%ebp)
4877bd:	6a 00                	push   $0x0
4877bf:	ff 75 f8             	push   -0x8(%ebp)
4877c2:	b8 7d ed 4f 00       	mov    $0x4fed7d,%eax
4877c7:	89 45 f4             	mov    %eax,-0xc(%ebp)
4877ca:	8d 45 f4             	lea    -0xc(%ebp),%eax
4877cd:	50                   	push   %eax
4877ce:	e8 d5 b4 fb ff       	call   0x442ca8
4877d3:	89 45 f0             	mov    %eax,-0x10(%ebp)
4877d6:	8b 5d f4             	mov    -0xc(%ebp),%ebx
4877d9:	85 db                	test   %ebx,%ebx
4877db:	74 09                	je     0x4877e6
4877dd:	53                   	push   %ebx
4877de:	e8 c1 8d 01 00       	call   0x4a05a4
4877e3:	83 c4 04             	add    $0x4,%esp
4877e6:	8b 45 f0             	mov    -0x10(%ebp),%eax
4877e9:	8b 5d fc             	mov    -0x4(%ebp),%ebx
4877ec:	89 03                	mov    %eax,(%ebx)
4877ee:	8b 5d 08             	mov    0x8(%ebp),%ebx
4877f1:	8b 1b                	mov    (%ebx),%ebx
4877f3:	81 c3 20 01 00 00    	add    $0x120,%ebx
4877f9:	89 5d fc             	mov    %ebx,-0x4(%ebp)
4877fc:	68 5b 00 00 00       	push   $0x5b
487801:	ff 75 10             	push   0x10(%ebp)
487804:	e8 6a 00 00 00       	call   0x487873
487809:	50                   	push   %eax
48780a:	e8 50 63 fc ff       	call   0x44db5f
48780f:	89 45 f4             	mov    %eax,-0xc(%ebp)
487812:	ff 75 08             	push   0x8(%ebp)
487815:	e8 7c 39 fa ff       	call   0x42b196
48781a:	89 45 f0             	mov    %eax,-0x10(%ebp)
48781d:	6a 01                	push   $0x1
48781f:	ff 75 f0             	push   -0x10(%ebp)
487822:	6a 01                	push   $0x1
487824:	ff 75 f4             	push   -0xc(%ebp)
487827:	6a 01                	push   $0x1
487829:	68 12 00 00 00       	push   $0x12
48782e:	ff 75 0c             	push   0xc(%ebp)
487831:	ff 75 fc             	push   -0x4(%ebp)
487834:	8b 04 24             	mov    (%esp),%eax
487837:	8b 00                	mov    (%eax),%eax
487839:	8b 00                	mov    (%eax),%eax
48783b:	ff 50 14             	call   *0x14(%eax)
48783e:	e9 20 00 00 00       	jmp    0x487863
487843:	83 7d 14 02          	cmpl   $0x2,0x14(%ebp)
487847:	0f 85 16 00 00 00    	jne    0x487863
48784d:	8b 5d 08             	mov    0x8(%ebp),%ebx
487850:	8b 1b                	mov    (%ebx),%ebx
487852:	81 c3 14 01 00 00    	add    $0x114,%ebx
487858:	89 5d fc             	mov    %ebx,-0x4(%ebp)
48785b:	ff 75 fc             	push   -0x4(%ebp)
48785e:	e8 c0 1b f9 ff       	call   0x419423
487863:	b8 00 00 00 00       	mov    $0x0,%eax
487868:	e9 00 00 00 00       	jmp    0x48786d
48786d:	8b e5                	mov    %ebp,%esp
48786f:	5d                   	pop    %ebp
487870:	c2 18 00             	ret    $0x18
487873:	55                   	push   %ebp
487874:	8b ec                	mov    %esp,%ebp
487876:	81 ec 04 00 00 00    	sub    $0x4,%esp
48787c:	ff 75 0c             	push   0xc(%ebp)
48787f:	ff 75 08             	push   0x8(%ebp)
487882:	e8 46 8d fa ff       	call   0x4305cd
487887:	e9 00 00 00 00       	jmp    0x48788c
48788c:	8b e5                	mov    %ebp,%esp
48788e:	5d                   	pop    %ebp
48788f:	c2 08 00             	ret    $0x8
487892:	55                   	push   %ebp
487893:	8b ec                	mov    %esp,%ebp
487895:	81 ec 34 00 00 00    	sub    $0x34,%esp
48789b:	8b 5d 08             	mov    0x8(%ebp),%ebx
48789e:	8b 1b                	mov    (%ebx),%ebx
4878a0:	81 c3 1c 01 00 00    	add    $0x11c,%ebx
4878a6:	89 5d fc             	mov    %ebx,-0x4(%ebp)
4878a9:	8b 5d fc             	mov    -0x4(%ebp),%ebx
4878ac:	8b 03                	mov    (%ebx),%eax
4878ae:	83 e0 01             	and    $0x1,%eax
4878b1:	83 f0 01             	xor    $0x1,%eax
4878b4:	85 c0                	test   %eax,%eax
4878b6:	0f 84 19 00 00 00    	je     0x4878d5
4878bc:	8b 5d 08             	mov    0x8(%ebp),%ebx
4878bf:	8b 1b                	mov    (%ebx),%ebx
4878c1:	81 c3 18 01 00 00    	add    $0x118,%ebx
4878c7:	89 5d fc             	mov    %ebx,-0x4(%ebp)
4878ca:	8b 5d fc             	mov    -0x4(%ebp),%ebx
4878cd:	83 03 03             	addl   $0x3,(%ebx)
4878d0:	e9 14 00 00 00       	jmp    0x4878e9
4878d5:	8b 5d 08             	mov    0x8(%ebp),%ebx
4878d8:	8b 1b                	mov    (%ebx),%ebx
4878da:	81 c3 18 01 00 00    	add    $0x118,%ebx
4878e0:	89 5d fc             	mov    %ebx,-0x4(%ebp)
4878e3:	8b 5d fc             	mov    -0x4(%ebp),%ebx
4878e6:	83 2b 03             	subl   $0x3,(%ebx)
4878e9:	8b 5d 08             	mov    0x8(%ebp),%ebx
4878ec:	8b 1b                	mov    (%ebx),%ebx
4878ee:	81 c3 18 01 00 00    	add    $0x118,%ebx
4878f4:	89 5d fc             	mov    %ebx,-0x4(%ebp)
4878f7:	8b 5d fc             	mov    -0x4(%ebp),%ebx
4878fa:	83 3b 00             	cmpl   $0x0,(%ebx)
4878fd:	0f 8e 5a 00 00 00    	jle    0x48795d
487903:	8b 5d 08             	mov    0x8(%ebp),%ebx
487906:	8b 1b                	mov    (%ebx),%ebx
487908:	81 c3 18 01 00 00    	add    $0x118,%ebx
48790e:	89 5d f4             	mov    %ebx,-0xc(%ebp)
487911:	c7 45 f0 00 00 00 00 	movl   $0x0,-0x10(%ebp)
487918:	6a 00                	push   $0x0
48791a:	ff 75 f0             	push   -0x10(%ebp)
48791d:	ff 75 08             	push   0x8(%ebp)
487920:	e8 52 00 fb ff       	call   0x437977
487925:	89 45 e4             	mov    %eax,-0x1c(%ebp)
487928:	db 45 e4             	fildl  -0x1c(%ebp)
48792b:	dd 5d e4             	fstpl  -0x1c(%ebp)
48792e:	dd 45 e4             	fldl   -0x1c(%ebp)
487931:	dc 25 a2 bb 4c 00    	fsubl  0x4cbba2
487937:	dd 5d dc             	fstpl  -0x24(%ebp)
48793a:	8b 5d f4             	mov    -0xc(%ebp),%ebx
48793d:	db 03                	fildl  (%ebx)
48793f:	dd 5d d4             	fstpl  -0x2c(%ebp)
487942:	dd 45 d4             	fldl   -0x2c(%ebp)
487945:	dc 65 dc             	fsubl  -0x24(%ebp)
487948:	dc 1d 7a bb 4c 00    	fcompl 0x4cbb7a
48794e:	df e0                	fnstsw %ax
487950:	f6 c4 01             	test   $0x1,%ah
487953:	0f 84 04 00 00 00    	je     0x48795d
487959:	33 c0                	xor    %eax,%eax
48795b:	eb 05                	jmp    0x487962
48795d:	b8 01 00 00 00       	mov    $0x1,%eax
487962:	85 c0                	test   %eax,%eax
487964:	0f 84 1a 00 00 00    	je     0x487984
48796a:	8b 5d 08             	mov    0x8(%ebp),%ebx
48796d:	8b 1b                	mov    (%ebx),%ebx
48796f:	81 c3 1c 01 00 00    	add    $0x11c,%ebx
487975:	89 5d fc             	mov    %ebx,-0x4(%ebp)
487978:	8b 5d fc             	mov    -0x4(%ebp),%ebx
48797b:	83 23 01             	andl   $0x1,(%ebx)
48797e:	8b 5d fc             	mov    -0x4(%ebp),%ebx
487981:	83 33 01             	xorl   $0x1,(%ebx)
487984:	ff 75 08             	push   0x8(%ebp)
487987:	e8 df f9 fa ff       	call   0x43736b
48798c:	8b e5                	mov    %ebp,%esp
48798e:	5d                   	pop    %ebp
48798f:	c2 04 00             	ret    $0x4
487992:	55                   	push   %ebp
487993:	8b ec                	mov    %esp,%ebp
487995:	81 ec 20 00 00 00    	sub    $0x20,%esp
48799b:	68 24 00 00 00       	push   $0x24
4879a0:	e8 f9 8b 01 00       	call   0x4a059e
4879a5:	83 c4 04             	add    $0x4,%esp
4879a8:	89 45 fc             	mov    %eax,-0x4(%ebp)
4879ab:	8b d8                	mov    %eax,%ebx
4879ad:	8b f8                	mov    %eax,%edi
4879af:	33 c0                	xor    %eax,%eax
4879b1:	b9 09 00 00 00       	mov    $0x9,%ecx
4879b6:	f3 ab                	rep stos %eax,%es:(%edi)
4879b8:	83 c3 14             	add    $0x14,%ebx
4879bb:	53                   	push   %ebx
4879bc:	68 10 00 00 00       	push   $0x10
4879c1:	e8 d8 8b 01 00       	call   0x4a059e
4879c6:	83 c4 04             	add    $0x4,%esp
4879c9:	5b                   	pop    %ebx
4879ca:	53                   	push   %ebx
4879cb:	89 03                	mov    %eax,(%ebx)
4879cd:	8b d8                	mov    %eax,%ebx
4879cf:	c7 03 00 00 00 00    	movl   $0x0,(%ebx)
4879d5:	c7 43 04 00 00 00 00 	movl   $0x0,0x4(%ebx)
4879dc:	c7 43 08 00 00 00 00 	movl   $0x0,0x8(%ebx)
4879e3:	c7 43 0c 00 00 00 00 	movl   $0x0,0xc(%ebx)
4879ea:	5b                   	pop    %ebx
4879eb:	83 c3 04             	add    $0x4,%ebx
4879ee:	53                   	push   %ebx
4879ef:	68 10 00 00 00       	push   $0x10
4879f4:	e8 a5 8b 01 00       	call   0x4a059e
4879f9:	83 c4 04             	add    $0x4,%esp
4879fc:	5b                   	pop    %ebx
4879fd:	53                   	push   %ebx
4879fe:	89 03                	mov    %eax,(%ebx)
487a00:	8b d8                	mov    %eax,%ebx
487a02:	c7 03 00 00 00 00    	movl   $0x0,(%ebx)
487a08:	c7 43 04 00 00 00 00 	movl   $0x0,0x4(%ebx)
487a0f:	c7 43 08 00 00 00 00 	movl   $0x0,0x8(%ebx)
487a16:	c7 43 0c 00 00 00 00 	movl   $0x0,0xc(%ebx)
487a1d:	5b                   	pop    %ebx
487a1e:	68 10 00 00 00       	push   $0x10
487a23:	e8 76 8b 01 00       	call   0x4a059e
487a28:	83 c4 04             	add    $0x4,%esp
487a2b:	89 45 f8             	mov    %eax,-0x8(%ebp)
487a2e:	8b d8                	mov    %eax,%ebx
487a30:	c7 03 00 00 00 00    	movl   $0x0,(%ebx)
487a36:	c7 43 04 00 00 00 00 	movl   $0x0,0x4(%ebx)
487a3d:	c7 43 08 00 00 00 00 	movl   $0x0,0x8(%ebx)
487a44:	c7 43 0c 00 00 00 00 	movl   $0x0,0xc(%ebx)
487a4b:	c7 45 f4 00 00 00 00 	movl   $0x0,-0xc(%ebp)
487a52:	6a 00                	push   $0x0
487a54:	ff 75 f4             	push   -0xc(%ebp)
487a57:	68 10 00 00 00       	push   $0x10
487a5c:	e8 3d 8b 01 00       	call   0x4a059e
487a61:	83 c4 04             	add    $0x4,%esp
487a64:	89 45 f0             	mov    %eax,-0x10(%ebp)
487a67:	8b d8                	mov    %eax,%ebx
487a69:	c7 03 00 00 00 00    	movl   $0x0,(%ebx)
487a6f:	c7 43 04 00 00 00 00 	movl   $0x0,0x4(%ebx)
487a76:	c7 43 08 00 00 00 00 	movl   $0x0,0x8(%ebx)
487a7d:	c7 43 0c 00 00 00 00 	movl   $0x0,0xc(%ebx)
487a84:	6a 00                	push   $0x0
487a86:	8d 45 f0             	lea    -0x10(%ebp),%eax
487a89:	50                   	push   %eax
487a8a:	8d 45 fc             	lea    -0x4(%ebp),%eax
487a8d:	50                   	push   %eax
487a8e:	ff 75 0c             	push   0xc(%ebp)
487a91:	e8 64 24 fb ff       	call   0x439efa
487a96:	8b 5d f0             	mov    -0x10(%ebp),%ebx
487a99:	53                   	push   %ebx
487a9a:	e8 05 8b 01 00       	call   0x4a05a4
487a9f:	83 c4 04             	add    $0x4,%esp
487aa2:	8b 5d fc             	mov    -0x4(%ebp),%ebx
487aa5:	83 c3 10             	add    $0x10,%ebx
487aa8:	89 5d f4             	mov    %ebx,-0xc(%ebp)
487aab:	6a 01                	push   $0x1
487aad:	68 02 00 00 00       	push   $0x2
487ab2:	8b 5d f4             	mov    -0xc(%ebp),%ebx
487ab5:	ff 33                	push   (%ebx)
487ab7:	e8 85 b0 fa ff       	call   0x432b41
487abc:	8b 5d fc             	mov    -0x4(%ebp),%ebx
487abf:	83 c3 10             	add    $0x10,%ebx
487ac2:	89 5d f4             	mov    %ebx,-0xc(%ebp)
487ac5:	8b 5d 08             	mov    0x8(%ebp),%ebx
487ac8:	8b 1b                	mov    (%ebx),%ebx
487aca:	81 c3 14 01 00 00    	add    $0x114,%ebx
487ad0:	89 5d f0             	mov    %ebx,-0x10(%ebp)
487ad3:	8b 5d fc             	mov    -0x4(%ebp),%ebx
487ad6:	83 c3 18             	add    $0x18,%ebx
487ad9:	89 5d ec             	mov    %ebx,-0x14(%ebp)
487adc:	c7 45 e8 00 00 00 00 	movl   $0x0,-0x18(%ebp)
487ae3:	6a 00                	push   $0x0
487ae5:	ff 75 e8             	push   -0x18(%ebp)
487ae8:	ff 75 ec             	push   -0x14(%ebp)
487aeb:	8b 5d f0             	mov    -0x10(%ebp),%ebx
487aee:	ff 33                	push   (%ebx)
487af0:	8b 5d f4             	mov    -0xc(%ebp),%ebx
487af3:	ff 33                	push   (%ebx)
487af5:	e8 37 61 fb ff       	call   0x43dc31
487afa:	8b 5d 08             	mov    0x8(%ebp),%ebx
487afd:	8b 1b                	mov    (%ebx),%ebx
487aff:	81 c3 18 01 00 00    	add    $0x118,%ebx
487b05:	89 5d f4             	mov    %ebx,-0xc(%ebp)
487b08:	8b 5d fc             	mov    -0x4(%ebp),%ebx
487b0b:	8b 5b 18             	mov    0x18(%ebx),%ebx
487b0e:	83 c3 0c             	add    $0xc,%ebx
487b11:	89 5d f0             	mov    %ebx,-0x10(%ebp)
487b14:	8b 5d f0             	mov    -0x10(%ebp),%ebx
487b17:	d9 03                	flds   (%ebx)
487b19:	dc 0d cb 08 50 00    	fmull  0x5008cb
487b1f:	dd 5d e8             	fstpl  -0x18(%ebp)
487b22:	68 10 00 00 00       	push   $0x10
487b27:	e8 72 8a 01 00       	call   0x4a059e
487b2c:	83 c4 04             	add    $0x4,%esp
487b2f:	89 45 e4             	mov    %eax,-0x1c(%ebp)
487b32:	8b d8                	mov    %eax,%ebx
487b34:	c7 03 00 00 00 00    	movl   $0x0,(%ebx)
487b3a:	c7 43 04 00 00 00 00 	movl   $0x0,0x4(%ebx)
487b41:	c7 43 08 00 00 00 00 	movl   $0x0,0x8(%ebx)
487b48:	c7 43 0c 00 00 00 00 	movl   $0x0,0xc(%ebx)
487b4f:	6a 00                	push   $0x0
487b51:	8d 45 e4             	lea    -0x1c(%ebp),%eax
487b54:	50                   	push   %eax
487b55:	68 09 00 00 00       	push   $0x9
487b5a:	68 09 00 00 00       	push   $0x9
487b5f:	dd 45 e8             	fldl   -0x18(%ebp)
487b62:	e8 88 96 f7 ff       	call   0x4011ef
487b67:	50                   	push   %eax
487b68:	8b 5d f4             	mov    -0xc(%ebp),%ebx
487b6b:	ff 33                	push   (%ebx)
487b6d:	e8 b1 5e f8 ff       	call   0x40da23
487b72:	89 45 e0             	mov    %eax,-0x20(%ebp)
487b75:	8b 5d e4             	mov    -0x1c(%ebp),%ebx
487b78:	53                   	push   %ebx
487b79:	e8 26 8a 01 00       	call   0x4a05a4
487b7e:	83 c4 04             	add    $0x4,%esp
487b81:	8b 45 e0             	mov    -0x20(%ebp),%eax
487b84:	50                   	push   %eax
487b85:	8b 5d f8             	mov    -0x8(%ebp),%ebx
487b88:	53                   	push   %ebx
487b89:	e8 16 8a 01 00       	call   0x4a05a4
487b8e:	83 c4 04             	add    $0x4,%esp
487b91:	58                   	pop    %eax
487b92:	89 45 f8             	mov    %eax,-0x8(%ebp)
487b95:	8b 5d fc             	mov    -0x4(%ebp),%ebx
487b98:	83 c3 10             	add    $0x10,%ebx
487b9b:	89 5d f4             	mov    %ebx,-0xc(%ebp)
487b9e:	8b 5d f8             	mov    -0x8(%ebp),%ebx
487ba1:	83 c3 08             	add    $0x8,%ebx
487ba4:	89 5d f0             	mov    %ebx,-0x10(%ebp)