580b73:	8d 96 fa 00 00 00    	lea    0xfa(%esi),%edx
580b79:	8b 46 34             	mov    0x34(%esi),%eax
580b7c:	e8 cb ec ff ff       	call   0x57f84c
580b81:	8d 86 30 01 00 00    	lea    0x130(%esi),%eax
580b87:	50                   	push   %eax
580b88:	8b 4e 2c             	mov    0x2c(%esi),%ecx
580b8b:	8b 56 28             	mov    0x28(%esi),%edx
580b8e:	8b 46 38             	mov    0x38(%esi),%eax
580b91:	e8 9a fb ff ff       	call   0x580730
580b96:	8b 04 24             	mov    (%esp),%eax
580b99:	81 78 0c 20 62 61 4c 	cmpl   $0x4c616220,0xc(%eax)
580ba0:	75 0f                	jne    0x580bb1
580ba2:	8b 4c 24 0c          	mov    0xc(%esp),%ecx
580ba6:	8b 54 24 04          	mov    0x4(%esp),%edx
580baa:	8b c6                	mov    %esi,%eax
580bac:	e8 e7 fb ff ff       	call   0x580798
580bb1:	83 c4 48             	add    $0x48,%esp
580bb4:	5f                   	pop    %edi
580bb5:	5e                   	pop    %esi
580bb6:	5b                   	pop    %ebx
580bb7:	c3                   	ret
580bb8:	b8 02 00 00 00       	mov    $0x2,%eax
580bbd:	c3                   	ret
580bbe:	8b c0                	mov    %eax,%eax
580bc0:	55                   	push   %ebp
580bc1:	8b ec                	mov    %esp,%ebp
580bc3:	8b 45 08             	mov    0x8(%ebp),%eax
580bc6:	8b 40 fc             	mov    -0x4(%eax),%eax
580bc9:	0f b6 00             	movzbl (%eax),%eax
580bcc:	8b 55 08             	mov    0x8(%ebp),%edx
580bcf:	89 42 f8             	mov    %eax,-0x8(%edx)
580bd2:	8b 45 08             	mov    0x8(%ebp),%eax
580bd5:	ff 40 fc             	incl   -0x4(%eax)
580bd8:	8b 45 08             	mov    0x8(%ebp),%eax
580bdb:	8b 40 fc             	mov    -0x4(%eax),%eax
580bde:	8a 00                	mov    (%eax),%al
580be0:	8b 55 08             	mov    0x8(%ebp),%edx
580be3:	8b 52 f4             	mov    -0xc(%edx),%edx
580be6:	88 02                	mov    %al,(%edx)
580be8:	8b 45 08             	mov    0x8(%ebp),%eax
580beb:	ff 40 f4             	incl   -0xc(%eax)
580bee:	8b 45 08             	mov    0x8(%ebp),%eax
580bf1:	ff 40 fc             	incl   -0x4(%eax)
580bf4:	8b 45 08             	mov    0x8(%ebp),%eax
580bf7:	8a 40 f8             	mov    -0x8(%eax),%al
580bfa:	8b 55 08             	mov    0x8(%ebp),%edx
580bfd:	8b 52 f4             	mov    -0xc(%edx),%edx
580c00:	88 02                	mov    %al,(%edx)
580c02:	8b 45 08             	mov    0x8(%ebp),%eax
580c05:	ff 40 f4             	incl   -0xc(%eax)
580c08:	5d                   	pop    %ebp
580c09:	c3                   	ret
580c0a:	8b c0                	mov    %eax,%eax
580c0c:	55                   	push   %ebp
580c0d:	8b ec                	mov    %esp,%ebp
580c0f:	83 c4 f4             	add    $0xfffffff4,%esp
580c12:	53                   	push   %ebx
580c13:	8b d9                	mov    %ecx,%ebx
580c15:	d1 eb                	shr    $1,%ebx
580c17:	43                   	inc    %ebx
580c18:	89 45 fc             	mov    %eax,-0x4(%ebp)
580c1b:	89 55 f4             	mov    %edx,-0xc(%ebp)
580c1e:	4b                   	dec    %ebx
580c1f:	eb 08                	jmp    0x580c29
580c21:	55                   	push   %ebp
580c22:	e8 99 ff ff ff       	call   0x580bc0
580c27:	59                   	pop    %ecx
580c28:	4b                   	dec    %ebx
580c29:	f6 c3 07             	test   $0x7,%bl
580c2c:	75 f3                	jne    0x580c21
580c2e:	c1 eb 03             	shr    $0x3,%ebx
580c31:	4b                   	dec    %ebx
580c32:	85 db                	test   %ebx,%ebx
580c34:	7c 3d                	jl     0x580c73
580c36:	55                   	push   %ebp
580c37:	e8 84 ff ff ff       	call   0x580bc0
580c3c:	59                   	pop    %ecx
580c3d:	55                   	push   %ebp
580c3e:	e8 7d ff ff ff       	call   0x580bc0
580c43:	59                   	pop    %ecx
580c44:	55                   	push   %ebp
580c45:	e8 76 ff ff ff       	call   0x580bc0
580c4a:	59                   	pop    %ecx
580c4b:	55                   	push   %ebp
580c4c:	e8 6f ff ff ff       	call   0x580bc0
580c51:	59                   	pop    %ecx
580c52:	55                   	push   %ebp
580c53:	e8 68 ff ff ff       	call   0x580bc0
580c58:	59                   	pop    %ecx
580c59:	55                   	push   %ebp
580c5a:	e8 61 ff ff ff       	call   0x580bc0
580c5f:	59                   	pop    %ecx
580c60:	55                   	push   %ebp
580c61:	e8 5a ff ff ff       	call   0x580bc0
580c66:	59                   	pop    %ecx
580c67:	55                   	push   %ebp
580c68:	e8 53 ff ff ff       	call   0x580bc0
580c6d:	59                   	pop    %ecx
580c6e:	4b                   	dec    %ebx
580c6f:	85 db                	test   %ebx,%ebx
580c71:	7d c3                	jge    0x580c36
580c73:	5b                   	pop    %ebx
580c74:	8b e5                	mov    %ebp,%esp
580c76:	5d                   	pop    %ebp
580c77:	c3                   	ret
580c78:	8b ca                	mov    %edx,%ecx
580c7a:	03 c9                	add    %ecx,%ecx
580c7c:	8b d0                	mov    %eax,%edx
580c7e:	e8 89 ff ff ff       	call   0x580c0c
580c83:	c3                   	ret
580c84:	53                   	push   %ebx
580c85:	56                   	push   %esi
580c86:	57                   	push   %edi
580c87:	55                   	push   %ebp
580c88:	83 c4 c4             	add    $0xffffffc4,%esp
580c8b:	8b da                	mov    %edx,%ebx
580c8d:	89 04 24             	mov    %eax,(%esp)
580c90:	8d 74 24 0c          	lea    0xc(%esp),%esi
580c94:	8b 04 24             	mov    (%esp),%eax
580c97:	8b 00                	mov    (%eax),%eax
580c99:	50                   	push   %eax
580c9a:	e8 19 ff ff ff       	call   0x580bb8
580c9f:	ba 2e 00 00 00       	mov    $0x2e,%edx
580ca4:	2b d0                	sub    %eax,%edx
580ca6:	8b c6                	mov    %esi,%eax
580ca8:	8b 7c 24 04          	mov    0x4(%esp),%edi
580cac:	b9 01 00 00 00       	mov    $0x1,%ecx
580cb1:	ff 97 ec 03 00 00    	call   *0x3ec(%edi)
580cb7:	c7 03 1a 00 00 00    	movl   $0x1a,(%ebx)
580cbd:	33 c0                	xor    %eax,%eax
580cbf:	8a 46 02             	mov    0x2(%esi),%al
580cc2:	89 43 38             	mov    %eax,0x38(%ebx)
580cc5:	33 c0                	xor    %eax,%eax
580cc7:	8a 06                	mov    (%esi),%al
580cc9:	89 43 28             	mov    %eax,0x28(%ebx)
580ccc:	33 c0                	xor    %eax,%eax
580cce:	8a 46 01             	mov    0x1(%esi),%al
580cd1:	89 43 2c             	mov    %eax,0x2c(%ebx)
580cd4:	8d 46 28             	lea    0x28(%esi),%eax
580cd7:	e8 cc aa ff ff       	call   0x57b7a8
580cdc:	8d 46 2a             	lea    0x2a(%esi),%eax
580cdf:	e8 c4 aa ff ff       	call   0x57b7a8
580ce4:	0f b7 46 28          	movzwl 0x28(%esi),%eax
580ce8:	89 43 30             	mov    %eax,0x30(%ebx)
580ceb:	0f b7 46 2a          	movzwl 0x2a(%esi),%eax
580cef:	89 43 34             	mov    %eax,0x34(%ebx)
580cf2:	8d 46 04             	lea    0x4(%esi),%eax
580cf5:	e8 ba aa ff ff       	call   0x57b7b4
580cfa:	8d 46 08             	lea    0x8(%esi),%eax
580cfd:	e8 b2 aa ff ff       	call   0x57b7b4
580d02:	8d 46 0c             	lea    0xc(%esi),%eax
580d05:	e8 aa aa ff ff       	call   0x57b7b4
580d0a:	8d 46 10             	lea    0x10(%esi),%eax
580d0d:	e8 a2 aa ff ff       	call   0x57b7b4
580d12:	8d 46 14             	lea    0x14(%esi),%eax
580d15:	e8 9a aa ff ff       	call   0x57b7b4
580d1a:	8d 46 18             	lea    0x18(%esi),%eax
580d1d:	e8 92 aa ff ff       	call   0x57b7b4
580d22:	8d 46 1c             	lea    0x1c(%esi),%eax
580d25:	e8 8a aa ff ff       	call   0x57b7b4
580d2a:	8d 46 20             	lea    0x20(%esi),%eax
580d2d:	e8 82 aa ff ff       	call   0x57b7b4
580d32:	8d 46 24             	lea    0x24(%esi),%eax
580d35:	e8 7a aa ff ff       	call   0x57b7b4
580d3a:	8b 46 04             	mov    0x4(%esi),%eax
580d3d:	89 43 04             	mov    %eax,0x4(%ebx)
580d40:	8b 46 08             	mov    0x8(%esi),%eax
580d43:	89 43 08             	mov    %eax,0x8(%ebx)
580d46:	8b 46 0c             	mov    0xc(%esi),%eax
580d49:	89 43 0c             	mov    %eax,0xc(%ebx)
580d4c:	8b 46 10             	mov    0x10(%esi),%eax
580d4f:	89 43 10             	mov    %eax,0x10(%ebx)
580d52:	8b 46 14             	mov    0x14(%esi),%eax
580d55:	89 43 14             	mov    %eax,0x14(%ebx)
580d58:	8b 46 18             	mov    0x18(%esi),%eax
580d5b:	89 43 18             	mov    %eax,0x18(%ebx)
580d5e:	8b 46 1c             	mov    0x1c(%esi),%eax
580d61:	89 43 1c             	mov    %eax,0x1c(%ebx)
580d64:	8b 46 20             	mov    0x20(%esi),%eax
580d67:	89 43 20             	mov    %eax,0x20(%ebx)
580d6a:	8b 46 24             	mov    0x24(%esi),%eax
580d6d:	89 43 24             	mov    %eax,0x24(%ebx)
580d70:	68 e2 36 1a 3f       	push   $0x3f1a36e2
580d75:	68 2d 43 1c eb       	push   $0xeb1c432d
580d7a:	8d 43 04             	lea    0x4(%ebx),%eax
580d7d:	e8 ae e9 ff ff       	call   0x57f730
580d82:	85 c0                	test   %eax,%eax
580d84:	75 03                	jne    0x580d89
580d86:	83 0b 01             	orl    $0x1,(%ebx)
580d89:	33 c0                	xor    %eax,%eax
580d8b:	89 44 24 04          	mov    %eax,0x4(%esp)
580d8f:	8b 43 28             	mov    0x28(%ebx),%eax
580d92:	48                   	dec    %eax
580d93:	85 c0                	test   %eax,%eax
580d95:	72 52                	jb     0x580de9
580d97:	40                   	inc    %eax
580d98:	89 44 24 08          	mov    %eax,0x8(%esp)
580d9c:	33 ff                	xor    %edi,%edi
580d9e:	8b 43 30             	mov    0x30(%ebx),%eax
580da1:	03 c0                	add    %eax,%eax
580da3:	e8 04 1a e8 ff       	call   0x4027ac
580da8:	8b f0                	mov    %eax,%esi
580daa:	89 74 bb 3c          	mov    %esi,0x3c(%ebx,%edi,4)
580dae:	8b 04 24             	mov    (%esp),%eax
580db1:	8b 00                	mov    (%eax),%eax
580db3:	50                   	push   %eax
580db4:	8b 6c 24 04          	mov    0x4(%esp),%ebp
580db8:	8b 4b 30             	mov    0x30(%ebx),%ecx
580dbb:	ba 02 00 00 00       	mov    $0x2,%edx
580dc0:	8b c6                	mov    %esi,%eax
580dc2:	ff 95 ec 03 00 00    	call   *0x3ec(%ebp)
580dc8:	8b 53 30             	mov    0x30(%ebx),%edx
580dcb:	8b c6                	mov    %esi,%eax
580dcd:	e8 a6 fe ff ff       	call   0x580c78
580dd2:	8b 44 bb 3c          	mov    0x3c(%ebx,%edi,4),%eax
580dd6:	8b 53 30             	mov    0x30(%ebx),%edx
580dd9:	e8 ee e9 ff ff       	call   0x57f7cc
580dde:	01 44 24 04          	add    %eax,0x4(%esp)
580de2:	47                   	inc    %edi
580de3:	ff 4c 24 08          	decl   0x8(%esp)
580de7:	75 b5                	jne    0x580d9e
580de9:	8b 44 24 04          	mov    0x4(%esp),%eax
580ded:	3b 43 28             	cmp    0x28(%ebx),%eax
580df0:	75 03                	jne    0x580df5
580df2:	83 23 fd             	andl   $0xfffffffd,(%ebx)
580df5:	8b 53 28             	mov    0x28(%ebx),%edx
580df8:	8b 43 38             	mov    0x38(%ebx),%eax
580dfb:	e8 38 ea ff ff       	call   0x57f838
580e00:	8b f8                	mov    %eax,%edi
580e02:	0f af 7b 2c          	imul   0x2c(%ebx),%edi
580e06:	85 ff                	test   %edi,%edi
580e08:	7e 43                	jle    0x580e4d
580e0a:	8b c7                	mov    %edi,%eax
580e0c:	03 c0                	add    %eax,%eax
580e0e:	e8 99 19 e8 ff       	call   0x4027ac
580e13:	8b f0                	mov    %eax,%esi
580e15:	89 b3 bc 00 00 00    	mov    %esi,0xbc(%ebx)
580e1b:	8b c7                	mov    %edi,%eax
580e1d:	03 c0                	add    %eax,%eax
580e1f:	89 83 c0 00 00 00    	mov    %eax,0xc0(%ebx)
580e25:	8b 04 24             	mov    (%esp),%eax
580e28:	8b 00                	mov    (%eax),%eax
580e2a:	50                   	push   %eax
580e2b:	8b 6c 24 04          	mov    0x4(%esp),%ebp
580e2f:	8b cf                	mov    %edi,%ecx
580e31:	ba 02 00 00 00       	mov    $0x2,%edx
580e36:	8b c6                	mov    %esi,%eax
580e38:	ff 95 ec 03 00 00    	call   *0x3ec(%ebp)
580e3e:	8b d7                	mov    %edi,%edx
580e40:	8b 83 bc 00 00 00    	mov    0xbc(%ebx),%eax
580e46:	e8 2d fe ff ff       	call   0x580c78
580e4b:	eb 13                	jmp    0x580e60
580e4d:	33 c0                	xor    %eax,%eax
580e4f:	89 83 bc 00 00 00    	mov    %eax,0xbc(%ebx)
580e55:	33 c0                	xor    %eax,%eax
580e57:	89 83 c0 00 00 00    	mov    %eax,0xc0(%ebx)
580e5d:	83 23 ef             	andl   $0xffffffef,(%ebx)
580e60:	33 c0                	xor    %eax,%eax
580e62:	89 44 24 04          	mov    %eax,0x4(%esp)
580e66:	8b 43 2c             	mov    0x2c(%ebx),%eax
580e69:	48                   	dec    %eax
580e6a:	85 c0                	test   %eax,%eax
580e6c:	72 52                	jb     0x580ec0
580e6e:	40                   	inc    %eax
580e6f:	89 44 24 08          	mov    %eax,0x8(%esp)
580e73:	33 ff                	xor    %edi,%edi
580e75:	8b 43 34             	mov    0x34(%ebx),%eax
580e78:	03 c0                	add    %eax,%eax
580e7a:	e8 2d 19 e8 ff       	call   0x4027ac
580e7f:	8b f0                	mov    %eax,%esi
580e81:	89 74 bb 7c          	mov    %esi,0x7c(%ebx,%edi,4)
580e85:	8b 04 24             	mov    (%esp),%eax
580e88:	8b 00                	mov    (%eax),%eax
580e8a:	50                   	push   %eax
580e8b:	8b 6c 24 04          	mov    0x4(%esp),%ebp
580e8f:	8b 4b 34             	mov    0x34(%ebx),%ecx
580e92:	ba 02 00 00 00       	mov    $0x2,%edx
580e97:	8b c6                	mov    %esi,%eax
580e99:	ff 95 ec 03 00 00    	call   *0x3ec(%ebp)
580e9f:	8b 53 34             	mov    0x34(%ebx),%edx
580ea2:	8b c6                	mov    %esi,%eax
580ea4:	e8 cf fd ff ff       	call   0x580c78
580ea9:	8b 44 bb 7c          	mov    0x7c(%ebx,%edi,4),%eax
580ead:	8b 53 34             	mov    0x34(%ebx),%edx
580eb0:	e8 17 e9 ff ff       	call   0x57f7cc
580eb5:	01 44 24 04          	add    %eax,0x4(%esp)
580eb9:	47                   	inc    %edi
580eba:	ff 4c 24 08          	decl   0x8(%esp)
580ebe:	75 b5                	jne    0x580e75
580ec0:	8b 44 24 04          	mov    0x4(%esp),%eax
580ec4:	3b 43 2c             	cmp    0x2c(%ebx),%eax
580ec7:	75 03                	jne    0x580ecc
580ec9:	83 23 f7             	andl   $0xfffffff7,(%ebx)
580ecc:	8d 93 c4 00 00 00    	lea    0xc4(%ebx),%edx
580ed2:	8b 43 30             	mov    0x30(%ebx),%eax
580ed5:	e8 72 e9 ff ff       	call   0x57f84c
580eda:	8d 93 fa 00 00 00    	lea    0xfa(%ebx),%edx
580ee0:	8b 43 34             	mov    0x34(%ebx),%eax
580ee3:	e8 64 e9 ff ff       	call   0x57f84c
580ee8:	8d 83 30 01 00 00    	lea    0x130(%ebx),%eax
580eee:	50                   	push   %eax
580eef:	8b 4b 2c             	mov    0x2c(%ebx),%ecx
580ef2:	8b 53 28             	mov    0x28(%ebx),%edx
580ef5:	8b 43 38             	mov    0x38(%ebx),%eax
580ef8:	e8 33 f8 ff ff       	call   0x580730
580efd:	83 c4 3c             	add    $0x3c,%esp
580f00:	5d                   	pop    %ebp
580f01:	5f                   	pop    %edi
580f02:	5e                   	pop    %esi
580f03:	5b                   	pop    %ebx
580f04:	c3                   	ret
580f05:	8d 40 00             	lea    0x0(%eax),%eax
580f08:	53                   	push   %ebx
580f09:	56                   	push   %esi
580f0a:	8b f0                	mov    %eax,%esi
580f0c:	8b c6                	mov    %esi,%eax
580f0e:	48                   	dec    %eax
580f0f:	03 c0                	add    %eax,%eax
580f11:	83 c0 06             	add    $0x6,%eax
580f14:	e8 93 18 e8 ff       	call   0x4027ac
580f19:	8b d8                	mov    %eax,%ebx
580f1b:	85 db                	test   %ebx,%ebx
580f1d:	75 05                	jne    0x580f24
580f1f:	33 c0                	xor    %eax,%eax
580f21:	5e                   	pop    %esi
580f22:	5b                   	pop    %ebx
580f23:	c3                   	ret
580f24:	89 33                	mov    %esi,(%ebx)
580f26:	8b d6                	mov    %esi,%edx
580f28:	03 d2                	add    %edx,%edx
580f2a:	8d 43 04             	lea    0x4(%ebx),%eax
580f2d:	e8 a2 6f e8 ff       	call   0x407ed4
580f32:	8b c3                	mov    %ebx,%eax
580f34:	5e                   	pop    %esi
580f35:	5b                   	pop    %ebx
580f36:	c3                   	ret
580f37:	90                   	nop
580f38:	55                   	push   %ebp
580f39:	8b ec                	mov    %esp,%ebp
580f3b:	83 c4 f8             	add    $0xfffffff8,%esp
580f3e:	dd 45 10             	fldl   0x10(%ebp)
580f41:	83 c4 f4             	add    $0xfffffff4,%esp
580f44:	db 3c 24             	fstpt  (%esp)
580f47:	9b dd 45 08          	fldl   0x8(%ebp)
580f4b:	83 c4 f4             	add    $0xfffffff4,%esp
580f4e:	db 3c 24             	fstpt  (%esp)
580f51:	9b                   	fwait
580f52:	e8 c9 fc 06 00       	call   0x5f0c20
580f57:	dd 5d f8             	fstpl  -0x8(%ebp)
580f5a:	9b dd 45 f8          	fldl   -0x8(%ebp)