408003:	31 ca                	xor    %ecx,%edx
408005:	8b 7c 24 1c          	mov    0x1c(%esp),%edi
408009:	31 fe                	xor    %edi,%esi
40800b:	c1 ca 05             	ror    $0x5,%edx
40800e:	21 ce                	and    %ecx,%esi
408010:	89 4c 24 14          	mov    %ecx,0x14(%esp)
408014:	31 ca                	xor    %ecx,%edx
408016:	31 f7                	xor    %esi,%edi
408018:	c1 ca 06             	ror    $0x6,%edx
40801b:	89 d9                	mov    %ebx,%ecx
40801d:	01 fa                	add    %edi,%edx
40801f:	8b 7c 24 08          	mov    0x8(%esp),%edi
408023:	89 de                	mov    %ebx,%esi
408025:	c1 c9 09             	ror    $0x9,%ecx
408028:	89 5c 24 04          	mov    %ebx,0x4(%esp)
40802c:	31 d9                	xor    %ebx,%ecx
40802e:	31 fb                	xor    %edi,%ebx
408030:	03 14 24             	add    (%esp),%edx
408033:	c1 c9 0b             	ror    $0xb,%ecx
408036:	21 d8                	and    %ebx,%eax
408038:	31 f1                	xor    %esi,%ecx
40803a:	03 54 24 3c          	add    0x3c(%esp),%edx
40803e:	31 f8                	xor    %edi,%eax
408040:	c1 c9 02             	ror    $0x2,%ecx
408043:	01 d0                	add    %edx,%eax
408045:	03 54 24 10          	add    0x10(%esp),%edx
408049:	01 c8                	add    %ecx,%eax
40804b:	89 d1                	mov    %edx,%ecx
40804d:	c1 ca 0e             	ror    $0xe,%edx
408050:	8b 74 24 14          	mov    0x14(%esp),%esi
408054:	31 ca                	xor    %ecx,%edx
408056:	8b 7c 24 18          	mov    0x18(%esp),%edi
40805a:	31 fe                	xor    %edi,%esi
40805c:	c1 ca 05             	ror    $0x5,%edx
40805f:	21 ce                	and    %ecx,%esi
408061:	89 4c 24 10          	mov    %ecx,0x10(%esp)
408065:	31 ca                	xor    %ecx,%edx
408067:	31 f7                	xor    %esi,%edi
408069:	c1 ca 06             	ror    $0x6,%edx
40806c:	89 c1                	mov    %eax,%ecx
40806e:	01 fa                	add    %edi,%edx
408070:	8b 7c 24 04          	mov    0x4(%esp),%edi
408074:	89 c6                	mov    %eax,%esi
408076:	c1 c9 09             	ror    $0x9,%ecx
408079:	89 04 24             	mov    %eax,(%esp)
40807c:	31 c1                	xor    %eax,%ecx
40807e:	31 f8                	xor    %edi,%eax
408080:	03 54 24 1c          	add    0x1c(%esp),%edx
408084:	c1 c9 0b             	ror    $0xb,%ecx
408087:	21 c3                	and    %eax,%ebx
408089:	31 f1                	xor    %esi,%ecx
40808b:	03 54 24 40          	add    0x40(%esp),%edx
40808f:	31 fb                	xor    %edi,%ebx
408091:	c1 c9 02             	ror    $0x2,%ecx
408094:	01 d3                	add    %edx,%ebx
408096:	03 54 24 0c          	add    0xc(%esp),%edx
40809a:	01 cb                	add    %ecx,%ebx
40809c:	89 d1                	mov    %edx,%ecx
40809e:	c1 ca 0e             	ror    $0xe,%edx
4080a1:	8b 74 24 10          	mov    0x10(%esp),%esi
4080a5:	31 ca                	xor    %ecx,%edx
4080a7:	8b 7c 24 14          	mov    0x14(%esp),%edi
4080ab:	31 fe                	xor    %edi,%esi
4080ad:	c1 ca 05             	ror    $0x5,%edx
4080b0:	21 ce                	and    %ecx,%esi
4080b2:	89 4c 24 0c          	mov    %ecx,0xc(%esp)
4080b6:	31 ca                	xor    %ecx,%edx
4080b8:	31 f7                	xor    %esi,%edi
4080ba:	c1 ca 06             	ror    $0x6,%edx
4080bd:	89 d9                	mov    %ebx,%ecx
4080bf:	01 fa                	add    %edi,%edx
4080c1:	8b 3c 24             	mov    (%esp),%edi
4080c4:	89 de                	mov    %ebx,%esi
4080c6:	c1 c9 09             	ror    $0x9,%ecx
4080c9:	89 5c 24 1c          	mov    %ebx,0x1c(%esp)
4080cd:	31 d9                	xor    %ebx,%ecx
4080cf:	31 fb                	xor    %edi,%ebx
4080d1:	03 54 24 18          	add    0x18(%esp),%edx
4080d5:	c1 c9 0b             	ror    $0xb,%ecx
4080d8:	21 d8                	and    %ebx,%eax
4080da:	31 f1                	xor    %esi,%ecx
4080dc:	03 54 24 44          	add    0x44(%esp),%edx
4080e0:	31 f8                	xor    %edi,%eax
4080e2:	c1 c9 02             	ror    $0x2,%ecx
4080e5:	01 d0                	add    %edx,%eax
4080e7:	03 54 24 08          	add    0x8(%esp),%edx
4080eb:	01 c8                	add    %ecx,%eax
4080ed:	89 d1                	mov    %edx,%ecx
4080ef:	c1 ca 0e             	ror    $0xe,%edx
4080f2:	8b 74 24 0c          	mov    0xc(%esp),%esi
4080f6:	31 ca                	xor    %ecx,%edx
4080f8:	8b 7c 24 10          	mov    0x10(%esp),%edi
4080fc:	31 fe                	xor    %edi,%esi
4080fe:	c1 ca 05             	ror    $0x5,%edx
408101:	21 ce                	and    %ecx,%esi
408103:	89 4c 24 08          	mov    %ecx,0x8(%esp)
408107:	31 ca                	xor    %ecx,%edx
408109:	31 f7                	xor    %esi,%edi
40810b:	c1 ca 06             	ror    $0x6,%edx
40810e:	89 c1                	mov    %eax,%ecx
408110:	01 fa                	add    %edi,%edx
408112:	8b 7c 24 1c          	mov    0x1c(%esp),%edi
408116:	89 c6                	mov    %eax,%esi
408118:	c1 c9 09             	ror    $0x9,%ecx
40811b:	89 44 24 18          	mov    %eax,0x18(%esp)
40811f:	31 c1                	xor    %eax,%ecx
408121:	31 f8                	xor    %edi,%eax
408123:	03 54 24 14          	add    0x14(%esp),%edx
408127:	c1 c9 0b             	ror    $0xb,%ecx
40812a:	21 c3                	and    %eax,%ebx
40812c:	31 f1                	xor    %esi,%ecx
40812e:	03 54 24 48          	add    0x48(%esp),%edx
408132:	31 fb                	xor    %edi,%ebx
408134:	c1 c9 02             	ror    $0x2,%ecx
408137:	01 d3                	add    %edx,%ebx
408139:	03 54 24 04          	add    0x4(%esp),%edx
40813d:	01 cb                	add    %ecx,%ebx
40813f:	89 d1                	mov    %edx,%ecx
408141:	c1 ca 0e             	ror    $0xe,%edx
408144:	8b 74 24 08          	mov    0x8(%esp),%esi
408148:	31 ca                	xor    %ecx,%edx
40814a:	8b 7c 24 0c          	mov    0xc(%esp),%edi
40814e:	31 fe                	xor    %edi,%esi
408150:	c1 ca 05             	ror    $0x5,%edx
408153:	21 ce                	and    %ecx,%esi
408155:	89 4c 24 04          	mov    %ecx,0x4(%esp)
408159:	31 ca                	xor    %ecx,%edx
40815b:	31 f7                	xor    %esi,%edi
40815d:	c1 ca 06             	ror    $0x6,%edx
408160:	89 d9                	mov    %ebx,%ecx
408162:	01 fa                	add    %edi,%edx
408164:	8b 7c 24 18          	mov    0x18(%esp),%edi
408168:	89 de                	mov    %ebx,%esi
40816a:	c1 c9 09             	ror    $0x9,%ecx
40816d:	89 5c 24 14          	mov    %ebx,0x14(%esp)
408171:	31 d9                	xor    %ebx,%ecx
408173:	31 fb                	xor    %edi,%ebx
408175:	03 54 24 10          	add    0x10(%esp),%edx
408179:	c1 c9 0b             	ror    $0xb,%ecx
40817c:	21 d8                	and    %ebx,%eax
40817e:	31 f1                	xor    %esi,%ecx
408180:	03 54 24 4c          	add    0x4c(%esp),%edx
408184:	31 f8                	xor    %edi,%eax
408186:	c1 c9 02             	ror    $0x2,%ecx
408189:	01 d0                	add    %edx,%eax
40818b:	03 14 24             	add    (%esp),%edx
40818e:	01 c8                	add    %ecx,%eax
408190:	89 d1                	mov    %edx,%ecx
408192:	c1 ca 0e             	ror    $0xe,%edx
408195:	8b 74 24 04          	mov    0x4(%esp),%esi
408199:	31 ca                	xor    %ecx,%edx
40819b:	8b 7c 24 08          	mov    0x8(%esp),%edi
40819f:	31 fe                	xor    %edi,%esi
4081a1:	c1 ca 05             	ror    $0x5,%edx
4081a4:	21 ce                	and    %ecx,%esi
4081a6:	89 0c 24             	mov    %ecx,(%esp)
4081a9:	31 ca                	xor    %ecx,%edx
4081ab:	31 f7                	xor    %esi,%edi
4081ad:	c1 ca 06             	ror    $0x6,%edx
4081b0:	89 c1                	mov    %eax,%ecx
4081b2:	01 fa                	add    %edi,%edx
4081b4:	8b 7c 24 14          	mov    0x14(%esp),%edi
4081b8:	89 c6                	mov    %eax,%esi
4081ba:	c1 c9 09             	ror    $0x9,%ecx
4081bd:	89 44 24 10          	mov    %eax,0x10(%esp)
4081c1:	31 c1                	xor    %eax,%ecx
4081c3:	31 f8                	xor    %edi,%eax
4081c5:	03 54 24 0c          	add    0xc(%esp),%edx
4081c9:	c1 c9 0b             	ror    $0xb,%ecx
4081cc:	21 c3                	and    %eax,%ebx
4081ce:	31 f1                	xor    %esi,%ecx
4081d0:	03 54 24 50          	add    0x50(%esp),%edx
4081d4:	31 fb                	xor    %edi,%ebx
4081d6:	c1 c9 02             	ror    $0x2,%ecx
4081d9:	01 d3                	add    %edx,%ebx
4081db:	03 54 24 1c          	add    0x1c(%esp),%edx
4081df:	01 cb                	add    %ecx,%ebx
4081e1:	89 d1                	mov    %edx,%ecx
4081e3:	c1 ca 0e             	ror    $0xe,%edx
4081e6:	8b 34 24             	mov    (%esp),%esi
4081e9:	31 ca                	xor    %ecx,%edx
4081eb:	8b 7c 24 04          	mov    0x4(%esp),%edi
4081ef:	31 fe                	xor    %edi,%esi
4081f1:	c1 ca 05             	ror    $0x5,%edx
4081f4:	21 ce                	and    %ecx,%esi
4081f6:	89 4c 24 1c          	mov    %ecx,0x1c(%esp)
4081fa:	31 ca                	xor    %ecx,%edx
4081fc:	31 f7                	xor    %esi,%edi
4081fe:	c1 ca 06             	ror    $0x6,%edx
408201:	89 d9                	mov    %ebx,%ecx
408203:	01 fa                	add    %edi,%edx
408205:	8b 7c 24 10          	mov    0x10(%esp),%edi
408209:	89 de                	mov    %ebx,%esi
40820b:	c1 c9 09             	ror    $0x9,%ecx
40820e:	89 5c 24 0c          	mov    %ebx,0xc(%esp)
408212:	31 d9                	xor    %ebx,%ecx
408214:	31 fb                	xor    %edi,%ebx
408216:	03 54 24 08          	add    0x8(%esp),%edx
40821a:	c1 c9 0b             	ror    $0xb,%ecx
40821d:	21 d8                	and    %ebx,%eax
40821f:	31 f1                	xor    %esi,%ecx
408221:	03 54 24 54          	add    0x54(%esp),%edx
408225:	31 f8                	xor    %edi,%eax
408227:	c1 c9 02             	ror    $0x2,%ecx
40822a:	01 d0                	add    %edx,%eax
40822c:	03 54 24 18          	add    0x18(%esp),%edx
408230:	01 c8                	add    %ecx,%eax
408232:	89 d1                	mov    %edx,%ecx
408234:	c1 ca 0e             	ror    $0xe,%edx
408237:	8b 74 24 1c          	mov    0x1c(%esp),%esi
40823b:	31 ca                	xor    %ecx,%edx
40823d:	8b 3c 24             	mov    (%esp),%edi
408240:	31 fe                	xor    %edi,%esi
408242:	c1 ca 05             	ror    $0x5,%edx
408245:	21 ce                	and    %ecx,%esi
408247:	89 4c 24 18          	mov    %ecx,0x18(%esp)
40824b:	31 ca                	xor    %ecx,%edx
40824d:	31 f7                	xor    %esi,%edi
40824f:	c1 ca 06             	ror    $0x6,%edx
408252:	89 c1                	mov    %eax,%ecx
408254:	01 fa                	add    %edi,%edx
408256:	8b 7c 24 0c          	mov    0xc(%esp),%edi
40825a:	89 c6                	mov    %eax,%esi
40825c:	c1 c9 09             	ror    $0x9,%ecx
40825f:	89 44 24 08          	mov    %eax,0x8(%esp)
408263:	31 c1                	xor    %eax,%ecx
408265:	31 f8                	xor    %edi,%eax
408267:	03 54 24 04          	add    0x4(%esp),%edx
40826b:	c1 c9 0b             	ror    $0xb,%ecx
40826e:	21 c3                	and    %eax,%ebx
408270:	31 f1                	xor    %esi,%ecx
408272:	03 54 24 58          	add    0x58(%esp),%edx
408276:	31 fb                	xor    %edi,%ebx
408278:	c1 c9 02             	ror    $0x2,%ecx
40827b:	01 d3                	add    %edx,%ebx
40827d:	03 54 24 14          	add    0x14(%esp),%edx
408281:	01 cb                	add    %ecx,%ebx
408283:	89 d1                	mov    %edx,%ecx
408285:	c1 ca 0e             	ror    $0xe,%edx
408288:	8b 74 24 18          	mov    0x18(%esp),%esi
40828c:	31 ca                	xor    %ecx,%edx
40828e:	8b 7c 24 1c          	mov    0x1c(%esp),%edi
408292:	31 fe                	xor    %edi,%esi
408294:	c1 ca 05             	ror    $0x5,%edx
408297:	21 ce                	and    %ecx,%esi
408299:	89 4c 24 14          	mov    %ecx,0x14(%esp)
40829d:	31 ca                	xor    %ecx,%edx
40829f:	31 f7                	xor    %esi,%edi
4082a1:	c1 ca 06             	ror    $0x6,%edx
4082a4:	89 d9                	mov    %ebx,%ecx
4082a6:	01 fa                	add    %edi,%edx
4082a8:	8b 7c 24 08          	mov    0x8(%esp),%edi
4082ac:	89 de                	mov    %ebx,%esi
4082ae:	c1 c9 09             	ror    $0x9,%ecx
4082b1:	89 5c 24 04          	mov    %ebx,0x4(%esp)
4082b5:	31 d9                	xor    %ebx,%ecx
4082b7:	31 fb                	xor    %edi,%ebx
4082b9:	03 14 24             	add    (%esp),%edx
4082bc:	c1 c9 0b             	ror    $0xb,%ecx
4082bf:	21 d8                	and    %ebx,%eax
4082c1:	31 f1                	xor    %esi,%ecx
4082c3:	03 54 24 5c          	add    0x5c(%esp),%edx
4082c7:	31 f8                	xor    %edi,%eax
4082c9:	c1 c9 02             	ror    $0x2,%ecx
4082cc:	01 d0                	add    %edx,%eax
4082ce:	03 54 24 10          	add    0x10(%esp),%edx
4082d2:	01 c8                	add    %ecx,%eax
4082d4:	8b 74 24 60          	mov    0x60(%esp),%esi
4082d8:	31 fb                	xor    %edi,%ebx
4082da:	8b 4c 24 0c          	mov    0xc(%esp),%ecx
4082de:	03 06                	add    (%esi),%eax
4082e0:	03 5e 04             	add    0x4(%esi),%ebx
4082e3:	03 7e 08             	add    0x8(%esi),%edi
4082e6:	03 4e 0c             	add    0xc(%esi),%ecx
4082e9:	89 06                	mov    %eax,(%esi)
4082eb:	89 5e 04             	mov    %ebx,0x4(%esi)
4082ee:	89 7e 08             	mov    %edi,0x8(%esi)
4082f1:	89 4e 0c             	mov    %ecx,0xc(%esi)
4082f4:	89 5c 24 04          	mov    %ebx,0x4(%esp)
4082f8:	31 fb                	xor    %edi,%ebx
4082fa:	89 7c 24 08          	mov    %edi,0x8(%esp)
4082fe:	89 4c 24 0c          	mov    %ecx,0xc(%esp)
408302:	8b 7c 24 14          	mov    0x14(%esp),%edi
408306:	8b 4c 24 18          	mov    0x18(%esp),%ecx
40830a:	03 56 10             	add    0x10(%esi),%edx
40830d:	03 7e 14             	add    0x14(%esi),%edi
408310:	03 4e 18             	add    0x18(%esi),%ecx
408313:	89 56 10             	mov    %edx,0x10(%esi)
408316:	89 7e 14             	mov    %edi,0x14(%esi)
408319:	89 7c 24 14          	mov    %edi,0x14(%esp)
40831d:	8b 7c 24 1c          	mov    0x1c(%esp),%edi
408321:	89 4e 18             	mov    %ecx,0x18(%esi)
408324:	03 7e 1c             	add    0x1c(%esi),%edi
408327:	89 4c 24 18          	mov    %ecx,0x18(%esp)
40832b:	89 7e 1c             	mov    %edi,0x1c(%esi)
40832e:	89 7c 24 1c          	mov    %edi,0x1c(%esp)
408332:	8b 7c 24 64          	mov    0x64(%esp),%edi
408336:	66 0f 6f 7d 40       	movdqa 0x40(%ebp),%xmm7
40833b:	81 ed c0 00 00 00    	sub    $0xc0,%ebp
408341:	3b 7c 24 68          	cmp    0x68(%esp),%edi
408345:	0f 82 05 f2 ff ff    	jb     0x407550
40834b:	8b 64 24 6c          	mov    0x6c(%esp),%esp
40834f:	5f                   	pop    %edi
408350:	5e                   	pop    %esi
408351:	5b                   	pop    %ebx
408352:	5d                   	pop    %ebp
408353:	c3                   	ret
408354:	90                   	nop
408355:	90                   	nop
408356:	90                   	nop
408357:	90                   	nop
408358:	90                   	nop
408359:	90                   	nop
40835a:	90                   	nop
40835b:	90                   	nop
40835c:	90                   	nop
40835d:	90                   	nop
40835e:	90                   	nop
40835f:	90                   	nop
408360:	81 e2 08 01 00 00    	and    $0x108,%edx
408366:	81 fa 08 01 00 00    	cmp    $0x108,%edx
40836c:	0f 84 ae 0e 00 00    	je     0x409220
408372:	8d 64 24 a0          	lea    -0x60(%esp),%esp
408376:	c5 fc 77             	vzeroall
408379:	8b 06                	mov    (%esi),%eax
40837b:	8b 5e 04             	mov    0x4(%esi),%ebx
40837e:	8b 4e 08             	mov    0x8(%esi),%ecx
408381:	8b 7e 0c             	mov    0xc(%esi),%edi
408384:	89 5c 24 04          	mov    %ebx,0x4(%esp)
408388:	31 cb                	xor    %ecx,%ebx
40838a:	89 4c 24 08          	mov    %ecx,0x8(%esp)
40838e:	89 7c 24 0c          	mov    %edi,0xc(%esp)
408392:	8b 56 10             	mov    0x10(%esi),%edx
408395:	8b 7e 14             	mov    0x14(%esi),%edi
408398:	8b 4e 18             	mov    0x18(%esi),%ecx
40839b:	8b 76 1c             	mov    0x1c(%esi),%esi
40839e:	89 7c 24 14          	mov    %edi,0x14(%esp)
4083a2:	8b 7c 24 64          	mov    0x64(%esp),%edi
4083a6:	89 4c 24 18          	mov    %ecx,0x18(%esp)
4083aa:	89 74 24 1c          	mov    %esi,0x1c(%esp)
4083ae:	c5 f9 6f bd 00 01 00 	vmovdqa 0x100(%ebp),%xmm7
4083b5:	00
4083b6:	e9 05 00 00 00       	jmp    0x4083c0
4083bb:	90                   	nop
4083bc:	90                   	nop
4083bd:	90                   	nop
4083be:	90                   	nop
4083bf:	90                   	nop
4083c0:	c5 fa 6f 07          	vmovdqu (%edi),%xmm0
4083c4:	c5 fa 6f 4f 10       	vmovdqu 0x10(%edi),%xmm1