| OLD | NEW |
| 1 default rel | 1 default rel |
| 2 %define XMMWORD | 2 %define XMMWORD |
| 3 %define YMMWORD | 3 %define YMMWORD |
| 4 %define ZMMWORD | 4 %define ZMMWORD |
| 5 section .text code align=64 | 5 section .text code align=64 |
| 6 | 6 |
| 7 EXTERN OPENSSL_ia32cap_P | 7 EXTERN OPENSSL_ia32cap_P |
| 8 global aesni_encrypt | 8 global aesni_encrypt |
| 9 | 9 |
| 10 ALIGN 16 | 10 ALIGN 16 |
| 11 aesni_encrypt: | 11 aesni_encrypt: |
| 12 movups xmm2,XMMWORD[rcx] | 12 movups xmm2,XMMWORD[rcx] |
| 13 mov eax,DWORD[240+r8] | 13 mov eax,DWORD[240+r8] |
| 14 movups xmm0,XMMWORD[r8] | 14 movups xmm0,XMMWORD[r8] |
| 15 movups xmm1,XMMWORD[16+r8] | 15 movups xmm1,XMMWORD[16+r8] |
| 16 lea r8,[32+r8] | 16 lea r8,[32+r8] |
| 17 xorps xmm2,xmm0 | 17 xorps xmm2,xmm0 |
| 18 $L$oop_enc1_1: | 18 $L$oop_enc1_1: |
| 19 DB 102,15,56,220,209 | 19 DB 102,15,56,220,209 |
| 20 dec eax | 20 dec eax |
| 21 movups xmm1,XMMWORD[r8] | 21 movups xmm1,XMMWORD[r8] |
| 22 lea r8,[16+r8] | 22 lea r8,[16+r8] |
| 23 jnz NEAR $L$oop_enc1_1 | 23 jnz NEAR $L$oop_enc1_1 |
| 24 DB 102,15,56,221,209 | 24 DB 102,15,56,221,209 |
| 25 pxor xmm0,xmm0 |
| 26 pxor xmm1,xmm1 |
| 25 movups XMMWORD[rdx],xmm2 | 27 movups XMMWORD[rdx],xmm2 |
| 28 pxor xmm2,xmm2 |
| 26 DB 0F3h,0C3h ;repret | 29 DB 0F3h,0C3h ;repret |
| 27 | 30 |
| 28 | 31 |
| 29 global aesni_decrypt | 32 global aesni_decrypt |
| 30 | 33 |
| 31 ALIGN 16 | 34 ALIGN 16 |
| 32 aesni_decrypt: | 35 aesni_decrypt: |
| 33 movups xmm2,XMMWORD[rcx] | 36 movups xmm2,XMMWORD[rcx] |
| 34 mov eax,DWORD[240+r8] | 37 mov eax,DWORD[240+r8] |
| 35 movups xmm0,XMMWORD[r8] | 38 movups xmm0,XMMWORD[r8] |
| 36 movups xmm1,XMMWORD[16+r8] | 39 movups xmm1,XMMWORD[16+r8] |
| 37 lea r8,[32+r8] | 40 lea r8,[32+r8] |
| 38 xorps xmm2,xmm0 | 41 xorps xmm2,xmm0 |
| 39 $L$oop_dec1_2: | 42 $L$oop_dec1_2: |
| 40 DB 102,15,56,222,209 | 43 DB 102,15,56,222,209 |
| 41 dec eax | 44 dec eax |
| 42 movups xmm1,XMMWORD[r8] | 45 movups xmm1,XMMWORD[r8] |
| 43 lea r8,[16+r8] | 46 lea r8,[16+r8] |
| 44 jnz NEAR $L$oop_dec1_2 | 47 jnz NEAR $L$oop_dec1_2 |
| 45 DB 102,15,56,223,209 | 48 DB 102,15,56,223,209 |
| 49 pxor xmm0,xmm0 |
| 50 pxor xmm1,xmm1 |
| 46 movups XMMWORD[rdx],xmm2 | 51 movups XMMWORD[rdx],xmm2 |
| 52 pxor xmm2,xmm2 |
| 47 DB 0F3h,0C3h ;repret | 53 DB 0F3h,0C3h ;repret |
| 48 | 54 |
| 49 | 55 |
| 50 ALIGN 16 | 56 ALIGN 16 |
| 51 _aesni_encrypt2: | 57 _aesni_encrypt2: |
| 52 movups xmm0,XMMWORD[rcx] | 58 movups xmm0,XMMWORD[rcx] |
| 53 shl eax,4 | 59 shl eax,4 |
| 54 movups xmm1,XMMWORD[16+rcx] | 60 movups xmm1,XMMWORD[16+rcx] |
| 55 xorps xmm2,xmm0 | 61 xorps xmm2,xmm0 |
| 56 xorps xmm3,xmm0 | 62 xorps xmm3,xmm0 |
| (...skipping 205 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 262 pxor xmm3,xmm0 | 268 pxor xmm3,xmm0 |
| 263 pxor xmm4,xmm0 | 269 pxor xmm4,xmm0 |
| 264 DB 102,15,56,220,209 | 270 DB 102,15,56,220,209 |
| 265 lea rcx,[32+rax*1+rcx] | 271 lea rcx,[32+rax*1+rcx] |
| 266 neg rax | 272 neg rax |
| 267 DB 102,15,56,220,217 | 273 DB 102,15,56,220,217 |
| 268 pxor xmm5,xmm0 | 274 pxor xmm5,xmm0 |
| 269 pxor xmm6,xmm0 | 275 pxor xmm6,xmm0 |
| 270 DB 102,15,56,220,225 | 276 DB 102,15,56,220,225 |
| 271 pxor xmm7,xmm0 | 277 pxor xmm7,xmm0 |
| 278 movups xmm0,XMMWORD[rax*1+rcx] |
| 272 add rax,16 | 279 add rax,16 |
| 273 DB 102,15,56,220,233 | |
| 274 DB 102,15,56,220,241 | |
| 275 DB 102,15,56,220,249 | |
| 276 movups xmm0,XMMWORD[((-16))+rax*1+rcx] | |
| 277 jmp NEAR $L$enc_loop6_enter | 280 jmp NEAR $L$enc_loop6_enter |
| 278 ALIGN 16 | 281 ALIGN 16 |
| 279 $L$enc_loop6: | 282 $L$enc_loop6: |
| 280 DB 102,15,56,220,209 | 283 DB 102,15,56,220,209 |
| 281 DB 102,15,56,220,217 | 284 DB 102,15,56,220,217 |
| 282 DB 102,15,56,220,225 | 285 DB 102,15,56,220,225 |
| 286 $L$enc_loop6_enter: |
| 283 DB 102,15,56,220,233 | 287 DB 102,15,56,220,233 |
| 284 DB 102,15,56,220,241 | 288 DB 102,15,56,220,241 |
| 285 DB 102,15,56,220,249 | 289 DB 102,15,56,220,249 |
| 286 $L$enc_loop6_enter: | |
| 287 movups xmm1,XMMWORD[rax*1+rcx] | 290 movups xmm1,XMMWORD[rax*1+rcx] |
| 288 add rax,32 | 291 add rax,32 |
| 289 DB 102,15,56,220,208 | 292 DB 102,15,56,220,208 |
| 290 DB 102,15,56,220,216 | 293 DB 102,15,56,220,216 |
| 291 DB 102,15,56,220,224 | 294 DB 102,15,56,220,224 |
| 292 DB 102,15,56,220,232 | 295 DB 102,15,56,220,232 |
| 293 DB 102,15,56,220,240 | 296 DB 102,15,56,220,240 |
| 294 DB 102,15,56,220,248 | 297 DB 102,15,56,220,248 |
| 295 movups xmm0,XMMWORD[((-16))+rax*1+rcx] | 298 movups xmm0,XMMWORD[((-16))+rax*1+rcx] |
| 296 jnz NEAR $L$enc_loop6 | 299 jnz NEAR $L$enc_loop6 |
| (...skipping 22 matching lines...) Expand all Loading... |
| 319 pxor xmm3,xmm0 | 322 pxor xmm3,xmm0 |
| 320 pxor xmm4,xmm0 | 323 pxor xmm4,xmm0 |
| 321 DB 102,15,56,222,209 | 324 DB 102,15,56,222,209 |
| 322 lea rcx,[32+rax*1+rcx] | 325 lea rcx,[32+rax*1+rcx] |
| 323 neg rax | 326 neg rax |
| 324 DB 102,15,56,222,217 | 327 DB 102,15,56,222,217 |
| 325 pxor xmm5,xmm0 | 328 pxor xmm5,xmm0 |
| 326 pxor xmm6,xmm0 | 329 pxor xmm6,xmm0 |
| 327 DB 102,15,56,222,225 | 330 DB 102,15,56,222,225 |
| 328 pxor xmm7,xmm0 | 331 pxor xmm7,xmm0 |
| 332 movups xmm0,XMMWORD[rax*1+rcx] |
| 329 add rax,16 | 333 add rax,16 |
| 330 DB 102,15,56,222,233 | |
| 331 DB 102,15,56,222,241 | |
| 332 DB 102,15,56,222,249 | |
| 333 movups xmm0,XMMWORD[((-16))+rax*1+rcx] | |
| 334 jmp NEAR $L$dec_loop6_enter | 334 jmp NEAR $L$dec_loop6_enter |
| 335 ALIGN 16 | 335 ALIGN 16 |
| 336 $L$dec_loop6: | 336 $L$dec_loop6: |
| 337 DB 102,15,56,222,209 | 337 DB 102,15,56,222,209 |
| 338 DB 102,15,56,222,217 | 338 DB 102,15,56,222,217 |
| 339 DB 102,15,56,222,225 | 339 DB 102,15,56,222,225 |
| 340 $L$dec_loop6_enter: |
| 340 DB 102,15,56,222,233 | 341 DB 102,15,56,222,233 |
| 341 DB 102,15,56,222,241 | 342 DB 102,15,56,222,241 |
| 342 DB 102,15,56,222,249 | 343 DB 102,15,56,222,249 |
| 343 $L$dec_loop6_enter: | |
| 344 movups xmm1,XMMWORD[rax*1+rcx] | 344 movups xmm1,XMMWORD[rax*1+rcx] |
| 345 add rax,32 | 345 add rax,32 |
| 346 DB 102,15,56,222,208 | 346 DB 102,15,56,222,208 |
| 347 DB 102,15,56,222,216 | 347 DB 102,15,56,222,216 |
| 348 DB 102,15,56,222,224 | 348 DB 102,15,56,222,224 |
| 349 DB 102,15,56,222,232 | 349 DB 102,15,56,222,232 |
| 350 DB 102,15,56,222,240 | 350 DB 102,15,56,222,240 |
| 351 DB 102,15,56,222,248 | 351 DB 102,15,56,222,248 |
| 352 movups xmm0,XMMWORD[((-16))+rax*1+rcx] | 352 movups xmm0,XMMWORD[((-16))+rax*1+rcx] |
| 353 jnz NEAR $L$dec_loop6 | 353 jnz NEAR $L$dec_loop6 |
| (...skipping 19 matching lines...) Expand all Loading... |
| 373 shl eax,4 | 373 shl eax,4 |
| 374 movups xmm1,XMMWORD[16+rcx] | 374 movups xmm1,XMMWORD[16+rcx] |
| 375 xorps xmm2,xmm0 | 375 xorps xmm2,xmm0 |
| 376 xorps xmm3,xmm0 | 376 xorps xmm3,xmm0 |
| 377 pxor xmm4,xmm0 | 377 pxor xmm4,xmm0 |
| 378 pxor xmm5,xmm0 | 378 pxor xmm5,xmm0 |
| 379 pxor xmm6,xmm0 | 379 pxor xmm6,xmm0 |
| 380 lea rcx,[32+rax*1+rcx] | 380 lea rcx,[32+rax*1+rcx] |
| 381 neg rax | 381 neg rax |
| 382 DB 102,15,56,220,209 | 382 DB 102,15,56,220,209 |
| 383 pxor xmm7,xmm0 |
| 384 pxor xmm8,xmm0 |
| 385 DB 102,15,56,220,217 |
| 386 pxor xmm9,xmm0 |
| 387 movups xmm0,XMMWORD[rax*1+rcx] |
| 383 add rax,16 | 388 add rax,16 |
| 384 » pxor» xmm7,xmm0 | 389 » jmp» NEAR $L$enc_loop8_inner |
| 385 DB» 102,15,56,220,217 | |
| 386 » pxor» xmm8,xmm0 | |
| 387 » pxor» xmm9,xmm0 | |
| 388 DB» 102,15,56,220,225 | |
| 389 DB» 102,15,56,220,233 | |
| 390 DB» 102,15,56,220,241 | |
| 391 DB» 102,15,56,220,249 | |
| 392 DB» 102,68,15,56,220,193 | |
| 393 DB» 102,68,15,56,220,201 | |
| 394 » movups» xmm0,XMMWORD[((-16))+rax*1+rcx] | |
| 395 » jmp» NEAR $L$enc_loop8_enter | |
| 396 ALIGN 16 | 390 ALIGN 16 |
| 397 $L$enc_loop8: | 391 $L$enc_loop8: |
| 398 DB 102,15,56,220,209 | 392 DB 102,15,56,220,209 |
| 399 DB 102,15,56,220,217 | 393 DB 102,15,56,220,217 |
| 394 $L$enc_loop8_inner: |
| 400 DB 102,15,56,220,225 | 395 DB 102,15,56,220,225 |
| 401 DB 102,15,56,220,233 | 396 DB 102,15,56,220,233 |
| 402 DB 102,15,56,220,241 | 397 DB 102,15,56,220,241 |
| 403 DB 102,15,56,220,249 | 398 DB 102,15,56,220,249 |
| 404 DB 102,68,15,56,220,193 | 399 DB 102,68,15,56,220,193 |
| 405 DB 102,68,15,56,220,201 | 400 DB 102,68,15,56,220,201 |
| 406 $L$enc_loop8_enter: | 401 $L$enc_loop8_enter: |
| 407 movups xmm1,XMMWORD[rax*1+rcx] | 402 movups xmm1,XMMWORD[rax*1+rcx] |
| 408 add rax,32 | 403 add rax,32 |
| 409 DB 102,15,56,220,208 | 404 DB 102,15,56,220,208 |
| (...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 442 shl eax,4 | 437 shl eax,4 |
| 443 movups xmm1,XMMWORD[16+rcx] | 438 movups xmm1,XMMWORD[16+rcx] |
| 444 xorps xmm2,xmm0 | 439 xorps xmm2,xmm0 |
| 445 xorps xmm3,xmm0 | 440 xorps xmm3,xmm0 |
| 446 pxor xmm4,xmm0 | 441 pxor xmm4,xmm0 |
| 447 pxor xmm5,xmm0 | 442 pxor xmm5,xmm0 |
| 448 pxor xmm6,xmm0 | 443 pxor xmm6,xmm0 |
| 449 lea rcx,[32+rax*1+rcx] | 444 lea rcx,[32+rax*1+rcx] |
| 450 neg rax | 445 neg rax |
| 451 DB 102,15,56,222,209 | 446 DB 102,15,56,222,209 |
| 447 pxor xmm7,xmm0 |
| 448 pxor xmm8,xmm0 |
| 449 DB 102,15,56,222,217 |
| 450 pxor xmm9,xmm0 |
| 451 movups xmm0,XMMWORD[rax*1+rcx] |
| 452 add rax,16 | 452 add rax,16 |
| 453 » pxor» xmm7,xmm0 | 453 » jmp» NEAR $L$dec_loop8_inner |
| 454 DB» 102,15,56,222,217 | |
| 455 » pxor» xmm8,xmm0 | |
| 456 » pxor» xmm9,xmm0 | |
| 457 DB» 102,15,56,222,225 | |
| 458 DB» 102,15,56,222,233 | |
| 459 DB» 102,15,56,222,241 | |
| 460 DB» 102,15,56,222,249 | |
| 461 DB» 102,68,15,56,222,193 | |
| 462 DB» 102,68,15,56,222,201 | |
| 463 » movups» xmm0,XMMWORD[((-16))+rax*1+rcx] | |
| 464 » jmp» NEAR $L$dec_loop8_enter | |
| 465 ALIGN 16 | 454 ALIGN 16 |
| 466 $L$dec_loop8: | 455 $L$dec_loop8: |
| 467 DB 102,15,56,222,209 | 456 DB 102,15,56,222,209 |
| 468 DB 102,15,56,222,217 | 457 DB 102,15,56,222,217 |
| 458 $L$dec_loop8_inner: |
| 469 DB 102,15,56,222,225 | 459 DB 102,15,56,222,225 |
| 470 DB 102,15,56,222,233 | 460 DB 102,15,56,222,233 |
| 471 DB 102,15,56,222,241 | 461 DB 102,15,56,222,241 |
| 472 DB 102,15,56,222,249 | 462 DB 102,15,56,222,249 |
| 473 DB 102,68,15,56,222,193 | 463 DB 102,68,15,56,222,193 |
| 474 DB 102,68,15,56,222,201 | 464 DB 102,68,15,56,222,201 |
| 475 $L$dec_loop8_enter: | 465 $L$dec_loop8_enter: |
| 476 movups xmm1,XMMWORD[rax*1+rcx] | 466 movups xmm1,XMMWORD[rax*1+rcx] |
| 477 add rax,32 | 467 add rax,32 |
| 478 DB 102,15,56,222,208 | 468 DB 102,15,56,222,208 |
| (...skipping 123 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 602 cmp rdx,0x40 | 592 cmp rdx,0x40 |
| 603 jb NEAR $L$ecb_enc_three | 593 jb NEAR $L$ecb_enc_three |
| 604 movups xmm5,XMMWORD[48+rdi] | 594 movups xmm5,XMMWORD[48+rdi] |
| 605 je NEAR $L$ecb_enc_four | 595 je NEAR $L$ecb_enc_four |
| 606 movups xmm6,XMMWORD[64+rdi] | 596 movups xmm6,XMMWORD[64+rdi] |
| 607 cmp rdx,0x60 | 597 cmp rdx,0x60 |
| 608 jb NEAR $L$ecb_enc_five | 598 jb NEAR $L$ecb_enc_five |
| 609 movups xmm7,XMMWORD[80+rdi] | 599 movups xmm7,XMMWORD[80+rdi] |
| 610 je NEAR $L$ecb_enc_six | 600 je NEAR $L$ecb_enc_six |
| 611 movdqu xmm8,XMMWORD[96+rdi] | 601 movdqu xmm8,XMMWORD[96+rdi] |
| 602 xorps xmm9,xmm9 |
| 612 call _aesni_encrypt8 | 603 call _aesni_encrypt8 |
| 613 movups XMMWORD[rsi],xmm2 | 604 movups XMMWORD[rsi],xmm2 |
| 614 movups XMMWORD[16+rsi],xmm3 | 605 movups XMMWORD[16+rsi],xmm3 |
| 615 movups XMMWORD[32+rsi],xmm4 | 606 movups XMMWORD[32+rsi],xmm4 |
| 616 movups XMMWORD[48+rsi],xmm5 | 607 movups XMMWORD[48+rsi],xmm5 |
| 617 movups XMMWORD[64+rsi],xmm6 | 608 movups XMMWORD[64+rsi],xmm6 |
| 618 movups XMMWORD[80+rsi],xmm7 | 609 movups XMMWORD[80+rsi],xmm7 |
| 619 movups XMMWORD[96+rsi],xmm8 | 610 movups XMMWORD[96+rsi],xmm8 |
| 620 jmp NEAR $L$ecb_ret | 611 jmp NEAR $L$ecb_ret |
| 621 ALIGN 16 | 612 ALIGN 16 |
| (...skipping 93 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 715 lea rdi,[128+rdi] | 706 lea rdi,[128+rdi] |
| 716 $L$ecb_dec_loop8_enter: | 707 $L$ecb_dec_loop8_enter: |
| 717 | 708 |
| 718 call _aesni_decrypt8 | 709 call _aesni_decrypt8 |
| 719 | 710 |
| 720 movups xmm0,XMMWORD[r11] | 711 movups xmm0,XMMWORD[r11] |
| 721 sub rdx,0x80 | 712 sub rdx,0x80 |
| 722 jnc NEAR $L$ecb_dec_loop8 | 713 jnc NEAR $L$ecb_dec_loop8 |
| 723 | 714 |
| 724 movups XMMWORD[rsi],xmm2 | 715 movups XMMWORD[rsi],xmm2 |
| 716 pxor xmm2,xmm2 |
| 725 mov rcx,r11 | 717 mov rcx,r11 |
| 726 movups XMMWORD[16+rsi],xmm3 | 718 movups XMMWORD[16+rsi],xmm3 |
| 719 pxor xmm3,xmm3 |
| 727 mov eax,r10d | 720 mov eax,r10d |
| 728 movups XMMWORD[32+rsi],xmm4 | 721 movups XMMWORD[32+rsi],xmm4 |
| 722 pxor xmm4,xmm4 |
| 729 movups XMMWORD[48+rsi],xmm5 | 723 movups XMMWORD[48+rsi],xmm5 |
| 724 pxor xmm5,xmm5 |
| 730 movups XMMWORD[64+rsi],xmm6 | 725 movups XMMWORD[64+rsi],xmm6 |
| 726 pxor xmm6,xmm6 |
| 731 movups XMMWORD[80+rsi],xmm7 | 727 movups XMMWORD[80+rsi],xmm7 |
| 728 pxor xmm7,xmm7 |
| 732 movups XMMWORD[96+rsi],xmm8 | 729 movups XMMWORD[96+rsi],xmm8 |
| 730 pxor xmm8,xmm8 |
| 733 movups XMMWORD[112+rsi],xmm9 | 731 movups XMMWORD[112+rsi],xmm9 |
| 732 pxor xmm9,xmm9 |
| 734 lea rsi,[128+rsi] | 733 lea rsi,[128+rsi] |
| 735 add rdx,0x80 | 734 add rdx,0x80 |
| 736 jz NEAR $L$ecb_ret | 735 jz NEAR $L$ecb_ret |
| 737 | 736 |
| 738 $L$ecb_dec_tail: | 737 $L$ecb_dec_tail: |
| 739 movups xmm2,XMMWORD[rdi] | 738 movups xmm2,XMMWORD[rdi] |
| 740 cmp rdx,0x20 | 739 cmp rdx,0x20 |
| 741 jb NEAR $L$ecb_dec_one | 740 jb NEAR $L$ecb_dec_one |
| 742 movups xmm3,XMMWORD[16+rdi] | 741 movups xmm3,XMMWORD[16+rdi] |
| 743 je NEAR $L$ecb_dec_two | 742 je NEAR $L$ecb_dec_two |
| 744 movups xmm4,XMMWORD[32+rdi] | 743 movups xmm4,XMMWORD[32+rdi] |
| 745 cmp rdx,0x40 | 744 cmp rdx,0x40 |
| 746 jb NEAR $L$ecb_dec_three | 745 jb NEAR $L$ecb_dec_three |
| 747 movups xmm5,XMMWORD[48+rdi] | 746 movups xmm5,XMMWORD[48+rdi] |
| 748 je NEAR $L$ecb_dec_four | 747 je NEAR $L$ecb_dec_four |
| 749 movups xmm6,XMMWORD[64+rdi] | 748 movups xmm6,XMMWORD[64+rdi] |
| 750 cmp rdx,0x60 | 749 cmp rdx,0x60 |
| 751 jb NEAR $L$ecb_dec_five | 750 jb NEAR $L$ecb_dec_five |
| 752 movups xmm7,XMMWORD[80+rdi] | 751 movups xmm7,XMMWORD[80+rdi] |
| 753 je NEAR $L$ecb_dec_six | 752 je NEAR $L$ecb_dec_six |
| 754 movups xmm8,XMMWORD[96+rdi] | 753 movups xmm8,XMMWORD[96+rdi] |
| 755 movups xmm0,XMMWORD[rcx] | 754 movups xmm0,XMMWORD[rcx] |
| 755 xorps xmm9,xmm9 |
| 756 call _aesni_decrypt8 | 756 call _aesni_decrypt8 |
| 757 movups XMMWORD[rsi],xmm2 | 757 movups XMMWORD[rsi],xmm2 |
| 758 pxor xmm2,xmm2 |
| 758 movups XMMWORD[16+rsi],xmm3 | 759 movups XMMWORD[16+rsi],xmm3 |
| 760 pxor xmm3,xmm3 |
| 759 movups XMMWORD[32+rsi],xmm4 | 761 movups XMMWORD[32+rsi],xmm4 |
| 762 pxor xmm4,xmm4 |
| 760 movups XMMWORD[48+rsi],xmm5 | 763 movups XMMWORD[48+rsi],xmm5 |
| 764 pxor xmm5,xmm5 |
| 761 movups XMMWORD[64+rsi],xmm6 | 765 movups XMMWORD[64+rsi],xmm6 |
| 766 pxor xmm6,xmm6 |
| 762 movups XMMWORD[80+rsi],xmm7 | 767 movups XMMWORD[80+rsi],xmm7 |
| 768 pxor xmm7,xmm7 |
| 763 movups XMMWORD[96+rsi],xmm8 | 769 movups XMMWORD[96+rsi],xmm8 |
| 770 pxor xmm8,xmm8 |
| 771 pxor xmm9,xmm9 |
| 764 jmp NEAR $L$ecb_ret | 772 jmp NEAR $L$ecb_ret |
| 765 ALIGN 16 | 773 ALIGN 16 |
| 766 $L$ecb_dec_one: | 774 $L$ecb_dec_one: |
| 767 movups xmm0,XMMWORD[rcx] | 775 movups xmm0,XMMWORD[rcx] |
| 768 movups xmm1,XMMWORD[16+rcx] | 776 movups xmm1,XMMWORD[16+rcx] |
| 769 lea rcx,[32+rcx] | 777 lea rcx,[32+rcx] |
| 770 xorps xmm2,xmm0 | 778 xorps xmm2,xmm0 |
| 771 $L$oop_dec1_4: | 779 $L$oop_dec1_4: |
| 772 DB 102,15,56,222,209 | 780 DB 102,15,56,222,209 |
| 773 dec eax | 781 dec eax |
| 774 movups xmm1,XMMWORD[rcx] | 782 movups xmm1,XMMWORD[rcx] |
| 775 lea rcx,[16+rcx] | 783 lea rcx,[16+rcx] |
| 776 jnz NEAR $L$oop_dec1_4 | 784 jnz NEAR $L$oop_dec1_4 |
| 777 DB 102,15,56,223,209 | 785 DB 102,15,56,223,209 |
| 778 movups XMMWORD[rsi],xmm2 | 786 movups XMMWORD[rsi],xmm2 |
| 787 pxor xmm2,xmm2 |
| 779 jmp NEAR $L$ecb_ret | 788 jmp NEAR $L$ecb_ret |
| 780 ALIGN 16 | 789 ALIGN 16 |
| 781 $L$ecb_dec_two: | 790 $L$ecb_dec_two: |
| 782 call _aesni_decrypt2 | 791 call _aesni_decrypt2 |
| 783 movups XMMWORD[rsi],xmm2 | 792 movups XMMWORD[rsi],xmm2 |
| 793 pxor xmm2,xmm2 |
| 784 movups XMMWORD[16+rsi],xmm3 | 794 movups XMMWORD[16+rsi],xmm3 |
| 795 pxor xmm3,xmm3 |
| 785 jmp NEAR $L$ecb_ret | 796 jmp NEAR $L$ecb_ret |
| 786 ALIGN 16 | 797 ALIGN 16 |
| 787 $L$ecb_dec_three: | 798 $L$ecb_dec_three: |
| 788 call _aesni_decrypt3 | 799 call _aesni_decrypt3 |
| 789 movups XMMWORD[rsi],xmm2 | 800 movups XMMWORD[rsi],xmm2 |
| 801 pxor xmm2,xmm2 |
| 790 movups XMMWORD[16+rsi],xmm3 | 802 movups XMMWORD[16+rsi],xmm3 |
| 803 pxor xmm3,xmm3 |
| 791 movups XMMWORD[32+rsi],xmm4 | 804 movups XMMWORD[32+rsi],xmm4 |
| 805 pxor xmm4,xmm4 |
| 792 jmp NEAR $L$ecb_ret | 806 jmp NEAR $L$ecb_ret |
| 793 ALIGN 16 | 807 ALIGN 16 |
| 794 $L$ecb_dec_four: | 808 $L$ecb_dec_four: |
| 795 call _aesni_decrypt4 | 809 call _aesni_decrypt4 |
| 796 movups XMMWORD[rsi],xmm2 | 810 movups XMMWORD[rsi],xmm2 |
| 811 pxor xmm2,xmm2 |
| 797 movups XMMWORD[16+rsi],xmm3 | 812 movups XMMWORD[16+rsi],xmm3 |
| 813 pxor xmm3,xmm3 |
| 798 movups XMMWORD[32+rsi],xmm4 | 814 movups XMMWORD[32+rsi],xmm4 |
| 815 pxor xmm4,xmm4 |
| 799 movups XMMWORD[48+rsi],xmm5 | 816 movups XMMWORD[48+rsi],xmm5 |
| 817 pxor xmm5,xmm5 |
| 800 jmp NEAR $L$ecb_ret | 818 jmp NEAR $L$ecb_ret |
| 801 ALIGN 16 | 819 ALIGN 16 |
| 802 $L$ecb_dec_five: | 820 $L$ecb_dec_five: |
| 803 xorps xmm7,xmm7 | 821 xorps xmm7,xmm7 |
| 804 call _aesni_decrypt6 | 822 call _aesni_decrypt6 |
| 805 movups XMMWORD[rsi],xmm2 | 823 movups XMMWORD[rsi],xmm2 |
| 824 pxor xmm2,xmm2 |
| 806 movups XMMWORD[16+rsi],xmm3 | 825 movups XMMWORD[16+rsi],xmm3 |
| 826 pxor xmm3,xmm3 |
| 807 movups XMMWORD[32+rsi],xmm4 | 827 movups XMMWORD[32+rsi],xmm4 |
| 828 pxor xmm4,xmm4 |
| 808 movups XMMWORD[48+rsi],xmm5 | 829 movups XMMWORD[48+rsi],xmm5 |
| 830 pxor xmm5,xmm5 |
| 809 movups XMMWORD[64+rsi],xmm6 | 831 movups XMMWORD[64+rsi],xmm6 |
| 832 pxor xmm6,xmm6 |
| 833 pxor xmm7,xmm7 |
| 810 jmp NEAR $L$ecb_ret | 834 jmp NEAR $L$ecb_ret |
| 811 ALIGN 16 | 835 ALIGN 16 |
| 812 $L$ecb_dec_six: | 836 $L$ecb_dec_six: |
| 813 call _aesni_decrypt6 | 837 call _aesni_decrypt6 |
| 814 movups XMMWORD[rsi],xmm2 | 838 movups XMMWORD[rsi],xmm2 |
| 839 pxor xmm2,xmm2 |
| 815 movups XMMWORD[16+rsi],xmm3 | 840 movups XMMWORD[16+rsi],xmm3 |
| 841 pxor xmm3,xmm3 |
| 816 movups XMMWORD[32+rsi],xmm4 | 842 movups XMMWORD[32+rsi],xmm4 |
| 843 pxor xmm4,xmm4 |
| 817 movups XMMWORD[48+rsi],xmm5 | 844 movups XMMWORD[48+rsi],xmm5 |
| 845 pxor xmm5,xmm5 |
| 818 movups XMMWORD[64+rsi],xmm6 | 846 movups XMMWORD[64+rsi],xmm6 |
| 847 pxor xmm6,xmm6 |
| 819 movups XMMWORD[80+rsi],xmm7 | 848 movups XMMWORD[80+rsi],xmm7 |
| 849 pxor xmm7,xmm7 |
| 820 | 850 |
| 821 $L$ecb_ret: | 851 $L$ecb_ret: |
| 852 xorps xmm0,xmm0 |
| 853 pxor xmm1,xmm1 |
| 822 movaps xmm6,XMMWORD[rsp] | 854 movaps xmm6,XMMWORD[rsp] |
| 855 movaps XMMWORD[rsp],xmm0 |
| 823 movaps xmm7,XMMWORD[16+rsp] | 856 movaps xmm7,XMMWORD[16+rsp] |
| 857 movaps XMMWORD[16+rsp],xmm0 |
| 824 movaps xmm8,XMMWORD[32+rsp] | 858 movaps xmm8,XMMWORD[32+rsp] |
| 859 movaps XMMWORD[32+rsp],xmm0 |
| 825 movaps xmm9,XMMWORD[48+rsp] | 860 movaps xmm9,XMMWORD[48+rsp] |
| 861 movaps XMMWORD[48+rsp],xmm0 |
| 826 lea rsp,[88+rsp] | 862 lea rsp,[88+rsp] |
| 827 $L$ecb_enc_ret: | 863 $L$ecb_enc_ret: |
| 828 mov rdi,QWORD[8+rsp] ;WIN64 epilogue | 864 mov rdi,QWORD[8+rsp] ;WIN64 epilogue |
| 829 mov rsi,QWORD[16+rsp] | 865 mov rsi,QWORD[16+rsp] |
| 830 DB 0F3h,0C3h ;repret | 866 DB 0F3h,0C3h ;repret |
| 831 $L$SEH_end_aesni_ecb_encrypt: | 867 $L$SEH_end_aesni_ecb_encrypt: |
| 832 global aesni_ccm64_encrypt_blocks | 868 global aesni_ccm64_encrypt_blocks |
| 833 | 869 |
| 834 ALIGN 16 | 870 ALIGN 16 |
| 835 aesni_ccm64_encrypt_blocks: | 871 aesni_ccm64_encrypt_blocks: |
| (...skipping 58 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 894 DB 102,15,56,221,216 | 930 DB 102,15,56,221,216 |
| 895 | 931 |
| 896 lea rdi,[16+rdi] | 932 lea rdi,[16+rdi] |
| 897 xorps xmm8,xmm2 | 933 xorps xmm8,xmm2 |
| 898 movdqa xmm2,xmm6 | 934 movdqa xmm2,xmm6 |
| 899 movups XMMWORD[rsi],xmm8 | 935 movups XMMWORD[rsi],xmm8 |
| 900 DB 102,15,56,0,215 | 936 DB 102,15,56,0,215 |
| 901 lea rsi,[16+rsi] | 937 lea rsi,[16+rsi] |
| 902 jnz NEAR $L$ccm64_enc_outer | 938 jnz NEAR $L$ccm64_enc_outer |
| 903 | 939 |
| 940 pxor xmm0,xmm0 |
| 941 pxor xmm1,xmm1 |
| 942 pxor xmm2,xmm2 |
| 904 movups XMMWORD[r9],xmm3 | 943 movups XMMWORD[r9],xmm3 |
| 944 pxor xmm3,xmm3 |
| 945 pxor xmm8,xmm8 |
| 946 pxor xmm6,xmm6 |
| 905 movaps xmm6,XMMWORD[rsp] | 947 movaps xmm6,XMMWORD[rsp] |
| 948 movaps XMMWORD[rsp],xmm0 |
| 906 movaps xmm7,XMMWORD[16+rsp] | 949 movaps xmm7,XMMWORD[16+rsp] |
| 950 movaps XMMWORD[16+rsp],xmm0 |
| 907 movaps xmm8,XMMWORD[32+rsp] | 951 movaps xmm8,XMMWORD[32+rsp] |
| 952 movaps XMMWORD[32+rsp],xmm0 |
| 908 movaps xmm9,XMMWORD[48+rsp] | 953 movaps xmm9,XMMWORD[48+rsp] |
| 954 movaps XMMWORD[48+rsp],xmm0 |
| 909 lea rsp,[88+rsp] | 955 lea rsp,[88+rsp] |
| 910 $L$ccm64_enc_ret: | 956 $L$ccm64_enc_ret: |
| 911 mov rdi,QWORD[8+rsp] ;WIN64 epilogue | 957 mov rdi,QWORD[8+rsp] ;WIN64 epilogue |
| 912 mov rsi,QWORD[16+rsp] | 958 mov rsi,QWORD[16+rsp] |
| 913 DB 0F3h,0C3h ;repret | 959 DB 0F3h,0C3h ;repret |
| 914 $L$SEH_end_aesni_ccm64_encrypt_blocks: | 960 $L$SEH_end_aesni_ccm64_encrypt_blocks: |
| 915 global aesni_ccm64_decrypt_blocks | 961 global aesni_ccm64_decrypt_blocks |
| 916 | 962 |
| 917 ALIGN 16 | 963 ALIGN 16 |
| 918 aesni_ccm64_decrypt_blocks: | 964 aesni_ccm64_decrypt_blocks: |
| (...skipping 92 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1011 xorps xmm8,xmm0 | 1057 xorps xmm8,xmm0 |
| 1012 lea r11,[32+r11] | 1058 lea r11,[32+r11] |
| 1013 xorps xmm3,xmm8 | 1059 xorps xmm3,xmm8 |
| 1014 $L$oop_enc1_6: | 1060 $L$oop_enc1_6: |
| 1015 DB 102,15,56,220,217 | 1061 DB 102,15,56,220,217 |
| 1016 dec eax | 1062 dec eax |
| 1017 movups xmm1,XMMWORD[r11] | 1063 movups xmm1,XMMWORD[r11] |
| 1018 lea r11,[16+r11] | 1064 lea r11,[16+r11] |
| 1019 jnz NEAR $L$oop_enc1_6 | 1065 jnz NEAR $L$oop_enc1_6 |
| 1020 DB 102,15,56,221,217 | 1066 DB 102,15,56,221,217 |
| 1067 pxor xmm0,xmm0 |
| 1068 pxor xmm1,xmm1 |
| 1069 pxor xmm2,xmm2 |
| 1021 movups XMMWORD[r9],xmm3 | 1070 movups XMMWORD[r9],xmm3 |
| 1071 pxor xmm3,xmm3 |
| 1072 pxor xmm8,xmm8 |
| 1073 pxor xmm6,xmm6 |
| 1022 movaps xmm6,XMMWORD[rsp] | 1074 movaps xmm6,XMMWORD[rsp] |
| 1075 movaps XMMWORD[rsp],xmm0 |
| 1023 movaps xmm7,XMMWORD[16+rsp] | 1076 movaps xmm7,XMMWORD[16+rsp] |
| 1077 movaps XMMWORD[16+rsp],xmm0 |
| 1024 movaps xmm8,XMMWORD[32+rsp] | 1078 movaps xmm8,XMMWORD[32+rsp] |
| 1079 movaps XMMWORD[32+rsp],xmm0 |
| 1025 movaps xmm9,XMMWORD[48+rsp] | 1080 movaps xmm9,XMMWORD[48+rsp] |
| 1081 movaps XMMWORD[48+rsp],xmm0 |
| 1026 lea rsp,[88+rsp] | 1082 lea rsp,[88+rsp] |
| 1027 $L$ccm64_dec_ret: | 1083 $L$ccm64_dec_ret: |
| 1028 mov rdi,QWORD[8+rsp] ;WIN64 epilogue | 1084 mov rdi,QWORD[8+rsp] ;WIN64 epilogue |
| 1029 mov rsi,QWORD[16+rsp] | 1085 mov rsi,QWORD[16+rsp] |
| 1030 DB 0F3h,0C3h ;repret | 1086 DB 0F3h,0C3h ;repret |
| 1031 $L$SEH_end_aesni_ccm64_decrypt_blocks: | 1087 $L$SEH_end_aesni_ccm64_decrypt_blocks: |
| 1032 global aesni_ctr32_encrypt_blocks | 1088 global aesni_ctr32_encrypt_blocks |
| 1033 | 1089 |
| 1034 ALIGN 16 | 1090 ALIGN 16 |
| 1035 aesni_ctr32_encrypt_blocks: | 1091 aesni_ctr32_encrypt_blocks: |
| 1036 mov QWORD[8+rsp],rdi ;WIN64 prologue | 1092 mov QWORD[8+rsp],rdi ;WIN64 prologue |
| 1037 mov QWORD[16+rsp],rsi | 1093 mov QWORD[16+rsp],rsi |
| 1038 mov rax,rsp | 1094 mov rax,rsp |
| 1039 $L$SEH_begin_aesni_ctr32_encrypt_blocks: | 1095 $L$SEH_begin_aesni_ctr32_encrypt_blocks: |
| 1040 mov rdi,rcx | 1096 mov rdi,rcx |
| 1041 mov rsi,rdx | 1097 mov rsi,rdx |
| 1042 mov rdx,r8 | 1098 mov rdx,r8 |
| 1043 mov rcx,r9 | 1099 mov rcx,r9 |
| 1044 mov r8,QWORD[40+rsp] | 1100 mov r8,QWORD[40+rsp] |
| 1045 | 1101 |
| 1046 | 1102 |
| 1103 cmp rdx,1 |
| 1104 jne NEAR $L$ctr32_bulk |
| 1105 |
| 1106 |
| 1107 |
| 1108 movups xmm2,XMMWORD[r8] |
| 1109 movups xmm3,XMMWORD[rdi] |
| 1110 mov edx,DWORD[240+rcx] |
| 1111 movups xmm0,XMMWORD[rcx] |
| 1112 movups xmm1,XMMWORD[16+rcx] |
| 1113 lea rcx,[32+rcx] |
| 1114 xorps xmm2,xmm0 |
| 1115 $L$oop_enc1_7: |
| 1116 DB 102,15,56,220,209 |
| 1117 dec edx |
| 1118 movups xmm1,XMMWORD[rcx] |
| 1119 lea rcx,[16+rcx] |
| 1120 jnz NEAR $L$oop_enc1_7 |
| 1121 DB 102,15,56,221,209 |
| 1122 pxor xmm0,xmm0 |
| 1123 pxor xmm1,xmm1 |
| 1124 xorps xmm2,xmm3 |
| 1125 pxor xmm3,xmm3 |
| 1126 movups XMMWORD[rsi],xmm2 |
| 1127 xorps xmm2,xmm2 |
| 1128 jmp NEAR $L$ctr32_epilogue |
| 1129 |
| 1130 ALIGN 16 |
| 1131 $L$ctr32_bulk: |
| 1047 lea rax,[rsp] | 1132 lea rax,[rsp] |
| 1048 push rbp | 1133 push rbp |
| 1049 sub rsp,288 | 1134 sub rsp,288 |
| 1050 and rsp,-16 | 1135 and rsp,-16 |
| 1051 movaps XMMWORD[(-168)+rax],xmm6 | 1136 movaps XMMWORD[(-168)+rax],xmm6 |
| 1052 movaps XMMWORD[(-152)+rax],xmm7 | 1137 movaps XMMWORD[(-152)+rax],xmm7 |
| 1053 movaps XMMWORD[(-136)+rax],xmm8 | 1138 movaps XMMWORD[(-136)+rax],xmm8 |
| 1054 movaps XMMWORD[(-120)+rax],xmm9 | 1139 movaps XMMWORD[(-120)+rax],xmm9 |
| 1055 movaps XMMWORD[(-104)+rax],xmm10 | 1140 movaps XMMWORD[(-104)+rax],xmm10 |
| 1056 movaps XMMWORD[(-88)+rax],xmm11 | 1141 movaps XMMWORD[(-88)+rax],xmm11 |
| 1057 movaps XMMWORD[(-72)+rax],xmm12 | 1142 movaps XMMWORD[(-72)+rax],xmm12 |
| 1058 movaps XMMWORD[(-56)+rax],xmm13 | 1143 movaps XMMWORD[(-56)+rax],xmm13 |
| 1059 movaps XMMWORD[(-40)+rax],xmm14 | 1144 movaps XMMWORD[(-40)+rax],xmm14 |
| 1060 movaps XMMWORD[(-24)+rax],xmm15 | 1145 movaps XMMWORD[(-24)+rax],xmm15 |
| 1061 $L$ctr32_body: | 1146 $L$ctr32_body: |
| 1062 lea rbp,[((-8))+rax] | 1147 lea rbp,[((-8))+rax] |
| 1063 | 1148 |
| 1064 » cmp» rdx,1 | 1149 |
| 1065 » je» NEAR $L$ctr32_one_shortcut | 1150 |
| 1066 | 1151 |
| 1067 movdqu xmm2,XMMWORD[r8] | 1152 movdqu xmm2,XMMWORD[r8] |
| 1068 movdqu xmm0,XMMWORD[rcx] | 1153 movdqu xmm0,XMMWORD[rcx] |
| 1069 mov r8d,DWORD[12+r8] | 1154 mov r8d,DWORD[12+r8] |
| 1070 pxor xmm2,xmm0 | 1155 pxor xmm2,xmm0 |
| 1071 mov r11d,DWORD[12+rcx] | 1156 mov r11d,DWORD[12+rcx] |
| 1072 movdqa XMMWORD[rsp],xmm2 | 1157 movdqa XMMWORD[rsp],xmm2 |
| 1073 bswap r8d | 1158 bswap r8d |
| 1074 movdqa xmm3,xmm2 | 1159 movdqa xmm3,xmm2 |
| 1075 movdqa xmm4,xmm2 | 1160 movdqa xmm4,xmm2 |
| (...skipping 370 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1446 lea rsi,[128+rsi] | 1531 lea rsi,[128+rsi] |
| 1447 | 1532 |
| 1448 sub rdx,8 | 1533 sub rdx,8 |
| 1449 jnc NEAR $L$ctr32_loop8 | 1534 jnc NEAR $L$ctr32_loop8 |
| 1450 | 1535 |
| 1451 add rdx,8 | 1536 add rdx,8 |
| 1452 jz NEAR $L$ctr32_done | 1537 jz NEAR $L$ctr32_done |
| 1453 lea rcx,[((-128))+rcx] | 1538 lea rcx,[((-128))+rcx] |
| 1454 | 1539 |
| 1455 $L$ctr32_tail: | 1540 $L$ctr32_tail: |
| 1541 |
| 1542 |
| 1456 lea rcx,[16+rcx] | 1543 lea rcx,[16+rcx] |
| 1457 cmp rdx,4 | 1544 cmp rdx,4 |
| 1458 jb NEAR $L$ctr32_loop3 | 1545 jb NEAR $L$ctr32_loop3 |
| 1459 je NEAR $L$ctr32_loop4 | 1546 je NEAR $L$ctr32_loop4 |
| 1460 | 1547 |
| 1548 |
| 1461 shl eax,4 | 1549 shl eax,4 |
| 1462 movdqa xmm8,XMMWORD[96+rsp] | 1550 movdqa xmm8,XMMWORD[96+rsp] |
| 1463 pxor xmm9,xmm9 | 1551 pxor xmm9,xmm9 |
| 1464 | 1552 |
| 1465 movups xmm0,XMMWORD[16+rcx] | 1553 movups xmm0,XMMWORD[16+rcx] |
| 1466 DB 102,15,56,220,209 | 1554 DB 102,15,56,220,209 |
| 1467 DB 102,15,56,220,217 | 1555 DB 102,15,56,220,217 |
| 1468 lea rcx,[((32-16))+rax*1+rcx] | 1556 lea rcx,[((32-16))+rax*1+rcx] |
| 1469 neg rax | 1557 neg rax |
| 1470 DB 102,15,56,220,225 | 1558 DB 102,15,56,220,225 |
| (...skipping 82 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1553 jb NEAR $L$ctr32_done | 1641 jb NEAR $L$ctr32_done |
| 1554 | 1642 |
| 1555 movups xmm11,XMMWORD[16+rdi] | 1643 movups xmm11,XMMWORD[16+rdi] |
| 1556 xorps xmm3,xmm11 | 1644 xorps xmm3,xmm11 |
| 1557 movups XMMWORD[16+rsi],xmm3 | 1645 movups XMMWORD[16+rsi],xmm3 |
| 1558 je NEAR $L$ctr32_done | 1646 je NEAR $L$ctr32_done |
| 1559 | 1647 |
| 1560 movups xmm12,XMMWORD[32+rdi] | 1648 movups xmm12,XMMWORD[32+rdi] |
| 1561 xorps xmm4,xmm12 | 1649 xorps xmm4,xmm12 |
| 1562 movups XMMWORD[32+rsi],xmm4 | 1650 movups XMMWORD[32+rsi],xmm4 |
| 1563 jmp NEAR $L$ctr32_done | |
| 1564 | 1651 |
| 1565 ALIGN 16 | |
| 1566 $L$ctr32_one_shortcut: | |
| 1567 movups xmm2,XMMWORD[r8] | |
| 1568 movups xmm10,XMMWORD[rdi] | |
| 1569 mov eax,DWORD[240+rcx] | |
| 1570 movups xmm0,XMMWORD[rcx] | |
| 1571 movups xmm1,XMMWORD[16+rcx] | |
| 1572 lea rcx,[32+rcx] | |
| 1573 xorps xmm2,xmm0 | |
| 1574 $L$oop_enc1_7: | |
| 1575 DB 102,15,56,220,209 | |
| 1576 dec eax | |
| 1577 movups xmm1,XMMWORD[rcx] | |
| 1578 lea rcx,[16+rcx] | |
| 1579 jnz NEAR $L$oop_enc1_7 | |
| 1580 DB 102,15,56,221,209 | |
| 1581 xorps xmm2,xmm10 | |
| 1582 movups XMMWORD[rsi],xmm2 | |
| 1583 jmp NEAR $L$ctr32_done | |
| 1584 | |
| 1585 ALIGN 16 | |
| 1586 $L$ctr32_done: | 1652 $L$ctr32_done: |
| 1653 xorps xmm0,xmm0 |
| 1654 xor r11d,r11d |
| 1655 pxor xmm1,xmm1 |
| 1656 pxor xmm2,xmm2 |
| 1657 pxor xmm3,xmm3 |
| 1658 pxor xmm4,xmm4 |
| 1659 pxor xmm5,xmm5 |
| 1587 movaps xmm6,XMMWORD[((-160))+rbp] | 1660 movaps xmm6,XMMWORD[((-160))+rbp] |
| 1661 movaps XMMWORD[(-160)+rbp],xmm0 |
| 1588 movaps xmm7,XMMWORD[((-144))+rbp] | 1662 movaps xmm7,XMMWORD[((-144))+rbp] |
| 1663 movaps XMMWORD[(-144)+rbp],xmm0 |
| 1589 movaps xmm8,XMMWORD[((-128))+rbp] | 1664 movaps xmm8,XMMWORD[((-128))+rbp] |
| 1665 movaps XMMWORD[(-128)+rbp],xmm0 |
| 1590 movaps xmm9,XMMWORD[((-112))+rbp] | 1666 movaps xmm9,XMMWORD[((-112))+rbp] |
| 1667 movaps XMMWORD[(-112)+rbp],xmm0 |
| 1591 movaps xmm10,XMMWORD[((-96))+rbp] | 1668 movaps xmm10,XMMWORD[((-96))+rbp] |
| 1669 movaps XMMWORD[(-96)+rbp],xmm0 |
| 1592 movaps xmm11,XMMWORD[((-80))+rbp] | 1670 movaps xmm11,XMMWORD[((-80))+rbp] |
| 1671 movaps XMMWORD[(-80)+rbp],xmm0 |
| 1593 movaps xmm12,XMMWORD[((-64))+rbp] | 1672 movaps xmm12,XMMWORD[((-64))+rbp] |
| 1673 movaps XMMWORD[(-64)+rbp],xmm0 |
| 1594 movaps xmm13,XMMWORD[((-48))+rbp] | 1674 movaps xmm13,XMMWORD[((-48))+rbp] |
| 1675 movaps XMMWORD[(-48)+rbp],xmm0 |
| 1595 movaps xmm14,XMMWORD[((-32))+rbp] | 1676 movaps xmm14,XMMWORD[((-32))+rbp] |
| 1677 movaps XMMWORD[(-32)+rbp],xmm0 |
| 1596 movaps xmm15,XMMWORD[((-16))+rbp] | 1678 movaps xmm15,XMMWORD[((-16))+rbp] |
| 1679 movaps XMMWORD[(-16)+rbp],xmm0 |
| 1680 movaps XMMWORD[rsp],xmm0 |
| 1681 movaps XMMWORD[16+rsp],xmm0 |
| 1682 movaps XMMWORD[32+rsp],xmm0 |
| 1683 movaps XMMWORD[48+rsp],xmm0 |
| 1684 movaps XMMWORD[64+rsp],xmm0 |
| 1685 movaps XMMWORD[80+rsp],xmm0 |
| 1686 movaps XMMWORD[96+rsp],xmm0 |
| 1687 movaps XMMWORD[112+rsp],xmm0 |
| 1597 lea rsp,[rbp] | 1688 lea rsp,[rbp] |
| 1598 pop rbp | 1689 pop rbp |
| 1599 $L$ctr32_epilogue: | 1690 $L$ctr32_epilogue: |
| 1600 mov rdi,QWORD[8+rsp] ;WIN64 epilogue | 1691 mov rdi,QWORD[8+rsp] ;WIN64 epilogue |
| 1601 mov rsi,QWORD[16+rsp] | 1692 mov rsi,QWORD[16+rsp] |
| 1602 DB 0F3h,0C3h ;repret | 1693 DB 0F3h,0C3h ;repret |
| 1603 $L$SEH_end_aesni_ctr32_encrypt_blocks: | 1694 $L$SEH_end_aesni_ctr32_encrypt_blocks: |
| 1604 global aesni_xts_encrypt | 1695 global aesni_xts_encrypt |
| 1605 | 1696 |
| 1606 ALIGN 16 | 1697 ALIGN 16 |
| (...skipping 275 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1882 movups XMMWORD[(-16)+rsi],xmm7 | 1973 movups XMMWORD[(-16)+rsi],xmm7 |
| 1883 sub rdx,16*6 | 1974 sub rdx,16*6 |
| 1884 jnc NEAR $L$xts_enc_grandloop | 1975 jnc NEAR $L$xts_enc_grandloop |
| 1885 | 1976 |
| 1886 mov eax,16+96 | 1977 mov eax,16+96 |
| 1887 sub eax,r10d | 1978 sub eax,r10d |
| 1888 mov rcx,r11 | 1979 mov rcx,r11 |
| 1889 shr eax,4 | 1980 shr eax,4 |
| 1890 | 1981 |
| 1891 $L$xts_enc_short: | 1982 $L$xts_enc_short: |
| 1983 |
| 1892 mov r10d,eax | 1984 mov r10d,eax |
| 1893 pxor xmm10,xmm0 | 1985 pxor xmm10,xmm0 |
| 1894 add rdx,16*6 | 1986 add rdx,16*6 |
| 1895 jz NEAR $L$xts_enc_done | 1987 jz NEAR $L$xts_enc_done |
| 1896 | 1988 |
| 1897 pxor xmm11,xmm0 | 1989 pxor xmm11,xmm0 |
| 1898 cmp rdx,0x20 | 1990 cmp rdx,0x20 |
| 1899 jb NEAR $L$xts_enc_one | 1991 jb NEAR $L$xts_enc_one |
| 1900 pxor xmm12,xmm0 | 1992 pxor xmm12,xmm0 |
| 1901 je NEAR $L$xts_enc_two | 1993 je NEAR $L$xts_enc_two |
| 1902 | 1994 |
| 1903 pxor xmm13,xmm0 | 1995 pxor xmm13,xmm0 |
| 1904 cmp rdx,0x40 | 1996 cmp rdx,0x40 |
| 1905 jb NEAR $L$xts_enc_three | 1997 jb NEAR $L$xts_enc_three |
| 1906 pxor xmm14,xmm0 | 1998 pxor xmm14,xmm0 |
| 1907 je NEAR $L$xts_enc_four | 1999 je NEAR $L$xts_enc_four |
| 1908 | 2000 |
| 1909 movdqu xmm2,XMMWORD[rdi] | 2001 movdqu xmm2,XMMWORD[rdi] |
| 1910 movdqu xmm3,XMMWORD[16+rdi] | 2002 movdqu xmm3,XMMWORD[16+rdi] |
| 1911 movdqu xmm4,XMMWORD[32+rdi] | 2003 movdqu xmm4,XMMWORD[32+rdi] |
| 1912 pxor xmm2,xmm10 | 2004 pxor xmm2,xmm10 |
| 1913 movdqu xmm5,XMMWORD[48+rdi] | 2005 movdqu xmm5,XMMWORD[48+rdi] |
| 1914 pxor xmm3,xmm11 | 2006 pxor xmm3,xmm11 |
| 1915 movdqu xmm6,XMMWORD[64+rdi] | 2007 movdqu xmm6,XMMWORD[64+rdi] |
| 1916 lea rdi,[80+rdi] | 2008 lea rdi,[80+rdi] |
| 1917 pxor xmm4,xmm12 | 2009 pxor xmm4,xmm12 |
| 1918 pxor xmm5,xmm13 | 2010 pxor xmm5,xmm13 |
| 1919 pxor xmm6,xmm14 | 2011 pxor xmm6,xmm14 |
| 2012 pxor xmm7,xmm7 |
| 1920 | 2013 |
| 1921 call _aesni_encrypt6 | 2014 call _aesni_encrypt6 |
| 1922 | 2015 |
| 1923 xorps xmm2,xmm10 | 2016 xorps xmm2,xmm10 |
| 1924 movdqa xmm10,xmm15 | 2017 movdqa xmm10,xmm15 |
| 1925 xorps xmm3,xmm11 | 2018 xorps xmm3,xmm11 |
| 1926 xorps xmm4,xmm12 | 2019 xorps xmm4,xmm12 |
| 1927 movdqu XMMWORD[rsi],xmm2 | 2020 movdqu XMMWORD[rsi],xmm2 |
| 1928 xorps xmm5,xmm13 | 2021 xorps xmm5,xmm13 |
| 1929 movdqu XMMWORD[16+rsi],xmm3 | 2022 movdqu XMMWORD[16+rsi],xmm3 |
| (...skipping 122 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2052 DB 102,15,56,220,209 | 2145 DB 102,15,56,220,209 |
| 2053 dec eax | 2146 dec eax |
| 2054 movups xmm1,XMMWORD[rcx] | 2147 movups xmm1,XMMWORD[rcx] |
| 2055 lea rcx,[16+rcx] | 2148 lea rcx,[16+rcx] |
| 2056 jnz NEAR $L$oop_enc1_10 | 2149 jnz NEAR $L$oop_enc1_10 |
| 2057 DB 102,15,56,221,209 | 2150 DB 102,15,56,221,209 |
| 2058 xorps xmm2,xmm10 | 2151 xorps xmm2,xmm10 |
| 2059 movups XMMWORD[(-16)+rsi],xmm2 | 2152 movups XMMWORD[(-16)+rsi],xmm2 |
| 2060 | 2153 |
| 2061 $L$xts_enc_ret: | 2154 $L$xts_enc_ret: |
| 2155 xorps xmm0,xmm0 |
| 2156 pxor xmm1,xmm1 |
| 2157 pxor xmm2,xmm2 |
| 2158 pxor xmm3,xmm3 |
| 2159 pxor xmm4,xmm4 |
| 2160 pxor xmm5,xmm5 |
| 2062 movaps xmm6,XMMWORD[((-160))+rbp] | 2161 movaps xmm6,XMMWORD[((-160))+rbp] |
| 2162 movaps XMMWORD[(-160)+rbp],xmm0 |
| 2063 movaps xmm7,XMMWORD[((-144))+rbp] | 2163 movaps xmm7,XMMWORD[((-144))+rbp] |
| 2164 movaps XMMWORD[(-144)+rbp],xmm0 |
| 2064 movaps xmm8,XMMWORD[((-128))+rbp] | 2165 movaps xmm8,XMMWORD[((-128))+rbp] |
| 2166 movaps XMMWORD[(-128)+rbp],xmm0 |
| 2065 movaps xmm9,XMMWORD[((-112))+rbp] | 2167 movaps xmm9,XMMWORD[((-112))+rbp] |
| 2168 movaps XMMWORD[(-112)+rbp],xmm0 |
| 2066 movaps xmm10,XMMWORD[((-96))+rbp] | 2169 movaps xmm10,XMMWORD[((-96))+rbp] |
| 2170 movaps XMMWORD[(-96)+rbp],xmm0 |
| 2067 movaps xmm11,XMMWORD[((-80))+rbp] | 2171 movaps xmm11,XMMWORD[((-80))+rbp] |
| 2172 movaps XMMWORD[(-80)+rbp],xmm0 |
| 2068 movaps xmm12,XMMWORD[((-64))+rbp] | 2173 movaps xmm12,XMMWORD[((-64))+rbp] |
| 2174 movaps XMMWORD[(-64)+rbp],xmm0 |
| 2069 movaps xmm13,XMMWORD[((-48))+rbp] | 2175 movaps xmm13,XMMWORD[((-48))+rbp] |
| 2176 movaps XMMWORD[(-48)+rbp],xmm0 |
| 2070 movaps xmm14,XMMWORD[((-32))+rbp] | 2177 movaps xmm14,XMMWORD[((-32))+rbp] |
| 2178 movaps XMMWORD[(-32)+rbp],xmm0 |
| 2071 movaps xmm15,XMMWORD[((-16))+rbp] | 2179 movaps xmm15,XMMWORD[((-16))+rbp] |
| 2180 movaps XMMWORD[(-16)+rbp],xmm0 |
| 2181 movaps XMMWORD[rsp],xmm0 |
| 2182 movaps XMMWORD[16+rsp],xmm0 |
| 2183 movaps XMMWORD[32+rsp],xmm0 |
| 2184 movaps XMMWORD[48+rsp],xmm0 |
| 2185 movaps XMMWORD[64+rsp],xmm0 |
| 2186 movaps XMMWORD[80+rsp],xmm0 |
| 2187 movaps XMMWORD[96+rsp],xmm0 |
| 2072 lea rsp,[rbp] | 2188 lea rsp,[rbp] |
| 2073 pop rbp | 2189 pop rbp |
| 2074 $L$xts_enc_epilogue: | 2190 $L$xts_enc_epilogue: |
| 2075 mov rdi,QWORD[8+rsp] ;WIN64 epilogue | 2191 mov rdi,QWORD[8+rsp] ;WIN64 epilogue |
| 2076 mov rsi,QWORD[16+rsp] | 2192 mov rsi,QWORD[16+rsp] |
| 2077 DB 0F3h,0C3h ;repret | 2193 DB 0F3h,0C3h ;repret |
| 2078 $L$SEH_end_aesni_xts_encrypt: | 2194 $L$SEH_end_aesni_xts_encrypt: |
| 2079 global aesni_xts_decrypt | 2195 global aesni_xts_decrypt |
| 2080 | 2196 |
| 2081 ALIGN 16 | 2197 ALIGN 16 |
| (...skipping 281 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2363 movups XMMWORD[(-16)+rsi],xmm7 | 2479 movups XMMWORD[(-16)+rsi],xmm7 |
| 2364 sub rdx,16*6 | 2480 sub rdx,16*6 |
| 2365 jnc NEAR $L$xts_dec_grandloop | 2481 jnc NEAR $L$xts_dec_grandloop |
| 2366 | 2482 |
| 2367 mov eax,16+96 | 2483 mov eax,16+96 |
| 2368 sub eax,r10d | 2484 sub eax,r10d |
| 2369 mov rcx,r11 | 2485 mov rcx,r11 |
| 2370 shr eax,4 | 2486 shr eax,4 |
| 2371 | 2487 |
| 2372 $L$xts_dec_short: | 2488 $L$xts_dec_short: |
| 2489 |
| 2373 mov r10d,eax | 2490 mov r10d,eax |
| 2374 pxor xmm10,xmm0 | 2491 pxor xmm10,xmm0 |
| 2375 pxor xmm11,xmm0 | 2492 pxor xmm11,xmm0 |
| 2376 add rdx,16*6 | 2493 add rdx,16*6 |
| 2377 jz NEAR $L$xts_dec_done | 2494 jz NEAR $L$xts_dec_done |
| 2378 | 2495 |
| 2379 pxor xmm12,xmm0 | 2496 pxor xmm12,xmm0 |
| 2380 cmp rdx,0x20 | 2497 cmp rdx,0x20 |
| 2381 jb NEAR $L$xts_dec_one | 2498 jb NEAR $L$xts_dec_one |
| 2382 pxor xmm13,xmm0 | 2499 pxor xmm13,xmm0 |
| (...skipping 182 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2565 DB 102,15,56,222,209 | 2682 DB 102,15,56,222,209 |
| 2566 dec eax | 2683 dec eax |
| 2567 movups xmm1,XMMWORD[rcx] | 2684 movups xmm1,XMMWORD[rcx] |
| 2568 lea rcx,[16+rcx] | 2685 lea rcx,[16+rcx] |
| 2569 jnz NEAR $L$oop_dec1_14 | 2686 jnz NEAR $L$oop_dec1_14 |
| 2570 DB 102,15,56,223,209 | 2687 DB 102,15,56,223,209 |
| 2571 xorps xmm2,xmm10 | 2688 xorps xmm2,xmm10 |
| 2572 movups XMMWORD[rsi],xmm2 | 2689 movups XMMWORD[rsi],xmm2 |
| 2573 | 2690 |
| 2574 $L$xts_dec_ret: | 2691 $L$xts_dec_ret: |
| 2692 xorps xmm0,xmm0 |
| 2693 pxor xmm1,xmm1 |
| 2694 pxor xmm2,xmm2 |
| 2695 pxor xmm3,xmm3 |
| 2696 pxor xmm4,xmm4 |
| 2697 pxor xmm5,xmm5 |
| 2575 movaps xmm6,XMMWORD[((-160))+rbp] | 2698 movaps xmm6,XMMWORD[((-160))+rbp] |
| 2699 movaps XMMWORD[(-160)+rbp],xmm0 |
| 2576 movaps xmm7,XMMWORD[((-144))+rbp] | 2700 movaps xmm7,XMMWORD[((-144))+rbp] |
| 2701 movaps XMMWORD[(-144)+rbp],xmm0 |
| 2577 movaps xmm8,XMMWORD[((-128))+rbp] | 2702 movaps xmm8,XMMWORD[((-128))+rbp] |
| 2703 movaps XMMWORD[(-128)+rbp],xmm0 |
| 2578 movaps xmm9,XMMWORD[((-112))+rbp] | 2704 movaps xmm9,XMMWORD[((-112))+rbp] |
| 2705 movaps XMMWORD[(-112)+rbp],xmm0 |
| 2579 movaps xmm10,XMMWORD[((-96))+rbp] | 2706 movaps xmm10,XMMWORD[((-96))+rbp] |
| 2707 movaps XMMWORD[(-96)+rbp],xmm0 |
| 2580 movaps xmm11,XMMWORD[((-80))+rbp] | 2708 movaps xmm11,XMMWORD[((-80))+rbp] |
| 2709 movaps XMMWORD[(-80)+rbp],xmm0 |
| 2581 movaps xmm12,XMMWORD[((-64))+rbp] | 2710 movaps xmm12,XMMWORD[((-64))+rbp] |
| 2711 movaps XMMWORD[(-64)+rbp],xmm0 |
| 2582 movaps xmm13,XMMWORD[((-48))+rbp] | 2712 movaps xmm13,XMMWORD[((-48))+rbp] |
| 2713 movaps XMMWORD[(-48)+rbp],xmm0 |
| 2583 movaps xmm14,XMMWORD[((-32))+rbp] | 2714 movaps xmm14,XMMWORD[((-32))+rbp] |
| 2715 movaps XMMWORD[(-32)+rbp],xmm0 |
| 2584 movaps xmm15,XMMWORD[((-16))+rbp] | 2716 movaps xmm15,XMMWORD[((-16))+rbp] |
| 2717 movaps XMMWORD[(-16)+rbp],xmm0 |
| 2718 movaps XMMWORD[rsp],xmm0 |
| 2719 movaps XMMWORD[16+rsp],xmm0 |
| 2720 movaps XMMWORD[32+rsp],xmm0 |
| 2721 movaps XMMWORD[48+rsp],xmm0 |
| 2722 movaps XMMWORD[64+rsp],xmm0 |
| 2723 movaps XMMWORD[80+rsp],xmm0 |
| 2724 movaps XMMWORD[96+rsp],xmm0 |
| 2585 lea rsp,[rbp] | 2725 lea rsp,[rbp] |
| 2586 pop rbp | 2726 pop rbp |
| 2587 $L$xts_dec_epilogue: | 2727 $L$xts_dec_epilogue: |
| 2588 mov rdi,QWORD[8+rsp] ;WIN64 epilogue | 2728 mov rdi,QWORD[8+rsp] ;WIN64 epilogue |
| 2589 mov rsi,QWORD[16+rsp] | 2729 mov rsi,QWORD[16+rsp] |
| 2590 DB 0F3h,0C3h ;repret | 2730 DB 0F3h,0C3h ;repret |
| 2591 $L$SEH_end_aesni_xts_decrypt: | 2731 $L$SEH_end_aesni_xts_decrypt: |
| 2592 global aesni_cbc_encrypt | 2732 global aesni_cbc_encrypt |
| 2593 | 2733 |
| 2594 ALIGN 16 | 2734 ALIGN 16 |
| (...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2637 jnz NEAR $L$oop_enc1_15 | 2777 jnz NEAR $L$oop_enc1_15 |
| 2638 DB 102,15,56,221,209 | 2778 DB 102,15,56,221,209 |
| 2639 mov eax,r10d | 2779 mov eax,r10d |
| 2640 mov rcx,r11 | 2780 mov rcx,r11 |
| 2641 movups XMMWORD[rsi],xmm2 | 2781 movups XMMWORD[rsi],xmm2 |
| 2642 lea rsi,[16+rsi] | 2782 lea rsi,[16+rsi] |
| 2643 sub rdx,16 | 2783 sub rdx,16 |
| 2644 jnc NEAR $L$cbc_enc_loop | 2784 jnc NEAR $L$cbc_enc_loop |
| 2645 add rdx,16 | 2785 add rdx,16 |
| 2646 jnz NEAR $L$cbc_enc_tail | 2786 jnz NEAR $L$cbc_enc_tail |
| 2787 pxor xmm0,xmm0 |
| 2788 pxor xmm1,xmm1 |
| 2647 movups XMMWORD[r8],xmm2 | 2789 movups XMMWORD[r8],xmm2 |
| 2790 pxor xmm2,xmm2 |
| 2791 pxor xmm3,xmm3 |
| 2648 jmp NEAR $L$cbc_ret | 2792 jmp NEAR $L$cbc_ret |
| 2649 | 2793 |
| 2650 $L$cbc_enc_tail: | 2794 $L$cbc_enc_tail: |
| 2651 mov rcx,rdx | 2795 mov rcx,rdx |
| 2652 xchg rsi,rdi | 2796 xchg rsi,rdi |
| 2653 DD 0x9066A4F3 | 2797 DD 0x9066A4F3 |
| 2654 mov ecx,16 | 2798 mov ecx,16 |
| 2655 sub rcx,rdx | 2799 sub rcx,rdx |
| 2656 xor eax,eax | 2800 xor eax,eax |
| 2657 DD 0x9066AAF3 | 2801 DD 0x9066AAF3 |
| 2658 lea rdi,[((-16))+rdi] | 2802 lea rdi,[((-16))+rdi] |
| 2659 mov eax,r10d | 2803 mov eax,r10d |
| 2660 mov rsi,rdi | 2804 mov rsi,rdi |
| 2661 mov rcx,r11 | 2805 mov rcx,r11 |
| 2662 xor rdx,rdx | 2806 xor rdx,rdx |
| 2663 jmp NEAR $L$cbc_enc_loop | 2807 jmp NEAR $L$cbc_enc_loop |
| 2664 | 2808 |
| 2665 ALIGN 16 | 2809 ALIGN 16 |
| 2666 $L$cbc_decrypt: | 2810 $L$cbc_decrypt: |
| 2811 cmp rdx,16 |
| 2812 jne NEAR $L$cbc_decrypt_bulk |
| 2813 |
| 2814 |
| 2815 |
| 2816 movdqu xmm2,XMMWORD[rdi] |
| 2817 movdqu xmm3,XMMWORD[r8] |
| 2818 movdqa xmm4,xmm2 |
| 2819 movups xmm0,XMMWORD[rcx] |
| 2820 movups xmm1,XMMWORD[16+rcx] |
| 2821 lea rcx,[32+rcx] |
| 2822 xorps xmm2,xmm0 |
| 2823 $L$oop_dec1_16: |
| 2824 DB 102,15,56,222,209 |
| 2825 dec r10d |
| 2826 movups xmm1,XMMWORD[rcx] |
| 2827 lea rcx,[16+rcx] |
| 2828 jnz NEAR $L$oop_dec1_16 |
| 2829 DB 102,15,56,223,209 |
| 2830 pxor xmm0,xmm0 |
| 2831 pxor xmm1,xmm1 |
| 2832 movdqu XMMWORD[r8],xmm4 |
| 2833 xorps xmm2,xmm3 |
| 2834 pxor xmm3,xmm3 |
| 2835 movups XMMWORD[rsi],xmm2 |
| 2836 pxor xmm2,xmm2 |
| 2837 jmp NEAR $L$cbc_ret |
| 2838 ALIGN 16 |
| 2839 $L$cbc_decrypt_bulk: |
| 2667 lea rax,[rsp] | 2840 lea rax,[rsp] |
| 2668 push rbp | 2841 push rbp |
| 2669 sub rsp,176 | 2842 sub rsp,176 |
| 2670 and rsp,-16 | 2843 and rsp,-16 |
| 2671 movaps XMMWORD[16+rsp],xmm6 | 2844 movaps XMMWORD[16+rsp],xmm6 |
| 2672 movaps XMMWORD[32+rsp],xmm7 | 2845 movaps XMMWORD[32+rsp],xmm7 |
| 2673 movaps XMMWORD[48+rsp],xmm8 | 2846 movaps XMMWORD[48+rsp],xmm8 |
| 2674 movaps XMMWORD[64+rsp],xmm9 | 2847 movaps XMMWORD[64+rsp],xmm9 |
| 2675 movaps XMMWORD[80+rsp],xmm10 | 2848 movaps XMMWORD[80+rsp],xmm10 |
| 2676 movaps XMMWORD[96+rsp],xmm11 | 2849 movaps XMMWORD[96+rsp],xmm11 |
| (...skipping 227 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2904 movdqa xmm7,xmm1 | 3077 movdqa xmm7,xmm1 |
| 2905 movups XMMWORD[96+rsi],xmm8 | 3078 movups XMMWORD[96+rsi],xmm8 |
| 2906 lea rsi,[112+rsi] | 3079 lea rsi,[112+rsi] |
| 2907 | 3080 |
| 2908 sub rdx,0x80 | 3081 sub rdx,0x80 |
| 2909 ja NEAR $L$cbc_dec_loop8 | 3082 ja NEAR $L$cbc_dec_loop8 |
| 2910 | 3083 |
| 2911 movaps xmm2,xmm9 | 3084 movaps xmm2,xmm9 |
| 2912 lea rcx,[((-112))+rcx] | 3085 lea rcx,[((-112))+rcx] |
| 2913 add rdx,0x70 | 3086 add rdx,0x70 |
| 2914 » jle» NEAR $L$cbc_dec_tail_collected | 3087 » jle» NEAR $L$cbc_dec_clear_tail_collected |
| 2915 movups XMMWORD[rsi],xmm9 | 3088 movups XMMWORD[rsi],xmm9 |
| 2916 lea rsi,[16+rsi] | 3089 lea rsi,[16+rsi] |
| 2917 cmp rdx,0x50 | 3090 cmp rdx,0x50 |
| 2918 jbe NEAR $L$cbc_dec_tail | 3091 jbe NEAR $L$cbc_dec_tail |
| 2919 | 3092 |
| 2920 movaps xmm2,xmm11 | 3093 movaps xmm2,xmm11 |
| 2921 $L$cbc_dec_six_or_seven: | 3094 $L$cbc_dec_six_or_seven: |
| 2922 cmp rdx,0x60 | 3095 cmp rdx,0x60 |
| 2923 ja NEAR $L$cbc_dec_seven | 3096 ja NEAR $L$cbc_dec_seven |
| 2924 | 3097 |
| 2925 movaps xmm8,xmm7 | 3098 movaps xmm8,xmm7 |
| 2926 call _aesni_decrypt6 | 3099 call _aesni_decrypt6 |
| 2927 pxor xmm2,xmm10 | 3100 pxor xmm2,xmm10 |
| 2928 movaps xmm10,xmm8 | 3101 movaps xmm10,xmm8 |
| 2929 pxor xmm3,xmm11 | 3102 pxor xmm3,xmm11 |
| 2930 movdqu XMMWORD[rsi],xmm2 | 3103 movdqu XMMWORD[rsi],xmm2 |
| 2931 pxor xmm4,xmm12 | 3104 pxor xmm4,xmm12 |
| 2932 movdqu XMMWORD[16+rsi],xmm3 | 3105 movdqu XMMWORD[16+rsi],xmm3 |
| 3106 pxor xmm3,xmm3 |
| 2933 pxor xmm5,xmm13 | 3107 pxor xmm5,xmm13 |
| 2934 movdqu XMMWORD[32+rsi],xmm4 | 3108 movdqu XMMWORD[32+rsi],xmm4 |
| 3109 pxor xmm4,xmm4 |
| 2935 pxor xmm6,xmm14 | 3110 pxor xmm6,xmm14 |
| 2936 movdqu XMMWORD[48+rsi],xmm5 | 3111 movdqu XMMWORD[48+rsi],xmm5 |
| 3112 pxor xmm5,xmm5 |
| 2937 pxor xmm7,xmm15 | 3113 pxor xmm7,xmm15 |
| 2938 movdqu XMMWORD[64+rsi],xmm6 | 3114 movdqu XMMWORD[64+rsi],xmm6 |
| 3115 pxor xmm6,xmm6 |
| 2939 lea rsi,[80+rsi] | 3116 lea rsi,[80+rsi] |
| 2940 movdqa xmm2,xmm7 | 3117 movdqa xmm2,xmm7 |
| 3118 pxor xmm7,xmm7 |
| 2941 jmp NEAR $L$cbc_dec_tail_collected | 3119 jmp NEAR $L$cbc_dec_tail_collected |
| 2942 | 3120 |
| 2943 ALIGN 16 | 3121 ALIGN 16 |
| 2944 $L$cbc_dec_seven: | 3122 $L$cbc_dec_seven: |
| 2945 movups xmm8,XMMWORD[96+rdi] | 3123 movups xmm8,XMMWORD[96+rdi] |
| 2946 xorps xmm9,xmm9 | 3124 xorps xmm9,xmm9 |
| 2947 call _aesni_decrypt8 | 3125 call _aesni_decrypt8 |
| 2948 movups xmm9,XMMWORD[80+rdi] | 3126 movups xmm9,XMMWORD[80+rdi] |
| 2949 pxor xmm2,xmm10 | 3127 pxor xmm2,xmm10 |
| 2950 movups xmm10,XMMWORD[96+rdi] | 3128 movups xmm10,XMMWORD[96+rdi] |
| 2951 pxor xmm3,xmm11 | 3129 pxor xmm3,xmm11 |
| 2952 movdqu XMMWORD[rsi],xmm2 | 3130 movdqu XMMWORD[rsi],xmm2 |
| 2953 pxor xmm4,xmm12 | 3131 pxor xmm4,xmm12 |
| 2954 movdqu XMMWORD[16+rsi],xmm3 | 3132 movdqu XMMWORD[16+rsi],xmm3 |
| 3133 pxor xmm3,xmm3 |
| 2955 pxor xmm5,xmm13 | 3134 pxor xmm5,xmm13 |
| 2956 movdqu XMMWORD[32+rsi],xmm4 | 3135 movdqu XMMWORD[32+rsi],xmm4 |
| 3136 pxor xmm4,xmm4 |
| 2957 pxor xmm6,xmm14 | 3137 pxor xmm6,xmm14 |
| 2958 movdqu XMMWORD[48+rsi],xmm5 | 3138 movdqu XMMWORD[48+rsi],xmm5 |
| 3139 pxor xmm5,xmm5 |
| 2959 pxor xmm7,xmm15 | 3140 pxor xmm7,xmm15 |
| 2960 movdqu XMMWORD[64+rsi],xmm6 | 3141 movdqu XMMWORD[64+rsi],xmm6 |
| 3142 pxor xmm6,xmm6 |
| 2961 pxor xmm8,xmm9 | 3143 pxor xmm8,xmm9 |
| 2962 movdqu XMMWORD[80+rsi],xmm7 | 3144 movdqu XMMWORD[80+rsi],xmm7 |
| 3145 pxor xmm7,xmm7 |
| 2963 lea rsi,[96+rsi] | 3146 lea rsi,[96+rsi] |
| 2964 movdqa xmm2,xmm8 | 3147 movdqa xmm2,xmm8 |
| 3148 pxor xmm8,xmm8 |
| 3149 pxor xmm9,xmm9 |
| 2965 jmp NEAR $L$cbc_dec_tail_collected | 3150 jmp NEAR $L$cbc_dec_tail_collected |
| 2966 | 3151 |
| 2967 ALIGN 16 | 3152 ALIGN 16 |
| 2968 $L$cbc_dec_loop6: | 3153 $L$cbc_dec_loop6: |
| 2969 movups XMMWORD[rsi],xmm7 | 3154 movups XMMWORD[rsi],xmm7 |
| 2970 lea rsi,[16+rsi] | 3155 lea rsi,[16+rsi] |
| 2971 movdqu xmm2,XMMWORD[rdi] | 3156 movdqu xmm2,XMMWORD[rdi] |
| 2972 movdqu xmm3,XMMWORD[16+rdi] | 3157 movdqu xmm3,XMMWORD[16+rdi] |
| 2973 movdqa xmm11,xmm2 | 3158 movdqa xmm11,xmm2 |
| 2974 movdqu xmm4,XMMWORD[32+rdi] | 3159 movdqu xmm4,XMMWORD[32+rdi] |
| (...skipping 23 matching lines...) Expand all Loading... |
| 2998 movdqu XMMWORD[48+rsi],xmm5 | 3183 movdqu XMMWORD[48+rsi],xmm5 |
| 2999 pxor xmm7,xmm15 | 3184 pxor xmm7,xmm15 |
| 3000 mov eax,r10d | 3185 mov eax,r10d |
| 3001 movdqu XMMWORD[64+rsi],xmm6 | 3186 movdqu XMMWORD[64+rsi],xmm6 |
| 3002 lea rsi,[80+rsi] | 3187 lea rsi,[80+rsi] |
| 3003 sub rdx,0x60 | 3188 sub rdx,0x60 |
| 3004 ja NEAR $L$cbc_dec_loop6 | 3189 ja NEAR $L$cbc_dec_loop6 |
| 3005 | 3190 |
| 3006 movdqa xmm2,xmm7 | 3191 movdqa xmm2,xmm7 |
| 3007 add rdx,0x50 | 3192 add rdx,0x50 |
| 3008 » jle» NEAR $L$cbc_dec_tail_collected | 3193 » jle» NEAR $L$cbc_dec_clear_tail_collected |
| 3009 movups XMMWORD[rsi],xmm7 | 3194 movups XMMWORD[rsi],xmm7 |
| 3010 lea rsi,[16+rsi] | 3195 lea rsi,[16+rsi] |
| 3011 | 3196 |
| 3012 $L$cbc_dec_tail: | 3197 $L$cbc_dec_tail: |
| 3013 movups xmm2,XMMWORD[rdi] | 3198 movups xmm2,XMMWORD[rdi] |
| 3014 sub rdx,0x10 | 3199 sub rdx,0x10 |
| 3015 jbe NEAR $L$cbc_dec_one | 3200 jbe NEAR $L$cbc_dec_one |
| 3016 | 3201 |
| 3017 movups xmm3,XMMWORD[16+rdi] | 3202 movups xmm3,XMMWORD[16+rdi] |
| 3018 movaps xmm11,xmm2 | 3203 movaps xmm11,xmm2 |
| (...skipping 14 matching lines...) Expand all Loading... |
| 3033 movaps xmm14,xmm5 | 3218 movaps xmm14,xmm5 |
| 3034 movaps xmm15,xmm6 | 3219 movaps xmm15,xmm6 |
| 3035 xorps xmm7,xmm7 | 3220 xorps xmm7,xmm7 |
| 3036 call _aesni_decrypt6 | 3221 call _aesni_decrypt6 |
| 3037 pxor xmm2,xmm10 | 3222 pxor xmm2,xmm10 |
| 3038 movaps xmm10,xmm15 | 3223 movaps xmm10,xmm15 |
| 3039 pxor xmm3,xmm11 | 3224 pxor xmm3,xmm11 |
| 3040 movdqu XMMWORD[rsi],xmm2 | 3225 movdqu XMMWORD[rsi],xmm2 |
| 3041 pxor xmm4,xmm12 | 3226 pxor xmm4,xmm12 |
| 3042 movdqu XMMWORD[16+rsi],xmm3 | 3227 movdqu XMMWORD[16+rsi],xmm3 |
| 3228 pxor xmm3,xmm3 |
| 3043 pxor xmm5,xmm13 | 3229 pxor xmm5,xmm13 |
| 3044 movdqu XMMWORD[32+rsi],xmm4 | 3230 movdqu XMMWORD[32+rsi],xmm4 |
| 3231 pxor xmm4,xmm4 |
| 3045 pxor xmm6,xmm14 | 3232 pxor xmm6,xmm14 |
| 3046 movdqu XMMWORD[48+rsi],xmm5 | 3233 movdqu XMMWORD[48+rsi],xmm5 |
| 3234 pxor xmm5,xmm5 |
| 3047 lea rsi,[64+rsi] | 3235 lea rsi,[64+rsi] |
| 3048 movdqa xmm2,xmm6 | 3236 movdqa xmm2,xmm6 |
| 3237 pxor xmm6,xmm6 |
| 3238 pxor xmm7,xmm7 |
| 3049 sub rdx,0x10 | 3239 sub rdx,0x10 |
| 3050 jmp NEAR $L$cbc_dec_tail_collected | 3240 jmp NEAR $L$cbc_dec_tail_collected |
| 3051 | 3241 |
| 3052 ALIGN 16 | 3242 ALIGN 16 |
| 3053 $L$cbc_dec_one: | 3243 $L$cbc_dec_one: |
| 3054 movaps xmm11,xmm2 | 3244 movaps xmm11,xmm2 |
| 3055 movups xmm0,XMMWORD[rcx] | 3245 movups xmm0,XMMWORD[rcx] |
| 3056 movups xmm1,XMMWORD[16+rcx] | 3246 movups xmm1,XMMWORD[16+rcx] |
| 3057 lea rcx,[32+rcx] | 3247 lea rcx,[32+rcx] |
| 3058 xorps xmm2,xmm0 | 3248 xorps xmm2,xmm0 |
| 3059 $L$oop_dec1_16: | 3249 $L$oop_dec1_17: |
| 3060 DB 102,15,56,222,209 | 3250 DB 102,15,56,222,209 |
| 3061 dec eax | 3251 dec eax |
| 3062 movups xmm1,XMMWORD[rcx] | 3252 movups xmm1,XMMWORD[rcx] |
| 3063 lea rcx,[16+rcx] | 3253 lea rcx,[16+rcx] |
| 3064 » jnz» NEAR $L$oop_dec1_16 | 3254 » jnz» NEAR $L$oop_dec1_17 |
| 3065 DB 102,15,56,223,209 | 3255 DB 102,15,56,223,209 |
| 3066 xorps xmm2,xmm10 | 3256 xorps xmm2,xmm10 |
| 3067 movaps xmm10,xmm11 | 3257 movaps xmm10,xmm11 |
| 3068 jmp NEAR $L$cbc_dec_tail_collected | 3258 jmp NEAR $L$cbc_dec_tail_collected |
| 3069 ALIGN 16 | 3259 ALIGN 16 |
| 3070 $L$cbc_dec_two: | 3260 $L$cbc_dec_two: |
| 3071 movaps xmm12,xmm3 | 3261 movaps xmm12,xmm3 |
| 3072 call _aesni_decrypt2 | 3262 call _aesni_decrypt2 |
| 3073 pxor xmm2,xmm10 | 3263 pxor xmm2,xmm10 |
| 3074 movaps xmm10,xmm12 | 3264 movaps xmm10,xmm12 |
| 3075 pxor xmm3,xmm11 | 3265 pxor xmm3,xmm11 |
| 3076 movdqu XMMWORD[rsi],xmm2 | 3266 movdqu XMMWORD[rsi],xmm2 |
| 3077 movdqa xmm2,xmm3 | 3267 movdqa xmm2,xmm3 |
| 3268 pxor xmm3,xmm3 |
| 3078 lea rsi,[16+rsi] | 3269 lea rsi,[16+rsi] |
| 3079 jmp NEAR $L$cbc_dec_tail_collected | 3270 jmp NEAR $L$cbc_dec_tail_collected |
| 3080 ALIGN 16 | 3271 ALIGN 16 |
| 3081 $L$cbc_dec_three: | 3272 $L$cbc_dec_three: |
| 3082 movaps xmm13,xmm4 | 3273 movaps xmm13,xmm4 |
| 3083 call _aesni_decrypt3 | 3274 call _aesni_decrypt3 |
| 3084 pxor xmm2,xmm10 | 3275 pxor xmm2,xmm10 |
| 3085 movaps xmm10,xmm13 | 3276 movaps xmm10,xmm13 |
| 3086 pxor xmm3,xmm11 | 3277 pxor xmm3,xmm11 |
| 3087 movdqu XMMWORD[rsi],xmm2 | 3278 movdqu XMMWORD[rsi],xmm2 |
| 3088 pxor xmm4,xmm12 | 3279 pxor xmm4,xmm12 |
| 3089 movdqu XMMWORD[16+rsi],xmm3 | 3280 movdqu XMMWORD[16+rsi],xmm3 |
| 3281 pxor xmm3,xmm3 |
| 3090 movdqa xmm2,xmm4 | 3282 movdqa xmm2,xmm4 |
| 3283 pxor xmm4,xmm4 |
| 3091 lea rsi,[32+rsi] | 3284 lea rsi,[32+rsi] |
| 3092 jmp NEAR $L$cbc_dec_tail_collected | 3285 jmp NEAR $L$cbc_dec_tail_collected |
| 3093 ALIGN 16 | 3286 ALIGN 16 |
| 3094 $L$cbc_dec_four: | 3287 $L$cbc_dec_four: |
| 3095 movaps xmm14,xmm5 | 3288 movaps xmm14,xmm5 |
| 3096 call _aesni_decrypt4 | 3289 call _aesni_decrypt4 |
| 3097 pxor xmm2,xmm10 | 3290 pxor xmm2,xmm10 |
| 3098 movaps xmm10,xmm14 | 3291 movaps xmm10,xmm14 |
| 3099 pxor xmm3,xmm11 | 3292 pxor xmm3,xmm11 |
| 3100 movdqu XMMWORD[rsi],xmm2 | 3293 movdqu XMMWORD[rsi],xmm2 |
| 3101 pxor xmm4,xmm12 | 3294 pxor xmm4,xmm12 |
| 3102 movdqu XMMWORD[16+rsi],xmm3 | 3295 movdqu XMMWORD[16+rsi],xmm3 |
| 3296 pxor xmm3,xmm3 |
| 3103 pxor xmm5,xmm13 | 3297 pxor xmm5,xmm13 |
| 3104 movdqu XMMWORD[32+rsi],xmm4 | 3298 movdqu XMMWORD[32+rsi],xmm4 |
| 3299 pxor xmm4,xmm4 |
| 3105 movdqa xmm2,xmm5 | 3300 movdqa xmm2,xmm5 |
| 3301 pxor xmm5,xmm5 |
| 3106 lea rsi,[48+rsi] | 3302 lea rsi,[48+rsi] |
| 3107 jmp NEAR $L$cbc_dec_tail_collected | 3303 jmp NEAR $L$cbc_dec_tail_collected |
| 3108 | 3304 |
| 3109 ALIGN 16 | 3305 ALIGN 16 |
| 3306 $L$cbc_dec_clear_tail_collected: |
| 3307 pxor xmm3,xmm3 |
| 3308 pxor xmm4,xmm4 |
| 3309 pxor xmm5,xmm5 |
| 3110 $L$cbc_dec_tail_collected: | 3310 $L$cbc_dec_tail_collected: |
| 3111 movups XMMWORD[r8],xmm10 | 3311 movups XMMWORD[r8],xmm10 |
| 3112 and rdx,15 | 3312 and rdx,15 |
| 3113 jnz NEAR $L$cbc_dec_tail_partial | 3313 jnz NEAR $L$cbc_dec_tail_partial |
| 3114 movups XMMWORD[rsi],xmm2 | 3314 movups XMMWORD[rsi],xmm2 |
| 3315 pxor xmm2,xmm2 |
| 3115 jmp NEAR $L$cbc_dec_ret | 3316 jmp NEAR $L$cbc_dec_ret |
| 3116 ALIGN 16 | 3317 ALIGN 16 |
| 3117 $L$cbc_dec_tail_partial: | 3318 $L$cbc_dec_tail_partial: |
| 3118 movaps XMMWORD[rsp],xmm2 | 3319 movaps XMMWORD[rsp],xmm2 |
| 3320 pxor xmm2,xmm2 |
| 3119 mov rcx,16 | 3321 mov rcx,16 |
| 3120 mov rdi,rsi | 3322 mov rdi,rsi |
| 3121 sub rcx,rdx | 3323 sub rcx,rdx |
| 3122 lea rsi,[rsp] | 3324 lea rsi,[rsp] |
| 3123 DD 0x9066A4F3 | 3325 DD 0x9066A4F3 |
| 3326 movdqa XMMWORD[rsp],xmm2 |
| 3124 | 3327 |
| 3125 $L$cbc_dec_ret: | 3328 $L$cbc_dec_ret: |
| 3329 xorps xmm0,xmm0 |
| 3330 pxor xmm1,xmm1 |
| 3126 movaps xmm6,XMMWORD[16+rsp] | 3331 movaps xmm6,XMMWORD[16+rsp] |
| 3332 movaps XMMWORD[16+rsp],xmm0 |
| 3127 movaps xmm7,XMMWORD[32+rsp] | 3333 movaps xmm7,XMMWORD[32+rsp] |
| 3334 movaps XMMWORD[32+rsp],xmm0 |
| 3128 movaps xmm8,XMMWORD[48+rsp] | 3335 movaps xmm8,XMMWORD[48+rsp] |
| 3336 movaps XMMWORD[48+rsp],xmm0 |
| 3129 movaps xmm9,XMMWORD[64+rsp] | 3337 movaps xmm9,XMMWORD[64+rsp] |
| 3338 movaps XMMWORD[64+rsp],xmm0 |
| 3130 movaps xmm10,XMMWORD[80+rsp] | 3339 movaps xmm10,XMMWORD[80+rsp] |
| 3340 movaps XMMWORD[80+rsp],xmm0 |
| 3131 movaps xmm11,XMMWORD[96+rsp] | 3341 movaps xmm11,XMMWORD[96+rsp] |
| 3342 movaps XMMWORD[96+rsp],xmm0 |
| 3132 movaps xmm12,XMMWORD[112+rsp] | 3343 movaps xmm12,XMMWORD[112+rsp] |
| 3344 movaps XMMWORD[112+rsp],xmm0 |
| 3133 movaps xmm13,XMMWORD[128+rsp] | 3345 movaps xmm13,XMMWORD[128+rsp] |
| 3346 movaps XMMWORD[128+rsp],xmm0 |
| 3134 movaps xmm14,XMMWORD[144+rsp] | 3347 movaps xmm14,XMMWORD[144+rsp] |
| 3348 movaps XMMWORD[144+rsp],xmm0 |
| 3135 movaps xmm15,XMMWORD[160+rsp] | 3349 movaps xmm15,XMMWORD[160+rsp] |
| 3350 movaps XMMWORD[160+rsp],xmm0 |
| 3136 lea rsp,[rbp] | 3351 lea rsp,[rbp] |
| 3137 pop rbp | 3352 pop rbp |
| 3138 $L$cbc_ret: | 3353 $L$cbc_ret: |
| 3139 mov rdi,QWORD[8+rsp] ;WIN64 epilogue | 3354 mov rdi,QWORD[8+rsp] ;WIN64 epilogue |
| 3140 mov rsi,QWORD[16+rsp] | 3355 mov rsi,QWORD[16+rsp] |
| 3141 DB 0F3h,0C3h ;repret | 3356 DB 0F3h,0C3h ;repret |
| 3142 $L$SEH_end_aesni_cbc_encrypt: | 3357 $L$SEH_end_aesni_cbc_encrypt: |
| 3143 global aesni_set_decrypt_key | 3358 global aesni_set_decrypt_key |
| 3144 | 3359 |
| 3145 ALIGN 16 | 3360 ALIGN 16 |
| (...skipping 19 matching lines...) Expand all Loading... |
| 3165 DB 102,15,56,219,201 | 3380 DB 102,15,56,219,201 |
| 3166 lea r8,[16+r8] | 3381 lea r8,[16+r8] |
| 3167 lea rcx,[((-16))+rcx] | 3382 lea rcx,[((-16))+rcx] |
| 3168 movups XMMWORD[16+rcx],xmm0 | 3383 movups XMMWORD[16+rcx],xmm0 |
| 3169 movups XMMWORD[(-16)+r8],xmm1 | 3384 movups XMMWORD[(-16)+r8],xmm1 |
| 3170 cmp rcx,r8 | 3385 cmp rcx,r8 |
| 3171 ja NEAR $L$dec_key_inverse | 3386 ja NEAR $L$dec_key_inverse |
| 3172 | 3387 |
| 3173 movups xmm0,XMMWORD[r8] | 3388 movups xmm0,XMMWORD[r8] |
| 3174 DB 102,15,56,219,192 | 3389 DB 102,15,56,219,192 |
| 3390 pxor xmm1,xmm1 |
| 3175 movups XMMWORD[rcx],xmm0 | 3391 movups XMMWORD[rcx],xmm0 |
| 3392 pxor xmm0,xmm0 |
| 3176 $L$dec_key_ret: | 3393 $L$dec_key_ret: |
| 3177 add rsp,8 | 3394 add rsp,8 |
| 3178 DB 0F3h,0C3h ;repret | 3395 DB 0F3h,0C3h ;repret |
| 3179 $L$SEH_end_set_decrypt_key: | 3396 $L$SEH_end_set_decrypt_key: |
| 3180 | 3397 |
| 3181 global aesni_set_encrypt_key | 3398 global aesni_set_encrypt_key |
| 3182 | 3399 |
| 3183 ALIGN 16 | 3400 ALIGN 16 |
| 3184 aesni_set_encrypt_key: | 3401 aesni_set_encrypt_key: |
| 3185 __aesni_set_encrypt_key: | 3402 __aesni_set_encrypt_key: |
| 3186 DB 0x48,0x83,0xEC,0x08 | 3403 DB 0x48,0x83,0xEC,0x08 |
| 3187 mov rax,-1 | 3404 mov rax,-1 |
| 3188 test rcx,rcx | 3405 test rcx,rcx |
| 3189 jz NEAR $L$enc_key_ret | 3406 jz NEAR $L$enc_key_ret |
| 3190 test r8,r8 | 3407 test r8,r8 |
| 3191 jz NEAR $L$enc_key_ret | 3408 jz NEAR $L$enc_key_ret |
| 3192 | 3409 |
| 3410 mov r10d,268437504 |
| 3193 movups xmm0,XMMWORD[rcx] | 3411 movups xmm0,XMMWORD[rcx] |
| 3194 xorps xmm4,xmm4 | 3412 xorps xmm4,xmm4 |
| 3413 and r10d,DWORD[((OPENSSL_ia32cap_P+4))] |
| 3195 lea rax,[16+r8] | 3414 lea rax,[16+r8] |
| 3196 cmp edx,256 | 3415 cmp edx,256 |
| 3197 je NEAR $L$14rounds | 3416 je NEAR $L$14rounds |
| 3198 cmp edx,192 | 3417 cmp edx,192 |
| 3199 je NEAR $L$12rounds | 3418 je NEAR $L$12rounds |
| 3200 cmp edx,128 | 3419 cmp edx,128 |
| 3201 jne NEAR $L$bad_keybits | 3420 jne NEAR $L$bad_keybits |
| 3202 | 3421 |
| 3203 $L$10rounds: | 3422 $L$10rounds: |
| 3204 mov edx,9 | 3423 mov edx,9 |
| 3424 cmp r10d,268435456 |
| 3425 je NEAR $L$10rounds_alt |
| 3426 |
| 3205 movups XMMWORD[r8],xmm0 | 3427 movups XMMWORD[r8],xmm0 |
| 3206 DB 102,15,58,223,200,1 | 3428 DB 102,15,58,223,200,1 |
| 3207 call $L$key_expansion_128_cold | 3429 call $L$key_expansion_128_cold |
| 3208 DB 102,15,58,223,200,2 | 3430 DB 102,15,58,223,200,2 |
| 3209 call $L$key_expansion_128 | 3431 call $L$key_expansion_128 |
| 3210 DB 102,15,58,223,200,4 | 3432 DB 102,15,58,223,200,4 |
| 3211 call $L$key_expansion_128 | 3433 call $L$key_expansion_128 |
| 3212 DB 102,15,58,223,200,8 | 3434 DB 102,15,58,223,200,8 |
| 3213 call $L$key_expansion_128 | 3435 call $L$key_expansion_128 |
| 3214 DB 102,15,58,223,200,16 | 3436 DB 102,15,58,223,200,16 |
| 3215 call $L$key_expansion_128 | 3437 call $L$key_expansion_128 |
| 3216 DB 102,15,58,223,200,32 | 3438 DB 102,15,58,223,200,32 |
| 3217 call $L$key_expansion_128 | 3439 call $L$key_expansion_128 |
| 3218 DB 102,15,58,223,200,64 | 3440 DB 102,15,58,223,200,64 |
| 3219 call $L$key_expansion_128 | 3441 call $L$key_expansion_128 |
| 3220 DB 102,15,58,223,200,128 | 3442 DB 102,15,58,223,200,128 |
| 3221 call $L$key_expansion_128 | 3443 call $L$key_expansion_128 |
| 3222 DB 102,15,58,223,200,27 | 3444 DB 102,15,58,223,200,27 |
| 3223 call $L$key_expansion_128 | 3445 call $L$key_expansion_128 |
| 3224 DB 102,15,58,223,200,54 | 3446 DB 102,15,58,223,200,54 |
| 3225 call $L$key_expansion_128 | 3447 call $L$key_expansion_128 |
| 3226 movups XMMWORD[rax],xmm0 | 3448 movups XMMWORD[rax],xmm0 |
| 3227 mov DWORD[80+rax],edx | 3449 mov DWORD[80+rax],edx |
| 3228 xor eax,eax | 3450 xor eax,eax |
| 3229 jmp NEAR $L$enc_key_ret | 3451 jmp NEAR $L$enc_key_ret |
| 3230 | 3452 |
| 3231 ALIGN 16 | 3453 ALIGN 16 |
| 3454 $L$10rounds_alt: |
| 3455 movdqa xmm5,XMMWORD[$L$key_rotate] |
| 3456 mov r10d,8 |
| 3457 movdqa xmm4,XMMWORD[$L$key_rcon1] |
| 3458 movdqa xmm2,xmm0 |
| 3459 movdqu XMMWORD[r8],xmm0 |
| 3460 jmp NEAR $L$oop_key128 |
| 3461 |
| 3462 ALIGN 16 |
| 3463 $L$oop_key128: |
| 3464 DB 102,15,56,0,197 |
| 3465 DB 102,15,56,221,196 |
| 3466 pslld xmm4,1 |
| 3467 lea rax,[16+rax] |
| 3468 |
| 3469 movdqa xmm3,xmm2 |
| 3470 pslldq xmm2,4 |
| 3471 pxor xmm3,xmm2 |
| 3472 pslldq xmm2,4 |
| 3473 pxor xmm3,xmm2 |
| 3474 pslldq xmm2,4 |
| 3475 pxor xmm2,xmm3 |
| 3476 |
| 3477 pxor xmm0,xmm2 |
| 3478 movdqu XMMWORD[(-16)+rax],xmm0 |
| 3479 movdqa xmm2,xmm0 |
| 3480 |
| 3481 dec r10d |
| 3482 jnz NEAR $L$oop_key128 |
| 3483 |
| 3484 movdqa xmm4,XMMWORD[$L$key_rcon1b] |
| 3485 |
| 3486 DB 102,15,56,0,197 |
| 3487 DB 102,15,56,221,196 |
| 3488 pslld xmm4,1 |
| 3489 |
| 3490 movdqa xmm3,xmm2 |
| 3491 pslldq xmm2,4 |
| 3492 pxor xmm3,xmm2 |
| 3493 pslldq xmm2,4 |
| 3494 pxor xmm3,xmm2 |
| 3495 pslldq xmm2,4 |
| 3496 pxor xmm2,xmm3 |
| 3497 |
| 3498 pxor xmm0,xmm2 |
| 3499 movdqu XMMWORD[rax],xmm0 |
| 3500 |
| 3501 movdqa xmm2,xmm0 |
| 3502 DB 102,15,56,0,197 |
| 3503 DB 102,15,56,221,196 |
| 3504 |
| 3505 movdqa xmm3,xmm2 |
| 3506 pslldq xmm2,4 |
| 3507 pxor xmm3,xmm2 |
| 3508 pslldq xmm2,4 |
| 3509 pxor xmm3,xmm2 |
| 3510 pslldq xmm2,4 |
| 3511 pxor xmm2,xmm3 |
| 3512 |
| 3513 pxor xmm0,xmm2 |
| 3514 movdqu XMMWORD[16+rax],xmm0 |
| 3515 |
| 3516 mov DWORD[96+rax],edx |
| 3517 xor eax,eax |
| 3518 jmp NEAR $L$enc_key_ret |
| 3519 |
| 3520 ALIGN 16 |
| 3232 $L$12rounds: | 3521 $L$12rounds: |
| 3233 movq xmm2,QWORD[16+rcx] | 3522 movq xmm2,QWORD[16+rcx] |
| 3234 mov edx,11 | 3523 mov edx,11 |
| 3524 cmp r10d,268435456 |
| 3525 je NEAR $L$12rounds_alt |
| 3526 |
| 3235 movups XMMWORD[r8],xmm0 | 3527 movups XMMWORD[r8],xmm0 |
| 3236 DB 102,15,58,223,202,1 | 3528 DB 102,15,58,223,202,1 |
| 3237 call $L$key_expansion_192a_cold | 3529 call $L$key_expansion_192a_cold |
| 3238 DB 102,15,58,223,202,2 | 3530 DB 102,15,58,223,202,2 |
| 3239 call $L$key_expansion_192b | 3531 call $L$key_expansion_192b |
| 3240 DB 102,15,58,223,202,4 | 3532 DB 102,15,58,223,202,4 |
| 3241 call $L$key_expansion_192a | 3533 call $L$key_expansion_192a |
| 3242 DB 102,15,58,223,202,8 | 3534 DB 102,15,58,223,202,8 |
| 3243 call $L$key_expansion_192b | 3535 call $L$key_expansion_192b |
| 3244 DB 102,15,58,223,202,16 | 3536 DB 102,15,58,223,202,16 |
| 3245 call $L$key_expansion_192a | 3537 call $L$key_expansion_192a |
| 3246 DB 102,15,58,223,202,32 | 3538 DB 102,15,58,223,202,32 |
| 3247 call $L$key_expansion_192b | 3539 call $L$key_expansion_192b |
| 3248 DB 102,15,58,223,202,64 | 3540 DB 102,15,58,223,202,64 |
| 3249 call $L$key_expansion_192a | 3541 call $L$key_expansion_192a |
| 3250 DB 102,15,58,223,202,128 | 3542 DB 102,15,58,223,202,128 |
| 3251 call $L$key_expansion_192b | 3543 call $L$key_expansion_192b |
| 3252 movups XMMWORD[rax],xmm0 | 3544 movups XMMWORD[rax],xmm0 |
| 3253 mov DWORD[48+rax],edx | 3545 mov DWORD[48+rax],edx |
| 3254 xor rax,rax | 3546 xor rax,rax |
| 3255 jmp NEAR $L$enc_key_ret | 3547 jmp NEAR $L$enc_key_ret |
| 3256 | 3548 |
| 3257 ALIGN 16 | 3549 ALIGN 16 |
| 3550 $L$12rounds_alt: |
| 3551 movdqa xmm5,XMMWORD[$L$key_rotate192] |
| 3552 movdqa xmm4,XMMWORD[$L$key_rcon1] |
| 3553 mov r10d,8 |
| 3554 movdqu XMMWORD[r8],xmm0 |
| 3555 jmp NEAR $L$oop_key192 |
| 3556 |
| 3557 ALIGN 16 |
| 3558 $L$oop_key192: |
| 3559 movq QWORD[rax],xmm2 |
| 3560 movdqa xmm1,xmm2 |
| 3561 DB 102,15,56,0,213 |
| 3562 DB 102,15,56,221,212 |
| 3563 pslld xmm4,1 |
| 3564 lea rax,[24+rax] |
| 3565 |
| 3566 movdqa xmm3,xmm0 |
| 3567 pslldq xmm0,4 |
| 3568 pxor xmm3,xmm0 |
| 3569 pslldq xmm0,4 |
| 3570 pxor xmm3,xmm0 |
| 3571 pslldq xmm0,4 |
| 3572 pxor xmm0,xmm3 |
| 3573 |
| 3574 pshufd xmm3,xmm0,0xff |
| 3575 pxor xmm3,xmm1 |
| 3576 pslldq xmm1,4 |
| 3577 pxor xmm3,xmm1 |
| 3578 |
| 3579 pxor xmm0,xmm2 |
| 3580 pxor xmm2,xmm3 |
| 3581 movdqu XMMWORD[(-16)+rax],xmm0 |
| 3582 |
| 3583 dec r10d |
| 3584 jnz NEAR $L$oop_key192 |
| 3585 |
| 3586 mov DWORD[32+rax],edx |
| 3587 xor eax,eax |
| 3588 jmp NEAR $L$enc_key_ret |
| 3589 |
| 3590 ALIGN 16 |
| 3258 $L$14rounds: | 3591 $L$14rounds: |
| 3259 movups xmm2,XMMWORD[16+rcx] | 3592 movups xmm2,XMMWORD[16+rcx] |
| 3260 mov edx,13 | 3593 mov edx,13 |
| 3261 lea rax,[16+rax] | 3594 lea rax,[16+rax] |
| 3595 cmp r10d,268435456 |
| 3596 je NEAR $L$14rounds_alt |
| 3597 |
| 3262 movups XMMWORD[r8],xmm0 | 3598 movups XMMWORD[r8],xmm0 |
| 3263 movups XMMWORD[16+r8],xmm2 | 3599 movups XMMWORD[16+r8],xmm2 |
| 3264 DB 102,15,58,223,202,1 | 3600 DB 102,15,58,223,202,1 |
| 3265 call $L$key_expansion_256a_cold | 3601 call $L$key_expansion_256a_cold |
| 3266 DB 102,15,58,223,200,1 | 3602 DB 102,15,58,223,200,1 |
| 3267 call $L$key_expansion_256b | 3603 call $L$key_expansion_256b |
| 3268 DB 102,15,58,223,202,2 | 3604 DB 102,15,58,223,202,2 |
| 3269 call $L$key_expansion_256a | 3605 call $L$key_expansion_256a |
| 3270 DB 102,15,58,223,200,2 | 3606 DB 102,15,58,223,200,2 |
| 3271 call $L$key_expansion_256b | 3607 call $L$key_expansion_256b |
| (...skipping 14 matching lines...) Expand all Loading... |
| 3286 DB 102,15,58,223,200,32 | 3622 DB 102,15,58,223,200,32 |
| 3287 call $L$key_expansion_256b | 3623 call $L$key_expansion_256b |
| 3288 DB 102,15,58,223,202,64 | 3624 DB 102,15,58,223,202,64 |
| 3289 call $L$key_expansion_256a | 3625 call $L$key_expansion_256a |
| 3290 movups XMMWORD[rax],xmm0 | 3626 movups XMMWORD[rax],xmm0 |
| 3291 mov DWORD[16+rax],edx | 3627 mov DWORD[16+rax],edx |
| 3292 xor rax,rax | 3628 xor rax,rax |
| 3293 jmp NEAR $L$enc_key_ret | 3629 jmp NEAR $L$enc_key_ret |
| 3294 | 3630 |
| 3295 ALIGN 16 | 3631 ALIGN 16 |
| 3632 $L$14rounds_alt: |
| 3633 movdqa xmm5,XMMWORD[$L$key_rotate] |
| 3634 movdqa xmm4,XMMWORD[$L$key_rcon1] |
| 3635 mov r10d,7 |
| 3636 movdqu XMMWORD[r8],xmm0 |
| 3637 movdqa xmm1,xmm2 |
| 3638 movdqu XMMWORD[16+r8],xmm2 |
| 3639 jmp NEAR $L$oop_key256 |
| 3640 |
| 3641 ALIGN 16 |
| 3642 $L$oop_key256: |
| 3643 DB 102,15,56,0,213 |
| 3644 DB 102,15,56,221,212 |
| 3645 |
| 3646 movdqa xmm3,xmm0 |
| 3647 pslldq xmm0,4 |
| 3648 pxor xmm3,xmm0 |
| 3649 pslldq xmm0,4 |
| 3650 pxor xmm3,xmm0 |
| 3651 pslldq xmm0,4 |
| 3652 pxor xmm0,xmm3 |
| 3653 pslld xmm4,1 |
| 3654 |
| 3655 pxor xmm0,xmm2 |
| 3656 movdqu XMMWORD[rax],xmm0 |
| 3657 |
| 3658 dec r10d |
| 3659 jz NEAR $L$done_key256 |
| 3660 |
| 3661 pshufd xmm2,xmm0,0xff |
| 3662 pxor xmm3,xmm3 |
| 3663 DB 102,15,56,221,211 |
| 3664 |
| 3665 movdqa xmm3,xmm1 |
| 3666 pslldq xmm1,4 |
| 3667 pxor xmm3,xmm1 |
| 3668 pslldq xmm1,4 |
| 3669 pxor xmm3,xmm1 |
| 3670 pslldq xmm1,4 |
| 3671 pxor xmm1,xmm3 |
| 3672 |
| 3673 pxor xmm2,xmm1 |
| 3674 movdqu XMMWORD[16+rax],xmm2 |
| 3675 lea rax,[32+rax] |
| 3676 movdqa xmm1,xmm2 |
| 3677 |
| 3678 jmp NEAR $L$oop_key256 |
| 3679 |
| 3680 $L$done_key256: |
| 3681 mov DWORD[16+rax],edx |
| 3682 xor eax,eax |
| 3683 jmp NEAR $L$enc_key_ret |
| 3684 |
| 3685 ALIGN 16 |
| 3296 $L$bad_keybits: | 3686 $L$bad_keybits: |
| 3297 mov rax,-2 | 3687 mov rax,-2 |
| 3298 $L$enc_key_ret: | 3688 $L$enc_key_ret: |
| 3689 pxor xmm0,xmm0 |
| 3690 pxor xmm1,xmm1 |
| 3691 pxor xmm2,xmm2 |
| 3692 pxor xmm3,xmm3 |
| 3693 pxor xmm4,xmm4 |
| 3694 pxor xmm5,xmm5 |
| 3299 add rsp,8 | 3695 add rsp,8 |
| 3300 DB 0F3h,0C3h ;repret | 3696 DB 0F3h,0C3h ;repret |
| 3301 $L$SEH_end_set_encrypt_key: | 3697 $L$SEH_end_set_encrypt_key: |
| 3302 | 3698 |
| 3303 ALIGN 16 | 3699 ALIGN 16 |
| 3304 $L$key_expansion_128: | 3700 $L$key_expansion_128: |
| 3305 movups XMMWORD[rax],xmm0 | 3701 movups XMMWORD[rax],xmm0 |
| 3306 lea rax,[16+rax] | 3702 lea rax,[16+rax] |
| 3307 $L$key_expansion_128_cold: | 3703 $L$key_expansion_128_cold: |
| 3308 shufps xmm4,xmm0,16 | 3704 shufps xmm4,xmm0,16 |
| (...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3374 $L$bswap_mask: | 3770 $L$bswap_mask: |
| 3375 DB 15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0 | 3771 DB 15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0 |
| 3376 $L$increment32: | 3772 $L$increment32: |
| 3377 DD 6,6,6,0 | 3773 DD 6,6,6,0 |
| 3378 $L$increment64: | 3774 $L$increment64: |
| 3379 DD 1,0,0,0 | 3775 DD 1,0,0,0 |
| 3380 $L$xts_magic: | 3776 $L$xts_magic: |
| 3381 DD 0x87,0,1,0 | 3777 DD 0x87,0,1,0 |
| 3382 $L$increment1: | 3778 $L$increment1: |
| 3383 DB 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1 | 3779 DB 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1 |
| 3780 $L$key_rotate: |
| 3781 DD 0x0c0f0e0d,0x0c0f0e0d,0x0c0f0e0d,0x0c0f0e0d |
| 3782 $L$key_rotate192: |
| 3783 DD 0x04070605,0x04070605,0x04070605,0x04070605 |
| 3784 $L$key_rcon1: |
| 3785 DD 1,1,1,1 |
| 3786 $L$key_rcon1b: |
| 3787 DD 0x1b,0x1b,0x1b,0x1b |
| 3384 | 3788 |
| 3385 DB 65,69,83,32,102,111,114,32,73,110,116,101,108,32,65,69 | 3789 DB 65,69,83,32,102,111,114,32,73,110,116,101,108,32,65,69 |
| 3386 DB 83,45,78,73,44,32,67,82,89,80,84,79,71,65,77,83 | 3790 DB 83,45,78,73,44,32,67,82,89,80,84,79,71,65,77,83 |
| 3387 DB 32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115 | 3791 DB 32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115 |
| 3388 DB 115,108,46,111,114,103,62,0 | 3792 DB 115,108,46,111,114,103,62,0 |
| 3389 ALIGN 64 | 3793 ALIGN 64 |
| 3390 EXTERN __imp_RtlVirtualUnwind | 3794 EXTERN __imp_RtlVirtualUnwind |
| 3391 | 3795 |
| 3392 ALIGN 16 | 3796 ALIGN 16 |
| 3393 ecb_ccm64_se_handler: | 3797 ecb_ccm64_se_handler: |
| (...skipping 85 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3479 push r12 | 3883 push r12 |
| 3480 push r13 | 3884 push r13 |
| 3481 push r14 | 3885 push r14 |
| 3482 push r15 | 3886 push r15 |
| 3483 pushfq | 3887 pushfq |
| 3484 sub rsp,64 | 3888 sub rsp,64 |
| 3485 | 3889 |
| 3486 mov rax,QWORD[152+r8] | 3890 mov rax,QWORD[152+r8] |
| 3487 mov rbx,QWORD[248+r8] | 3891 mov rbx,QWORD[248+r8] |
| 3488 | 3892 |
| 3489 » lea» r10,[$L$cbc_decrypt] | 3893 » lea» r10,[$L$cbc_decrypt_bulk] |
| 3490 cmp rbx,r10 | 3894 cmp rbx,r10 |
| 3491 jb NEAR $L$common_seh_tail | 3895 jb NEAR $L$common_seh_tail |
| 3492 | 3896 |
| 3493 lea r10,[$L$cbc_decrypt_body] | 3897 lea r10,[$L$cbc_decrypt_body] |
| 3494 cmp rbx,r10 | 3898 cmp rbx,r10 |
| 3495 jb NEAR $L$restore_cbc_rax | 3899 jb NEAR $L$restore_cbc_rax |
| 3496 | 3900 |
| 3497 lea r10,[$L$cbc_ret] | 3901 lea r10,[$L$cbc_ret] |
| 3498 cmp rbx,r10 | 3902 cmp rbx,r10 |
| 3499 jae NEAR $L$common_seh_tail | 3903 jae NEAR $L$common_seh_tail |
| (...skipping 114 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3614 $L$SEH_info_xts_dec: | 4018 $L$SEH_info_xts_dec: |
| 3615 DB 9,0,0,0 | 4019 DB 9,0,0,0 |
| 3616 DD ctr_xts_se_handler wrt ..imagebase | 4020 DD ctr_xts_se_handler wrt ..imagebase |
| 3617 DD $L$xts_dec_body wrt ..imagebase,$L$xts_dec_epilogue wrt ..imageb
ase | 4021 DD $L$xts_dec_body wrt ..imagebase,$L$xts_dec_epilogue wrt ..imageb
ase |
| 3618 $L$SEH_info_cbc: | 4022 $L$SEH_info_cbc: |
| 3619 DB 9,0,0,0 | 4023 DB 9,0,0,0 |
| 3620 DD cbc_se_handler wrt ..imagebase | 4024 DD cbc_se_handler wrt ..imagebase |
| 3621 $L$SEH_info_key: | 4025 $L$SEH_info_key: |
| 3622 DB 0x01,0x04,0x01,0x00 | 4026 DB 0x01,0x04,0x01,0x00 |
| 3623 DB 0x04,0x02,0x00,0x00 | 4027 DB 0x04,0x02,0x00,0x00 |
| OLD | NEW |