58c9f9:	8b 54 24 04          	mov    0x4(%esp),%edx
58c9fd:	e8 fa bf ff ff       	call   0x5889fc
58ca02:	66 8b 94 5c 3c 01 00 	mov    0x13c(%esp,%ebx,2),%dx
58ca09:	00
58ca0a:	c1 e2 02             	shl    $0x2,%edx
58ca0d:	66 89 10             	mov    %dx,(%eax)
58ca10:	ff 44 24 08          	incl   0x8(%esp)
58ca14:	ff 4c 24 2c          	decl   0x2c(%esp)
58ca18:	0f 85 7d fd ff ff    	jne    0x58c79b
58ca1e:	ff 44 24 04          	incl   0x4(%esp)
58ca22:	ff 4c 24 28          	decl   0x28(%esp)
58ca26:	0f 85 19 fd ff ff    	jne    0x58c745
58ca2c:	81 c4 44 21 00 00    	add    $0x2144,%esp
58ca32:	5f                   	pop    %edi
58ca33:	5e                   	pop    %esi
58ca34:	5b                   	pop    %ebx
58ca35:	c3                   	ret
58ca36:	00 00                	add    %al,(%eax)
58ca38:	00 00                	add    %al,(%eax)
58ca3a:	c8 42 00 00          	enter  $0x42,$0x0
58ca3e:	00 40 53             	add    %al,0x53(%eax)
58ca41:	56                   	push   %esi
58ca42:	57                   	push   %edi
58ca43:	55                   	push   %ebp
58ca44:	50                   	push   %eax
58ca45:	b8 02 00 00 00       	mov    $0x2,%eax
58ca4a:	81 c4 04 f0 ff ff    	add    $0xfffff004,%esp
58ca50:	50                   	push   %eax
58ca51:	48                   	dec    %eax
58ca52:	75 f6                	jne    0x58ca4a
58ca54:	8b 84 24 00 20 00 00 	mov    0x2000(%esp),%eax
58ca5b:	81 c4 1c fe ff ff    	add    $0xfffffe1c,%esp
58ca61:	8b d0                	mov    %eax,%edx
58ca63:	89 54 24 28          	mov    %edx,0x28(%esp)
58ca67:	33 c9                	xor    %ecx,%ecx
58ca69:	89 4c 24 08          	mov    %ecx,0x8(%esp)
58ca6d:	c7 44 24 10 00 00 00 	movl   $0x0,0x10(%esp)
58ca74:	00
58ca75:	c7 44 24 14 00 00 00 	movl   $0x0,0x14(%esp)
58ca7c:	00
58ca7d:	33 c9                	xor    %ecx,%ecx
58ca7f:	89 4c 24 18          	mov    %ecx,0x18(%esp)
58ca83:	33 c9                	xor    %ecx,%ecx
58ca85:	89 4c 24 1c          	mov    %ecx,0x1c(%esp)
58ca89:	33 c9                	xor    %ecx,%ecx
58ca8b:	89 4c 24 20          	mov    %ecx,0x20(%esp)
58ca8f:	8b c2                	mov    %edx,%eax
58ca91:	8d 94 24 e0 01 00 00 	lea    0x1e0(%esp),%edx
58ca98:	e8 5f cd ff ff       	call   0x5897fc
58ca9d:	8b 44 24 28          	mov    0x28(%esp),%eax
58caa1:	db 80 f8 00 00 00    	fildl  0xf8(%eax)
58caa7:	d8 3d 50 ce 58 00    	fdivrs 0x58ce50
58caad:	d8 35 54 ce 58 00    	fdivs  0x58ce54
58cab3:	8b 44 24 28          	mov    0x28(%esp),%eax
58cab7:	dd 98 c0 f4 00 00    	fstpl  0xf4c0(%eax)
58cabd:	9b                   	fwait
58cabe:	33 c0                	xor    %eax,%eax
58cac0:	89 04 24             	mov    %eax,(%esp)
58cac3:	e9 4d 03 00 00       	jmp    0x58ce15
58cac8:	8b 44 24 28          	mov    0x28(%esp),%eax
58cacc:	8d 98 a8 f4 00 00    	lea    0xf4a8(%eax),%ebx
58cad2:	66 83 7b 02 00       	cmpw   $0x0,0x2(%ebx)
58cad7:	74 2c                	je     0x58cb05
58cad9:	8b 04 24             	mov    (%esp),%eax
58cadc:	89 84 24 e0 21 00 00 	mov    %eax,0x21e0(%esp)
58cae3:	33 c0                	xor    %eax,%eax
58cae5:	89 84 24 e4 21 00 00 	mov    %eax,0x21e4(%esp)
58caec:	df ac 24 e0 21 00 00 	fildll 0x21e0(%esp)
58caf3:	dc 4b 18             	fmull  0x18(%ebx)
58caf6:	e8 d1 61 e7 ff       	call   0x402ccc
58cafb:	8b c8                	mov    %eax,%ecx
58cafd:	8b 53 08             	mov    0x8(%ebx),%edx
58cb00:	8b 43 04             	mov    0x4(%ebx),%eax
58cb03:	ff 13                	call   *(%ebx)
58cb05:	33 c0                	xor    %eax,%eax
58cb07:	89 44 24 04          	mov    %eax,0x4(%esp)
58cb0b:	e9 d1 02 00 00       	jmp    0x58cde1
58cb10:	f6 44 24 04 7f       	testb  $0x7f,0x4(%esp)
58cb15:	0f 85 de 00 00 00    	jne    0x58cbf9
58cb1b:	2b 4c 24 04          	sub    0x4(%esp),%ecx
58cb1f:	41                   	inc    %ecx
58cb20:	8d 34 49             	lea    (%ecx,%ecx,2),%esi
58cb23:	83 e6 fc             	and    $0xfffffffc,%esi
58cb26:	81 fe 80 01 00 00    	cmp    $0x180,%esi
58cb2c:	76 05                	jbe    0x58cb33
58cb2e:	be 80 01 00 00       	mov    $0x180,%esi
58cb33:	33 db                	xor    %ebx,%ebx
58cb35:	eb 23                	jmp    0x58cb5a
58cb37:	8b 44 24 28          	mov    0x28(%esp),%eax
58cb3b:	8b 40 04             	mov    0x4(%eax),%eax
58cb3e:	e8 85 be ff ff       	call   0x5889c8
58cb43:	8b d0                	mov    %eax,%edx
58cb45:	8b c2                	mov    %edx,%eax
58cb47:	24 0f                	and    $0xf,%al
58cb49:	88 44 1c 2c          	mov    %al,0x2c(%esp,%ebx,1)
58cb4d:	43                   	inc    %ebx
58cb4e:	33 c0                	xor    %eax,%eax
58cb50:	8a c2                	mov    %dl,%al
58cb52:	c1 e8 04             	shr    $0x4,%eax
58cb55:	88 44 1c 2c          	mov    %al,0x2c(%esp,%ebx,1)
58cb59:	43                   	inc    %ebx
58cb5a:	8b c3                	mov    %ebx,%eax
58cb5c:	99                   	cltd
58cb5d:	52                   	push   %edx
58cb5e:	50                   	push   %eax
58cb5f:	8b c6                	mov    %esi,%eax
58cb61:	33 d2                	xor    %edx,%edx
58cb63:	3b 54 24 04          	cmp    0x4(%esp),%edx
58cb67:	75 09                	jne    0x58cb72
58cb69:	3b 04 24             	cmp    (%esp),%eax
58cb6c:	5a                   	pop    %edx
58cb6d:	58                   	pop    %eax
58cb6e:	77 c7                	ja     0x58cb37
58cb70:	eb 04                	jmp    0x58cb76
58cb72:	5a                   	pop    %edx
58cb73:	58                   	pop    %eax
58cb74:	7f c1                	jg     0x58cb37
58cb76:	33 c0                	xor    %eax,%eax
58cb78:	89 44 24 18          	mov    %eax,0x18(%esp)
58cb7c:	c7 44 24 10 00 00 00 	movl   $0x0,0x10(%esp)
58cb83:	00
58cb84:	c7 44 24 14 00 00 00 	movl   $0x0,0x14(%esp)
58cb8b:	00
58cb8c:	33 c0                	xor    %eax,%eax
58cb8e:	89 44 24 08          	mov    %eax,0x8(%esp)
58cb92:	33 c0                	xor    %eax,%eax
58cb94:	89 84 24 b0 01 00 00 	mov    %eax,0x1b0(%esp)
58cb9b:	33 c0                	xor    %eax,%eax
58cb9d:	89 84 24 b8 01 00 00 	mov    %eax,0x1b8(%esp)
58cba4:	33 c0                	xor    %eax,%eax
58cba6:	89 44 24 1c          	mov    %eax,0x1c(%esp)
58cbaa:	33 c0                	xor    %eax,%eax
58cbac:	89 44 24 20          	mov    %eax,0x20(%esp)
58cbb0:	83 e6 07             	and    $0x7,%esi
58cbb3:	83 fe 04             	cmp    $0x4,%esi
58cbb6:	75 41                	jne    0x58cbf9
58cbb8:	8b 44 24 28          	mov    0x28(%esp),%eax
58cbbc:	8b 40 04             	mov    0x4(%eax),%eax
58cbbf:	e8 04 be ff ff       	call   0x5889c8
58cbc4:	25 ff 00 00 00       	and    $0xff,%eax
58cbc9:	c1 e0 08             	shl    $0x8,%eax
58cbcc:	33 d2                	xor    %edx,%edx
58cbce:	89 44 24 10          	mov    %eax,0x10(%esp)
58cbd2:	89 54 24 14          	mov    %edx,0x14(%esp)
58cbd6:	8b 44 24 28          	mov    0x28(%esp),%eax
58cbda:	8b 40 04             	mov    0x4(%eax),%eax
58cbdd:	e8 e6 bd ff ff       	call   0x5889c8
58cbe2:	25 ff 00 00 00       	and    $0xff,%eax
58cbe7:	33 d2                	xor    %edx,%edx
58cbe9:	01 44 24 10          	add    %eax,0x10(%esp)
58cbed:	11 54 24 14          	adc    %edx,0x14(%esp)
58cbf1:	c7 44 24 08 10 00 00 	movl   $0x10,0x8(%esp)
58cbf8:	00
58cbf9:	bd 06 00 00 00       	mov    $0x6,%ebp
58cbfe:	8d bc 24 bc 01 00 00 	lea    0x1bc(%esp),%edi
58cc05:	8b 44 24 18          	mov    0x18(%esp),%eax
58cc09:	0f b6 74 04 2c       	movzbl 0x2c(%esp,%eax,1),%esi
58cc0e:	ff 44 24 18          	incl   0x18(%esp)
58cc12:	3b 74 24 08          	cmp    0x8(%esp),%esi
58cc16:	76 48                	jbe    0x58cc60
58cc18:	33 db                	xor    %ebx,%ebx
58cc1a:	8b 44 24 28          	mov    0x28(%esp),%eax
58cc1e:	8b 40 04             	mov    0x4(%eax),%eax
58cc21:	e8 a2 bd ff ff       	call   0x5889c8
58cc26:	25 ff 00 00 00       	and    $0xff,%eax
58cc2b:	50                   	push   %eax
58cc2c:	8b 44 24 0c          	mov    0xc(%esp),%eax
58cc30:	33 d2                	xor    %edx,%edx
58cc32:	52                   	push   %edx
58cc33:	50                   	push   %eax
58cc34:	8b c3                	mov    %ebx,%eax
58cc36:	83 f0 08             	xor    $0x8,%eax
58cc39:	99                   	cltd
58cc3a:	03 04 24             	add    (%esp),%eax
58cc3d:	13 54 24 04          	adc    0x4(%esp),%edx
58cc41:	83 c4 08             	add    $0x8,%esp
58cc44:	8b c8                	mov    %eax,%ecx
58cc46:	58                   	pop    %eax
58cc47:	d3 e0                	shl    %cl,%eax
58cc49:	33 d2                	xor    %edx,%edx
58cc4b:	01 44 24 10          	add    %eax,0x10(%esp)
58cc4f:	11 54 24 14          	adc    %edx,0x14(%esp)
58cc53:	83 c3 08             	add    $0x8,%ebx
58cc56:	83 fb 20             	cmp    $0x20,%ebx
58cc59:	7c bf                	jl     0x58cc1a
58cc5b:	83 44 24 08 20       	addl   $0x20,0x8(%esp)
58cc60:	b9 10 00 00 00       	mov    $0x10,%ecx
58cc65:	2b ce                	sub    %esi,%ecx
58cc67:	bb ff ff 00 00       	mov    $0xffff,%ebx
58cc6c:	d3 eb                	shr    %cl,%ebx
58cc6e:	23 5c 24 10          	and    0x10(%esp),%ebx
58cc72:	8b 44 24 10          	mov    0x10(%esp),%eax
58cc76:	8b 54 24 14          	mov    0x14(%esp),%edx
58cc7a:	8b ce                	mov    %esi,%ecx
58cc7c:	e8 db 8f e7 ff       	call   0x405c5c
58cc81:	89 44 24 10          	mov    %eax,0x10(%esp)
58cc85:	89 54 24 14          	mov    %edx,0x14(%esp)
58cc89:	29 74 24 08          	sub    %esi,0x8(%esp)
58cc8d:	8b ce                	mov    %esi,%ecx
58cc8f:	49                   	dec    %ecx
58cc90:	b8 01 00 00 00       	mov    $0x1,%eax
58cc95:	d3 e0                	shl    %cl,%eax
58cc97:	85 d8                	test   %ebx,%eax
58cc99:	75 0c                	jne    0x58cca7
58cc9b:	8b ce                	mov    %esi,%ecx
58cc9d:	b8 01 00 00 00       	mov    $0x1,%eax
58cca2:	d3 e0                	shl    %cl,%eax
58cca4:	48                   	dec    %eax
58cca5:	2b d8                	sub    %eax,%ebx
58cca7:	89 1f                	mov    %ebx,(%edi)
58cca9:	83 c7 04             	add    $0x4,%edi
58ccac:	4d                   	dec    %ebp
58ccad:	0f 85 52 ff ff ff    	jne    0x58cc05
58ccb3:	8b 84 24 bc 01 00 00 	mov    0x1bc(%esp),%eax
58ccba:	03 84 24 b0 01 00 00 	add    0x1b0(%esp),%eax
58ccc1:	89 84 24 ac 01 00 00 	mov    %eax,0x1ac(%esp)
58ccc8:	8b 94 24 c0 01 00 00 	mov    0x1c0(%esp),%edx
58cccf:	03 d0                	add    %eax,%edx
58ccd1:	89 94 24 b0 01 00 00 	mov    %edx,0x1b0(%esp)
58ccd8:	8b 84 24 c4 01 00 00 	mov    0x1c4(%esp),%eax
58ccdf:	03 84 24 b8 01 00 00 	add    0x1b8(%esp),%eax
58cce6:	89 84 24 b4 01 00 00 	mov    %eax,0x1b4(%esp)
58cced:	8b 94 24 c8 01 00 00 	mov    0x1c8(%esp),%edx
58ccf4:	03 d0                	add    %eax,%edx
58ccf6:	89 94 24 b8 01 00 00 	mov    %edx,0x1b8(%esp)
58ccfd:	8b 84 24 cc 01 00 00 	mov    0x1cc(%esp),%eax
58cd04:	01 44 24 1c          	add    %eax,0x1c(%esp)
58cd08:	8b 84 24 d0 01 00 00 	mov    0x1d0(%esp),%eax
58cd0f:	01 44 24 20          	add    %eax,0x20(%esp)
58cd13:	33 db                	xor    %ebx,%ebx
58cd15:	8d b4 24 ac 01 00 00 	lea    0x1ac(%esp),%esi
58cd1c:	8b 44 24 28          	mov    0x28(%esp),%eax
58cd20:	8b 80 fc 00 00 00    	mov    0xfc(%eax),%eax
58cd26:	99                   	cltd
58cd27:	52                   	push   %edx
58cd28:	50                   	push   %eax
58cd29:	8b 44 24 08          	mov    0x8(%esp),%eax
58cd2d:	33 d2                	xor    %edx,%edx
58cd2f:	52                   	push   %edx
58cd30:	50                   	push   %eax
58cd31:	8b c3                	mov    %ebx,%eax
58cd33:	d1 e8                	shr    $1,%eax
58cd35:	99                   	cltd
58cd36:	03 04 24             	add    (%esp),%eax
58cd39:	13 54 24 04          	adc    0x4(%esp),%edx
58cd3d:	83 c4 08             	add    $0x8,%esp
58cd40:	e8 3f 8d e7 ff       	call   0x405a84
58cd45:	52                   	push   %edx
58cd46:	50                   	push   %eax
58cd47:	8b 44 24 0c          	mov    0xc(%esp),%eax
58cd4b:	33 d2                	xor    %edx,%edx
58cd4d:	03 04 24             	add    (%esp),%eax
58cd50:	13 54 24 04          	adc    0x4(%esp),%edx
58cd54:	83 c4 08             	add    $0x8,%esp
58cd57:	52                   	push   %edx
58cd58:	50                   	push   %eax
58cd59:	8b c3                	mov    %ebx,%eax
58cd5b:	83 e0 01             	and    $0x1,%eax
58cd5e:	99                   	cltd
58cd5f:	03 04 24             	add    (%esp),%eax
58cd62:	13 54 24 04          	adc    0x4(%esp),%edx
58cd66:	83 c4 08             	add    $0x8,%esp
58cd69:	8b 54 24 28          	mov    0x28(%esp),%edx
58cd6d:	8b 12                	mov    (%edx),%edx
58cd6f:	8d 04 c2             	lea    (%edx,%eax,8),%eax
58cd72:	89 44 24 24          	mov    %eax,0x24(%esp)
58cd76:	8b 06                	mov    (%esi),%eax
58cd78:	8b d0                	mov    %eax,%edx
58cd7a:	03 54 24 20          	add    0x20(%esp),%edx
58cd7e:	89 94 24 d4 01 00 00 	mov    %edx,0x1d4(%esp)
58cd85:	89 84 24 d8 01 00 00 	mov    %eax,0x1d8(%esp)
58cd8c:	03 44 24 1c          	add    0x1c(%esp),%eax
58cd90:	89 84 24 dc 01 00 00 	mov    %eax,0x1dc(%esp)
58cd97:	33 d2                	xor    %edx,%edx
58cd99:	8d 84 24 d4 01 00 00 	lea    0x1d4(%esp),%eax
58cda0:	8b 08                	mov    (%eax),%ecx
58cda2:	85 c9                	test   %ecx,%ecx
58cda4:	7e 20                	jle    0x58cdc6
58cda6:	8b fa                	mov    %edx,%edi
58cda8:	81 e7 ff 00 00 00    	and    $0xff,%edi
58cdae:	8b 6c 24 24          	mov    0x24(%esp),%ebp
58cdb2:	8d 7c 7d 00          	lea    0x0(%ebp,%edi,2),%edi
58cdb6:	57                   	push   %edi
58cdb7:	66 8b 8c 4c e4 01 00 	mov    0x1e4(%esp,%ecx,2),%cx
58cdbe:	00
58cdbf:	c1 e1 02             	shl    $0x2,%ecx
58cdc2:	5f                   	pop    %edi
58cdc3:	66 89 0f             	mov    %cx,(%edi)
58cdc6:	42                   	inc    %edx
58cdc7:	83 c0 04             	add    $0x4,%eax
58cdca:	80 fa 03             	cmp    $0x3,%dl
58cdcd:	75 d1                	jne    0x58cda0
58cdcf:	43                   	inc    %ebx
58cdd0:	83 c6 04             	add    $0x4,%esi
58cdd3:	83 fb 04             	cmp    $0x4,%ebx
58cdd6:	0f 85 40 ff ff ff    	jne    0x58cd1c
58cddc:	83 44 24 04 02       	addl   $0x2,0x4(%esp)
58cde1:	8b 44 24 04          	mov    0x4(%esp),%eax
58cde5:	33 d2                	xor    %edx,%edx
58cde7:	52                   	push   %edx
58cde8:	50                   	push   %eax
58cde9:	8b 44 24 30          	mov    0x30(%esp),%eax
58cded:	8b 88 fc 00 00 00    	mov    0xfc(%eax),%ecx
58cdf3:	8b c1                	mov    %ecx,%eax
58cdf5:	99                   	cltd
58cdf6:	3b 54 24 04          	cmp    0x4(%esp),%edx
58cdfa:	75 0d                	jne    0x58ce09
58cdfc:	3b 04 24             	cmp    (%esp),%eax
58cdff:	5a                   	pop    %edx
58ce00:	58                   	pop    %eax
58ce01:	0f 87 09 fd ff ff    	ja     0x58cb10
58ce07:	eb 08                	jmp    0x58ce11
58ce09:	5a                   	pop    %edx
58ce0a:	58                   	pop    %eax
58ce0b:	0f 8f ff fc ff ff    	jg     0x58cb10
58ce11:	83 04 24 02          	addl   $0x2,(%esp)
58ce15:	8b 04 24             	mov    (%esp),%eax
58ce18:	33 d2                	xor    %edx,%edx
58ce1a:	52                   	push   %edx
58ce1b:	50                   	push   %eax
58ce1c:	8b 44 24 30          	mov    0x30(%esp),%eax
58ce20:	8b 80 f8 00 00 00    	mov    0xf8(%eax),%eax
58ce26:	99                   	cltd
58ce27:	3b 54 24 04          	cmp    0x4(%esp),%edx
58ce2b:	75 0d                	jne    0x58ce3a
58ce2d:	3b 04 24             	cmp    (%esp),%eax
58ce30:	5a                   	pop    %edx
58ce31:	58                   	pop    %eax
58ce32:	0f 87 90 fc ff ff    	ja     0x58cac8
58ce38:	eb 08                	jmp    0x58ce42
58ce3a:	5a                   	pop    %edx
58ce3b:	58                   	pop    %eax
58ce3c:	0f 8f 86 fc ff ff    	jg     0x58cac8
58ce42:	81 c4 e8 21 00 00    	add    $0x21e8,%esp
58ce48:	5d                   	pop    %ebp
58ce49:	5f                   	pop    %edi
58ce4a:	5e                   	pop    %esi
58ce4b:	5b                   	pop    %ebx
58ce4c:	c3                   	ret
58ce4d:	00 00                	add    %al,(%eax)
58ce4f:	00 00                	add    %al,(%eax)
58ce51:	00 c8                	add    %cl,%al
58ce53:	42                   	inc    %edx
58ce54:	00 00                	add    %al,(%eax)
58ce56:	00 40 55             	add    %al,0x55(%eax)
58ce59:	8b ec                	mov    %esp,%ebp
58ce5b:	83 c4 f8             	add    $0xfffffff8,%esp
58ce5e:	53                   	push   %ebx
58ce5f:	56                   	push   %esi
58ce60:	89 4d f8             	mov    %ecx,-0x8(%ebp)