4046f0:	f3 0f 7f 57 20       	movdqu %xmm2,0x20(%edi)
4046f5:	f3 0f 7f 5f 30       	movdqu %xmm3,0x30(%edi)
4046fa:	f3 0f 7f 67 40       	movdqu %xmm4,0x40(%edi)
4046ff:	f3 0f 7f 6f 50       	movdqu %xmm5,0x50(%edi)
404704:	f3 0f 7f 77 60       	movdqu %xmm6,0x60(%edi)
404709:	f3 0f 7f 7f 70       	movdqu %xmm7,0x70(%edi)
40470e:	81 e9 80 00 00 00    	sub    $0x80,%ecx
404714:	f7 c1 80 ff ff ff    	test   $0xffffff80,%ecx
40471a:	75 90                	jne    0x4046ac
40471c:	83 f9 20             	cmp    $0x20,%ecx
40471f:	72 23                	jb     0x404744
404721:	83 ee 20             	sub    $0x20,%esi
404724:	83 ef 20             	sub    $0x20,%edi
404727:	f3 0f 6f 06          	movdqu (%esi),%xmm0
40472b:	f3 0f 6f 4e 10       	movdqu 0x10(%esi),%xmm1
404730:	f3 0f 7f 07          	movdqu %xmm0,(%edi)
404734:	f3 0f 7f 4f 10       	movdqu %xmm1,0x10(%edi)
404739:	83 e9 20             	sub    $0x20,%ecx
40473c:	f7 c1 e0 ff ff ff    	test   $0xffffffe0,%ecx
404742:	75 dd                	jne    0x404721
404744:	f7 c1 fc ff ff ff    	test   $0xfffffffc,%ecx
40474a:	74 15                	je     0x404761
40474c:	83 ef 04             	sub    $0x4,%edi
40474f:	83 ee 04             	sub    $0x4,%esi
404752:	8b 06                	mov    (%esi),%eax
404754:	89 07                	mov    %eax,(%edi)
404756:	83 e9 04             	sub    $0x4,%ecx
404759:	f7 c1 fc ff ff ff    	test   $0xfffffffc,%ecx
40475f:	75 eb                	jne    0x40474c
404761:	85 c9                	test   %ecx,%ecx
404763:	74 0f                	je     0x404774
404765:	83 ef 01             	sub    $0x1,%edi
404768:	83 ee 01             	sub    $0x1,%esi
40476b:	8a 06                	mov    (%esi),%al
40476d:	88 07                	mov    %al,(%edi)
40476f:	83 e9 01             	sub    $0x1,%ecx
404772:	75 f1                	jne    0x404765
404774:	8b 44 24 0c          	mov    0xc(%esp),%eax
404778:	5e                   	pop    %esi
404779:	5f                   	pop    %edi
40477a:	c3                   	ret
40477b:	eb 03                	jmp    0x404780
40477d:	cc                   	int3
40477e:	cc                   	int3
40477f:	cc                   	int3
404780:	8b c6                	mov    %esi,%eax
404782:	83 e0 0f             	and    $0xf,%eax
404785:	85 c0                	test   %eax,%eax
404787:	0f 85 e3 00 00 00    	jne    0x404870
40478d:	8b d1                	mov    %ecx,%edx
40478f:	83 e1 7f             	and    $0x7f,%ecx
404792:	c1 ea 07             	shr    $0x7,%edx
404795:	74 66                	je     0x4047fd
404797:	8d a4 24 00 00 00 00 	lea    0x0(%esp),%esp
40479e:	8b ff                	mov    %edi,%edi
4047a0:	66 0f 6f 06          	movdqa (%esi),%xmm0
4047a4:	66 0f 6f 4e 10       	movdqa 0x10(%esi),%xmm1
4047a9:	66 0f 6f 56 20       	movdqa 0x20(%esi),%xmm2
4047ae:	66 0f 6f 5e 30       	movdqa 0x30(%esi),%xmm3
4047b3:	66 0f 7f 07          	movdqa %xmm0,(%edi)
4047b7:	66 0f 7f 4f 10       	movdqa %xmm1,0x10(%edi)
4047bc:	66 0f 7f 57 20       	movdqa %xmm2,0x20(%edi)
4047c1:	66 0f 7f 5f 30       	movdqa %xmm3,0x30(%edi)
4047c6:	66 0f 6f 66 40       	movdqa 0x40(%esi),%xmm4
4047cb:	66 0f 6f 6e 50       	movdqa 0x50(%esi),%xmm5
4047d0:	66 0f 6f 76 60       	movdqa 0x60(%esi),%xmm6
4047d5:	66 0f 6f 7e 70       	movdqa 0x70(%esi),%xmm7
4047da:	66 0f 7f 67 40       	movdqa %xmm4,0x40(%edi)
4047df:	66 0f 7f 6f 50       	movdqa %xmm5,0x50(%edi)
4047e4:	66 0f 7f 77 60       	movdqa %xmm6,0x60(%edi)
4047e9:	66 0f 7f 7f 70       	movdqa %xmm7,0x70(%edi)
4047ee:	8d b6 80 00 00 00    	lea    0x80(%esi),%esi
4047f4:	8d bf 80 00 00 00    	lea    0x80(%edi),%edi
4047fa:	4a                   	dec    %edx
4047fb:	75 a3                	jne    0x4047a0
4047fd:	85 c9                	test   %ecx,%ecx
4047ff:	74 5f                	je     0x404860
404801:	8b d1                	mov    %ecx,%edx
404803:	c1 ea 05             	shr    $0x5,%edx
404806:	85 d2                	test   %edx,%edx
404808:	74 21                	je     0x40482b
40480a:	8d 9b 00 00 00 00    	lea    0x0(%ebx),%ebx
404810:	f3 0f 6f 06          	movdqu (%esi),%xmm0
404814:	f3 0f 6f 4e 10       	movdqu 0x10(%esi),%xmm1
404819:	f3 0f 7f 07          	movdqu %xmm0,(%edi)
40481d:	f3 0f 7f 4f 10       	movdqu %xmm1,0x10(%edi)
404822:	8d 76 20             	lea    0x20(%esi),%esi
404825:	8d 7f 20             	lea    0x20(%edi),%edi
404828:	4a                   	dec    %edx
404829:	75 e5                	jne    0x404810
40482b:	83 e1 1f             	and    $0x1f,%ecx
40482e:	74 30                	je     0x404860
404830:	8b c1                	mov    %ecx,%eax
404832:	c1 e9 02             	shr    $0x2,%ecx
404835:	74 0f                	je     0x404846
404837:	8b 16                	mov    (%esi),%edx
404839:	89 17                	mov    %edx,(%edi)
40483b:	83 c7 04             	add    $0x4,%edi
40483e:	83 c6 04             	add    $0x4,%esi
404841:	83 e9 01             	sub    $0x1,%ecx
404844:	75 f1                	jne    0x404837
404846:	8b c8                	mov    %eax,%ecx
404848:	83 e1 03             	and    $0x3,%ecx
40484b:	74 13                	je     0x404860
40484d:	8a 06                	mov    (%esi),%al
40484f:	88 07                	mov    %al,(%edi)
404851:	46                   	inc    %esi
404852:	47                   	inc    %edi
404853:	49                   	dec    %ecx
404854:	75 f7                	jne    0x40484d
404856:	8d a4 24 00 00 00 00 	lea    0x0(%esp),%esp
40485d:	8d 49 00             	lea    0x0(%ecx),%ecx
404860:	8b 44 24 0c          	mov    0xc(%esp),%eax
404864:	5e                   	pop    %esi
404865:	5f                   	pop    %edi
404866:	c3                   	ret
404867:	8d a4 24 00 00 00 00 	lea    0x0(%esp),%esp
40486e:	8b ff                	mov    %edi,%edi
404870:	ba 10 00 00 00       	mov    $0x10,%edx
404875:	2b d0                	sub    %eax,%edx
404877:	2b ca                	sub    %edx,%ecx
404879:	51                   	push   %ecx
40487a:	8b c2                	mov    %edx,%eax
40487c:	8b c8                	mov    %eax,%ecx
40487e:	83 e1 03             	and    $0x3,%ecx
404881:	74 09                	je     0x40488c
404883:	8a 16                	mov    (%esi),%dl
404885:	88 17                	mov    %dl,(%edi)
404887:	46                   	inc    %esi
404888:	47                   	inc    %edi
404889:	49                   	dec    %ecx
40488a:	75 f7                	jne    0x404883
40488c:	c1 e8 02             	shr    $0x2,%eax
40488f:	74 0d                	je     0x40489e
404891:	8b 16                	mov    (%esi),%edx
404893:	89 17                	mov    %edx,(%edi)
404895:	8d 76 04             	lea    0x4(%esi),%esi
404898:	8d 7f 04             	lea    0x4(%edi),%edi
40489b:	48                   	dec    %eax
40489c:	75 f3                	jne    0x404891
40489e:	59                   	pop    %ecx
40489f:	e9 e9 fe ff ff       	jmp    0x40478d
4048a4:	cc                   	int3
4048a5:	cc                   	int3
4048a6:	cc                   	int3
4048a7:	cc                   	int3
4048a8:	cc                   	int3
4048a9:	cc                   	int3
4048aa:	cc                   	int3
4048ab:	cc                   	int3
4048ac:	cc                   	int3
4048ad:	cc                   	int3
4048ae:	cc                   	int3
4048af:	cc                   	int3
4048b0:	6a 08                	push   $0x8
4048b2:	68 e0 fc 41 00       	push   $0x41fce0
4048b7:	e8 e4 f5 ff ff       	call   0x403ea0
4048bc:	8b 45 08             	mov    0x8(%ebp),%eax
4048bf:	85 c0                	test   %eax,%eax
4048c1:	74 7e                	je     0x404941
4048c3:	81 38 63 73 6d e0    	cmpl   $0xe06d7363,(%eax)
4048c9:	75 76                	jne    0x404941
4048cb:	83 78 10 03          	cmpl   $0x3,0x10(%eax)
4048cf:	75 70                	jne    0x404941
4048d1:	81 78 14 20 05 93 19 	cmpl   $0x19930520,0x14(%eax)
4048d8:	74 12                	je     0x4048ec
4048da:	81 78 14 21 05 93 19 	cmpl   $0x19930521,0x14(%eax)
4048e1:	74 09                	je     0x4048ec
4048e3:	81 78 14 22 05 93 19 	cmpl   $0x19930522,0x14(%eax)
4048ea:	75 55                	jne    0x404941
4048ec:	8b 48 1c             	mov    0x1c(%eax),%ecx
4048ef:	85 c9                	test   %ecx,%ecx
4048f1:	74 4e                	je     0x404941
4048f3:	8b 51 04             	mov    0x4(%ecx),%edx
4048f6:	85 d2                	test   %edx,%edx
4048f8:	74 29                	je     0x404923
4048fa:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
4048fe:	52                   	push   %edx
4048ff:	ff 70 18             	push   0x18(%eax)
404902:	e8 4a 00 00 00       	call   0x404951
404907:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
40490e:	eb 31                	jmp    0x404941
404910:	ff 75 0c             	push   0xc(%ebp)
404913:	ff 75 ec             	push   -0x14(%ebp)
404916:	e8 43 00 00 00       	call   0x40495e
40491b:	59                   	pop    %ecx
40491c:	59                   	pop    %ecx
40491d:	c3                   	ret
40491e:	8b 65 e8             	mov    -0x18(%ebp),%esp
404921:	eb e4                	jmp    0x404907
404923:	f6 01 10             	testb  $0x10,(%ecx)
404926:	74 19                	je     0x404941
404928:	8b 40 18             	mov    0x18(%eax),%eax
40492b:	8b 08                	mov    (%eax),%ecx
40492d:	85 c9                	test   %ecx,%ecx
40492f:	74 10                	je     0x404941
404931:	8b 01                	mov    (%ecx),%eax
404933:	51                   	push   %ecx
404934:	8b 70 08             	mov    0x8(%eax),%esi
404937:	8b ce                	mov    %esi,%ecx
404939:	ff 15 54 91 41 00    	call   *0x419154
40493f:	ff d6                	call   *%esi
404941:	8b 4d f0             	mov    -0x10(%ebp),%ecx
404944:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
40494b:	59                   	pop    %ecx
40494c:	5f                   	pop    %edi
40494d:	5e                   	pop    %esi
40494e:	5b                   	pop    %ebx
40494f:	c9                   	leave
404950:	c3                   	ret
404951:	55                   	push   %ebp
404952:	8b ec                	mov    %esp,%ebp
404954:	8b 4d 08             	mov    0x8(%ebp),%ecx
404957:	ff 55 0c             	call   *0xc(%ebp)
40495a:	5d                   	pop    %ebp
40495b:	c2 08 00             	ret    $0x8
40495e:	55                   	push   %ebp
40495f:	8b ec                	mov    %esp,%ebp
404961:	80 7d 0c 00          	cmpb   $0x0,0xc(%ebp)
404965:	74 32                	je     0x404999
404967:	56                   	push   %esi
404968:	57                   	push   %edi
404969:	8b 7d 08             	mov    0x8(%ebp),%edi
40496c:	8b 37                	mov    (%edi),%esi
40496e:	81 3e 63 73 6d e0    	cmpl   $0xe06d7363,(%esi)
404974:	75 21                	jne    0x404997
404976:	83 7e 10 03          	cmpl   $0x3,0x10(%esi)
40497a:	75 1b                	jne    0x404997
40497c:	81 7e 14 20 05 93 19 	cmpl   $0x19930520,0x14(%esi)
404983:	74 18                	je     0x40499d
404985:	81 7e 14 21 05 93 19 	cmpl   $0x19930521,0x14(%esi)
40498c:	74 0f                	je     0x40499d
40498e:	81 7e 14 22 05 93 19 	cmpl   $0x19930522,0x14(%esi)
404995:	74 06                	je     0x40499d
404997:	5f                   	pop    %edi
404998:	5e                   	pop    %esi
404999:	33 c0                	xor    %eax,%eax
40499b:	5d                   	pop    %ebp
40499c:	c3                   	ret
40499d:	e8 fa 08 00 00       	call   0x40529c
4049a2:	89 70 10             	mov    %esi,0x10(%eax)
4049a5:	8b 77 04             	mov    0x4(%edi),%esi
4049a8:	e8 ef 08 00 00       	call   0x40529c
4049ad:	89 70 14             	mov    %esi,0x14(%eax)
4049b0:	e8 39 5b 00 00       	call   0x40a4ee
4049b5:	cc                   	int3
4049b6:	55                   	push   %ebp
4049b7:	8b ec                	mov    %esp,%ebp
4049b9:	e8 de 08 00 00       	call   0x40529c
4049be:	8b 40 24             	mov    0x24(%eax),%eax
4049c1:	85 c0                	test   %eax,%eax
4049c3:	74 0e                	je     0x4049d3
4049c5:	8b 4d 08             	mov    0x8(%ebp),%ecx
4049c8:	39 08                	cmp    %ecx,(%eax)
4049ca:	74 0c                	je     0x4049d8
4049cc:	8b 40 04             	mov    0x4(%eax),%eax
4049cf:	85 c0                	test   %eax,%eax
4049d1:	75 f5                	jne    0x4049c8
4049d3:	33 c0                	xor    %eax,%eax
4049d5:	40                   	inc    %eax
4049d6:	5d                   	pop    %ebp
4049d7:	c3                   	ret
4049d8:	33 c0                	xor    %eax,%eax
4049da:	5d                   	pop    %ebp
4049db:	c3                   	ret
4049dc:	55                   	push   %ebp
4049dd:	8b ec                	mov    %esp,%ebp
4049df:	8b 4d 0c             	mov    0xc(%ebp),%ecx
4049e2:	8b 55 08             	mov    0x8(%ebp),%edx
4049e5:	56                   	push   %esi
4049e6:	8b 01                	mov    (%ecx),%eax
4049e8:	8b 71 04             	mov    0x4(%ecx),%esi
4049eb:	03 c2                	add    %edx,%eax
4049ed:	85 f6                	test   %esi,%esi
4049ef:	78 0d                	js     0x4049fe
4049f1:	8b 49 08             	mov    0x8(%ecx),%ecx
4049f4:	8b 14 16             	mov    (%esi,%edx,1),%edx
4049f7:	8b 0c 0a             	mov    (%edx,%ecx,1),%ecx
4049fa:	03 ce                	add    %esi,%ecx
4049fc:	03 c1                	add    %ecx,%eax
4049fe:	5e                   	pop    %esi
4049ff:	5d                   	pop    %ebp
404a00:	c3                   	ret
404a01:	55                   	push   %ebp
404a02:	8b ec                	mov    %esp,%ebp
404a04:	56                   	push   %esi
404a05:	8b 75 08             	mov    0x8(%ebp),%esi
404a08:	57                   	push   %edi
404a09:	8b 3e                	mov    (%esi),%edi
404a0b:	81 3f 52 43 43 e0    	cmpl   $0xe0434352,(%edi)
404a11:	74 12                	je     0x404a25
404a13:	81 3f 4d 4f 43 e0    	cmpl   $0xe0434f4d,(%edi)
404a19:	74 0a                	je     0x404a25
404a1b:	81 3f 63 73 6d e0    	cmpl   $0xe06d7363,(%edi)
404a21:	74 1b                	je     0x404a3e
404a23:	eb 13                	jmp    0x404a38
404a25:	e8 72 08 00 00       	call   0x40529c
404a2a:	83 78 18 00          	cmpl   $0x0,0x18(%eax)
404a2e:	7e 08                	jle    0x404a38
404a30:	e8 67 08 00 00       	call   0x40529c
404a35:	ff 48 18             	decl   0x18(%eax)
404a38:	5f                   	pop    %edi
404a39:	33 c0                	xor    %eax,%eax
404a3b:	5e                   	pop    %esi
404a3c:	5d                   	pop    %ebp
404a3d:	c3                   	ret
404a3e:	e8 59 08 00 00       	call   0x40529c
404a43:	89 78 10             	mov    %edi,0x10(%eax)
404a46:	8b 76 04             	mov    0x4(%esi),%esi
404a49:	e8 4e 08 00 00       	call   0x40529c
404a4e:	89 70 14             	mov    %esi,0x14(%eax)
404a51:	e8 98 5a 00 00       	call   0x40a4ee
404a56:	cc                   	int3
404a57:	e8 40 08 00 00       	call   0x40529c
404a5c:	83 c0 10             	add    $0x10,%eax
404a5f:	c3                   	ret
404a60:	e8 37 08 00 00       	call   0x40529c
404a65:	83 c0 14             	add    $0x14,%eax
404a68:	c3                   	ret
404a69:	e9 80 5a 00 00       	jmp    0x40a4ee
404a6e:	cc                   	int3
404a6f:	cc                   	int3
404a70:	8b 4c 24 0c          	mov    0xc(%esp),%ecx
404a74:	0f b6 44 24 08       	movzbl 0x8(%esp),%eax
404a79:	8b d7                	mov    %edi,%edx
404a7b:	8b 7c 24 04          	mov    0x4(%esp),%edi
404a7f:	85 c9                	test   %ecx,%ecx
404a81:	0f 84 3c 01 00 00    	je     0x404bc3
404a87:	69 c0 01 01 01 01    	imul   $0x1010101,%eax,%eax
404a8d:	83 f9 20             	cmp    $0x20,%ecx
404a90:	0f 86 df 00 00 00    	jbe    0x404b75
404a96:	81 f9 80 00 00 00    	cmp    $0x80,%ecx
404a9c:	0f 82 8b 00 00 00    	jb     0x404b2d
404aa2:	0f ba 25 70 1a 42 00 	btl    $0x1,0x421a70
404aa9:	01
404aaa:	73 09                	jae    0x404ab5
404aac:	f3 aa                	rep stos %al,%es:(%edi)
404aae:	8b 44 24 04          	mov    0x4(%esp),%eax
404ab2:	8b fa                	mov    %edx,%edi
404ab4:	c3                   	ret
404ab5:	0f ba 25 b0 10 42 00 	btl    $0x1,0x4210b0
404abc:	01
404abd:	0f 83 b2 00 00 00    	jae    0x404b75
404ac3:	66 0f 6e c0          	movd   %eax,%xmm0
404ac7:	66 0f 70 c0 00       	pshufd $0x0,%xmm0,%xmm0
404acc:	03 cf                	add    %edi,%ecx
404ace:	0f 11 07             	movups %xmm0,(%edi)
404ad1:	83 c7 10             	add    $0x10,%edi
404ad4:	83 e7 f0             	and    $0xfffffff0,%edi
404ad7:	2b cf                	sub    %edi,%ecx