465694:	8b 7d a0             	mov    -0x60(%ebp),%edi
465697:	8b cf                	mov    %edi,%ecx
465699:	ff 15 1c 79 4a 00    	call   *0x4a791c
46569f:	6a 04                	push   $0x4
4656a1:	8b cf                	mov    %edi,%ecx
4656a3:	ff 15 58 74 4a 00    	call   *0x4a7458
4656a9:	8d 45 dc             	lea    -0x24(%ebp),%eax
4656ac:	50                   	push   %eax
4656ad:	ff 77 20             	push   0x20(%edi)
4656b0:	ff 15 ec 7d 4a 00    	call   *0x4a7dec
4656b6:	8b 45 e8             	mov    -0x18(%ebp),%eax
4656b9:	8d 77 40             	lea    0x40(%edi),%esi
4656bc:	2b 45 e0             	sub    -0x20(%ebp),%eax
4656bf:	33 c9                	xor    %ecx,%ecx
4656c1:	51                   	push   %ecx
4656c2:	50                   	push   %eax
4656c3:	8b 45 e4             	mov    -0x1c(%ebp),%eax
4656c6:	2b 45 dc             	sub    -0x24(%ebp),%eax
4656c9:	50                   	push   %eax
4656ca:	51                   	push   %ecx
4656cb:	51                   	push   %ecx
4656cc:	ff 35 00 74 4a 00    	push   0x4a7400
4656d2:	8b ce                	mov    %esi,%ecx
4656d4:	ff 15 1c 79 4a 00    	call   *0x4a791c
4656da:	6a 04                	push   $0x4
4656dc:	8b ce                	mov    %esi,%ecx
4656de:	ff 15 58 74 4a 00    	call   *0x4a7458
4656e4:	ff b7 d0 00 00 00    	push   0xd0(%edi)
4656ea:	8b cf                	mov    %edi,%ecx
4656ec:	e8 b8 1d 00 00       	call   0x4674a9
4656f1:	ff b7 d4 00 00 00    	push   0xd4(%edi)
4656f7:	6a 00                	push   $0x0
4656f9:	68 43 04 00 00       	push   $0x443
4656fe:	ff 77 60             	push   0x60(%edi)
465701:	ff 15 f8 7d 4a 00    	call   *0x4a7df8
465707:	83 a7 bc 00 00 00 00 	andl   $0x0,0xbc(%edi)
46570e:	8b ce                	mov    %esi,%ecx
465710:	ff 15 34 77 4a 00    	call   *0x4a7734
465716:	8b b7 50 01 00 00    	mov    0x150(%edi),%esi
46571c:	83 be ac 00 00 00 00 	cmpl   $0x0,0xac(%esi)
465723:	75 11                	jne    0x465736
465725:	8d 8e 98 00 00 00    	lea    0x98(%esi),%ecx
46572b:	e8 d0 3f fd ff       	call   0x439700
465730:	89 86 ac 00 00 00    	mov    %eax,0xac(%esi)
465736:	33 c0                	xor    %eax,%eax
465738:	40                   	inc    %eax
465739:	e9 44 fd ff ff       	jmp    0x465482
46573e:	cc                   	int3
46573f:	cc                   	int3
465740:	8b ff                	mov    %edi,%edi
465742:	55                   	push   %ebp
465743:	8b ec                	mov    %esp,%ebp
465745:	8b 45 08             	mov    0x8(%ebp),%eax
465748:	50                   	push   %eax
465749:	83 48 2c 20          	orl    $0x20,0x2c(%eax)
46574d:	ff 15 58 76 4a 00    	call   *0x4a7658
465753:	5d                   	pop    %ebp
465754:	c2 04 00             	ret    $0x4
465757:	8b ff                	mov    %edi,%edi
465759:	55                   	push   %ebp
46575a:	8b ec                	mov    %esp,%ebp
46575c:	33 d2                	xor    %edx,%edx
46575e:	39 91 bc 00 00 00    	cmp    %edx,0xbc(%ecx)
465764:	75 1b                	jne    0x465781
465766:	33 c0                	xor    %eax,%eax
465768:	39 45 0c             	cmp    %eax,0xc(%ebp)
46576b:	0f 95 c0             	setne  %al
46576e:	8d 04 85 01 00 00 00 	lea    0x1(,%eax,4),%eax
465775:	50                   	push   %eax
465776:	52                   	push   %edx
465777:	52                   	push   %edx
465778:	ff 71 60             	push   0x60(%ecx)
46577b:	ff 15 98 7d 4a 00    	call   *0x4a7d98
465781:	5d                   	pop    %ebp
465782:	c2 08 00             	ret    $0x8
465785:	8b ff                	mov    %edi,%edi
465787:	55                   	push   %ebp
465788:	8b ec                	mov    %esp,%ebp
46578a:	8b 45 08             	mov    0x8(%ebp),%eax
46578d:	56                   	push   %esi
46578e:	50                   	push   %eax
46578f:	8b f1                	mov    %ecx,%esi
465791:	6a 00                	push   $0x0
465793:	68 43 04 00 00       	push   $0x443
465798:	ff 76 60             	push   0x60(%esi)
46579b:	89 86 d4 00 00 00    	mov    %eax,0xd4(%esi)
4657a1:	ff 15 f8 7d 4a 00    	call   *0x4a7df8
4657a7:	83 be b4 00 00 00 00 	cmpl   $0x0,0xb4(%esi)
4657ae:	75 13                	jne    0x4657c3
4657b0:	6a 00                	push   $0x0
4657b2:	8b ce                	mov    %esi,%ecx
4657b4:	c7 86 b4 00 00 00 01 	movl   $0x1,0xb4(%esi)
4657bb:	00 00 00
4657be:	e8 05 00 00 00       	call   0x4657c8
4657c3:	5e                   	pop    %esi
4657c4:	5d                   	pop    %ebp
4657c5:	c2 04 00             	ret    $0x4
4657c8:	8b ff                	mov    %edi,%edi
4657ca:	55                   	push   %ebp
4657cb:	8b ec                	mov    %esp,%ebp
4657cd:	8b 45 08             	mov    0x8(%ebp),%eax
4657d0:	56                   	push   %esi
4657d1:	8b f1                	mov    %ecx,%esi
4657d3:	57                   	push   %edi
4657d4:	83 be b4 00 00 00 00 	cmpl   $0x0,0xb4(%esi)
4657db:	0f 85 89 00 00 00    	jne    0x46586a
4657e1:	85 c0                	test   %eax,%eax
4657e3:	0f 85 89 00 00 00    	jne    0x465872
4657e9:	33 ff                	xor    %edi,%edi
4657eb:	83 be b8 00 00 00 00 	cmpl   $0x0,0xb8(%esi)
4657f2:	53                   	push   %ebx
4657f3:	89 86 80 00 00 00    	mov    %eax,0x80(%esi)
4657f9:	8d 9e 54 01 00 00    	lea    0x154(%esi),%ebx
4657ff:	89 86 b4 00 00 00    	mov    %eax,0xb4(%esi)
465805:	74 15                	je     0x46581c
465807:	8b cb                	mov    %ebx,%ecx
465809:	ff 15 28 75 4a 00    	call   *0x4a7528
46580f:	83 a6 b8 00 00 00 00 	andl   $0x0,0xb8(%esi)
465816:	8b 86 b4 00 00 00    	mov    0xb4(%esi),%eax
46581c:	85 c0                	test   %eax,%eax
46581e:	75 1f                	jne    0x46583f
465820:	ff b6 d4 00 00 00    	push   0xd4(%esi)
465826:	ff 15 40 71 4a 00    	call   *0x4a7140
46582c:	50                   	push   %eax
46582d:	8b cb                	mov    %ebx,%ecx
46582f:	ff 15 8c 75 4a 00    	call   *0x4a758c
465835:	c7 86 b8 00 00 00 01 	movl   $0x1,0xb8(%esi)
46583c:	00 00 00
46583f:	5b                   	pop    %ebx
465840:	85 ff                	test   %edi,%edi
465842:	74 20                	je     0x465864
465844:	6a 01                	push   $0x1
465846:	6a 00                	push   $0x0
465848:	ff 76 20             	push   0x20(%esi)
46584b:	ff 15 d8 7d 4a 00    	call   *0x4a7dd8
465851:	ff 76 20             	push   0x20(%esi)
465854:	ff 15 a0 7d 4a 00    	call   *0x4a7da0
46585a:	6a 01                	push   $0x1
46585c:	51                   	push   %ecx
46585d:	8b ce                	mov    %esi,%ecx
46585f:	e8 f3 fe ff ff       	call   0x465757
465864:	5f                   	pop    %edi
465865:	5e                   	pop    %esi
465866:	5d                   	pop    %ebp
465867:	c2 04 00             	ret    $0x4
46586a:	85 c0                	test   %eax,%eax
46586c:	0f 85 77 ff ff ff    	jne    0x4657e9
465872:	33 ff                	xor    %edi,%edi
465874:	47                   	inc    %edi
465875:	e9 71 ff ff ff       	jmp    0x4657eb
46587a:	8b ff                	mov    %edi,%edi
46587c:	55                   	push   %ebp
46587d:	8b ec                	mov    %esp,%ebp
46587f:	83 ec 70             	sub    $0x70,%esp
465882:	a1 dc 38 4a 00       	mov    0x4a38dc,%eax
465887:	33 c5                	xor    %ebp,%eax
465889:	89 45 f8             	mov    %eax,-0x8(%ebp)
46588c:	53                   	push   %ebx
46588d:	56                   	push   %esi
46588e:	8b 75 08             	mov    0x8(%ebp),%esi
465891:	8d 45 e8             	lea    -0x18(%ebp),%eax
465894:	8b d9                	mov    %ecx,%ebx
465896:	89 75 a8             	mov    %esi,-0x58(%ebp)
465899:	57                   	push   %edi
46589a:	50                   	push   %eax
46589b:	89 5d a4             	mov    %ebx,-0x5c(%ebp)
46589e:	ff 73 60             	push   0x60(%ebx)
4658a1:	ff 15 e8 7d 4a 00    	call   *0x4a7de8
4658a7:	8b 83 50 01 00 00    	mov    0x150(%ebx),%eax
4658ad:	6a 58                	push   $0x58
4658af:	ff 76 08             	push   0x8(%esi)
4658b2:	dd 40 58             	fldl   0x58(%eax)
4658b5:	dd 5d 9c             	fstpl  -0x64(%ebp)
4658b8:	ff 15 64 71 4a 00    	call   *0x4a7164
4658be:	8b 4d f0             	mov    -0x10(%ebp),%ecx
4658c1:	2b 4d e8             	sub    -0x18(%ebp),%ecx
4658c4:	50                   	push   %eax
4658c5:	68 a0 05 00 00       	push   $0x5a0
4658ca:	51                   	push   %ecx
4658cb:	ff 15 20 72 4a 00    	call   *0x4a7220
4658d1:	6a 5a                	push   $0x5a
4658d3:	ff 76 08             	push   0x8(%esi)
4658d6:	89 45 b0             	mov    %eax,-0x50(%ebp)
4658d9:	ff 15 64 71 4a 00    	call   *0x4a7164
4658df:	db 45 b0             	fildl  -0x50(%ebp)
4658e2:	8b 7d f4             	mov    -0xc(%ebp),%edi
4658e5:	8b f0                	mov    %eax,%esi
4658e7:	2b 7d ec             	sub    -0x14(%ebp),%edi
4658ea:	dd 5d ac             	fstpl  -0x54(%ebp)
4658ed:	dd 45 ac             	fldl   -0x54(%ebp)
4658f0:	dc 75 9c             	fdivl  -0x64(%ebp)
4658f3:	e8 29 b7 02 00       	call   0x491021
4658f8:	56                   	push   %esi
4658f9:	68 a0 05 00 00       	push   $0x5a0
4658fe:	57                   	push   %edi
4658ff:	8b d8                	mov    %eax,%ebx
465901:	ff 15 20 72 4a 00    	call   *0x4a7220
465907:	89 45 b0             	mov    %eax,-0x50(%ebp)
46590a:	db 45 b0             	fildl  -0x50(%ebp)
46590d:	dd 5d ac             	fstpl  -0x54(%ebp)
465910:	dd 45 ac             	fldl   -0x54(%ebp)
465913:	dc 75 9c             	fdivl  -0x64(%ebp)
465916:	e8 06 b7 02 00       	call   0x491021
46591b:	8b 75 a4             	mov    -0x5c(%ebp),%esi
46591e:	8b 7d a8             	mov    -0x58(%ebp),%edi
465921:	83 4d e4 ff          	orl    $0xffffffff,-0x1c(%ebp)
465925:	6a ec                	push   $0xffffffec
465927:	ff 76 20             	push   0x20(%esi)
46592a:	8b 4f 04             	mov    0x4(%edi),%ecx
46592d:	89 45 b0             	mov    %eax,-0x50(%ebp)
465930:	33 c0                	xor    %eax,%eax
465932:	89 4d bc             	mov    %ecx,-0x44(%ebp)
465935:	89 4d b8             	mov    %ecx,-0x48(%ebp)
465938:	89 45 e0             	mov    %eax,-0x20(%ebp)
46593b:	89 45 d0             	mov    %eax,-0x30(%ebp)
46593e:	89 45 c0             	mov    %eax,-0x40(%ebp)
465941:	89 45 d4             	mov    %eax,-0x2c(%ebp)
465944:	89 5d d8             	mov    %ebx,-0x28(%ebp)
465947:	89 5d c8             	mov    %ebx,-0x38(%ebp)
46594a:	ff 15 30 7d 4a 00    	call   *0x4a7d30
465950:	a9 00 00 40 00       	test   $0x400000,%eax
465955:	74 21                	je     0x465978
465957:	6a 58                	push   $0x58
465959:	ff 77 08             	push   0x8(%edi)
46595c:	ff 15 64 71 4a 00    	call   *0x4a7164
465962:	50                   	push   %eax
465963:	68 a0 05 00 00       	push   $0x5a0
465968:	6a 01                	push   $0x1
46596a:	ff 15 20 72 4a 00    	call   *0x4a7220
465970:	2b d8                	sub    %eax,%ebx
465972:	89 5d d8             	mov    %ebx,-0x28(%ebp)
465975:	89 5d c8             	mov    %ebx,-0x38(%ebp)
465978:	8d 45 94             	lea    -0x6c(%ebp),%eax
46597b:	33 db                	xor    %ebx,%ebx
46597d:	50                   	push   %eax
46597e:	53                   	push   %ebx
46597f:	68 dd 04 00 00       	push   $0x4dd
465984:	ff 76 60             	push   0x60(%esi)
465987:	ff 15 f8 7d 4a 00    	call   *0x4a7df8
46598d:	6a 5a                	push   $0x5a
46598f:	ff 77 08             	push   0x8(%edi)
465992:	ff 15 64 71 4a 00    	call   *0x4a7164
465998:	50                   	push   %eax
465999:	68 a0 05 00 00       	push   $0x5a0
46599e:	ff 75 98             	push   -0x68(%ebp)
4659a1:	ff 15 20 72 4a 00    	call   *0x4a7220
4659a7:	f7 d8                	neg    %eax
4659a9:	8d 4e 40             	lea    0x40(%esi),%ecx
4659ac:	89 45 c4             	mov    %eax,-0x3c(%ebp)
4659af:	8b 45 b0             	mov    -0x50(%ebp),%eax
4659b2:	53                   	push   %ebx
4659b3:	05 d0 07 00 00       	add    $0x7d0,%eax
4659b8:	6a 20                	push   $0x20
4659ba:	53                   	push   %ebx
4659bb:	89 45 dc             	mov    %eax,-0x24(%ebp)
4659be:	89 45 cc             	mov    %eax,-0x34(%ebp)
4659c1:	ff 15 fc 73 4a 00    	call   *0x4a73fc
4659c7:	8d 45 b8             	lea    -0x48(%ebp),%eax
4659ca:	50                   	push   %eax
4659cb:	6a 01                	push   $0x1
4659cd:	68 39 04 00 00       	push   $0x439
4659d2:	ff 76 60             	push   0x60(%esi)
4659d5:	ff 15 f8 7d 4a 00    	call   *0x4a7df8
4659db:	8b 4d f8             	mov    -0x8(%ebp),%ecx
4659de:	5f                   	pop    %edi
4659df:	5e                   	pop    %esi
4659e0:	33 cd                	xor    %ebp,%ecx
4659e2:	5b                   	pop    %ebx
4659e3:	e8 18 a5 02 00       	call   0x48ff00
4659e8:	c9                   	leave
4659e9:	c2 04 00             	ret    $0x4
4659ec:	6a 1c                	push   $0x1c
4659ee:	b8 ba 4f 49 00       	mov    $0x494fba,%eax
4659f3:	e8 db aa 02 00       	call   0x4904d3
4659f8:	8b d9                	mov    %ecx,%ebx
4659fa:	83 65 ec 00          	andl   $0x0,-0x14(%ebp)
4659fe:	c7 45 e8 e8 1a 40 00 	movl   $0x401ae8,-0x18(%ebp)
465a05:	8b 75 0c             	mov    0xc(%ebp),%esi
465a08:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
465a0c:	56                   	push   %esi
465a0d:	ff 15 30 71 4a 00    	call   *0x4a7130
465a13:	50                   	push   %eax
465a14:	8d 4d e8             	lea    -0x18(%ebp),%ecx
465a17:	ff 15 8c 75 4a 00    	call   *0x4a758c
465a1d:	8b 7d 08             	mov    0x8(%ebp),%edi
465a20:	8d 45 e8             	lea    -0x18(%ebp),%eax
465a23:	50                   	push   %eax
465a24:	8b cf                	mov    %edi,%ecx
465a26:	ff 15 fc 76 4a 00    	call   *0x4a76fc
465a2c:	83 bb b4 00 00 00 00 	cmpl   $0x0,0xb4(%ebx)
465a33:	75 0f                	jne    0x465a44
465a35:	8d 83 54 01 00 00    	lea    0x154(%ebx),%eax
465a3b:	8b cf                	mov    %edi,%ecx
465a3d:	50                   	push   %eax
465a3e:	56                   	push   %esi
465a3f:	e8 a6 93 fc ff       	call   0x42edea
465a44:	ff 76 04             	push   0x4(%esi)
465a47:	8b 07                	mov    (%edi),%eax
465a49:	8d 4d e0             	lea    -0x20(%ebp),%ecx
465a4c:	ff 36                	push   (%esi)
465a4e:	51                   	push   %ecx
465a4f:	8b 70 40             	mov    0x40(%eax),%esi
465a52:	8b ce                	mov    %esi,%ecx
465a54:	ff 15 2c 81 4a 00    	call   *0x4a812c
465a5a:	8b cf                	mov    %edi,%ecx
465a5c:	ff d6                	call   *%esi
465a5e:	57                   	push   %edi
465a5f:	8b cb                	mov    %ebx,%ecx
465a61:	e8 14 fe ff ff       	call   0x46587a
465a66:	ff 75 e4             	push   -0x1c(%ebp)
465a69:	8b 07                	mov    (%edi),%eax
465a6b:	8d 4d d8             	lea    -0x28(%ebp),%ecx
465a6e:	ff 75 e0             	push   -0x20(%ebp)
465a71:	51                   	push   %ecx
465a72:	8b 70 40             	mov    0x40(%eax),%esi
465a75:	8b ce                	mov    %esi,%ecx
465a77:	ff 15 2c 81 4a 00    	call   *0x4a812c
465a7d:	8b cf                	mov    %edi,%ecx
465a7f:	ff d6                	call   *%esi
465a81:	6a 00                	push   $0x0
465a83:	8b cf                	mov    %edi,%ecx
465a85:	ff 15 fc 76 4a 00    	call   *0x4a76fc
465a8b:	8d 4d e8             	lea    -0x18(%ebp),%ecx
465a8e:	ff 15 28 75 4a 00    	call   *0x4a7528
465a94:	8d 4d e8             	lea    -0x18(%ebp),%ecx
465a97:	c7 45 e8 e8 1a 40 00 	movl   $0x401ae8,-0x18(%ebp)
465a9e:	e8 30 a3 fb ff       	call   0x41fdd3
465aa3:	e8 f9 a9 02 00       	call   0x4904a1
465aa8:	c2 08 00             	ret    $0x8
465aab:	6a 30                	push   $0x30
465aad:	b8 e6 4f 49 00       	mov    $0x494fe6,%eax
465ab2:	e8 4f aa 02 00       	call   0x490506
465ab7:	8b d9                	mov    %ecx,%ebx
465ab9:	8b 45 08             	mov    0x8(%ebp),%eax
465abc:	89 45 c4             	mov    %eax,-0x3c(%ebp)
465abf:	8d 45 e0             	lea    -0x20(%ebp),%eax
465ac2:	50                   	push   %eax
465ac3:	ff 73 20             	push   0x20(%ebx)
465ac6:	ff 15 ec 7d 4a 00    	call   *0x4a7dec
465acc:	8b 45 e8             	mov    -0x18(%ebp),%eax
465acf:	2b 45 e0             	sub    -0x20(%ebp),%eax
465ad2:	ff 73 60             	push   0x60(%ebx)
465ad5:	89 45 dc             	mov    %eax,-0x24(%ebp)
465ad8:	89 45 c8             	mov    %eax,-0x38(%ebp)
465adb:	8b 45 ec             	mov    -0x14(%ebp),%eax
465ade:	2b 45 e4             	sub    -0x1c(%ebp),%eax
465ae1:	89 45 d8             	mov    %eax,-0x28(%ebp)
465ae4:	ff 15 54 7d 4a 00    	call   *0x4a7d54
465aea:	50                   	push   %eax
465aeb:	ff 15 b0 76 4a 00    	call   *0x4a76b0