420353:	0f 85 46 01 00 00    	jne    0x42049f
420359:	8b 85 5c fc ff ff    	mov    -0x3a4(%ebp),%eax
42035f:	8d 79 01             	lea    0x1(%ecx),%edi
420362:	ff 85 94 f8 ff ff    	incl   -0x76c(%ebp)
420368:	c6 01 31             	movb   $0x31,(%ecx)
42036b:	89 bd b8 f8 ff ff    	mov    %edi,-0x748(%ebp)
420371:	89 85 a8 f8 ff ff    	mov    %eax,-0x758(%ebp)
420377:	85 c0                	test   %eax,%eax
420379:	74 5f                	je     0x4203da
42037b:	33 ff                	xor    %edi,%edi
42037d:	33 c9                	xor    %ecx,%ecx
42037f:	8b 84 8d 60 fc ff ff 	mov    -0x3a0(%ebp,%ecx,4),%eax
420386:	f7 e2                	mul    %edx
420388:	6a 0a                	push   $0xa
42038a:	03 c7                	add    %edi,%eax
42038c:	89 84 8d 60 fc ff ff 	mov    %eax,-0x3a0(%ebp,%ecx,4)
420393:	83 d2 00             	adc    $0x0,%edx
420396:	41                   	inc    %ecx
420397:	8b fa                	mov    %edx,%edi
420399:	5a                   	pop    %edx
42039a:	3b 8d a8 f8 ff ff    	cmp    -0x758(%ebp),%ecx
4203a0:	75 dd                	jne    0x42037f
4203a2:	89 bd a8 f8 ff ff    	mov    %edi,-0x758(%ebp)
4203a8:	85 ff                	test   %edi,%edi
4203aa:	8b bd b8 f8 ff ff    	mov    -0x748(%ebp),%edi
4203b0:	74 22                	je     0x4203d4
4203b2:	8b 8d 5c fc ff ff    	mov    -0x3a4(%ebp),%ecx
4203b8:	83 f9 73             	cmp    $0x73,%ecx
4203bb:	0f 83 b3 00 00 00    	jae    0x420474
4203c1:	8b 85 a8 f8 ff ff    	mov    -0x758(%ebp),%eax
4203c7:	89 84 8d 60 fc ff ff 	mov    %eax,-0x3a0(%ebp,%ecx,4)
4203ce:	ff 85 5c fc ff ff    	incl   -0x3a4(%ebp)
4203d4:	8b 8d 9c f8 ff ff    	mov    -0x764(%ebp),%ecx
4203da:	8b 85 94 f8 ff ff    	mov    -0x76c(%ebp),%eax
4203e0:	8b 95 7c f8 ff ff    	mov    -0x784(%ebp),%edx
4203e6:	89 42 04             	mov    %eax,0x4(%edx)
4203e9:	8b 95 88 f8 ff ff    	mov    -0x778(%ebp),%edx
4203ef:	85 c0                	test   %eax,%eax
4203f1:	78 0a                	js     0x4203fd
4203f3:	81 fa ff ff ff 7f    	cmp    $0x7fffffff,%edx
4203f9:	77 02                	ja     0x4203fd
4203fb:	03 d0                	add    %eax,%edx
4203fd:	8b 45 1c             	mov    0x1c(%ebp),%eax
420400:	48                   	dec    %eax
420401:	3b c2                	cmp    %edx,%eax
420403:	72 02                	jb     0x420407
420405:	8b c2                	mov    %edx,%eax
420407:	03 c1                	add    %ecx,%eax
420409:	89 85 b4 f8 ff ff    	mov    %eax,-0x74c(%ebp)
42040f:	3b f8                	cmp    %eax,%edi
420411:	0f 84 5f 01 00 00    	je     0x420576
420417:	8b 85 2c fe ff ff    	mov    -0x1d4(%ebp),%eax
42041d:	85 c0                	test   %eax,%eax
42041f:	0f 84 51 01 00 00    	je     0x420576
420425:	33 db                	xor    %ebx,%ebx
420427:	8b f8                	mov    %eax,%edi
420429:	33 c9                	xor    %ecx,%ecx
42042b:	8b 84 8d 30 fe ff ff 	mov    -0x1d0(%ebp,%ecx,4),%eax
420432:	ba 00 ca 9a 3b       	mov    $0x3b9aca00,%edx
420437:	f7 e2                	mul    %edx
420439:	03 c3                	add    %ebx,%eax
42043b:	89 84 8d 30 fe ff ff 	mov    %eax,-0x1d0(%ebp,%ecx,4)
420442:	83 d2 00             	adc    $0x0,%edx
420445:	41                   	inc    %ecx
420446:	8b da                	mov    %edx,%ebx
420448:	3b cf                	cmp    %edi,%ecx
42044a:	75 df                	jne    0x42042b
42044c:	8b bd b8 f8 ff ff    	mov    -0x748(%ebp),%edi
420452:	85 db                	test   %ebx,%ebx
420454:	0f 84 8d 00 00 00    	je     0x4204e7
42045a:	8b 85 2c fe ff ff    	mov    -0x1d4(%ebp),%eax
420460:	83 f8 73             	cmp    $0x73,%eax
420463:	73 5c                	jae    0x4204c1
420465:	89 9c 85 30 fe ff ff 	mov    %ebx,-0x1d0(%ebp,%eax,4)
42046c:	ff 85 2c fe ff ff    	incl   -0x1d4(%ebp)
420472:	eb 73                	jmp    0x4204e7
420474:	33 c0                	xor    %eax,%eax
420476:	50                   	push   %eax
420477:	89 85 9c f6 ff ff    	mov    %eax,-0x964(%ebp)
42047d:	89 85 5c fc ff ff    	mov    %eax,-0x3a4(%ebp)
420483:	8d 85 a0 f6 ff ff    	lea    -0x960(%ebp),%eax
420489:	50                   	push   %eax
42048a:	8d 85 60 fc ff ff    	lea    -0x3a0(%ebp),%eax
420490:	56                   	push   %esi
420491:	50                   	push   %eax
420492:	e8 b7 d6 fe ff       	call   0x40db4e
420497:	83 c4 10             	add    $0x10,%esp
42049a:	e9 35 ff ff ff       	jmp    0x4203d4
42049f:	85 c0                	test   %eax,%eax
4204a1:	75 0c                	jne    0x4204af
4204a3:	8b 85 94 f8 ff ff    	mov    -0x76c(%ebp),%eax
4204a9:	48                   	dec    %eax
4204aa:	e9 31 ff ff ff       	jmp    0x4203e0
4204af:	04 30                	add    $0x30,%al
4204b1:	8d 79 01             	lea    0x1(%ecx),%edi
4204b4:	88 01                	mov    %al,(%ecx)
4204b6:	89 bd b8 f8 ff ff    	mov    %edi,-0x748(%ebp)
4204bc:	e9 19 ff ff ff       	jmp    0x4203da
4204c1:	33 c0                	xor    %eax,%eax
4204c3:	50                   	push   %eax
4204c4:	89 85 9c f6 ff ff    	mov    %eax,-0x964(%ebp)
4204ca:	89 85 2c fe ff ff    	mov    %eax,-0x1d4(%ebp)
4204d0:	8d 85 a0 f6 ff ff    	lea    -0x960(%ebp),%eax
4204d6:	50                   	push   %eax
4204d7:	8d 85 30 fe ff ff    	lea    -0x1d0(%ebp),%eax
4204dd:	56                   	push   %esi
4204de:	50                   	push   %eax
4204df:	e8 6a d6 fe ff       	call   0x40db4e
4204e4:	83 c4 10             	add    $0x10,%esp
4204e7:	8d 85 5c fc ff ff    	lea    -0x3a4(%ebp),%eax
4204ed:	50                   	push   %eax
4204ee:	8d 85 2c fe ff ff    	lea    -0x1d4(%ebp),%eax
4204f4:	50                   	push   %eax
4204f5:	e8 76 e9 fe ff       	call   0x40ee70
4204fa:	83 bd 2c fe ff ff 00 	cmpl   $0x0,-0x1d4(%ebp)
420501:	59                   	pop    %ecx
420502:	59                   	pop    %ecx
420503:	8b 8d b4 f8 ff ff    	mov    -0x74c(%ebp),%ecx
420509:	0f 94 c3             	sete   %bl
42050c:	c7 85 88 f8 ff ff 08 	movl   $0x8,-0x778(%ebp)
420513:	00 00 00
420516:	2b cf                	sub    %edi,%ecx
420518:	33 d2                	xor    %edx,%edx
42051a:	f7 b5 8c f8 ff ff    	divl   -0x774(%ebp)
420520:	89 85 84 f8 ff ff    	mov    %eax,-0x77c(%ebp)
420526:	8b c2                	mov    %edx,%eax
420528:	89 95 a8 f8 ff ff    	mov    %edx,-0x758(%ebp)
42052e:	04 30                	add    $0x30,%al
420530:	8b 95 88 f8 ff ff    	mov    -0x778(%ebp),%edx
420536:	3b ca                	cmp    %edx,%ecx
420538:	73 0b                	jae    0x420545
42053a:	3c 30                	cmp    $0x30,%al
42053c:	0f 95 c0             	setne  %al
42053f:	fe c8                	dec    %al
420541:	22 d8                	and    %al,%bl
420543:	eb 03                	jmp    0x420548
420545:	88 04 3a             	mov    %al,(%edx,%edi,1)
420548:	8b 85 84 f8 ff ff    	mov    -0x77c(%ebp),%eax
42054e:	4a                   	dec    %edx
42054f:	89 95 88 f8 ff ff    	mov    %edx,-0x778(%ebp)
420555:	83 fa ff             	cmp    $0xffffffff,%edx
420558:	75 be                	jne    0x420518
42055a:	83 f9 09             	cmp    $0x9,%ecx
42055d:	76 03                	jbe    0x420562
42055f:	6a 09                	push   $0x9
420561:	59                   	pop    %ecx
420562:	03 f9                	add    %ecx,%edi
420564:	89 bd b8 f8 ff ff    	mov    %edi,-0x748(%ebp)
42056a:	3b bd b4 f8 ff ff    	cmp    -0x74c(%ebp),%edi
420570:	0f 85 a1 fe ff ff    	jne    0x420417
420576:	33 c0                	xor    %eax,%eax
420578:	c6 07 00             	movb   $0x0,(%edi)
42057b:	84 db                	test   %bl,%bl
42057d:	0f 95 c0             	setne  %al
420580:	89 85 a8 f8 ff ff    	mov    %eax,-0x758(%ebp)
420586:	8b d8                	mov    %eax,%ebx
420588:	eb 3a                	jmp    0x4205c4
42058a:	68 6c b4 42 00       	push   $0x42b46c
42058f:	e9 35 ec ff ff       	jmp    0x41f1c9
420594:	68 64 b4 42 00       	push   $0x42b464
420599:	e9 2b ec ff ff       	jmp    0x41f1c9
42059e:	68 5c b4 42 00       	push   $0x42b45c
4205a3:	e9 21 ec ff ff       	jmp    0x41f1c9
4205a8:	68 54 b4 42 00       	push   $0x42b454
4205ad:	ff 75 1c             	push   0x1c(%ebp)
4205b0:	ff b5 9c f8 ff ff    	push   -0x764(%ebp)
4205b6:	e8 93 1d ff ff       	call   0x41234e
4205bb:	83 c4 0c             	add    $0xc,%esp
4205be:	85 c0                	test   %eax,%eax
4205c0:	75 29                	jne    0x4205eb
4205c2:	33 db                	xor    %ebx,%ebx
4205c4:	80 bd 78 f8 ff ff 00 	cmpb   $0x0,-0x788(%ebp)
4205cb:	5f                   	pop    %edi
4205cc:	5e                   	pop    %esi
4205cd:	74 0d                	je     0x4205dc
4205cf:	8d 85 70 f8 ff ff    	lea    -0x790(%ebp),%eax
4205d5:	50                   	push   %eax
4205d6:	e8 57 16 00 00       	call   0x421c32
4205db:	59                   	pop    %ecx
4205dc:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4205df:	8b c3                	mov    %ebx,%eax
4205e1:	33 cd                	xor    %ebp,%ecx
4205e3:	5b                   	pop    %ebx
4205e4:	e8 23 6e fe ff       	call   0x40740c
4205e9:	c9                   	leave
4205ea:	c3                   	ret
4205eb:	33 c0                	xor    %eax,%eax
4205ed:	50                   	push   %eax
4205ee:	50                   	push   %eax
4205ef:	50                   	push   %eax
4205f0:	50                   	push   %eax
4205f1:	50                   	push   %eax
4205f2:	e8 b7 ca fe ff       	call   0x40d0ae
4205f7:	cc                   	int3
4205f8:	8b ff                	mov    %edi,%edi
4205fa:	55                   	push   %ebp
4205fb:	8b ec                	mov    %esp,%ebp
4205fd:	8b 4d 08             	mov    0x8(%ebp),%ecx
420600:	83 f9 fe             	cmp    $0xfffffffe,%ecx
420603:	75 0d                	jne    0x420612
420605:	e8 f1 e7 fe ff       	call   0x40edfb
42060a:	c7 00 09 00 00 00    	movl   $0x9,(%eax)
420610:	eb 38                	jmp    0x42064a
420612:	85 c9                	test   %ecx,%ecx
420614:	78 24                	js     0x42063a
420616:	3b 0d c0 4c 43 00    	cmp    0x434cc0,%ecx
42061c:	73 1c                	jae    0x42063a
42061e:	8b c1                	mov    %ecx,%eax
420620:	83 e1 3f             	and    $0x3f,%ecx
420623:	c1 f8 06             	sar    $0x6,%eax
420626:	6b c9 38             	imul   $0x38,%ecx,%ecx
420629:	8b 04 85 c0 4a 43 00 	mov    0x434ac0(,%eax,4),%eax
420630:	0f b6 44 08 28       	movzbl 0x28(%eax,%ecx,1),%eax
420635:	83 e0 40             	and    $0x40,%eax
420638:	5d                   	pop    %ebp
420639:	c3                   	ret
42063a:	e8 bc e7 fe ff       	call   0x40edfb
42063f:	c7 00 09 00 00 00    	movl   $0x9,(%eax)
420645:	e8 37 ca fe ff       	call   0x40d081
42064a:	33 c0                	xor    %eax,%eax
42064c:	5d                   	pop    %ebp
42064d:	c3                   	ret
42064e:	8b ff                	mov    %edi,%edi
420650:	55                   	push   %ebp
420651:	8b ec                	mov    %esp,%ebp
420653:	56                   	push   %esi
420654:	8b 75 14             	mov    0x14(%ebp),%esi
420657:	85 f6                	test   %esi,%esi
420659:	7e 14                	jle    0x42066f
42065b:	56                   	push   %esi
42065c:	ff 75 10             	push   0x10(%ebp)
42065f:	e8 2a f2 fe ff       	call   0x40f88e
420664:	59                   	pop    %ecx
420665:	3b c6                	cmp    %esi,%eax
420667:	59                   	pop    %ecx
420668:	8d 70 01             	lea    0x1(%eax),%esi
42066b:	7c 02                	jl     0x42066f
42066d:	8b f0                	mov    %eax,%esi
42066f:	33 c0                	xor    %eax,%eax
420671:	50                   	push   %eax
420672:	50                   	push   %eax
420673:	50                   	push   %eax
420674:	ff 75 1c             	push   0x1c(%ebp)
420677:	ff 75 18             	push   0x18(%ebp)
42067a:	56                   	push   %esi
42067b:	ff 75 10             	push   0x10(%ebp)
42067e:	ff 75 0c             	push   0xc(%ebp)
420681:	ff 75 08             	push   0x8(%ebp)
420684:	e8 cb 30 ff ff       	call   0x413754
420689:	5e                   	pop    %esi
42068a:	5d                   	pop    %ebp
42068b:	c3                   	ret
42068c:	8b ff                	mov    %edi,%edi
42068e:	55                   	push   %ebp
42068f:	8b ec                	mov    %esp,%ebp
420691:	51                   	push   %ecx
420692:	e8 85 18 00 00       	call   0x421f1c
420697:	85 c0                	test   %eax,%eax
420699:	74 1c                	je     0x4206b7
42069b:	8d 45 fc             	lea    -0x4(%ebp),%eax
42069e:	50                   	push   %eax
42069f:	8d 45 08             	lea    0x8(%ebp),%eax
4206a2:	6a 01                	push   $0x1
4206a4:	50                   	push   %eax
4206a5:	e8 a8 18 00 00       	call   0x421f52
4206aa:	83 c4 0c             	add    $0xc,%esp
4206ad:	85 c0                	test   %eax,%eax
4206af:	74 06                	je     0x4206b7
4206b1:	66 8b 45 08          	mov    0x8(%ebp),%ax
4206b5:	c9                   	leave
4206b6:	c3                   	ret
4206b7:	b8 ff ff 00 00       	mov    $0xffff,%eax
4206bc:	c9                   	leave
4206bd:	c3                   	ret
4206be:	8b ff                	mov    %edi,%edi
4206c0:	55                   	push   %ebp
4206c1:	8b ec                	mov    %esp,%ebp
4206c3:	83 ec 20             	sub    $0x20,%esp
4206c6:	a1 14 30 43 00       	mov    0x433014,%eax
4206cb:	33 c5                	xor    %ebp,%eax
4206cd:	89 45 fc             	mov    %eax,-0x4(%ebp)
4206d0:	8b 45 0c             	mov    0xc(%ebp),%eax
4206d3:	8b 4d 08             	mov    0x8(%ebp),%ecx
4206d6:	89 4d e0             	mov    %ecx,-0x20(%ebp)
4206d9:	89 45 e8             	mov    %eax,-0x18(%ebp)
4206dc:	53                   	push   %ebx
4206dd:	8b 5d 14             	mov    0x14(%ebp),%ebx
4206e0:	89 5d e4             	mov    %ebx,-0x1c(%ebp)
4206e3:	56                   	push   %esi
4206e4:	57                   	push   %edi
4206e5:	8b 38                	mov    (%eax),%edi
4206e7:	85 c9                	test   %ecx,%ecx
4206e9:	0f 84 8f 00 00 00    	je     0x42077e
4206ef:	8b 45 10             	mov    0x10(%ebp),%eax
4206f2:	8b f1                	mov    %ecx,%esi
4206f4:	89 7d f0             	mov    %edi,-0x10(%ebp)
4206f7:	83 f8 04             	cmp    $0x4,%eax
4206fa:	73 08                	jae    0x420704
4206fc:	8d 4d f4             	lea    -0xc(%ebp),%ecx
4206ff:	89 4d ec             	mov    %ecx,-0x14(%ebp)
420702:	eb 05                	jmp    0x420709
420704:	8b ce                	mov    %esi,%ecx
420706:	89 75 ec             	mov    %esi,-0x14(%ebp)
420709:	0f b7 07             	movzwl (%edi),%eax
42070c:	53                   	push   %ebx
42070d:	50                   	push   %eax
42070e:	51                   	push   %ecx
42070f:	e8 93 18 00 00       	call   0x421fa7
420714:	8b d8                	mov    %eax,%ebx
420716:	83 c4 0c             	add    $0xc,%esp
420719:	83 fb ff             	cmp    $0xffffffff,%ebx
42071c:	74 53                	je     0x420771
42071e:	8b 45 ec             	mov    -0x14(%ebp),%eax
420721:	3b c6                	cmp    %esi,%eax
420723:	74 10                	je     0x420735
420725:	39 5d 10             	cmp    %ebx,0x10(%ebp)
420728:	72 31                	jb     0x42075b
42072a:	53                   	push   %ebx
42072b:	50                   	push   %eax
42072c:	56                   	push   %esi
42072d:	e8 3e 82 fe ff       	call   0x408970
420732:	83 c4 0c             	add    $0xc,%esp
420735:	85 db                	test   %ebx,%ebx
420737:	74 09                	je     0x420742
420739:	8d 0c 33             	lea    (%ebx,%esi,1),%ecx
42073c:	80 79 ff 00          	cmpb   $0x0,-0x1(%ecx)
420740:	74 1e                	je     0x420760
420742:	83 c7 02             	add    $0x2,%edi
420745:	85 db                	test   %ebx,%ebx
420747:	74 03                	je     0x42074c
420749:	89 7d f0             	mov    %edi,-0x10(%ebp)
42074c:	8b 45 10             	mov    0x10(%ebp),%eax
42074f:	2b c3                	sub    %ebx,%eax
420751:	03 f3                	add    %ebx,%esi
420753:	8b 5d e4             	mov    -0x1c(%ebp),%ebx
420756:	89 45 10             	mov    %eax,0x10(%ebp)
420759:	eb 9c                	jmp    0x4206f7
42075b:	8b 45 f0             	mov    -0x10(%ebp),%eax
42075e:	eb 05                	jmp    0x420765
420760:	33 c0                	xor    %eax,%eax
420762:	8d 71 ff             	lea    -0x1(%ecx),%esi
420765:	8b 55 e8             	mov    -0x18(%ebp),%edx
420768:	2b 75 e0             	sub    -0x20(%ebp),%esi
42076b:	89 02                	mov    %eax,(%edx)
42076d:	8b c6                	mov    %esi,%eax
42076f:	eb 3c                	jmp    0x4207ad
420771:	8b 55 e8             	mov    -0x18(%ebp),%edx
420774:	83 c8 ff             	or     $0xffffffff,%eax
420777:	8b 4d f0             	mov    -0x10(%ebp),%ecx
42077a:	89 0a                	mov    %ecx,(%edx)