477504:	b8 94 3b 48 00       	mov    $0x483b94,%eax
477509:	e8 6e 07 fa ff       	call   0x417c7c
47750e:	51                   	push   %ecx
47750f:	8b 45 14             	mov    0x14(%ebp),%eax
477512:	53                   	push   %ebx
477513:	56                   	push   %esi
477514:	57                   	push   %edi
477515:	8b 7d 08             	mov    0x8(%ebp),%edi
477518:	83 c7 cc             	add    $0xffffffcc,%edi
47751b:	85 c0                	test   %eax,%eax
47751d:	89 65 f0             	mov    %esp,-0x10(%ebp)
477520:	74 03                	je     0x477525
477522:	83 20 00             	andl   $0x0,(%eax)
477525:	8b 5d 0c             	mov    0xc(%ebp),%ebx
477528:	8b 75 10             	mov    0x10(%ebp),%esi
47752b:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
47752f:	89 5d 08             	mov    %ebx,0x8(%ebp)
477532:	c7 45 10 ff ff 00 80 	movl   $0x8000ffff,0x10(%ebp)
477539:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
47753d:	74 22                	je     0x477561
47753f:	8b 07                	mov    (%edi),%eax
477541:	56                   	push   %esi
477542:	8b cf                	mov    %edi,%ecx
477544:	ff 50 50             	call   *0x50(%eax)
477547:	85 c0                	test   %eax,%eax
477549:	74 16                	je     0x477561
47754b:	03 77 1c             	add    0x1c(%edi),%esi
47754e:	ff 4d 08             	decl   0x8(%ebp)
477551:	eb e6                	jmp    0x477539
477553:	8b 4d 0c             	mov    0xc(%ebp),%ecx
477556:	e8 be 89 fc ff       	call   0x43ff19
47755b:	b8 78 75 47 00       	mov    $0x477578,%eax
477560:	c3                   	ret
477561:	8b 45 14             	mov    0x14(%ebp),%eax
477564:	85 c0                	test   %eax,%eax
477566:	74 05                	je     0x47756d
477568:	2b 5d 08             	sub    0x8(%ebp),%ebx
47756b:	89 18                	mov    %ebx,(%eax)
47756d:	33 c0                	xor    %eax,%eax
47756f:	39 45 08             	cmp    %eax,0x8(%ebp)
477572:	0f 95 c0             	setne  %al
477575:	89 45 10             	mov    %eax,0x10(%ebp)
477578:	8b 4d f4             	mov    -0xc(%ebp),%ecx
47757b:	8b 45 10             	mov    0x10(%ebp),%eax
47757e:	5f                   	pop    %edi
47757f:	5e                   	pop    %esi
477580:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
477587:	5b                   	pop    %ebx
477588:	c9                   	leave
477589:	c2 10 00             	ret    $0x10
47758c:	b8 9e 3b 48 00       	mov    $0x483b9e,%eax
477591:	e8 e6 06 fa ff       	call   0x417c7c
477596:	51                   	push   %ecx
477597:	8b 45 0c             	mov    0xc(%ebp),%eax
47759a:	53                   	push   %ebx
47759b:	56                   	push   %esi
47759c:	8b 75 08             	mov    0x8(%ebp),%esi
47759f:	57                   	push   %edi
4775a0:	83 c6 cc             	add    $0xffffffcc,%esi
4775a3:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
4775a7:	89 65 f0             	mov    %esp,-0x10(%ebp)
4775aa:	89 45 08             	mov    %eax,0x8(%ebp)
4775ad:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
4775b1:	74 1e                	je     0x4775d1
4775b3:	8b 06                	mov    (%esi),%eax
4775b5:	8b ce                	mov    %esi,%ecx
4775b7:	ff 50 54             	call   *0x54(%eax)
4775ba:	85 c0                	test   %eax,%eax
4775bc:	74 13                	je     0x4775d1
4775be:	ff 4d 08             	decl   0x8(%ebp)
4775c1:	eb ea                	jmp    0x4775ad
4775c3:	8b 4d 0c             	mov    0xc(%ebp),%ecx
4775c6:	e8 4e 89 fc ff       	call   0x43ff19
4775cb:	b8 d1 75 47 00       	mov    $0x4775d1,%eax
4775d0:	c3                   	ret
4775d1:	8b 4d f4             	mov    -0xc(%ebp),%ecx
4775d4:	33 c0                	xor    %eax,%eax
4775d6:	39 45 08             	cmp    %eax,0x8(%ebp)
4775d9:	5f                   	pop    %edi
4775da:	5e                   	pop    %esi
4775db:	0f 95 c0             	setne  %al
4775de:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
4775e5:	5b                   	pop    %ebx
4775e6:	c9                   	leave
4775e7:	c2 08 00             	ret    $0x8
4775ea:	8b 4c 24 04          	mov    0x4(%esp),%ecx
4775ee:	83 c1 cc             	add    $0xffffffcc,%ecx
4775f1:	8b 01                	mov    (%ecx),%eax
4775f3:	ff 50 58             	call   *0x58(%eax)
4775f6:	33 c0                	xor    %eax,%eax
4775f8:	c2 04 00             	ret    $0x4
4775fb:	56                   	push   %esi
4775fc:	8b f1                	mov    %ecx,%esi
4775fe:	e8 31 fe ff ff       	call   0x477434
477603:	f6 44 24 08 01       	testb  $0x1,0x8(%esp)
477608:	74 07                	je     0x477611
47760a:	56                   	push   %esi
47760b:	e8 70 8a fc ff       	call   0x440080
477610:	59                   	pop    %ecx
477611:	8b c6                	mov    %esi,%eax
477613:	5e                   	pop    %esi
477614:	c2 04 00             	ret    $0x4
477617:	8b c1                	mov    %ecx,%eax
477619:	c3                   	ret
47761a:	b8 a8 3b 48 00       	mov    $0x483ba8,%eax
47761f:	e8 58 06 fa ff       	call   0x417c7c
477624:	51                   	push   %ecx
477625:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
477629:	53                   	push   %ebx
47762a:	8b 5d 0c             	mov    0xc(%ebp),%ebx
47762d:	83 23 00             	andl   $0x0,(%ebx)
477630:	56                   	push   %esi
477631:	8b 75 08             	mov    0x8(%ebp),%esi
477634:	83 c6 cc             	add    $0xffffffcc,%esi
477637:	8b 06                	mov    (%esi),%eax
477639:	57                   	push   %edi
47763a:	8b ce                	mov    %esi,%ecx
47763c:	89 65 f0             	mov    %esp,-0x10(%ebp)
47763f:	c7 45 08 ff ff 00 80 	movl   $0x8000ffff,0x8(%ebp)
477646:	ff 50 5c             	call   *0x5c(%eax)
477649:	8b f8                	mov    %eax,%edi
47764b:	8b 46 20             	mov    0x20(%esi),%eax
47764e:	85 c0                	test   %eax,%eax
477650:	74 05                	je     0x477657
477652:	89 47 20             	mov    %eax,0x20(%edi)
477655:	eb 03                	jmp    0x47765a
477657:	89 77 20             	mov    %esi,0x20(%edi)
47765a:	8b 47 20             	mov    0x20(%edi),%eax
47765d:	83 c0 04             	add    $0x4,%eax
477660:	50                   	push   %eax
477661:	ff 15 a4 02 4b 00    	call   *0x4b02a4
477667:	83 c7 34             	add    $0x34,%edi
47766a:	83 65 08 00          	andl   $0x0,0x8(%ebp)
47766e:	89 3b                	mov    %edi,(%ebx)
477670:	8b 4d f4             	mov    -0xc(%ebp),%ecx
477673:	8b 45 08             	mov    0x8(%ebp),%eax
477676:	5f                   	pop    %edi
477677:	5e                   	pop    %esi
477678:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
47767f:	5b                   	pop    %ebx
477680:	c9                   	leave
477681:	c2 08 00             	ret    $0x8
477684:	8b 4d 0c             	mov    0xc(%ebp),%ecx
477687:	e8 8d 88 fc ff       	call   0x43ff19
47768c:	b8 70 76 47 00       	mov    $0x477670,%eax
477691:	c3                   	ret
477692:	8b c1                	mov    %ecx,%eax
477694:	c7 00 60 d4 48 00    	movl   $0x48d460,(%eax)
47769a:	c3                   	ret
47769b:	56                   	push   %esi
47769c:	8b f1                	mov    %ecx,%esi
47769e:	e8 61 aa fc ff       	call   0x442104
4776a3:	8b 44 24 08          	mov    0x8(%esp),%eax
4776a7:	c7 06 fc d3 48 00    	movl   $0x48d3fc,(%esi)
4776ad:	c7 46 34 60 d4 48 00 	movl   $0x48d460,0x34(%esi)
4776b4:	83 66 20 00          	andl   $0x0,0x20(%esi)
4776b8:	83 66 28 00          	andl   $0x0,0x28(%esi)
4776bc:	89 46 1c             	mov    %eax,0x1c(%esi)
4776bf:	8b 44 24 10          	mov    0x10(%esp),%eax
4776c3:	89 46 2c             	mov    %eax,0x2c(%esi)
4776c6:	8b 44 24 0c          	mov    0xc(%esp),%eax
4776ca:	89 46 24             	mov    %eax,0x24(%esi)
4776cd:	8b 44 24 14          	mov    0x14(%esp),%eax
4776d1:	89 46 30             	mov    %eax,0x30(%esi)
4776d4:	8b c6                	mov    %esi,%eax
4776d6:	5e                   	pop    %esi
4776d7:	c2 10 00             	ret    $0x10
4776da:	b8 bb 3b 48 00       	mov    $0x483bbb,%eax
4776df:	e8 98 05 fa ff       	call   0x417c7c
4776e4:	51                   	push   %ecx
4776e5:	56                   	push   %esi
4776e6:	6a 38                	push   $0x38
4776e8:	8b f1                	mov    %ecx,%esi
4776ea:	e8 66 89 fc ff       	call   0x440055
4776ef:	59                   	pop    %ecx
4776f0:	8b c8                	mov    %eax,%ecx
4776f2:	89 4d f0             	mov    %ecx,-0x10(%ebp)
4776f5:	33 c0                	xor    %eax,%eax
4776f7:	3b c8                	cmp    %eax,%ecx
4776f9:	89 45 fc             	mov    %eax,-0x4(%ebp)
4776fc:	74 0f                	je     0x47770d
4776fe:	50                   	push   %eax
4776ff:	ff 76 2c             	push   0x2c(%esi)
477702:	ff 76 24             	push   0x24(%esi)
477705:	ff 76 1c             	push   0x1c(%esi)
477708:	e8 8e ff ff ff       	call   0x47769b
47770d:	8b 4e 28             	mov    0x28(%esi),%ecx
477710:	89 48 28             	mov    %ecx,0x28(%eax)
477713:	8b 4d f4             	mov    -0xc(%ebp),%ecx
477716:	5e                   	pop    %esi
477717:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
47771e:	c9                   	leave
47771f:	c3                   	ret
477720:	b8 78 f0 48 00       	mov    $0x48f078,%eax
477725:	c3                   	ret
477726:	8b 44 24 04          	mov    0x4(%esp),%eax
47772a:	33 d2                	xor    %edx,%edx
47772c:	3b c2                	cmp    %edx,%eax
47772e:	75 07                	jne    0x477737
477730:	8b 41 40             	mov    0x40(%ecx),%eax
477733:	3b c2                	cmp    %edx,%eax
477735:	74 12                	je     0x477749
477737:	52                   	push   %edx
477738:	52                   	push   %edx
477739:	52                   	push   %edx
47773a:	52                   	push   %edx
47773b:	6a 03                	push   $0x3
47773d:	50                   	push   %eax
47773e:	50                   	push   %eax
47773f:	50                   	push   %eax
477740:	83 c1 24             	add    $0x24,%ecx
477743:	51                   	push   %ecx
477744:	e8 c5 2d 00 00       	call   0x47a50e
477749:	c2 04 00             	ret    $0x4
47774c:	8b 49 34             	mov    0x34(%ecx),%ecx
47774f:	e8 2a 92 fc ff       	call   0x44097e
477754:	85 c0                	test   %eax,%eax
477756:	75 05                	jne    0x47775d
477758:	e9 ba dc fb ff       	jmp    0x435417
47775d:	c3                   	ret
47775e:	56                   	push   %esi
47775f:	8b f1                	mov    %ecx,%esi
477761:	80 7e 44 00          	cmpb   $0x0,0x44(%esi)
477765:	75 0c                	jne    0x477773
477767:	8b 06                	mov    (%esi),%eax
477769:	ff 50 60             	call   *0x60(%eax)
47776c:	88 46 45             	mov    %al,0x45(%esi)
47776f:	c6 46 44 01          	movb   $0x1,0x44(%esi)
477773:	0f b6 46 45          	movzbl 0x45(%esi),%eax
477777:	5e                   	pop    %esi
477778:	c3                   	ret
477779:	33 c0                	xor    %eax,%eax
47777b:	40                   	inc    %eax
47777c:	c3                   	ret
47777d:	33 c0                	xor    %eax,%eax
47777f:	c2 08 00             	ret    $0x8
477782:	55                   	push   %ebp
477783:	8b ec                	mov    %esp,%ebp
477785:	51                   	push   %ecx
477786:	53                   	push   %ebx
477787:	33 db                	xor    %ebx,%ebx
477789:	39 5d 08             	cmp    %ebx,0x8(%ebp)
47778c:	89 5d fc             	mov    %ebx,-0x4(%ebp)
47778f:	74 45                	je     0x4777d6
477791:	8b 01                	mov    (%ecx),%eax
477793:	8d 55 fc             	lea    -0x4(%ebp),%edx
477796:	52                   	push   %edx
477797:	53                   	push   %ebx
477798:	ff 50 64             	call   *0x64(%eax)
47779b:	85 c0                	test   %eax,%eax
47779d:	74 37                	je     0x4777d6
47779f:	56                   	push   %esi
4777a0:	8b 35 fc 04 4b 00    	mov    0x4b04fc,%esi
4777a6:	57                   	push   %edi
4777a7:	ff 75 fc             	push   -0x4(%ebp)
4777aa:	ff d6                	call   *%esi
4777ac:	ff 75 08             	push   0x8(%ebp)
4777af:	8b f8                	mov    %eax,%edi
4777b1:	ff d6                	call   *%esi
4777b3:	3b f8                	cmp    %eax,%edi
4777b5:	75 14                	jne    0x4777cb
4777b7:	57                   	push   %edi
4777b8:	ff 75 08             	push   0x8(%ebp)
4777bb:	ff 75 fc             	push   -0x4(%ebp)
4777be:	e8 dd 11 fa ff       	call   0x4189a0
4777c3:	83 c4 0c             	add    $0xc,%esp
4777c6:	85 c0                	test   %eax,%eax
4777c8:	75 01                	jne    0x4777cb
4777ca:	43                   	inc    %ebx
4777cb:	ff 75 fc             	push   -0x4(%ebp)
4777ce:	ff 15 08 05 4b 00    	call   *0x4b0508
4777d4:	5f                   	pop    %edi
4777d5:	5e                   	pop    %esi
4777d6:	8b c3                	mov    %ebx,%eax
4777d8:	5b                   	pop    %ebx
4777d9:	c9                   	leave
4777da:	c2 04 00             	ret    $0x4
4777dd:	8b 4c 24 04          	mov    0x4(%esp),%ecx
4777e1:	83 c1 b8             	add    $0xffffffb8,%ecx
4777e4:	e8 56 c7 ff ff       	call   0x473f3f
4777e9:	c2 04 00             	ret    $0x4
4777ec:	ff 74 24 0c          	push   0xc(%esp)
4777f0:	8b 4c 24 08          	mov    0x8(%esp),%ecx
4777f4:	ff 74 24 0c          	push   0xc(%esp)
4777f8:	83 c1 b8             	add    $0xffffffb8,%ecx
4777fb:	e8 fc c8 ff ff       	call   0x4740fc
477800:	c2 0c 00             	ret    $0xc
477803:	ff 74 24 10          	push   0x10(%esp)
477807:	8b 44 24 08          	mov    0x8(%esp),%eax
47780b:	8b 08                	mov    (%eax),%ecx
47780d:	6a 00                	push   $0x0
47780f:	ff 74 24 14          	push   0x14(%esp)
477813:	6a 00                	push   $0x0
477815:	ff 74 24 18          	push   0x18(%esp)
477819:	50                   	push   %eax
47781a:	ff 51 1c             	call   *0x1c(%ecx)
47781d:	c2 10 00             	ret    $0x10
477820:	b8 62 3e 48 00       	mov    $0x483e62,%eax
477825:	e8 52 04 fa ff       	call   0x417c7c
47782a:	83 ec 0c             	sub    $0xc,%esp
47782d:	53                   	push   %ebx
47782e:	56                   	push   %esi
47782f:	33 f6                	xor    %esi,%esi
477831:	39 75 0c             	cmp    %esi,0xc(%ebp)
477834:	57                   	push   %edi
477835:	89 65 f0             	mov    %esp,-0x10(%ebp)
477838:	c7 45 ec ff ff 00 80 	movl   $0x8000ffff,-0x14(%ebp)
47783f:	89 75 fc             	mov    %esi,-0x4(%ebp)
477842:	74 07                	je     0x47784b
477844:	e8 1d 84 fe ff       	call   0x45fc66
477849:	eb 05                	jmp    0x477850
47784b:	e8 8a 84 fe ff       	call   0x45fcda
477850:	89 75 ec             	mov    %esi,-0x14(%ebp)
477853:	8b 4d f4             	mov    -0xc(%ebp),%ecx
477856:	8b 45 ec             	mov    -0x14(%ebp),%eax
477859:	5f                   	pop    %edi
47785a:	5e                   	pop    %esi
47785b:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
477862:	5b                   	pop    %ebx
477863:	c9                   	leave
477864:	c2 08 00             	ret    $0x8
477867:	8b 4d e8             	mov    -0x18(%ebp),%ecx
47786a:	e8 aa 86 fc ff       	call   0x43ff19
47786f:	b8 53 78 47 00       	mov    $0x477853,%eax
477874:	c3                   	ret
477875:	55                   	push   %ebp
477876:	8b ec                	mov    %esp,%ebp
477878:	56                   	push   %esi
477879:	8b 75 08             	mov    0x8(%ebp),%esi
47787c:	83 65 08 00          	andl   $0x0,0x8(%ebp)
477880:	83 c6 b8             	add    $0xffffffb8,%esi
477883:	57                   	push   %edi
477884:	8b ce                	mov    %esi,%ecx
477886:	e8 d3 fe ff ff       	call   0x47775e
47788b:	8b 7d 0c             	mov    0xc(%ebp),%edi
47788e:	8d 4d 08             	lea    0x8(%ebp),%ecx
477891:	51                   	push   %ecx
477892:	89 47 08             	mov    %eax,0x8(%edi)
477895:	8b 06                	mov    (%esi),%eax
477897:	6a 00                	push   $0x0
477899:	8b ce                	mov    %esi,%ecx
47789b:	ff 50 64             	call   *0x64(%eax)
47789e:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
4778a2:	89 47 04             	mov    %eax,0x4(%edi)
4778a5:	5f                   	pop    %edi
4778a6:	5e                   	pop    %esi
4778a7:	74 09                	je     0x4778b2
4778a9:	ff 75 08             	push   0x8(%ebp)
4778ac:	ff 15 08 05 4b 00    	call   *0x4b0508
4778b2:	33 c0                	xor    %eax,%eax