5bc3d1:	3b d8                	cmp    %eax,%ebx
5bc3d3:	76 3b                	jbe    0x5bc410
5bc3d5:	8b 7d 08             	mov    0x8(%ebp),%edi
5bc3d8:	8b f0                	mov    %eax,%esi
5bc3da:	c1 e6 05             	shl    $0x5,%esi
5bc3dd:	56                   	push   %esi
5bc3de:	57                   	push   %edi
5bc3df:	51                   	push   %ecx
5bc3e0:	e8 eb 69 01 00       	call   0x5d2dd0
5bc3e5:	2b 5d 0c             	sub    0xc(%ebp),%ebx
5bc3e8:	03 fe                	add    %esi,%edi
5bc3ea:	8b 45 fc             	mov    -0x4(%ebp),%eax
5bc3ed:	c1 e3 05             	shl    $0x5,%ebx
5bc3f0:	53                   	push   %ebx
5bc3f1:	57                   	push   %edi
5bc3f2:	8b 70 04             	mov    0x4(%eax),%esi
5bc3f5:	56                   	push   %esi
5bc3f6:	e8 d5 69 01 00       	call   0x5d2dd0
5bc3fb:	8b 4d fc             	mov    -0x4(%ebp),%ecx
5bc3fe:	8d 04 33             	lea    (%ebx,%esi,1),%eax
5bc401:	83 c4 18             	add    $0x18,%esp
5bc404:	89 41 04             	mov    %eax,0x4(%ecx)
5bc407:	5f                   	pop    %edi
5bc408:	5e                   	pop    %esi
5bc409:	5b                   	pop    %ebx
5bc40a:	8b e5                	mov    %ebp,%esp
5bc40c:	5d                   	pop    %ebp
5bc40d:	c2 08 00             	ret    $0x8
5bc410:	c1 e3 05             	shl    $0x5,%ebx
5bc413:	53                   	push   %ebx
5bc414:	ff 75 08             	push   0x8(%ebp)
5bc417:	51                   	push   %ecx
5bc418:	e8 b3 69 01 00       	call   0x5d2dd0
5bc41d:	8b 45 f8             	mov    -0x8(%ebp),%eax
5bc420:	83 c4 0c             	add    $0xc,%esp
5bc423:	03 c3                	add    %ebx,%eax
5bc425:	89 47 04             	mov    %eax,0x4(%edi)
5bc428:	5f                   	pop    %edi
5bc429:	5e                   	pop    %esi
5bc42a:	5b                   	pop    %ebx
5bc42b:	8b e5                	mov    %ebp,%esp
5bc42d:	5d                   	pop    %ebp
5bc42e:	c2 08 00             	ret    $0x8
5bc431:	e8 6a 03 ea ff       	call   0x45c7a0
5bc436:	e8 b5 9d 01 00       	call   0x5d61f0
5bc43b:	e8 b0 b1 e8 ff       	call   0x4475f0
5bc440:	cc                   	int3
5bc441:	cc                   	int3
5bc442:	cc                   	int3
5bc443:	cc                   	int3
5bc444:	cc                   	int3
5bc445:	cc                   	int3
5bc446:	cc                   	int3
5bc447:	cc                   	int3
5bc448:	cc                   	int3
5bc449:	cc                   	int3
5bc44a:	cc                   	int3
5bc44b:	cc                   	int3
5bc44c:	cc                   	int3
5bc44d:	cc                   	int3
5bc44e:	cc                   	int3
5bc44f:	cc                   	int3
5bc450:	55                   	push   %ebp
5bc451:	8b ec                	mov    %esp,%ebp
5bc453:	53                   	push   %ebx
5bc454:	57                   	push   %edi
5bc455:	8b 7d 0c             	mov    0xc(%ebp),%edi
5bc458:	8b d9                	mov    %ecx,%ebx
5bc45a:	81 ff ff ff ff 7f    	cmp    $0x7fffffff,%edi
5bc460:	77 76                	ja     0x5bc4d8
5bc462:	83 ff 0f             	cmp    $0xf,%edi
5bc465:	77 21                	ja     0x5bc488
5bc467:	57                   	push   %edi
5bc468:	ff 75 08             	push   0x8(%ebp)
5bc46b:	89 7b 10             	mov    %edi,0x10(%ebx)
5bc46e:	53                   	push   %ebx
5bc46f:	c7 43 14 0f 00 00 00 	movl   $0xf,0x14(%ebx)
5bc476:	e8 55 69 01 00       	call   0x5d2dd0
5bc47b:	83 c4 0c             	add    $0xc,%esp
5bc47e:	c6 04 1f 00          	movb   $0x0,(%edi,%ebx,1)
5bc482:	5f                   	pop    %edi
5bc483:	5b                   	pop    %ebx
5bc484:	5d                   	pop    %ebp
5bc485:	c2 08 00             	ret    $0x8
5bc488:	8b c7                	mov    %edi,%eax
5bc48a:	83 c8 0f             	or     $0xf,%eax
5bc48d:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
5bc492:	76 07                	jbe    0x5bc49b
5bc494:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
5bc499:	eb 0a                	jmp    0x5bc4a5
5bc49b:	b9 16 00 00 00       	mov    $0x16,%ecx
5bc4a0:	3b c1                	cmp    %ecx,%eax
5bc4a2:	0f 42 c1             	cmovb  %ecx,%eax
5bc4a5:	89 45 0c             	mov    %eax,0xc(%ebp)
5bc4a8:	8d 45 0c             	lea    0xc(%ebp),%eax
5bc4ab:	56                   	push   %esi
5bc4ac:	50                   	push   %eax
5bc4ad:	53                   	push   %ebx
5bc4ae:	e8 dd a9 e8 ff       	call   0x446e90
5bc4b3:	8b 4d 0c             	mov    0xc(%ebp),%ecx
5bc4b6:	8b f0                	mov    %eax,%esi
5bc4b8:	57                   	push   %edi
5bc4b9:	ff 75 08             	push   0x8(%ebp)
5bc4bc:	89 33                	mov    %esi,(%ebx)
5bc4be:	56                   	push   %esi
5bc4bf:	89 7b 10             	mov    %edi,0x10(%ebx)
5bc4c2:	89 4b 14             	mov    %ecx,0x14(%ebx)
5bc4c5:	e8 06 69 01 00       	call   0x5d2dd0
5bc4ca:	83 c4 14             	add    $0x14,%esp
5bc4cd:	c6 04 3e 00          	movb   $0x0,(%esi,%edi,1)
5bc4d1:	5e                   	pop    %esi
5bc4d2:	5f                   	pop    %edi
5bc4d3:	5b                   	pop    %ebx
5bc4d4:	5d                   	pop    %ebp
5bc4d5:	c2 08 00             	ret    $0x8
5bc4d8:	e8 33 b1 e8 ff       	call   0x447610
5bc4dd:	cc                   	int3
5bc4de:	cc                   	int3
5bc4df:	cc                   	int3
5bc4e0:	55                   	push   %ebp
5bc4e1:	8b ec                	mov    %esp,%ebp
5bc4e3:	6a ff                	push   $0xffffffff
5bc4e5:	68 00 fe 5f 00       	push   $0x5ffe00
5bc4ea:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
5bc4f0:	50                   	push   %eax
5bc4f1:	64 89 25 00 00 00 00 	mov    %esp,%fs:0x0
5bc4f8:	83 ec 1c             	sub    $0x1c,%esp
5bc4fb:	53                   	push   %ebx
5bc4fc:	56                   	push   %esi
5bc4fd:	57                   	push   %edi
5bc4fe:	89 65 f0             	mov    %esp,-0x10(%ebp)
5bc501:	8b f9                	mov    %ecx,%edi
5bc503:	89 7d d8             	mov    %edi,-0x28(%ebp)
5bc506:	8b 17                	mov    (%edi),%edx
5bc508:	8b 45 08             	mov    0x8(%ebp),%eax
5bc50b:	2b c2                	sub    %edx,%eax
5bc50d:	c1 f8 02             	sar    $0x2,%eax
5bc510:	89 45 e4             	mov    %eax,-0x1c(%ebp)
5bc513:	8b 47 04             	mov    0x4(%edi),%eax
5bc516:	2b c2                	sub    %edx,%eax
5bc518:	c1 f8 02             	sar    $0x2,%eax
5bc51b:	3d ff ff ff 3f       	cmp    $0x3fffffff,%eax
5bc520:	0f 84 d4 00 00 00    	je     0x5bc5fa
5bc526:	8d 58 01             	lea    0x1(%eax),%ebx
5bc529:	89 5d e0             	mov    %ebx,-0x20(%ebp)
5bc52c:	8b 4f 08             	mov    0x8(%edi),%ecx
5bc52f:	2b ca                	sub    %edx,%ecx
5bc531:	c1 f9 02             	sar    $0x2,%ecx
5bc534:	8b d1                	mov    %ecx,%edx
5bc536:	d1 ea                	shr    $1,%edx
5bc538:	b8 ff ff ff 3f       	mov    $0x3fffffff,%eax
5bc53d:	2b c2                	sub    %edx,%eax
5bc53f:	3b c8                	cmp    %eax,%ecx
5bc541:	76 07                	jbe    0x5bc54a
5bc543:	be ff ff ff 3f       	mov    $0x3fffffff,%esi
5bc548:	eb 08                	jmp    0x5bc552
5bc54a:	8d 34 0a             	lea    (%edx,%ecx,1),%esi
5bc54d:	3b f3                	cmp    %ebx,%esi
5bc54f:	0f 42 f3             	cmovb  %ebx,%esi
5bc552:	89 75 e8             	mov    %esi,-0x18(%ebp)
5bc555:	89 75 ec             	mov    %esi,-0x14(%ebp)
5bc558:	8d 45 ec             	lea    -0x14(%ebp),%eax
5bc55b:	50                   	push   %eax
5bc55c:	57                   	push   %edi
5bc55d:	e8 2e fc ff ff       	call   0x5bc190
5bc562:	83 c4 08             	add    $0x8,%esp
5bc565:	8b d8                	mov    %eax,%ebx
5bc567:	89 5d dc             	mov    %ebx,-0x24(%ebp)
5bc56a:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
5bc571:	8b 45 e4             	mov    -0x1c(%ebp),%eax
5bc574:	8d 04 83             	lea    (%ebx,%eax,4),%eax
5bc577:	89 45 ec             	mov    %eax,-0x14(%ebp)
5bc57a:	8b 4d 0c             	mov    0xc(%ebp),%ecx
5bc57d:	8b 09                	mov    (%ecx),%ecx
5bc57f:	89 08                	mov    %ecx,(%eax)
5bc581:	8b 47 04             	mov    0x4(%edi),%eax
5bc584:	8b 0f                	mov    (%edi),%ecx
5bc586:	8b 55 08             	mov    0x8(%ebp),%edx
5bc589:	3b d0                	cmp    %eax,%edx
5bc58b:	75 07                	jne    0x5bc594
5bc58d:	2b c1                	sub    %ecx,%eax
5bc58f:	50                   	push   %eax
5bc590:	51                   	push   %ecx
5bc591:	53                   	push   %ebx
5bc592:	eb 1e                	jmp    0x5bc5b2
5bc594:	2b d1                	sub    %ecx,%edx
5bc596:	52                   	push   %edx
5bc597:	51                   	push   %ecx
5bc598:	53                   	push   %ebx
5bc599:	e8 32 68 01 00       	call   0x5d2dd0
5bc59e:	83 c4 0c             	add    $0xc,%esp
5bc5a1:	8b 4d ec             	mov    -0x14(%ebp),%ecx
5bc5a4:	83 c1 04             	add    $0x4,%ecx
5bc5a7:	8b 47 04             	mov    0x4(%edi),%eax
5bc5aa:	8b 55 08             	mov    0x8(%ebp),%edx
5bc5ad:	2b c2                	sub    %edx,%eax
5bc5af:	50                   	push   %eax
5bc5b0:	52                   	push   %edx
5bc5b1:	51                   	push   %ecx
5bc5b2:	e8 19 68 01 00       	call   0x5d2dd0
5bc5b7:	83 c4 0c             	add    $0xc,%esp
5bc5ba:	c7 45 fc ff ff ff ff 	movl   $0xffffffff,-0x4(%ebp)
5bc5c1:	56                   	push   %esi
5bc5c2:	ff 75 e0             	push   -0x20(%ebp)
5bc5c5:	53                   	push   %ebx
5bc5c6:	8b cf                	mov    %edi,%ecx
5bc5c8:	e8 43 3d 00 00       	call   0x5c0310
5bc5cd:	8b 45 ec             	mov    -0x14(%ebp),%eax
5bc5d0:	8b 4d f4             	mov    -0xc(%ebp),%ecx
5bc5d3:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
5bc5da:	5f                   	pop    %edi
5bc5db:	5e                   	pop    %esi
5bc5dc:	5b                   	pop    %ebx
5bc5dd:	8b e5                	mov    %ebp,%esp
5bc5df:	5d                   	pop    %ebp
5bc5e0:	c2 08 00             	ret    $0x8
5bc5e3:	ff 75 e8             	push   -0x18(%ebp)
5bc5e6:	ff 75 dc             	push   -0x24(%ebp)
5bc5e9:	8b 4d d8             	mov    -0x28(%ebp),%ecx
5bc5ec:	e8 df 3d 00 00       	call   0x5c03d0
5bc5f1:	6a 00                	push   $0x0
5bc5f3:	6a 00                	push   $0x0
5bc5f5:	e8 45 75 01 00       	call   0x5d3b3f
5bc5fa:	e8 a1 01 ea ff       	call   0x45c7a0
5bc5ff:	cc                   	int3
5bc600:	cc                   	int3
5bc601:	cc                   	int3
5bc602:	cc                   	int3
5bc603:	cc                   	int3
5bc604:	cc                   	int3
5bc605:	cc                   	int3
5bc606:	cc                   	int3
5bc607:	cc                   	int3
5bc608:	cc                   	int3
5bc609:	cc                   	int3
5bc60a:	cc                   	int3
5bc60b:	cc                   	int3
5bc60c:	cc                   	int3
5bc60d:	cc                   	int3
5bc60e:	cc                   	int3
5bc60f:	cc                   	int3
5bc610:	55                   	push   %ebp
5bc611:	8b ec                	mov    %esp,%ebp
5bc613:	6a ff                	push   $0xffffffff
5bc615:	68 10 fe 5f 00       	push   $0x5ffe10
5bc61a:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
5bc620:	50                   	push   %eax
5bc621:	64 89 25 00 00 00 00 	mov    %esp,%fs:0x0
5bc628:	83 ec 18             	sub    $0x18,%esp
5bc62b:	53                   	push   %ebx
5bc62c:	56                   	push   %esi
5bc62d:	57                   	push   %edi
5bc62e:	89 65 f0             	mov    %esp,-0x10(%ebp)
5bc631:	89 4d e0             	mov    %ecx,-0x20(%ebp)
5bc634:	8b 19                	mov    (%ecx),%ebx
5bc636:	8b 75 08             	mov    0x8(%ebp),%esi
5bc639:	2b f3                	sub    %ebx,%esi
5bc63b:	8b 41 04             	mov    0x4(%ecx),%eax
5bc63e:	2b c3                	sub    %ebx,%eax
5bc640:	c1 f8 05             	sar    $0x5,%eax
5bc643:	3d ff ff ff 07       	cmp    $0x7ffffff,%eax
5bc648:	0f 84 18 01 00 00    	je     0x5bc766
5bc64e:	8d 50 01             	lea    0x1(%eax),%edx
5bc651:	89 55 dc             	mov    %edx,-0x24(%ebp)
5bc654:	8b 79 08             	mov    0x8(%ecx),%edi
5bc657:	2b fb                	sub    %ebx,%edi
5bc659:	c1 ff 05             	sar    $0x5,%edi
5bc65c:	8b df                	mov    %edi,%ebx
5bc65e:	d1 eb                	shr    $1,%ebx
5bc660:	b8 ff ff ff 07       	mov    $0x7ffffff,%eax
5bc665:	2b c3                	sub    %ebx,%eax
5bc667:	3b f8                	cmp    %eax,%edi
5bc669:	76 07                	jbe    0x5bc672
5bc66b:	bb ff ff ff 07       	mov    $0x7ffffff,%ebx
5bc670:	eb 07                	jmp    0x5bc679
5bc672:	03 df                	add    %edi,%ebx
5bc674:	3b da                	cmp    %edx,%ebx
5bc676:	0f 42 da             	cmovb  %edx,%ebx
5bc679:	89 5d e8             	mov    %ebx,-0x18(%ebp)
5bc67c:	89 5d e4             	mov    %ebx,-0x1c(%ebp)
5bc67f:	8d 45 e4             	lea    -0x1c(%ebp),%eax
5bc682:	50                   	push   %eax
5bc683:	51                   	push   %ecx
5bc684:	e8 67 fb ff ff       	call   0x5bc1f0
5bc689:	83 c4 08             	add    $0x8,%esp
5bc68c:	8b d0                	mov    %eax,%edx
5bc68e:	89 55 e4             	mov    %edx,-0x1c(%ebp)
5bc691:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
5bc698:	83 e6 e0             	and    $0xffffffe0,%esi
5bc69b:	8d 04 16             	lea    (%esi,%edx,1),%eax
5bc69e:	89 45 ec             	mov    %eax,-0x14(%ebp)
5bc6a1:	b9 08 00 00 00       	mov    $0x8,%ecx
5bc6a6:	8b 75 0c             	mov    0xc(%ebp),%esi
5bc6a9:	8b f8                	mov    %eax,%edi
5bc6ab:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
5bc6ad:	8b 75 e0             	mov    -0x20(%ebp),%esi
5bc6b0:	8b 46 04             	mov    0x4(%esi),%eax
5bc6b3:	8b 0e                	mov    (%esi),%ecx
5bc6b5:	8b 7d 08             	mov    0x8(%ebp),%edi
5bc6b8:	3b f8                	cmp    %eax,%edi
5bc6ba:	75 07                	jne    0x5bc6c3
5bc6bc:	2b c1                	sub    %ecx,%eax
5bc6be:	50                   	push   %eax
5bc6bf:	51                   	push   %ecx
5bc6c0:	52                   	push   %edx
5bc6c1:	eb 1d                	jmp    0x5bc6e0
5bc6c3:	8b c7                	mov    %edi,%eax
5bc6c5:	2b c1                	sub    %ecx,%eax
5bc6c7:	50                   	push   %eax
5bc6c8:	51                   	push   %ecx
5bc6c9:	52                   	push   %edx
5bc6ca:	e8 01 67 01 00       	call   0x5d2dd0
5bc6cf:	83 c4 0c             	add    $0xc,%esp
5bc6d2:	8b 4d ec             	mov    -0x14(%ebp),%ecx
5bc6d5:	83 c1 20             	add    $0x20,%ecx
5bc6d8:	8b 46 04             	mov    0x4(%esi),%eax
5bc6db:	2b c7                	sub    %edi,%eax
5bc6dd:	50                   	push   %eax
5bc6de:	57                   	push   %edi
5bc6df:	51                   	push   %ecx
5bc6e0:	e8 eb 66 01 00       	call   0x5d2dd0
5bc6e5:	83 c4 0c             	add    $0xc,%esp
5bc6e8:	c7 45 fc ff ff ff ff 	movl   $0xffffffff,-0x4(%ebp)
5bc6ef:	8b 06                	mov    (%esi),%eax
5bc6f1:	85 c0                	test   %eax,%eax
5bc6f3:	74 2c                	je     0x5bc721
5bc6f5:	8b 4e 08             	mov    0x8(%esi),%ecx
5bc6f8:	2b c8                	sub    %eax,%ecx
5bc6fa:	83 e1 e0             	and    $0xffffffe0,%ecx
5bc6fd:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
5bc703:	72 12                	jb     0x5bc717
5bc705:	83 c1 23             	add    $0x23,%ecx
5bc708:	8b 50 fc             	mov    -0x4(%eax),%edx
5bc70b:	2b c2                	sub    %edx,%eax
5bc70d:	83 c0 fc             	add    $0xfffffffc,%eax
5bc710:	83 f8 1f             	cmp    $0x1f,%eax
5bc713:	77 56                	ja     0x5bc76b
5bc715:	8b c2                	mov    %edx,%eax
5bc717:	51                   	push   %ecx
5bc718:	50                   	push   %eax
5bc719:	e8 37 4b 01 00       	call   0x5d1255
5bc71e:	83 c4 08             	add    $0x8,%esp
5bc721:	8b 45 e4             	mov    -0x1c(%ebp),%eax
5bc724:	89 06                	mov    %eax,(%esi)
5bc726:	8b 4d dc             	mov    -0x24(%ebp),%ecx
5bc729:	c1 e1 05             	shl    $0x5,%ecx
5bc72c:	03 c8                	add    %eax,%ecx
5bc72e:	89 4e 04             	mov    %ecx,0x4(%esi)
5bc731:	c1 e3 05             	shl    $0x5,%ebx
5bc734:	03 d8                	add    %eax,%ebx