OLD | NEW |
1 %ifidn __OUTPUT_FORMAT__,obj | 1 %ifidn __OUTPUT_FORMAT__,obj |
2 section code use32 class=code align=64 | 2 section code use32 class=code align=64 |
3 %elifidn __OUTPUT_FORMAT__,win32 | 3 %elifidn __OUTPUT_FORMAT__,win32 |
4 %ifdef __YASM_VERSION_ID__ | 4 %ifdef __YASM_VERSION_ID__ |
5 %if __YASM_VERSION_ID__ < 01010000h | 5 %if __YASM_VERSION_ID__ < 01010000h |
6 %error yasm version 1.1.0 or later needed. | 6 %error yasm version 1.1.0 or later needed. |
7 %endif | 7 %endif |
8 ; Yasm automatically includes .00 and complains about redefining it. | 8 ; Yasm automatically includes .00 and complains about redefining it. |
9 ; https://www.tortall.net/projects/yasm/manual/html/objfmt-win32-safeseh.html | 9 ; https://www.tortall.net/projects/yasm/manual/html/objfmt-win32-safeseh.html |
10 %else | 10 %else |
(...skipping 17 matching lines...) Expand all Loading... |
28 pop ebp | 28 pop ebp |
29 lea esi,[_OPENSSL_ia32cap_P] | 29 lea esi,[_OPENSSL_ia32cap_P] |
30 lea ebp,[(L$K_XX_XX-L$000pic_point)+ebp] | 30 lea ebp,[(L$K_XX_XX-L$000pic_point)+ebp] |
31 mov eax,DWORD [esi] | 31 mov eax,DWORD [esi] |
32 mov edx,DWORD [4+esi] | 32 mov edx,DWORD [4+esi] |
33 test edx,512 | 33 test edx,512 |
34 jz NEAR L$001x86 | 34 jz NEAR L$001x86 |
35 mov ecx,DWORD [8+esi] | 35 mov ecx,DWORD [8+esi] |
36 test eax,16777216 | 36 test eax,16777216 |
37 jz NEAR L$001x86 | 37 jz NEAR L$001x86 |
38 » and» edx,268435456 | 38 » test» ecx,536870912 |
39 » and» eax,1073741824 | 39 » jnz» NEAR L$shaext_shortcut |
40 » or» eax,edx | |
41 » cmp» eax,1342177280 | |
42 » je» NEAR L$avx_shortcut | |
43 jmp NEAR L$ssse3_shortcut | 40 jmp NEAR L$ssse3_shortcut |
44 align 16 | 41 align 16 |
45 L$001x86: | 42 L$001x86: |
46 mov ebp,DWORD [20+esp] | 43 mov ebp,DWORD [20+esp] |
47 mov esi,DWORD [24+esp] | 44 mov esi,DWORD [24+esp] |
48 mov eax,DWORD [28+esp] | 45 mov eax,DWORD [28+esp] |
49 sub esp,76 | 46 sub esp,76 |
50 shl eax,6 | 47 shl eax,6 |
51 add eax,esi | 48 add eax,esi |
52 mov DWORD [104+esp],eax | 49 mov DWORD [104+esp],eax |
(...skipping 1348 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1401 mov esi,edx | 1398 mov esi,edx |
1402 mov DWORD [16+ebp],ecx | 1399 mov DWORD [16+ebp],ecx |
1403 jb NEAR L$002loop | 1400 jb NEAR L$002loop |
1404 add esp,76 | 1401 add esp,76 |
1405 pop edi | 1402 pop edi |
1406 pop esi | 1403 pop esi |
1407 pop ebx | 1404 pop ebx |
1408 pop ebp | 1405 pop ebp |
1409 ret | 1406 ret |
1410 align 16 | 1407 align 16 |
1411 __sha1_block_data_order_ssse3: | 1408 __sha1_block_data_order_shaext: |
1412 push ebp | 1409 push ebp |
1413 push ebx | 1410 push ebx |
1414 push esi | 1411 push esi |
1415 push edi | 1412 push edi |
1416 call L$003pic_point | 1413 call L$003pic_point |
1417 L$003pic_point: | 1414 L$003pic_point: |
1418 pop ebp | 1415 pop ebp |
1419 lea ebp,[(L$K_XX_XX-L$003pic_point)+ebp] | 1416 lea ebp,[(L$K_XX_XX-L$003pic_point)+ebp] |
| 1417 L$shaext_shortcut: |
| 1418 mov edi,DWORD [20+esp] |
| 1419 mov ebx,esp |
| 1420 mov esi,DWORD [24+esp] |
| 1421 mov ecx,DWORD [28+esp] |
| 1422 sub esp,32 |
| 1423 movdqu xmm0,[edi] |
| 1424 movd xmm1,DWORD [16+edi] |
| 1425 and esp,-32 |
| 1426 movdqa xmm3,[80+ebp] |
| 1427 movdqu xmm4,[esi] |
| 1428 pshufd xmm0,xmm0,27 |
| 1429 movdqu xmm5,[16+esi] |
| 1430 pshufd xmm1,xmm1,27 |
| 1431 movdqu xmm6,[32+esi] |
| 1432 db 102,15,56,0,227 |
| 1433 movdqu xmm7,[48+esi] |
| 1434 db 102,15,56,0,235 |
| 1435 db 102,15,56,0,243 |
| 1436 db 102,15,56,0,251 |
| 1437 jmp NEAR L$004loop_shaext |
| 1438 align 16 |
| 1439 L$004loop_shaext: |
| 1440 dec ecx |
| 1441 lea eax,[64+esi] |
| 1442 movdqa [esp],xmm1 |
| 1443 paddd xmm1,xmm4 |
| 1444 cmovne esi,eax |
| 1445 movdqa [16+esp],xmm0 |
| 1446 db 15,56,201,229 |
| 1447 movdqa xmm2,xmm0 |
| 1448 db 15,58,204,193,0 |
| 1449 db 15,56,200,213 |
| 1450 pxor xmm4,xmm6 |
| 1451 db 15,56,201,238 |
| 1452 db 15,56,202,231 |
| 1453 movdqa xmm1,xmm0 |
| 1454 db 15,58,204,194,0 |
| 1455 db 15,56,200,206 |
| 1456 pxor xmm5,xmm7 |
| 1457 db 15,56,202,236 |
| 1458 db 15,56,201,247 |
| 1459 movdqa xmm2,xmm0 |
| 1460 db 15,58,204,193,0 |
| 1461 db 15,56,200,215 |
| 1462 pxor xmm6,xmm4 |
| 1463 db 15,56,201,252 |
| 1464 db 15,56,202,245 |
| 1465 movdqa xmm1,xmm0 |
| 1466 db 15,58,204,194,0 |
| 1467 db 15,56,200,204 |
| 1468 pxor xmm7,xmm5 |
| 1469 db 15,56,202,254 |
| 1470 db 15,56,201,229 |
| 1471 movdqa xmm2,xmm0 |
| 1472 db 15,58,204,193,0 |
| 1473 db 15,56,200,213 |
| 1474 pxor xmm4,xmm6 |
| 1475 db 15,56,201,238 |
| 1476 db 15,56,202,231 |
| 1477 movdqa xmm1,xmm0 |
| 1478 db 15,58,204,194,1 |
| 1479 db 15,56,200,206 |
| 1480 pxor xmm5,xmm7 |
| 1481 db 15,56,202,236 |
| 1482 db 15,56,201,247 |
| 1483 movdqa xmm2,xmm0 |
| 1484 db 15,58,204,193,1 |
| 1485 db 15,56,200,215 |
| 1486 pxor xmm6,xmm4 |
| 1487 db 15,56,201,252 |
| 1488 db 15,56,202,245 |
| 1489 movdqa xmm1,xmm0 |
| 1490 db 15,58,204,194,1 |
| 1491 db 15,56,200,204 |
| 1492 pxor xmm7,xmm5 |
| 1493 db 15,56,202,254 |
| 1494 db 15,56,201,229 |
| 1495 movdqa xmm2,xmm0 |
| 1496 db 15,58,204,193,1 |
| 1497 db 15,56,200,213 |
| 1498 pxor xmm4,xmm6 |
| 1499 db 15,56,201,238 |
| 1500 db 15,56,202,231 |
| 1501 movdqa xmm1,xmm0 |
| 1502 db 15,58,204,194,1 |
| 1503 db 15,56,200,206 |
| 1504 pxor xmm5,xmm7 |
| 1505 db 15,56,202,236 |
| 1506 db 15,56,201,247 |
| 1507 movdqa xmm2,xmm0 |
| 1508 db 15,58,204,193,2 |
| 1509 db 15,56,200,215 |
| 1510 pxor xmm6,xmm4 |
| 1511 db 15,56,201,252 |
| 1512 db 15,56,202,245 |
| 1513 movdqa xmm1,xmm0 |
| 1514 db 15,58,204,194,2 |
| 1515 db 15,56,200,204 |
| 1516 pxor xmm7,xmm5 |
| 1517 db 15,56,202,254 |
| 1518 db 15,56,201,229 |
| 1519 movdqa xmm2,xmm0 |
| 1520 db 15,58,204,193,2 |
| 1521 db 15,56,200,213 |
| 1522 pxor xmm4,xmm6 |
| 1523 db 15,56,201,238 |
| 1524 db 15,56,202,231 |
| 1525 movdqa xmm1,xmm0 |
| 1526 db 15,58,204,194,2 |
| 1527 db 15,56,200,206 |
| 1528 pxor xmm5,xmm7 |
| 1529 db 15,56,202,236 |
| 1530 db 15,56,201,247 |
| 1531 movdqa xmm2,xmm0 |
| 1532 db 15,58,204,193,2 |
| 1533 db 15,56,200,215 |
| 1534 pxor xmm6,xmm4 |
| 1535 db 15,56,201,252 |
| 1536 db 15,56,202,245 |
| 1537 movdqa xmm1,xmm0 |
| 1538 db 15,58,204,194,3 |
| 1539 db 15,56,200,204 |
| 1540 pxor xmm7,xmm5 |
| 1541 db 15,56,202,254 |
| 1542 movdqu xmm4,[esi] |
| 1543 movdqa xmm2,xmm0 |
| 1544 db 15,58,204,193,3 |
| 1545 db 15,56,200,213 |
| 1546 movdqu xmm5,[16+esi] |
| 1547 db 102,15,56,0,227 |
| 1548 movdqa xmm1,xmm0 |
| 1549 db 15,58,204,194,3 |
| 1550 db 15,56,200,206 |
| 1551 movdqu xmm6,[32+esi] |
| 1552 db 102,15,56,0,235 |
| 1553 movdqa xmm2,xmm0 |
| 1554 db 15,58,204,193,3 |
| 1555 db 15,56,200,215 |
| 1556 movdqu xmm7,[48+esi] |
| 1557 db 102,15,56,0,243 |
| 1558 movdqa xmm1,xmm0 |
| 1559 db 15,58,204,194,3 |
| 1560 movdqa xmm2,[esp] |
| 1561 db 102,15,56,0,251 |
| 1562 db 15,56,200,202 |
| 1563 paddd xmm0,[16+esp] |
| 1564 jnz NEAR L$004loop_shaext |
| 1565 pshufd xmm0,xmm0,27 |
| 1566 pshufd xmm1,xmm1,27 |
| 1567 movdqu [edi],xmm0 |
| 1568 movd DWORD [16+edi],xmm1 |
| 1569 mov esp,ebx |
| 1570 pop edi |
| 1571 pop esi |
| 1572 pop ebx |
| 1573 pop ebp |
| 1574 ret |
| 1575 align 16 |
| 1576 __sha1_block_data_order_ssse3: |
| 1577 push ebp |
| 1578 push ebx |
| 1579 push esi |
| 1580 push edi |
| 1581 call L$005pic_point |
| 1582 L$005pic_point: |
| 1583 pop ebp |
| 1584 lea ebp,[(L$K_XX_XX-L$005pic_point)+ebp] |
1420 L$ssse3_shortcut: | 1585 L$ssse3_shortcut: |
1421 movdqa xmm7,[ebp] | 1586 movdqa xmm7,[ebp] |
1422 movdqa xmm0,[16+ebp] | 1587 movdqa xmm0,[16+ebp] |
1423 movdqa xmm1,[32+ebp] | 1588 movdqa xmm1,[32+ebp] |
1424 movdqa xmm2,[48+ebp] | 1589 movdqa xmm2,[48+ebp] |
1425 movdqa xmm6,[64+ebp] | 1590 movdqa xmm6,[64+ebp] |
1426 mov edi,DWORD [20+esp] | 1591 mov edi,DWORD [20+esp] |
1427 mov ebp,DWORD [24+esp] | 1592 mov ebp,DWORD [24+esp] |
1428 mov edx,DWORD [28+esp] | 1593 mov edx,DWORD [28+esp] |
1429 mov esi,esp | 1594 mov esi,esp |
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1462 movdqa [esp],xmm0 | 1627 movdqa [esp],xmm0 |
1463 psubd xmm0,xmm7 | 1628 psubd xmm0,xmm7 |
1464 movdqa [16+esp],xmm1 | 1629 movdqa [16+esp],xmm1 |
1465 psubd xmm1,xmm7 | 1630 psubd xmm1,xmm7 |
1466 movdqa [32+esp],xmm2 | 1631 movdqa [32+esp],xmm2 |
1467 mov ebp,ecx | 1632 mov ebp,ecx |
1468 psubd xmm2,xmm7 | 1633 psubd xmm2,xmm7 |
1469 xor ebp,edx | 1634 xor ebp,edx |
1470 pshufd xmm4,xmm0,238 | 1635 pshufd xmm4,xmm0,238 |
1471 and esi,ebp | 1636 and esi,ebp |
1472 » jmp» NEAR L$004loop | 1637 » jmp» NEAR L$006loop |
1473 align 16 | 1638 align 16 |
1474 L$004loop: | 1639 L$006loop: |
1475 ror ebx,2 | 1640 ror ebx,2 |
1476 xor esi,edx | 1641 xor esi,edx |
1477 mov ebp,eax | 1642 mov ebp,eax |
1478 punpcklqdq xmm4,xmm1 | 1643 punpcklqdq xmm4,xmm1 |
1479 movdqa xmm6,xmm3 | 1644 movdqa xmm6,xmm3 |
1480 add edi,DWORD [esp] | 1645 add edi,DWORD [esp] |
1481 xor ebx,ecx | 1646 xor ebx,ecx |
1482 paddd xmm7,xmm3 | 1647 paddd xmm7,xmm3 |
1483 movdqa [64+esp],xmm0 | 1648 movdqa [64+esp],xmm0 |
1484 rol eax,5 | 1649 rol eax,5 |
(...skipping 882 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2367 add ecx,DWORD [12+esp] | 2532 add ecx,DWORD [12+esp] |
2368 xor ebp,eax | 2533 xor ebp,eax |
2369 mov esi,edx | 2534 mov esi,edx |
2370 rol edx,5 | 2535 rol edx,5 |
2371 add ecx,ebp | 2536 add ecx,ebp |
2372 xor esi,eax | 2537 xor esi,eax |
2373 ror edi,7 | 2538 ror edi,7 |
2374 add ecx,edx | 2539 add ecx,edx |
2375 mov ebp,DWORD [196+esp] | 2540 mov ebp,DWORD [196+esp] |
2376 cmp ebp,DWORD [200+esp] | 2541 cmp ebp,DWORD [200+esp] |
2377 » je» NEAR L$005done | 2542 » je» NEAR L$007done |
2378 movdqa xmm7,[160+esp] | 2543 movdqa xmm7,[160+esp] |
2379 movdqa xmm6,[176+esp] | 2544 movdqa xmm6,[176+esp] |
2380 movdqu xmm0,[ebp] | 2545 movdqu xmm0,[ebp] |
2381 movdqu xmm1,[16+ebp] | 2546 movdqu xmm1,[16+ebp] |
2382 movdqu xmm2,[32+ebp] | 2547 movdqu xmm2,[32+ebp] |
2383 movdqu xmm3,[48+ebp] | 2548 movdqu xmm3,[48+ebp] |
2384 add ebp,64 | 2549 add ebp,64 |
2385 db 102,15,56,0,198 | 2550 db 102,15,56,0,198 |
2386 mov DWORD [196+esp],ebp | 2551 mov DWORD [196+esp],ebp |
2387 movdqa [96+esp],xmm7 | 2552 movdqa [96+esp],xmm7 |
(...skipping 114 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2502 add edi,DWORD [16+ebp] | 2667 add edi,DWORD [16+ebp] |
2503 mov DWORD [8+ebp],ecx | 2668 mov DWORD [8+ebp],ecx |
2504 mov ebx,ecx | 2669 mov ebx,ecx |
2505 mov DWORD [12+ebp],edx | 2670 mov DWORD [12+ebp],edx |
2506 xor ebx,edx | 2671 xor ebx,edx |
2507 mov DWORD [16+ebp],edi | 2672 mov DWORD [16+ebp],edi |
2508 mov ebp,esi | 2673 mov ebp,esi |
2509 pshufd xmm4,xmm0,238 | 2674 pshufd xmm4,xmm0,238 |
2510 and esi,ebx | 2675 and esi,ebx |
2511 mov ebx,ebp | 2676 mov ebx,ebp |
2512 » jmp» NEAR L$004loop | 2677 » jmp» NEAR L$006loop |
2513 align 16 | 2678 align 16 |
2514 L$005done: | 2679 L$007done: |
2515 add ebx,DWORD [16+esp] | 2680 add ebx,DWORD [16+esp] |
2516 xor esi,edi | 2681 xor esi,edi |
2517 mov ebp,ecx | 2682 mov ebp,ecx |
2518 rol ecx,5 | 2683 rol ecx,5 |
2519 add ebx,esi | 2684 add ebx,esi |
2520 xor ebp,edi | 2685 xor ebp,edi |
2521 ror edx,7 | 2686 ror edx,7 |
2522 add ebx,ecx | 2687 add ebx,ecx |
2523 add eax,DWORD [20+esp] | 2688 add eax,DWORD [20+esp] |
2524 xor ebp,edx | 2689 xor ebp,edx |
(...skipping 92 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2617 mov DWORD [4+ebp],esi | 2782 mov DWORD [4+ebp],esi |
2618 add edi,DWORD [16+ebp] | 2783 add edi,DWORD [16+ebp] |
2619 mov DWORD [8+ebp],ecx | 2784 mov DWORD [8+ebp],ecx |
2620 mov DWORD [12+ebp],edx | 2785 mov DWORD [12+ebp],edx |
2621 mov DWORD [16+ebp],edi | 2786 mov DWORD [16+ebp],edi |
2622 pop edi | 2787 pop edi |
2623 pop esi | 2788 pop esi |
2624 pop ebx | 2789 pop ebx |
2625 pop ebp | 2790 pop ebp |
2626 ret | 2791 ret |
2627 align 16 | |
2628 __sha1_block_data_order_avx: | |
2629 push ebp | |
2630 push ebx | |
2631 push esi | |
2632 push edi | |
2633 call L$006pic_point | |
2634 L$006pic_point: | |
2635 pop ebp | |
2636 lea ebp,[(L$K_XX_XX-L$006pic_point)+ebp] | |
2637 L$avx_shortcut: | |
2638 vzeroall | |
2639 vmovdqa xmm7,[ebp] | |
2640 vmovdqa xmm0,[16+ebp] | |
2641 vmovdqa xmm1,[32+ebp] | |
2642 vmovdqa xmm2,[48+ebp] | |
2643 vmovdqa xmm6,[64+ebp] | |
2644 mov edi,DWORD [20+esp] | |
2645 mov ebp,DWORD [24+esp] | |
2646 mov edx,DWORD [28+esp] | |
2647 mov esi,esp | |
2648 sub esp,208 | |
2649 and esp,-64 | |
2650 vmovdqa [112+esp],xmm0 | |
2651 vmovdqa [128+esp],xmm1 | |
2652 vmovdqa [144+esp],xmm2 | |
2653 shl edx,6 | |
2654 vmovdqa [160+esp],xmm7 | |
2655 add edx,ebp | |
2656 vmovdqa [176+esp],xmm6 | |
2657 add ebp,64 | |
2658 mov DWORD [192+esp],edi | |
2659 mov DWORD [196+esp],ebp | |
2660 mov DWORD [200+esp],edx | |
2661 mov DWORD [204+esp],esi | |
2662 mov eax,DWORD [edi] | |
2663 mov ebx,DWORD [4+edi] | |
2664 mov ecx,DWORD [8+edi] | |
2665 mov edx,DWORD [12+edi] | |
2666 mov edi,DWORD [16+edi] | |
2667 mov esi,ebx | |
2668 vmovdqu xmm0,[ebp-64] | |
2669 vmovdqu xmm1,[ebp-48] | |
2670 vmovdqu xmm2,[ebp-32] | |
2671 vmovdqu xmm3,[ebp-16] | |
2672 vpshufb xmm0,xmm0,xmm6 | |
2673 vpshufb xmm1,xmm1,xmm6 | |
2674 vpshufb xmm2,xmm2,xmm6 | |
2675 vmovdqa [96+esp],xmm7 | |
2676 vpshufb xmm3,xmm3,xmm6 | |
2677 vpaddd xmm4,xmm0,xmm7 | |
2678 vpaddd xmm5,xmm1,xmm7 | |
2679 vpaddd xmm6,xmm2,xmm7 | |
2680 vmovdqa [esp],xmm4 | |
2681 mov ebp,ecx | |
2682 vmovdqa [16+esp],xmm5 | |
2683 xor ebp,edx | |
2684 vmovdqa [32+esp],xmm6 | |
2685 and esi,ebp | |
2686 jmp NEAR L$007loop | |
2687 align 16 | |
2688 L$007loop: | |
2689 shrd ebx,ebx,2 | |
2690 xor esi,edx | |
2691 vpalignr xmm4,xmm1,xmm0,8 | |
2692 mov ebp,eax | |
2693 add edi,DWORD [esp] | |
2694 vpaddd xmm7,xmm7,xmm3 | |
2695 vmovdqa [64+esp],xmm0 | |
2696 xor ebx,ecx | |
2697 shld eax,eax,5 | |
2698 vpsrldq xmm6,xmm3,4 | |
2699 add edi,esi | |
2700 and ebp,ebx | |
2701 vpxor xmm4,xmm4,xmm0 | |
2702 xor ebx,ecx | |
2703 add edi,eax | |
2704 vpxor xmm6,xmm6,xmm2 | |
2705 shrd eax,eax,7 | |
2706 xor ebp,ecx | |
2707 vmovdqa [48+esp],xmm7 | |
2708 mov esi,edi | |
2709 add edx,DWORD [4+esp] | |
2710 vpxor xmm4,xmm4,xmm6 | |
2711 xor eax,ebx | |
2712 shld edi,edi,5 | |
2713 add edx,ebp | |
2714 and esi,eax | |
2715 vpsrld xmm6,xmm4,31 | |
2716 xor eax,ebx | |
2717 add edx,edi | |
2718 shrd edi,edi,7 | |
2719 xor esi,ebx | |
2720 vpslldq xmm0,xmm4,12 | |
2721 vpaddd xmm4,xmm4,xmm4 | |
2722 mov ebp,edx | |
2723 add ecx,DWORD [8+esp] | |
2724 xor edi,eax | |
2725 shld edx,edx,5 | |
2726 vpsrld xmm7,xmm0,30 | |
2727 vpor xmm4,xmm4,xmm6 | |
2728 add ecx,esi | |
2729 and ebp,edi | |
2730 xor edi,eax | |
2731 add ecx,edx | |
2732 vpslld xmm0,xmm0,2 | |
2733 shrd edx,edx,7 | |
2734 xor ebp,eax | |
2735 vpxor xmm4,xmm4,xmm7 | |
2736 mov esi,ecx | |
2737 add ebx,DWORD [12+esp] | |
2738 xor edx,edi | |
2739 shld ecx,ecx,5 | |
2740 vpxor xmm4,xmm4,xmm0 | |
2741 add ebx,ebp | |
2742 and esi,edx | |
2743 vmovdqa xmm0,[96+esp] | |
2744 xor edx,edi | |
2745 add ebx,ecx | |
2746 shrd ecx,ecx,7 | |
2747 xor esi,edi | |
2748 vpalignr xmm5,xmm2,xmm1,8 | |
2749 mov ebp,ebx | |
2750 add eax,DWORD [16+esp] | |
2751 vpaddd xmm0,xmm0,xmm4 | |
2752 vmovdqa [80+esp],xmm1 | |
2753 xor ecx,edx | |
2754 shld ebx,ebx,5 | |
2755 vpsrldq xmm7,xmm4,4 | |
2756 add eax,esi | |
2757 and ebp,ecx | |
2758 vpxor xmm5,xmm5,xmm1 | |
2759 xor ecx,edx | |
2760 add eax,ebx | |
2761 vpxor xmm7,xmm7,xmm3 | |
2762 shrd ebx,ebx,7 | |
2763 xor ebp,edx | |
2764 vmovdqa [esp],xmm0 | |
2765 mov esi,eax | |
2766 add edi,DWORD [20+esp] | |
2767 vpxor xmm5,xmm5,xmm7 | |
2768 xor ebx,ecx | |
2769 shld eax,eax,5 | |
2770 add edi,ebp | |
2771 and esi,ebx | |
2772 vpsrld xmm7,xmm5,31 | |
2773 xor ebx,ecx | |
2774 add edi,eax | |
2775 shrd eax,eax,7 | |
2776 xor esi,ecx | |
2777 vpslldq xmm1,xmm5,12 | |
2778 vpaddd xmm5,xmm5,xmm5 | |
2779 mov ebp,edi | |
2780 add edx,DWORD [24+esp] | |
2781 xor eax,ebx | |
2782 shld edi,edi,5 | |
2783 vpsrld xmm0,xmm1,30 | |
2784 vpor xmm5,xmm5,xmm7 | |
2785 add edx,esi | |
2786 and ebp,eax | |
2787 xor eax,ebx | |
2788 add edx,edi | |
2789 vpslld xmm1,xmm1,2 | |
2790 shrd edi,edi,7 | |
2791 xor ebp,ebx | |
2792 vpxor xmm5,xmm5,xmm0 | |
2793 mov esi,edx | |
2794 add ecx,DWORD [28+esp] | |
2795 xor edi,eax | |
2796 shld edx,edx,5 | |
2797 vpxor xmm5,xmm5,xmm1 | |
2798 add ecx,ebp | |
2799 and esi,edi | |
2800 vmovdqa xmm1,[112+esp] | |
2801 xor edi,eax | |
2802 add ecx,edx | |
2803 shrd edx,edx,7 | |
2804 xor esi,eax | |
2805 vpalignr xmm6,xmm3,xmm2,8 | |
2806 mov ebp,ecx | |
2807 add ebx,DWORD [32+esp] | |
2808 vpaddd xmm1,xmm1,xmm5 | |
2809 vmovdqa [96+esp],xmm2 | |
2810 xor edx,edi | |
2811 shld ecx,ecx,5 | |
2812 vpsrldq xmm0,xmm5,4 | |
2813 add ebx,esi | |
2814 and ebp,edx | |
2815 vpxor xmm6,xmm6,xmm2 | |
2816 xor edx,edi | |
2817 add ebx,ecx | |
2818 vpxor xmm0,xmm0,xmm4 | |
2819 shrd ecx,ecx,7 | |
2820 xor ebp,edi | |
2821 vmovdqa [16+esp],xmm1 | |
2822 mov esi,ebx | |
2823 add eax,DWORD [36+esp] | |
2824 vpxor xmm6,xmm6,xmm0 | |
2825 xor ecx,edx | |
2826 shld ebx,ebx,5 | |
2827 add eax,ebp | |
2828 and esi,ecx | |
2829 vpsrld xmm0,xmm6,31 | |
2830 xor ecx,edx | |
2831 add eax,ebx | |
2832 shrd ebx,ebx,7 | |
2833 xor esi,edx | |
2834 vpslldq xmm2,xmm6,12 | |
2835 vpaddd xmm6,xmm6,xmm6 | |
2836 mov ebp,eax | |
2837 add edi,DWORD [40+esp] | |
2838 xor ebx,ecx | |
2839 shld eax,eax,5 | |
2840 vpsrld xmm1,xmm2,30 | |
2841 vpor xmm6,xmm6,xmm0 | |
2842 add edi,esi | |
2843 and ebp,ebx | |
2844 xor ebx,ecx | |
2845 add edi,eax | |
2846 vpslld xmm2,xmm2,2 | |
2847 vmovdqa xmm0,[64+esp] | |
2848 shrd eax,eax,7 | |
2849 xor ebp,ecx | |
2850 vpxor xmm6,xmm6,xmm1 | |
2851 mov esi,edi | |
2852 add edx,DWORD [44+esp] | |
2853 xor eax,ebx | |
2854 shld edi,edi,5 | |
2855 vpxor xmm6,xmm6,xmm2 | |
2856 add edx,ebp | |
2857 and esi,eax | |
2858 vmovdqa xmm2,[112+esp] | |
2859 xor eax,ebx | |
2860 add edx,edi | |
2861 shrd edi,edi,7 | |
2862 xor esi,ebx | |
2863 vpalignr xmm7,xmm4,xmm3,8 | |
2864 mov ebp,edx | |
2865 add ecx,DWORD [48+esp] | |
2866 vpaddd xmm2,xmm2,xmm6 | |
2867 vmovdqa [64+esp],xmm3 | |
2868 xor edi,eax | |
2869 shld edx,edx,5 | |
2870 vpsrldq xmm1,xmm6,4 | |
2871 add ecx,esi | |
2872 and ebp,edi | |
2873 vpxor xmm7,xmm7,xmm3 | |
2874 xor edi,eax | |
2875 add ecx,edx | |
2876 vpxor xmm1,xmm1,xmm5 | |
2877 shrd edx,edx,7 | |
2878 xor ebp,eax | |
2879 vmovdqa [32+esp],xmm2 | |
2880 mov esi,ecx | |
2881 add ebx,DWORD [52+esp] | |
2882 vpxor xmm7,xmm7,xmm1 | |
2883 xor edx,edi | |
2884 shld ecx,ecx,5 | |
2885 add ebx,ebp | |
2886 and esi,edx | |
2887 vpsrld xmm1,xmm7,31 | |
2888 xor edx,edi | |
2889 add ebx,ecx | |
2890 shrd ecx,ecx,7 | |
2891 xor esi,edi | |
2892 vpslldq xmm3,xmm7,12 | |
2893 vpaddd xmm7,xmm7,xmm7 | |
2894 mov ebp,ebx | |
2895 add eax,DWORD [56+esp] | |
2896 xor ecx,edx | |
2897 shld ebx,ebx,5 | |
2898 vpsrld xmm2,xmm3,30 | |
2899 vpor xmm7,xmm7,xmm1 | |
2900 add eax,esi | |
2901 and ebp,ecx | |
2902 xor ecx,edx | |
2903 add eax,ebx | |
2904 vpslld xmm3,xmm3,2 | |
2905 vmovdqa xmm1,[80+esp] | |
2906 shrd ebx,ebx,7 | |
2907 xor ebp,edx | |
2908 vpxor xmm7,xmm7,xmm2 | |
2909 mov esi,eax | |
2910 add edi,DWORD [60+esp] | |
2911 xor ebx,ecx | |
2912 shld eax,eax,5 | |
2913 vpxor xmm7,xmm7,xmm3 | |
2914 add edi,ebp | |
2915 and esi,ebx | |
2916 vmovdqa xmm3,[112+esp] | |
2917 xor ebx,ecx | |
2918 add edi,eax | |
2919 vpalignr xmm2,xmm7,xmm6,8 | |
2920 vpxor xmm0,xmm0,xmm4 | |
2921 shrd eax,eax,7 | |
2922 xor esi,ecx | |
2923 mov ebp,edi | |
2924 add edx,DWORD [esp] | |
2925 vpxor xmm0,xmm0,xmm1 | |
2926 vmovdqa [80+esp],xmm4 | |
2927 xor eax,ebx | |
2928 shld edi,edi,5 | |
2929 vmovdqa xmm4,xmm3 | |
2930 vpaddd xmm3,xmm3,xmm7 | |
2931 add edx,esi | |
2932 and ebp,eax | |
2933 vpxor xmm0,xmm0,xmm2 | |
2934 xor eax,ebx | |
2935 add edx,edi | |
2936 shrd edi,edi,7 | |
2937 xor ebp,ebx | |
2938 vpsrld xmm2,xmm0,30 | |
2939 vmovdqa [48+esp],xmm3 | |
2940 mov esi,edx | |
2941 add ecx,DWORD [4+esp] | |
2942 xor edi,eax | |
2943 shld edx,edx,5 | |
2944 vpslld xmm0,xmm0,2 | |
2945 add ecx,ebp | |
2946 and esi,edi | |
2947 xor edi,eax | |
2948 add ecx,edx | |
2949 shrd edx,edx,7 | |
2950 xor esi,eax | |
2951 mov ebp,ecx | |
2952 add ebx,DWORD [8+esp] | |
2953 vpor xmm0,xmm0,xmm2 | |
2954 xor edx,edi | |
2955 shld ecx,ecx,5 | |
2956 vmovdqa xmm2,[96+esp] | |
2957 add ebx,esi | |
2958 and ebp,edx | |
2959 xor edx,edi | |
2960 add ebx,ecx | |
2961 add eax,DWORD [12+esp] | |
2962 xor ebp,edi | |
2963 mov esi,ebx | |
2964 shld ebx,ebx,5 | |
2965 add eax,ebp | |
2966 xor esi,edx | |
2967 shrd ecx,ecx,7 | |
2968 add eax,ebx | |
2969 vpalignr xmm3,xmm0,xmm7,8 | |
2970 vpxor xmm1,xmm1,xmm5 | |
2971 add edi,DWORD [16+esp] | |
2972 xor esi,ecx | |
2973 mov ebp,eax | |
2974 shld eax,eax,5 | |
2975 vpxor xmm1,xmm1,xmm2 | |
2976 vmovdqa [96+esp],xmm5 | |
2977 add edi,esi | |
2978 xor ebp,ecx | |
2979 vmovdqa xmm5,xmm4 | |
2980 vpaddd xmm4,xmm4,xmm0 | |
2981 shrd ebx,ebx,7 | |
2982 add edi,eax | |
2983 vpxor xmm1,xmm1,xmm3 | |
2984 add edx,DWORD [20+esp] | |
2985 xor ebp,ebx | |
2986 mov esi,edi | |
2987 shld edi,edi,5 | |
2988 vpsrld xmm3,xmm1,30 | |
2989 vmovdqa [esp],xmm4 | |
2990 add edx,ebp | |
2991 xor esi,ebx | |
2992 shrd eax,eax,7 | |
2993 add edx,edi | |
2994 vpslld xmm1,xmm1,2 | |
2995 add ecx,DWORD [24+esp] | |
2996 xor esi,eax | |
2997 mov ebp,edx | |
2998 shld edx,edx,5 | |
2999 add ecx,esi | |
3000 xor ebp,eax | |
3001 shrd edi,edi,7 | |
3002 add ecx,edx | |
3003 vpor xmm1,xmm1,xmm3 | |
3004 add ebx,DWORD [28+esp] | |
3005 xor ebp,edi | |
3006 vmovdqa xmm3,[64+esp] | |
3007 mov esi,ecx | |
3008 shld ecx,ecx,5 | |
3009 add ebx,ebp | |
3010 xor esi,edi | |
3011 shrd edx,edx,7 | |
3012 add ebx,ecx | |
3013 vpalignr xmm4,xmm1,xmm0,8 | |
3014 vpxor xmm2,xmm2,xmm6 | |
3015 add eax,DWORD [32+esp] | |
3016 xor esi,edx | |
3017 mov ebp,ebx | |
3018 shld ebx,ebx,5 | |
3019 vpxor xmm2,xmm2,xmm3 | |
3020 vmovdqa [64+esp],xmm6 | |
3021 add eax,esi | |
3022 xor ebp,edx | |
3023 vmovdqa xmm6,[128+esp] | |
3024 vpaddd xmm5,xmm5,xmm1 | |
3025 shrd ecx,ecx,7 | |
3026 add eax,ebx | |
3027 vpxor xmm2,xmm2,xmm4 | |
3028 add edi,DWORD [36+esp] | |
3029 xor ebp,ecx | |
3030 mov esi,eax | |
3031 shld eax,eax,5 | |
3032 vpsrld xmm4,xmm2,30 | |
3033 vmovdqa [16+esp],xmm5 | |
3034 add edi,ebp | |
3035 xor esi,ecx | |
3036 shrd ebx,ebx,7 | |
3037 add edi,eax | |
3038 vpslld xmm2,xmm2,2 | |
3039 add edx,DWORD [40+esp] | |
3040 xor esi,ebx | |
3041 mov ebp,edi | |
3042 shld edi,edi,5 | |
3043 add edx,esi | |
3044 xor ebp,ebx | |
3045 shrd eax,eax,7 | |
3046 add edx,edi | |
3047 vpor xmm2,xmm2,xmm4 | |
3048 add ecx,DWORD [44+esp] | |
3049 xor ebp,eax | |
3050 vmovdqa xmm4,[80+esp] | |
3051 mov esi,edx | |
3052 shld edx,edx,5 | |
3053 add ecx,ebp | |
3054 xor esi,eax | |
3055 shrd edi,edi,7 | |
3056 add ecx,edx | |
3057 vpalignr xmm5,xmm2,xmm1,8 | |
3058 vpxor xmm3,xmm3,xmm7 | |
3059 add ebx,DWORD [48+esp] | |
3060 xor esi,edi | |
3061 mov ebp,ecx | |
3062 shld ecx,ecx,5 | |
3063 vpxor xmm3,xmm3,xmm4 | |
3064 vmovdqa [80+esp],xmm7 | |
3065 add ebx,esi | |
3066 xor ebp,edi | |
3067 vmovdqa xmm7,xmm6 | |
3068 vpaddd xmm6,xmm6,xmm2 | |
3069 shrd edx,edx,7 | |
3070 add ebx,ecx | |
3071 vpxor xmm3,xmm3,xmm5 | |
3072 add eax,DWORD [52+esp] | |
3073 xor ebp,edx | |
3074 mov esi,ebx | |
3075 shld ebx,ebx,5 | |
3076 vpsrld xmm5,xmm3,30 | |
3077 vmovdqa [32+esp],xmm6 | |
3078 add eax,ebp | |
3079 xor esi,edx | |
3080 shrd ecx,ecx,7 | |
3081 add eax,ebx | |
3082 vpslld xmm3,xmm3,2 | |
3083 add edi,DWORD [56+esp] | |
3084 xor esi,ecx | |
3085 mov ebp,eax | |
3086 shld eax,eax,5 | |
3087 add edi,esi | |
3088 xor ebp,ecx | |
3089 shrd ebx,ebx,7 | |
3090 add edi,eax | |
3091 vpor xmm3,xmm3,xmm5 | |
3092 add edx,DWORD [60+esp] | |
3093 xor ebp,ebx | |
3094 vmovdqa xmm5,[96+esp] | |
3095 mov esi,edi | |
3096 shld edi,edi,5 | |
3097 add edx,ebp | |
3098 xor esi,ebx | |
3099 shrd eax,eax,7 | |
3100 add edx,edi | |
3101 vpalignr xmm6,xmm3,xmm2,8 | |
3102 vpxor xmm4,xmm4,xmm0 | |
3103 add ecx,DWORD [esp] | |
3104 xor esi,eax | |
3105 mov ebp,edx | |
3106 shld edx,edx,5 | |
3107 vpxor xmm4,xmm4,xmm5 | |
3108 vmovdqa [96+esp],xmm0 | |
3109 add ecx,esi | |
3110 xor ebp,eax | |
3111 vmovdqa xmm0,xmm7 | |
3112 vpaddd xmm7,xmm7,xmm3 | |
3113 shrd edi,edi,7 | |
3114 add ecx,edx | |
3115 vpxor xmm4,xmm4,xmm6 | |
3116 add ebx,DWORD [4+esp] | |
3117 xor ebp,edi | |
3118 mov esi,ecx | |
3119 shld ecx,ecx,5 | |
3120 vpsrld xmm6,xmm4,30 | |
3121 vmovdqa [48+esp],xmm7 | |
3122 add ebx,ebp | |
3123 xor esi,edi | |
3124 shrd edx,edx,7 | |
3125 add ebx,ecx | |
3126 vpslld xmm4,xmm4,2 | |
3127 add eax,DWORD [8+esp] | |
3128 xor esi,edx | |
3129 mov ebp,ebx | |
3130 shld ebx,ebx,5 | |
3131 add eax,esi | |
3132 xor ebp,edx | |
3133 shrd ecx,ecx,7 | |
3134 add eax,ebx | |
3135 vpor xmm4,xmm4,xmm6 | |
3136 add edi,DWORD [12+esp] | |
3137 xor ebp,ecx | |
3138 vmovdqa xmm6,[64+esp] | |
3139 mov esi,eax | |
3140 shld eax,eax,5 | |
3141 add edi,ebp | |
3142 xor esi,ecx | |
3143 shrd ebx,ebx,7 | |
3144 add edi,eax | |
3145 vpalignr xmm7,xmm4,xmm3,8 | |
3146 vpxor xmm5,xmm5,xmm1 | |
3147 add edx,DWORD [16+esp] | |
3148 xor esi,ebx | |
3149 mov ebp,edi | |
3150 shld edi,edi,5 | |
3151 vpxor xmm5,xmm5,xmm6 | |
3152 vmovdqa [64+esp],xmm1 | |
3153 add edx,esi | |
3154 xor ebp,ebx | |
3155 vmovdqa xmm1,xmm0 | |
3156 vpaddd xmm0,xmm0,xmm4 | |
3157 shrd eax,eax,7 | |
3158 add edx,edi | |
3159 vpxor xmm5,xmm5,xmm7 | |
3160 add ecx,DWORD [20+esp] | |
3161 xor ebp,eax | |
3162 mov esi,edx | |
3163 shld edx,edx,5 | |
3164 vpsrld xmm7,xmm5,30 | |
3165 vmovdqa [esp],xmm0 | |
3166 add ecx,ebp | |
3167 xor esi,eax | |
3168 shrd edi,edi,7 | |
3169 add ecx,edx | |
3170 vpslld xmm5,xmm5,2 | |
3171 add ebx,DWORD [24+esp] | |
3172 xor esi,edi | |
3173 mov ebp,ecx | |
3174 shld ecx,ecx,5 | |
3175 add ebx,esi | |
3176 xor ebp,edi | |
3177 shrd edx,edx,7 | |
3178 add ebx,ecx | |
3179 vpor xmm5,xmm5,xmm7 | |
3180 add eax,DWORD [28+esp] | |
3181 vmovdqa xmm7,[80+esp] | |
3182 shrd ecx,ecx,7 | |
3183 mov esi,ebx | |
3184 xor ebp,edx | |
3185 shld ebx,ebx,5 | |
3186 add eax,ebp | |
3187 xor esi,ecx | |
3188 xor ecx,edx | |
3189 add eax,ebx | |
3190 vpalignr xmm0,xmm5,xmm4,8 | |
3191 vpxor xmm6,xmm6,xmm2 | |
3192 add edi,DWORD [32+esp] | |
3193 and esi,ecx | |
3194 xor ecx,edx | |
3195 shrd ebx,ebx,7 | |
3196 vpxor xmm6,xmm6,xmm7 | |
3197 vmovdqa [80+esp],xmm2 | |
3198 mov ebp,eax | |
3199 xor esi,ecx | |
3200 vmovdqa xmm2,xmm1 | |
3201 vpaddd xmm1,xmm1,xmm5 | |
3202 shld eax,eax,5 | |
3203 add edi,esi | |
3204 vpxor xmm6,xmm6,xmm0 | |
3205 xor ebp,ebx | |
3206 xor ebx,ecx | |
3207 add edi,eax | |
3208 add edx,DWORD [36+esp] | |
3209 vpsrld xmm0,xmm6,30 | |
3210 vmovdqa [16+esp],xmm1 | |
3211 and ebp,ebx | |
3212 xor ebx,ecx | |
3213 shrd eax,eax,7 | |
3214 mov esi,edi | |
3215 vpslld xmm6,xmm6,2 | |
3216 xor ebp,ebx | |
3217 shld edi,edi,5 | |
3218 add edx,ebp | |
3219 xor esi,eax | |
3220 xor eax,ebx | |
3221 add edx,edi | |
3222 add ecx,DWORD [40+esp] | |
3223 and esi,eax | |
3224 vpor xmm6,xmm6,xmm0 | |
3225 xor eax,ebx | |
3226 shrd edi,edi,7 | |
3227 vmovdqa xmm0,[96+esp] | |
3228 mov ebp,edx | |
3229 xor esi,eax | |
3230 shld edx,edx,5 | |
3231 add ecx,esi | |
3232 xor ebp,edi | |
3233 xor edi,eax | |
3234 add ecx,edx | |
3235 add ebx,DWORD [44+esp] | |
3236 and ebp,edi | |
3237 xor edi,eax | |
3238 shrd edx,edx,7 | |
3239 mov esi,ecx | |
3240 xor ebp,edi | |
3241 shld ecx,ecx,5 | |
3242 add ebx,ebp | |
3243 xor esi,edx | |
3244 xor edx,edi | |
3245 add ebx,ecx | |
3246 vpalignr xmm1,xmm6,xmm5,8 | |
3247 vpxor xmm7,xmm7,xmm3 | |
3248 add eax,DWORD [48+esp] | |
3249 and esi,edx | |
3250 xor edx,edi | |
3251 shrd ecx,ecx,7 | |
3252 vpxor xmm7,xmm7,xmm0 | |
3253 vmovdqa [96+esp],xmm3 | |
3254 mov ebp,ebx | |
3255 xor esi,edx | |
3256 vmovdqa xmm3,[144+esp] | |
3257 vpaddd xmm2,xmm2,xmm6 | |
3258 shld ebx,ebx,5 | |
3259 add eax,esi | |
3260 vpxor xmm7,xmm7,xmm1 | |
3261 xor ebp,ecx | |
3262 xor ecx,edx | |
3263 add eax,ebx | |
3264 add edi,DWORD [52+esp] | |
3265 vpsrld xmm1,xmm7,30 | |
3266 vmovdqa [32+esp],xmm2 | |
3267 and ebp,ecx | |
3268 xor ecx,edx | |
3269 shrd ebx,ebx,7 | |
3270 mov esi,eax | |
3271 vpslld xmm7,xmm7,2 | |
3272 xor ebp,ecx | |
3273 shld eax,eax,5 | |
3274 add edi,ebp | |
3275 xor esi,ebx | |
3276 xor ebx,ecx | |
3277 add edi,eax | |
3278 add edx,DWORD [56+esp] | |
3279 and esi,ebx | |
3280 vpor xmm7,xmm7,xmm1 | |
3281 xor ebx,ecx | |
3282 shrd eax,eax,7 | |
3283 vmovdqa xmm1,[64+esp] | |
3284 mov ebp,edi | |
3285 xor esi,ebx | |
3286 shld edi,edi,5 | |
3287 add edx,esi | |
3288 xor ebp,eax | |
3289 xor eax,ebx | |
3290 add edx,edi | |
3291 add ecx,DWORD [60+esp] | |
3292 and ebp,eax | |
3293 xor eax,ebx | |
3294 shrd edi,edi,7 | |
3295 mov esi,edx | |
3296 xor ebp,eax | |
3297 shld edx,edx,5 | |
3298 add ecx,ebp | |
3299 xor esi,edi | |
3300 xor edi,eax | |
3301 add ecx,edx | |
3302 vpalignr xmm2,xmm7,xmm6,8 | |
3303 vpxor xmm0,xmm0,xmm4 | |
3304 add ebx,DWORD [esp] | |
3305 and esi,edi | |
3306 xor edi,eax | |
3307 shrd edx,edx,7 | |
3308 vpxor xmm0,xmm0,xmm1 | |
3309 vmovdqa [64+esp],xmm4 | |
3310 mov ebp,ecx | |
3311 xor esi,edi | |
3312 vmovdqa xmm4,xmm3 | |
3313 vpaddd xmm3,xmm3,xmm7 | |
3314 shld ecx,ecx,5 | |
3315 add ebx,esi | |
3316 vpxor xmm0,xmm0,xmm2 | |
3317 xor ebp,edx | |
3318 xor edx,edi | |
3319 add ebx,ecx | |
3320 add eax,DWORD [4+esp] | |
3321 vpsrld xmm2,xmm0,30 | |
3322 vmovdqa [48+esp],xmm3 | |
3323 and ebp,edx | |
3324 xor edx,edi | |
3325 shrd ecx,ecx,7 | |
3326 mov esi,ebx | |
3327 vpslld xmm0,xmm0,2 | |
3328 xor ebp,edx | |
3329 shld ebx,ebx,5 | |
3330 add eax,ebp | |
3331 xor esi,ecx | |
3332 xor ecx,edx | |
3333 add eax,ebx | |
3334 add edi,DWORD [8+esp] | |
3335 and esi,ecx | |
3336 vpor xmm0,xmm0,xmm2 | |
3337 xor ecx,edx | |
3338 shrd ebx,ebx,7 | |
3339 vmovdqa xmm2,[80+esp] | |
3340 mov ebp,eax | |
3341 xor esi,ecx | |
3342 shld eax,eax,5 | |
3343 add edi,esi | |
3344 xor ebp,ebx | |
3345 xor ebx,ecx | |
3346 add edi,eax | |
3347 add edx,DWORD [12+esp] | |
3348 and ebp,ebx | |
3349 xor ebx,ecx | |
3350 shrd eax,eax,7 | |
3351 mov esi,edi | |
3352 xor ebp,ebx | |
3353 shld edi,edi,5 | |
3354 add edx,ebp | |
3355 xor esi,eax | |
3356 xor eax,ebx | |
3357 add edx,edi | |
3358 vpalignr xmm3,xmm0,xmm7,8 | |
3359 vpxor xmm1,xmm1,xmm5 | |
3360 add ecx,DWORD [16+esp] | |
3361 and esi,eax | |
3362 xor eax,ebx | |
3363 shrd edi,edi,7 | |
3364 vpxor xmm1,xmm1,xmm2 | |
3365 vmovdqa [80+esp],xmm5 | |
3366 mov ebp,edx | |
3367 xor esi,eax | |
3368 vmovdqa xmm5,xmm4 | |
3369 vpaddd xmm4,xmm4,xmm0 | |
3370 shld edx,edx,5 | |
3371 add ecx,esi | |
3372 vpxor xmm1,xmm1,xmm3 | |
3373 xor ebp,edi | |
3374 xor edi,eax | |
3375 add ecx,edx | |
3376 add ebx,DWORD [20+esp] | |
3377 vpsrld xmm3,xmm1,30 | |
3378 vmovdqa [esp],xmm4 | |
3379 and ebp,edi | |
3380 xor edi,eax | |
3381 shrd edx,edx,7 | |
3382 mov esi,ecx | |
3383 vpslld xmm1,xmm1,2 | |
3384 xor ebp,edi | |
3385 shld ecx,ecx,5 | |
3386 add ebx,ebp | |
3387 xor esi,edx | |
3388 xor edx,edi | |
3389 add ebx,ecx | |
3390 add eax,DWORD [24+esp] | |
3391 and esi,edx | |
3392 vpor xmm1,xmm1,xmm3 | |
3393 xor edx,edi | |
3394 shrd ecx,ecx,7 | |
3395 vmovdqa xmm3,[96+esp] | |
3396 mov ebp,ebx | |
3397 xor esi,edx | |
3398 shld ebx,ebx,5 | |
3399 add eax,esi | |
3400 xor ebp,ecx | |
3401 xor ecx,edx | |
3402 add eax,ebx | |
3403 add edi,DWORD [28+esp] | |
3404 and ebp,ecx | |
3405 xor ecx,edx | |
3406 shrd ebx,ebx,7 | |
3407 mov esi,eax | |
3408 xor ebp,ecx | |
3409 shld eax,eax,5 | |
3410 add edi,ebp | |
3411 xor esi,ebx | |
3412 xor ebx,ecx | |
3413 add edi,eax | |
3414 vpalignr xmm4,xmm1,xmm0,8 | |
3415 vpxor xmm2,xmm2,xmm6 | |
3416 add edx,DWORD [32+esp] | |
3417 and esi,ebx | |
3418 xor ebx,ecx | |
3419 shrd eax,eax,7 | |
3420 vpxor xmm2,xmm2,xmm3 | |
3421 vmovdqa [96+esp],xmm6 | |
3422 mov ebp,edi | |
3423 xor esi,ebx | |
3424 vmovdqa xmm6,xmm5 | |
3425 vpaddd xmm5,xmm5,xmm1 | |
3426 shld edi,edi,5 | |
3427 add edx,esi | |
3428 vpxor xmm2,xmm2,xmm4 | |
3429 xor ebp,eax | |
3430 xor eax,ebx | |
3431 add edx,edi | |
3432 add ecx,DWORD [36+esp] | |
3433 vpsrld xmm4,xmm2,30 | |
3434 vmovdqa [16+esp],xmm5 | |
3435 and ebp,eax | |
3436 xor eax,ebx | |
3437 shrd edi,edi,7 | |
3438 mov esi,edx | |
3439 vpslld xmm2,xmm2,2 | |
3440 xor ebp,eax | |
3441 shld edx,edx,5 | |
3442 add ecx,ebp | |
3443 xor esi,edi | |
3444 xor edi,eax | |
3445 add ecx,edx | |
3446 add ebx,DWORD [40+esp] | |
3447 and esi,edi | |
3448 vpor xmm2,xmm2,xmm4 | |
3449 xor edi,eax | |
3450 shrd edx,edx,7 | |
3451 vmovdqa xmm4,[64+esp] | |
3452 mov ebp,ecx | |
3453 xor esi,edi | |
3454 shld ecx,ecx,5 | |
3455 add ebx,esi | |
3456 xor ebp,edx | |
3457 xor edx,edi | |
3458 add ebx,ecx | |
3459 add eax,DWORD [44+esp] | |
3460 and ebp,edx | |
3461 xor edx,edi | |
3462 shrd ecx,ecx,7 | |
3463 mov esi,ebx | |
3464 xor ebp,edx | |
3465 shld ebx,ebx,5 | |
3466 add eax,ebp | |
3467 xor esi,edx | |
3468 add eax,ebx | |
3469 vpalignr xmm5,xmm2,xmm1,8 | |
3470 vpxor xmm3,xmm3,xmm7 | |
3471 add edi,DWORD [48+esp] | |
3472 xor esi,ecx | |
3473 mov ebp,eax | |
3474 shld eax,eax,5 | |
3475 vpxor xmm3,xmm3,xmm4 | |
3476 vmovdqa [64+esp],xmm7 | |
3477 add edi,esi | |
3478 xor ebp,ecx | |
3479 vmovdqa xmm7,xmm6 | |
3480 vpaddd xmm6,xmm6,xmm2 | |
3481 shrd ebx,ebx,7 | |
3482 add edi,eax | |
3483 vpxor xmm3,xmm3,xmm5 | |
3484 add edx,DWORD [52+esp] | |
3485 xor ebp,ebx | |
3486 mov esi,edi | |
3487 shld edi,edi,5 | |
3488 vpsrld xmm5,xmm3,30 | |
3489 vmovdqa [32+esp],xmm6 | |
3490 add edx,ebp | |
3491 xor esi,ebx | |
3492 shrd eax,eax,7 | |
3493 add edx,edi | |
3494 vpslld xmm3,xmm3,2 | |
3495 add ecx,DWORD [56+esp] | |
3496 xor esi,eax | |
3497 mov ebp,edx | |
3498 shld edx,edx,5 | |
3499 add ecx,esi | |
3500 xor ebp,eax | |
3501 shrd edi,edi,7 | |
3502 add ecx,edx | |
3503 vpor xmm3,xmm3,xmm5 | |
3504 add ebx,DWORD [60+esp] | |
3505 xor ebp,edi | |
3506 mov esi,ecx | |
3507 shld ecx,ecx,5 | |
3508 add ebx,ebp | |
3509 xor esi,edi | |
3510 shrd edx,edx,7 | |
3511 add ebx,ecx | |
3512 add eax,DWORD [esp] | |
3513 vpaddd xmm7,xmm7,xmm3 | |
3514 xor esi,edx | |
3515 mov ebp,ebx | |
3516 shld ebx,ebx,5 | |
3517 add eax,esi | |
3518 vmovdqa [48+esp],xmm7 | |
3519 xor ebp,edx | |
3520 shrd ecx,ecx,7 | |
3521 add eax,ebx | |
3522 add edi,DWORD [4+esp] | |
3523 xor ebp,ecx | |
3524 mov esi,eax | |
3525 shld eax,eax,5 | |
3526 add edi,ebp | |
3527 xor esi,ecx | |
3528 shrd ebx,ebx,7 | |
3529 add edi,eax | |
3530 add edx,DWORD [8+esp] | |
3531 xor esi,ebx | |
3532 mov ebp,edi | |
3533 shld edi,edi,5 | |
3534 add edx,esi | |
3535 xor ebp,ebx | |
3536 shrd eax,eax,7 | |
3537 add edx,edi | |
3538 add ecx,DWORD [12+esp] | |
3539 xor ebp,eax | |
3540 mov esi,edx | |
3541 shld edx,edx,5 | |
3542 add ecx,ebp | |
3543 xor esi,eax | |
3544 shrd edi,edi,7 | |
3545 add ecx,edx | |
3546 mov ebp,DWORD [196+esp] | |
3547 cmp ebp,DWORD [200+esp] | |
3548 je NEAR L$008done | |
3549 vmovdqa xmm7,[160+esp] | |
3550 vmovdqa xmm6,[176+esp] | |
3551 vmovdqu xmm0,[ebp] | |
3552 vmovdqu xmm1,[16+ebp] | |
3553 vmovdqu xmm2,[32+ebp] | |
3554 vmovdqu xmm3,[48+ebp] | |
3555 add ebp,64 | |
3556 vpshufb xmm0,xmm0,xmm6 | |
3557 mov DWORD [196+esp],ebp | |
3558 vmovdqa [96+esp],xmm7 | |
3559 add ebx,DWORD [16+esp] | |
3560 xor esi,edi | |
3561 vpshufb xmm1,xmm1,xmm6 | |
3562 mov ebp,ecx | |
3563 shld ecx,ecx,5 | |
3564 vpaddd xmm4,xmm0,xmm7 | |
3565 add ebx,esi | |
3566 xor ebp,edi | |
3567 shrd edx,edx,7 | |
3568 add ebx,ecx | |
3569 vmovdqa [esp],xmm4 | |
3570 add eax,DWORD [20+esp] | |
3571 xor ebp,edx | |
3572 mov esi,ebx | |
3573 shld ebx,ebx,5 | |
3574 add eax,ebp | |
3575 xor esi,edx | |
3576 shrd ecx,ecx,7 | |
3577 add eax,ebx | |
3578 add edi,DWORD [24+esp] | |
3579 xor esi,ecx | |
3580 mov ebp,eax | |
3581 shld eax,eax,5 | |
3582 add edi,esi | |
3583 xor ebp,ecx | |
3584 shrd ebx,ebx,7 | |
3585 add edi,eax | |
3586 add edx,DWORD [28+esp] | |
3587 xor ebp,ebx | |
3588 mov esi,edi | |
3589 shld edi,edi,5 | |
3590 add edx,ebp | |
3591 xor esi,ebx | |
3592 shrd eax,eax,7 | |
3593 add edx,edi | |
3594 add ecx,DWORD [32+esp] | |
3595 xor esi,eax | |
3596 vpshufb xmm2,xmm2,xmm6 | |
3597 mov ebp,edx | |
3598 shld edx,edx,5 | |
3599 vpaddd xmm5,xmm1,xmm7 | |
3600 add ecx,esi | |
3601 xor ebp,eax | |
3602 shrd edi,edi,7 | |
3603 add ecx,edx | |
3604 vmovdqa [16+esp],xmm5 | |
3605 add ebx,DWORD [36+esp] | |
3606 xor ebp,edi | |
3607 mov esi,ecx | |
3608 shld ecx,ecx,5 | |
3609 add ebx,ebp | |
3610 xor esi,edi | |
3611 shrd edx,edx,7 | |
3612 add ebx,ecx | |
3613 add eax,DWORD [40+esp] | |
3614 xor esi,edx | |
3615 mov ebp,ebx | |
3616 shld ebx,ebx,5 | |
3617 add eax,esi | |
3618 xor ebp,edx | |
3619 shrd ecx,ecx,7 | |
3620 add eax,ebx | |
3621 add edi,DWORD [44+esp] | |
3622 xor ebp,ecx | |
3623 mov esi,eax | |
3624 shld eax,eax,5 | |
3625 add edi,ebp | |
3626 xor esi,ecx | |
3627 shrd ebx,ebx,7 | |
3628 add edi,eax | |
3629 add edx,DWORD [48+esp] | |
3630 xor esi,ebx | |
3631 vpshufb xmm3,xmm3,xmm6 | |
3632 mov ebp,edi | |
3633 shld edi,edi,5 | |
3634 vpaddd xmm6,xmm2,xmm7 | |
3635 add edx,esi | |
3636 xor ebp,ebx | |
3637 shrd eax,eax,7 | |
3638 add edx,edi | |
3639 vmovdqa [32+esp],xmm6 | |
3640 add ecx,DWORD [52+esp] | |
3641 xor ebp,eax | |
3642 mov esi,edx | |
3643 shld edx,edx,5 | |
3644 add ecx,ebp | |
3645 xor esi,eax | |
3646 shrd edi,edi,7 | |
3647 add ecx,edx | |
3648 add ebx,DWORD [56+esp] | |
3649 xor esi,edi | |
3650 mov ebp,ecx | |
3651 shld ecx,ecx,5 | |
3652 add ebx,esi | |
3653 xor ebp,edi | |
3654 shrd edx,edx,7 | |
3655 add ebx,ecx | |
3656 add eax,DWORD [60+esp] | |
3657 xor ebp,edx | |
3658 mov esi,ebx | |
3659 shld ebx,ebx,5 | |
3660 add eax,ebp | |
3661 shrd ecx,ecx,7 | |
3662 add eax,ebx | |
3663 mov ebp,DWORD [192+esp] | |
3664 add eax,DWORD [ebp] | |
3665 add esi,DWORD [4+ebp] | |
3666 add ecx,DWORD [8+ebp] | |
3667 mov DWORD [ebp],eax | |
3668 add edx,DWORD [12+ebp] | |
3669 mov DWORD [4+ebp],esi | |
3670 add edi,DWORD [16+ebp] | |
3671 mov ebx,ecx | |
3672 mov DWORD [8+ebp],ecx | |
3673 xor ebx,edx | |
3674 mov DWORD [12+ebp],edx | |
3675 mov DWORD [16+ebp],edi | |
3676 mov ebp,esi | |
3677 and esi,ebx | |
3678 mov ebx,ebp | |
3679 jmp NEAR L$007loop | |
3680 align 16 | |
3681 L$008done: | |
3682 add ebx,DWORD [16+esp] | |
3683 xor esi,edi | |
3684 mov ebp,ecx | |
3685 shld ecx,ecx,5 | |
3686 add ebx,esi | |
3687 xor ebp,edi | |
3688 shrd edx,edx,7 | |
3689 add ebx,ecx | |
3690 add eax,DWORD [20+esp] | |
3691 xor ebp,edx | |
3692 mov esi,ebx | |
3693 shld ebx,ebx,5 | |
3694 add eax,ebp | |
3695 xor esi,edx | |
3696 shrd ecx,ecx,7 | |
3697 add eax,ebx | |
3698 add edi,DWORD [24+esp] | |
3699 xor esi,ecx | |
3700 mov ebp,eax | |
3701 shld eax,eax,5 | |
3702 add edi,esi | |
3703 xor ebp,ecx | |
3704 shrd ebx,ebx,7 | |
3705 add edi,eax | |
3706 add edx,DWORD [28+esp] | |
3707 xor ebp,ebx | |
3708 mov esi,edi | |
3709 shld edi,edi,5 | |
3710 add edx,ebp | |
3711 xor esi,ebx | |
3712 shrd eax,eax,7 | |
3713 add edx,edi | |
3714 add ecx,DWORD [32+esp] | |
3715 xor esi,eax | |
3716 mov ebp,edx | |
3717 shld edx,edx,5 | |
3718 add ecx,esi | |
3719 xor ebp,eax | |
3720 shrd edi,edi,7 | |
3721 add ecx,edx | |
3722 add ebx,DWORD [36+esp] | |
3723 xor ebp,edi | |
3724 mov esi,ecx | |
3725 shld ecx,ecx,5 | |
3726 add ebx,ebp | |
3727 xor esi,edi | |
3728 shrd edx,edx,7 | |
3729 add ebx,ecx | |
3730 add eax,DWORD [40+esp] | |
3731 xor esi,edx | |
3732 mov ebp,ebx | |
3733 shld ebx,ebx,5 | |
3734 add eax,esi | |
3735 xor ebp,edx | |
3736 shrd ecx,ecx,7 | |
3737 add eax,ebx | |
3738 add edi,DWORD [44+esp] | |
3739 xor ebp,ecx | |
3740 mov esi,eax | |
3741 shld eax,eax,5 | |
3742 add edi,ebp | |
3743 xor esi,ecx | |
3744 shrd ebx,ebx,7 | |
3745 add edi,eax | |
3746 add edx,DWORD [48+esp] | |
3747 xor esi,ebx | |
3748 mov ebp,edi | |
3749 shld edi,edi,5 | |
3750 add edx,esi | |
3751 xor ebp,ebx | |
3752 shrd eax,eax,7 | |
3753 add edx,edi | |
3754 add ecx,DWORD [52+esp] | |
3755 xor ebp,eax | |
3756 mov esi,edx | |
3757 shld edx,edx,5 | |
3758 add ecx,ebp | |
3759 xor esi,eax | |
3760 shrd edi,edi,7 | |
3761 add ecx,edx | |
3762 add ebx,DWORD [56+esp] | |
3763 xor esi,edi | |
3764 mov ebp,ecx | |
3765 shld ecx,ecx,5 | |
3766 add ebx,esi | |
3767 xor ebp,edi | |
3768 shrd edx,edx,7 | |
3769 add ebx,ecx | |
3770 add eax,DWORD [60+esp] | |
3771 xor ebp,edx | |
3772 mov esi,ebx | |
3773 shld ebx,ebx,5 | |
3774 add eax,ebp | |
3775 shrd ecx,ecx,7 | |
3776 add eax,ebx | |
3777 vzeroall | |
3778 mov ebp,DWORD [192+esp] | |
3779 add eax,DWORD [ebp] | |
3780 mov esp,DWORD [204+esp] | |
3781 add esi,DWORD [4+ebp] | |
3782 add ecx,DWORD [8+ebp] | |
3783 mov DWORD [ebp],eax | |
3784 add edx,DWORD [12+ebp] | |
3785 mov DWORD [4+ebp],esi | |
3786 add edi,DWORD [16+ebp] | |
3787 mov DWORD [8+ebp],ecx | |
3788 mov DWORD [12+ebp],edx | |
3789 mov DWORD [16+ebp],edi | |
3790 pop edi | |
3791 pop esi | |
3792 pop ebx | |
3793 pop ebp | |
3794 ret | |
3795 align 64 | 2792 align 64 |
3796 L$K_XX_XX: | 2793 L$K_XX_XX: |
3797 dd 1518500249,1518500249,1518500249,1518500249 | 2794 dd 1518500249,1518500249,1518500249,1518500249 |
3798 dd 1859775393,1859775393,1859775393,1859775393 | 2795 dd 1859775393,1859775393,1859775393,1859775393 |
3799 dd 2400959708,2400959708,2400959708,2400959708 | 2796 dd 2400959708,2400959708,2400959708,2400959708 |
3800 dd 3395469782,3395469782,3395469782,3395469782 | 2797 dd 3395469782,3395469782,3395469782,3395469782 |
3801 dd 66051,67438087,134810123,202182159 | 2798 dd 66051,67438087,134810123,202182159 |
3802 db 15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0 | 2799 db 15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0 |
3803 db 83,72,65,49,32,98,108,111,99,107,32,116,114,97,110,115 | 2800 db 83,72,65,49,32,98,108,111,99,107,32,116,114,97,110,115 |
3804 db 102,111,114,109,32,102,111,114,32,120,56,54,44,32,67,82 | 2801 db 102,111,114,109,32,102,111,114,32,120,56,54,44,32,67,82 |
3805 db 89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112 | 2802 db 89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112 |
3806 db 114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 | 2803 db 114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 |
3807 segment .bss | 2804 segment .bss |
3808 common _OPENSSL_ia32cap_P 16 | 2805 common _OPENSSL_ia32cap_P 16 |
OLD | NEW |