1	# $FreeBSD$
2
3
4
5
6
7
8	.file	"crypt586.s"
9	.version	"01.01"
10gcc2_compiled.:
11.text
12	.align 16
13.globl fcrypt_body
14	.type	fcrypt_body,@function
15fcrypt_body:
16	pushl	%ebp
17	pushl	%ebx
18	pushl	%esi
19	pushl	%edi
20
21
22
23	xorl	%edi,		%edi
24	xorl	%esi,		%esi
25	leal	DES_SPtrans,	%edx
26	pushl	%edx
27	movl	28(%esp),	%ebp
28	pushl	$25
29.L000start:
30
31
32	movl	36(%esp),	%eax
33	movl	%esi,		%edx
34	shrl	$16,		%edx
35	movl	40(%esp),	%ecx
36	xorl	%esi,		%edx
37	andl	%edx,		%eax
38	andl	%ecx,		%edx
39	movl	%eax,		%ebx
40	sall	$16,		%ebx
41	movl	%edx,		%ecx
42	sall	$16,		%ecx
43	xorl	%ebx,		%eax
44	xorl	%ecx,		%edx
45	movl	(%ebp),		%ebx
46	xorl	%ebx,		%eax
47	movl	4(%ebp),	%ecx
48	xorl	%esi,		%eax
49	xorl	%esi,		%edx
50	xorl	%ecx,		%edx
51	andl	$0xfcfcfcfc,	%eax
52	xorl	%ebx,		%ebx
53	andl	$0xcfcfcfcf,	%edx
54	xorl	%ecx,		%ecx
55	movb	%al,		%bl
56	movb	%ah,		%cl
57	rorl	$4,		%edx
58	movl	4(%esp),	%ebp
59	xorl	     (%ebp,%ebx),%edi
60	movb	%dl,		%bl
61	xorl	0x200(%ebp,%ecx),%edi
62	movb	%dh,		%cl
63	shrl	$16,		%eax
64	xorl	0x100(%ebp,%ebx),%edi
65	movb	%ah,		%bl
66	shrl	$16,		%edx
67	xorl	0x300(%ebp,%ecx),%edi
68	movb	%dh,		%cl
69	andl	$0xff,		%eax
70	andl	$0xff,		%edx
71	movl	0x600(%ebp,%ebx),%ebx
72	xorl	%ebx,		%edi
73	movl	0x700(%ebp,%ecx),%ebx
74	xorl	%ebx,		%edi
75	movl	0x400(%ebp,%eax),%ebx
76	xorl	%ebx,		%edi
77	movl	0x500(%ebp,%edx),%ebx
78	xorl	%ebx,		%edi
79	movl	32(%esp),	%ebp
80
81
82	movl	36(%esp),	%eax
83	movl	%edi,		%edx
84	shrl	$16,		%edx
85	movl	40(%esp),	%ecx
86	xorl	%edi,		%edx
87	andl	%edx,		%eax
88	andl	%ecx,		%edx
89	movl	%eax,		%ebx
90	sall	$16,		%ebx
91	movl	%edx,		%ecx
92	sall	$16,		%ecx
93	xorl	%ebx,		%eax
94	xorl	%ecx,		%edx
95	movl	8(%ebp),	%ebx
96	xorl	%ebx,		%eax
97	movl	12(%ebp),	%ecx
98	xorl	%edi,		%eax
99	xorl	%edi,		%edx
100	xorl	%ecx,		%edx
101	andl	$0xfcfcfcfc,	%eax
102	xorl	%ebx,		%ebx
103	andl	$0xcfcfcfcf,	%edx
104	xorl	%ecx,		%ecx
105	movb	%al,		%bl
106	movb	%ah,		%cl
107	rorl	$4,		%edx
108	movl	4(%esp),	%ebp
109	xorl	     (%ebp,%ebx),%esi
110	movb	%dl,		%bl
111	xorl	0x200(%ebp,%ecx),%esi
112	movb	%dh,		%cl
113	shrl	$16,		%eax
114	xorl	0x100(%ebp,%ebx),%esi
115	movb	%ah,		%bl
116	shrl	$16,		%edx
117	xorl	0x300(%ebp,%ecx),%esi
118	movb	%dh,		%cl
119	andl	$0xff,		%eax
120	andl	$0xff,		%edx
121	movl	0x600(%ebp,%ebx),%ebx
122	xorl	%ebx,		%esi
123	movl	0x700(%ebp,%ecx),%ebx
124	xorl	%ebx,		%esi
125	movl	0x400(%ebp,%eax),%ebx
126	xorl	%ebx,		%esi
127	movl	0x500(%ebp,%edx),%ebx
128	xorl	%ebx,		%esi
129	movl	32(%esp),	%ebp
130
131
132	movl	36(%esp),	%eax
133	movl	%esi,		%edx
134	shrl	$16,		%edx
135	movl	40(%esp),	%ecx
136	xorl	%esi,		%edx
137	andl	%edx,		%eax
138	andl	%ecx,		%edx
139	movl	%eax,		%ebx
140	sall	$16,		%ebx
141	movl	%edx,		%ecx
142	sall	$16,		%ecx
143	xorl	%ebx,		%eax
144	xorl	%ecx,		%edx
145	movl	16(%ebp),	%ebx
146	xorl	%ebx,		%eax
147	movl	20(%ebp),	%ecx
148	xorl	%esi,		%eax
149	xorl	%esi,		%edx
150	xorl	%ecx,		%edx
151	andl	$0xfcfcfcfc,	%eax
152	xorl	%ebx,		%ebx
153	andl	$0xcfcfcfcf,	%edx
154	xorl	%ecx,		%ecx
155	movb	%al,		%bl
156	movb	%ah,		%cl
157	rorl	$4,		%edx
158	movl	4(%esp),	%ebp
159	xorl	     (%ebp,%ebx),%edi
160	movb	%dl,		%bl
161	xorl	0x200(%ebp,%ecx),%edi
162	movb	%dh,		%cl
163	shrl	$16,		%eax
164	xorl	0x100(%ebp,%ebx),%edi
165	movb	%ah,		%bl
166	shrl	$16,		%edx
167	xorl	0x300(%ebp,%ecx),%edi
168	movb	%dh,		%cl
169	andl	$0xff,		%eax
170	andl	$0xff,		%edx
171	movl	0x600(%ebp,%ebx),%ebx
172	xorl	%ebx,		%edi
173	movl	0x700(%ebp,%ecx),%ebx
174	xorl	%ebx,		%edi
175	movl	0x400(%ebp,%eax),%ebx
176	xorl	%ebx,		%edi
177	movl	0x500(%ebp,%edx),%ebx
178	xorl	%ebx,		%edi
179	movl	32(%esp),	%ebp
180
181
182	movl	36(%esp),	%eax
183	movl	%edi,		%edx
184	shrl	$16,		%edx
185	movl	40(%esp),	%ecx
186	xorl	%edi,		%edx
187	andl	%edx,		%eax
188	andl	%ecx,		%edx
189	movl	%eax,		%ebx
190	sall	$16,		%ebx
191	movl	%edx,		%ecx
192	sall	$16,		%ecx
193	xorl	%ebx,		%eax
194	xorl	%ecx,		%edx
195	movl	24(%ebp),	%ebx
196	xorl	%ebx,		%eax
197	movl	28(%ebp),	%ecx
198	xorl	%edi,		%eax
199	xorl	%edi,		%edx
200	xorl	%ecx,		%edx
201	andl	$0xfcfcfcfc,	%eax
202	xorl	%ebx,		%ebx
203	andl	$0xcfcfcfcf,	%edx
204	xorl	%ecx,		%ecx
205	movb	%al,		%bl
206	movb	%ah,		%cl
207	rorl	$4,		%edx
208	movl	4(%esp),	%ebp
209	xorl	     (%ebp,%ebx),%esi
210	movb	%dl,		%bl
211	xorl	0x200(%ebp,%ecx),%esi
212	movb	%dh,		%cl
213	shrl	$16,		%eax
214	xorl	0x100(%ebp,%ebx),%esi
215	movb	%ah,		%bl
216	shrl	$16,		%edx
217	xorl	0x300(%ebp,%ecx),%esi
218	movb	%dh,		%cl
219	andl	$0xff,		%eax
220	andl	$0xff,		%edx
221	movl	0x600(%ebp,%ebx),%ebx
222	xorl	%ebx,		%esi
223	movl	0x700(%ebp,%ecx),%ebx
224	xorl	%ebx,		%esi
225	movl	0x400(%ebp,%eax),%ebx
226	xorl	%ebx,		%esi
227	movl	0x500(%ebp,%edx),%ebx
228	xorl	%ebx,		%esi
229	movl	32(%esp),	%ebp
230
231
232	movl	36(%esp),	%eax
233	movl	%esi,		%edx
234	shrl	$16,		%edx
235	movl	40(%esp),	%ecx
236	xorl	%esi,		%edx
237	andl	%edx,		%eax
238	andl	%ecx,		%edx
239	movl	%eax,		%ebx
240	sall	$16,		%ebx
241	movl	%edx,		%ecx
242	sall	$16,		%ecx
243	xorl	%ebx,		%eax
244	xorl	%ecx,		%edx
245	movl	32(%ebp),	%ebx
246	xorl	%ebx,		%eax
247	movl	36(%ebp),	%ecx
248	xorl	%esi,		%eax
249	xorl	%esi,		%edx
250	xorl	%ecx,		%edx
251	andl	$0xfcfcfcfc,	%eax
252	xorl	%ebx,		%ebx
253	andl	$0xcfcfcfcf,	%edx
254	xorl	%ecx,		%ecx
255	movb	%al,		%bl
256	movb	%ah,		%cl
257	rorl	$4,		%edx
258	movl	4(%esp),	%ebp
259	xorl	     (%ebp,%ebx),%edi
260	movb	%dl,		%bl
261	xorl	0x200(%ebp,%ecx),%edi
262	movb	%dh,		%cl
263	shrl	$16,		%eax
264	xorl	0x100(%ebp,%ebx),%edi
265	movb	%ah,		%bl
266	shrl	$16,		%edx
267	xorl	0x300(%ebp,%ecx),%edi
268	movb	%dh,		%cl
269	andl	$0xff,		%eax
270	andl	$0xff,		%edx
271	movl	0x600(%ebp,%ebx),%ebx
272	xorl	%ebx,		%edi
273	movl	0x700(%ebp,%ecx),%ebx
274	xorl	%ebx,		%edi
275	movl	0x400(%ebp,%eax),%ebx
276	xorl	%ebx,		%edi
277	movl	0x500(%ebp,%edx),%ebx
278	xorl	%ebx,		%edi
279	movl	32(%esp),	%ebp
280
281
282	movl	36(%esp),	%eax
283	movl	%edi,		%edx
284	shrl	$16,		%edx
285	movl	40(%esp),	%ecx
286	xorl	%edi,		%edx
287	andl	%edx,		%eax
288	andl	%ecx,		%edx
289	movl	%eax,		%ebx
290	sall	$16,		%ebx
291	movl	%edx,		%ecx
292	sall	$16,		%ecx
293	xorl	%ebx,		%eax
294	xorl	%ecx,		%edx
295	movl	40(%ebp),	%ebx
296	xorl	%ebx,		%eax
297	movl	44(%ebp),	%ecx
298	xorl	%edi,		%eax
299	xorl	%edi,		%edx
300	xorl	%ecx,		%edx
301	andl	$0xfcfcfcfc,	%eax
302	xorl	%ebx,		%ebx
303	andl	$0xcfcfcfcf,	%edx
304	xorl	%ecx,		%ecx
305	movb	%al,		%bl
306	movb	%ah,		%cl
307	rorl	$4,		%edx
308	movl	4(%esp),	%ebp
309	xorl	     (%ebp,%ebx),%esi
310	movb	%dl,		%bl
311	xorl	0x200(%ebp,%ecx),%esi
312	movb	%dh,		%cl
313	shrl	$16,		%eax
314	xorl	0x100(%ebp,%ebx),%esi
315	movb	%ah,		%bl
316	shrl	$16,		%edx
317	xorl	0x300(%ebp,%ecx),%esi
318	movb	%dh,		%cl
319	andl	$0xff,		%eax
320	andl	$0xff,		%edx
321	movl	0x600(%ebp,%ebx),%ebx
322	xorl	%ebx,		%esi
323	movl	0x700(%ebp,%ecx),%ebx
324	xorl	%ebx,		%esi
325	movl	0x400(%ebp,%eax),%ebx
326	xorl	%ebx,		%esi
327	movl	0x500(%ebp,%edx),%ebx
328	xorl	%ebx,		%esi
329	movl	32(%esp),	%ebp
330
331
332	movl	36(%esp),	%eax
333	movl	%esi,		%edx
334	shrl	$16,		%edx
335	movl	40(%esp),	%ecx
336	xorl	%esi,		%edx
337	andl	%edx,		%eax
338	andl	%ecx,		%edx
339	movl	%eax,		%ebx
340	sall	$16,		%ebx
341	movl	%edx,		%ecx
342	sall	$16,		%ecx
343	xorl	%ebx,		%eax
344	xorl	%ecx,		%edx
345	movl	48(%ebp),	%ebx
346	xorl	%ebx,		%eax
347	movl	52(%ebp),	%ecx
348	xorl	%esi,		%eax
349	xorl	%esi,		%edx
350	xorl	%ecx,		%edx
351	andl	$0xfcfcfcfc,	%eax
352	xorl	%ebx,		%ebx
353	andl	$0xcfcfcfcf,	%edx
354	xorl	%ecx,		%ecx
355	movb	%al,		%bl
356	movb	%ah,		%cl
357	rorl	$4,		%edx
358	movl	4(%esp),	%ebp
359	xorl	     (%ebp,%ebx),%edi
360	movb	%dl,		%bl
361	xorl	0x200(%ebp,%ecx),%edi
362	movb	%dh,		%cl
363	shrl	$16,		%eax
364	xorl	0x100(%ebp,%ebx),%edi
365	movb	%ah,		%bl
366	shrl	$16,		%edx
367	xorl	0x300(%ebp,%ecx),%edi
368	movb	%dh,		%cl
369	andl	$0xff,		%eax
370	andl	$0xff,		%edx
371	movl	0x600(%ebp,%ebx),%ebx
372	xorl	%ebx,		%edi
373	movl	0x700(%ebp,%ecx),%ebx
374	xorl	%ebx,		%edi
375	movl	0x400(%ebp,%eax),%ebx
376	xorl	%ebx,		%edi
377	movl	0x500(%ebp,%edx),%ebx
378	xorl	%ebx,		%edi
379	movl	32(%esp),	%ebp
380
381
382	movl	36(%esp),	%eax
383	movl	%edi,		%edx
384	shrl	$16,		%edx
385	movl	40(%esp),	%ecx
386	xorl	%edi,		%edx
387	andl	%edx,		%eax
388	andl	%ecx,		%edx
389	movl	%eax,		%ebx
390	sall	$16,		%ebx
391	movl	%edx,		%ecx
392	sall	$16,		%ecx
393	xorl	%ebx,		%eax
394	xorl	%ecx,		%edx
395	movl	56(%ebp),	%ebx
396	xorl	%ebx,		%eax
397	movl	60(%ebp),	%ecx
398	xorl	%edi,		%eax
399	xorl	%edi,		%edx
400	xorl	%ecx,		%edx
401	andl	$0xfcfcfcfc,	%eax
402	xorl	%ebx,		%ebx
403	andl	$0xcfcfcfcf,	%edx
404	xorl	%ecx,		%ecx
405	movb	%al,		%bl
406	movb	%ah,		%cl
407	rorl	$4,		%edx
408	movl	4(%esp),	%ebp
409	xorl	     (%ebp,%ebx),%esi
410	movb	%dl,		%bl
411	xorl	0x200(%ebp,%ecx),%esi
412	movb	%dh,		%cl
413	shrl	$16,		%eax
414	xorl	0x100(%ebp,%ebx),%esi
415	movb	%ah,		%bl
416	shrl	$16,		%edx
417	xorl	0x300(%ebp,%ecx),%esi
418	movb	%dh,		%cl
419	andl	$0xff,		%eax
420	andl	$0xff,		%edx
421	movl	0x600(%ebp,%ebx),%ebx
422	xorl	%ebx,		%esi
423	movl	0x700(%ebp,%ecx),%ebx
424	xorl	%ebx,		%esi
425	movl	0x400(%ebp,%eax),%ebx
426	xorl	%ebx,		%esi
427	movl	0x500(%ebp,%edx),%ebx
428	xorl	%ebx,		%esi
429	movl	32(%esp),	%ebp
430
431
432	movl	36(%esp),	%eax
433	movl	%esi,		%edx
434	shrl	$16,		%edx
435	movl	40(%esp),	%ecx
436	xorl	%esi,		%edx
437	andl	%edx,		%eax
438	andl	%ecx,		%edx
439	movl	%eax,		%ebx
440	sall	$16,		%ebx
441	movl	%edx,		%ecx
442	sall	$16,		%ecx
443	xorl	%ebx,		%eax
444	xorl	%ecx,		%edx
445	movl	64(%ebp),	%ebx
446	xorl	%ebx,		%eax
447	movl	68(%ebp),	%ecx
448	xorl	%esi,		%eax
449	xorl	%esi,		%edx
450	xorl	%ecx,		%edx
451	andl	$0xfcfcfcfc,	%eax
452	xorl	%ebx,		%ebx
453	andl	$0xcfcfcfcf,	%edx
454	xorl	%ecx,		%ecx
455	movb	%al,		%bl
456	movb	%ah,		%cl
457	rorl	$4,		%edx
458	movl	4(%esp),	%ebp
459	xorl	     (%ebp,%ebx),%edi
460	movb	%dl,		%bl
461	xorl	0x200(%ebp,%ecx),%edi
462	movb	%dh,		%cl
463	shrl	$16,		%eax
464	xorl	0x100(%ebp,%ebx),%edi
465	movb	%ah,		%bl
466	shrl	$16,		%edx
467	xorl	0x300(%ebp,%ecx),%edi
468	movb	%dh,		%cl
469	andl	$0xff,		%eax
470	andl	$0xff,		%edx
471	movl	0x600(%ebp,%ebx),%ebx
472	xorl	%ebx,		%edi
473	movl	0x700(%ebp,%ecx),%ebx
474	xorl	%ebx,		%edi
475	movl	0x400(%ebp,%eax),%ebx
476	xorl	%ebx,		%edi
477	movl	0x500(%ebp,%edx),%ebx
478	xorl	%ebx,		%edi
479	movl	32(%esp),	%ebp
480
481
482	movl	36(%esp),	%eax
483	movl	%edi,		%edx
484	shrl	$16,		%edx
485	movl	40(%esp),	%ecx
486	xorl	%edi,		%edx
487	andl	%edx,		%eax
488	andl	%ecx,		%edx
489	movl	%eax,		%ebx
490	sall	$16,		%ebx
491	movl	%edx,		%ecx
492	sall	$16,		%ecx
493	xorl	%ebx,		%eax
494	xorl	%ecx,		%edx
495	movl	72(%ebp),	%ebx
496	xorl	%ebx,		%eax
497	movl	76(%ebp),	%ecx
498	xorl	%edi,		%eax
499	xorl	%edi,		%edx
500	xorl	%ecx,		%edx
501	andl	$0xfcfcfcfc,	%eax
502	xorl	%ebx,		%ebx
503	andl	$0xcfcfcfcf,	%edx
504	xorl	%ecx,		%ecx
505	movb	%al,		%bl
506	movb	%ah,		%cl
507	rorl	$4,		%edx
508	movl	4(%esp),	%ebp
509	xorl	     (%ebp,%ebx),%esi
510	movb	%dl,		%bl
511	xorl	0x200(%ebp,%ecx),%esi
512	movb	%dh,		%cl
513	shrl	$16,		%eax
514	xorl	0x100(%ebp,%ebx),%esi
515	movb	%ah,		%bl
516	shrl	$16,		%edx
517	xorl	0x300(%ebp,%ecx),%esi
518	movb	%dh,		%cl
519	andl	$0xff,		%eax
520	andl	$0xff,		%edx
521	movl	0x600(%ebp,%ebx),%ebx
522	xorl	%ebx,		%esi
523	movl	0x700(%ebp,%ecx),%ebx
524	xorl	%ebx,		%esi
525	movl	0x400(%ebp,%eax),%ebx
526	xorl	%ebx,		%esi
527	movl	0x500(%ebp,%edx),%ebx
528	xorl	%ebx,		%esi
529	movl	32(%esp),	%ebp
530
531
532	movl	36(%esp),	%eax
533	movl	%esi,		%edx
534	shrl	$16,		%edx
535	movl	40(%esp),	%ecx
536	xorl	%esi,		%edx
537	andl	%edx,		%eax
538	andl	%ecx,		%edx
539	movl	%eax,		%ebx
540	sall	$16,		%ebx
541	movl	%edx,		%ecx
542	sall	$16,		%ecx
543	xorl	%ebx,		%eax
544	xorl	%ecx,		%edx
545	movl	80(%ebp),	%ebx
546	xorl	%ebx,		%eax
547	movl	84(%ebp),	%ecx
548	xorl	%esi,		%eax
549	xorl	%esi,		%edx
550	xorl	%ecx,		%edx
551	andl	$0xfcfcfcfc,	%eax
552	xorl	%ebx,		%ebx
553	andl	$0xcfcfcfcf,	%edx
554	xorl	%ecx,		%ecx
555	movb	%al,		%bl
556	movb	%ah,		%cl
557	rorl	$4,		%edx
558	movl	4(%esp),	%ebp
559	xorl	     (%ebp,%ebx),%edi
560	movb	%dl,		%bl
561	xorl	0x200(%ebp,%ecx),%edi
562	movb	%dh,		%cl
563	shrl	$16,		%eax
564	xorl	0x100(%ebp,%ebx),%edi
565	movb	%ah,		%bl
566	shrl	$16,		%edx
567	xorl	0x300(%ebp,%ecx),%edi
568	movb	%dh,		%cl
569	andl	$0xff,		%eax
570	andl	$0xff,		%edx
571	movl	0x600(%ebp,%ebx),%ebx
572	xorl	%ebx,		%edi
573	movl	0x700(%ebp,%ecx),%ebx
574	xorl	%ebx,		%edi
575	movl	0x400(%ebp,%eax),%ebx
576	xorl	%ebx,		%edi
577	movl	0x500(%ebp,%edx),%ebx
578	xorl	%ebx,		%edi
579	movl	32(%esp),	%ebp
580
581
582	movl	36(%esp),	%eax
583	movl	%edi,		%edx
584	shrl	$16,		%edx
585	movl	40(%esp),	%ecx
586	xorl	%edi,		%edx
587	andl	%edx,		%eax
588	andl	%ecx,		%edx
589	movl	%eax,		%ebx
590	sall	$16,		%ebx
591	movl	%edx,		%ecx
592	sall	$16,		%ecx
593	xorl	%ebx,		%eax
594	xorl	%ecx,		%edx
595	movl	88(%ebp),	%ebx
596	xorl	%ebx,		%eax
597	movl	92(%ebp),	%ecx
598	xorl	%edi,		%eax
599	xorl	%edi,		%edx
600	xorl	%ecx,		%edx
601	andl	$0xfcfcfcfc,	%eax
602	xorl	%ebx,		%ebx
603	andl	$0xcfcfcfcf,	%edx
604	xorl	%ecx,		%ecx
605	movb	%al,		%bl
606	movb	%ah,		%cl
607	rorl	$4,		%edx
608	movl	4(%esp),	%ebp
609	xorl	     (%ebp,%ebx),%esi
610	movb	%dl,		%bl
611	xorl	0x200(%ebp,%ecx),%esi
612	movb	%dh,		%cl
613	shrl	$16,		%eax
614	xorl	0x100(%ebp,%ebx),%esi
615	movb	%ah,		%bl
616	shrl	$16,		%edx
617	xorl	0x300(%ebp,%ecx),%esi
618	movb	%dh,		%cl
619	andl	$0xff,		%eax
620	andl	$0xff,		%edx
621	movl	0x600(%ebp,%ebx),%ebx
622	xorl	%ebx,		%esi
623	movl	0x700(%ebp,%ecx),%ebx
624	xorl	%ebx,		%esi
625	movl	0x400(%ebp,%eax),%ebx
626	xorl	%ebx,		%esi
627	movl	0x500(%ebp,%edx),%ebx
628	xorl	%ebx,		%esi
629	movl	32(%esp),	%ebp
630
631
632	movl	36(%esp),	%eax
633	movl	%esi,		%edx
634	shrl	$16,		%edx
635	movl	40(%esp),	%ecx
636	xorl	%esi,		%edx
637	andl	%edx,		%eax
638	andl	%ecx,		%edx
639	movl	%eax,		%ebx
640	sall	$16,		%ebx
641	movl	%edx,		%ecx
642	sall	$16,		%ecx
643	xorl	%ebx,		%eax
644	xorl	%ecx,		%edx
645	movl	96(%ebp),	%ebx
646	xorl	%ebx,		%eax
647	movl	100(%ebp),	%ecx
648	xorl	%esi,		%eax
649	xorl	%esi,		%edx
650	xorl	%ecx,		%edx
651	andl	$0xfcfcfcfc,	%eax
652	xorl	%ebx,		%ebx
653	andl	$0xcfcfcfcf,	%edx
654	xorl	%ecx,		%ecx
655	movb	%al,		%bl
656	movb	%ah,		%cl
657	rorl	$4,		%edx
658	movl	4(%esp),	%ebp
659	xorl	     (%ebp,%ebx),%edi
660	movb	%dl,		%bl
661	xorl	0x200(%ebp,%ecx),%edi
662	movb	%dh,		%cl
663	shrl	$16,		%eax
664	xorl	0x100(%ebp,%ebx),%edi
665	movb	%ah,		%bl
666	shrl	$16,		%edx
667	xorl	0x300(%ebp,%ecx),%edi
668	movb	%dh,		%cl
669	andl	$0xff,		%eax
670	andl	$0xff,		%edx
671	movl	0x600(%ebp,%ebx),%ebx
672	xorl	%ebx,		%edi
673	movl	0x700(%ebp,%ecx),%ebx
674	xorl	%ebx,		%edi
675	movl	0x400(%ebp,%eax),%ebx
676	xorl	%ebx,		%edi
677	movl	0x500(%ebp,%edx),%ebx
678	xorl	%ebx,		%edi
679	movl	32(%esp),	%ebp
680
681
682	movl	36(%esp),	%eax
683	movl	%edi,		%edx
684	shrl	$16,		%edx
685	movl	40(%esp),	%ecx
686	xorl	%edi,		%edx
687	andl	%edx,		%eax
688	andl	%ecx,		%edx
689	movl	%eax,		%ebx
690	sall	$16,		%ebx
691	movl	%edx,		%ecx
692	sall	$16,		%ecx
693	xorl	%ebx,		%eax
694	xorl	%ecx,		%edx
695	movl	104(%ebp),	%ebx
696	xorl	%ebx,		%eax
697	movl	108(%ebp),	%ecx
698	xorl	%edi,		%eax
699	xorl	%edi,		%edx
700	xorl	%ecx,		%edx
701	andl	$0xfcfcfcfc,	%eax
702	xorl	%ebx,		%ebx
703	andl	$0xcfcfcfcf,	%edx
704	xorl	%ecx,		%ecx
705	movb	%al,		%bl
706	movb	%ah,		%cl
707	rorl	$4,		%edx
708	movl	4(%esp),	%ebp
709	xorl	     (%ebp,%ebx),%esi
710	movb	%dl,		%bl
711	xorl	0x200(%ebp,%ecx),%esi
712	movb	%dh,		%cl
713	shrl	$16,		%eax
714	xorl	0x100(%ebp,%ebx),%esi
715	movb	%ah,		%bl
716	shrl	$16,		%edx
717	xorl	0x300(%ebp,%ecx),%esi
718	movb	%dh,		%cl
719	andl	$0xff,		%eax
720	andl	$0xff,		%edx
721	movl	0x600(%ebp,%ebx),%ebx
722	xorl	%ebx,		%esi
723	movl	0x700(%ebp,%ecx),%ebx
724	xorl	%ebx,		%esi
725	movl	0x400(%ebp,%eax),%ebx
726	xorl	%ebx,		%esi
727	movl	0x500(%ebp,%edx),%ebx
728	xorl	%ebx,		%esi
729	movl	32(%esp),	%ebp
730
731
732	movl	36(%esp),	%eax
733	movl	%esi,		%edx
734	shrl	$16,		%edx
735	movl	40(%esp),	%ecx
736	xorl	%esi,		%edx
737	andl	%edx,		%eax
738	andl	%ecx,		%edx
739	movl	%eax,		%ebx
740	sall	$16,		%ebx
741	movl	%edx,		%ecx
742	sall	$16,		%ecx
743	xorl	%ebx,		%eax
744	xorl	%ecx,		%edx
745	movl	112(%ebp),	%ebx
746	xorl	%ebx,		%eax
747	movl	116(%ebp),	%ecx
748	xorl	%esi,		%eax
749	xorl	%esi,		%edx
750	xorl	%ecx,		%edx
751	andl	$0xfcfcfcfc,	%eax
752	xorl	%ebx,		%ebx
753	andl	$0xcfcfcfcf,	%edx
754	xorl	%ecx,		%ecx
755	movb	%al,		%bl
756	movb	%ah,		%cl
757	rorl	$4,		%edx
758	movl	4(%esp),	%ebp
759	xorl	     (%ebp,%ebx),%edi
760	movb	%dl,		%bl
761	xorl	0x200(%ebp,%ecx),%edi
762	movb	%dh,		%cl
763	shrl	$16,		%eax
764	xorl	0x100(%ebp,%ebx),%edi
765	movb	%ah,		%bl
766	shrl	$16,		%edx
767	xorl	0x300(%ebp,%ecx),%edi
768	movb	%dh,		%cl
769	andl	$0xff,		%eax
770	andl	$0xff,		%edx
771	movl	0x600(%ebp,%ebx),%ebx
772	xorl	%ebx,		%edi
773	movl	0x700(%ebp,%ecx),%ebx
774	xorl	%ebx,		%edi
775	movl	0x400(%ebp,%eax),%ebx
776	xorl	%ebx,		%edi
777	movl	0x500(%ebp,%edx),%ebx
778	xorl	%ebx,		%edi
779	movl	32(%esp),	%ebp
780
781
782	movl	36(%esp),	%eax
783	movl	%edi,		%edx
784	shrl	$16,		%edx
785	movl	40(%esp),	%ecx
786	xorl	%edi,		%edx
787	andl	%edx,		%eax
788	andl	%ecx,		%edx
789	movl	%eax,		%ebx
790	sall	$16,		%ebx
791	movl	%edx,		%ecx
792	sall	$16,		%ecx
793	xorl	%ebx,		%eax
794	xorl	%ecx,		%edx
795	movl	120(%ebp),	%ebx
796	xorl	%ebx,		%eax
797	movl	124(%ebp),	%ecx
798	xorl	%edi,		%eax
799	xorl	%edi,		%edx
800	xorl	%ecx,		%edx
801	andl	$0xfcfcfcfc,	%eax
802	xorl	%ebx,		%ebx
803	andl	$0xcfcfcfcf,	%edx
804	xorl	%ecx,		%ecx
805	movb	%al,		%bl
806	movb	%ah,		%cl
807	rorl	$4,		%edx
808	movl	4(%esp),	%ebp
809	xorl	     (%ebp,%ebx),%esi
810	movb	%dl,		%bl
811	xorl	0x200(%ebp,%ecx),%esi
812	movb	%dh,		%cl
813	shrl	$16,		%eax
814	xorl	0x100(%ebp,%ebx),%esi
815	movb	%ah,		%bl
816	shrl	$16,		%edx
817	xorl	0x300(%ebp,%ecx),%esi
818	movb	%dh,		%cl
819	andl	$0xff,		%eax
820	andl	$0xff,		%edx
821	movl	0x600(%ebp,%ebx),%ebx
822	xorl	%ebx,		%esi
823	movl	0x700(%ebp,%ecx),%ebx
824	xorl	%ebx,		%esi
825	movl	0x400(%ebp,%eax),%ebx
826	xorl	%ebx,		%esi
827	movl	0x500(%ebp,%edx),%ebx
828	xorl	%ebx,		%esi
829	movl	32(%esp),	%ebp
830	movl	(%esp),		%ebx
831	movl	%edi,		%eax
832	decl	%ebx
833	movl	%esi,		%edi
834	movl	%eax,		%esi
835	movl	%ebx,		(%esp)
836	jnz	.L000start
837
838
839	movl	28(%esp),	%edx
840.byte 209
841.byte 207
842	movl	%esi,		%eax
843	xorl	%edi,		%esi
844	andl	$0xaaaaaaaa,	%esi
845	xorl	%esi,		%eax
846	xorl	%esi,		%edi
847
848	roll	$23,		%eax
849	movl	%eax,		%esi
850	xorl	%edi,		%eax
851	andl	$0x03fc03fc,	%eax
852	xorl	%eax,		%esi
853	xorl	%eax,		%edi
854
855	roll	$10,		%esi
856	movl	%esi,		%eax
857	xorl	%edi,		%esi
858	andl	$0x33333333,	%esi
859	xorl	%esi,		%eax
860	xorl	%esi,		%edi
861
862	roll	$18,		%edi
863	movl	%edi,		%esi
864	xorl	%eax,		%edi
865	andl	$0xfff0000f,	%edi
866	xorl	%edi,		%esi
867	xorl	%edi,		%eax
868
869	roll	$12,		%esi
870	movl	%esi,		%edi
871	xorl	%eax,		%esi
872	andl	$0xf0f0f0f0,	%esi
873	xorl	%esi,		%edi
874	xorl	%esi,		%eax
875
876	rorl	$4,		%eax
877	movl	%eax,		(%edx)
878	movl	%edi,		4(%edx)
879	addl	$8,		%esp
880	popl	%edi
881	popl	%esi
882	popl	%ebx
883	popl	%ebp
884	ret
885.L_fcrypt_body_end:
886	.size	fcrypt_body,.L_fcrypt_body_end-fcrypt_body
887.ident	"fcrypt_body"
888