4242f2:	0f af f8             	imul   %eax,%edi
4242f5:	8d 47 01             	lea    0x1(%edi),%eax
4242f8:	50                   	push   %eax
4242f9:	b8 94 a0 42 00       	mov    $0x42a094,%eax
4242fe:	b9 01 00 00 00       	mov    $0x1,%ecx
424303:	8b 15 60 27 42 00    	mov    0x422760,%edx
424309:	e8 8a ff fd ff       	call   0x404298
42430e:	83 c4 04             	add    $0x4,%esp
424311:	8b df                	mov    %edi,%ebx
424313:	85 db                	test   %ebx,%ebx
424315:	7e 38                	jle    0x42434f
424317:	be 01 00 00 00       	mov    $0x1,%esi
42431c:	8d 95 64 ff ff ff    	lea    -0x9c(%ebp),%edx
424322:	8b 45 f0             	mov    -0x10(%ebp),%eax
424325:	e8 a6 27 fe ff       	call   0x406ad0
42432a:	8b 95 64 ff ff ff    	mov    -0x9c(%ebp),%edx
424330:	a1 94 a0 42 00       	mov    0x42a094,%eax
424335:	85 c0                	test   %eax,%eax
424337:	74 05                	je     0x42433e
424339:	3b 70 fc             	cmp    -0x4(%eax),%esi
42433c:	72 05                	jb     0x424343
42433e:	e8 d1 e9 fd ff       	call   0x402d14
424343:	8d 04 b0             	lea    (%eax,%esi,4),%eax
424346:	e8 9d f3 fd ff       	call   0x4036e8
42434b:	46                   	inc    %esi
42434c:	4b                   	dec    %ebx
42434d:	75 cd                	jne    0x42431c
42434f:	8b 05 c4 a0 42 00    	mov    0x42a0c4,%eax
424355:	8b 15 c8 a0 42 00    	mov    0x42a0c8,%edx
42435b:	50                   	push   %eax
42435c:	c1 f8 1f             	sar    $0x1f,%eax
42435f:	3b c2                	cmp    %edx,%eax
424361:	58                   	pop    %eax
424362:	74 05                	je     0x424369
424364:	e8 ab e9 fd ff       	call   0x402d14
424369:	8b d0                	mov    %eax,%edx
42436b:	8b 45 f0             	mov    -0x10(%ebp),%eax
42436e:	33 c9                	xor    %ecx,%ecx
424370:	e8 db 27 fe ff       	call   0x406b50
424375:	80 3d e4 a0 42 00 00 	cmpb   $0x0,0x42a0e4
42437c:	74 78                	je     0x4243f6
42437e:	8d 4d f8             	lea    -0x8(%ebp),%ecx
424381:	33 d2                	xor    %edx,%edx
424383:	b8 02 00 00 00       	mov    $0x2,%eax
424388:	e8 bb e7 ff ff       	call   0x422b48
42438d:	8b 45 f8             	mov    -0x8(%ebp),%eax
424390:	e8 8b 67 fe ff       	call   0x40ab20
424395:	89 45 ec             	mov    %eax,-0x14(%ebp)
424398:	8b 45 ec             	mov    -0x14(%ebp),%eax
42439b:	ba dc 51 42 00       	mov    $0x4251dc,%edx
4243a0:	e8 c3 26 fe ff       	call   0x406a68
4243a5:	ff 35 c0 a0 42 00    	push   0x42a0c0
4243ab:	ff 35 bc a0 42 00    	push   0x42a0bc
4243b1:	8b 55 f0             	mov    -0x10(%ebp),%edx
4243b4:	8b 45 ec             	mov    -0x14(%ebp),%eax
4243b7:	e8 c8 e9 ff ff       	call   0x422d84
4243bc:	8b 45 ec             	mov    -0x14(%ebp),%eax
4243bf:	e8 4c 5e fe ff       	call   0x40a210
4243c4:	b2 01                	mov    $0x1,%dl
4243c6:	a1 e0 e1 40 00       	mov    0x40e1e0,%eax
4243cb:	e8 e0 a1 fe ff       	call   0x40e5b0
4243d0:	8b d8                	mov    %eax,%ebx
4243d2:	8d 85 60 ff ff ff    	lea    -0xa0(%ebp),%eax
4243d8:	e8 1b 96 fe ff       	call   0x40d9f8
4243dd:	8b 8d 60 ff ff ff    	mov    -0xa0(%ebp),%ecx
4243e3:	8b 55 f8             	mov    -0x8(%ebp),%edx
4243e6:	8b c3                	mov    %ebx,%eax
4243e8:	e8 4f a6 fe ff       	call   0x40ea3c
4243ed:	8b c3                	mov    %ebx,%eax
4243ef:	e8 90 e9 fd ff       	call   0x402d84
4243f4:	eb 79                	jmp    0x42446f
4243f6:	33 db                	xor    %ebx,%ebx
4243f8:	8a 5d d5             	mov    -0x2b(%ebp),%bl
4243fb:	85 db                	test   %ebx,%ebx
4243fd:	7e 70                	jle    0x42446f
4243ff:	8d 95 5c ff ff ff    	lea    -0xa4(%ebp),%edx
424405:	8b 45 f0             	mov    -0x10(%ebp),%eax
424408:	e8 c3 26 fe ff       	call   0x406ad0
42440d:	8b 85 5c ff ff ff    	mov    -0xa4(%ebp),%eax
424413:	50                   	push   %eax
424414:	8d 85 58 ff ff ff    	lea    -0xa8(%ebp),%eax
42441a:	e8 d9 95 fe ff       	call   0x40d9f8
42441f:	8b 95 58 ff ff ff    	mov    -0xa8(%ebp),%edx
424425:	8d 45 f8             	lea    -0x8(%ebp),%eax
424428:	59                   	pop    %ecx
424429:	e8 12 f5 fd ff       	call   0x403940
42442e:	8b 45 f8             	mov    -0x8(%ebp),%eax
424431:	e8 ea 66 fe ff       	call   0x40ab20
424436:	89 45 ec             	mov    %eax,-0x14(%ebp)
424439:	8d 95 54 ff ff ff    	lea    -0xac(%ebp),%edx
42443f:	8b 45 f0             	mov    -0x10(%ebp),%eax
424442:	e8 89 26 fe ff       	call   0x406ad0
424447:	8b 85 54 ff ff ff    	mov    -0xac(%ebp),%eax
42444d:	e8 ae 92 fe ff       	call   0x40d700
424452:	8b f8                	mov    %eax,%edi
424454:	8b c7                	mov    %edi,%eax
424456:	99                   	cltd
424457:	52                   	push   %edx
424458:	50                   	push   %eax
424459:	8b 55 f0             	mov    -0x10(%ebp),%edx
42445c:	8b 45 ec             	mov    -0x14(%ebp),%eax
42445f:	e8 20 e9 ff ff       	call   0x422d84
424464:	8b 45 ec             	mov    -0x14(%ebp),%eax
424467:	e8 a4 5d fe ff       	call   0x40a210
42446c:	4b                   	dec    %ebx
42446d:	75 90                	jne    0x4243ff
42446f:	8b 45 f0             	mov    -0x10(%ebp),%eax
424472:	e8 99 5d fe ff       	call   0x40a210
424477:	83 3d d4 a0 42 00 00 	cmpl   $0x0,0x42a0d4
42447e:	0f 84 95 00 00 00    	je     0x424519
424484:	c6 05 c0 87 42 00 ff 	movb   $0xff,0x4287c0
42448b:	b8 1a 00 00 00       	mov    $0x1a,%eax
424490:	e8 a3 e6 ff ff       	call   0x422b38
424495:	8b d8                	mov    %eax,%ebx
424497:	4b                   	dec    %ebx
424498:	85 db                	test   %ebx,%ebx
42449a:	7c 6a                	jl     0x424506
42449c:	43                   	inc    %ebx
42449d:	33 f6                	xor    %esi,%esi
42449f:	8b c6                	mov    %esi,%eax
4244a1:	c1 e0 02             	shl    $0x2,%eax
4244a4:	8b 15 98 a0 42 00    	mov    0x42a098,%edx
4244aa:	85 d2                	test   %edx,%edx
4244ac:	74 05                	je     0x4244b3
4244ae:	3b 42 fc             	cmp    -0x4(%edx),%eax
4244b1:	72 05                	jb     0x4244b8
4244b3:	e8 5c e8 fd ff       	call   0x402d14
4244b8:	8b 04 82             	mov    (%edx,%eax,4),%eax
4244bb:	8d 95 50 ff ff ff    	lea    -0xb0(%ebp),%edx
4244c1:	e8 c6 64 fe ff       	call   0x40a98c
4244c6:	8b 85 50 ff ff ff    	mov    -0xb0(%ebp),%eax
4244cc:	50                   	push   %eax
4244cd:	8d 95 4c ff ff ff    	lea    -0xb4(%ebp),%edx
4244d3:	a1 d4 a0 42 00       	mov    0x42a0d4,%eax
4244d8:	e8 af 64 fe ff       	call   0x40a98c
4244dd:	8b 85 4c ff ff ff    	mov    -0xb4(%ebp),%eax
4244e3:	5a                   	pop    %edx
4244e4:	e8 4f f7 fd ff       	call   0x403c38
4244e9:	85 c0                	test   %eax,%eax
4244eb:	7e 15                	jle    0x424502
4244ed:	8b c6                	mov    %esi,%eax
4244ef:	3d ff 00 00 00       	cmp    $0xff,%eax
4244f4:	76 05                	jbe    0x4244fb
4244f6:	e8 19 e8 fd ff       	call   0x402d14
4244fb:	a2 c0 87 42 00       	mov    %al,0x4287c0
424500:	eb 04                	jmp    0x424506
424502:	46                   	inc    %esi
424503:	4b                   	dec    %ebx
424504:	75 99                	jne    0x42449f
424506:	80 3d c0 87 42 00 ff 	cmpb   $0xff,0x4287c0
42450d:	75 0a                	jne    0x424519
42450f:	b8 d4 a0 42 00       	mov    $0x42a0d4,%eax
424514:	e8 7b f1 fd ff       	call   0x403694
424519:	b8 1a 00 00 00       	mov    $0x1a,%eax
42451e:	e8 15 e6 ff ff       	call   0x422b38
424523:	48                   	dec    %eax
424524:	7e 4a                	jle    0x424570
424526:	83 3d d4 a0 42 00 00 	cmpl   $0x0,0x42a0d4
42452d:	75 41                	jne    0x424570
42452f:	8b 15 40 88 42 00    	mov    0x428840,%edx
424535:	8b 12                	mov    (%edx),%edx
424537:	a1 ec 87 42 00       	mov    0x4287ec,%eax
42453c:	e8 e7 61 ff ff       	call   0x41a728
424541:	8b 45 fc             	mov    -0x4(%ebp),%eax
424544:	8b 40 18             	mov    0x18(%eax),%eax
424547:	e8 1c 37 fe ff       	call   0x407c68
42454c:	a1 ec 87 42 00       	mov    0x4287ec,%eax
424551:	8b 00                	mov    (%eax),%eax
424553:	8b 40 18             	mov    0x18(%eax),%eax
424556:	e8 8d 47 fe ff       	call   0x408ce8
42455b:	80 3d cc 87 42 00 00 	cmpb   $0x0,0x4287cc
424562:	75 0c                	jne    0x424570
424564:	b0 01                	mov    $0x1,%al
424566:	e8 a1 e6 ff ff       	call   0x422c0c
42456b:	e8 2c f0 fd ff       	call   0x40359c
424570:	b8 1a 00 00 00       	mov    $0x1a,%eax
424575:	e8 be e5 ff ff       	call   0x422b38
42457a:	48                   	dec    %eax
42457b:	0f 8e 9c 00 00 00    	jle    0x42461d
424581:	80 3d c0 87 42 00 00 	cmpb   $0x0,0x4287c0
424588:	0f 86 8f 00 00 00    	jbe    0x42461d
42458e:	b8 d4 a0 42 00       	mov    $0x42a0d4,%eax
424593:	33 d2                	xor    %edx,%edx
424595:	8a 15 c0 87 42 00    	mov    0x4287c0,%dl
42459b:	c1 e2 02             	shl    $0x2,%edx
42459e:	8b 0d 98 a0 42 00    	mov    0x42a098,%ecx
4245a4:	85 c9                	test   %ecx,%ecx
4245a6:	74 05                	je     0x4245ad
4245a8:	3b 51 fc             	cmp    -0x4(%ecx),%edx
4245ab:	72 05                	jb     0x4245b2
4245ad:	e8 62 e7 fd ff       	call   0x402d14
4245b2:	8b 14 91             	mov    (%ecx,%edx,4),%edx
4245b5:	e8 2e f1 fd ff       	call   0x4036e8
4245ba:	b8 39 00 00 00       	mov    $0x39,%eax
4245bf:	e8 74 e5 ff ff       	call   0x422b38
4245c4:	8b d8                	mov    %eax,%ebx
4245c6:	85 db                	test   %ebx,%ebx
4245c8:	7e 76                	jle    0x424640
4245ca:	be 01 00 00 00       	mov    $0x1,%esi
4245cf:	b8 39 00 00 00       	mov    $0x39,%eax
4245d4:	e8 5f e5 ff ff       	call   0x422b38
4245d9:	33 d2                	xor    %edx,%edx
4245db:	8a 15 c0 87 42 00    	mov    0x4287c0,%dl
4245e1:	f7 ea                	imul   %edx
4245e3:	03 c6                	add    %esi,%eax
4245e5:	8b 15 94 a0 42 00    	mov    0x42a094,%edx
4245eb:	85 d2                	test   %edx,%edx
4245ed:	74 05                	je     0x4245f4
4245ef:	3b 42 fc             	cmp    -0x4(%edx),%eax
4245f2:	72 05                	jb     0x4245f9
4245f4:	e8 1b e7 fd ff       	call   0x402d14
4245f9:	8b 14 82             	mov    (%edx,%eax,4),%edx
4245fc:	a1 94 a0 42 00       	mov    0x42a094,%eax
424601:	85 c0                	test   %eax,%eax
424603:	74 05                	je     0x42460a
424605:	3b 70 fc             	cmp    -0x4(%eax),%esi
424608:	72 05                	jb     0x42460f
42460a:	e8 05 e7 fd ff       	call   0x402d14
42460f:	8d 04 b0             	lea    (%eax,%esi,4),%eax
424612:	e8 d1 f0 fd ff       	call   0x4036e8
424617:	46                   	inc    %esi
424618:	4b                   	dec    %ebx
424619:	75 b4                	jne    0x4245cf
42461b:	eb 23                	jmp    0x424640
42461d:	b8 d4 a0 42 00       	mov    $0x42a0d4,%eax
424622:	33 d2                	xor    %edx,%edx
424624:	8b 0d 98 a0 42 00    	mov    0x42a098,%ecx
42462a:	85 c9                	test   %ecx,%ecx
42462c:	74 05                	je     0x424633
42462e:	3b 51 fc             	cmp    -0x4(%ecx),%edx
424631:	72 05                	jb     0x424638
424633:	e8 dc e6 fd ff       	call   0x402d14
424638:	8b 14 91             	mov    (%ecx,%edx,4),%edx
42463b:	e8 a8 f0 fd ff       	call   0x4036e8
424640:	8d 95 48 ff ff ff    	lea    -0xb8(%ebp),%edx
424646:	a1 d4 a0 42 00       	mov    0x42a0d4,%eax
42464b:	e8 70 f1 ff ff       	call   0x4237c0
424650:	8b 95 48 ff ff ff    	mov    -0xb8(%ebp),%edx
424656:	b8 d4 a0 42 00       	mov    $0x42a0d4,%eax
42465b:	e8 88 f0 fd ff       	call   0x4036e8
424660:	8d 45 f8             	lea    -0x8(%ebp),%eax
424663:	33 d2                	xor    %edx,%edx
424665:	8a 15 c0 87 42 00    	mov    0x4287c0,%dl
42466b:	c1 e2 02             	shl    $0x2,%edx
42466e:	83 c2 02             	add    $0x2,%edx
424671:	8b 0d 98 a0 42 00    	mov    0x42a098,%ecx
424677:	85 c9                	test   %ecx,%ecx
424679:	74 05                	je     0x424680
42467b:	3b 51 fc             	cmp    -0x4(%ecx),%edx
42467e:	72 05                	jb     0x424685
424680:	e8 8f e6 fd ff       	call   0x402d14
424685:	8b 14 91             	mov    (%ecx,%edx,4),%edx
424688:	e8 9f f0 fd ff       	call   0x40372c
42468d:	83 7d f8 00          	cmpl   $0x0,-0x8(%ebp)
424691:	74 1e                	je     0x4246b1
424693:	8b 45 f8             	mov    -0x8(%ebp),%eax
424696:	e8 65 90 fe ff       	call   0x40d700
42469b:	3d ff 00 00 00       	cmp    $0xff,%eax
4246a0:	76 05                	jbe    0x4246a7
4246a2:	e8 6d e6 fd ff       	call   0x402d14
4246a7:	8b 15 08 88 42 00    	mov    0x428808,%edx
4246ad:	88 02                	mov    %al,(%edx)
4246af:	eb 08                	jmp    0x4246b9
4246b1:	a1 08 88 42 00       	mov    0x428808,%eax
4246b6:	c6 00 0f             	movb   $0xf,(%eax)
4246b9:	8d 45 f8             	lea    -0x8(%ebp),%eax
4246bc:	33 d2                	xor    %edx,%edx
4246be:	8a 15 c0 87 42 00    	mov    0x4287c0,%dl
4246c4:	c1 e2 02             	shl    $0x2,%edx
4246c7:	83 c2 03             	add    $0x3,%edx
4246ca:	8b 0d 98 a0 42 00    	mov    0x42a098,%ecx
4246d0:	85 c9                	test   %ecx,%ecx
4246d2:	74 05                	je     0x4246d9
4246d4:	3b 51 fc             	cmp    -0x4(%ecx),%edx
4246d7:	72 05                	jb     0x4246de
4246d9:	e8 36 e6 fd ff       	call   0x402d14
4246de:	8b 14 91             	mov    (%ecx,%edx,4),%edx
4246e1:	e8 46 f0 fd ff       	call   0x40372c
4246e6:	83 7d f8 00          	cmpl   $0x0,-0x8(%ebp)
4246ea:	74 1e                	je     0x42470a
4246ec:	8b 45 f8             	mov    -0x8(%ebp),%eax
4246ef:	e8 0c 90 fe ff       	call   0x40d700
4246f4:	3d ff 00 00 00       	cmp    $0xff,%eax
4246f9:	76 05                	jbe    0x424700
4246fb:	e8 14 e6 fd ff       	call   0x402d14
424700:	8b 15 80 88 42 00    	mov    0x428880,%edx
424706:	88 02                	mov    %al,(%edx)
424708:	eb 08                	jmp    0x424712
42470a:	a1 80 88 42 00       	mov    0x428880,%eax
42470f:	c6 00 10             	movb   $0x10,(%eax)
424712:	b8 3d 00 00 00       	mov    $0x3d,%eax
424717:	e8 1c e4 ff ff       	call   0x422b38
42471c:	e8 f7 55 fe ff       	call   0x409d18
424721:	84 c0                	test   %al,%al
424723:	0f 84 9c 00 00 00    	je     0x4247c5
424729:	80 3d c4 87 42 00 00 	cmpb   $0x0,0x4287c4
424730:	0f 85 83 00 00 00    	jne    0x4247b9
424736:	6a 30                	push   $0x30
424738:	b8 41 00 00 00       	mov    $0x41,%eax
42473d:	8b 15 90 a0 42 00    	mov    0x42a090,%edx
424743:	85 d2                	test   %edx,%edx
424745:	74 05                	je     0x42474c
424747:	3b 42 fc             	cmp    -0x4(%edx),%eax
42474a:	72 05                	jb     0x424751
42474c:	e8 c3 e5 fd ff       	call   0x402d14
424751:	8b 04 82             	mov    (%edx,%eax,4),%eax
424754:	e8 9b f3 fd ff       	call   0x403af4
424759:	50                   	push   %eax
42475a:	b8 3e 00 00 00       	mov    $0x3e,%eax
42475f:	8b 15 90 a0 42 00    	mov    0x42a090,%edx
424765:	85 d2                	test   %edx,%edx
424767:	74 05                	je     0x42476e
424769:	3b 42 fc             	cmp    -0x4(%edx),%eax
42476c:	72 05                	jb     0x424773
42476e:	e8 a1 e5 fd ff       	call   0x402d14
424773:	8b 0c 82             	mov    (%edx,%eax,4),%ecx
424776:	b8 34 00 00 00       	mov    $0x34,%eax
42477b:	8b 15 94 a0 42 00    	mov    0x42a094,%edx
424781:	85 d2                	test   %edx,%edx
424783:	74 05                	je     0x42478a
424785:	3b 42 fc             	cmp    -0x4(%edx),%eax
424788:	72 05                	jb     0x42478f
42478a:	e8 85 e5 fd ff       	call   0x402d14
42478f:	8b 14 82             	mov    (%edx,%eax,4),%edx
424792:	8d 85 44 ff ff ff    	lea    -0xbc(%ebp),%eax
424798:	e8 a3 f1 fd ff       	call   0x403940
42479d:	8b 85 44 ff ff ff    	mov    -0xbc(%ebp),%eax
4247a3:	e8 4c f3 fd ff       	call   0x403af4
4247a8:	50                   	push   %eax
4247a9:	a1 40 88 42 00       	mov    0x428840,%eax
4247ae:	8b 00                	mov    (%eax),%eax
4247b0:	8b 40 1c             	mov    0x1c(%eax),%eax
4247b3:	50                   	push   %eax
4247b4:	e8 1b 08 fe ff       	call   0x404fd4
4247b9:	b0 01                	mov    $0x1,%al
4247bb:	e8 4c e4 ff ff       	call   0x422c0c
4247c0:	e8 d7 ed fd ff       	call   0x40359c
4247c5:	b8 63 00 00 00       	mov    $0x63,%eax
4247ca:	e8 41 e3 ff ff       	call   0x422b10
4247cf:	84 c0                	test   %al,%al
4247d1:	74 54                	je     0x424827
4247d3:	e8 a4 e8 ff ff       	call   0x42307c
4247d8:	84 c0                	test   %al,%al
4247da:	75 4b                	jne    0x424827
4247dc:	6a 30                	push   $0x30
4247de:	a1 e0 a0 42 00       	mov    0x42a0e0,%eax
4247e3:	e8 0c f3 fd ff       	call   0x403af4
4247e8:	50                   	push   %eax
4247e9:	b8 55 00 00 00       	mov    $0x55,%eax
4247ee:	8b 15 94 a0 42 00    	mov    0x42a094,%edx