4563d0:	c7 46 0c 02 00 00 00 	movl   $0x2,0xc(%esi)
4563d7:	89 5e 04             	mov    %ebx,0x4(%esi)
4563da:	89 3e                	mov    %edi,(%esi)
4563dc:	5f                   	pop    %edi
4563dd:	8b c6                	mov    %esi,%eax
4563df:	5e                   	pop    %esi
4563e0:	5b                   	pop    %ebx
4563e1:	5d                   	pop    %ebp
4563e2:	c2 10 00             	ret    $0x10
4563e5:	55                   	push   %ebp
4563e6:	8b ec                	mov    %esp,%ebp
4563e8:	53                   	push   %ebx
4563e9:	56                   	push   %esi
4563ea:	8b d9                	mov    %ecx,%ebx
4563ec:	57                   	push   %edi
4563ed:	8d 4d 08             	lea    0x8(%ebp),%ecx
4563f0:	e8 48 43 fc ff       	call   0x41a73d
4563f5:	8b 7d 0c             	mov    0xc(%ebp),%edi
4563f8:	85 ff                	test   %edi,%edi
4563fa:	79 02                	jns    0x4563fe
4563fc:	33 ff                	xor    %edi,%edi
4563fe:	b8 ff 00 00 00       	mov    $0xff,%eax
456403:	3b f8                	cmp    %eax,%edi
456405:	7e 02                	jle    0x456409
456407:	8b f8                	mov    %eax,%edi
456409:	8b 75 08             	mov    0x8(%ebp),%esi
45640c:	8d 43 01             	lea    0x1(%ebx),%eax
45640f:	50                   	push   %eax
456410:	53                   	push   %ebx
456411:	57                   	push   %edi
456412:	56                   	push   %esi
456413:	e8 61 3e 00 00       	call   0x45a279
456418:	8d 43 03             	lea    0x3(%ebx),%eax
45641b:	50                   	push   %eax
45641c:	8d 43 02             	lea    0x2(%ebx),%eax
45641f:	50                   	push   %eax
456420:	8b c6                	mov    %esi,%eax
456422:	57                   	push   %edi
456423:	c1 e8 08             	shr    $0x8,%eax
456426:	50                   	push   %eax
456427:	e8 4d 3e 00 00       	call   0x45a279
45642c:	8d 43 05             	lea    0x5(%ebx),%eax
45642f:	50                   	push   %eax
456430:	8d 43 04             	lea    0x4(%ebx),%eax
456433:	50                   	push   %eax
456434:	57                   	push   %edi
456435:	c1 fe 10             	sar    $0x10,%esi
456438:	56                   	push   %esi
456439:	e8 3b 3e 00 00       	call   0x45a279
45643e:	5f                   	pop    %edi
45643f:	5e                   	pop    %esi
456440:	8b c3                	mov    %ebx,%eax
456442:	5b                   	pop    %ebx
456443:	5d                   	pop    %ebp
456444:	c2 08 00             	ret    $0x8
456447:	56                   	push   %esi
456448:	8b f1                	mov    %ecx,%esi
45644a:	8d 4e 44             	lea    0x44(%esi),%ecx
45644d:	e8 e5 66 fb ff       	call   0x40cb37
456452:	8d 4e 34             	lea    0x34(%esi),%ecx
456455:	e8 dd 66 fb ff       	call   0x40cb37
45645a:	8d 4e 24             	lea    0x24(%esi),%ecx
45645d:	5e                   	pop    %esi
45645e:	e9 d4 66 fb ff       	jmp    0x40cb37
456463:	55                   	push   %ebp
456464:	8b ec                	mov    %esp,%ebp
456466:	83 e4 f8             	and    $0xfffffff8,%esp
456469:	83 ec 24             	sub    $0x24,%esp
45646c:	53                   	push   %ebx
45646d:	56                   	push   %esi
45646e:	8b 75 10             	mov    0x10(%ebp),%esi
456471:	57                   	push   %edi
456472:	8b f9                	mov    %ecx,%edi
456474:	8b ce                	mov    %esi,%ecx
456476:	e8 a5 c7 fb ff       	call   0x412c20
45647b:	33 db                	xor    %ebx,%ebx
45647d:	53                   	push   %ebx
45647e:	c7 46 0c 01 00 00 00 	movl   $0x1,0xc(%esi)
456485:	89 1e                	mov    %ebx,(%esi)
456487:	e8 c1 c6 fa ff       	call   0x402b4d
45648c:	8d 4c 24 20          	lea    0x20(%esp),%ecx
456490:	e8 62 73 fb ff       	call   0x40d7f7
456495:	ff 75 14             	push   0x14(%ebp)
456498:	8d 44 24 24          	lea    0x24(%esp),%eax
45649c:	50                   	push   %eax
45649d:	ff 75 0c             	push   0xc(%ebp)
4564a0:	8b cf                	mov    %edi,%ecx
4564a2:	ff 75 08             	push   0x8(%ebp)
4564a5:	e8 e1 00 00 00       	call   0x45658b
4564aa:	84 c0                	test   %al,%al
4564ac:	74 78                	je     0x456526
4564ae:	8d 44 24 10          	lea    0x10(%esp),%eax
4564b2:	50                   	push   %eax
4564b3:	ff 74 24 24          	push   0x24(%esp)
4564b7:	c7 44 24 18 b4 dd 49 	movl   $0x49ddb4,0x18(%esp)
4564be:	00
4564bf:	53                   	push   %ebx
4564c0:	89 5c 24 20          	mov    %ebx,0x20(%esp)
4564c4:	89 5c 24 24          	mov    %ebx,0x24(%esp)
4564c8:	89 5c 24 28          	mov    %ebx,0x28(%esp)
4564cc:	e8 9f 4f fb ff       	call   0x40b470
4564d1:	83 7c 24 18 01       	cmpl   $0x1,0x18(%esp)
4564d6:	76 43                	jbe    0x45651b
4564d8:	8b cf                	mov    %edi,%ecx
4564da:	e8 cf bc fa ff       	call   0x4021ae
4564df:	ff 75 1c             	push   0x1c(%ebp)
4564e2:	8b f0                	mov    %eax,%esi
4564e4:	ff 75 10             	push   0x10(%ebp)
4564e7:	8d 44 24 14          	lea    0x14(%esp),%eax
4564eb:	50                   	push   %eax
4564ec:	8d 44 24 1c          	lea    0x1c(%esp),%eax
4564f0:	50                   	push   %eax
4564f1:	53                   	push   %ebx
4564f2:	8b cf                	mov    %edi,%ecx
4564f4:	89 5c 24 20          	mov    %ebx,0x20(%esp)
4564f8:	e8 03 cd fb ff       	call   0x413200
4564fd:	85 c0                	test   %eax,%eax
4564ff:	79 0e                	jns    0x45650f
456501:	85 f6                	test   %esi,%esi
456503:	74 18                	je     0x45651d
456505:	56                   	push   %esi
456506:	8b cf                	mov    %edi,%ecx
456508:	e8 f6 c7 fa ff       	call   0x402d03
45650d:	eb 0e                	jmp    0x45651d
45650f:	85 f6                	test   %esi,%esi
456511:	74 08                	je     0x45651b
456513:	56                   	push   %esi
456514:	8b cf                	mov    %edi,%ecx
456516:	e8 e8 c7 fa ff       	call   0x402d03
45651b:	b3 01                	mov    $0x1,%bl
45651d:	8d 4c 24 10          	lea    0x10(%esp),%ecx
456521:	e8 eb e9 fa ff       	call   0x404f11
456526:	8d 4c 24 20          	lea    0x20(%esp),%ecx
45652a:	e8 08 66 fb ff       	call   0x40cb37
45652f:	b9 f0 20 4c 00       	mov    $0x4c20f0,%ecx
456534:	e8 a7 78 fb ff       	call   0x40dde0
456539:	5f                   	pop    %edi
45653a:	5e                   	pop    %esi
45653b:	8a c3                	mov    %bl,%al
45653d:	5b                   	pop    %ebx
45653e:	8b e5                	mov    %ebp,%esp
456540:	5d                   	pop    %ebp
456541:	c2 1c 00             	ret    $0x1c
456544:	55                   	push   %ebp
456545:	8b ec                	mov    %esp,%ebp
456547:	83 ec 10             	sub    $0x10,%esp
45654a:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
45654e:	75 1d                	jne    0x45656d
456550:	8d 45 f0             	lea    -0x10(%ebp),%eax
456553:	50                   	push   %eax
456554:	ff 75 10             	push   0x10(%ebp)
456557:	ff 15 7c d6 48 00    	call   *0x48d67c
45655d:	8b 4d 0c             	mov    0xc(%ebp),%ecx
456560:	8b 45 f0             	mov    -0x10(%ebp),%eax
456563:	89 01                	mov    %eax,(%ecx)
456565:	8b 45 f4             	mov    -0xc(%ebp),%eax
456568:	89 41 04             	mov    %eax,0x4(%ecx)
45656b:	eb 1a                	jmp    0x456587
45656d:	8b 45 0c             	mov    0xc(%ebp),%eax
456570:	83 20 00             	andl   $0x0,(%eax)
456573:	83 60 04 00          	andl   $0x0,0x4(%eax)
456577:	83 7d 08 02          	cmpl   $0x2,0x8(%ebp)
45657b:	75 0a                	jne    0x456587
45657d:	50                   	push   %eax
45657e:	ff 75 10             	push   0x10(%ebp)
456581:	ff 15 c0 d4 48 00    	call   *0x48d4c0
456587:	c9                   	leave
456588:	c2 0c 00             	ret    $0xc
45658b:	55                   	push   %ebp
45658c:	8b ec                	mov    %esp,%ebp
45658e:	81 ec a4 00 00 00    	sub    $0xa4,%esp
456594:	53                   	push   %ebx
456595:	56                   	push   %esi
456596:	57                   	push   %edi
456597:	ff 75 08             	push   0x8(%ebp)
45659a:	e8 0b b7 fa ff       	call   0x401caa
45659f:	8b c8                	mov    %eax,%ecx
4565a1:	85 c9                	test   %ecx,%ecx
4565a3:	0f 84 dd 00 00 00    	je     0x456686
4565a9:	8b 5d 0c             	mov    0xc(%ebp),%ebx
4565ac:	33 c0                	xor    %eax,%eax
4565ae:	89 45 f4             	mov    %eax,-0xc(%ebp)
4565b1:	89 45 f8             	mov    %eax,-0x8(%ebp)
4565b4:	89 45 fc             	mov    %eax,-0x4(%ebp)
4565b7:	8b 43 08             	mov    0x8(%ebx),%eax
4565ba:	2b 45 14             	sub    0x14(%ebp),%eax
4565bd:	c7 45 f0 50 dc 49 00 	movl   $0x49dc50,-0x10(%ebp)
4565c4:	3b 41 18             	cmp    0x18(%ecx),%eax
4565c7:	0f 8c b1 00 00 00    	jl     0x45667e
4565cd:	3b 41 14             	cmp    0x14(%ecx),%eax
4565d0:	0f 8f a8 00 00 00    	jg     0x45667e
4565d6:	8b 75 10             	mov    0x10(%ebp),%esi
4565d9:	ff 75 08             	push   0x8(%ebp)
4565dc:	8b ce                	mov    %esi,%ecx
4565de:	e8 0a 09 fb ff       	call   0x406eed
4565e3:	68 6c 32 4b 00       	push   $0x4b326c
4565e8:	8b ce                	mov    %esi,%ecx
4565ea:	e8 9d eb fa ff       	call   0x40518c
4565ef:	8b 45 14             	mov    0x14(%ebp),%eax
4565f2:	8b f8                	mov    %eax,%edi
4565f4:	3b 43 08             	cmp    0x8(%ebx),%eax
4565f7:	73 6d                	jae    0x456666
4565f9:	57                   	push   %edi
4565fa:	68 84 3d 4b 00       	push   $0x4b3d84
4565ff:	8d 85 60 ff ff ff    	lea    -0xa0(%ebp),%eax
456605:	6a 40                	push   $0x40
456607:	50                   	push   %eax
456608:	e8 9d e6 fc ff       	call   0x424caa
45660d:	83 c4 10             	add    $0x10,%esp
456610:	8d 85 60 ff ff ff    	lea    -0xa0(%ebp),%eax
456616:	50                   	push   %eax
456617:	8d 4d e0             	lea    -0x20(%ebp),%ecx
45661a:	e8 fa 67 fb ff       	call   0x40ce19
45661f:	8b 43 04             	mov    0x4(%ebx),%eax
456622:	6a 01                	push   $0x1
456624:	6a 00                	push   $0x0
456626:	ff 34 b8             	push   (%eax,%edi,4)
456629:	8d 45 e0             	lea    -0x20(%ebp),%eax
45662c:	50                   	push   %eax
45662d:	e8 b7 70 fb ff       	call   0x40d6e9
456632:	8d 4d e0             	lea    -0x20(%ebp),%ecx
456635:	e8 fd 64 fb ff       	call   0x40cb37
45663a:	8b ce                	mov    %esi,%ecx
45663c:	3b 7d 14             	cmp    0x14(%ebp),%edi
45663f:	75 07                	jne    0x456648
456641:	68 68 32 4b 00       	push   $0x4b3268
456646:	eb 05                	jmp    0x45664d
456648:	68 b0 3d 4b 00       	push   $0x4b3db0
45664d:	e8 3a eb fa ff       	call   0x40518c
456652:	8d 85 60 ff ff ff    	lea    -0xa0(%ebp),%eax
456658:	50                   	push   %eax
456659:	8b ce                	mov    %esi,%ecx
45665b:	e8 2c eb fa ff       	call   0x40518c
456660:	47                   	inc    %edi
456661:	3b 7b 08             	cmp    0x8(%ebx),%edi
456664:	72 93                	jb     0x4565f9
456666:	68 70 32 4b 00       	push   $0x4b3270
45666b:	8b ce                	mov    %esi,%ecx
45666d:	e8 1a eb fa ff       	call   0x40518c
456672:	8d 4d f0             	lea    -0x10(%ebp),%ecx
456675:	e8 12 90 fe ff       	call   0x43f68c
45667a:	b0 01                	mov    $0x1,%al
45667c:	eb 0a                	jmp    0x456688
45667e:	8d 4d f0             	lea    -0x10(%ebp),%ecx
456681:	e8 06 90 fe ff       	call   0x43f68c
456686:	32 c0                	xor    %al,%al
456688:	5f                   	pop    %edi
456689:	5e                   	pop    %esi
45668a:	5b                   	pop    %ebx
45668b:	c9                   	leave
45668c:	c2 10 00             	ret    $0x10
45668f:	55                   	push   %ebp
456690:	8b ec                	mov    %esp,%ebp
456692:	83 e4 f8             	and    $0xfffffff8,%esp
456695:	83 ec 3c             	sub    $0x3c,%esp
456698:	83 64 24 04 00       	andl   $0x0,0x4(%esp)
45669d:	53                   	push   %ebx
45669e:	56                   	push   %esi
45669f:	57                   	push   %edi
4566a0:	8b f9                	mov    %ecx,%edi
4566a2:	33 db                	xor    %ebx,%ebx
4566a4:	89 5c 24 10          	mov    %ebx,0x10(%esp)
4566a8:	39 9f 80 04 00 00    	cmp    %ebx,0x480(%edi)
4566ae:	0f 84 4a 01 00 00    	je     0x4567fe
4566b4:	8b 45 08             	mov    0x8(%ebp),%eax
4566b7:	39 58 08             	cmp    %ebx,0x8(%eax)
4566ba:	75 11                	jne    0x4566cd
4566bc:	8b 87 7c 04 00 00    	mov    0x47c(%edi),%eax
4566c2:	8b 00                	mov    (%eax),%eax
4566c4:	c6 40 11 01          	movb   $0x1,0x11(%eax)
4566c8:	e9 f7 00 00 00       	jmp    0x4567c4
4566cd:	8b 40 04             	mov    0x4(%eax),%eax
4566d0:	6a 0e                	push   $0xe
4566d2:	8b 30                	mov    (%eax),%esi
4566d4:	8b ce                	mov    %esi,%ecx
4566d6:	e8 09 6f fb ff       	call   0x40d5e4
4566db:	8b ce                	mov    %esi,%ecx
4566dd:	84 c0                	test   %al,%al
4566df:	74 11                	je     0x4566f2
4566e1:	8d 44 24 38          	lea    0x38(%esp),%eax
4566e5:	33 db                	xor    %ebx,%ebx
4566e7:	50                   	push   %eax
4566e8:	43                   	inc    %ebx
4566e9:	e8 af 3f ff ff       	call   0x44a69d
4566ee:	8b c8                	mov    %eax,%ecx
4566f0:	eb 2c                	jmp    0x45671e
4566f2:	6a 02                	push   $0x2
4566f4:	5b                   	pop    %ebx
4566f5:	e8 72 2c fb ff       	call   0x40936c
4566fa:	8b 4e 08             	mov    0x8(%esi),%ecx
4566fd:	8b 01                	mov    (%ecx),%eax
4566ff:	89 44 24 28          	mov    %eax,0x28(%esp)
456703:	8b 41 04             	mov    0x4(%ecx),%eax
456706:	89 44 24 2c          	mov    %eax,0x2c(%esp)
45670a:	8b 41 08             	mov    0x8(%ecx),%eax
45670d:	89 44 24 30          	mov    %eax,0x30(%esp)
456711:	8b 41 0c             	mov    0xc(%ecx),%eax
456714:	89 44 24 34          	mov    %eax,0x34(%esp)
456718:	ff 00                	incl   (%eax)
45671a:	8d 4c 24 28          	lea    0x28(%esp),%ecx
45671e:	8b 01                	mov    (%ecx),%eax
456720:	89 44 24 18          	mov    %eax,0x18(%esp)
456724:	8b 41 04             	mov    0x4(%ecx),%eax
456727:	89 44 24 1c          	mov    %eax,0x1c(%esp)
45672b:	8b 41 08             	mov    0x8(%ecx),%eax
45672e:	89 44 24 20          	mov    %eax,0x20(%esp)
456732:	8b 41 0c             	mov    0xc(%ecx),%eax
456735:	89 44 24 24          	mov    %eax,0x24(%esp)
456739:	ff 00                	incl   (%eax)
45673b:	f6 c3 02             	test   $0x2,%bl
45673e:	74 0c                	je     0x45674c
456740:	8d 4c 24 28          	lea    0x28(%esp),%ecx
456744:	83 e3 fd             	and    $0xfffffffd,%ebx
456747:	e8 eb 63 fb ff       	call   0x40cb37
45674c:	f6 c3 01             	test   $0x1,%bl
45674f:	74 09                	je     0x45675a
456751:	8d 4c 24 38          	lea    0x38(%esp),%ecx
456755:	e8 dd 63 fb ff       	call   0x40cb37
45675a:	8d 4c 24 18          	lea    0x18(%esp),%ecx
45675e:	e8 97 56 fb ff       	call   0x40bdfa
456763:	ff 74 24 1c          	push   0x1c(%esp)
456767:	ff 74 24 1c          	push   0x1c(%esp)
45676b:	ff 15 60 d6 48 00    	call   *0x48d660
456771:	8b b7 78 04 00 00    	mov    0x478(%edi),%esi
456777:	89 74 24 0c          	mov    %esi,0xc(%esp)
45677b:	51                   	push   %ecx
45677c:	8b c4                	mov    %esp,%eax
45677e:	8d 4c 24 10          	lea    0x10(%esp),%ecx
456782:	83 20 00             	andl   $0x0,(%eax)
456785:	e8 8c c1 fa ff       	call   0x402916
45678a:	84 c0                	test   %al,%al
45678c:	74 29                	je     0x4567b7
45678e:	8b 0e                	mov    (%esi),%ecx
456790:	8d 54 24 18          	lea    0x18(%esp),%edx
456794:	e8 8d 01 fb ff       	call   0x406926
456799:	84 c0                	test   %al,%al
45679b:	75 14                	jne    0x4567b1
45679d:	8d 44 24 14          	lea    0x14(%esp),%eax
4567a1:	50                   	push   %eax
4567a2:	8d 4c 24 10          	lea    0x10(%esp),%ecx
4567a6:	e8 d3 61 ff ff       	call   0x44c97e
4567ab:	8b 74 24 0c          	mov    0xc(%esp),%esi
4567af:	eb ca                	jmp    0x45677b
4567b1:	8b 06                	mov    (%esi),%eax
4567b3:	c6 40 11 01          	movb   $0x1,0x11(%eax)
4567b7:	8d 4c 24 18          	lea    0x18(%esp),%ecx
4567bb:	e8 77 63 fb ff       	call   0x40cb37
4567c0:	8b 5c 24 10          	mov    0x10(%esp),%ebx
4567c4:	8b b7 78 04 00 00    	mov    0x478(%edi),%esi
4567ca:	89 74 24 0c          	mov    %esi,0xc(%esp)