658aa6:	e9 ad b4 da ff       	jmp    0x403f58
658aab:	e8 10 b8 da ff       	call   0x4042c0
658ab0:	5f                   	pop    %edi
658ab1:	5e                   	pop    %esi
658ab2:	5b                   	pop    %ebx
658ab3:	5d                   	pop    %ebp
658ab4:	c2 0c 00             	ret    $0xc
658ab7:	00 00                	add    %al,(%eax)
658ab9:	00 00                	add    %al,(%eax)
658abb:	00 02                	add    %al,(%edx)
658abd:	00 00                	add    %al,(%eax)
658abf:	00 00                	add    %al,(%eax)
658ac1:	00 c8                	add    %cl,%al
658ac3:	42                   	inc    %edx
658ac4:	23 84 47 1b 47 ac c5 	and    -0x3a53b8e5(%edi,%eax,2),%eax
658acb:	a7                   	cmpsl  %es:(%edi),%ds:(%esi)
658acc:	ee                   	out    %al,(%dx)
658acd:	3f                   	aas
658ace:	00 00                	add    %al,(%eax)
658ad0:	00 00                	add    %al,(%eax)
658ad2:	80 3f 00             	cmpb   $0x0,(%edi)
658ad5:	00 00                	add    %al,(%eax)
658ad7:	40                   	inc    %eax
658ad8:	55                   	push   %ebp
658ad9:	8b ec                	mov    %esp,%ebp
658adb:	53                   	push   %ebx
658adc:	56                   	push   %esi
658add:	57                   	push   %edi
658ade:	8b d9                	mov    %ecx,%ebx
658ae0:	8b f0                	mov    %eax,%esi
658ae2:	8b 45 10             	mov    0x10(%ebp),%eax
658ae5:	33 d2                	xor    %edx,%edx
658ae7:	55                   	push   %ebp
658ae8:	68 89 8b 65 00       	push   $0x658b89
658aed:	64 ff 32             	push   %fs:(%edx)
658af0:	64 89 22             	mov    %esp,%fs:(%edx)
658af3:	c6 86 40 03 00 00 00 	movb   $0x0,0x340(%esi)
658afa:	a8 01                	test   $0x1,%al
658afc:	75 19                	jne    0x658b17
658afe:	a8 04                	test   $0x4,%al
658b00:	75 15                	jne    0x658b17
658b02:	8b 86 f0 02 00 00    	mov    0x2f0(%esi),%eax
658b08:	66 8b 15 9c 8b 65 00 	mov    0x658b9c,%dx
658b0f:	8b 08                	mov    (%eax),%ecx
658b11:	ff 91 04 01 00 00    	call   *0x104(%ecx)
658b17:	8b c6                	mov    %esi,%eax
658b19:	e8 b2 f6 ff ff       	call   0x6581d0
658b1e:	c6 86 41 03 00 00 00 	movb   $0x0,0x341(%esi)
658b25:	8b 86 f4 02 00 00    	mov    0x2f4(%esi),%eax
658b2b:	80 78 57 00          	cmpb   $0x0,0x57(%eax)
658b2f:	74 38                	je     0x658b69
658b31:	8b 86 f0 02 00 00    	mov    0x2f0(%esi),%eax
658b37:	e8 6c 66 f8 ff       	call   0x5df1a8
658b3c:	66 8b 15 9c 8b 65 00 	mov    0x658b9c,%dx
658b43:	66 3b d0             	cmp    %ax,%dx
658b46:	75 0b                	jne    0x658b53
658b48:	66 ba ca 04          	mov    $0x4ca,%dx
658b4c:	8b c6                	mov    %esi,%eax
658b4e:	e8 e9 f7 ff ff       	call   0x65833c
658b53:	8b 86 f4 02 00 00    	mov    0x2f4(%esi),%eax
658b59:	33 d2                	xor    %edx,%edx
658b5b:	e8 8c fb de ff       	call   0x4486ec
658b60:	33 d2                	xor    %edx,%edx
658b62:	8b c6                	mov    %esi,%eax
658b64:	e8 37 00 00 00       	call   0x658ba0
658b69:	80 fb 01             	cmp    $0x1,%bl
658b6c:	75 11                	jne    0x658b7f
658b6e:	8b c6                	mov    %esi,%eax
658b70:	e8 5f d9 e0 ff       	call   0x4664d4
658b75:	33 c0                	xor    %eax,%eax
658b77:	5a                   	pop    %edx
658b78:	59                   	pop    %ecx
658b79:	59                   	pop    %ecx
658b7a:	64 89 10             	mov    %edx,%fs:(%eax)
658b7d:	eb 14                	jmp    0x658b93
658b7f:	33 c0                	xor    %eax,%eax
658b81:	5a                   	pop    %edx
658b82:	59                   	pop    %ecx
658b83:	59                   	pop    %ecx
658b84:	64 89 10             	mov    %edx,%fs:(%eax)
658b87:	eb 0a                	jmp    0x658b93
658b89:	e9 ca b3 da ff       	jmp    0x403f58
658b8e:	e8 2d b7 da ff       	call   0x4042c0
658b93:	5f                   	pop    %edi
658b94:	5e                   	pop    %esi
658b95:	5b                   	pop    %ebx
658b96:	5d                   	pop    %ebp
658b97:	c2 0c 00             	ret    $0xc
658b9a:	00 00                	add    %al,(%eax)
658b9c:	00 00                	add    %al,(%eax)
658b9e:	00 00                	add    %al,(%eax)
658ba0:	55                   	push   %ebp
658ba1:	8b ec                	mov    %esp,%ebp
658ba3:	83 c4 dc             	add    $0xffffffdc,%esp
658ba6:	53                   	push   %ebx
658ba7:	56                   	push   %esi
658ba8:	57                   	push   %edi
658ba9:	88 55 ff             	mov    %dl,-0x1(%ebp)
658bac:	8b d8                	mov    %eax,%ebx
658bae:	33 c0                	xor    %eax,%eax
658bb0:	55                   	push   %ebp
658bb1:	68 97 8c 65 00       	push   $0x658c97
658bb6:	64 ff 30             	push   %fs:(%eax)
658bb9:	64 89 20             	mov    %esp,%fs:(%eax)
658bbc:	80 7d ff 00          	cmpb   $0x0,-0x1(%ebp)
658bc0:	0f 84 c0 00 00 00    	je     0x658c86
658bc6:	8b 83 f0 02 00 00    	mov    0x2f0(%ebx),%eax
658bcc:	8b 10                	mov    (%eax),%edx
658bce:	ff 92 24 01 00 00    	call   *0x124(%edx)
658bd4:	84 c0                	test   %al,%al
658bd6:	0f 85 aa 00 00 00    	jne    0x658c86
658bdc:	8d 4d ec             	lea    -0x14(%ebp),%ecx
658bdf:	33 d2                	xor    %edx,%edx
658be1:	33 c0                	xor    %eax,%eax
658be3:	e8 64 1a dc ff       	call   0x41a64c
658be8:	8d 55 ec             	lea    -0x14(%ebp),%edx
658beb:	8d 4d f7             	lea    -0x9(%ebp),%ecx
658bee:	8b 83 f0 02 00 00    	mov    0x2f0(%ebx),%eax
658bf4:	e8 eb f6 de ff       	call   0x4482e4
658bf9:	8b bb f0 02 00 00    	mov    0x2f0(%ebx),%edi
658bff:	8b c7                	mov    %edi,%eax
658c01:	8b 10                	mov    (%eax),%edx
658c03:	ff 92 d0 00 00 00    	call   *0xd0(%edx)
658c09:	8b 10                	mov    (%eax),%edx
658c0b:	ff 52 08             	call   *0x8(%edx)
658c0e:	8b d0                	mov    %eax,%edx
658c10:	4a                   	dec    %edx
658c11:	8b c7                	mov    %edi,%eax
658c13:	e8 14 05 f8 ff       	call   0x5d912c
658c18:	03 45 fb             	add    -0x5(%ebp),%eax
658c1b:	50                   	push   %eax
658c1c:	8d 45 dc             	lea    -0x24(%ebp),%eax
658c1f:	50                   	push   %eax
658c20:	8b b3 f0 02 00 00    	mov    0x2f0(%ebx),%esi
658c26:	8b c6                	mov    %esi,%eax
658c28:	8b 10                	mov    (%eax),%edx
658c2a:	ff 92 d0 00 00 00    	call   *0xd0(%edx)
658c30:	8b 10                	mov    (%eax),%edx
658c32:	ff 52 0c             	call   *0xc(%edx)
658c35:	8b d0                	mov    %eax,%edx
658c37:	4a                   	dec    %edx
658c38:	8b c6                	mov    %esi,%eax
658c3a:	e8 69 04 f8 ff       	call   0x5d90a8
658c3f:	03 45 f7             	add    -0x9(%ebp),%eax
658c42:	50                   	push   %eax
658c43:	8b 83 f0 02 00 00    	mov    0x2f0(%ebx),%eax
658c49:	33 d2                	xor    %edx,%edx
658c4b:	e8 dc 04 f8 ff       	call   0x5d912c
658c50:	03 45 fb             	add    -0x5(%ebp),%eax
658c53:	50                   	push   %eax
658c54:	8b 83 f0 02 00 00    	mov    0x2f0(%ebx),%eax
658c5a:	33 d2                	xor    %edx,%edx
658c5c:	e8 47 04 f8 ff       	call   0x5d90a8
658c61:	03 45 f7             	add    -0x9(%ebp),%eax
658c64:	5a                   	pop    %edx
658c65:	59                   	pop    %ecx
658c66:	e8 09 1a dc ff       	call   0x41a674
658c6b:	8d 75 dc             	lea    -0x24(%ebp),%esi
658c6e:	8d bb 5c 03 00 00    	lea    0x35c(%ebx),%edi
658c74:	a5                   	movsl  %ds:(%esi),%es:(%edi)
658c75:	a5                   	movsl  %ds:(%esi),%es:(%edi)
658c76:	a5                   	movsl  %ds:(%esi),%es:(%edi)
658c77:	a5                   	movsl  %ds:(%esi),%es:(%edi)
658c78:	8d 83 5c 03 00 00    	lea    0x35c(%ebx),%eax
658c7e:	50                   	push   %eax
658c7f:	e8 e4 eb da ff       	call   0x407868
658c84:	eb 07                	jmp    0x658c8d
658c86:	6a 00                	push   $0x0
658c88:	e8 db eb da ff       	call   0x407868
658c8d:	33 c0                	xor    %eax,%eax
658c8f:	5a                   	pop    %edx
658c90:	59                   	pop    %ecx
658c91:	59                   	pop    %ecx
658c92:	64 89 10             	mov    %edx,%fs:(%eax)
658c95:	eb 0a                	jmp    0x658ca1
658c97:	e9 bc b2 da ff       	jmp    0x403f58
658c9c:	e8 1f b6 da ff       	call   0x4042c0
658ca1:	5f                   	pop    %edi
658ca2:	5e                   	pop    %esi
658ca3:	5b                   	pop    %ebx
658ca4:	8b e5                	mov    %ebp,%esp
658ca6:	5d                   	pop    %ebp
658ca7:	c3                   	ret
658ca8:	55                   	push   %ebp
658ca9:	8b ec                	mov    %esp,%ebp
658cab:	83 c4 ac             	add    $0xffffffac,%esp
658cae:	53                   	push   %ebx
658caf:	56                   	push   %esi
658cb0:	57                   	push   %edi
658cb1:	8b d8                	mov    %eax,%ebx
658cb3:	33 d2                	xor    %edx,%edx
658cb5:	55                   	push   %ebp
658cb6:	68 13 91 65 00       	push   $0x659113
658cbb:	64 ff 32             	push   %fs:(%edx)
658cbe:	64 89 22             	mov    %esp,%fs:(%edx)
658cc1:	b1 80                	mov    $0x80,%cl
658cc3:	b2 80                	mov    $0x80,%dl
658cc5:	b0 80                	mov    $0x80,%al
658cc7:	e8 80 f2 da ff       	call   0x407f4c
658ccc:	8b d0                	mov    %eax,%edx
658cce:	8b 83 f8 02 00 00    	mov    0x2f8(%ebx),%eax
658cd4:	8b 80 60 01 00 00    	mov    0x160(%eax),%eax
658cda:	8b 40 14             	mov    0x14(%eax),%eax
658cdd:	e8 a2 f5 dc ff       	call   0x428284
658ce2:	8d 55 b0             	lea    -0x50(%ebp),%edx
658ce5:	8b b3 f8 02 00 00    	mov    0x2f8(%ebx),%esi
658ceb:	8b c6                	mov    %esi,%eax
658ced:	8b 08                	mov    (%eax),%ecx
658cef:	ff 51 44             	call   *0x44(%ecx)
658cf2:	8d 55 b0             	lea    -0x50(%ebp),%edx
658cf5:	8b 86 60 01 00 00    	mov    0x160(%esi),%eax
658cfb:	e8 fc f9 dc ff       	call   0x4286fc
658d00:	8b c3                	mov    %ebx,%eax
658d02:	e8 21 04 00 00       	call   0x659128
658d07:	dd 5d d0             	fstpl  -0x30(%ebp)
658d0a:	9b                   	fwait
658d0b:	83 bb 58 03 00 00 00 	cmpl   $0x0,0x358(%ebx)
658d12:	75 26                	jne    0x658d3a
658d14:	db 83 50 03 00 00    	fildl  0x350(%ebx)
658d1a:	8b 83 f0 02 00 00    	mov    0x2f0(%ebx),%eax
658d20:	db 40 48             	fildl  0x48(%eax)
658d23:	de f9                	fdivrp %st,%st(1)
658d25:	dd 5d c8             	fstpl  -0x38(%ebp)
658d28:	9b db 83 54 03 00 00 	fildl  0x354(%ebx)
658d2f:	db 40 4c             	fildl  0x4c(%eax)
658d32:	de f9                	fdivrp %st,%st(1)
658d34:	dd 5d c0             	fstpl  -0x40(%ebp)
658d37:	9b                   	fwait
658d38:	eb 18                	jmp    0x658d52
658d3a:	33 c0                	xor    %eax,%eax
658d3c:	89 45 c8             	mov    %eax,-0x38(%ebp)
658d3f:	c7 45 cc 00 00 e0 3f 	movl   $0x3fe00000,-0x34(%ebp)
658d46:	33 c0                	xor    %eax,%eax
658d48:	89 45 c0             	mov    %eax,-0x40(%ebp)
658d4b:	c7 45 c4 00 00 e0 3f 	movl   $0x3fe00000,-0x3c(%ebp)
658d52:	8b 83 f8 02 00 00    	mov    0x2f8(%ebx),%eax
658d58:	8b 50 48             	mov    0x48(%eax),%edx
658d5b:	89 55 fc             	mov    %edx,-0x4(%ebp)
658d5e:	8b 40 4c             	mov    0x4c(%eax),%eax
658d61:	89 45 f8             	mov    %eax,-0x8(%ebp)
658d64:	db 45 fc             	fildl  -0x4(%ebp)
658d67:	dc 75 d0             	fdivl  -0x30(%ebp)
658d6a:	83 c4 f4             	add    $0xfffffff4,%esp
658d6d:	db 3c 24             	fstpt  (%esp)
658d70:	9b                   	fwait
658d71:	e8 ee 6a dd ff       	call   0x42f864
658d76:	89 45 f4             	mov    %eax,-0xc(%ebp)
658d79:	db 45 f8             	fildl  -0x8(%ebp)
658d7c:	dc 75 d0             	fdivl  -0x30(%ebp)
658d7f:	83 c4 f4             	add    $0xfffffff4,%esp
658d82:	db 3c 24             	fstpt  (%esp)
658d85:	9b                   	fwait
658d86:	e8 d9 6a dd ff       	call   0x42f864
658d8b:	89 45 f0             	mov    %eax,-0x10(%ebp)
658d8e:	8b 93 50 03 00 00    	mov    0x350(%ebx),%edx
658d94:	8b 83 f0 02 00 00    	mov    0x2f0(%ebx),%eax
658d9a:	e8 11 04 f8 ff       	call   0x5d91b0
658d9f:	8b f0                	mov    %eax,%esi
658da1:	8b 93 54 03 00 00    	mov    0x354(%ebx),%edx
658da7:	8b 83 f0 02 00 00    	mov    0x2f0(%ebx),%eax
658dad:	e8 4a 04 f8 ff       	call   0x5d91fc
658db2:	8b f8                	mov    %eax,%edi
658db4:	db 45 f4             	fildl  -0xc(%ebp)
658db7:	dc 4d c8             	fmull  -0x38(%ebp)
658dba:	89 75 ac             	mov    %esi,-0x54(%ebp)
658dbd:	db 45 ac             	fildl  -0x54(%ebp)
658dc0:	de e1                	fsubp  %st,%st(1)
658dc2:	83 c4 f4             	add    $0xfffffff4,%esp
658dc5:	db 3c 24             	fstpt  (%esp)
658dc8:	9b                   	fwait
658dc9:	e8 96 6a dd ff       	call   0x42f864
658dce:	8b f0                	mov    %eax,%esi
658dd0:	db 45 f0             	fildl  -0x10(%ebp)
658dd3:	dc 4d c0             	fmull  -0x40(%ebp)
658dd6:	89 7d ac             	mov    %edi,-0x54(%ebp)
658dd9:	db 45 ac             	fildl  -0x54(%ebp)
658ddc:	de e1                	fsubp  %st,%st(1)
658dde:	83 c4 f4             	add    $0xfffffff4,%esp
658de1:	db 3c 24             	fstpt  (%esp)
658de4:	9b                   	fwait
658de5:	e8 7a 6a dd ff       	call   0x42f864
658dea:	8b f8                	mov    %eax,%edi
658dec:	33 c0                	xor    %eax,%eax
658dee:	89 45 ec             	mov    %eax,-0x14(%ebp)
658df1:	33 c0                	xor    %eax,%eax
658df3:	89 45 e8             	mov    %eax,-0x18(%ebp)
658df6:	85 f6                	test   %esi,%esi
658df8:	7d 1a                	jge    0x658e14
658dfa:	f7 de                	neg    %esi
658dfc:	89 75 ac             	mov    %esi,-0x54(%ebp)
658dff:	db 45 ac             	fildl  -0x54(%ebp)
658e02:	dc 4d d0             	fmull  -0x30(%ebp)
658e05:	83 c4 f4             	add    $0xfffffff4,%esp
658e08:	db 3c 24             	fstpt  (%esp)
658e0b:	9b                   	fwait
658e0c:	e8 53 6a dd ff       	call   0x42f864
658e11:	89 45 ec             	mov    %eax,-0x14(%ebp)
658e14:	85 ff                	test   %edi,%edi
658e16:	7d 1a                	jge    0x658e32
658e18:	f7 df                	neg    %edi
658e1a:	89 7d ac             	mov    %edi,-0x54(%ebp)
658e1d:	db 45 ac             	fildl  -0x54(%ebp)
658e20:	dc 4d d0             	fmull  -0x30(%ebp)
658e23:	83 c4 f4             	add    $0xfffffff4,%esp
658e26:	db 3c 24             	fstpt  (%esp)
658e29:	9b                   	fwait
658e2a:	e8 35 6a dd ff       	call   0x42f864
658e2f:	89 45 e8             	mov    %eax,-0x18(%ebp)
658e32:	8b 93 50 03 00 00    	mov    0x350(%ebx),%edx
658e38:	8b 83 f0 02 00 00    	mov    0x2f0(%ebx),%eax
658e3e:	e8 6d 03 f8 ff       	call   0x5d91b0
658e43:	8b f0                	mov    %eax,%esi
658e45:	8b 93 54 03 00 00    	mov    0x354(%ebx),%edx
658e4b:	8b 83 f0 02 00 00    	mov    0x2f0(%ebx),%eax
658e51:	e8 a6 03 f8 ff       	call   0x5d91fc
658e56:	8b f8                	mov    %eax,%edi
658e58:	89 75 ac             	mov    %esi,-0x54(%ebp)
658e5b:	db 45 ac             	fildl  -0x54(%ebp)
658e5e:	dc 4d d0             	fmull  -0x30(%ebp)
658e61:	e8 5a 9e da ff       	call   0x402cc0
658e66:	50                   	push   %eax
658e67:	db 45 fc             	fildl  -0x4(%ebp)
658e6a:	dc 4d c8             	fmull  -0x38(%ebp)
658e6d:	e8 4e 9e da ff       	call   0x402cc0
658e72:	5a                   	pop    %edx
658e73:	2b d0                	sub    %eax,%edx
658e75:	8b f2                	mov    %edx,%esi
658e77:	89 7d ac             	mov    %edi,-0x54(%ebp)
658e7a:	db 45 ac             	fildl  -0x54(%ebp)
658e7d:	dc 4d d0             	fmull  -0x30(%ebp)
658e80:	e8 3b 9e da ff       	call   0x402cc0
658e85:	50                   	push   %eax
658e86:	db 45 f8             	fildl  -0x8(%ebp)
658e89:	dc 4d c0             	fmull  -0x40(%ebp)
658e8c:	e8 2f 9e da ff       	call   0x402cc0
658e91:	5a                   	pop    %edx
658e92:	2b d0                	sub    %eax,%edx
658e94:	8b fa                	mov    %edx,%edi
658e96:	33 d2                	xor    %edx,%edx
658e98:	8b c6                	mov    %esi,%eax
658e9a:	e8 71 6b dd ff       	call   0x42fa10
658e9f:	8b f0                	mov    %eax,%esi
658ea1:	33 d2                	xor    %edx,%edx
658ea3:	8b c7                	mov    %edi,%eax
658ea5:	e8 66 6b dd ff       	call   0x42fa10
658eaa:	8b f8                	mov    %eax,%edi
658eac:	8b 83 f0 02 00 00    	mov    0x2f0(%ebx),%eax
658eb2:	8b 10                	mov    (%eax),%edx
658eb4:	ff 92 d0 00 00 00    	call   *0xd0(%edx)
658eba:	8b 10                	mov    (%eax),%edx