1 ; Don't even think of reading this code
2 ; It was automatically generated by des-som3.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@cryptsoft.com>
7 ; The inner loop instruction sequence and the IP/FP modifications
8 ; are from Svend Olaf Mikkelsen <svolaf@inet.uni-c.dk>
15 EXTRN _des_SPtrans:DWORD
16 _des_encrypt PROC NEAR
23 mov esi, DWORD PTR 20[esp]
25 mov eax, DWORD PTR [esi]
26 mov ebx, DWORD PTR 28[esp]
27 mov edi, DWORD PTR 4[esi]
67 mov ebp, DWORD PTR 24[esp]
71 mov eax, DWORD PTR [ebp]
73 mov edx, DWORD PTR 4[ebp]
81 mov ebp, DWORD PTR _des_SPtrans[ebx]
84 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
88 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
92 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
94 mov ebp, DWORD PTR 24[esp]
98 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
100 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
102 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
104 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
108 mov eax, DWORD PTR 8[ebp]
110 mov edx, DWORD PTR 12[ebp]
118 mov ebp, DWORD PTR _des_SPtrans[ebx]
121 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
125 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
129 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
131 mov ebp, DWORD PTR 24[esp]
135 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
137 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
139 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
141 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
145 mov eax, DWORD PTR 16[ebp]
147 mov edx, DWORD PTR 20[ebp]
155 mov ebp, DWORD PTR _des_SPtrans[ebx]
158 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
162 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
166 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
168 mov ebp, DWORD PTR 24[esp]
172 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
174 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
176 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
178 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
182 mov eax, DWORD PTR 24[ebp]
184 mov edx, DWORD PTR 28[ebp]
192 mov ebp, DWORD PTR _des_SPtrans[ebx]
195 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
199 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
203 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
205 mov ebp, DWORD PTR 24[esp]
209 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
211 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
213 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
215 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
219 mov eax, DWORD PTR 32[ebp]
221 mov edx, DWORD PTR 36[ebp]
229 mov ebp, DWORD PTR _des_SPtrans[ebx]
232 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
236 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
240 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
242 mov ebp, DWORD PTR 24[esp]
246 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
248 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
250 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
252 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
256 mov eax, DWORD PTR 40[ebp]
258 mov edx, DWORD PTR 44[ebp]
266 mov ebp, DWORD PTR _des_SPtrans[ebx]
269 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
273 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
277 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
279 mov ebp, DWORD PTR 24[esp]
283 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
285 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
287 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
289 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
293 mov eax, DWORD PTR 48[ebp]
295 mov edx, DWORD PTR 52[ebp]
303 mov ebp, DWORD PTR _des_SPtrans[ebx]
306 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
310 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
314 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
316 mov ebp, DWORD PTR 24[esp]
320 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
322 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
324 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
326 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
330 mov eax, DWORD PTR 56[ebp]
332 mov edx, DWORD PTR 60[ebp]
340 mov ebp, DWORD PTR _des_SPtrans[ebx]
343 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
347 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
351 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
353 mov ebp, DWORD PTR 24[esp]
357 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
359 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
361 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
363 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
367 mov eax, DWORD PTR 64[ebp]
369 mov edx, DWORD PTR 68[ebp]
377 mov ebp, DWORD PTR _des_SPtrans[ebx]
380 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
384 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
388 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
390 mov ebp, DWORD PTR 24[esp]
394 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
396 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
398 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
400 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
404 mov eax, DWORD PTR 72[ebp]
406 mov edx, DWORD PTR 76[ebp]
414 mov ebp, DWORD PTR _des_SPtrans[ebx]
417 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
421 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
425 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
427 mov ebp, DWORD PTR 24[esp]
431 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
433 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
435 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
437 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
441 mov eax, DWORD PTR 80[ebp]
443 mov edx, DWORD PTR 84[ebp]
451 mov ebp, DWORD PTR _des_SPtrans[ebx]
454 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
458 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
462 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
464 mov ebp, DWORD PTR 24[esp]
468 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
470 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
472 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
474 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
478 mov eax, DWORD PTR 88[ebp]
480 mov edx, DWORD PTR 92[ebp]
488 mov ebp, DWORD PTR _des_SPtrans[ebx]
491 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
495 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
499 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
501 mov ebp, DWORD PTR 24[esp]
505 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
507 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
509 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
511 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
515 mov eax, DWORD PTR 96[ebp]
517 mov edx, DWORD PTR 100[ebp]
525 mov ebp, DWORD PTR _des_SPtrans[ebx]
528 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
532 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
536 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
538 mov ebp, DWORD PTR 24[esp]
542 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
544 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
546 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
548 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
552 mov eax, DWORD PTR 104[ebp]
554 mov edx, DWORD PTR 108[ebp]
562 mov ebp, DWORD PTR _des_SPtrans[ebx]
565 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
569 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
573 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
575 mov ebp, DWORD PTR 24[esp]
579 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
581 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
583 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
585 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
589 mov eax, DWORD PTR 112[ebp]
591 mov edx, DWORD PTR 116[ebp]
599 mov ebp, DWORD PTR _des_SPtrans[ebx]
602 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
606 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
610 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
612 mov ebp, DWORD PTR 24[esp]
616 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
618 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
620 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
622 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
626 mov eax, DWORD PTR 120[ebp]
628 mov edx, DWORD PTR 124[ebp]
636 mov ebp, DWORD PTR _des_SPtrans[ebx]
639 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
643 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
647 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
649 mov ebp, DWORD PTR 24[esp]
653 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
655 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
657 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
659 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
665 mov eax, DWORD PTR 120[ebp]
667 mov edx, DWORD PTR 124[ebp]
675 mov ebp, DWORD PTR _des_SPtrans[ebx]
678 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
682 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
686 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
688 mov ebp, DWORD PTR 24[esp]
692 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
694 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
696 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
698 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
702 mov eax, DWORD PTR 112[ebp]
704 mov edx, DWORD PTR 116[ebp]
712 mov ebp, DWORD PTR _des_SPtrans[ebx]
715 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
719 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
723 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
725 mov ebp, DWORD PTR 24[esp]
729 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
731 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
733 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
735 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
739 mov eax, DWORD PTR 104[ebp]
741 mov edx, DWORD PTR 108[ebp]
749 mov ebp, DWORD PTR _des_SPtrans[ebx]
752 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
756 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
760 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
762 mov ebp, DWORD PTR 24[esp]
766 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
768 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
770 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
772 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
776 mov eax, DWORD PTR 96[ebp]
778 mov edx, DWORD PTR 100[ebp]
786 mov ebp, DWORD PTR _des_SPtrans[ebx]
789 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
793 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
797 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
799 mov ebp, DWORD PTR 24[esp]
803 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
805 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
807 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
809 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
813 mov eax, DWORD PTR 88[ebp]
815 mov edx, DWORD PTR 92[ebp]
823 mov ebp, DWORD PTR _des_SPtrans[ebx]
826 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
830 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
834 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
836 mov ebp, DWORD PTR 24[esp]
840 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
842 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
844 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
846 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
850 mov eax, DWORD PTR 80[ebp]
852 mov edx, DWORD PTR 84[ebp]
860 mov ebp, DWORD PTR _des_SPtrans[ebx]
863 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
867 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
871 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
873 mov ebp, DWORD PTR 24[esp]
877 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
879 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
881 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
883 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
887 mov eax, DWORD PTR 72[ebp]
889 mov edx, DWORD PTR 76[ebp]
897 mov ebp, DWORD PTR _des_SPtrans[ebx]
900 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
904 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
908 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
910 mov ebp, DWORD PTR 24[esp]
914 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
916 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
918 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
920 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
924 mov eax, DWORD PTR 64[ebp]
926 mov edx, DWORD PTR 68[ebp]
934 mov ebp, DWORD PTR _des_SPtrans[ebx]
937 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
941 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
945 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
947 mov ebp, DWORD PTR 24[esp]
951 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
953 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
955 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
957 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
961 mov eax, DWORD PTR 56[ebp]
963 mov edx, DWORD PTR 60[ebp]
971 mov ebp, DWORD PTR _des_SPtrans[ebx]
974 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
978 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
982 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
984 mov ebp, DWORD PTR 24[esp]
988 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
990 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
992 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
994 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
998 mov eax, DWORD PTR 48[ebp]
1000 mov edx, DWORD PTR 52[ebp]
1008 mov ebp, DWORD PTR _des_SPtrans[ebx]
1011 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
1015 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
1019 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
1021 mov ebp, DWORD PTR 24[esp]
1025 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
1027 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
1029 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
1031 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
1035 mov eax, DWORD PTR 40[ebp]
1037 mov edx, DWORD PTR 44[ebp]
1045 mov ebp, DWORD PTR _des_SPtrans[ebx]
1048 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
1052 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
1056 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
1058 mov ebp, DWORD PTR 24[esp]
1062 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
1064 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
1066 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
1068 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
1072 mov eax, DWORD PTR 32[ebp]
1074 mov edx, DWORD PTR 36[ebp]
1082 mov ebp, DWORD PTR _des_SPtrans[ebx]
1085 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
1089 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
1093 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
1095 mov ebp, DWORD PTR 24[esp]
1099 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
1101 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
1103 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
1105 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
1109 mov eax, DWORD PTR 24[ebp]
1111 mov edx, DWORD PTR 28[ebp]
1119 mov ebp, DWORD PTR _des_SPtrans[ebx]
1122 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
1126 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
1130 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
1132 mov ebp, DWORD PTR 24[esp]
1136 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
1138 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
1140 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
1142 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
1146 mov eax, DWORD PTR 16[ebp]
1148 mov edx, DWORD PTR 20[ebp]
1156 mov ebp, DWORD PTR _des_SPtrans[ebx]
1159 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
1163 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
1167 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
1169 mov ebp, DWORD PTR 24[esp]
1173 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
1175 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
1177 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
1179 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
1183 mov eax, DWORD PTR 8[ebp]
1185 mov edx, DWORD PTR 12[ebp]
1193 mov ebp, DWORD PTR _des_SPtrans[ebx]
1196 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
1200 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
1204 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
1206 mov ebp, DWORD PTR 24[esp]
1210 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
1212 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
1214 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
1216 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
1220 mov eax, DWORD PTR [ebp]
1222 mov edx, DWORD PTR 4[ebp]
1230 mov ebp, DWORD PTR _des_SPtrans[ebx]
1233 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
1237 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
1241 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
1243 mov ebp, DWORD PTR 24[esp]
1247 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
1249 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
1251 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
1253 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
1258 mov edx, DWORD PTR 20[esp]
1295 mov DWORD PTR [edx],eax
1296 mov DWORD PTR 4[edx],esi
1305 PUBLIC _des_encrypt2
1306 EXTRN _des_SPtrans:DWORD
1307 _des_encrypt2 PROC NEAR
1314 mov eax, DWORD PTR 20[esp]
1316 mov esi, DWORD PTR [eax]
1317 mov ebx, DWORD PTR 28[esp]
1319 mov edi, DWORD PTR 4[eax]
1322 mov ebp, DWORD PTR 24[esp]
1323 je $L002start_decrypt
1326 mov eax, DWORD PTR [ebp]
1328 mov edx, DWORD PTR 4[ebp]
1336 mov ebp, DWORD PTR _des_SPtrans[ebx]
1339 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
1343 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
1347 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
1349 mov ebp, DWORD PTR 24[esp]
1353 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
1355 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
1357 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
1359 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
1363 mov eax, DWORD PTR 8[ebp]
1365 mov edx, DWORD PTR 12[ebp]
1373 mov ebp, DWORD PTR _des_SPtrans[ebx]
1376 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
1380 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
1384 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
1386 mov ebp, DWORD PTR 24[esp]
1390 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
1392 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
1394 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
1396 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
1400 mov eax, DWORD PTR 16[ebp]
1402 mov edx, DWORD PTR 20[ebp]
1410 mov ebp, DWORD PTR _des_SPtrans[ebx]
1413 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
1417 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
1421 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
1423 mov ebp, DWORD PTR 24[esp]
1427 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
1429 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
1431 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
1433 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
1437 mov eax, DWORD PTR 24[ebp]
1439 mov edx, DWORD PTR 28[ebp]
1447 mov ebp, DWORD PTR _des_SPtrans[ebx]
1450 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
1454 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
1458 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
1460 mov ebp, DWORD PTR 24[esp]
1464 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
1466 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
1468 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
1470 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
1474 mov eax, DWORD PTR 32[ebp]
1476 mov edx, DWORD PTR 36[ebp]
1484 mov ebp, DWORD PTR _des_SPtrans[ebx]
1487 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
1491 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
1495 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
1497 mov ebp, DWORD PTR 24[esp]
1501 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
1503 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
1505 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
1507 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
1511 mov eax, DWORD PTR 40[ebp]
1513 mov edx, DWORD PTR 44[ebp]
1521 mov ebp, DWORD PTR _des_SPtrans[ebx]
1524 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
1528 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
1532 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
1534 mov ebp, DWORD PTR 24[esp]
1538 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
1540 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
1542 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
1544 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
1548 mov eax, DWORD PTR 48[ebp]
1550 mov edx, DWORD PTR 52[ebp]
1558 mov ebp, DWORD PTR _des_SPtrans[ebx]
1561 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
1565 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
1569 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
1571 mov ebp, DWORD PTR 24[esp]
1575 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
1577 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
1579 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
1581 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
1585 mov eax, DWORD PTR 56[ebp]
1587 mov edx, DWORD PTR 60[ebp]
1595 mov ebp, DWORD PTR _des_SPtrans[ebx]
1598 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
1602 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
1606 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
1608 mov ebp, DWORD PTR 24[esp]
1612 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
1614 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
1616 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
1618 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
1622 mov eax, DWORD PTR 64[ebp]
1624 mov edx, DWORD PTR 68[ebp]
1632 mov ebp, DWORD PTR _des_SPtrans[ebx]
1635 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
1639 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
1643 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
1645 mov ebp, DWORD PTR 24[esp]
1649 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
1651 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
1653 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
1655 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
1659 mov eax, DWORD PTR 72[ebp]
1661 mov edx, DWORD PTR 76[ebp]
1669 mov ebp, DWORD PTR _des_SPtrans[ebx]
1672 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
1676 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
1680 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
1682 mov ebp, DWORD PTR 24[esp]
1686 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
1688 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
1690 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
1692 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
1696 mov eax, DWORD PTR 80[ebp]
1698 mov edx, DWORD PTR 84[ebp]
1706 mov ebp, DWORD PTR _des_SPtrans[ebx]
1709 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
1713 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
1717 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
1719 mov ebp, DWORD PTR 24[esp]
1723 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
1725 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
1727 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
1729 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
1733 mov eax, DWORD PTR 88[ebp]
1735 mov edx, DWORD PTR 92[ebp]
1743 mov ebp, DWORD PTR _des_SPtrans[ebx]
1746 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
1750 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
1754 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
1756 mov ebp, DWORD PTR 24[esp]
1760 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
1762 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
1764 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
1766 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
1770 mov eax, DWORD PTR 96[ebp]
1772 mov edx, DWORD PTR 100[ebp]
1780 mov ebp, DWORD PTR _des_SPtrans[ebx]
1783 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
1787 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
1791 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
1793 mov ebp, DWORD PTR 24[esp]
1797 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
1799 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
1801 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
1803 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
1807 mov eax, DWORD PTR 104[ebp]
1809 mov edx, DWORD PTR 108[ebp]
1817 mov ebp, DWORD PTR _des_SPtrans[ebx]
1820 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
1824 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
1828 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
1830 mov ebp, DWORD PTR 24[esp]
1834 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
1836 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
1838 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
1840 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
1844 mov eax, DWORD PTR 112[ebp]
1846 mov edx, DWORD PTR 116[ebp]
1854 mov ebp, DWORD PTR _des_SPtrans[ebx]
1857 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
1861 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
1865 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
1867 mov ebp, DWORD PTR 24[esp]
1871 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
1873 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
1875 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
1877 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
1881 mov eax, DWORD PTR 120[ebp]
1883 mov edx, DWORD PTR 124[ebp]
1891 mov ebp, DWORD PTR _des_SPtrans[ebx]
1894 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
1898 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
1902 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
1904 mov ebp, DWORD PTR 24[esp]
1908 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
1910 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
1912 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
1914 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
1920 mov eax, DWORD PTR 120[ebp]
1922 mov edx, DWORD PTR 124[ebp]
1930 mov ebp, DWORD PTR _des_SPtrans[ebx]
1933 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
1937 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
1941 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
1943 mov ebp, DWORD PTR 24[esp]
1947 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
1949 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
1951 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
1953 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
1957 mov eax, DWORD PTR 112[ebp]
1959 mov edx, DWORD PTR 116[ebp]
1967 mov ebp, DWORD PTR _des_SPtrans[ebx]
1970 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
1974 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
1978 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
1980 mov ebp, DWORD PTR 24[esp]
1984 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
1986 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
1988 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
1990 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
1994 mov eax, DWORD PTR 104[ebp]
1996 mov edx, DWORD PTR 108[ebp]
2004 mov ebp, DWORD PTR _des_SPtrans[ebx]
2007 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
2011 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
2015 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
2017 mov ebp, DWORD PTR 24[esp]
2021 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
2023 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
2025 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
2027 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
2031 mov eax, DWORD PTR 96[ebp]
2033 mov edx, DWORD PTR 100[ebp]
2041 mov ebp, DWORD PTR _des_SPtrans[ebx]
2044 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
2048 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
2052 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
2054 mov ebp, DWORD PTR 24[esp]
2058 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
2060 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
2062 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
2064 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
2068 mov eax, DWORD PTR 88[ebp]
2070 mov edx, DWORD PTR 92[ebp]
2078 mov ebp, DWORD PTR _des_SPtrans[ebx]
2081 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
2085 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
2089 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
2091 mov ebp, DWORD PTR 24[esp]
2095 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
2097 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
2099 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
2101 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
2105 mov eax, DWORD PTR 80[ebp]
2107 mov edx, DWORD PTR 84[ebp]
2115 mov ebp, DWORD PTR _des_SPtrans[ebx]
2118 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
2122 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
2126 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
2128 mov ebp, DWORD PTR 24[esp]
2132 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
2134 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
2136 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
2138 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
2142 mov eax, DWORD PTR 72[ebp]
2144 mov edx, DWORD PTR 76[ebp]
2152 mov ebp, DWORD PTR _des_SPtrans[ebx]
2155 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
2159 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
2163 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
2165 mov ebp, DWORD PTR 24[esp]
2169 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
2171 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
2173 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
2175 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
2179 mov eax, DWORD PTR 64[ebp]
2181 mov edx, DWORD PTR 68[ebp]
2189 mov ebp, DWORD PTR _des_SPtrans[ebx]
2192 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
2196 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
2200 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
2202 mov ebp, DWORD PTR 24[esp]
2206 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
2208 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
2210 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
2212 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
2216 mov eax, DWORD PTR 56[ebp]
2218 mov edx, DWORD PTR 60[ebp]
2226 mov ebp, DWORD PTR _des_SPtrans[ebx]
2229 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
2233 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
2237 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
2239 mov ebp, DWORD PTR 24[esp]
2243 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
2245 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
2247 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
2249 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
2253 mov eax, DWORD PTR 48[ebp]
2255 mov edx, DWORD PTR 52[ebp]
2263 mov ebp, DWORD PTR _des_SPtrans[ebx]
2266 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
2270 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
2274 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
2276 mov ebp, DWORD PTR 24[esp]
2280 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
2282 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
2284 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
2286 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
2290 mov eax, DWORD PTR 40[ebp]
2292 mov edx, DWORD PTR 44[ebp]
2300 mov ebp, DWORD PTR _des_SPtrans[ebx]
2303 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
2307 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
2311 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
2313 mov ebp, DWORD PTR 24[esp]
2317 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
2319 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
2321 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
2323 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
2327 mov eax, DWORD PTR 32[ebp]
2329 mov edx, DWORD PTR 36[ebp]
2337 mov ebp, DWORD PTR _des_SPtrans[ebx]
2340 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
2344 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
2348 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
2350 mov ebp, DWORD PTR 24[esp]
2354 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
2356 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
2358 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
2360 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
2364 mov eax, DWORD PTR 24[ebp]
2366 mov edx, DWORD PTR 28[ebp]
2374 mov ebp, DWORD PTR _des_SPtrans[ebx]
2377 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
2381 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
2385 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
2387 mov ebp, DWORD PTR 24[esp]
2391 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
2393 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
2395 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
2397 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
2401 mov eax, DWORD PTR 16[ebp]
2403 mov edx, DWORD PTR 20[ebp]
2411 mov ebp, DWORD PTR _des_SPtrans[ebx]
2414 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
2418 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
2422 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
2424 mov ebp, DWORD PTR 24[esp]
2428 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
2430 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
2432 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
2434 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
2438 mov eax, DWORD PTR 8[ebp]
2440 mov edx, DWORD PTR 12[ebp]
2448 mov ebp, DWORD PTR _des_SPtrans[ebx]
2451 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
2455 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
2459 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
2461 mov ebp, DWORD PTR 24[esp]
2465 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
2467 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
2469 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
2471 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
2475 mov eax, DWORD PTR [ebp]
2477 mov edx, DWORD PTR 4[ebp]
2485 mov ebp, DWORD PTR _des_SPtrans[ebx]
2488 mov ebp, DWORD PTR _des_SPtrans[0200h+ecx]
2492 mov ebp, DWORD PTR _des_SPtrans[0100h+ebx]
2496 mov ebp, DWORD PTR _des_SPtrans[0300h+ecx]
2498 mov ebp, DWORD PTR 24[esp]
2502 mov ebx, DWORD PTR _des_SPtrans[0600h+ebx]
2504 mov ebx, DWORD PTR _des_SPtrans[0700h+ecx]
2506 mov ebx, DWORD PTR _des_SPtrans[0400h+eax]
2508 mov ebx, DWORD PTR _des_SPtrans[0500h+edx]
2514 mov eax, DWORD PTR 20[esp]
2516 mov DWORD PTR [eax],edi
2517 mov DWORD PTR 4[eax],esi
2526 PUBLIC _des_encrypt3
2527 EXTRN _des_SPtrans:DWORD
2528 _des_encrypt3 PROC NEAR
2534 ; Load the data words
2535 mov ebx, DWORD PTR 20[esp]
2536 mov edi, DWORD PTR [ebx]
2537 mov esi, DWORD PTR 4[ebx]
2577 mov DWORD PTR 4[ebx],esi
2578 mov eax, DWORD PTR 24[esp]
2579 mov DWORD PTR [ebx],edx
2580 mov edi, DWORD PTR 28[esp]
2581 mov esi, DWORD PTR 32[esp]
2594 mov edi, DWORD PTR [ebx]
2596 mov esi, DWORD PTR 4[ebx]
2636 mov DWORD PTR [ebx],eax
2637 mov DWORD PTR 4[ebx],esi
2646 PUBLIC _des_decrypt3
2647 EXTRN _des_SPtrans:DWORD
2648 _des_decrypt3 PROC NEAR
2654 ; Load the data words
2655 mov ebx, DWORD PTR 20[esp]
2656 mov edi, DWORD PTR [ebx]
2657 mov esi, DWORD PTR 4[ebx]
2697 mov DWORD PTR 4[ebx],esi
2698 mov esi, DWORD PTR 24[esp]
2699 mov DWORD PTR [ebx],edx
2700 mov edi, DWORD PTR 28[esp]
2701 mov eax, DWORD PTR 32[esp]
2714 mov edi, DWORD PTR [ebx]
2716 mov esi, DWORD PTR 4[ebx]
2756 mov DWORD PTR [ebx],eax
2757 mov DWORD PTR 4[ebx],esi