4691fa:	89 70 04             	mov    %esi,0x4(%eax)
4691fd:	eb 0e                	jmp    0x46920d
4691ff:	8b 41 04             	mov    0x4(%ecx),%eax
469202:	3b 08                	cmp    (%eax),%ecx
469204:	75 04                	jne    0x46920a
469206:	89 30                	mov    %esi,(%eax)
469208:	eb 03                	jmp    0x46920d
46920a:	89 70 08             	mov    %esi,0x8(%eax)
46920d:	89 0e                	mov    %ecx,(%esi)
46920f:	89 71 04             	mov    %esi,0x4(%ecx)
469212:	8b 42 04             	mov    0x4(%edx),%eax
469215:	80 78 0c 00          	cmpb   $0x0,0xc(%eax)
469219:	0f 84 71 fe ff ff    	je     0x469090
46921f:	8b 4d f8             	mov    -0x8(%ebp),%ecx
469222:	5f                   	pop    %edi
469223:	5e                   	pop    %esi
469224:	5b                   	pop    %ebx
469225:	8b 41 04             	mov    0x4(%ecx),%eax
469228:	c6 40 0c 01          	movb   $0x1,0xc(%eax)
46922c:	8b 45 10             	mov    0x10(%ebp),%eax
46922f:	8b e5                	mov    %ebp,%esp
469231:	5d                   	pop    %ebp
469232:	c2 0c 00             	ret    $0xc
469235:	cc                   	int3
469236:	cc                   	int3
469237:	cc                   	int3
469238:	cc                   	int3
469239:	cc                   	int3
46923a:	cc                   	int3
46923b:	cc                   	int3
46923c:	cc                   	int3
46923d:	cc                   	int3
46923e:	cc                   	int3
46923f:	cc                   	int3
469240:	55                   	push   %ebp
469241:	8b ec                	mov    %esp,%ebp
469243:	53                   	push   %ebx
469244:	56                   	push   %esi
469245:	8b f1                	mov    %ecx,%esi
469247:	57                   	push   %edi
469248:	ff 75 08             	push   0x8(%ebp)
46924b:	8b 5e 04             	mov    0x4(%esi),%ebx
46924e:	2b 1e                	sub    (%esi),%ebx
469250:	c1 fb 02             	sar    $0x2,%ebx
469253:	e8 78 00 00 00       	call   0x4692d0
469258:	8b 16                	mov    (%esi),%edx
46925a:	8b f8                	mov    %eax,%edi
46925c:	8b 4e 04             	mov    0x4(%esi),%ecx
46925f:	2b ca                	sub    %edx,%ecx
469261:	51                   	push   %ecx
469262:	52                   	push   %edx
469263:	57                   	push   %edi
469264:	e8 67 9b 16 00       	call   0x5d2dd0
469269:	8b 06                	mov    (%esi),%eax
46926b:	83 c4 0c             	add    $0xc,%esp
46926e:	85 c0                	test   %eax,%eax
469270:	74 2c                	je     0x46929e
469272:	8b 4e 08             	mov    0x8(%esi),%ecx
469275:	2b c8                	sub    %eax,%ecx
469277:	83 e1 fc             	and    $0xfffffffc,%ecx
46927a:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
469280:	72 12                	jb     0x469294
469282:	8b 50 fc             	mov    -0x4(%eax),%edx
469285:	83 c1 23             	add    $0x23,%ecx
469288:	2b c2                	sub    %edx,%eax
46928a:	83 c0 fc             	add    $0xfffffffc,%eax
46928d:	83 f8 1f             	cmp    $0x1f,%eax
469290:	77 24                	ja     0x4692b6
469292:	8b c2                	mov    %edx,%eax
469294:	51                   	push   %ecx
469295:	50                   	push   %eax
469296:	e8 ba 7f 16 00       	call   0x5d1255
46929b:	83 c4 08             	add    $0x8,%esp
46929e:	8d 04 9f             	lea    (%edi,%ebx,4),%eax
4692a1:	89 3e                	mov    %edi,(%esi)
4692a3:	89 46 04             	mov    %eax,0x4(%esi)
4692a6:	8b 45 08             	mov    0x8(%ebp),%eax
4692a9:	8d 04 87             	lea    (%edi,%eax,4),%eax
4692ac:	5f                   	pop    %edi
4692ad:	89 46 08             	mov    %eax,0x8(%esi)
4692b0:	5e                   	pop    %esi
4692b1:	5b                   	pop    %ebx
4692b2:	5d                   	pop    %ebp
4692b3:	c2 04 00             	ret    $0x4
4692b6:	e8 35 cf 16 00       	call   0x5d61f0
4692bb:	cc                   	int3
4692bc:	cc                   	int3
4692bd:	cc                   	int3
4692be:	cc                   	int3
4692bf:	cc                   	int3
4692c0:	68 70 6a 60 00       	push   $0x606a70
4692c5:	e8 0c 79 16 00       	call   0x5d0bd6
4692ca:	cc                   	int3
4692cb:	cc                   	int3
4692cc:	cc                   	int3
4692cd:	cc                   	int3
4692ce:	cc                   	int3
4692cf:	cc                   	int3
4692d0:	55                   	push   %ebp
4692d1:	8b ec                	mov    %esp,%ebp
4692d3:	8b 45 08             	mov    0x8(%ebp),%eax
4692d6:	3d ff ff ff 3f       	cmp    $0x3fffffff,%eax
4692db:	77 44                	ja     0x469321
4692dd:	c1 e0 02             	shl    $0x2,%eax
4692e0:	3d 00 10 00 00       	cmp    $0x1000,%eax
4692e5:	72 23                	jb     0x46930a
4692e7:	8d 48 23             	lea    0x23(%eax),%ecx
4692ea:	3b c8                	cmp    %eax,%ecx
4692ec:	76 33                	jbe    0x469321
4692ee:	51                   	push   %ecx
4692ef:	e8 31 7f 16 00       	call   0x5d1225
4692f4:	8b c8                	mov    %eax,%ecx
4692f6:	83 c4 04             	add    $0x4,%esp
4692f9:	85 c9                	test   %ecx,%ecx
4692fb:	74 29                	je     0x469326
4692fd:	8d 41 23             	lea    0x23(%ecx),%eax
469300:	83 e0 e0             	and    $0xffffffe0,%eax
469303:	89 48 fc             	mov    %ecx,-0x4(%eax)
469306:	5d                   	pop    %ebp
469307:	c2 04 00             	ret    $0x4
46930a:	85 c0                	test   %eax,%eax
46930c:	74 0d                	je     0x46931b
46930e:	50                   	push   %eax
46930f:	e8 11 7f 16 00       	call   0x5d1225
469314:	83 c4 04             	add    $0x4,%esp
469317:	5d                   	pop    %ebp
469318:	c2 04 00             	ret    $0x4
46931b:	33 c0                	xor    %eax,%eax
46931d:	5d                   	pop    %ebp
46931e:	c2 04 00             	ret    $0x4
469321:	e8 ca e2 fd ff       	call   0x4475f0
469326:	e8 c5 ce 16 00       	call   0x5d61f0
46932b:	cc                   	int3
46932c:	cc                   	int3
46932d:	cc                   	int3
46932e:	cc                   	int3
46932f:	cc                   	int3
469330:	80 79 27 00          	cmpb   $0x0,0x27(%ecx)
469334:	75 18                	jne    0x46934e
469336:	8b 41 30             	mov    0x30(%ecx),%eax
469339:	2b 48 14             	sub    0x14(%eax),%ecx
46933c:	b8 e9 a2 8b 2e       	mov    $0x2e8ba2e9,%eax
469341:	f7 e9                	imul   %ecx
469343:	c1 fa 04             	sar    $0x4,%edx
469346:	8b c2                	mov    %edx,%eax
469348:	c1 e8 1f             	shr    $0x1f,%eax
46934b:	03 c2                	add    %edx,%eax
46934d:	c3                   	ret
46934e:	8b 41 38             	mov    0x38(%ecx),%eax
469351:	85 c0                	test   %eax,%eax
469353:	74 15                	je     0x46936a
469355:	2b 48 28             	sub    0x28(%eax),%ecx
469358:	b8 e9 a2 8b 2e       	mov    $0x2e8ba2e9,%eax
46935d:	f7 e9                	imul   %ecx
46935f:	c1 fa 04             	sar    $0x4,%edx
469362:	8b c2                	mov    %edx,%eax
469364:	c1 e8 1f             	shr    $0x1f,%eax
469367:	03 c2                	add    %edx,%eax
469369:	c3                   	ret
46936a:	8b 41 14             	mov    0x14(%ecx),%eax
46936d:	2b 48 50             	sub    0x50(%eax),%ecx
469370:	b8 e9 a2 8b 2e       	mov    $0x2e8ba2e9,%eax
469375:	f7 e9                	imul   %ecx
469377:	c1 fa 04             	sar    $0x4,%edx
46937a:	8b c2                	mov    %edx,%eax
46937c:	c1 e8 1f             	shr    $0x1f,%eax
46937f:	03 c2                	add    %edx,%eax
469381:	c3                   	ret
469382:	cc                   	int3
469383:	cc                   	int3
469384:	cc                   	int3
469385:	cc                   	int3
469386:	cc                   	int3
469387:	cc                   	int3
469388:	cc                   	int3
469389:	cc                   	int3
46938a:	cc                   	int3
46938b:	cc                   	int3
46938c:	cc                   	int3
46938d:	cc                   	int3
46938e:	cc                   	int3
46938f:	cc                   	int3
469390:	55                   	push   %ebp
469391:	8b ec                	mov    %esp,%ebp
469393:	56                   	push   %esi
469394:	8b 75 08             	mov    0x8(%ebp),%esi
469397:	57                   	push   %edi
469398:	8b 7d 0c             	mov    0xc(%ebp),%edi
46939b:	3b f7                	cmp    %edi,%esi
46939d:	74 48                	je     0x4693e7
46939f:	90                   	nop
4693a0:	8b 4e 14             	mov    0x14(%esi),%ecx
4693a3:	83 f9 10             	cmp    $0x10,%ecx
4693a6:	72 27                	jb     0x4693cf
4693a8:	8b 06                	mov    (%esi),%eax
4693aa:	41                   	inc    %ecx
4693ab:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
4693b1:	72 12                	jb     0x4693c5
4693b3:	8b 50 fc             	mov    -0x4(%eax),%edx
4693b6:	83 c1 23             	add    $0x23,%ecx
4693b9:	2b c2                	sub    %edx,%eax
4693bb:	83 c0 fc             	add    $0xfffffffc,%eax
4693be:	83 f8 1f             	cmp    $0x1f,%eax
4693c1:	77 28                	ja     0x4693eb
4693c3:	8b c2                	mov    %edx,%eax
4693c5:	51                   	push   %ecx
4693c6:	50                   	push   %eax
4693c7:	e8 89 7e 16 00       	call   0x5d1255
4693cc:	83 c4 08             	add    $0x8,%esp
4693cf:	c7 46 10 00 00 00 00 	movl   $0x0,0x10(%esi)
4693d6:	c7 46 14 0f 00 00 00 	movl   $0xf,0x14(%esi)
4693dd:	c6 06 00             	movb   $0x0,(%esi)
4693e0:	83 c6 18             	add    $0x18,%esi
4693e3:	3b f7                	cmp    %edi,%esi
4693e5:	75 b9                	jne    0x4693a0
4693e7:	5f                   	pop    %edi
4693e8:	5e                   	pop    %esi
4693e9:	5d                   	pop    %ebp
4693ea:	c3                   	ret
4693eb:	e8 00 ce 16 00       	call   0x5d61f0
4693f0:	cc                   	int3
4693f1:	cc                   	int3
4693f2:	cc                   	int3
4693f3:	cc                   	int3
4693f4:	cc                   	int3
4693f5:	cc                   	int3
4693f6:	cc                   	int3
4693f7:	cc                   	int3
4693f8:	cc                   	int3
4693f9:	cc                   	int3
4693fa:	cc                   	int3
4693fb:	cc                   	int3
4693fc:	cc                   	int3
4693fd:	cc                   	int3
4693fe:	cc                   	int3
4693ff:	cc                   	int3
469400:	55                   	push   %ebp
469401:	8b ec                	mov    %esp,%ebp
469403:	83 ec 08             	sub    $0x8,%esp
469406:	8b 55 08             	mov    0x8(%ebp),%edx
469409:	b8 ab aa aa 2a       	mov    $0x2aaaaaab,%eax
46940e:	53                   	push   %ebx
46940f:	56                   	push   %esi
469410:	57                   	push   %edi
469411:	8b f9                	mov    %ecx,%edi
469413:	8b 37                	mov    (%edi),%esi
469415:	2b d6                	sub    %esi,%edx
469417:	8b 4f 04             	mov    0x4(%edi),%ecx
46941a:	f7 ea                	imul   %edx
46941c:	2b ce                	sub    %esi,%ecx
46941e:	c1 fa 02             	sar    $0x2,%edx
469421:	8b c2                	mov    %edx,%eax
469423:	c1 e8 1f             	shr    $0x1f,%eax
469426:	03 c2                	add    %edx,%eax
469428:	89 45 fc             	mov    %eax,-0x4(%ebp)
46942b:	b8 ab aa aa 2a       	mov    $0x2aaaaaab,%eax
469430:	f7 e9                	imul   %ecx
469432:	c1 fa 02             	sar    $0x2,%edx
469435:	8b c2                	mov    %edx,%eax
469437:	c1 e8 1f             	shr    $0x1f,%eax
46943a:	03 c2                	add    %edx,%eax
46943c:	89 45 f8             	mov    %eax,-0x8(%ebp)
46943f:	3d aa aa aa 0a       	cmp    $0xaaaaaaa,%eax
469444:	0f 84 7d 01 00 00    	je     0x4695c7
46944a:	8b 4f 08             	mov    0x8(%edi),%ecx
46944d:	8d 58 01             	lea    0x1(%eax),%ebx
469450:	2b ce                	sub    %esi,%ecx
469452:	b8 ab aa aa 2a       	mov    $0x2aaaaaab,%eax
469457:	f7 e9                	imul   %ecx
469459:	b8 aa aa aa 0a       	mov    $0xaaaaaaa,%eax
46945e:	c1 fa 02             	sar    $0x2,%edx
469461:	8b ca                	mov    %edx,%ecx
469463:	c1 e9 1f             	shr    $0x1f,%ecx
469466:	03 ca                	add    %edx,%ecx
469468:	8b d1                	mov    %ecx,%edx
46946a:	d1 ea                	shr    $1,%edx
46946c:	2b c2                	sub    %edx,%eax
46946e:	3b c8                	cmp    %eax,%ecx
469470:	0f 87 4c 01 00 00    	ja     0x4695c2
469476:	8d 04 0a             	lea    (%edx,%ecx,1),%eax
469479:	8b cb                	mov    %ebx,%ecx
46947b:	3b c3                	cmp    %ebx,%eax
46947d:	0f 43 c8             	cmovae %eax,%ecx
469480:	81 f9 aa aa aa 0a    	cmp    $0xaaaaaaa,%ecx
469486:	0f 87 36 01 00 00    	ja     0x4695c2
46948c:	8d 1c 49             	lea    (%ecx,%ecx,2),%ebx
46948f:	c1 e3 03             	shl    $0x3,%ebx
469492:	81 fb 00 10 00 00    	cmp    $0x1000,%ebx
469498:	72 27                	jb     0x4694c1
46949a:	8d 43 23             	lea    0x23(%ebx),%eax
46949d:	3b c3                	cmp    %ebx,%eax
46949f:	0f 86 1d 01 00 00    	jbe    0x4695c2
4694a5:	50                   	push   %eax
4694a6:	e8 7a 7d 16 00       	call   0x5d1225
4694ab:	83 c4 04             	add    $0x4,%esp
4694ae:	85 c0                	test   %eax,%eax
4694b0:	0f 84 16 01 00 00    	je     0x4695cc
4694b6:	8d 70 23             	lea    0x23(%eax),%esi
4694b9:	83 e6 e0             	and    $0xffffffe0,%esi
4694bc:	89 46 fc             	mov    %eax,-0x4(%esi)
4694bf:	eb 13                	jmp    0x4694d4
4694c1:	85 db                	test   %ebx,%ebx
4694c3:	74 0d                	je     0x4694d2
4694c5:	53                   	push   %ebx
4694c6:	e8 5a 7d 16 00       	call   0x5d1225
4694cb:	83 c4 04             	add    $0x4,%esp
4694ce:	8b f0                	mov    %eax,%esi
4694d0:	eb 02                	jmp    0x4694d4
4694d2:	33 f6                	xor    %esi,%esi
4694d4:	8b 45 fc             	mov    -0x4(%ebp),%eax
4694d7:	8d 04 40             	lea    (%eax,%eax,2),%eax
4694da:	8d 0c c6             	lea    (%esi,%eax,8),%ecx
4694dd:	8b 45 0c             	mov    0xc(%ebp),%eax
4694e0:	c7 01 00 00 00 00    	movl   $0x0,(%ecx)
4694e6:	c7 41 10 00 00 00 00 	movl   $0x0,0x10(%ecx)
4694ed:	c7 41 14 00 00 00 00 	movl   $0x0,0x14(%ecx)
4694f4:	0f 10 00             	movups (%eax),%xmm0
4694f7:	89 4d fc             	mov    %ecx,-0x4(%ebp)
4694fa:	0f 11 01             	movups %xmm0,(%ecx)
4694fd:	f3 0f 7e 40 10       	movq   0x10(%eax),%xmm0
469502:	66 0f d6 41 10       	movq   %xmm0,0x10(%ecx)
469507:	c7 40 10 00 00 00 00 	movl   $0x0,0x10(%eax)
46950e:	c7 40 14 0f 00 00 00 	movl   $0xf,0x14(%eax)
469515:	c6 00 00             	movb   $0x0,(%eax)
469518:	8b 57 04             	mov    0x4(%edi),%edx
46951b:	8b 45 08             	mov    0x8(%ebp),%eax
46951e:	8b 0f                	mov    (%edi),%ecx
469520:	3b c2                	cmp    %edx,%eax
469522:	75 04                	jne    0x469528
469524:	8b c6                	mov    %esi,%eax
469526:	eb 18                	jmp    0x469540
469528:	57                   	push   %edi
469529:	56                   	push   %esi
46952a:	50                   	push   %eax
46952b:	51                   	push   %ecx
46952c:	e8 af 00 00 00       	call   0x4695e0
469531:	8b 45 fc             	mov    -0x4(%ebp),%eax
469534:	83 c4 10             	add    $0x10,%esp
469537:	8b 4d 08             	mov    0x8(%ebp),%ecx
46953a:	83 c0 18             	add    $0x18,%eax
46953d:	8b 57 04             	mov    0x4(%edi),%edx
469540:	57                   	push   %edi
469541:	50                   	push   %eax
469542:	52                   	push   %edx
469543:	51                   	push   %ecx
469544:	e8 97 00 00 00       	call   0x4695e0
469549:	8b 0f                	mov    (%edi),%ecx
46954b:	83 c4 10             	add    $0x10,%esp
46954e:	85 c9                	test   %ecx,%ecx
469550:	74 4f                	je     0x4695a1