4378f8:	e8 fc c4 01 00       	call   0x453df9
4378fd:	83 c4 0c             	add    $0xc,%esp
437900:	dd 1b                	fstpl  (%ebx)
437902:	eb 0e                	jmp    0x437912
437904:	dd d8                	fstp   %st(0)
437906:	d9 ee                	fldz
437908:	c7 06 02 00 00 00    	movl   $0x2,(%esi)
43790e:	eb f0                	jmp    0x437900
437910:	dd d8                	fstp   %st(0)
437912:	8d 45 14             	lea    0x14(%ebp),%eax
437915:	50                   	push   %eax
437916:	8d 4d 0c             	lea    0xc(%ebp),%ecx
437919:	e8 22 35 00 00       	call   0x43ae40
43791e:	84 c0                	test   %al,%al
437920:	74 03                	je     0x437925
437922:	83 0e 01             	orl    $0x1,(%esi)
437925:	8b 4d 0c             	mov    0xc(%ebp),%ecx
437928:	8b c7                	mov    %edi,%eax
43792a:	89 0f                	mov    %ecx,(%edi)
43792c:	8b 4d 10             	mov    0x10(%ebp),%ecx
43792f:	89 4f 04             	mov    %ecx,0x4(%edi)
437932:	8b 4d fc             	mov    -0x4(%ebp),%ecx
437935:	5f                   	pop    %edi
437936:	5e                   	pop    %esi
437937:	33 cd                	xor    %ebp,%ecx
437939:	5b                   	pop    %ebx
43793a:	e8 c3 80 00 00       	call   0x43fa02
43793f:	c9                   	leave
437940:	c2 20 00             	ret    $0x20
437943:	55                   	push   %ebp
437944:	8b ec                	mov    %esp,%ebp
437946:	83 ec 10             	sub    $0x10,%esp
437949:	8d 45 f8             	lea    -0x8(%ebp),%eax
43794c:	50                   	push   %eax
43794d:	ff 75 20             	push   0x20(%ebp)
437950:	8d 45 f0             	lea    -0x10(%ebp),%eax
437953:	ff 75 1c             	push   0x1c(%ebp)
437956:	ff 75 18             	push   0x18(%ebp)
437959:	ff 75 14             	push   0x14(%ebp)
43795c:	ff 75 10             	push   0x10(%ebp)
43795f:	ff 75 0c             	push   0xc(%ebp)
437962:	50                   	push   %eax
437963:	e8 ea fe ff ff       	call   0x437852
437968:	dd 45 f8             	fldl   -0x8(%ebp)
43796b:	8b 10                	mov    (%eax),%edx
43796d:	89 55 0c             	mov    %edx,0xc(%ebp)
437970:	8b 48 04             	mov    0x4(%eax),%ecx
437973:	8b 45 24             	mov    0x24(%ebp),%eax
437976:	dd 18                	fstpl  (%eax)
437978:	8b 45 08             	mov    0x8(%ebp),%eax
43797b:	89 10                	mov    %edx,(%eax)
43797d:	89 48 04             	mov    %ecx,0x4(%eax)
437980:	c9                   	leave
437981:	c2 20 00             	ret    $0x20
437984:	6a 34                	push   $0x34
437986:	b8 74 24 49 00       	mov    $0x492474,%eax
43798b:	e8 ee 80 00 00       	call   0x43fa7e
437990:	8b f1                	mov    %ecx,%esi
437992:	8b 45 1c             	mov    0x1c(%ebp),%eax
437995:	8b 4d 24             	mov    0x24(%ebp),%ecx
437998:	8b 5d 08             	mov    0x8(%ebp),%ebx
43799b:	8b 7d 20             	mov    0x20(%ebp),%edi
43799e:	ff 70 30             	push   0x30(%eax)
4379a1:	89 4d cc             	mov    %ecx,-0x34(%ebp)
4379a4:	8d 4d c4             	lea    -0x3c(%ebp),%ecx
4379a7:	e8 90 14 ff ff       	call   0x428e3c
4379ac:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
4379b0:	8d 45 c4             	lea    -0x3c(%ebp),%eax
4379b3:	50                   	push   %eax
4379b4:	68 00 08 00 00       	push   $0x800
4379b9:	8d 45 14             	lea    0x14(%ebp),%eax
4379bc:	50                   	push   %eax
4379bd:	8d 45 0c             	lea    0xc(%ebp),%eax
4379c0:	50                   	push   %eax
4379c1:	8d 45 d0             	lea    -0x30(%ebp),%eax
4379c4:	50                   	push   %eax
4379c5:	56                   	push   %esi
4379c6:	e8 49 b3 ff ff       	call   0x432d14
4379cb:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
4379cf:	8d 4d c4             	lea    -0x3c(%ebp),%ecx
4379d2:	83 c4 18             	add    $0x18,%esp
4379d5:	8b f0                	mov    %eax,%esi
4379d7:	e8 0b 7a fd ff       	call   0x40f3e7
4379dc:	80 7d d0 00          	cmpb   $0x0,-0x30(%ebp)
4379e0:	75 0e                	jne    0x4379f0
4379e2:	8b 45 cc             	mov    -0x34(%ebp),%eax
4379e5:	c7 07 02 00 00 00    	movl   $0x2,(%edi)
4379eb:	83 20 00             	andl   $0x0,(%eax)
4379ee:	eb 31                	jmp    0x437a21
4379f0:	8d 45 c8             	lea    -0x38(%ebp),%eax
4379f3:	50                   	push   %eax
4379f4:	56                   	push   %esi
4379f5:	8d 45 c0             	lea    -0x40(%ebp),%eax
4379f8:	50                   	push   %eax
4379f9:	8d 45 d0             	lea    -0x30(%ebp),%eax
4379fc:	50                   	push   %eax
4379fd:	e8 9b fe fe ff       	call   0x42789d
437a02:	8b 4d cc             	mov    -0x34(%ebp),%ecx
437a05:	83 c4 10             	add    $0x10,%esp
437a08:	89 01                	mov    %eax,(%ecx)
437a0a:	8d 45 d0             	lea    -0x30(%ebp),%eax
437a0d:	39 45 c0             	cmp    %eax,-0x40(%ebp)
437a10:	74 06                	je     0x437a18
437a12:	83 7d c8 00          	cmpl   $0x0,-0x38(%ebp)
437a16:	74 09                	je     0x437a21
437a18:	c7 07 02 00 00 00    	movl   $0x2,(%edi)
437a1e:	83 21 00             	andl   $0x0,(%ecx)
437a21:	8d 45 14             	lea    0x14(%ebp),%eax
437a24:	50                   	push   %eax
437a25:	8d 4d 0c             	lea    0xc(%ebp),%ecx
437a28:	e8 13 34 00 00       	call   0x43ae40
437a2d:	84 c0                	test   %al,%al
437a2f:	74 03                	je     0x437a34
437a31:	83 0f 01             	orl    $0x1,(%edi)
437a34:	8b 4d 0c             	mov    0xc(%ebp),%ecx
437a37:	8b c3                	mov    %ebx,%eax
437a39:	89 0b                	mov    %ecx,(%ebx)
437a3b:	8b 4d 10             	mov    0x10(%ebp),%ecx
437a3e:	89 4b 04             	mov    %ecx,0x4(%ebx)
437a41:	e8 e2 7f 00 00       	call   0x43fa28
437a46:	c2 20 00             	ret    $0x20
437a49:	6a 38                	push   $0x38
437a4b:	b8 a1 24 49 00       	mov    $0x4924a1,%eax
437a50:	e8 29 80 00 00       	call   0x43fa7e
437a55:	8b f9                	mov    %ecx,%edi
437a57:	8b 75 1c             	mov    0x1c(%ebp),%esi
437a5a:	8d 4d c4             	lea    -0x3c(%ebp),%ecx
437a5d:	8b 45 08             	mov    0x8(%ebp),%eax
437a60:	8b 5d 20             	mov    0x20(%ebp),%ebx
437a63:	89 45 bc             	mov    %eax,-0x44(%ebp)
437a66:	8b 45 24             	mov    0x24(%ebp),%eax
437a69:	ff 76 30             	push   0x30(%esi)
437a6c:	89 45 cc             	mov    %eax,-0x34(%ebp)
437a6f:	e8 c8 13 ff ff       	call   0x428e3c
437a74:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
437a78:	8d 45 c4             	lea    -0x3c(%ebp),%eax
437a7b:	50                   	push   %eax
437a7c:	ff 76 14             	push   0x14(%esi)
437a7f:	8d 45 14             	lea    0x14(%ebp),%eax
437a82:	50                   	push   %eax
437a83:	8d 45 0c             	lea    0xc(%ebp),%eax
437a86:	50                   	push   %eax
437a87:	8d 45 d0             	lea    -0x30(%ebp),%eax
437a8a:	50                   	push   %eax
437a8b:	57                   	push   %edi
437a8c:	e8 83 b2 ff ff       	call   0x432d14
437a91:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
437a95:	8d 4d c4             	lea    -0x3c(%ebp),%ecx
437a98:	83 c4 18             	add    $0x18,%esp
437a9b:	8b f0                	mov    %eax,%esi
437a9d:	e8 45 79 fd ff       	call   0x40f3e7
437aa2:	80 7d d0 00          	cmpb   $0x0,-0x30(%ebp)
437aa6:	75 12                	jne    0x437aba
437aa8:	8b 45 cc             	mov    -0x34(%ebp),%eax
437aab:	c7 03 02 00 00 00    	movl   $0x2,(%ebx)
437ab1:	83 20 00             	andl   $0x0,(%eax)
437ab4:	83 60 04 00          	andl   $0x0,0x4(%eax)
437ab8:	eb 31                	jmp    0x437aeb
437aba:	8d 45 c8             	lea    -0x38(%ebp),%eax
437abd:	50                   	push   %eax
437abe:	56                   	push   %esi
437abf:	8d 45 c0             	lea    -0x40(%ebp),%eax
437ac2:	50                   	push   %eax
437ac3:	8d 45 d0             	lea    -0x30(%ebp),%eax
437ac6:	50                   	push   %eax
437ac7:	e8 5c ff fe ff       	call   0x427a28
437acc:	8b 4d cc             	mov    -0x34(%ebp),%ecx
437acf:	83 c4 10             	add    $0x10,%esp
437ad2:	89 01                	mov    %eax,(%ecx)
437ad4:	8d 45 d0             	lea    -0x30(%ebp),%eax
437ad7:	89 51 04             	mov    %edx,0x4(%ecx)
437ada:	39 45 c0             	cmp    %eax,-0x40(%ebp)
437add:	74 06                	je     0x437ae5
437adf:	83 7d c8 00          	cmpl   $0x0,-0x38(%ebp)
437ae3:	74 06                	je     0x437aeb
437ae5:	c7 03 02 00 00 00    	movl   $0x2,(%ebx)
437aeb:	8d 45 14             	lea    0x14(%ebp),%eax
437aee:	50                   	push   %eax
437aef:	8d 4d 0c             	lea    0xc(%ebp),%ecx
437af2:	e8 49 33 00 00       	call   0x43ae40
437af7:	84 c0                	test   %al,%al
437af9:	74 03                	je     0x437afe
437afb:	83 0b 01             	orl    $0x1,(%ebx)
437afe:	8b 45 bc             	mov    -0x44(%ebp),%eax
437b01:	8b 4d 0c             	mov    0xc(%ebp),%ecx
437b04:	89 08                	mov    %ecx,(%eax)
437b06:	8b 4d 10             	mov    0x10(%ebp),%ecx
437b09:	89 48 04             	mov    %ecx,0x4(%eax)
437b0c:	e8 17 7f 00 00       	call   0x43fa28
437b11:	c2 20 00             	ret    $0x20
437b14:	6a 38                	push   $0x38
437b16:	b8 ce 24 49 00       	mov    $0x4924ce,%eax
437b1b:	e8 5e 7f 00 00       	call   0x43fa7e
437b20:	8b f9                	mov    %ecx,%edi
437b22:	8b 75 1c             	mov    0x1c(%ebp),%esi
437b25:	8d 4d c4             	lea    -0x3c(%ebp),%ecx
437b28:	8b 45 08             	mov    0x8(%ebp),%eax
437b2b:	8b 5d 20             	mov    0x20(%ebp),%ebx
437b2e:	89 45 bc             	mov    %eax,-0x44(%ebp)
437b31:	8b 45 24             	mov    0x24(%ebp),%eax
437b34:	ff 76 30             	push   0x30(%esi)
437b37:	89 45 cc             	mov    %eax,-0x34(%ebp)
437b3a:	e8 fd 12 ff ff       	call   0x428e3c
437b3f:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
437b43:	8d 45 c4             	lea    -0x3c(%ebp),%eax
437b46:	50                   	push   %eax
437b47:	ff 76 14             	push   0x14(%esi)
437b4a:	8d 45 14             	lea    0x14(%ebp),%eax
437b4d:	50                   	push   %eax
437b4e:	8d 45 0c             	lea    0xc(%ebp),%eax
437b51:	50                   	push   %eax
437b52:	8d 45 d0             	lea    -0x30(%ebp),%eax
437b55:	50                   	push   %eax
437b56:	57                   	push   %edi
437b57:	e8 b8 b1 ff ff       	call   0x432d14
437b5c:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
437b60:	8d 4d c4             	lea    -0x3c(%ebp),%ecx
437b63:	83 c4 18             	add    $0x18,%esp
437b66:	8b f0                	mov    %eax,%esi
437b68:	e8 7a 78 fd ff       	call   0x40f3e7
437b6d:	80 7d d0 00          	cmpb   $0x0,-0x30(%ebp)
437b71:	75 12                	jne    0x437b85
437b73:	8b 45 cc             	mov    -0x34(%ebp),%eax
437b76:	c7 03 02 00 00 00    	movl   $0x2,(%ebx)
437b7c:	83 20 00             	andl   $0x0,(%eax)
437b7f:	83 60 04 00          	andl   $0x0,0x4(%eax)
437b83:	eb 31                	jmp    0x437bb6
437b85:	8d 45 c8             	lea    -0x38(%ebp),%eax
437b88:	50                   	push   %eax
437b89:	56                   	push   %esi
437b8a:	8d 45 c0             	lea    -0x40(%ebp),%eax
437b8d:	50                   	push   %eax
437b8e:	8d 45 d0             	lea    -0x30(%ebp),%eax
437b91:	50                   	push   %eax
437b92:	e8 77 ff fe ff       	call   0x427b0e
437b97:	8b 4d cc             	mov    -0x34(%ebp),%ecx
437b9a:	83 c4 10             	add    $0x10,%esp
437b9d:	89 01                	mov    %eax,(%ecx)
437b9f:	8d 45 d0             	lea    -0x30(%ebp),%eax
437ba2:	89 51 04             	mov    %edx,0x4(%ecx)
437ba5:	39 45 c0             	cmp    %eax,-0x40(%ebp)
437ba8:	74 06                	je     0x437bb0
437baa:	83 7d c8 00          	cmpl   $0x0,-0x38(%ebp)
437bae:	74 06                	je     0x437bb6
437bb0:	c7 03 02 00 00 00    	movl   $0x2,(%ebx)
437bb6:	8d 45 14             	lea    0x14(%ebp),%eax
437bb9:	50                   	push   %eax
437bba:	8d 4d 0c             	lea    0xc(%ebp),%ecx
437bbd:	e8 7e 32 00 00       	call   0x43ae40
437bc2:	84 c0                	test   %al,%al
437bc4:	74 03                	je     0x437bc9
437bc6:	83 0b 01             	orl    $0x1,(%ebx)
437bc9:	8b 45 bc             	mov    -0x44(%ebp),%eax
437bcc:	8b 4d 0c             	mov    0xc(%ebp),%ecx
437bcf:	89 08                	mov    %ecx,(%eax)
437bd1:	8b 4d 10             	mov    0x10(%ebp),%ecx
437bd4:	89 48 04             	mov    %ecx,0x4(%eax)
437bd7:	e8 4c 7e 00 00       	call   0x43fa28
437bdc:	c2 20 00             	ret    $0x20
437bdf:	6a 68                	push   $0x68
437be1:	b8 1b 25 49 00       	mov    $0x49251b,%eax
437be6:	e8 93 7e 00 00       	call   0x43fa7e
437beb:	89 4d 98             	mov    %ecx,-0x68(%ebp)
437bee:	8b 45 1c             	mov    0x1c(%ebp),%eax
437bf1:	8d 4d 8c             	lea    -0x74(%ebp),%ecx
437bf4:	8b 75 08             	mov    0x8(%ebp),%esi
437bf7:	8b 7d 20             	mov    0x20(%ebp),%edi
437bfa:	8b 5d 24             	mov    0x24(%ebp),%ebx
437bfd:	f7 40 14 00 40 00 00 	testl  $0x4000,0x14(%eax)
437c04:	ff 70 30             	push   0x30(%eax)
437c07:	89 75 94             	mov    %esi,-0x6c(%ebp)
437c0a:	89 45 9c             	mov    %eax,-0x64(%ebp)
437c0d:	0f 84 1d 01 00 00    	je     0x437d30
437c13:	e8 24 12 ff ff       	call   0x428e3c
437c18:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
437c1c:	8d 45 8c             	lea    -0x74(%ebp),%eax
437c1f:	50                   	push   %eax
437c20:	e8 ec 77 ff ff       	call   0x42f411
437c25:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
437c29:	8b f0                	mov    %eax,%esi
437c2b:	59                   	pop    %ecx
437c2c:	8d 4d 8c             	lea    -0x74(%ebp),%ecx
437c2f:	89 75 9c             	mov    %esi,-0x64(%ebp)
437c32:	e8 b0 77 fd ff       	call   0x40f3e7
437c37:	83 65 b0 00          	andl   $0x0,-0x50(%ebp)
437c3b:	8d 4d a0             	lea    -0x60(%ebp),%ecx
437c3e:	33 c0                	xor    %eax,%eax
437c40:	c7 45 b4 07 00 00 00 	movl   $0x7,-0x4c(%ebp)
437c47:	50                   	push   %eax
437c48:	6a 01                	push   $0x1
437c4a:	66 89 45 a0          	mov    %ax,-0x60(%ebp)
437c4e:	e8 2e f2 ff ff       	call   0x436e81
437c53:	8b 06                	mov    (%esi),%eax
437c55:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
437c5c:	8b 70 18             	mov    0x18(%eax),%esi
437c5f:	8d 45 b8             	lea    -0x48(%ebp),%eax
437c62:	50                   	push   %eax
437c63:	8b ce                	mov    %esi,%ecx
437c65:	ff 15 54 43 49 00    	call   *0x494354
437c6b:	8b 4d 9c             	mov    -0x64(%ebp),%ecx
437c6e:	ff d6                	call   *%esi
437c70:	83 7d cc 08          	cmpl   $0x8,-0x34(%ebp)
437c74:	8d 45 b8             	lea    -0x48(%ebp),%eax
437c77:	c6 45 fc 02          	movb   $0x2,-0x4(%ebp)
437c7b:	72 03                	jb     0x437c80
437c7d:	8b 45 b8             	mov    -0x48(%ebp),%eax
437c80:	ff 75 c8             	push   -0x38(%ebp)
437c83:	8d 4d a0             	lea    -0x60(%ebp),%ecx
437c86:	50                   	push   %eax
437c87:	e8 5a f1 ff ff       	call   0x436de6
437c8c:	8d 4d b8             	lea    -0x48(%ebp),%ecx
437c8f:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
437c93:	e8 f3 ef ff ff       	call   0x436c8b
437c98:	6a 00                	push   $0x0
437c9a:	8d 4d a0             	lea    -0x60(%ebp),%ecx
437c9d:	e8 63 37 00 00       	call   0x43b405
437ca2:	8b 4d 9c             	mov    -0x64(%ebp),%ecx
437ca5:	8b 01                	mov    (%ecx),%eax
437ca7:	8b 70 1c             	mov    0x1c(%eax),%esi
437caa:	8d 45 b8             	lea    -0x48(%ebp),%eax
437cad:	50                   	push   %eax
437cae:	8b ce                	mov    %esi,%ecx
437cb0:	ff 15 54 43 49 00    	call   *0x494354
437cb6:	8b 4d 9c             	mov    -0x64(%ebp),%ecx
437cb9:	ff d6                	call   *%esi
437cbb:	83 7d cc 08          	cmpl   $0x8,-0x34(%ebp)
437cbf:	8d 45 b8             	lea    -0x48(%ebp),%eax
437cc2:	c6 45 fc 03          	movb   $0x3,-0x4(%ebp)
437cc6:	72 03                	jb     0x437ccb
437cc8:	8b 45 b8             	mov    -0x48(%ebp),%eax
437ccb:	ff 75 c8             	push   -0x38(%ebp)
437cce:	8d 4d a0             	lea    -0x60(%ebp),%ecx
437cd1:	50                   	push   %eax
437cd2:	e8 0f f1 ff ff       	call   0x436de6
437cd7:	8d 4d b8             	lea    -0x48(%ebp),%ecx
437cda:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
437cde:	e8 a8 ef ff ff       	call   0x436c8b
437ce3:	83 7d b4 08          	cmpl   $0x8,-0x4c(%ebp)
437ce7:	8d 45 a0             	lea    -0x60(%ebp),%eax
437cea:	72 03                	jb     0x437cef
437cec:	8b 45 a0             	mov    -0x60(%ebp),%eax
437cef:	50                   	push   %eax
437cf0:	6a 02                	push   $0x2
437cf2:	5e                   	pop    %esi
437cf3:	56                   	push   %esi
437cf4:	8d 45 14             	lea    0x14(%ebp),%eax
437cf7:	50                   	push   %eax
437cf8:	8d 45 0c             	lea    0xc(%ebp),%eax
437cfb:	50                   	push   %eax
437cfc:	e8 66 5c ff ff       	call   0x42d967