42c343:	00
42c344:	c7 44 24 50 01 00 00 	movl   $0x1,0x50(%esp)
42c34b:	00
42c34c:	0f b6 4a 01          	movzbl 0x1(%edx),%ecx
42c350:	03 ce                	add    %esi,%ecx
42c352:	d3 e0                	shl    %cl,%eax
42c354:	8d 88 36 07 00 00    	lea    0x736(%eax),%ecx
42c35a:	39 4c 24 74          	cmp    %ecx,0x74(%esp)
42c35e:	73 0e                	jae    0x42c36e
42c360:	8b 44 24 78          	mov    0x78(%esp),%eax
42c364:	66 c7 00 00 04       	movw   $0x400,(%eax)
42c369:	83 c0 02             	add    $0x2,%eax
42c36c:	e2 f6                	loop   0x42c364
42c36e:	8b 9c 24 94 00 00 00 	mov    0x94(%esp),%ebx
42c375:	33 ff                	xor    %edi,%edi
42c377:	c7 44 24 48 ff ff ff 	movl   $0xffffffff,0x48(%esp)
42c37e:	ff
42c37f:	8b d3                	mov    %ebx,%edx
42c381:	03 94 24 98 00 00 00 	add    0x98(%esp),%edx
42c388:	89 54 24 4c          	mov    %edx,0x4c(%esp)
42c38c:	33 d2                	xor    %edx,%edx
42c38e:	3b 5c 24 4c          	cmp    0x4c(%esp),%ebx
42c392:	0f 84 7d 09 00 00    	je     0x42cd15
42c398:	0f b6 03             	movzbl (%ebx),%eax
42c39b:	c1 e7 08             	shl    $0x8,%edi
42c39e:	42                   	inc    %edx
42c39f:	43                   	inc    %ebx
42c3a0:	0b f8                	or     %eax,%edi
42c3a2:	83 fa 04             	cmp    $0x4,%edx
42c3a5:	7e e7                	jle    0x42c38e
42c3a7:	8b 8c 24 a4 00 00 00 	mov    0xa4(%esp),%ecx
42c3ae:	39 4c 24 74          	cmp    %ecx,0x74(%esp)
42c3b2:	0f 83 65 09 00 00    	jae    0x42cd1d
42c3b8:	8b 74 24 74          	mov    0x74(%esp),%esi
42c3bc:	23 74 24 6c          	and    0x6c(%esp),%esi
42c3c0:	8b 44 24 60          	mov    0x60(%esp),%eax
42c3c4:	8b 54 24 78          	mov    0x78(%esp),%edx
42c3c8:	c1 e0 04             	shl    $0x4,%eax
42c3cb:	89 74 24 44          	mov    %esi,0x44(%esp)
42c3cf:	03 c6                	add    %esi,%eax
42c3d1:	81 7c 24 48 ff ff ff 	cmpl   $0xffffff,0x48(%esp)
42c3d8:	00
42c3d9:	8d 2c 42             	lea    (%edx,%eax,2),%ebp
42c3dc:	77 18                	ja     0x42c3f6
42c3de:	3b 5c 24 4c          	cmp    0x4c(%esp),%ebx
42c3e2:	0f 84 2d 09 00 00    	je     0x42cd15
42c3e8:	c1 64 24 48 08       	shll   $0x8,0x48(%esp)
42c3ed:	0f b6 03             	movzbl (%ebx),%eax
42c3f0:	c1 e7 08             	shl    $0x8,%edi
42c3f3:	43                   	inc    %ebx
42c3f4:	0b f8                	or     %eax,%edi
42c3f6:	8b 44 24 48          	mov    0x48(%esp),%eax
42c3fa:	66 8b 55 00          	mov    0x0(%ebp),%dx
42c3fe:	c1 e8 0b             	shr    $0xb,%eax
42c401:	0f b7 ca             	movzwl %dx,%ecx
42c404:	0f af c1             	imul   %ecx,%eax
42c407:	3b f8                	cmp    %eax,%edi
42c409:	0f 83 dd 01 00 00    	jae    0x42c5ec
42c40f:	89 44 24 48          	mov    %eax,0x48(%esp)
42c413:	b8 00 08 00 00       	mov    $0x800,%eax
42c418:	2b c1                	sub    %ecx,%eax
42c41a:	8a 4c 24 64          	mov    0x64(%esp),%cl
42c41e:	c1 f8 05             	sar    $0x5,%eax
42c421:	be 01 00 00 00       	mov    $0x1,%esi
42c426:	8d 04 10             	lea    (%eax,%edx,1),%eax
42c429:	0f b6 54 24 73       	movzbl 0x73(%esp),%edx
42c42e:	66 89 45 00          	mov    %ax,0x0(%ebp)
42c432:	8b 44 24 74          	mov    0x74(%esp),%eax
42c436:	23 44 24 68          	and    0x68(%esp),%eax
42c43a:	8b 6c 24 78          	mov    0x78(%esp),%ebp
42c43e:	d3 e0                	shl    %cl,%eax
42c440:	b9 08 00 00 00       	mov    $0x8,%ecx
42c445:	2b 4c 24 64          	sub    0x64(%esp),%ecx
42c449:	d3 fa                	sar    %cl,%edx
42c44b:	03 c2                	add    %edx,%eax
42c44d:	69 c0 00 06 00 00    	imul   $0x600,%eax,%eax
42c453:	83 7c 24 60 06       	cmpl   $0x6,0x60(%esp)
42c458:	8d 84 28 6c 0e 00 00 	lea    0xe6c(%eax,%ebp,1),%eax
42c45f:	89 44 24 14          	mov    %eax,0x14(%esp)
42c463:	0f 8e ca 00 00 00    	jle    0x42c533
42c469:	8b 44 24 74          	mov    0x74(%esp),%eax
42c46d:	2b 44 24 5c          	sub    0x5c(%esp),%eax
42c471:	8b 94 24 a0 00 00 00 	mov    0xa0(%esp),%edx
42c478:	0f b6 04 10          	movzbl (%eax,%edx,1),%eax
42c47c:	89 44 24 40          	mov    %eax,0x40(%esp)
42c480:	d1 64 24 40          	shll   $1,0x40(%esp)
42c484:	8b 4c 24 40          	mov    0x40(%esp),%ecx
42c488:	8d 14 36             	lea    (%esi,%esi,1),%edx
42c48b:	8b 6c 24 14          	mov    0x14(%esp),%ebp
42c48f:	81 e1 00 01 00 00    	and    $0x100,%ecx
42c495:	81 7c 24 48 ff ff ff 	cmpl   $0xffffff,0x48(%esp)
42c49c:	00
42c49d:	8d 44 4d 00          	lea    0x0(%ebp,%ecx,2),%eax
42c4a1:	89 4c 24 3c          	mov    %ecx,0x3c(%esp)
42c4a5:	8d 2c 02             	lea    (%edx,%eax,1),%ebp
42c4a8:	77 18                	ja     0x42c4c2
42c4aa:	3b 5c 24 4c          	cmp    0x4c(%esp),%ebx
42c4ae:	0f 84 61 08 00 00    	je     0x42cd15
42c4b4:	c1 64 24 48 08       	shll   $0x8,0x48(%esp)
42c4b9:	0f b6 03             	movzbl (%ebx),%eax
42c4bc:	c1 e7 08             	shl    $0x8,%edi
42c4bf:	43                   	inc    %ebx
42c4c0:	0b f8                	or     %eax,%edi
42c4c2:	8b 44 24 48          	mov    0x48(%esp),%eax
42c4c6:	66 8b 8d 00 02 00 00 	mov    0x200(%ebp),%cx
42c4cd:	c1 e8 0b             	shr    $0xb,%eax
42c4d0:	0f b7 f1             	movzwl %cx,%esi
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