5bd329:	8b 4d f4             	mov    -0xc(%ebp),%ecx
5bd32c:	8b f8                	mov    %eax,%edi
5bd32e:	89 45 f0             	mov    %eax,-0x10(%ebp)
5bd331:	3b c1                	cmp    %ecx,%eax
5bd333:	7d 43                	jge    0x5bd378
5bd335:	8d 34 00             	lea    (%eax,%eax,1),%esi
5bd338:	8d 4e 02             	lea    0x2(%esi),%ecx
5bd33b:	c1 e1 05             	shl    $0x5,%ecx
5bd33e:	03 cb                	add    %ebx,%ecx
5bd340:	8d 41 e0             	lea    -0x20(%ecx),%eax
5bd343:	50                   	push   %eax
5bd344:	51                   	push   %ecx
5bd345:	ff d2                	call   *%edx
5bd347:	8b 55 14             	mov    0x14(%ebp),%edx
5bd34a:	83 c4 08             	add    $0x8,%esp
5bd34d:	0f b6 c0             	movzbl %al,%eax
5bd350:	b9 08 00 00 00       	mov    $0x8,%ecx
5bd355:	f7 d8                	neg    %eax
5bd357:	1b c0                	sbb    %eax,%eax
5bd359:	83 c6 02             	add    $0x2,%esi
5bd35c:	03 c6                	add    %esi,%eax
5bd35e:	c1 e7 05             	shl    $0x5,%edi
5bd361:	8b f0                	mov    %eax,%esi
5bd363:	03 fb                	add    %ebx,%edi
5bd365:	c1 e6 05             	shl    $0x5,%esi
5bd368:	03 f3                	add    %ebx,%esi
5bd36a:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
5bd36c:	8b 4d f4             	mov    -0xc(%ebp),%ecx
5bd36f:	8b f8                	mov    %eax,%edi
5bd371:	3b c1                	cmp    %ecx,%eax
5bd373:	7c c0                	jl     0x5bd335
5bd375:	8b 45 fc             	mov    -0x4(%ebp),%eax
5bd378:	3b f9                	cmp    %ecx,%edi
5bd37a:	75 24                	jne    0x5bd3a0
5bd37c:	8b 4d f8             	mov    -0x8(%ebp),%ecx
5bd37f:	f6 c1 01             	test   $0x1,%cl
5bd382:	75 1c                	jne    0x5bd3a0
5bd384:	8b 45 fc             	mov    -0x4(%ebp),%eax
5bd387:	8b f1                	mov    %ecx,%esi
5bd389:	c1 e6 05             	shl    $0x5,%esi
5bd38c:	b9 08 00 00 00       	mov    $0x8,%ecx
5bd391:	83 c6 e0             	add    $0xffffffe0,%esi
5bd394:	c1 e7 05             	shl    $0x5,%edi
5bd397:	03 f3                	add    %ebx,%esi
5bd399:	03 fb                	add    %ebx,%edi
5bd39b:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
5bd39d:	8b 7d ec             	mov    -0x14(%ebp),%edi
5bd3a0:	3b c7                	cmp    %edi,%eax
5bd3a2:	7d 38                	jge    0x5bd3dc
5bd3a4:	8d 47 ff             	lea    -0x1(%edi),%eax
5bd3a7:	d1 f8                	sar    $1,%eax
5bd3a9:	89 45 f0             	mov    %eax,-0x10(%ebp)
5bd3ac:	c1 e0 05             	shl    $0x5,%eax
5bd3af:	8d 34 18             	lea    (%eax,%ebx,1),%esi
5bd3b2:	8d 45 c4             	lea    -0x3c(%ebp),%eax
5bd3b5:	50                   	push   %eax
5bd3b6:	56                   	push   %esi
5bd3b7:	ff d2                	call   *%edx
5bd3b9:	83 c4 08             	add    $0x8,%esp
5bd3bc:	84 c0                	test   %al,%al
5bd3be:	74 19                	je     0x5bd3d9
5bd3c0:	8b 45 f0             	mov    -0x10(%ebp),%eax
5bd3c3:	b9 08 00 00 00       	mov    $0x8,%ecx
5bd3c8:	8b 55 14             	mov    0x14(%ebp),%edx
5bd3cb:	c1 e7 05             	shl    $0x5,%edi
5bd3ce:	03 fb                	add    %ebx,%edi
5bd3d0:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
5bd3d2:	8b f8                	mov    %eax,%edi
5bd3d4:	39 45 fc             	cmp    %eax,-0x4(%ebp)
5bd3d7:	7c cb                	jl     0x5bd3a4
5bd3d9:	8b 45 fc             	mov    -0x4(%ebp),%eax
5bd3dc:	8b 55 14             	mov    0x14(%ebp),%edx
5bd3df:	8d 75 c4             	lea    -0x3c(%ebp),%esi
5bd3e2:	c1 e7 05             	shl    $0x5,%edi
5bd3e5:	b9 08 00 00 00       	mov    $0x8,%ecx
5bd3ea:	03 fb                	add    %ebx,%edi
5bd3ec:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
5bd3ee:	8b 75 e8             	mov    -0x18(%ebp),%esi
5bd3f1:	85 c0                	test   %eax,%eax
5bd3f3:	0f 8f 1c ff ff ff    	jg     0x5bd315
5bd3f9:	8b 7d 0c             	mov    0xc(%ebp),%edi
5bd3fc:	8b 4d f8             	mov    -0x8(%ebp),%ecx
5bd3ff:	83 f9 02             	cmp    $0x2,%ecx
5bd402:	0f 8c b9 00 00 00    	jl     0x5bd4c1
5bd408:	8b 55 08             	mov    0x8(%ebp),%edx
5bd40b:	8d 47 e0             	lea    -0x20(%edi),%eax
5bd40e:	89 45 0c             	mov    %eax,0xc(%ebp)
5bd411:	ff 75 14             	push   0x14(%ebp)
5bd414:	8b f0                	mov    %eax,%esi
5bd416:	8d 7d c4             	lea    -0x3c(%ebp),%edi
5bd419:	b9 08 00 00 00       	mov    $0x8,%ecx
5bd41e:	8b d8                	mov    %eax,%ebx
5bd420:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
5bd422:	8b f8                	mov    %eax,%edi
5bd424:	8b f2                	mov    %edx,%esi
5bd426:	b9 08 00 00 00       	mov    $0x8,%ecx
5bd42b:	2b c2                	sub    %edx,%eax
5bd42d:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
5bd42f:	8d 4d c4             	lea    -0x3c(%ebp),%ecx
5bd432:	c1 f8 05             	sar    $0x5,%eax
5bd435:	51                   	push   %ecx
5bd436:	50                   	push   %eax
5bd437:	6a 00                	push   $0x0
5bd439:	52                   	push   %edx
5bd43a:	e8 71 fa ff ff       	call   0x5bceb0
5bd43f:	8b 55 08             	mov    0x8(%ebp),%edx
5bd442:	83 c4 14             	add    $0x14,%esp
5bd445:	8b 45 0c             	mov    0xc(%ebp),%eax
5bd448:	2b da                	sub    %edx,%ebx
5bd44a:	83 e8 20             	sub    $0x20,%eax
5bd44d:	83 e3 e0             	and    $0xffffffe0,%ebx
5bd450:	89 45 0c             	mov    %eax,0xc(%ebp)
5bd453:	83 fb 40             	cmp    $0x40,%ebx
5bd456:	7d b9                	jge    0x5bd411
5bd458:	5f                   	pop    %edi
5bd459:	5e                   	pop    %esi
5bd45a:	5b                   	pop    %ebx
5bd45b:	8b e5                	mov    %ebp,%esp
5bd45d:	5d                   	pop    %ebp
5bd45e:	c3                   	ret
5bd45f:	8b 45 f4             	mov    -0xc(%ebp),%eax
5bd462:	50                   	push   %eax
5bd463:	89 45 e8             	mov    %eax,-0x18(%ebp)
5bd466:	8d 45 c4             	lea    -0x3c(%ebp),%eax
5bd469:	50                   	push   %eax
5bd46a:	ff 55 14             	call   *0x14(%ebp)
5bd46d:	83 c4 08             	add    $0x8,%esp
5bd470:	84 c0                	test   %al,%al
5bd472:	74 27                	je     0x5bd49b
5bd474:	8b 5d e8             	mov    -0x18(%ebp),%ebx
5bd477:	8b 7d fc             	mov    -0x4(%ebp),%edi
5bd47a:	8d 45 c4             	lea    -0x3c(%ebp),%eax
5bd47d:	8b f3                	mov    %ebx,%esi
5bd47f:	89 5d fc             	mov    %ebx,-0x4(%ebp)
5bd482:	83 eb 20             	sub    $0x20,%ebx
5bd485:	b9 08 00 00 00       	mov    $0x8,%ecx
5bd48a:	53                   	push   %ebx
5bd48b:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
5bd48d:	50                   	push   %eax
5bd48e:	ff 55 14             	call   *0x14(%ebp)
5bd491:	83 c4 08             	add    $0x8,%esp
5bd494:	84 c0                	test   %al,%al
5bd496:	75 df                	jne    0x5bd477
5bd498:	8b 5d 08             	mov    0x8(%ebp),%ebx
5bd49b:	8b 7d fc             	mov    -0x4(%ebp),%edi
5bd49e:	8b 45 f8             	mov    -0x8(%ebp),%eax
5bd4a1:	8d 75 c4             	lea    -0x3c(%ebp),%esi
5bd4a4:	83 45 f4 20          	addl   $0x20,-0xc(%ebp)
5bd4a8:	83 c0 20             	add    $0x20,%eax
5bd4ab:	b9 08 00 00 00       	mov    $0x8,%ecx
5bd4b0:	8b 55 14             	mov    0x14(%ebp),%edx
5bd4b3:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
5bd4b5:	89 45 f8             	mov    %eax,-0x8(%ebp)
5bd4b8:	3b 45 0c             	cmp    0xc(%ebp),%eax
5bd4bb:	0f 85 ef fd ff ff    	jne    0x5bd2b0
5bd4c1:	5f                   	pop    %edi
5bd4c2:	5e                   	pop    %esi
5bd4c3:	5b                   	pop    %ebx
5bd4c4:	8b e5                	mov    %ebp,%esp
5bd4c6:	5d                   	pop    %ebp
5bd4c7:	c3                   	ret
5bd4c8:	cc                   	int3
5bd4c9:	cc                   	int3
5bd4ca:	cc                   	int3
5bd4cb:	cc                   	int3
5bd4cc:	cc                   	int3
5bd4cd:	cc                   	int3
5bd4ce:	cc                   	int3
5bd4cf:	cc                   	int3
5bd4d0:	55                   	push   %ebp
5bd4d1:	8b ec                	mov    %esp,%ebp
5bd4d3:	6a ff                	push   $0xffffffff
5bd4d5:	68 e4 fe 5f 00       	push   $0x5ffee4
5bd4da:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
5bd4e0:	50                   	push   %eax
5bd4e1:	64 89 25 00 00 00 00 	mov    %esp,%fs:0x0
5bd4e8:	83 ec 10             	sub    $0x10,%esp
5bd4eb:	56                   	push   %esi
5bd4ec:	57                   	push   %edi
5bd4ed:	8b f9                	mov    %ecx,%edi
5bd4ef:	89 7d ec             	mov    %edi,-0x14(%ebp)
5bd4f2:	8d b7 28 01 00 00    	lea    0x128(%edi),%esi
5bd4f8:	89 75 f0             	mov    %esi,-0x10(%ebp)
5bd4fb:	6a 20                	push   $0x20
5bd4fd:	c7 07 00 00 00 00    	movl   $0x0,(%edi)
5bd503:	c7 47 04 00 00 00 00 	movl   $0x0,0x4(%edi)
5bd50a:	c6 47 08 01          	movb   $0x1,0x8(%edi)
5bd50e:	c7 47 14 00 00 00 00 	movl   $0x0,0x14(%edi)
5bd515:	c7 47 18 00 00 00 00 	movl   $0x0,0x18(%edi)
5bd51c:	c7 47 1c 00 00 00 00 	movl   $0x0,0x1c(%edi)
5bd523:	c7 87 24 01 00 00 00 	movl   $0x0,0x124(%edi)
5bd52a:	00 00 00
5bd52d:	c7 06 00 00 00 00    	movl   $0x0,(%esi)
5bd533:	c7 46 04 00 00 00 00 	movl   $0x0,0x4(%esi)
5bd53a:	e8 e6 3c 01 00       	call   0x5d1225
5bd53f:	89 00                	mov    %eax,(%eax)
5bd541:	89 40 04             	mov    %eax,0x4(%eax)
5bd544:	89 40 08             	mov    %eax,0x8(%eax)
5bd547:	66 c7 40 0c 01 01    	movw   $0x101,0xc(%eax)
5bd54d:	89 06                	mov    %eax,(%esi)
5bd54f:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
5bd556:	8d b7 30 01 00 00    	lea    0x130(%edi),%esi
5bd55c:	89 75 e8             	mov    %esi,-0x18(%ebp)
5bd55f:	6a 2c                	push   $0x2c
5bd561:	c7 06 00 00 00 00    	movl   $0x0,(%esi)
5bd567:	c7 46 04 00 00 00 00 	movl   $0x0,0x4(%esi)
5bd56e:	e8 b2 3c 01 00       	call   0x5d1225
5bd573:	83 c4 08             	add    $0x8,%esp
5bd576:	89 00                	mov    %eax,(%eax)
5bd578:	89 40 04             	mov    %eax,0x4(%eax)
5bd57b:	89 40 08             	mov    %eax,0x8(%eax)
5bd57e:	66 c7 40 0c 01 01    	movw   $0x101,0xc(%eax)
5bd584:	89 06                	mov    %eax,(%esi)
5bd586:	c6 45 fc 03          	movb   $0x3,-0x4(%ebp)
5bd58a:	c7 87 38 01 00 00 00 	movl   $0x0,0x138(%edi)
5bd591:	00 00 00
5bd594:	c7 87 3c 01 00 00 00 	movl   $0x0,0x13c(%edi)
5bd59b:	00 00 00
5bd59e:	c7 87 40 01 00 00 00 	movl   $0x0,0x140(%edi)
5bd5a5:	00 00 00
5bd5a8:	c6 45 fc 04          	movb   $0x4,-0x4(%ebp)
5bd5ac:	8d b7 48 01 00 00    	lea    0x148(%edi),%esi
5bd5b2:	c7 87 44 01 00 00 00 	movl   $0x800,0x144(%edi)
5bd5b9:	08 00 00
5bd5bc:	c7 06 00 00 00 00    	movl   $0x0,(%esi)
5bd5c2:	c7 46 04 00 00 00 00 	movl   $0x0,0x4(%esi)
5bd5c9:	c7 46 08 00 00 00 00 	movl   $0x0,0x8(%esi)
5bd5d0:	c6 45 fc 05          	movb   $0x5,-0x4(%ebp)
5bd5d4:	8d 8f 54 01 00 00    	lea    0x154(%edi),%ecx
5bd5da:	89 4d e4             	mov    %ecx,-0x1c(%ebp)
5bd5dd:	c7 01 00 00 00 00    	movl   $0x0,(%ecx)
5bd5e3:	c7 41 04 00 00 00 00 	movl   $0x0,0x4(%ecx)
5bd5ea:	83 c1 08             	add    $0x8,%ecx
5bd5ed:	e8 2e 9e 00 00       	call   0x5c7420
5bd5f2:	c6 45 fc 07          	movb   $0x7,-0x4(%ebp)
5bd5f6:	c7 87 74 01 00 00 00 	movl   $0x0,0x174(%edi)
5bd5fd:	00 00 00
5bd600:	c7 87 78 01 00 00 00 	movl   $0x0,0x178(%edi)
5bd607:	00 00 00
5bd60a:	c7 87 7c 01 00 00 00 	movl   $0x0,0x17c(%edi)
5bd611:	00 00 00
5bd614:	c6 45 fc 08          	movb   $0x8,-0x4(%ebp)
5bd618:	66 c7 47 21 00 00    	movw   $0x0,0x21(%edi)
5bd61e:	c6 47 20 00          	movb   $0x0,0x20(%edi)
5bd622:	8b 46 08             	mov    0x8(%esi),%eax
5bd625:	2b 06                	sub    (%esi),%eax
5bd627:	c1 f8 03             	sar    $0x3,%eax
5bd62a:	c7 45 f0 01 00 00 00 	movl   $0x1,-0x10(%ebp)
5bd631:	83 f8 01             	cmp    $0x1,%eax
5bd634:	73 0b                	jae    0x5bd641
5bd636:	8d 45 f0             	lea    -0x10(%ebp),%eax
5bd639:	8b ce                	mov    %esi,%ecx
5bd63b:	50                   	push   %eax
5bd63c:	e8 7f fa ff ff       	call   0x5bd0c0
5bd641:	6a 00                	push   $0x0
5bd643:	6a 00                	push   $0x0
5bd645:	68 f4 b5 66 00       	push   $0x66b5f4
5bd64a:	57                   	push   %edi
5bd64b:	8b cf                	mov    %edi,%ecx
5bd64d:	e8 8e 08 00 00       	call   0x5bdee0
5bd652:	8b cf                	mov    %edi,%ecx
5bd654:	89 47 10             	mov    %eax,0x10(%edi)
5bd657:	89 47 0c             	mov    %eax,0xc(%edi)
5bd65a:	e8 a1 0b 00 00       	call   0x5be200
5bd65f:	c7 45 fc ff ff ff ff 	movl   $0xffffffff,-0x4(%ebp)
5bd666:	8b c7                	mov    %edi,%eax
5bd668:	8b 4d f4             	mov    -0xc(%ebp),%ecx
5bd66b:	5f                   	pop    %edi
5bd66c:	5e                   	pop    %esi
5bd66d:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
5bd674:	8b e5                	mov    %ebp,%esp
5bd676:	5d                   	pop    %ebp
5bd677:	c3                   	ret
5bd678:	cc                   	int3
5bd679:	cc                   	int3
5bd67a:	cc                   	int3
5bd67b:	cc                   	int3
5bd67c:	cc                   	int3
5bd67d:	cc                   	int3
5bd67e:	cc                   	int3
5bd67f:	cc                   	int3
5bd680:	55                   	push   %ebp
5bd681:	8b ec                	mov    %esp,%ebp
5bd683:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
5bd689:	6a ff                	push   $0xffffffff
5bd68b:	68 20 fc 5f 00       	push   $0x5ffc20
5bd690:	50                   	push   %eax
5bd691:	64 89 25 00 00 00 00 	mov    %esp,%fs:0x0
5bd698:	8b 41 04             	mov    0x4(%ecx),%eax
5bd69b:	85 c0                	test   %eax,%eax
5bd69d:	74 0b                	je     0x5bd6aa
5bd69f:	6a 2c                	push   $0x2c
5bd6a1:	50                   	push   %eax
5bd6a2:	e8 ae 3b 01 00       	call   0x5d1255
5bd6a7:	83 c4 08             	add    $0x8,%esp
5bd6aa:	8b 4d f4             	mov    -0xc(%ebp),%ecx
5bd6ad:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
5bd6b4:	8b e5                	mov    %ebp,%esp
5bd6b6:	5d                   	pop    %ebp
5bd6b7:	c3                   	ret
5bd6b8:	cc                   	int3
5bd6b9:	cc                   	int3
5bd6ba:	cc                   	int3
5bd6bb:	cc                   	int3
5bd6bc:	cc                   	int3
5bd6bd:	cc                   	int3
5bd6be:	cc                   	int3
5bd6bf:	cc                   	int3
5bd6c0:	55                   	push   %ebp
5bd6c1:	8b ec                	mov    %esp,%ebp
5bd6c3:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
5bd6c9:	6a ff                	push   $0xffffffff
5bd6cb:	68 20 fc 5f 00       	push   $0x5ffc20
5bd6d0:	50                   	push   %eax
5bd6d1:	64 89 25 00 00 00 00 	mov    %esp,%fs:0x0
5bd6d8:	8b 41 04             	mov    0x4(%ecx),%eax
5bd6db:	85 c0                	test   %eax,%eax
5bd6dd:	74 0b                	je     0x5bd6ea
5bd6df:	6a 20                	push   $0x20
5bd6e1:	50                   	push   %eax
5bd6e2:	e8 6e 3b 01 00       	call   0x5d1255
5bd6e7:	83 c4 08             	add    $0x8,%esp
5bd6ea:	8b 4d f4             	mov    -0xc(%ebp),%ecx
5bd6ed:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
5bd6f4:	8b e5                	mov    %ebp,%esp
5bd6f6:	5d                   	pop    %ebp
5bd6f7:	c3                   	ret
5bd6f8:	cc                   	int3
5bd6f9:	cc                   	int3
5bd6fa:	cc                   	int3
5bd6fb:	cc                   	int3
5bd6fc:	cc                   	int3
5bd6fd:	cc                   	int3
5bd6fe:	cc                   	int3
5bd6ff:	cc                   	int3
5bd700:	55                   	push   %ebp
5bd701:	8b ec                	mov    %esp,%ebp
5bd703:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
5bd709:	6a ff                	push   $0xffffffff
5bd70b:	68 20 fc 5f 00       	push   $0x5ffc20
5bd710:	50                   	push   %eax
5bd711:	64 89 25 00 00 00 00 	mov    %esp,%fs:0x0
5bd718:	56                   	push   %esi
5bd719:	8b f1                	mov    %ecx,%esi
5bd71b:	8b 06                	mov    (%esi),%eax
5bd71d:	ff 70 04             	push   0x4(%eax)
5bd720:	56                   	push   %esi
5bd721:	e8 0a f2 ff ff       	call   0x5bc930
5bd726:	6a 20                	push   $0x20
5bd728:	ff 36                	push   (%esi)