477914:	dc 05 52 ea 4d 00    	faddl  0x4dea52
47791a:	dd 5d cc             	fstpl  -0x34(%ebp)
47791d:	ff 75 f0             	push   -0x10(%ebp)
477920:	dd 45 cc             	fldl   -0x34(%ebp)
477923:	e8 c7 98 f8 ff       	call   0x4011ef
477928:	50                   	push   %eax
477929:	e8 89 a5 f8 ff       	call   0x401eb7
47792e:	db 45 0c             	fildl  0xc(%ebp)
477931:	dd 5d d4             	fstpl  -0x2c(%ebp)
477934:	dd 45 d4             	fldl   -0x2c(%ebp)
477937:	dc 05 5a ea 4d 00    	faddl  0x4dea5a
47793d:	dd 5d cc             	fstpl  -0x34(%ebp)
477940:	ff 75 ec             	push   -0x14(%ebp)
477943:	dd 45 cc             	fldl   -0x34(%ebp)
477946:	e8 a4 98 f8 ff       	call   0x4011ef
47794b:	50                   	push   %eax
47794c:	e8 66 a5 f8 ff       	call   0x401eb7
477951:	b8 00 00 00 00       	mov    $0x0,%eax
477956:	e9 00 00 00 00       	jmp    0x47795b
47795b:	50                   	push   %eax
47795c:	8b 5d fc             	mov    -0x4(%ebp),%ebx
47795f:	53                   	push   %ebx
477960:	e8 3f 8c 02 00       	call   0x4a05a4
477965:	83 c4 04             	add    $0x4,%esp
477968:	58                   	pop    %eax
477969:	8b e5                	mov    %ebp,%esp
47796b:	5d                   	pop    %ebp
47796c:	c2 08 00             	ret    $0x8
47796f:	55                   	push   %ebp
477970:	8b ec                	mov    %esp,%ebp
477972:	81 ec 40 00 00 00    	sub    $0x40,%esp
477978:	8b 5d 08             	mov    0x8(%ebp),%ebx
47797b:	8b 1b                	mov    (%ebx),%ebx
47797d:	83 c3 04             	add    $0x4,%ebx
477980:	89 5d fc             	mov    %ebx,-0x4(%ebp)
477983:	8b 5d fc             	mov    -0x4(%ebp),%ebx
477986:	c7 03 01 00 00 00    	movl   $0x1,(%ebx)
47798c:	8b 5d 08             	mov    0x8(%ebp),%ebx
47798f:	8b 1b                	mov    (%ebx),%ebx
477991:	83 c3 10             	add    $0x10,%ebx
477994:	89 5d fc             	mov    %ebx,-0x4(%ebp)
477997:	8b 5d 08             	mov    0x8(%ebp),%ebx
47799a:	8b 1b                	mov    (%ebx),%ebx
47799c:	83 c3 08             	add    $0x8,%ebx
47799f:	89 5d f8             	mov    %ebx,-0x8(%ebp)
4779a2:	c7 45 f4 00 00 00 00 	movl   $0x0,-0xc(%ebp)
4779a9:	6a 00                	push   $0x0
4779ab:	ff 75 f4             	push   -0xc(%ebp)
4779ae:	c7 45 f0 00 00 00 00 	movl   $0x0,-0x10(%ebp)
4779b5:	6a 00                	push   $0x0
4779b7:	ff 75 f0             	push   -0x10(%ebp)
4779ba:	c7 45 ec 00 00 00 00 	movl   $0x0,-0x14(%ebp)
4779c1:	6a 00                	push   $0x0
4779c3:	ff 75 ec             	push   -0x14(%ebp)
4779c6:	c7 45 e8 00 00 00 00 	movl   $0x0,-0x18(%ebp)
4779cd:	6a 00                	push   $0x0
4779cf:	ff 75 e8             	push   -0x18(%ebp)
4779d2:	c7 45 e4 00 00 00 00 	movl   $0x0,-0x1c(%ebp)
4779d9:	6a 00                	push   $0x0
4779db:	ff 75 e4             	push   -0x1c(%ebp)
4779de:	c7 45 e0 00 00 00 00 	movl   $0x0,-0x20(%ebp)
4779e5:	6a 00                	push   $0x0
4779e7:	ff 75 e0             	push   -0x20(%ebp)
4779ea:	c7 45 dc 00 00 00 00 	movl   $0x0,-0x24(%ebp)
4779f1:	6a 00                	push   $0x0
4779f3:	ff 75 dc             	push   -0x24(%ebp)
4779f6:	c7 45 d8 00 00 00 00 	movl   $0x0,-0x28(%ebp)
4779fd:	6a 00                	push   $0x0
4779ff:	ff 75 d8             	push   -0x28(%ebp)
477a02:	c7 45 d4 00 00 00 00 	movl   $0x0,-0x2c(%ebp)
477a09:	6a 00                	push   $0x0
477a0b:	ff 75 d4             	push   -0x2c(%ebp)
477a0e:	c7 45 d0 00 00 00 00 	movl   $0x0,-0x30(%ebp)
477a15:	6a 00                	push   $0x0
477a17:	ff 75 d0             	push   -0x30(%ebp)
477a1a:	c7 45 cc 00 00 00 00 	movl   $0x0,-0x34(%ebp)
477a21:	6a 00                	push   $0x0
477a23:	ff 75 cc             	push   -0x34(%ebp)
477a26:	c7 45 c8 00 00 00 00 	movl   $0x0,-0x38(%ebp)
477a2d:	6a 00                	push   $0x0
477a2f:	ff 75 c8             	push   -0x38(%ebp)
477a32:	c7 45 c4 00 00 00 00 	movl   $0x0,-0x3c(%ebp)
477a39:	6a 00                	push   $0x0
477a3b:	ff 75 c4             	push   -0x3c(%ebp)
477a3e:	c7 45 c0 00 00 00 00 	movl   $0x0,-0x40(%ebp)
477a45:	6a 00                	push   $0x0
477a47:	ff 75 c0             	push   -0x40(%ebp)
477a4a:	6a 01                	push   $0x1
477a4c:	8b 5d f8             	mov    -0x8(%ebp),%ebx
477a4f:	ff 33                	push   (%ebx)
477a51:	68 02 00 00 00       	push   $0x2
477a56:	8b 5d fc             	mov    -0x4(%ebp),%ebx
477a59:	ff 33                	push   (%ebx)
477a5b:	e8 17 5f fb ff       	call   0x42d977
477a60:	8b 5d 08             	mov    0x8(%ebp),%ebx
477a63:	8b 1b                	mov    (%ebx),%ebx
477a65:	83 c3 10             	add    $0x10,%ebx
477a68:	89 5d fc             	mov    %ebx,-0x4(%ebp)
477a6b:	8b 5d fc             	mov    -0x4(%ebp),%ebx
477a6e:	ff 33                	push   (%ebx)
477a70:	e8 7b b2 fb ff       	call   0x432cf0
477a75:	8b 5d 08             	mov    0x8(%ebp),%ebx
477a78:	8b 1b                	mov    (%ebx),%ebx
477a7a:	83 c3 5c             	add    $0x5c,%ebx
477a7d:	89 5d fc             	mov    %ebx,-0x4(%ebp)
477a80:	8b 5d fc             	mov    -0x4(%ebp),%ebx
477a83:	c7 03 00 00 00 00    	movl   $0x0,(%ebx)
477a89:	8b 5d 08             	mov    0x8(%ebp),%ebx
477a8c:	8b 1b                	mov    (%ebx),%ebx
477a8e:	83 c3 1c             	add    $0x1c,%ebx
477a91:	89 5d fc             	mov    %ebx,-0x4(%ebp)
477a94:	89 65 f8             	mov    %esp,-0x8(%ebp)
477a97:	68 00 00 00 00       	push   $0x0
477a9c:	68 00 00 00 00       	push   $0x0
477aa1:	68 10 00 00 00       	push   $0x10
477aa6:	8b 5d fc             	mov    -0x4(%ebp),%ebx
477aa9:	ff 33                	push   (%ebx)
477aab:	33 c0                	xor    %eax,%eax
477aad:	ff 15 f0 32 4b 00    	call   *0x4b32f0
477ab3:	90                   	nop
477ab4:	90                   	nop
477ab5:	39 65 f8             	cmp    %esp,-0x8(%ebp)
477ab8:	74 17                	je     0x477ad1
477aba:	68 80 00 00 00       	push   $0x80
477abf:	68 8b cf 03 04       	push   $0x403cf8b
477ac4:	68 06 00 00 00       	push   $0x6
477ac9:	e8 dc 8a 02 00       	call   0x4a05aa
477ace:	83 c4 0c             	add    $0xc,%esp
477ad1:	8b 5d 08             	mov    0x8(%ebp),%ebx
477ad4:	8b 1b                	mov    (%ebx),%ebx
477ad6:	81 c3 88 00 00 00    	add    $0x88,%ebx
477adc:	89 5d fc             	mov    %ebx,-0x4(%ebp)
477adf:	8b 5d fc             	mov    -0x4(%ebp),%ebx
477ae2:	ff 33                	push   (%ebx)
477ae4:	e8 c0 04 00 00       	call   0x477fa9
477ae9:	ff 75 08             	push   0x8(%ebp)
477aec:	8b 04 24             	mov    (%esp),%eax
477aef:	8b 00                	mov    (%eax),%eax
477af1:	8b 00                	mov    (%eax),%eax
477af3:	ff 90 18 01 00 00    	call   *0x118(%eax)
477af9:	8b 5d 08             	mov    0x8(%ebp),%ebx
477afc:	8b 1b                	mov    (%ebx),%ebx
477afe:	81 c3 90 00 00 00    	add    $0x90,%ebx
477b04:	89 5d fc             	mov    %ebx,-0x4(%ebp)
477b07:	8b 5d fc             	mov    -0x4(%ebp),%ebx
477b0a:	ff 33                	push   (%ebx)
477b0c:	e8 13 db f8 ff       	call   0x405624
477b11:	6a 01                	push   $0x1
477b13:	68 01 00 00 00       	push   $0x1
477b18:	68 00 00 00 00       	push   $0x0
477b1d:	ff 75 08             	push   0x8(%ebp)
477b20:	8b 04 24             	mov    (%esp),%eax
477b23:	8b 00                	mov    (%eax),%eax
477b25:	8b 00                	mov    (%eax),%eax
477b27:	ff 50 54             	call   *0x54(%eax)
477b2a:	8b 5d 08             	mov    0x8(%ebp),%ebx
477b2d:	8b 1b                	mov    (%ebx),%ebx
477b2f:	81 c3 d8 00 00 00    	add    $0xd8,%ebx
477b35:	89 5d fc             	mov    %ebx,-0x4(%ebp)
477b38:	8b 5d fc             	mov    -0x4(%ebp),%ebx
477b3b:	ff 33                	push   (%ebx)
477b3d:	e8 d6 b5 fb ff       	call   0x433118
477b42:	8b 5d 08             	mov    0x8(%ebp),%ebx
477b45:	8b 1b                	mov    (%ebx),%ebx
477b47:	81 c3 c8 00 00 00    	add    $0xc8,%ebx
477b4d:	89 5d fc             	mov    %ebx,-0x4(%ebp)
477b50:	ff 75 fc             	push   -0x4(%ebp)
477b53:	e8 8d f3 f8 ff       	call   0x406ee5
477b58:	8b 5d 08             	mov    0x8(%ebp),%ebx
477b5b:	8b 1b                	mov    (%ebx),%ebx
477b5d:	81 c3 94 00 00 00    	add    $0x94,%ebx
477b63:	89 5d fc             	mov    %ebx,-0x4(%ebp)
477b66:	ff 75 fc             	push   -0x4(%ebp)
477b69:	e8 77 f3 f8 ff       	call   0x406ee5
477b6e:	8b 5d 08             	mov    0x8(%ebp),%ebx
477b71:	8b 1b                	mov    (%ebx),%ebx
477b73:	83 c3 48             	add    $0x48,%ebx
477b76:	89 5d fc             	mov    %ebx,-0x4(%ebp)
477b79:	8b 5d fc             	mov    -0x4(%ebp),%ebx
477b7c:	83 3b 00             	cmpl   $0x0,(%ebx)
477b7f:	0f 84 13 00 00 00    	je     0x477b98
477b85:	8b 5d 08             	mov    0x8(%ebp),%ebx
477b88:	8b 1b                	mov    (%ebx),%ebx
477b8a:	83 c3 48             	add    $0x48,%ebx
477b8d:	89 5d fc             	mov    %ebx,-0x4(%ebp)
477b90:	ff 75 fc             	push   -0x4(%ebp)
477b93:	e8 4d f3 f8 ff       	call   0x406ee5
477b98:	8b 5d 08             	mov    0x8(%ebp),%ebx
477b9b:	8b 1b                	mov    (%ebx),%ebx
477b9d:	83 c3 0c             	add    $0xc,%ebx
477ba0:	89 5d fc             	mov    %ebx,-0x4(%ebp)
477ba3:	8b 5d fc             	mov    -0x4(%ebp),%ebx
477ba6:	83 3b 00             	cmpl   $0x0,(%ebx)
477ba9:	0f 85 13 00 00 00    	jne    0x477bc2
477baf:	8b 5d 08             	mov    0x8(%ebp),%ebx
477bb2:	8b 1b                	mov    (%ebx),%ebx
477bb4:	83 c3 60             	add    $0x60,%ebx
477bb7:	89 5d fc             	mov    %ebx,-0x4(%ebp)
477bba:	ff 75 fc             	push   -0x4(%ebp)
477bbd:	e8 61 18 fa ff       	call   0x419423
477bc2:	8b 5d 08             	mov    0x8(%ebp),%ebx
477bc5:	8b 1b                	mov    (%ebx),%ebx
477bc7:	83 c3 40             	add    $0x40,%ebx
477bca:	89 5d fc             	mov    %ebx,-0x4(%ebp)
477bcd:	89 65 f8             	mov    %esp,-0x8(%ebp)
477bd0:	8b 5d fc             	mov    -0x4(%ebp),%ebx
477bd3:	ff 33                	push   (%ebx)
477bd5:	33 c0                	xor    %eax,%eax
477bd7:	ff 15 10 30 4b 00    	call   *0x4b3010
477bdd:	90                   	nop
477bde:	90                   	nop
477bdf:	39 65 f8             	cmp    %esp,-0x8(%ebp)
477be2:	74 17                	je     0x477bfb
477be4:	68 0d 02 00 00       	push   $0x20d
477be9:	68 8b cf 03 04       	push   $0x403cf8b
477bee:	68 06 00 00 00       	push   $0x6
477bf3:	e8 b2 89 02 00       	call   0x4a05aa
477bf8:	83 c4 0c             	add    $0xc,%esp
477bfb:	8b 5d 08             	mov    0x8(%ebp),%ebx
477bfe:	8b 1b                	mov    (%ebx),%ebx
477c00:	81 c3 cc 00 00 00    	add    $0xcc,%ebx
477c06:	89 5d fc             	mov    %ebx,-0x4(%ebp)
477c09:	89 65 f8             	mov    %esp,-0x8(%ebp)
477c0c:	8b 5d fc             	mov    -0x4(%ebp),%ebx
477c0f:	ff 33                	push   (%ebx)
477c11:	33 c0                	xor    %eax,%eax
477c13:	ff 15 10 30 4b 00    	call   *0x4b3010
477c19:	90                   	nop
477c1a:	90                   	nop
477c1b:	39 65 f8             	cmp    %esp,-0x8(%ebp)
477c1e:	74 17                	je     0x477c37
477c20:	68 27 02 00 00       	push   $0x227
477c25:	68 8b cf 03 04       	push   $0x403cf8b
477c2a:	68 06 00 00 00       	push   $0x6
477c2f:	e8 76 89 02 00       	call   0x4a05aa
477c34:	83 c4 0c             	add    $0xc,%esp
477c37:	8b 5d 08             	mov    0x8(%ebp),%ebx
477c3a:	8b 1b                	mov    (%ebx),%ebx
477c3c:	81 c3 d4 00 00 00    	add    $0xd4,%ebx
477c42:	89 5d fc             	mov    %ebx,-0x4(%ebp)
477c45:	8b 5d fc             	mov    -0x4(%ebp),%ebx
477c48:	83 3b 00             	cmpl   $0x0,(%ebx)
477c4b:	0f 84 16 00 00 00    	je     0x477c67
477c51:	8b 5d 08             	mov    0x8(%ebp),%ebx
477c54:	8b 1b                	mov    (%ebx),%ebx
477c56:	81 c3 d4 00 00 00    	add    $0xd4,%ebx
477c5c:	89 5d fc             	mov    %ebx,-0x4(%ebp)
477c5f:	ff 75 fc             	push   -0x4(%ebp)
477c62:	e8 99 fc fd ff       	call   0x457900
477c67:	8b 5d 08             	mov    0x8(%ebp),%ebx
477c6a:	8b 1b                	mov    (%ebx),%ebx
477c6c:	83 c3 6c             	add    $0x6c,%ebx
477c6f:	89 5d fc             	mov    %ebx,-0x4(%ebp)
477c72:	8b 5d 08             	mov    0x8(%ebp),%ebx
477c75:	8b 1b                	mov    (%ebx),%ebx
477c77:	83 c3 78             	add    $0x78,%ebx
477c7a:	89 5d f8             	mov    %ebx,-0x8(%ebp)
477c7d:	8b 5d 08             	mov    0x8(%ebp),%ebx
477c80:	8b 1b                	mov    (%ebx),%ebx
477c82:	83 c3 70             	add    $0x70,%ebx
477c85:	89 5d f4             	mov    %ebx,-0xc(%ebp)
477c88:	ff 75 f4             	push   -0xc(%ebp)
477c8b:	ff 75 f8             	push   -0x8(%ebp)
477c8e:	ff 75 fc             	push   -0x4(%ebp)
477c91:	e8 41 05 00 00       	call   0x4781d7
477c96:	8b 5d 08             	mov    0x8(%ebp),%ebx
477c99:	8b 1b                	mov    (%ebx),%ebx
477c9b:	83 c3 7c             	add    $0x7c,%ebx
477c9e:	89 5d fc             	mov    %ebx,-0x4(%ebp)
477ca1:	8b 5d 08             	mov    0x8(%ebp),%ebx
477ca4:	8b 1b                	mov    (%ebx),%ebx
477ca6:	81 c3 80 00 00 00    	add    $0x80,%ebx
477cac:	89 5d f8             	mov    %ebx,-0x8(%ebp)
477caf:	ff 75 f8             	push   -0x8(%ebp)
477cb2:	ff 75 fc             	push   -0x4(%ebp)
477cb5:	e8 a7 87 fb ff       	call   0x430461
477cba:	8b 5d 08             	mov    0x8(%ebp),%ebx
477cbd:	8b 1b                	mov    (%ebx),%ebx
477cbf:	83 c3 40             	add    $0x40,%ebx
477cc2:	89 5d fc             	mov    %ebx,-0x4(%ebp)
477cc5:	8b 5d 08             	mov    0x8(%ebp),%ebx
477cc8:	8b 1b                	mov    (%ebx),%ebx
477cca:	81 c3 cc 00 00 00    	add    $0xcc,%ebx
477cd0:	89 5d f8             	mov    %ebx,-0x8(%ebp)
477cd3:	8b 5d 08             	mov    0x8(%ebp),%ebx
477cd6:	8b 1b                	mov    (%ebx),%ebx
477cd8:	81 c3 d4 00 00 00    	add    $0xd4,%ebx
477cde:	89 5d f4             	mov    %ebx,-0xc(%ebp)
477ce1:	8b 5d 08             	mov    0x8(%ebp),%ebx
477ce4:	8b 1b                	mov    (%ebx),%ebx
477ce6:	81 c3 d8 00 00 00    	add    $0xd8,%ebx
477cec:	89 5d f0             	mov    %ebx,-0x10(%ebp)
477cef:	8b 5d fc             	mov    -0x4(%ebp),%ebx
477cf2:	c7 03 00 00 00 00    	movl   $0x0,(%ebx)
477cf8:	8b 5d f8             	mov    -0x8(%ebp),%ebx
477cfb:	c7 03 00 00 00 00    	movl   $0x0,(%ebx)
477d01:	8b 5d f4             	mov    -0xc(%ebp),%ebx
477d04:	c7 03 00 00 00 00    	movl   $0x0,(%ebx)
477d0a:	8b 5d f0             	mov    -0x10(%ebp),%ebx
477d0d:	c7 03 00 00 00 00    	movl   $0x0,(%ebx)
477d13:	8b 5d 08             	mov    0x8(%ebp),%ebx
477d16:	8b 1b                	mov    (%ebx),%ebx
477d18:	81 c3 dc 00 00 00    	add    $0xdc,%ebx
477d1e:	89 5d fc             	mov    %ebx,-0x4(%ebp)
477d21:	b9 00 00 00 00       	mov    $0x0,%ecx
477d26:	51                   	push   %ecx
477d27:	c1 e1 02             	shl    $0x2,%ecx
477d2a:	83 c1 08             	add    $0x8,%ecx
477d2d:	51                   	push   %ecx
477d2e:	e8 6b 88 02 00       	call   0x4a059e
477d33:	83 c4 04             	add    $0x4,%esp
477d36:	8b f8                	mov    %eax,%edi
477d38:	c7 07 01 00 00 00    	movl   $0x1,(%edi)
477d3e:	83 c7 04             	add    $0x4,%edi
477d41:	59                   	pop    %ecx
477d42:	50                   	push   %eax
477d43:	51                   	push   %ecx
477d44:	c7 07 00 00 00 00    	movl   $0x0,(%edi)
477d4a:	83 c7 04             	add    $0x4,%edi
477d4d:	8b 5d fc             	mov    -0x4(%ebp),%ebx
477d50:	8b 1b                	mov    (%ebx),%ebx
477d52:	e8 9c b9 f8 ff       	call   0x4036f3
477d57:	5a                   	pop    %edx
477d58:	85 c9                	test   %ecx,%ecx
477d5a:	0f 84 19 00 00 00    	je     0x477d79
477d60:	57                   	push   %edi
477d61:	52                   	push   %edx
477d62:	51                   	push   %ecx
477d63:	53                   	push   %ebx
477d64:	8b 1b                	mov    (%ebx),%ebx
477d66:	53                   	push   %ebx
477d67:	e8 38 88 02 00       	call   0x4a05a4
477d6c:	83 c4 04             	add    $0x4,%esp
477d6f:	5b                   	pop    %ebx
477d70:	59                   	pop    %ecx
477d71:	83 c3 04             	add    $0x4,%ebx
477d74:	49                   	dec    %ecx
477d75:	75 eb                	jne    0x477d62
477d77:	5a                   	pop    %edx
477d78:	5f                   	pop    %edi
477d79:	85 d2                	test   %edx,%edx
477d7b:	0f 84 2c 00 00 00    	je     0x477dad
477d81:	8b df                	mov    %edi,%ebx
477d83:	52                   	push   %edx
477d84:	53                   	push   %ebx
477d85:	68 08 00 00 00       	push   $0x8
477d8a:	e8 0f 88 02 00       	call   0x4a059e
477d8f:	83 c4 04             	add    $0x4,%esp
477d92:	5b                   	pop    %ebx
477d93:	53                   	push   %ebx