5aee62:	85 ff                	test   %edi,%edi
5aee64:	0f 8c f1 00 00 00    	jl     0x5aef5b
5aee6a:	47                   	inc    %edi
5aee6b:	c7 45 a0 00 00 00 00 	movl   $0x0,-0x60(%ebp)
5aee72:	8b 45 a4             	mov    -0x5c(%ebp),%eax
5aee75:	03 45 a0             	add    -0x60(%ebp),%eax
5aee78:	85 c0                	test   %eax,%eax
5aee7a:	0f 8c cd 00 00 00    	jl     0x5aef4d
5aee80:	3b 45 ac             	cmp    -0x54(%ebp),%eax
5aee83:	0f 8d c4 00 00 00    	jge    0x5aef4d
5aee89:	8b b5 7c ff ff ff    	mov    -0x84(%ebp),%esi
5aee8f:	8d 04 40             	lea    (%eax,%eax,2),%eax
5aee92:	03 f0                	add    %eax,%esi
5aee94:	33 c0                	xor    %eax,%eax
5aee96:	8a 45 94             	mov    -0x6c(%ebp),%al
5aee99:	f7 6d 9c             	imull  -0x64(%ebp)
5aee9c:	8b 55 80             	mov    -0x80(%ebp),%edx
5aee9f:	0f b6 52 02          	movzbl 0x2(%edx),%edx
5aeea3:	0f af 55 98          	imul   -0x68(%ebp),%edx
5aeea7:	03 c2                	add    %edx,%eax
5aeea9:	05 00 08 00 00       	add    $0x800,%eax
5aeeae:	89 85 f8 fe ff ff    	mov    %eax,-0x108(%ebp)
5aeeb4:	db 85 f8 fe ff ff    	fildl  -0x108(%ebp)
5aeeba:	d8 35 84 f1 5a 00    	fdivs  0x5af184
5aeec0:	e8 fb 3d e5 ff       	call   0x402cc0
5aeec5:	e8 6a a5 ff ff       	call   0x5a9434
5aeeca:	88 46 02             	mov    %al,0x2(%esi)
5aeecd:	33 c0                	xor    %eax,%eax
5aeecf:	8a 45 93             	mov    -0x6d(%ebp),%al
5aeed2:	f7 6d 9c             	imull  -0x64(%ebp)
5aeed5:	8b 55 80             	mov    -0x80(%ebp),%edx
5aeed8:	0f b6 52 01          	movzbl 0x1(%edx),%edx
5aeedc:	0f af 55 98          	imul   -0x68(%ebp),%edx
5aeee0:	03 c2                	add    %edx,%eax
5aeee2:	05 00 08 00 00       	add    $0x800,%eax
5aeee7:	89 85 f8 fe ff ff    	mov    %eax,-0x108(%ebp)
5aeeed:	db 85 f8 fe ff ff    	fildl  -0x108(%ebp)
5aeef3:	d8 35 84 f1 5a 00    	fdivs  0x5af184
5aeef9:	e8 c2 3d e5 ff       	call   0x402cc0
5aeefe:	e8 31 a5 ff ff       	call   0x5a9434
5aef03:	88 46 01             	mov    %al,0x1(%esi)
5aef06:	33 c0                	xor    %eax,%eax
5aef08:	8a 45 92             	mov    -0x6e(%ebp),%al
5aef0b:	f7 6d 9c             	imull  -0x64(%ebp)
5aef0e:	8b 55 80             	mov    -0x80(%ebp),%edx
5aef11:	0f b6 12             	movzbl (%edx),%edx
5aef14:	0f af 55 98          	imul   -0x68(%ebp),%edx
5aef18:	03 c2                	add    %edx,%eax
5aef1a:	05 00 08 00 00       	add    $0x800,%eax
5aef1f:	89 85 f8 fe ff ff    	mov    %eax,-0x108(%ebp)
5aef25:	db 85 f8 fe ff ff    	fildl  -0x108(%ebp)
5aef2b:	d8 35 84 f1 5a 00    	fdivs  0x5af184
5aef31:	e8 8a 3d e5 ff       	call   0x402cc0
5aef36:	e8 f9 a4 ff ff       	call   0x5a9434
5aef3b:	88 06                	mov    %al,(%esi)
5aef3d:	8b 45 80             	mov    -0x80(%ebp),%eax
5aef40:	66 8b 10             	mov    (%eax),%dx
5aef43:	66 89 55 92          	mov    %dx,-0x6e(%ebp)
5aef47:	8a 50 02             	mov    0x2(%eax),%dl
5aef4a:	88 55 94             	mov    %dl,-0x6c(%ebp)
5aef4d:	83 45 80 03          	addl   $0x3,-0x80(%ebp)
5aef51:	ff 45 a0             	incl   -0x60(%ebp)
5aef54:	4f                   	dec    %edi
5aef55:	0f 85 17 ff ff ff    	jne    0x5aee72
5aef5b:	83 7d 9c 00          	cmpl   $0x0,-0x64(%ebp)
5aef5f:	0f 8e 2b 01 00 00    	jle    0x5af090
5aef65:	8b 45 a4             	mov    -0x5c(%ebp),%eax
5aef68:	03 45 bc             	add    -0x44(%ebp),%eax
5aef6b:	3b 45 ac             	cmp    -0x54(%ebp),%eax
5aef6e:	0f 8d 1c 01 00 00    	jge    0x5af090
5aef74:	8b b5 7c ff ff ff    	mov    -0x84(%ebp),%esi
5aef7a:	8b 45 a4             	mov    -0x5c(%ebp),%eax
5aef7d:	03 45 bc             	add    -0x44(%ebp),%eax
5aef80:	8d 04 40             	lea    (%eax,%eax,2),%eax
5aef83:	03 f0                	add    %eax,%esi
5aef85:	33 c0                	xor    %eax,%eax
5aef87:	8a 45 94             	mov    -0x6c(%ebp),%al
5aef8a:	f7 6d 9c             	imull  -0x64(%ebp)
5aef8d:	33 d2                	xor    %edx,%edx
5aef8f:	8a 55 97             	mov    -0x69(%ebp),%dl
5aef92:	0f af 55 98          	imul   -0x68(%ebp),%edx
5aef96:	03 c2                	add    %edx,%eax
5aef98:	05 00 08 00 00       	add    $0x800,%eax
5aef9d:	89 85 f8 fe ff ff    	mov    %eax,-0x108(%ebp)
5aefa3:	db 85 f8 fe ff ff    	fildl  -0x108(%ebp)
5aefa9:	d8 35 84 f1 5a 00    	fdivs  0x5af184
5aefaf:	e8 0c 3d e5 ff       	call   0x402cc0
5aefb4:	e8 7b a4 ff ff       	call   0x5a9434
5aefb9:	88 46 02             	mov    %al,0x2(%esi)
5aefbc:	33 c0                	xor    %eax,%eax
5aefbe:	8a 45 93             	mov    -0x6d(%ebp),%al
5aefc1:	f7 6d 9c             	imull  -0x64(%ebp)
5aefc4:	33 d2                	xor    %edx,%edx
5aefc6:	8a 55 96             	mov    -0x6a(%ebp),%dl
5aefc9:	0f af 55 98          	imul   -0x68(%ebp),%edx
5aefcd:	03 c2                	add    %edx,%eax
5aefcf:	05 00 08 00 00       	add    $0x800,%eax
5aefd4:	89 85 f8 fe ff ff    	mov    %eax,-0x108(%ebp)
5aefda:	db 85 f8 fe ff ff    	fildl  -0x108(%ebp)
5aefe0:	d8 35 84 f1 5a 00    	fdivs  0x5af184
5aefe6:	e8 d5 3c e5 ff       	call   0x402cc0
5aefeb:	e8 44 a4 ff ff       	call   0x5a9434
5aeff0:	88 46 01             	mov    %al,0x1(%esi)
5aeff3:	33 c0                	xor    %eax,%eax
5aeff5:	8a 45 92             	mov    -0x6e(%ebp),%al
5aeff8:	f7 6d 9c             	imull  -0x64(%ebp)
5aeffb:	33 d2                	xor    %edx,%edx
5aeffd:	8a 55 95             	mov    -0x6b(%ebp),%dl
5af000:	0f af 55 98          	imul   -0x68(%ebp),%edx
5af004:	03 c2                	add    %edx,%eax
5af006:	05 00 08 00 00       	add    $0x800,%eax
5af00b:	89 85 f8 fe ff ff    	mov    %eax,-0x108(%ebp)
5af011:	db 85 f8 fe ff ff    	fildl  -0x108(%ebp)
5af017:	d8 35 84 f1 5a 00    	fdivs  0x5af184
5af01d:	e8 9e 3c e5 ff       	call   0x402cc0
5af022:	e8 0d a4 ff ff       	call   0x5a9434
5af027:	88 06                	mov    %al,(%esi)
5af029:	eb 65                	jmp    0x5af090
5af02b:	8b 45 a8             	mov    -0x58(%ebp),%eax
5af02e:	f7 6d bc             	imull  -0x44(%ebp)
5af031:	8d 04 40             	lea    (%eax,%eax,2),%eax
5af034:	8b 55 84             	mov    -0x7c(%ebp),%edx
5af037:	8d 04 02             	lea    (%edx,%eax,1),%eax
5af03a:	89 45 80             	mov    %eax,-0x80(%ebp)
5af03d:	8b 55 a8             	mov    -0x58(%ebp),%edx
5af040:	8b 45 fc             	mov    -0x4(%ebp),%eax
5af043:	8b 08                	mov    (%eax),%ecx
5af045:	ff 11                	call   *(%ecx)
5af047:	89 85 7c ff ff ff    	mov    %eax,-0x84(%ebp)
5af04d:	8b 7d bc             	mov    -0x44(%ebp),%edi
5af050:	4f                   	dec    %edi
5af051:	85 ff                	test   %edi,%edi
5af053:	7c 3b                	jl     0x5af090
5af055:	47                   	inc    %edi
5af056:	c7 45 a0 00 00 00 00 	movl   $0x0,-0x60(%ebp)
5af05d:	8b 45 a4             	mov    -0x5c(%ebp),%eax
5af060:	03 45 a0             	add    -0x60(%ebp),%eax
5af063:	85 c0                	test   %eax,%eax
5af065:	7c 1f                	jl     0x5af086
5af067:	3b 45 ac             	cmp    -0x54(%ebp),%eax
5af06a:	7d 1a                	jge    0x5af086
5af06c:	8b 95 7c ff ff ff    	mov    -0x84(%ebp),%edx
5af072:	8d 04 40             	lea    (%eax,%eax,2),%eax
5af075:	03 d0                	add    %eax,%edx
5af077:	8b 45 80             	mov    -0x80(%ebp),%eax
5af07a:	66 8b 08             	mov    (%eax),%cx
5af07d:	66 89 0a             	mov    %cx,(%edx)
5af080:	8a 48 02             	mov    0x2(%eax),%cl
5af083:	88 4a 02             	mov    %cl,0x2(%edx)
5af086:	83 45 80 03          	addl   $0x3,-0x80(%ebp)
5af08a:	ff 45 a0             	incl   -0x60(%ebp)
5af08d:	4f                   	dec    %edi
5af08e:	75 cd                	jne    0x5af05d
5af090:	66 83 7d 0a 00       	cmpw   $0x0,0xa(%ebp)
5af095:	74 2b                	je     0x5af0c2
5af097:	8b 45 c0             	mov    -0x40(%ebp),%eax
5af09a:	03 45 bc             	add    -0x44(%ebp),%eax
5af09d:	03 45 a8             	add    -0x58(%ebp),%eax
5af0a0:	89 85 f8 fe ff ff    	mov    %eax,-0x108(%ebp)
5af0a6:	db 85 f8 fe ff ff    	fildl  -0x108(%ebp)
5af0ac:	dc 8d 70 ff ff ff    	fmull  -0x90(%ebp)
5af0b2:	e8 15 3c e5 ff       	call   0x402ccc
5af0b7:	8b c8                	mov    %eax,%ecx
5af0b9:	8b 55 f4             	mov    -0xc(%ebp),%edx
5af0bc:	8b 45 0c             	mov    0xc(%ebp),%eax
5af0bf:	ff 55 08             	call   *0x8(%ebp)
5af0c2:	ff 45 a8             	incl   -0x58(%ebp)
5af0c5:	ff 8d 6c ff ff ff    	decl   -0x94(%ebp)
5af0cb:	0f 85 f0 fc ff ff    	jne    0x5aedc1
5af0d1:	8b 45 84             	mov    -0x7c(%ebp),%eax
5af0d4:	e8 f3 36 e5 ff       	call   0x4027cc
5af0d9:	8b 45 e4             	mov    -0x1c(%ebp),%eax
5af0dc:	e8 97 49 e5 ff       	call   0x403a78
5af0e1:	eb 66                	jmp    0x5af149
5af0e3:	33 c0                	xor    %eax,%eax
5af0e5:	89 85 30 ff ff ff    	mov    %eax,-0xd0(%ebp)
5af0eb:	8b 45 f4             	mov    -0xc(%ebp),%eax
5af0ee:	89 85 10 ff ff ff    	mov    %eax,-0xf0(%ebp)
5af0f4:	8b 45 08             	mov    0x8(%ebp),%eax
5af0f7:	89 85 08 ff ff ff    	mov    %eax,-0xf8(%ebp)
5af0fd:	8b 45 0c             	mov    0xc(%ebp),%eax
5af100:	89 85 0c ff ff ff    	mov    %eax,-0xf4(%ebp)
5af106:	80 7d 12 00          	cmpb   $0x0,0x12(%ebp)
5af10a:	74 27                	je     0x5af133
5af10c:	80 7d 11 00          	cmpb   $0x0,0x11(%ebp)
5af110:	74 21                	je     0x5af133
5af112:	80 7d 10 00          	cmpb   $0x0,0x10(%ebp)
5af116:	74 1b                	je     0x5af133
5af118:	ff 75 18             	push   0x18(%ebp)
5af11b:	ff 75 14             	push   0x14(%ebp)
5af11e:	8d 8d 08 ff ff ff    	lea    -0xf8(%ebp),%ecx
5af124:	ba 01 00 00 00       	mov    $0x1,%edx
5af129:	8b 45 fc             	mov    -0x4(%ebp),%eax
5af12c:	e8 1b 0a 00 00       	call   0x5afb4c
5af131:	eb 16                	jmp    0x5af149
5af133:	ff 75 18             	push   0x18(%ebp)
5af136:	ff 75 14             	push   0x14(%ebp)
5af139:	8d 8d 08 ff ff ff    	lea    -0xf8(%ebp),%ecx
5af13f:	33 d2                	xor    %edx,%edx
5af141:	8b 45 fc             	mov    -0x4(%ebp),%eax
5af144:	e8 03 0a 00 00       	call   0x5afb4c
5af149:	5f                   	pop    %edi
5af14a:	5e                   	pop    %esi
5af14b:	5b                   	pop    %ebx
5af14c:	8b e5                	mov    %ebp,%esp
5af14e:	5d                   	pop    %ebp
5af14f:	c2 14 00             	ret    $0x14
5af15a:	7a 44                	jp     0x5af1a0
5af15c:	00 00                	add    %al,(%eax)
5af15e:	34 c2                	xor    $0xc2,%al
5af160:	00 00                	add    %al,(%eax)
5af162:	34 42                	xor    $0x42,%al
5af164:	00 00                	add    %al,(%eax)
5af166:	b4 42                	mov    $0x42,%ah
5af168:	35 c2 68 21 a2       	xor    $0xa22168c2,%eax
5af16d:	da 0f                	fimull (%edi)
5af16f:	c9                   	leave
5af170:	00 40 00             	add    %al,0x0(%eax)
5af173:	00 00                	add    %al,(%eax)
5af175:	00 34 43             	add    %dh,(%ebx,%eax,2)
5af178:	00 00                	add    %al,(%eax)
5af17a:	00 40 00             	add    %al,0x0(%eax)
5af17d:	00 80 3f 00 00 c8    	add    %al,-0x37ffffc1(%eax)
5af183:	42                   	inc    %edx
5af184:	00 00                	add    %al,(%eax)
5af186:	80 45 55 8b          	addb   $0x8b,0x55(%ebp)
5af18a:	ec                   	in     (%dx),%al
5af18b:	81 c4 00 ff ff ff    	add    $0xffffff00,%esp
5af191:	53                   	push   %ebx
5af192:	56                   	push   %esi
5af193:	57                   	push   %edi
5af194:	89 4d f4             	mov    %ecx,-0xc(%ebp)
5af197:	88 55 fb             	mov    %dl,-0x5(%ebp)
5af19a:	89 45 fc             	mov    %eax,-0x4(%ebp)
5af19d:	dd 45 14             	fldl   0x14(%ebp)
5af1a0:	d8 1d 74 fa 5a 00    	fcomps 0x5afa74
5af1a6:	df e0                	fnstsw %ax
5af1a8:	9e                   	sahf
5af1a9:	0f 84 bb 08 00 00    	je     0x5afa6a
5af1af:	8b 45 fc             	mov    -0x4(%ebp),%eax
5af1b2:	8b 10                	mov    (%eax),%edx
5af1b4:	ff 52 10             	call   *0x10(%edx)
5af1b7:	3c 03                	cmp    $0x3,%al
5af1b9:	74 10                	je     0x5af1cb
5af1bb:	8b 45 fc             	mov    -0x4(%ebp),%eax
5af1be:	8b 10                	mov    (%eax),%edx
5af1c0:	ff 52 10             	call   *0x10(%edx)
5af1c3:	3c 02                	cmp    $0x2,%al
5af1c5:	0f 85 9f 08 00 00    	jne    0x5afa6a
5af1cb:	dd 45 14             	fldl   0x14(%ebp)
5af1ce:	d8 0d 78 fa 5a 00    	fmuls  0x5afa78
5af1d4:	e8 f3 3a e5 ff       	call   0x402ccc
5af1d9:	89 45 84             	mov    %eax,-0x7c(%ebp)
5af1dc:	8b 45 84             	mov    -0x7c(%ebp),%eax
5af1df:	b9 40 7e 05 00       	mov    $0x57e40,%ecx
5af1e4:	99                   	cltd
5af1e5:	f7 f9                	idiv   %ecx
5af1e7:	89 55 84             	mov    %edx,-0x7c(%ebp)
5af1ea:	db 45 84             	fildl  -0x7c(%ebp)
5af1ed:	d8 35 78 fa 5a 00    	fdivs  0x5afa78
5af1f3:	dd 5d 14             	fstpl  0x14(%ebp)
5af1f6:	9b                   	fwait
5af1f7:	b2 01                	mov    $0x1,%dl
5af1f9:	a1 18 ff 5e 00       	mov    0x5eff18,%eax
5af1fe:	e8 a1 83 04 00       	call   0x5f75a4
5af203:	89 45 e4             	mov    %eax,-0x1c(%ebp)
5af206:	dd 45 14             	fldl   0x14(%ebp)
5af209:	d8 1d 7c fa 5a 00    	fcomps 0x5afa7c
5af20f:	df e0                	fnstsw %ax
5af211:	9e                   	sahf
5af212:	72 4c                	jb     0x5af260
5af214:	dd 45 14             	fldl   0x14(%ebp)
5af217:	d8 1d 80 fa 5a 00    	fcomps 0x5afa80
5af21d:	df e0                	fnstsw %ax
5af21f:	9e                   	sahf
5af220:	77 3e                	ja     0x5af260
5af222:	8b 55 fc             	mov    -0x4(%ebp),%edx
5af225:	8b 45 e4             	mov    -0x1c(%ebp),%eax
5af228:	e8 93 97 04 00       	call   0x5f89c0
5af22d:	eb 31                	jmp    0x5af260
5af22f:	dd 45 14             	fldl   0x14(%ebp)
5af232:	d8 25 84 fa 5a 00    	fsubs  0x5afa84
5af238:	dd 5d 14             	fstpl  0x14(%ebp)
5af23b:	9b                   	fwait
5af23c:	8b 55 e4             	mov    -0x1c(%ebp),%edx
5af23f:	8b 45 fc             	mov    -0x4(%ebp),%eax
5af242:	e8 ed b1 ff ff       	call   0x5aa434
5af247:	dd 45 14             	fldl   0x14(%ebp)
5af24a:	d8 1d 80 fa 5a 00    	fcomps 0x5afa80
5af250:	df e0                	fnstsw %ax
5af252:	9e                   	sahf
5af253:	76 4c                	jbe    0x5af2a1
5af255:	8b 55 e4             	mov    -0x1c(%ebp),%edx
5af258:	8b 45 fc             	mov    -0x4(%ebp),%eax
5af25b:	8b 08                	mov    (%eax),%ecx
5af25d:	ff 51 28             	call   *0x28(%ecx)
5af260:	dd 45 14             	fldl   0x14(%ebp)
5af263:	d8 1d 80 fa 5a 00    	fcomps 0x5afa80
5af269:	df e0                	fnstsw %ax
5af26b:	9e                   	sahf
5af26c:	77 c1                	ja     0x5af22f
5af26e:	eb 31                	jmp    0x5af2a1
5af270:	dd 45 14             	fldl   0x14(%ebp)
5af273:	d8 05 84 fa 5a 00    	fadds  0x5afa84
5af279:	dd 5d 14             	fstpl  0x14(%ebp)
5af27c:	9b                   	fwait
5af27d:	8b 55 e4             	mov    -0x1c(%ebp),%edx
5af280:	8b 45 fc             	mov    -0x4(%ebp),%eax
5af283:	e8 6c b0 ff ff       	call   0x5aa2f4
5af288:	dd 45 14             	fldl   0x14(%ebp)
5af28b:	d8 1d 7c fa 5a 00    	fcomps 0x5afa7c
5af291:	df e0                	fnstsw %ax
5af293:	9e                   	sahf
5af294:	73 19                	jae    0x5af2af
5af296:	8b 55 e4             	mov    -0x1c(%ebp),%edx
5af299:	8b 45 fc             	mov    -0x4(%ebp),%eax
5af29c:	8b 08                	mov    (%eax),%ecx
5af29e:	ff 51 28             	call   *0x28(%ecx)
5af2a1:	dd 45 14             	fldl   0x14(%ebp)
5af2a4:	d8 1d 7c fa 5a 00    	fcomps 0x5afa7c
5af2aa:	df e0                	fnstsw %ax
5af2ac:	9e                   	sahf
5af2ad:	72 c1                	jb     0x5af270
5af2af:	dd 45 14             	fldl   0x14(%ebp)
5af2b2:	d8 1d 74 fa 5a 00    	fcomps 0x5afa74
5af2b8:	df e0                	fnstsw %ax
5af2ba:	9e                   	sahf
5af2bb:	75 18                	jne    0x5af2d5
5af2bd:	8b 55 e4             	mov    -0x1c(%ebp),%edx
5af2c0:	8b 45 fc             	mov    -0x4(%ebp),%eax
5af2c3:	8b 08                	mov    (%eax),%ecx
5af2c5:	ff 51 28             	call   *0x28(%ecx)
5af2c8:	8b 45 e4             	mov    -0x1c(%ebp),%eax
5af2cb:	e8 a8 47 e5 ff       	call   0x403a78
5af2d0:	e9 95 07 00 00       	jmp    0x5afa6a
5af2d5:	db 2d 88 fa 5a 00    	fldt   0x5afa88
5af2db:	dc 4d 14             	fmull  0x14(%ebp)
5af2de:	d8 35 94 fa 5a 00    	fdivs  0x5afa94
5af2e4:	dd 5d e8             	fstpl  -0x18(%ebp)
5af2e7:	9b                   	fwait
5af2e8:	8b 45 e4             	mov    -0x1c(%ebp),%eax
5af2eb:	8b 10                	mov    (%eax),%edx
5af2ed:	ff 52 0c             	call   *0xc(%edx)
5af2f0:	89 45 c4             	mov    %eax,-0x3c(%ebp)
5af2f3:	8b 45 e4             	mov    -0x1c(%ebp),%eax
5af2f6:	8b 10                	mov    (%eax),%edx
5af2f8:	ff 52 08             	call   *0x8(%edx)
5af2fb:	89 45 c0             	mov    %eax,-0x40(%ebp)
5af2fe:	dd 45 e8             	fldl   -0x18(%ebp)
5af301:	d8 35 98 fa 5a 00    	fdivs  0x5afa98