OLD | NEW |
| (Empty) |
1 default rel | |
2 %define XMMWORD | |
3 %define YMMWORD | |
4 %define ZMMWORD | |
5 section .text code align=64 | |
6 | |
7 EXTERN OPENSSL_ia32cap_P | |
8 | |
9 global sha1_block_data_order | |
10 | |
11 ALIGN 16 | |
12 sha1_block_data_order: | |
13 mov QWORD[8+rsp],rdi ;WIN64 prologue | |
14 mov QWORD[16+rsp],rsi | |
15 mov rax,rsp | |
16 $L$SEH_begin_sha1_block_data_order: | |
17 mov rdi,rcx | |
18 mov rsi,rdx | |
19 mov rdx,r8 | |
20 | |
21 | |
22 mov r9d,DWORD[((OPENSSL_ia32cap_P+0))] | |
23 mov r8d,DWORD[((OPENSSL_ia32cap_P+4))] | |
24 mov r10d,DWORD[((OPENSSL_ia32cap_P+8))] | |
25 test r8d,512 | |
26 jz NEAR $L$ialu | |
27 and r8d,268435456 | |
28 and r9d,1073741824 | |
29 or r8d,r9d | |
30 cmp r8d,1342177280 | |
31 je NEAR _avx_shortcut | |
32 jmp NEAR _ssse3_shortcut | |
33 | |
34 ALIGN 16 | |
35 $L$ialu: | |
36 mov rax,rsp | |
37 push rbx | |
38 push rbp | |
39 push r12 | |
40 push r13 | |
41 push r14 | |
42 mov r8,rdi | |
43 sub rsp,72 | |
44 mov r9,rsi | |
45 and rsp,-64 | |
46 mov r10,rdx | |
47 mov QWORD[64+rsp],rax | |
48 $L$prologue: | |
49 | |
50 mov esi,DWORD[r8] | |
51 mov edi,DWORD[4+r8] | |
52 mov r11d,DWORD[8+r8] | |
53 mov r12d,DWORD[12+r8] | |
54 mov r13d,DWORD[16+r8] | |
55 jmp NEAR $L$loop | |
56 | |
57 ALIGN 16 | |
58 $L$loop: | |
59 mov edx,DWORD[r9] | |
60 bswap edx | |
61 mov ebp,DWORD[4+r9] | |
62 mov eax,r12d | |
63 mov DWORD[rsp],edx | |
64 mov ecx,esi | |
65 bswap ebp | |
66 xor eax,r11d | |
67 rol ecx,5 | |
68 and eax,edi | |
69 lea r13d,[1518500249+r13*1+rdx] | |
70 add r13d,ecx | |
71 xor eax,r12d | |
72 rol edi,30 | |
73 add r13d,eax | |
74 mov r14d,DWORD[8+r9] | |
75 mov eax,r11d | |
76 mov DWORD[4+rsp],ebp | |
77 mov ecx,r13d | |
78 bswap r14d | |
79 xor eax,edi | |
80 rol ecx,5 | |
81 and eax,esi | |
82 lea r12d,[1518500249+r12*1+rbp] | |
83 add r12d,ecx | |
84 xor eax,r11d | |
85 rol esi,30 | |
86 add r12d,eax | |
87 mov edx,DWORD[12+r9] | |
88 mov eax,edi | |
89 mov DWORD[8+rsp],r14d | |
90 mov ecx,r12d | |
91 bswap edx | |
92 xor eax,esi | |
93 rol ecx,5 | |
94 and eax,r13d | |
95 lea r11d,[1518500249+r11*1+r14] | |
96 add r11d,ecx | |
97 xor eax,edi | |
98 rol r13d,30 | |
99 add r11d,eax | |
100 mov ebp,DWORD[16+r9] | |
101 mov eax,esi | |
102 mov DWORD[12+rsp],edx | |
103 mov ecx,r11d | |
104 bswap ebp | |
105 xor eax,r13d | |
106 rol ecx,5 | |
107 and eax,r12d | |
108 lea edi,[1518500249+rdi*1+rdx] | |
109 add edi,ecx | |
110 xor eax,esi | |
111 rol r12d,30 | |
112 add edi,eax | |
113 mov r14d,DWORD[20+r9] | |
114 mov eax,r13d | |
115 mov DWORD[16+rsp],ebp | |
116 mov ecx,edi | |
117 bswap r14d | |
118 xor eax,r12d | |
119 rol ecx,5 | |
120 and eax,r11d | |
121 lea esi,[1518500249+rsi*1+rbp] | |
122 add esi,ecx | |
123 xor eax,r13d | |
124 rol r11d,30 | |
125 add esi,eax | |
126 mov edx,DWORD[24+r9] | |
127 mov eax,r12d | |
128 mov DWORD[20+rsp],r14d | |
129 mov ecx,esi | |
130 bswap edx | |
131 xor eax,r11d | |
132 rol ecx,5 | |
133 and eax,edi | |
134 lea r13d,[1518500249+r13*1+r14] | |
135 add r13d,ecx | |
136 xor eax,r12d | |
137 rol edi,30 | |
138 add r13d,eax | |
139 mov ebp,DWORD[28+r9] | |
140 mov eax,r11d | |
141 mov DWORD[24+rsp],edx | |
142 mov ecx,r13d | |
143 bswap ebp | |
144 xor eax,edi | |
145 rol ecx,5 | |
146 and eax,esi | |
147 lea r12d,[1518500249+r12*1+rdx] | |
148 add r12d,ecx | |
149 xor eax,r11d | |
150 rol esi,30 | |
151 add r12d,eax | |
152 mov r14d,DWORD[32+r9] | |
153 mov eax,edi | |
154 mov DWORD[28+rsp],ebp | |
155 mov ecx,r12d | |
156 bswap r14d | |
157 xor eax,esi | |
158 rol ecx,5 | |
159 and eax,r13d | |
160 lea r11d,[1518500249+r11*1+rbp] | |
161 add r11d,ecx | |
162 xor eax,edi | |
163 rol r13d,30 | |
164 add r11d,eax | |
165 mov edx,DWORD[36+r9] | |
166 mov eax,esi | |
167 mov DWORD[32+rsp],r14d | |
168 mov ecx,r11d | |
169 bswap edx | |
170 xor eax,r13d | |
171 rol ecx,5 | |
172 and eax,r12d | |
173 lea edi,[1518500249+rdi*1+r14] | |
174 add edi,ecx | |
175 xor eax,esi | |
176 rol r12d,30 | |
177 add edi,eax | |
178 mov ebp,DWORD[40+r9] | |
179 mov eax,r13d | |
180 mov DWORD[36+rsp],edx | |
181 mov ecx,edi | |
182 bswap ebp | |
183 xor eax,r12d | |
184 rol ecx,5 | |
185 and eax,r11d | |
186 lea esi,[1518500249+rsi*1+rdx] | |
187 add esi,ecx | |
188 xor eax,r13d | |
189 rol r11d,30 | |
190 add esi,eax | |
191 mov r14d,DWORD[44+r9] | |
192 mov eax,r12d | |
193 mov DWORD[40+rsp],ebp | |
194 mov ecx,esi | |
195 bswap r14d | |
196 xor eax,r11d | |
197 rol ecx,5 | |
198 and eax,edi | |
199 lea r13d,[1518500249+r13*1+rbp] | |
200 add r13d,ecx | |
201 xor eax,r12d | |
202 rol edi,30 | |
203 add r13d,eax | |
204 mov edx,DWORD[48+r9] | |
205 mov eax,r11d | |
206 mov DWORD[44+rsp],r14d | |
207 mov ecx,r13d | |
208 bswap edx | |
209 xor eax,edi | |
210 rol ecx,5 | |
211 and eax,esi | |
212 lea r12d,[1518500249+r12*1+r14] | |
213 add r12d,ecx | |
214 xor eax,r11d | |
215 rol esi,30 | |
216 add r12d,eax | |
217 mov ebp,DWORD[52+r9] | |
218 mov eax,edi | |
219 mov DWORD[48+rsp],edx | |
220 mov ecx,r12d | |
221 bswap ebp | |
222 xor eax,esi | |
223 rol ecx,5 | |
224 and eax,r13d | |
225 lea r11d,[1518500249+r11*1+rdx] | |
226 add r11d,ecx | |
227 xor eax,edi | |
228 rol r13d,30 | |
229 add r11d,eax | |
230 mov r14d,DWORD[56+r9] | |
231 mov eax,esi | |
232 mov DWORD[52+rsp],ebp | |
233 mov ecx,r11d | |
234 bswap r14d | |
235 xor eax,r13d | |
236 rol ecx,5 | |
237 and eax,r12d | |
238 lea edi,[1518500249+rdi*1+rbp] | |
239 add edi,ecx | |
240 xor eax,esi | |
241 rol r12d,30 | |
242 add edi,eax | |
243 mov edx,DWORD[60+r9] | |
244 mov eax,r13d | |
245 mov DWORD[56+rsp],r14d | |
246 mov ecx,edi | |
247 bswap edx | |
248 xor eax,r12d | |
249 rol ecx,5 | |
250 and eax,r11d | |
251 lea esi,[1518500249+rsi*1+r14] | |
252 add esi,ecx | |
253 xor eax,r13d | |
254 rol r11d,30 | |
255 add esi,eax | |
256 xor ebp,DWORD[rsp] | |
257 mov eax,r12d | |
258 mov DWORD[60+rsp],edx | |
259 mov ecx,esi | |
260 xor ebp,DWORD[8+rsp] | |
261 xor eax,r11d | |
262 rol ecx,5 | |
263 xor ebp,DWORD[32+rsp] | |
264 and eax,edi | |
265 lea r13d,[1518500249+r13*1+rdx] | |
266 rol edi,30 | |
267 xor eax,r12d | |
268 add r13d,ecx | |
269 rol ebp,1 | |
270 add r13d,eax | |
271 xor r14d,DWORD[4+rsp] | |
272 mov eax,r11d | |
273 mov DWORD[rsp],ebp | |
274 mov ecx,r13d | |
275 xor r14d,DWORD[12+rsp] | |
276 xor eax,edi | |
277 rol ecx,5 | |
278 xor r14d,DWORD[36+rsp] | |
279 and eax,esi | |
280 lea r12d,[1518500249+r12*1+rbp] | |
281 rol esi,30 | |
282 xor eax,r11d | |
283 add r12d,ecx | |
284 rol r14d,1 | |
285 add r12d,eax | |
286 xor edx,DWORD[8+rsp] | |
287 mov eax,edi | |
288 mov DWORD[4+rsp],r14d | |
289 mov ecx,r12d | |
290 xor edx,DWORD[16+rsp] | |
291 xor eax,esi | |
292 rol ecx,5 | |
293 xor edx,DWORD[40+rsp] | |
294 and eax,r13d | |
295 lea r11d,[1518500249+r11*1+r14] | |
296 rol r13d,30 | |
297 xor eax,edi | |
298 add r11d,ecx | |
299 rol edx,1 | |
300 add r11d,eax | |
301 xor ebp,DWORD[12+rsp] | |
302 mov eax,esi | |
303 mov DWORD[8+rsp],edx | |
304 mov ecx,r11d | |
305 xor ebp,DWORD[20+rsp] | |
306 xor eax,r13d | |
307 rol ecx,5 | |
308 xor ebp,DWORD[44+rsp] | |
309 and eax,r12d | |
310 lea edi,[1518500249+rdi*1+rdx] | |
311 rol r12d,30 | |
312 xor eax,esi | |
313 add edi,ecx | |
314 rol ebp,1 | |
315 add edi,eax | |
316 xor r14d,DWORD[16+rsp] | |
317 mov eax,r13d | |
318 mov DWORD[12+rsp],ebp | |
319 mov ecx,edi | |
320 xor r14d,DWORD[24+rsp] | |
321 xor eax,r12d | |
322 rol ecx,5 | |
323 xor r14d,DWORD[48+rsp] | |
324 and eax,r11d | |
325 lea esi,[1518500249+rsi*1+rbp] | |
326 rol r11d,30 | |
327 xor eax,r13d | |
328 add esi,ecx | |
329 rol r14d,1 | |
330 add esi,eax | |
331 xor edx,DWORD[20+rsp] | |
332 mov eax,edi | |
333 mov DWORD[16+rsp],r14d | |
334 mov ecx,esi | |
335 xor edx,DWORD[28+rsp] | |
336 xor eax,r12d | |
337 rol ecx,5 | |
338 xor edx,DWORD[52+rsp] | |
339 lea r13d,[1859775393+r13*1+r14] | |
340 xor eax,r11d | |
341 add r13d,ecx | |
342 rol edi,30 | |
343 add r13d,eax | |
344 rol edx,1 | |
345 xor ebp,DWORD[24+rsp] | |
346 mov eax,esi | |
347 mov DWORD[20+rsp],edx | |
348 mov ecx,r13d | |
349 xor ebp,DWORD[32+rsp] | |
350 xor eax,r11d | |
351 rol ecx,5 | |
352 xor ebp,DWORD[56+rsp] | |
353 lea r12d,[1859775393+r12*1+rdx] | |
354 xor eax,edi | |
355 add r12d,ecx | |
356 rol esi,30 | |
357 add r12d,eax | |
358 rol ebp,1 | |
359 xor r14d,DWORD[28+rsp] | |
360 mov eax,r13d | |
361 mov DWORD[24+rsp],ebp | |
362 mov ecx,r12d | |
363 xor r14d,DWORD[36+rsp] | |
364 xor eax,edi | |
365 rol ecx,5 | |
366 xor r14d,DWORD[60+rsp] | |
367 lea r11d,[1859775393+r11*1+rbp] | |
368 xor eax,esi | |
369 add r11d,ecx | |
370 rol r13d,30 | |
371 add r11d,eax | |
372 rol r14d,1 | |
373 xor edx,DWORD[32+rsp] | |
374 mov eax,r12d | |
375 mov DWORD[28+rsp],r14d | |
376 mov ecx,r11d | |
377 xor edx,DWORD[40+rsp] | |
378 xor eax,esi | |
379 rol ecx,5 | |
380 xor edx,DWORD[rsp] | |
381 lea edi,[1859775393+rdi*1+r14] | |
382 xor eax,r13d | |
383 add edi,ecx | |
384 rol r12d,30 | |
385 add edi,eax | |
386 rol edx,1 | |
387 xor ebp,DWORD[36+rsp] | |
388 mov eax,r11d | |
389 mov DWORD[32+rsp],edx | |
390 mov ecx,edi | |
391 xor ebp,DWORD[44+rsp] | |
392 xor eax,r13d | |
393 rol ecx,5 | |
394 xor ebp,DWORD[4+rsp] | |
395 lea esi,[1859775393+rsi*1+rdx] | |
396 xor eax,r12d | |
397 add esi,ecx | |
398 rol r11d,30 | |
399 add esi,eax | |
400 rol ebp,1 | |
401 xor r14d,DWORD[40+rsp] | |
402 mov eax,edi | |
403 mov DWORD[36+rsp],ebp | |
404 mov ecx,esi | |
405 xor r14d,DWORD[48+rsp] | |
406 xor eax,r12d | |
407 rol ecx,5 | |
408 xor r14d,DWORD[8+rsp] | |
409 lea r13d,[1859775393+r13*1+rbp] | |
410 xor eax,r11d | |
411 add r13d,ecx | |
412 rol edi,30 | |
413 add r13d,eax | |
414 rol r14d,1 | |
415 xor edx,DWORD[44+rsp] | |
416 mov eax,esi | |
417 mov DWORD[40+rsp],r14d | |
418 mov ecx,r13d | |
419 xor edx,DWORD[52+rsp] | |
420 xor eax,r11d | |
421 rol ecx,5 | |
422 xor edx,DWORD[12+rsp] | |
423 lea r12d,[1859775393+r12*1+r14] | |
424 xor eax,edi | |
425 add r12d,ecx | |
426 rol esi,30 | |
427 add r12d,eax | |
428 rol edx,1 | |
429 xor ebp,DWORD[48+rsp] | |
430 mov eax,r13d | |
431 mov DWORD[44+rsp],edx | |
432 mov ecx,r12d | |
433 xor ebp,DWORD[56+rsp] | |
434 xor eax,edi | |
435 rol ecx,5 | |
436 xor ebp,DWORD[16+rsp] | |
437 lea r11d,[1859775393+r11*1+rdx] | |
438 xor eax,esi | |
439 add r11d,ecx | |
440 rol r13d,30 | |
441 add r11d,eax | |
442 rol ebp,1 | |
443 xor r14d,DWORD[52+rsp] | |
444 mov eax,r12d | |
445 mov DWORD[48+rsp],ebp | |
446 mov ecx,r11d | |
447 xor r14d,DWORD[60+rsp] | |
448 xor eax,esi | |
449 rol ecx,5 | |
450 xor r14d,DWORD[20+rsp] | |
451 lea edi,[1859775393+rdi*1+rbp] | |
452 xor eax,r13d | |
453 add edi,ecx | |
454 rol r12d,30 | |
455 add edi,eax | |
456 rol r14d,1 | |
457 xor edx,DWORD[56+rsp] | |
458 mov eax,r11d | |
459 mov DWORD[52+rsp],r14d | |
460 mov ecx,edi | |
461 xor edx,DWORD[rsp] | |
462 xor eax,r13d | |
463 rol ecx,5 | |
464 xor edx,DWORD[24+rsp] | |
465 lea esi,[1859775393+rsi*1+r14] | |
466 xor eax,r12d | |
467 add esi,ecx | |
468 rol r11d,30 | |
469 add esi,eax | |
470 rol edx,1 | |
471 xor ebp,DWORD[60+rsp] | |
472 mov eax,edi | |
473 mov DWORD[56+rsp],edx | |
474 mov ecx,esi | |
475 xor ebp,DWORD[4+rsp] | |
476 xor eax,r12d | |
477 rol ecx,5 | |
478 xor ebp,DWORD[28+rsp] | |
479 lea r13d,[1859775393+r13*1+rdx] | |
480 xor eax,r11d | |
481 add r13d,ecx | |
482 rol edi,30 | |
483 add r13d,eax | |
484 rol ebp,1 | |
485 xor r14d,DWORD[rsp] | |
486 mov eax,esi | |
487 mov DWORD[60+rsp],ebp | |
488 mov ecx,r13d | |
489 xor r14d,DWORD[8+rsp] | |
490 xor eax,r11d | |
491 rol ecx,5 | |
492 xor r14d,DWORD[32+rsp] | |
493 lea r12d,[1859775393+r12*1+rbp] | |
494 xor eax,edi | |
495 add r12d,ecx | |
496 rol esi,30 | |
497 add r12d,eax | |
498 rol r14d,1 | |
499 xor edx,DWORD[4+rsp] | |
500 mov eax,r13d | |
501 mov DWORD[rsp],r14d | |
502 mov ecx,r12d | |
503 xor edx,DWORD[12+rsp] | |
504 xor eax,edi | |
505 rol ecx,5 | |
506 xor edx,DWORD[36+rsp] | |
507 lea r11d,[1859775393+r11*1+r14] | |
508 xor eax,esi | |
509 add r11d,ecx | |
510 rol r13d,30 | |
511 add r11d,eax | |
512 rol edx,1 | |
513 xor ebp,DWORD[8+rsp] | |
514 mov eax,r12d | |
515 mov DWORD[4+rsp],edx | |
516 mov ecx,r11d | |
517 xor ebp,DWORD[16+rsp] | |
518 xor eax,esi | |
519 rol ecx,5 | |
520 xor ebp,DWORD[40+rsp] | |
521 lea edi,[1859775393+rdi*1+rdx] | |
522 xor eax,r13d | |
523 add edi,ecx | |
524 rol r12d,30 | |
525 add edi,eax | |
526 rol ebp,1 | |
527 xor r14d,DWORD[12+rsp] | |
528 mov eax,r11d | |
529 mov DWORD[8+rsp],ebp | |
530 mov ecx,edi | |
531 xor r14d,DWORD[20+rsp] | |
532 xor eax,r13d | |
533 rol ecx,5 | |
534 xor r14d,DWORD[44+rsp] | |
535 lea esi,[1859775393+rsi*1+rbp] | |
536 xor eax,r12d | |
537 add esi,ecx | |
538 rol r11d,30 | |
539 add esi,eax | |
540 rol r14d,1 | |
541 xor edx,DWORD[16+rsp] | |
542 mov eax,edi | |
543 mov DWORD[12+rsp],r14d | |
544 mov ecx,esi | |
545 xor edx,DWORD[24+rsp] | |
546 xor eax,r12d | |
547 rol ecx,5 | |
548 xor edx,DWORD[48+rsp] | |
549 lea r13d,[1859775393+r13*1+r14] | |
550 xor eax,r11d | |
551 add r13d,ecx | |
552 rol edi,30 | |
553 add r13d,eax | |
554 rol edx,1 | |
555 xor ebp,DWORD[20+rsp] | |
556 mov eax,esi | |
557 mov DWORD[16+rsp],edx | |
558 mov ecx,r13d | |
559 xor ebp,DWORD[28+rsp] | |
560 xor eax,r11d | |
561 rol ecx,5 | |
562 xor ebp,DWORD[52+rsp] | |
563 lea r12d,[1859775393+r12*1+rdx] | |
564 xor eax,edi | |
565 add r12d,ecx | |
566 rol esi,30 | |
567 add r12d,eax | |
568 rol ebp,1 | |
569 xor r14d,DWORD[24+rsp] | |
570 mov eax,r13d | |
571 mov DWORD[20+rsp],ebp | |
572 mov ecx,r12d | |
573 xor r14d,DWORD[32+rsp] | |
574 xor eax,edi | |
575 rol ecx,5 | |
576 xor r14d,DWORD[56+rsp] | |
577 lea r11d,[1859775393+r11*1+rbp] | |
578 xor eax,esi | |
579 add r11d,ecx | |
580 rol r13d,30 | |
581 add r11d,eax | |
582 rol r14d,1 | |
583 xor edx,DWORD[28+rsp] | |
584 mov eax,r12d | |
585 mov DWORD[24+rsp],r14d | |
586 mov ecx,r11d | |
587 xor edx,DWORD[36+rsp] | |
588 xor eax,esi | |
589 rol ecx,5 | |
590 xor edx,DWORD[60+rsp] | |
591 lea edi,[1859775393+rdi*1+r14] | |
592 xor eax,r13d | |
593 add edi,ecx | |
594 rol r12d,30 | |
595 add edi,eax | |
596 rol edx,1 | |
597 xor ebp,DWORD[32+rsp] | |
598 mov eax,r11d | |
599 mov DWORD[28+rsp],edx | |
600 mov ecx,edi | |
601 xor ebp,DWORD[40+rsp] | |
602 xor eax,r13d | |
603 rol ecx,5 | |
604 xor ebp,DWORD[rsp] | |
605 lea esi,[1859775393+rsi*1+rdx] | |
606 xor eax,r12d | |
607 add esi,ecx | |
608 rol r11d,30 | |
609 add esi,eax | |
610 rol ebp,1 | |
611 xor r14d,DWORD[36+rsp] | |
612 mov eax,r12d | |
613 mov DWORD[32+rsp],ebp | |
614 mov ebx,r12d | |
615 xor r14d,DWORD[44+rsp] | |
616 and eax,r11d | |
617 mov ecx,esi | |
618 xor r14d,DWORD[4+rsp] | |
619 lea r13d,[((-1894007588))+r13*1+rbp] | |
620 xor ebx,r11d | |
621 rol ecx,5 | |
622 add r13d,eax | |
623 rol r14d,1 | |
624 and ebx,edi | |
625 add r13d,ecx | |
626 rol edi,30 | |
627 add r13d,ebx | |
628 xor edx,DWORD[40+rsp] | |
629 mov eax,r11d | |
630 mov DWORD[36+rsp],r14d | |
631 mov ebx,r11d | |
632 xor edx,DWORD[48+rsp] | |
633 and eax,edi | |
634 mov ecx,r13d | |
635 xor edx,DWORD[8+rsp] | |
636 lea r12d,[((-1894007588))+r12*1+r14] | |
637 xor ebx,edi | |
638 rol ecx,5 | |
639 add r12d,eax | |
640 rol edx,1 | |
641 and ebx,esi | |
642 add r12d,ecx | |
643 rol esi,30 | |
644 add r12d,ebx | |
645 xor ebp,DWORD[44+rsp] | |
646 mov eax,edi | |
647 mov DWORD[40+rsp],edx | |
648 mov ebx,edi | |
649 xor ebp,DWORD[52+rsp] | |
650 and eax,esi | |
651 mov ecx,r12d | |
652 xor ebp,DWORD[12+rsp] | |
653 lea r11d,[((-1894007588))+r11*1+rdx] | |
654 xor ebx,esi | |
655 rol ecx,5 | |
656 add r11d,eax | |
657 rol ebp,1 | |
658 and ebx,r13d | |
659 add r11d,ecx | |
660 rol r13d,30 | |
661 add r11d,ebx | |
662 xor r14d,DWORD[48+rsp] | |
663 mov eax,esi | |
664 mov DWORD[44+rsp],ebp | |
665 mov ebx,esi | |
666 xor r14d,DWORD[56+rsp] | |
667 and eax,r13d | |
668 mov ecx,r11d | |
669 xor r14d,DWORD[16+rsp] | |
670 lea edi,[((-1894007588))+rdi*1+rbp] | |
671 xor ebx,r13d | |
672 rol ecx,5 | |
673 add edi,eax | |
674 rol r14d,1 | |
675 and ebx,r12d | |
676 add edi,ecx | |
677 rol r12d,30 | |
678 add edi,ebx | |
679 xor edx,DWORD[52+rsp] | |
680 mov eax,r13d | |
681 mov DWORD[48+rsp],r14d | |
682 mov ebx,r13d | |
683 xor edx,DWORD[60+rsp] | |
684 and eax,r12d | |
685 mov ecx,edi | |
686 xor edx,DWORD[20+rsp] | |
687 lea esi,[((-1894007588))+rsi*1+r14] | |
688 xor ebx,r12d | |
689 rol ecx,5 | |
690 add esi,eax | |
691 rol edx,1 | |
692 and ebx,r11d | |
693 add esi,ecx | |
694 rol r11d,30 | |
695 add esi,ebx | |
696 xor ebp,DWORD[56+rsp] | |
697 mov eax,r12d | |
698 mov DWORD[52+rsp],edx | |
699 mov ebx,r12d | |
700 xor ebp,DWORD[rsp] | |
701 and eax,r11d | |
702 mov ecx,esi | |
703 xor ebp,DWORD[24+rsp] | |
704 lea r13d,[((-1894007588))+r13*1+rdx] | |
705 xor ebx,r11d | |
706 rol ecx,5 | |
707 add r13d,eax | |
708 rol ebp,1 | |
709 and ebx,edi | |
710 add r13d,ecx | |
711 rol edi,30 | |
712 add r13d,ebx | |
713 xor r14d,DWORD[60+rsp] | |
714 mov eax,r11d | |
715 mov DWORD[56+rsp],ebp | |
716 mov ebx,r11d | |
717 xor r14d,DWORD[4+rsp] | |
718 and eax,edi | |
719 mov ecx,r13d | |
720 xor r14d,DWORD[28+rsp] | |
721 lea r12d,[((-1894007588))+r12*1+rbp] | |
722 xor ebx,edi | |
723 rol ecx,5 | |
724 add r12d,eax | |
725 rol r14d,1 | |
726 and ebx,esi | |
727 add r12d,ecx | |
728 rol esi,30 | |
729 add r12d,ebx | |
730 xor edx,DWORD[rsp] | |
731 mov eax,edi | |
732 mov DWORD[60+rsp],r14d | |
733 mov ebx,edi | |
734 xor edx,DWORD[8+rsp] | |
735 and eax,esi | |
736 mov ecx,r12d | |
737 xor edx,DWORD[32+rsp] | |
738 lea r11d,[((-1894007588))+r11*1+r14] | |
739 xor ebx,esi | |
740 rol ecx,5 | |
741 add r11d,eax | |
742 rol edx,1 | |
743 and ebx,r13d | |
744 add r11d,ecx | |
745 rol r13d,30 | |
746 add r11d,ebx | |
747 xor ebp,DWORD[4+rsp] | |
748 mov eax,esi | |
749 mov DWORD[rsp],edx | |
750 mov ebx,esi | |
751 xor ebp,DWORD[12+rsp] | |
752 and eax,r13d | |
753 mov ecx,r11d | |
754 xor ebp,DWORD[36+rsp] | |
755 lea edi,[((-1894007588))+rdi*1+rdx] | |
756 xor ebx,r13d | |
757 rol ecx,5 | |
758 add edi,eax | |
759 rol ebp,1 | |
760 and ebx,r12d | |
761 add edi,ecx | |
762 rol r12d,30 | |
763 add edi,ebx | |
764 xor r14d,DWORD[8+rsp] | |
765 mov eax,r13d | |
766 mov DWORD[4+rsp],ebp | |
767 mov ebx,r13d | |
768 xor r14d,DWORD[16+rsp] | |
769 and eax,r12d | |
770 mov ecx,edi | |
771 xor r14d,DWORD[40+rsp] | |
772 lea esi,[((-1894007588))+rsi*1+rbp] | |
773 xor ebx,r12d | |
774 rol ecx,5 | |
775 add esi,eax | |
776 rol r14d,1 | |
777 and ebx,r11d | |
778 add esi,ecx | |
779 rol r11d,30 | |
780 add esi,ebx | |
781 xor edx,DWORD[12+rsp] | |
782 mov eax,r12d | |
783 mov DWORD[8+rsp],r14d | |
784 mov ebx,r12d | |
785 xor edx,DWORD[20+rsp] | |
786 and eax,r11d | |
787 mov ecx,esi | |
788 xor edx,DWORD[44+rsp] | |
789 lea r13d,[((-1894007588))+r13*1+r14] | |
790 xor ebx,r11d | |
791 rol ecx,5 | |
792 add r13d,eax | |
793 rol edx,1 | |
794 and ebx,edi | |
795 add r13d,ecx | |
796 rol edi,30 | |
797 add r13d,ebx | |
798 xor ebp,DWORD[16+rsp] | |
799 mov eax,r11d | |
800 mov DWORD[12+rsp],edx | |
801 mov ebx,r11d | |
802 xor ebp,DWORD[24+rsp] | |
803 and eax,edi | |
804 mov ecx,r13d | |
805 xor ebp,DWORD[48+rsp] | |
806 lea r12d,[((-1894007588))+r12*1+rdx] | |
807 xor ebx,edi | |
808 rol ecx,5 | |
809 add r12d,eax | |
810 rol ebp,1 | |
811 and ebx,esi | |
812 add r12d,ecx | |
813 rol esi,30 | |
814 add r12d,ebx | |
815 xor r14d,DWORD[20+rsp] | |
816 mov eax,edi | |
817 mov DWORD[16+rsp],ebp | |
818 mov ebx,edi | |
819 xor r14d,DWORD[28+rsp] | |
820 and eax,esi | |
821 mov ecx,r12d | |
822 xor r14d,DWORD[52+rsp] | |
823 lea r11d,[((-1894007588))+r11*1+rbp] | |
824 xor ebx,esi | |
825 rol ecx,5 | |
826 add r11d,eax | |
827 rol r14d,1 | |
828 and ebx,r13d | |
829 add r11d,ecx | |
830 rol r13d,30 | |
831 add r11d,ebx | |
832 xor edx,DWORD[24+rsp] | |
833 mov eax,esi | |
834 mov DWORD[20+rsp],r14d | |
835 mov ebx,esi | |
836 xor edx,DWORD[32+rsp] | |
837 and eax,r13d | |
838 mov ecx,r11d | |
839 xor edx,DWORD[56+rsp] | |
840 lea edi,[((-1894007588))+rdi*1+r14] | |
841 xor ebx,r13d | |
842 rol ecx,5 | |
843 add edi,eax | |
844 rol edx,1 | |
845 and ebx,r12d | |
846 add edi,ecx | |
847 rol r12d,30 | |
848 add edi,ebx | |
849 xor ebp,DWORD[28+rsp] | |
850 mov eax,r13d | |
851 mov DWORD[24+rsp],edx | |
852 mov ebx,r13d | |
853 xor ebp,DWORD[36+rsp] | |
854 and eax,r12d | |
855 mov ecx,edi | |
856 xor ebp,DWORD[60+rsp] | |
857 lea esi,[((-1894007588))+rsi*1+rdx] | |
858 xor ebx,r12d | |
859 rol ecx,5 | |
860 add esi,eax | |
861 rol ebp,1 | |
862 and ebx,r11d | |
863 add esi,ecx | |
864 rol r11d,30 | |
865 add esi,ebx | |
866 xor r14d,DWORD[32+rsp] | |
867 mov eax,r12d | |
868 mov DWORD[28+rsp],ebp | |
869 mov ebx,r12d | |
870 xor r14d,DWORD[40+rsp] | |
871 and eax,r11d | |
872 mov ecx,esi | |
873 xor r14d,DWORD[rsp] | |
874 lea r13d,[((-1894007588))+r13*1+rbp] | |
875 xor ebx,r11d | |
876 rol ecx,5 | |
877 add r13d,eax | |
878 rol r14d,1 | |
879 and ebx,edi | |
880 add r13d,ecx | |
881 rol edi,30 | |
882 add r13d,ebx | |
883 xor edx,DWORD[36+rsp] | |
884 mov eax,r11d | |
885 mov DWORD[32+rsp],r14d | |
886 mov ebx,r11d | |
887 xor edx,DWORD[44+rsp] | |
888 and eax,edi | |
889 mov ecx,r13d | |
890 xor edx,DWORD[4+rsp] | |
891 lea r12d,[((-1894007588))+r12*1+r14] | |
892 xor ebx,edi | |
893 rol ecx,5 | |
894 add r12d,eax | |
895 rol edx,1 | |
896 and ebx,esi | |
897 add r12d,ecx | |
898 rol esi,30 | |
899 add r12d,ebx | |
900 xor ebp,DWORD[40+rsp] | |
901 mov eax,edi | |
902 mov DWORD[36+rsp],edx | |
903 mov ebx,edi | |
904 xor ebp,DWORD[48+rsp] | |
905 and eax,esi | |
906 mov ecx,r12d | |
907 xor ebp,DWORD[8+rsp] | |
908 lea r11d,[((-1894007588))+r11*1+rdx] | |
909 xor ebx,esi | |
910 rol ecx,5 | |
911 add r11d,eax | |
912 rol ebp,1 | |
913 and ebx,r13d | |
914 add r11d,ecx | |
915 rol r13d,30 | |
916 add r11d,ebx | |
917 xor r14d,DWORD[44+rsp] | |
918 mov eax,esi | |
919 mov DWORD[40+rsp],ebp | |
920 mov ebx,esi | |
921 xor r14d,DWORD[52+rsp] | |
922 and eax,r13d | |
923 mov ecx,r11d | |
924 xor r14d,DWORD[12+rsp] | |
925 lea edi,[((-1894007588))+rdi*1+rbp] | |
926 xor ebx,r13d | |
927 rol ecx,5 | |
928 add edi,eax | |
929 rol r14d,1 | |
930 and ebx,r12d | |
931 add edi,ecx | |
932 rol r12d,30 | |
933 add edi,ebx | |
934 xor edx,DWORD[48+rsp] | |
935 mov eax,r13d | |
936 mov DWORD[44+rsp],r14d | |
937 mov ebx,r13d | |
938 xor edx,DWORD[56+rsp] | |
939 and eax,r12d | |
940 mov ecx,edi | |
941 xor edx,DWORD[16+rsp] | |
942 lea esi,[((-1894007588))+rsi*1+r14] | |
943 xor ebx,r12d | |
944 rol ecx,5 | |
945 add esi,eax | |
946 rol edx,1 | |
947 and ebx,r11d | |
948 add esi,ecx | |
949 rol r11d,30 | |
950 add esi,ebx | |
951 xor ebp,DWORD[52+rsp] | |
952 mov eax,edi | |
953 mov DWORD[48+rsp],edx | |
954 mov ecx,esi | |
955 xor ebp,DWORD[60+rsp] | |
956 xor eax,r12d | |
957 rol ecx,5 | |
958 xor ebp,DWORD[20+rsp] | |
959 lea r13d,[((-899497514))+r13*1+rdx] | |
960 xor eax,r11d | |
961 add r13d,ecx | |
962 rol edi,30 | |
963 add r13d,eax | |
964 rol ebp,1 | |
965 xor r14d,DWORD[56+rsp] | |
966 mov eax,esi | |
967 mov DWORD[52+rsp],ebp | |
968 mov ecx,r13d | |
969 xor r14d,DWORD[rsp] | |
970 xor eax,r11d | |
971 rol ecx,5 | |
972 xor r14d,DWORD[24+rsp] | |
973 lea r12d,[((-899497514))+r12*1+rbp] | |
974 xor eax,edi | |
975 add r12d,ecx | |
976 rol esi,30 | |
977 add r12d,eax | |
978 rol r14d,1 | |
979 xor edx,DWORD[60+rsp] | |
980 mov eax,r13d | |
981 mov DWORD[56+rsp],r14d | |
982 mov ecx,r12d | |
983 xor edx,DWORD[4+rsp] | |
984 xor eax,edi | |
985 rol ecx,5 | |
986 xor edx,DWORD[28+rsp] | |
987 lea r11d,[((-899497514))+r11*1+r14] | |
988 xor eax,esi | |
989 add r11d,ecx | |
990 rol r13d,30 | |
991 add r11d,eax | |
992 rol edx,1 | |
993 xor ebp,DWORD[rsp] | |
994 mov eax,r12d | |
995 mov DWORD[60+rsp],edx | |
996 mov ecx,r11d | |
997 xor ebp,DWORD[8+rsp] | |
998 xor eax,esi | |
999 rol ecx,5 | |
1000 xor ebp,DWORD[32+rsp] | |
1001 lea edi,[((-899497514))+rdi*1+rdx] | |
1002 xor eax,r13d | |
1003 add edi,ecx | |
1004 rol r12d,30 | |
1005 add edi,eax | |
1006 rol ebp,1 | |
1007 xor r14d,DWORD[4+rsp] | |
1008 mov eax,r11d | |
1009 mov DWORD[rsp],ebp | |
1010 mov ecx,edi | |
1011 xor r14d,DWORD[12+rsp] | |
1012 xor eax,r13d | |
1013 rol ecx,5 | |
1014 xor r14d,DWORD[36+rsp] | |
1015 lea esi,[((-899497514))+rsi*1+rbp] | |
1016 xor eax,r12d | |
1017 add esi,ecx | |
1018 rol r11d,30 | |
1019 add esi,eax | |
1020 rol r14d,1 | |
1021 xor edx,DWORD[8+rsp] | |
1022 mov eax,edi | |
1023 mov DWORD[4+rsp],r14d | |
1024 mov ecx,esi | |
1025 xor edx,DWORD[16+rsp] | |
1026 xor eax,r12d | |
1027 rol ecx,5 | |
1028 xor edx,DWORD[40+rsp] | |
1029 lea r13d,[((-899497514))+r13*1+r14] | |
1030 xor eax,r11d | |
1031 add r13d,ecx | |
1032 rol edi,30 | |
1033 add r13d,eax | |
1034 rol edx,1 | |
1035 xor ebp,DWORD[12+rsp] | |
1036 mov eax,esi | |
1037 mov DWORD[8+rsp],edx | |
1038 mov ecx,r13d | |
1039 xor ebp,DWORD[20+rsp] | |
1040 xor eax,r11d | |
1041 rol ecx,5 | |
1042 xor ebp,DWORD[44+rsp] | |
1043 lea r12d,[((-899497514))+r12*1+rdx] | |
1044 xor eax,edi | |
1045 add r12d,ecx | |
1046 rol esi,30 | |
1047 add r12d,eax | |
1048 rol ebp,1 | |
1049 xor r14d,DWORD[16+rsp] | |
1050 mov eax,r13d | |
1051 mov DWORD[12+rsp],ebp | |
1052 mov ecx,r12d | |
1053 xor r14d,DWORD[24+rsp] | |
1054 xor eax,edi | |
1055 rol ecx,5 | |
1056 xor r14d,DWORD[48+rsp] | |
1057 lea r11d,[((-899497514))+r11*1+rbp] | |
1058 xor eax,esi | |
1059 add r11d,ecx | |
1060 rol r13d,30 | |
1061 add r11d,eax | |
1062 rol r14d,1 | |
1063 xor edx,DWORD[20+rsp] | |
1064 mov eax,r12d | |
1065 mov DWORD[16+rsp],r14d | |
1066 mov ecx,r11d | |
1067 xor edx,DWORD[28+rsp] | |
1068 xor eax,esi | |
1069 rol ecx,5 | |
1070 xor edx,DWORD[52+rsp] | |
1071 lea edi,[((-899497514))+rdi*1+r14] | |
1072 xor eax,r13d | |
1073 add edi,ecx | |
1074 rol r12d,30 | |
1075 add edi,eax | |
1076 rol edx,1 | |
1077 xor ebp,DWORD[24+rsp] | |
1078 mov eax,r11d | |
1079 mov DWORD[20+rsp],edx | |
1080 mov ecx,edi | |
1081 xor ebp,DWORD[32+rsp] | |
1082 xor eax,r13d | |
1083 rol ecx,5 | |
1084 xor ebp,DWORD[56+rsp] | |
1085 lea esi,[((-899497514))+rsi*1+rdx] | |
1086 xor eax,r12d | |
1087 add esi,ecx | |
1088 rol r11d,30 | |
1089 add esi,eax | |
1090 rol ebp,1 | |
1091 xor r14d,DWORD[28+rsp] | |
1092 mov eax,edi | |
1093 mov DWORD[24+rsp],ebp | |
1094 mov ecx,esi | |
1095 xor r14d,DWORD[36+rsp] | |
1096 xor eax,r12d | |
1097 rol ecx,5 | |
1098 xor r14d,DWORD[60+rsp] | |
1099 lea r13d,[((-899497514))+r13*1+rbp] | |
1100 xor eax,r11d | |
1101 add r13d,ecx | |
1102 rol edi,30 | |
1103 add r13d,eax | |
1104 rol r14d,1 | |
1105 xor edx,DWORD[32+rsp] | |
1106 mov eax,esi | |
1107 mov DWORD[28+rsp],r14d | |
1108 mov ecx,r13d | |
1109 xor edx,DWORD[40+rsp] | |
1110 xor eax,r11d | |
1111 rol ecx,5 | |
1112 xor edx,DWORD[rsp] | |
1113 lea r12d,[((-899497514))+r12*1+r14] | |
1114 xor eax,edi | |
1115 add r12d,ecx | |
1116 rol esi,30 | |
1117 add r12d,eax | |
1118 rol edx,1 | |
1119 xor ebp,DWORD[36+rsp] | |
1120 mov eax,r13d | |
1121 | |
1122 mov ecx,r12d | |
1123 xor ebp,DWORD[44+rsp] | |
1124 xor eax,edi | |
1125 rol ecx,5 | |
1126 xor ebp,DWORD[4+rsp] | |
1127 lea r11d,[((-899497514))+r11*1+rdx] | |
1128 xor eax,esi | |
1129 add r11d,ecx | |
1130 rol r13d,30 | |
1131 add r11d,eax | |
1132 rol ebp,1 | |
1133 xor r14d,DWORD[40+rsp] | |
1134 mov eax,r12d | |
1135 | |
1136 mov ecx,r11d | |
1137 xor r14d,DWORD[48+rsp] | |
1138 xor eax,esi | |
1139 rol ecx,5 | |
1140 xor r14d,DWORD[8+rsp] | |
1141 lea edi,[((-899497514))+rdi*1+rbp] | |
1142 xor eax,r13d | |
1143 add edi,ecx | |
1144 rol r12d,30 | |
1145 add edi,eax | |
1146 rol r14d,1 | |
1147 xor edx,DWORD[44+rsp] | |
1148 mov eax,r11d | |
1149 | |
1150 mov ecx,edi | |
1151 xor edx,DWORD[52+rsp] | |
1152 xor eax,r13d | |
1153 rol ecx,5 | |
1154 xor edx,DWORD[12+rsp] | |
1155 lea esi,[((-899497514))+rsi*1+r14] | |
1156 xor eax,r12d | |
1157 add esi,ecx | |
1158 rol r11d,30 | |
1159 add esi,eax | |
1160 rol edx,1 | |
1161 xor ebp,DWORD[48+rsp] | |
1162 mov eax,edi | |
1163 | |
1164 mov ecx,esi | |
1165 xor ebp,DWORD[56+rsp] | |
1166 xor eax,r12d | |
1167 rol ecx,5 | |
1168 xor ebp,DWORD[16+rsp] | |
1169 lea r13d,[((-899497514))+r13*1+rdx] | |
1170 xor eax,r11d | |
1171 add r13d,ecx | |
1172 rol edi,30 | |
1173 add r13d,eax | |
1174 rol ebp,1 | |
1175 xor r14d,DWORD[52+rsp] | |
1176 mov eax,esi | |
1177 | |
1178 mov ecx,r13d | |
1179 xor r14d,DWORD[60+rsp] | |
1180 xor eax,r11d | |
1181 rol ecx,5 | |
1182 xor r14d,DWORD[20+rsp] | |
1183 lea r12d,[((-899497514))+r12*1+rbp] | |
1184 xor eax,edi | |
1185 add r12d,ecx | |
1186 rol esi,30 | |
1187 add r12d,eax | |
1188 rol r14d,1 | |
1189 xor edx,DWORD[56+rsp] | |
1190 mov eax,r13d | |
1191 | |
1192 mov ecx,r12d | |
1193 xor edx,DWORD[rsp] | |
1194 xor eax,edi | |
1195 rol ecx,5 | |
1196 xor edx,DWORD[24+rsp] | |
1197 lea r11d,[((-899497514))+r11*1+r14] | |
1198 xor eax,esi | |
1199 add r11d,ecx | |
1200 rol r13d,30 | |
1201 add r11d,eax | |
1202 rol edx,1 | |
1203 xor ebp,DWORD[60+rsp] | |
1204 mov eax,r12d | |
1205 | |
1206 mov ecx,r11d | |
1207 xor ebp,DWORD[4+rsp] | |
1208 xor eax,esi | |
1209 rol ecx,5 | |
1210 xor ebp,DWORD[28+rsp] | |
1211 lea edi,[((-899497514))+rdi*1+rdx] | |
1212 xor eax,r13d | |
1213 add edi,ecx | |
1214 rol r12d,30 | |
1215 add edi,eax | |
1216 rol ebp,1 | |
1217 mov eax,r11d | |
1218 mov ecx,edi | |
1219 xor eax,r13d | |
1220 lea esi,[((-899497514))+rsi*1+rbp] | |
1221 rol ecx,5 | |
1222 xor eax,r12d | |
1223 add esi,ecx | |
1224 rol r11d,30 | |
1225 add esi,eax | |
1226 add esi,DWORD[r8] | |
1227 add edi,DWORD[4+r8] | |
1228 add r11d,DWORD[8+r8] | |
1229 add r12d,DWORD[12+r8] | |
1230 add r13d,DWORD[16+r8] | |
1231 mov DWORD[r8],esi | |
1232 mov DWORD[4+r8],edi | |
1233 mov DWORD[8+r8],r11d | |
1234 mov DWORD[12+r8],r12d | |
1235 mov DWORD[16+r8],r13d | |
1236 | |
1237 sub r10,1 | |
1238 lea r9,[64+r9] | |
1239 jnz NEAR $L$loop | |
1240 | |
1241 mov rsi,QWORD[64+rsp] | |
1242 mov r14,QWORD[((-40))+rsi] | |
1243 mov r13,QWORD[((-32))+rsi] | |
1244 mov r12,QWORD[((-24))+rsi] | |
1245 mov rbp,QWORD[((-16))+rsi] | |
1246 mov rbx,QWORD[((-8))+rsi] | |
1247 lea rsp,[rsi] | |
1248 $L$epilogue: | |
1249 mov rdi,QWORD[8+rsp] ;WIN64 epilogue | |
1250 mov rsi,QWORD[16+rsp] | |
1251 DB 0F3h,0C3h ;repret | |
1252 $L$SEH_end_sha1_block_data_order: | |
1253 | |
1254 ALIGN 16 | |
1255 sha1_block_data_order_ssse3: | |
1256 mov QWORD[8+rsp],rdi ;WIN64 prologue | |
1257 mov QWORD[16+rsp],rsi | |
1258 mov rax,rsp | |
1259 $L$SEH_begin_sha1_block_data_order_ssse3: | |
1260 mov rdi,rcx | |
1261 mov rsi,rdx | |
1262 mov rdx,r8 | |
1263 | |
1264 | |
1265 _ssse3_shortcut: | |
1266 mov rax,rsp | |
1267 push rbx | |
1268 push rbp | |
1269 push r12 | |
1270 push r13 | |
1271 push r14 | |
1272 lea rsp,[((-160))+rsp] | |
1273 movaps XMMWORD[(-40-96)+rax],xmm6 | |
1274 movaps XMMWORD[(-40-80)+rax],xmm7 | |
1275 movaps XMMWORD[(-40-64)+rax],xmm8 | |
1276 movaps XMMWORD[(-40-48)+rax],xmm9 | |
1277 movaps XMMWORD[(-40-32)+rax],xmm10 | |
1278 movaps XMMWORD[(-40-16)+rax],xmm11 | |
1279 $L$prologue_ssse3: | |
1280 mov r14,rax | |
1281 and rsp,-64 | |
1282 mov r8,rdi | |
1283 mov r9,rsi | |
1284 mov r10,rdx | |
1285 | |
1286 shl r10,6 | |
1287 add r10,r9 | |
1288 lea r11,[((K_XX_XX+64))] | |
1289 | |
1290 mov eax,DWORD[r8] | |
1291 mov ebx,DWORD[4+r8] | |
1292 mov ecx,DWORD[8+r8] | |
1293 mov edx,DWORD[12+r8] | |
1294 mov esi,ebx | |
1295 mov ebp,DWORD[16+r8] | |
1296 mov edi,ecx | |
1297 xor edi,edx | |
1298 and esi,edi | |
1299 | |
1300 movdqa xmm6,XMMWORD[64+r11] | |
1301 movdqa xmm9,XMMWORD[((-64))+r11] | |
1302 movdqu xmm0,XMMWORD[r9] | |
1303 movdqu xmm1,XMMWORD[16+r9] | |
1304 movdqu xmm2,XMMWORD[32+r9] | |
1305 movdqu xmm3,XMMWORD[48+r9] | |
1306 DB 102,15,56,0,198 | |
1307 DB 102,15,56,0,206 | |
1308 DB 102,15,56,0,214 | |
1309 add r9,64 | |
1310 paddd xmm0,xmm9 | |
1311 DB 102,15,56,0,222 | |
1312 paddd xmm1,xmm9 | |
1313 paddd xmm2,xmm9 | |
1314 movdqa XMMWORD[rsp],xmm0 | |
1315 psubd xmm0,xmm9 | |
1316 movdqa XMMWORD[16+rsp],xmm1 | |
1317 psubd xmm1,xmm9 | |
1318 movdqa XMMWORD[32+rsp],xmm2 | |
1319 psubd xmm2,xmm9 | |
1320 jmp NEAR $L$oop_ssse3 | |
1321 ALIGN 16 | |
1322 $L$oop_ssse3: | |
1323 ror ebx,2 | |
1324 pshufd xmm4,xmm0,238 | |
1325 xor esi,edx | |
1326 movdqa xmm8,xmm3 | |
1327 paddd xmm9,xmm3 | |
1328 mov edi,eax | |
1329 add ebp,DWORD[rsp] | |
1330 punpcklqdq xmm4,xmm1 | |
1331 xor ebx,ecx | |
1332 rol eax,5 | |
1333 add ebp,esi | |
1334 psrldq xmm8,4 | |
1335 and edi,ebx | |
1336 xor ebx,ecx | |
1337 pxor xmm4,xmm0 | |
1338 add ebp,eax | |
1339 ror eax,7 | |
1340 pxor xmm8,xmm2 | |
1341 xor edi,ecx | |
1342 mov esi,ebp | |
1343 add edx,DWORD[4+rsp] | |
1344 pxor xmm4,xmm8 | |
1345 xor eax,ebx | |
1346 rol ebp,5 | |
1347 movdqa XMMWORD[48+rsp],xmm9 | |
1348 add edx,edi | |
1349 and esi,eax | |
1350 movdqa xmm10,xmm4 | |
1351 xor eax,ebx | |
1352 add edx,ebp | |
1353 ror ebp,7 | |
1354 movdqa xmm8,xmm4 | |
1355 xor esi,ebx | |
1356 pslldq xmm10,12 | |
1357 paddd xmm4,xmm4 | |
1358 mov edi,edx | |
1359 add ecx,DWORD[8+rsp] | |
1360 psrld xmm8,31 | |
1361 xor ebp,eax | |
1362 rol edx,5 | |
1363 add ecx,esi | |
1364 movdqa xmm9,xmm10 | |
1365 and edi,ebp | |
1366 xor ebp,eax | |
1367 psrld xmm10,30 | |
1368 add ecx,edx | |
1369 ror edx,7 | |
1370 por xmm4,xmm8 | |
1371 xor edi,eax | |
1372 mov esi,ecx | |
1373 add ebx,DWORD[12+rsp] | |
1374 pslld xmm9,2 | |
1375 pxor xmm4,xmm10 | |
1376 xor edx,ebp | |
1377 movdqa xmm10,XMMWORD[((-64))+r11] | |
1378 rol ecx,5 | |
1379 add ebx,edi | |
1380 and esi,edx | |
1381 pxor xmm4,xmm9 | |
1382 xor edx,ebp | |
1383 add ebx,ecx | |
1384 ror ecx,7 | |
1385 pshufd xmm5,xmm1,238 | |
1386 xor esi,ebp | |
1387 movdqa xmm9,xmm4 | |
1388 paddd xmm10,xmm4 | |
1389 mov edi,ebx | |
1390 add eax,DWORD[16+rsp] | |
1391 punpcklqdq xmm5,xmm2 | |
1392 xor ecx,edx | |
1393 rol ebx,5 | |
1394 add eax,esi | |
1395 psrldq xmm9,4 | |
1396 and edi,ecx | |
1397 xor ecx,edx | |
1398 pxor xmm5,xmm1 | |
1399 add eax,ebx | |
1400 ror ebx,7 | |
1401 pxor xmm9,xmm3 | |
1402 xor edi,edx | |
1403 mov esi,eax | |
1404 add ebp,DWORD[20+rsp] | |
1405 pxor xmm5,xmm9 | |
1406 xor ebx,ecx | |
1407 rol eax,5 | |
1408 movdqa XMMWORD[rsp],xmm10 | |
1409 add ebp,edi | |
1410 and esi,ebx | |
1411 movdqa xmm8,xmm5 | |
1412 xor ebx,ecx | |
1413 add ebp,eax | |
1414 ror eax,7 | |
1415 movdqa xmm9,xmm5 | |
1416 xor esi,ecx | |
1417 pslldq xmm8,12 | |
1418 paddd xmm5,xmm5 | |
1419 mov edi,ebp | |
1420 add edx,DWORD[24+rsp] | |
1421 psrld xmm9,31 | |
1422 xor eax,ebx | |
1423 rol ebp,5 | |
1424 add edx,esi | |
1425 movdqa xmm10,xmm8 | |
1426 and edi,eax | |
1427 xor eax,ebx | |
1428 psrld xmm8,30 | |
1429 add edx,ebp | |
1430 ror ebp,7 | |
1431 por xmm5,xmm9 | |
1432 xor edi,ebx | |
1433 mov esi,edx | |
1434 add ecx,DWORD[28+rsp] | |
1435 pslld xmm10,2 | |
1436 pxor xmm5,xmm8 | |
1437 xor ebp,eax | |
1438 movdqa xmm8,XMMWORD[((-32))+r11] | |
1439 rol edx,5 | |
1440 add ecx,edi | |
1441 and esi,ebp | |
1442 pxor xmm5,xmm10 | |
1443 xor ebp,eax | |
1444 add ecx,edx | |
1445 ror edx,7 | |
1446 pshufd xmm6,xmm2,238 | |
1447 xor esi,eax | |
1448 movdqa xmm10,xmm5 | |
1449 paddd xmm8,xmm5 | |
1450 mov edi,ecx | |
1451 add ebx,DWORD[32+rsp] | |
1452 punpcklqdq xmm6,xmm3 | |
1453 xor edx,ebp | |
1454 rol ecx,5 | |
1455 add ebx,esi | |
1456 psrldq xmm10,4 | |
1457 and edi,edx | |
1458 xor edx,ebp | |
1459 pxor xmm6,xmm2 | |
1460 add ebx,ecx | |
1461 ror ecx,7 | |
1462 pxor xmm10,xmm4 | |
1463 xor edi,ebp | |
1464 mov esi,ebx | |
1465 add eax,DWORD[36+rsp] | |
1466 pxor xmm6,xmm10 | |
1467 xor ecx,edx | |
1468 rol ebx,5 | |
1469 movdqa XMMWORD[16+rsp],xmm8 | |
1470 add eax,edi | |
1471 and esi,ecx | |
1472 movdqa xmm9,xmm6 | |
1473 xor ecx,edx | |
1474 add eax,ebx | |
1475 ror ebx,7 | |
1476 movdqa xmm10,xmm6 | |
1477 xor esi,edx | |
1478 pslldq xmm9,12 | |
1479 paddd xmm6,xmm6 | |
1480 mov edi,eax | |
1481 add ebp,DWORD[40+rsp] | |
1482 psrld xmm10,31 | |
1483 xor ebx,ecx | |
1484 rol eax,5 | |
1485 add ebp,esi | |
1486 movdqa xmm8,xmm9 | |
1487 and edi,ebx | |
1488 xor ebx,ecx | |
1489 psrld xmm9,30 | |
1490 add ebp,eax | |
1491 ror eax,7 | |
1492 por xmm6,xmm10 | |
1493 xor edi,ecx | |
1494 mov esi,ebp | |
1495 add edx,DWORD[44+rsp] | |
1496 pslld xmm8,2 | |
1497 pxor xmm6,xmm9 | |
1498 xor eax,ebx | |
1499 movdqa xmm9,XMMWORD[((-32))+r11] | |
1500 rol ebp,5 | |
1501 add edx,edi | |
1502 and esi,eax | |
1503 pxor xmm6,xmm8 | |
1504 xor eax,ebx | |
1505 add edx,ebp | |
1506 ror ebp,7 | |
1507 pshufd xmm7,xmm3,238 | |
1508 xor esi,ebx | |
1509 movdqa xmm8,xmm6 | |
1510 paddd xmm9,xmm6 | |
1511 mov edi,edx | |
1512 add ecx,DWORD[48+rsp] | |
1513 punpcklqdq xmm7,xmm4 | |
1514 xor ebp,eax | |
1515 rol edx,5 | |
1516 add ecx,esi | |
1517 psrldq xmm8,4 | |
1518 and edi,ebp | |
1519 xor ebp,eax | |
1520 pxor xmm7,xmm3 | |
1521 add ecx,edx | |
1522 ror edx,7 | |
1523 pxor xmm8,xmm5 | |
1524 xor edi,eax | |
1525 mov esi,ecx | |
1526 add ebx,DWORD[52+rsp] | |
1527 pxor xmm7,xmm8 | |
1528 xor edx,ebp | |
1529 rol ecx,5 | |
1530 movdqa XMMWORD[32+rsp],xmm9 | |
1531 add ebx,edi | |
1532 and esi,edx | |
1533 movdqa xmm10,xmm7 | |
1534 xor edx,ebp | |
1535 add ebx,ecx | |
1536 ror ecx,7 | |
1537 movdqa xmm8,xmm7 | |
1538 xor esi,ebp | |
1539 pslldq xmm10,12 | |
1540 paddd xmm7,xmm7 | |
1541 mov edi,ebx | |
1542 add eax,DWORD[56+rsp] | |
1543 psrld xmm8,31 | |
1544 xor ecx,edx | |
1545 rol ebx,5 | |
1546 add eax,esi | |
1547 movdqa xmm9,xmm10 | |
1548 and edi,ecx | |
1549 xor ecx,edx | |
1550 psrld xmm10,30 | |
1551 add eax,ebx | |
1552 ror ebx,7 | |
1553 por xmm7,xmm8 | |
1554 xor edi,edx | |
1555 mov esi,eax | |
1556 add ebp,DWORD[60+rsp] | |
1557 pslld xmm9,2 | |
1558 pxor xmm7,xmm10 | |
1559 xor ebx,ecx | |
1560 movdqa xmm10,XMMWORD[((-32))+r11] | |
1561 rol eax,5 | |
1562 add ebp,edi | |
1563 and esi,ebx | |
1564 pxor xmm7,xmm9 | |
1565 pshufd xmm9,xmm6,238 | |
1566 xor ebx,ecx | |
1567 add ebp,eax | |
1568 ror eax,7 | |
1569 pxor xmm0,xmm4 | |
1570 xor esi,ecx | |
1571 mov edi,ebp | |
1572 add edx,DWORD[rsp] | |
1573 punpcklqdq xmm9,xmm7 | |
1574 xor eax,ebx | |
1575 rol ebp,5 | |
1576 pxor xmm0,xmm1 | |
1577 add edx,esi | |
1578 and edi,eax | |
1579 movdqa xmm8,xmm10 | |
1580 xor eax,ebx | |
1581 paddd xmm10,xmm7 | |
1582 add edx,ebp | |
1583 pxor xmm0,xmm9 | |
1584 ror ebp,7 | |
1585 xor edi,ebx | |
1586 mov esi,edx | |
1587 add ecx,DWORD[4+rsp] | |
1588 movdqa xmm9,xmm0 | |
1589 xor ebp,eax | |
1590 rol edx,5 | |
1591 movdqa XMMWORD[48+rsp],xmm10 | |
1592 add ecx,edi | |
1593 and esi,ebp | |
1594 xor ebp,eax | |
1595 pslld xmm0,2 | |
1596 add ecx,edx | |
1597 ror edx,7 | |
1598 psrld xmm9,30 | |
1599 xor esi,eax | |
1600 mov edi,ecx | |
1601 add ebx,DWORD[8+rsp] | |
1602 por xmm0,xmm9 | |
1603 xor edx,ebp | |
1604 rol ecx,5 | |
1605 pshufd xmm10,xmm7,238 | |
1606 add ebx,esi | |
1607 and edi,edx | |
1608 xor edx,ebp | |
1609 add ebx,ecx | |
1610 add eax,DWORD[12+rsp] | |
1611 xor edi,ebp | |
1612 mov esi,ebx | |
1613 rol ebx,5 | |
1614 add eax,edi | |
1615 xor esi,edx | |
1616 ror ecx,7 | |
1617 add eax,ebx | |
1618 pxor xmm1,xmm5 | |
1619 add ebp,DWORD[16+rsp] | |
1620 xor esi,ecx | |
1621 punpcklqdq xmm10,xmm0 | |
1622 mov edi,eax | |
1623 rol eax,5 | |
1624 pxor xmm1,xmm2 | |
1625 add ebp,esi | |
1626 xor edi,ecx | |
1627 movdqa xmm9,xmm8 | |
1628 ror ebx,7 | |
1629 paddd xmm8,xmm0 | |
1630 add ebp,eax | |
1631 pxor xmm1,xmm10 | |
1632 add edx,DWORD[20+rsp] | |
1633 xor edi,ebx | |
1634 mov esi,ebp | |
1635 rol ebp,5 | |
1636 movdqa xmm10,xmm1 | |
1637 add edx,edi | |
1638 xor esi,ebx | |
1639 movdqa XMMWORD[rsp],xmm8 | |
1640 ror eax,7 | |
1641 add edx,ebp | |
1642 add ecx,DWORD[24+rsp] | |
1643 pslld xmm1,2 | |
1644 xor esi,eax | |
1645 mov edi,edx | |
1646 psrld xmm10,30 | |
1647 rol edx,5 | |
1648 add ecx,esi | |
1649 xor edi,eax | |
1650 ror ebp,7 | |
1651 por xmm1,xmm10 | |
1652 add ecx,edx | |
1653 add ebx,DWORD[28+rsp] | |
1654 pshufd xmm8,xmm0,238 | |
1655 xor edi,ebp | |
1656 mov esi,ecx | |
1657 rol ecx,5 | |
1658 add ebx,edi | |
1659 xor esi,ebp | |
1660 ror edx,7 | |
1661 add ebx,ecx | |
1662 pxor xmm2,xmm6 | |
1663 add eax,DWORD[32+rsp] | |
1664 xor esi,edx | |
1665 punpcklqdq xmm8,xmm1 | |
1666 mov edi,ebx | |
1667 rol ebx,5 | |
1668 pxor xmm2,xmm3 | |
1669 add eax,esi | |
1670 xor edi,edx | |
1671 movdqa xmm10,XMMWORD[r11] | |
1672 ror ecx,7 | |
1673 paddd xmm9,xmm1 | |
1674 add eax,ebx | |
1675 pxor xmm2,xmm8 | |
1676 add ebp,DWORD[36+rsp] | |
1677 xor edi,ecx | |
1678 mov esi,eax | |
1679 rol eax,5 | |
1680 movdqa xmm8,xmm2 | |
1681 add ebp,edi | |
1682 xor esi,ecx | |
1683 movdqa XMMWORD[16+rsp],xmm9 | |
1684 ror ebx,7 | |
1685 add ebp,eax | |
1686 add edx,DWORD[40+rsp] | |
1687 pslld xmm2,2 | |
1688 xor esi,ebx | |
1689 mov edi,ebp | |
1690 psrld xmm8,30 | |
1691 rol ebp,5 | |
1692 add edx,esi | |
1693 xor edi,ebx | |
1694 ror eax,7 | |
1695 por xmm2,xmm8 | |
1696 add edx,ebp | |
1697 add ecx,DWORD[44+rsp] | |
1698 pshufd xmm9,xmm1,238 | |
1699 xor edi,eax | |
1700 mov esi,edx | |
1701 rol edx,5 | |
1702 add ecx,edi | |
1703 xor esi,eax | |
1704 ror ebp,7 | |
1705 add ecx,edx | |
1706 pxor xmm3,xmm7 | |
1707 add ebx,DWORD[48+rsp] | |
1708 xor esi,ebp | |
1709 punpcklqdq xmm9,xmm2 | |
1710 mov edi,ecx | |
1711 rol ecx,5 | |
1712 pxor xmm3,xmm4 | |
1713 add ebx,esi | |
1714 xor edi,ebp | |
1715 movdqa xmm8,xmm10 | |
1716 ror edx,7 | |
1717 paddd xmm10,xmm2 | |
1718 add ebx,ecx | |
1719 pxor xmm3,xmm9 | |
1720 add eax,DWORD[52+rsp] | |
1721 xor edi,edx | |
1722 mov esi,ebx | |
1723 rol ebx,5 | |
1724 movdqa xmm9,xmm3 | |
1725 add eax,edi | |
1726 xor esi,edx | |
1727 movdqa XMMWORD[32+rsp],xmm10 | |
1728 ror ecx,7 | |
1729 add eax,ebx | |
1730 add ebp,DWORD[56+rsp] | |
1731 pslld xmm3,2 | |
1732 xor esi,ecx | |
1733 mov edi,eax | |
1734 psrld xmm9,30 | |
1735 rol eax,5 | |
1736 add ebp,esi | |
1737 xor edi,ecx | |
1738 ror ebx,7 | |
1739 por xmm3,xmm9 | |
1740 add ebp,eax | |
1741 add edx,DWORD[60+rsp] | |
1742 pshufd xmm10,xmm2,238 | |
1743 xor edi,ebx | |
1744 mov esi,ebp | |
1745 rol ebp,5 | |
1746 add edx,edi | |
1747 xor esi,ebx | |
1748 ror eax,7 | |
1749 add edx,ebp | |
1750 pxor xmm4,xmm0 | |
1751 add ecx,DWORD[rsp] | |
1752 xor esi,eax | |
1753 punpcklqdq xmm10,xmm3 | |
1754 mov edi,edx | |
1755 rol edx,5 | |
1756 pxor xmm4,xmm5 | |
1757 add ecx,esi | |
1758 xor edi,eax | |
1759 movdqa xmm9,xmm8 | |
1760 ror ebp,7 | |
1761 paddd xmm8,xmm3 | |
1762 add ecx,edx | |
1763 pxor xmm4,xmm10 | |
1764 add ebx,DWORD[4+rsp] | |
1765 xor edi,ebp | |
1766 mov esi,ecx | |
1767 rol ecx,5 | |
1768 movdqa xmm10,xmm4 | |
1769 add ebx,edi | |
1770 xor esi,ebp | |
1771 movdqa XMMWORD[48+rsp],xmm8 | |
1772 ror edx,7 | |
1773 add ebx,ecx | |
1774 add eax,DWORD[8+rsp] | |
1775 pslld xmm4,2 | |
1776 xor esi,edx | |
1777 mov edi,ebx | |
1778 psrld xmm10,30 | |
1779 rol ebx,5 | |
1780 add eax,esi | |
1781 xor edi,edx | |
1782 ror ecx,7 | |
1783 por xmm4,xmm10 | |
1784 add eax,ebx | |
1785 add ebp,DWORD[12+rsp] | |
1786 pshufd xmm8,xmm3,238 | |
1787 xor edi,ecx | |
1788 mov esi,eax | |
1789 rol eax,5 | |
1790 add ebp,edi | |
1791 xor esi,ecx | |
1792 ror ebx,7 | |
1793 add ebp,eax | |
1794 pxor xmm5,xmm1 | |
1795 add edx,DWORD[16+rsp] | |
1796 xor esi,ebx | |
1797 punpcklqdq xmm8,xmm4 | |
1798 mov edi,ebp | |
1799 rol ebp,5 | |
1800 pxor xmm5,xmm6 | |
1801 add edx,esi | |
1802 xor edi,ebx | |
1803 movdqa xmm10,xmm9 | |
1804 ror eax,7 | |
1805 paddd xmm9,xmm4 | |
1806 add edx,ebp | |
1807 pxor xmm5,xmm8 | |
1808 add ecx,DWORD[20+rsp] | |
1809 xor edi,eax | |
1810 mov esi,edx | |
1811 rol edx,5 | |
1812 movdqa xmm8,xmm5 | |
1813 add ecx,edi | |
1814 xor esi,eax | |
1815 movdqa XMMWORD[rsp],xmm9 | |
1816 ror ebp,7 | |
1817 add ecx,edx | |
1818 add ebx,DWORD[24+rsp] | |
1819 pslld xmm5,2 | |
1820 xor esi,ebp | |
1821 mov edi,ecx | |
1822 psrld xmm8,30 | |
1823 rol ecx,5 | |
1824 add ebx,esi | |
1825 xor edi,ebp | |
1826 ror edx,7 | |
1827 por xmm5,xmm8 | |
1828 add ebx,ecx | |
1829 add eax,DWORD[28+rsp] | |
1830 pshufd xmm9,xmm4,238 | |
1831 ror ecx,7 | |
1832 mov esi,ebx | |
1833 xor edi,edx | |
1834 rol ebx,5 | |
1835 add eax,edi | |
1836 xor esi,ecx | |
1837 xor ecx,edx | |
1838 add eax,ebx | |
1839 pxor xmm6,xmm2 | |
1840 add ebp,DWORD[32+rsp] | |
1841 and esi,ecx | |
1842 xor ecx,edx | |
1843 ror ebx,7 | |
1844 punpcklqdq xmm9,xmm5 | |
1845 mov edi,eax | |
1846 xor esi,ecx | |
1847 pxor xmm6,xmm7 | |
1848 rol eax,5 | |
1849 add ebp,esi | |
1850 movdqa xmm8,xmm10 | |
1851 xor edi,ebx | |
1852 paddd xmm10,xmm5 | |
1853 xor ebx,ecx | |
1854 pxor xmm6,xmm9 | |
1855 add ebp,eax | |
1856 add edx,DWORD[36+rsp] | |
1857 and edi,ebx | |
1858 xor ebx,ecx | |
1859 ror eax,7 | |
1860 movdqa xmm9,xmm6 | |
1861 mov esi,ebp | |
1862 xor edi,ebx | |
1863 movdqa XMMWORD[16+rsp],xmm10 | |
1864 rol ebp,5 | |
1865 add edx,edi | |
1866 xor esi,eax | |
1867 pslld xmm6,2 | |
1868 xor eax,ebx | |
1869 add edx,ebp | |
1870 psrld xmm9,30 | |
1871 add ecx,DWORD[40+rsp] | |
1872 and esi,eax | |
1873 xor eax,ebx | |
1874 por xmm6,xmm9 | |
1875 ror ebp,7 | |
1876 mov edi,edx | |
1877 xor esi,eax | |
1878 rol edx,5 | |
1879 pshufd xmm10,xmm5,238 | |
1880 add ecx,esi | |
1881 xor edi,ebp | |
1882 xor ebp,eax | |
1883 add ecx,edx | |
1884 add ebx,DWORD[44+rsp] | |
1885 and edi,ebp | |
1886 xor ebp,eax | |
1887 ror edx,7 | |
1888 mov esi,ecx | |
1889 xor edi,ebp | |
1890 rol ecx,5 | |
1891 add ebx,edi | |
1892 xor esi,edx | |
1893 xor edx,ebp | |
1894 add ebx,ecx | |
1895 pxor xmm7,xmm3 | |
1896 add eax,DWORD[48+rsp] | |
1897 and esi,edx | |
1898 xor edx,ebp | |
1899 ror ecx,7 | |
1900 punpcklqdq xmm10,xmm6 | |
1901 mov edi,ebx | |
1902 xor esi,edx | |
1903 pxor xmm7,xmm0 | |
1904 rol ebx,5 | |
1905 add eax,esi | |
1906 movdqa xmm9,XMMWORD[32+r11] | |
1907 xor edi,ecx | |
1908 paddd xmm8,xmm6 | |
1909 xor ecx,edx | |
1910 pxor xmm7,xmm10 | |
1911 add eax,ebx | |
1912 add ebp,DWORD[52+rsp] | |
1913 and edi,ecx | |
1914 xor ecx,edx | |
1915 ror ebx,7 | |
1916 movdqa xmm10,xmm7 | |
1917 mov esi,eax | |
1918 xor edi,ecx | |
1919 movdqa XMMWORD[32+rsp],xmm8 | |
1920 rol eax,5 | |
1921 add ebp,edi | |
1922 xor esi,ebx | |
1923 pslld xmm7,2 | |
1924 xor ebx,ecx | |
1925 add ebp,eax | |
1926 psrld xmm10,30 | |
1927 add edx,DWORD[56+rsp] | |
1928 and esi,ebx | |
1929 xor ebx,ecx | |
1930 por xmm7,xmm10 | |
1931 ror eax,7 | |
1932 mov edi,ebp | |
1933 xor esi,ebx | |
1934 rol ebp,5 | |
1935 pshufd xmm8,xmm6,238 | |
1936 add edx,esi | |
1937 xor edi,eax | |
1938 xor eax,ebx | |
1939 add edx,ebp | |
1940 add ecx,DWORD[60+rsp] | |
1941 and edi,eax | |
1942 xor eax,ebx | |
1943 ror ebp,7 | |
1944 mov esi,edx | |
1945 xor edi,eax | |
1946 rol edx,5 | |
1947 add ecx,edi | |
1948 xor esi,ebp | |
1949 xor ebp,eax | |
1950 add ecx,edx | |
1951 pxor xmm0,xmm4 | |
1952 add ebx,DWORD[rsp] | |
1953 and esi,ebp | |
1954 xor ebp,eax | |
1955 ror edx,7 | |
1956 punpcklqdq xmm8,xmm7 | |
1957 mov edi,ecx | |
1958 xor esi,ebp | |
1959 pxor xmm0,xmm1 | |
1960 rol ecx,5 | |
1961 add ebx,esi | |
1962 movdqa xmm10,xmm9 | |
1963 xor edi,edx | |
1964 paddd xmm9,xmm7 | |
1965 xor edx,ebp | |
1966 pxor xmm0,xmm8 | |
1967 add ebx,ecx | |
1968 add eax,DWORD[4+rsp] | |
1969 and edi,edx | |
1970 xor edx,ebp | |
1971 ror ecx,7 | |
1972 movdqa xmm8,xmm0 | |
1973 mov esi,ebx | |
1974 xor edi,edx | |
1975 movdqa XMMWORD[48+rsp],xmm9 | |
1976 rol ebx,5 | |
1977 add eax,edi | |
1978 xor esi,ecx | |
1979 pslld xmm0,2 | |
1980 xor ecx,edx | |
1981 add eax,ebx | |
1982 psrld xmm8,30 | |
1983 add ebp,DWORD[8+rsp] | |
1984 and esi,ecx | |
1985 xor ecx,edx | |
1986 por xmm0,xmm8 | |
1987 ror ebx,7 | |
1988 mov edi,eax | |
1989 xor esi,ecx | |
1990 rol eax,5 | |
1991 pshufd xmm9,xmm7,238 | |
1992 add ebp,esi | |
1993 xor edi,ebx | |
1994 xor ebx,ecx | |
1995 add ebp,eax | |
1996 add edx,DWORD[12+rsp] | |
1997 and edi,ebx | |
1998 xor ebx,ecx | |
1999 ror eax,7 | |
2000 mov esi,ebp | |
2001 xor edi,ebx | |
2002 rol ebp,5 | |
2003 add edx,edi | |
2004 xor esi,eax | |
2005 xor eax,ebx | |
2006 add edx,ebp | |
2007 pxor xmm1,xmm5 | |
2008 add ecx,DWORD[16+rsp] | |
2009 and esi,eax | |
2010 xor eax,ebx | |
2011 ror ebp,7 | |
2012 punpcklqdq xmm9,xmm0 | |
2013 mov edi,edx | |
2014 xor esi,eax | |
2015 pxor xmm1,xmm2 | |
2016 rol edx,5 | |
2017 add ecx,esi | |
2018 movdqa xmm8,xmm10 | |
2019 xor edi,ebp | |
2020 paddd xmm10,xmm0 | |
2021 xor ebp,eax | |
2022 pxor xmm1,xmm9 | |
2023 add ecx,edx | |
2024 add ebx,DWORD[20+rsp] | |
2025 and edi,ebp | |
2026 xor ebp,eax | |
2027 ror edx,7 | |
2028 movdqa xmm9,xmm1 | |
2029 mov esi,ecx | |
2030 xor edi,ebp | |
2031 movdqa XMMWORD[rsp],xmm10 | |
2032 rol ecx,5 | |
2033 add ebx,edi | |
2034 xor esi,edx | |
2035 pslld xmm1,2 | |
2036 xor edx,ebp | |
2037 add ebx,ecx | |
2038 psrld xmm9,30 | |
2039 add eax,DWORD[24+rsp] | |
2040 and esi,edx | |
2041 xor edx,ebp | |
2042 por xmm1,xmm9 | |
2043 ror ecx,7 | |
2044 mov edi,ebx | |
2045 xor esi,edx | |
2046 rol ebx,5 | |
2047 pshufd xmm10,xmm0,238 | |
2048 add eax,esi | |
2049 xor edi,ecx | |
2050 xor ecx,edx | |
2051 add eax,ebx | |
2052 add ebp,DWORD[28+rsp] | |
2053 and edi,ecx | |
2054 xor ecx,edx | |
2055 ror ebx,7 | |
2056 mov esi,eax | |
2057 xor edi,ecx | |
2058 rol eax,5 | |
2059 add ebp,edi | |
2060 xor esi,ebx | |
2061 xor ebx,ecx | |
2062 add ebp,eax | |
2063 pxor xmm2,xmm6 | |
2064 add edx,DWORD[32+rsp] | |
2065 and esi,ebx | |
2066 xor ebx,ecx | |
2067 ror eax,7 | |
2068 punpcklqdq xmm10,xmm1 | |
2069 mov edi,ebp | |
2070 xor esi,ebx | |
2071 pxor xmm2,xmm3 | |
2072 rol ebp,5 | |
2073 add edx,esi | |
2074 movdqa xmm9,xmm8 | |
2075 xor edi,eax | |
2076 paddd xmm8,xmm1 | |
2077 xor eax,ebx | |
2078 pxor xmm2,xmm10 | |
2079 add edx,ebp | |
2080 add ecx,DWORD[36+rsp] | |
2081 and edi,eax | |
2082 xor eax,ebx | |
2083 ror ebp,7 | |
2084 movdqa xmm10,xmm2 | |
2085 mov esi,edx | |
2086 xor edi,eax | |
2087 movdqa XMMWORD[16+rsp],xmm8 | |
2088 rol edx,5 | |
2089 add ecx,edi | |
2090 xor esi,ebp | |
2091 pslld xmm2,2 | |
2092 xor ebp,eax | |
2093 add ecx,edx | |
2094 psrld xmm10,30 | |
2095 add ebx,DWORD[40+rsp] | |
2096 and esi,ebp | |
2097 xor ebp,eax | |
2098 por xmm2,xmm10 | |
2099 ror edx,7 | |
2100 mov edi,ecx | |
2101 xor esi,ebp | |
2102 rol ecx,5 | |
2103 pshufd xmm8,xmm1,238 | |
2104 add ebx,esi | |
2105 xor edi,edx | |
2106 xor edx,ebp | |
2107 add ebx,ecx | |
2108 add eax,DWORD[44+rsp] | |
2109 and edi,edx | |
2110 xor edx,ebp | |
2111 ror ecx,7 | |
2112 mov esi,ebx | |
2113 xor edi,edx | |
2114 rol ebx,5 | |
2115 add eax,edi | |
2116 xor esi,edx | |
2117 add eax,ebx | |
2118 pxor xmm3,xmm7 | |
2119 add ebp,DWORD[48+rsp] | |
2120 xor esi,ecx | |
2121 punpcklqdq xmm8,xmm2 | |
2122 mov edi,eax | |
2123 rol eax,5 | |
2124 pxor xmm3,xmm4 | |
2125 add ebp,esi | |
2126 xor edi,ecx | |
2127 movdqa xmm10,xmm9 | |
2128 ror ebx,7 | |
2129 paddd xmm9,xmm2 | |
2130 add ebp,eax | |
2131 pxor xmm3,xmm8 | |
2132 add edx,DWORD[52+rsp] | |
2133 xor edi,ebx | |
2134 mov esi,ebp | |
2135 rol ebp,5 | |
2136 movdqa xmm8,xmm3 | |
2137 add edx,edi | |
2138 xor esi,ebx | |
2139 movdqa XMMWORD[32+rsp],xmm9 | |
2140 ror eax,7 | |
2141 add edx,ebp | |
2142 add ecx,DWORD[56+rsp] | |
2143 pslld xmm3,2 | |
2144 xor esi,eax | |
2145 mov edi,edx | |
2146 psrld xmm8,30 | |
2147 rol edx,5 | |
2148 add ecx,esi | |
2149 xor edi,eax | |
2150 ror ebp,7 | |
2151 por xmm3,xmm8 | |
2152 add ecx,edx | |
2153 add ebx,DWORD[60+rsp] | |
2154 xor edi,ebp | |
2155 mov esi,ecx | |
2156 rol ecx,5 | |
2157 add ebx,edi | |
2158 xor esi,ebp | |
2159 ror edx,7 | |
2160 add ebx,ecx | |
2161 add eax,DWORD[rsp] | |
2162 xor esi,edx | |
2163 mov edi,ebx | |
2164 rol ebx,5 | |
2165 paddd xmm10,xmm3 | |
2166 add eax,esi | |
2167 xor edi,edx | |
2168 movdqa XMMWORD[48+rsp],xmm10 | |
2169 ror ecx,7 | |
2170 add eax,ebx | |
2171 add ebp,DWORD[4+rsp] | |
2172 xor edi,ecx | |
2173 mov esi,eax | |
2174 rol eax,5 | |
2175 add ebp,edi | |
2176 xor esi,ecx | |
2177 ror ebx,7 | |
2178 add ebp,eax | |
2179 add edx,DWORD[8+rsp] | |
2180 xor esi,ebx | |
2181 mov edi,ebp | |
2182 rol ebp,5 | |
2183 add edx,esi | |
2184 xor edi,ebx | |
2185 ror eax,7 | |
2186 add edx,ebp | |
2187 add ecx,DWORD[12+rsp] | |
2188 xor edi,eax | |
2189 mov esi,edx | |
2190 rol edx,5 | |
2191 add ecx,edi | |
2192 xor esi,eax | |
2193 ror ebp,7 | |
2194 add ecx,edx | |
2195 cmp r9,r10 | |
2196 je NEAR $L$done_ssse3 | |
2197 movdqa xmm6,XMMWORD[64+r11] | |
2198 movdqa xmm9,XMMWORD[((-64))+r11] | |
2199 movdqu xmm0,XMMWORD[r9] | |
2200 movdqu xmm1,XMMWORD[16+r9] | |
2201 movdqu xmm2,XMMWORD[32+r9] | |
2202 movdqu xmm3,XMMWORD[48+r9] | |
2203 DB 102,15,56,0,198 | |
2204 add r9,64 | |
2205 add ebx,DWORD[16+rsp] | |
2206 xor esi,ebp | |
2207 mov edi,ecx | |
2208 DB 102,15,56,0,206 | |
2209 rol ecx,5 | |
2210 add ebx,esi | |
2211 xor edi,ebp | |
2212 ror edx,7 | |
2213 paddd xmm0,xmm9 | |
2214 add ebx,ecx | |
2215 add eax,DWORD[20+rsp] | |
2216 xor edi,edx | |
2217 mov esi,ebx | |
2218 movdqa XMMWORD[rsp],xmm0 | |
2219 rol ebx,5 | |
2220 add eax,edi | |
2221 xor esi,edx | |
2222 ror ecx,7 | |
2223 psubd xmm0,xmm9 | |
2224 add eax,ebx | |
2225 add ebp,DWORD[24+rsp] | |
2226 xor esi,ecx | |
2227 mov edi,eax | |
2228 rol eax,5 | |
2229 add ebp,esi | |
2230 xor edi,ecx | |
2231 ror ebx,7 | |
2232 add ebp,eax | |
2233 add edx,DWORD[28+rsp] | |
2234 xor edi,ebx | |
2235 mov esi,ebp | |
2236 rol ebp,5 | |
2237 add edx,edi | |
2238 xor esi,ebx | |
2239 ror eax,7 | |
2240 add edx,ebp | |
2241 add ecx,DWORD[32+rsp] | |
2242 xor esi,eax | |
2243 mov edi,edx | |
2244 DB 102,15,56,0,214 | |
2245 rol edx,5 | |
2246 add ecx,esi | |
2247 xor edi,eax | |
2248 ror ebp,7 | |
2249 paddd xmm1,xmm9 | |
2250 add ecx,edx | |
2251 add ebx,DWORD[36+rsp] | |
2252 xor edi,ebp | |
2253 mov esi,ecx | |
2254 movdqa XMMWORD[16+rsp],xmm1 | |
2255 rol ecx,5 | |
2256 add ebx,edi | |
2257 xor esi,ebp | |
2258 ror edx,7 | |
2259 psubd xmm1,xmm9 | |
2260 add ebx,ecx | |
2261 add eax,DWORD[40+rsp] | |
2262 xor esi,edx | |
2263 mov edi,ebx | |
2264 rol ebx,5 | |
2265 add eax,esi | |
2266 xor edi,edx | |
2267 ror ecx,7 | |
2268 add eax,ebx | |
2269 add ebp,DWORD[44+rsp] | |
2270 xor edi,ecx | |
2271 mov esi,eax | |
2272 rol eax,5 | |
2273 add ebp,edi | |
2274 xor esi,ecx | |
2275 ror ebx,7 | |
2276 add ebp,eax | |
2277 add edx,DWORD[48+rsp] | |
2278 xor esi,ebx | |
2279 mov edi,ebp | |
2280 DB 102,15,56,0,222 | |
2281 rol ebp,5 | |
2282 add edx,esi | |
2283 xor edi,ebx | |
2284 ror eax,7 | |
2285 paddd xmm2,xmm9 | |
2286 add edx,ebp | |
2287 add ecx,DWORD[52+rsp] | |
2288 xor edi,eax | |
2289 mov esi,edx | |
2290 movdqa XMMWORD[32+rsp],xmm2 | |
2291 rol edx,5 | |
2292 add ecx,edi | |
2293 xor esi,eax | |
2294 ror ebp,7 | |
2295 psubd xmm2,xmm9 | |
2296 add ecx,edx | |
2297 add ebx,DWORD[56+rsp] | |
2298 xor esi,ebp | |
2299 mov edi,ecx | |
2300 rol ecx,5 | |
2301 add ebx,esi | |
2302 xor edi,ebp | |
2303 ror edx,7 | |
2304 add ebx,ecx | |
2305 add eax,DWORD[60+rsp] | |
2306 xor edi,edx | |
2307 mov esi,ebx | |
2308 rol ebx,5 | |
2309 add eax,edi | |
2310 ror ecx,7 | |
2311 add eax,ebx | |
2312 add eax,DWORD[r8] | |
2313 add esi,DWORD[4+r8] | |
2314 add ecx,DWORD[8+r8] | |
2315 add edx,DWORD[12+r8] | |
2316 mov DWORD[r8],eax | |
2317 add ebp,DWORD[16+r8] | |
2318 mov DWORD[4+r8],esi | |
2319 mov ebx,esi | |
2320 mov DWORD[8+r8],ecx | |
2321 mov edi,ecx | |
2322 mov DWORD[12+r8],edx | |
2323 xor edi,edx | |
2324 mov DWORD[16+r8],ebp | |
2325 and esi,edi | |
2326 jmp NEAR $L$oop_ssse3 | |
2327 | |
2328 ALIGN 16 | |
2329 $L$done_ssse3: | |
2330 add ebx,DWORD[16+rsp] | |
2331 xor esi,ebp | |
2332 mov edi,ecx | |
2333 rol ecx,5 | |
2334 add ebx,esi | |
2335 xor edi,ebp | |
2336 ror edx,7 | |
2337 add ebx,ecx | |
2338 add eax,DWORD[20+rsp] | |
2339 xor edi,edx | |
2340 mov esi,ebx | |
2341 rol ebx,5 | |
2342 add eax,edi | |
2343 xor esi,edx | |
2344 ror ecx,7 | |
2345 add eax,ebx | |
2346 add ebp,DWORD[24+rsp] | |
2347 xor esi,ecx | |
2348 mov edi,eax | |
2349 rol eax,5 | |
2350 add ebp,esi | |
2351 xor edi,ecx | |
2352 ror ebx,7 | |
2353 add ebp,eax | |
2354 add edx,DWORD[28+rsp] | |
2355 xor edi,ebx | |
2356 mov esi,ebp | |
2357 rol ebp,5 | |
2358 add edx,edi | |
2359 xor esi,ebx | |
2360 ror eax,7 | |
2361 add edx,ebp | |
2362 add ecx,DWORD[32+rsp] | |
2363 xor esi,eax | |
2364 mov edi,edx | |
2365 rol edx,5 | |
2366 add ecx,esi | |
2367 xor edi,eax | |
2368 ror ebp,7 | |
2369 add ecx,edx | |
2370 add ebx,DWORD[36+rsp] | |
2371 xor edi,ebp | |
2372 mov esi,ecx | |
2373 rol ecx,5 | |
2374 add ebx,edi | |
2375 xor esi,ebp | |
2376 ror edx,7 | |
2377 add ebx,ecx | |
2378 add eax,DWORD[40+rsp] | |
2379 xor esi,edx | |
2380 mov edi,ebx | |
2381 rol ebx,5 | |
2382 add eax,esi | |
2383 xor edi,edx | |
2384 ror ecx,7 | |
2385 add eax,ebx | |
2386 add ebp,DWORD[44+rsp] | |
2387 xor edi,ecx | |
2388 mov esi,eax | |
2389 rol eax,5 | |
2390 add ebp,edi | |
2391 xor esi,ecx | |
2392 ror ebx,7 | |
2393 add ebp,eax | |
2394 add edx,DWORD[48+rsp] | |
2395 xor esi,ebx | |
2396 mov edi,ebp | |
2397 rol ebp,5 | |
2398 add edx,esi | |
2399 xor edi,ebx | |
2400 ror eax,7 | |
2401 add edx,ebp | |
2402 add ecx,DWORD[52+rsp] | |
2403 xor edi,eax | |
2404 mov esi,edx | |
2405 rol edx,5 | |
2406 add ecx,edi | |
2407 xor esi,eax | |
2408 ror ebp,7 | |
2409 add ecx,edx | |
2410 add ebx,DWORD[56+rsp] | |
2411 xor esi,ebp | |
2412 mov edi,ecx | |
2413 rol ecx,5 | |
2414 add ebx,esi | |
2415 xor edi,ebp | |
2416 ror edx,7 | |
2417 add ebx,ecx | |
2418 add eax,DWORD[60+rsp] | |
2419 xor edi,edx | |
2420 mov esi,ebx | |
2421 rol ebx,5 | |
2422 add eax,edi | |
2423 ror ecx,7 | |
2424 add eax,ebx | |
2425 add eax,DWORD[r8] | |
2426 add esi,DWORD[4+r8] | |
2427 add ecx,DWORD[8+r8] | |
2428 mov DWORD[r8],eax | |
2429 add edx,DWORD[12+r8] | |
2430 mov DWORD[4+r8],esi | |
2431 add ebp,DWORD[16+r8] | |
2432 mov DWORD[8+r8],ecx | |
2433 mov DWORD[12+r8],edx | |
2434 mov DWORD[16+r8],ebp | |
2435 movaps xmm6,XMMWORD[((-40-96))+r14] | |
2436 movaps xmm7,XMMWORD[((-40-80))+r14] | |
2437 movaps xmm8,XMMWORD[((-40-64))+r14] | |
2438 movaps xmm9,XMMWORD[((-40-48))+r14] | |
2439 movaps xmm10,XMMWORD[((-40-32))+r14] | |
2440 movaps xmm11,XMMWORD[((-40-16))+r14] | |
2441 lea rsi,[r14] | |
2442 mov r14,QWORD[((-40))+rsi] | |
2443 mov r13,QWORD[((-32))+rsi] | |
2444 mov r12,QWORD[((-24))+rsi] | |
2445 mov rbp,QWORD[((-16))+rsi] | |
2446 mov rbx,QWORD[((-8))+rsi] | |
2447 lea rsp,[rsi] | |
2448 $L$epilogue_ssse3: | |
2449 mov rdi,QWORD[8+rsp] ;WIN64 epilogue | |
2450 mov rsi,QWORD[16+rsp] | |
2451 DB 0F3h,0C3h ;repret | |
2452 $L$SEH_end_sha1_block_data_order_ssse3: | |
2453 | |
2454 ALIGN 16 | |
2455 sha1_block_data_order_avx: | |
2456 mov QWORD[8+rsp],rdi ;WIN64 prologue | |
2457 mov QWORD[16+rsp],rsi | |
2458 mov rax,rsp | |
2459 $L$SEH_begin_sha1_block_data_order_avx: | |
2460 mov rdi,rcx | |
2461 mov rsi,rdx | |
2462 mov rdx,r8 | |
2463 | |
2464 | |
2465 _avx_shortcut: | |
2466 mov rax,rsp | |
2467 push rbx | |
2468 push rbp | |
2469 push r12 | |
2470 push r13 | |
2471 push r14 | |
2472 lea rsp,[((-160))+rsp] | |
2473 vzeroupper | |
2474 vmovaps XMMWORD[(-40-96)+rax],xmm6 | |
2475 vmovaps XMMWORD[(-40-80)+rax],xmm7 | |
2476 vmovaps XMMWORD[(-40-64)+rax],xmm8 | |
2477 vmovaps XMMWORD[(-40-48)+rax],xmm9 | |
2478 vmovaps XMMWORD[(-40-32)+rax],xmm10 | |
2479 vmovaps XMMWORD[(-40-16)+rax],xmm11 | |
2480 $L$prologue_avx: | |
2481 mov r14,rax | |
2482 and rsp,-64 | |
2483 mov r8,rdi | |
2484 mov r9,rsi | |
2485 mov r10,rdx | |
2486 | |
2487 shl r10,6 | |
2488 add r10,r9 | |
2489 lea r11,[((K_XX_XX+64))] | |
2490 | |
2491 mov eax,DWORD[r8] | |
2492 mov ebx,DWORD[4+r8] | |
2493 mov ecx,DWORD[8+r8] | |
2494 mov edx,DWORD[12+r8] | |
2495 mov esi,ebx | |
2496 mov ebp,DWORD[16+r8] | |
2497 mov edi,ecx | |
2498 xor edi,edx | |
2499 and esi,edi | |
2500 | |
2501 vmovdqa xmm6,XMMWORD[64+r11] | |
2502 vmovdqa xmm11,XMMWORD[((-64))+r11] | |
2503 vmovdqu xmm0,XMMWORD[r9] | |
2504 vmovdqu xmm1,XMMWORD[16+r9] | |
2505 vmovdqu xmm2,XMMWORD[32+r9] | |
2506 vmovdqu xmm3,XMMWORD[48+r9] | |
2507 vpshufb xmm0,xmm0,xmm6 | |
2508 add r9,64 | |
2509 vpshufb xmm1,xmm1,xmm6 | |
2510 vpshufb xmm2,xmm2,xmm6 | |
2511 vpshufb xmm3,xmm3,xmm6 | |
2512 vpaddd xmm4,xmm0,xmm11 | |
2513 vpaddd xmm5,xmm1,xmm11 | |
2514 vpaddd xmm6,xmm2,xmm11 | |
2515 vmovdqa XMMWORD[rsp],xmm4 | |
2516 vmovdqa XMMWORD[16+rsp],xmm5 | |
2517 vmovdqa XMMWORD[32+rsp],xmm6 | |
2518 jmp NEAR $L$oop_avx | |
2519 ALIGN 16 | |
2520 $L$oop_avx: | |
2521 shrd ebx,ebx,2 | |
2522 xor esi,edx | |
2523 vpalignr xmm4,xmm1,xmm0,8 | |
2524 mov edi,eax | |
2525 add ebp,DWORD[rsp] | |
2526 vpaddd xmm9,xmm11,xmm3 | |
2527 xor ebx,ecx | |
2528 shld eax,eax,5 | |
2529 vpsrldq xmm8,xmm3,4 | |
2530 add ebp,esi | |
2531 and edi,ebx | |
2532 vpxor xmm4,xmm4,xmm0 | |
2533 xor ebx,ecx | |
2534 add ebp,eax | |
2535 vpxor xmm8,xmm8,xmm2 | |
2536 shrd eax,eax,7 | |
2537 xor edi,ecx | |
2538 mov esi,ebp | |
2539 add edx,DWORD[4+rsp] | |
2540 vpxor xmm4,xmm4,xmm8 | |
2541 xor eax,ebx | |
2542 shld ebp,ebp,5 | |
2543 vmovdqa XMMWORD[48+rsp],xmm9 | |
2544 add edx,edi | |
2545 and esi,eax | |
2546 vpsrld xmm8,xmm4,31 | |
2547 xor eax,ebx | |
2548 add edx,ebp | |
2549 shrd ebp,ebp,7 | |
2550 xor esi,ebx | |
2551 vpslldq xmm10,xmm4,12 | |
2552 vpaddd xmm4,xmm4,xmm4 | |
2553 mov edi,edx | |
2554 add ecx,DWORD[8+rsp] | |
2555 xor ebp,eax | |
2556 shld edx,edx,5 | |
2557 vpsrld xmm9,xmm10,30 | |
2558 vpor xmm4,xmm4,xmm8 | |
2559 add ecx,esi | |
2560 and edi,ebp | |
2561 xor ebp,eax | |
2562 add ecx,edx | |
2563 vpslld xmm10,xmm10,2 | |
2564 vpxor xmm4,xmm4,xmm9 | |
2565 shrd edx,edx,7 | |
2566 xor edi,eax | |
2567 mov esi,ecx | |
2568 add ebx,DWORD[12+rsp] | |
2569 vpxor xmm4,xmm4,xmm10 | |
2570 xor edx,ebp | |
2571 shld ecx,ecx,5 | |
2572 add ebx,edi | |
2573 and esi,edx | |
2574 xor edx,ebp | |
2575 add ebx,ecx | |
2576 shrd ecx,ecx,7 | |
2577 xor esi,ebp | |
2578 vpalignr xmm5,xmm2,xmm1,8 | |
2579 mov edi,ebx | |
2580 add eax,DWORD[16+rsp] | |
2581 vpaddd xmm9,xmm11,xmm4 | |
2582 xor ecx,edx | |
2583 shld ebx,ebx,5 | |
2584 vpsrldq xmm8,xmm4,4 | |
2585 add eax,esi | |
2586 and edi,ecx | |
2587 vpxor xmm5,xmm5,xmm1 | |
2588 xor ecx,edx | |
2589 add eax,ebx | |
2590 vpxor xmm8,xmm8,xmm3 | |
2591 shrd ebx,ebx,7 | |
2592 xor edi,edx | |
2593 mov esi,eax | |
2594 add ebp,DWORD[20+rsp] | |
2595 vpxor xmm5,xmm5,xmm8 | |
2596 xor ebx,ecx | |
2597 shld eax,eax,5 | |
2598 vmovdqa XMMWORD[rsp],xmm9 | |
2599 add ebp,edi | |
2600 and esi,ebx | |
2601 vpsrld xmm8,xmm5,31 | |
2602 xor ebx,ecx | |
2603 add ebp,eax | |
2604 shrd eax,eax,7 | |
2605 xor esi,ecx | |
2606 vpslldq xmm10,xmm5,12 | |
2607 vpaddd xmm5,xmm5,xmm5 | |
2608 mov edi,ebp | |
2609 add edx,DWORD[24+rsp] | |
2610 xor eax,ebx | |
2611 shld ebp,ebp,5 | |
2612 vpsrld xmm9,xmm10,30 | |
2613 vpor xmm5,xmm5,xmm8 | |
2614 add edx,esi | |
2615 and edi,eax | |
2616 xor eax,ebx | |
2617 add edx,ebp | |
2618 vpslld xmm10,xmm10,2 | |
2619 vpxor xmm5,xmm5,xmm9 | |
2620 shrd ebp,ebp,7 | |
2621 xor edi,ebx | |
2622 mov esi,edx | |
2623 add ecx,DWORD[28+rsp] | |
2624 vpxor xmm5,xmm5,xmm10 | |
2625 xor ebp,eax | |
2626 shld edx,edx,5 | |
2627 vmovdqa xmm11,XMMWORD[((-32))+r11] | |
2628 add ecx,edi | |
2629 and esi,ebp | |
2630 xor ebp,eax | |
2631 add ecx,edx | |
2632 shrd edx,edx,7 | |
2633 xor esi,eax | |
2634 vpalignr xmm6,xmm3,xmm2,8 | |
2635 mov edi,ecx | |
2636 add ebx,DWORD[32+rsp] | |
2637 vpaddd xmm9,xmm11,xmm5 | |
2638 xor edx,ebp | |
2639 shld ecx,ecx,5 | |
2640 vpsrldq xmm8,xmm5,4 | |
2641 add ebx,esi | |
2642 and edi,edx | |
2643 vpxor xmm6,xmm6,xmm2 | |
2644 xor edx,ebp | |
2645 add ebx,ecx | |
2646 vpxor xmm8,xmm8,xmm4 | |
2647 shrd ecx,ecx,7 | |
2648 xor edi,ebp | |
2649 mov esi,ebx | |
2650 add eax,DWORD[36+rsp] | |
2651 vpxor xmm6,xmm6,xmm8 | |
2652 xor ecx,edx | |
2653 shld ebx,ebx,5 | |
2654 vmovdqa XMMWORD[16+rsp],xmm9 | |
2655 add eax,edi | |
2656 and esi,ecx | |
2657 vpsrld xmm8,xmm6,31 | |
2658 xor ecx,edx | |
2659 add eax,ebx | |
2660 shrd ebx,ebx,7 | |
2661 xor esi,edx | |
2662 vpslldq xmm10,xmm6,12 | |
2663 vpaddd xmm6,xmm6,xmm6 | |
2664 mov edi,eax | |
2665 add ebp,DWORD[40+rsp] | |
2666 xor ebx,ecx | |
2667 shld eax,eax,5 | |
2668 vpsrld xmm9,xmm10,30 | |
2669 vpor xmm6,xmm6,xmm8 | |
2670 add ebp,esi | |
2671 and edi,ebx | |
2672 xor ebx,ecx | |
2673 add ebp,eax | |
2674 vpslld xmm10,xmm10,2 | |
2675 vpxor xmm6,xmm6,xmm9 | |
2676 shrd eax,eax,7 | |
2677 xor edi,ecx | |
2678 mov esi,ebp | |
2679 add edx,DWORD[44+rsp] | |
2680 vpxor xmm6,xmm6,xmm10 | |
2681 xor eax,ebx | |
2682 shld ebp,ebp,5 | |
2683 add edx,edi | |
2684 and esi,eax | |
2685 xor eax,ebx | |
2686 add edx,ebp | |
2687 shrd ebp,ebp,7 | |
2688 xor esi,ebx | |
2689 vpalignr xmm7,xmm4,xmm3,8 | |
2690 mov edi,edx | |
2691 add ecx,DWORD[48+rsp] | |
2692 vpaddd xmm9,xmm11,xmm6 | |
2693 xor ebp,eax | |
2694 shld edx,edx,5 | |
2695 vpsrldq xmm8,xmm6,4 | |
2696 add ecx,esi | |
2697 and edi,ebp | |
2698 vpxor xmm7,xmm7,xmm3 | |
2699 xor ebp,eax | |
2700 add ecx,edx | |
2701 vpxor xmm8,xmm8,xmm5 | |
2702 shrd edx,edx,7 | |
2703 xor edi,eax | |
2704 mov esi,ecx | |
2705 add ebx,DWORD[52+rsp] | |
2706 vpxor xmm7,xmm7,xmm8 | |
2707 xor edx,ebp | |
2708 shld ecx,ecx,5 | |
2709 vmovdqa XMMWORD[32+rsp],xmm9 | |
2710 add ebx,edi | |
2711 and esi,edx | |
2712 vpsrld xmm8,xmm7,31 | |
2713 xor edx,ebp | |
2714 add ebx,ecx | |
2715 shrd ecx,ecx,7 | |
2716 xor esi,ebp | |
2717 vpslldq xmm10,xmm7,12 | |
2718 vpaddd xmm7,xmm7,xmm7 | |
2719 mov edi,ebx | |
2720 add eax,DWORD[56+rsp] | |
2721 xor ecx,edx | |
2722 shld ebx,ebx,5 | |
2723 vpsrld xmm9,xmm10,30 | |
2724 vpor xmm7,xmm7,xmm8 | |
2725 add eax,esi | |
2726 and edi,ecx | |
2727 xor ecx,edx | |
2728 add eax,ebx | |
2729 vpslld xmm10,xmm10,2 | |
2730 vpxor xmm7,xmm7,xmm9 | |
2731 shrd ebx,ebx,7 | |
2732 xor edi,edx | |
2733 mov esi,eax | |
2734 add ebp,DWORD[60+rsp] | |
2735 vpxor xmm7,xmm7,xmm10 | |
2736 xor ebx,ecx | |
2737 shld eax,eax,5 | |
2738 add ebp,edi | |
2739 and esi,ebx | |
2740 xor ebx,ecx | |
2741 add ebp,eax | |
2742 vpalignr xmm8,xmm7,xmm6,8 | |
2743 vpxor xmm0,xmm0,xmm4 | |
2744 shrd eax,eax,7 | |
2745 xor esi,ecx | |
2746 mov edi,ebp | |
2747 add edx,DWORD[rsp] | |
2748 vpxor xmm0,xmm0,xmm1 | |
2749 xor eax,ebx | |
2750 shld ebp,ebp,5 | |
2751 vpaddd xmm9,xmm11,xmm7 | |
2752 add edx,esi | |
2753 and edi,eax | |
2754 vpxor xmm0,xmm0,xmm8 | |
2755 xor eax,ebx | |
2756 add edx,ebp | |
2757 shrd ebp,ebp,7 | |
2758 xor edi,ebx | |
2759 vpsrld xmm8,xmm0,30 | |
2760 vmovdqa XMMWORD[48+rsp],xmm9 | |
2761 mov esi,edx | |
2762 add ecx,DWORD[4+rsp] | |
2763 xor ebp,eax | |
2764 shld edx,edx,5 | |
2765 vpslld xmm0,xmm0,2 | |
2766 add ecx,edi | |
2767 and esi,ebp | |
2768 xor ebp,eax | |
2769 add ecx,edx | |
2770 shrd edx,edx,7 | |
2771 xor esi,eax | |
2772 mov edi,ecx | |
2773 add ebx,DWORD[8+rsp] | |
2774 vpor xmm0,xmm0,xmm8 | |
2775 xor edx,ebp | |
2776 shld ecx,ecx,5 | |
2777 add ebx,esi | |
2778 and edi,edx | |
2779 xor edx,ebp | |
2780 add ebx,ecx | |
2781 add eax,DWORD[12+rsp] | |
2782 xor edi,ebp | |
2783 mov esi,ebx | |
2784 shld ebx,ebx,5 | |
2785 add eax,edi | |
2786 xor esi,edx | |
2787 shrd ecx,ecx,7 | |
2788 add eax,ebx | |
2789 vpalignr xmm8,xmm0,xmm7,8 | |
2790 vpxor xmm1,xmm1,xmm5 | |
2791 add ebp,DWORD[16+rsp] | |
2792 xor esi,ecx | |
2793 mov edi,eax | |
2794 shld eax,eax,5 | |
2795 vpxor xmm1,xmm1,xmm2 | |
2796 add ebp,esi | |
2797 xor edi,ecx | |
2798 vpaddd xmm9,xmm11,xmm0 | |
2799 shrd ebx,ebx,7 | |
2800 add ebp,eax | |
2801 vpxor xmm1,xmm1,xmm8 | |
2802 add edx,DWORD[20+rsp] | |
2803 xor edi,ebx | |
2804 mov esi,ebp | |
2805 shld ebp,ebp,5 | |
2806 vpsrld xmm8,xmm1,30 | |
2807 vmovdqa XMMWORD[rsp],xmm9 | |
2808 add edx,edi | |
2809 xor esi,ebx | |
2810 shrd eax,eax,7 | |
2811 add edx,ebp | |
2812 vpslld xmm1,xmm1,2 | |
2813 add ecx,DWORD[24+rsp] | |
2814 xor esi,eax | |
2815 mov edi,edx | |
2816 shld edx,edx,5 | |
2817 add ecx,esi | |
2818 xor edi,eax | |
2819 shrd ebp,ebp,7 | |
2820 add ecx,edx | |
2821 vpor xmm1,xmm1,xmm8 | |
2822 add ebx,DWORD[28+rsp] | |
2823 xor edi,ebp | |
2824 mov esi,ecx | |
2825 shld ecx,ecx,5 | |
2826 add ebx,edi | |
2827 xor esi,ebp | |
2828 shrd edx,edx,7 | |
2829 add ebx,ecx | |
2830 vpalignr xmm8,xmm1,xmm0,8 | |
2831 vpxor xmm2,xmm2,xmm6 | |
2832 add eax,DWORD[32+rsp] | |
2833 xor esi,edx | |
2834 mov edi,ebx | |
2835 shld ebx,ebx,5 | |
2836 vpxor xmm2,xmm2,xmm3 | |
2837 add eax,esi | |
2838 xor edi,edx | |
2839 vpaddd xmm9,xmm11,xmm1 | |
2840 vmovdqa xmm11,XMMWORD[r11] | |
2841 shrd ecx,ecx,7 | |
2842 add eax,ebx | |
2843 vpxor xmm2,xmm2,xmm8 | |
2844 add ebp,DWORD[36+rsp] | |
2845 xor edi,ecx | |
2846 mov esi,eax | |
2847 shld eax,eax,5 | |
2848 vpsrld xmm8,xmm2,30 | |
2849 vmovdqa XMMWORD[16+rsp],xmm9 | |
2850 add ebp,edi | |
2851 xor esi,ecx | |
2852 shrd ebx,ebx,7 | |
2853 add ebp,eax | |
2854 vpslld xmm2,xmm2,2 | |
2855 add edx,DWORD[40+rsp] | |
2856 xor esi,ebx | |
2857 mov edi,ebp | |
2858 shld ebp,ebp,5 | |
2859 add edx,esi | |
2860 xor edi,ebx | |
2861 shrd eax,eax,7 | |
2862 add edx,ebp | |
2863 vpor xmm2,xmm2,xmm8 | |
2864 add ecx,DWORD[44+rsp] | |
2865 xor edi,eax | |
2866 mov esi,edx | |
2867 shld edx,edx,5 | |
2868 add ecx,edi | |
2869 xor esi,eax | |
2870 shrd ebp,ebp,7 | |
2871 add ecx,edx | |
2872 vpalignr xmm8,xmm2,xmm1,8 | |
2873 vpxor xmm3,xmm3,xmm7 | |
2874 add ebx,DWORD[48+rsp] | |
2875 xor esi,ebp | |
2876 mov edi,ecx | |
2877 shld ecx,ecx,5 | |
2878 vpxor xmm3,xmm3,xmm4 | |
2879 add ebx,esi | |
2880 xor edi,ebp | |
2881 vpaddd xmm9,xmm11,xmm2 | |
2882 shrd edx,edx,7 | |
2883 add ebx,ecx | |
2884 vpxor xmm3,xmm3,xmm8 | |
2885 add eax,DWORD[52+rsp] | |
2886 xor edi,edx | |
2887 mov esi,ebx | |
2888 shld ebx,ebx,5 | |
2889 vpsrld xmm8,xmm3,30 | |
2890 vmovdqa XMMWORD[32+rsp],xmm9 | |
2891 add eax,edi | |
2892 xor esi,edx | |
2893 shrd ecx,ecx,7 | |
2894 add eax,ebx | |
2895 vpslld xmm3,xmm3,2 | |
2896 add ebp,DWORD[56+rsp] | |
2897 xor esi,ecx | |
2898 mov edi,eax | |
2899 shld eax,eax,5 | |
2900 add ebp,esi | |
2901 xor edi,ecx | |
2902 shrd ebx,ebx,7 | |
2903 add ebp,eax | |
2904 vpor xmm3,xmm3,xmm8 | |
2905 add edx,DWORD[60+rsp] | |
2906 xor edi,ebx | |
2907 mov esi,ebp | |
2908 shld ebp,ebp,5 | |
2909 add edx,edi | |
2910 xor esi,ebx | |
2911 shrd eax,eax,7 | |
2912 add edx,ebp | |
2913 vpalignr xmm8,xmm3,xmm2,8 | |
2914 vpxor xmm4,xmm4,xmm0 | |
2915 add ecx,DWORD[rsp] | |
2916 xor esi,eax | |
2917 mov edi,edx | |
2918 shld edx,edx,5 | |
2919 vpxor xmm4,xmm4,xmm5 | |
2920 add ecx,esi | |
2921 xor edi,eax | |
2922 vpaddd xmm9,xmm11,xmm3 | |
2923 shrd ebp,ebp,7 | |
2924 add ecx,edx | |
2925 vpxor xmm4,xmm4,xmm8 | |
2926 add ebx,DWORD[4+rsp] | |
2927 xor edi,ebp | |
2928 mov esi,ecx | |
2929 shld ecx,ecx,5 | |
2930 vpsrld xmm8,xmm4,30 | |
2931 vmovdqa XMMWORD[48+rsp],xmm9 | |
2932 add ebx,edi | |
2933 xor esi,ebp | |
2934 shrd edx,edx,7 | |
2935 add ebx,ecx | |
2936 vpslld xmm4,xmm4,2 | |
2937 add eax,DWORD[8+rsp] | |
2938 xor esi,edx | |
2939 mov edi,ebx | |
2940 shld ebx,ebx,5 | |
2941 add eax,esi | |
2942 xor edi,edx | |
2943 shrd ecx,ecx,7 | |
2944 add eax,ebx | |
2945 vpor xmm4,xmm4,xmm8 | |
2946 add ebp,DWORD[12+rsp] | |
2947 xor edi,ecx | |
2948 mov esi,eax | |
2949 shld eax,eax,5 | |
2950 add ebp,edi | |
2951 xor esi,ecx | |
2952 shrd ebx,ebx,7 | |
2953 add ebp,eax | |
2954 vpalignr xmm8,xmm4,xmm3,8 | |
2955 vpxor xmm5,xmm5,xmm1 | |
2956 add edx,DWORD[16+rsp] | |
2957 xor esi,ebx | |
2958 mov edi,ebp | |
2959 shld ebp,ebp,5 | |
2960 vpxor xmm5,xmm5,xmm6 | |
2961 add edx,esi | |
2962 xor edi,ebx | |
2963 vpaddd xmm9,xmm11,xmm4 | |
2964 shrd eax,eax,7 | |
2965 add edx,ebp | |
2966 vpxor xmm5,xmm5,xmm8 | |
2967 add ecx,DWORD[20+rsp] | |
2968 xor edi,eax | |
2969 mov esi,edx | |
2970 shld edx,edx,5 | |
2971 vpsrld xmm8,xmm5,30 | |
2972 vmovdqa XMMWORD[rsp],xmm9 | |
2973 add ecx,edi | |
2974 xor esi,eax | |
2975 shrd ebp,ebp,7 | |
2976 add ecx,edx | |
2977 vpslld xmm5,xmm5,2 | |
2978 add ebx,DWORD[24+rsp] | |
2979 xor esi,ebp | |
2980 mov edi,ecx | |
2981 shld ecx,ecx,5 | |
2982 add ebx,esi | |
2983 xor edi,ebp | |
2984 shrd edx,edx,7 | |
2985 add ebx,ecx | |
2986 vpor xmm5,xmm5,xmm8 | |
2987 add eax,DWORD[28+rsp] | |
2988 shrd ecx,ecx,7 | |
2989 mov esi,ebx | |
2990 xor edi,edx | |
2991 shld ebx,ebx,5 | |
2992 add eax,edi | |
2993 xor esi,ecx | |
2994 xor ecx,edx | |
2995 add eax,ebx | |
2996 vpalignr xmm8,xmm5,xmm4,8 | |
2997 vpxor xmm6,xmm6,xmm2 | |
2998 add ebp,DWORD[32+rsp] | |
2999 and esi,ecx | |
3000 xor ecx,edx | |
3001 shrd ebx,ebx,7 | |
3002 vpxor xmm6,xmm6,xmm7 | |
3003 mov edi,eax | |
3004 xor esi,ecx | |
3005 vpaddd xmm9,xmm11,xmm5 | |
3006 shld eax,eax,5 | |
3007 add ebp,esi | |
3008 vpxor xmm6,xmm6,xmm8 | |
3009 xor edi,ebx | |
3010 xor ebx,ecx | |
3011 add ebp,eax | |
3012 add edx,DWORD[36+rsp] | |
3013 vpsrld xmm8,xmm6,30 | |
3014 vmovdqa XMMWORD[16+rsp],xmm9 | |
3015 and edi,ebx | |
3016 xor ebx,ecx | |
3017 shrd eax,eax,7 | |
3018 mov esi,ebp | |
3019 vpslld xmm6,xmm6,2 | |
3020 xor edi,ebx | |
3021 shld ebp,ebp,5 | |
3022 add edx,edi | |
3023 xor esi,eax | |
3024 xor eax,ebx | |
3025 add edx,ebp | |
3026 add ecx,DWORD[40+rsp] | |
3027 and esi,eax | |
3028 vpor xmm6,xmm6,xmm8 | |
3029 xor eax,ebx | |
3030 shrd ebp,ebp,7 | |
3031 mov edi,edx | |
3032 xor esi,eax | |
3033 shld edx,edx,5 | |
3034 add ecx,esi | |
3035 xor edi,ebp | |
3036 xor ebp,eax | |
3037 add ecx,edx | |
3038 add ebx,DWORD[44+rsp] | |
3039 and edi,ebp | |
3040 xor ebp,eax | |
3041 shrd edx,edx,7 | |
3042 mov esi,ecx | |
3043 xor edi,ebp | |
3044 shld ecx,ecx,5 | |
3045 add ebx,edi | |
3046 xor esi,edx | |
3047 xor edx,ebp | |
3048 add ebx,ecx | |
3049 vpalignr xmm8,xmm6,xmm5,8 | |
3050 vpxor xmm7,xmm7,xmm3 | |
3051 add eax,DWORD[48+rsp] | |
3052 and esi,edx | |
3053 xor edx,ebp | |
3054 shrd ecx,ecx,7 | |
3055 vpxor xmm7,xmm7,xmm0 | |
3056 mov edi,ebx | |
3057 xor esi,edx | |
3058 vpaddd xmm9,xmm11,xmm6 | |
3059 vmovdqa xmm11,XMMWORD[32+r11] | |
3060 shld ebx,ebx,5 | |
3061 add eax,esi | |
3062 vpxor xmm7,xmm7,xmm8 | |
3063 xor edi,ecx | |
3064 xor ecx,edx | |
3065 add eax,ebx | |
3066 add ebp,DWORD[52+rsp] | |
3067 vpsrld xmm8,xmm7,30 | |
3068 vmovdqa XMMWORD[32+rsp],xmm9 | |
3069 and edi,ecx | |
3070 xor ecx,edx | |
3071 shrd ebx,ebx,7 | |
3072 mov esi,eax | |
3073 vpslld xmm7,xmm7,2 | |
3074 xor edi,ecx | |
3075 shld eax,eax,5 | |
3076 add ebp,edi | |
3077 xor esi,ebx | |
3078 xor ebx,ecx | |
3079 add ebp,eax | |
3080 add edx,DWORD[56+rsp] | |
3081 and esi,ebx | |
3082 vpor xmm7,xmm7,xmm8 | |
3083 xor ebx,ecx | |
3084 shrd eax,eax,7 | |
3085 mov edi,ebp | |
3086 xor esi,ebx | |
3087 shld ebp,ebp,5 | |
3088 add edx,esi | |
3089 xor edi,eax | |
3090 xor eax,ebx | |
3091 add edx,ebp | |
3092 add ecx,DWORD[60+rsp] | |
3093 and edi,eax | |
3094 xor eax,ebx | |
3095 shrd ebp,ebp,7 | |
3096 mov esi,edx | |
3097 xor edi,eax | |
3098 shld edx,edx,5 | |
3099 add ecx,edi | |
3100 xor esi,ebp | |
3101 xor ebp,eax | |
3102 add ecx,edx | |
3103 vpalignr xmm8,xmm7,xmm6,8 | |
3104 vpxor xmm0,xmm0,xmm4 | |
3105 add ebx,DWORD[rsp] | |
3106 and esi,ebp | |
3107 xor ebp,eax | |
3108 shrd edx,edx,7 | |
3109 vpxor xmm0,xmm0,xmm1 | |
3110 mov edi,ecx | |
3111 xor esi,ebp | |
3112 vpaddd xmm9,xmm11,xmm7 | |
3113 shld ecx,ecx,5 | |
3114 add ebx,esi | |
3115 vpxor xmm0,xmm0,xmm8 | |
3116 xor edi,edx | |
3117 xor edx,ebp | |
3118 add ebx,ecx | |
3119 add eax,DWORD[4+rsp] | |
3120 vpsrld xmm8,xmm0,30 | |
3121 vmovdqa XMMWORD[48+rsp],xmm9 | |
3122 and edi,edx | |
3123 xor edx,ebp | |
3124 shrd ecx,ecx,7 | |
3125 mov esi,ebx | |
3126 vpslld xmm0,xmm0,2 | |
3127 xor edi,edx | |
3128 shld ebx,ebx,5 | |
3129 add eax,edi | |
3130 xor esi,ecx | |
3131 xor ecx,edx | |
3132 add eax,ebx | |
3133 add ebp,DWORD[8+rsp] | |
3134 and esi,ecx | |
3135 vpor xmm0,xmm0,xmm8 | |
3136 xor ecx,edx | |
3137 shrd ebx,ebx,7 | |
3138 mov edi,eax | |
3139 xor esi,ecx | |
3140 shld eax,eax,5 | |
3141 add ebp,esi | |
3142 xor edi,ebx | |
3143 xor ebx,ecx | |
3144 add ebp,eax | |
3145 add edx,DWORD[12+rsp] | |
3146 and edi,ebx | |
3147 xor ebx,ecx | |
3148 shrd eax,eax,7 | |
3149 mov esi,ebp | |
3150 xor edi,ebx | |
3151 shld ebp,ebp,5 | |
3152 add edx,edi | |
3153 xor esi,eax | |
3154 xor eax,ebx | |
3155 add edx,ebp | |
3156 vpalignr xmm8,xmm0,xmm7,8 | |
3157 vpxor xmm1,xmm1,xmm5 | |
3158 add ecx,DWORD[16+rsp] | |
3159 and esi,eax | |
3160 xor eax,ebx | |
3161 shrd ebp,ebp,7 | |
3162 vpxor xmm1,xmm1,xmm2 | |
3163 mov edi,edx | |
3164 xor esi,eax | |
3165 vpaddd xmm9,xmm11,xmm0 | |
3166 shld edx,edx,5 | |
3167 add ecx,esi | |
3168 vpxor xmm1,xmm1,xmm8 | |
3169 xor edi,ebp | |
3170 xor ebp,eax | |
3171 add ecx,edx | |
3172 add ebx,DWORD[20+rsp] | |
3173 vpsrld xmm8,xmm1,30 | |
3174 vmovdqa XMMWORD[rsp],xmm9 | |
3175 and edi,ebp | |
3176 xor ebp,eax | |
3177 shrd edx,edx,7 | |
3178 mov esi,ecx | |
3179 vpslld xmm1,xmm1,2 | |
3180 xor edi,ebp | |
3181 shld ecx,ecx,5 | |
3182 add ebx,edi | |
3183 xor esi,edx | |
3184 xor edx,ebp | |
3185 add ebx,ecx | |
3186 add eax,DWORD[24+rsp] | |
3187 and esi,edx | |
3188 vpor xmm1,xmm1,xmm8 | |
3189 xor edx,ebp | |
3190 shrd ecx,ecx,7 | |
3191 mov edi,ebx | |
3192 xor esi,edx | |
3193 shld ebx,ebx,5 | |
3194 add eax,esi | |
3195 xor edi,ecx | |
3196 xor ecx,edx | |
3197 add eax,ebx | |
3198 add ebp,DWORD[28+rsp] | |
3199 and edi,ecx | |
3200 xor ecx,edx | |
3201 shrd ebx,ebx,7 | |
3202 mov esi,eax | |
3203 xor edi,ecx | |
3204 shld eax,eax,5 | |
3205 add ebp,edi | |
3206 xor esi,ebx | |
3207 xor ebx,ecx | |
3208 add ebp,eax | |
3209 vpalignr xmm8,xmm1,xmm0,8 | |
3210 vpxor xmm2,xmm2,xmm6 | |
3211 add edx,DWORD[32+rsp] | |
3212 and esi,ebx | |
3213 xor ebx,ecx | |
3214 shrd eax,eax,7 | |
3215 vpxor xmm2,xmm2,xmm3 | |
3216 mov edi,ebp | |
3217 xor esi,ebx | |
3218 vpaddd xmm9,xmm11,xmm1 | |
3219 shld ebp,ebp,5 | |
3220 add edx,esi | |
3221 vpxor xmm2,xmm2,xmm8 | |
3222 xor edi,eax | |
3223 xor eax,ebx | |
3224 add edx,ebp | |
3225 add ecx,DWORD[36+rsp] | |
3226 vpsrld xmm8,xmm2,30 | |
3227 vmovdqa XMMWORD[16+rsp],xmm9 | |
3228 and edi,eax | |
3229 xor eax,ebx | |
3230 shrd ebp,ebp,7 | |
3231 mov esi,edx | |
3232 vpslld xmm2,xmm2,2 | |
3233 xor edi,eax | |
3234 shld edx,edx,5 | |
3235 add ecx,edi | |
3236 xor esi,ebp | |
3237 xor ebp,eax | |
3238 add ecx,edx | |
3239 add ebx,DWORD[40+rsp] | |
3240 and esi,ebp | |
3241 vpor xmm2,xmm2,xmm8 | |
3242 xor ebp,eax | |
3243 shrd edx,edx,7 | |
3244 mov edi,ecx | |
3245 xor esi,ebp | |
3246 shld ecx,ecx,5 | |
3247 add ebx,esi | |
3248 xor edi,edx | |
3249 xor edx,ebp | |
3250 add ebx,ecx | |
3251 add eax,DWORD[44+rsp] | |
3252 and edi,edx | |
3253 xor edx,ebp | |
3254 shrd ecx,ecx,7 | |
3255 mov esi,ebx | |
3256 xor edi,edx | |
3257 shld ebx,ebx,5 | |
3258 add eax,edi | |
3259 xor esi,edx | |
3260 add eax,ebx | |
3261 vpalignr xmm8,xmm2,xmm1,8 | |
3262 vpxor xmm3,xmm3,xmm7 | |
3263 add ebp,DWORD[48+rsp] | |
3264 xor esi,ecx | |
3265 mov edi,eax | |
3266 shld eax,eax,5 | |
3267 vpxor xmm3,xmm3,xmm4 | |
3268 add ebp,esi | |
3269 xor edi,ecx | |
3270 vpaddd xmm9,xmm11,xmm2 | |
3271 shrd ebx,ebx,7 | |
3272 add ebp,eax | |
3273 vpxor xmm3,xmm3,xmm8 | |
3274 add edx,DWORD[52+rsp] | |
3275 xor edi,ebx | |
3276 mov esi,ebp | |
3277 shld ebp,ebp,5 | |
3278 vpsrld xmm8,xmm3,30 | |
3279 vmovdqa XMMWORD[32+rsp],xmm9 | |
3280 add edx,edi | |
3281 xor esi,ebx | |
3282 shrd eax,eax,7 | |
3283 add edx,ebp | |
3284 vpslld xmm3,xmm3,2 | |
3285 add ecx,DWORD[56+rsp] | |
3286 xor esi,eax | |
3287 mov edi,edx | |
3288 shld edx,edx,5 | |
3289 add ecx,esi | |
3290 xor edi,eax | |
3291 shrd ebp,ebp,7 | |
3292 add ecx,edx | |
3293 vpor xmm3,xmm3,xmm8 | |
3294 add ebx,DWORD[60+rsp] | |
3295 xor edi,ebp | |
3296 mov esi,ecx | |
3297 shld ecx,ecx,5 | |
3298 add ebx,edi | |
3299 xor esi,ebp | |
3300 shrd edx,edx,7 | |
3301 add ebx,ecx | |
3302 add eax,DWORD[rsp] | |
3303 vpaddd xmm9,xmm11,xmm3 | |
3304 xor esi,edx | |
3305 mov edi,ebx | |
3306 shld ebx,ebx,5 | |
3307 add eax,esi | |
3308 vmovdqa XMMWORD[48+rsp],xmm9 | |
3309 xor edi,edx | |
3310 shrd ecx,ecx,7 | |
3311 add eax,ebx | |
3312 add ebp,DWORD[4+rsp] | |
3313 xor edi,ecx | |
3314 mov esi,eax | |
3315 shld eax,eax,5 | |
3316 add ebp,edi | |
3317 xor esi,ecx | |
3318 shrd ebx,ebx,7 | |
3319 add ebp,eax | |
3320 add edx,DWORD[8+rsp] | |
3321 xor esi,ebx | |
3322 mov edi,ebp | |
3323 shld ebp,ebp,5 | |
3324 add edx,esi | |
3325 xor edi,ebx | |
3326 shrd eax,eax,7 | |
3327 add edx,ebp | |
3328 add ecx,DWORD[12+rsp] | |
3329 xor edi,eax | |
3330 mov esi,edx | |
3331 shld edx,edx,5 | |
3332 add ecx,edi | |
3333 xor esi,eax | |
3334 shrd ebp,ebp,7 | |
3335 add ecx,edx | |
3336 cmp r9,r10 | |
3337 je NEAR $L$done_avx | |
3338 vmovdqa xmm6,XMMWORD[64+r11] | |
3339 vmovdqa xmm11,XMMWORD[((-64))+r11] | |
3340 vmovdqu xmm0,XMMWORD[r9] | |
3341 vmovdqu xmm1,XMMWORD[16+r9] | |
3342 vmovdqu xmm2,XMMWORD[32+r9] | |
3343 vmovdqu xmm3,XMMWORD[48+r9] | |
3344 vpshufb xmm0,xmm0,xmm6 | |
3345 add r9,64 | |
3346 add ebx,DWORD[16+rsp] | |
3347 xor esi,ebp | |
3348 vpshufb xmm1,xmm1,xmm6 | |
3349 mov edi,ecx | |
3350 shld ecx,ecx,5 | |
3351 vpaddd xmm4,xmm0,xmm11 | |
3352 add ebx,esi | |
3353 xor edi,ebp | |
3354 shrd edx,edx,7 | |
3355 add ebx,ecx | |
3356 vmovdqa XMMWORD[rsp],xmm4 | |
3357 add eax,DWORD[20+rsp] | |
3358 xor edi,edx | |
3359 mov esi,ebx | |
3360 shld ebx,ebx,5 | |
3361 add eax,edi | |
3362 xor esi,edx | |
3363 shrd ecx,ecx,7 | |
3364 add eax,ebx | |
3365 add ebp,DWORD[24+rsp] | |
3366 xor esi,ecx | |
3367 mov edi,eax | |
3368 shld eax,eax,5 | |
3369 add ebp,esi | |
3370 xor edi,ecx | |
3371 shrd ebx,ebx,7 | |
3372 add ebp,eax | |
3373 add edx,DWORD[28+rsp] | |
3374 xor edi,ebx | |
3375 mov esi,ebp | |
3376 shld ebp,ebp,5 | |
3377 add edx,edi | |
3378 xor esi,ebx | |
3379 shrd eax,eax,7 | |
3380 add edx,ebp | |
3381 add ecx,DWORD[32+rsp] | |
3382 xor esi,eax | |
3383 vpshufb xmm2,xmm2,xmm6 | |
3384 mov edi,edx | |
3385 shld edx,edx,5 | |
3386 vpaddd xmm5,xmm1,xmm11 | |
3387 add ecx,esi | |
3388 xor edi,eax | |
3389 shrd ebp,ebp,7 | |
3390 add ecx,edx | |
3391 vmovdqa XMMWORD[16+rsp],xmm5 | |
3392 add ebx,DWORD[36+rsp] | |
3393 xor edi,ebp | |
3394 mov esi,ecx | |
3395 shld ecx,ecx,5 | |
3396 add ebx,edi | |
3397 xor esi,ebp | |
3398 shrd edx,edx,7 | |
3399 add ebx,ecx | |
3400 add eax,DWORD[40+rsp] | |
3401 xor esi,edx | |
3402 mov edi,ebx | |
3403 shld ebx,ebx,5 | |
3404 add eax,esi | |
3405 xor edi,edx | |
3406 shrd ecx,ecx,7 | |
3407 add eax,ebx | |
3408 add ebp,DWORD[44+rsp] | |
3409 xor edi,ecx | |
3410 mov esi,eax | |
3411 shld eax,eax,5 | |
3412 add ebp,edi | |
3413 xor esi,ecx | |
3414 shrd ebx,ebx,7 | |
3415 add ebp,eax | |
3416 add edx,DWORD[48+rsp] | |
3417 xor esi,ebx | |
3418 vpshufb xmm3,xmm3,xmm6 | |
3419 mov edi,ebp | |
3420 shld ebp,ebp,5 | |
3421 vpaddd xmm6,xmm2,xmm11 | |
3422 add edx,esi | |
3423 xor edi,ebx | |
3424 shrd eax,eax,7 | |
3425 add edx,ebp | |
3426 vmovdqa XMMWORD[32+rsp],xmm6 | |
3427 add ecx,DWORD[52+rsp] | |
3428 xor edi,eax | |
3429 mov esi,edx | |
3430 shld edx,edx,5 | |
3431 add ecx,edi | |
3432 xor esi,eax | |
3433 shrd ebp,ebp,7 | |
3434 add ecx,edx | |
3435 add ebx,DWORD[56+rsp] | |
3436 xor esi,ebp | |
3437 mov edi,ecx | |
3438 shld ecx,ecx,5 | |
3439 add ebx,esi | |
3440 xor edi,ebp | |
3441 shrd edx,edx,7 | |
3442 add ebx,ecx | |
3443 add eax,DWORD[60+rsp] | |
3444 xor edi,edx | |
3445 mov esi,ebx | |
3446 shld ebx,ebx,5 | |
3447 add eax,edi | |
3448 shrd ecx,ecx,7 | |
3449 add eax,ebx | |
3450 add eax,DWORD[r8] | |
3451 add esi,DWORD[4+r8] | |
3452 add ecx,DWORD[8+r8] | |
3453 add edx,DWORD[12+r8] | |
3454 mov DWORD[r8],eax | |
3455 add ebp,DWORD[16+r8] | |
3456 mov DWORD[4+r8],esi | |
3457 mov ebx,esi | |
3458 mov DWORD[8+r8],ecx | |
3459 mov edi,ecx | |
3460 mov DWORD[12+r8],edx | |
3461 xor edi,edx | |
3462 mov DWORD[16+r8],ebp | |
3463 and esi,edi | |
3464 jmp NEAR $L$oop_avx | |
3465 | |
3466 ALIGN 16 | |
3467 $L$done_avx: | |
3468 add ebx,DWORD[16+rsp] | |
3469 xor esi,ebp | |
3470 mov edi,ecx | |
3471 shld ecx,ecx,5 | |
3472 add ebx,esi | |
3473 xor edi,ebp | |
3474 shrd edx,edx,7 | |
3475 add ebx,ecx | |
3476 add eax,DWORD[20+rsp] | |
3477 xor edi,edx | |
3478 mov esi,ebx | |
3479 shld ebx,ebx,5 | |
3480 add eax,edi | |
3481 xor esi,edx | |
3482 shrd ecx,ecx,7 | |
3483 add eax,ebx | |
3484 add ebp,DWORD[24+rsp] | |
3485 xor esi,ecx | |
3486 mov edi,eax | |
3487 shld eax,eax,5 | |
3488 add ebp,esi | |
3489 xor edi,ecx | |
3490 shrd ebx,ebx,7 | |
3491 add ebp,eax | |
3492 add edx,DWORD[28+rsp] | |
3493 xor edi,ebx | |
3494 mov esi,ebp | |
3495 shld ebp,ebp,5 | |
3496 add edx,edi | |
3497 xor esi,ebx | |
3498 shrd eax,eax,7 | |
3499 add edx,ebp | |
3500 add ecx,DWORD[32+rsp] | |
3501 xor esi,eax | |
3502 mov edi,edx | |
3503 shld edx,edx,5 | |
3504 add ecx,esi | |
3505 xor edi,eax | |
3506 shrd ebp,ebp,7 | |
3507 add ecx,edx | |
3508 add ebx,DWORD[36+rsp] | |
3509 xor edi,ebp | |
3510 mov esi,ecx | |
3511 shld ecx,ecx,5 | |
3512 add ebx,edi | |
3513 xor esi,ebp | |
3514 shrd edx,edx,7 | |
3515 add ebx,ecx | |
3516 add eax,DWORD[40+rsp] | |
3517 xor esi,edx | |
3518 mov edi,ebx | |
3519 shld ebx,ebx,5 | |
3520 add eax,esi | |
3521 xor edi,edx | |
3522 shrd ecx,ecx,7 | |
3523 add eax,ebx | |
3524 add ebp,DWORD[44+rsp] | |
3525 xor edi,ecx | |
3526 mov esi,eax | |
3527 shld eax,eax,5 | |
3528 add ebp,edi | |
3529 xor esi,ecx | |
3530 shrd ebx,ebx,7 | |
3531 add ebp,eax | |
3532 add edx,DWORD[48+rsp] | |
3533 xor esi,ebx | |
3534 mov edi,ebp | |
3535 shld ebp,ebp,5 | |
3536 add edx,esi | |
3537 xor edi,ebx | |
3538 shrd eax,eax,7 | |
3539 add edx,ebp | |
3540 add ecx,DWORD[52+rsp] | |
3541 xor edi,eax | |
3542 mov esi,edx | |
3543 shld edx,edx,5 | |
3544 add ecx,edi | |
3545 xor esi,eax | |
3546 shrd ebp,ebp,7 | |
3547 add ecx,edx | |
3548 add ebx,DWORD[56+rsp] | |
3549 xor esi,ebp | |
3550 mov edi,ecx | |
3551 shld ecx,ecx,5 | |
3552 add ebx,esi | |
3553 xor edi,ebp | |
3554 shrd edx,edx,7 | |
3555 add ebx,ecx | |
3556 add eax,DWORD[60+rsp] | |
3557 xor edi,edx | |
3558 mov esi,ebx | |
3559 shld ebx,ebx,5 | |
3560 add eax,edi | |
3561 shrd ecx,ecx,7 | |
3562 add eax,ebx | |
3563 vzeroupper | |
3564 | |
3565 add eax,DWORD[r8] | |
3566 add esi,DWORD[4+r8] | |
3567 add ecx,DWORD[8+r8] | |
3568 mov DWORD[r8],eax | |
3569 add edx,DWORD[12+r8] | |
3570 mov DWORD[4+r8],esi | |
3571 add ebp,DWORD[16+r8] | |
3572 mov DWORD[8+r8],ecx | |
3573 mov DWORD[12+r8],edx | |
3574 mov DWORD[16+r8],ebp | |
3575 movaps xmm6,XMMWORD[((-40-96))+r14] | |
3576 movaps xmm7,XMMWORD[((-40-80))+r14] | |
3577 movaps xmm8,XMMWORD[((-40-64))+r14] | |
3578 movaps xmm9,XMMWORD[((-40-48))+r14] | |
3579 movaps xmm10,XMMWORD[((-40-32))+r14] | |
3580 movaps xmm11,XMMWORD[((-40-16))+r14] | |
3581 lea rsi,[r14] | |
3582 mov r14,QWORD[((-40))+rsi] | |
3583 mov r13,QWORD[((-32))+rsi] | |
3584 mov r12,QWORD[((-24))+rsi] | |
3585 mov rbp,QWORD[((-16))+rsi] | |
3586 mov rbx,QWORD[((-8))+rsi] | |
3587 lea rsp,[rsi] | |
3588 $L$epilogue_avx: | |
3589 mov rdi,QWORD[8+rsp] ;WIN64 epilogue | |
3590 mov rsi,QWORD[16+rsp] | |
3591 DB 0F3h,0C3h ;repret | |
3592 $L$SEH_end_sha1_block_data_order_avx: | |
3593 ALIGN 64 | |
3594 K_XX_XX: | |
3595 DD 0x5a827999,0x5a827999,0x5a827999,0x5a827999 | |
3596 DD 0x5a827999,0x5a827999,0x5a827999,0x5a827999 | |
3597 DD 0x6ed9eba1,0x6ed9eba1,0x6ed9eba1,0x6ed9eba1 | |
3598 DD 0x6ed9eba1,0x6ed9eba1,0x6ed9eba1,0x6ed9eba1 | |
3599 DD 0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc | |
3600 DD 0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc | |
3601 DD 0xca62c1d6,0xca62c1d6,0xca62c1d6,0xca62c1d6 | |
3602 DD 0xca62c1d6,0xca62c1d6,0xca62c1d6,0xca62c1d6 | |
3603 DD 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f | |
3604 DD 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f | |
3605 DB 0xf,0xe,0xd,0xc,0xb,0xa,0x9,0x8,0x7,0x6,0x5,0x4,0x3,0x2,0x1,0x0 | |
3606 DB 83,72,65,49,32,98,108,111,99,107,32,116,114,97,110,115 | |
3607 DB 102,111,114,109,32,102,111,114,32,120,56,54,95,54,52,44 | |
3608 DB 32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60 | |
3609 DB 97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114 | |
3610 DB 103,62,0 | |
3611 ALIGN 64 | |
3612 EXTERN __imp_RtlVirtualUnwind | |
3613 | |
3614 ALIGN 16 | |
3615 se_handler: | |
3616 push rsi | |
3617 push rdi | |
3618 push rbx | |
3619 push rbp | |
3620 push r12 | |
3621 push r13 | |
3622 push r14 | |
3623 push r15 | |
3624 pushfq | |
3625 sub rsp,64 | |
3626 | |
3627 mov rax,QWORD[120+r8] | |
3628 mov rbx,QWORD[248+r8] | |
3629 | |
3630 lea r10,[$L$prologue] | |
3631 cmp rbx,r10 | |
3632 jb NEAR $L$common_seh_tail | |
3633 | |
3634 mov rax,QWORD[152+r8] | |
3635 | |
3636 lea r10,[$L$epilogue] | |
3637 cmp rbx,r10 | |
3638 jae NEAR $L$common_seh_tail | |
3639 | |
3640 mov rax,QWORD[64+rax] | |
3641 | |
3642 mov rbx,QWORD[((-8))+rax] | |
3643 mov rbp,QWORD[((-16))+rax] | |
3644 mov r12,QWORD[((-24))+rax] | |
3645 mov r13,QWORD[((-32))+rax] | |
3646 mov r14,QWORD[((-40))+rax] | |
3647 mov QWORD[144+r8],rbx | |
3648 mov QWORD[160+r8],rbp | |
3649 mov QWORD[216+r8],r12 | |
3650 mov QWORD[224+r8],r13 | |
3651 mov QWORD[232+r8],r14 | |
3652 | |
3653 jmp NEAR $L$common_seh_tail | |
3654 | |
3655 | |
3656 ALIGN 16 | |
3657 ssse3_handler: | |
3658 push rsi | |
3659 push rdi | |
3660 push rbx | |
3661 push rbp | |
3662 push r12 | |
3663 push r13 | |
3664 push r14 | |
3665 push r15 | |
3666 pushfq | |
3667 sub rsp,64 | |
3668 | |
3669 mov rax,QWORD[120+r8] | |
3670 mov rbx,QWORD[248+r8] | |
3671 | |
3672 mov rsi,QWORD[8+r9] | |
3673 mov r11,QWORD[56+r9] | |
3674 | |
3675 mov r10d,DWORD[r11] | |
3676 lea r10,[r10*1+rsi] | |
3677 cmp rbx,r10 | |
3678 jb NEAR $L$common_seh_tail | |
3679 | |
3680 mov rax,QWORD[152+r8] | |
3681 | |
3682 mov r10d,DWORD[4+r11] | |
3683 lea r10,[r10*1+rsi] | |
3684 cmp rbx,r10 | |
3685 jae NEAR $L$common_seh_tail | |
3686 | |
3687 mov rax,QWORD[232+r8] | |
3688 | |
3689 lea rsi,[((-40-96))+rax] | |
3690 lea rdi,[512+r8] | |
3691 mov ecx,12 | |
3692 DD 0xa548f3fc | |
3693 | |
3694 mov rbx,QWORD[((-8))+rax] | |
3695 mov rbp,QWORD[((-16))+rax] | |
3696 mov r12,QWORD[((-24))+rax] | |
3697 mov r13,QWORD[((-32))+rax] | |
3698 mov r14,QWORD[((-40))+rax] | |
3699 mov QWORD[144+r8],rbx | |
3700 mov QWORD[160+r8],rbp | |
3701 mov QWORD[216+r8],r12 | |
3702 mov QWORD[224+r8],r13 | |
3703 mov QWORD[232+r8],r14 | |
3704 | |
3705 $L$common_seh_tail: | |
3706 mov rdi,QWORD[8+rax] | |
3707 mov rsi,QWORD[16+rax] | |
3708 mov QWORD[152+r8],rax | |
3709 mov QWORD[168+r8],rsi | |
3710 mov QWORD[176+r8],rdi | |
3711 | |
3712 mov rdi,QWORD[40+r9] | |
3713 mov rsi,r8 | |
3714 mov ecx,154 | |
3715 DD 0xa548f3fc | |
3716 | |
3717 mov rsi,r9 | |
3718 xor rcx,rcx | |
3719 mov rdx,QWORD[8+rsi] | |
3720 mov r8,QWORD[rsi] | |
3721 mov r9,QWORD[16+rsi] | |
3722 mov r10,QWORD[40+rsi] | |
3723 lea r11,[56+rsi] | |
3724 lea r12,[24+rsi] | |
3725 mov QWORD[32+rsp],r10 | |
3726 mov QWORD[40+rsp],r11 | |
3727 mov QWORD[48+rsp],r12 | |
3728 mov QWORD[56+rsp],rcx | |
3729 call QWORD[__imp_RtlVirtualUnwind] | |
3730 | |
3731 mov eax,1 | |
3732 add rsp,64 | |
3733 popfq | |
3734 pop r15 | |
3735 pop r14 | |
3736 pop r13 | |
3737 pop r12 | |
3738 pop rbp | |
3739 pop rbx | |
3740 pop rdi | |
3741 pop rsi | |
3742 DB 0F3h,0C3h ;repret | |
3743 | |
3744 | |
3745 section .pdata rdata align=4 | |
3746 ALIGN 4 | |
3747 DD $L$SEH_begin_sha1_block_data_order wrt ..imagebase | |
3748 DD $L$SEH_end_sha1_block_data_order wrt ..imagebase | |
3749 DD $L$SEH_info_sha1_block_data_order wrt ..imagebase | |
3750 DD $L$SEH_begin_sha1_block_data_order_ssse3 wrt ..imagebase | |
3751 DD $L$SEH_end_sha1_block_data_order_ssse3 wrt ..imagebase | |
3752 DD $L$SEH_info_sha1_block_data_order_ssse3 wrt ..imagebase | |
3753 DD $L$SEH_begin_sha1_block_data_order_avx wrt ..imagebase | |
3754 DD $L$SEH_end_sha1_block_data_order_avx wrt ..imagebase | |
3755 DD $L$SEH_info_sha1_block_data_order_avx wrt ..imagebase | |
3756 section .xdata rdata align=8 | |
3757 ALIGN 8 | |
3758 $L$SEH_info_sha1_block_data_order: | |
3759 DB 9,0,0,0 | |
3760 DD se_handler wrt ..imagebase | |
3761 $L$SEH_info_sha1_block_data_order_ssse3: | |
3762 DB 9,0,0,0 | |
3763 DD ssse3_handler wrt ..imagebase | |
3764 DD $L$prologue_ssse3 wrt ..imagebase,$L$epilogue_ssse3 wrt ..imageb
ase | |
3765 $L$SEH_info_sha1_block_data_order_avx: | |
3766 DB 9,0,0,0 | |
3767 DD ssse3_handler wrt ..imagebase | |
3768 DD $L$prologue_avx wrt ..imagebase,$L$epilogue_avx wrt ..imagebase | |
OLD | NEW |