|  | ; This file is generated from a similarly-named Perl script in the BoringSSL | 
|  | ; source tree. Do not edit by hand. | 
|  |  | 
|  | %ifidn __OUTPUT_FORMAT__, win64 | 
|  | default	rel | 
|  | %define XMMWORD | 
|  | %define YMMWORD | 
|  | %define ZMMWORD | 
|  | %define _CET_ENDBR | 
|  |  | 
|  | %ifdef BORINGSSL_PREFIX | 
|  | %include "boringssl_prefix_symbols_nasm.inc" | 
|  | %endif | 
|  | section	.text code align=64 | 
|  |  | 
|  | ALIGN	16 | 
|  |  | 
|  | global	md5_block_asm_data_order | 
|  |  | 
|  | md5_block_asm_data_order: | 
|  | mov	QWORD[8+rsp],rdi	;WIN64 prologue | 
|  | mov	QWORD[16+rsp],rsi | 
|  | mov	rax,rsp | 
|  | $L$SEH_begin_md5_block_asm_data_order: | 
|  | mov	rdi,rcx | 
|  | mov	rsi,rdx | 
|  | mov	rdx,r8 | 
|  |  | 
|  |  | 
|  |  | 
|  | _CET_ENDBR | 
|  | push	rbp | 
|  |  | 
|  | push	rbx | 
|  |  | 
|  | push	r12 | 
|  |  | 
|  | push	r14 | 
|  |  | 
|  | push	r15 | 
|  |  | 
|  | $L$prologue: | 
|  |  | 
|  |  | 
|  |  | 
|  |  | 
|  | mov	rbp,rdi | 
|  | shl	rdx,6 | 
|  | lea	rdi,[rdx*1+rsi] | 
|  | mov	eax,DWORD[rbp] | 
|  | mov	ebx,DWORD[4+rbp] | 
|  | mov	ecx,DWORD[8+rbp] | 
|  | mov	edx,DWORD[12+rbp] | 
|  |  | 
|  |  | 
|  |  | 
|  |  | 
|  |  | 
|  |  | 
|  |  | 
|  | cmp	rsi,rdi | 
|  | je	NEAR $L$end | 
|  |  | 
|  |  | 
|  | $L$loop: | 
|  | mov	r8d,eax | 
|  | mov	r9d,ebx | 
|  | mov	r14d,ecx | 
|  | mov	r15d,edx | 
|  | mov	r10d,DWORD[rsi] | 
|  | mov	r11d,edx | 
|  | xor	r11d,ecx | 
|  | lea	eax,[((-680876936))+r10*1+rax] | 
|  | and	r11d,ebx | 
|  | xor	r11d,edx | 
|  | mov	r10d,DWORD[4+rsi] | 
|  | add	eax,r11d | 
|  | rol	eax,7 | 
|  | mov	r11d,ecx | 
|  | add	eax,ebx | 
|  | xor	r11d,ebx | 
|  | lea	edx,[((-389564586))+r10*1+rdx] | 
|  | and	r11d,eax | 
|  | xor	r11d,ecx | 
|  | mov	r10d,DWORD[8+rsi] | 
|  | add	edx,r11d | 
|  | rol	edx,12 | 
|  | mov	r11d,ebx | 
|  | add	edx,eax | 
|  | xor	r11d,eax | 
|  | lea	ecx,[606105819+r10*1+rcx] | 
|  | and	r11d,edx | 
|  | xor	r11d,ebx | 
|  | mov	r10d,DWORD[12+rsi] | 
|  | add	ecx,r11d | 
|  | rol	ecx,17 | 
|  | mov	r11d,eax | 
|  | add	ecx,edx | 
|  | xor	r11d,edx | 
|  | lea	ebx,[((-1044525330))+r10*1+rbx] | 
|  | and	r11d,ecx | 
|  | xor	r11d,eax | 
|  | mov	r10d,DWORD[16+rsi] | 
|  | add	ebx,r11d | 
|  | rol	ebx,22 | 
|  | mov	r11d,edx | 
|  | add	ebx,ecx | 
|  | xor	r11d,ecx | 
|  | lea	eax,[((-176418897))+r10*1+rax] | 
|  | and	r11d,ebx | 
|  | xor	r11d,edx | 
|  | mov	r10d,DWORD[20+rsi] | 
|  | add	eax,r11d | 
|  | rol	eax,7 | 
|  | mov	r11d,ecx | 
|  | add	eax,ebx | 
|  | xor	r11d,ebx | 
|  | lea	edx,[1200080426+r10*1+rdx] | 
|  | and	r11d,eax | 
|  | xor	r11d,ecx | 
|  | mov	r10d,DWORD[24+rsi] | 
|  | add	edx,r11d | 
|  | rol	edx,12 | 
|  | mov	r11d,ebx | 
|  | add	edx,eax | 
|  | xor	r11d,eax | 
|  | lea	ecx,[((-1473231341))+r10*1+rcx] | 
|  | and	r11d,edx | 
|  | xor	r11d,ebx | 
|  | mov	r10d,DWORD[28+rsi] | 
|  | add	ecx,r11d | 
|  | rol	ecx,17 | 
|  | mov	r11d,eax | 
|  | add	ecx,edx | 
|  | xor	r11d,edx | 
|  | lea	ebx,[((-45705983))+r10*1+rbx] | 
|  | and	r11d,ecx | 
|  | xor	r11d,eax | 
|  | mov	r10d,DWORD[32+rsi] | 
|  | add	ebx,r11d | 
|  | rol	ebx,22 | 
|  | mov	r11d,edx | 
|  | add	ebx,ecx | 
|  | xor	r11d,ecx | 
|  | lea	eax,[1770035416+r10*1+rax] | 
|  | and	r11d,ebx | 
|  | xor	r11d,edx | 
|  | mov	r10d,DWORD[36+rsi] | 
|  | add	eax,r11d | 
|  | rol	eax,7 | 
|  | mov	r11d,ecx | 
|  | add	eax,ebx | 
|  | xor	r11d,ebx | 
|  | lea	edx,[((-1958414417))+r10*1+rdx] | 
|  | and	r11d,eax | 
|  | xor	r11d,ecx | 
|  | mov	r10d,DWORD[40+rsi] | 
|  | add	edx,r11d | 
|  | rol	edx,12 | 
|  | mov	r11d,ebx | 
|  | add	edx,eax | 
|  | xor	r11d,eax | 
|  | lea	ecx,[((-42063))+r10*1+rcx] | 
|  | and	r11d,edx | 
|  | xor	r11d,ebx | 
|  | mov	r10d,DWORD[44+rsi] | 
|  | add	ecx,r11d | 
|  | rol	ecx,17 | 
|  | mov	r11d,eax | 
|  | add	ecx,edx | 
|  | xor	r11d,edx | 
|  | lea	ebx,[((-1990404162))+r10*1+rbx] | 
|  | and	r11d,ecx | 
|  | xor	r11d,eax | 
|  | mov	r10d,DWORD[48+rsi] | 
|  | add	ebx,r11d | 
|  | rol	ebx,22 | 
|  | mov	r11d,edx | 
|  | add	ebx,ecx | 
|  | xor	r11d,ecx | 
|  | lea	eax,[1804603682+r10*1+rax] | 
|  | and	r11d,ebx | 
|  | xor	r11d,edx | 
|  | mov	r10d,DWORD[52+rsi] | 
|  | add	eax,r11d | 
|  | rol	eax,7 | 
|  | mov	r11d,ecx | 
|  | add	eax,ebx | 
|  | xor	r11d,ebx | 
|  | lea	edx,[((-40341101))+r10*1+rdx] | 
|  | and	r11d,eax | 
|  | xor	r11d,ecx | 
|  | mov	r10d,DWORD[56+rsi] | 
|  | add	edx,r11d | 
|  | rol	edx,12 | 
|  | mov	r11d,ebx | 
|  | add	edx,eax | 
|  | xor	r11d,eax | 
|  | lea	ecx,[((-1502002290))+r10*1+rcx] | 
|  | and	r11d,edx | 
|  | xor	r11d,ebx | 
|  | mov	r10d,DWORD[60+rsi] | 
|  | add	ecx,r11d | 
|  | rol	ecx,17 | 
|  | mov	r11d,eax | 
|  | add	ecx,edx | 
|  | xor	r11d,edx | 
|  | lea	ebx,[1236535329+r10*1+rbx] | 
|  | and	r11d,ecx | 
|  | xor	r11d,eax | 
|  | mov	r10d,DWORD[rsi] | 
|  | add	ebx,r11d | 
|  | rol	ebx,22 | 
|  | mov	r11d,edx | 
|  | add	ebx,ecx | 
|  | mov	r10d,DWORD[4+rsi] | 
|  | mov	r11d,edx | 
|  | mov	r12d,edx | 
|  | not	r11d | 
|  | lea	eax,[((-165796510))+r10*1+rax] | 
|  | and	r12d,ebx | 
|  | and	r11d,ecx | 
|  | mov	r10d,DWORD[24+rsi] | 
|  | or	r12d,r11d | 
|  | mov	r11d,ecx | 
|  | add	eax,r12d | 
|  | mov	r12d,ecx | 
|  | rol	eax,5 | 
|  | add	eax,ebx | 
|  | not	r11d | 
|  | lea	edx,[((-1069501632))+r10*1+rdx] | 
|  | and	r12d,eax | 
|  | and	r11d,ebx | 
|  | mov	r10d,DWORD[44+rsi] | 
|  | or	r12d,r11d | 
|  | mov	r11d,ebx | 
|  | add	edx,r12d | 
|  | mov	r12d,ebx | 
|  | rol	edx,9 | 
|  | add	edx,eax | 
|  | not	r11d | 
|  | lea	ecx,[643717713+r10*1+rcx] | 
|  | and	r12d,edx | 
|  | and	r11d,eax | 
|  | mov	r10d,DWORD[rsi] | 
|  | or	r12d,r11d | 
|  | mov	r11d,eax | 
|  | add	ecx,r12d | 
|  | mov	r12d,eax | 
|  | rol	ecx,14 | 
|  | add	ecx,edx | 
|  | not	r11d | 
|  | lea	ebx,[((-373897302))+r10*1+rbx] | 
|  | and	r12d,ecx | 
|  | and	r11d,edx | 
|  | mov	r10d,DWORD[20+rsi] | 
|  | or	r12d,r11d | 
|  | mov	r11d,edx | 
|  | add	ebx,r12d | 
|  | mov	r12d,edx | 
|  | rol	ebx,20 | 
|  | add	ebx,ecx | 
|  | not	r11d | 
|  | lea	eax,[((-701558691))+r10*1+rax] | 
|  | and	r12d,ebx | 
|  | and	r11d,ecx | 
|  | mov	r10d,DWORD[40+rsi] | 
|  | or	r12d,r11d | 
|  | mov	r11d,ecx | 
|  | add	eax,r12d | 
|  | mov	r12d,ecx | 
|  | rol	eax,5 | 
|  | add	eax,ebx | 
|  | not	r11d | 
|  | lea	edx,[38016083+r10*1+rdx] | 
|  | and	r12d,eax | 
|  | and	r11d,ebx | 
|  | mov	r10d,DWORD[60+rsi] | 
|  | or	r12d,r11d | 
|  | mov	r11d,ebx | 
|  | add	edx,r12d | 
|  | mov	r12d,ebx | 
|  | rol	edx,9 | 
|  | add	edx,eax | 
|  | not	r11d | 
|  | lea	ecx,[((-660478335))+r10*1+rcx] | 
|  | and	r12d,edx | 
|  | and	r11d,eax | 
|  | mov	r10d,DWORD[16+rsi] | 
|  | or	r12d,r11d | 
|  | mov	r11d,eax | 
|  | add	ecx,r12d | 
|  | mov	r12d,eax | 
|  | rol	ecx,14 | 
|  | add	ecx,edx | 
|  | not	r11d | 
|  | lea	ebx,[((-405537848))+r10*1+rbx] | 
|  | and	r12d,ecx | 
|  | and	r11d,edx | 
|  | mov	r10d,DWORD[36+rsi] | 
|  | or	r12d,r11d | 
|  | mov	r11d,edx | 
|  | add	ebx,r12d | 
|  | mov	r12d,edx | 
|  | rol	ebx,20 | 
|  | add	ebx,ecx | 
|  | not	r11d | 
|  | lea	eax,[568446438+r10*1+rax] | 
|  | and	r12d,ebx | 
|  | and	r11d,ecx | 
|  | mov	r10d,DWORD[56+rsi] | 
|  | or	r12d,r11d | 
|  | mov	r11d,ecx | 
|  | add	eax,r12d | 
|  | mov	r12d,ecx | 
|  | rol	eax,5 | 
|  | add	eax,ebx | 
|  | not	r11d | 
|  | lea	edx,[((-1019803690))+r10*1+rdx] | 
|  | and	r12d,eax | 
|  | and	r11d,ebx | 
|  | mov	r10d,DWORD[12+rsi] | 
|  | or	r12d,r11d | 
|  | mov	r11d,ebx | 
|  | add	edx,r12d | 
|  | mov	r12d,ebx | 
|  | rol	edx,9 | 
|  | add	edx,eax | 
|  | not	r11d | 
|  | lea	ecx,[((-187363961))+r10*1+rcx] | 
|  | and	r12d,edx | 
|  | and	r11d,eax | 
|  | mov	r10d,DWORD[32+rsi] | 
|  | or	r12d,r11d | 
|  | mov	r11d,eax | 
|  | add	ecx,r12d | 
|  | mov	r12d,eax | 
|  | rol	ecx,14 | 
|  | add	ecx,edx | 
|  | not	r11d | 
|  | lea	ebx,[1163531501+r10*1+rbx] | 
|  | and	r12d,ecx | 
|  | and	r11d,edx | 
|  | mov	r10d,DWORD[52+rsi] | 
|  | or	r12d,r11d | 
|  | mov	r11d,edx | 
|  | add	ebx,r12d | 
|  | mov	r12d,edx | 
|  | rol	ebx,20 | 
|  | add	ebx,ecx | 
|  | not	r11d | 
|  | lea	eax,[((-1444681467))+r10*1+rax] | 
|  | and	r12d,ebx | 
|  | and	r11d,ecx | 
|  | mov	r10d,DWORD[8+rsi] | 
|  | or	r12d,r11d | 
|  | mov	r11d,ecx | 
|  | add	eax,r12d | 
|  | mov	r12d,ecx | 
|  | rol	eax,5 | 
|  | add	eax,ebx | 
|  | not	r11d | 
|  | lea	edx,[((-51403784))+r10*1+rdx] | 
|  | and	r12d,eax | 
|  | and	r11d,ebx | 
|  | mov	r10d,DWORD[28+rsi] | 
|  | or	r12d,r11d | 
|  | mov	r11d,ebx | 
|  | add	edx,r12d | 
|  | mov	r12d,ebx | 
|  | rol	edx,9 | 
|  | add	edx,eax | 
|  | not	r11d | 
|  | lea	ecx,[1735328473+r10*1+rcx] | 
|  | and	r12d,edx | 
|  | and	r11d,eax | 
|  | mov	r10d,DWORD[48+rsi] | 
|  | or	r12d,r11d | 
|  | mov	r11d,eax | 
|  | add	ecx,r12d | 
|  | mov	r12d,eax | 
|  | rol	ecx,14 | 
|  | add	ecx,edx | 
|  | not	r11d | 
|  | lea	ebx,[((-1926607734))+r10*1+rbx] | 
|  | and	r12d,ecx | 
|  | and	r11d,edx | 
|  | mov	r10d,DWORD[rsi] | 
|  | or	r12d,r11d | 
|  | mov	r11d,edx | 
|  | add	ebx,r12d | 
|  | mov	r12d,edx | 
|  | rol	ebx,20 | 
|  | add	ebx,ecx | 
|  | mov	r10d,DWORD[20+rsi] | 
|  | mov	r11d,ecx | 
|  | lea	eax,[((-378558))+r10*1+rax] | 
|  | mov	r10d,DWORD[32+rsi] | 
|  | xor	r11d,edx | 
|  | xor	r11d,ebx | 
|  | add	eax,r11d | 
|  | rol	eax,4 | 
|  | mov	r11d,ebx | 
|  | add	eax,ebx | 
|  | lea	edx,[((-2022574463))+r10*1+rdx] | 
|  | mov	r10d,DWORD[44+rsi] | 
|  | xor	r11d,ecx | 
|  | xor	r11d,eax | 
|  | add	edx,r11d | 
|  | rol	edx,11 | 
|  | mov	r11d,eax | 
|  | add	edx,eax | 
|  | lea	ecx,[1839030562+r10*1+rcx] | 
|  | mov	r10d,DWORD[56+rsi] | 
|  | xor	r11d,ebx | 
|  | xor	r11d,edx | 
|  | add	ecx,r11d | 
|  | rol	ecx,16 | 
|  | mov	r11d,edx | 
|  | add	ecx,edx | 
|  | lea	ebx,[((-35309556))+r10*1+rbx] | 
|  | mov	r10d,DWORD[4+rsi] | 
|  | xor	r11d,eax | 
|  | xor	r11d,ecx | 
|  | add	ebx,r11d | 
|  | rol	ebx,23 | 
|  | mov	r11d,ecx | 
|  | add	ebx,ecx | 
|  | lea	eax,[((-1530992060))+r10*1+rax] | 
|  | mov	r10d,DWORD[16+rsi] | 
|  | xor	r11d,edx | 
|  | xor	r11d,ebx | 
|  | add	eax,r11d | 
|  | rol	eax,4 | 
|  | mov	r11d,ebx | 
|  | add	eax,ebx | 
|  | lea	edx,[1272893353+r10*1+rdx] | 
|  | mov	r10d,DWORD[28+rsi] | 
|  | xor	r11d,ecx | 
|  | xor	r11d,eax | 
|  | add	edx,r11d | 
|  | rol	edx,11 | 
|  | mov	r11d,eax | 
|  | add	edx,eax | 
|  | lea	ecx,[((-155497632))+r10*1+rcx] | 
|  | mov	r10d,DWORD[40+rsi] | 
|  | xor	r11d,ebx | 
|  | xor	r11d,edx | 
|  | add	ecx,r11d | 
|  | rol	ecx,16 | 
|  | mov	r11d,edx | 
|  | add	ecx,edx | 
|  | lea	ebx,[((-1094730640))+r10*1+rbx] | 
|  | mov	r10d,DWORD[52+rsi] | 
|  | xor	r11d,eax | 
|  | xor	r11d,ecx | 
|  | add	ebx,r11d | 
|  | rol	ebx,23 | 
|  | mov	r11d,ecx | 
|  | add	ebx,ecx | 
|  | lea	eax,[681279174+r10*1+rax] | 
|  | mov	r10d,DWORD[rsi] | 
|  | xor	r11d,edx | 
|  | xor	r11d,ebx | 
|  | add	eax,r11d | 
|  | rol	eax,4 | 
|  | mov	r11d,ebx | 
|  | add	eax,ebx | 
|  | lea	edx,[((-358537222))+r10*1+rdx] | 
|  | mov	r10d,DWORD[12+rsi] | 
|  | xor	r11d,ecx | 
|  | xor	r11d,eax | 
|  | add	edx,r11d | 
|  | rol	edx,11 | 
|  | mov	r11d,eax | 
|  | add	edx,eax | 
|  | lea	ecx,[((-722521979))+r10*1+rcx] | 
|  | mov	r10d,DWORD[24+rsi] | 
|  | xor	r11d,ebx | 
|  | xor	r11d,edx | 
|  | add	ecx,r11d | 
|  | rol	ecx,16 | 
|  | mov	r11d,edx | 
|  | add	ecx,edx | 
|  | lea	ebx,[76029189+r10*1+rbx] | 
|  | mov	r10d,DWORD[36+rsi] | 
|  | xor	r11d,eax | 
|  | xor	r11d,ecx | 
|  | add	ebx,r11d | 
|  | rol	ebx,23 | 
|  | mov	r11d,ecx | 
|  | add	ebx,ecx | 
|  | lea	eax,[((-640364487))+r10*1+rax] | 
|  | mov	r10d,DWORD[48+rsi] | 
|  | xor	r11d,edx | 
|  | xor	r11d,ebx | 
|  | add	eax,r11d | 
|  | rol	eax,4 | 
|  | mov	r11d,ebx | 
|  | add	eax,ebx | 
|  | lea	edx,[((-421815835))+r10*1+rdx] | 
|  | mov	r10d,DWORD[60+rsi] | 
|  | xor	r11d,ecx | 
|  | xor	r11d,eax | 
|  | add	edx,r11d | 
|  | rol	edx,11 | 
|  | mov	r11d,eax | 
|  | add	edx,eax | 
|  | lea	ecx,[530742520+r10*1+rcx] | 
|  | mov	r10d,DWORD[8+rsi] | 
|  | xor	r11d,ebx | 
|  | xor	r11d,edx | 
|  | add	ecx,r11d | 
|  | rol	ecx,16 | 
|  | mov	r11d,edx | 
|  | add	ecx,edx | 
|  | lea	ebx,[((-995338651))+r10*1+rbx] | 
|  | mov	r10d,DWORD[rsi] | 
|  | xor	r11d,eax | 
|  | xor	r11d,ecx | 
|  | add	ebx,r11d | 
|  | rol	ebx,23 | 
|  | mov	r11d,ecx | 
|  | add	ebx,ecx | 
|  | mov	r10d,DWORD[rsi] | 
|  | mov	r11d,0xffffffff | 
|  | xor	r11d,edx | 
|  | lea	eax,[((-198630844))+r10*1+rax] | 
|  | or	r11d,ebx | 
|  | xor	r11d,ecx | 
|  | add	eax,r11d | 
|  | mov	r10d,DWORD[28+rsi] | 
|  | mov	r11d,0xffffffff | 
|  | rol	eax,6 | 
|  | xor	r11d,ecx | 
|  | add	eax,ebx | 
|  | lea	edx,[1126891415+r10*1+rdx] | 
|  | or	r11d,eax | 
|  | xor	r11d,ebx | 
|  | add	edx,r11d | 
|  | mov	r10d,DWORD[56+rsi] | 
|  | mov	r11d,0xffffffff | 
|  | rol	edx,10 | 
|  | xor	r11d,ebx | 
|  | add	edx,eax | 
|  | lea	ecx,[((-1416354905))+r10*1+rcx] | 
|  | or	r11d,edx | 
|  | xor	r11d,eax | 
|  | add	ecx,r11d | 
|  | mov	r10d,DWORD[20+rsi] | 
|  | mov	r11d,0xffffffff | 
|  | rol	ecx,15 | 
|  | xor	r11d,eax | 
|  | add	ecx,edx | 
|  | lea	ebx,[((-57434055))+r10*1+rbx] | 
|  | or	r11d,ecx | 
|  | xor	r11d,edx | 
|  | add	ebx,r11d | 
|  | mov	r10d,DWORD[48+rsi] | 
|  | mov	r11d,0xffffffff | 
|  | rol	ebx,21 | 
|  | xor	r11d,edx | 
|  | add	ebx,ecx | 
|  | lea	eax,[1700485571+r10*1+rax] | 
|  | or	r11d,ebx | 
|  | xor	r11d,ecx | 
|  | add	eax,r11d | 
|  | mov	r10d,DWORD[12+rsi] | 
|  | mov	r11d,0xffffffff | 
|  | rol	eax,6 | 
|  | xor	r11d,ecx | 
|  | add	eax,ebx | 
|  | lea	edx,[((-1894986606))+r10*1+rdx] | 
|  | or	r11d,eax | 
|  | xor	r11d,ebx | 
|  | add	edx,r11d | 
|  | mov	r10d,DWORD[40+rsi] | 
|  | mov	r11d,0xffffffff | 
|  | rol	edx,10 | 
|  | xor	r11d,ebx | 
|  | add	edx,eax | 
|  | lea	ecx,[((-1051523))+r10*1+rcx] | 
|  | or	r11d,edx | 
|  | xor	r11d,eax | 
|  | add	ecx,r11d | 
|  | mov	r10d,DWORD[4+rsi] | 
|  | mov	r11d,0xffffffff | 
|  | rol	ecx,15 | 
|  | xor	r11d,eax | 
|  | add	ecx,edx | 
|  | lea	ebx,[((-2054922799))+r10*1+rbx] | 
|  | or	r11d,ecx | 
|  | xor	r11d,edx | 
|  | add	ebx,r11d | 
|  | mov	r10d,DWORD[32+rsi] | 
|  | mov	r11d,0xffffffff | 
|  | rol	ebx,21 | 
|  | xor	r11d,edx | 
|  | add	ebx,ecx | 
|  | lea	eax,[1873313359+r10*1+rax] | 
|  | or	r11d,ebx | 
|  | xor	r11d,ecx | 
|  | add	eax,r11d | 
|  | mov	r10d,DWORD[60+rsi] | 
|  | mov	r11d,0xffffffff | 
|  | rol	eax,6 | 
|  | xor	r11d,ecx | 
|  | add	eax,ebx | 
|  | lea	edx,[((-30611744))+r10*1+rdx] | 
|  | or	r11d,eax | 
|  | xor	r11d,ebx | 
|  | add	edx,r11d | 
|  | mov	r10d,DWORD[24+rsi] | 
|  | mov	r11d,0xffffffff | 
|  | rol	edx,10 | 
|  | xor	r11d,ebx | 
|  | add	edx,eax | 
|  | lea	ecx,[((-1560198380))+r10*1+rcx] | 
|  | or	r11d,edx | 
|  | xor	r11d,eax | 
|  | add	ecx,r11d | 
|  | mov	r10d,DWORD[52+rsi] | 
|  | mov	r11d,0xffffffff | 
|  | rol	ecx,15 | 
|  | xor	r11d,eax | 
|  | add	ecx,edx | 
|  | lea	ebx,[1309151649+r10*1+rbx] | 
|  | or	r11d,ecx | 
|  | xor	r11d,edx | 
|  | add	ebx,r11d | 
|  | mov	r10d,DWORD[16+rsi] | 
|  | mov	r11d,0xffffffff | 
|  | rol	ebx,21 | 
|  | xor	r11d,edx | 
|  | add	ebx,ecx | 
|  | lea	eax,[((-145523070))+r10*1+rax] | 
|  | or	r11d,ebx | 
|  | xor	r11d,ecx | 
|  | add	eax,r11d | 
|  | mov	r10d,DWORD[44+rsi] | 
|  | mov	r11d,0xffffffff | 
|  | rol	eax,6 | 
|  | xor	r11d,ecx | 
|  | add	eax,ebx | 
|  | lea	edx,[((-1120210379))+r10*1+rdx] | 
|  | or	r11d,eax | 
|  | xor	r11d,ebx | 
|  | add	edx,r11d | 
|  | mov	r10d,DWORD[8+rsi] | 
|  | mov	r11d,0xffffffff | 
|  | rol	edx,10 | 
|  | xor	r11d,ebx | 
|  | add	edx,eax | 
|  | lea	ecx,[718787259+r10*1+rcx] | 
|  | or	r11d,edx | 
|  | xor	r11d,eax | 
|  | add	ecx,r11d | 
|  | mov	r10d,DWORD[36+rsi] | 
|  | mov	r11d,0xffffffff | 
|  | rol	ecx,15 | 
|  | xor	r11d,eax | 
|  | add	ecx,edx | 
|  | lea	ebx,[((-343485551))+r10*1+rbx] | 
|  | or	r11d,ecx | 
|  | xor	r11d,edx | 
|  | add	ebx,r11d | 
|  | mov	r10d,DWORD[rsi] | 
|  | mov	r11d,0xffffffff | 
|  | rol	ebx,21 | 
|  | xor	r11d,edx | 
|  | add	ebx,ecx | 
|  |  | 
|  | add	eax,r8d | 
|  | add	ebx,r9d | 
|  | add	ecx,r14d | 
|  | add	edx,r15d | 
|  |  | 
|  |  | 
|  | add	rsi,64 | 
|  | cmp	rsi,rdi | 
|  | jb	NEAR $L$loop | 
|  |  | 
|  |  | 
|  | $L$end: | 
|  | mov	DWORD[rbp],eax | 
|  | mov	DWORD[4+rbp],ebx | 
|  | mov	DWORD[8+rbp],ecx | 
|  | mov	DWORD[12+rbp],edx | 
|  |  | 
|  | mov	r15,QWORD[rsp] | 
|  |  | 
|  | mov	r14,QWORD[8+rsp] | 
|  |  | 
|  | mov	r12,QWORD[16+rsp] | 
|  |  | 
|  | mov	rbx,QWORD[24+rsp] | 
|  |  | 
|  | mov	rbp,QWORD[32+rsp] | 
|  |  | 
|  | add	rsp,40 | 
|  |  | 
|  | $L$epilogue: | 
|  | mov	rdi,QWORD[8+rsp]	;WIN64 epilogue | 
|  | mov	rsi,QWORD[16+rsp] | 
|  | ret | 
|  |  | 
|  | $L$SEH_end_md5_block_asm_data_order: | 
|  | EXTERN	__imp_RtlVirtualUnwind | 
|  |  | 
|  | ALIGN	16 | 
|  | se_handler: | 
|  | push	rsi | 
|  | push	rdi | 
|  | push	rbx | 
|  | push	rbp | 
|  | push	r12 | 
|  | push	r13 | 
|  | push	r14 | 
|  | push	r15 | 
|  | pushfq | 
|  | sub	rsp,64 | 
|  |  | 
|  | mov	rax,QWORD[120+r8] | 
|  | mov	rbx,QWORD[248+r8] | 
|  |  | 
|  | lea	r10,[$L$prologue] | 
|  | cmp	rbx,r10 | 
|  | jb	NEAR $L$in_prologue | 
|  |  | 
|  | mov	rax,QWORD[152+r8] | 
|  |  | 
|  | lea	r10,[$L$epilogue] | 
|  | cmp	rbx,r10 | 
|  | jae	NEAR $L$in_prologue | 
|  |  | 
|  | lea	rax,[40+rax] | 
|  |  | 
|  | mov	rbp,QWORD[((-8))+rax] | 
|  | mov	rbx,QWORD[((-16))+rax] | 
|  | mov	r12,QWORD[((-24))+rax] | 
|  | mov	r14,QWORD[((-32))+rax] | 
|  | mov	r15,QWORD[((-40))+rax] | 
|  | mov	QWORD[144+r8],rbx | 
|  | mov	QWORD[160+r8],rbp | 
|  | mov	QWORD[216+r8],r12 | 
|  | mov	QWORD[232+r8],r14 | 
|  | mov	QWORD[240+r8],r15 | 
|  |  | 
|  | $L$in_prologue: | 
|  | mov	rdi,QWORD[8+rax] | 
|  | mov	rsi,QWORD[16+rax] | 
|  | mov	QWORD[152+r8],rax | 
|  | mov	QWORD[168+r8],rsi | 
|  | mov	QWORD[176+r8],rdi | 
|  |  | 
|  | mov	rdi,QWORD[40+r9] | 
|  | mov	rsi,r8 | 
|  | mov	ecx,154 | 
|  | DD	0xa548f3fc | 
|  |  | 
|  | mov	rsi,r9 | 
|  | xor	rcx,rcx | 
|  | mov	rdx,QWORD[8+rsi] | 
|  | mov	r8,QWORD[rsi] | 
|  | mov	r9,QWORD[16+rsi] | 
|  | mov	r10,QWORD[40+rsi] | 
|  | lea	r11,[56+rsi] | 
|  | lea	r12,[24+rsi] | 
|  | mov	QWORD[32+rsp],r10 | 
|  | mov	QWORD[40+rsp],r11 | 
|  | mov	QWORD[48+rsp],r12 | 
|  | mov	QWORD[56+rsp],rcx | 
|  | call	QWORD[__imp_RtlVirtualUnwind] | 
|  |  | 
|  | mov	eax,1 | 
|  | add	rsp,64 | 
|  | popfq | 
|  | pop	r15 | 
|  | pop	r14 | 
|  | pop	r13 | 
|  | pop	r12 | 
|  | pop	rbp | 
|  | pop	rbx | 
|  | pop	rdi | 
|  | pop	rsi | 
|  | ret | 
|  |  | 
|  |  | 
|  | section	.pdata rdata align=4 | 
|  | ALIGN	4 | 
|  | DD	$L$SEH_begin_md5_block_asm_data_order wrt ..imagebase | 
|  | DD	$L$SEH_end_md5_block_asm_data_order wrt ..imagebase | 
|  | DD	$L$SEH_info_md5_block_asm_data_order wrt ..imagebase | 
|  |  | 
|  | section	.xdata rdata align=8 | 
|  | ALIGN	8 | 
|  | $L$SEH_info_md5_block_asm_data_order: | 
|  | DB	9,0,0,0 | 
|  | DD	se_handler wrt ..imagebase | 
|  | %else | 
|  | ; Work around https://bugzilla.nasm.us/show_bug.cgi?id=3392738 | 
|  | ret | 
|  | %endif |