5bd175:	85 c0                	test   %eax,%eax
5bd177:	74 2c                	je     0x5bd1a5
5bd179:	8b 4f 08             	mov    0x8(%edi),%ecx
5bd17c:	2b c8                	sub    %eax,%ecx
5bd17e:	83 e1 f8             	and    $0xfffffff8,%ecx
5bd181:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
5bd187:	72 12                	jb     0x5bd19b
5bd189:	83 c1 23             	add    $0x23,%ecx
5bd18c:	8b 50 fc             	mov    -0x4(%eax),%edx
5bd18f:	2b c2                	sub    %edx,%eax
5bd191:	83 c0 fc             	add    $0xfffffffc,%eax
5bd194:	83 f8 1f             	cmp    $0x1f,%eax
5bd197:	77 35                	ja     0x5bd1ce
5bd199:	8b c2                	mov    %edx,%eax
5bd19b:	51                   	push   %ecx
5bd19c:	50                   	push   %eax
5bd19d:	e8 b3 40 01 00       	call   0x5d1255
5bd1a2:	83 c4 08             	add    $0x8,%esp
5bd1a5:	89 37                	mov    %esi,(%edi)
5bd1a7:	8d 04 de             	lea    (%esi,%ebx,8),%eax
5bd1aa:	89 47 04             	mov    %eax,0x4(%edi)
5bd1ad:	8b 45 08             	mov    0x8(%ebp),%eax
5bd1b0:	8d 04 c6             	lea    (%esi,%eax,8),%eax
5bd1b3:	89 47 08             	mov    %eax,0x8(%edi)
5bd1b6:	8b 4d f4             	mov    -0xc(%ebp),%ecx
5bd1b9:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
5bd1c0:	5f                   	pop    %edi
5bd1c1:	5e                   	pop    %esi
5bd1c2:	5b                   	pop    %ebx
5bd1c3:	8b e5                	mov    %ebp,%esp
5bd1c5:	5d                   	pop    %ebp
5bd1c6:	c2 04 00             	ret    $0x4
5bd1c9:	e8 22 a4 e8 ff       	call   0x4475f0
5bd1ce:	e8 1d 90 01 00       	call   0x5d61f0
5bd1d3:	8b 45 08             	mov    0x8(%ebp),%eax
5bd1d6:	ff 30                	push   (%eax)
5bd1d8:	ff 75 ec             	push   -0x14(%ebp)
5bd1db:	8b 4d e8             	mov    -0x18(%ebp),%ecx
5bd1de:	e8 6d 32 00 00       	call   0x5c0450
5bd1e3:	6a 00                	push   $0x0
5bd1e5:	6a 00                	push   $0x0
5bd1e7:	e8 53 69 01 00       	call   0x5d3b3f
5bd1ec:	cc                   	int3
5bd1ed:	cc                   	int3
5bd1ee:	cc                   	int3
5bd1ef:	cc                   	int3
5bd1f0:	cc                   	int3
5bd1f1:	cc                   	int3
5bd1f2:	cc                   	int3
5bd1f3:	cc                   	int3
5bd1f4:	cc                   	int3
5bd1f5:	cc                   	int3
5bd1f6:	cc                   	int3
5bd1f7:	cc                   	int3
5bd1f8:	cc                   	int3
5bd1f9:	cc                   	int3
5bd1fa:	cc                   	int3
5bd1fb:	cc                   	int3
5bd1fc:	cc                   	int3
5bd1fd:	cc                   	int3
5bd1fe:	cc                   	int3
5bd1ff:	cc                   	int3
5bd200:	55                   	push   %ebp
5bd201:	8b ec                	mov    %esp,%ebp
5bd203:	8b 55 14             	mov    0x14(%ebp),%edx
5bd206:	83 ec 3c             	sub    $0x3c,%esp
5bd209:	53                   	push   %ebx
5bd20a:	8b 5d 08             	mov    0x8(%ebp),%ebx
5bd20d:	56                   	push   %esi
5bd20e:	57                   	push   %edi
5bd20f:	8b 7d 0c             	mov    0xc(%ebp),%edi
5bd212:	8b c7                	mov    %edi,%eax
5bd214:	2b c3                	sub    %ebx,%eax
5bd216:	83 e0 e0             	and    $0xffffffe0,%eax
5bd219:	3d 00 04 00 00       	cmp    $0x400,%eax
5bd21e:	7e 71                	jle    0x5bd291
5bd220:	8b 75 10             	mov    0x10(%ebp),%esi
5bd223:	85 f6                	test   %esi,%esi
5bd225:	0f 8e c4 00 00 00    	jle    0x5bd2ef
5bd22b:	52                   	push   %edx
5bd22c:	57                   	push   %edi
5bd22d:	8d 45 e4             	lea    -0x1c(%ebp),%eax
5bd230:	53                   	push   %ebx
5bd231:	50                   	push   %eax
5bd232:	e8 59 f9 ff ff       	call   0x5bcb90
5bd237:	8b 55 e8             	mov    -0x18(%ebp),%edx
5bd23a:	8b c6                	mov    %esi,%eax
5bd23c:	c1 f8 02             	sar    $0x2,%eax
5bd23f:	8b cf                	mov    %edi,%ecx
5bd241:	d1 fe                	sar    $1,%esi
5bd243:	83 c4 10             	add    $0x10,%esp
5bd246:	03 f0                	add    %eax,%esi
5bd248:	2b ca                	sub    %edx,%ecx
5bd24a:	8b 45 e4             	mov    -0x1c(%ebp),%eax
5bd24d:	83 e1 e0             	and    $0xffffffe0,%ecx
5bd250:	2b c3                	sub    %ebx,%eax
5bd252:	83 e0 e0             	and    $0xffffffe0,%eax
5bd255:	3b c1                	cmp    %ecx,%eax
5bd257:	8b 45 14             	mov    0x14(%ebp),%eax
5bd25a:	50                   	push   %eax
5bd25b:	56                   	push   %esi
5bd25c:	7d 12                	jge    0x5bd270
5bd25e:	8b 45 e4             	mov    -0x1c(%ebp),%eax
5bd261:	50                   	push   %eax
5bd262:	53                   	push   %ebx
5bd263:	e8 98 ff ff ff       	call   0x5bd200
5bd268:	8b 5d e8             	mov    -0x18(%ebp),%ebx
5bd26b:	89 5d 08             	mov    %ebx,0x8(%ebp)
5bd26e:	eb 0d                	jmp    0x5bd27d
5bd270:	57                   	push   %edi
5bd271:	52                   	push   %edx
5bd272:	e8 89 ff ff ff       	call   0x5bd200
5bd277:	8b 7d e4             	mov    -0x1c(%ebp),%edi
5bd27a:	89 7d 0c             	mov    %edi,0xc(%ebp)
5bd27d:	8b 55 14             	mov    0x14(%ebp),%edx
5bd280:	8b c7                	mov    %edi,%eax
5bd282:	2b c3                	sub    %ebx,%eax
5bd284:	83 c4 10             	add    $0x10,%esp
5bd287:	83 e0 e0             	and    $0xffffffe0,%eax
5bd28a:	3d 00 04 00 00       	cmp    $0x400,%eax
5bd28f:	7f 92                	jg     0x5bd223
5bd291:	3b df                	cmp    %edi,%ebx
5bd293:	0f 84 28 02 00 00    	je     0x5bd4c1
5bd299:	8d 43 20             	lea    0x20(%ebx),%eax
5bd29c:	89 45 f8             	mov    %eax,-0x8(%ebp)
5bd29f:	3b c7                	cmp    %edi,%eax
5bd2a1:	0f 84 1a 02 00 00    	je     0x5bd4c1
5bd2a7:	89 5d f4             	mov    %ebx,-0xc(%ebp)
5bd2aa:	8d 9b 00 00 00 00    	lea    0x0(%ebx),%ebx
5bd2b0:	8b f0                	mov    %eax,%esi
5bd2b2:	89 45 fc             	mov    %eax,-0x4(%ebp)
5bd2b5:	8d 45 c4             	lea    -0x3c(%ebp),%eax
5bd2b8:	b9 08 00 00 00       	mov    $0x8,%ecx
5bd2bd:	8d 7d c4             	lea    -0x3c(%ebp),%edi
5bd2c0:	53                   	push   %ebx
5bd2c1:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
5bd2c3:	50                   	push   %eax
5bd2c4:	ff d2                	call   *%edx
5bd2c6:	83 c4 08             	add    $0x8,%esp
5bd2c9:	84 c0                	test   %al,%al
5bd2cb:	0f 84 8e 01 00 00    	je     0x5bd45f
5bd2d1:	8b 45 f8             	mov    -0x8(%ebp),%eax
5bd2d4:	8b c8                	mov    %eax,%ecx
5bd2d6:	2b cb                	sub    %ebx,%ecx
5bd2d8:	51                   	push   %ecx
5bd2d9:	2b c1                	sub    %ecx,%eax
5bd2db:	83 c0 20             	add    $0x20,%eax
5bd2de:	53                   	push   %ebx
5bd2df:	50                   	push   %eax
5bd2e0:	e8 eb 5a 01 00       	call   0x5d2dd0
5bd2e5:	83 c4 0c             	add    $0xc,%esp
5bd2e8:	8b fb                	mov    %ebx,%edi
5bd2ea:	e9 af 01 00 00       	jmp    0x5bd49e
5bd2ef:	8b cf                	mov    %edi,%ecx
5bd2f1:	2b cb                	sub    %ebx,%ecx
5bd2f3:	c1 f9 05             	sar    $0x5,%ecx
5bd2f6:	8b c1                	mov    %ecx,%eax
5bd2f8:	89 4d f8             	mov    %ecx,-0x8(%ebp)
5bd2fb:	d1 f8                	sar    $1,%eax
5bd2fd:	85 c0                	test   %eax,%eax
5bd2ff:	0f 8e fa 00 00 00    	jle    0x5bd3ff
5bd305:	49                   	dec    %ecx
5bd306:	8b f0                	mov    %eax,%esi
5bd308:	89 4d ec             	mov    %ecx,-0x14(%ebp)
5bd30b:	d1 f9                	sar    $1,%ecx
5bd30d:	c1 e6 05             	shl    $0x5,%esi
5bd310:	89 4d f4             	mov    %ecx,-0xc(%ebp)
5bd313:	03 f3                	add    %ebx,%esi
5bd315:	83 ee 20             	sub    $0x20,%esi
5bd318:	8d 7d c4             	lea    -0x3c(%ebp),%edi
5bd31b:	48                   	dec    %eax
5bd31c:	89 75 e8             	mov    %esi,-0x18(%ebp)
5bd31f:	b9 08 00 00 00       	mov    $0x8,%ecx
5bd324:	89 45 fc             	mov    %eax,-0x4(%ebp)
5bd327:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
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