1 ; Don't even think of reading this code
2 ; It was automatically generated by des-som2.pl
3 ; Which is a perl program used to generate the x86 assember for
4 ; any of elf, a.out, Win32, or Solaris
5 ; It can be found in SSLeay 0.6.5+ or in libdes 3.26+
6 ; eric <eay@mincom.oz.au>
7 ; The inner loop instruction sequence and the IP/FP modifications
8 ; are from Svend Olaf Mikkelsen <svolaf@inet.uni-c.dk>
16 EXTRN _des_SPtrans:DWORD
17 _des_encrypt PROC NEAR
24 mov esi, DWORD PTR 20[esp]
26 mov eax, DWORD PTR [esi]
27 mov ebx, DWORD PTR 28[esp]
28 mov edi, DWORD PTR 4[esi]
68 mov ebp, DWORD PTR 24[esp]
72 mov eax, DWORD PTR [ebp]
74 mov edx, DWORD PTR 4[ebp]
82 mov ebp, DWORD PTR _des_SPtrans[ebx]
85 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
89 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
93 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
95 mov ebp, DWORD PTR 24[esp]
99 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
101 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
103 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
105 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
109 mov eax, DWORD PTR 8[ebp]
111 mov edx, DWORD PTR 12[ebp]
119 mov ebp, DWORD PTR _des_SPtrans[ebx]
122 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
126 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
130 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
132 mov ebp, DWORD PTR 24[esp]
136 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
138 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
140 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
142 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
146 mov eax, DWORD PTR 16[ebp]
148 mov edx, DWORD PTR 20[ebp]
156 mov ebp, DWORD PTR _des_SPtrans[ebx]
159 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
163 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
167 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
169 mov ebp, DWORD PTR 24[esp]
173 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
175 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
177 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
179 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
183 mov eax, DWORD PTR 24[ebp]
185 mov edx, DWORD PTR 28[ebp]
193 mov ebp, DWORD PTR _des_SPtrans[ebx]
196 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
200 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
204 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
206 mov ebp, DWORD PTR 24[esp]
210 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
212 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
214 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
216 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
220 mov eax, DWORD PTR 32[ebp]
222 mov edx, DWORD PTR 36[ebp]
230 mov ebp, DWORD PTR _des_SPtrans[ebx]
233 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
237 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
241 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
243 mov ebp, DWORD PTR 24[esp]
247 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
249 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
251 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
253 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
257 mov eax, DWORD PTR 40[ebp]
259 mov edx, DWORD PTR 44[ebp]
267 mov ebp, DWORD PTR _des_SPtrans[ebx]
270 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
274 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
278 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
280 mov ebp, DWORD PTR 24[esp]
284 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
286 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
288 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
290 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
294 mov eax, DWORD PTR 48[ebp]
296 mov edx, DWORD PTR 52[ebp]
304 mov ebp, DWORD PTR _des_SPtrans[ebx]
307 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
311 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
315 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
317 mov ebp, DWORD PTR 24[esp]
321 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
323 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
325 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
327 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
331 mov eax, DWORD PTR 56[ebp]
333 mov edx, DWORD PTR 60[ebp]
341 mov ebp, DWORD PTR _des_SPtrans[ebx]
344 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
348 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
352 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
354 mov ebp, DWORD PTR 24[esp]
358 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
360 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
362 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
364 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
368 mov eax, DWORD PTR 64[ebp]
370 mov edx, DWORD PTR 68[ebp]
378 mov ebp, DWORD PTR _des_SPtrans[ebx]
381 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
385 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
389 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
391 mov ebp, DWORD PTR 24[esp]
395 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
397 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
399 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
401 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
405 mov eax, DWORD PTR 72[ebp]
407 mov edx, DWORD PTR 76[ebp]
415 mov ebp, DWORD PTR _des_SPtrans[ebx]
418 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
422 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
426 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
428 mov ebp, DWORD PTR 24[esp]
432 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
434 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
436 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
438 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
442 mov eax, DWORD PTR 80[ebp]
444 mov edx, DWORD PTR 84[ebp]
452 mov ebp, DWORD PTR _des_SPtrans[ebx]
455 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
459 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
463 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
465 mov ebp, DWORD PTR 24[esp]
469 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
471 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
473 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
475 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
479 mov eax, DWORD PTR 88[ebp]
481 mov edx, DWORD PTR 92[ebp]
489 mov ebp, DWORD PTR _des_SPtrans[ebx]
492 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
496 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
500 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
502 mov ebp, DWORD PTR 24[esp]
506 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
508 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
510 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
512 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
516 mov eax, DWORD PTR 96[ebp]
518 mov edx, DWORD PTR 100[ebp]
526 mov ebp, DWORD PTR _des_SPtrans[ebx]
529 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
533 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
537 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
539 mov ebp, DWORD PTR 24[esp]
543 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
545 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
547 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
549 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
553 mov eax, DWORD PTR 104[ebp]
555 mov edx, DWORD PTR 108[ebp]
563 mov ebp, DWORD PTR _des_SPtrans[ebx]
566 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
570 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
574 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
576 mov ebp, DWORD PTR 24[esp]
580 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
582 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
584 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
586 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
590 mov eax, DWORD PTR 112[ebp]
592 mov edx, DWORD PTR 116[ebp]
600 mov ebp, DWORD PTR _des_SPtrans[ebx]
603 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
607 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
611 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
613 mov ebp, DWORD PTR 24[esp]
617 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
619 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
621 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
623 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
627 mov eax, DWORD PTR 120[ebp]
629 mov edx, DWORD PTR 124[ebp]
637 mov ebp, DWORD PTR _des_SPtrans[ebx]
640 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
644 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
648 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
650 mov ebp, DWORD PTR 24[esp]
654 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
656 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
658 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
660 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
666 mov eax, DWORD PTR 120[ebp]
668 mov edx, DWORD PTR 124[ebp]
676 mov ebp, DWORD PTR _des_SPtrans[ebx]
679 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
683 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
687 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
689 mov ebp, DWORD PTR 24[esp]
693 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
695 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
697 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
699 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
703 mov eax, DWORD PTR 112[ebp]
705 mov edx, DWORD PTR 116[ebp]
713 mov ebp, DWORD PTR _des_SPtrans[ebx]
716 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
720 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
724 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
726 mov ebp, DWORD PTR 24[esp]
730 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
732 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
734 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
736 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
740 mov eax, DWORD PTR 104[ebp]
742 mov edx, DWORD PTR 108[ebp]
750 mov ebp, DWORD PTR _des_SPtrans[ebx]
753 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
757 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
761 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
763 mov ebp, DWORD PTR 24[esp]
767 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
769 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
771 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
773 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
777 mov eax, DWORD PTR 96[ebp]
779 mov edx, DWORD PTR 100[ebp]
787 mov ebp, DWORD PTR _des_SPtrans[ebx]
790 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
794 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
798 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
800 mov ebp, DWORD PTR 24[esp]
804 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
806 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
808 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
810 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
814 mov eax, DWORD PTR 88[ebp]
816 mov edx, DWORD PTR 92[ebp]
824 mov ebp, DWORD PTR _des_SPtrans[ebx]
827 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
831 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
835 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
837 mov ebp, DWORD PTR 24[esp]
841 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
843 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
845 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
847 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
851 mov eax, DWORD PTR 80[ebp]
853 mov edx, DWORD PTR 84[ebp]
861 mov ebp, DWORD PTR _des_SPtrans[ebx]
864 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
868 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
872 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
874 mov ebp, DWORD PTR 24[esp]
878 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
880 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
882 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
884 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
888 mov eax, DWORD PTR 72[ebp]
890 mov edx, DWORD PTR 76[ebp]
898 mov ebp, DWORD PTR _des_SPtrans[ebx]
901 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
905 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
909 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
911 mov ebp, DWORD PTR 24[esp]
915 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
917 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
919 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
921 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
925 mov eax, DWORD PTR 64[ebp]
927 mov edx, DWORD PTR 68[ebp]
935 mov ebp, DWORD PTR _des_SPtrans[ebx]
938 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
942 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
946 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
948 mov ebp, DWORD PTR 24[esp]
952 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
954 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
956 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
958 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
962 mov eax, DWORD PTR 56[ebp]
964 mov edx, DWORD PTR 60[ebp]
972 mov ebp, DWORD PTR _des_SPtrans[ebx]
975 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
979 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
983 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
985 mov ebp, DWORD PTR 24[esp]
989 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
991 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
993 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
995 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
999 mov eax, DWORD PTR 48[ebp]
1001 mov edx, DWORD PTR 52[ebp]
1009 mov ebp, DWORD PTR _des_SPtrans[ebx]
1012 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
1016 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
1020 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
1022 mov ebp, DWORD PTR 24[esp]
1026 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
1028 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
1030 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
1032 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
1036 mov eax, DWORD PTR 40[ebp]
1038 mov edx, DWORD PTR 44[ebp]
1046 mov ebp, DWORD PTR _des_SPtrans[ebx]
1049 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
1053 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
1057 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
1059 mov ebp, DWORD PTR 24[esp]
1063 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
1065 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
1067 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
1069 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
1073 mov eax, DWORD PTR 32[ebp]
1075 mov edx, DWORD PTR 36[ebp]
1083 mov ebp, DWORD PTR _des_SPtrans[ebx]
1086 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
1090 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
1094 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
1096 mov ebp, DWORD PTR 24[esp]
1100 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
1102 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
1104 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
1106 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
1110 mov eax, DWORD PTR 24[ebp]
1112 mov edx, DWORD PTR 28[ebp]
1120 mov ebp, DWORD PTR _des_SPtrans[ebx]
1123 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
1127 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
1131 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
1133 mov ebp, DWORD PTR 24[esp]
1137 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
1139 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
1141 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
1143 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
1147 mov eax, DWORD PTR 16[ebp]
1149 mov edx, DWORD PTR 20[ebp]
1157 mov ebp, DWORD PTR _des_SPtrans[ebx]
1160 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
1164 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
1168 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
1170 mov ebp, DWORD PTR 24[esp]
1174 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
1176 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
1178 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
1180 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
1184 mov eax, DWORD PTR 8[ebp]
1186 mov edx, DWORD PTR 12[ebp]
1194 mov ebp, DWORD PTR _des_SPtrans[ebx]
1197 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
1201 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
1205 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
1207 mov ebp, DWORD PTR 24[esp]
1211 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
1213 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
1215 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
1217 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
1221 mov eax, DWORD PTR [ebp]
1223 mov edx, DWORD PTR 4[ebp]
1231 mov ebp, DWORD PTR _des_SPtrans[ebx]
1234 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
1238 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
1242 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
1244 mov ebp, DWORD PTR 24[esp]
1248 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
1250 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
1252 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
1254 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
1259 mov edx, DWORD PTR 20[esp]
1296 mov DWORD PTR [edx],eax
1297 mov DWORD PTR 4[edx],esi
1306 PUBLIC _des_encrypt2
1307 EXTRN _des_SPtrans:DWORD
1308 _des_encrypt2 PROC NEAR
1315 mov eax, DWORD PTR 20[esp]
1317 mov esi, DWORD PTR [eax]
1318 mov ebx, DWORD PTR 28[esp]
1320 mov edi, DWORD PTR 4[eax]
1323 mov ebp, DWORD PTR 24[esp]
1324 je $L002start_decrypt
1327 mov eax, DWORD PTR [ebp]
1329 mov edx, DWORD PTR 4[ebp]
1337 mov ebp, DWORD PTR _des_SPtrans[ebx]
1340 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
1344 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
1348 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
1350 mov ebp, DWORD PTR 24[esp]
1354 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
1356 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
1358 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
1360 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
1364 mov eax, DWORD PTR 8[ebp]
1366 mov edx, DWORD PTR 12[ebp]
1374 mov ebp, DWORD PTR _des_SPtrans[ebx]
1377 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
1381 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
1385 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
1387 mov ebp, DWORD PTR 24[esp]
1391 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
1393 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
1395 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
1397 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
1401 mov eax, DWORD PTR 16[ebp]
1403 mov edx, DWORD PTR 20[ebp]
1411 mov ebp, DWORD PTR _des_SPtrans[ebx]
1414 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
1418 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
1422 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
1424 mov ebp, DWORD PTR 24[esp]
1428 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
1430 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
1432 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
1434 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
1438 mov eax, DWORD PTR 24[ebp]
1440 mov edx, DWORD PTR 28[ebp]
1448 mov ebp, DWORD PTR _des_SPtrans[ebx]
1451 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
1455 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
1459 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
1461 mov ebp, DWORD PTR 24[esp]
1465 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
1467 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
1469 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
1471 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
1475 mov eax, DWORD PTR 32[ebp]
1477 mov edx, DWORD PTR 36[ebp]
1485 mov ebp, DWORD PTR _des_SPtrans[ebx]
1488 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
1492 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
1496 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
1498 mov ebp, DWORD PTR 24[esp]
1502 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
1504 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
1506 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
1508 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
1512 mov eax, DWORD PTR 40[ebp]
1514 mov edx, DWORD PTR 44[ebp]
1522 mov ebp, DWORD PTR _des_SPtrans[ebx]
1525 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
1529 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
1533 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
1535 mov ebp, DWORD PTR 24[esp]
1539 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
1541 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
1543 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
1545 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
1549 mov eax, DWORD PTR 48[ebp]
1551 mov edx, DWORD PTR 52[ebp]
1559 mov ebp, DWORD PTR _des_SPtrans[ebx]
1562 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
1566 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
1570 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
1572 mov ebp, DWORD PTR 24[esp]
1576 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
1578 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
1580 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
1582 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
1586 mov eax, DWORD PTR 56[ebp]
1588 mov edx, DWORD PTR 60[ebp]
1596 mov ebp, DWORD PTR _des_SPtrans[ebx]
1599 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
1603 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
1607 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
1609 mov ebp, DWORD PTR 24[esp]
1613 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
1615 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
1617 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
1619 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
1623 mov eax, DWORD PTR 64[ebp]
1625 mov edx, DWORD PTR 68[ebp]
1633 mov ebp, DWORD PTR _des_SPtrans[ebx]
1636 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
1640 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
1644 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
1646 mov ebp, DWORD PTR 24[esp]
1650 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
1652 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
1654 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
1656 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
1660 mov eax, DWORD PTR 72[ebp]
1662 mov edx, DWORD PTR 76[ebp]
1670 mov ebp, DWORD PTR _des_SPtrans[ebx]
1673 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
1677 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
1681 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
1683 mov ebp, DWORD PTR 24[esp]
1687 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
1689 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
1691 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
1693 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
1697 mov eax, DWORD PTR 80[ebp]
1699 mov edx, DWORD PTR 84[ebp]
1707 mov ebp, DWORD PTR _des_SPtrans[ebx]
1710 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
1714 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
1718 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
1720 mov ebp, DWORD PTR 24[esp]
1724 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
1726 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
1728 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
1730 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
1734 mov eax, DWORD PTR 88[ebp]
1736 mov edx, DWORD PTR 92[ebp]
1744 mov ebp, DWORD PTR _des_SPtrans[ebx]
1747 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
1751 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
1755 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
1757 mov ebp, DWORD PTR 24[esp]
1761 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
1763 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
1765 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
1767 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
1771 mov eax, DWORD PTR 96[ebp]
1773 mov edx, DWORD PTR 100[ebp]
1781 mov ebp, DWORD PTR _des_SPtrans[ebx]
1784 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
1788 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
1792 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
1794 mov ebp, DWORD PTR 24[esp]
1798 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
1800 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
1802 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
1804 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
1808 mov eax, DWORD PTR 104[ebp]
1810 mov edx, DWORD PTR 108[ebp]
1818 mov ebp, DWORD PTR _des_SPtrans[ebx]
1821 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
1825 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
1829 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
1831 mov ebp, DWORD PTR 24[esp]
1835 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
1837 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
1839 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
1841 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
1845 mov eax, DWORD PTR 112[ebp]
1847 mov edx, DWORD PTR 116[ebp]
1855 mov ebp, DWORD PTR _des_SPtrans[ebx]
1858 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
1862 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
1866 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
1868 mov ebp, DWORD PTR 24[esp]
1872 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
1874 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
1876 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
1878 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
1882 mov eax, DWORD PTR 120[ebp]
1884 mov edx, DWORD PTR 124[ebp]
1892 mov ebp, DWORD PTR _des_SPtrans[ebx]
1895 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
1899 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
1903 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
1905 mov ebp, DWORD PTR 24[esp]
1909 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
1911 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
1913 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
1915 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
1921 mov eax, DWORD PTR 120[ebp]
1923 mov edx, DWORD PTR 124[ebp]
1931 mov ebp, DWORD PTR _des_SPtrans[ebx]
1934 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
1938 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
1942 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
1944 mov ebp, DWORD PTR 24[esp]
1948 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
1950 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
1952 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
1954 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
1958 mov eax, DWORD PTR 112[ebp]
1960 mov edx, DWORD PTR 116[ebp]
1968 mov ebp, DWORD PTR _des_SPtrans[ebx]
1971 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
1975 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
1979 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
1981 mov ebp, DWORD PTR 24[esp]
1985 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
1987 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
1989 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
1991 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
1995 mov eax, DWORD PTR 104[ebp]
1997 mov edx, DWORD PTR 108[ebp]
2005 mov ebp, DWORD PTR _des_SPtrans[ebx]
2008 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
2012 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
2016 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
2018 mov ebp, DWORD PTR 24[esp]
2022 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
2024 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
2026 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
2028 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
2032 mov eax, DWORD PTR 96[ebp]
2034 mov edx, DWORD PTR 100[ebp]
2042 mov ebp, DWORD PTR _des_SPtrans[ebx]
2045 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
2049 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
2053 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
2055 mov ebp, DWORD PTR 24[esp]
2059 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
2061 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
2063 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
2065 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
2069 mov eax, DWORD PTR 88[ebp]
2071 mov edx, DWORD PTR 92[ebp]
2079 mov ebp, DWORD PTR _des_SPtrans[ebx]
2082 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
2086 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
2090 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
2092 mov ebp, DWORD PTR 24[esp]
2096 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
2098 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
2100 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
2102 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
2106 mov eax, DWORD PTR 80[ebp]
2108 mov edx, DWORD PTR 84[ebp]
2116 mov ebp, DWORD PTR _des_SPtrans[ebx]
2119 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
2123 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
2127 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
2129 mov ebp, DWORD PTR 24[esp]
2133 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
2135 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
2137 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
2139 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
2143 mov eax, DWORD PTR 72[ebp]
2145 mov edx, DWORD PTR 76[ebp]
2153 mov ebp, DWORD PTR _des_SPtrans[ebx]
2156 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
2160 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
2164 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
2166 mov ebp, DWORD PTR 24[esp]
2170 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
2172 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
2174 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
2176 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
2180 mov eax, DWORD PTR 64[ebp]
2182 mov edx, DWORD PTR 68[ebp]
2190 mov ebp, DWORD PTR _des_SPtrans[ebx]
2193 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
2197 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
2201 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
2203 mov ebp, DWORD PTR 24[esp]
2207 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
2209 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
2211 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
2213 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
2217 mov eax, DWORD PTR 56[ebp]
2219 mov edx, DWORD PTR 60[ebp]
2227 mov ebp, DWORD PTR _des_SPtrans[ebx]
2230 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
2234 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
2238 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
2240 mov ebp, DWORD PTR 24[esp]
2244 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
2246 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
2248 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
2250 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
2254 mov eax, DWORD PTR 48[ebp]
2256 mov edx, DWORD PTR 52[ebp]
2264 mov ebp, DWORD PTR _des_SPtrans[ebx]
2267 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
2271 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
2275 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
2277 mov ebp, DWORD PTR 24[esp]
2281 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
2283 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
2285 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
2287 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
2291 mov eax, DWORD PTR 40[ebp]
2293 mov edx, DWORD PTR 44[ebp]
2301 mov ebp, DWORD PTR _des_SPtrans[ebx]
2304 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
2308 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
2312 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
2314 mov ebp, DWORD PTR 24[esp]
2318 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
2320 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
2322 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
2324 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
2328 mov eax, DWORD PTR 32[ebp]
2330 mov edx, DWORD PTR 36[ebp]
2338 mov ebp, DWORD PTR _des_SPtrans[ebx]
2341 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
2345 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
2349 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
2351 mov ebp, DWORD PTR 24[esp]
2355 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
2357 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
2359 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
2361 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
2365 mov eax, DWORD PTR 24[ebp]
2367 mov edx, DWORD PTR 28[ebp]
2375 mov ebp, DWORD PTR _des_SPtrans[ebx]
2378 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
2382 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
2386 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
2388 mov ebp, DWORD PTR 24[esp]
2392 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
2394 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
2396 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
2398 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
2402 mov eax, DWORD PTR 16[ebp]
2404 mov edx, DWORD PTR 20[ebp]
2412 mov ebp, DWORD PTR _des_SPtrans[ebx]
2415 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
2419 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
2423 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
2425 mov ebp, DWORD PTR 24[esp]
2429 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
2431 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
2433 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
2435 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
2439 mov eax, DWORD PTR 8[ebp]
2441 mov edx, DWORD PTR 12[ebp]
2449 mov ebp, DWORD PTR _des_SPtrans[ebx]
2452 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
2456 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
2460 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
2462 mov ebp, DWORD PTR 24[esp]
2466 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
2468 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
2470 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
2472 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
2476 mov eax, DWORD PTR [ebp]
2478 mov edx, DWORD PTR 4[ebp]
2486 mov ebp, DWORD PTR _des_SPtrans[ebx]
2489 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
2493 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
2497 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
2499 mov ebp, DWORD PTR 24[esp]
2503 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
2505 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
2507 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
2509 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
2515 mov eax, DWORD PTR 20[esp]
2517 mov DWORD PTR [eax],edi
2518 mov DWORD PTR 4[eax],esi
2527 PUBLIC _des_encrypt3
2528 EXTRN _des_SPtrans:DWORD
2529 _des_encrypt3 PROC NEAR
2535 ; Load the data words
2536 mov ebx, DWORD PTR 20[esp]
2537 mov edi, DWORD PTR [ebx]
2538 mov esi, DWORD PTR 4[ebx]
2578 mov DWORD PTR 4[ebx],esi
2579 mov eax, DWORD PTR 24[esp]
2580 mov DWORD PTR [ebx],edx
2581 mov edi, DWORD PTR 28[esp]
2582 mov esi, DWORD PTR 32[esp]
2595 mov edi, DWORD PTR [ebx]
2597 mov esi, DWORD PTR 4[ebx]
2637 mov DWORD PTR [ebx],eax
2638 mov DWORD PTR 4[ebx],esi
2647 PUBLIC _des_decrypt3
2648 EXTRN _des_SPtrans:DWORD
2649 _des_decrypt3 PROC NEAR
2655 ; Load the data words
2656 mov ebx, DWORD PTR 20[esp]
2657 mov edi, DWORD PTR [ebx]
2658 mov esi, DWORD PTR 4[ebx]
2698 mov DWORD PTR 4[ebx],esi
2699 mov esi, DWORD PTR 24[esp]
2700 mov DWORD PTR [ebx],edx
2701 mov edi, DWORD PTR 28[esp]
2702 mov eax, DWORD PTR 32[esp]
2715 mov edi, DWORD PTR [ebx]
2717 mov esi, DWORD PTR 4[ebx]
2757 mov DWORD PTR [ebx],eax
2758 mov DWORD PTR 4[ebx],esi