1c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.file	"aes-586.s"
2c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.text
3c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.type	_x86_AES_encrypt_compact,@function
4c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.align	16
5c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita_x86_AES_encrypt_compact:
6c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%edi,20(%esp)
7c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	(%edi),%eax
8c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	4(%edi),%ebx
9c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	8(%edi),%ecx
10c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	12(%edi),%edx
11c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	240(%edi),%esi
12c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	-2(%esi,%esi,1),%esi
13c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	(%edi,%esi,8),%esi
14c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,24(%esp)
15c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	-128(%ebp),%edi
16c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	-96(%ebp),%esi
17c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	-64(%ebp),%edi
18c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	-32(%ebp),%esi
19c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	(%ebp),%edi
20c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	32(%ebp),%esi
21c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	64(%ebp),%edi
22c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	96(%ebp),%esi
23c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.align	16
24c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.L000loop:
25c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,%esi
26c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$255,%esi
27c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%esi,1),%esi
28c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%bh,%edi
29c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%edi,1),%edi
30c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$8,%edi
31c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edi,%esi
32c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ecx,%edi
33c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$16,%edi
34c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$255,%edi
35c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%edi,1),%edi
36c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$16,%edi
37c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edi,%esi
38c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%edx,%edi
39c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$24,%edi
40c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%edi,1),%edi
41c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$24,%edi
42c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edi,%esi
43c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,4(%esp)
44c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita
45c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ebx,%esi
46c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$255,%esi
47c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$16,%ebx
48c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%esi,1),%esi
49c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%ch,%edi
50c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%edi,1),%edi
51c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$8,%edi
52c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edi,%esi
53c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%edx,%edi
54c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$16,%edi
55c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$255,%edi
56c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%edi,1),%edi
57c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$16,%edi
58c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edi,%esi
59c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,%edi
60c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$24,%edi
61c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%edi,1),%edi
62c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$24,%edi
63c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edi,%esi
64c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,8(%esp)
65c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita
66c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ecx,%esi
67c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$255,%esi
68c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$24,%ecx
69c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%esi,1),%esi
70c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%dh,%edi
71c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%edi,1),%edi
72c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$8,%edi
73c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edi,%esi
74c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,%edi
75c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$16,%edi
76c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$255,%edx
77c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$255,%edi
78c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%edi,1),%edi
79c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$16,%edi
80c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edi,%esi
81c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%bh,%edi
82c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%edi,1),%edi
83c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$24,%edi
84c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edi,%esi
85c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita
86c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$255,%edx
87c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%edx,1),%edx
88c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%ah,%eax
89c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%eax,1),%eax
90c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$8,%eax
91c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%eax,%edx
92c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	4(%esp),%eax
93c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$255,%ebx
94c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%ebx,1),%ebx
95c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$16,%ebx
96c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ebx,%edx
97c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	8(%esp),%ebx
98c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%ecx,1),%ecx
99c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$24,%ecx
100c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ecx,%edx
101c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,%ecx
102c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita
103c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ecx,%esi
104c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$2155905152,%esi
105c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,%ebp
106c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$7,%ebp
107c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	(%ecx,%ecx,1),%edi
108c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	subl	%ebp,%esi
109c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$4278124286,%edi
110c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$454761243,%esi
111c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ecx,%ebp
112c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edi,%esi
113c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%esi,%ecx
114c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	roll	$24,%ecx
115c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%esi,%ecx
116c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	rorl	$16,%ebp
117c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ebp,%ecx
118c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	rorl	$8,%ebp
119c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ebp,%ecx
120c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%edx,%esi
121c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$2155905152,%esi
122c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,%ebp
123c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$7,%ebp
124c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	(%edx,%edx,1),%edi
125c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	subl	%ebp,%esi
126c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$4278124286,%edi
127c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$454761243,%esi
128c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%edx,%ebp
129c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edi,%esi
130c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%esi,%edx
131c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	roll	$24,%edx
132c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%esi,%edx
133c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	rorl	$16,%ebp
134c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ebp,%edx
135c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	rorl	$8,%ebp
136c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ebp,%edx
137c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,%esi
138c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$2155905152,%esi
139c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,%ebp
140c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$7,%ebp
141c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	(%eax,%eax,1),%edi
142c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	subl	%ebp,%esi
143c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$4278124286,%edi
144c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$454761243,%esi
145c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,%ebp
146c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edi,%esi
147c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%esi,%eax
148c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	roll	$24,%eax
149c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%esi,%eax
150c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	rorl	$16,%ebp
151c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ebp,%eax
152c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	rorl	$8,%ebp
153c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ebp,%eax
154c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ebx,%esi
155c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$2155905152,%esi
156c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,%ebp
157c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$7,%ebp
158c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	(%ebx,%ebx,1),%edi
159c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	subl	%ebp,%esi
160c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$4278124286,%edi
161c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$454761243,%esi
162c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ebx,%ebp
163c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edi,%esi
164c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%esi,%ebx
165c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	roll	$24,%ebx
166c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%esi,%ebx
167c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	rorl	$16,%ebp
168c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ebp,%ebx
169c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	rorl	$8,%ebp
170c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ebp,%ebx
171c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	20(%esp),%edi
172c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	28(%esp),%ebp
173c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	addl	$16,%edi
174c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	(%edi),%eax
175c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	4(%edi),%ebx
176c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	8(%edi),%ecx
177c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	12(%edi),%edx
178c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	cmpl	24(%esp),%edi
179c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%edi,20(%esp)
180c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	jb	.L000loop
181c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,%esi
182c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$255,%esi
183c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%esi,1),%esi
184c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%bh,%edi
185c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%edi,1),%edi
186c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$8,%edi
187c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edi,%esi
188c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ecx,%edi
189c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$16,%edi
190c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$255,%edi
191c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%edi,1),%edi
192c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$16,%edi
193c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edi,%esi
194c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%edx,%edi
195c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$24,%edi
196c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%edi,1),%edi
197c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$24,%edi
198c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edi,%esi
199c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,4(%esp)
200c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita
201c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ebx,%esi
202c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$255,%esi
203c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$16,%ebx
204c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%esi,1),%esi
205c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%ch,%edi
206c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%edi,1),%edi
207c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$8,%edi
208c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edi,%esi
209c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%edx,%edi
210c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$16,%edi
211c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$255,%edi
212c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%edi,1),%edi
213c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$16,%edi
214c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edi,%esi
215c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,%edi
216c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$24,%edi
217c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%edi,1),%edi
218c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$24,%edi
219c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edi,%esi
220c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,8(%esp)
221c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita
222c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ecx,%esi
223c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$255,%esi
224c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$24,%ecx
225c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%esi,1),%esi
226c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%dh,%edi
227c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%edi,1),%edi
228c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$8,%edi
229c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edi,%esi
230c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,%edi
231c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$16,%edi
232c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$255,%edx
233c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$255,%edi
234c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%edi,1),%edi
235c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$16,%edi
236c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edi,%esi
237c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%bh,%edi
238c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%edi,1),%edi
239c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$24,%edi
240c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edi,%esi
241c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita
242c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	20(%esp),%edi
243c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$255,%edx
244c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%edx,1),%edx
245c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%ah,%eax
246c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%eax,1),%eax
247c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$8,%eax
248c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%eax,%edx
249c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	4(%esp),%eax
250c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$255,%ebx
251c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%ebx,1),%ebx
252c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$16,%ebx
253c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ebx,%edx
254c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	8(%esp),%ebx
255c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%ecx,1),%ecx
256c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$24,%ecx
257c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ecx,%edx
258c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,%ecx
259c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita
260c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	16(%edi),%eax
261c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	20(%edi),%ebx
262c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	24(%edi),%ecx
263c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	28(%edi),%edx
264c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	ret
265c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.size	_x86_AES_encrypt_compact,.-_x86_AES_encrypt_compact
266c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.type	_sse_AES_encrypt_compact,@function
267c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.align	16
268c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita_sse_AES_encrypt_compact:
269c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pxor	(%edi),%mm0
270c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pxor	8(%edi),%mm4
271c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	240(%edi),%esi
272c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	-2(%esi,%esi,1),%esi
273c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	(%edi,%esi,8),%esi
274c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,24(%esp)
275c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	$454761243,%eax
276c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,8(%esp)
277c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,12(%esp)
278c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	-128(%ebp),%eax
279c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	-96(%ebp),%ebx
280c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	-64(%ebp),%ecx
281c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	-32(%ebp),%edx
282c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	(%ebp),%eax
283c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	32(%ebp),%ebx
284c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	64(%ebp),%ecx
285c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	96(%ebp),%edx
286c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.align	16
287c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.L001loop:
288c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pshufw	$8,%mm0,%mm1
289c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pshufw	$13,%mm4,%mm5
290c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movd	%mm1,%eax
291c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movd	%mm5,%ebx
292c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%al,%esi
293c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%esi,1),%ecx
294c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pshufw	$13,%mm0,%mm2
295c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%ah,%edx
296c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%edx,1),%edx
297c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$8,%edx
298c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$16,%eax
299c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%bl,%esi
300c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%esi,1),%esi
301c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$16,%esi
302c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	orl	%esi,%ecx
303c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pshufw	$8,%mm4,%mm6
304c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%bh,%esi
305c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%esi,1),%esi
306c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$24,%esi
307c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	orl	%esi,%edx
308c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$16,%ebx
309c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%ah,%esi
310c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%esi,1),%esi
311c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$8,%esi
312c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	orl	%esi,%ecx
313c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%bh,%esi
314c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%esi,1),%esi
315c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$24,%esi
316c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	orl	%esi,%ecx
317c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movd	%ecx,%mm0
318c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%al,%esi
319c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%esi,1),%ecx
320c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movd	%mm2,%eax
321c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%bl,%esi
322c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%esi,1),%esi
323c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$16,%esi
324c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	orl	%esi,%ecx
325c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movd	%mm6,%ebx
326c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%ah,%esi
327c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%esi,1),%esi
328c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$24,%esi
329c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	orl	%esi,%ecx
330c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%bh,%esi
331c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%esi,1),%esi
332c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$8,%esi
333c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	orl	%esi,%ecx
334c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movd	%ecx,%mm1
335c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%bl,%esi
336c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%esi,1),%ecx
337c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$16,%ebx
338c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%al,%esi
339c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%esi,1),%esi
340c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$16,%esi
341c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	orl	%esi,%ecx
342c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$16,%eax
343c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	punpckldq	%mm1,%mm0
344c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%ah,%esi
345c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%esi,1),%esi
346c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$24,%esi
347c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	orl	%esi,%ecx
348c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$255,%eax
349c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%eax,1),%eax
350c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$16,%eax
351c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	orl	%eax,%edx
352c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%bh,%esi
353c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%esi,1),%esi
354c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$8,%esi
355c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	orl	%esi,%ecx
356c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movd	%ecx,%mm4
357c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$255,%ebx
358c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%ebx,1),%ebx
359c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	orl	%ebx,%edx
360c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movd	%edx,%mm5
361c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	punpckldq	%mm5,%mm4
362c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	addl	$16,%edi
363c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	cmpl	24(%esp),%edi
364c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	ja	.L002out
365c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movq	8(%esp),%mm2
366c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pxor	%mm3,%mm3
367c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pxor	%mm7,%mm7
368c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movq	%mm0,%mm1
369c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movq	%mm4,%mm5
370c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pcmpgtb	%mm0,%mm3
371c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pcmpgtb	%mm4,%mm7
372c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pand	%mm2,%mm3
373c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pand	%mm2,%mm7
374c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pshufw	$177,%mm0,%mm2
375c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pshufw	$177,%mm4,%mm6
376c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	paddb	%mm0,%mm0
377c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	paddb	%mm4,%mm4
378c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pxor	%mm3,%mm0
379c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pxor	%mm7,%mm4
380c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pshufw	$177,%mm2,%mm3
381c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pshufw	$177,%mm6,%mm7
382c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pxor	%mm0,%mm1
383c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pxor	%mm4,%mm5
384c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pxor	%mm2,%mm0
385c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pxor	%mm6,%mm4
386c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movq	%mm3,%mm2
387c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movq	%mm7,%mm6
388c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pslld	$8,%mm3
389c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pslld	$8,%mm7
390c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	psrld	$24,%mm2
391c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	psrld	$24,%mm6
392c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pxor	%mm3,%mm0
393c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pxor	%mm7,%mm4
394c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pxor	%mm2,%mm0
395c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pxor	%mm6,%mm4
396c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movq	%mm1,%mm3
397c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movq	%mm5,%mm7
398c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movq	(%edi),%mm2
399c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movq	8(%edi),%mm6
400c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	psrld	$8,%mm1
401c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	psrld	$8,%mm5
402c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	-128(%ebp),%eax
403c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pslld	$24,%mm3
404c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pslld	$24,%mm7
405c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	-64(%ebp),%ebx
406c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pxor	%mm1,%mm0
407c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pxor	%mm5,%mm4
408c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	(%ebp),%ecx
409c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pxor	%mm3,%mm0
410c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pxor	%mm7,%mm4
411c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	64(%ebp),%edx
412c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pxor	%mm2,%mm0
413c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pxor	%mm6,%mm4
414c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	jmp	.L001loop
415c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.align	16
416c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.L002out:
417c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pxor	(%edi),%mm0
418c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pxor	8(%edi),%mm4
419c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	ret
420c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.size	_sse_AES_encrypt_compact,.-_sse_AES_encrypt_compact
421c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.type	_x86_AES_encrypt,@function
422c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.align	16
423c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita_x86_AES_encrypt:
424c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%edi,20(%esp)
425c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	(%edi),%eax
426c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	4(%edi),%ebx
427c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	8(%edi),%ecx
428c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	12(%edi),%edx
429c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	240(%edi),%esi
430c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	-2(%esi,%esi,1),%esi
431c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	(%edi,%esi,8),%esi
432c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,24(%esp)
433c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.align	16
434c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.L003loop:
435c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,%esi
436c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$255,%esi
437c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	(%ebp,%esi,8),%esi
438c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%bh,%edi
439c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	3(%ebp,%edi,8),%esi
440c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ecx,%edi
441c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$16,%edi
442c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$255,%edi
443c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	2(%ebp,%edi,8),%esi
444c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%edx,%edi
445c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$24,%edi
446c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	1(%ebp,%edi,8),%esi
447c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,4(%esp)
448c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita
449c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ebx,%esi
450c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$255,%esi
451c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$16,%ebx
452c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	(%ebp,%esi,8),%esi
453c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%ch,%edi
454c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	3(%ebp,%edi,8),%esi
455c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%edx,%edi
456c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$16,%edi
457c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$255,%edi
458c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	2(%ebp,%edi,8),%esi
459c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,%edi
460c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$24,%edi
461c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	1(%ebp,%edi,8),%esi
462c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,8(%esp)
463c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita
464c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ecx,%esi
465c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$255,%esi
466c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$24,%ecx
467c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	(%ebp,%esi,8),%esi
468c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%dh,%edi
469c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	3(%ebp,%edi,8),%esi
470c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,%edi
471c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$16,%edi
472c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$255,%edx
473c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$255,%edi
474c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	2(%ebp,%edi,8),%esi
475c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%bh,%edi
476c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	1(%ebp,%edi,8),%esi
477c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita
478c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	20(%esp),%edi
479c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	(%ebp,%edx,8),%edx
480c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%ah,%eax
481c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	3(%ebp,%eax,8),%edx
482c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	4(%esp),%eax
483c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$255,%ebx
484c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	2(%ebp,%ebx,8),%edx
485c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	8(%esp),%ebx
486c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	1(%ebp,%ecx,8),%edx
487c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,%ecx
488c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita
489c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	addl	$16,%edi
490c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	(%edi),%eax
491c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	4(%edi),%ebx
492c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	8(%edi),%ecx
493c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	12(%edi),%edx
494c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	cmpl	24(%esp),%edi
495c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%edi,20(%esp)
496c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	jb	.L003loop
497c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,%esi
498c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$255,%esi
499c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	2(%ebp,%esi,8),%esi
500c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$255,%esi
501c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%bh,%edi
502c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	(%ebp,%edi,8),%edi
503c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$65280,%edi
504c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edi,%esi
505c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ecx,%edi
506c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$16,%edi
507c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$255,%edi
508c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	(%ebp,%edi,8),%edi
509c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$16711680,%edi
510c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edi,%esi
511c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%edx,%edi
512c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$24,%edi
513c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	2(%ebp,%edi,8),%edi
514c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$4278190080,%edi
515c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edi,%esi
516c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,4(%esp)
517c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ebx,%esi
518c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$255,%esi
519c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$16,%ebx
520c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	2(%ebp,%esi,8),%esi
521c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$255,%esi
522c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%ch,%edi
523c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	(%ebp,%edi,8),%edi
524c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$65280,%edi
525c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edi,%esi
526c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%edx,%edi
527c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$16,%edi
528c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$255,%edi
529c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	(%ebp,%edi,8),%edi
530c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$16711680,%edi
531c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edi,%esi
532c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,%edi
533c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$24,%edi
534c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	2(%ebp,%edi,8),%edi
535c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$4278190080,%edi
536c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edi,%esi
537c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,8(%esp)
538c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ecx,%esi
539c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$255,%esi
540c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$24,%ecx
541c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	2(%ebp,%esi,8),%esi
542c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$255,%esi
543c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%dh,%edi
544c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	(%ebp,%edi,8),%edi
545c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$65280,%edi
546c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edi,%esi
547c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,%edi
548c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$16,%edi
549c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$255,%edx
550c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$255,%edi
551c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	(%ebp,%edi,8),%edi
552c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$16711680,%edi
553c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edi,%esi
554c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%bh,%edi
555c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	2(%ebp,%edi,8),%edi
556c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$4278190080,%edi
557c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edi,%esi
558c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	20(%esp),%edi
559c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$255,%edx
560c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	2(%ebp,%edx,8),%edx
561c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$255,%edx
562c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%ah,%eax
563c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	(%ebp,%eax,8),%eax
564c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$65280,%eax
565c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%eax,%edx
566c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	4(%esp),%eax
567c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$255,%ebx
568c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	(%ebp,%ebx,8),%ebx
569c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$16711680,%ebx
570c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ebx,%edx
571c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	8(%esp),%ebx
572c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	2(%ebp,%ecx,8),%ecx
573c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$4278190080,%ecx
574c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ecx,%edx
575c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,%ecx
576c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	addl	$16,%edi
577c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	(%edi),%eax
578c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	4(%edi),%ebx
579c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	8(%edi),%ecx
580c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	12(%edi),%edx
581c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	ret
582c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.align	64
583c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.LAES_Te:
584c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2774754246,2774754246
585c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2222750968,2222750968
586c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2574743534,2574743534
587c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2373680118,2373680118
588c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	234025727,234025727
589c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3177933782,3177933782
590c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2976870366,2976870366
591c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1422247313,1422247313
592c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1345335392,1345335392
593c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	50397442,50397442
594c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2842126286,2842126286
595c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2099981142,2099981142
596c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	436141799,436141799
597c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1658312629,1658312629
598c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3870010189,3870010189
599c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2591454956,2591454956
600c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1170918031,1170918031
601c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2642575903,2642575903
602c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1086966153,1086966153
603c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2273148410,2273148410
604c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	368769775,368769775
605c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3948501426,3948501426
606c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3376891790,3376891790
607c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	200339707,200339707
608c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3970805057,3970805057
609c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1742001331,1742001331
610c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	4255294047,4255294047
611c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3937382213,3937382213
612c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3214711843,3214711843
613c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	4154762323,4154762323
614c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2524082916,2524082916
615c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1539358875,1539358875
616c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3266819957,3266819957
617c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	486407649,486407649
618c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2928907069,2928907069
619c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1780885068,1780885068
620c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1513502316,1513502316
621c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1094664062,1094664062
622c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	49805301,49805301
623c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1338821763,1338821763
624c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1546925160,1546925160
625c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	4104496465,4104496465
626c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	887481809,887481809
627c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	150073849,150073849
628c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2473685474,2473685474
629c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1943591083,1943591083
630c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1395732834,1395732834
631c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1058346282,1058346282
632c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	201589768,201589768
633c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1388824469,1388824469
634c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1696801606,1696801606
635c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1589887901,1589887901
636c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	672667696,672667696
637c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2711000631,2711000631
638c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	251987210,251987210
639c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3046808111,3046808111
640c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	151455502,151455502
641c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	907153956,907153956
642c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2608889883,2608889883
643c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1038279391,1038279391
644c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	652995533,652995533
645c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1764173646,1764173646
646c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3451040383,3451040383
647c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2675275242,2675275242
648c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	453576978,453576978
649c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2659418909,2659418909
650c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1949051992,1949051992
651c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	773462580,773462580
652c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	756751158,756751158
653c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2993581788,2993581788
654c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3998898868,3998898868
655c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	4221608027,4221608027
656c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	4132590244,4132590244
657c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1295727478,1295727478
658c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1641469623,1641469623
659c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3467883389,3467883389
660c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2066295122,2066295122
661c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1055122397,1055122397
662c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1898917726,1898917726
663c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2542044179,2542044179
664c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	4115878822,4115878822
665c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1758581177,1758581177
666c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	0,0
667c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	753790401,753790401
668c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1612718144,1612718144
669c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	536673507,536673507
670c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3367088505,3367088505
671c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3982187446,3982187446
672c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3194645204,3194645204
673c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1187761037,1187761037
674c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3653156455,3653156455
675c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1262041458,1262041458
676c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3729410708,3729410708
677c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3561770136,3561770136
678c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3898103984,3898103984
679c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1255133061,1255133061
680c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1808847035,1808847035
681c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	720367557,720367557
682c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3853167183,3853167183
683c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	385612781,385612781
684c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3309519750,3309519750
685c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3612167578,3612167578
686c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1429418854,1429418854
687c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2491778321,2491778321
688c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3477423498,3477423498
689c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	284817897,284817897
690c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	100794884,100794884
691c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2172616702,2172616702
692c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	4031795360,4031795360
693c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1144798328,1144798328
694c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3131023141,3131023141
695c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3819481163,3819481163
696c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	4082192802,4082192802
697c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	4272137053,4272137053
698c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3225436288,3225436288
699c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2324664069,2324664069
700c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2912064063,2912064063
701c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3164445985,3164445985
702c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1211644016,1211644016
703c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	83228145,83228145
704c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3753688163,3753688163
705c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3249976951,3249976951
706c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1977277103,1977277103
707c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1663115586,1663115586
708c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	806359072,806359072
709c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	452984805,452984805
710c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	250868733,250868733
711c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1842533055,1842533055
712c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1288555905,1288555905
713c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	336333848,336333848
714c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	890442534,890442534
715c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	804056259,804056259
716c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3781124030,3781124030
717c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2727843637,2727843637
718c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3427026056,3427026056
719c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	957814574,957814574
720c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1472513171,1472513171
721c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	4071073621,4071073621
722c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2189328124,2189328124
723c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1195195770,1195195770
724c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2892260552,2892260552
725c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3881655738,3881655738
726c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	723065138,723065138
727c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2507371494,2507371494
728c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2690670784,2690670784
729c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2558624025,2558624025
730c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3511635870,3511635870
731c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2145180835,2145180835
732c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1713513028,1713513028
733c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2116692564,2116692564
734c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2878378043,2878378043
735c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2206763019,2206763019
736c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3393603212,3393603212
737c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	703524551,703524551
738c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3552098411,3552098411
739c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1007948840,1007948840
740c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2044649127,2044649127
741c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3797835452,3797835452
742c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	487262998,487262998
743c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1994120109,1994120109
744c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1004593371,1004593371
745c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1446130276,1446130276
746c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1312438900,1312438900
747c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	503974420,503974420
748c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3679013266,3679013266
749c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	168166924,168166924
750c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1814307912,1814307912
751c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3831258296,3831258296
752c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1573044895,1573044895
753c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1859376061,1859376061
754c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	4021070915,4021070915
755c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2791465668,2791465668
756c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2828112185,2828112185
757c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2761266481,2761266481
758c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	937747667,937747667
759c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2339994098,2339994098
760c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	854058965,854058965
761c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1137232011,1137232011
762c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1496790894,1496790894
763c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3077402074,3077402074
764c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2358086913,2358086913
765c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1691735473,1691735473
766c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3528347292,3528347292
767c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3769215305,3769215305
768c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3027004632,3027004632
769c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	4199962284,4199962284
770c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	133494003,133494003
771c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	636152527,636152527
772c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2942657994,2942657994
773c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2390391540,2390391540
774c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3920539207,3920539207
775c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	403179536,403179536
776c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3585784431,3585784431
777c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2289596656,2289596656
778c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1864705354,1864705354
779c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1915629148,1915629148
780c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	605822008,605822008
781c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	4054230615,4054230615
782c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3350508659,3350508659
783c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1371981463,1371981463
784c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	602466507,602466507
785c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2094914977,2094914977
786c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2624877800,2624877800
787c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	555687742,555687742
788c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3712699286,3712699286
789c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3703422305,3703422305
790c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2257292045,2257292045
791c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2240449039,2240449039
792c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2423288032,2423288032
793c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1111375484,1111375484
794c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3300242801,3300242801
795c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2858837708,2858837708
796c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3628615824,3628615824
797c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	84083462,84083462
798c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	32962295,32962295
799c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	302911004,302911004
800c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2741068226,2741068226
801c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1597322602,1597322602
802c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	4183250862,4183250862
803c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3501832553,3501832553
804c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2441512471,2441512471
805c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1489093017,1489093017
806c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	656219450,656219450
807c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3114180135,3114180135
808c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	954327513,954327513
809c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	335083755,335083755
810c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3013122091,3013122091
811c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	856756514,856756514
812c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3144247762,3144247762
813c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1893325225,1893325225
814c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2307821063,2307821063
815c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2811532339,2811532339
816c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3063651117,3063651117
817c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	572399164,572399164
818c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2458355477,2458355477
819c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	552200649,552200649
820c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1238290055,1238290055
821c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	4283782570,4283782570
822c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2015897680,2015897680
823c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2061492133,2061492133
824c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2408352771,2408352771
825c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	4171342169,4171342169
826c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2156497161,2156497161
827c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	386731290,386731290
828c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3669999461,3669999461
829c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	837215959,837215959
830c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3326231172,3326231172
831c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3093850320,3093850320
832c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3275833730,3275833730
833c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2962856233,2962856233
834c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1999449434,1999449434
835c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	286199582,286199582
836c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3417354363,3417354363
837c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	4233385128,4233385128
838c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3602627437,3602627437
839c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	974525996,974525996
840c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	99,124,119,123,242,107,111,197
841c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	48,1,103,43,254,215,171,118
842c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	202,130,201,125,250,89,71,240
843c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	173,212,162,175,156,164,114,192
844c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	183,253,147,38,54,63,247,204
845c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	52,165,229,241,113,216,49,21
846c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	4,199,35,195,24,150,5,154
847c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	7,18,128,226,235,39,178,117
848c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	9,131,44,26,27,110,90,160
849c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	82,59,214,179,41,227,47,132
850c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	83,209,0,237,32,252,177,91
851c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	106,203,190,57,74,76,88,207
852c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	208,239,170,251,67,77,51,133
853c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	69,249,2,127,80,60,159,168
854c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	81,163,64,143,146,157,56,245
855c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	188,182,218,33,16,255,243,210
856c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	205,12,19,236,95,151,68,23
857c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	196,167,126,61,100,93,25,115
858c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	96,129,79,220,34,42,144,136
859c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	70,238,184,20,222,94,11,219
860c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	224,50,58,10,73,6,36,92
861c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	194,211,172,98,145,149,228,121
862c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	231,200,55,109,141,213,78,169
863c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	108,86,244,234,101,122,174,8
864c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	186,120,37,46,28,166,180,198
865c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	232,221,116,31,75,189,139,138
866c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	112,62,181,102,72,3,246,14
867c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	97,53,87,185,134,193,29,158
868c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	225,248,152,17,105,217,142,148
869c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	155,30,135,233,206,85,40,223
870c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	140,161,137,13,191,230,66,104
871c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	65,153,45,15,176,84,187,22
872c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	99,124,119,123,242,107,111,197
873c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	48,1,103,43,254,215,171,118
874c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	202,130,201,125,250,89,71,240
875c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	173,212,162,175,156,164,114,192
876c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	183,253,147,38,54,63,247,204
877c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	52,165,229,241,113,216,49,21
878c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	4,199,35,195,24,150,5,154
879c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	7,18,128,226,235,39,178,117
880c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	9,131,44,26,27,110,90,160
881c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	82,59,214,179,41,227,47,132
882c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	83,209,0,237,32,252,177,91
883c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	106,203,190,57,74,76,88,207
884c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	208,239,170,251,67,77,51,133
885c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	69,249,2,127,80,60,159,168
886c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	81,163,64,143,146,157,56,245
887c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	188,182,218,33,16,255,243,210
888c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	205,12,19,236,95,151,68,23
889c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	196,167,126,61,100,93,25,115
890c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	96,129,79,220,34,42,144,136
891c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	70,238,184,20,222,94,11,219
892c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	224,50,58,10,73,6,36,92
893c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	194,211,172,98,145,149,228,121
894c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	231,200,55,109,141,213,78,169
895c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	108,86,244,234,101,122,174,8
896c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	186,120,37,46,28,166,180,198
897c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	232,221,116,31,75,189,139,138
898c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	112,62,181,102,72,3,246,14
899c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	97,53,87,185,134,193,29,158
900c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	225,248,152,17,105,217,142,148
901c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	155,30,135,233,206,85,40,223
902c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	140,161,137,13,191,230,66,104
903c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	65,153,45,15,176,84,187,22
904c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	99,124,119,123,242,107,111,197
905c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	48,1,103,43,254,215,171,118
906c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	202,130,201,125,250,89,71,240
907c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	173,212,162,175,156,164,114,192
908c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	183,253,147,38,54,63,247,204
909c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	52,165,229,241,113,216,49,21
910c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	4,199,35,195,24,150,5,154
911c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	7,18,128,226,235,39,178,117
912c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	9,131,44,26,27,110,90,160
913c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	82,59,214,179,41,227,47,132
914c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	83,209,0,237,32,252,177,91
915c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	106,203,190,57,74,76,88,207
916c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	208,239,170,251,67,77,51,133
917c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	69,249,2,127,80,60,159,168
918c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	81,163,64,143,146,157,56,245
919c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	188,182,218,33,16,255,243,210
920c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	205,12,19,236,95,151,68,23
921c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	196,167,126,61,100,93,25,115
922c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	96,129,79,220,34,42,144,136
923c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	70,238,184,20,222,94,11,219
924c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	224,50,58,10,73,6,36,92
925c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	194,211,172,98,145,149,228,121
926c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	231,200,55,109,141,213,78,169
927c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	108,86,244,234,101,122,174,8
928c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	186,120,37,46,28,166,180,198
929c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	232,221,116,31,75,189,139,138
930c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	112,62,181,102,72,3,246,14
931c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	97,53,87,185,134,193,29,158
932c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	225,248,152,17,105,217,142,148
933c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	155,30,135,233,206,85,40,223
934c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	140,161,137,13,191,230,66,104
935c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	65,153,45,15,176,84,187,22
936c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	99,124,119,123,242,107,111,197
937c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	48,1,103,43,254,215,171,118
938c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	202,130,201,125,250,89,71,240
939c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	173,212,162,175,156,164,114,192
940c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	183,253,147,38,54,63,247,204
941c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	52,165,229,241,113,216,49,21
942c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	4,199,35,195,24,150,5,154
943c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	7,18,128,226,235,39,178,117
944c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	9,131,44,26,27,110,90,160
945c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	82,59,214,179,41,227,47,132
946c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	83,209,0,237,32,252,177,91
947c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	106,203,190,57,74,76,88,207
948c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	208,239,170,251,67,77,51,133
949c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	69,249,2,127,80,60,159,168
950c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	81,163,64,143,146,157,56,245
951c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	188,182,218,33,16,255,243,210
952c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	205,12,19,236,95,151,68,23
953c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	196,167,126,61,100,93,25,115
954c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	96,129,79,220,34,42,144,136
955c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	70,238,184,20,222,94,11,219
956c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	224,50,58,10,73,6,36,92
957c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	194,211,172,98,145,149,228,121
958c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	231,200,55,109,141,213,78,169
959c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	108,86,244,234,101,122,174,8
960c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	186,120,37,46,28,166,180,198
961c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	232,221,116,31,75,189,139,138
962c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	112,62,181,102,72,3,246,14
963c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	97,53,87,185,134,193,29,158
964c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	225,248,152,17,105,217,142,148
965c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	155,30,135,233,206,85,40,223
966c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	140,161,137,13,191,230,66,104
967c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	65,153,45,15,176,84,187,22
968c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1,2,4,8
969c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	16,32,64,128
970c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	27,54,0,0
971c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	0,0,0,0
972c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.size	_x86_AES_encrypt,.-_x86_AES_encrypt
973c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.globl	AES_encrypt
974c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.type	AES_encrypt,@function
975c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.align	16
976c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin IonitaAES_encrypt:
977c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.L_AES_encrypt_begin:
978c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pushl	%ebp
979c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pushl	%ebx
980c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pushl	%esi
981c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pushl	%edi
982c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	20(%esp),%esi
983c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	28(%esp),%edi
984c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esp,%eax
985c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	subl	$36,%esp
986c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$-64,%esp
987c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	-127(%edi),%ebx
988c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	subl	%esp,%ebx
989c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	negl	%ebx
990c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$960,%ebx
991c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	subl	%ebx,%esp
992c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	addl	$4,%esp
993c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,28(%esp)
994c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	call	.L004pic_point
995c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.L004pic_point:
996c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	popl	%ebp
9972c4d015c2c3dbe9cf62004171e265487dfa22469Daniel Leung	leal	_GLOBAL_OFFSET_TABLE_+[.-.L004pic_point](%ebp),%eax
9982c4d015c2c3dbe9cf62004171e265487dfa22469Daniel Leung	movl	OPENSSL_ia32cap_P@GOT(%eax),%eax
999c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	.LAES_Te-.L004pic_point(%ebp),%ebp
1000c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	764(%esp),%ebx
1001c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	subl	%ebp,%ebx
1002c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$768,%ebx
1003c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	2176(%ebp,%ebx,1),%ebp
1004c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	btl	$25,(%eax)
1005c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	jnc	.L005x86
1006c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movq	(%esi),%mm0
1007c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movq	8(%esi),%mm4
1008c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	call	_sse_AES_encrypt_compact
1009c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	28(%esp),%esp
1010c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	24(%esp),%esi
1011c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movq	%mm0,(%esi)
1012c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movq	%mm4,8(%esi)
1013c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	emms
1014c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	popl	%edi
1015c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	popl	%esi
1016c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	popl	%ebx
1017c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	popl	%ebp
1018c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	ret
1019c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.align	16
1020c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.L005x86:
1021c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ebp,24(%esp)
1022c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	(%esi),%eax
1023c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	4(%esi),%ebx
1024c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	8(%esi),%ecx
1025c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	12(%esi),%edx
1026c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	call	_x86_AES_encrypt_compact
1027c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	28(%esp),%esp
1028c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	24(%esp),%esi
1029c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,(%esi)
1030c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ebx,4(%esi)
1031c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ecx,8(%esi)
1032c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%edx,12(%esi)
1033c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	popl	%edi
1034c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	popl	%esi
1035c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	popl	%ebx
1036c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	popl	%ebp
1037c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	ret
1038c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.size	AES_encrypt,.-.L_AES_encrypt_begin
1039c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.type	_x86_AES_decrypt_compact,@function
1040c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.align	16
1041c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita_x86_AES_decrypt_compact:
1042c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%edi,20(%esp)
1043c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	(%edi),%eax
1044c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	4(%edi),%ebx
1045c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	8(%edi),%ecx
1046c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	12(%edi),%edx
1047c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	240(%edi),%esi
1048c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	-2(%esi,%esi,1),%esi
1049c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	(%edi,%esi,8),%esi
1050c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,24(%esp)
1051c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	-128(%ebp),%edi
1052c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	-96(%ebp),%esi
1053c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	-64(%ebp),%edi
1054c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	-32(%ebp),%esi
1055c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	(%ebp),%edi
1056c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	32(%ebp),%esi
1057c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	64(%ebp),%edi
1058c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	96(%ebp),%esi
1059c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.align	16
1060c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.L006loop:
1061c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,%esi
1062c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$255,%esi
1063c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%esi,1),%esi
1064c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%dh,%edi
1065c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%edi,1),%edi
1066c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$8,%edi
1067c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edi,%esi
1068c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ecx,%edi
1069c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$16,%edi
1070c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$255,%edi
1071c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%edi,1),%edi
1072c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$16,%edi
1073c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edi,%esi
1074c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ebx,%edi
1075c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$24,%edi
1076c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%edi,1),%edi
1077c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$24,%edi
1078c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edi,%esi
1079c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,4(%esp)
1080c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ebx,%esi
1081c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$255,%esi
1082c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%esi,1),%esi
1083c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%ah,%edi
1084c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%edi,1),%edi
1085c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$8,%edi
1086c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edi,%esi
1087c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%edx,%edi
1088c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$16,%edi
1089c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$255,%edi
1090c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%edi,1),%edi
1091c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$16,%edi
1092c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edi,%esi
1093c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ecx,%edi
1094c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$24,%edi
1095c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%edi,1),%edi
1096c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$24,%edi
1097c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edi,%esi
1098c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,8(%esp)
1099c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ecx,%esi
1100c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$255,%esi
1101c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%esi,1),%esi
1102c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%bh,%edi
1103c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%edi,1),%edi
1104c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$8,%edi
1105c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edi,%esi
1106c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,%edi
1107c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$16,%edi
1108c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$255,%edi
1109c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%edi,1),%edi
1110c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$16,%edi
1111c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edi,%esi
1112c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%edx,%edi
1113c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$24,%edi
1114c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%edi,1),%edi
1115c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$24,%edi
1116c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edi,%esi
1117c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$255,%edx
1118c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%edx,1),%edx
1119c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%ch,%ecx
1120c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%ecx,1),%ecx
1121c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$8,%ecx
1122c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ecx,%edx
1123c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,%ecx
1124c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$16,%ebx
1125c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$255,%ebx
1126c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%ebx,1),%ebx
1127c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$16,%ebx
1128c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ebx,%edx
1129c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$24,%eax
1130c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%eax,1),%eax
1131c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$24,%eax
1132c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%eax,%edx
1133c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ecx,%esi
1134c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$2155905152,%esi
1135c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,%edi
1136c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$7,%edi
1137c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	(%ecx,%ecx,1),%eax
1138c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	subl	%edi,%esi
1139c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$4278124286,%eax
1140c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$454761243,%esi
1141c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%eax,%esi
1142c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,%eax
1143c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$2155905152,%esi
1144c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,%edi
1145c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$7,%edi
1146c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	(%eax,%eax,1),%ebx
1147c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	subl	%edi,%esi
1148c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$4278124286,%ebx
1149c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$454761243,%esi
1150c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ecx,%eax
1151c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ebx,%esi
1152c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,%ebx
1153c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$2155905152,%esi
1154c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,%edi
1155c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$7,%edi
1156c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	(%ebx,%ebx,1),%ebp
1157c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	subl	%edi,%esi
1158c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$4278124286,%ebp
1159c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$454761243,%esi
1160c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ecx,%ebx
1161c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	roll	$8,%ecx
1162c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%esi,%ebp
1163c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%eax,%ecx
1164c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ebp,%eax
1165c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	roll	$24,%eax
1166c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ebx,%ecx
1167c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ebp,%ebx
1168c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	roll	$16,%ebx
1169c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ebp,%ecx
1170c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	roll	$8,%ebp
1171c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%eax,%ecx
1172c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ebx,%ecx
1173c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	4(%esp),%eax
1174c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ebp,%ecx
1175c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ecx,12(%esp)
1176c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%edx,%esi
1177c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$2155905152,%esi
1178c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,%edi
1179c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$7,%edi
1180c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	(%edx,%edx,1),%ebx
1181c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	subl	%edi,%esi
1182c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$4278124286,%ebx
1183c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$454761243,%esi
1184c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ebx,%esi
1185c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,%ebx
1186c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$2155905152,%esi
1187c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,%edi
1188c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$7,%edi
1189c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	(%ebx,%ebx,1),%ecx
1190c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	subl	%edi,%esi
1191c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$4278124286,%ecx
1192c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$454761243,%esi
1193c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edx,%ebx
1194c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ecx,%esi
1195c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,%ecx
1196c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$2155905152,%esi
1197c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,%edi
1198c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$7,%edi
1199c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	(%ecx,%ecx,1),%ebp
1200c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	subl	%edi,%esi
1201c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$4278124286,%ebp
1202c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$454761243,%esi
1203c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edx,%ecx
1204c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	roll	$8,%edx
1205c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%esi,%ebp
1206c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ebx,%edx
1207c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ebp,%ebx
1208c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	roll	$24,%ebx
1209c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ecx,%edx
1210c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ebp,%ecx
1211c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	roll	$16,%ecx
1212c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ebp,%edx
1213c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	roll	$8,%ebp
1214c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ebx,%edx
1215c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ecx,%edx
1216c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	8(%esp),%ebx
1217c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ebp,%edx
1218c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%edx,16(%esp)
1219c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,%esi
1220c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$2155905152,%esi
1221c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,%edi
1222c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$7,%edi
1223c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	(%eax,%eax,1),%ecx
1224c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	subl	%edi,%esi
1225c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$4278124286,%ecx
1226c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$454761243,%esi
1227c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ecx,%esi
1228c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,%ecx
1229c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$2155905152,%esi
1230c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,%edi
1231c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$7,%edi
1232c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	(%ecx,%ecx,1),%edx
1233c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	subl	%edi,%esi
1234c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$4278124286,%edx
1235c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$454761243,%esi
1236c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%eax,%ecx
1237c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edx,%esi
1238c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,%edx
1239c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$2155905152,%esi
1240c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,%edi
1241c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$7,%edi
1242c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	(%edx,%edx,1),%ebp
1243c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	subl	%edi,%esi
1244c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$4278124286,%ebp
1245c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$454761243,%esi
1246c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%eax,%edx
1247c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	roll	$8,%eax
1248c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%esi,%ebp
1249c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ecx,%eax
1250c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ebp,%ecx
1251c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	roll	$24,%ecx
1252c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edx,%eax
1253c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ebp,%edx
1254c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	roll	$16,%edx
1255c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ebp,%eax
1256c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	roll	$8,%ebp
1257c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ecx,%eax
1258c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edx,%eax
1259c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ebp,%eax
1260c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ebx,%esi
1261c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$2155905152,%esi
1262c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,%edi
1263c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$7,%edi
1264c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	(%ebx,%ebx,1),%ecx
1265c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	subl	%edi,%esi
1266c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$4278124286,%ecx
1267c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$454761243,%esi
1268c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ecx,%esi
1269c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,%ecx
1270c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$2155905152,%esi
1271c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,%edi
1272c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$7,%edi
1273c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	(%ecx,%ecx,1),%edx
1274c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	subl	%edi,%esi
1275c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$4278124286,%edx
1276c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$454761243,%esi
1277c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ebx,%ecx
1278c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edx,%esi
1279c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,%edx
1280c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$2155905152,%esi
1281c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,%edi
1282c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$7,%edi
1283c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	(%edx,%edx,1),%ebp
1284c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	subl	%edi,%esi
1285c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$4278124286,%ebp
1286c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$454761243,%esi
1287c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ebx,%edx
1288c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	roll	$8,%ebx
1289c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%esi,%ebp
1290c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ecx,%ebx
1291c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ebp,%ecx
1292c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	roll	$24,%ecx
1293c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edx,%ebx
1294c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ebp,%edx
1295c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	roll	$16,%edx
1296c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ebp,%ebx
1297c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	roll	$8,%ebp
1298c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ecx,%ebx
1299c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edx,%ebx
1300c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	12(%esp),%ecx
1301c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ebp,%ebx
1302c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	16(%esp),%edx
1303c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	20(%esp),%edi
1304c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	28(%esp),%ebp
1305c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	addl	$16,%edi
1306c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	(%edi),%eax
1307c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	4(%edi),%ebx
1308c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	8(%edi),%ecx
1309c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	12(%edi),%edx
1310c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	cmpl	24(%esp),%edi
1311c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%edi,20(%esp)
1312c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	jb	.L006loop
1313c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,%esi
1314c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$255,%esi
1315c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%esi,1),%esi
1316c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%dh,%edi
1317c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%edi,1),%edi
1318c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$8,%edi
1319c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edi,%esi
1320c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ecx,%edi
1321c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$16,%edi
1322c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$255,%edi
1323c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%edi,1),%edi
1324c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$16,%edi
1325c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edi,%esi
1326c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ebx,%edi
1327c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$24,%edi
1328c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%edi,1),%edi
1329c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$24,%edi
1330c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edi,%esi
1331c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,4(%esp)
1332c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ebx,%esi
1333c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$255,%esi
1334c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%esi,1),%esi
1335c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%ah,%edi
1336c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%edi,1),%edi
1337c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$8,%edi
1338c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edi,%esi
1339c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%edx,%edi
1340c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$16,%edi
1341c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$255,%edi
1342c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%edi,1),%edi
1343c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$16,%edi
1344c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edi,%esi
1345c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ecx,%edi
1346c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$24,%edi
1347c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%edi,1),%edi
1348c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$24,%edi
1349c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edi,%esi
1350c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,8(%esp)
1351c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ecx,%esi
1352c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$255,%esi
1353c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%esi,1),%esi
1354c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%bh,%edi
1355c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%edi,1),%edi
1356c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$8,%edi
1357c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edi,%esi
1358c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,%edi
1359c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$16,%edi
1360c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$255,%edi
1361c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%edi,1),%edi
1362c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$16,%edi
1363c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edi,%esi
1364c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%edx,%edi
1365c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$24,%edi
1366c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%edi,1),%edi
1367c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$24,%edi
1368c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edi,%esi
1369c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	20(%esp),%edi
1370c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$255,%edx
1371c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%edx,1),%edx
1372c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%ch,%ecx
1373c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%ecx,1),%ecx
1374c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$8,%ecx
1375c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ecx,%edx
1376c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,%ecx
1377c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$16,%ebx
1378c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$255,%ebx
1379c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%ebx,1),%ebx
1380c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$16,%ebx
1381c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ebx,%edx
1382c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	8(%esp),%ebx
1383c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$24,%eax
1384c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%eax,1),%eax
1385c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$24,%eax
1386c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%eax,%edx
1387c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	4(%esp),%eax
1388c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	16(%edi),%eax
1389c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	20(%edi),%ebx
1390c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	24(%edi),%ecx
1391c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	28(%edi),%edx
1392c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	ret
1393c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.size	_x86_AES_decrypt_compact,.-_x86_AES_decrypt_compact
1394c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.type	_sse_AES_decrypt_compact,@function
1395c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.align	16
1396c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita_sse_AES_decrypt_compact:
1397c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pxor	(%edi),%mm0
1398c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pxor	8(%edi),%mm4
1399c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	240(%edi),%esi
1400c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	-2(%esi,%esi,1),%esi
1401c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	(%edi,%esi,8),%esi
1402c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,24(%esp)
1403c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	$454761243,%eax
1404c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,8(%esp)
1405c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,12(%esp)
1406c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	-128(%ebp),%eax
1407c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	-96(%ebp),%ebx
1408c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	-64(%ebp),%ecx
1409c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	-32(%ebp),%edx
1410c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	(%ebp),%eax
1411c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	32(%ebp),%ebx
1412c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	64(%ebp),%ecx
1413c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	96(%ebp),%edx
1414c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.align	16
1415c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.L007loop:
1416c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pshufw	$12,%mm0,%mm1
1417c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movd	%mm1,%eax
1418c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pshufw	$9,%mm4,%mm5
1419c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%al,%esi
1420c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%esi,1),%ecx
1421c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movd	%mm5,%ebx
1422c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%ah,%edx
1423c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%edx,1),%edx
1424c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$8,%edx
1425c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pshufw	$6,%mm0,%mm2
1426c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%bl,%esi
1427c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%esi,1),%esi
1428c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$16,%esi
1429c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	orl	%esi,%ecx
1430c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$16,%eax
1431c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%bh,%esi
1432c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%esi,1),%esi
1433c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$24,%esi
1434c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	orl	%esi,%edx
1435c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$16,%ebx
1436c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pshufw	$3,%mm4,%mm6
1437c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%ah,%esi
1438c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%esi,1),%esi
1439c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$24,%esi
1440c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	orl	%esi,%ecx
1441c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%bh,%esi
1442c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%esi,1),%esi
1443c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$8,%esi
1444c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	orl	%esi,%ecx
1445c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movd	%ecx,%mm0
1446c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%al,%esi
1447c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movd	%mm2,%eax
1448c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%esi,1),%ecx
1449c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$16,%ecx
1450c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%bl,%esi
1451c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movd	%mm6,%ebx
1452c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%esi,1),%esi
1453c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	orl	%esi,%ecx
1454c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%al,%esi
1455c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%esi,1),%esi
1456c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	orl	%esi,%edx
1457c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%bl,%esi
1458c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%esi,1),%esi
1459c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$16,%esi
1460c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	orl	%esi,%edx
1461c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movd	%edx,%mm1
1462c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%ah,%esi
1463c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%esi,1),%edx
1464c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$8,%edx
1465c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%bh,%esi
1466c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$16,%eax
1467c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%esi,1),%esi
1468c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$24,%esi
1469c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	orl	%esi,%edx
1470c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$16,%ebx
1471c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	punpckldq	%mm1,%mm0
1472c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%bh,%esi
1473c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%esi,1),%esi
1474c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$8,%esi
1475c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	orl	%esi,%ecx
1476c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$255,%ebx
1477c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%ebx,1),%ebx
1478c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	orl	%ebx,%edx
1479c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%al,%esi
1480c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%esi,1),%esi
1481c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$16,%esi
1482c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	orl	%esi,%edx
1483c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movd	%edx,%mm4
1484c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%ah,%eax
1485c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%eax,1),%eax
1486c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$24,%eax
1487c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	orl	%eax,%ecx
1488c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movd	%ecx,%mm5
1489c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	punpckldq	%mm5,%mm4
1490c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	addl	$16,%edi
1491c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	cmpl	24(%esp),%edi
1492c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	ja	.L008out
1493c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movq	%mm0,%mm3
1494c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movq	%mm4,%mm7
1495c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pshufw	$228,%mm0,%mm2
1496c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pshufw	$228,%mm4,%mm6
1497c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movq	%mm0,%mm1
1498c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movq	%mm4,%mm5
1499c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pshufw	$177,%mm0,%mm0
1500c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pshufw	$177,%mm4,%mm4
1501c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pslld	$8,%mm2
1502c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pslld	$8,%mm6
1503c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	psrld	$8,%mm3
1504c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	psrld	$8,%mm7
1505c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pxor	%mm2,%mm0
1506c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pxor	%mm6,%mm4
1507c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pxor	%mm3,%mm0
1508c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pxor	%mm7,%mm4
1509c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pslld	$16,%mm2
1510c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pslld	$16,%mm6
1511c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	psrld	$16,%mm3
1512c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	psrld	$16,%mm7
1513c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pxor	%mm2,%mm0
1514c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pxor	%mm6,%mm4
1515c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pxor	%mm3,%mm0
1516c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pxor	%mm7,%mm4
1517c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movq	8(%esp),%mm3
1518c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pxor	%mm2,%mm2
1519c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pxor	%mm6,%mm6
1520c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pcmpgtb	%mm1,%mm2
1521c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pcmpgtb	%mm5,%mm6
1522c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pand	%mm3,%mm2
1523c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pand	%mm3,%mm6
1524c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	paddb	%mm1,%mm1
1525c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	paddb	%mm5,%mm5
1526c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pxor	%mm2,%mm1
1527c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pxor	%mm6,%mm5
1528c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movq	%mm1,%mm3
1529c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movq	%mm5,%mm7
1530c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movq	%mm1,%mm2
1531c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movq	%mm5,%mm6
1532c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pxor	%mm1,%mm0
1533c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pxor	%mm5,%mm4
1534c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pslld	$24,%mm3
1535c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pslld	$24,%mm7
1536c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	psrld	$8,%mm2
1537c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	psrld	$8,%mm6
1538c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pxor	%mm3,%mm0
1539c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pxor	%mm7,%mm4
1540c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pxor	%mm2,%mm0
1541c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pxor	%mm6,%mm4
1542c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movq	8(%esp),%mm2
1543c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pxor	%mm3,%mm3
1544c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pxor	%mm7,%mm7
1545c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pcmpgtb	%mm1,%mm3
1546c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pcmpgtb	%mm5,%mm7
1547c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pand	%mm2,%mm3
1548c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pand	%mm2,%mm7
1549c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	paddb	%mm1,%mm1
1550c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	paddb	%mm5,%mm5
1551c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pxor	%mm3,%mm1
1552c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pxor	%mm7,%mm5
1553c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pshufw	$177,%mm1,%mm3
1554c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pshufw	$177,%mm5,%mm7
1555c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pxor	%mm1,%mm0
1556c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pxor	%mm5,%mm4
1557c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pxor	%mm3,%mm0
1558c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pxor	%mm7,%mm4
1559c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pxor	%mm3,%mm3
1560c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pxor	%mm7,%mm7
1561c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pcmpgtb	%mm1,%mm3
1562c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pcmpgtb	%mm5,%mm7
1563c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pand	%mm2,%mm3
1564c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pand	%mm2,%mm7
1565c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	paddb	%mm1,%mm1
1566c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	paddb	%mm5,%mm5
1567c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pxor	%mm3,%mm1
1568c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pxor	%mm7,%mm5
1569c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pxor	%mm1,%mm0
1570c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pxor	%mm5,%mm4
1571c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movq	%mm1,%mm3
1572c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movq	%mm5,%mm7
1573c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pshufw	$177,%mm1,%mm2
1574c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pshufw	$177,%mm5,%mm6
1575c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pxor	%mm2,%mm0
1576c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pxor	%mm6,%mm4
1577c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pslld	$8,%mm1
1578c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pslld	$8,%mm5
1579c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	psrld	$8,%mm3
1580c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	psrld	$8,%mm7
1581c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movq	(%edi),%mm2
1582c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movq	8(%edi),%mm6
1583c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pxor	%mm1,%mm0
1584c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pxor	%mm5,%mm4
1585c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pxor	%mm3,%mm0
1586c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pxor	%mm7,%mm4
1587c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	-128(%ebp),%eax
1588c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pslld	$16,%mm1
1589c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pslld	$16,%mm5
1590c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	-64(%ebp),%ebx
1591c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	psrld	$16,%mm3
1592c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	psrld	$16,%mm7
1593c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	(%ebp),%ecx
1594c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pxor	%mm1,%mm0
1595c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pxor	%mm5,%mm4
1596c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	64(%ebp),%edx
1597c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pxor	%mm3,%mm0
1598c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pxor	%mm7,%mm4
1599c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pxor	%mm2,%mm0
1600c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pxor	%mm6,%mm4
1601c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	jmp	.L007loop
1602c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.align	16
1603c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.L008out:
1604c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pxor	(%edi),%mm0
1605c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pxor	8(%edi),%mm4
1606c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	ret
1607c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.size	_sse_AES_decrypt_compact,.-_sse_AES_decrypt_compact
1608c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.type	_x86_AES_decrypt,@function
1609c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.align	16
1610c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita_x86_AES_decrypt:
1611c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%edi,20(%esp)
1612c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	(%edi),%eax
1613c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	4(%edi),%ebx
1614c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	8(%edi),%ecx
1615c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	12(%edi),%edx
1616c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	240(%edi),%esi
1617c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	-2(%esi,%esi,1),%esi
1618c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	(%edi,%esi,8),%esi
1619c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,24(%esp)
1620c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.align	16
1621c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.L009loop:
1622c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,%esi
1623c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$255,%esi
1624c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	(%ebp,%esi,8),%esi
1625c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%dh,%edi
1626c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	3(%ebp,%edi,8),%esi
1627c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ecx,%edi
1628c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$16,%edi
1629c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$255,%edi
1630c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	2(%ebp,%edi,8),%esi
1631c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ebx,%edi
1632c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$24,%edi
1633c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	1(%ebp,%edi,8),%esi
1634c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,4(%esp)
1635c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita
1636c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ebx,%esi
1637c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$255,%esi
1638c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	(%ebp,%esi,8),%esi
1639c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%ah,%edi
1640c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	3(%ebp,%edi,8),%esi
1641c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%edx,%edi
1642c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$16,%edi
1643c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$255,%edi
1644c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	2(%ebp,%edi,8),%esi
1645c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ecx,%edi
1646c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$24,%edi
1647c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	1(%ebp,%edi,8),%esi
1648c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,8(%esp)
1649c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita
1650c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ecx,%esi
1651c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$255,%esi
1652c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	(%ebp,%esi,8),%esi
1653c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%bh,%edi
1654c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	3(%ebp,%edi,8),%esi
1655c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,%edi
1656c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$16,%edi
1657c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$255,%edi
1658c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	2(%ebp,%edi,8),%esi
1659c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%edx,%edi
1660c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$24,%edi
1661c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	1(%ebp,%edi,8),%esi
1662c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita
1663c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	20(%esp),%edi
1664c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$255,%edx
1665c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	(%ebp,%edx,8),%edx
1666c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%ch,%ecx
1667c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	3(%ebp,%ecx,8),%edx
1668c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,%ecx
1669c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$16,%ebx
1670c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$255,%ebx
1671c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	2(%ebp,%ebx,8),%edx
1672c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	8(%esp),%ebx
1673c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$24,%eax
1674c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	1(%ebp,%eax,8),%edx
1675c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	4(%esp),%eax
1676c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita
1677c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	addl	$16,%edi
1678c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	(%edi),%eax
1679c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	4(%edi),%ebx
1680c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	8(%edi),%ecx
1681c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	12(%edi),%edx
1682c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	cmpl	24(%esp),%edi
1683c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%edi,20(%esp)
1684c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	jb	.L009loop
1685c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	2176(%ebp),%ebp
1686c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	-128(%ebp),%edi
1687c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	-96(%ebp),%esi
1688c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	-64(%ebp),%edi
1689c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	-32(%ebp),%esi
1690c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	(%ebp),%edi
1691c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	32(%ebp),%esi
1692c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	64(%ebp),%edi
1693c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	96(%ebp),%esi
1694c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	-128(%ebp),%ebp
1695c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,%esi
1696c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$255,%esi
1697c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	(%ebp,%esi,1),%esi
1698c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%dh,%edi
1699c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	(%ebp,%edi,1),%edi
1700c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$8,%edi
1701c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edi,%esi
1702c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ecx,%edi
1703c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$16,%edi
1704c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$255,%edi
1705c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	(%ebp,%edi,1),%edi
1706c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$16,%edi
1707c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edi,%esi
1708c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ebx,%edi
1709c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$24,%edi
1710c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	(%ebp,%edi,1),%edi
1711c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$24,%edi
1712c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edi,%esi
1713c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,4(%esp)
1714c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ebx,%esi
1715c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$255,%esi
1716c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	(%ebp,%esi,1),%esi
1717c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%ah,%edi
1718c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	(%ebp,%edi,1),%edi
1719c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$8,%edi
1720c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edi,%esi
1721c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%edx,%edi
1722c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$16,%edi
1723c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$255,%edi
1724c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	(%ebp,%edi,1),%edi
1725c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$16,%edi
1726c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edi,%esi
1727c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ecx,%edi
1728c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$24,%edi
1729c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	(%ebp,%edi,1),%edi
1730c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$24,%edi
1731c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edi,%esi
1732c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,8(%esp)
1733c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ecx,%esi
1734c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$255,%esi
1735c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	(%ebp,%esi,1),%esi
1736c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%bh,%edi
1737c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	(%ebp,%edi,1),%edi
1738c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$8,%edi
1739c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edi,%esi
1740c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,%edi
1741c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$16,%edi
1742c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$255,%edi
1743c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	(%ebp,%edi,1),%edi
1744c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$16,%edi
1745c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edi,%esi
1746c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%edx,%edi
1747c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$24,%edi
1748c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	(%ebp,%edi,1),%edi
1749c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$24,%edi
1750c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edi,%esi
1751c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	20(%esp),%edi
1752c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$255,%edx
1753c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	(%ebp,%edx,1),%edx
1754c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%ch,%ecx
1755c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	(%ebp,%ecx,1),%ecx
1756c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$8,%ecx
1757c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ecx,%edx
1758c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,%ecx
1759c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$16,%ebx
1760c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$255,%ebx
1761c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	(%ebp,%ebx,1),%ebx
1762c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$16,%ebx
1763c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ebx,%edx
1764c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	8(%esp),%ebx
1765c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$24,%eax
1766c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	(%ebp,%eax,1),%eax
1767c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$24,%eax
1768c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%eax,%edx
1769c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	4(%esp),%eax
1770c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	-2048(%ebp),%ebp
1771c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	addl	$16,%edi
1772c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	(%edi),%eax
1773c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	4(%edi),%ebx
1774c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	8(%edi),%ecx
1775c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	12(%edi),%edx
1776c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	ret
1777c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.align	64
1778c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.LAES_Td:
1779c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1353184337,1353184337
1780c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1399144830,1399144830
1781c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3282310938,3282310938
1782c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2522752826,2522752826
1783c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3412831035,3412831035
1784c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	4047871263,4047871263
1785c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2874735276,2874735276
1786c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2466505547,2466505547
1787c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1442459680,1442459680
1788c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	4134368941,4134368941
1789c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2440481928,2440481928
1790c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	625738485,625738485
1791c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	4242007375,4242007375
1792c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3620416197,3620416197
1793c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2151953702,2151953702
1794c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2409849525,2409849525
1795c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1230680542,1230680542
1796c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1729870373,1729870373
1797c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2551114309,2551114309
1798c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3787521629,3787521629
1799c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	41234371,41234371
1800c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	317738113,317738113
1801c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2744600205,2744600205
1802c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3338261355,3338261355
1803c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3881799427,3881799427
1804c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2510066197,2510066197
1805c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3950669247,3950669247
1806c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3663286933,3663286933
1807c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	763608788,763608788
1808c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3542185048,3542185048
1809c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	694804553,694804553
1810c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1154009486,1154009486
1811c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1787413109,1787413109
1812c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2021232372,2021232372
1813c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1799248025,1799248025
1814c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3715217703,3715217703
1815c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3058688446,3058688446
1816c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	397248752,397248752
1817c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1722556617,1722556617
1818c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3023752829,3023752829
1819c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	407560035,407560035
1820c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2184256229,2184256229
1821c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1613975959,1613975959
1822c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1165972322,1165972322
1823c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3765920945,3765920945
1824c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2226023355,2226023355
1825c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	480281086,480281086
1826c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2485848313,2485848313
1827c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1483229296,1483229296
1828c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	436028815,436028815
1829c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2272059028,2272059028
1830c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3086515026,3086515026
1831c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	601060267,601060267
1832c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3791801202,3791801202
1833c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1468997603,1468997603
1834c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	715871590,715871590
1835c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	120122290,120122290
1836c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	63092015,63092015
1837c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2591802758,2591802758
1838c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2768779219,2768779219
1839c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	4068943920,4068943920
1840c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2997206819,2997206819
1841c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3127509762,3127509762
1842c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1552029421,1552029421
1843c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	723308426,723308426
1844c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2461301159,2461301159
1845c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	4042393587,4042393587
1846c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2715969870,2715969870
1847c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3455375973,3455375973
1848c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3586000134,3586000134
1849c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	526529745,526529745
1850c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2331944644,2331944644
1851c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2639474228,2639474228
1852c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2689987490,2689987490
1853c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	853641733,853641733
1854c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1978398372,1978398372
1855c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	971801355,971801355
1856c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2867814464,2867814464
1857c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	111112542,111112542
1858c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1360031421,1360031421
1859c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	4186579262,4186579262
1860c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1023860118,1023860118
1861c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2919579357,2919579357
1862c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1186850381,1186850381
1863c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3045938321,3045938321
1864c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	90031217,90031217
1865c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1876166148,1876166148
1866c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	4279586912,4279586912
1867c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	620468249,620468249
1868c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2548678102,2548678102
1869c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3426959497,3426959497
1870c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2006899047,2006899047
1871c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3175278768,3175278768
1872c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2290845959,2290845959
1873c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	945494503,945494503
1874c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3689859193,3689859193
1875c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1191869601,1191869601
1876c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3910091388,3910091388
1877c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3374220536,3374220536
1878c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	0,0
1879c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2206629897,2206629897
1880c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1223502642,1223502642
1881c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2893025566,2893025566
1882c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1316117100,1316117100
1883c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	4227796733,4227796733
1884c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1446544655,1446544655
1885c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	517320253,517320253
1886c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	658058550,658058550
1887c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1691946762,1691946762
1888c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	564550760,564550760
1889c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3511966619,3511966619
1890c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	976107044,976107044
1891c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2976320012,2976320012
1892c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	266819475,266819475
1893c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3533106868,3533106868
1894c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2660342555,2660342555
1895c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1338359936,1338359936
1896c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2720062561,2720062561
1897c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1766553434,1766553434
1898c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	370807324,370807324
1899c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	179999714,179999714
1900c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3844776128,3844776128
1901c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1138762300,1138762300
1902c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	488053522,488053522
1903c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	185403662,185403662
1904c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2915535858,2915535858
1905c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3114841645,3114841645
1906c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3366526484,3366526484
1907c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2233069911,2233069911
1908c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1275557295,1275557295
1909c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3151862254,3151862254
1910c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	4250959779,4250959779
1911c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2670068215,2670068215
1912c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3170202204,3170202204
1913c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3309004356,3309004356
1914c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	880737115,880737115
1915c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1982415755,1982415755
1916c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3703972811,3703972811
1917c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1761406390,1761406390
1918c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1676797112,1676797112
1919c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3403428311,3403428311
1920c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	277177154,277177154
1921c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1076008723,1076008723
1922c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	538035844,538035844
1923c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2099530373,2099530373
1924c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	4164795346,4164795346
1925c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	288553390,288553390
1926c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1839278535,1839278535
1927c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1261411869,1261411869
1928c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	4080055004,4080055004
1929c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3964831245,3964831245
1930c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3504587127,3504587127
1931c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1813426987,1813426987
1932c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2579067049,2579067049
1933c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	4199060497,4199060497
1934c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	577038663,577038663
1935c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3297574056,3297574056
1936c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	440397984,440397984
1937c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3626794326,3626794326
1938c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	4019204898,4019204898
1939c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3343796615,3343796615
1940c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3251714265,3251714265
1941c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	4272081548,4272081548
1942c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	906744984,906744984
1943c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3481400742,3481400742
1944c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	685669029,685669029
1945c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	646887386,646887386
1946c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2764025151,2764025151
1947c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3835509292,3835509292
1948c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	227702864,227702864
1949c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2613862250,2613862250
1950c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1648787028,1648787028
1951c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3256061430,3256061430
1952c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3904428176,3904428176
1953c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1593260334,1593260334
1954c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	4121936770,4121936770
1955c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3196083615,3196083615
1956c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2090061929,2090061929
1957c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2838353263,2838353263
1958c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3004310991,3004310991
1959c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	999926984,999926984
1960c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2809993232,2809993232
1961c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1852021992,1852021992
1962c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2075868123,2075868123
1963c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	158869197,158869197
1964c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	4095236462,4095236462
1965c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	28809964,28809964
1966c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2828685187,2828685187
1967c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1701746150,1701746150
1968c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2129067946,2129067946
1969c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	147831841,147831841
1970c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3873969647,3873969647
1971c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3650873274,3650873274
1972c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3459673930,3459673930
1973c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3557400554,3557400554
1974c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3598495785,3598495785
1975c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2947720241,2947720241
1976c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	824393514,824393514
1977c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	815048134,815048134
1978c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3227951669,3227951669
1979c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	935087732,935087732
1980c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2798289660,2798289660
1981c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2966458592,2966458592
1982c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	366520115,366520115
1983c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1251476721,1251476721
1984c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	4158319681,4158319681
1985c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	240176511,240176511
1986c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	804688151,804688151
1987c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2379631990,2379631990
1988c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1303441219,1303441219
1989c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1414376140,1414376140
1990c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3741619940,3741619940
1991c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3820343710,3820343710
1992c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	461924940,461924940
1993c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3089050817,3089050817
1994c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2136040774,2136040774
1995c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	82468509,82468509
1996c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1563790337,1563790337
1997c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1937016826,1937016826
1998c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	776014843,776014843
1999c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1511876531,1511876531
2000c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1389550482,1389550482
2001c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	861278441,861278441
2002c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	323475053,323475053
2003c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2355222426,2355222426
2004c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2047648055,2047648055
2005c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2383738969,2383738969
2006c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2302415851,2302415851
2007c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3995576782,3995576782
2008c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	902390199,902390199
2009c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3991215329,3991215329
2010c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1018251130,1018251130
2011c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1507840668,1507840668
2012c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1064563285,1064563285
2013c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2043548696,2043548696
2014c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3208103795,3208103795
2015c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3939366739,3939366739
2016c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1537932639,1537932639
2017c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	342834655,342834655
2018c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2262516856,2262516856
2019c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2180231114,2180231114
2020c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1053059257,1053059257
2021c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	741614648,741614648
2022c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1598071746,1598071746
2023c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1925389590,1925389590
2024c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	203809468,203809468
2025c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2336832552,2336832552
2026c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1100287487,1100287487
2027c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1895934009,1895934009
2028c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	3736275976,3736275976
2029c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2632234200,2632234200
2030c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2428589668,2428589668
2031c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1636092795,1636092795
2032c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1890988757,1890988757
2033c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1952214088,1952214088
2034c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	1113045200,1113045200
2035c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	82,9,106,213,48,54,165,56
2036c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	191,64,163,158,129,243,215,251
2037c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	124,227,57,130,155,47,255,135
2038c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	52,142,67,68,196,222,233,203
2039c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	84,123,148,50,166,194,35,61
2040c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	238,76,149,11,66,250,195,78
2041c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	8,46,161,102,40,217,36,178
2042c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	118,91,162,73,109,139,209,37
2043c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	114,248,246,100,134,104,152,22
2044c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	212,164,92,204,93,101,182,146
2045c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	108,112,72,80,253,237,185,218
2046c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	94,21,70,87,167,141,157,132
2047c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	144,216,171,0,140,188,211,10
2048c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	247,228,88,5,184,179,69,6
2049c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	208,44,30,143,202,63,15,2
2050c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	193,175,189,3,1,19,138,107
2051c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	58,145,17,65,79,103,220,234
2052c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	151,242,207,206,240,180,230,115
2053c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	150,172,116,34,231,173,53,133
2054c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	226,249,55,232,28,117,223,110
2055c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	71,241,26,113,29,41,197,137
2056c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	111,183,98,14,170,24,190,27
2057c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	252,86,62,75,198,210,121,32
2058c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	154,219,192,254,120,205,90,244
2059c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	31,221,168,51,136,7,199,49
2060c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	177,18,16,89,39,128,236,95
2061c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	96,81,127,169,25,181,74,13
2062c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	45,229,122,159,147,201,156,239
2063c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	160,224,59,77,174,42,245,176
2064c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	200,235,187,60,131,83,153,97
2065c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	23,43,4,126,186,119,214,38
2066c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	225,105,20,99,85,33,12,125
2067c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	82,9,106,213,48,54,165,56
2068c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	191,64,163,158,129,243,215,251
2069c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	124,227,57,130,155,47,255,135
2070c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	52,142,67,68,196,222,233,203
2071c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	84,123,148,50,166,194,35,61
2072c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	238,76,149,11,66,250,195,78
2073c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	8,46,161,102,40,217,36,178
2074c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	118,91,162,73,109,139,209,37
2075c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	114,248,246,100,134,104,152,22
2076c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	212,164,92,204,93,101,182,146
2077c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	108,112,72,80,253,237,185,218
2078c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	94,21,70,87,167,141,157,132
2079c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	144,216,171,0,140,188,211,10
2080c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	247,228,88,5,184,179,69,6
2081c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	208,44,30,143,202,63,15,2
2082c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	193,175,189,3,1,19,138,107
2083c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	58,145,17,65,79,103,220,234
2084c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	151,242,207,206,240,180,230,115
2085c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	150,172,116,34,231,173,53,133
2086c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	226,249,55,232,28,117,223,110
2087c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	71,241,26,113,29,41,197,137
2088c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	111,183,98,14,170,24,190,27
2089c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	252,86,62,75,198,210,121,32
2090c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	154,219,192,254,120,205,90,244
2091c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	31,221,168,51,136,7,199,49
2092c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	177,18,16,89,39,128,236,95
2093c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	96,81,127,169,25,181,74,13
2094c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	45,229,122,159,147,201,156,239
2095c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	160,224,59,77,174,42,245,176
2096c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	200,235,187,60,131,83,153,97
2097c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	23,43,4,126,186,119,214,38
2098c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	225,105,20,99,85,33,12,125
2099c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	82,9,106,213,48,54,165,56
2100c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	191,64,163,158,129,243,215,251
2101c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	124,227,57,130,155,47,255,135
2102c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	52,142,67,68,196,222,233,203
2103c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	84,123,148,50,166,194,35,61
2104c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	238,76,149,11,66,250,195,78
2105c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	8,46,161,102,40,217,36,178
2106c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	118,91,162,73,109,139,209,37
2107c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	114,248,246,100,134,104,152,22
2108c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	212,164,92,204,93,101,182,146
2109c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	108,112,72,80,253,237,185,218
2110c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	94,21,70,87,167,141,157,132
2111c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	144,216,171,0,140,188,211,10
2112c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	247,228,88,5,184,179,69,6
2113c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	208,44,30,143,202,63,15,2
2114c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	193,175,189,3,1,19,138,107
2115c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	58,145,17,65,79,103,220,234
2116c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	151,242,207,206,240,180,230,115
2117c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	150,172,116,34,231,173,53,133
2118c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	226,249,55,232,28,117,223,110
2119c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	71,241,26,113,29,41,197,137
2120c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	111,183,98,14,170,24,190,27
2121c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	252,86,62,75,198,210,121,32
2122c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	154,219,192,254,120,205,90,244
2123c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	31,221,168,51,136,7,199,49
2124c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	177,18,16,89,39,128,236,95
2125c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	96,81,127,169,25,181,74,13
2126c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	45,229,122,159,147,201,156,239
2127c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	160,224,59,77,174,42,245,176
2128c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	200,235,187,60,131,83,153,97
2129c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	23,43,4,126,186,119,214,38
2130c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	225,105,20,99,85,33,12,125
2131c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	82,9,106,213,48,54,165,56
2132c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	191,64,163,158,129,243,215,251
2133c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	124,227,57,130,155,47,255,135
2134c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	52,142,67,68,196,222,233,203
2135c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	84,123,148,50,166,194,35,61
2136c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	238,76,149,11,66,250,195,78
2137c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	8,46,161,102,40,217,36,178
2138c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	118,91,162,73,109,139,209,37
2139c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	114,248,246,100,134,104,152,22
2140c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	212,164,92,204,93,101,182,146
2141c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	108,112,72,80,253,237,185,218
2142c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	94,21,70,87,167,141,157,132
2143c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	144,216,171,0,140,188,211,10
2144c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	247,228,88,5,184,179,69,6
2145c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	208,44,30,143,202,63,15,2
2146c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	193,175,189,3,1,19,138,107
2147c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	58,145,17,65,79,103,220,234
2148c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	151,242,207,206,240,180,230,115
2149c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	150,172,116,34,231,173,53,133
2150c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	226,249,55,232,28,117,223,110
2151c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	71,241,26,113,29,41,197,137
2152c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	111,183,98,14,170,24,190,27
2153c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	252,86,62,75,198,210,121,32
2154c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	154,219,192,254,120,205,90,244
2155c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	31,221,168,51,136,7,199,49
2156c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	177,18,16,89,39,128,236,95
2157c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	96,81,127,169,25,181,74,13
2158c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	45,229,122,159,147,201,156,239
2159c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	160,224,59,77,174,42,245,176
2160c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	200,235,187,60,131,83,153,97
2161c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	23,43,4,126,186,119,214,38
2162c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	225,105,20,99,85,33,12,125
2163c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.size	_x86_AES_decrypt,.-_x86_AES_decrypt
2164c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.globl	AES_decrypt
2165c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.type	AES_decrypt,@function
2166c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.align	16
2167c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin IonitaAES_decrypt:
2168c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.L_AES_decrypt_begin:
2169c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pushl	%ebp
2170c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pushl	%ebx
2171c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pushl	%esi
2172c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pushl	%edi
2173c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	20(%esp),%esi
2174c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	28(%esp),%edi
2175c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esp,%eax
2176c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	subl	$36,%esp
2177c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$-64,%esp
2178c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	-127(%edi),%ebx
2179c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	subl	%esp,%ebx
2180c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	negl	%ebx
2181c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$960,%ebx
2182c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	subl	%ebx,%esp
2183c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	addl	$4,%esp
2184c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,28(%esp)
2185c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	call	.L010pic_point
2186c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.L010pic_point:
2187c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	popl	%ebp
21882c4d015c2c3dbe9cf62004171e265487dfa22469Daniel Leung	leal	_GLOBAL_OFFSET_TABLE_+[.-.L010pic_point](%ebp),%eax
21892c4d015c2c3dbe9cf62004171e265487dfa22469Daniel Leung	movl	OPENSSL_ia32cap_P@GOT(%eax),%eax
2190c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	.LAES_Td-.L010pic_point(%ebp),%ebp
2191c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	764(%esp),%ebx
2192c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	subl	%ebp,%ebx
2193c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$768,%ebx
2194c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	2176(%ebp,%ebx,1),%ebp
2195c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	btl	$25,(%eax)
2196c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	jnc	.L011x86
2197c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movq	(%esi),%mm0
2198c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movq	8(%esi),%mm4
2199c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	call	_sse_AES_decrypt_compact
2200c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	28(%esp),%esp
2201c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	24(%esp),%esi
2202c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movq	%mm0,(%esi)
2203c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movq	%mm4,8(%esi)
2204c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	emms
2205c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	popl	%edi
2206c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	popl	%esi
2207c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	popl	%ebx
2208c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	popl	%ebp
2209c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	ret
2210c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.align	16
2211c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.L011x86:
2212c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ebp,24(%esp)
2213c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	(%esi),%eax
2214c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	4(%esi),%ebx
2215c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	8(%esi),%ecx
2216c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	12(%esi),%edx
2217c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	call	_x86_AES_decrypt_compact
2218c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	28(%esp),%esp
2219c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	24(%esp),%esi
2220c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,(%esi)
2221c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ebx,4(%esi)
2222c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ecx,8(%esi)
2223c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%edx,12(%esi)
2224c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	popl	%edi
2225c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	popl	%esi
2226c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	popl	%ebx
2227c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	popl	%ebp
2228c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	ret
2229c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.size	AES_decrypt,.-.L_AES_decrypt_begin
2230c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.globl	AES_cbc_encrypt
2231c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.type	AES_cbc_encrypt,@function
2232c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.align	16
2233c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin IonitaAES_cbc_encrypt:
2234c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.L_AES_cbc_encrypt_begin:
2235c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pushl	%ebp
2236c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pushl	%ebx
2237c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pushl	%esi
2238c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pushl	%edi
2239c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	28(%esp),%ecx
2240c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	cmpl	$0,%ecx
2241c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	je	.L012drop_out
2242c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	call	.L013pic_point
2243c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.L013pic_point:
2244c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	popl	%ebp
22452c4d015c2c3dbe9cf62004171e265487dfa22469Daniel Leung	leal	_GLOBAL_OFFSET_TABLE_+[.-.L013pic_point](%ebp),%eax
22462c4d015c2c3dbe9cf62004171e265487dfa22469Daniel Leung	movl	OPENSSL_ia32cap_P@GOT(%eax),%eax
2247c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	cmpl	$0,40(%esp)
2248c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	.LAES_Te-.L013pic_point(%ebp),%ebp
2249c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	jne	.L014picked_te
2250c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	.LAES_Td-.LAES_Te(%ebp),%ebp
2251c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.L014picked_te:
2252c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pushfl
2253c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	cld
2254c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	cmpl	$512,%ecx
2255c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	jb	.L015slow_way
2256c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	testl	$15,%ecx
2257c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	jnz	.L015slow_way
2258c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	btl	$28,(%eax)
2259c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	jc	.L015slow_way
2260c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	-324(%esp),%esi
2261c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$-64,%esi
2262c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ebp,%eax
2263c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	2304(%ebp),%ebx
2264c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,%edx
2265c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$4095,%eax
2266c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$4095,%ebx
2267c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$4095,%edx
2268c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	cmpl	%ebx,%edx
2269c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	jb	.L016tbl_break_out
2270c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	subl	%ebx,%edx
2271c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	subl	%edx,%esi
2272c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	jmp	.L017tbl_ok
2273c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.align	4
2274c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.L016tbl_break_out:
2275c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	subl	%eax,%edx
2276c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$4095,%edx
2277c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	addl	$384,%edx
2278c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	subl	%edx,%esi
2279c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.align	4
2280c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.L017tbl_ok:
2281c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	24(%esp),%edx
2282c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xchgl	%esi,%esp
2283c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	addl	$4,%esp
2284c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ebp,24(%esp)
2285c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,28(%esp)
2286c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	(%edx),%eax
2287c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	4(%edx),%ebx
2288c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	12(%edx),%edi
2289c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	16(%edx),%esi
2290c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	20(%edx),%edx
2291c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,32(%esp)
2292c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ebx,36(%esp)
2293c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ecx,40(%esp)
2294c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%edi,44(%esp)
2295c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,48(%esp)
2296c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	$0,316(%esp)
2297c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%edi,%ebx
2298c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	$61,%ecx
2299c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	subl	%ebp,%ebx
2300c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%edi,%esi
2301c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$4095,%ebx
2302c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	76(%esp),%edi
2303c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	cmpl	$2304,%ebx
2304c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	jb	.L018do_copy
2305c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	cmpl	$3852,%ebx
2306c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	jb	.L019skip_copy
2307c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.align	4
2308c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.L018do_copy:
2309c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%edi,44(%esp)
2310c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2784229001
2311c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.L019skip_copy:
2312c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	$16,%edi
2313c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.align	4
2314c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.L020prefetch_tbl:
2315c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	(%ebp),%eax
2316c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	32(%ebp),%ebx
2317c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	64(%ebp),%ecx
2318c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	96(%ebp),%esi
2319c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	128(%ebp),%ebp
2320c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	subl	$1,%edi
2321c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	jnz	.L020prefetch_tbl
2322c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	subl	$2048,%ebp
2323c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	32(%esp),%esi
2324c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	48(%esp),%edi
2325c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	cmpl	$0,%edx
2326c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	je	.L021fast_decrypt
2327c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	(%edi),%eax
2328c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	4(%edi),%ebx
2329c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.align	16
2330c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.L022fast_enc_loop:
2331c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	8(%edi),%ecx
2332c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	12(%edi),%edx
2333c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	(%esi),%eax
2334c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	4(%esi),%ebx
2335c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	8(%esi),%ecx
2336c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	12(%esi),%edx
2337c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	44(%esp),%edi
2338c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	call	_x86_AES_encrypt
2339c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	32(%esp),%esi
2340c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	36(%esp),%edi
2341c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,(%edi)
2342c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ebx,4(%edi)
2343c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ecx,8(%edi)
2344c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%edx,12(%edi)
2345c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	16(%esi),%esi
2346c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	40(%esp),%ecx
2347c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,32(%esp)
2348c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	16(%edi),%edx
2349c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%edx,36(%esp)
2350c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	subl	$16,%ecx
2351c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ecx,40(%esp)
2352c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	jnz	.L022fast_enc_loop
2353c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	48(%esp),%esi
2354c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	8(%edi),%ecx
2355c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	12(%edi),%edx
2356c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,(%esi)
2357c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ebx,4(%esi)
2358c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ecx,8(%esi)
2359c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%edx,12(%esi)
2360c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	cmpl	$0,316(%esp)
2361c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	44(%esp),%edi
2362c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	je	.L023skip_ezero
2363c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	$60,%ecx
2364c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%eax,%eax
2365c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.align	4
2366c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2884892297
2367c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.L023skip_ezero:
2368c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	28(%esp),%esp
2369c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	popfl
2370c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.L012drop_out:
2371c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	popl	%edi
2372c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	popl	%esi
2373c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	popl	%ebx
2374c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	popl	%ebp
2375c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	ret
2376c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pushfl
2377c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.align	16
2378c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.L021fast_decrypt:
2379c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	cmpl	36(%esp),%esi
2380c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	je	.L024fast_dec_in_place
2381c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%edi,52(%esp)
2382c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.align	4
2383c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.align	16
2384c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.L025fast_dec_loop:
2385c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	(%esi),%eax
2386c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	4(%esi),%ebx
2387c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	8(%esi),%ecx
2388c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	12(%esi),%edx
2389c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	44(%esp),%edi
2390c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	call	_x86_AES_decrypt
2391c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	52(%esp),%edi
2392c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	40(%esp),%esi
2393c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	(%edi),%eax
2394c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	4(%edi),%ebx
2395c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	8(%edi),%ecx
2396c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	12(%edi),%edx
2397c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	36(%esp),%edi
2398c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	32(%esp),%esi
2399c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,(%edi)
2400c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ebx,4(%edi)
2401c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ecx,8(%edi)
2402c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%edx,12(%edi)
2403c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	40(%esp),%ecx
2404c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,52(%esp)
2405c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	16(%esi),%esi
2406c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,32(%esp)
2407c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	16(%edi),%edi
2408c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%edi,36(%esp)
2409c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	subl	$16,%ecx
2410c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ecx,40(%esp)
2411c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	jnz	.L025fast_dec_loop
2412c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	52(%esp),%edi
2413c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	48(%esp),%esi
2414c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	(%edi),%eax
2415c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	4(%edi),%ebx
2416c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	8(%edi),%ecx
2417c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	12(%edi),%edx
2418c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,(%esi)
2419c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ebx,4(%esi)
2420c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ecx,8(%esi)
2421c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%edx,12(%esi)
2422c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	jmp	.L026fast_dec_out
2423c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.align	16
2424c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.L024fast_dec_in_place:
2425c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.L027fast_dec_in_place_loop:
2426c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	(%esi),%eax
2427c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	4(%esi),%ebx
2428c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	8(%esi),%ecx
2429c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	12(%esi),%edx
2430c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	60(%esp),%edi
2431c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,(%edi)
2432c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ebx,4(%edi)
2433c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ecx,8(%edi)
2434c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%edx,12(%edi)
2435c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	44(%esp),%edi
2436c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	call	_x86_AES_decrypt
2437c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	48(%esp),%edi
2438c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	36(%esp),%esi
2439c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	(%edi),%eax
2440c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	4(%edi),%ebx
2441c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	8(%edi),%ecx
2442c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	12(%edi),%edx
2443c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,(%esi)
2444c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ebx,4(%esi)
2445c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ecx,8(%esi)
2446c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%edx,12(%esi)
2447c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	16(%esi),%esi
2448c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,36(%esp)
2449c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	60(%esp),%esi
2450c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	(%esi),%eax
2451c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	4(%esi),%ebx
2452c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	8(%esi),%ecx
2453c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	12(%esi),%edx
2454c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,(%edi)
2455c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ebx,4(%edi)
2456c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ecx,8(%edi)
2457c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%edx,12(%edi)
2458c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	32(%esp),%esi
2459c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	40(%esp),%ecx
2460c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	16(%esi),%esi
2461c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,32(%esp)
2462c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	subl	$16,%ecx
2463c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ecx,40(%esp)
2464c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	jnz	.L027fast_dec_in_place_loop
2465c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.align	4
2466c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.L026fast_dec_out:
2467c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	cmpl	$0,316(%esp)
2468c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	44(%esp),%edi
2469c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	je	.L028skip_dzero
2470c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	$60,%ecx
2471c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%eax,%eax
2472c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.align	4
2473c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2884892297
2474c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.L028skip_dzero:
2475c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	28(%esp),%esp
2476c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	popfl
2477c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	popl	%edi
2478c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	popl	%esi
2479c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	popl	%ebx
2480c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	popl	%ebp
2481c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	ret
2482c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pushfl
2483c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.align	16
2484c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.L015slow_way:
2485c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	(%eax),%eax
2486c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	36(%esp),%edi
2487c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	-80(%esp),%esi
2488c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$-64,%esi
2489c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	-143(%edi),%ebx
2490c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	subl	%esi,%ebx
2491c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	negl	%ebx
2492c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$960,%ebx
2493c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	subl	%ebx,%esi
2494c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	768(%esi),%ebx
2495c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	subl	%ebp,%ebx
2496c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$768,%ebx
2497c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	2176(%ebp,%ebx,1),%ebp
2498c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	24(%esp),%edx
2499c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xchgl	%esi,%esp
2500c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	addl	$4,%esp
2501c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ebp,24(%esp)
2502c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,28(%esp)
2503c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,52(%esp)
2504c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	(%edx),%eax
2505c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	4(%edx),%ebx
2506c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	16(%edx),%esi
2507c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	20(%edx),%edx
2508c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,32(%esp)
2509c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ebx,36(%esp)
2510c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ecx,40(%esp)
2511c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%edi,44(%esp)
2512c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,48(%esp)
2513c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,%edi
2514c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,%esi
2515c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	cmpl	$0,%edx
2516c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	je	.L029slow_decrypt
2517c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	cmpl	$16,%ecx
2518c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ebx,%edx
2519c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	jb	.L030slow_enc_tail
2520c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	btl	$25,52(%esp)
2521c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	jnc	.L031slow_enc_x86
2522c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movq	(%edi),%mm0
2523c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movq	8(%edi),%mm4
2524c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.align	16
2525c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.L032slow_enc_loop_sse:
2526c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pxor	(%esi),%mm0
2527c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pxor	8(%esi),%mm4
2528c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	44(%esp),%edi
2529c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	call	_sse_AES_encrypt_compact
2530c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	32(%esp),%esi
2531c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	36(%esp),%edi
2532c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	40(%esp),%ecx
2533c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movq	%mm0,(%edi)
2534c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movq	%mm4,8(%edi)
2535c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	16(%esi),%esi
2536c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,32(%esp)
2537c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	16(%edi),%edx
2538c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%edx,36(%esp)
2539c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	subl	$16,%ecx
2540c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	cmpl	$16,%ecx
2541c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ecx,40(%esp)
2542c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	jae	.L032slow_enc_loop_sse
2543c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	testl	$15,%ecx
2544c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	jnz	.L030slow_enc_tail
2545c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	48(%esp),%esi
2546c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movq	%mm0,(%esi)
2547c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movq	%mm4,8(%esi)
2548c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	emms
2549c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	28(%esp),%esp
2550c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	popfl
2551c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	popl	%edi
2552c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	popl	%esi
2553c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	popl	%ebx
2554c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	popl	%ebp
2555c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	ret
2556c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pushfl
2557c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.align	16
2558c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.L031slow_enc_x86:
2559c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	(%edi),%eax
2560c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	4(%edi),%ebx
2561c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.align	4
2562c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.L033slow_enc_loop_x86:
2563c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	8(%edi),%ecx
2564c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	12(%edi),%edx
2565c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	(%esi),%eax
2566c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	4(%esi),%ebx
2567c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	8(%esi),%ecx
2568c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	12(%esi),%edx
2569c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	44(%esp),%edi
2570c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	call	_x86_AES_encrypt_compact
2571c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	32(%esp),%esi
2572c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	36(%esp),%edi
2573c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,(%edi)
2574c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ebx,4(%edi)
2575c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ecx,8(%edi)
2576c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%edx,12(%edi)
2577c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	40(%esp),%ecx
2578c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	16(%esi),%esi
2579c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,32(%esp)
2580c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	16(%edi),%edx
2581c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%edx,36(%esp)
2582c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	subl	$16,%ecx
2583c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	cmpl	$16,%ecx
2584c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ecx,40(%esp)
2585c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	jae	.L033slow_enc_loop_x86
2586c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	testl	$15,%ecx
2587c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	jnz	.L030slow_enc_tail
2588c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	48(%esp),%esi
2589c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	8(%edi),%ecx
2590c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	12(%edi),%edx
2591c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,(%esi)
2592c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ebx,4(%esi)
2593c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ecx,8(%esi)
2594c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%edx,12(%esi)
2595c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	28(%esp),%esp
2596c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	popfl
2597c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	popl	%edi
2598c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	popl	%esi
2599c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	popl	%ebx
2600c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	popl	%ebp
2601c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	ret
2602c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pushfl
2603c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.align	16
2604c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.L030slow_enc_tail:
2605c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	emms
2606c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%edx,%edi
2607c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	$16,%ebx
2608c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	subl	%ecx,%ebx
2609c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	cmpl	%esi,%edi
2610c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	je	.L034enc_in_place
2611c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.align	4
2612c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2767451785
2613c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	jmp	.L035enc_skip_in_place
2614c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.L034enc_in_place:
2615c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	(%edi,%ecx,1),%edi
2616c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.L035enc_skip_in_place:
2617c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ebx,%ecx
2618c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%eax,%eax
2619c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.align	4
2620c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2868115081
2621c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	48(%esp),%edi
2622c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%edx,%esi
2623c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	(%edi),%eax
2624c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	4(%edi),%ebx
2625c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	$16,40(%esp)
2626c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	jmp	.L033slow_enc_loop_x86
2627c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.align	16
2628c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.L029slow_decrypt:
2629c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	btl	$25,52(%esp)
2630c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	jnc	.L036slow_dec_loop_x86
2631c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.align	4
2632c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.L037slow_dec_loop_sse:
2633c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movq	(%esi),%mm0
2634c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movq	8(%esi),%mm4
2635c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	44(%esp),%edi
2636c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	call	_sse_AES_decrypt_compact
2637c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	32(%esp),%esi
2638c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	60(%esp),%eax
2639c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	36(%esp),%ebx
2640c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	40(%esp),%ecx
2641c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	48(%esp),%edi
2642c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movq	(%esi),%mm1
2643c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movq	8(%esi),%mm5
2644c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pxor	(%edi),%mm0
2645c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pxor	8(%edi),%mm4
2646c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movq	%mm1,(%edi)
2647c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movq	%mm5,8(%edi)
2648c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	subl	$16,%ecx
2649c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	jc	.L038slow_dec_partial_sse
2650c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movq	%mm0,(%ebx)
2651c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movq	%mm4,8(%ebx)
2652c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	16(%ebx),%ebx
2653c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ebx,36(%esp)
2654c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	16(%esi),%esi
2655c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,32(%esp)
2656c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ecx,40(%esp)
2657c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	jnz	.L037slow_dec_loop_sse
2658c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	emms
2659c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	28(%esp),%esp
2660c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	popfl
2661c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	popl	%edi
2662c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	popl	%esi
2663c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	popl	%ebx
2664c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	popl	%ebp
2665c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	ret
2666c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pushfl
2667c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.align	16
2668c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.L038slow_dec_partial_sse:
2669c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movq	%mm0,(%eax)
2670c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movq	%mm4,8(%eax)
2671c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	emms
2672c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	addl	$16,%ecx
2673c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ebx,%edi
2674c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,%esi
2675c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.align	4
2676c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2767451785
2677c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	28(%esp),%esp
2678c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	popfl
2679c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	popl	%edi
2680c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	popl	%esi
2681c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	popl	%ebx
2682c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	popl	%ebp
2683c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	ret
2684c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pushfl
2685c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.align	16
2686c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.L036slow_dec_loop_x86:
2687c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	(%esi),%eax
2688c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	4(%esi),%ebx
2689c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	8(%esi),%ecx
2690c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	12(%esi),%edx
2691c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	60(%esp),%edi
2692c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,(%edi)
2693c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ebx,4(%edi)
2694c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ecx,8(%edi)
2695c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%edx,12(%edi)
2696c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	44(%esp),%edi
2697c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	call	_x86_AES_decrypt_compact
2698c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	48(%esp),%edi
2699c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	40(%esp),%esi
2700c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	(%edi),%eax
2701c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	4(%edi),%ebx
2702c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	8(%edi),%ecx
2703c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	12(%edi),%edx
2704c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	subl	$16,%esi
2705c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	jc	.L039slow_dec_partial_x86
2706c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,40(%esp)
2707c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	36(%esp),%esi
2708c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,(%esi)
2709c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ebx,4(%esi)
2710c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ecx,8(%esi)
2711c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%edx,12(%esi)
2712c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	16(%esi),%esi
2713c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,36(%esp)
2714c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	60(%esp),%esi
2715c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	(%esi),%eax
2716c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	4(%esi),%ebx
2717c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	8(%esi),%ecx
2718c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	12(%esi),%edx
2719c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,(%edi)
2720c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ebx,4(%edi)
2721c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ecx,8(%edi)
2722c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%edx,12(%edi)
2723c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	32(%esp),%esi
2724c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	16(%esi),%esi
2725c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,32(%esp)
2726c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	jnz	.L036slow_dec_loop_x86
2727c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	28(%esp),%esp
2728c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	popfl
2729c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	popl	%edi
2730c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	popl	%esi
2731c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	popl	%ebx
2732c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	popl	%ebp
2733c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	ret
2734c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pushfl
2735c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.align	16
2736c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.L039slow_dec_partial_x86:
2737c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	60(%esp),%esi
2738c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,(%esi)
2739c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ebx,4(%esi)
2740c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ecx,8(%esi)
2741c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%edx,12(%esi)
2742c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	32(%esp),%esi
2743c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	(%esi),%eax
2744c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	4(%esi),%ebx
2745c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	8(%esi),%ecx
2746c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	12(%esi),%edx
2747c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,(%edi)
2748c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ebx,4(%edi)
2749c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ecx,8(%edi)
2750c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%edx,12(%edi)
2751c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	40(%esp),%ecx
2752c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	36(%esp),%edi
2753c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	60(%esp),%esi
2754c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.align	4
2755c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.long	2767451785
2756c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	28(%esp),%esp
2757c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	popfl
2758c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	popl	%edi
2759c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	popl	%esi
2760c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	popl	%ebx
2761c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	popl	%ebp
2762c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	ret
2763c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.size	AES_cbc_encrypt,.-.L_AES_cbc_encrypt_begin
2764c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.type	_x86_AES_set_encrypt_key,@function
2765c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.align	16
2766c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita_x86_AES_set_encrypt_key:
2767c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pushl	%ebp
2768c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pushl	%ebx
2769c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pushl	%esi
2770c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pushl	%edi
2771c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	24(%esp),%esi
2772c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	32(%esp),%edi
2773c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	testl	$-1,%esi
2774c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	jz	.L040badpointer
2775c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	testl	$-1,%edi
2776c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	jz	.L040badpointer
2777c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	call	.L041pic_point
2778c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.L041pic_point:
2779c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	popl	%ebp
2780c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	.LAES_Te-.L041pic_point(%ebp),%ebp
2781c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	2176(%ebp),%ebp
2782c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	-128(%ebp),%eax
2783c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	-96(%ebp),%ebx
2784c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	-64(%ebp),%ecx
2785c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	-32(%ebp),%edx
2786c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	(%ebp),%eax
2787c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	32(%ebp),%ebx
2788c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	64(%ebp),%ecx
2789c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	96(%ebp),%edx
2790c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	28(%esp),%ecx
2791c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	cmpl	$128,%ecx
2792c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	je	.L04210rounds
2793c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	cmpl	$192,%ecx
2794c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	je	.L04312rounds
2795c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	cmpl	$256,%ecx
2796c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	je	.L04414rounds
2797c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	$-2,%eax
2798c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	jmp	.L045exit
2799c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.L04210rounds:
2800c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	(%esi),%eax
2801c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	4(%esi),%ebx
2802c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	8(%esi),%ecx
2803c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	12(%esi),%edx
2804c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,(%edi)
2805c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ebx,4(%edi)
2806c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ecx,8(%edi)
2807c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%edx,12(%edi)
2808c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ecx,%ecx
2809c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	jmp	.L04610shortcut
2810c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.align	4
2811c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.L04710loop:
2812c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	(%edi),%eax
2813c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	12(%edi),%edx
2814c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.L04610shortcut:
2815c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%dl,%esi
2816c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%esi,1),%ebx
2817c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%dh,%esi
2818c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$24,%ebx
2819c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ebx,%eax
2820c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%esi,1),%ebx
2821c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$16,%edx
2822c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%dl,%esi
2823c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ebx,%eax
2824c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%esi,1),%ebx
2825c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%dh,%esi
2826c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$8,%ebx
2827c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ebx,%eax
2828c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%esi,1),%ebx
2829c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$16,%ebx
2830c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ebx,%eax
2831c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	896(%ebp,%ecx,4),%eax
2832c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,16(%edi)
2833c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	4(%edi),%eax
2834c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,20(%edi)
2835c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	8(%edi),%eax
2836c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,24(%edi)
2837c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	12(%edi),%eax
2838c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,28(%edi)
2839c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	incl	%ecx
2840c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	addl	$16,%edi
2841c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	cmpl	$10,%ecx
2842c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	jl	.L04710loop
2843c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	$10,80(%edi)
2844c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%eax,%eax
2845c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	jmp	.L045exit
2846c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.L04312rounds:
2847c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	(%esi),%eax
2848c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	4(%esi),%ebx
2849c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	8(%esi),%ecx
2850c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	12(%esi),%edx
2851c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,(%edi)
2852c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ebx,4(%edi)
2853c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ecx,8(%edi)
2854c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%edx,12(%edi)
2855c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	16(%esi),%ecx
2856c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	20(%esi),%edx
2857c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ecx,16(%edi)
2858c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%edx,20(%edi)
2859c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ecx,%ecx
2860c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	jmp	.L04812shortcut
2861c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.align	4
2862c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.L04912loop:
2863c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	(%edi),%eax
2864c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	20(%edi),%edx
2865c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.L04812shortcut:
2866c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%dl,%esi
2867c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%esi,1),%ebx
2868c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%dh,%esi
2869c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$24,%ebx
2870c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ebx,%eax
2871c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%esi,1),%ebx
2872c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$16,%edx
2873c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%dl,%esi
2874c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ebx,%eax
2875c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%esi,1),%ebx
2876c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%dh,%esi
2877c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$8,%ebx
2878c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ebx,%eax
2879c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%esi,1),%ebx
2880c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$16,%ebx
2881c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ebx,%eax
2882c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	896(%ebp,%ecx,4),%eax
2883c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,24(%edi)
2884c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	4(%edi),%eax
2885c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,28(%edi)
2886c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	8(%edi),%eax
2887c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,32(%edi)
2888c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	12(%edi),%eax
2889c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,36(%edi)
2890c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	cmpl	$7,%ecx
2891c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	je	.L05012break
2892c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	incl	%ecx
2893c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	16(%edi),%eax
2894c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,40(%edi)
2895c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	20(%edi),%eax
2896c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,44(%edi)
2897c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	addl	$24,%edi
2898c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	jmp	.L04912loop
2899c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.L05012break:
2900c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	$12,72(%edi)
2901c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%eax,%eax
2902c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	jmp	.L045exit
2903c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.L04414rounds:
2904c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	(%esi),%eax
2905c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	4(%esi),%ebx
2906c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	8(%esi),%ecx
2907c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	12(%esi),%edx
2908c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,(%edi)
2909c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ebx,4(%edi)
2910c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ecx,8(%edi)
2911c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%edx,12(%edi)
2912c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	16(%esi),%eax
2913c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	20(%esi),%ebx
2914c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	24(%esi),%ecx
2915c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	28(%esi),%edx
2916c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,16(%edi)
2917c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ebx,20(%edi)
2918c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ecx,24(%edi)
2919c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%edx,28(%edi)
2920c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ecx,%ecx
2921c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	jmp	.L05114shortcut
2922c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.align	4
2923c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.L05214loop:
2924c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	28(%edi),%edx
2925c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.L05114shortcut:
2926c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	(%edi),%eax
2927c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%dl,%esi
2928c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%esi,1),%ebx
2929c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%dh,%esi
2930c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$24,%ebx
2931c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ebx,%eax
2932c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%esi,1),%ebx
2933c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$16,%edx
2934c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%dl,%esi
2935c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ebx,%eax
2936c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%esi,1),%ebx
2937c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%dh,%esi
2938c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$8,%ebx
2939c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ebx,%eax
2940c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%esi,1),%ebx
2941c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$16,%ebx
2942c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ebx,%eax
2943c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	896(%ebp,%ecx,4),%eax
2944c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,32(%edi)
2945c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	4(%edi),%eax
2946c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,36(%edi)
2947c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	8(%edi),%eax
2948c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,40(%edi)
2949c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	12(%edi),%eax
2950c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,44(%edi)
2951c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	cmpl	$6,%ecx
2952c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	je	.L05314break
2953c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	incl	%ecx
2954c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,%edx
2955c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	16(%edi),%eax
2956c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%dl,%esi
2957c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%esi,1),%ebx
2958c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%dh,%esi
2959c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ebx,%eax
2960c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%esi,1),%ebx
2961c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$16,%edx
2962c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$8,%ebx
2963c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%dl,%esi
2964c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ebx,%eax
2965c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%esi,1),%ebx
2966c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	%dh,%esi
2967c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$16,%ebx
2968c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ebx,%eax
2969c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movzbl	-128(%ebp,%esi,1),%ebx
2970c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shll	$24,%ebx
2971c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ebx,%eax
2972c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,48(%edi)
2973c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	20(%edi),%eax
2974c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,52(%edi)
2975c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	24(%edi),%eax
2976c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,56(%edi)
2977c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	28(%edi),%eax
2978c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,60(%edi)
2979c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	addl	$32,%edi
2980c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	jmp	.L05214loop
2981c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.L05314break:
2982c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	$14,48(%edi)
2983c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%eax,%eax
2984c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	jmp	.L045exit
2985c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.L040badpointer:
2986c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	$-1,%eax
2987c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.L045exit:
2988c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	popl	%edi
2989c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	popl	%esi
2990c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	popl	%ebx
2991c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	popl	%ebp
2992c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	ret
2993c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.size	_x86_AES_set_encrypt_key,.-_x86_AES_set_encrypt_key
2994c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.globl	private_AES_set_encrypt_key
2995c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.type	private_AES_set_encrypt_key,@function
2996c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.align	16
2997c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionitaprivate_AES_set_encrypt_key:
2998c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.L_private_AES_set_encrypt_key_begin:
2999c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	call	_x86_AES_set_encrypt_key
3000c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	ret
3001c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.size	private_AES_set_encrypt_key,.-.L_private_AES_set_encrypt_key_begin
3002c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.globl	private_AES_set_decrypt_key
3003c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.type	private_AES_set_decrypt_key,@function
3004c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.align	16
3005c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionitaprivate_AES_set_decrypt_key:
3006c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.L_private_AES_set_decrypt_key_begin:
3007c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	call	_x86_AES_set_encrypt_key
3008c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	cmpl	$0,%eax
3009c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	je	.L054proceed
3010c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	ret
3011c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.L054proceed:
3012c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pushl	%ebp
3013c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pushl	%ebx
3014c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pushl	%esi
3015c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	pushl	%edi
3016c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	28(%esp),%esi
3017c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	240(%esi),%ecx
3018c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	(,%ecx,4),%ecx
3019c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	(%esi,%ecx,4),%edi
3020c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.align	4
3021c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.L055invert:
3022c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	(%esi),%eax
3023c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	4(%esi),%ebx
3024c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	(%edi),%ecx
3025c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	4(%edi),%edx
3026c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,(%edi)
3027c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ebx,4(%edi)
3028c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ecx,(%esi)
3029c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%edx,4(%esi)
3030c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	8(%esi),%eax
3031c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	12(%esi),%ebx
3032c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	8(%edi),%ecx
3033c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	12(%edi),%edx
3034c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,8(%edi)
3035c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ebx,12(%edi)
3036c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ecx,8(%esi)
3037c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%edx,12(%esi)
3038c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	addl	$16,%esi
3039c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	subl	$16,%edi
3040c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	cmpl	%edi,%esi
3041c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	jne	.L055invert
3042c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	28(%esp),%edi
3043c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	240(%edi),%esi
3044c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	-2(%esi,%esi,1),%esi
3045c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	(%edi,%esi,8),%esi
3046c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,28(%esp)
3047c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	16(%edi),%eax
3048c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.align	4
3049c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.L056permute:
3050c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	addl	$16,%edi
3051c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,%esi
3052c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$2155905152,%esi
3053c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,%ebp
3054c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$7,%ebp
3055c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	(%eax,%eax,1),%ebx
3056c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	subl	%ebp,%esi
3057c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$4278124286,%ebx
3058c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$454761243,%esi
3059c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ebx,%esi
3060c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,%ebx
3061c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$2155905152,%esi
3062c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,%ebp
3063c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$7,%ebp
3064c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	(%ebx,%ebx,1),%ecx
3065c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	subl	%ebp,%esi
3066c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$4278124286,%ecx
3067c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$454761243,%esi
3068c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%eax,%ebx
3069c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ecx,%esi
3070c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,%ecx
3071c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$2155905152,%esi
3072c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,%ebp
3073c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$7,%ebp
3074c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	(%ecx,%ecx,1),%edx
3075c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%eax,%ecx
3076c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	subl	%ebp,%esi
3077c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$4278124286,%edx
3078c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$454761243,%esi
3079c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	roll	$8,%eax
3080c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%esi,%edx
3081c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	4(%edi),%ebp
3082c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ebx,%eax
3083c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edx,%ebx
3084c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ecx,%eax
3085c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	roll	$24,%ebx
3086c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edx,%ecx
3087c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edx,%eax
3088c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	roll	$16,%ecx
3089c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ebx,%eax
3090c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	roll	$8,%edx
3091c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ecx,%eax
3092c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ebp,%ebx
3093c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edx,%eax
3094c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%eax,(%edi)
3095c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ebx,%esi
3096c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$2155905152,%esi
3097c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,%ebp
3098c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$7,%ebp
3099c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	(%ebx,%ebx,1),%ecx
3100c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	subl	%ebp,%esi
3101c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$4278124286,%ecx
3102c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$454761243,%esi
3103c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ecx,%esi
3104c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,%ecx
3105c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$2155905152,%esi
3106c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,%ebp
3107c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$7,%ebp
3108c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	(%ecx,%ecx,1),%edx
3109c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	subl	%ebp,%esi
3110c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$4278124286,%edx
3111c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$454761243,%esi
3112c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ebx,%ecx
3113c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edx,%esi
3114c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,%edx
3115c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$2155905152,%esi
3116c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,%ebp
3117c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$7,%ebp
3118c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	(%edx,%edx,1),%eax
3119c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ebx,%edx
3120c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	subl	%ebp,%esi
3121c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$4278124286,%eax
3122c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$454761243,%esi
3123c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	roll	$8,%ebx
3124c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%esi,%eax
3125c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	8(%edi),%ebp
3126c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ecx,%ebx
3127c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%eax,%ecx
3128c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edx,%ebx
3129c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	roll	$24,%ecx
3130c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%eax,%edx
3131c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%eax,%ebx
3132c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	roll	$16,%edx
3133c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ecx,%ebx
3134c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	roll	$8,%eax
3135c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edx,%ebx
3136c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ebp,%ecx
3137c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%eax,%ebx
3138c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ebx,4(%edi)
3139c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ecx,%esi
3140c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$2155905152,%esi
3141c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,%ebp
3142c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$7,%ebp
3143c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	(%ecx,%ecx,1),%edx
3144c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	subl	%ebp,%esi
3145c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$4278124286,%edx
3146c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$454761243,%esi
3147c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edx,%esi
3148c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,%edx
3149c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$2155905152,%esi
3150c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,%ebp
3151c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$7,%ebp
3152c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	(%edx,%edx,1),%eax
3153c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	subl	%ebp,%esi
3154c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$4278124286,%eax
3155c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$454761243,%esi
3156c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ecx,%edx
3157c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%eax,%esi
3158c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,%eax
3159c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$2155905152,%esi
3160c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,%ebp
3161c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$7,%ebp
3162c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	(%eax,%eax,1),%ebx
3163c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ecx,%eax
3164c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	subl	%ebp,%esi
3165c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$4278124286,%ebx
3166c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$454761243,%esi
3167c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	roll	$8,%ecx
3168c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%esi,%ebx
3169c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	12(%edi),%ebp
3170c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edx,%ecx
3171c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ebx,%edx
3172c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%eax,%ecx
3173c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	roll	$24,%edx
3174c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ebx,%eax
3175c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ebx,%ecx
3176c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	roll	$16,%eax
3177c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edx,%ecx
3178c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	roll	$8,%ebx
3179c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%eax,%ecx
3180c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ebp,%edx
3181c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ebx,%ecx
3182c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ecx,8(%edi)
3183c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%edx,%esi
3184c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$2155905152,%esi
3185c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,%ebp
3186c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$7,%ebp
3187c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	(%edx,%edx,1),%eax
3188c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	subl	%ebp,%esi
3189c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$4278124286,%eax
3190c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$454761243,%esi
3191c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%eax,%esi
3192c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,%eax
3193c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$2155905152,%esi
3194c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,%ebp
3195c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$7,%ebp
3196c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	(%eax,%eax,1),%ebx
3197c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	subl	%ebp,%esi
3198c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$4278124286,%ebx
3199c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$454761243,%esi
3200c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edx,%eax
3201c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ebx,%esi
3202c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,%ebx
3203c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$2155905152,%esi
3204c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%esi,%ebp
3205c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	shrl	$7,%ebp
3206c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	leal	(%ebx,%ebx,1),%ecx
3207c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%edx,%ebx
3208c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	subl	%ebp,%esi
3209c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$4278124286,%ecx
3210c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	andl	$454761243,%esi
3211c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	roll	$8,%edx
3212c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%esi,%ecx
3213c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	16(%edi),%ebp
3214c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%eax,%edx
3215c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ecx,%eax
3216c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ebx,%edx
3217c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	roll	$24,%eax
3218c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ecx,%ebx
3219c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ecx,%edx
3220c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	roll	$16,%ebx
3221c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%eax,%edx
3222c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	roll	$8,%ecx
3223c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ebx,%edx
3224c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%ebp,%eax
3225c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%ecx,%edx
3226c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	movl	%edx,12(%edi)
3227c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	cmpl	28(%esp),%edi
3228c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	jb	.L056permute
3229c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	xorl	%eax,%eax
3230c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	popl	%edi
3231c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	popl	%esi
3232c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	popl	%ebx
3233c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	popl	%ebp
3234c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita	ret
3235c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.size	private_AES_set_decrypt_key,.-.L_private_AES_set_decrypt_key_begin
3236c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	65,69,83,32,102,111,114,32,120,56,54,44,32,67,82,89
3237c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114
3238c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.byte	111,64,111,112,101,110,115,115,108,46,111,114,103,62,0
3239c58cd0fd2cebb61b0e0f200e01562c542525ef46Catalin Ionita.comm	OPENSSL_ia32cap_P,8,4
3240