408340:	8d bb f4 3a 00 00    	lea    0x3af4(%ebx),%edi
408346:	89 7d f0             	mov    %edi,-0x10(%ebp)
408349:	be 00 08 00 00       	mov    $0x800,%esi
40834e:	eb 2a                	jmp    0x40837a
408350:	6a 00                	push   $0x0
408352:	8d 85 a4 ee ff ff    	lea    -0x115c(%ebp),%eax
408358:	50                   	push   %eax
408359:	57                   	push   %edi
40835a:	e8 db 12 00 00       	call   0x40963a
40835f:	84 c0                	test   %al,%al
408361:	74 17                	je     0x40837a
408363:	8b 8d a4 fe ff ff    	mov    -0x15c(%ebp),%ecx
408369:	8d 83 a8 18 00 00    	lea    0x18a8(%ebx),%eax
40836f:	01 08                	add    %ecx,(%eax)
408371:	8b 8d a8 fe ff ff    	mov    -0x158(%ebp),%ecx
408377:	11 48 04             	adc    %ecx,0x4(%eax)
40837a:	8b 4b 08             	mov    0x8(%ebx),%ecx
40837d:	56                   	push   %esi
40837e:	57                   	push   %edi
40837f:	e8 95 d1 ff ff       	call   0x405519
408384:	84 c0                	test   %al,%al
408386:	75 c8                	jne    0x408350
408388:	8b 4b 08             	mov    0x8(%ebx),%ecx
40838b:	81 c1 e8 93 00 00    	add    $0x93e8,%ecx
408391:	e8 de 86 00 00       	call   0x410a74
408396:	8b 4b 08             	mov    0x8(%ebx),%ecx
408399:	56                   	push   %esi
40839a:	57                   	push   %edi
40839b:	e8 79 d1 ff ff       	call   0x405519
4083a0:	84 c0                	test   %al,%al
4083a2:	0f 84 b3 00 00 00    	je     0x40845b
4083a8:	8d 8d ec fe ff ff    	lea    -0x114(%ebp),%ecx
4083ae:	e8 4c 4b 00 00       	call   0x40ceff
4083b3:	eb 14                	jmp    0x4083c9
4083b5:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
4083b9:	e8 65 4b 00 00       	call   0x40cf23
4083be:	8d 8d ec fe ff ff    	lea    -0x114(%ebp),%ecx
4083c4:	e8 36 4b 00 00       	call   0x40ceff
4083c9:	8b 73 08             	mov    0x8(%ebx),%esi
4083cc:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
4083d0:	6a 40                	push   $0x40
4083d2:	59                   	pop    %ecx
4083d3:	81 c6 20 40 00 00    	add    $0x4020,%esi
4083d9:	8d bd ec fe ff ff    	lea    -0x114(%ebp),%edi
4083df:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
4083e1:	8b cb                	mov    %ebx,%ecx
4083e3:	66 a5                	movsw  %ds:(%esi),%es:(%edi)
4083e5:	e8 65 fd ff ff       	call   0x40814f
4083ea:	8b 7b 08             	mov    0x8(%ebx),%edi
4083ed:	6a 40                	push   $0x40
4083ef:	81 c7 20 40 00 00    	add    $0x4020,%edi
4083f5:	59                   	pop    %ecx
4083f6:	8d b5 ec fe ff ff    	lea    -0x114(%ebp),%esi
4083fc:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
4083fe:	66 a5                	movsw  %ds:(%esi),%es:(%edi)
408400:	8d 8d ec fe ff ff    	lea    -0x114(%ebp),%ecx
408406:	83 f8 01             	cmp    $0x1,%eax
408409:	74 aa                	je     0x4083b5
40840b:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
40840f:	e8 0f 4b 00 00       	call   0x40cf23
408414:	6a 00                	push   $0x0
408416:	8d 85 a4 ee ff ff    	lea    -0x115c(%ebp),%eax
40841c:	50                   	push   %eax
40841d:	ff 75 f0             	push   -0x10(%ebp)
408420:	e8 15 12 00 00       	call   0x40963a
408425:	84 c0                	test   %al,%al
408427:	74 17                	je     0x408440
408429:	8b 8d a4 fe ff ff    	mov    -0x15c(%ebp),%ecx
40842f:	8d 83 a0 18 00 00    	lea    0x18a0(%ebx),%eax
408435:	01 08                	add    %ecx,(%eax)
408437:	8b 8d a8 fe ff ff    	mov    -0x158(%ebp),%ecx
40843d:	11 48 04             	adc    %ecx,0x4(%eax)
408440:	8b 4b 08             	mov    0x8(%ebx),%ecx
408443:	68 00 08 00 00       	push   $0x800
408448:	ff 75 f0             	push   -0x10(%ebp)
40844b:	e8 c9 d0 ff ff       	call   0x405519
408450:	84 c0                	test   %al,%al
408452:	0f 85 50 ff ff ff    	jne    0x4083a8
408458:	8b 7d f0             	mov    -0x10(%ebp),%edi
40845b:	83 bb e4 3a 00 00 00 	cmpl   $0x0,0x3ae4(%ebx)
408462:	75 33                	jne    0x408497
408464:	8b 43 08             	mov    0x8(%ebx),%eax
408467:	66 83 b8 b2 72 00 00 	cmpw   $0x49,0x72b2(%eax)
40846e:	49
40846f:	74 26                	je     0x408497
408471:	83 3d 74 2a 43 00 0b 	cmpl   $0xb,0x432a74
408478:	74 1d                	je     0x408497
40847a:	80 bb f8 5b 00 00 00 	cmpb   $0x0,0x5bf8(%ebx)
408481:	75 08                	jne    0x40848b
408483:	57                   	push   %edi
408484:	6a 43                	push   $0x43
408486:	e8 25 e0 ff ff       	call   0x4064b0
40848b:	6a 0a                	push   $0xa
40848d:	b9 74 2a 43 00       	mov    $0x432a74,%ecx
408492:	e8 73 df ff ff       	call   0x40640a
408497:	8b 4d f4             	mov    -0xc(%ebp),%ecx
40849a:	5f                   	pop    %edi
40849b:	5e                   	pop    %esi
40849c:	5b                   	pop    %ebx
40849d:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
4084a4:	c9                   	leave
4084a5:	c3                   	ret
4084a6:	b8 6f 93 42 00       	mov    $0x42936f,%eax
4084ab:	e8 08 1a 01 00       	call   0x419eb8
4084b0:	b8 28 50 00 00       	mov    $0x5028,%eax
4084b5:	e8 16 20 01 00       	call   0x41a4d0
4084ba:	53                   	push   %ebx
4084bb:	8b 5d 08             	mov    0x8(%ebp),%ebx
4084be:	56                   	push   %esi
4084bf:	57                   	push   %edi
4084c0:	be 00 08 00 00       	mov    $0x800,%esi
4084c5:	56                   	push   %esi
4084c6:	8d 85 cc af ff ff    	lea    -0x5034(%ebp),%eax
4084cc:	50                   	push   %eax
4084cd:	53                   	push   %ebx
4084ce:	ff 15 f0 a1 42 00    	call   *0x42a1f0
4084d4:	85 c0                	test   %eax,%eax
4084d6:	0f 84 87 01 00 00    	je     0x408663
4084dc:	3b c6                	cmp    %esi,%eax
4084de:	0f 83 7f 01 00 00    	jae    0x408663
4084e4:	56                   	push   %esi
4084e5:	8d 85 cc bf ff ff    	lea    -0x4034(%ebp),%eax
4084eb:	50                   	push   %eax
4084ec:	53                   	push   %ebx
4084ed:	ff 15 f4 a1 42 00    	call   *0x42a1f4
4084f3:	85 c0                	test   %eax,%eax
4084f5:	0f 84 68 01 00 00    	je     0x408663
4084fb:	3b c6                	cmp    %esi,%eax
4084fd:	0f 83 60 01 00 00    	jae    0x408663
408503:	8d 85 cc af ff ff    	lea    -0x5034(%ebp),%eax
408509:	50                   	push   %eax
40850a:	e8 97 1d 00 00       	call   0x40a2a6
40850f:	89 45 f0             	mov    %eax,-0x10(%ebp)
408512:	8d 85 cc bf ff ff    	lea    -0x4034(%ebp),%eax
408518:	50                   	push   %eax
408519:	e8 88 1d 00 00       	call   0x40a2a6
40851e:	8b f8                	mov    %eax,%edi
408520:	66 83 3f 00          	cmpw   $0x0,(%edi)
408524:	0f 84 39 01 00 00    	je     0x408663
40852a:	57                   	push   %edi
40852b:	ff 75 f0             	push   -0x10(%ebp)
40852e:	e8 65 95 00 00       	call   0x411a98
408533:	85 c0                	test   %eax,%eax
408535:	0f 84 28 01 00 00    	je     0x408663
40853b:	57                   	push   %edi
40853c:	53                   	push   %ebx
40853d:	e8 64 1d 00 00       	call   0x40a2a6
408542:	50                   	push   %eax
408543:	e8 50 95 00 00       	call   0x411a98
408548:	85 c0                	test   %eax,%eax
40854a:	0f 85 13 01 00 00    	jne    0x408663
408550:	66 89 85 f0 ef ff ff 	mov    %ax,-0x1010(%ebp)
408557:	33 ff                	xor    %edi,%edi
408559:	66 83 bd f0 ef ff ff 	cmpw   $0x0,-0x1010(%ebp)
408560:	00
408561:	75 5c                	jne    0x4085bf
408563:	56                   	push   %esi
408564:	53                   	push   %ebx
408565:	8d 85 f0 ef ff ff    	lea    -0x1010(%ebp),%eax
40856b:	50                   	push   %eax
40856c:	e8 ae 83 00 00       	call   0x41091f
408571:	57                   	push   %edi
408572:	68 04 a6 42 00       	push   $0x42a604
408577:	56                   	push   %esi
408578:	8d 85 f0 ef ff ff    	lea    -0x1010(%ebp),%eax
40857e:	50                   	push   %eax
40857f:	e8 22 1d 00 00       	call   0x40a2a6
408584:	50                   	push   %eax
408585:	e8 58 50 00 00       	call   0x40d5e2
40858a:	83 c4 10             	add    $0x10,%esp
40858d:	8d 85 f0 ef ff ff    	lea    -0x1010(%ebp),%eax
408593:	50                   	push   %eax
408594:	e8 9e 0c 00 00       	call   0x409237
408599:	84 c0                	test   %al,%al
40859b:	74 09                	je     0x4085a6
40859d:	33 c0                	xor    %eax,%eax
40859f:	66 89 85 f0 ef ff ff 	mov    %ax,-0x1010(%ebp)
4085a6:	83 c7 7b             	add    $0x7b,%edi
4085a9:	81 ff 10 27 00 00    	cmp    $0x2710,%edi
4085af:	7c a8                	jl     0x408559
4085b1:	66 83 bd f0 ef ff ff 	cmpw   $0x0,-0x1010(%ebp)
4085b8:	00
4085b9:	0f 84 a4 00 00 00    	je     0x408663
4085bf:	56                   	push   %esi
4085c0:	53                   	push   %ebx
4085c1:	8d 85 cc cf ff ff    	lea    -0x3034(%ebp),%eax
4085c7:	50                   	push   %eax
4085c8:	e8 52 83 00 00       	call   0x41091f
4085cd:	56                   	push   %esi
4085ce:	ff 75 f0             	push   -0x10(%ebp)
4085d1:	8d 85 cc cf ff ff    	lea    -0x3034(%ebp),%eax
4085d7:	50                   	push   %eax
4085d8:	e8 33 1e 00 00       	call   0x40a410
4085dd:	8b 35 fc a1 42 00    	mov    0x42a1fc,%esi
4085e3:	8d 85 f0 ef ff ff    	lea    -0x1010(%ebp),%eax
4085e9:	50                   	push   %eax
4085ea:	8d 85 cc cf ff ff    	lea    -0x3034(%ebp),%eax
4085f0:	50                   	push   %eax
4085f1:	ff d6                	call   *%esi
4085f3:	85 c0                	test   %eax,%eax
4085f5:	74 6c                	je     0x408663
4085f7:	8d 8d cc df ff ff    	lea    -0x2034(%ebp),%ecx
4085fd:	e8 42 01 00 00       	call   0x408744
408602:	ff 75 08             	push   0x8(%ebp)
408605:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
408609:	32 db                	xor    %bl,%bl
40860b:	e8 27 0c 00 00       	call   0x409237
408610:	84 c0                	test   %al,%al
408612:	75 12                	jne    0x408626
408614:	6a 0a                	push   $0xa
408616:	ff 75 08             	push   0x8(%ebp)
408619:	8d 8d cc df ff ff    	lea    -0x2034(%ebp),%ecx
40861f:	e8 be 02 00 00       	call   0x4088e2
408624:	8a d8                	mov    %al,%bl
408626:	8d 85 cc cf ff ff    	lea    -0x3034(%ebp),%eax
40862c:	50                   	push   %eax
40862d:	8d 85 f0 ef ff ff    	lea    -0x1010(%ebp),%eax
408633:	50                   	push   %eax
408634:	ff d6                	call   *%esi
408636:	84 db                	test   %bl,%bl
408638:	74 16                	je     0x408650
40863a:	8d 8d cc df ff ff    	lea    -0x2034(%ebp),%ecx
408640:	e8 8a 03 00 00       	call   0x4089cf
408645:	8d 8d cc df ff ff    	lea    -0x2034(%ebp),%ecx
40864b:	e8 cd 03 00 00       	call   0x408a1d
408650:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
408654:	8d 8d cc df ff ff    	lea    -0x2034(%ebp),%ecx
40865a:	e8 ab 05 00 00       	call   0x408c0a
40865f:	b0 01                	mov    $0x1,%al
408661:	eb 02                	jmp    0x408665
408663:	32 c0                	xor    %al,%al
408665:	8b 4d f4             	mov    -0xc(%ebp),%ecx
408668:	5f                   	pop    %edi
408669:	5e                   	pop    %esi
40866a:	5b                   	pop    %ebx
40866b:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
408672:	c9                   	leave
408673:	c2 04 00             	ret    $0x4
408676:	55                   	push   %ebp
408677:	8b ec                	mov    %esp,%ebp
408679:	8b 45 18             	mov    0x18(%ebp),%eax
40867c:	85 c0                	test   %eax,%eax
40867e:	74 03                	je     0x408683
408680:	c6 00 00             	movb   $0x0,(%eax)
408683:	53                   	push   %ebx
408684:	56                   	push   %esi
408685:	8b 75 10             	mov    0x10(%ebp),%esi
408688:	57                   	push   %edi
408689:	56                   	push   %esi
40868a:	32 db                	xor    %bl,%bl
40868c:	e8 a6 0b 00 00       	call   0x409237
408691:	8b 7d 0c             	mov    0xc(%ebp),%edi
408694:	eb 52                	jmp    0x4086e8
408696:	84 db                	test   %bl,%bl
408698:	75 0c                	jne    0x4086a6
40869a:	56                   	push   %esi
40869b:	fe c3                	inc    %bl
40869d:	e8 04 fe ff ff       	call   0x4084a6
4086a2:	84 c0                	test   %al,%al
4086a4:	75 3c                	jne    0x4086e2
4086a6:	33 c0                	xor    %eax,%eax
4086a8:	32 db                	xor    %bl,%bl
4086aa:	85 ff                	test   %edi,%edi
4086ac:	0f 94 c0             	sete   %al
4086af:	50                   	push   %eax
4086b0:	ff 75 24             	push   0x24(%ebp)
4086b3:	ff 75 20             	push   0x20(%ebp)
4086b6:	ff 75 1c             	push   0x1c(%ebp)
4086b9:	ff 75 14             	push   0x14(%ebp)
4086bc:	56                   	push   %esi
4086bd:	ff 75 08             	push   0x8(%ebp)
4086c0:	e8 2b 8f 00 00       	call   0x4115f0
4086c5:	85 c0                	test   %eax,%eax
4086c7:	74 23                	je     0x4086ec
4086c9:	83 f8 01             	cmp    $0x1,%eax
4086cc:	74 3e                	je     0x40870c
4086ce:	83 f8 06             	cmp    $0x6,%eax
4086d1:	75 0f                	jne    0x4086e2
4086d3:	68 ff 00 00 00       	push   $0xff
4086d8:	b9 74 2a 43 00       	mov    $0x432a74,%ecx
4086dd:	e8 c9 dd ff ff       	call   0x4064ab
4086e2:	56                   	push   %esi
4086e3:	e8 4f 0b 00 00       	call   0x409237
4086e8:	84 c0                	test   %al,%al
4086ea:	75 aa                	jne    0x408696
4086ec:	33 db                	xor    %ebx,%ebx
4086ee:	38 5d 28             	cmp    %bl,0x28(%ebp)
4086f1:	0f 95 c3             	setne  %bl
4086f4:	83 c3 09             	add    $0x9,%ebx
4086f7:	85 ff                	test   %edi,%edi
4086f9:	74 1f                	je     0x40871a
4086fb:	53                   	push   %ebx
4086fc:	56                   	push   %esi
4086fd:	8b cf                	mov    %edi,%ecx
4086ff:	e8 de 01 00 00       	call   0x4088e2
408704:	84 c0                	test   %al,%al
408706:	74 12                	je     0x40871a
408708:	b0 01                	mov    $0x1,%al
40870a:	eb 31                	jmp    0x40873d
40870c:	8b 45 18             	mov    0x18(%ebp),%eax
40870f:	85 c0                	test   %eax,%eax
408711:	74 03                	je     0x408716
408713:	c6 00 01             	movb   $0x1,(%eax)
408716:	32 c0                	xor    %al,%al
408718:	eb 23                	jmp    0x40873d
40871a:	56                   	push   %esi
40871b:	e8 2d 0b 00 00       	call   0x40924d
408720:	6a 01                	push   $0x1
408722:	56                   	push   %esi
408723:	e8 b4 0b 00 00       	call   0x4092dc
408728:	85 ff                	test   %edi,%edi
40872a:	74 0b                	je     0x408737
40872c:	53                   	push   %ebx
40872d:	56                   	push   %esi
40872e:	8b cf                	mov    %edi,%ecx
408730:	e8 ad 01 00 00       	call   0x4088e2
408735:	eb 06                	jmp    0x40873d
408737:	56                   	push   %esi
408738:	e8 39 09 00 00       	call   0x409076
40873d:	5f                   	pop    %edi
40873e:	5e                   	pop    %esi
40873f:	5b                   	pop    %ebx
408740:	5d                   	pop    %ebp
408741:	c2 24 00             	ret    $0x24
408744:	8b c1                	mov    %ecx,%eax
408746:	83 48 04 ff          	orl    $0xffffffff,0x4(%eax)
40874a:	33 c9                	xor    %ecx,%ecx
40874c:	c7 00 14 a6 42 00    	movl   $0x42a614,(%eax)
408752:	66 89 48 1e          	mov    %cx,0x1e(%eax)
408756:	88 48 12             	mov    %cl,0x12(%eax)
408759:	88 48 08             	mov    %cl,0x8(%eax)
40875c:	89 48 0c             	mov    %ecx,0xc(%eax)
40875f:	88 48 10             	mov    %cl,0x10(%eax)
408762:	88 48 11             	mov    %cl,0x11(%eax)
408765:	89 88 20 10 00 00    	mov    %ecx,0x1020(%eax)
40876b:	88 48 1c             	mov    %cl,0x1c(%eax)
40876e:	c6 40 13 01          	movb   $0x1,0x13(%eax)
408772:	c6 40 14 01          	movb   $0x1,0x14(%eax)
408776:	88 48 15             	mov    %cl,0x15(%eax)
408779:	c7 40 18 00 01 00 00 	movl   $0x100,0x18(%eax)
408780:	c3                   	ret
408781:	b8 0c 10 00 00       	mov    $0x100c,%eax
408786:	e8 45 1d 01 00       	call   0x41a4d0
40878b:	53                   	push   %ebx
40878c:	55                   	push   %ebp
40878d:	56                   	push   %esi
40878e:	8b f1                	mov    %ecx,%esi
408790:	8b 8c 24 20 10 00 00 	mov    0x1020(%esp),%ecx
408797:	33 ed                	xor    %ebp,%ebp
408799:	80 7e 1c 00          	cmpb   $0x0,0x1c(%esi)