4042f1:	83 c1 04             	add    $0x4,%ecx
4042f4:	33 db                	xor    %ebx,%ebx
4042f6:	8d 51 02             	lea    0x2(%ecx),%edx
4042f9:	66 8b 01             	mov    (%ecx),%ax
4042fc:	83 c1 02             	add    $0x2,%ecx
4042ff:	66 3b c3             	cmp    %bx,%ax
404302:	75 f5                	jne    0x4042f9
404304:	2b ca                	sub    %edx,%ecx
404306:	d1 f9                	sar    $1,%ecx
404308:	8d 41 02             	lea    0x2(%ecx),%eax
40430b:	89 45 fc             	mov    %eax,-0x4(%ebp)
40430e:	8d 04 45 08 02 00 00 	lea    0x208(,%eax,2),%eax
404315:	50                   	push   %eax
404316:	ff 15 a4 f0 40 00    	call   *0x40f0a4
40431c:	8b d8                	mov    %eax,%ebx
40431e:	89 5d f4             	mov    %ebx,-0xc(%ebp)
404321:	85 db                	test   %ebx,%ebx
404323:	0f 84 18 01 00 00    	je     0x404441
404329:	8b 4f 40             	mov    0x40(%edi),%ecx
40432c:	8d b3 08 02 00 00    	lea    0x208(%ebx),%esi
404332:	8b 55 fc             	mov    -0x4(%ebp),%edx
404335:	83 c1 04             	add    $0x4,%ecx
404338:	51                   	push   %ecx
404339:	8b ce                	mov    %esi,%ecx
40433b:	e8 20 e4 ff ff       	call   0x402760
404340:	8b 55 fc             	mov    -0x4(%ebp),%edx
404343:	8b ce                	mov    %esi,%ecx
404345:	68 dc 11 40 00       	push   $0x4011dc
40434a:	e8 46 e4 ff ff       	call   0x402795
40434f:	68 04 01 00 00       	push   $0x104
404354:	53                   	push   %ebx
404355:	56                   	push   %esi
404356:	ff 15 00 f1 40 00    	call   *0x40f100
40435c:	85 c0                	test   %eax,%eax
40435e:	0f 84 cc 00 00 00    	je     0x404430
404364:	8d 45 f8             	lea    -0x8(%ebp),%eax
404367:	8b cb                	mov    %ebx,%ecx
404369:	50                   	push   %eax
40436a:	8d 55 fc             	lea    -0x4(%ebp),%edx
40436d:	e8 a2 43 00 00       	call   0x408714
404372:	8b f0                	mov    %eax,%esi
404374:	85 f6                	test   %esi,%esi
404376:	0f 85 bc 00 00 00    	jne    0x404438
40437c:	50                   	push   %eax
40437d:	68 80 00 00 00       	push   $0x80
404382:	6a 03                	push   $0x3
404384:	50                   	push   %eax
404385:	8b 47 40             	mov    0x40(%edi),%eax
404388:	6a 03                	push   $0x3
40438a:	68 00 00 00 80       	push   $0x80000000
40438f:	83 c0 04             	add    $0x4,%eax
404392:	50                   	push   %eax
404393:	ff 15 f4 f0 40 00    	call   *0x40f0f4
404399:	8b d8                	mov    %eax,%ebx
40439b:	83 fb ff             	cmp    $0xffffffff,%ebx
40439e:	74 7a                	je     0x40441a
4043a0:	8b 4d f8             	mov    -0x8(%ebp),%ecx
4043a3:	8d 04 09             	lea    (%ecx,%ecx,1),%eax
4043a6:	8d 88 20 60 00 00    	lea    0x6020(%eax),%ecx
4043ac:	89 45 f8             	mov    %eax,-0x8(%ebp)
4043af:	51                   	push   %ecx
4043b0:	ff 15 a4 f0 40 00    	call   *0x40f0a4
4043b6:	8b f0                	mov    %eax,%esi
4043b8:	89 77 44             	mov    %esi,0x44(%edi)
4043bb:	85 f6                	test   %esi,%esi
4043bd:	74 4f                	je     0x40440e
4043bf:	33 c9                	xor    %ecx,%ecx
4043c1:	8d 45 f0             	lea    -0x10(%ebp),%eax
4043c4:	51                   	push   %ecx
4043c5:	50                   	push   %eax
4043c6:	68 20 60 00 00       	push   $0x6020
4043cb:	56                   	push   %esi
4043cc:	51                   	push   %ecx
4043cd:	51                   	push   %ecx
4043ce:	68 00 00 56 00       	push   $0x560000
4043d3:	53                   	push   %ebx
4043d4:	ff 15 18 f1 40 00    	call   *0x40f118
4043da:	85 c0                	test   %eax,%eax
4043dc:	74 19                	je     0x4043f7
4043de:	ff 75 f8             	push   -0x8(%ebp)
4043e1:	8d 86 20 60 00 00    	lea    0x6020(%esi),%eax
4043e7:	ff 75 fc             	push   -0x4(%ebp)
4043ea:	50                   	push   %eax
4043eb:	e8 ee 4c 00 00       	call   0x4090de
4043f0:	83 c4 0c             	add    $0xc,%esp
4043f3:	33 f6                	xor    %esi,%esi
4043f5:	eb 1a                	jmp    0x404411
4043f7:	ff 77 44             	push   0x44(%edi)
4043fa:	ff 15 b0 f0 40 00    	call   *0x40f0b0
404400:	83 67 44 00          	andl   $0x0,0x44(%edi)
404404:	ff 15 e0 f0 40 00    	call   *0x40f0e0
40440a:	8b f0                	mov    %eax,%esi
40440c:	eb 03                	jmp    0x404411
40440e:	6a 08                	push   $0x8
404410:	5e                   	pop    %esi
404411:	53                   	push   %ebx
404412:	ff 15 08 f1 40 00    	call   *0x40f108
404418:	eb 08                	jmp    0x404422
40441a:	ff 15 e0 f0 40 00    	call   *0x40f0e0
404420:	8b f0                	mov    %eax,%esi
404422:	ff 75 fc             	push   -0x4(%ebp)
404425:	ff 15 b0 f0 40 00    	call   *0x40f0b0
40442b:	8b 5d f4             	mov    -0xc(%ebp),%ebx
40442e:	eb 08                	jmp    0x404438
404430:	ff 15 e0 f0 40 00    	call   *0x40f0e0
404436:	8b f0                	mov    %eax,%esi
404438:	53                   	push   %ebx
404439:	ff 15 b0 f0 40 00    	call   *0x40f0b0
40443f:	eb 03                	jmp    0x404444
404441:	6a 08                	push   $0x8
404443:	5e                   	pop    %esi
404444:	5f                   	pop    %edi
404445:	8b c6                	mov    %esi,%eax
404447:	5e                   	pop    %esi
404448:	5b                   	pop    %ebx
404449:	c9                   	leave
40444a:	c2 10 00             	ret    $0x10
40444d:	8b ff                	mov    %edi,%edi
40444f:	55                   	push   %ebp
404450:	8b ec                	mov    %esp,%ebp
404452:	51                   	push   %ecx
404453:	53                   	push   %ebx
404454:	56                   	push   %esi
404455:	33 f6                	xor    %esi,%esi
404457:	89 55 fc             	mov    %edx,-0x4(%ebp)
40445a:	57                   	push   %edi
40445b:	8b d9                	mov    %ecx,%ebx
40445d:	8b fe                	mov    %esi,%edi
40445f:	b9 5c 24 40 00       	mov    $0x40245c,%ecx
404464:	8b 04 bb             	mov    (%ebx,%edi,4),%eax
404467:	3b 04 b9             	cmp    (%ecx,%edi,4),%eax
40446a:	75 10                	jne    0x40447c
40446c:	47                   	inc    %edi
40446d:	83 ff 04             	cmp    $0x4,%edi
404470:	75 f2                	jne    0x404464
404472:	b9 90 04 00 00       	mov    $0x490,%ecx
404477:	e9 b5 00 00 00       	jmp    0x404531
40447c:	6a 04                	push   $0x4
40447e:	8b ce                	mov    %esi,%ecx
404480:	5f                   	pop    %edi
404481:	8b 04 8b             	mov    (%ebx,%ecx,4),%eax
404484:	ba bc 24 40 00       	mov    $0x4024bc,%edx
404489:	3b 04 8a             	cmp    (%edx,%ecx,4),%eax
40448c:	8b 55 fc             	mov    -0x4(%ebp),%edx
40448f:	75 0f                	jne    0x4044a0
404491:	41                   	inc    %ecx
404492:	3b cf                	cmp    %edi,%ecx
404494:	75 eb                	jne    0x404481
404496:	b9 91 04 00 00       	mov    $0x491,%ecx
40449b:	e9 91 00 00 00       	jmp    0x404531
4044a0:	8b ce                	mov    %esi,%ecx
4044a2:	8b 04 8b             	mov    (%ebx,%ecx,4),%eax
4044a5:	ba 7c 24 40 00       	mov    $0x40247c,%edx
4044aa:	3b 04 8a             	cmp    (%edx,%ecx,4),%eax
4044ad:	8b 55 fc             	mov    -0x4(%ebp),%edx
4044b0:	75 07                	jne    0x4044b9
4044b2:	41                   	inc    %ecx
4044b3:	3b cf                	cmp    %edi,%ecx
4044b5:	75 eb                	jne    0x4044a2
4044b7:	eb dd                	jmp    0x404496
4044b9:	8b ce                	mov    %esi,%ecx
4044bb:	8b 04 8b             	mov    (%ebx,%ecx,4),%eax
4044be:	ba 9c 24 40 00       	mov    $0x40249c,%edx
4044c3:	3b 04 8a             	cmp    (%edx,%ecx,4),%eax
4044c6:	8b 55 fc             	mov    -0x4(%ebp),%edx
4044c9:	75 0c                	jne    0x4044d7
4044cb:	41                   	inc    %ecx
4044cc:	3b cf                	cmp    %edi,%ecx
4044ce:	75 eb                	jne    0x4044bb
4044d0:	b9 92 04 00 00       	mov    $0x492,%ecx
4044d5:	eb 5a                	jmp    0x404531
4044d7:	8b ce                	mov    %esi,%ecx
4044d9:	8b 04 8b             	mov    (%ebx,%ecx,4),%eax
4044dc:	ba 6c 24 40 00       	mov    $0x40246c,%edx
4044e1:	3b 04 8a             	cmp    (%edx,%ecx,4),%eax
4044e4:	8b 55 fc             	mov    -0x4(%ebp),%edx
4044e7:	75 0c                	jne    0x4044f5
4044e9:	41                   	inc    %ecx
4044ea:	3b cf                	cmp    %edi,%ecx
4044ec:	75 eb                	jne    0x4044d9
4044ee:	b9 93 04 00 00       	mov    $0x493,%ecx
4044f3:	eb 3c                	jmp    0x404531
4044f5:	8b ce                	mov    %esi,%ecx
4044f7:	8b 04 8b             	mov    (%ebx,%ecx,4),%eax
4044fa:	ba 8c 24 40 00       	mov    $0x40248c,%edx
4044ff:	3b 04 8a             	cmp    (%edx,%ecx,4),%eax
404502:	8b 55 fc             	mov    -0x4(%ebp),%edx
404505:	75 0c                	jne    0x404513
404507:	41                   	inc    %ecx
404508:	3b cf                	cmp    %edi,%ecx
40450a:	75 eb                	jne    0x4044f7
40450c:	b9 94 04 00 00       	mov    $0x494,%ecx
404511:	eb 1e                	jmp    0x404531
404513:	b9 4c 24 40 00       	mov    $0x40244c,%ecx
404518:	8b 04 b3             	mov    (%ebx,%esi,4),%eax
40451b:	3b 04 b1             	cmp    (%ecx,%esi,4),%eax
40451e:	75 0c                	jne    0x40452c
404520:	46                   	inc    %esi
404521:	3b f7                	cmp    %edi,%esi
404523:	75 f3                	jne    0x404518
404525:	b9 95 04 00 00       	mov    $0x495,%ecx
40452a:	eb 05                	jmp    0x404531
40452c:	b9 3b 04 00 00       	mov    $0x43b,%ecx
404531:	6a 20                	push   $0x20
404533:	e8 34 e4 ff ff       	call   0x40296c
404538:	5f                   	pop    %edi
404539:	5e                   	pop    %esi
40453a:	5b                   	pop    %ebx
40453b:	c9                   	leave
40453c:	c2 04 00             	ret    $0x4
40453f:	8b ff                	mov    %edi,%edi
404541:	55                   	push   %ebp
404542:	8b ec                	mov    %esp,%ebp
404544:	83 ec 10             	sub    $0x10,%esp
404547:	53                   	push   %ebx
404548:	56                   	push   %esi
404549:	b8 08 02 00 00       	mov    $0x208,%eax
40454e:	89 4d f8             	mov    %ecx,-0x8(%ebp)
404551:	57                   	push   %edi
404552:	8b da                	mov    %edx,%ebx
404554:	89 45 fc             	mov    %eax,-0x4(%ebp)
404557:	50                   	push   %eax
404558:	89 5d f0             	mov    %ebx,-0x10(%ebp)
40455b:	33 f6                	xor    %esi,%esi
40455d:	ff 15 a4 f0 40 00    	call   *0x40f0a4
404563:	8b f8                	mov    %eax,%edi
404565:	85 ff                	test   %edi,%edi
404567:	74 73                	je     0x4045dc
404569:	56                   	push   %esi
40456a:	8d 45 fc             	lea    -0x4(%ebp),%eax
40456d:	50                   	push   %eax
40456e:	57                   	push   %edi
40456f:	8d 45 f4             	lea    -0xc(%ebp),%eax
404572:	50                   	push   %eax
404573:	53                   	push   %ebx
404574:	ff 75 f8             	push   -0x8(%ebp)
404577:	ff 15 84 f1 40 00    	call   *0x40f184
40457d:	8b d8                	mov    %eax,%ebx
40457f:	83 fb 1a             	cmp    $0x1a,%ebx
404582:	75 33                	jne    0x4045b7
404584:	57                   	push   %edi
404585:	ff 15 b0 f0 40 00    	call   *0x40f0b0
40458b:	ff 75 fc             	push   -0x4(%ebp)
40458e:	ff 15 a4 f0 40 00    	call   *0x40f0a4
404594:	8b f8                	mov    %eax,%edi
404596:	85 ff                	test   %edi,%edi
404598:	74 1a                	je     0x4045b4
40459a:	56                   	push   %esi
40459b:	8d 45 fc             	lea    -0x4(%ebp),%eax
40459e:	50                   	push   %eax
40459f:	57                   	push   %edi
4045a0:	8d 45 f4             	lea    -0xc(%ebp),%eax
4045a3:	50                   	push   %eax
4045a4:	ff 75 f0             	push   -0x10(%ebp)
4045a7:	ff 75 f8             	push   -0x8(%ebp)
4045aa:	ff 15 84 f1 40 00    	call   *0x40f184
4045b0:	8b d8                	mov    %eax,%ebx
4045b2:	eb 03                	jmp    0x4045b7
4045b4:	6a 08                	push   $0x8
4045b6:	5e                   	pop    %esi
4045b7:	85 db                	test   %ebx,%ebx
4045b9:	75 0b                	jne    0x4045c6
4045bb:	85 f6                	test   %esi,%esi
4045bd:	75 07                	jne    0x4045c6
4045bf:	8b 45 08             	mov    0x8(%ebp),%eax
4045c2:	89 38                	mov    %edi,(%eax)
4045c4:	eb 19                	jmp    0x4045df
4045c6:	85 ff                	test   %edi,%edi
4045c8:	74 15                	je     0x4045df
4045ca:	85 f6                	test   %esi,%esi
4045cc:	75 05                	jne    0x4045d3
4045ce:	be 0b 00 ff ef       	mov    $0xefff000b,%esi
4045d3:	57                   	push   %edi
4045d4:	ff 15 b0 f0 40 00    	call   *0x40f0b0
4045da:	eb 03                	jmp    0x4045df
4045dc:	6a 08                	push   $0x8
4045de:	5e                   	pop    %esi
4045df:	5f                   	pop    %edi
4045e0:	8b c6                	mov    %esi,%eax
4045e2:	5e                   	pop    %esi
4045e3:	5b                   	pop    %ebx
4045e4:	c9                   	leave
4045e5:	c2 04 00             	ret    $0x4
4045e8:	8b ff                	mov    %edi,%edi
4045ea:	55                   	push   %ebp
4045eb:	8b ec                	mov    %esp,%ebp
4045ed:	81 ec 7c 01 00 00    	sub    $0x17c,%esp
4045f3:	a1 04 a0 40 00       	mov    0x40a004,%eax
4045f8:	33 c5                	xor    %ebp,%eax
4045fa:	89 45 fc             	mov    %eax,-0x4(%ebp)
4045fd:	53                   	push   %ebx
4045fe:	8d 41 fe             	lea    -0x2(%ecx),%eax
404601:	c6 85 b7 fe ff ff 01 	movb   $0x1,-0x149(%ebp)
404608:	56                   	push   %esi
404609:	57                   	push   %edi
40460a:	83 f8 01             	cmp    $0x1,%eax
40460d:	0f 87 63 07 00 00    	ja     0x404d76
404613:	33 db                	xor    %ebx,%ebx
404615:	83 f9 03             	cmp    $0x3,%ecx
404618:	75 22                	jne    0x40463c
40461a:	8b 42 08             	mov    0x8(%edx),%eax
40461d:	0f b7 00             	movzwl (%eax),%eax
404620:	83 f8 2a             	cmp    $0x2a,%eax
404623:	74 10                	je     0x404635
404625:	83 f8 74             	cmp    $0x74,%eax
404628:	74 0b                	je     0x404635
40462a:	88 9d b7 fe ff ff    	mov    %bl,-0x149(%ebp)
404630:	83 f8 54             	cmp    $0x54,%eax
404633:	75 07                	jne    0x40463c
404635:	c6 85 b7 fe ff ff 01 	movb   $0x1,-0x149(%ebp)
40463c:	53                   	push   %ebx
40463d:	8d 85 9c fe ff ff    	lea    -0x164(%ebp),%eax
404643:	89 9d 94 fe ff ff    	mov    %ebx,-0x16c(%ebp)
404649:	50                   	push   %eax
40464a:	8d 85 94 fe ff ff    	lea    -0x16c(%ebp),%eax
404650:	50                   	push   %eax
404651:	ff 15 04 f0 40 00    	call   *0x40f004
404657:	8b f0                	mov    %eax,%esi
404659:	89 b5 ac fe ff ff    	mov    %esi,-0x154(%ebp)
40465f:	83 fe 7a             	cmp    $0x7a,%esi
404662:	75 3f                	jne    0x4046a3
404664:	ff b5 94 fe ff ff    	push   -0x16c(%ebp)
40466a:	ff 15 a4 f0 40 00    	call   *0x40f0a4
404670:	8b f8                	mov    %eax,%edi
404672:	85 ff                	test   %edi,%edi
404674:	75 08                	jne    0x40467e
404676:	6a 08                	push   $0x8
404678:	58                   	pop    %eax
404679:	e9 02 07 00 00       	jmp    0x404d80
40467e:	57                   	push   %edi
40467f:	8d 85 9c fe ff ff    	lea    -0x164(%ebp),%eax
404685:	50                   	push   %eax
404686:	8d 85 94 fe ff ff    	lea    -0x16c(%ebp),%eax
40468c:	50                   	push   %eax
40468d:	ff 15 04 f0 40 00    	call   *0x40f004
404693:	8b f0                	mov    %eax,%esi
404695:	8b 85 9c fe ff ff    	mov    -0x164(%ebp),%eax
40469b:	89 b5 ac fe ff ff    	mov    %esi,-0x154(%ebp)
4046a1:	eb 0a                	jmp    0x4046ad
4046a3:	8b c3                	mov    %ebx,%eax
4046a5:	8b fb                	mov    %ebx,%edi
4046a7:	89 85 9c fe ff ff    	mov    %eax,-0x164(%ebp)
4046ad:	85 f6                	test   %esi,%esi
4046af:	0f 85 33 06 00 00    	jne    0x404ce8
4046b5:	50                   	push   %eax
4046b6:	68 41 04 00 00       	push   $0x441
4046bb:	e8 cf e2 ff ff       	call   0x40298f
4046c0:	59                   	pop    %ecx
4046c1:	59                   	pop    %ecx
4046c2:	89 9d 90 fe ff ff    	mov    %ebx,-0x170(%ebp)