42c4d3:	0f af c6             	imul   %esi,%eax
42c4d6:	3b f8                	cmp    %eax,%edi
42c4d8:	73 23                	jae    0x42c4fd
42c4da:	89 44 24 48          	mov    %eax,0x48(%esp)
42c4de:	b8 00 08 00 00       	mov    $0x800,%eax
42c4e3:	2b c6                	sub    %esi,%eax
42c4e5:	8b f2                	mov    %edx,%esi
42c4e7:	c1 f8 05             	sar    $0x5,%eax
42c4ea:	83 7c 24 3c 00       	cmpl   $0x0,0x3c(%esp)
42c4ef:	8d 04 08             	lea    (%eax,%ecx,1),%eax
42c4f2:	66 89 85 00 02 00 00 	mov    %ax,0x200(%ebp)
42c4f9:	74 22                	je     0x42c51d
42c4fb:	eb 2e                	jmp    0x42c52b
42c4fd:	29 44 24 48          	sub    %eax,0x48(%esp)
42c501:	2b f8                	sub    %eax,%edi
42c503:	8b c1                	mov    %ecx,%eax
42c505:	8d 72 01             	lea    0x1(%edx),%esi
42c508:	66 c1 e8 05          	shr    $0x5,%ax
42c50c:	66 2b c8             	sub    %ax,%cx
42c50f:	83 7c 24 3c 00       	cmpl   $0x0,0x3c(%esp)
42c514:	66 89 8d 00 02 00 00 	mov    %cx,0x200(%ebp)
42c51b:	74 0e                	je     0x42c52b
42c51d:	81 fe ff 00 00 00    	cmp    $0xff,%esi
42c523:	0f 8e 57 ff ff ff    	jle    0x42c480
42c529:	eb 79                	jmp    0x42c5a4
42c52b:	81 fe ff 00 00 00    	cmp    $0xff,%esi
42c531:	7f 71                	jg     0x42c5a4
42c533:	8d 14 36             	lea    (%esi,%esi,1),%edx
42c536:	8b 6c 24 14          	mov    0x14(%esp),%ebp
42c53a:	03 ea                	add    %edx,%ebp
42c53c:	81 7c 24 48 ff ff ff 	cmpl   $0xffffff,0x48(%esp)
42c543:	00
42c544:	77 18                	ja     0x42c55e
42c546:	3b 5c 24 4c          	cmp    0x4c(%esp),%ebx
42c54a:	0f 84 c5 07 00 00    	je     0x42cd15
42c550:	c1 64 24 48 08       	shll   $0x8,0x48(%esp)
42c555:	0f b6 03             	movzbl (%ebx),%eax
42c558:	c1 e7 08             	shl    $0x8,%edi
42c55b:	43                   	inc    %ebx
42c55c:	0b f8                	or     %eax,%edi
42c55e:	8b 44 24 48          	mov    0x48(%esp),%eax
42c562:	66 8b 4d 00          	mov    0x0(%ebp),%cx
42c566:	c1 e8 0b             	shr    $0xb,%eax
42c569:	0f b7 f1             	movzwl %cx,%esi
42c56c:	0f af c6             	imul   %esi,%eax
42c56f:	3b f8                	cmp    %eax,%edi
42c571:	73 19                	jae    0x42c58c
42c573:	89 44 24 48          	mov    %eax,0x48(%esp)
42c577:	b8 00 08 00 00       	mov    $0x800,%eax
42c57c:	2b c6                	sub    %esi,%eax
42c57e:	8b f2                	mov    %edx,%esi
42c580:	c1 f8 05             	sar    $0x5,%eax
42c583:	8d 04 08             	lea    (%eax,%ecx,1),%eax
42c586:	66 89 45 00          	mov    %ax,0x0(%ebp)
42c58a:	eb 9f                	jmp    0x42c52b
42c58c:	29 44 24 48          	sub    %eax,0x48(%esp)
42c590:	2b f8                	sub    %eax,%edi
42c592:	8b c1                	mov    %ecx,%eax
42c594:	8d 72 01             	lea    0x1(%edx),%esi
42c597:	66 c1 e8 05          	shr    $0x5,%ax
42c59b:	66 2b c8             	sub    %ax,%cx
42c59e:	66 89 4d 00          	mov    %cx,0x0(%ebp)
42c5a2:	eb 87                	jmp    0x42c52b
42c5a4:	8b 54 24 74          	mov    0x74(%esp),%edx
42c5a8:	8b c6                	mov    %esi,%eax
42c5aa:	8b 8c 24 a0 00 00 00 	mov    0xa0(%esp),%ecx
42c5b1:	88 44 24 73          	mov    %al,0x73(%esp)
42c5b5:	88 04 11             	mov    %al,(%ecx,%edx,1)
42c5b8:	42                   	inc    %edx
42c5b9:	83 7c 24 60 03       	cmpl   $0x3,0x60(%esp)
42c5be:	89 54 24 74          	mov    %edx,0x74(%esp)
42c5c2:	7f 0d                	jg     0x42c5d1
42c5c4:	c7 44 24 60 00 00 00 	movl   $0x0,0x60(%esp)
42c5cb:	00
42c5cc:	e9 1c 07 00 00       	jmp    0x42cced
42c5d1:	83 7c 24 60 09       	cmpl   $0x9,0x60(%esp)
42c5d6:	7f 0a                	jg     0x42c5e2
42c5d8:	83 6c 24 60 03       	subl   $0x3,0x60(%esp)
42c5dd:	e9 0b 07 00 00       	jmp    0x42cced
42c5e2:	83 6c 24 60 06       	subl   $0x6,0x60(%esp)
42c5e7:	e9 01 07 00 00       	jmp    0x42cced
42c5ec:	8b 4c 24 48          	mov    0x48(%esp),%ecx
42c5f0:	2b f8                	sub    %eax,%edi
42c5f2:	8b 74 24 60          	mov    0x60(%esp),%esi
42c5f6:	2b c8                	sub    %eax,%ecx
42c5f8:	8b c2                	mov    %edx,%eax
42c5fa:	66 c1 e8 05          	shr    $0x5,%ax
42c5fe:	66 2b d0             	sub    %ax,%dx
42c601:	81 f9 ff ff ff 00    	cmp    $0xffffff,%ecx
42c607:	66 89 55 00          	mov    %dx,0x0(%ebp)
42c60b:	8b 6c 24 78          	mov    0x78(%esp),%ebp
42c60f:	8d 74 75 00          	lea    0x0(%ebp,%esi,2),%esi
42c613:	89 74 24 38          	mov    %esi,0x38(%esp)
42c617:	77 16                	ja     0x42c62f
42c619:	3b 5c 24 4c          	cmp    0x4c(%esp),%ebx
42c61d:	0f 84 f2 06 00 00    	je     0x42cd15
42c623:	0f b6 03             	movzbl (%ebx),%eax
42c626:	c1 e7 08             	shl    $0x8,%edi
42c629:	c1 e1 08             	shl    $0x8,%ecx
42c62c:	43                   	inc    %ebx
42c62d:	0b f8                	or     %eax,%edi
42c62f:	8b 6c 24 38          	mov    0x38(%esp),%ebp
42c633:	8b c1                	mov    %ecx,%eax
42c635:	c1 e8 0b             	shr    $0xb,%eax
42c638:	66 8b 95 80 01 00 00 	mov    0x180(%ebp),%dx
42c63f:	0f b7 ea             	movzwl %dx,%ebp
42c642:	0f af c5             	imul   %ebp,%eax
42c645:	3b f8                	cmp    %eax,%edi
42c647:	73 52                	jae    0x42c69b
42c649:	8b f0                	mov    %eax,%esi
42c64b:	b8 00 08 00 00       	mov    $0x800,%eax
42c650:	2b c5                	sub    %ebp,%eax
42c652:	8b 6c 24 58          	mov    0x58(%esp),%ebp
42c656:	c1 f8 05             	sar    $0x5,%eax
42c659:	8b 4c 24 54          	mov    0x54(%esp),%ecx
42c65d:	8d 04 10             	lea    (%eax,%edx,1),%eax
42c660:	8b 54 24 38          	mov    0x38(%esp),%edx
42c664:	89 4c 24 50          	mov    %ecx,0x50(%esp)
42c668:	8b 4c 24 78          	mov    0x78(%esp),%ecx
42c66c:	66 89 82 80 01 00 00 	mov    %ax,0x180(%edx)
42c673:	8b 44 24 5c          	mov    0x5c(%esp),%eax
42c677:	89 6c 24 54          	mov    %ebp,0x54(%esp)
42c67b:	89 44 24 58          	mov    %eax,0x58(%esp)
42c67f:	33 c0                	xor    %eax,%eax
42c681:	83 7c 24 60 06       	cmpl   $0x6,0x60(%esp)
42c686:	0f 9f c0             	setg   %al
42c689:	81 c1 64 06 00 00    	add    $0x664,%ecx
42c68f:	8d 04 40             	lea    (%eax,%eax,2),%eax
42c692:	89 44 24 60          	mov    %eax,0x60(%esp)
42c696:	e9 74 02 00 00       	jmp    0x42c90f
42c69b:	8b f1                	mov    %ecx,%esi
42c69d:	2b f8                	sub    %eax,%edi
42c69f:	2b f0                	sub    %eax,%esi
42c6a1:	8b c2                	mov    %edx,%eax
42c6a3:	66 c1 e8 05          	shr    $0x5,%ax
42c6a7:	8b 4c 24 38          	mov    0x38(%esp),%ecx
42c6ab:	66 2b d0             	sub    %ax,%dx
42c6ae:	81 fe ff ff ff 00    	cmp    $0xffffff,%esi
42c6b4:	66 89 91 80 01 00 00 	mov    %dx,0x180(%ecx)
42c6bb:	77 16                	ja     0x42c6d3
42c6bd:	3b 5c 24 4c          	cmp    0x4c(%esp),%ebx
42c6c1:	0f 84 4e 06 00 00    	je     0x42cd15
42c6c7:	0f b6 03             	movzbl (%ebx),%eax
42c6ca:	c1 e7 08             	shl    $0x8,%edi
42c6cd:	c1 e6 08             	shl    $0x8,%esi
42c6d0:	43                   	inc    %ebx
42c6d1:	0b f8                	or     %eax,%edi
42c6d3:	8b 6c 24 38          	mov    0x38(%esp),%ebp
42c6d7:	8b d6                	mov    %esi,%edx
42c6d9:	c1 ea 0b             	shr    $0xb,%edx
42c6dc:	66 8b 8d 98 01 00 00 	mov    0x198(%ebp),%cx
42c6e3:	0f b7 c1             	movzwl %cx,%eax
42c6e6:	0f af d0             	imul   %eax,%edx
42c6e9:	3b fa                	cmp    %edx,%edi
42c6eb:	0f 83 e3 00 00 00    	jae    0x42c7d4
42c6f1:	bd 00 08 00 00       	mov    $0x800,%ebp
42c6f6:	8b f2                	mov    %edx,%esi
42c6f8:	2b e8                	sub    %eax,%ebp
42c6fa:	c7 44 24 34 00 08 00 	movl   $0x800,0x34(%esp)
42c701:	00
42c702:	8b c5                	mov    %ebp,%eax
42c704:	c1 f8 05             	sar    $0x5,%eax
42c707:	8d 04 08             	lea    (%eax,%ecx,1),%eax
42c70a:	8b 4c 24 38          	mov    0x38(%esp),%ecx
42c70e:	66 89 81 98 01 00 00 	mov    %ax,0x198(%ecx)
42c715:	8b 44 24 60          	mov    0x60(%esp),%eax
42c719:	8b 4c 24 44          	mov    0x44(%esp),%ecx
42c71d:	c1 e0 05             	shl    $0x5,%eax
42c720:	03 44 24 78          	add    0x78(%esp),%eax
42c724:	81 fa ff ff ff 00    	cmp    $0xffffff,%edx
42c72a:	8d 2c 48             	lea    (%eax,%ecx,2),%ebp
42c72d:	77 16                	ja     0x42c745
42c72f:	3b 5c 24 4c          	cmp    0x4c(%esp),%ebx
42c733:	0f 84 dc 05 00 00    	je     0x42cd15
42c739:	0f b6 03             	movzbl (%ebx),%eax
42c73c:	c1 e7 08             	shl    $0x8,%edi
42c73f:	c1 e6 08             	shl    $0x8,%esi
42c742:	43                   	inc    %ebx
42c743:	0b f8                	or     %eax,%edi
42c745:	66 8b 95 e0 01 00 00 	mov    0x1e0(%ebp),%dx
42c74c:	8b c6                	mov    %esi,%eax
42c74e:	c1 e8 0b             	shr    $0xb,%eax
42c751:	0f b7 ca             	movzwl %dx,%ecx
42c754:	0f af c1             	imul   %ecx,%eax
42c757:	3b f8                	cmp    %eax,%edi
42c759:	73 60                	jae    0x42c7bb
42c75b:	29 4c 24 34          	sub    %ecx,0x34(%esp)
42c75f:	c1 7c 24 34 05       	sarl   $0x5,0x34(%esp)
42c764:	8b 74 24 34          	mov    0x34(%esp),%esi
42c768:	89 44 24 48          	mov    %eax,0x48(%esp)
42c76c:	83 7c 24 74 00       	cmpl   $0x0,0x74(%esp)
42c771:	8d 04 16             	lea    (%esi,%edx,1),%eax
42c774:	66 89 85 e0 01 00 00 	mov    %ax,0x1e0(%ebp)
42c77b:	0f 84 94 05 00 00    	je     0x42cd15
42c781:	33 c0                	xor    %eax,%eax
42c783:	83 7c 24 60 06       	cmpl   $0x6,0x60(%esp)
42c788:	8b ac 24 a0 00 00 00 	mov    0xa0(%esp),%ebp
42c78f:	8b 54 24 74          	mov    0x74(%esp),%edx
42c793:	0f 9f c0             	setg   %al
42c796:	8d 44 00 09          	lea    0x9(%eax,%eax,1),%eax
42c79a:	89 44 24 60          	mov    %eax,0x60(%esp)
42c79e:	8b 44 24 74          	mov    0x74(%esp),%eax
42c7a2:	2b 44 24 5c          	sub    0x5c(%esp),%eax
42c7a6:	8a 04 28             	mov    (%eax,%ebp,1),%al
42c7a9:	88 44 24 73          	mov    %al,0x73(%esp)
42c7ad:	88 44 15 00          	mov    %al,0x0(%ebp,%edx,1)
42c7b1:	42                   	inc    %edx
42c7b2:	89 54 24 74          	mov    %edx,0x74(%esp)
42c7b6:	e9 32 05 00 00       	jmp    0x42cced
42c7bb:	2b f0                	sub    %eax,%esi
42c7bd:	2b f8                	sub    %eax,%edi
42c7bf:	8b c2                	mov    %edx,%eax
42c7c1:	66 c1 e8 05          	shr    $0x5,%ax
42c7c5:	66 2b d0             	sub    %ax,%dx
42c7c8:	66 89 95 e0 01 00 00 	mov    %dx,0x1e0(%ebp)
42c7cf:	e9 1f 01 00 00       	jmp    0x42c8f3
42c7d4:	8b c1                	mov    %ecx,%eax
42c7d6:	2b f2                	sub    %edx,%esi
42c7d8:	66 c1 e8 05          	shr    $0x5,%ax
42c7dc:	8b 6c 24 38          	mov    0x38(%esp),%ebp
42c7e0:	66 2b c8             	sub    %ax,%cx
42c7e3:	2b fa                	sub    %edx,%edi
42c7e5:	81 fe ff ff ff 00    	cmp    $0xffffff,%esi
42c7eb:	66 89 8d 98 01 00 00 	mov    %cx,0x198(%ebp)
42c7f2:	77 16                	ja     0x42c80a
42c7f4:	3b 5c 24 4c          	cmp    0x4c(%esp),%ebx
42c7f8:	0f 84 17 05 00 00    	je     0x42cd15
42c7fe:	0f b6 03             	movzbl (%ebx),%eax
42c801:	c1 e7 08             	shl    $0x8,%edi
42c804:	c1 e6 08             	shl    $0x8,%esi
42c807:	43                   	inc    %ebx
42c808:	0b f8                	or     %eax,%edi
42c80a:	8b 4c 24 38          	mov    0x38(%esp),%ecx
42c80e:	8b c6                	mov    %esi,%eax
42c810:	c1 e8 0b             	shr    $0xb,%eax
42c813:	66 8b 91 b0 01 00 00 	mov    0x1b0(%ecx),%dx
42c81a:	0f b7 ca             	movzwl %dx,%ecx
42c81d:	0f af c1             	imul   %ecx,%eax
42c820:	3b f8                	cmp    %eax,%edi
42c822:	73 23                	jae    0x42c847
42c824:	8b f0                	mov    %eax,%esi
42c826:	b8 00 08 00 00       	mov    $0x800,%eax
42c82b:	2b c1                	sub    %ecx,%eax
42c82d:	8b 6c 24 38          	mov    0x38(%esp),%ebp
42c831:	c1 f8 05             	sar    $0x5,%eax
42c834:	8d 04 10             	lea    (%eax,%edx,1),%eax
42c837:	66 89 85 b0 01 00 00 	mov    %ax,0x1b0(%ebp)
42c83e:	8b 44 24 58          	mov    0x58(%esp),%eax
42c842:	e9 a0 00 00 00       	jmp    0x42c8e7
42c847:	8b ce                	mov    %esi,%ecx
42c849:	2b f8                	sub    %eax,%edi
42c84b:	2b c8                	sub    %eax,%ecx
42c84d:	8b c2                	mov    %edx,%eax
42c84f:	66 c1 e8 05          	shr    $0x5,%ax
42c853:	66 2b d0             	sub    %ax,%dx
42c856:	8b 44 24 38          	mov    0x38(%esp),%eax
42c85a:	81 f9 ff ff ff 00    	cmp    $0xffffff,%ecx
42c860:	66 89 90 b0 01 00 00 	mov    %dx,0x1b0(%eax)
42c867:	77 16                	ja     0x42c87f
42c869:	3b 5c 24 4c          	cmp    0x4c(%esp),%ebx
42c86d:	0f 84 a2 04 00 00    	je     0x42cd15
42c873:	0f b6 03             	movzbl (%ebx),%eax
42c876:	c1 e7 08             	shl    $0x8,%edi
42c879:	c1 e1 08             	shl    $0x8,%ecx
42c87c:	43                   	inc    %ebx
42c87d:	0b f8                	or     %eax,%edi
42c87f:	8b 74 24 38          	mov    0x38(%esp),%esi
42c883:	8b c1                	mov    %ecx,%eax
42c885:	c1 e8 0b             	shr    $0xb,%eax
42c888:	66 8b 96 c8 01 00 00 	mov    0x1c8(%esi),%dx
42c88f:	0f b7 ea             	movzwl %dx,%ebp
42c892:	0f af c5             	imul   %ebp,%eax
42c895:	3b f8                	cmp    %eax,%edi
42c897:	73 20                	jae    0x42c8b9
42c899:	8b f0                	mov    %eax,%esi
42c89b:	b8 00 08 00 00       	mov    $0x800,%eax
42c8a0:	2b c5                	sub    %ebp,%eax
42c8a2:	8b 6c 24 38          	mov    0x38(%esp),%ebp
42c8a6:	c1 f8 05             	sar    $0x5,%eax
42c8a9:	8d 04 10             	lea    (%eax,%edx,1),%eax
42c8ac:	66 89 85 c8 01 00 00 	mov    %ax,0x1c8(%ebp)
42c8b3:	8b 44 24 54          	mov    0x54(%esp),%eax
42c8b7:	eb 26                	jmp    0x42c8df
42c8b9:	8b f1                	mov    %ecx,%esi
42c8bb:	2b f8                	sub    %eax,%edi
42c8bd:	2b f0                	sub    %eax,%esi
42c8bf:	8b c2                	mov    %edx,%eax
42c8c1:	66 c1 e8 05          	shr    $0x5,%ax
42c8c5:	66 2b d0             	sub    %ax,%dx
42c8c8:	8b 44 24 38          	mov    0x38(%esp),%eax
42c8cc:	66 89 90 c8 01 00 00 	mov    %dx,0x1c8(%eax)
42c8d3:	8b 54 24 54          	mov    0x54(%esp),%edx
42c8d7:	8b 44 24 50          	mov    0x50(%esp),%eax
42c8db:	89 54 24 50          	mov    %edx,0x50(%esp)
42c8df:	8b 4c 24 58          	mov    0x58(%esp),%ecx
42c8e3:	89 4c 24 54          	mov    %ecx,0x54(%esp)
42c8e7:	8b 6c 24 5c          	mov    0x5c(%esp),%ebp
42c8eb:	89 44 24 5c          	mov    %eax,0x5c(%esp)
42c8ef:	89 6c 24 58          	mov    %ebp,0x58(%esp)
42c8f3:	33 c0                	xor    %eax,%eax
42c8f5:	83 7c 24 60 06       	cmpl   $0x6,0x60(%esp)
42c8fa:	8b 4c 24 78          	mov    0x78(%esp),%ecx
42c8fe:	0f 9f c0             	setg   %al
42c901:	81 c1 68 0a 00 00    	add    $0xa68,%ecx
42c907:	8d 44 40 08          	lea    0x8(%eax,%eax,2),%eax
42c90b:	89 44 24 60          	mov    %eax,0x60(%esp)
42c90f:	81 fe ff ff ff 00    	cmp    $0xffffff,%esi
42c915:	77 16                	ja     0x42c92d
42c917:	3b 5c 24 4c          	cmp    0x4c(%esp),%ebx
42c91b:	0f 84 f4 03 00 00    	je     0x42cd15
42c921:	0f b6 03             	movzbl (%ebx),%eax
42c924:	c1 e7 08             	shl    $0x8,%edi
42c927:	c1 e6 08             	shl    $0x8,%esi
42c92a:	43                   	inc    %ebx
42c92b:	0b f8                	or     %eax,%edi
42c92d:	66 8b 11             	mov    (%ecx),%dx
42c930:	8b c6                	mov    %esi,%eax
42c932:	c1 e8 0b             	shr    $0xb,%eax
42c935:	0f b7 ea             	movzwl %dx,%ebp
42c938:	0f af c5             	imul   %ebp,%eax
42c93b:	3b f8                	cmp    %eax,%edi
42c93d:	73 2f                	jae    0x42c96e
42c93f:	89 44 24 48          	mov    %eax,0x48(%esp)
42c943:	b8 00 08 00 00       	mov    $0x800,%eax
42c948:	2b c5                	sub    %ebp,%eax
42c94a:	c1 64 24 44 04       	shll   $0x4,0x44(%esp)
42c94f:	c1 f8 05             	sar    $0x5,%eax
42c952:	c7 44 24 2c 00 00 00 	movl   $0x0,0x2c(%esp)
42c959:	00
42c95a:	8d 04 10             	lea    (%eax,%edx,1),%eax
42c95d:	66 89 01             	mov    %ax,(%ecx)
42c960:	8b 44 24 44          	mov    0x44(%esp),%eax
42c964:	8d 4c 08 04          	lea    0x4(%eax,%ecx,1),%ecx
42c968:	89 4c 24 10          	mov    %ecx,0x10(%esp)
42c96c:	eb 72                	jmp    0x42c9e0
42c96e:	2b f0                	sub    %eax,%esi
42c970:	2b f8                	sub    %eax,%edi
42c972:	8b c2                	mov    %edx,%eax
42c974:	66 c1 e8 05          	shr    $0x5,%ax
42c978:	66 2b d0             	sub    %ax,%dx
42c97b:	81 fe ff ff ff 00    	cmp    $0xffffff,%esi
42c981:	66 89 11             	mov    %dx,(%ecx)
42c984:	77 16                	ja     0x42c99c
42c986:	3b 5c 24 4c          	cmp    0x4c(%esp),%ebx
42c98a:	0f 84 85 03 00 00    	je     0x42cd15
42c990:	0f b6 03             	movzbl (%ebx),%eax
42c993:	c1 e7 08             	shl    $0x8,%edi
42c996:	c1 e6 08             	shl    $0x8,%esi
42c999:	43                   	inc    %ebx
42c99a:	0b f8                	or     %eax,%edi