xref: /freebsd/sys/crypto/openssl/i386/md5-586.S (revision 4b9d6057)
1/* Do not modify. This file is auto-generated from md5-586.pl. */
2#ifdef PIC
3.text
4.globl	ossl_md5_block_asm_data_order
5.type	ossl_md5_block_asm_data_order,@function
6.align	16
7ossl_md5_block_asm_data_order:
8.L_ossl_md5_block_asm_data_order_begin:
9	#ifdef __CET__
10
11.byte	243,15,30,251
12	#endif
13
14	pushl	%esi
15	pushl	%edi
16	movl	12(%esp),%edi
17	movl	16(%esp),%esi
18	movl	20(%esp),%ecx
19	pushl	%ebp
20	shll	$6,%ecx
21	pushl	%ebx
22	addl	%esi,%ecx
23	subl	$64,%ecx
24	movl	(%edi),%eax
25	pushl	%ecx
26	movl	4(%edi),%ebx
27	movl	8(%edi),%ecx
28	movl	12(%edi),%edx
29.L000start:
30
31
32	movl	%ecx,%edi
33	movl	(%esi),%ebp
34
35	xorl	%edx,%edi
36	andl	%ebx,%edi
37	leal	3614090360(%eax,%ebp,1),%eax
38	xorl	%edx,%edi
39	movl	4(%esi),%ebp
40	addl	%edi,%eax
41	roll	$7,%eax
42	movl	%ebx,%edi
43	addl	%ebx,%eax
44
45	xorl	%ecx,%edi
46	andl	%eax,%edi
47	leal	3905402710(%edx,%ebp,1),%edx
48	xorl	%ecx,%edi
49	movl	8(%esi),%ebp
50	addl	%edi,%edx
51	roll	$12,%edx
52	movl	%eax,%edi
53	addl	%eax,%edx
54
55	xorl	%ebx,%edi
56	andl	%edx,%edi
57	leal	606105819(%ecx,%ebp,1),%ecx
58	xorl	%ebx,%edi
59	movl	12(%esi),%ebp
60	addl	%edi,%ecx
61	roll	$17,%ecx
62	movl	%edx,%edi
63	addl	%edx,%ecx
64
65	xorl	%eax,%edi
66	andl	%ecx,%edi
67	leal	3250441966(%ebx,%ebp,1),%ebx
68	xorl	%eax,%edi
69	movl	16(%esi),%ebp
70	addl	%edi,%ebx
71	roll	$22,%ebx
72	movl	%ecx,%edi
73	addl	%ecx,%ebx
74
75	xorl	%edx,%edi
76	andl	%ebx,%edi
77	leal	4118548399(%eax,%ebp,1),%eax
78	xorl	%edx,%edi
79	movl	20(%esi),%ebp
80	addl	%edi,%eax
81	roll	$7,%eax
82	movl	%ebx,%edi
83	addl	%ebx,%eax
84
85	xorl	%ecx,%edi
86	andl	%eax,%edi
87	leal	1200080426(%edx,%ebp,1),%edx
88	xorl	%ecx,%edi
89	movl	24(%esi),%ebp
90	addl	%edi,%edx
91	roll	$12,%edx
92	movl	%eax,%edi
93	addl	%eax,%edx
94
95	xorl	%ebx,%edi
96	andl	%edx,%edi
97	leal	2821735955(%ecx,%ebp,1),%ecx
98	xorl	%ebx,%edi
99	movl	28(%esi),%ebp
100	addl	%edi,%ecx
101	roll	$17,%ecx
102	movl	%edx,%edi
103	addl	%edx,%ecx
104
105	xorl	%eax,%edi
106	andl	%ecx,%edi
107	leal	4249261313(%ebx,%ebp,1),%ebx
108	xorl	%eax,%edi
109	movl	32(%esi),%ebp
110	addl	%edi,%ebx
111	roll	$22,%ebx
112	movl	%ecx,%edi
113	addl	%ecx,%ebx
114
115	xorl	%edx,%edi
116	andl	%ebx,%edi
117	leal	1770035416(%eax,%ebp,1),%eax
118	xorl	%edx,%edi
119	movl	36(%esi),%ebp
120	addl	%edi,%eax
121	roll	$7,%eax
122	movl	%ebx,%edi
123	addl	%ebx,%eax
124
125	xorl	%ecx,%edi
126	andl	%eax,%edi
127	leal	2336552879(%edx,%ebp,1),%edx
128	xorl	%ecx,%edi
129	movl	40(%esi),%ebp
130	addl	%edi,%edx
131	roll	$12,%edx
132	movl	%eax,%edi
133	addl	%eax,%edx
134
135	xorl	%ebx,%edi
136	andl	%edx,%edi
137	leal	4294925233(%ecx,%ebp,1),%ecx
138	xorl	%ebx,%edi
139	movl	44(%esi),%ebp
140	addl	%edi,%ecx
141	roll	$17,%ecx
142	movl	%edx,%edi
143	addl	%edx,%ecx
144
145	xorl	%eax,%edi
146	andl	%ecx,%edi
147	leal	2304563134(%ebx,%ebp,1),%ebx
148	xorl	%eax,%edi
149	movl	48(%esi),%ebp
150	addl	%edi,%ebx
151	roll	$22,%ebx
152	movl	%ecx,%edi
153	addl	%ecx,%ebx
154
155	xorl	%edx,%edi
156	andl	%ebx,%edi
157	leal	1804603682(%eax,%ebp,1),%eax
158	xorl	%edx,%edi
159	movl	52(%esi),%ebp
160	addl	%edi,%eax
161	roll	$7,%eax
162	movl	%ebx,%edi
163	addl	%ebx,%eax
164
165	xorl	%ecx,%edi
166	andl	%eax,%edi
167	leal	4254626195(%edx,%ebp,1),%edx
168	xorl	%ecx,%edi
169	movl	56(%esi),%ebp
170	addl	%edi,%edx
171	roll	$12,%edx
172	movl	%eax,%edi
173	addl	%eax,%edx
174
175	xorl	%ebx,%edi
176	andl	%edx,%edi
177	leal	2792965006(%ecx,%ebp,1),%ecx
178	xorl	%ebx,%edi
179	movl	60(%esi),%ebp
180	addl	%edi,%ecx
181	roll	$17,%ecx
182	movl	%edx,%edi
183	addl	%edx,%ecx
184
185	xorl	%eax,%edi
186	andl	%ecx,%edi
187	leal	1236535329(%ebx,%ebp,1),%ebx
188	xorl	%eax,%edi
189	movl	4(%esi),%ebp
190	addl	%edi,%ebx
191	roll	$22,%ebx
192	movl	%ecx,%edi
193	addl	%ecx,%ebx
194
195
196
197	xorl	%ebx,%edi
198	andl	%edx,%edi
199	leal	4129170786(%eax,%ebp,1),%eax
200	xorl	%ecx,%edi
201	movl	24(%esi),%ebp
202	addl	%edi,%eax
203	movl	%ebx,%edi
204	roll	$5,%eax
205	addl	%ebx,%eax
206
207	xorl	%eax,%edi
208	andl	%ecx,%edi
209	leal	3225465664(%edx,%ebp,1),%edx
210	xorl	%ebx,%edi
211	movl	44(%esi),%ebp
212	addl	%edi,%edx
213	movl	%eax,%edi
214	roll	$9,%edx
215	addl	%eax,%edx
216
217	xorl	%edx,%edi
218	andl	%ebx,%edi
219	leal	643717713(%ecx,%ebp,1),%ecx
220	xorl	%eax,%edi
221	movl	(%esi),%ebp
222	addl	%edi,%ecx
223	movl	%edx,%edi
224	roll	$14,%ecx
225	addl	%edx,%ecx
226
227	xorl	%ecx,%edi
228	andl	%eax,%edi
229	leal	3921069994(%ebx,%ebp,1),%ebx
230	xorl	%edx,%edi
231	movl	20(%esi),%ebp
232	addl	%edi,%ebx
233	movl	%ecx,%edi
234	roll	$20,%ebx
235	addl	%ecx,%ebx
236
237	xorl	%ebx,%edi
238	andl	%edx,%edi
239	leal	3593408605(%eax,%ebp,1),%eax
240	xorl	%ecx,%edi
241	movl	40(%esi),%ebp
242	addl	%edi,%eax
243	movl	%ebx,%edi
244	roll	$5,%eax
245	addl	%ebx,%eax
246
247	xorl	%eax,%edi
248	andl	%ecx,%edi
249	leal	38016083(%edx,%ebp,1),%edx
250	xorl	%ebx,%edi
251	movl	60(%esi),%ebp
252	addl	%edi,%edx
253	movl	%eax,%edi
254	roll	$9,%edx
255	addl	%eax,%edx
256
257	xorl	%edx,%edi
258	andl	%ebx,%edi
259	leal	3634488961(%ecx,%ebp,1),%ecx
260	xorl	%eax,%edi
261	movl	16(%esi),%ebp
262	addl	%edi,%ecx
263	movl	%edx,%edi
264	roll	$14,%ecx
265	addl	%edx,%ecx
266
267	xorl	%ecx,%edi
268	andl	%eax,%edi
269	leal	3889429448(%ebx,%ebp,1),%ebx
270	xorl	%edx,%edi
271	movl	36(%esi),%ebp
272	addl	%edi,%ebx
273	movl	%ecx,%edi
274	roll	$20,%ebx
275	addl	%ecx,%ebx
276
277	xorl	%ebx,%edi
278	andl	%edx,%edi
279	leal	568446438(%eax,%ebp,1),%eax
280	xorl	%ecx,%edi
281	movl	56(%esi),%ebp
282	addl	%edi,%eax
283	movl	%ebx,%edi
284	roll	$5,%eax
285	addl	%ebx,%eax
286
287	xorl	%eax,%edi
288	andl	%ecx,%edi
289	leal	3275163606(%edx,%ebp,1),%edx
290	xorl	%ebx,%edi
291	movl	12(%esi),%ebp
292	addl	%edi,%edx
293	movl	%eax,%edi
294	roll	$9,%edx
295	addl	%eax,%edx
296
297	xorl	%edx,%edi
298	andl	%ebx,%edi
299	leal	4107603335(%ecx,%ebp,1),%ecx
300	xorl	%eax,%edi
301	movl	32(%esi),%ebp
302	addl	%edi,%ecx
303	movl	%edx,%edi
304	roll	$14,%ecx
305	addl	%edx,%ecx
306
307	xorl	%ecx,%edi
308	andl	%eax,%edi
309	leal	1163531501(%ebx,%ebp,1),%ebx
310	xorl	%edx,%edi
311	movl	52(%esi),%ebp
312	addl	%edi,%ebx
313	movl	%ecx,%edi
314	roll	$20,%ebx
315	addl	%ecx,%ebx
316
317	xorl	%ebx,%edi
318	andl	%edx,%edi
319	leal	2850285829(%eax,%ebp,1),%eax
320	xorl	%ecx,%edi
321	movl	8(%esi),%ebp
322	addl	%edi,%eax
323	movl	%ebx,%edi
324	roll	$5,%eax
325	addl	%ebx,%eax
326
327	xorl	%eax,%edi
328	andl	%ecx,%edi
329	leal	4243563512(%edx,%ebp,1),%edx
330	xorl	%ebx,%edi
331	movl	28(%esi),%ebp
332	addl	%edi,%edx
333	movl	%eax,%edi
334	roll	$9,%edx
335	addl	%eax,%edx
336
337	xorl	%edx,%edi
338	andl	%ebx,%edi
339	leal	1735328473(%ecx,%ebp,1),%ecx
340	xorl	%eax,%edi
341	movl	48(%esi),%ebp
342	addl	%edi,%ecx
343	movl	%edx,%edi
344	roll	$14,%ecx
345	addl	%edx,%ecx
346
347	xorl	%ecx,%edi
348	andl	%eax,%edi
349	leal	2368359562(%ebx,%ebp,1),%ebx
350	xorl	%edx,%edi
351	movl	20(%esi),%ebp
352	addl	%edi,%ebx
353	movl	%ecx,%edi
354	roll	$20,%ebx
355	addl	%ecx,%ebx
356
357
358
359	xorl	%edx,%edi
360	xorl	%ebx,%edi
361	leal	4294588738(%eax,%ebp,1),%eax
362	addl	%edi,%eax
363	movl	32(%esi),%ebp
364	roll	$4,%eax
365	movl	%ebx,%edi
366
367	addl	%ebx,%eax
368	xorl	%ecx,%edi
369	leal	2272392833(%edx,%ebp,1),%edx
370	xorl	%eax,%edi
371	movl	44(%esi),%ebp
372	addl	%edi,%edx
373	movl	%eax,%edi
374	roll	$11,%edx
375	addl	%eax,%edx
376
377	xorl	%ebx,%edi
378	xorl	%edx,%edi
379	leal	1839030562(%ecx,%ebp,1),%ecx
380	addl	%edi,%ecx
381	movl	56(%esi),%ebp
382	roll	$16,%ecx
383	movl	%edx,%edi
384
385	addl	%edx,%ecx
386	xorl	%eax,%edi
387	leal	4259657740(%ebx,%ebp,1),%ebx
388	xorl	%ecx,%edi
389	movl	4(%esi),%ebp
390	addl	%edi,%ebx
391	movl	%ecx,%edi
392	roll	$23,%ebx
393	addl	%ecx,%ebx
394
395	xorl	%edx,%edi
396	xorl	%ebx,%edi
397	leal	2763975236(%eax,%ebp,1),%eax
398	addl	%edi,%eax
399	movl	16(%esi),%ebp
400	roll	$4,%eax
401	movl	%ebx,%edi
402
403	addl	%ebx,%eax
404	xorl	%ecx,%edi
405	leal	1272893353(%edx,%ebp,1),%edx
406	xorl	%eax,%edi
407	movl	28(%esi),%ebp
408	addl	%edi,%edx
409	movl	%eax,%edi
410	roll	$11,%edx
411	addl	%eax,%edx
412
413	xorl	%ebx,%edi
414	xorl	%edx,%edi
415	leal	4139469664(%ecx,%ebp,1),%ecx
416	addl	%edi,%ecx
417	movl	40(%esi),%ebp
418	roll	$16,%ecx
419	movl	%edx,%edi
420
421	addl	%edx,%ecx
422	xorl	%eax,%edi
423	leal	3200236656(%ebx,%ebp,1),%ebx
424	xorl	%ecx,%edi
425	movl	52(%esi),%ebp
426	addl	%edi,%ebx
427	movl	%ecx,%edi
428	roll	$23,%ebx
429	addl	%ecx,%ebx
430
431	xorl	%edx,%edi
432	xorl	%ebx,%edi
433	leal	681279174(%eax,%ebp,1),%eax
434	addl	%edi,%eax
435	movl	(%esi),%ebp
436	roll	$4,%eax
437	movl	%ebx,%edi
438
439	addl	%ebx,%eax
440	xorl	%ecx,%edi
441	leal	3936430074(%edx,%ebp,1),%edx
442	xorl	%eax,%edi
443	movl	12(%esi),%ebp
444	addl	%edi,%edx
445	movl	%eax,%edi
446	roll	$11,%edx
447	addl	%eax,%edx
448
449	xorl	%ebx,%edi
450	xorl	%edx,%edi
451	leal	3572445317(%ecx,%ebp,1),%ecx
452	addl	%edi,%ecx
453	movl	24(%esi),%ebp
454	roll	$16,%ecx
455	movl	%edx,%edi
456
457	addl	%edx,%ecx
458	xorl	%eax,%edi
459	leal	76029189(%ebx,%ebp,1),%ebx
460	xorl	%ecx,%edi
461	movl	36(%esi),%ebp
462	addl	%edi,%ebx
463	movl	%ecx,%edi
464	roll	$23,%ebx
465	addl	%ecx,%ebx
466
467	xorl	%edx,%edi
468	xorl	%ebx,%edi
469	leal	3654602809(%eax,%ebp,1),%eax
470	addl	%edi,%eax
471	movl	48(%esi),%ebp
472	roll	$4,%eax
473	movl	%ebx,%edi
474
475	addl	%ebx,%eax
476	xorl	%ecx,%edi
477	leal	3873151461(%edx,%ebp,1),%edx
478	xorl	%eax,%edi
479	movl	60(%esi),%ebp
480	addl	%edi,%edx
481	movl	%eax,%edi
482	roll	$11,%edx
483	addl	%eax,%edx
484
485	xorl	%ebx,%edi
486	xorl	%edx,%edi
487	leal	530742520(%ecx,%ebp,1),%ecx
488	addl	%edi,%ecx
489	movl	8(%esi),%ebp
490	roll	$16,%ecx
491	movl	%edx,%edi
492
493	addl	%edx,%ecx
494	xorl	%eax,%edi
495	leal	3299628645(%ebx,%ebp,1),%ebx
496	xorl	%ecx,%edi
497	movl	(%esi),%ebp
498	addl	%edi,%ebx
499	movl	$-1,%edi
500	roll	$23,%ebx
501	addl	%ecx,%ebx
502
503
504
505	xorl	%edx,%edi
506	orl	%ebx,%edi
507	leal	4096336452(%eax,%ebp,1),%eax
508	xorl	%ecx,%edi
509	movl	28(%esi),%ebp
510	addl	%edi,%eax
511	movl	$-1,%edi
512	roll	$6,%eax
513	xorl	%ecx,%edi
514	addl	%ebx,%eax
515
516	orl	%eax,%edi
517	leal	1126891415(%edx,%ebp,1),%edx
518	xorl	%ebx,%edi
519	movl	56(%esi),%ebp
520	addl	%edi,%edx
521	movl	$-1,%edi
522	roll	$10,%edx
523	xorl	%ebx,%edi
524	addl	%eax,%edx
525
526	orl	%edx,%edi
527	leal	2878612391(%ecx,%ebp,1),%ecx
528	xorl	%eax,%edi
529	movl	20(%esi),%ebp
530	addl	%edi,%ecx
531	movl	$-1,%edi
532	roll	$15,%ecx
533	xorl	%eax,%edi
534	addl	%edx,%ecx
535
536	orl	%ecx,%edi
537	leal	4237533241(%ebx,%ebp,1),%ebx
538	xorl	%edx,%edi
539	movl	48(%esi),%ebp
540	addl	%edi,%ebx
541	movl	$-1,%edi
542	roll	$21,%ebx
543	xorl	%edx,%edi
544	addl	%ecx,%ebx
545
546	orl	%ebx,%edi
547	leal	1700485571(%eax,%ebp,1),%eax
548	xorl	%ecx,%edi
549	movl	12(%esi),%ebp
550	addl	%edi,%eax
551	movl	$-1,%edi
552	roll	$6,%eax
553	xorl	%ecx,%edi
554	addl	%ebx,%eax
555
556	orl	%eax,%edi
557	leal	2399980690(%edx,%ebp,1),%edx
558	xorl	%ebx,%edi
559	movl	40(%esi),%ebp
560	addl	%edi,%edx
561	movl	$-1,%edi
562	roll	$10,%edx
563	xorl	%ebx,%edi
564	addl	%eax,%edx
565
566	orl	%edx,%edi
567	leal	4293915773(%ecx,%ebp,1),%ecx
568	xorl	%eax,%edi
569	movl	4(%esi),%ebp
570	addl	%edi,%ecx
571	movl	$-1,%edi
572	roll	$15,%ecx
573	xorl	%eax,%edi
574	addl	%edx,%ecx
575
576	orl	%ecx,%edi
577	leal	2240044497(%ebx,%ebp,1),%ebx
578	xorl	%edx,%edi
579	movl	32(%esi),%ebp
580	addl	%edi,%ebx
581	movl	$-1,%edi
582	roll	$21,%ebx
583	xorl	%edx,%edi
584	addl	%ecx,%ebx
585
586	orl	%ebx,%edi
587	leal	1873313359(%eax,%ebp,1),%eax
588	xorl	%ecx,%edi
589	movl	60(%esi),%ebp
590	addl	%edi,%eax
591	movl	$-1,%edi
592	roll	$6,%eax
593	xorl	%ecx,%edi
594	addl	%ebx,%eax
595
596	orl	%eax,%edi
597	leal	4264355552(%edx,%ebp,1),%edx
598	xorl	%ebx,%edi
599	movl	24(%esi),%ebp
600	addl	%edi,%edx
601	movl	$-1,%edi
602	roll	$10,%edx
603	xorl	%ebx,%edi
604	addl	%eax,%edx
605
606	orl	%edx,%edi
607	leal	2734768916(%ecx,%ebp,1),%ecx
608	xorl	%eax,%edi
609	movl	52(%esi),%ebp
610	addl	%edi,%ecx
611	movl	$-1,%edi
612	roll	$15,%ecx
613	xorl	%eax,%edi
614	addl	%edx,%ecx
615
616	orl	%ecx,%edi
617	leal	1309151649(%ebx,%ebp,1),%ebx
618	xorl	%edx,%edi
619	movl	16(%esi),%ebp
620	addl	%edi,%ebx
621	movl	$-1,%edi
622	roll	$21,%ebx
623	xorl	%edx,%edi
624	addl	%ecx,%ebx
625
626	orl	%ebx,%edi
627	leal	4149444226(%eax,%ebp,1),%eax
628	xorl	%ecx,%edi
629	movl	44(%esi),%ebp
630	addl	%edi,%eax
631	movl	$-1,%edi
632	roll	$6,%eax
633	xorl	%ecx,%edi
634	addl	%ebx,%eax
635
636	orl	%eax,%edi
637	leal	3174756917(%edx,%ebp,1),%edx
638	xorl	%ebx,%edi
639	movl	8(%esi),%ebp
640	addl	%edi,%edx
641	movl	$-1,%edi
642	roll	$10,%edx
643	xorl	%ebx,%edi
644	addl	%eax,%edx
645
646	orl	%edx,%edi
647	leal	718787259(%ecx,%ebp,1),%ecx
648	xorl	%eax,%edi
649	movl	36(%esi),%ebp
650	addl	%edi,%ecx
651	movl	$-1,%edi
652	roll	$15,%ecx
653	xorl	%eax,%edi
654	addl	%edx,%ecx
655
656	orl	%ecx,%edi
657	leal	3951481745(%ebx,%ebp,1),%ebx
658	xorl	%edx,%edi
659	movl	24(%esp),%ebp
660	addl	%edi,%ebx
661	addl	$64,%esi
662	roll	$21,%ebx
663	movl	(%ebp),%edi
664	addl	%ecx,%ebx
665	addl	%edi,%eax
666	movl	4(%ebp),%edi
667	addl	%edi,%ebx
668	movl	8(%ebp),%edi
669	addl	%edi,%ecx
670	movl	12(%ebp),%edi
671	addl	%edi,%edx
672	movl	%eax,(%ebp)
673	movl	%ebx,4(%ebp)
674	movl	(%esp),%edi
675	movl	%ecx,8(%ebp)
676	movl	%edx,12(%ebp)
677	cmpl	%esi,%edi
678	jae	.L000start
679	popl	%eax
680	popl	%ebx
681	popl	%ebp
682	popl	%edi
683	popl	%esi
684	ret
685.size	ossl_md5_block_asm_data_order,.-.L_ossl_md5_block_asm_data_order_begin
686
687	.section ".note.gnu.property", "a"
688	.p2align 2
689	.long 1f - 0f
690	.long 4f - 1f
691	.long 5
6920:
693	.asciz "GNU"
6941:
695	.p2align 2
696	.long 0xc0000002
697	.long 3f - 2f
6982:
699	.long 3
7003:
701	.p2align 2
7024:
703#else
704.text
705.globl	ossl_md5_block_asm_data_order
706.type	ossl_md5_block_asm_data_order,@function
707.align	16
708ossl_md5_block_asm_data_order:
709.L_ossl_md5_block_asm_data_order_begin:
710	#ifdef __CET__
711
712.byte	243,15,30,251
713	#endif
714
715	pushl	%esi
716	pushl	%edi
717	movl	12(%esp),%edi
718	movl	16(%esp),%esi
719	movl	20(%esp),%ecx
720	pushl	%ebp
721	shll	$6,%ecx
722	pushl	%ebx
723	addl	%esi,%ecx
724	subl	$64,%ecx
725	movl	(%edi),%eax
726	pushl	%ecx
727	movl	4(%edi),%ebx
728	movl	8(%edi),%ecx
729	movl	12(%edi),%edx
730.L000start:
731
732
733	movl	%ecx,%edi
734	movl	(%esi),%ebp
735
736	xorl	%edx,%edi
737	andl	%ebx,%edi
738	leal	3614090360(%eax,%ebp,1),%eax
739	xorl	%edx,%edi
740	movl	4(%esi),%ebp
741	addl	%edi,%eax
742	roll	$7,%eax
743	movl	%ebx,%edi
744	addl	%ebx,%eax
745
746	xorl	%ecx,%edi
747	andl	%eax,%edi
748	leal	3905402710(%edx,%ebp,1),%edx
749	xorl	%ecx,%edi
750	movl	8(%esi),%ebp
751	addl	%edi,%edx
752	roll	$12,%edx
753	movl	%eax,%edi
754	addl	%eax,%edx
755
756	xorl	%ebx,%edi
757	andl	%edx,%edi
758	leal	606105819(%ecx,%ebp,1),%ecx
759	xorl	%ebx,%edi
760	movl	12(%esi),%ebp
761	addl	%edi,%ecx
762	roll	$17,%ecx
763	movl	%edx,%edi
764	addl	%edx,%ecx
765
766	xorl	%eax,%edi
767	andl	%ecx,%edi
768	leal	3250441966(%ebx,%ebp,1),%ebx
769	xorl	%eax,%edi
770	movl	16(%esi),%ebp
771	addl	%edi,%ebx
772	roll	$22,%ebx
773	movl	%ecx,%edi
774	addl	%ecx,%ebx
775
776	xorl	%edx,%edi
777	andl	%ebx,%edi
778	leal	4118548399(%eax,%ebp,1),%eax
779	xorl	%edx,%edi
780	movl	20(%esi),%ebp
781	addl	%edi,%eax
782	roll	$7,%eax
783	movl	%ebx,%edi
784	addl	%ebx,%eax
785
786	xorl	%ecx,%edi
787	andl	%eax,%edi
788	leal	1200080426(%edx,%ebp,1),%edx
789	xorl	%ecx,%edi
790	movl	24(%esi),%ebp
791	addl	%edi,%edx
792	roll	$12,%edx
793	movl	%eax,%edi
794	addl	%eax,%edx
795
796	xorl	%ebx,%edi
797	andl	%edx,%edi
798	leal	2821735955(%ecx,%ebp,1),%ecx
799	xorl	%ebx,%edi
800	movl	28(%esi),%ebp
801	addl	%edi,%ecx
802	roll	$17,%ecx
803	movl	%edx,%edi
804	addl	%edx,%ecx
805
806	xorl	%eax,%edi
807	andl	%ecx,%edi
808	leal	4249261313(%ebx,%ebp,1),%ebx
809	xorl	%eax,%edi
810	movl	32(%esi),%ebp
811	addl	%edi,%ebx
812	roll	$22,%ebx
813	movl	%ecx,%edi
814	addl	%ecx,%ebx
815
816	xorl	%edx,%edi
817	andl	%ebx,%edi
818	leal	1770035416(%eax,%ebp,1),%eax
819	xorl	%edx,%edi
820	movl	36(%esi),%ebp
821	addl	%edi,%eax
822	roll	$7,%eax
823	movl	%ebx,%edi
824	addl	%ebx,%eax
825
826	xorl	%ecx,%edi
827	andl	%eax,%edi
828	leal	2336552879(%edx,%ebp,1),%edx
829	xorl	%ecx,%edi
830	movl	40(%esi),%ebp
831	addl	%edi,%edx
832	roll	$12,%edx
833	movl	%eax,%edi
834	addl	%eax,%edx
835
836	xorl	%ebx,%edi
837	andl	%edx,%edi
838	leal	4294925233(%ecx,%ebp,1),%ecx
839	xorl	%ebx,%edi
840	movl	44(%esi),%ebp
841	addl	%edi,%ecx
842	roll	$17,%ecx
843	movl	%edx,%edi
844	addl	%edx,%ecx
845
846	xorl	%eax,%edi
847	andl	%ecx,%edi
848	leal	2304563134(%ebx,%ebp,1),%ebx
849	xorl	%eax,%edi
850	movl	48(%esi),%ebp
851	addl	%edi,%ebx
852	roll	$22,%ebx
853	movl	%ecx,%edi
854	addl	%ecx,%ebx
855
856	xorl	%edx,%edi
857	andl	%ebx,%edi
858	leal	1804603682(%eax,%ebp,1),%eax
859	xorl	%edx,%edi
860	movl	52(%esi),%ebp
861	addl	%edi,%eax
862	roll	$7,%eax
863	movl	%ebx,%edi
864	addl	%ebx,%eax
865
866	xorl	%ecx,%edi
867	andl	%eax,%edi
868	leal	4254626195(%edx,%ebp,1),%edx
869	xorl	%ecx,%edi
870	movl	56(%esi),%ebp
871	addl	%edi,%edx
872	roll	$12,%edx
873	movl	%eax,%edi
874	addl	%eax,%edx
875
876	xorl	%ebx,%edi
877	andl	%edx,%edi
878	leal	2792965006(%ecx,%ebp,1),%ecx
879	xorl	%ebx,%edi
880	movl	60(%esi),%ebp
881	addl	%edi,%ecx
882	roll	$17,%ecx
883	movl	%edx,%edi
884	addl	%edx,%ecx
885
886	xorl	%eax,%edi
887	andl	%ecx,%edi
888	leal	1236535329(%ebx,%ebp,1),%ebx
889	xorl	%eax,%edi
890	movl	4(%esi),%ebp
891	addl	%edi,%ebx
892	roll	$22,%ebx
893	movl	%ecx,%edi
894	addl	%ecx,%ebx
895
896
897
898	xorl	%ebx,%edi
899	andl	%edx,%edi
900	leal	4129170786(%eax,%ebp,1),%eax
901	xorl	%ecx,%edi
902	movl	24(%esi),%ebp
903	addl	%edi,%eax
904	movl	%ebx,%edi
905	roll	$5,%eax
906	addl	%ebx,%eax
907
908	xorl	%eax,%edi
909	andl	%ecx,%edi
910	leal	3225465664(%edx,%ebp,1),%edx
911	xorl	%ebx,%edi
912	movl	44(%esi),%ebp
913	addl	%edi,%edx
914	movl	%eax,%edi
915	roll	$9,%edx
916	addl	%eax,%edx
917
918	xorl	%edx,%edi
919	andl	%ebx,%edi
920	leal	643717713(%ecx,%ebp,1),%ecx
921	xorl	%eax,%edi
922	movl	(%esi),%ebp
923	addl	%edi,%ecx
924	movl	%edx,%edi
925	roll	$14,%ecx
926	addl	%edx,%ecx
927
928	xorl	%ecx,%edi
929	andl	%eax,%edi
930	leal	3921069994(%ebx,%ebp,1),%ebx
931	xorl	%edx,%edi
932	movl	20(%esi),%ebp
933	addl	%edi,%ebx
934	movl	%ecx,%edi
935	roll	$20,%ebx
936	addl	%ecx,%ebx
937
938	xorl	%ebx,%edi
939	andl	%edx,%edi
940	leal	3593408605(%eax,%ebp,1),%eax
941	xorl	%ecx,%edi
942	movl	40(%esi),%ebp
943	addl	%edi,%eax
944	movl	%ebx,%edi
945	roll	$5,%eax
946	addl	%ebx,%eax
947
948	xorl	%eax,%edi
949	andl	%ecx,%edi
950	leal	38016083(%edx,%ebp,1),%edx
951	xorl	%ebx,%edi
952	movl	60(%esi),%ebp
953	addl	%edi,%edx
954	movl	%eax,%edi
955	roll	$9,%edx
956	addl	%eax,%edx
957
958	xorl	%edx,%edi
959	andl	%ebx,%edi
960	leal	3634488961(%ecx,%ebp,1),%ecx
961	xorl	%eax,%edi
962	movl	16(%esi),%ebp
963	addl	%edi,%ecx
964	movl	%edx,%edi
965	roll	$14,%ecx
966	addl	%edx,%ecx
967
968	xorl	%ecx,%edi
969	andl	%eax,%edi
970	leal	3889429448(%ebx,%ebp,1),%ebx
971	xorl	%edx,%edi
972	movl	36(%esi),%ebp
973	addl	%edi,%ebx
974	movl	%ecx,%edi
975	roll	$20,%ebx
976	addl	%ecx,%ebx
977
978	xorl	%ebx,%edi
979	andl	%edx,%edi
980	leal	568446438(%eax,%ebp,1),%eax
981	xorl	%ecx,%edi
982	movl	56(%esi),%ebp
983	addl	%edi,%eax
984	movl	%ebx,%edi
985	roll	$5,%eax
986	addl	%ebx,%eax
987
988	xorl	%eax,%edi
989	andl	%ecx,%edi
990	leal	3275163606(%edx,%ebp,1),%edx
991	xorl	%ebx,%edi
992	movl	12(%esi),%ebp
993	addl	%edi,%edx
994	movl	%eax,%edi
995	roll	$9,%edx
996	addl	%eax,%edx
997
998	xorl	%edx,%edi
999	andl	%ebx,%edi
1000	leal	4107603335(%ecx,%ebp,1),%ecx
1001	xorl	%eax,%edi
1002	movl	32(%esi),%ebp
1003	addl	%edi,%ecx
1004	movl	%edx,%edi
1005	roll	$14,%ecx
1006	addl	%edx,%ecx
1007
1008	xorl	%ecx,%edi
1009	andl	%eax,%edi
1010	leal	1163531501(%ebx,%ebp,1),%ebx
1011	xorl	%edx,%edi
1012	movl	52(%esi),%ebp
1013	addl	%edi,%ebx
1014	movl	%ecx,%edi
1015	roll	$20,%ebx
1016	addl	%ecx,%ebx
1017
1018	xorl	%ebx,%edi
1019	andl	%edx,%edi
1020	leal	2850285829(%eax,%ebp,1),%eax
1021	xorl	%ecx,%edi
1022	movl	8(%esi),%ebp
1023	addl	%edi,%eax
1024	movl	%ebx,%edi
1025	roll	$5,%eax
1026	addl	%ebx,%eax
1027
1028	xorl	%eax,%edi
1029	andl	%ecx,%edi
1030	leal	4243563512(%edx,%ebp,1),%edx
1031	xorl	%ebx,%edi
1032	movl	28(%esi),%ebp
1033	addl	%edi,%edx
1034	movl	%eax,%edi
1035	roll	$9,%edx
1036	addl	%eax,%edx
1037
1038	xorl	%edx,%edi
1039	andl	%ebx,%edi
1040	leal	1735328473(%ecx,%ebp,1),%ecx
1041	xorl	%eax,%edi
1042	movl	48(%esi),%ebp
1043	addl	%edi,%ecx
1044	movl	%edx,%edi
1045	roll	$14,%ecx
1046	addl	%edx,%ecx
1047
1048	xorl	%ecx,%edi
1049	andl	%eax,%edi
1050	leal	2368359562(%ebx,%ebp,1),%ebx
1051	xorl	%edx,%edi
1052	movl	20(%esi),%ebp
1053	addl	%edi,%ebx
1054	movl	%ecx,%edi
1055	roll	$20,%ebx
1056	addl	%ecx,%ebx
1057
1058
1059
1060	xorl	%edx,%edi
1061	xorl	%ebx,%edi
1062	leal	4294588738(%eax,%ebp,1),%eax
1063	addl	%edi,%eax
1064	movl	32(%esi),%ebp
1065	roll	$4,%eax
1066	movl	%ebx,%edi
1067
1068	addl	%ebx,%eax
1069	xorl	%ecx,%edi
1070	leal	2272392833(%edx,%ebp,1),%edx
1071	xorl	%eax,%edi
1072	movl	44(%esi),%ebp
1073	addl	%edi,%edx
1074	movl	%eax,%edi
1075	roll	$11,%edx
1076	addl	%eax,%edx
1077
1078	xorl	%ebx,%edi
1079	xorl	%edx,%edi
1080	leal	1839030562(%ecx,%ebp,1),%ecx
1081	addl	%edi,%ecx
1082	movl	56(%esi),%ebp
1083	roll	$16,%ecx
1084	movl	%edx,%edi
1085
1086	addl	%edx,%ecx
1087	xorl	%eax,%edi
1088	leal	4259657740(%ebx,%ebp,1),%ebx
1089	xorl	%ecx,%edi
1090	movl	4(%esi),%ebp
1091	addl	%edi,%ebx
1092	movl	%ecx,%edi
1093	roll	$23,%ebx
1094	addl	%ecx,%ebx
1095
1096	xorl	%edx,%edi
1097	xorl	%ebx,%edi
1098	leal	2763975236(%eax,%ebp,1),%eax
1099	addl	%edi,%eax
1100	movl	16(%esi),%ebp
1101	roll	$4,%eax
1102	movl	%ebx,%edi
1103
1104	addl	%ebx,%eax
1105	xorl	%ecx,%edi
1106	leal	1272893353(%edx,%ebp,1),%edx
1107	xorl	%eax,%edi
1108	movl	28(%esi),%ebp
1109	addl	%edi,%edx
1110	movl	%eax,%edi
1111	roll	$11,%edx
1112	addl	%eax,%edx
1113
1114	xorl	%ebx,%edi
1115	xorl	%edx,%edi
1116	leal	4139469664(%ecx,%ebp,1),%ecx
1117	addl	%edi,%ecx
1118	movl	40(%esi),%ebp
1119	roll	$16,%ecx
1120	movl	%edx,%edi
1121
1122	addl	%edx,%ecx
1123	xorl	%eax,%edi
1124	leal	3200236656(%ebx,%ebp,1),%ebx
1125	xorl	%ecx,%edi
1126	movl	52(%esi),%ebp
1127	addl	%edi,%ebx
1128	movl	%ecx,%edi
1129	roll	$23,%ebx
1130	addl	%ecx,%ebx
1131
1132	xorl	%edx,%edi
1133	xorl	%ebx,%edi
1134	leal	681279174(%eax,%ebp,1),%eax
1135	addl	%edi,%eax
1136	movl	(%esi),%ebp
1137	roll	$4,%eax
1138	movl	%ebx,%edi
1139
1140	addl	%ebx,%eax
1141	xorl	%ecx,%edi
1142	leal	3936430074(%edx,%ebp,1),%edx
1143	xorl	%eax,%edi
1144	movl	12(%esi),%ebp
1145	addl	%edi,%edx
1146	movl	%eax,%edi
1147	roll	$11,%edx
1148	addl	%eax,%edx
1149
1150	xorl	%ebx,%edi
1151	xorl	%edx,%edi
1152	leal	3572445317(%ecx,%ebp,1),%ecx
1153	addl	%edi,%ecx
1154	movl	24(%esi),%ebp
1155	roll	$16,%ecx
1156	movl	%edx,%edi
1157
1158	addl	%edx,%ecx
1159	xorl	%eax,%edi
1160	leal	76029189(%ebx,%ebp,1),%ebx
1161	xorl	%ecx,%edi
1162	movl	36(%esi),%ebp
1163	addl	%edi,%ebx
1164	movl	%ecx,%edi
1165	roll	$23,%ebx
1166	addl	%ecx,%ebx
1167
1168	xorl	%edx,%edi
1169	xorl	%ebx,%edi
1170	leal	3654602809(%eax,%ebp,1),%eax
1171	addl	%edi,%eax
1172	movl	48(%esi),%ebp
1173	roll	$4,%eax
1174	movl	%ebx,%edi
1175
1176	addl	%ebx,%eax
1177	xorl	%ecx,%edi
1178	leal	3873151461(%edx,%ebp,1),%edx
1179	xorl	%eax,%edi
1180	movl	60(%esi),%ebp
1181	addl	%edi,%edx
1182	movl	%eax,%edi
1183	roll	$11,%edx
1184	addl	%eax,%edx
1185
1186	xorl	%ebx,%edi
1187	xorl	%edx,%edi
1188	leal	530742520(%ecx,%ebp,1),%ecx
1189	addl	%edi,%ecx
1190	movl	8(%esi),%ebp
1191	roll	$16,%ecx
1192	movl	%edx,%edi
1193
1194	addl	%edx,%ecx
1195	xorl	%eax,%edi
1196	leal	3299628645(%ebx,%ebp,1),%ebx
1197	xorl	%ecx,%edi
1198	movl	(%esi),%ebp
1199	addl	%edi,%ebx
1200	movl	$-1,%edi
1201	roll	$23,%ebx
1202	addl	%ecx,%ebx
1203
1204
1205
1206	xorl	%edx,%edi
1207	orl	%ebx,%edi
1208	leal	4096336452(%eax,%ebp,1),%eax
1209	xorl	%ecx,%edi
1210	movl	28(%esi),%ebp
1211	addl	%edi,%eax
1212	movl	$-1,%edi
1213	roll	$6,%eax
1214	xorl	%ecx,%edi
1215	addl	%ebx,%eax
1216
1217	orl	%eax,%edi
1218	leal	1126891415(%edx,%ebp,1),%edx
1219	xorl	%ebx,%edi
1220	movl	56(%esi),%ebp
1221	addl	%edi,%edx
1222	movl	$-1,%edi
1223	roll	$10,%edx
1224	xorl	%ebx,%edi
1225	addl	%eax,%edx
1226
1227	orl	%edx,%edi
1228	leal	2878612391(%ecx,%ebp,1),%ecx
1229	xorl	%eax,%edi
1230	movl	20(%esi),%ebp
1231	addl	%edi,%ecx
1232	movl	$-1,%edi
1233	roll	$15,%ecx
1234	xorl	%eax,%edi
1235	addl	%edx,%ecx
1236
1237	orl	%ecx,%edi
1238	leal	4237533241(%ebx,%ebp,1),%ebx
1239	xorl	%edx,%edi
1240	movl	48(%esi),%ebp
1241	addl	%edi,%ebx
1242	movl	$-1,%edi
1243	roll	$21,%ebx
1244	xorl	%edx,%edi
1245	addl	%ecx,%ebx
1246
1247	orl	%ebx,%edi
1248	leal	1700485571(%eax,%ebp,1),%eax
1249	xorl	%ecx,%edi
1250	movl	12(%esi),%ebp
1251	addl	%edi,%eax
1252	movl	$-1,%edi
1253	roll	$6,%eax
1254	xorl	%ecx,%edi
1255	addl	%ebx,%eax
1256
1257	orl	%eax,%edi
1258	leal	2399980690(%edx,%ebp,1),%edx
1259	xorl	%ebx,%edi
1260	movl	40(%esi),%ebp
1261	addl	%edi,%edx
1262	movl	$-1,%edi
1263	roll	$10,%edx
1264	xorl	%ebx,%edi
1265	addl	%eax,%edx
1266
1267	orl	%edx,%edi
1268	leal	4293915773(%ecx,%ebp,1),%ecx
1269	xorl	%eax,%edi
1270	movl	4(%esi),%ebp
1271	addl	%edi,%ecx
1272	movl	$-1,%edi
1273	roll	$15,%ecx
1274	xorl	%eax,%edi
1275	addl	%edx,%ecx
1276
1277	orl	%ecx,%edi
1278	leal	2240044497(%ebx,%ebp,1),%ebx
1279	xorl	%edx,%edi
1280	movl	32(%esi),%ebp
1281	addl	%edi,%ebx
1282	movl	$-1,%edi
1283	roll	$21,%ebx
1284	xorl	%edx,%edi
1285	addl	%ecx,%ebx
1286
1287	orl	%ebx,%edi
1288	leal	1873313359(%eax,%ebp,1),%eax
1289	xorl	%ecx,%edi
1290	movl	60(%esi),%ebp
1291	addl	%edi,%eax
1292	movl	$-1,%edi
1293	roll	$6,%eax
1294	xorl	%ecx,%edi
1295	addl	%ebx,%eax
1296
1297	orl	%eax,%edi
1298	leal	4264355552(%edx,%ebp,1),%edx
1299	xorl	%ebx,%edi
1300	movl	24(%esi),%ebp
1301	addl	%edi,%edx
1302	movl	$-1,%edi
1303	roll	$10,%edx
1304	xorl	%ebx,%edi
1305	addl	%eax,%edx
1306
1307	orl	%edx,%edi
1308	leal	2734768916(%ecx,%ebp,1),%ecx
1309	xorl	%eax,%edi
1310	movl	52(%esi),%ebp
1311	addl	%edi,%ecx
1312	movl	$-1,%edi
1313	roll	$15,%ecx
1314	xorl	%eax,%edi
1315	addl	%edx,%ecx
1316
1317	orl	%ecx,%edi
1318	leal	1309151649(%ebx,%ebp,1),%ebx
1319	xorl	%edx,%edi
1320	movl	16(%esi),%ebp
1321	addl	%edi,%ebx
1322	movl	$-1,%edi
1323	roll	$21,%ebx
1324	xorl	%edx,%edi
1325	addl	%ecx,%ebx
1326
1327	orl	%ebx,%edi
1328	leal	4149444226(%eax,%ebp,1),%eax
1329	xorl	%ecx,%edi
1330	movl	44(%esi),%ebp
1331	addl	%edi,%eax
1332	movl	$-1,%edi
1333	roll	$6,%eax
1334	xorl	%ecx,%edi
1335	addl	%ebx,%eax
1336
1337	orl	%eax,%edi
1338	leal	3174756917(%edx,%ebp,1),%edx
1339	xorl	%ebx,%edi
1340	movl	8(%esi),%ebp
1341	addl	%edi,%edx
1342	movl	$-1,%edi
1343	roll	$10,%edx
1344	xorl	%ebx,%edi
1345	addl	%eax,%edx
1346
1347	orl	%edx,%edi
1348	leal	718787259(%ecx,%ebp,1),%ecx
1349	xorl	%eax,%edi
1350	movl	36(%esi),%ebp
1351	addl	%edi,%ecx
1352	movl	$-1,%edi
1353	roll	$15,%ecx
1354	xorl	%eax,%edi
1355	addl	%edx,%ecx
1356
1357	orl	%ecx,%edi
1358	leal	3951481745(%ebx,%ebp,1),%ebx
1359	xorl	%edx,%edi
1360	movl	24(%esp),%ebp
1361	addl	%edi,%ebx
1362	addl	$64,%esi
1363	roll	$21,%ebx
1364	movl	(%ebp),%edi
1365	addl	%ecx,%ebx
1366	addl	%edi,%eax
1367	movl	4(%ebp),%edi
1368	addl	%edi,%ebx
1369	movl	8(%ebp),%edi
1370	addl	%edi,%ecx
1371	movl	12(%ebp),%edi
1372	addl	%edi,%edx
1373	movl	%eax,(%ebp)
1374	movl	%ebx,4(%ebp)
1375	movl	(%esp),%edi
1376	movl	%ecx,8(%ebp)
1377	movl	%edx,12(%ebp)
1378	cmpl	%esi,%edi
1379	jae	.L000start
1380	popl	%eax
1381	popl	%ebx
1382	popl	%ebp
1383	popl	%edi
1384	popl	%esi
1385	ret
1386.size	ossl_md5_block_asm_data_order,.-.L_ossl_md5_block_asm_data_order_begin
1387
1388	.section ".note.gnu.property", "a"
1389	.p2align 2
1390	.long 1f - 0f
1391	.long 4f - 1f
1392	.long 5
13930:
1394	.asciz "GNU"
13951:
1396	.p2align 2
1397	.long 0xc0000002
1398	.long 3f - 2f
13992:
1400	.long 3
14013:
1402	.p2align 2
14034:
1404#endif
1405