4853fa:	c9                   	leave
4853fb:	c3                   	ret
4853fc:	8b ff                	mov    %edi,%edi
4853fe:	55                   	push   %ebp
4853ff:	8b ec                	mov    %esp,%ebp
485401:	83 ec 14             	sub    $0x14,%esp
485404:	53                   	push   %ebx
485405:	8b d9                	mov    %ecx,%ebx
485407:	57                   	push   %edi
485408:	89 5d ec             	mov    %ebx,-0x14(%ebp)
48540b:	8b 03                	mov    (%ebx),%eax
48540d:	8b 38                	mov    (%eax),%edi
48540f:	85 ff                	test   %edi,%edi
485411:	75 08                	jne    0x48541b
485413:	83 c8 ff             	or     $0xffffffff,%eax
485416:	e9 b7 00 00 00       	jmp    0x4854d2
48541b:	8b 15 14 40 4c 00    	mov    0x4c4014,%edx
485421:	8b ca                	mov    %edx,%ecx
485423:	56                   	push   %esi
485424:	8b 37                	mov    (%edi),%esi
485426:	83 e1 1f             	and    $0x1f,%ecx
485429:	8b 7f 04             	mov    0x4(%edi),%edi
48542c:	33 f2                	xor    %edx,%esi
48542e:	33 fa                	xor    %edx,%edi
485430:	d3 ce                	ror    %cl,%esi
485432:	d3 cf                	ror    %cl,%edi
485434:	85 f6                	test   %esi,%esi
485436:	0f 84 93 00 00 00    	je     0x4854cf
48543c:	83 fe ff             	cmp    $0xffffffff,%esi
48543f:	0f 84 8a 00 00 00    	je     0x4854cf
485445:	89 55 fc             	mov    %edx,-0x4(%ebp)
485448:	89 7d f4             	mov    %edi,-0xc(%ebp)
48544b:	89 75 f8             	mov    %esi,-0x8(%ebp)
48544e:	83 ef 04             	sub    $0x4,%edi
485451:	3b fe                	cmp    %esi,%edi
485453:	72 54                	jb     0x4854a9
485455:	8b 07                	mov    (%edi),%eax
485457:	3b 45 fc             	cmp    -0x4(%ebp),%eax
48545a:	74 f2                	je     0x48544e
48545c:	33 c2                	xor    %edx,%eax
48545e:	8b 55 fc             	mov    -0x4(%ebp),%edx
485461:	d3 c8                	ror    %cl,%eax
485463:	8b c8                	mov    %eax,%ecx
485465:	89 17                	mov    %edx,(%edi)
485467:	89 45 f0             	mov    %eax,-0x10(%ebp)
48546a:	ff 15 d4 e2 49 00    	call   *0x49e2d4
485470:	ff 55 f0             	call   *-0x10(%ebp)
485473:	8b 03                	mov    (%ebx),%eax
485475:	8b 15 14 40 4c 00    	mov    0x4c4014,%edx
48547b:	8b ca                	mov    %edx,%ecx
48547d:	83 e1 1f             	and    $0x1f,%ecx
485480:	8b 00                	mov    (%eax),%eax
485482:	8b 18                	mov    (%eax),%ebx
485484:	8b 40 04             	mov    0x4(%eax),%eax
485487:	33 da                	xor    %edx,%ebx
485489:	d3 cb                	ror    %cl,%ebx
48548b:	33 c2                	xor    %edx,%eax
48548d:	d3 c8                	ror    %cl,%eax
48548f:	3b 5d f8             	cmp    -0x8(%ebp),%ebx
485492:	89 5d f0             	mov    %ebx,-0x10(%ebp)
485495:	8b 5d ec             	mov    -0x14(%ebp),%ebx
485498:	75 05                	jne    0x48549f
48549a:	3b 45 f4             	cmp    -0xc(%ebp),%eax
48549d:	74 af                	je     0x48544e
48549f:	8b 75 f0             	mov    -0x10(%ebp),%esi
4854a2:	8b f8                	mov    %eax,%edi
4854a4:	89 45 f4             	mov    %eax,-0xc(%ebp)
4854a7:	eb a2                	jmp    0x48544b
4854a9:	83 fe ff             	cmp    $0xffffffff,%esi
4854ac:	74 0d                	je     0x4854bb
4854ae:	56                   	push   %esi
4854af:	e8 44 03 00 00       	call   0x4857f8
4854b4:	8b 15 14 40 4c 00    	mov    0x4c4014,%edx
4854ba:	59                   	pop    %ecx
4854bb:	8b 03                	mov    (%ebx),%eax
4854bd:	8b 00                	mov    (%eax),%eax
4854bf:	89 10                	mov    %edx,(%eax)
4854c1:	8b 03                	mov    (%ebx),%eax
4854c3:	8b 00                	mov    (%eax),%eax
4854c5:	89 50 04             	mov    %edx,0x4(%eax)
4854c8:	8b 03                	mov    (%ebx),%eax
4854ca:	8b 00                	mov    (%eax),%eax
4854cc:	89 50 08             	mov    %edx,0x8(%eax)
4854cf:	33 c0                	xor    %eax,%eax
4854d1:	5e                   	pop    %esi
4854d2:	5f                   	pop    %edi
4854d3:	5b                   	pop    %ebx
4854d4:	c9                   	leave
4854d5:	c3                   	ret
4854d6:	8b ff                	mov    %edi,%edi
4854d8:	55                   	push   %ebp
4854d9:	8b ec                	mov    %esp,%ebp
4854db:	ff 75 08             	push   0x8(%ebp)
4854de:	68 d0 87 4c 00       	push   $0x4c87d0
4854e3:	e8 6b 00 00 00       	call   0x485553
4854e8:	59                   	pop    %ecx
4854e9:	59                   	pop    %ecx
4854ea:	5d                   	pop    %ebp
4854eb:	c3                   	ret
4854ec:	6a 10                	push   $0x10
4854ee:	b8 74 cf 49 00       	mov    $0x49cf74,%eax
4854f3:	e8 e5 4b fe ff       	call   0x46a0dd
4854f8:	8d 45 08             	lea    0x8(%ebp),%eax
4854fb:	89 45 e8             	mov    %eax,-0x18(%ebp)
4854fe:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
485502:	8d 4d f3             	lea    -0xd(%ebp),%ecx
485505:	6a 02                	push   $0x2
485507:	58                   	pop    %eax
485508:	89 45 ec             	mov    %eax,-0x14(%ebp)
48550b:	89 45 e4             	mov    %eax,-0x1c(%ebp)
48550e:	8d 45 ec             	lea    -0x14(%ebp),%eax
485511:	50                   	push   %eax
485512:	8d 45 e8             	lea    -0x18(%ebp),%eax
485515:	50                   	push   %eax
485516:	8d 45 e4             	lea    -0x1c(%ebp),%eax
485519:	50                   	push   %eax
48551a:	e8 25 fd ff ff       	call   0x485244
48551f:	e8 a5 4b fe ff       	call   0x46a0c9
485524:	c3                   	ret
485525:	cc                   	int3
485526:	cc                   	int3
485527:	cc                   	int3
485528:	cc                   	int3
485529:	cc                   	int3
48552a:	8b ff                	mov    %edi,%edi
48552c:	55                   	push   %ebp
48552d:	8b ec                	mov    %esp,%ebp
48552f:	8b 4d 08             	mov    0x8(%ebp),%ecx
485532:	85 c9                	test   %ecx,%ecx
485534:	75 05                	jne    0x48553b
485536:	83 c8 ff             	or     $0xffffffff,%eax
485539:	5d                   	pop    %ebp
48553a:	c3                   	ret
48553b:	8b 01                	mov    (%ecx),%eax
48553d:	3b 41 08             	cmp    0x8(%ecx),%eax
485540:	75 0d                	jne    0x48554f
485542:	a1 14 40 4c 00       	mov    0x4c4014,%eax
485547:	89 01                	mov    %eax,(%ecx)
485549:	89 41 04             	mov    %eax,0x4(%ecx)
48554c:	89 41 08             	mov    %eax,0x8(%ecx)
48554f:	33 c0                	xor    %eax,%eax
485551:	5d                   	pop    %ebp
485552:	c3                   	ret
485553:	8b ff                	mov    %edi,%edi
485555:	55                   	push   %ebp
485556:	8b ec                	mov    %esp,%ebp
485558:	83 ec 14             	sub    $0x14,%esp
48555b:	8d 45 08             	lea    0x8(%ebp),%eax
48555e:	89 45 ec             	mov    %eax,-0x14(%ebp)
485561:	8d 4d ff             	lea    -0x1(%ebp),%ecx
485564:	6a 02                	push   $0x2
485566:	8d 45 0c             	lea    0xc(%ebp),%eax
485569:	89 45 f0             	mov    %eax,-0x10(%ebp)
48556c:	58                   	pop    %eax
48556d:	89 45 f8             	mov    %eax,-0x8(%ebp)
485570:	89 45 f4             	mov    %eax,-0xc(%ebp)
485573:	8d 45 f8             	lea    -0x8(%ebp),%eax
485576:	50                   	push   %eax
485577:	8d 45 ec             	lea    -0x14(%ebp),%eax
48557a:	50                   	push   %eax
48557b:	8d 45 f4             	lea    -0xc(%ebp),%eax
48557e:	50                   	push   %eax
48557f:	e8 1b fd ff ff       	call   0x48529f
485584:	c9                   	leave
485585:	c3                   	ret
485586:	cc                   	int3
485587:	cc                   	int3
485588:	cc                   	int3
485589:	cc                   	int3
48558a:	cc                   	int3
48558b:	cc                   	int3
48558c:	cc                   	int3
48558d:	cc                   	int3
48558e:	cc                   	int3
48558f:	cc                   	int3
485590:	c7 05 fc 87 4c 00 d0 	movl   $0x4c41d0,0x4c87fc
485597:	41 4c 00
48559a:	b0 01                	mov    $0x1,%al
48559c:	c3                   	ret
48559d:	cc                   	int3
48559e:	cc                   	int3
48559f:	cc                   	int3
4855a0:	68 d0 87 4c 00       	push   $0x4c87d0
4855a5:	e8 80 ff ff ff       	call   0x48552a
4855aa:	c7 04 24 dc 87 4c 00 	movl   $0x4c87dc,(%esp)
4855b1:	e8 74 ff ff ff       	call   0x48552a
4855b6:	59                   	pop    %ecx
4855b7:	b0 01                	mov    $0x1,%al
4855b9:	c3                   	ret
4855ba:	cc                   	int3
4855bb:	cc                   	int3
4855bc:	cc                   	int3
4855bd:	cc                   	int3
4855be:	cc                   	int3
4855bf:	cc                   	int3
4855c0:	e8 c1 de ff ff       	call   0x483486
4855c5:	b0 01                	mov    $0x1,%al
4855c7:	c3                   	ret
4855c8:	cc                   	int3
4855c9:	cc                   	int3
4855ca:	cc                   	int3
4855cb:	cc                   	int3
4855cc:	cc                   	int3
4855cd:	cc                   	int3
4855ce:	cc                   	int3
4855cf:	cc                   	int3
4855d0:	8b ff                	mov    %edi,%edi
4855d2:	56                   	push   %esi
4855d3:	8b 35 14 40 4c 00    	mov    0x4c4014,%esi
4855d9:	56                   	push   %esi
4855da:	e8 7f 3f ff ff       	call   0x47955e
4855df:	56                   	push   %esi
4855e0:	e8 68 fb ff ff       	call   0x48514d
4855e5:	56                   	push   %esi
4855e6:	e8 bd 93 00 00       	call   0x48e9a8
4855eb:	56                   	push   %esi
4855ec:	e8 71 d8 ff ff       	call   0x482e62
4855f1:	56                   	push   %esi
4855f2:	e8 05 e2 ff ff       	call   0x4837fc
4855f7:	83 c4 14             	add    $0x14,%esp
4855fa:	b0 01                	mov    $0x1,%al
4855fc:	5e                   	pop    %esi
4855fd:	c3                   	ret
4855fe:	cc                   	int3
4855ff:	cc                   	int3
485600:	6a 00                	push   $0x0
485602:	e8 54 7e fe ff       	call   0x46d45b
485607:	59                   	pop    %ecx
485608:	c3                   	ret
485609:	cc                   	int3
48560a:	cc                   	int3
48560b:	cc                   	int3
48560c:	cc                   	int3
48560d:	cc                   	int3
48560e:	cc                   	int3
48560f:	cc                   	int3
485610:	8b ff                	mov    %edi,%edi
485612:	55                   	push   %ebp
485613:	8b ec                	mov    %esp,%ebp
485615:	51                   	push   %ecx
485616:	68 d8 8b 4c 00       	push   $0x4c8bd8
48561b:	8d 4d ff             	lea    -0x1(%ebp),%ecx
48561e:	e8 5d 00 00 00       	call   0x485680
485623:	b0 01                	mov    $0x1,%al
485625:	c9                   	leave
485626:	c3                   	ret
485627:	cc                   	int3
485628:	cc                   	int3
485629:	cc                   	int3
48562a:	cc                   	int3
48562b:	cc                   	int3
48562c:	cc                   	int3
48562d:	cc                   	int3
48562e:	cc                   	int3
48562f:	cc                   	int3
485630:	8b ff                	mov    %edi,%edi
485632:	56                   	push   %esi
485633:	ff 35 f4 87 4c 00    	push   0x4c87f4
485639:	e8 ba 01 00 00       	call   0x4857f8
48563e:	ff 35 f8 87 4c 00    	push   0x4c87f8
485644:	33 f6                	xor    %esi,%esi
485646:	89 35 f4 87 4c 00    	mov    %esi,0x4c87f4
48564c:	e8 a7 01 00 00       	call   0x4857f8
485651:	ff 35 b0 87 4c 00    	push   0x4c87b0
485657:	89 35 f8 87 4c 00    	mov    %esi,0x4c87f8
48565d:	e8 96 01 00 00       	call   0x4857f8
485662:	ff 35 b4 87 4c 00    	push   0x4c87b4
485668:	89 35 b0 87 4c 00    	mov    %esi,0x4c87b0
48566e:	e8 85 01 00 00       	call   0x4857f8
485673:	83 c4 10             	add    $0x10,%esp
485676:	89 35 b4 87 4c 00    	mov    %esi,0x4c87b4
48567c:	b0 01                	mov    $0x1,%al
48567e:	5e                   	pop    %esi
48567f:	c3                   	ret
485680:	8b ff                	mov    %edi,%edi
485682:	55                   	push   %ebp
485683:	8b ec                	mov    %esp,%ebp
485685:	56                   	push   %esi
485686:	8b 75 08             	mov    0x8(%ebp),%esi
485689:	83 c9 ff             	or     $0xffffffff,%ecx
48568c:	8b 06                	mov    (%esi),%eax
48568e:	f0 0f c1 08          	lock xadd %ecx,(%eax)
485692:	75 15                	jne    0x4856a9
485694:	57                   	push   %edi
485695:	bf 90 45 4c 00       	mov    $0x4c4590,%edi
48569a:	39 3e                	cmp    %edi,(%esi)
48569c:	74 0a                	je     0x4856a8
48569e:	ff 36                	push   (%esi)
4856a0:	e8 53 01 00 00       	call   0x4857f8
4856a5:	59                   	pop    %ecx
4856a6:	89 3e                	mov    %edi,(%esi)
4856a8:	5f                   	pop    %edi
4856a9:	5e                   	pop    %esi
4856aa:	5d                   	pop    %ebp
4856ab:	c2 04 00             	ret    $0x4
4856ae:	68 20 33 4a 00       	push   $0x4a3320
4856b3:	68 a0 32 4a 00       	push   $0x4a32a0
4856b8:	e8 5d cf 00 00       	call   0x49261a
4856bd:	59                   	pop    %ecx
4856be:	59                   	pop    %ecx
4856bf:	c3                   	ret
4856c0:	8b ff                	mov    %edi,%edi
4856c2:	55                   	push   %ebp
4856c3:	8b ec                	mov    %esp,%ebp
4856c5:	80 7d 08 00          	cmpb   $0x0,0x8(%ebp)
4856c9:	74 12                	je     0x4856dd
4856cb:	83 3d 04 84 4c 00 00 	cmpl   $0x0,0x4c8404
4856d2:	74 05                	je     0x4856d9
4856d4:	e8 da 42 ff ff       	call   0x4799b3
4856d9:	b0 01                	mov    $0x1,%al
4856db:	5d                   	pop    %ebp
4856dc:	c3                   	ret
4856dd:	68 20 33 4a 00       	push   $0x4a3320
4856e2:	68 a0 32 4a 00       	push   $0x4a32a0
4856e7:	e8 96 cf 00 00       	call   0x492682
4856ec:	59                   	pop    %ecx
4856ed:	59                   	pop    %ecx
4856ee:	5d                   	pop    %ebp
4856ef:	c3                   	ret
4856f0:	8b ff                	mov    %edi,%edi
4856f2:	55                   	push   %ebp
4856f3:	8b ec                	mov    %esp,%ebp
4856f5:	8b 4d 10             	mov    0x10(%ebp),%ecx
4856f8:	8b 45 0c             	mov    0xc(%ebp),%eax
4856fb:	81 e1 ff ff f7 ff    	and    $0xfff7ffff,%ecx
485701:	23 c1                	and    %ecx,%eax
485703:	56                   	push   %esi
485704:	8b 75 08             	mov    0x8(%ebp),%esi
485707:	a9 e0 fc f0 fc       	test   $0xfcf0fce0,%eax
48570c:	74 24                	je     0x485732
48570e:	85 f6                	test   %esi,%esi
485710:	74 0d                	je     0x48571f
485712:	6a 00                	push   $0x0
485714:	6a 00                	push   $0x0
485716:	e8 1d d1 00 00       	call   0x492838
48571b:	59                   	pop    %ecx
48571c:	59                   	pop    %ecx
48571d:	89 06                	mov    %eax,(%esi)
48571f:	e8 11 48 ff ff       	call   0x479f35
485724:	6a 16                	push   $0x16
485726:	5e                   	pop    %esi
485727:	89 30                	mov    %esi,(%eax)
485729:	e8 f3 3e ff ff       	call   0x479621
48572e:	8b c6                	mov    %esi,%eax
485730:	eb 1a                	jmp    0x48574c
485732:	51                   	push   %ecx
485733:	ff 75 0c             	push   0xc(%ebp)
485736:	85 f6                	test   %esi,%esi
485738:	74 09                	je     0x485743
48573a:	e8 f9 d0 00 00       	call   0x492838