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
42c99c:	66 8b 51 02          	mov    0x2(%ecx),%dx
42c9a0:	8b c6                	mov    %esi,%eax
42c9a2:	c1 e8 0b             	shr    $0xb,%eax
42c9a5:	0f b7 ea             	movzwl %dx,%ebp
42c9a8:	0f af c5             	imul   %ebp,%eax
42c9ab:	3b f8                	cmp    %eax,%edi
42c9ad:	73 3b                	jae    0x42c9ea
42c9af:	89 44 24 48          	mov    %eax,0x48(%esp)
42c9b3:	b8 00 08 00 00       	mov    $0x800,%eax
42c9b8:	2b c5                	sub    %ebp,%eax
42c9ba:	c1 64 24 44 04       	shll   $0x4,0x44(%esp)
42c9bf:	c1 f8 05             	sar    $0x5,%eax
42c9c2:	c7 44 24 2c 08 00 00 	movl   $0x8,0x2c(%esp)
42c9c9:	00
42c9ca:	8d 04 10             	lea    (%eax,%edx,1),%eax
42c9cd:	8b 54 24 44          	mov    0x44(%esp),%edx
42c9d1:	66 89 41 02          	mov    %ax,0x2(%ecx)
42c9d5:	8d 8c 0a 04 01 00 00 	lea    0x104(%edx,%ecx,1),%ecx
42c9dc:	89 4c 24 10          	mov    %ecx,0x10(%esp)
42c9e0:	c7 44 24 30 03 00 00 	movl   $0x3,0x30(%esp)
42c9e7:	00
42c9e8:	eb 2f                	jmp    0x42ca19
42c9ea:	2b f0                	sub    %eax,%esi
42c9ec:	2b f8                	sub    %eax,%edi
42c9ee:	8b c2                	mov    %edx,%eax
42c9f0:	89 74 24 48          	mov    %esi,0x48(%esp)
42c9f4:	66 c1 e8 05          	shr    $0x5,%ax
42c9f8:	c7 44 24 2c 10 00 00 	movl   $0x10,0x2c(%esp)
42c9ff:	00
42ca00:	66 2b d0             	sub    %ax,%dx
42ca03:	c7 44 24 30 08 00 00 	movl   $0x8,0x30(%esp)
42ca0a:	00
42ca0b:	66 89 51 02          	mov    %dx,0x2(%ecx)
42ca0f:	81 c1 04 02 00 00    	add    $0x204,%ecx
42ca15:	89 4c 24 10          	mov    %ecx,0x10(%esp)
42ca19:	8b 4c 24 30          	mov    0x30(%esp),%ecx
42ca1d:	ba 01 00 00 00       	mov    $0x1,%edx
42ca22:	89 4c 24 28          	mov    %ecx,0x28(%esp)
42ca26:	8d 2c 12             	lea    (%edx,%edx,1),%ebp
42ca29:	8b 74 24 10          	mov    0x10(%esp),%esi
42ca2d:	03 f5                	add    %ebp,%esi
42ca2f:	81 7c 24 48 ff ff ff 	cmpl   $0xffffff,0x48(%esp)
42ca36:	00
42ca37:	77 18                	ja     0x42ca51
42ca39:	3b 5c 24 4c          	cmp    0x4c(%esp),%ebx
42ca3d:	0f 84 d2 02 00 00    	je     0x42cd15
42ca43:	c1 64 24 48 08       	shll   $0x8,0x48(%esp)
42ca48:	0f b6 03             	movzbl (%ebx),%eax
42ca4b:	c1 e7 08             	shl    $0x8,%edi
42ca4e:	43                   	inc    %ebx
42ca4f:	0b f8                	or     %eax,%edi
42ca51:	8b 44 24 48          	mov    0x48(%esp),%eax
42ca55:	66 8b 16             	mov    (%esi),%dx
42ca58:	c1 e8 0b             	shr    $0xb,%eax
42ca5b:	0f b7 ca             	movzwl %dx,%ecx
42ca5e:	0f af c1             	imul   %ecx,%eax
42ca61:	3b f8                	cmp    %eax,%edi
42ca63:	73 18                	jae    0x42ca7d
42ca65:	89 44 24 48          	mov    %eax,0x48(%esp)
42ca69:	b8 00 08 00 00       	mov    $0x800,%eax
42ca6e:	2b c1                	sub    %ecx,%eax
42ca70:	c1 f8 05             	sar    $0x5,%eax
42ca73:	8d 04 10             	lea    (%eax,%edx,1),%eax
42ca76:	8b d5                	mov    %ebp,%edx
42ca78:	66 89 06             	mov    %ax,(%esi)
42ca7b:	eb 15                	jmp    0x42ca92
42ca7d:	29 44 24 48          	sub    %eax,0x48(%esp)
42ca81:	2b f8                	sub    %eax,%edi
42ca83:	8b c2                	mov    %edx,%eax
42ca85:	66 c1 e8 05          	shr    $0x5,%ax
42ca89:	66 2b d0             	sub    %ax,%dx
42ca8c:	66 89 16             	mov    %dx,(%esi)
42ca8f:	8d 55 01             	lea    0x1(%ebp),%edx
42ca92:	8b 74 24 28          	mov    0x28(%esp),%esi
42ca96:	4e                   	dec    %esi
42ca97:	89 74 24 28          	mov    %esi,0x28(%esp)
42ca9b:	75 89                	jne    0x42ca26
42ca9d:	8a 4c 24 30          	mov    0x30(%esp),%cl
42caa1:	b8 01 00 00 00       	mov    $0x1,%eax
42caa6:	d3 e0                	shl    %cl,%eax
42caa8:	2b d0                	sub    %eax,%edx
42caaa:	03 54 24 2c          	add    0x2c(%esp),%edx
42caae:	83 7c 24 60 03       	cmpl   $0x3,0x60(%esp)
42cab3:	89 54 24 0c          	mov    %edx,0xc(%esp)
42cab7:	0f 8f e7 01 00 00    	jg     0x42cca4
42cabd:	83 44 24 60 07       	addl   $0x7,0x60(%esp)
42cac2:	83 fa 03             	cmp    $0x3,%edx
42cac5:	8b c2                	mov    %edx,%eax
42cac7:	7e 05                	jle    0x42cace
42cac9:	b8 03 00 00 00       	mov    $0x3,%eax
42cace:	8b 74 24 78          	mov    0x78(%esp),%esi
42cad2:	c1 e0 07             	shl    $0x7,%eax
42cad5:	c7 44 24 24 06 00 00 	movl   $0x6,0x24(%esp)
42cadc:	00
42cadd:	8d 84 30 60 03 00 00 	lea    0x360(%eax,%esi,1),%eax
42cae4:	89 44 24 08          	mov    %eax,0x8(%esp)
42cae8:	b8 01 00 00 00       	mov    $0x1,%eax
42caed:	8d 2c 00             	lea    (%eax,%eax,1),%ebp
42caf0:	8b 74 24 08          	mov    0x8(%esp),%esi
42caf4:	03 f5                	add    %ebp,%esi
42caf6:	81 7c 24 48 ff ff ff 	cmpl   $0xffffff,0x48(%esp)
42cafd:	00
42cafe:	77 18                	ja     0x42cb18
42cb00:	3b 5c 24 4c          	cmp    0x4c(%esp),%ebx
42cb04:	0f 84 0b 02 00 00    	je     0x42cd15
42cb0a:	c1 64 24 48 08       	shll   $0x8,0x48(%esp)
42cb0f:	0f b6 03             	movzbl (%ebx),%eax
42cb12:	c1 e7 08             	shl    $0x8,%edi
42cb15:	43                   	inc    %ebx
42cb16:	0b f8                	or     %eax,%edi
42cb18:	8b 44 24 48          	mov    0x48(%esp),%eax
42cb1c:	66 8b 16             	mov    (%esi),%dx
42cb1f:	c1 e8 0b             	shr    $0xb,%eax
42cb22:	0f b7 ca             	movzwl %dx,%ecx
42cb25:	0f af c1             	imul   %ecx,%eax
42cb28:	3b f8                	cmp    %eax,%edi
42cb2a:	73 18                	jae    0x42cb44
42cb2c:	89 44 24 48          	mov    %eax,0x48(%esp)
42cb30:	b8 00 08 00 00       	mov    $0x800,%eax
42cb35:	2b c1                	sub    %ecx,%eax
42cb37:	c1 f8 05             	sar    $0x5,%eax
42cb3a:	8d 04 10             	lea    (%eax,%edx,1),%eax
42cb3d:	66 89 06             	mov    %ax,(%esi)
42cb40:	8b c5                	mov    %ebp,%eax
42cb42:	eb 15                	jmp    0x42cb59
42cb44:	29 44 24 48          	sub    %eax,0x48(%esp)
42cb48:	2b f8                	sub    %eax,%edi
42cb4a:	8b c2                	mov    %edx,%eax
42cb4c:	66 c1 e8 05          	shr    $0x5,%ax
42cb50:	66 2b d0             	sub    %ax,%dx
42cb53:	8d 45 01             	lea    0x1(%ebp),%eax
42cb56:	66 89 16             	mov    %dx,(%esi)