47433f:	8b 47 04             	mov    0x4(%edi),%eax
474342:	89 40 04             	mov    %eax,0x4(%eax)
474345:	8b 47 04             	mov    0x4(%edi),%eax
474348:	83 67 08 00          	andl   $0x0,0x8(%edi)
47434c:	89 00                	mov    %eax,(%eax)
47434e:	8b 47 04             	mov    0x4(%edi),%eax
474351:	89 40 08             	mov    %eax,0x8(%eax)
474354:	8b 47 04             	mov    0x4(%edi),%eax
474357:	8b 08                	mov    (%eax),%ecx
474359:	8b 45 08             	mov    0x8(%ebp),%eax
47435c:	89 08                	mov    %ecx,(%eax)
47435e:	eb 22                	jmp    0x474382
474360:	8d 4d 0c             	lea    0xc(%ebp),%ecx
474363:	e8 c6 f7 ff ff       	call   0x473b2e
474368:	56                   	push   %esi
474369:	8d 44 24 10          	lea    0x10(%esp),%eax
47436d:	8b cf                	mov    %edi,%ecx
47436f:	50                   	push   %eax
474370:	e8 f1 07 00 00       	call   0x474b66
474375:	8b 75 0c             	mov    0xc(%ebp),%esi
474378:	3b 75 10             	cmp    0x10(%ebp),%esi
47437b:	75 e3                	jne    0x474360
47437d:	8b 45 08             	mov    0x8(%ebp),%eax
474380:	89 30                	mov    %esi,(%eax)
474382:	5f                   	pop    %edi
474383:	5e                   	pop    %esi
474384:	8b e5                	mov    %ebp,%esp
474386:	5d                   	pop    %ebp
474387:	c2 0c 00             	ret    $0xc
47438a:	8b ff                	mov    %edi,%edi
47438c:	55                   	push   %ebp
47438d:	8b ec                	mov    %esp,%ebp
47438f:	83 ec 0c             	sub    $0xc,%esp
474392:	53                   	push   %ebx
474393:	8b 59 04             	mov    0x4(%ecx),%ebx
474396:	b0 01                	mov    $0x1,%al
474398:	56                   	push   %esi
474399:	57                   	push   %edi
47439a:	89 4d f4             	mov    %ecx,-0xc(%ebp)
47439d:	8b 73 04             	mov    0x4(%ebx),%esi
4743a0:	88 45 f8             	mov    %al,-0x8(%ebp)
4743a3:	80 7e 2d 00          	cmpb   $0x0,0x2d(%esi)
4743a7:	75 25                	jne    0x4743ce
4743a9:	8d 46 0c             	lea    0xc(%esi),%eax
4743ac:	8b de                	mov    %esi,%ebx
4743ae:	50                   	push   %eax
4743af:	ff 75 0c             	push   0xc(%ebp)
4743b2:	e8 05 fb ff ff       	call   0x473ebc
4743b7:	88 45 f8             	mov    %al,-0x8(%ebp)
4743ba:	84 c0                	test   %al,%al
4743bc:	74 04                	je     0x4743c2
4743be:	8b 36                	mov    (%esi),%esi
4743c0:	eb 03                	jmp    0x4743c5
4743c2:	8b 76 08             	mov    0x8(%esi),%esi
4743c5:	80 7e 2d 00          	cmpb   $0x0,0x2d(%esi)
4743c9:	74 de                	je     0x4743a9
4743cb:	8b 4d f4             	mov    -0xc(%ebp),%ecx
4743ce:	8b f3                	mov    %ebx,%esi
4743d0:	89 75 fc             	mov    %esi,-0x4(%ebp)
4743d3:	84 c0                	test   %al,%al
4743d5:	74 2e                	je     0x474405
4743d7:	8b 41 04             	mov    0x4(%ecx),%eax
4743da:	3b 18                	cmp    (%eax),%ebx
4743dc:	75 1c                	jne    0x4743fa
4743de:	ff 75 0c             	push   0xc(%ebp)
4743e1:	8d 45 f4             	lea    -0xc(%ebp),%eax
4743e4:	53                   	push   %ebx
4743e5:	6a 01                	push   $0x1
4743e7:	50                   	push   %eax
4743e8:	e8 d4 fd ff ff       	call   0x4741c1
4743ed:	8b 08                	mov    (%eax),%ecx
4743ef:	8b 45 08             	mov    0x8(%ebp),%eax
4743f2:	89 08                	mov    %ecx,(%eax)
4743f4:	c6 40 04 01          	movb   $0x1,0x4(%eax)
4743f8:	eb 43                	jmp    0x47443d
4743fa:	8d 4d fc             	lea    -0x4(%ebp),%ecx
4743fd:	e8 e6 fa ff ff       	call   0x473ee8
474402:	8b 75 fc             	mov    -0x4(%ebp),%esi
474405:	ff 75 0c             	push   0xc(%ebp)
474408:	8b 7d 08             	mov    0x8(%ebp),%edi
47440b:	8d 46 0c             	lea    0xc(%esi),%eax
47440e:	50                   	push   %eax
47440f:	e8 a8 fa ff ff       	call   0x473ebc
474414:	84 c0                	test   %al,%al
474416:	74 1d                	je     0x474435
474418:	ff 75 0c             	push   0xc(%ebp)
47441b:	8b 4d f4             	mov    -0xc(%ebp),%ecx
47441e:	8d 45 f8             	lea    -0x8(%ebp),%eax
474421:	53                   	push   %ebx
474422:	ff 75 f8             	push   -0x8(%ebp)
474425:	50                   	push   %eax
474426:	e8 96 fd ff ff       	call   0x4741c1
47442b:	c6 47 04 01          	movb   $0x1,0x4(%edi)
47442f:	8b 08                	mov    (%eax),%ecx
474431:	89 0f                	mov    %ecx,(%edi)
474433:	eb 06                	jmp    0x47443b
474435:	89 37                	mov    %esi,(%edi)
474437:	c6 47 04 00          	movb   $0x0,0x4(%edi)
47443b:	8b c7                	mov    %edi,%eax
47443d:	5f                   	pop    %edi
47443e:	5e                   	pop    %esi
47443f:	5b                   	pop    %ebx
474440:	c9                   	leave
474441:	c2 08 00             	ret    $0x8
474444:	8b ff                	mov    %edi,%edi
474446:	55                   	push   %ebp
474447:	8b ec                	mov    %esp,%ebp
474449:	51                   	push   %ecx
47444a:	8b d1                	mov    %ecx,%edx
47444c:	8b 02                	mov    (%edx),%eax
47444e:	80 78 45 00          	cmpb   $0x0,0x45(%eax)
474452:	74 07                	je     0x47445b
474454:	8b 40 08             	mov    0x8(%eax),%eax
474457:	89 02                	mov    %eax,(%edx)
474459:	eb 3f                	jmp    0x47449a
47445b:	8b 08                	mov    (%eax),%ecx
47445d:	80 79 45 00          	cmpb   $0x0,0x45(%ecx)
474461:	74 3d                	je     0x4744a0
474463:	8b 48 04             	mov    0x4(%eax),%ecx
474466:	80 79 45 00          	cmpb   $0x0,0x45(%ecx)
47446a:	75 26                	jne    0x474492
47446c:	56                   	push   %esi
47446d:	57                   	push   %edi
47446e:	8b f0                	mov    %eax,%esi
474470:	8b f8                	mov    %eax,%edi
474472:	53                   	push   %ebx
474473:	8b d9                	mov    %ecx,%ebx
474475:	89 4d fc             	mov    %ecx,-0x4(%ebp)
474478:	8b c7                	mov    %edi,%eax
47447a:	3b 31                	cmp    (%ecx),%esi
47447c:	75 11                	jne    0x47448f
47447e:	89 0a                	mov    %ecx,(%edx)
474480:	8b f1                	mov    %ecx,%esi
474482:	8b 49 04             	mov    0x4(%ecx),%ecx
474485:	8b fe                	mov    %esi,%edi
474487:	8b c3                	mov    %ebx,%eax
474489:	80 79 45 00          	cmpb   $0x0,0x45(%ecx)
47448d:	74 e4                	je     0x474473
47448f:	5b                   	pop    %ebx
474490:	5f                   	pop    %edi
474491:	5e                   	pop    %esi
474492:	80 78 45 00          	cmpb   $0x0,0x45(%eax)
474496:	75 02                	jne    0x47449a
474498:	89 0a                	mov    %ecx,(%edx)
47449a:	8b c2                	mov    %edx,%eax
47449c:	c9                   	leave
47449d:	c3                   	ret
47449e:	8b c8                	mov    %eax,%ecx
4744a0:	8b 41 08             	mov    0x8(%ecx),%eax
4744a3:	80 78 45 00          	cmpb   $0x0,0x45(%eax)
4744a7:	74 f5                	je     0x47449e
4744a9:	eb ed                	jmp    0x474498
4744ab:	6a 4c                	push   $0x4c
4744ad:	b8 be 12 49 00       	mov    $0x4912be,%eax
4744b2:	e8 4f c0 01 00       	call   0x490506
4744b7:	8b f1                	mov    %ecx,%esi
4744b9:	81 7e 08 23 49 92 04 	cmpl   $0x4924923,0x8(%esi)
4744c0:	8b 45 08             	mov    0x8(%ebp),%eax
4744c3:	8b 7d 10             	mov    0x10(%ebp),%edi
4744c6:	89 45 a8             	mov    %eax,-0x58(%ebp)
4744c9:	8b 45 14             	mov    0x14(%ebp),%eax
4744cc:	0f 83 06 01 00 00    	jae    0x4745d8
4744d2:	51                   	push   %ecx
4744d3:	50                   	push   %eax
4744d4:	ff 76 04             	push   0x4(%esi)
4744d7:	57                   	push   %edi
4744d8:	ff 76 04             	push   0x4(%esi)
4744db:	e8 3e 09 00 00       	call   0x474e1e
4744e0:	ff 46 08             	incl   0x8(%esi)
4744e3:	8b d8                	mov    %eax,%ebx
4744e5:	8b 46 04             	mov    0x4(%esi),%eax
4744e8:	3b f8                	cmp    %eax,%edi
4744ea:	75 0d                	jne    0x4744f9
4744ec:	89 58 04             	mov    %ebx,0x4(%eax)
4744ef:	8b 46 04             	mov    0x4(%esi),%eax
4744f2:	89 18                	mov    %ebx,(%eax)
4744f4:	8b 46 04             	mov    0x4(%esi),%eax
4744f7:	eb 1e                	jmp    0x474517
4744f9:	80 7d 0c 00          	cmpb   $0x0,0xc(%ebp)
4744fd:	74 0d                	je     0x47450c
4744ff:	89 1f                	mov    %ebx,(%edi)
474501:	8b 46 04             	mov    0x4(%esi),%eax
474504:	3b 38                	cmp    (%eax),%edi
474506:	75 12                	jne    0x47451a
474508:	89 18                	mov    %ebx,(%eax)
47450a:	eb 0e                	jmp    0x47451a
47450c:	89 5f 08             	mov    %ebx,0x8(%edi)
47450f:	8b 46 04             	mov    0x4(%esi),%eax
474512:	3b 78 08             	cmp    0x8(%eax),%edi
474515:	75 03                	jne    0x47451a
474517:	89 58 08             	mov    %ebx,0x8(%eax)
47451a:	8b fb                	mov    %ebx,%edi
47451c:	8d 4b 04             	lea    0x4(%ebx),%ecx
47451f:	e9 91 00 00 00       	jmp    0x4745b5
474524:	8b 50 04             	mov    0x4(%eax),%edx
474527:	8b 12                	mov    (%edx),%edx
474529:	3b c2                	cmp    %edx,%eax
47452b:	75 3b                	jne    0x474568
47452d:	8b 50 04             	mov    0x4(%eax),%edx
474530:	8b 52 08             	mov    0x8(%edx),%edx
474533:	80 7a 44 00          	cmpb   $0x0,0x44(%edx)
474537:	74 35                	je     0x47456e
474539:	3b 78 08             	cmp    0x8(%eax),%edi
47453c:	75 0a                	jne    0x474548
47453e:	8b f8                	mov    %eax,%edi
474540:	8b ce                	mov    %esi,%ecx
474542:	57                   	push   %edi
474543:	e8 ae 09 00 00       	call   0x474ef6
474548:	8b 47 04             	mov    0x4(%edi),%eax
47454b:	8b ce                	mov    %esi,%ecx
47454d:	c6 40 44 01          	movb   $0x1,0x44(%eax)
474551:	8b 47 04             	mov    0x4(%edi),%eax
474554:	8b 40 04             	mov    0x4(%eax),%eax
474557:	c6 40 44 00          	movb   $0x0,0x44(%eax)
47455b:	8b 47 04             	mov    0x4(%edi),%eax
47455e:	ff 70 04             	push   0x4(%eax)
474561:	e8 47 09 00 00       	call   0x474ead
474566:	eb 4a                	jmp    0x4745b2
474568:	80 7a 44 00          	cmpb   $0x0,0x44(%edx)
47456c:	75 18                	jne    0x474586
47456e:	c6 40 44 01          	movb   $0x1,0x44(%eax)
474572:	c6 42 44 01          	movb   $0x1,0x44(%edx)
474576:	8b 01                	mov    (%ecx),%eax
474578:	8b 40 04             	mov    0x4(%eax),%eax
47457b:	c6 40 44 00          	movb   $0x0,0x44(%eax)
47457f:	8b 01                	mov    (%ecx),%eax
474581:	8b 78 04             	mov    0x4(%eax),%edi
474584:	eb 2c                	jmp    0x4745b2
474586:	3b 38                	cmp    (%eax),%edi
474588:	75 0a                	jne    0x474594
47458a:	8b f8                	mov    %eax,%edi
47458c:	8b ce                	mov    %esi,%ecx
47458e:	57                   	push   %edi
47458f:	e8 19 09 00 00       	call   0x474ead
474594:	8b 47 04             	mov    0x4(%edi),%eax
474597:	8b ce                	mov    %esi,%ecx
474599:	c6 40 44 01          	movb   $0x1,0x44(%eax)
47459d:	8b 47 04             	mov    0x4(%edi),%eax
4745a0:	8b 40 04             	mov    0x4(%eax),%eax
4745a3:	c6 40 44 00          	movb   $0x0,0x44(%eax)
4745a7:	8b 47 04             	mov    0x4(%edi),%eax
4745aa:	ff 70 04             	push   0x4(%eax)
4745ad:	e8 44 09 00 00       	call   0x474ef6
4745b2:	8d 4f 04             	lea    0x4(%edi),%ecx
4745b5:	8b 01                	mov    (%ecx),%eax
4745b7:	80 78 44 00          	cmpb   $0x0,0x44(%eax)
4745bb:	0f 84 63 ff ff ff    	je     0x474524
4745c1:	8b 4e 04             	mov    0x4(%esi),%ecx
4745c4:	8b 45 a8             	mov    -0x58(%ebp),%eax
4745c7:	8b 49 04             	mov    0x4(%ecx),%ecx
4745ca:	c6 41 44 01          	movb   $0x1,0x44(%ecx)
4745ce:	89 18                	mov    %ebx,(%eax)
4745d0:	e8 e0 be 01 00       	call   0x4904b5
4745d5:	c2 10 00             	ret    $0x10
4745d8:	68 c0 f9 40 00       	push   $0x40f9c0
4745dd:	8d 4d d4             	lea    -0x2c(%ebp),%ecx
4745e0:	e8 a7 78 fa ff       	call   0x41be8c
4745e5:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
4745e9:	8d 45 d4             	lea    -0x2c(%ebp),%eax
4745ec:	50                   	push   %eax
4745ed:	8d 4d ac             	lea    -0x54(%ebp),%ecx
4745f0:	e8 75 73 fa ff       	call   0x41b96a
4745f5:	68 c8 ea 49 00       	push   $0x49eac8
4745fa:	8d 45 ac             	lea    -0x54(%ebp),%eax
4745fd:	50                   	push   %eax
4745fe:	e8 98 be 01 00       	call   0x49049b
474603:	cc                   	int3
474604:	8b ff                	mov    %edi,%edi
474606:	55                   	push   %ebp
474607:	8b ec                	mov    %esp,%ebp
474609:	83 e4 f8             	and    $0xfffffff8,%esp
47460c:	51                   	push   %ecx
47460d:	51                   	push   %ecx
47460e:	56                   	push   %esi
47460f:	8b 75 0c             	mov    0xc(%ebp),%esi
474612:	57                   	push   %edi
474613:	8b f9                	mov    %ecx,%edi
474615:	8b 47 04             	mov    0x4(%edi),%eax
474618:	3b 30                	cmp    (%eax),%esi
47461a:	75 46                	jne    0x474662
47461c:	39 45 10             	cmp    %eax,0x10(%ebp)
47461f:	75 41                	jne    0x474662
474621:	ff 70 04             	push   0x4(%eax)
474624:	e8 57 0c 00 00       	call   0x475280
474629:	8b 47 04             	mov    0x4(%edi),%eax
47462c:	89 40 04             	mov    %eax,0x4(%eax)
47462f:	8b 47 04             	mov    0x4(%edi),%eax
474632:	83 67 08 00          	andl   $0x0,0x8(%edi)
474636:	89 00                	mov    %eax,(%eax)
474638:	8b 47 04             	mov    0x4(%edi),%eax
47463b:	89 40 08             	mov    %eax,0x8(%eax)
47463e:	8b 47 04             	mov    0x4(%edi),%eax
474641:	8b 08                	mov    (%eax),%ecx
474643:	8b 45 08             	mov    0x8(%ebp),%eax
474646:	89 08                	mov    %ecx,(%eax)
474648:	eb 22                	jmp    0x47466c
47464a:	8d 4d 0c             	lea    0xc(%ebp),%ecx
47464d:	e8 a3 f6 ff ff       	call   0x473cf5
474652:	56                   	push   %esi
474653:	8d 44 24 10          	lea    0x10(%esp),%eax
474657:	8b cf                	mov    %edi,%ecx
474659:	50                   	push   %eax
47465a:	e8 de 08 00 00       	call   0x474f3d
47465f:	8b 75 0c             	mov    0xc(%ebp),%esi
474662:	3b 75 10             	cmp    0x10(%ebp),%esi
474665:	75 e3                	jne    0x47464a
474667:	8b 45 08             	mov    0x8(%ebp),%eax
47466a:	89 30                	mov    %esi,(%eax)
47466c:	5f                   	pop    %edi
47466d:	5e                   	pop    %esi
47466e:	8b e5                	mov    %ebp,%esp
474670:	5d                   	pop    %ebp
474671:	c2 0c 00             	ret    $0xc
474674:	8b ff                	mov    %edi,%edi
474676:	55                   	push   %ebp
474677:	8b ec                	mov    %esp,%ebp
474679:	83 ec 0c             	sub    $0xc,%esp
47467c:	53                   	push   %ebx
47467d:	8b 59 04             	mov    0x4(%ecx),%ebx
474680:	b0 01                	mov    $0x1,%al
474682:	56                   	push   %esi
474683:	57                   	push   %edi
474684:	89 4d f4             	mov    %ecx,-0xc(%ebp)
474687:	8b 73 04             	mov    0x4(%ebx),%esi
47468a:	88 45 f8             	mov    %al,-0x8(%ebp)
47468d:	80 7e 45 00          	cmpb   $0x0,0x45(%esi)
474691:	75 25                	jne    0x4746b8
474693:	8d 46 0c             	lea    0xc(%esi),%eax
474696:	8b de                	mov    %esi,%ebx
474698:	50                   	push   %eax
474699:	ff 75 0c             	push   0xc(%ebp)
47469c:	e8 1b f8 ff ff       	call   0x473ebc
4746a1:	88 45 f8             	mov    %al,-0x8(%ebp)
4746a4:	84 c0                	test   %al,%al
4746a6:	74 04                	je     0x4746ac
4746a8:	8b 36                	mov    (%esi),%esi
4746aa:	eb 03                	jmp    0x4746af
4746ac:	8b 76 08             	mov    0x8(%esi),%esi
4746af:	80 7e 45 00          	cmpb   $0x0,0x45(%esi)
4746b3:	74 de                	je     0x474693
4746b5:	8b 4d f4             	mov    -0xc(%ebp),%ecx
4746b8:	8b f3                	mov    %ebx,%esi
4746ba:	89 75 fc             	mov    %esi,-0x4(%ebp)
4746bd:	84 c0                	test   %al,%al
4746bf:	74 2e                	je     0x4746ef
4746c1:	8b 41 04             	mov    0x4(%ecx),%eax
4746c4:	3b 18                	cmp    (%eax),%ebx
4746c6:	75 1c                	jne    0x4746e4
4746c8:	ff 75 0c             	push   0xc(%ebp)
4746cb:	8d 45 f4             	lea    -0xc(%ebp),%eax