40403d:	66 0f 6f 6e 30       	movdqa 0x30(%esi),%xmm5
404042:	8d 76 30             	lea    0x30(%esi),%esi
404045:	83 f9 30             	cmp    $0x30,%ecx
404048:	66 0f 6f d3          	movdqa %xmm3,%xmm2
40404c:	66 0f 3a 0f d9 04    	palignr $0x4,%xmm1,%xmm3
404052:	66 0f 7f 1f          	movdqa %xmm3,(%edi)
404056:	66 0f 6f e0          	movdqa %xmm0,%xmm4
40405a:	66 0f 3a 0f c2 04    	palignr $0x4,%xmm2,%xmm0
404060:	66 0f 7f 47 10       	movdqa %xmm0,0x10(%edi)
404065:	66 0f 6f cd          	movdqa %xmm5,%xmm1
404069:	66 0f 3a 0f ec 04    	palignr $0x4,%xmm4,%xmm5
40406f:	66 0f 7f 6f 20       	movdqa %xmm5,0x20(%edi)
404074:	8d 7f 30             	lea    0x30(%edi),%edi
404077:	7d b7                	jge    0x404030
404079:	8d 76 04             	lea    0x4(%esi),%esi
40407c:	83 f9 10             	cmp    $0x10,%ecx
40407f:	7c 13                	jl     0x404094
404081:	f3 0f 6f 0e          	movdqu (%esi),%xmm1
404085:	83 e9 10             	sub    $0x10,%ecx
404088:	8d 76 10             	lea    0x10(%esi),%esi
40408b:	66 0f 7f 0f          	movdqa %xmm1,(%edi)
40408f:	8d 7f 10             	lea    0x10(%edi),%edi
404092:	eb e8                	jmp    0x40407c
404094:	0f ba e1 02          	bt     $0x2,%ecx
404098:	73 0d                	jae    0x4040a7
40409a:	8b 06                	mov    (%esi),%eax
40409c:	83 e9 04             	sub    $0x4,%ecx
40409f:	8d 76 04             	lea    0x4(%esi),%esi
4040a2:	89 07                	mov    %eax,(%edi)
4040a4:	8d 7f 04             	lea    0x4(%edi),%edi
4040a7:	0f ba e1 03          	bt     $0x3,%ecx
4040ab:	73 11                	jae    0x4040be
4040ad:	f3 0f 7e 0e          	movq   (%esi),%xmm1
4040b1:	83 e9 08             	sub    $0x8,%ecx
4040b4:	8d 76 08             	lea    0x8(%esi),%esi
4040b7:	66 0f d6 0f          	movq   %xmm1,(%edi)
4040bb:	8d 7f 08             	lea    0x8(%edi),%edi
4040be:	8b 04 8d 04 41 40 00 	mov    0x404104(,%ecx,4),%eax
4040c5:	ff e0                	jmp    *%eax
4040c7:	f7 c7 03 00 00 00    	test   $0x3,%edi
4040cd:	74 13                	je     0x4040e2
4040cf:	8a 06                	mov    (%esi),%al
4040d1:	88 07                	mov    %al,(%edi)
4040d3:	49                   	dec    %ecx
4040d4:	83 c6 01             	add    $0x1,%esi
4040d7:	83 c7 01             	add    $0x1,%edi
4040da:	f7 c7 03 00 00 00    	test   $0x3,%edi
4040e0:	75 ed                	jne    0x4040cf
4040e2:	8b d1                	mov    %ecx,%edx
4040e4:	83 f9 20             	cmp    $0x20,%ecx
4040e7:	0f 82 ae 02 00 00    	jb     0x40439b
4040ed:	c1 e9 02             	shr    $0x2,%ecx
4040f0:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
4040f2:	83 e2 03             	and    $0x3,%edx
4040f5:	ff 24 95 04 41 40 00 	jmp    *0x404104(,%edx,4)
4040fc:	ff 24 8d 14 41 40 00 	jmp    *0x404114(,%ecx,4)
404103:	90                   	nop
404104:	14 41                	adc    $0x41,%al
404106:	40                   	inc    %eax
404107:	00 1c 41             	add    %bl,(%ecx,%eax,2)
40410a:	40                   	inc    %eax
40410b:	00 28                	add    %ch,(%eax)
40410d:	41                   	inc    %ecx
40410e:	40                   	inc    %eax
40410f:	00 3c 41             	add    %bh,(%ecx,%eax,2)
404112:	40                   	inc    %eax
404113:	00 8b 44 24 0c 5e    	add    %cl,0x5e0c2444(%ebx)
404119:	5f                   	pop    %edi
40411a:	c3                   	ret
40411b:	90                   	nop
40411c:	8a 06                	mov    (%esi),%al
40411e:	88 07                	mov    %al,(%edi)
404120:	8b 44 24 0c          	mov    0xc(%esp),%eax
404124:	5e                   	pop    %esi
404125:	5f                   	pop    %edi
404126:	c3                   	ret
404127:	90                   	nop
404128:	8a 06                	mov    (%esi),%al
40412a:	88 07                	mov    %al,(%edi)
40412c:	8a 46 01             	mov    0x1(%esi),%al
40412f:	88 47 01             	mov    %al,0x1(%edi)
404132:	8b 44 24 0c          	mov    0xc(%esp),%eax
404136:	5e                   	pop    %esi
404137:	5f                   	pop    %edi
404138:	c3                   	ret
404139:	8d 49 00             	lea    0x0(%ecx),%ecx
40413c:	8a 06                	mov    (%esi),%al
40413e:	88 07                	mov    %al,(%edi)
404140:	8a 46 01             	mov    0x1(%esi),%al
404143:	88 47 01             	mov    %al,0x1(%edi)
404146:	8a 46 02             	mov    0x2(%esi),%al
404149:	88 47 02             	mov    %al,0x2(%edi)
40414c:	8b 44 24 0c          	mov    0xc(%esp),%eax
404150:	5e                   	pop    %esi
404151:	5f                   	pop    %edi
404152:	c3                   	ret
404153:	90                   	nop
404154:	8d 34 31             	lea    (%ecx,%esi,1),%esi
404157:	8d 3c 39             	lea    (%ecx,%edi,1),%edi
40415a:	83 f9 20             	cmp    $0x20,%ecx
40415d:	0f 82 51 01 00 00    	jb     0x4042b4
404163:	0f ba 25 10 30 42 00 	btl    $0x1,0x423010
40416a:	01
40416b:	0f 82 94 00 00 00    	jb     0x404205
404171:	f7 c7 03 00 00 00    	test   $0x3,%edi
404177:	74 14                	je     0x40418d
404179:	8b d7                	mov    %edi,%edx
40417b:	83 e2 03             	and    $0x3,%edx
40417e:	2b ca                	sub    %edx,%ecx
404180:	8a 46 ff             	mov    -0x1(%esi),%al
404183:	88 47 ff             	mov    %al,-0x1(%edi)
404186:	4e                   	dec    %esi
404187:	4f                   	dec    %edi
404188:	83 ea 01             	sub    $0x1,%edx
40418b:	75 f3                	jne    0x404180
40418d:	83 f9 20             	cmp    $0x20,%ecx
404190:	0f 82 1e 01 00 00    	jb     0x4042b4
404196:	8b d1                	mov    %ecx,%edx
404198:	c1 e9 02             	shr    $0x2,%ecx
40419b:	83 e2 03             	and    $0x3,%edx
40419e:	83 ee 04             	sub    $0x4,%esi
4041a1:	83 ef 04             	sub    $0x4,%edi
4041a4:	fd                   	std
4041a5:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
4041a7:	fc                   	cld
4041a8:	ff 24 95 b0 41 40 00 	jmp    *0x4041b0(,%edx,4)
4041af:	90                   	nop
4041b0:	c0 41 40 00          	rolb   $0x0,0x40(%ecx)
4041b4:	c8 41 40 00          	enter  $0x4041,$0x0
4041b8:	d8 41 40             	fadds  0x40(%ecx)
4041bb:	00 ec                	add    %ch,%ah
4041bd:	41                   	inc    %ecx
4041be:	40                   	inc    %eax
4041bf:	00 8b 44 24 0c 5e    	add    %cl,0x5e0c2444(%ebx)
4041c5:	5f                   	pop    %edi
4041c6:	c3                   	ret
4041c7:	90                   	nop
4041c8:	8a 46 03             	mov    0x3(%esi),%al
4041cb:	88 47 03             	mov    %al,0x3(%edi)
4041ce:	8b 44 24 0c          	mov    0xc(%esp),%eax
4041d2:	5e                   	pop    %esi
4041d3:	5f                   	pop    %edi
4041d4:	c3                   	ret
4041d5:	8d 49 00             	lea    0x0(%ecx),%ecx
4041d8:	8a 46 03             	mov    0x3(%esi),%al
4041db:	88 47 03             	mov    %al,0x3(%edi)
4041de:	8a 46 02             	mov    0x2(%esi),%al
4041e1:	88 47 02             	mov    %al,0x2(%edi)
4041e4:	8b 44 24 0c          	mov    0xc(%esp),%eax
4041e8:	5e                   	pop    %esi
4041e9:	5f                   	pop    %edi
4041ea:	c3                   	ret
4041eb:	90                   	nop
4041ec:	8a 46 03             	mov    0x3(%esi),%al
4041ef:	88 47 03             	mov    %al,0x3(%edi)
4041f2:	8a 46 02             	mov    0x2(%esi),%al
4041f5:	88 47 02             	mov    %al,0x2(%edi)
4041f8:	8a 46 01             	mov    0x1(%esi),%al
4041fb:	88 47 01             	mov    %al,0x1(%edi)
4041fe:	8b 44 24 0c          	mov    0xc(%esp),%eax
404202:	5e                   	pop    %esi
404203:	5f                   	pop    %edi
404204:	c3                   	ret
404205:	f7 c7 0f 00 00 00    	test   $0xf,%edi
40420b:	74 0f                	je     0x40421c
40420d:	49                   	dec    %ecx
40420e:	4e                   	dec    %esi
40420f:	4f                   	dec    %edi
404210:	8a 06                	mov    (%esi),%al
404212:	88 07                	mov    %al,(%edi)
404214:	f7 c7 0f 00 00 00    	test   $0xf,%edi
40421a:	75 f1                	jne    0x40420d
40421c:	81 f9 80 00 00 00    	cmp    $0x80,%ecx
404222:	72 68                	jb     0x40428c
404224:	81 ee 80 00 00 00    	sub    $0x80,%esi
40422a:	81 ef 80 00 00 00    	sub    $0x80,%edi
404230:	f3 0f 6f 06          	movdqu (%esi),%xmm0
404234:	f3 0f 6f 4e 10       	movdqu 0x10(%esi),%xmm1
404239:	f3 0f 6f 56 20       	movdqu 0x20(%esi),%xmm2
40423e:	f3 0f 6f 5e 30       	movdqu 0x30(%esi),%xmm3
404243:	f3 0f 6f 66 40       	movdqu 0x40(%esi),%xmm4
404248:	f3 0f 6f 6e 50       	movdqu 0x50(%esi),%xmm5
40424d:	f3 0f 6f 76 60       	movdqu 0x60(%esi),%xmm6
404252:	f3 0f 6f 7e 70       	movdqu 0x70(%esi),%xmm7
404257:	f3 0f 7f 07          	movdqu %xmm0,(%edi)
40425b:	f3 0f 7f 4f 10       	movdqu %xmm1,0x10(%edi)
404260:	f3 0f 7f 57 20       	movdqu %xmm2,0x20(%edi)
404265:	f3 0f 7f 5f 30       	movdqu %xmm3,0x30(%edi)
40426a:	f3 0f 7f 67 40       	movdqu %xmm4,0x40(%edi)
40426f:	f3 0f 7f 6f 50       	movdqu %xmm5,0x50(%edi)
404274:	f3 0f 7f 77 60       	movdqu %xmm6,0x60(%edi)
404279:	f3 0f 7f 7f 70       	movdqu %xmm7,0x70(%edi)
40427e:	81 e9 80 00 00 00    	sub    $0x80,%ecx
404284:	f7 c1 80 ff ff ff    	test   $0xffffff80,%ecx
40428a:	75 90                	jne    0x40421c
40428c:	83 f9 20             	cmp    $0x20,%ecx
40428f:	72 23                	jb     0x4042b4
404291:	83 ee 20             	sub    $0x20,%esi
404294:	83 ef 20             	sub    $0x20,%edi
404297:	f3 0f 6f 06          	movdqu (%esi),%xmm0
40429b:	f3 0f 6f 4e 10       	movdqu 0x10(%esi),%xmm1
4042a0:	f3 0f 7f 07          	movdqu %xmm0,(%edi)
4042a4:	f3 0f 7f 4f 10       	movdqu %xmm1,0x10(%edi)
4042a9:	83 e9 20             	sub    $0x20,%ecx
4042ac:	f7 c1 e0 ff ff ff    	test   $0xffffffe0,%ecx
4042b2:	75 dd                	jne    0x404291
4042b4:	f7 c1 fc ff ff ff    	test   $0xfffffffc,%ecx
4042ba:	74 15                	je     0x4042d1
4042bc:	83 ef 04             	sub    $0x4,%edi
4042bf:	83 ee 04             	sub    $0x4,%esi
4042c2:	8b 06                	mov    (%esi),%eax
4042c4:	89 07                	mov    %eax,(%edi)
4042c6:	83 e9 04             	sub    $0x4,%ecx
4042c9:	f7 c1 fc ff ff ff    	test   $0xfffffffc,%ecx
4042cf:	75 eb                	jne    0x4042bc
4042d1:	85 c9                	test   %ecx,%ecx
4042d3:	74 0f                	je     0x4042e4
4042d5:	83 ef 01             	sub    $0x1,%edi
4042d8:	83 ee 01             	sub    $0x1,%esi
4042db:	8a 06                	mov    (%esi),%al
4042dd:	88 07                	mov    %al,(%edi)
4042df:	83 e9 01             	sub    $0x1,%ecx
4042e2:	75 f1                	jne    0x4042d5
4042e4:	8b 44 24 0c          	mov    0xc(%esp),%eax
4042e8:	5e                   	pop    %esi
4042e9:	5f                   	pop    %edi
4042ea:	c3                   	ret
4042eb:	eb 03                	jmp    0x4042f0
4042ed:	cc                   	int3
4042ee:	cc                   	int3
4042ef:	cc                   	int3
4042f0:	8b c6                	mov    %esi,%eax
4042f2:	83 e0 0f             	and    $0xf,%eax
4042f5:	85 c0                	test   %eax,%eax
4042f7:	0f 85 e3 00 00 00    	jne    0x4043e0
4042fd:	8b d1                	mov    %ecx,%edx
4042ff:	83 e1 7f             	and    $0x7f,%ecx
404302:	c1 ea 07             	shr    $0x7,%edx
404305:	74 66                	je     0x40436d
404307:	8d a4 24 00 00 00 00 	lea    0x0(%esp),%esp
40430e:	8b ff                	mov    %edi,%edi
404310:	66 0f 6f 06          	movdqa (%esi),%xmm0
404314:	66 0f 6f 4e 10       	movdqa 0x10(%esi),%xmm1
404319:	66 0f 6f 56 20       	movdqa 0x20(%esi),%xmm2
40431e:	66 0f 6f 5e 30       	movdqa 0x30(%esi),%xmm3
404323:	66 0f 7f 07          	movdqa %xmm0,(%edi)
404327:	66 0f 7f 4f 10       	movdqa %xmm1,0x10(%edi)
40432c:	66 0f 7f 57 20       	movdqa %xmm2,0x20(%edi)
404331:	66 0f 7f 5f 30       	movdqa %xmm3,0x30(%edi)
404336:	66 0f 6f 66 40       	movdqa 0x40(%esi),%xmm4
40433b:	66 0f 6f 6e 50       	movdqa 0x50(%esi),%xmm5
404340:	66 0f 6f 76 60       	movdqa 0x60(%esi),%xmm6
404345:	66 0f 6f 7e 70       	movdqa 0x70(%esi),%xmm7
40434a:	66 0f 7f 67 40       	movdqa %xmm4,0x40(%edi)
40434f:	66 0f 7f 6f 50       	movdqa %xmm5,0x50(%edi)
404354:	66 0f 7f 77 60       	movdqa %xmm6,0x60(%edi)
404359:	66 0f 7f 7f 70       	movdqa %xmm7,0x70(%edi)
40435e:	8d b6 80 00 00 00    	lea    0x80(%esi),%esi
404364:	8d bf 80 00 00 00    	lea    0x80(%edi),%edi
40436a:	4a                   	dec    %edx
40436b:	75 a3                	jne    0x404310
40436d:	85 c9                	test   %ecx,%ecx
40436f:	74 5f                	je     0x4043d0
404371:	8b d1                	mov    %ecx,%edx
404373:	c1 ea 05             	shr    $0x5,%edx
404376:	85 d2                	test   %edx,%edx
404378:	74 21                	je     0x40439b
40437a:	8d 9b 00 00 00 00    	lea    0x0(%ebx),%ebx
404380:	f3 0f 6f 06          	movdqu (%esi),%xmm0
404384:	f3 0f 6f 4e 10       	movdqu 0x10(%esi),%xmm1
404389:	f3 0f 7f 07          	movdqu %xmm0,(%edi)
40438d:	f3 0f 7f 4f 10       	movdqu %xmm1,0x10(%edi)
404392:	8d 76 20             	lea    0x20(%esi),%esi
404395:	8d 7f 20             	lea    0x20(%edi),%edi
404398:	4a                   	dec    %edx
404399:	75 e5                	jne    0x404380
40439b:	83 e1 1f             	and    $0x1f,%ecx
40439e:	74 30                	je     0x4043d0
4043a0:	8b c1                	mov    %ecx,%eax
4043a2:	c1 e9 02             	shr    $0x2,%ecx
4043a5:	74 0f                	je     0x4043b6
4043a7:	8b 16                	mov    (%esi),%edx
4043a9:	89 17                	mov    %edx,(%edi)
4043ab:	83 c7 04             	add    $0x4,%edi
4043ae:	83 c6 04             	add    $0x4,%esi
4043b1:	83 e9 01             	sub    $0x1,%ecx
4043b4:	75 f1                	jne    0x4043a7
4043b6:	8b c8                	mov    %eax,%ecx
4043b8:	83 e1 03             	and    $0x3,%ecx
4043bb:	74 13                	je     0x4043d0
4043bd:	8a 06                	mov    (%esi),%al
4043bf:	88 07                	mov    %al,(%edi)
4043c1:	46                   	inc    %esi
4043c2:	47                   	inc    %edi
4043c3:	49                   	dec    %ecx
4043c4:	75 f7                	jne    0x4043bd
4043c6:	8d a4 24 00 00 00 00 	lea    0x0(%esp),%esp
4043cd:	8d 49 00             	lea    0x0(%ecx),%ecx
4043d0:	8b 44 24 0c          	mov    0xc(%esp),%eax
4043d4:	5e                   	pop    %esi
4043d5:	5f                   	pop    %edi
4043d6:	c3                   	ret
4043d7:	8d a4 24 00 00 00 00 	lea    0x0(%esp),%esp
4043de:	8b ff                	mov    %edi,%edi
4043e0:	ba 10 00 00 00       	mov    $0x10,%edx
4043e5:	2b d0                	sub    %eax,%edx
4043e7:	2b ca                	sub    %edx,%ecx
4043e9:	51                   	push   %ecx
4043ea:	8b c2                	mov    %edx,%eax
4043ec:	8b c8                	mov    %eax,%ecx
4043ee:	83 e1 03             	and    $0x3,%ecx
4043f1:	74 09                	je     0x4043fc
4043f3:	8a 16                	mov    (%esi),%dl
4043f5:	88 17                	mov    %dl,(%edi)
4043f7:	46                   	inc    %esi
4043f8:	47                   	inc    %edi
4043f9:	49                   	dec    %ecx
4043fa:	75 f7                	jne    0x4043f3
4043fc:	c1 e8 02             	shr    $0x2,%eax
4043ff:	74 0d                	je     0x40440e
404401:	8b 16                	mov    (%esi),%edx
404403:	89 17                	mov    %edx,(%edi)
404405:	8d 76 04             	lea    0x4(%esi),%esi
404408:	8d 7f 04             	lea    0x4(%edi),%edi
40440b:	48                   	dec    %eax
40440c:	75 f3                	jne    0x404401
40440e:	59                   	pop    %ecx
40440f:	e9 e9 fe ff ff       	jmp    0x4042fd
404414:	55                   	push   %ebp
404415:	8b ec                	mov    %esp,%ebp
404417:	56                   	push   %esi
404418:	33 f6                	xor    %esi,%esi
40441a:	83 3d 14 3e 42 00 02 	cmpl   $0x2,0x423e14
404421:	7d 2d                	jge    0x404450
404423:	8b 4d 08             	mov    0x8(%ebp),%ecx
404426:	8b d1                	mov    %ecx,%edx
404428:	66 8b 01             	mov    (%ecx),%ax
40442b:	83 c1 02             	add    $0x2,%ecx
40442e:	66 85 c0             	test   %ax,%ax
404431:	75 f5                	jne    0x404428
404433:	66 8b 45 0c          	mov    0xc(%ebp),%ax
404437:	83 e9 02             	sub    $0x2,%ecx
40443a:	3b ca                	cmp    %edx,%ecx
40443c:	74 05                	je     0x404443
40443e:	66 39 01             	cmp    %ax,(%ecx)
404441:	75 f4                	jne    0x404437
404443:	66 39 01             	cmp    %ax,(%ecx)
404446:	75 04                	jne    0x40444c
404448:	8b c1                	mov    %ecx,%eax
40444a:	eb 66                	jmp    0x4044b2