559896:	89 54 24 10          	mov    %edx,0x10(%esp)
55989a:	8b 50 04             	mov    0x4(%eax),%edx
55989d:	89 54 24 14          	mov    %edx,0x14(%esp)
5598a1:	8b 40 08             	mov    0x8(%eax),%eax
5598a4:	89 44 24 18          	mov    %eax,0x18(%esp)
5598a8:	d9 05 88 99 55 00    	flds   0x559988
5598ae:	d8 4c 24 10          	fmuls  0x10(%esp)
5598b2:	d8 2d 88 99 55 00    	fsubrs 0x559988
5598b8:	d9 1c 24             	fstps  (%esp)
5598bb:	9b d9 44 24 10       	flds   0x10(%esp)
5598c0:	d8 0c 24             	fmuls  (%esp)
5598c3:	d8 74 24 14          	fdivs  0x14(%esp)
5598c7:	d9 5c 24 04          	fstps  0x4(%esp)
5598cb:	9b d9 05 88 99 55 00 	flds   0x559988
5598d2:	d8 4c 24 18          	fmuls  0x18(%esp)
5598d6:	d8 2d 88 99 55 00    	fsubrs 0x559988
5598dc:	d9 5c 24 08          	fstps  0x8(%esp)
5598e0:	9b d9 44 24 18       	flds   0x18(%esp)
5598e5:	d8 4c 24 08          	fmuls  0x8(%esp)
5598e9:	d8 74 24 14          	fdivs  0x14(%esp)
5598ed:	d9 5c 24 0c          	fstps  0xc(%esp)
5598f1:	9b                   	fwait
5598f2:	bb 80 ff ff ff       	mov    $0xffffff80,%ebx
5598f7:	c7 44 24 1c 00 01 00 	movl   $0x100,0x1c(%esp)
5598fe:	00
5598ff:	be 80 14 6b 00       	mov    $0x6b1480,%esi
559904:	bf 80 18 6b 00       	mov    $0x6b1880,%edi
559909:	bd 80 1c 6b 00       	mov    $0x6b1c80,%ebp
55990e:	c7 44 24 20 80 20 6b 	movl   $0x6b2080,0x20(%esp)
559915:	00
559916:	89 5c 24 24          	mov    %ebx,0x24(%esp)
55991a:	db 44 24 24          	fildl  0x24(%esp)
55991e:	d8 0c 24             	fmuls  (%esp)
559921:	e8 9a 93 ea ff       	call   0x402cc0
559926:	89 06                	mov    %eax,(%esi)
559928:	89 5c 24 24          	mov    %ebx,0x24(%esp)
55992c:	db 44 24 24          	fildl  0x24(%esp)
559930:	d8 4c 24 08          	fmuls  0x8(%esp)
559934:	e8 87 93 ea ff       	call   0x402cc0
559939:	89 07                	mov    %eax,(%edi)
55993b:	89 5c 24 24          	mov    %ebx,0x24(%esp)
55993f:	db 44 24 24          	fildl  0x24(%esp)
559943:	d8 4c 24 04          	fmuls  0x4(%esp)
559947:	e8 74 93 ea ff       	call   0x402cc0
55994c:	f7 d8                	neg    %eax
55994e:	89 45 00             	mov    %eax,0x0(%ebp)
559951:	89 5c 24 24          	mov    %ebx,0x24(%esp)
559955:	db 44 24 24          	fildl  0x24(%esp)
559959:	d8 4c 24 0c          	fmuls  0xc(%esp)
55995d:	e8 5e 93 ea ff       	call   0x402cc0
559962:	f7 d8                	neg    %eax
559964:	8b 54 24 20          	mov    0x20(%esp),%edx
559968:	89 02                	mov    %eax,(%edx)
55996a:	43                   	inc    %ebx
55996b:	83 44 24 20 04       	addl   $0x4,0x20(%esp)
559970:	83 c5 04             	add    $0x4,%ebp
559973:	83 c7 04             	add    $0x4,%edi
559976:	83 c6 04             	add    $0x4,%esi
559979:	ff 4c 24 1c          	decl   0x1c(%esp)
55997d:	75 97                	jne    0x559916
55997f:	83 c4 28             	add    $0x28,%esp
559982:	5d                   	pop    %ebp
559983:	5f                   	pop    %edi
559984:	5e                   	pop    %esi
559985:	5b                   	pop    %ebx
559986:	c3                   	ret
559987:	00 00                	add    %al,(%eax)
559989:	00 00                	add    %al,(%eax)
55998b:	40                   	inc    %eax
55998c:	55                   	push   %ebp
55998d:	8b ec                	mov    %esp,%ebp
55998f:	81 c4 14 ff ff ff    	add    $0xffffff14,%esp
559995:	53                   	push   %ebx
559996:	56                   	push   %esi
559997:	57                   	push   %edi
559998:	89 4d f4             	mov    %ecx,-0xc(%ebp)
55999b:	89 55 f8             	mov    %edx,-0x8(%ebp)
55999e:	89 45 fc             	mov    %eax,-0x4(%ebp)
5599a1:	8b 45 fc             	mov    -0x4(%ebp),%eax
5599a4:	e8 bb fd ff ff       	call   0x559764
5599a9:	84 c0                	test   %al,%al
5599ab:	75 1a                	jne    0x5599c7
5599ad:	8b 45 fc             	mov    -0x4(%ebp),%eax
5599b0:	e8 47 fe ff ff       	call   0x5597fc
5599b5:	84 c0                	test   %al,%al
5599b7:	75 0e                	jne    0x5599c7
5599b9:	8b 45 0c             	mov    0xc(%ebp),%eax
5599bc:	8b 40 28             	mov    0x28(%eax),%eax
5599bf:	c6 00 01             	movb   $0x1,(%eax)
5599c2:	e9 2f 0b 00 00       	jmp    0x55a4f6
5599c7:	ba 00 a5 55 00       	mov    $0x55a500,%edx
5599cc:	8b 45 fc             	mov    -0x4(%ebp),%eax
5599cf:	e8 0c eb 01 00       	call   0x5784e0
5599d4:	89 45 f0             	mov    %eax,-0x10(%ebp)
5599d7:	33 c9                	xor    %ecx,%ecx
5599d9:	83 ca ff             	or     $0xffffffff,%edx
5599dc:	8b 45 f0             	mov    -0x10(%ebp),%eax
5599df:	e8 5c b5 01 00       	call   0x574f40
5599e4:	8b f0                	mov    %eax,%esi
5599e6:	8b 45 f0             	mov    -0x10(%ebp),%eax
5599e9:	e8 4e ed 01 00       	call   0x57873c
5599ee:	85 f6                	test   %esi,%esi
5599f0:	75 0e                	jne    0x559a00
5599f2:	8b 45 0c             	mov    0xc(%ebp),%eax
5599f5:	8b 40 28             	mov    0x28(%eax),%eax
5599f8:	c6 00 01             	movb   $0x1,(%eax)
5599fb:	e9 f6 0a 00 00       	jmp    0x55a4f6
559a00:	8b c6                	mov    %esi,%eax
559a02:	e8 61 06 02 00       	call   0x57a068
559a07:	89 45 c4             	mov    %eax,-0x3c(%ebp)
559a0a:	8b c6                	mov    %esi,%eax
559a0c:	e8 63 06 02 00       	call   0x57a074
559a11:	89 45 c0             	mov    %eax,-0x40(%ebp)
559a14:	c6 45 e7 01          	movb   $0x1,-0x19(%ebp)
559a18:	c7 45 e8 03 00 00 00 	movl   $0x3,-0x18(%ebp)
559a1f:	8b c6                	mov    %esi,%eax
559a21:	e8 5a 06 02 00       	call   0x57a080
559a26:	48                   	dec    %eax
559a27:	0f 84 52 01 00 00    	je     0x559b7f
559a2d:	48                   	dec    %eax
559a2e:	74 0c                	je     0x559a3c
559a30:	48                   	dec    %eax
559a31:	0f 84 aa 00 00 00    	je     0x559ae1
559a37:	e9 9b 01 00 00       	jmp    0x559bd7
559a3c:	33 c0                	xor    %eax,%eax
559a3e:	e8 d1 fc ff ff       	call   0x559714
559a43:	8b d0                	mov    %eax,%edx
559a45:	8b c6                	mov    %esi,%eax
559a47:	e8 9c c2 01 00       	call   0x575ce8
559a4c:	89 85 78 ff ff ff    	mov    %eax,-0x88(%ebp)
559a52:	81 bd 78 ff ff ff ff 	cmpl   $0xff,-0x88(%ebp)
559a59:	00 00 00
559a5c:	7e 08                	jle    0x559a66
559a5e:	33 c0                	xor    %eax,%eax
559a60:	89 85 78 ff ff ff    	mov    %eax,-0x88(%ebp)
559a66:	b8 01 00 00 00       	mov    $0x1,%eax
559a6b:	e8 a4 fc ff ff       	call   0x559714
559a70:	8b d0                	mov    %eax,%edx
559a72:	8b c6                	mov    %esi,%eax
559a74:	e8 6f c2 01 00       	call   0x575ce8
559a79:	89 85 7c ff ff ff    	mov    %eax,-0x84(%ebp)
559a7f:	81 bd 7c ff ff ff ff 	cmpl   $0xff,-0x84(%ebp)
559a86:	00 00 00
559a89:	7e 0a                	jle    0x559a95
559a8b:	c7 85 7c ff ff ff 01 	movl   $0x1,-0x84(%ebp)
559a92:	00 00 00
559a95:	b8 02 00 00 00       	mov    $0x2,%eax
559a9a:	e8 75 fc ff ff       	call   0x559714
559a9f:	8b d0                	mov    %eax,%edx
559aa1:	8b c6                	mov    %esi,%eax
559aa3:	e8 40 c2 01 00       	call   0x575ce8
559aa8:	89 45 80             	mov    %eax,-0x80(%ebp)
559aab:	81 7d 80 ff 00 00 00 	cmpl   $0xff,-0x80(%ebp)
559ab2:	7e 07                	jle    0x559abb
559ab4:	c7 45 80 02 00 00 00 	movl   $0x2,-0x80(%ebp)
559abb:	8b 95 78 ff ff ff    	mov    -0x88(%ebp),%edx
559ac1:	8b c6                	mov    %esi,%eax
559ac3:	e8 90 05 02 00       	call   0x57a058
559ac8:	8b 55 f4             	mov    -0xc(%ebp),%edx
559acb:	8b 12                	mov    (%edx),%edx
559acd:	89 42 08             	mov    %eax,0x8(%edx)
559ad0:	8b 45 f4             	mov    -0xc(%ebp),%eax
559ad3:	8b 00                	mov    (%eax),%eax
559ad5:	c7 40 10 03 00 00 00 	movl   $0x3,0x10(%eax)
559adc:	e9 0b 01 00 00       	jmp    0x559bec
559ae1:	33 c0                	xor    %eax,%eax
559ae3:	e8 2c fc ff ff       	call   0x559714
559ae8:	8b d0                	mov    %eax,%edx
559aea:	8b c6                	mov    %esi,%eax
559aec:	e8 f7 c1 01 00       	call   0x575ce8
559af1:	89 85 78 ff ff ff    	mov    %eax,-0x88(%ebp)
559af7:	81 bd 78 ff ff ff ff 	cmpl   $0xff,-0x88(%ebp)
559afe:	00 00 00
559b01:	7e 08                	jle    0x559b0b
559b03:	33 c0                	xor    %eax,%eax
559b05:	89 85 78 ff ff ff    	mov    %eax,-0x88(%ebp)
559b0b:	b8 01 00 00 00       	mov    $0x1,%eax
559b10:	e8 ff fb ff ff       	call   0x559714
559b15:	8b d0                	mov    %eax,%edx
559b17:	8b c6                	mov    %esi,%eax
559b19:	e8 ca c1 01 00       	call   0x575ce8
559b1e:	89 85 7c ff ff ff    	mov    %eax,-0x84(%ebp)
559b24:	81 bd 7c ff ff ff ff 	cmpl   $0xff,-0x84(%ebp)
559b2b:	00 00 00
559b2e:	7e 08                	jle    0x559b38
559b30:	33 c0                	xor    %eax,%eax
559b32:	89 85 7c ff ff ff    	mov    %eax,-0x84(%ebp)
559b38:	b8 02 00 00 00       	mov    $0x2,%eax
559b3d:	e8 d2 fb ff ff       	call   0x559714
559b42:	8b d0                	mov    %eax,%edx
559b44:	8b c6                	mov    %esi,%eax
559b46:	e8 9d c1 01 00       	call   0x575ce8
559b4b:	89 45 80             	mov    %eax,-0x80(%ebp)
559b4e:	81 7d 80 ff 00 00 00 	cmpl   $0xff,-0x80(%ebp)
559b55:	7e 05                	jle    0x559b5c
559b57:	33 c0                	xor    %eax,%eax
559b59:	89 45 80             	mov    %eax,-0x80(%ebp)
559b5c:	8b 95 78 ff ff ff    	mov    -0x88(%ebp),%edx
559b62:	8b c6                	mov    %esi,%eax
559b64:	e8 ef 04 02 00       	call   0x57a058
559b69:	8b 55 f4             	mov    -0xc(%ebp),%edx
559b6c:	8b 12                	mov    (%edx),%edx
559b6e:	89 42 08             	mov    %eax,0x8(%edx)
559b71:	8b 45 f4             	mov    -0xc(%ebp),%eax
559b74:	8b 00                	mov    (%eax),%eax
559b76:	c7 40 10 03 00 00 00 	movl   $0x3,0x10(%eax)
559b7d:	eb 6d                	jmp    0x559bec
559b7f:	33 c0                	xor    %eax,%eax
559b81:	e8 8e fb ff ff       	call   0x559714
559b86:	8b d0                	mov    %eax,%edx
559b88:	8b c6                	mov    %esi,%eax
559b8a:	e8 59 c1 01 00       	call   0x575ce8
559b8f:	89 85 78 ff ff ff    	mov    %eax,-0x88(%ebp)
559b95:	81 bd 78 ff ff ff ff 	cmpl   $0xff,-0x88(%ebp)
559b9c:	00 00 00
559b9f:	7e 08                	jle    0x559ba9
559ba1:	33 c0                	xor    %eax,%eax
559ba3:	89 85 78 ff ff ff    	mov    %eax,-0x88(%ebp)
559ba9:	8b 95 78 ff ff ff    	mov    -0x88(%ebp),%edx
559baf:	8b c6                	mov    %esi,%eax
559bb1:	e8 a2 04 02 00       	call   0x57a058
559bb6:	8b 55 f4             	mov    -0xc(%ebp),%edx
559bb9:	8b 12                	mov    (%edx),%edx
559bbb:	89 42 08             	mov    %eax,0x8(%edx)
559bbe:	8b 45 f4             	mov    -0xc(%ebp),%eax
559bc1:	8b 00                	mov    (%eax),%eax
559bc3:	c7 40 10 01 00 00 00 	movl   $0x1,0x10(%eax)
559bca:	c7 45 e8 01 00 00 00 	movl   $0x1,-0x18(%ebp)
559bd1:	c6 45 e7 00          	movb   $0x0,-0x19(%ebp)
559bd5:	eb 15                	jmp    0x559bec
559bd7:	8b 45 0c             	mov    0xc(%ebp),%eax
559bda:	8b 40 28             	mov    0x28(%eax),%eax
559bdd:	c6 00 01             	movb   $0x1,(%eax)
559be0:	8b c6                	mov    %esi,%eax
559be2:	e8 c1 b1 01 00       	call   0x574da8
559be7:	e9 0a 09 00 00       	jmp    0x55a4f6
559bec:	8b 15 9c 71 6a 00    	mov    0x6a719c,%edx
559bf2:	8b 12                	mov    (%edx),%edx
559bf4:	8b 45 f4             	mov    -0xc(%ebp),%eax
559bf7:	8b 00                	mov    (%eax),%eax
559bf9:	e8 be 3a 07 00       	call   0x5cd6bc
559bfe:	8b 15 00 71 6a 00    	mov    0x6a7100,%edx
559c04:	8b 12                	mov    (%edx),%edx
559c06:	8b 45 f4             	mov    -0xc(%ebp),%eax
559c09:	8b 00                	mov    (%eax),%eax
559c0b:	e8 dc 3a 07 00       	call   0x5cd6ec
559c10:	8b 45 f4             	mov    -0xc(%ebp),%eax
559c13:	8b 00                	mov    (%eax),%eax
559c15:	83 b8 a8 03 00 00 00 	cmpl   $0x0,0x3a8(%eax)
559c1c:	74 2a                	je     0x559c48
559c1e:	8b 45 f4             	mov    -0xc(%ebp),%eax
559c21:	8b 00                	mov    (%eax),%eax
559c23:	8b 80 a8 03 00 00    	mov    0x3a8(%eax),%eax
559c29:	e8 9e 8b ea ff       	call   0x4027cc
559c2e:	8b 45 f4             	mov    -0xc(%ebp),%eax
559c31:	8b 00                	mov    (%eax),%eax
559c33:	33 d2                	xor    %edx,%edx
559c35:	89 90 a8 03 00 00    	mov    %edx,0x3a8(%eax)
559c3b:	8b 45 f4             	mov    -0xc(%ebp),%eax
559c3e:	8b 00                	mov    (%eax),%eax
559c40:	33 d2                	xor    %edx,%edx
559c42:	89 90 ac 03 00 00    	mov    %edx,0x3ac(%eax)
559c48:	8b 45 f4             	mov    -0xc(%ebp),%eax
559c4b:	8b 00                	mov    (%eax),%eax
559c4d:	8b 55 c4             	mov    -0x3c(%ebp),%edx
559c50:	89 50 14             	mov    %edx,0x14(%eax)
559c53:	8b 45 f4             	mov    -0xc(%ebp),%eax
559c56:	8b 00                	mov    (%eax),%eax
559c58:	8b 55 c0             	mov    -0x40(%ebp),%edx
559c5b:	89 50 18             	mov    %edx,0x18(%eax)
559c5e:	80 7d 08 00          	cmpb   $0x0,0x8(%ebp)
559c62:	0f 85 87 08 00 00    	jne    0x55a4ef
559c68:	8b c6                	mov    %esi,%eax
559c6a:	e8 ad 03 02 00       	call   0x57a01c
559c6f:	89 45 ec             	mov    %eax,-0x14(%ebp)
559c72:	8b 45 ec             	mov    -0x14(%ebp),%eax
559c75:	48                   	dec    %eax
559c76:	85 c0                	test   %eax,%eax
559c78:	7c 54                	jl     0x559cce
559c7a:	40                   	inc    %eax
559c7b:	89 45 a4             	mov    %eax,-0x5c(%ebp)
559c7e:	33 ff                	xor    %edi,%edi
559c80:	8d 9d 4c ff ff ff    	lea    -0xb4(%ebp),%ebx
559c86:	8b d7                	mov    %edi,%edx
559c88:	8b c6                	mov    %esi,%eax
559c8a:	e8 b1 03 02 00       	call   0x57a040
559c8f:	50                   	push   %eax
559c90:	8b d7                	mov    %edi,%edx
559c92:	8b c6                	mov    %esi,%eax
559c94:	e8 b3 03 02 00       	call   0x57a04c
559c99:	5a                   	pop    %edx
559c9a:	e8 21 e0 01 00       	call   0x577cc0
559c9f:	89 03                	mov    %eax,(%ebx)
559ca1:	6a 00                	push   $0x0
559ca3:	8b d7                	mov    %edi,%edx
559ca5:	8b c6                	mov    %esi,%eax
559ca7:	e8 94 03 02 00       	call   0x57a040
559cac:	50                   	push   %eax
559cad:	8b d7                	mov    %edi,%edx
559caf:	8b c6                	mov    %esi,%eax
559cb1:	e8 96 03 02 00       	call   0x57a04c
559cb6:	50                   	push   %eax
559cb7:	8b 03                	mov    (%ebx),%eax
559cb9:	50                   	push   %eax
559cba:	33 c9                	xor    %ecx,%ecx
559cbc:	8b d7                	mov    %edi,%edx
559cbe:	8b c6                	mov    %esi,%eax
559cc0:	e8 03 b3 01 00       	call   0x574fc8
559cc5:	47                   	inc    %edi
559cc6:	83 c3 04             	add    $0x4,%ebx
559cc9:	ff 4d a4             	decl   -0x5c(%ebp)
559ccc:	75 b8                	jne    0x559c86
559cce:	ba 01 00 00 00       	mov    $0x1,%edx
559cd3:	8b 45 f8             	mov    -0x8(%ebp),%eax
559cd6:	e8 e9 dd 09 00       	call   0x5f7ac4
559cdb:	ba 01 00 00 00       	mov    $0x1,%edx
559ce0:	8b 45 f8             	mov    -0x8(%ebp),%eax
559ce3:	e8 80 df 09 00       	call   0x5f7c68
559ce8:	8b 45 f4             	mov    -0xc(%ebp),%eax
559ceb:	8b 00                	mov    (%eax),%eax
559ced:	83 78 08 01          	cmpl   $0x1,0x8(%eax)
559cf1:	75 17                	jne    0x559d0a
559cf3:	8b 45 f4             	mov    -0xc(%ebp),%eax
559cf6:	8b 00                	mov    (%eax),%eax
559cf8:	83 78 10 01          	cmpl   $0x1,0x10(%eax)
559cfc:	75 0c                	jne    0x559d0a
559cfe:	b2 01                	mov    $0x1,%dl
559d00:	8b 45 f8             	mov    -0x8(%ebp),%eax
559d03:	e8 b0 e4 09 00       	call   0x5f81b8
559d08:	eb 0a                	jmp    0x559d14
559d0a:	b2 05                	mov    $0x5,%dl
559d0c:	8b 45 f8             	mov    -0x8(%ebp),%eax
559d0f:	e8 a4 e4 09 00       	call   0x5f81b8
559d14:	8b 55 c0             	mov    -0x40(%ebp),%edx
559d17:	8b 45 f8             	mov    -0x8(%ebp),%eax
559d1a:	e8 49 df 09 00       	call   0x5f7c68
559d1f:	8b 55 c4             	mov    -0x3c(%ebp),%edx
559d22:	8b 45 f8             	mov    -0x8(%ebp),%eax
559d25:	e8 9a dd 09 00       	call   0x5f7ac4
559d2a:	db 45 c0             	fildl  -0x40(%ebp)
559d2d:	d8 3d 04 a5 55 00    	fdivrs 0x55a504
559d33:	8b 45 0c             	mov    0xc(%ebp),%eax
559d36:	dd 58 18             	fstpl  0x18(%eax)
559d39:	9b                   	fwait
559d3a:	33 c0                	xor    %eax,%eax
559d3c:	89 45 bc             	mov    %eax,-0x44(%ebp)
559d3f:	33 c0                	xor    %eax,%eax
559d41:	89 45 b8             	mov    %eax,-0x48(%ebp)
559d44:	33 c0                	xor    %eax,%eax
559d46:	89 45 b4             	mov    %eax,-0x4c(%ebp)