485233:	5f                   	pop    %edi
485234:	5e                   	pop    %esi
485235:	5b                   	pop    %ebx
485236:	c9                   	leave
485237:	c3                   	ret
485238:	8b 75 e4             	mov    -0x1c(%ebp),%esi
48523b:	6a 00                	push   $0x0
48523d:	e8 6f cc ff ff       	call   0x481eb1
485242:	59                   	pop    %ecx
485243:	c3                   	ret
485244:	6a 0c                	push   $0xc
485246:	68 d0 18 4c 00       	push   $0x4c18d0
48524b:	e8 f0 54 fe ff       	call   0x46a740
485250:	83 65 e4 00          	andl   $0x0,-0x1c(%ebp)
485254:	8b 45 08             	mov    0x8(%ebp),%eax
485257:	ff 30                	push   (%eax)
485259:	e8 03 cc ff ff       	call   0x481e61
48525e:	59                   	pop    %ecx
48525f:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
485263:	8b 4d 0c             	mov    0xc(%ebp),%ecx
485266:	e8 91 01 00 00       	call   0x4853fc
48526b:	8b f0                	mov    %eax,%esi
48526d:	89 75 e4             	mov    %esi,-0x1c(%ebp)
485270:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
485277:	e8 17 00 00 00       	call   0x485293
48527c:	8b c6                	mov    %esi,%eax
48527e:	8b 4d f0             	mov    -0x10(%ebp),%ecx
485281:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
485288:	59                   	pop    %ecx
485289:	5f                   	pop    %edi
48528a:	5e                   	pop    %esi
48528b:	5b                   	pop    %ebx
48528c:	c9                   	leave
48528d:	c2 0c 00             	ret    $0xc
485290:	8b 75 e4             	mov    -0x1c(%ebp),%esi
485293:	8b 45 10             	mov    0x10(%ebp),%eax
485296:	ff 30                	push   (%eax)
485298:	e8 14 cc ff ff       	call   0x481eb1
48529d:	59                   	pop    %ecx
48529e:	c3                   	ret
48529f:	6a 0c                	push   $0xc
4852a1:	68 b0 18 4c 00       	push   $0x4c18b0
4852a6:	e8 95 54 fe ff       	call   0x46a740
4852ab:	83 65 e4 00          	andl   $0x0,-0x1c(%ebp)
4852af:	8b 45 08             	mov    0x8(%ebp),%eax
4852b2:	ff 30                	push   (%eax)
4852b4:	e8 a8 cb ff ff       	call   0x481e61
4852b9:	59                   	pop    %ecx
4852ba:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
4852be:	8b 4d 0c             	mov    0xc(%ebp),%ecx
4852c1:	e8 34 00 00 00       	call   0x4852fa
4852c6:	8b f0                	mov    %eax,%esi
4852c8:	89 75 e4             	mov    %esi,-0x1c(%ebp)
4852cb:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
4852d2:	e8 17 00 00 00       	call   0x4852ee
4852d7:	8b c6                	mov    %esi,%eax
4852d9:	8b 4d f0             	mov    -0x10(%ebp),%ecx
4852dc:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
4852e3:	59                   	pop    %ecx
4852e4:	5f                   	pop    %edi
4852e5:	5e                   	pop    %esi
4852e6:	5b                   	pop    %ebx
4852e7:	c9                   	leave
4852e8:	c2 0c 00             	ret    $0xc
4852eb:	8b 75 e4             	mov    -0x1c(%ebp),%esi
4852ee:	8b 45 10             	mov    0x10(%ebp),%eax
4852f1:	ff 30                	push   (%eax)
4852f3:	e8 b9 cb ff ff       	call   0x481eb1
4852f8:	59                   	pop    %ecx
4852f9:	c3                   	ret
4852fa:	8b ff                	mov    %edi,%edi
4852fc:	55                   	push   %ebp
4852fd:	8b ec                	mov    %esp,%ebp
4852ff:	51                   	push   %ecx
485300:	51                   	push   %ecx
485301:	8b c1                	mov    %ecx,%eax
485303:	89 45 f8             	mov    %eax,-0x8(%ebp)
485306:	53                   	push   %ebx
485307:	56                   	push   %esi
485308:	8b 00                	mov    (%eax),%eax
48530a:	57                   	push   %edi
48530b:	8b 30                	mov    (%eax),%esi
48530d:	85 f6                	test   %esi,%esi
48530f:	0f 84 df 00 00 00    	je     0x4853f4
485315:	a1 14 40 4c 00       	mov    0x4c4014,%eax
48531a:	8b c8                	mov    %eax,%ecx
48531c:	8b 1e                	mov    (%esi),%ebx
48531e:	83 e1 1f             	and    $0x1f,%ecx
485321:	8b 7e 04             	mov    0x4(%esi),%edi
485324:	33 d8                	xor    %eax,%ebx
485326:	8b 76 08             	mov    0x8(%esi),%esi
485329:	33 f8                	xor    %eax,%edi
48532b:	33 f0                	xor    %eax,%esi
48532d:	d3 cf                	ror    %cl,%edi
48532f:	d3 ce                	ror    %cl,%esi
485331:	d3 cb                	ror    %cl,%ebx
485333:	3b fe                	cmp    %esi,%edi
485335:	75 7b                	jne    0x4853b2
485337:	2b f3                	sub    %ebx,%esi
485339:	b8 00 02 00 00       	mov    $0x200,%eax
48533e:	c1 fe 02             	sar    $0x2,%esi
485341:	3b f0                	cmp    %eax,%esi
485343:	77 02                	ja     0x485347
485345:	8b c6                	mov    %esi,%eax
485347:	8d 3c 30             	lea    (%eax,%esi,1),%edi
48534a:	85 ff                	test   %edi,%edi
48534c:	75 03                	jne    0x485351
48534e:	6a 20                	push   $0x20
485350:	5f                   	pop    %edi
485351:	3b fe                	cmp    %esi,%edi
485353:	72 1d                	jb     0x485372
485355:	6a 04                	push   $0x4
485357:	57                   	push   %edi
485358:	53                   	push   %ebx
485359:	e8 2d 04 00 00       	call   0x48578b
48535e:	6a 00                	push   $0x0
485360:	89 45 fc             	mov    %eax,-0x4(%ebp)
485363:	e8 90 04 00 00       	call   0x4857f8
485368:	8b 4d fc             	mov    -0x4(%ebp),%ecx
48536b:	83 c4 10             	add    $0x10,%esp
48536e:	85 c9                	test   %ecx,%ecx
485370:	75 20                	jne    0x485392
485372:	6a 04                	push   $0x4
485374:	8d 7e 04             	lea    0x4(%esi),%edi
485377:	57                   	push   %edi
485378:	53                   	push   %ebx
485379:	e8 0d 04 00 00       	call   0x48578b
48537e:	6a 00                	push   $0x0
485380:	89 45 fc             	mov    %eax,-0x4(%ebp)
485383:	e8 70 04 00 00       	call   0x4857f8
485388:	8b 4d fc             	mov    -0x4(%ebp),%ecx
48538b:	83 c4 10             	add    $0x10,%esp
48538e:	85 c9                	test   %ecx,%ecx
485390:	74 62                	je     0x4853f4
485392:	8d 04 b1             	lea    (%ecx,%esi,4),%eax
485395:	8b d9                	mov    %ecx,%ebx
485397:	8d 34 b9             	lea    (%ecx,%edi,4),%esi
48539a:	89 45 fc             	mov    %eax,-0x4(%ebp)
48539d:	8b 0d 14 40 4c 00    	mov    0x4c4014,%ecx
4853a3:	8b f8                	mov    %eax,%edi
4853a5:	3b fe                	cmp    %esi,%edi
4853a7:	74 09                	je     0x4853b2
4853a9:	89 08                	mov    %ecx,(%eax)
4853ab:	83 c0 04             	add    $0x4,%eax
4853ae:	3b c6                	cmp    %esi,%eax
4853b0:	75 f7                	jne    0x4853a9
4853b2:	8b 45 f8             	mov    -0x8(%ebp),%eax
4853b5:	8b 40 04             	mov    0x4(%eax),%eax
4853b8:	ff 30                	push   (%eax)
4853ba:	e8 67 da ff ff       	call   0x482e26
4853bf:	53                   	push   %ebx
4853c0:	89 07                	mov    %eax,(%edi)
4853c2:	e8 5f da ff ff       	call   0x482e26
4853c7:	8b 5d f8             	mov    -0x8(%ebp),%ebx
4853ca:	8b 0b                	mov    (%ebx),%ecx
4853cc:	8b 09                	mov    (%ecx),%ecx
4853ce:	89 01                	mov    %eax,(%ecx)
4853d0:	8d 47 04             	lea    0x4(%edi),%eax
4853d3:	50                   	push   %eax
4853d4:	e8 4d da ff ff       	call   0x482e26
4853d9:	8b 0b                	mov    (%ebx),%ecx
4853db:	56                   	push   %esi
4853dc:	8b 09                	mov    (%ecx),%ecx
4853de:	89 41 04             	mov    %eax,0x4(%ecx)
4853e1:	e8 40 da ff ff       	call   0x482e26
4853e6:	8b 0b                	mov    (%ebx),%ecx
4853e8:	83 c4 10             	add    $0x10,%esp
4853eb:	8b 09                	mov    (%ecx),%ecx
4853ed:	89 41 08             	mov    %eax,0x8(%ecx)
4853f0:	33 c0                	xor    %eax,%eax
4853f2:	eb 03                	jmp    0x4853f7
4853f4:	83 c8 ff             	or     $0xffffffff,%eax
4853f7:	5f                   	pop    %edi
4853f8:	5e                   	pop    %esi
4853f9:	5b                   	pop    %ebx
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