40c064:	0f 73 d1 17          	psrlq  $0x17,%mm1
40c068:	0f d4 7c 24 18       	paddq  0x18(%esp),%mm7
40c06d:	0f ef d9             	pxor   %mm1,%mm3
40c070:	0f 73 f4 04          	psllq  $0x4,%mm4
40c074:	0f ef dc             	pxor   %mm4,%mm3
40c077:	0f 6f 64 24 38       	movq   0x38(%esp),%mm4
40c07c:	0f d4 df             	paddq  %mm7,%mm3
40c07f:	0f 6f e8             	movq   %mm0,%mm5
40c082:	0f 73 d5 1c          	psrlq  $0x1c,%mm5
40c086:	0f d4 e3             	paddq  %mm3,%mm4
40c089:	0f 6f f0             	movq   %mm0,%mm6
40c08c:	0f 6f fd             	movq   %mm5,%mm7
40c08f:	0f 73 f6 19          	psllq  $0x19,%mm6
40c093:	0f 6f 4c 24 28       	movq   0x28(%esp),%mm1
40c098:	0f 73 d5 06          	psrlq  $0x6,%mm5
40c09c:	0f ef fe             	pxor   %mm6,%mm7
40c09f:	0f 73 f6 05          	psllq  $0x5,%mm6
40c0a3:	0f ef fd             	pxor   %mm5,%mm7
40c0a6:	0f ef c1             	pxor   %mm1,%mm0
40c0a9:	0f 73 d5 05          	psrlq  $0x5,%mm5
40c0ad:	0f ef fe             	pxor   %mm6,%mm7
40c0b0:	0f db d0             	pand   %mm0,%mm2
40c0b3:	0f 73 f6 06          	psllq  $0x6,%mm6
40c0b7:	0f ef fd             	pxor   %mm5,%mm7
40c0ba:	0f ef d1             	pxor   %mm1,%mm2
40c0bd:	0f ef f7             	pxor   %mm7,%mm6
40c0c0:	0f 6f 2c 24          	movq   (%esp),%mm5
40c0c4:	0f d4 d6             	paddq  %mm6,%mm2
40c0c7:	0f 6f 74 24 08       	movq   0x8(%esp),%mm6
40c0cc:	0f 6f cc             	movq   %mm4,%mm1
40c0cf:	0f 6f 7a e8          	movq   -0x18(%edx),%mm7
40c0d3:	0f ef ee             	pxor   %mm6,%mm5
40c0d6:	0f 73 d1 0e          	psrlq  $0xe,%mm1
40c0da:	0f 7f 64 24 38       	movq   %mm4,0x38(%esp)
40c0df:	0f db ec             	pand   %mm4,%mm5
40c0e2:	0f 73 f4 17          	psllq  $0x17,%mm4
40c0e6:	0f d4 d3             	paddq  %mm3,%mm2
40c0e9:	0f 6f d9             	movq   %mm1,%mm3
40c0ec:	0f 73 d1 04          	psrlq  $0x4,%mm1
40c0f0:	0f ef ee             	pxor   %mm6,%mm5
40c0f3:	0f ef dc             	pxor   %mm4,%mm3
40c0f6:	0f 73 f4 17          	psllq  $0x17,%mm4
40c0fa:	0f ef d9             	pxor   %mm1,%mm3
40c0fd:	0f 7f 54 24 18       	movq   %mm2,0x18(%esp)
40c102:	0f d4 fd             	paddq  %mm5,%mm7
40c105:	0f ef dc             	pxor   %mm4,%mm3
40c108:	0f 73 d1 17          	psrlq  $0x17,%mm1
40c10c:	0f d4 7c 24 10       	paddq  0x10(%esp),%mm7
40c111:	0f ef d9             	pxor   %mm1,%mm3
40c114:	0f 73 f4 04          	psllq  $0x4,%mm4
40c118:	0f ef dc             	pxor   %mm4,%mm3
40c11b:	0f 6f 64 24 30       	movq   0x30(%esp),%mm4
40c120:	0f d4 df             	paddq  %mm7,%mm3
40c123:	0f 6f ea             	movq   %mm2,%mm5
40c126:	0f 73 d5 1c          	psrlq  $0x1c,%mm5
40c12a:	0f d4 e3             	paddq  %mm3,%mm4
40c12d:	0f 6f f2             	movq   %mm2,%mm6
40c130:	0f 6f fd             	movq   %mm5,%mm7
40c133:	0f 73 f6 19          	psllq  $0x19,%mm6
40c137:	0f 6f 4c 24 20       	movq   0x20(%esp),%mm1
40c13c:	0f 73 d5 06          	psrlq  $0x6,%mm5
40c140:	0f ef fe             	pxor   %mm6,%mm7
40c143:	0f 73 f6 05          	psllq  $0x5,%mm6
40c147:	0f ef fd             	pxor   %mm5,%mm7
40c14a:	0f ef d1             	pxor   %mm1,%mm2
40c14d:	0f 73 d5 05          	psrlq  $0x5,%mm5
40c151:	0f ef fe             	pxor   %mm6,%mm7
40c154:	0f db c2             	pand   %mm2,%mm0
40c157:	0f 73 f6 06          	psllq  $0x6,%mm6
40c15b:	0f ef fd             	pxor   %mm5,%mm7
40c15e:	0f ef c1             	pxor   %mm1,%mm0
40c161:	0f ef f7             	pxor   %mm7,%mm6
40c164:	0f 6f 6c 24 38       	movq   0x38(%esp),%mm5
40c169:	0f d4 c6             	paddq  %mm6,%mm0
40c16c:	0f 6f 34 24          	movq   (%esp),%mm6
40c170:	66 0f 7f 4a e0       	movdqa %xmm1,-0x20(%edx)
40c175:	66 0f 7f 52 20       	movdqa %xmm2,0x20(%edx)
40c17a:	66 0f 6f 55 70       	movdqa 0x70(%ebp),%xmm2
40c17f:	66 0f 6f 02          	movdqa (%edx),%xmm0
40c183:	66 0f d4 d7          	paddq  %xmm7,%xmm2
40c187:	0f 6f cc             	movq   %mm4,%mm1
40c18a:	0f 6f 7a f0          	movq   -0x10(%edx),%mm7
40c18e:	0f ef ee             	pxor   %mm6,%mm5
40c191:	0f 73 d1 0e          	psrlq  $0xe,%mm1
40c195:	0f 7f 64 24 30       	movq   %mm4,0x30(%esp)
40c19a:	0f db ec             	pand   %mm4,%mm5
40c19d:	0f 73 f4 17          	psllq  $0x17,%mm4
40c1a1:	0f d4 c3             	paddq  %mm3,%mm0
40c1a4:	0f 6f d9             	movq   %mm1,%mm3
40c1a7:	0f 73 d1 04          	psrlq  $0x4,%mm1
40c1ab:	0f ef ee             	pxor   %mm6,%mm5
40c1ae:	0f ef dc             	pxor   %mm4,%mm3
40c1b1:	0f 73 f4 17          	psllq  $0x17,%mm4
40c1b5:	0f ef d9             	pxor   %mm1,%mm3
40c1b8:	0f 7f 44 24 10       	movq   %mm0,0x10(%esp)
40c1bd:	0f d4 fd             	paddq  %mm5,%mm7
40c1c0:	0f ef dc             	pxor   %mm4,%mm3
40c1c3:	0f 73 d1 17          	psrlq  $0x17,%mm1
40c1c7:	0f d4 7c 24 08       	paddq  0x8(%esp),%mm7
40c1cc:	0f ef d9             	pxor   %mm1,%mm3
40c1cf:	0f 73 f4 04          	psllq  $0x4,%mm4
40c1d3:	0f ef dc             	pxor   %mm4,%mm3
40c1d6:	0f 6f 64 24 28       	movq   0x28(%esp),%mm4
40c1db:	0f d4 df             	paddq  %mm7,%mm3
40c1de:	0f 6f e8             	movq   %mm0,%mm5
40c1e1:	0f 73 d5 1c          	psrlq  $0x1c,%mm5
40c1e5:	0f d4 e3             	paddq  %mm3,%mm4
40c1e8:	0f 6f f0             	movq   %mm0,%mm6
40c1eb:	0f 6f fd             	movq   %mm5,%mm7
40c1ee:	0f 73 f6 19          	psllq  $0x19,%mm6
40c1f2:	0f 6f 4c 24 18       	movq   0x18(%esp),%mm1
40c1f7:	0f 73 d5 06          	psrlq  $0x6,%mm5
40c1fb:	0f ef fe             	pxor   %mm6,%mm7
40c1fe:	0f 73 f6 05          	psllq  $0x5,%mm6
40c202:	0f ef fd             	pxor   %mm5,%mm7
40c205:	0f ef c1             	pxor   %mm1,%mm0
40c208:	0f 73 d5 05          	psrlq  $0x5,%mm5
40c20c:	0f ef fe             	pxor   %mm6,%mm7
40c20f:	0f db d0             	pand   %mm0,%mm2
40c212:	0f 73 f6 06          	psllq  $0x6,%mm6
40c216:	0f ef fd             	pxor   %mm5,%mm7
40c219:	0f ef d1             	pxor   %mm1,%mm2
40c21c:	0f ef f7             	pxor   %mm7,%mm6
40c21f:	0f 6f 6c 24 30       	movq   0x30(%esp),%mm5
40c224:	0f d4 d6             	paddq  %mm6,%mm2
40c227:	0f 6f 74 24 38       	movq   0x38(%esp),%mm6
40c22c:	0f 6f cc             	movq   %mm4,%mm1
40c22f:	0f 6f 7a f8          	movq   -0x8(%edx),%mm7
40c233:	0f ef ee             	pxor   %mm6,%mm5
40c236:	0f 73 d1 0e          	psrlq  $0xe,%mm1
40c23a:	0f 7f 64 24 28       	movq   %mm4,0x28(%esp)
40c23f:	0f db ec             	pand   %mm4,%mm5
40c242:	0f 73 f4 17          	psllq  $0x17,%mm4
40c246:	0f d4 d3             	paddq  %mm3,%mm2
40c249:	0f 6f d9             	movq   %mm1,%mm3
40c24c:	0f 73 d1 04          	psrlq  $0x4,%mm1
40c250:	0f ef ee             	pxor   %mm6,%mm5
40c253:	0f ef dc             	pxor   %mm4,%mm3
40c256:	0f 73 f4 17          	psllq  $0x17,%mm4
40c25a:	0f ef d9             	pxor   %mm1,%mm3
40c25d:	0f 7f 54 24 08       	movq   %mm2,0x8(%esp)
40c262:	0f d4 fd             	paddq  %mm5,%mm7
40c265:	0f ef dc             	pxor   %mm4,%mm3
40c268:	0f 73 d1 17          	psrlq  $0x17,%mm1
40c26c:	0f d4 3c 24          	paddq  (%esp),%mm7
40c270:	0f ef d9             	pxor   %mm1,%mm3
40c273:	0f 73 f4 04          	psllq  $0x4,%mm4
40c277:	0f ef dc             	pxor   %mm4,%mm3
40c27a:	0f 6f 64 24 20       	movq   0x20(%esp),%mm4
40c27f:	0f d4 df             	paddq  %mm7,%mm3
40c282:	0f 6f ea             	movq   %mm2,%mm5
40c285:	0f 73 d5 1c          	psrlq  $0x1c,%mm5
40c289:	0f d4 e3             	paddq  %mm3,%mm4
40c28c:	0f 6f f2             	movq   %mm2,%mm6
40c28f:	0f 6f fd             	movq   %mm5,%mm7
40c292:	0f 73 f6 19          	psllq  $0x19,%mm6
40c296:	0f 6f 4c 24 10       	movq   0x10(%esp),%mm1
40c29b:	0f 73 d5 06          	psrlq  $0x6,%mm5
40c29f:	0f ef fe             	pxor   %mm6,%mm7
40c2a2:	0f 73 f6 05          	psllq  $0x5,%mm6
40c2a6:	0f ef fd             	pxor   %mm5,%mm7
40c2a9:	0f ef d1             	pxor   %mm1,%mm2
40c2ac:	0f 73 d5 05          	psrlq  $0x5,%mm5
40c2b0:	0f ef fe             	pxor   %mm6,%mm7
40c2b3:	0f db c2             	pand   %mm2,%mm0
40c2b6:	0f 73 f6 06          	psllq  $0x6,%mm6
40c2ba:	0f ef fd             	pxor   %mm5,%mm7
40c2bd:	0f ef c1             	pxor   %mm1,%mm0
40c2c0:	0f ef f7             	pxor   %mm7,%mm6
40c2c3:	0f 6f 6c 24 28       	movq   0x28(%esp),%mm5
40c2c8:	0f d4 c6             	paddq  %mm6,%mm0
40c2cb:	0f 6f 74 24 30       	movq   0x30(%esp),%mm6
40c2d0:	66 0f 7f 52 f0       	movdqa %xmm2,-0x10(%edx)
40c2d5:	0f 6f 4c 24 08       	movq   0x8(%esp),%mm1
40c2da:	0f d4 c3             	paddq  %mm3,%mm0
40c2dd:	0f 6f 5c 24 18       	movq   0x18(%esp),%mm3
40c2e2:	0f 6f 7c 24 38       	movq   0x38(%esp),%mm7
40c2e7:	0f ef d1             	pxor   %mm1,%mm2
40c2ea:	0f d4 06             	paddq  (%esi),%mm0
40c2ed:	0f d4 4e 08          	paddq  0x8(%esi),%mm1
40c2f1:	0f d4 56 10          	paddq  0x10(%esi),%mm2
40c2f5:	0f d4 5e 18          	paddq  0x18(%esi),%mm3
40c2f9:	0f d4 66 20          	paddq  0x20(%esi),%mm4
40c2fd:	0f d4 6e 28          	paddq  0x28(%esi),%mm5
40c301:	0f d4 76 30          	paddq  0x30(%esi),%mm6
40c305:	0f d4 7e 38          	paddq  0x38(%esi),%mm7
40c309:	0f 7f 06             	movq   %mm0,(%esi)
40c30c:	0f 7f 4e 08          	movq   %mm1,0x8(%esi)
40c310:	0f 7f 56 10          	movq   %mm2,0x10(%esi)
40c314:	0f 7f 5e 18          	movq   %mm3,0x18(%esi)
40c318:	0f 7f 66 20          	movq   %mm4,0x20(%esi)
40c31c:	0f 7f 6e 28          	movq   %mm5,0x28(%esi)
40c320:	0f 7f 76 30          	movq   %mm6,0x30(%esi)
40c324:	0f 7f 7e 38          	movq   %mm7,0x38(%esi)
40c328:	39 c7                	cmp    %eax,%edi
40c32a:	0f 82 d0 e4 ff ff    	jb     0x40a800
40c330:	8b 62 4c             	mov    0x4c(%edx),%esp
40c333:	0f 77                	emms
40c335:	5f                   	pop    %edi
40c336:	5e                   	pop    %esi
40c337:	5b                   	pop    %ebx
40c338:	5d                   	pop    %ebp
40c339:	c3                   	ret
40c33a:	90                   	nop
40c33b:	90                   	nop
40c33c:	90                   	nop
40c33d:	90                   	nop
40c33e:	90                   	nop
40c33f:	90                   	nop
40c340:	8b 07                	mov    (%edi),%eax
40c342:	8b 5f 04             	mov    0x4(%edi),%ebx
40c345:	8b 4f 08             	mov    0x8(%edi),%ecx
40c348:	8b 57 0c             	mov    0xc(%edi),%edx
40c34b:	0f c8                	bswap  %eax
40c34d:	0f cb                	bswap  %ebx
40c34f:	0f c9                	bswap  %ecx
40c351:	0f ca                	bswap  %edx
40c353:	50                   	push   %eax
40c354:	53                   	push   %ebx
40c355:	51                   	push   %ecx
40c356:	52                   	push   %edx
40c357:	8b 47 10             	mov    0x10(%edi),%eax
40c35a:	8b 5f 14             	mov    0x14(%edi),%ebx
40c35d:	8b 4f 18             	mov    0x18(%edi),%ecx
40c360:	8b 57 1c             	mov    0x1c(%edi),%edx
40c363:	0f c8                	bswap  %eax
40c365:	0f cb                	bswap  %ebx
40c367:	0f c9                	bswap  %ecx
40c369:	0f ca                	bswap  %edx
40c36b:	50                   	push   %eax
40c36c:	53                   	push   %ebx
40c36d:	51                   	push   %ecx
40c36e:	52                   	push   %edx
40c36f:	8b 47 20             	mov    0x20(%edi),%eax
40c372:	8b 5f 24             	mov    0x24(%edi),%ebx
40c375:	8b 4f 28             	mov    0x28(%edi),%ecx
40c378:	8b 57 2c             	mov    0x2c(%edi),%edx
40c37b:	0f c8                	bswap  %eax
40c37d:	0f cb                	bswap  %ebx
40c37f:	0f c9                	bswap  %ecx
40c381:	0f ca                	bswap  %edx
40c383:	50                   	push   %eax
40c384:	53                   	push   %ebx
40c385:	51                   	push   %ecx
40c386:	52                   	push   %edx
40c387:	8b 47 30             	mov    0x30(%edi),%eax
40c38a:	8b 5f 34             	mov    0x34(%edi),%ebx
40c38d:	8b 4f 38             	mov    0x38(%edi),%ecx
40c390:	8b 57 3c             	mov    0x3c(%edi),%edx
40c393:	0f c8                	bswap  %eax
40c395:	0f cb                	bswap  %ebx
40c397:	0f c9                	bswap  %ecx
40c399:	0f ca                	bswap  %edx
40c39b:	50                   	push   %eax
40c39c:	53                   	push   %ebx
40c39d:	51                   	push   %ecx
40c39e:	52                   	push   %edx
40c39f:	8b 47 40             	mov    0x40(%edi),%eax
40c3a2:	8b 5f 44             	mov    0x44(%edi),%ebx
40c3a5:	8b 4f 48             	mov    0x48(%edi),%ecx
40c3a8:	8b 57 4c             	mov    0x4c(%edi),%edx
40c3ab:	0f c8                	bswap  %eax
40c3ad:	0f cb                	bswap  %ebx
40c3af:	0f c9                	bswap  %ecx
40c3b1:	0f ca                	bswap  %edx
40c3b3:	50                   	push   %eax
40c3b4:	53                   	push   %ebx
40c3b5:	51                   	push   %ecx
40c3b6:	52                   	push   %edx
40c3b7:	8b 47 50             	mov    0x50(%edi),%eax
40c3ba:	8b 5f 54             	mov    0x54(%edi),%ebx
40c3bd:	8b 4f 58             	mov    0x58(%edi),%ecx
40c3c0:	8b 57 5c             	mov    0x5c(%edi),%edx
40c3c3:	0f c8                	bswap  %eax
40c3c5:	0f cb                	bswap  %ebx
40c3c7:	0f c9                	bswap  %ecx
40c3c9:	0f ca                	bswap  %edx
40c3cb:	50                   	push   %eax
40c3cc:	53                   	push   %ebx
40c3cd:	51                   	push   %ecx
40c3ce:	52                   	push   %edx
40c3cf:	8b 47 60             	mov    0x60(%edi),%eax
40c3d2:	8b 5f 64             	mov    0x64(%edi),%ebx
40c3d5:	8b 4f 68             	mov    0x68(%edi),%ecx
40c3d8:	8b 57 6c             	mov    0x6c(%edi),%edx
40c3db:	0f c8                	bswap  %eax
40c3dd:	0f cb                	bswap  %ebx
40c3df:	0f c9                	bswap  %ecx
40c3e1:	0f ca                	bswap  %edx
40c3e3:	50                   	push   %eax
40c3e4:	53                   	push   %ebx
40c3e5:	51                   	push   %ecx
40c3e6:	52                   	push   %edx
40c3e7:	8b 47 70             	mov    0x70(%edi),%eax
40c3ea:	8b 5f 74             	mov    0x74(%edi),%ebx
40c3ed:	8b 4f 78             	mov    0x78(%edi),%ecx
40c3f0:	8b 57 7c             	mov    0x7c(%edi),%edx
40c3f3:	0f c8                	bswap  %eax
40c3f5:	0f cb                	bswap  %ebx
40c3f7:	0f c9                	bswap  %ecx
40c3f9:	0f ca                	bswap  %edx
40c3fb:	50                   	push   %eax
40c3fc:	53                   	push   %ebx
40c3fd:	51                   	push   %ecx
40c3fe:	52                   	push   %edx
40c3ff:	81 c7 80 00 00 00    	add    $0x80,%edi
40c405:	83 ec 48             	sub    $0x48,%esp
40c408:	89 bc 24 cc 00 00 00 	mov    %edi,0xcc(%esp)
40c40f:	8d 7c 24 08          	lea    0x8(%esp),%edi
40c413:	b9 10 00 00 00       	mov    $0x10,%ecx
40c418:	89 f6                	mov    %esi,%esi
40c41a:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
40c41c:	90                   	nop
40c41d:	90                   	nop
40c41e:	90                   	nop
40c41f:	90                   	nop
40c420:	8b 4c 24 28          	mov    0x28(%esp),%ecx
40c424:	8b 54 24 2c          	mov    0x2c(%esp),%edx
40c428:	89 ce                	mov    %ecx,%esi
40c42a:	c1 e9 09             	shr    $0x9,%ecx
40c42d:	89 d7                	mov    %edx,%edi
40c42f:	c1 ea 09             	shr    $0x9,%edx
40c432:	89 cb                	mov    %ecx,%ebx
40c434:	c1 e6 0e             	shl    $0xe,%esi
40c437:	89 d0                	mov    %edx,%eax
40c439:	c1 e7 0e             	shl    $0xe,%edi
40c43c:	31 f3                	xor    %esi,%ebx
40c43e:	c1 e9 05             	shr    $0x5,%ecx
40c441:	31 f8                	xor    %edi,%eax
40c443:	c1 ea 05             	shr    $0x5,%edx
40c446:	31 c8                	xor    %ecx,%eax
40c448:	c1 e6 04             	shl    $0x4,%esi
40c44b:	31 d3                	xor    %edx,%ebx
40c44d:	c1 e7 04             	shl    $0x4,%edi
40c450:	31 f3                	xor    %esi,%ebx
40c452:	c1 e9 04             	shr    $0x4,%ecx
40c455:	31 f8                	xor    %edi,%eax
40c457:	c1 ea 04             	shr    $0x4,%edx
40c45a:	31 c8                	xor    %ecx,%eax
40c45c:	c1 e6 05             	shl    $0x5,%esi
40c45f:	31 d3                	xor    %edx,%ebx
40c461:	c1 e7 05             	shl    $0x5,%edi
40c464:	31 f0                	xor    %esi,%eax
40c466:	31 fb                	xor    %edi,%ebx
40c468:	8b 4c 24 30          	mov    0x30(%esp),%ecx
40c46c:	8b 54 24 34          	mov    0x34(%esp),%edx
40c470:	8b 74 24 38          	mov    0x38(%esp),%esi
40c474:	8b 7c 24 3c          	mov    0x3c(%esp),%edi
40c478:	03 44 24 40          	add    0x40(%esp),%eax
40c47c:	13 5c 24 44          	adc    0x44(%esp),%ebx