4791ac:	0f 1f 40 00          	nopl   0x0(%eax)
4791b0:	8b 01                	mov    (%ecx),%eax
4791b2:	8d 76 08             	lea    0x8(%esi),%esi
4791b5:	8b 51 04             	mov    0x4(%ecx),%edx
4791b8:	83 c1 08             	add    $0x8,%ecx
4791bb:	89 46 f8             	mov    %eax,-0x8(%esi)
4791be:	89 56 fc             	mov    %edx,-0x4(%esi)
4791c1:	3b cb                	cmp    %ebx,%ecx
4791c3:	75 eb                	jne    0x4791b0
4791c5:	eb 43                	jmp    0x47920a
4791c7:	8b f8                	mov    %eax,%edi
4791c9:	3b ce                	cmp    %esi,%ecx
4791cb:	74 1e                	je     0x4791eb
4791cd:	0f 1f 00             	nopl   (%eax)
4791d0:	8b 01                	mov    (%ecx),%eax
4791d2:	8d 7f 08             	lea    0x8(%edi),%edi
4791d5:	8b 51 04             	mov    0x4(%ecx),%edx
4791d8:	83 c1 08             	add    $0x8,%ecx
4791db:	89 47 f8             	mov    %eax,-0x8(%edi)
4791de:	89 57 fc             	mov    %edx,-0x4(%edi)
4791e1:	3b ce                	cmp    %esi,%ecx
4791e3:	75 eb                	jne    0x4791d0
4791e5:	8b 45 fc             	mov    -0x4(%ebp),%eax
4791e8:	8b 58 04             	mov    0x4(%eax),%ebx
4791eb:	8b 7d 08             	mov    0x8(%ebp),%edi
4791ee:	3b f3                	cmp    %ebx,%esi
4791f0:	74 18                	je     0x47920a
4791f2:	8b d7                	mov    %edi,%edx
4791f4:	2b d6                	sub    %esi,%edx
4791f6:	8b 06                	mov    (%esi),%eax
4791f8:	8b 4e 04             	mov    0x4(%esi),%ecx
4791fb:	89 44 32 08          	mov    %eax,0x8(%edx,%esi,1)
4791ff:	89 4c 32 0c          	mov    %ecx,0xc(%edx,%esi,1)
479203:	83 c6 08             	add    $0x8,%esi
479206:	3b f3                	cmp    %ebx,%esi
479208:	75 ec                	jne    0x4791f6
47920a:	ff 75 f8             	push   -0x8(%ebp)
47920d:	8b 4d fc             	mov    -0x4(%ebp),%ecx
479210:	ff 75 f4             	push   -0xc(%ebp)
479213:	ff 75 f0             	push   -0x10(%ebp)
479216:	e8 25 2e 02 00       	call   0x49c040
47921b:	8b c7                	mov    %edi,%eax
47921d:	5f                   	pop    %edi
47921e:	5e                   	pop    %esi
47921f:	5b                   	pop    %ebx
479220:	8b e5                	mov    %ebp,%esp
479222:	5d                   	pop    %ebp
479223:	c2 08 00             	ret    $0x8
479226:	e8 75 35 fe ff       	call   0x45c7a0
47922b:	cc                   	int3
47922c:	cc                   	int3
47922d:	cc                   	int3
47922e:	cc                   	int3
47922f:	cc                   	int3
479230:	55                   	push   %ebp
479231:	8b ec                	mov    %esp,%ebp
479233:	6a ff                	push   $0xffffffff
479235:	68 00 a4 5f 00       	push   $0x5fa400
47923a:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
479240:	50                   	push   %eax
479241:	83 ec 1c             	sub    $0x1c,%esp
479244:	53                   	push   %ebx
479245:	56                   	push   %esi
479246:	57                   	push   %edi
479247:	a1 c0 14 69 00       	mov    0x6914c0,%eax
47924c:	33 c5                	xor    %ebp,%eax
47924e:	50                   	push   %eax
47924f:	8d 45 f4             	lea    -0xc(%ebp),%eax
479252:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
479258:	89 65 f0             	mov    %esp,-0x10(%ebp)
47925b:	8b f9                	mov    %ecx,%edi
47925d:	89 7d dc             	mov    %edi,-0x24(%ebp)
479260:	8b 37                	mov    (%edi),%esi
479262:	b8 ab aa aa 2a       	mov    $0x2aaaaaab,%eax
479267:	8b 55 08             	mov    0x8(%ebp),%edx
47926a:	8b 4f 04             	mov    0x4(%edi),%ecx
47926d:	2b d6                	sub    %esi,%edx
47926f:	f7 ea                	imul   %edx
479271:	2b ce                	sub    %esi,%ecx
479273:	c1 fa 02             	sar    $0x2,%edx
479276:	8b c2                	mov    %edx,%eax
479278:	c1 e8 1f             	shr    $0x1f,%eax
47927b:	03 c2                	add    %edx,%eax
47927d:	89 45 ec             	mov    %eax,-0x14(%ebp)
479280:	b8 ab aa aa 2a       	mov    $0x2aaaaaab,%eax
479285:	f7 e9                	imul   %ecx
479287:	c1 fa 02             	sar    $0x2,%edx
47928a:	8b c2                	mov    %edx,%eax
47928c:	c1 e8 1f             	shr    $0x1f,%eax
47928f:	03 c2                	add    %edx,%eax
479291:	89 45 e4             	mov    %eax,-0x1c(%ebp)
479294:	3d aa aa aa 0a       	cmp    $0xaaaaaaa,%eax
479299:	0f 84 e2 00 00 00    	je     0x479381
47929f:	8b 4f 08             	mov    0x8(%edi),%ecx
4792a2:	8d 58 01             	lea    0x1(%eax),%ebx
4792a5:	2b ce                	sub    %esi,%ecx
4792a7:	b8 ab aa aa 2a       	mov    $0x2aaaaaab,%eax
4792ac:	f7 e9                	imul   %ecx
4792ae:	b8 aa aa aa 0a       	mov    $0xaaaaaaa,%eax
4792b3:	c1 fa 02             	sar    $0x2,%edx
4792b6:	8b ca                	mov    %edx,%ecx
4792b8:	c1 e9 1f             	shr    $0x1f,%ecx
4792bb:	03 ca                	add    %edx,%ecx
4792bd:	8b d1                	mov    %ecx,%edx
4792bf:	d1 ea                	shr    $1,%edx
4792c1:	2b c2                	sub    %edx,%eax
4792c3:	3b c8                	cmp    %eax,%ecx
4792c5:	76 07                	jbe    0x4792ce
4792c7:	be aa aa aa 0a       	mov    $0xaaaaaaa,%esi
4792cc:	eb 08                	jmp    0x4792d6
4792ce:	8d 34 0a             	lea    (%edx,%ecx,1),%esi
4792d1:	3b f3                	cmp    %ebx,%esi
4792d3:	0f 42 f3             	cmovb  %ebx,%esi
4792d6:	56                   	push   %esi
4792d7:	8b cf                	mov    %edi,%ecx
4792d9:	89 75 e8             	mov    %esi,-0x18(%ebp)
4792dc:	e8 df 42 02 00       	call   0x49d5c0
4792e1:	ff 75 0c             	push   0xc(%ebp)
4792e4:	8b d8                	mov    %eax,%ebx
4792e6:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
4792ed:	8b 45 ec             	mov    -0x14(%ebp),%eax
4792f0:	89 5d d8             	mov    %ebx,-0x28(%ebp)
4792f3:	8d 0c 40             	lea    (%eax,%eax,2),%ecx
4792f6:	8d 0c cb             	lea    (%ebx,%ecx,8),%ecx
4792f9:	8d 41 18             	lea    0x18(%ecx),%eax
4792fc:	89 4d e0             	mov    %ecx,-0x20(%ebp)
4792ff:	89 45 ec             	mov    %eax,-0x14(%ebp)
479302:	e8 19 d4 fd ff       	call   0x456720
479307:	8b 47 04             	mov    0x4(%edi),%eax
47930a:	8b 55 08             	mov    0x8(%ebp),%edx
47930d:	8b 0f                	mov    (%edi),%ecx
47930f:	3b d0                	cmp    %eax,%edx
479311:	75 04                	jne    0x479317
479313:	8b d3                	mov    %ebx,%edx
479315:	eb 15                	jmp    0x47932c
479317:	57                   	push   %edi
479318:	53                   	push   %ebx
479319:	52                   	push   %edx
47931a:	51                   	push   %ecx
47931b:	e8 c0 02 ff ff       	call   0x4695e0
479320:	8b 4d 08             	mov    0x8(%ebp),%ecx
479323:	83 c4 10             	add    $0x10,%esp
479326:	8b 47 04             	mov    0x4(%edi),%eax
479329:	8b 55 ec             	mov    -0x14(%ebp),%edx
47932c:	57                   	push   %edi
47932d:	52                   	push   %edx
47932e:	50                   	push   %eax
47932f:	51                   	push   %ecx
479330:	e8 ab 02 ff ff       	call   0x4695e0
479335:	8b 45 e4             	mov    -0x1c(%ebp),%eax
479338:	83 c4 10             	add    $0x10,%esp
47933b:	40                   	inc    %eax
47933c:	8b cf                	mov    %edi,%ecx
47933e:	56                   	push   %esi
47933f:	50                   	push   %eax
479340:	53                   	push   %ebx
479341:	e8 5a 2d 02 00       	call   0x49c0a0
479346:	8b 45 e0             	mov    -0x20(%ebp),%eax
479349:	8b 4d f4             	mov    -0xc(%ebp),%ecx
47934c:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
479353:	59                   	pop    %ecx
479354:	5f                   	pop    %edi
479355:	5e                   	pop    %esi
479356:	5b                   	pop    %ebx
479357:	8b e5                	mov    %ebp,%esp
479359:	5d                   	pop    %ebp
47935a:	c2 08 00             	ret    $0x8
47935d:	8b 45 ec             	mov    -0x14(%ebp),%eax
479360:	8b 4d dc             	mov    -0x24(%ebp),%ecx
479363:	50                   	push   %eax
479364:	50                   	push   %eax
479365:	e8 f6 30 02 00       	call   0x49c460
47936a:	ff 75 e8             	push   -0x18(%ebp)
47936d:	8b 4d dc             	mov    -0x24(%ebp),%ecx
479370:	ff 75 d8             	push   -0x28(%ebp)
479373:	e8 68 45 02 00       	call   0x49d8e0
479378:	6a 00                	push   $0x0
47937a:	6a 00                	push   $0x0
47937c:	e8 be a7 15 00       	call   0x5d3b3f
479381:	e8 1a 34 fe ff       	call   0x45c7a0
479386:	cc                   	int3
479387:	cc                   	int3
479388:	cc                   	int3
479389:	cc                   	int3
47938a:	cc                   	int3
47938b:	cc                   	int3
47938c:	cc                   	int3
47938d:	cc                   	int3
47938e:	cc                   	int3
47938f:	cc                   	int3
479390:	55                   	push   %ebp
479391:	8b ec                	mov    %esp,%ebp
479393:	83 ec 08             	sub    $0x8,%esp
479396:	8b 41 04             	mov    0x4(%ecx),%eax
479399:	53                   	push   %ebx
47939a:	56                   	push   %esi
47939b:	8b 75 08             	mov    0x8(%ebp),%esi
47939e:	8b d6                	mov    %esi,%edx
4793a0:	57                   	push   %edi
4793a1:	8b 39                	mov    (%ecx),%edi
4793a3:	2b d7                	sub    %edi,%edx
4793a5:	2b c7                	sub    %edi,%eax
4793a7:	c1 fa 05             	sar    $0x5,%edx
4793aa:	c1 f8 05             	sar    $0x5,%eax
4793ad:	89 4d fc             	mov    %ecx,-0x4(%ebp)
4793b0:	89 55 08             	mov    %edx,0x8(%ebp)
4793b3:	3d ff ff ff 07       	cmp    $0x7ffffff,%eax
4793b8:	0f 84 74 01 00 00    	je     0x479532
4793be:	8b 59 08             	mov    0x8(%ecx),%ebx
4793c1:	40                   	inc    %eax
4793c2:	2b df                	sub    %edi,%ebx
4793c4:	89 45 f8             	mov    %eax,-0x8(%ebp)
4793c7:	c1 fb 05             	sar    $0x5,%ebx
4793ca:	b8 ff ff ff 07       	mov    $0x7ffffff,%eax
4793cf:	8b fb                	mov    %ebx,%edi
4793d1:	d1 ef                	shr    $1,%edi
4793d3:	2b c7                	sub    %edi,%eax
4793d5:	3b d8                	cmp    %eax,%ebx
4793d7:	0f 87 50 01 00 00    	ja     0x47952d
4793dd:	8d 04 1f             	lea    (%edi,%ebx,1),%eax
4793e0:	8b 5d f8             	mov    -0x8(%ebp),%ebx
4793e3:	3b c3                	cmp    %ebx,%eax
4793e5:	0f 43 d8             	cmovae %eax,%ebx
4793e8:	81 fb ff ff ff 07    	cmp    $0x7ffffff,%ebx
4793ee:	0f 87 39 01 00 00    	ja     0x47952d
4793f4:	c1 e3 05             	shl    $0x5,%ebx
4793f7:	81 fb 00 10 00 00    	cmp    $0x1000,%ebx
4793fd:	72 2d                	jb     0x47942c
4793ff:	8d 43 23             	lea    0x23(%ebx),%eax
479402:	3b c3                	cmp    %ebx,%eax
479404:	0f 86 23 01 00 00    	jbe    0x47952d
47940a:	50                   	push   %eax
47940b:	e8 15 7e 15 00       	call   0x5d1225
479410:	83 c4 04             	add    $0x4,%esp
479413:	85 c0                	test   %eax,%eax
479415:	0f 84 1c 01 00 00    	je     0x479537
47941b:	8b 4d fc             	mov    -0x4(%ebp),%ecx
47941e:	8d 78 23             	lea    0x23(%eax),%edi
479421:	8b 55 08             	mov    0x8(%ebp),%edx
479424:	83 e7 e0             	and    $0xffffffe0,%edi
479427:	89 47 fc             	mov    %eax,-0x4(%edi)
47942a:	eb 19                	jmp    0x479445
47942c:	85 db                	test   %ebx,%ebx
47942e:	74 13                	je     0x479443
479430:	53                   	push   %ebx
479431:	e8 ef 7d 15 00       	call   0x5d1225
479436:	8b 4d fc             	mov    -0x4(%ebp),%ecx
479439:	83 c4 04             	add    $0x4,%esp
47943c:	8b 55 08             	mov    0x8(%ebp),%edx
47943f:	8b f8                	mov    %eax,%edi
479441:	eb 02                	jmp    0x479445
479443:	33 ff                	xor    %edi,%edi
479445:	8b 45 0c             	mov    0xc(%ebp),%eax
479448:	c1 e2 05             	shl    $0x5,%edx
47944b:	03 d7                	add    %edi,%edx
47944d:	89 55 08             	mov    %edx,0x8(%ebp)
479450:	0f 10 00             	movups (%eax),%xmm0
479453:	0f 11 02             	movups %xmm0,(%edx)
479456:	0f 10 40 10          	movups 0x10(%eax),%xmm0
47945a:	0f 11 42 10          	movups %xmm0,0x10(%edx)
47945e:	8b 51 04             	mov    0x4(%ecx),%edx
479461:	8b 01                	mov    (%ecx),%eax
479463:	8b cf                	mov    %edi,%ecx
479465:	3b f2                	cmp    %edx,%esi
479467:	75 22                	jne    0x47948b
479469:	3b c2                	cmp    %edx,%eax
47946b:	74 6c                	je     0x4794d9
47946d:	0f 1f 00             	nopl   (%eax)
479470:	0f 10 00             	movups (%eax),%xmm0
479473:	8d 49 20             	lea    0x20(%ecx),%ecx
479476:	0f 11 41 e0          	movups %xmm0,-0x20(%ecx)
47947a:	0f 10 40 10          	movups 0x10(%eax),%xmm0
47947e:	83 c0 20             	add    $0x20,%eax
479481:	0f 11 41 f0          	movups %xmm0,-0x10(%ecx)
479485:	3b c2                	cmp    %edx,%eax
479487:	75 e7                	jne    0x479470
479489:	eb 4e                	jmp    0x4794d9
47948b:	3b c6                	cmp    %esi,%eax
47948d:	74 20                	je     0x4794af
47948f:	90                   	nop
479490:	0f 10 00             	movups (%eax),%xmm0
479493:	8d 49 20             	lea    0x20(%ecx),%ecx
479496:	0f 11 41 e0          	movups %xmm0,-0x20(%ecx)
47949a:	0f 10 40 10          	movups 0x10(%eax),%xmm0
47949e:	83 c0 20             	add    $0x20,%eax
4794a1:	0f 11 41 f0          	movups %xmm0,-0x10(%ecx)
4794a5:	3b c6                	cmp    %esi,%eax
4794a7:	75 e7                	jne    0x479490
4794a9:	8b 55 fc             	mov    -0x4(%ebp),%edx
4794ac:	8b 52 04             	mov    0x4(%edx),%edx
4794af:	3b f2                	cmp    %edx,%esi
4794b1:	74 26                	je     0x4794d9
4794b3:	8b 45 08             	mov    0x8(%ebp),%eax
4794b6:	83 c0 20             	add    $0x20,%eax
4794b9:	0f 1f 80 00 00 00 00 	nopl   0x0(%eax)
4794c0:	0f 10 06             	movups (%esi),%xmm0
4794c3:	8d 40 20             	lea    0x20(%eax),%eax
4794c6:	0f 11 40 e0          	movups %xmm0,-0x20(%eax)
4794ca:	0f 10 46 10          	movups 0x10(%esi),%xmm0
4794ce:	83 c6 20             	add    $0x20,%esi
4794d1:	0f 11 40 f0          	movups %xmm0,-0x10(%eax)
4794d5:	3b f2                	cmp    %edx,%esi
4794d7:	75 e7                	jne    0x4794c0
4794d9:	8b 75 fc             	mov    -0x4(%ebp),%esi
4794dc:	8b 06                	mov    (%esi),%eax
4794de:	85 c0                	test   %eax,%eax
4794e0:	74 2c                	je     0x47950e
4794e2:	8b 4e 08             	mov    0x8(%esi),%ecx
4794e5:	2b c8                	sub    %eax,%ecx
4794e7:	83 e1 e0             	and    $0xffffffe0,%ecx
4794ea:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
4794f0:	72 12                	jb     0x479504
4794f2:	8b 50 fc             	mov    -0x4(%eax),%edx
4794f5:	83 c1 23             	add    $0x23,%ecx
4794f8:	2b c2                	sub    %edx,%eax
4794fa:	83 c0 fc             	add    $0xfffffffc,%eax
4794fd:	83 f8 1f             	cmp    $0x1f,%eax
479500:	77 35                	ja     0x479537
479502:	8b c2                	mov    %edx,%eax
479504:	51                   	push   %ecx
479505:	50                   	push   %eax
479506:	e8 4a 7d 15 00       	call   0x5d1255
47950b:	83 c4 08             	add    $0x8,%esp
47950e:	8b 45 f8             	mov    -0x8(%ebp),%eax
479511:	8d 0c 3b             	lea    (%ebx,%edi,1),%ecx
479514:	c1 e0 05             	shl    $0x5,%eax
479517:	89 3e                	mov    %edi,(%esi)
479519:	03 c7                	add    %edi,%eax
47951b:	89 46 04             	mov    %eax,0x4(%esi)
47951e:	8b 45 08             	mov    0x8(%ebp),%eax
479521:	5f                   	pop    %edi
479522:	89 4e 08             	mov    %ecx,0x8(%esi)
479525:	5e                   	pop    %esi
479526:	5b                   	pop    %ebx
479527:	8b e5                	mov    %ebp,%esp
479529:	5d                   	pop    %ebp
47952a:	c2 08 00             	ret    $0x8
47952d:	e8 be e0 fc ff       	call   0x4475f0
479532:	e8 69 32 fe ff       	call   0x45c7a0
479537:	e8 b4 cc 15 00       	call   0x5d61f0
47953c:	cc                   	int3
47953d:	cc                   	int3
47953e:	cc                   	int3
47953f:	cc                   	int3
479540:	55                   	push   %ebp
479541:	8b ec                	mov    %esp,%ebp
479543:	8b 55 08             	mov    0x8(%ebp),%edx
479546:	83 ec 10             	sub    $0x10,%esp
479549:	b8 79 78 78 78       	mov    $0x78787879,%eax
47954e:	53                   	push   %ebx