Home | History | Annotate | Download | only in fipsmodule
      1 %ifidn __OUTPUT_FORMAT__,obj
      2 section	code	use32 class=code align=64
      3 %elifidn __OUTPUT_FORMAT__,win32
      4 %ifdef __YASM_VERSION_ID__
      5 %if __YASM_VERSION_ID__ < 01010000h
      6 %error yasm version 1.1.0 or later needed.
      7 %endif
      8 ; Yasm automatically includes .00 and complains about redefining it.
      9 ; https://www.tortall.net/projects/yasm/manual/html/objfmt-win32-safeseh.html
     10 %else
     11 $@feat.00 equ 1
     12 %endif
     13 section	.text	code align=64
     14 %else
     15 section	.text	code
     16 %endif
     17 ;extern	_OPENSSL_ia32cap_P
     18 global	_sha1_block_data_order
     19 align	16
     20 _sha1_block_data_order:
     21 L$_sha1_block_data_order_begin:
     22 	push	ebp
     23 	push	ebx
     24 	push	esi
     25 	push	edi
     26 	call	L$000pic_point
     27 L$000pic_point:
     28 	pop	ebp
     29 	lea	esi,[_OPENSSL_ia32cap_P]
     30 	lea	ebp,[(L$K_XX_XX-L$000pic_point)+ebp]
     31 	mov	eax,DWORD [esi]
     32 	mov	edx,DWORD [4+esi]
     33 	test	edx,512
     34 	jz	NEAR L$001x86
     35 	mov	ecx,DWORD [8+esi]
     36 	test	eax,16777216
     37 	jz	NEAR L$001x86
     38 	and	edx,268435456
     39 	and	eax,1073741824
     40 	or	eax,edx
     41 	cmp	eax,1342177280
     42 	je	NEAR L$avx_shortcut
     43 	jmp	NEAR L$ssse3_shortcut
     44 align	16
     45 L$001x86:
     46 	mov	ebp,DWORD [20+esp]
     47 	mov	esi,DWORD [24+esp]
     48 	mov	eax,DWORD [28+esp]
     49 	sub	esp,76
     50 	shl	eax,6
     51 	add	eax,esi
     52 	mov	DWORD [104+esp],eax
     53 	mov	edi,DWORD [16+ebp]
     54 	jmp	NEAR L$002loop
     55 align	16
     56 L$002loop:
     57 	mov	eax,DWORD [esi]
     58 	mov	ebx,DWORD [4+esi]
     59 	mov	ecx,DWORD [8+esi]
     60 	mov	edx,DWORD [12+esi]
     61 	bswap	eax
     62 	bswap	ebx
     63 	bswap	ecx
     64 	bswap	edx
     65 	mov	DWORD [esp],eax
     66 	mov	DWORD [4+esp],ebx
     67 	mov	DWORD [8+esp],ecx
     68 	mov	DWORD [12+esp],edx
     69 	mov	eax,DWORD [16+esi]
     70 	mov	ebx,DWORD [20+esi]
     71 	mov	ecx,DWORD [24+esi]
     72 	mov	edx,DWORD [28+esi]
     73 	bswap	eax
     74 	bswap	ebx
     75 	bswap	ecx
     76 	bswap	edx
     77 	mov	DWORD [16+esp],eax
     78 	mov	DWORD [20+esp],ebx
     79 	mov	DWORD [24+esp],ecx
     80 	mov	DWORD [28+esp],edx
     81 	mov	eax,DWORD [32+esi]
     82 	mov	ebx,DWORD [36+esi]
     83 	mov	ecx,DWORD [40+esi]
     84 	mov	edx,DWORD [44+esi]
     85 	bswap	eax
     86 	bswap	ebx
     87 	bswap	ecx
     88 	bswap	edx
     89 	mov	DWORD [32+esp],eax
     90 	mov	DWORD [36+esp],ebx
     91 	mov	DWORD [40+esp],ecx
     92 	mov	DWORD [44+esp],edx
     93 	mov	eax,DWORD [48+esi]
     94 	mov	ebx,DWORD [52+esi]
     95 	mov	ecx,DWORD [56+esi]
     96 	mov	edx,DWORD [60+esi]
     97 	bswap	eax
     98 	bswap	ebx
     99 	bswap	ecx
    100 	bswap	edx
    101 	mov	DWORD [48+esp],eax
    102 	mov	DWORD [52+esp],ebx
    103 	mov	DWORD [56+esp],ecx
    104 	mov	DWORD [60+esp],edx
    105 	mov	DWORD [100+esp],esi
    106 	mov	eax,DWORD [ebp]
    107 	mov	ebx,DWORD [4+ebp]
    108 	mov	ecx,DWORD [8+ebp]
    109 	mov	edx,DWORD [12+ebp]
    110 	; 00_15 0
    111 	mov	esi,ecx
    112 	mov	ebp,eax
    113 	rol	ebp,5
    114 	xor	esi,edx
    115 	add	ebp,edi
    116 	mov	edi,DWORD [esp]
    117 	and	esi,ebx
    118 	ror	ebx,2
    119 	xor	esi,edx
    120 	lea	ebp,[1518500249+edi*1+ebp]
    121 	add	ebp,esi
    122 	; 00_15 1
    123 	mov	edi,ebx
    124 	mov	esi,ebp
    125 	rol	ebp,5
    126 	xor	edi,ecx
    127 	add	ebp,edx
    128 	mov	edx,DWORD [4+esp]
    129 	and	edi,eax
    130 	ror	eax,2
    131 	xor	edi,ecx
    132 	lea	ebp,[1518500249+edx*1+ebp]
    133 	add	ebp,edi
    134 	; 00_15 2
    135 	mov	edx,eax
    136 	mov	edi,ebp
    137 	rol	ebp,5
    138 	xor	edx,ebx
    139 	add	ebp,ecx
    140 	mov	ecx,DWORD [8+esp]
    141 	and	edx,esi
    142 	ror	esi,2
    143 	xor	edx,ebx
    144 	lea	ebp,[1518500249+ecx*1+ebp]
    145 	add	ebp,edx
    146 	; 00_15 3
    147 	mov	ecx,esi
    148 	mov	edx,ebp
    149 	rol	ebp,5
    150 	xor	ecx,eax
    151 	add	ebp,ebx
    152 	mov	ebx,DWORD [12+esp]
    153 	and	ecx,edi
    154 	ror	edi,2
    155 	xor	ecx,eax
    156 	lea	ebp,[1518500249+ebx*1+ebp]
    157 	add	ebp,ecx
    158 	; 00_15 4
    159 	mov	ebx,edi
    160 	mov	ecx,ebp
    161 	rol	ebp,5
    162 	xor	ebx,esi
    163 	add	ebp,eax
    164 	mov	eax,DWORD [16+esp]
    165 	and	ebx,edx
    166 	ror	edx,2
    167 	xor	ebx,esi
    168 	lea	ebp,[1518500249+eax*1+ebp]
    169 	add	ebp,ebx
    170 	; 00_15 5
    171 	mov	eax,edx
    172 	mov	ebx,ebp
    173 	rol	ebp,5
    174 	xor	eax,edi
    175 	add	ebp,esi
    176 	mov	esi,DWORD [20+esp]
    177 	and	eax,ecx
    178 	ror	ecx,2
    179 	xor	eax,edi
    180 	lea	ebp,[1518500249+esi*1+ebp]
    181 	add	ebp,eax
    182 	; 00_15 6
    183 	mov	esi,ecx
    184 	mov	eax,ebp
    185 	rol	ebp,5
    186 	xor	esi,edx
    187 	add	ebp,edi
    188 	mov	edi,DWORD [24+esp]
    189 	and	esi,ebx
    190 	ror	ebx,2
    191 	xor	esi,edx
    192 	lea	ebp,[1518500249+edi*1+ebp]
    193 	add	ebp,esi
    194 	; 00_15 7
    195 	mov	edi,ebx
    196 	mov	esi,ebp
    197 	rol	ebp,5
    198 	xor	edi,ecx
    199 	add	ebp,edx
    200 	mov	edx,DWORD [28+esp]
    201 	and	edi,eax
    202 	ror	eax,2
    203 	xor	edi,ecx
    204 	lea	ebp,[1518500249+edx*1+ebp]
    205 	add	ebp,edi
    206 	; 00_15 8
    207 	mov	edx,eax
    208 	mov	edi,ebp
    209 	rol	ebp,5
    210 	xor	edx,ebx
    211 	add	ebp,ecx
    212 	mov	ecx,DWORD [32+esp]
    213 	and	edx,esi
    214 	ror	esi,2
    215 	xor	edx,ebx
    216 	lea	ebp,[1518500249+ecx*1+ebp]
    217 	add	ebp,edx
    218 	; 00_15 9
    219 	mov	ecx,esi
    220 	mov	edx,ebp
    221 	rol	ebp,5
    222 	xor	ecx,eax
    223 	add	ebp,ebx
    224 	mov	ebx,DWORD [36+esp]
    225 	and	ecx,edi
    226 	ror	edi,2
    227 	xor	ecx,eax
    228 	lea	ebp,[1518500249+ebx*1+ebp]
    229 	add	ebp,ecx
    230 	; 00_15 10
    231 	mov	ebx,edi
    232 	mov	ecx,ebp
    233 	rol	ebp,5
    234 	xor	ebx,esi
    235 	add	ebp,eax
    236 	mov	eax,DWORD [40+esp]
    237 	and	ebx,edx
    238 	ror	edx,2
    239 	xor	ebx,esi
    240 	lea	ebp,[1518500249+eax*1+ebp]
    241 	add	ebp,ebx
    242 	; 00_15 11
    243 	mov	eax,edx
    244 	mov	ebx,ebp
    245 	rol	ebp,5
    246 	xor	eax,edi
    247 	add	ebp,esi
    248 	mov	esi,DWORD [44+esp]
    249 	and	eax,ecx
    250 	ror	ecx,2
    251 	xor	eax,edi
    252 	lea	ebp,[1518500249+esi*1+ebp]
    253 	add	ebp,eax
    254 	; 00_15 12
    255 	mov	esi,ecx
    256 	mov	eax,ebp
    257 	rol	ebp,5
    258 	xor	esi,edx
    259 	add	ebp,edi
    260 	mov	edi,DWORD [48+esp]
    261 	and	esi,ebx
    262 	ror	ebx,2
    263 	xor	esi,edx
    264 	lea	ebp,[1518500249+edi*1+ebp]
    265 	add	ebp,esi
    266 	; 00_15 13
    267 	mov	edi,ebx
    268 	mov	esi,ebp
    269 	rol	ebp,5
    270 	xor	edi,ecx
    271 	add	ebp,edx
    272 	mov	edx,DWORD [52+esp]
    273 	and	edi,eax
    274 	ror	eax,2
    275 	xor	edi,ecx
    276 	lea	ebp,[1518500249+edx*1+ebp]
    277 	add	ebp,edi
    278 	; 00_15 14
    279 	mov	edx,eax
    280 	mov	edi,ebp
    281 	rol	ebp,5
    282 	xor	edx,ebx
    283 	add	ebp,ecx
    284 	mov	ecx,DWORD [56+esp]
    285 	and	edx,esi
    286 	ror	esi,2
    287 	xor	edx,ebx
    288 	lea	ebp,[1518500249+ecx*1+ebp]
    289 	add	ebp,edx
    290 	; 00_15 15
    291 	mov	ecx,esi
    292 	mov	edx,ebp
    293 	rol	ebp,5
    294 	xor	ecx,eax
    295 	add	ebp,ebx
    296 	mov	ebx,DWORD [60+esp]
    297 	and	ecx,edi
    298 	ror	edi,2
    299 	xor	ecx,eax
    300 	lea	ebp,[1518500249+ebx*1+ebp]
    301 	mov	ebx,DWORD [esp]
    302 	add	ecx,ebp
    303 	; 16_19 16
    304 	mov	ebp,edi
    305 	xor	ebx,DWORD [8+esp]
    306 	xor	ebp,esi
    307 	xor	ebx,DWORD [32+esp]
    308 	and	ebp,edx
    309 	xor	ebx,DWORD [52+esp]
    310 	rol	ebx,1
    311 	xor	ebp,esi
    312 	add	eax,ebp
    313 	mov	ebp,ecx
    314 	ror	edx,2
    315 	mov	DWORD [esp],ebx
    316 	rol	ebp,5
    317 	lea	ebx,[1518500249+eax*1+ebx]
    318 	mov	eax,DWORD [4+esp]
    319 	add	ebx,ebp
    320 	; 16_19 17
    321 	mov	ebp,edx
    322 	xor	eax,DWORD [12+esp]
    323 	xor	ebp,edi
    324 	xor	eax,DWORD [36+esp]
    325 	and	ebp,ecx
    326 	xor	eax,DWORD [56+esp]
    327 	rol	eax,1
    328 	xor	ebp,edi
    329 	add	esi,ebp
    330 	mov	ebp,ebx
    331 	ror	ecx,2
    332 	mov	DWORD [4+esp],eax
    333 	rol	ebp,5
    334 	lea	eax,[1518500249+esi*1+eax]
    335 	mov	esi,DWORD [8+esp]
    336 	add	eax,ebp
    337 	; 16_19 18
    338 	mov	ebp,ecx
    339 	xor	esi,DWORD [16+esp]
    340 	xor	ebp,edx
    341 	xor	esi,DWORD [40+esp]
    342 	and	ebp,ebx
    343 	xor	esi,DWORD [60+esp]
    344 	rol	esi,1
    345 	xor	ebp,edx
    346 	add	edi,ebp
    347 	mov	ebp,eax
    348 	ror	ebx,2
    349 	mov	DWORD [8+esp],esi
    350 	rol	ebp,5
    351 	lea	esi,[1518500249+edi*1+esi]
    352 	mov	edi,DWORD [12+esp]
    353 	add	esi,ebp
    354 	; 16_19 19
    355 	mov	ebp,ebx
    356 	xor	edi,DWORD [20+esp]
    357 	xor	ebp,ecx
    358 	xor	edi,DWORD [44+esp]
    359 	and	ebp,eax
    360 	xor	edi,DWORD [esp]
    361 	rol	edi,1
    362 	xor	ebp,ecx
    363 	add	edx,ebp
    364 	mov	ebp,esi
    365 	ror	eax,2
    366 	mov	DWORD [12+esp],edi
    367 	rol	ebp,5
    368 	lea	edi,[1518500249+edx*1+edi]
    369 	mov	edx,DWORD [16+esp]
    370 	add	edi,ebp
    371 	; 20_39 20
    372 	mov	ebp,esi
    373 	xor	edx,DWORD [24+esp]
    374 	xor	ebp,eax
    375 	xor	edx,DWORD [48+esp]
    376 	xor	ebp,ebx
    377 	xor	edx,DWORD [4+esp]
    378 	rol	edx,1
    379 	add	ecx,ebp
    380 	ror	esi,2
    381 	mov	ebp,edi
    382 	rol	ebp,5
    383 	mov	DWORD [16+esp],edx
    384 	lea	edx,[1859775393+ecx*1+edx]
    385 	mov	ecx,DWORD [20+esp]
    386 	add	edx,ebp
    387 	; 20_39 21
    388 	mov	ebp,edi
    389 	xor	ecx,DWORD [28+esp]
    390 	xor	ebp,esi
    391 	xor	ecx,DWORD [52+esp]
    392 	xor	ebp,eax
    393 	xor	ecx,DWORD [8+esp]
    394 	rol	ecx,1
    395 	add	ebx,ebp
    396 	ror	edi,2
    397 	mov	ebp,edx
    398 	rol	ebp,5
    399 	mov	DWORD [20+esp],ecx
    400 	lea	ecx,[1859775393+ebx*1+ecx]
    401 	mov	ebx,DWORD [24+esp]
    402 	add	ecx,ebp
    403 	; 20_39 22
    404 	mov	ebp,edx
    405 	xor	ebx,DWORD [32+esp]
    406 	xor	ebp,edi
    407 	xor	ebx,DWORD [56+esp]
    408 	xor	ebp,esi
    409 	xor	ebx,DWORD [12+esp]
    410 	rol	ebx,1
    411 	add	eax,ebp
    412 	ror	edx,2
    413 	mov	ebp,ecx
    414 	rol	ebp,5
    415 	mov	DWORD [24+esp],ebx
    416 	lea	ebx,[1859775393+eax*1+ebx]
    417 	mov	eax,DWORD [28+esp]
    418 	add	ebx,ebp
    419 	; 20_39 23
    420 	mov	ebp,ecx
    421 	xor	eax,DWORD [36+esp]
    422 	xor	ebp,edx
    423 	xor	eax,DWORD [60+esp]
    424 	xor	ebp,edi
    425 	xor	eax,DWORD [16+esp]
    426 	rol	eax,1
    427 	add	esi,ebp
    428 	ror	ecx,2
    429 	mov	ebp,ebx
    430 	rol	ebp,5
    431 	mov	DWORD [28+esp],eax
    432 	lea	eax,[1859775393+esi*1+eax]
    433 	mov	esi,DWORD [32+esp]
    434 	add	eax,ebp
    435 	; 20_39 24
    436 	mov	ebp,ebx
    437 	xor	esi,DWORD [40+esp]
    438 	xor	ebp,ecx
    439 	xor	esi,DWORD [esp]
    440 	xor	ebp,edx
    441 	xor	esi,DWORD [20+esp]
    442 	rol	esi,1
    443 	add	edi,ebp
    444 	ror	ebx,2
    445 	mov	ebp,eax
    446 	rol	ebp,5
    447 	mov	DWORD [32+esp],esi
    448 	lea	esi,[1859775393+edi*1+esi]
    449 	mov	edi,DWORD [36+esp]
    450 	add	esi,ebp
    451 	; 20_39 25
    452 	mov	ebp,eax
    453 	xor	edi,DWORD [44+esp]
    454 	xor	ebp,ebx
    455 	xor	edi,DWORD [4+esp]
    456 	xor	ebp,ecx
    457 	xor	edi,DWORD [24+esp]
    458 	rol	edi,1
    459 	add	edx,ebp
    460 	ror	eax,2
    461 	mov	ebp,esi
    462 	rol	ebp,5
    463 	mov	DWORD [36+esp],edi
    464 	lea	edi,[1859775393+edx*1+edi]
    465 	mov	edx,DWORD [40+esp]
    466 	add	edi,ebp
    467 	; 20_39 26
    468 	mov	ebp,esi
    469 	xor	edx,DWORD [48+esp]
    470 	xor	ebp,eax
    471 	xor	edx,DWORD [8+esp]
    472 	xor	ebp,ebx
    473 	xor	edx,DWORD [28+esp]
    474 	rol	edx,1
    475 	add	ecx,ebp
    476 	ror	esi,2
    477 	mov	ebp,edi
    478 	rol	ebp,5
    479 	mov	DWORD [40+esp],edx
    480 	lea	edx,[1859775393+ecx*1+edx]
    481 	mov	ecx,DWORD [44+esp]
    482 	add	edx,ebp
    483 	; 20_39 27
    484 	mov	ebp,edi
    485 	xor	ecx,DWORD [52+esp]
    486 	xor	ebp,esi
    487 	xor	ecx,DWORD [12+esp]
    488 	xor	ebp,eax
    489 	xor	ecx,DWORD [32+esp]
    490 	rol	ecx,1
    491 	add	ebx,ebp
    492 	ror	edi,2
    493 	mov	ebp,edx
    494 	rol	ebp,5
    495 	mov	DWORD [44+esp],ecx
    496 	lea	ecx,[1859775393+ebx*1+ecx]
    497 	mov	ebx,DWORD [48+esp]
    498 	add	ecx,ebp
    499 	; 20_39 28
    500 	mov	ebp,edx
    501 	xor	ebx,DWORD [56+esp]
    502 	xor	ebp,edi
    503 	xor	ebx,DWORD [16+esp]
    504 	xor	ebp,esi
    505 	xor	ebx,DWORD [36+esp]
    506 	rol	ebx,1
    507 	add	eax,ebp
    508 	ror	edx,2
    509 	mov	ebp,ecx
    510 	rol	ebp,5
    511 	mov	DWORD [48+esp],ebx
    512 	lea	ebx,[1859775393+eax*1+ebx]
    513 	mov	eax,DWORD [52+esp]
    514 	add	ebx,ebp
    515 	; 20_39 29
    516 	mov	ebp,ecx
    517 	xor	eax,DWORD [60+esp]
    518 	xor	ebp,edx
    519 	xor	eax,DWORD [20+esp]
    520 	xor	ebp,edi
    521 	xor	eax,DWORD [40+esp]
    522 	rol	eax,1
    523 	add	esi,ebp
    524 	ror	ecx,2
    525 	mov	ebp,ebx
    526 	rol	ebp,5
    527 	mov	DWORD [52+esp],eax
    528 	lea	eax,[1859775393+esi*1+eax]
    529 	mov	esi,DWORD [56+esp]
    530 	add	eax,ebp
    531 	; 20_39 30
    532 	mov	ebp,ebx
    533 	xor	esi,DWORD [esp]
    534 	xor	ebp,ecx
    535 	xor	esi,DWORD [24+esp]
    536 	xor	ebp,edx
    537 	xor	esi,DWORD [44+esp]
    538 	rol	esi,1
    539 	add	edi,ebp
    540 	ror	ebx,2
    541 	mov	ebp,eax
    542 	rol	ebp,5
    543 	mov	DWORD [56+esp],esi
    544 	lea	esi,[1859775393+edi*1+esi]
    545 	mov	edi,DWORD [60+esp]
    546 	add	esi,ebp
    547 	; 20_39 31
    548 	mov	ebp,eax
    549 	xor	edi,DWORD [4+esp]
    550 	xor	ebp,ebx
    551 	xor	edi,DWORD [28+esp]
    552 	xor	ebp,ecx
    553 	xor	edi,DWORD [48+esp]
    554 	rol	edi,1
    555 	add	edx,ebp
    556 	ror	eax,2
    557 	mov	ebp,esi
    558 	rol	ebp,5
    559 	mov	DWORD [60+esp],edi
    560 	lea	edi,[1859775393+edx*1+edi]
    561 	mov	edx,DWORD [esp]
    562 	add	edi,ebp
    563 	; 20_39 32
    564 	mov	ebp,esi
    565 	xor	edx,DWORD [8+esp]
    566 	xor	ebp,eax
    567 	xor	edx,DWORD [32+esp]
    568 	xor	ebp,ebx
    569 	xor	edx,DWORD [52+esp]
    570 	rol	edx,1
    571 	add	ecx,ebp
    572 	ror	esi,2
    573 	mov	ebp,edi
    574 	rol	ebp,5
    575 	mov	DWORD [esp],edx
    576 	lea	edx,[1859775393+ecx*1+edx]
    577 	mov	ecx,DWORD [4+esp]
    578 	add	edx,ebp
    579 	; 20_39 33
    580 	mov	ebp,edi
    581 	xor	ecx,DWORD [12+esp]
    582 	xor	ebp,esi
    583 	xor	ecx,DWORD [36+esp]
    584 	xor	ebp,eax
    585 	xor	ecx,DWORD [56+esp]
    586 	rol	ecx,1
    587 	add	ebx,ebp
    588 	ror	edi,2
    589 	mov	ebp,edx
    590 	rol	ebp,5
    591 	mov	DWORD [4+esp],ecx
    592 	lea	ecx,[1859775393+ebx*1+ecx]
    593 	mov	ebx,DWORD [8+esp]
    594 	add	ecx,ebp
    595 	; 20_39 34
    596 	mov	ebp,edx
    597 	xor	ebx,DWORD [16+esp]
    598 	xor	ebp,edi
    599 	xor	ebx,DWORD [40+esp]
    600 	xor	ebp,esi
    601 	xor	ebx,DWORD [60+esp]
    602 	rol	ebx,1
    603 	add	eax,ebp
    604 	ror	edx,2
    605 	mov	ebp,ecx
    606 	rol	ebp,5
    607 	mov	DWORD [8+esp],ebx
    608 	lea	ebx,[1859775393+eax*1+ebx]
    609 	mov	eax,DWORD [12+esp]
    610 	add	ebx,ebp
    611 	; 20_39 35
    612 	mov	ebp,ecx
    613 	xor	eax,DWORD [20+esp]
    614 	xor	ebp,edx
    615 	xor	eax,DWORD [44+esp]
    616 	xor	ebp,edi
    617 	xor	eax,DWORD [esp]
    618 	rol	eax,1
    619 	add	esi,ebp
    620 	ror	ecx,2
    621 	mov	ebp,ebx
    622 	rol	ebp,5
    623 	mov	DWORD [12+esp],eax
    624 	lea	eax,[1859775393+esi*1+eax]
    625 	mov	esi,DWORD [16+esp]
    626 	add	eax,ebp
    627 	; 20_39 36
    628 	mov	ebp,ebx
    629 	xor	esi,DWORD [24+esp]
    630 	xor	ebp,ecx
    631 	xor	esi,DWORD [48+esp]
    632 	xor	ebp,edx
    633 	xor	esi,DWORD [4+esp]
    634 	rol	esi,1
    635 	add	edi,ebp
    636 	ror	ebx,2
    637 	mov	ebp,eax
    638 	rol	ebp,5
    639 	mov	DWORD [16+esp],esi
    640 	lea	esi,[1859775393+edi*1+esi]
    641 	mov	edi,DWORD [20+esp]
    642 	add	esi,ebp
    643 	; 20_39 37
    644 	mov	ebp,eax
    645 	xor	edi,DWORD [28+esp]
    646 	xor	ebp,ebx
    647 	xor	edi,DWORD [52+esp]
    648 	xor	ebp,ecx
    649 	xor	edi,DWORD [8+esp]
    650 	rol	edi,1
    651 	add	edx,ebp
    652 	ror	eax,2
    653 	mov	ebp,esi
    654 	rol	ebp,5
    655 	mov	DWORD [20+esp],edi
    656 	lea	edi,[1859775393+edx*1+edi]
    657 	mov	edx,DWORD [24+esp]
    658 	add	edi,ebp
    659 	; 20_39 38
    660 	mov	ebp,esi
    661 	xor	edx,DWORD [32+esp]
    662 	xor	ebp,eax
    663 	xor	edx,DWORD [56+esp]
    664 	xor	ebp,ebx
    665 	xor	edx,DWORD [12+esp]
    666 	rol	edx,1
    667 	add	ecx,ebp
    668 	ror	esi,2
    669 	mov	ebp,edi
    670 	rol	ebp,5
    671 	mov	DWORD [24+esp],edx
    672 	lea	edx,[1859775393+ecx*1+edx]
    673 	mov	ecx,DWORD [28+esp]
    674 	add	edx,ebp
    675 	; 20_39 39
    676 	mov	ebp,edi
    677 	xor	ecx,DWORD [36+esp]
    678 	xor	ebp,esi
    679 	xor	ecx,DWORD [60+esp]
    680 	xor	ebp,eax
    681 	xor	ecx,DWORD [16+esp]
    682 	rol	ecx,1
    683 	add	ebx,ebp
    684 	ror	edi,2
    685 	mov	ebp,edx
    686 	rol	ebp,5
    687 	mov	DWORD [28+esp],ecx
    688 	lea	ecx,[1859775393+ebx*1+ecx]
    689 	mov	ebx,DWORD [32+esp]
    690 	add	ecx,ebp
    691 	; 40_59 40
    692 	mov	ebp,edi
    693 	xor	ebx,DWORD [40+esp]
    694 	xor	ebp,esi
    695 	xor	ebx,DWORD [esp]
    696 	and	ebp,edx
    697 	xor	ebx,DWORD [20+esp]
    698 	rol	ebx,1
    699 	add	ebp,eax
    700 	ror	edx,2
    701 	mov	eax,ecx
    702 	rol	eax,5
    703 	mov	DWORD [32+esp],ebx
    704 	lea	ebx,[2400959708+ebp*1+ebx]
    705 	mov	ebp,edi
    706 	add	ebx,eax
    707 	and	ebp,esi
    708 	mov	eax,DWORD [36+esp]
    709 	add	ebx,ebp
    710 	; 40_59 41
    711 	mov	ebp,edx
    712 	xor	eax,DWORD [44+esp]
    713 	xor	ebp,edi
    714 	xor	eax,DWORD [4+esp]
    715 	and	ebp,ecx
    716 	xor	eax,DWORD [24+esp]
    717 	rol	eax,1
    718 	add	ebp,esi
    719 	ror	ecx,2
    720 	mov	esi,ebx
    721 	rol	esi,5
    722 	mov	DWORD [36+esp],eax
    723 	lea	eax,[2400959708+ebp*1+eax]
    724 	mov	ebp,edx
    725 	add	eax,esi
    726 	and	ebp,edi
    727 	mov	esi,DWORD [40+esp]
    728 	add	eax,ebp
    729 	; 40_59 42
    730 	mov	ebp,ecx
    731 	xor	esi,DWORD [48+esp]
    732 	xor	ebp,edx
    733 	xor	esi,DWORD [8+esp]
    734 	and	ebp,ebx
    735 	xor	esi,DWORD [28+esp]
    736 	rol	esi,1
    737 	add	ebp,edi
    738 	ror	ebx,2
    739 	mov	edi,eax
    740 	rol	edi,5
    741 	mov	DWORD [40+esp],esi
    742 	lea	esi,[2400959708+ebp*1+esi]
    743 	mov	ebp,ecx
    744 	add	esi,edi
    745 	and	ebp,edx
    746 	mov	edi,DWORD [44+esp]
    747 	add	esi,ebp
    748 	; 40_59 43
    749 	mov	ebp,ebx
    750 	xor	edi,DWORD [52+esp]
    751 	xor	ebp,ecx
    752 	xor	edi,DWORD [12+esp]
    753 	and	ebp,eax
    754 	xor	edi,DWORD [32+esp]
    755 	rol	edi,1
    756 	add	ebp,edx
    757 	ror	eax,2
    758 	mov	edx,esi
    759 	rol	edx,5
    760 	mov	DWORD [44+esp],edi
    761 	lea	edi,[2400959708+ebp*1+edi]
    762 	mov	ebp,ebx
    763 	add	edi,edx
    764 	and	ebp,ecx
    765 	mov	edx,DWORD [48+esp]
    766 	add	edi,ebp
    767 	; 40_59 44
    768 	mov	ebp,eax
    769 	xor	edx,DWORD [56+esp]
    770 	xor	ebp,ebx
    771 	xor	edx,DWORD [16+esp]
    772 	and	ebp,esi
    773 	xor	edx,DWORD [36+esp]
    774 	rol	edx,1
    775 	add	ebp,ecx
    776 	ror	esi,2
    777 	mov	ecx,edi
    778 	rol	ecx,5
    779 	mov	DWORD [48+esp],edx
    780 	lea	edx,[2400959708+ebp*1+edx]
    781 	mov	ebp,eax
    782 	add	edx,ecx
    783 	and	ebp,ebx
    784 	mov	ecx,DWORD [52+esp]
    785 	add	edx,ebp
    786 	; 40_59 45
    787 	mov	ebp,esi
    788 	xor	ecx,DWORD [60+esp]
    789 	xor	ebp,eax
    790 	xor	ecx,DWORD [20+esp]
    791 	and	ebp,edi
    792 	xor	ecx,DWORD [40+esp]
    793 	rol	ecx,1
    794 	add	ebp,ebx
    795 	ror	edi,2
    796 	mov	ebx,edx
    797 	rol	ebx,5
    798 	mov	DWORD [52+esp],ecx
    799 	lea	ecx,[2400959708+ebp*1+ecx]
    800 	mov	ebp,esi
    801 	add	ecx,ebx
    802 	and	ebp,eax
    803 	mov	ebx,DWORD [56+esp]
    804 	add	ecx,ebp
    805 	; 40_59 46
    806 	mov	ebp,edi
    807 	xor	ebx,DWORD [esp]
    808 	xor	ebp,esi
    809 	xor	ebx,DWORD [24+esp]
    810 	and	ebp,edx
    811 	xor	ebx,DWORD [44+esp]
    812 	rol	ebx,1
    813 	add	ebp,eax
    814 	ror	edx,2
    815 	mov	eax,ecx
    816 	rol	eax,5
    817 	mov	DWORD [56+esp],ebx
    818 	lea	ebx,[2400959708+ebp*1+ebx]
    819 	mov	ebp,edi
    820 	add	ebx,eax
    821 	and	ebp,esi
    822 	mov	eax,DWORD [60+esp]
    823 	add	ebx,ebp
    824 	; 40_59 47
    825 	mov	ebp,edx
    826 	xor	eax,DWORD [4+esp]
    827 	xor	ebp,edi
    828 	xor	eax,DWORD [28+esp]
    829 	and	ebp,ecx
    830 	xor	eax,DWORD [48+esp]
    831 	rol	eax,1
    832 	add	ebp,esi
    833 	ror	ecx,2
    834 	mov	esi,ebx
    835 	rol	esi,5
    836 	mov	DWORD [60+esp],eax
    837 	lea	eax,[2400959708+ebp*1+eax]
    838 	mov	ebp,edx
    839 	add	eax,esi
    840 	and	ebp,edi
    841 	mov	esi,DWORD [esp]
    842 	add	eax,ebp
    843 	; 40_59 48
    844 	mov	ebp,ecx
    845 	xor	esi,DWORD [8+esp]
    846 	xor	ebp,edx
    847 	xor	esi,DWORD [32+esp]
    848 	and	ebp,ebx
    849 	xor	esi,DWORD [52+esp]
    850 	rol	esi,1
    851 	add	ebp,edi
    852 	ror	ebx,2
    853 	mov	edi,eax
    854 	rol	edi,5
    855 	mov	DWORD [esp],esi
    856 	lea	esi,[2400959708+ebp*1+esi]
    857 	mov	ebp,ecx
    858 	add	esi,edi
    859 	and	ebp,edx
    860 	mov	edi,DWORD [4+esp]
    861 	add	esi,ebp
    862 	; 40_59 49
    863 	mov	ebp,ebx
    864 	xor	edi,DWORD [12+esp]
    865 	xor	ebp,ecx
    866 	xor	edi,DWORD [36+esp]
    867 	and	ebp,eax
    868 	xor	edi,DWORD [56+esp]
    869 	rol	edi,1
    870 	add	ebp,edx
    871 	ror	eax,2
    872 	mov	edx,esi
    873 	rol	edx,5
    874 	mov	DWORD [4+esp],edi
    875 	lea	edi,[2400959708+ebp*1+edi]
    876 	mov	ebp,ebx
    877 	add	edi,edx
    878 	and	ebp,ecx
    879 	mov	edx,DWORD [8+esp]
    880 	add	edi,ebp
    881 	; 40_59 50
    882 	mov	ebp,eax
    883 	xor	edx,DWORD [16+esp]
    884 	xor	ebp,ebx
    885 	xor	edx,DWORD [40+esp]
    886 	and	ebp,esi
    887 	xor	edx,DWORD [60+esp]
    888 	rol	edx,1
    889 	add	ebp,ecx
    890 	ror	esi,2
    891 	mov	ecx,edi
    892 	rol	ecx,5
    893 	mov	DWORD [8+esp],edx
    894 	lea	edx,[2400959708+ebp*1+edx]
    895 	mov	ebp,eax
    896 	add	edx,ecx
    897 	and	ebp,ebx
    898 	mov	ecx,DWORD [12+esp]
    899 	add	edx,ebp
    900 	; 40_59 51
    901 	mov	ebp,esi
    902 	xor	ecx,DWORD [20+esp]
    903 	xor	ebp,eax
    904 	xor	ecx,DWORD [44+esp]
    905 	and	ebp,edi
    906 	xor	ecx,DWORD [esp]
    907 	rol	ecx,1
    908 	add	ebp,ebx
    909 	ror	edi,2
    910 	mov	ebx,edx
    911 	rol	ebx,5
    912 	mov	DWORD [12+esp],ecx
    913 	lea	ecx,[2400959708+ebp*1+ecx]
    914 	mov	ebp,esi
    915 	add	ecx,ebx
    916 	and	ebp,eax
    917 	mov	ebx,DWORD [16+esp]
    918 	add	ecx,ebp
    919 	; 40_59 52
    920 	mov	ebp,edi
    921 	xor	ebx,DWORD [24+esp]
    922 	xor	ebp,esi
    923 	xor	ebx,DWORD [48+esp]
    924 	and	ebp,edx
    925 	xor	ebx,DWORD [4+esp]
    926 	rol	ebx,1
    927 	add	ebp,eax
    928 	ror	edx,2
    929 	mov	eax,ecx
    930 	rol	eax,5
    931 	mov	DWORD [16+esp],ebx
    932 	lea	ebx,[2400959708+ebp*1+ebx]
    933 	mov	ebp,edi
    934 	add	ebx,eax
    935 	and	ebp,esi
    936 	mov	eax,DWORD [20+esp]
    937 	add	ebx,ebp
    938 	; 40_59 53
    939 	mov	ebp,edx
    940 	xor	eax,DWORD [28+esp]
    941 	xor	ebp,edi
    942 	xor	eax,DWORD [52+esp]
    943 	and	ebp,ecx
    944 	xor	eax,DWORD [8+esp]
    945 	rol	eax,1
    946 	add	ebp,esi
    947 	ror	ecx,2
    948 	mov	esi,ebx
    949 	rol	esi,5
    950 	mov	DWORD [20+esp],eax
    951 	lea	eax,[2400959708+ebp*1+eax]
    952 	mov	ebp,edx
    953 	add	eax,esi
    954 	and	ebp,edi
    955 	mov	esi,DWORD [24+esp]
    956 	add	eax,ebp
    957 	; 40_59 54
    958 	mov	ebp,ecx
    959 	xor	esi,DWORD [32+esp]
    960 	xor	ebp,edx
    961 	xor	esi,DWORD [56+esp]
    962 	and	ebp,ebx
    963 	xor	esi,DWORD [12+esp]
    964 	rol	esi,1
    965 	add	ebp,edi
    966 	ror	ebx,2
    967 	mov	edi,eax
    968 	rol	edi,5
    969 	mov	DWORD [24+esp],esi
    970 	lea	esi,[2400959708+ebp*1+esi]
    971 	mov	ebp,ecx
    972 	add	esi,edi
    973 	and	ebp,edx
    974 	mov	edi,DWORD [28+esp]
    975 	add	esi,ebp
    976 	; 40_59 55
    977 	mov	ebp,ebx
    978 	xor	edi,DWORD [36+esp]
    979 	xor	ebp,ecx
    980 	xor	edi,DWORD [60+esp]
    981 	and	ebp,eax
    982 	xor	edi,DWORD [16+esp]
    983 	rol	edi,1
    984 	add	ebp,edx
    985 	ror	eax,2
    986 	mov	edx,esi
    987 	rol	edx,5
    988 	mov	DWORD [28+esp],edi
    989 	lea	edi,[2400959708+ebp*1+edi]
    990 	mov	ebp,ebx
    991 	add	edi,edx
    992 	and	ebp,ecx
    993 	mov	edx,DWORD [32+esp]
    994 	add	edi,ebp
    995 	; 40_59 56
    996 	mov	ebp,eax
    997 	xor	edx,DWORD [40+esp]
    998 	xor	ebp,ebx
    999 	xor	edx,DWORD [esp]
   1000 	and	ebp,esi
   1001 	xor	edx,DWORD [20+esp]
   1002 	rol	edx,1
   1003 	add	ebp,ecx
   1004 	ror	esi,2
   1005 	mov	ecx,edi
   1006 	rol	ecx,5
   1007 	mov	DWORD [32+esp],edx
   1008 	lea	edx,[2400959708+ebp*1+edx]
   1009 	mov	ebp,eax
   1010 	add	edx,ecx
   1011 	and	ebp,ebx
   1012 	mov	ecx,DWORD [36+esp]
   1013 	add	edx,ebp
   1014 	; 40_59 57
   1015 	mov	ebp,esi
   1016 	xor	ecx,DWORD [44+esp]
   1017 	xor	ebp,eax
   1018 	xor	ecx,DWORD [4+esp]
   1019 	and	ebp,edi
   1020 	xor	ecx,DWORD [24+esp]
   1021 	rol	ecx,1
   1022 	add	ebp,ebx
   1023 	ror	edi,2
   1024 	mov	ebx,edx
   1025 	rol	ebx,5
   1026 	mov	DWORD [36+esp],ecx
   1027 	lea	ecx,[2400959708+ebp*1+ecx]
   1028 	mov	ebp,esi
   1029 	add	ecx,ebx
   1030 	and	ebp,eax
   1031 	mov	ebx,DWORD [40+esp]
   1032 	add	ecx,ebp
   1033 	; 40_59 58
   1034 	mov	ebp,edi
   1035 	xor	ebx,DWORD [48+esp]
   1036 	xor	ebp,esi
   1037 	xor	ebx,DWORD [8+esp]
   1038 	and	ebp,edx
   1039 	xor	ebx,DWORD [28+esp]
   1040 	rol	ebx,1
   1041 	add	ebp,eax
   1042 	ror	edx,2
   1043 	mov	eax,ecx
   1044 	rol	eax,5
   1045 	mov	DWORD [40+esp],ebx
   1046 	lea	ebx,[2400959708+ebp*1+ebx]
   1047 	mov	ebp,edi
   1048 	add	ebx,eax
   1049 	and	ebp,esi
   1050 	mov	eax,DWORD [44+esp]
   1051 	add	ebx,ebp
   1052 	; 40_59 59
   1053 	mov	ebp,edx
   1054 	xor	eax,DWORD [52+esp]
   1055 	xor	ebp,edi
   1056 	xor	eax,DWORD [12+esp]
   1057 	and	ebp,ecx
   1058 	xor	eax,DWORD [32+esp]
   1059 	rol	eax,1
   1060 	add	ebp,esi
   1061 	ror	ecx,2
   1062 	mov	esi,ebx
   1063 	rol	esi,5
   1064 	mov	DWORD [44+esp],eax
   1065 	lea	eax,[2400959708+ebp*1+eax]
   1066 	mov	ebp,edx
   1067 	add	eax,esi
   1068 	and	ebp,edi
   1069 	mov	esi,DWORD [48+esp]
   1070 	add	eax,ebp
   1071 	; 20_39 60
   1072 	mov	ebp,ebx
   1073 	xor	esi,DWORD [56+esp]
   1074 	xor	ebp,ecx
   1075 	xor	esi,DWORD [16+esp]
   1076 	xor	ebp,edx
   1077 	xor	esi,DWORD [36+esp]
   1078 	rol	esi,1
   1079 	add	edi,ebp
   1080 	ror	ebx,2
   1081 	mov	ebp,eax
   1082 	rol	ebp,5
   1083 	mov	DWORD [48+esp],esi
   1084 	lea	esi,[3395469782+edi*1+esi]
   1085 	mov	edi,DWORD [52+esp]
   1086 	add	esi,ebp
   1087 	; 20_39 61
   1088 	mov	ebp,eax
   1089 	xor	edi,DWORD [60+esp]
   1090 	xor	ebp,ebx
   1091 	xor	edi,DWORD [20+esp]
   1092 	xor	ebp,ecx
   1093 	xor	edi,DWORD [40+esp]
   1094 	rol	edi,1
   1095 	add	edx,ebp
   1096 	ror	eax,2
   1097 	mov	ebp,esi
   1098 	rol	ebp,5
   1099 	mov	DWORD [52+esp],edi
   1100 	lea	edi,[3395469782+edx*1+edi]
   1101 	mov	edx,DWORD [56+esp]
   1102 	add	edi,ebp
   1103 	; 20_39 62
   1104 	mov	ebp,esi
   1105 	xor	edx,DWORD [esp]
   1106 	xor	ebp,eax
   1107 	xor	edx,DWORD [24+esp]
   1108 	xor	ebp,ebx
   1109 	xor	edx,DWORD [44+esp]
   1110 	rol	edx,1
   1111 	add	ecx,ebp
   1112 	ror	esi,2
   1113 	mov	ebp,edi
   1114 	rol	ebp,5
   1115 	mov	DWORD [56+esp],edx
   1116 	lea	edx,[3395469782+ecx*1+edx]
   1117 	mov	ecx,DWORD [60+esp]
   1118 	add	edx,ebp
   1119 	; 20_39 63
   1120 	mov	ebp,edi
   1121 	xor	ecx,DWORD [4+esp]
   1122 	xor	ebp,esi
   1123 	xor	ecx,DWORD [28+esp]
   1124 	xor	ebp,eax
   1125 	xor	ecx,DWORD [48+esp]
   1126 	rol	ecx,1
   1127 	add	ebx,ebp
   1128 	ror	edi,2
   1129 	mov	ebp,edx
   1130 	rol	ebp,5
   1131 	mov	DWORD [60+esp],ecx
   1132 	lea	ecx,[3395469782+ebx*1+ecx]
   1133 	mov	ebx,DWORD [esp]
   1134 	add	ecx,ebp
   1135 	; 20_39 64
   1136 	mov	ebp,edx
   1137 	xor	ebx,DWORD [8+esp]
   1138 	xor	ebp,edi
   1139 	xor	ebx,DWORD [32+esp]
   1140 	xor	ebp,esi
   1141 	xor	ebx,DWORD [52+esp]
   1142 	rol	ebx,1
   1143 	add	eax,ebp
   1144 	ror	edx,2
   1145 	mov	ebp,ecx
   1146 	rol	ebp,5
   1147 	mov	DWORD [esp],ebx
   1148 	lea	ebx,[3395469782+eax*1+ebx]
   1149 	mov	eax,DWORD [4+esp]
   1150 	add	ebx,ebp
   1151 	; 20_39 65
   1152 	mov	ebp,ecx
   1153 	xor	eax,DWORD [12+esp]
   1154 	xor	ebp,edx
   1155 	xor	eax,DWORD [36+esp]
   1156 	xor	ebp,edi
   1157 	xor	eax,DWORD [56+esp]
   1158 	rol	eax,1
   1159 	add	esi,ebp
   1160 	ror	ecx,2
   1161 	mov	ebp,ebx
   1162 	rol	ebp,5
   1163 	mov	DWORD [4+esp],eax
   1164 	lea	eax,[3395469782+esi*1+eax]
   1165 	mov	esi,DWORD [8+esp]
   1166 	add	eax,ebp
   1167 	; 20_39 66
   1168 	mov	ebp,ebx
   1169 	xor	esi,DWORD [16+esp]
   1170 	xor	ebp,ecx
   1171 	xor	esi,DWORD [40+esp]
   1172 	xor	ebp,edx
   1173 	xor	esi,DWORD [60+esp]
   1174 	rol	esi,1
   1175 	add	edi,ebp
   1176 	ror	ebx,2
   1177 	mov	ebp,eax
   1178 	rol	ebp,5
   1179 	mov	DWORD [8+esp],esi
   1180 	lea	esi,[3395469782+edi*1+esi]
   1181 	mov	edi,DWORD [12+esp]
   1182 	add	esi,ebp
   1183 	; 20_39 67
   1184 	mov	ebp,eax
   1185 	xor	edi,DWORD [20+esp]
   1186 	xor	ebp,ebx
   1187 	xor	edi,DWORD [44+esp]
   1188 	xor	ebp,ecx
   1189 	xor	edi,DWORD [esp]
   1190 	rol	edi,1
   1191 	add	edx,ebp
   1192 	ror	eax,2
   1193 	mov	ebp,esi
   1194 	rol	ebp,5
   1195 	mov	DWORD [12+esp],edi
   1196 	lea	edi,[3395469782+edx*1+edi]
   1197 	mov	edx,DWORD [16+esp]
   1198 	add	edi,ebp
   1199 	; 20_39 68
   1200 	mov	ebp,esi
   1201 	xor	edx,DWORD [24+esp]
   1202 	xor	ebp,eax
   1203 	xor	edx,DWORD [48+esp]
   1204 	xor	ebp,ebx
   1205 	xor	edx,DWORD [4+esp]
   1206 	rol	edx,1
   1207 	add	ecx,ebp
   1208 	ror	esi,2
   1209 	mov	ebp,edi
   1210 	rol	ebp,5
   1211 	mov	DWORD [16+esp],edx
   1212 	lea	edx,[3395469782+ecx*1+edx]
   1213 	mov	ecx,DWORD [20+esp]
   1214 	add	edx,ebp
   1215 	; 20_39 69
   1216 	mov	ebp,edi
   1217 	xor	ecx,DWORD [28+esp]
   1218 	xor	ebp,esi
   1219 	xor	ecx,DWORD [52+esp]
   1220 	xor	ebp,eax
   1221 	xor	ecx,DWORD [8+esp]
   1222 	rol	ecx,1
   1223 	add	ebx,ebp
   1224 	ror	edi,2
   1225 	mov	ebp,edx
   1226 	rol	ebp,5
   1227 	mov	DWORD [20+esp],ecx
   1228 	lea	ecx,[3395469782+ebx*1+ecx]
   1229 	mov	ebx,DWORD [24+esp]
   1230 	add	ecx,ebp
   1231 	; 20_39 70
   1232 	mov	ebp,edx
   1233 	xor	ebx,DWORD [32+esp]
   1234 	xor	ebp,edi
   1235 	xor	ebx,DWORD [56+esp]
   1236 	xor	ebp,esi
   1237 	xor	ebx,DWORD [12+esp]
   1238 	rol	ebx,1
   1239 	add	eax,ebp
   1240 	ror	edx,2
   1241 	mov	ebp,ecx
   1242 	rol	ebp,5
   1243 	mov	DWORD [24+esp],ebx
   1244 	lea	ebx,[3395469782+eax*1+ebx]
   1245 	mov	eax,DWORD [28+esp]
   1246 	add	ebx,ebp
   1247 	; 20_39 71
   1248 	mov	ebp,ecx
   1249 	xor	eax,DWORD [36+esp]
   1250 	xor	ebp,edx
   1251 	xor	eax,DWORD [60+esp]
   1252 	xor	ebp,edi
   1253 	xor	eax,DWORD [16+esp]
   1254 	rol	eax,1
   1255 	add	esi,ebp
   1256 	ror	ecx,2
   1257 	mov	ebp,ebx
   1258 	rol	ebp,5
   1259 	mov	DWORD [28+esp],eax
   1260 	lea	eax,[3395469782+esi*1+eax]
   1261 	mov	esi,DWORD [32+esp]
   1262 	add	eax,ebp
   1263 	; 20_39 72
   1264 	mov	ebp,ebx
   1265 	xor	esi,DWORD [40+esp]
   1266 	xor	ebp,ecx
   1267 	xor	esi,DWORD [esp]
   1268 	xor	ebp,edx
   1269 	xor	esi,DWORD [20+esp]
   1270 	rol	esi,1
   1271 	add	edi,ebp
   1272 	ror	ebx,2
   1273 	mov	ebp,eax
   1274 	rol	ebp,5
   1275 	mov	DWORD [32+esp],esi
   1276 	lea	esi,[3395469782+edi*1+esi]
   1277 	mov	edi,DWORD [36+esp]
   1278 	add	esi,ebp
   1279 	; 20_39 73
   1280 	mov	ebp,eax
   1281 	xor	edi,DWORD [44+esp]
   1282 	xor	ebp,ebx
   1283 	xor	edi,DWORD [4+esp]
   1284 	xor	ebp,ecx
   1285 	xor	edi,DWORD [24+esp]
   1286 	rol	edi,1
   1287 	add	edx,ebp
   1288 	ror	eax,2
   1289 	mov	ebp,esi
   1290 	rol	ebp,5
   1291 	mov	DWORD [36+esp],edi
   1292 	lea	edi,[3395469782+edx*1+edi]
   1293 	mov	edx,DWORD [40+esp]
   1294 	add	edi,ebp
   1295 	; 20_39 74
   1296 	mov	ebp,esi
   1297 	xor	edx,DWORD [48+esp]
   1298 	xor	ebp,eax
   1299 	xor	edx,DWORD [8+esp]
   1300 	xor	ebp,ebx
   1301 	xor	edx,DWORD [28+esp]
   1302 	rol	edx,1
   1303 	add	ecx,ebp
   1304 	ror	esi,2
   1305 	mov	ebp,edi
   1306 	rol	ebp,5
   1307 	mov	DWORD [40+esp],edx
   1308 	lea	edx,[3395469782+ecx*1+edx]
   1309 	mov	ecx,DWORD [44+esp]
   1310 	add	edx,ebp
   1311 	; 20_39 75
   1312 	mov	ebp,edi
   1313 	xor	ecx,DWORD [52+esp]
   1314 	xor	ebp,esi
   1315 	xor	ecx,DWORD [12+esp]
   1316 	xor	ebp,eax
   1317 	xor	ecx,DWORD [32+esp]
   1318 	rol	ecx,1
   1319 	add	ebx,ebp
   1320 	ror	edi,2
   1321 	mov	ebp,edx
   1322 	rol	ebp,5
   1323 	mov	DWORD [44+esp],ecx
   1324 	lea	ecx,[3395469782+ebx*1+ecx]
   1325 	mov	ebx,DWORD [48+esp]
   1326 	add	ecx,ebp
   1327 	; 20_39 76
   1328 	mov	ebp,edx
   1329 	xor	ebx,DWORD [56+esp]
   1330 	xor	ebp,edi
   1331 	xor	ebx,DWORD [16+esp]
   1332 	xor	ebp,esi
   1333 	xor	ebx,DWORD [36+esp]
   1334 	rol	ebx,1
   1335 	add	eax,ebp
   1336 	ror	edx,2
   1337 	mov	ebp,ecx
   1338 	rol	ebp,5
   1339 	mov	DWORD [48+esp],ebx
   1340 	lea	ebx,[3395469782+eax*1+ebx]
   1341 	mov	eax,DWORD [52+esp]
   1342 	add	ebx,ebp
   1343 	; 20_39 77
   1344 	mov	ebp,ecx
   1345 	xor	eax,DWORD [60+esp]
   1346 	xor	ebp,edx
   1347 	xor	eax,DWORD [20+esp]
   1348 	xor	ebp,edi
   1349 	xor	eax,DWORD [40+esp]
   1350 	rol	eax,1
   1351 	add	esi,ebp
   1352 	ror	ecx,2
   1353 	mov	ebp,ebx
   1354 	rol	ebp,5
   1355 	lea	eax,[3395469782+esi*1+eax]
   1356 	mov	esi,DWORD [56+esp]
   1357 	add	eax,ebp
   1358 	; 20_39 78
   1359 	mov	ebp,ebx
   1360 	xor	esi,DWORD [esp]
   1361 	xor	ebp,ecx
   1362 	xor	esi,DWORD [24+esp]
   1363 	xor	ebp,edx
   1364 	xor	esi,DWORD [44+esp]
   1365 	rol	esi,1
   1366 	add	edi,ebp
   1367 	ror	ebx,2
   1368 	mov	ebp,eax
   1369 	rol	ebp,5
   1370 	lea	esi,[3395469782+edi*1+esi]
   1371 	mov	edi,DWORD [60+esp]
   1372 	add	esi,ebp
   1373 	; 20_39 79
   1374 	mov	ebp,eax
   1375 	xor	edi,DWORD [4+esp]
   1376 	xor	ebp,ebx
   1377 	xor	edi,DWORD [28+esp]
   1378 	xor	ebp,ecx
   1379 	xor	edi,DWORD [48+esp]
   1380 	rol	edi,1
   1381 	add	edx,ebp
   1382 	ror	eax,2
   1383 	mov	ebp,esi
   1384 	rol	ebp,5
   1385 	lea	edi,[3395469782+edx*1+edi]
   1386 	add	edi,ebp
   1387 	mov	ebp,DWORD [96+esp]
   1388 	mov	edx,DWORD [100+esp]
   1389 	add	edi,DWORD [ebp]
   1390 	add	esi,DWORD [4+ebp]
   1391 	add	eax,DWORD [8+ebp]
   1392 	add	ebx,DWORD [12+ebp]
   1393 	add	ecx,DWORD [16+ebp]
   1394 	mov	DWORD [ebp],edi
   1395 	add	edx,64
   1396 	mov	DWORD [4+ebp],esi
   1397 	cmp	edx,DWORD [104+esp]
   1398 	mov	DWORD [8+ebp],eax
   1399 	mov	edi,ecx
   1400 	mov	DWORD [12+ebp],ebx
   1401 	mov	esi,edx
   1402 	mov	DWORD [16+ebp],ecx
   1403 	jb	NEAR L$002loop
   1404 	add	esp,76
   1405 	pop	edi
   1406 	pop	esi
   1407 	pop	ebx
   1408 	pop	ebp
   1409 	ret
   1410 align	16
   1411 __sha1_block_data_order_ssse3:
   1412 	push	ebp
   1413 	push	ebx
   1414 	push	esi
   1415 	push	edi
   1416 	call	L$003pic_point
   1417 L$003pic_point:
   1418 	pop	ebp
   1419 	lea	ebp,[(L$K_XX_XX-L$003pic_point)+ebp]
   1420 L$ssse3_shortcut:
   1421 	movdqa	xmm7,[ebp]
   1422 	movdqa	xmm0,[16+ebp]
   1423 	movdqa	xmm1,[32+ebp]
   1424 	movdqa	xmm2,[48+ebp]
   1425 	movdqa	xmm6,[64+ebp]
   1426 	mov	edi,DWORD [20+esp]
   1427 	mov	ebp,DWORD [24+esp]
   1428 	mov	edx,DWORD [28+esp]
   1429 	mov	esi,esp
   1430 	sub	esp,208
   1431 	and	esp,-64
   1432 	movdqa	[112+esp],xmm0
   1433 	movdqa	[128+esp],xmm1
   1434 	movdqa	[144+esp],xmm2
   1435 	shl	edx,6
   1436 	movdqa	[160+esp],xmm7
   1437 	add	edx,ebp
   1438 	movdqa	[176+esp],xmm6
   1439 	add	ebp,64
   1440 	mov	DWORD [192+esp],edi
   1441 	mov	DWORD [196+esp],ebp
   1442 	mov	DWORD [200+esp],edx
   1443 	mov	DWORD [204+esp],esi
   1444 	mov	eax,DWORD [edi]
   1445 	mov	ebx,DWORD [4+edi]
   1446 	mov	ecx,DWORD [8+edi]
   1447 	mov	edx,DWORD [12+edi]
   1448 	mov	edi,DWORD [16+edi]
   1449 	mov	esi,ebx
   1450 	movdqu	xmm0,[ebp-64]
   1451 	movdqu	xmm1,[ebp-48]
   1452 	movdqu	xmm2,[ebp-32]
   1453 	movdqu	xmm3,[ebp-16]
   1454 db	102,15,56,0,198
   1455 db	102,15,56,0,206
   1456 db	102,15,56,0,214
   1457 	movdqa	[96+esp],xmm7
   1458 db	102,15,56,0,222
   1459 	paddd	xmm0,xmm7
   1460 	paddd	xmm1,xmm7
   1461 	paddd	xmm2,xmm7
   1462 	movdqa	[esp],xmm0
   1463 	psubd	xmm0,xmm7
   1464 	movdqa	[16+esp],xmm1
   1465 	psubd	xmm1,xmm7
   1466 	movdqa	[32+esp],xmm2
   1467 	mov	ebp,ecx
   1468 	psubd	xmm2,xmm7
   1469 	xor	ebp,edx
   1470 	pshufd	xmm4,xmm0,238
   1471 	and	esi,ebp
   1472 	jmp	NEAR L$004loop
   1473 align	16
   1474 L$004loop:
   1475 	ror	ebx,2
   1476 	xor	esi,edx
   1477 	mov	ebp,eax
   1478 	punpcklqdq	xmm4,xmm1
   1479 	movdqa	xmm6,xmm3
   1480 	add	edi,DWORD [esp]
   1481 	xor	ebx,ecx
   1482 	paddd	xmm7,xmm3
   1483 	movdqa	[64+esp],xmm0
   1484 	rol	eax,5
   1485 	add	edi,esi
   1486 	psrldq	xmm6,4
   1487 	and	ebp,ebx
   1488 	xor	ebx,ecx
   1489 	pxor	xmm4,xmm0
   1490 	add	edi,eax
   1491 	ror	eax,7
   1492 	pxor	xmm6,xmm2
   1493 	xor	ebp,ecx
   1494 	mov	esi,edi
   1495 	add	edx,DWORD [4+esp]
   1496 	pxor	xmm4,xmm6
   1497 	xor	eax,ebx
   1498 	rol	edi,5
   1499 	movdqa	[48+esp],xmm7
   1500 	add	edx,ebp
   1501 	and	esi,eax
   1502 	movdqa	xmm0,xmm4
   1503 	xor	eax,ebx
   1504 	add	edx,edi
   1505 	ror	edi,7
   1506 	movdqa	xmm6,xmm4
   1507 	xor	esi,ebx
   1508 	pslldq	xmm0,12
   1509 	paddd	xmm4,xmm4
   1510 	mov	ebp,edx
   1511 	add	ecx,DWORD [8+esp]
   1512 	psrld	xmm6,31
   1513 	xor	edi,eax
   1514 	rol	edx,5
   1515 	movdqa	xmm7,xmm0
   1516 	add	ecx,esi
   1517 	and	ebp,edi
   1518 	xor	edi,eax
   1519 	psrld	xmm0,30
   1520 	add	ecx,edx
   1521 	ror	edx,7
   1522 	por	xmm4,xmm6
   1523 	xor	ebp,eax
   1524 	mov	esi,ecx
   1525 	add	ebx,DWORD [12+esp]
   1526 	pslld	xmm7,2
   1527 	xor	edx,edi
   1528 	rol	ecx,5
   1529 	pxor	xmm4,xmm0
   1530 	movdqa	xmm0,[96+esp]
   1531 	add	ebx,ebp
   1532 	and	esi,edx
   1533 	pxor	xmm4,xmm7
   1534 	pshufd	xmm5,xmm1,238
   1535 	xor	edx,edi
   1536 	add	ebx,ecx
   1537 	ror	ecx,7
   1538 	xor	esi,edi
   1539 	mov	ebp,ebx
   1540 	punpcklqdq	xmm5,xmm2
   1541 	movdqa	xmm7,xmm4
   1542 	add	eax,DWORD [16+esp]
   1543 	xor	ecx,edx
   1544 	paddd	xmm0,xmm4
   1545 	movdqa	[80+esp],xmm1
   1546 	rol	ebx,5
   1547 	add	eax,esi
   1548 	psrldq	xmm7,4
   1549 	and	ebp,ecx
   1550 	xor	ecx,edx
   1551 	pxor	xmm5,xmm1
   1552 	add	eax,ebx
   1553 	ror	ebx,7
   1554 	pxor	xmm7,xmm3
   1555 	xor	ebp,edx
   1556 	mov	esi,eax
   1557 	add	edi,DWORD [20+esp]
   1558 	pxor	xmm5,xmm7
   1559 	xor	ebx,ecx
   1560 	rol	eax,5
   1561 	movdqa	[esp],xmm0
   1562 	add	edi,ebp
   1563 	and	esi,ebx
   1564 	movdqa	xmm1,xmm5
   1565 	xor	ebx,ecx
   1566 	add	edi,eax
   1567 	ror	eax,7
   1568 	movdqa	xmm7,xmm5
   1569 	xor	esi,ecx
   1570 	pslldq	xmm1,12
   1571 	paddd	xmm5,xmm5
   1572 	mov	ebp,edi
   1573 	add	edx,DWORD [24+esp]
   1574 	psrld	xmm7,31
   1575 	xor	eax,ebx
   1576 	rol	edi,5
   1577 	movdqa	xmm0,xmm1
   1578 	add	edx,esi
   1579 	and	ebp,eax
   1580 	xor	eax,ebx
   1581 	psrld	xmm1,30
   1582 	add	edx,edi
   1583 	ror	edi,7
   1584 	por	xmm5,xmm7
   1585 	xor	ebp,ebx
   1586 	mov	esi,edx
   1587 	add	ecx,DWORD [28+esp]
   1588 	pslld	xmm0,2
   1589 	xor	edi,eax
   1590 	rol	edx,5
   1591 	pxor	xmm5,xmm1
   1592 	movdqa	xmm1,[112+esp]
   1593 	add	ecx,ebp
   1594 	and	esi,edi
   1595 	pxor	xmm5,xmm0
   1596 	pshufd	xmm6,xmm2,238
   1597 	xor	edi,eax
   1598 	add	ecx,edx
   1599 	ror	edx,7
   1600 	xor	esi,eax
   1601 	mov	ebp,ecx
   1602 	punpcklqdq	xmm6,xmm3
   1603 	movdqa	xmm0,xmm5
   1604 	add	ebx,DWORD [32+esp]
   1605 	xor	edx,edi
   1606 	paddd	xmm1,xmm5
   1607 	movdqa	[96+esp],xmm2
   1608 	rol	ecx,5
   1609 	add	ebx,esi
   1610 	psrldq	xmm0,4
   1611 	and	ebp,edx
   1612 	xor	edx,edi
   1613 	pxor	xmm6,xmm2
   1614 	add	ebx,ecx
   1615 	ror	ecx,7
   1616 	pxor	xmm0,xmm4
   1617 	xor	ebp,edi
   1618 	mov	esi,ebx
   1619 	add	eax,DWORD [36+esp]
   1620 	pxor	xmm6,xmm0
   1621 	xor	ecx,edx
   1622 	rol	ebx,5
   1623 	movdqa	[16+esp],xmm1
   1624 	add	eax,ebp
   1625 	and	esi,ecx
   1626 	movdqa	xmm2,xmm6
   1627 	xor	ecx,edx
   1628 	add	eax,ebx
   1629 	ror	ebx,7
   1630 	movdqa	xmm0,xmm6
   1631 	xor	esi,edx
   1632 	pslldq	xmm2,12
   1633 	paddd	xmm6,xmm6
   1634 	mov	ebp,eax
   1635 	add	edi,DWORD [40+esp]
   1636 	psrld	xmm0,31
   1637 	xor	ebx,ecx
   1638 	rol	eax,5
   1639 	movdqa	xmm1,xmm2
   1640 	add	edi,esi
   1641 	and	ebp,ebx
   1642 	xor	ebx,ecx
   1643 	psrld	xmm2,30
   1644 	add	edi,eax
   1645 	ror	eax,7
   1646 	por	xmm6,xmm0
   1647 	xor	ebp,ecx
   1648 	movdqa	xmm0,[64+esp]
   1649 	mov	esi,edi
   1650 	add	edx,DWORD [44+esp]
   1651 	pslld	xmm1,2
   1652 	xor	eax,ebx
   1653 	rol	edi,5
   1654 	pxor	xmm6,xmm2
   1655 	movdqa	xmm2,[112+esp]
   1656 	add	edx,ebp
   1657 	and	esi,eax
   1658 	pxor	xmm6,xmm1
   1659 	pshufd	xmm7,xmm3,238
   1660 	xor	eax,ebx
   1661 	add	edx,edi
   1662 	ror	edi,7
   1663 	xor	esi,ebx
   1664 	mov	ebp,edx
   1665 	punpcklqdq	xmm7,xmm4
   1666 	movdqa	xmm1,xmm6
   1667 	add	ecx,DWORD [48+esp]
   1668 	xor	edi,eax
   1669 	paddd	xmm2,xmm6
   1670 	movdqa	[64+esp],xmm3
   1671 	rol	edx,5
   1672 	add	ecx,esi
   1673 	psrldq	xmm1,4
   1674 	and	ebp,edi
   1675 	xor	edi,eax
   1676 	pxor	xmm7,xmm3
   1677 	add	ecx,edx
   1678 	ror	edx,7
   1679 	pxor	xmm1,xmm5
   1680 	xor	ebp,eax
   1681 	mov	esi,ecx
   1682 	add	ebx,DWORD [52+esp]
   1683 	pxor	xmm7,xmm1
   1684 	xor	edx,edi
   1685 	rol	ecx,5
   1686 	movdqa	[32+esp],xmm2
   1687 	add	ebx,ebp
   1688 	and	esi,edx
   1689 	movdqa	xmm3,xmm7
   1690 	xor	edx,edi
   1691 	add	ebx,ecx
   1692 	ror	ecx,7
   1693 	movdqa	xmm1,xmm7
   1694 	xor	esi,edi
   1695 	pslldq	xmm3,12
   1696 	paddd	xmm7,xmm7
   1697 	mov	ebp,ebx
   1698 	add	eax,DWORD [56+esp]
   1699 	psrld	xmm1,31
   1700 	xor	ecx,edx
   1701 	rol	ebx,5
   1702 	movdqa	xmm2,xmm3
   1703 	add	eax,esi
   1704 	and	ebp,ecx
   1705 	xor	ecx,edx
   1706 	psrld	xmm3,30
   1707 	add	eax,ebx
   1708 	ror	ebx,7
   1709 	por	xmm7,xmm1
   1710 	xor	ebp,edx
   1711 	movdqa	xmm1,[80+esp]
   1712 	mov	esi,eax
   1713 	add	edi,DWORD [60+esp]
   1714 	pslld	xmm2,2
   1715 	xor	ebx,ecx
   1716 	rol	eax,5
   1717 	pxor	xmm7,xmm3
   1718 	movdqa	xmm3,[112+esp]
   1719 	add	edi,ebp
   1720 	and	esi,ebx
   1721 	pxor	xmm7,xmm2
   1722 	pshufd	xmm2,xmm6,238
   1723 	xor	ebx,ecx
   1724 	add	edi,eax
   1725 	ror	eax,7
   1726 	pxor	xmm0,xmm4
   1727 	punpcklqdq	xmm2,xmm7
   1728 	xor	esi,ecx
   1729 	mov	ebp,edi
   1730 	add	edx,DWORD [esp]
   1731 	pxor	xmm0,xmm1
   1732 	movdqa	[80+esp],xmm4
   1733 	xor	eax,ebx
   1734 	rol	edi,5
   1735 	movdqa	xmm4,xmm3
   1736 	add	edx,esi
   1737 	paddd	xmm3,xmm7
   1738 	and	ebp,eax
   1739 	pxor	xmm0,xmm2
   1740 	xor	eax,ebx
   1741 	add	edx,edi
   1742 	ror	edi,7
   1743 	xor	ebp,ebx
   1744 	movdqa	xmm2,xmm0
   1745 	movdqa	[48+esp],xmm3
   1746 	mov	esi,edx
   1747 	add	ecx,DWORD [4+esp]
   1748 	xor	edi,eax
   1749 	rol	edx,5
   1750 	pslld	xmm0,2
   1751 	add	ecx,ebp
   1752 	and	esi,edi
   1753 	psrld	xmm2,30
   1754 	xor	edi,eax
   1755 	add	ecx,edx
   1756 	ror	edx,7
   1757 	xor	esi,eax
   1758 	mov	ebp,ecx
   1759 	add	ebx,DWORD [8+esp]
   1760 	xor	edx,edi
   1761 	rol	ecx,5
   1762 	por	xmm0,xmm2
   1763 	add	ebx,esi
   1764 	and	ebp,edx
   1765 	movdqa	xmm2,[96+esp]
   1766 	xor	edx,edi
   1767 	add	ebx,ecx
   1768 	add	eax,DWORD [12+esp]
   1769 	xor	ebp,edi
   1770 	mov	esi,ebx
   1771 	pshufd	xmm3,xmm7,238
   1772 	rol	ebx,5
   1773 	add	eax,ebp
   1774 	xor	esi,edx
   1775 	ror	ecx,7
   1776 	add	eax,ebx
   1777 	add	edi,DWORD [16+esp]
   1778 	pxor	xmm1,xmm5
   1779 	punpcklqdq	xmm3,xmm0
   1780 	xor	esi,ecx
   1781 	mov	ebp,eax
   1782 	rol	eax,5
   1783 	pxor	xmm1,xmm2
   1784 	movdqa	[96+esp],xmm5
   1785 	add	edi,esi
   1786 	xor	ebp,ecx
   1787 	movdqa	xmm5,xmm4
   1788 	ror	ebx,7
   1789 	paddd	xmm4,xmm0
   1790 	add	edi,eax
   1791 	pxor	xmm1,xmm3
   1792 	add	edx,DWORD [20+esp]
   1793 	xor	ebp,ebx
   1794 	mov	esi,edi
   1795 	rol	edi,5
   1796 	movdqa	xmm3,xmm1
   1797 	movdqa	[esp],xmm4
   1798 	add	edx,ebp
   1799 	xor	esi,ebx
   1800 	ror	eax,7
   1801 	add	edx,edi
   1802 	pslld	xmm1,2
   1803 	add	ecx,DWORD [24+esp]
   1804 	xor	esi,eax
   1805 	psrld	xmm3,30
   1806 	mov	ebp,edx
   1807 	rol	edx,5
   1808 	add	ecx,esi
   1809 	xor	ebp,eax
   1810 	ror	edi,7
   1811 	add	ecx,edx
   1812 	por	xmm1,xmm3
   1813 	add	ebx,DWORD [28+esp]
   1814 	xor	ebp,edi
   1815 	movdqa	xmm3,[64+esp]
   1816 	mov	esi,ecx
   1817 	rol	ecx,5
   1818 	add	ebx,ebp
   1819 	xor	esi,edi
   1820 	ror	edx,7
   1821 	pshufd	xmm4,xmm0,238
   1822 	add	ebx,ecx
   1823 	add	eax,DWORD [32+esp]
   1824 	pxor	xmm2,xmm6
   1825 	punpcklqdq	xmm4,xmm1
   1826 	xor	esi,edx
   1827 	mov	ebp,ebx
   1828 	rol	ebx,5
   1829 	pxor	xmm2,xmm3
   1830 	movdqa	[64+esp],xmm6
   1831 	add	eax,esi
   1832 	xor	ebp,edx
   1833 	movdqa	xmm6,[128+esp]
   1834 	ror	ecx,7
   1835 	paddd	xmm5,xmm1
   1836 	add	eax,ebx
   1837 	pxor	xmm2,xmm4
   1838 	add	edi,DWORD [36+esp]
   1839 	xor	ebp,ecx
   1840 	mov	esi,eax
   1841 	rol	eax,5
   1842 	movdqa	xmm4,xmm2
   1843 	movdqa	[16+esp],xmm5
   1844 	add	edi,ebp
   1845 	xor	esi,ecx
   1846 	ror	ebx,7
   1847 	add	edi,eax
   1848 	pslld	xmm2,2
   1849 	add	edx,DWORD [40+esp]
   1850 	xor	esi,ebx
   1851 	psrld	xmm4,30
   1852 	mov	ebp,edi
   1853 	rol	edi,5
   1854 	add	edx,esi
   1855 	xor	ebp,ebx
   1856 	ror	eax,7
   1857 	add	edx,edi
   1858 	por	xmm2,xmm4
   1859 	add	ecx,DWORD [44+esp]
   1860 	xor	ebp,eax
   1861 	movdqa	xmm4,[80+esp]
   1862 	mov	esi,edx
   1863 	rol	edx,5
   1864 	add	ecx,ebp
   1865 	xor	esi,eax
   1866 	ror	edi,7
   1867 	pshufd	xmm5,xmm1,238
   1868 	add	ecx,edx
   1869 	add	ebx,DWORD [48+esp]
   1870 	pxor	xmm3,xmm7
   1871 	punpcklqdq	xmm5,xmm2
   1872 	xor	esi,edi
   1873 	mov	ebp,ecx
   1874 	rol	ecx,5
   1875 	pxor	xmm3,xmm4
   1876 	movdqa	[80+esp],xmm7
   1877 	add	ebx,esi
   1878 	xor	ebp,edi
   1879 	movdqa	xmm7,xmm6
   1880 	ror	edx,7
   1881 	paddd	xmm6,xmm2
   1882 	add	ebx,ecx
   1883 	pxor	xmm3,xmm5
   1884 	add	eax,DWORD [52+esp]
   1885 	xor	ebp,edx
   1886 	mov	esi,ebx
   1887 	rol	ebx,5
   1888 	movdqa	xmm5,xmm3
   1889 	movdqa	[32+esp],xmm6
   1890 	add	eax,ebp
   1891 	xor	esi,edx
   1892 	ror	ecx,7
   1893 	add	eax,ebx
   1894 	pslld	xmm3,2
   1895 	add	edi,DWORD [56+esp]
   1896 	xor	esi,ecx
   1897 	psrld	xmm5,30
   1898 	mov	ebp,eax
   1899 	rol	eax,5
   1900 	add	edi,esi
   1901 	xor	ebp,ecx
   1902 	ror	ebx,7
   1903 	add	edi,eax
   1904 	por	xmm3,xmm5
   1905 	add	edx,DWORD [60+esp]
   1906 	xor	ebp,ebx
   1907 	movdqa	xmm5,[96+esp]
   1908 	mov	esi,edi
   1909 	rol	edi,5
   1910 	add	edx,ebp
   1911 	xor	esi,ebx
   1912 	ror	eax,7
   1913 	pshufd	xmm6,xmm2,238
   1914 	add	edx,edi
   1915 	add	ecx,DWORD [esp]
   1916 	pxor	xmm4,xmm0
   1917 	punpcklqdq	xmm6,xmm3
   1918 	xor	esi,eax
   1919 	mov	ebp,edx
   1920 	rol	edx,5
   1921 	pxor	xmm4,xmm5
   1922 	movdqa	[96+esp],xmm0
   1923 	add	ecx,esi
   1924 	xor	ebp,eax
   1925 	movdqa	xmm0,xmm7
   1926 	ror	edi,7
   1927 	paddd	xmm7,xmm3
   1928 	add	ecx,edx
   1929 	pxor	xmm4,xmm6
   1930 	add	ebx,DWORD [4+esp]
   1931 	xor	ebp,edi
   1932 	mov	esi,ecx
   1933 	rol	ecx,5
   1934 	movdqa	xmm6,xmm4
   1935 	movdqa	[48+esp],xmm7
   1936 	add	ebx,ebp
   1937 	xor	esi,edi
   1938 	ror	edx,7
   1939 	add	ebx,ecx
   1940 	pslld	xmm4,2
   1941 	add	eax,DWORD [8+esp]
   1942 	xor	esi,edx
   1943 	psrld	xmm6,30
   1944 	mov	ebp,ebx
   1945 	rol	ebx,5
   1946 	add	eax,esi
   1947 	xor	ebp,edx
   1948 	ror	ecx,7
   1949 	add	eax,ebx
   1950 	por	xmm4,xmm6
   1951 	add	edi,DWORD [12+esp]
   1952 	xor	ebp,ecx
   1953 	movdqa	xmm6,[64+esp]
   1954 	mov	esi,eax
   1955 	rol	eax,5
   1956 	add	edi,ebp
   1957 	xor	esi,ecx
   1958 	ror	ebx,7
   1959 	pshufd	xmm7,xmm3,238
   1960 	add	edi,eax
   1961 	add	edx,DWORD [16+esp]
   1962 	pxor	xmm5,xmm1
   1963 	punpcklqdq	xmm7,xmm4
   1964 	xor	esi,ebx
   1965 	mov	ebp,edi
   1966 	rol	edi,5
   1967 	pxor	xmm5,xmm6
   1968 	movdqa	[64+esp],xmm1
   1969 	add	edx,esi
   1970 	xor	ebp,ebx
   1971 	movdqa	xmm1,xmm0
   1972 	ror	eax,7
   1973 	paddd	xmm0,xmm4
   1974 	add	edx,edi
   1975 	pxor	xmm5,xmm7
   1976 	add	ecx,DWORD [20+esp]
   1977 	xor	ebp,eax
   1978 	mov	esi,edx
   1979 	rol	edx,5
   1980 	movdqa	xmm7,xmm5
   1981 	movdqa	[esp],xmm0
   1982 	add	ecx,ebp
   1983 	xor	esi,eax
   1984 	ror	edi,7
   1985 	add	ecx,edx
   1986 	pslld	xmm5,2
   1987 	add	ebx,DWORD [24+esp]
   1988 	xor	esi,edi
   1989 	psrld	xmm7,30
   1990 	mov	ebp,ecx
   1991 	rol	ecx,5
   1992 	add	ebx,esi
   1993 	xor	ebp,edi
   1994 	ror	edx,7
   1995 	add	ebx,ecx
   1996 	por	xmm5,xmm7
   1997 	add	eax,DWORD [28+esp]
   1998 	movdqa	xmm7,[80+esp]
   1999 	ror	ecx,7
   2000 	mov	esi,ebx
   2001 	xor	ebp,edx
   2002 	rol	ebx,5
   2003 	pshufd	xmm0,xmm4,238
   2004 	add	eax,ebp
   2005 	xor	esi,ecx
   2006 	xor	ecx,edx
   2007 	add	eax,ebx
   2008 	add	edi,DWORD [32+esp]
   2009 	pxor	xmm6,xmm2
   2010 	punpcklqdq	xmm0,xmm5
   2011 	and	esi,ecx
   2012 	xor	ecx,edx
   2013 	ror	ebx,7
   2014 	pxor	xmm6,xmm7
   2015 	movdqa	[80+esp],xmm2
   2016 	mov	ebp,eax
   2017 	xor	esi,ecx
   2018 	rol	eax,5
   2019 	movdqa	xmm2,xmm1
   2020 	add	edi,esi
   2021 	paddd	xmm1,xmm5
   2022 	xor	ebp,ebx
   2023 	pxor	xmm6,xmm0
   2024 	xor	ebx,ecx
   2025 	add	edi,eax
   2026 	add	edx,DWORD [36+esp]
   2027 	and	ebp,ebx
   2028 	movdqa	xmm0,xmm6
   2029 	movdqa	[16+esp],xmm1
   2030 	xor	ebx,ecx
   2031 	ror	eax,7
   2032 	mov	esi,edi
   2033 	xor	ebp,ebx
   2034 	rol	edi,5
   2035 	pslld	xmm6,2
   2036 	add	edx,ebp
   2037 	xor	esi,eax
   2038 	psrld	xmm0,30
   2039 	xor	eax,ebx
   2040 	add	edx,edi
   2041 	add	ecx,DWORD [40+esp]
   2042 	and	esi,eax
   2043 	xor	eax,ebx
   2044 	ror	edi,7
   2045 	por	xmm6,xmm0
   2046 	mov	ebp,edx
   2047 	xor	esi,eax
   2048 	movdqa	xmm0,[96+esp]
   2049 	rol	edx,5
   2050 	add	ecx,esi
   2051 	xor	ebp,edi
   2052 	xor	edi,eax
   2053 	add	ecx,edx
   2054 	pshufd	xmm1,xmm5,238
   2055 	add	ebx,DWORD [44+esp]
   2056 	and	ebp,edi
   2057 	xor	edi,eax
   2058 	ror	edx,7
   2059 	mov	esi,ecx
   2060 	xor	ebp,edi
   2061 	rol	ecx,5
   2062 	add	ebx,ebp
   2063 	xor	esi,edx
   2064 	xor	edx,edi
   2065 	add	ebx,ecx
   2066 	add	eax,DWORD [48+esp]
   2067 	pxor	xmm7,xmm3
   2068 	punpcklqdq	xmm1,xmm6
   2069 	and	esi,edx
   2070 	xor	edx,edi
   2071 	ror	ecx,7
   2072 	pxor	xmm7,xmm0
   2073 	movdqa	[96+esp],xmm3
   2074 	mov	ebp,ebx
   2075 	xor	esi,edx
   2076 	rol	ebx,5
   2077 	movdqa	xmm3,[144+esp]
   2078 	add	eax,esi
   2079 	paddd	xmm2,xmm6
   2080 	xor	ebp,ecx
   2081 	pxor	xmm7,xmm1
   2082 	xor	ecx,edx
   2083 	add	eax,ebx
   2084 	add	edi,DWORD [52+esp]
   2085 	and	ebp,ecx
   2086 	movdqa	xmm1,xmm7
   2087 	movdqa	[32+esp],xmm2
   2088 	xor	ecx,edx
   2089 	ror	ebx,7
   2090 	mov	esi,eax
   2091 	xor	ebp,ecx
   2092 	rol	eax,5
   2093 	pslld	xmm7,2
   2094 	add	edi,ebp
   2095 	xor	esi,ebx
   2096 	psrld	xmm1,30
   2097 	xor	ebx,ecx
   2098 	add	edi,eax
   2099 	add	edx,DWORD [56+esp]
   2100 	and	esi,ebx
   2101 	xor	ebx,ecx
   2102 	ror	eax,7
   2103 	por	xmm7,xmm1
   2104 	mov	ebp,edi
   2105 	xor	esi,ebx
   2106 	movdqa	xmm1,[64+esp]
   2107 	rol	edi,5
   2108 	add	edx,esi
   2109 	xor	ebp,eax
   2110 	xor	eax,ebx
   2111 	add	edx,edi
   2112 	pshufd	xmm2,xmm6,238
   2113 	add	ecx,DWORD [60+esp]
   2114 	and	ebp,eax
   2115 	xor	eax,ebx
   2116 	ror	edi,7
   2117 	mov	esi,edx
   2118 	xor	ebp,eax
   2119 	rol	edx,5
   2120 	add	ecx,ebp
   2121 	xor	esi,edi
   2122 	xor	edi,eax
   2123 	add	ecx,edx
   2124 	add	ebx,DWORD [esp]
   2125 	pxor	xmm0,xmm4
   2126 	punpcklqdq	xmm2,xmm7
   2127 	and	esi,edi
   2128 	xor	edi,eax
   2129 	ror	edx,7
   2130 	pxor	xmm0,xmm1
   2131 	movdqa	[64+esp],xmm4
   2132 	mov	ebp,ecx
   2133 	xor	esi,edi
   2134 	rol	ecx,5
   2135 	movdqa	xmm4,xmm3
   2136 	add	ebx,esi
   2137 	paddd	xmm3,xmm7
   2138 	xor	ebp,edx
   2139 	pxor	xmm0,xmm2
   2140 	xor	edx,edi
   2141 	add	ebx,ecx
   2142 	add	eax,DWORD [4+esp]
   2143 	and	ebp,edx
   2144 	movdqa	xmm2,xmm0
   2145 	movdqa	[48+esp],xmm3
   2146 	xor	edx,edi
   2147 	ror	ecx,7
   2148 	mov	esi,ebx
   2149 	xor	ebp,edx
   2150 	rol	ebx,5
   2151 	pslld	xmm0,2
   2152 	add	eax,ebp
   2153 	xor	esi,ecx
   2154 	psrld	xmm2,30
   2155 	xor	ecx,edx
   2156 	add	eax,ebx
   2157 	add	edi,DWORD [8+esp]
   2158 	and	esi,ecx
   2159 	xor	ecx,edx
   2160 	ror	ebx,7
   2161 	por	xmm0,xmm2
   2162 	mov	ebp,eax
   2163 	xor	esi,ecx
   2164 	movdqa	xmm2,[80+esp]
   2165 	rol	eax,5
   2166 	add	edi,esi
   2167 	xor	ebp,ebx
   2168 	xor	ebx,ecx
   2169 	add	edi,eax
   2170 	pshufd	xmm3,xmm7,238
   2171 	add	edx,DWORD [12+esp]
   2172 	and	ebp,ebx
   2173 	xor	ebx,ecx
   2174 	ror	eax,7
   2175 	mov	esi,edi
   2176 	xor	ebp,ebx
   2177 	rol	edi,5
   2178 	add	edx,ebp
   2179 	xor	esi,eax
   2180 	xor	eax,ebx
   2181 	add	edx,edi
   2182 	add	ecx,DWORD [16+esp]
   2183 	pxor	xmm1,xmm5
   2184 	punpcklqdq	xmm3,xmm0
   2185 	and	esi,eax
   2186 	xor	eax,ebx
   2187 	ror	edi,7
   2188 	pxor	xmm1,xmm2
   2189 	movdqa	[80+esp],xmm5
   2190 	mov	ebp,edx
   2191 	xor	esi,eax
   2192 	rol	edx,5
   2193 	movdqa	xmm5,xmm4
   2194 	add	ecx,esi
   2195 	paddd	xmm4,xmm0
   2196 	xor	ebp,edi
   2197 	pxor	xmm1,xmm3
   2198 	xor	edi,eax
   2199 	add	ecx,edx
   2200 	add	ebx,DWORD [20+esp]
   2201 	and	ebp,edi
   2202 	movdqa	xmm3,xmm1
   2203 	movdqa	[esp],xmm4
   2204 	xor	edi,eax
   2205 	ror	edx,7
   2206 	mov	esi,ecx
   2207 	xor	ebp,edi
   2208 	rol	ecx,5
   2209 	pslld	xmm1,2
   2210 	add	ebx,ebp
   2211 	xor	esi,edx
   2212 	psrld	xmm3,30
   2213 	xor	edx,edi
   2214 	add	ebx,ecx
   2215 	add	eax,DWORD [24+esp]
   2216 	and	esi,edx
   2217 	xor	edx,edi
   2218 	ror	ecx,7
   2219 	por	xmm1,xmm3
   2220 	mov	ebp,ebx
   2221 	xor	esi,edx
   2222 	movdqa	xmm3,[96+esp]
   2223 	rol	ebx,5
   2224 	add	eax,esi
   2225 	xor	ebp,ecx
   2226 	xor	ecx,edx
   2227 	add	eax,ebx
   2228 	pshufd	xmm4,xmm0,238
   2229 	add	edi,DWORD [28+esp]
   2230 	and	ebp,ecx
   2231 	xor	ecx,edx
   2232 	ror	ebx,7
   2233 	mov	esi,eax
   2234 	xor	ebp,ecx
   2235 	rol	eax,5
   2236 	add	edi,ebp
   2237 	xor	esi,ebx
   2238 	xor	ebx,ecx
   2239 	add	edi,eax
   2240 	add	edx,DWORD [32+esp]
   2241 	pxor	xmm2,xmm6
   2242 	punpcklqdq	xmm4,xmm1
   2243 	and	esi,ebx
   2244 	xor	ebx,ecx
   2245 	ror	eax,7
   2246 	pxor	xmm2,xmm3
   2247 	movdqa	[96+esp],xmm6
   2248 	mov	ebp,edi
   2249 	xor	esi,ebx
   2250 	rol	edi,5
   2251 	movdqa	xmm6,xmm5
   2252 	add	edx,esi
   2253 	paddd	xmm5,xmm1
   2254 	xor	ebp,eax
   2255 	pxor	xmm2,xmm4
   2256 	xor	eax,ebx
   2257 	add	edx,edi
   2258 	add	ecx,DWORD [36+esp]
   2259 	and	ebp,eax
   2260 	movdqa	xmm4,xmm2
   2261 	movdqa	[16+esp],xmm5
   2262 	xor	eax,ebx
   2263 	ror	edi,7
   2264 	mov	esi,edx
   2265 	xor	ebp,eax
   2266 	rol	edx,5
   2267 	pslld	xmm2,2
   2268 	add	ecx,ebp
   2269 	xor	esi,edi
   2270 	psrld	xmm4,30
   2271 	xor	edi,eax
   2272 	add	ecx,edx
   2273 	add	ebx,DWORD [40+esp]
   2274 	and	esi,edi
   2275 	xor	edi,eax
   2276 	ror	edx,7
   2277 	por	xmm2,xmm4
   2278 	mov	ebp,ecx
   2279 	xor	esi,edi
   2280 	movdqa	xmm4,[64+esp]
   2281 	rol	ecx,5
   2282 	add	ebx,esi
   2283 	xor	ebp,edx
   2284 	xor	edx,edi
   2285 	add	ebx,ecx
   2286 	pshufd	xmm5,xmm1,238
   2287 	add	eax,DWORD [44+esp]
   2288 	and	ebp,edx
   2289 	xor	edx,edi
   2290 	ror	ecx,7
   2291 	mov	esi,ebx
   2292 	xor	ebp,edx
   2293 	rol	ebx,5
   2294 	add	eax,ebp
   2295 	xor	esi,edx
   2296 	add	eax,ebx
   2297 	add	edi,DWORD [48+esp]
   2298 	pxor	xmm3,xmm7
   2299 	punpcklqdq	xmm5,xmm2
   2300 	xor	esi,ecx
   2301 	mov	ebp,eax
   2302 	rol	eax,5
   2303 	pxor	xmm3,xmm4
   2304 	movdqa	[64+esp],xmm7
   2305 	add	edi,esi
   2306 	xor	ebp,ecx
   2307 	movdqa	xmm7,xmm6
   2308 	ror	ebx,7
   2309 	paddd	xmm6,xmm2
   2310 	add	edi,eax
   2311 	pxor	xmm3,xmm5
   2312 	add	edx,DWORD [52+esp]
   2313 	xor	ebp,ebx
   2314 	mov	esi,edi
   2315 	rol	edi,5
   2316 	movdqa	xmm5,xmm3
   2317 	movdqa	[32+esp],xmm6
   2318 	add	edx,ebp
   2319 	xor	esi,ebx
   2320 	ror	eax,7
   2321 	add	edx,edi
   2322 	pslld	xmm3,2
   2323 	add	ecx,DWORD [56+esp]
   2324 	xor	esi,eax
   2325 	psrld	xmm5,30
   2326 	mov	ebp,edx
   2327 	rol	edx,5
   2328 	add	ecx,esi
   2329 	xor	ebp,eax
   2330 	ror	edi,7
   2331 	add	ecx,edx
   2332 	por	xmm3,xmm5
   2333 	add	ebx,DWORD [60+esp]
   2334 	xor	ebp,edi
   2335 	mov	esi,ecx
   2336 	rol	ecx,5
   2337 	add	ebx,ebp
   2338 	xor	esi,edi
   2339 	ror	edx,7
   2340 	add	ebx,ecx
   2341 	add	eax,DWORD [esp]
   2342 	xor	esi,edx
   2343 	mov	ebp,ebx
   2344 	rol	ebx,5
   2345 	add	eax,esi
   2346 	xor	ebp,edx
   2347 	ror	ecx,7
   2348 	paddd	xmm7,xmm3
   2349 	add	eax,ebx
   2350 	add	edi,DWORD [4+esp]
   2351 	xor	ebp,ecx
   2352 	mov	esi,eax
   2353 	movdqa	[48+esp],xmm7
   2354 	rol	eax,5
   2355 	add	edi,ebp
   2356 	xor	esi,ecx
   2357 	ror	ebx,7
   2358 	add	edi,eax
   2359 	add	edx,DWORD [8+esp]
   2360 	xor	esi,ebx
   2361 	mov	ebp,edi
   2362 	rol	edi,5
   2363 	add	edx,esi
   2364 	xor	ebp,ebx
   2365 	ror	eax,7
   2366 	add	edx,edi
   2367 	add	ecx,DWORD [12+esp]
   2368 	xor	ebp,eax
   2369 	mov	esi,edx
   2370 	rol	edx,5
   2371 	add	ecx,ebp
   2372 	xor	esi,eax
   2373 	ror	edi,7
   2374 	add	ecx,edx
   2375 	mov	ebp,DWORD [196+esp]
   2376 	cmp	ebp,DWORD [200+esp]
   2377 	je	NEAR L$005done
   2378 	movdqa	xmm7,[160+esp]
   2379 	movdqa	xmm6,[176+esp]
   2380 	movdqu	xmm0,[ebp]
   2381 	movdqu	xmm1,[16+ebp]
   2382 	movdqu	xmm2,[32+ebp]
   2383 	movdqu	xmm3,[48+ebp]
   2384 	add	ebp,64
   2385 db	102,15,56,0,198
   2386 	mov	DWORD [196+esp],ebp
   2387 	movdqa	[96+esp],xmm7
   2388 	add	ebx,DWORD [16+esp]
   2389 	xor	esi,edi
   2390 	mov	ebp,ecx
   2391 	rol	ecx,5
   2392 	add	ebx,esi
   2393 	xor	ebp,edi
   2394 	ror	edx,7
   2395 db	102,15,56,0,206
   2396 	add	ebx,ecx
   2397 	add	eax,DWORD [20+esp]
   2398 	xor	ebp,edx
   2399 	mov	esi,ebx
   2400 	paddd	xmm0,xmm7
   2401 	rol	ebx,5
   2402 	add	eax,ebp
   2403 	xor	esi,edx
   2404 	ror	ecx,7
   2405 	movdqa	[esp],xmm0
   2406 	add	eax,ebx
   2407 	add	edi,DWORD [24+esp]
   2408 	xor	esi,ecx
   2409 	mov	ebp,eax
   2410 	psubd	xmm0,xmm7
   2411 	rol	eax,5
   2412 	add	edi,esi
   2413 	xor	ebp,ecx
   2414 	ror	ebx,7
   2415 	add	edi,eax
   2416 	add	edx,DWORD [28+esp]
   2417 	xor	ebp,ebx
   2418 	mov	esi,edi
   2419 	rol	edi,5
   2420 	add	edx,ebp
   2421 	xor	esi,ebx
   2422 	ror	eax,7
   2423 	add	edx,edi
   2424 	add	ecx,DWORD [32+esp]
   2425 	xor	esi,eax
   2426 	mov	ebp,edx
   2427 	rol	edx,5
   2428 	add	ecx,esi
   2429 	xor	ebp,eax
   2430 	ror	edi,7
   2431 db	102,15,56,0,214
   2432 	add	ecx,edx
   2433 	add	ebx,DWORD [36+esp]
   2434 	xor	ebp,edi
   2435 	mov	esi,ecx
   2436 	paddd	xmm1,xmm7
   2437 	rol	ecx,5
   2438 	add	ebx,ebp
   2439 	xor	esi,edi
   2440 	ror	edx,7
   2441 	movdqa	[16+esp],xmm1
   2442 	add	ebx,ecx
   2443 	add	eax,DWORD [40+esp]
   2444 	xor	esi,edx
   2445 	mov	ebp,ebx
   2446 	psubd	xmm1,xmm7
   2447 	rol	ebx,5
   2448 	add	eax,esi
   2449 	xor	ebp,edx
   2450 	ror	ecx,7
   2451 	add	eax,ebx
   2452 	add	edi,DWORD [44+esp]
   2453 	xor	ebp,ecx
   2454 	mov	esi,eax
   2455 	rol	eax,5
   2456 	add	edi,ebp
   2457 	xor	esi,ecx
   2458 	ror	ebx,7
   2459 	add	edi,eax
   2460 	add	edx,DWORD [48+esp]
   2461 	xor	esi,ebx
   2462 	mov	ebp,edi
   2463 	rol	edi,5
   2464 	add	edx,esi
   2465 	xor	ebp,ebx
   2466 	ror	eax,7
   2467 db	102,15,56,0,222
   2468 	add	edx,edi
   2469 	add	ecx,DWORD [52+esp]
   2470 	xor	ebp,eax
   2471 	mov	esi,edx
   2472 	paddd	xmm2,xmm7
   2473 	rol	edx,5
   2474 	add	ecx,ebp
   2475 	xor	esi,eax
   2476 	ror	edi,7
   2477 	movdqa	[32+esp],xmm2
   2478 	add	ecx,edx
   2479 	add	ebx,DWORD [56+esp]
   2480 	xor	esi,edi
   2481 	mov	ebp,ecx
   2482 	psubd	xmm2,xmm7
   2483 	rol	ecx,5
   2484 	add	ebx,esi
   2485 	xor	ebp,edi
   2486 	ror	edx,7
   2487 	add	ebx,ecx
   2488 	add	eax,DWORD [60+esp]
   2489 	xor	ebp,edx
   2490 	mov	esi,ebx
   2491 	rol	ebx,5
   2492 	add	eax,ebp
   2493 	ror	ecx,7
   2494 	add	eax,ebx
   2495 	mov	ebp,DWORD [192+esp]
   2496 	add	eax,DWORD [ebp]
   2497 	add	esi,DWORD [4+ebp]
   2498 	add	ecx,DWORD [8+ebp]
   2499 	mov	DWORD [ebp],eax
   2500 	add	edx,DWORD [12+ebp]
   2501 	mov	DWORD [4+ebp],esi
   2502 	add	edi,DWORD [16+ebp]
   2503 	mov	DWORD [8+ebp],ecx
   2504 	mov	ebx,ecx
   2505 	mov	DWORD [12+ebp],edx
   2506 	xor	ebx,edx
   2507 	mov	DWORD [16+ebp],edi
   2508 	mov	ebp,esi
   2509 	pshufd	xmm4,xmm0,238
   2510 	and	esi,ebx
   2511 	mov	ebx,ebp
   2512 	jmp	NEAR L$004loop
   2513 align	16
   2514 L$005done:
   2515 	add	ebx,DWORD [16+esp]
   2516 	xor	esi,edi
   2517 	mov	ebp,ecx
   2518 	rol	ecx,5
   2519 	add	ebx,esi
   2520 	xor	ebp,edi
   2521 	ror	edx,7
   2522 	add	ebx,ecx
   2523 	add	eax,DWORD [20+esp]
   2524 	xor	ebp,edx
   2525 	mov	esi,ebx
   2526 	rol	ebx,5
   2527 	add	eax,ebp
   2528 	xor	esi,edx
   2529 	ror	ecx,7
   2530 	add	eax,ebx
   2531 	add	edi,DWORD [24+esp]
   2532 	xor	esi,ecx
   2533 	mov	ebp,eax
   2534 	rol	eax,5
   2535 	add	edi,esi
   2536 	xor	ebp,ecx
   2537 	ror	ebx,7
   2538 	add	edi,eax
   2539 	add	edx,DWORD [28+esp]
   2540 	xor	ebp,ebx
   2541 	mov	esi,edi
   2542 	rol	edi,5
   2543 	add	edx,ebp
   2544 	xor	esi,ebx
   2545 	ror	eax,7
   2546 	add	edx,edi
   2547 	add	ecx,DWORD [32+esp]
   2548 	xor	esi,eax
   2549 	mov	ebp,edx
   2550 	rol	edx,5
   2551 	add	ecx,esi
   2552 	xor	ebp,eax
   2553 	ror	edi,7
   2554 	add	ecx,edx
   2555 	add	ebx,DWORD [36+esp]
   2556 	xor	ebp,edi
   2557 	mov	esi,ecx
   2558 	rol	ecx,5
   2559 	add	ebx,ebp
   2560 	xor	esi,edi
   2561 	ror	edx,7
   2562 	add	ebx,ecx
   2563 	add	eax,DWORD [40+esp]
   2564 	xor	esi,edx
   2565 	mov	ebp,ebx
   2566 	rol	ebx,5
   2567 	add	eax,esi
   2568 	xor	ebp,edx
   2569 	ror	ecx,7
   2570 	add	eax,ebx
   2571 	add	edi,DWORD [44+esp]
   2572 	xor	ebp,ecx
   2573 	mov	esi,eax
   2574 	rol	eax,5
   2575 	add	edi,ebp
   2576 	xor	esi,ecx
   2577 	ror	ebx,7
   2578 	add	edi,eax
   2579 	add	edx,DWORD [48+esp]
   2580 	xor	esi,ebx
   2581 	mov	ebp,edi
   2582 	rol	edi,5
   2583 	add	edx,esi
   2584 	xor	ebp,ebx
   2585 	ror	eax,7
   2586 	add	edx,edi
   2587 	add	ecx,DWORD [52+esp]
   2588 	xor	ebp,eax
   2589 	mov	esi,edx
   2590 	rol	edx,5
   2591 	add	ecx,ebp
   2592 	xor	esi,eax
   2593 	ror	edi,7
   2594 	add	ecx,edx
   2595 	add	ebx,DWORD [56+esp]
   2596 	xor	esi,edi
   2597 	mov	ebp,ecx
   2598 	rol	ecx,5
   2599 	add	ebx,esi
   2600 	xor	ebp,edi
   2601 	ror	edx,7
   2602 	add	ebx,ecx
   2603 	add	eax,DWORD [60+esp]
   2604 	xor	ebp,edx
   2605 	mov	esi,ebx
   2606 	rol	ebx,5
   2607 	add	eax,ebp
   2608 	ror	ecx,7
   2609 	add	eax,ebx
   2610 	mov	ebp,DWORD [192+esp]
   2611 	add	eax,DWORD [ebp]
   2612 	mov	esp,DWORD [204+esp]
   2613 	add	esi,DWORD [4+ebp]
   2614 	add	ecx,DWORD [8+ebp]
   2615 	mov	DWORD [ebp],eax
   2616 	add	edx,DWORD [12+ebp]
   2617 	mov	DWORD [4+ebp],esi
   2618 	add	edi,DWORD [16+ebp]
   2619 	mov	DWORD [8+ebp],ecx
   2620 	mov	DWORD [12+ebp],edx
   2621 	mov	DWORD [16+ebp],edi
   2622 	pop	edi
   2623 	pop	esi
   2624 	pop	ebx
   2625 	pop	ebp
   2626 	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
   3796 L$K_XX_XX:
   3797 dd	1518500249,1518500249,1518500249,1518500249
   3798 dd	1859775393,1859775393,1859775393,1859775393
   3799 dd	2400959708,2400959708,2400959708,2400959708
   3800 dd	3395469782,3395469782,3395469782,3395469782
   3801 dd	66051,67438087,134810123,202182159
   3802 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
   3804 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
   3806 db	114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0
   3807 segment	.bss
   3808 common	_OPENSSL_ia32cap_P 16
   3809