]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - sys/crypto/openssl/amd64/rc4-x86_64.S
Use a template assembly file to generate the embedded MFS.
[FreeBSD/FreeBSD.git] / sys / crypto / openssl / amd64 / rc4-x86_64.S
1 /* $FreeBSD$ */
2 /* Do not modify. This file is auto-generated from rc4-x86_64.pl. */
3 .text   
4
5
6 .globl  RC4
7 .type   RC4,@function
8 .align  16
9 RC4:
10 .cfi_startproc  
11         orq     %rsi,%rsi
12         jne     .Lentry
13         .byte   0xf3,0xc3
14 .Lentry:
15         pushq   %rbx
16 .cfi_adjust_cfa_offset  8
17 .cfi_offset     %rbx,-16
18         pushq   %r12
19 .cfi_adjust_cfa_offset  8
20 .cfi_offset     %r12,-24
21         pushq   %r13
22 .cfi_adjust_cfa_offset  8
23 .cfi_offset     %r13,-32
24 .Lprologue:
25         movq    %rsi,%r11
26         movq    %rdx,%r12
27         movq    %rcx,%r13
28         xorq    %r10,%r10
29         xorq    %rcx,%rcx
30
31         leaq    8(%rdi),%rdi
32         movb    -8(%rdi),%r10b
33         movb    -4(%rdi),%cl
34         cmpl    $-1,256(%rdi)
35         je      .LRC4_CHAR
36         movl    OPENSSL_ia32cap_P(%rip),%r8d
37         xorq    %rbx,%rbx
38         incb    %r10b
39         subq    %r10,%rbx
40         subq    %r12,%r13
41         movl    (%rdi,%r10,4),%eax
42         testq   $-16,%r11
43         jz      .Lloop1
44         btl     $30,%r8d
45         jc      .Lintel
46         andq    $7,%rbx
47         leaq    1(%r10),%rsi
48         jz      .Loop8
49         subq    %rbx,%r11
50 .Loop8_warmup:
51         addb    %al,%cl
52         movl    (%rdi,%rcx,4),%edx
53         movl    %eax,(%rdi,%rcx,4)
54         movl    %edx,(%rdi,%r10,4)
55         addb    %dl,%al
56         incb    %r10b
57         movl    (%rdi,%rax,4),%edx
58         movl    (%rdi,%r10,4),%eax
59         xorb    (%r12),%dl
60         movb    %dl,(%r12,%r13,1)
61         leaq    1(%r12),%r12
62         decq    %rbx
63         jnz     .Loop8_warmup
64
65         leaq    1(%r10),%rsi
66         jmp     .Loop8
67 .align  16
68 .Loop8:
69         addb    %al,%cl
70         movl    (%rdi,%rcx,4),%edx
71         movl    %eax,(%rdi,%rcx,4)
72         movl    0(%rdi,%rsi,4),%ebx
73         rorq    $8,%r8
74         movl    %edx,0(%rdi,%r10,4)
75         addb    %al,%dl
76         movb    (%rdi,%rdx,4),%r8b
77         addb    %bl,%cl
78         movl    (%rdi,%rcx,4),%edx
79         movl    %ebx,(%rdi,%rcx,4)
80         movl    4(%rdi,%rsi,4),%eax
81         rorq    $8,%r8
82         movl    %edx,4(%rdi,%r10,4)
83         addb    %bl,%dl
84         movb    (%rdi,%rdx,4),%r8b
85         addb    %al,%cl
86         movl    (%rdi,%rcx,4),%edx
87         movl    %eax,(%rdi,%rcx,4)
88         movl    8(%rdi,%rsi,4),%ebx
89         rorq    $8,%r8
90         movl    %edx,8(%rdi,%r10,4)
91         addb    %al,%dl
92         movb    (%rdi,%rdx,4),%r8b
93         addb    %bl,%cl
94         movl    (%rdi,%rcx,4),%edx
95         movl    %ebx,(%rdi,%rcx,4)
96         movl    12(%rdi,%rsi,4),%eax
97         rorq    $8,%r8
98         movl    %edx,12(%rdi,%r10,4)
99         addb    %bl,%dl
100         movb    (%rdi,%rdx,4),%r8b
101         addb    %al,%cl
102         movl    (%rdi,%rcx,4),%edx
103         movl    %eax,(%rdi,%rcx,4)
104         movl    16(%rdi,%rsi,4),%ebx
105         rorq    $8,%r8
106         movl    %edx,16(%rdi,%r10,4)
107         addb    %al,%dl
108         movb    (%rdi,%rdx,4),%r8b
109         addb    %bl,%cl
110         movl    (%rdi,%rcx,4),%edx
111         movl    %ebx,(%rdi,%rcx,4)
112         movl    20(%rdi,%rsi,4),%eax
113         rorq    $8,%r8
114         movl    %edx,20(%rdi,%r10,4)
115         addb    %bl,%dl
116         movb    (%rdi,%rdx,4),%r8b
117         addb    %al,%cl
118         movl    (%rdi,%rcx,4),%edx
119         movl    %eax,(%rdi,%rcx,4)
120         movl    24(%rdi,%rsi,4),%ebx
121         rorq    $8,%r8
122         movl    %edx,24(%rdi,%r10,4)
123         addb    %al,%dl
124         movb    (%rdi,%rdx,4),%r8b
125         addb    $8,%sil
126         addb    %bl,%cl
127         movl    (%rdi,%rcx,4),%edx
128         movl    %ebx,(%rdi,%rcx,4)
129         movl    -4(%rdi,%rsi,4),%eax
130         rorq    $8,%r8
131         movl    %edx,28(%rdi,%r10,4)
132         addb    %bl,%dl
133         movb    (%rdi,%rdx,4),%r8b
134         addb    $8,%r10b
135         rorq    $8,%r8
136         subq    $8,%r11
137
138         xorq    (%r12),%r8
139         movq    %r8,(%r12,%r13,1)
140         leaq    8(%r12),%r12
141
142         testq   $-8,%r11
143         jnz     .Loop8
144         cmpq    $0,%r11
145         jne     .Lloop1
146         jmp     .Lexit
147
148 .align  16
149 .Lintel:
150         testq   $-32,%r11
151         jz      .Lloop1
152         andq    $15,%rbx
153         jz      .Loop16_is_hot
154         subq    %rbx,%r11
155 .Loop16_warmup:
156         addb    %al,%cl
157         movl    (%rdi,%rcx,4),%edx
158         movl    %eax,(%rdi,%rcx,4)
159         movl    %edx,(%rdi,%r10,4)
160         addb    %dl,%al
161         incb    %r10b
162         movl    (%rdi,%rax,4),%edx
163         movl    (%rdi,%r10,4),%eax
164         xorb    (%r12),%dl
165         movb    %dl,(%r12,%r13,1)
166         leaq    1(%r12),%r12
167         decq    %rbx
168         jnz     .Loop16_warmup
169
170         movq    %rcx,%rbx
171         xorq    %rcx,%rcx
172         movb    %bl,%cl
173
174 .Loop16_is_hot:
175         leaq    (%rdi,%r10,4),%rsi
176         addb    %al,%cl
177         movl    (%rdi,%rcx,4),%edx
178         pxor    %xmm0,%xmm0
179         movl    %eax,(%rdi,%rcx,4)
180         addb    %dl,%al
181         movl    4(%rsi),%ebx
182         movzbl  %al,%eax
183         movl    %edx,0(%rsi)
184         addb    %bl,%cl
185         pinsrw  $0,(%rdi,%rax,4),%xmm0
186         jmp     .Loop16_enter
187 .align  16
188 .Loop16:
189         addb    %al,%cl
190         movl    (%rdi,%rcx,4),%edx
191         pxor    %xmm0,%xmm2
192         psllq   $8,%xmm1
193         pxor    %xmm0,%xmm0
194         movl    %eax,(%rdi,%rcx,4)
195         addb    %dl,%al
196         movl    4(%rsi),%ebx
197         movzbl  %al,%eax
198         movl    %edx,0(%rsi)
199         pxor    %xmm1,%xmm2
200         addb    %bl,%cl
201         pinsrw  $0,(%rdi,%rax,4),%xmm0
202         movdqu  %xmm2,(%r12,%r13,1)
203         leaq    16(%r12),%r12
204 .Loop16_enter:
205         movl    (%rdi,%rcx,4),%edx
206         pxor    %xmm1,%xmm1
207         movl    %ebx,(%rdi,%rcx,4)
208         addb    %dl,%bl
209         movl    8(%rsi),%eax
210         movzbl  %bl,%ebx
211         movl    %edx,4(%rsi)
212         addb    %al,%cl
213         pinsrw  $0,(%rdi,%rbx,4),%xmm1
214         movl    (%rdi,%rcx,4),%edx
215         movl    %eax,(%rdi,%rcx,4)
216         addb    %dl,%al
217         movl    12(%rsi),%ebx
218         movzbl  %al,%eax
219         movl    %edx,8(%rsi)
220         addb    %bl,%cl
221         pinsrw  $1,(%rdi,%rax,4),%xmm0
222         movl    (%rdi,%rcx,4),%edx
223         movl    %ebx,(%rdi,%rcx,4)
224         addb    %dl,%bl
225         movl    16(%rsi),%eax
226         movzbl  %bl,%ebx
227         movl    %edx,12(%rsi)
228         addb    %al,%cl
229         pinsrw  $1,(%rdi,%rbx,4),%xmm1
230         movl    (%rdi,%rcx,4),%edx
231         movl    %eax,(%rdi,%rcx,4)
232         addb    %dl,%al
233         movl    20(%rsi),%ebx
234         movzbl  %al,%eax
235         movl    %edx,16(%rsi)
236         addb    %bl,%cl
237         pinsrw  $2,(%rdi,%rax,4),%xmm0
238         movl    (%rdi,%rcx,4),%edx
239         movl    %ebx,(%rdi,%rcx,4)
240         addb    %dl,%bl
241         movl    24(%rsi),%eax
242         movzbl  %bl,%ebx
243         movl    %edx,20(%rsi)
244         addb    %al,%cl
245         pinsrw  $2,(%rdi,%rbx,4),%xmm1
246         movl    (%rdi,%rcx,4),%edx
247         movl    %eax,(%rdi,%rcx,4)
248         addb    %dl,%al
249         movl    28(%rsi),%ebx
250         movzbl  %al,%eax
251         movl    %edx,24(%rsi)
252         addb    %bl,%cl
253         pinsrw  $3,(%rdi,%rax,4),%xmm0
254         movl    (%rdi,%rcx,4),%edx
255         movl    %ebx,(%rdi,%rcx,4)
256         addb    %dl,%bl
257         movl    32(%rsi),%eax
258         movzbl  %bl,%ebx
259         movl    %edx,28(%rsi)
260         addb    %al,%cl
261         pinsrw  $3,(%rdi,%rbx,4),%xmm1
262         movl    (%rdi,%rcx,4),%edx
263         movl    %eax,(%rdi,%rcx,4)
264         addb    %dl,%al
265         movl    36(%rsi),%ebx
266         movzbl  %al,%eax
267         movl    %edx,32(%rsi)
268         addb    %bl,%cl
269         pinsrw  $4,(%rdi,%rax,4),%xmm0
270         movl    (%rdi,%rcx,4),%edx
271         movl    %ebx,(%rdi,%rcx,4)
272         addb    %dl,%bl
273         movl    40(%rsi),%eax
274         movzbl  %bl,%ebx
275         movl    %edx,36(%rsi)
276         addb    %al,%cl
277         pinsrw  $4,(%rdi,%rbx,4),%xmm1
278         movl    (%rdi,%rcx,4),%edx
279         movl    %eax,(%rdi,%rcx,4)
280         addb    %dl,%al
281         movl    44(%rsi),%ebx
282         movzbl  %al,%eax
283         movl    %edx,40(%rsi)
284         addb    %bl,%cl
285         pinsrw  $5,(%rdi,%rax,4),%xmm0
286         movl    (%rdi,%rcx,4),%edx
287         movl    %ebx,(%rdi,%rcx,4)
288         addb    %dl,%bl
289         movl    48(%rsi),%eax
290         movzbl  %bl,%ebx
291         movl    %edx,44(%rsi)
292         addb    %al,%cl
293         pinsrw  $5,(%rdi,%rbx,4),%xmm1
294         movl    (%rdi,%rcx,4),%edx
295         movl    %eax,(%rdi,%rcx,4)
296         addb    %dl,%al
297         movl    52(%rsi),%ebx
298         movzbl  %al,%eax
299         movl    %edx,48(%rsi)
300         addb    %bl,%cl
301         pinsrw  $6,(%rdi,%rax,4),%xmm0
302         movl    (%rdi,%rcx,4),%edx
303         movl    %ebx,(%rdi,%rcx,4)
304         addb    %dl,%bl
305         movl    56(%rsi),%eax
306         movzbl  %bl,%ebx
307         movl    %edx,52(%rsi)
308         addb    %al,%cl
309         pinsrw  $6,(%rdi,%rbx,4),%xmm1
310         movl    (%rdi,%rcx,4),%edx
311         movl    %eax,(%rdi,%rcx,4)
312         addb    %dl,%al
313         movl    60(%rsi),%ebx
314         movzbl  %al,%eax
315         movl    %edx,56(%rsi)
316         addb    %bl,%cl
317         pinsrw  $7,(%rdi,%rax,4),%xmm0
318         addb    $16,%r10b
319         movdqu  (%r12),%xmm2
320         movl    (%rdi,%rcx,4),%edx
321         movl    %ebx,(%rdi,%rcx,4)
322         addb    %dl,%bl
323         movzbl  %bl,%ebx
324         movl    %edx,60(%rsi)
325         leaq    (%rdi,%r10,4),%rsi
326         pinsrw  $7,(%rdi,%rbx,4),%xmm1
327         movl    (%rsi),%eax
328         movq    %rcx,%rbx
329         xorq    %rcx,%rcx
330         subq    $16,%r11
331         movb    %bl,%cl
332         testq   $-16,%r11
333         jnz     .Loop16
334
335         psllq   $8,%xmm1
336         pxor    %xmm0,%xmm2
337         pxor    %xmm1,%xmm2
338         movdqu  %xmm2,(%r12,%r13,1)
339         leaq    16(%r12),%r12
340
341         cmpq    $0,%r11
342         jne     .Lloop1
343         jmp     .Lexit
344
345 .align  16
346 .Lloop1:
347         addb    %al,%cl
348         movl    (%rdi,%rcx,4),%edx
349         movl    %eax,(%rdi,%rcx,4)
350         movl    %edx,(%rdi,%r10,4)
351         addb    %dl,%al
352         incb    %r10b
353         movl    (%rdi,%rax,4),%edx
354         movl    (%rdi,%r10,4),%eax
355         xorb    (%r12),%dl
356         movb    %dl,(%r12,%r13,1)
357         leaq    1(%r12),%r12
358         decq    %r11
359         jnz     .Lloop1
360         jmp     .Lexit
361
362 .align  16
363 .LRC4_CHAR:
364         addb    $1,%r10b
365         movzbl  (%rdi,%r10,1),%eax
366         testq   $-8,%r11
367         jz      .Lcloop1
368         jmp     .Lcloop8
369 .align  16
370 .Lcloop8:
371         movl    (%r12),%r8d
372         movl    4(%r12),%r9d
373         addb    %al,%cl
374         leaq    1(%r10),%rsi
375         movzbl  (%rdi,%rcx,1),%edx
376         movzbl  %sil,%esi
377         movzbl  (%rdi,%rsi,1),%ebx
378         movb    %al,(%rdi,%rcx,1)
379         cmpq    %rsi,%rcx
380         movb    %dl,(%rdi,%r10,1)
381         jne     .Lcmov0
382         movq    %rax,%rbx
383 .Lcmov0:
384         addb    %al,%dl
385         xorb    (%rdi,%rdx,1),%r8b
386         rorl    $8,%r8d
387         addb    %bl,%cl
388         leaq    1(%rsi),%r10
389         movzbl  (%rdi,%rcx,1),%edx
390         movzbl  %r10b,%r10d
391         movzbl  (%rdi,%r10,1),%eax
392         movb    %bl,(%rdi,%rcx,1)
393         cmpq    %r10,%rcx
394         movb    %dl,(%rdi,%rsi,1)
395         jne     .Lcmov1
396         movq    %rbx,%rax
397 .Lcmov1:
398         addb    %bl,%dl
399         xorb    (%rdi,%rdx,1),%r8b
400         rorl    $8,%r8d
401         addb    %al,%cl
402         leaq    1(%r10),%rsi
403         movzbl  (%rdi,%rcx,1),%edx
404         movzbl  %sil,%esi
405         movzbl  (%rdi,%rsi,1),%ebx
406         movb    %al,(%rdi,%rcx,1)
407         cmpq    %rsi,%rcx
408         movb    %dl,(%rdi,%r10,1)
409         jne     .Lcmov2
410         movq    %rax,%rbx
411 .Lcmov2:
412         addb    %al,%dl
413         xorb    (%rdi,%rdx,1),%r8b
414         rorl    $8,%r8d
415         addb    %bl,%cl
416         leaq    1(%rsi),%r10
417         movzbl  (%rdi,%rcx,1),%edx
418         movzbl  %r10b,%r10d
419         movzbl  (%rdi,%r10,1),%eax
420         movb    %bl,(%rdi,%rcx,1)
421         cmpq    %r10,%rcx
422         movb    %dl,(%rdi,%rsi,1)
423         jne     .Lcmov3
424         movq    %rbx,%rax
425 .Lcmov3:
426         addb    %bl,%dl
427         xorb    (%rdi,%rdx,1),%r8b
428         rorl    $8,%r8d
429         addb    %al,%cl
430         leaq    1(%r10),%rsi
431         movzbl  (%rdi,%rcx,1),%edx
432         movzbl  %sil,%esi
433         movzbl  (%rdi,%rsi,1),%ebx
434         movb    %al,(%rdi,%rcx,1)
435         cmpq    %rsi,%rcx
436         movb    %dl,(%rdi,%r10,1)
437         jne     .Lcmov4
438         movq    %rax,%rbx
439 .Lcmov4:
440         addb    %al,%dl
441         xorb    (%rdi,%rdx,1),%r9b
442         rorl    $8,%r9d
443         addb    %bl,%cl
444         leaq    1(%rsi),%r10
445         movzbl  (%rdi,%rcx,1),%edx
446         movzbl  %r10b,%r10d
447         movzbl  (%rdi,%r10,1),%eax
448         movb    %bl,(%rdi,%rcx,1)
449         cmpq    %r10,%rcx
450         movb    %dl,(%rdi,%rsi,1)
451         jne     .Lcmov5
452         movq    %rbx,%rax
453 .Lcmov5:
454         addb    %bl,%dl
455         xorb    (%rdi,%rdx,1),%r9b
456         rorl    $8,%r9d
457         addb    %al,%cl
458         leaq    1(%r10),%rsi
459         movzbl  (%rdi,%rcx,1),%edx
460         movzbl  %sil,%esi
461         movzbl  (%rdi,%rsi,1),%ebx
462         movb    %al,(%rdi,%rcx,1)
463         cmpq    %rsi,%rcx
464         movb    %dl,(%rdi,%r10,1)
465         jne     .Lcmov6
466         movq    %rax,%rbx
467 .Lcmov6:
468         addb    %al,%dl
469         xorb    (%rdi,%rdx,1),%r9b
470         rorl    $8,%r9d
471         addb    %bl,%cl
472         leaq    1(%rsi),%r10
473         movzbl  (%rdi,%rcx,1),%edx
474         movzbl  %r10b,%r10d
475         movzbl  (%rdi,%r10,1),%eax
476         movb    %bl,(%rdi,%rcx,1)
477         cmpq    %r10,%rcx
478         movb    %dl,(%rdi,%rsi,1)
479         jne     .Lcmov7
480         movq    %rbx,%rax
481 .Lcmov7:
482         addb    %bl,%dl
483         xorb    (%rdi,%rdx,1),%r9b
484         rorl    $8,%r9d
485         leaq    -8(%r11),%r11
486         movl    %r8d,(%r13)
487         leaq    8(%r12),%r12
488         movl    %r9d,4(%r13)
489         leaq    8(%r13),%r13
490
491         testq   $-8,%r11
492         jnz     .Lcloop8
493         cmpq    $0,%r11
494         jne     .Lcloop1
495         jmp     .Lexit
496 .align  16
497 .Lcloop1:
498         addb    %al,%cl
499         movzbl  %cl,%ecx
500         movzbl  (%rdi,%rcx,1),%edx
501         movb    %al,(%rdi,%rcx,1)
502         movb    %dl,(%rdi,%r10,1)
503         addb    %al,%dl
504         addb    $1,%r10b
505         movzbl  %dl,%edx
506         movzbl  %r10b,%r10d
507         movzbl  (%rdi,%rdx,1),%edx
508         movzbl  (%rdi,%r10,1),%eax
509         xorb    (%r12),%dl
510         leaq    1(%r12),%r12
511         movb    %dl,(%r13)
512         leaq    1(%r13),%r13
513         subq    $1,%r11
514         jnz     .Lcloop1
515         jmp     .Lexit
516
517 .align  16
518 .Lexit:
519         subb    $1,%r10b
520         movl    %r10d,-8(%rdi)
521         movl    %ecx,-4(%rdi)
522
523         movq    (%rsp),%r13
524 .cfi_restore    %r13
525         movq    8(%rsp),%r12
526 .cfi_restore    %r12
527         movq    16(%rsp),%rbx
528 .cfi_restore    %rbx
529         addq    $24,%rsp
530 .cfi_adjust_cfa_offset  -24
531 .Lepilogue:
532         .byte   0xf3,0xc3
533 .cfi_endproc    
534 .size   RC4,.-RC4
535 .globl  RC4_set_key
536 .type   RC4_set_key,@function
537 .align  16
538 RC4_set_key:
539 .cfi_startproc  
540         leaq    8(%rdi),%rdi
541         leaq    (%rdx,%rsi,1),%rdx
542         negq    %rsi
543         movq    %rsi,%rcx
544         xorl    %eax,%eax
545         xorq    %r9,%r9
546         xorq    %r10,%r10
547         xorq    %r11,%r11
548
549         movl    OPENSSL_ia32cap_P(%rip),%r8d
550         btl     $20,%r8d
551         jc      .Lc1stloop
552         jmp     .Lw1stloop
553
554 .align  16
555 .Lw1stloop:
556         movl    %eax,(%rdi,%rax,4)
557         addb    $1,%al
558         jnc     .Lw1stloop
559
560         xorq    %r9,%r9
561         xorq    %r8,%r8
562 .align  16
563 .Lw2ndloop:
564         movl    (%rdi,%r9,4),%r10d
565         addb    (%rdx,%rsi,1),%r8b
566         addb    %r10b,%r8b
567         addq    $1,%rsi
568         movl    (%rdi,%r8,4),%r11d
569         cmovzq  %rcx,%rsi
570         movl    %r10d,(%rdi,%r8,4)
571         movl    %r11d,(%rdi,%r9,4)
572         addb    $1,%r9b
573         jnc     .Lw2ndloop
574         jmp     .Lexit_key
575
576 .align  16
577 .Lc1stloop:
578         movb    %al,(%rdi,%rax,1)
579         addb    $1,%al
580         jnc     .Lc1stloop
581
582         xorq    %r9,%r9
583         xorq    %r8,%r8
584 .align  16
585 .Lc2ndloop:
586         movb    (%rdi,%r9,1),%r10b
587         addb    (%rdx,%rsi,1),%r8b
588         addb    %r10b,%r8b
589         addq    $1,%rsi
590         movb    (%rdi,%r8,1),%r11b
591         jnz     .Lcnowrap
592         movq    %rcx,%rsi
593 .Lcnowrap:
594         movb    %r10b,(%rdi,%r8,1)
595         movb    %r11b,(%rdi,%r9,1)
596         addb    $1,%r9b
597         jnc     .Lc2ndloop
598         movl    $-1,256(%rdi)
599
600 .align  16
601 .Lexit_key:
602         xorl    %eax,%eax
603         movl    %eax,-8(%rdi)
604         movl    %eax,-4(%rdi)
605         .byte   0xf3,0xc3
606 .cfi_endproc    
607 .size   RC4_set_key,.-RC4_set_key
608
609 .globl  RC4_options
610 .type   RC4_options,@function
611 .align  16
612 RC4_options:
613 .cfi_startproc  
614         leaq    .Lopts(%rip),%rax
615         movl    OPENSSL_ia32cap_P(%rip),%edx
616         btl     $20,%edx
617         jc      .L8xchar
618         btl     $30,%edx
619         jnc     .Ldone
620         addq    $25,%rax
621         .byte   0xf3,0xc3
622 .L8xchar:
623         addq    $12,%rax
624 .Ldone:
625         .byte   0xf3,0xc3
626 .cfi_endproc    
627 .align  64
628 .Lopts:
629 .byte   114,99,52,40,56,120,44,105,110,116,41,0
630 .byte   114,99,52,40,56,120,44,99,104,97,114,41,0
631 .byte   114,99,52,40,49,54,120,44,105,110,116,41,0
632 .byte   82,67,52,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0
633 .align  64
634 .size   RC4_options,.-RC4_options