4080a5:	51                   	push   %ecx
4080a6:	8d 8d a4 ee ff ff    	lea    -0x115c(%ebp),%ecx
4080ac:	e8 33 0b 00 00       	call   0x408be4
4080b1:	8b 46 08             	mov    0x8(%esi),%eax
4080b4:	80 b8 9b 51 00 00 00 	cmpb   $0x0,0x519b(%eax)
4080bb:	75 28                	jne    0x4080e5
4080bd:	ff b3 e4 57 00 00    	push   0x57e4(%ebx)
4080c3:	8d 85 c2 ee ff ff    	lea    -0x113e(%ebp),%eax
4080c9:	50                   	push   %eax
4080ca:	e8 50 0f 00 00       	call   0x40901f
4080cf:	84 c0                	test   %al,%al
4080d1:	75 12                	jne    0x4080e5
4080d3:	8d 85 c2 ee ff ff    	lea    -0x113e(%ebp),%eax
4080d9:	50                   	push   %eax
4080da:	8d 43 1e             	lea    0x1e(%ebx),%eax
4080dd:	50                   	push   %eax
4080de:	6a 10                	push   $0x10
4080e0:	e8 f4 e3 ff ff       	call   0x4064d9
4080e5:	c6 86 f7 4b 00 00 01 	movb   $0x1,0x4bf7(%esi)
4080ec:	8d 8d c8 fe ff ff    	lea    -0x138(%ebp),%ecx
4080f2:	c6 45 fc 00          	movb   $0x0,-0x4(%ebp)
4080f6:	e8 28 4e 00 00       	call   0x40cf23
4080fb:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
4080ff:	8d 8d a4 ee ff ff    	lea    -0x115c(%ebp),%ecx
408105:	e8 00 0b 00 00       	call   0x408c0a
40810a:	80 7d f2 00          	cmpb   $0x0,-0xe(%ebp)
40810e:	74 06                	je     0x408116
408110:	ff 86 ec 3a 00 00    	incl   0x3aec(%esi)
408116:	80 be 70 18 00 00 00 	cmpb   $0x0,0x1870(%esi)
40811d:	75 29                	jne    0x408148
40811f:	80 7d 0f 00          	cmpb   $0x0,0xf(%ebp)
408123:	0f 85 ef f5 ff ff    	jne    0x407718
408129:	80 bb 34 a2 00 00 00 	cmpb   $0x0,0xa234(%ebx)
408130:	75 0c                	jne    0x40813e
408132:	8b cb                	mov    %ebx,%ecx
408134:	e8 87 8f ff ff       	call   0x4010c0
408139:	e9 da f5 ff ff       	jmp    0x407718
40813e:	80 7d e3 00          	cmpb   $0x0,-0x1d(%ebp)
408142:	0f 85 d0 f5 ff ff    	jne    0x407718
408148:	32 c0                	xor    %al,%al
40814a:	e9 cb f5 ff ff       	jmp    0x40771a
40814f:	b8 45 93 42 00       	mov    $0x429345,%eax
408154:	e8 5f 1d 01 00       	call   0x419eb8
408159:	b8 d4 d2 00 00       	mov    $0xd2d4,%eax
40815e:	e8 6d 23 01 00       	call   0x41a4d0
408163:	53                   	push   %ebx
408164:	56                   	push   %esi
408165:	8b f1                	mov    %ecx,%esi
408167:	57                   	push   %edi
408168:	ff 76 08             	push   0x8(%esi)
40816b:	8d 8d 20 2d ff ff    	lea    -0xd2e0(%ebp),%ecx
408171:	e8 b2 96 ff ff       	call   0x401828
408176:	8d be f4 3a 00 00    	lea    0x3af4(%esi),%edi
40817c:	33 db                	xor    %ebx,%ebx
40817e:	57                   	push   %edi
40817f:	8d 8d 20 2d ff ff    	lea    -0xd2e0(%ebp),%ecx
408185:	89 5d fc             	mov    %ebx,-0x4(%ebp)
408188:	e8 2f 07 00 00       	call   0x4088bc
40818d:	8d 8d 20 2d ff ff    	lea    -0xd2e0(%ebp),%ecx
408193:	84 c0                	test   %al,%al
408195:	0f 84 4f 01 00 00    	je     0x4082ea
40819b:	6a 01                	push   $0x1
40819d:	e8 94 92 ff ff       	call   0x401436
4081a2:	84 c0                	test   %al,%al
4081a4:	75 24                	jne    0x4081ca
4081a6:	68 fc a5 42 00       	push   $0x42a5fc
4081ab:	57                   	push   %edi
4081ac:	e8 a2 22 00 00       	call   0x40a453
4081b1:	84 c0                	test   %al,%al
4081b3:	0f 84 2b 01 00 00    	je     0x4082e4
4081b9:	6a 01                	push   $0x1
4081bb:	b9 74 2a 43 00       	mov    $0x432a74,%ecx
4081c0:	e8 45 e2 ff ff       	call   0x40640a
4081c5:	e9 1a 01 00 00       	jmp    0x4082e4
4081ca:	38 9d 65 cf ff ff    	cmp    %bl,-0x309b(%ebp)
4081d0:	0f 85 0e 01 00 00    	jne    0x4082e4
4081d6:	89 5d ec             	mov    %ebx,-0x14(%ebp)
4081d9:	38 9d 55 cf ff ff    	cmp    %bl,-0x30ab(%ebp)
4081df:	0f 84 80 00 00 00    	je     0x408265
4081e5:	8d 85 3e 2d ff ff    	lea    -0xd2c2(%ebp),%eax
4081eb:	50                   	push   %eax
4081ec:	8d 85 e8 ef ff ff    	lea    -0x1018(%ebp),%eax
4081f2:	50                   	push   %eax
4081f3:	e8 db 1f 01 00       	call   0x41a1d3
4081f8:	38 9d 5a cf ff ff    	cmp    %bl,-0x30a6(%ebp)
4081fe:	59                   	pop    %ecx
4081ff:	59                   	pop    %ecx
408200:	bf 00 08 00 00       	mov    $0x800,%edi
408205:	eb 18                	jmp    0x40821f
408207:	8b 85 a0 ef ff ff    	mov    -0x1060(%ebp),%eax
40820d:	03 d8                	add    %eax,%ebx
40820f:	8b 85 a4 ef ff ff    	mov    -0x105c(%ebp),%eax
408215:	11 45 ec             	adc    %eax,-0x14(%ebp)
408218:	80 bd 5a cf ff ff 00 	cmpb   $0x0,-0x30a6(%ebp)
40821f:	0f 94 c0             	sete   %al
408222:	0f b6 c0             	movzbl %al,%eax
408225:	50                   	push   %eax
408226:	57                   	push   %edi
408227:	8d 85 e8 ef ff ff    	lea    -0x1018(%ebp),%eax
40822d:	50                   	push   %eax
40822e:	e8 39 23 00 00       	call   0x40a56c
408233:	8d 8d a0 df ff ff    	lea    -0x2060(%ebp),%ecx
408239:	e8 a8 e5 ff ff       	call   0x4067e6
40823e:	6a 00                	push   $0x0
408240:	8d 85 a0 df ff ff    	lea    -0x2060(%ebp),%eax
408246:	50                   	push   %eax
408247:	8d 85 e8 ef ff ff    	lea    -0x1018(%ebp),%eax
40824d:	50                   	push   %eax
40824e:	e8 e7 13 00 00       	call   0x40963a
408253:	84 c0                	test   %al,%al
408255:	75 b0                	jne    0x408207
408257:	8b 4d ec             	mov    -0x14(%ebp),%ecx
40825a:	8d 86 a8 18 00 00    	lea    0x18a8(%esi),%eax
408260:	01 18                	add    %ebx,(%eax)
408262:	11 48 04             	adc    %ecx,0x4(%eax)
408265:	8d 85 20 2d ff ff    	lea    -0xd2e0(%ebp),%eax
40826b:	50                   	push   %eax
40826c:	8b ce                	mov    %esi,%ecx
40826e:	e8 04 ee ff ff       	call   0x407077
408273:	8b 46 08             	mov    0x8(%esi),%eax
408276:	0f b7 88 b2 72 00 00 	movzwl 0x72b2(%eax),%ecx
40827d:	66 83 f9 54          	cmp    $0x54,%cx
408281:	74 06                	je     0x408289
408283:	66 83 f9 49          	cmp    $0x49,%cx
408287:	75 07                	jne    0x408290
408289:	c6 80 c1 51 00 00 01 	movb   $0x1,0x51c1(%eax)
408290:	8b 46 08             	mov    0x8(%esi),%eax
408293:	66 83 b8 b2 72 00 00 	cmpw   $0x49,0x72b2(%eax)
40829a:	49
40829b:	74 1a                	je     0x4082b7
40829d:	80 b8 c1 51 00 00 00 	cmpb   $0x0,0x51c1(%eax)
4082a4:	8d 8e f4 3a 00 00    	lea    0x3af4(%esi),%ecx
4082aa:	0f 94 c0             	sete   %al
4082ad:	0f b6 c0             	movzbl %al,%eax
4082b0:	51                   	push   %ecx
4082b1:	50                   	push   %eax
4082b2:	e8 76 90 00 00       	call   0x41132d
4082b7:	8d 8d 20 2d ff ff    	lea    -0xd2e0(%ebp),%ecx
4082bd:	e8 3e 8d ff ff       	call   0x401000
4082c2:	8d 8d 20 2d ff ff    	lea    -0xd2e0(%ebp),%ecx
4082c8:	e8 2f b3 ff ff       	call   0x4035fc
4082cd:	8d 4d f3             	lea    -0xd(%ebp),%ecx
4082d0:	51                   	push   %ecx
4082d1:	50                   	push   %eax
4082d2:	8d 85 20 2d ff ff    	lea    -0xd2e0(%ebp),%eax
4082d8:	50                   	push   %eax
4082d9:	8b ce                	mov    %esi,%ecx
4082db:	e8 59 f3 ff ff       	call   0x407639
4082e0:	84 c0                	test   %al,%al
4082e2:	75 de                	jne    0x4082c2
4082e4:	8d 8d 20 2d ff ff    	lea    -0xd2e0(%ebp),%ecx
4082ea:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
4082ee:	e8 35 8f ff ff       	call   0x401228
4082f3:	8b 4d f4             	mov    -0xc(%ebp),%ecx
4082f6:	5f                   	pop    %edi
4082f7:	5e                   	pop    %esi
4082f8:	33 c0                	xor    %eax,%eax
4082fa:	5b                   	pop    %ebx
4082fb:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
408302:	c9                   	leave
408303:	c3                   	ret
408304:	b8 5a 93 42 00       	mov    $0x42935a,%eax
408309:	e8 aa 1b 01 00       	call   0x419eb8
40830e:	b8 50 11 00 00       	mov    $0x1150,%eax
408313:	e8 b8 21 01 00       	call   0x41a4d0
408318:	53                   	push   %ebx
408319:	8b d9                	mov    %ecx,%ebx
40831b:	8b 43 08             	mov    0x8(%ebx),%eax
40831e:	c6 83 f8 5b 00 00 00 	movb   $0x0,0x5bf8(%ebx)
408325:	0f b7 80 b2 72 00 00 	movzwl 0x72b2(%eax),%eax
40832c:	56                   	push   %esi
40832d:	57                   	push   %edi
40832e:	8d 8d a4 ee ff ff    	lea    -0x115c(%ebp),%ecx
408334:	66 89 83 6c 18 00 00 	mov    %ax,0x186c(%ebx)
40833b:	e8 a6 e4 ff ff       	call   0x4067e6
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