📄 md4block.asm
字号:
add ax,[bx+4]
adc dx,[bx+6]
add ax,WORD PTR $S26_A
adc dx,si
add ax,31129
adc dx,23170
ROTLL
ROTLL
ROTLL
mov WORD PTR $S26_A,ax
mov si,dx
;|*** gg(D , A , B , C , 5 , gs2);
mov cx,ax
mov di,dx
and ax,WORD PTR $S27_B
and dx,WORD PTR $S27_B+2
and cx,WORD PTR $S28_C
and di,WORD PTR $S28_C+2
or ax,cx
or dx,di
mov cx,WORD PTR $S27_B
mov di,WORD PTR $S27_B+2
and cx,WORD PTR $S28_C
and di,WORD PTR $S28_C+2
or ax,cx
or dx,di
add ax,[bx+20]
adc dx,[bx+22]
add ax,WORD PTR $S29_D
adc dx,WORD PTR $S29_D+2
add ax,31129
adc dx,23170
ROTLL
ROTLL
ROTLL
ROTLL
ROTLL
mov WORD PTR $S29_D,ax
mov WORD PTR $S29_D+2,dx
;|*** gg(C , D , A , B , 9 , gs3);
mov cx,ax
mov di,dx
and ax,WORD PTR $S26_A
and dx,si
and cx,WORD PTR $S27_B
and di,WORD PTR $S27_B+2
or ax,cx
or dx,di
mov cx,WORD PTR $S26_A
mov di,si
and cx,WORD PTR $S27_B
and di,WORD PTR $S27_B+2
or ax,cx
or dx,di
add ax,[bx+36]
adc dx,[bx+38]
add ax,WORD PTR $S28_C
adc dx,WORD PTR $S28_C+2
add ax,31129
adc dx,23170
xchg dh,dl
xchg dl,ah
xchg ah,al
ROTLL
mov WORD PTR $S28_C,ax
mov WORD PTR $S28_C+2,dx
;|*** gg(B , C , D , A , 13 , gs4);
mov cx,ax
mov di,dx
and ax,WORD PTR $S29_D
and dx,WORD PTR $S29_D+2
and cx,WORD PTR $S26_A
and di,si
or ax,cx
or dx,di
mov cx,WORD PTR $S29_D
mov di,WORD PTR $S29_D+2
and cx,WORD PTR $S26_A
and di,si
or ax,cx
or dx,di
add ax,[bx+52]
adc dx,[bx+54]
add ax,WORD PTR $S27_B
adc dx,WORD PTR $S27_B+2
add ax,31129
adc dx,23170
xchg ax,dx
ROTRL
ROTRL
ROTRL
mov WORD PTR $S27_B,ax
mov WORD PTR $S27_B+2,dx
;|*** gg(A , B , C , D , 2 , gs1);
mov cx,ax
mov di,dx
and ax,WORD PTR $S28_C
and dx,WORD PTR $S28_C+2
and cx,WORD PTR $S29_D
and di,WORD PTR $S29_D+2
or ax,cx
or dx,di
mov cx,WORD PTR $S28_C
mov di,WORD PTR $S28_C+2
and cx,WORD PTR $S29_D
and di,WORD PTR $S29_D+2
or ax,cx
or dx,di
add ax,[bx+8]
adc dx,[bx+10]
add ax,WORD PTR $S26_A
adc dx,si
add ax,31129
adc dx,23170
ROTLL
ROTLL
ROTLL
mov WORD PTR $S26_A,ax
mov si,dx
;|*** gg(D , A , B , C , 6 , gs2);
mov cx,ax
mov di,dx
and ax,WORD PTR $S27_B
and dx,WORD PTR $S27_B+2
and cx,WORD PTR $S28_C
and di,WORD PTR $S28_C+2
or ax,cx
or dx,di
mov cx,WORD PTR $S27_B
mov di,WORD PTR $S27_B+2
and cx,WORD PTR $S28_C
and di,WORD PTR $S28_C+2
or ax,cx
or dx,di
add ax,[bx+24]
adc dx,[bx+26]
add ax,WORD PTR $S29_D
adc dx,WORD PTR $S29_D+2
add ax,31129
adc dx,23170
ROTLL
ROTLL
ROTLL
ROTLL
ROTLL
mov WORD PTR $S29_D,ax
mov WORD PTR $S29_D+2,dx
;|*** gg(C , D , A , B , 10 , gs3);
mov cx,ax
mov di,dx
and ax,WORD PTR $S26_A
and dx,si
and cx,WORD PTR $S27_B
and di,WORD PTR $S27_B+2
or ax,cx
or dx,di
mov cx,WORD PTR $S26_A
mov di,si
and cx,WORD PTR $S27_B
and di,WORD PTR $S27_B+2
or ax,cx
or dx,di
add ax,[bx+40]
adc dx,[bx+42]
add ax,WORD PTR $S28_C
adc dx,WORD PTR $S28_C+2
add ax,31129
adc dx,23170
xchg dh,dl
xchg dl,ah
xchg ah,al
ROTLL
mov WORD PTR $S28_C,ax
mov WORD PTR $S28_C+2,dx
;|*** gg(B , C , D , A , 14 , gs4);
mov cx,ax
mov di,dx
and ax,WORD PTR $S29_D
and dx,WORD PTR $S29_D+2
and cx,WORD PTR $S26_A
and di,si
or ax,cx
or dx,di
mov cx,WORD PTR $S29_D
mov di,WORD PTR $S29_D+2
and cx,WORD PTR $S26_A
and di,si
or ax,cx
or dx,di
add ax,[bx+56]
adc dx,[bx+58]
add ax,WORD PTR $S27_B
adc dx,WORD PTR $S27_B+2
add ax,31129
adc dx,23170
xchg ax,dx
ROTRL
ROTRL
ROTRL
mov WORD PTR $S27_B,ax
mov WORD PTR $S27_B+2,dx
;|*** gg(A , B , C , D , 3 , gs1);
mov cx,ax
mov di,dx
and ax,WORD PTR $S28_C
and dx,WORD PTR $S28_C+2
and cx,WORD PTR $S29_D
and di,WORD PTR $S29_D+2
or ax,cx
or dx,di
mov cx,WORD PTR $S28_C
mov di,WORD PTR $S28_C+2
and cx,WORD PTR $S29_D
and di,WORD PTR $S29_D+2
or ax,cx
or dx,di
add ax,[bx+12]
adc dx,[bx+14]
add ax,WORD PTR $S26_A
adc dx,si
add ax,31129
adc dx,23170
ROTLL
ROTLL
ROTLL
mov WORD PTR $S26_A,ax
mov si,dx
;|*** gg(D , A , B , C , 7 , gs2);
mov cx,ax
mov di,dx
and ax,WORD PTR $S27_B
and dx,WORD PTR $S27_B+2
and cx,WORD PTR $S28_C
and di,WORD PTR $S28_C+2
or ax,cx
or dx,di
mov cx,WORD PTR $S27_B
mov di,WORD PTR $S27_B+2
and cx,WORD PTR $S28_C
and di,WORD PTR $S28_C+2
or ax,cx
or dx,di
add ax,[bx+28]
adc dx,[bx+30]
add ax,WORD PTR $S29_D
adc dx,WORD PTR $S29_D+2
add ax,31129
adc dx,23170
ROTLL
ROTLL
ROTLL
ROTLL
ROTLL
mov WORD PTR $S29_D,ax
mov WORD PTR $S29_D+2,dx
;|*** gg(C , D , A , B , 11 , gs3);
mov cx,ax
mov di,dx
and ax,WORD PTR $S26_A
and dx,si
and cx,WORD PTR $S27_B
and di,WORD PTR $S27_B+2
or ax,cx
or dx,di
mov cx,WORD PTR $S26_A
mov di,si
and cx,WORD PTR $S27_B
and di,WORD PTR $S27_B+2
or ax,cx
or dx,di
add ax,[bx+44]
adc dx,[bx+46]
add ax,WORD PTR $S28_C
adc dx,WORD PTR $S28_C+2
add ax,31129
adc dx,23170
xchg dh,dl
xchg dl,ah
xchg ah,al
ROTLL
mov WORD PTR $S28_C,ax
mov WORD PTR $S28_C+2,dx
;|*** gg(B , C , D , A , 15 , gs4);
mov cx,ax
mov di,dx
and ax,WORD PTR $S29_D
and dx,WORD PTR $S29_D+2
and cx,WORD PTR $S26_A
and di,si
or ax,cx
or dx,di
mov cx,WORD PTR $S29_D
mov di,WORD PTR $S29_D+2
and cx,WORD PTR $S26_A
and di,si
or ax,cx
or dx,di
add ax,[bx+60]
adc dx,[bx+62]
add ax,WORD PTR $S27_B
adc dx,WORD PTR $S27_B+2
add ax,31129
adc dx,23170
xchg ax,dx
ROTRL
ROTRL
ROTRL
mov WORD PTR $S27_B,ax
mov WORD PTR $S27_B+2,dx
;|*** hh(A , B , C , D , 0 , hs1); /* Round 3 */
xor ax,WORD PTR $S28_C
xor dx,WORD PTR $S28_C+2
xor ax,WORD PTR $S29_D
xor dx,WORD PTR $S29_D+2
add ax,[bx]
adc dx,[bx+2]
add ax,WORD PTR $S26_A
adc dx,si
add ax,-5215
adc dx,28377
ROTLL
ROTLL
ROTLL
mov WORD PTR $S26_A,ax
mov si,dx
;|*** hh(D , A , B , C , 8 , hs2);
xor ax,WORD PTR $S27_B
xor dx,WORD PTR $S27_B+2
xor ax,WORD PTR $S28_C
xor dx,WORD PTR $S28_C+2
add ax,[bx+32]
adc dx,[bx+34]
add ax,WORD PTR $S29_D
adc dx,WORD PTR $S29_D+2
add ax,-5215
adc dx,28377
xchg dh,dl
xchg dl,ah
xchg ah,al
ROTLL
mov WORD PTR $S29_D,ax
mov WORD PTR $S29_D+2,dx
;|*** hh(C , D , A , B , 4 , hs3);
xor ax,WORD PTR $S26_A
xor dx,si
xor ax,WORD PTR $S27_B
xor dx,WORD PTR $S27_B+2
add ax,[bx+16]
adc dx,[bx+18]
add ax,WORD PTR $S28_C
adc dx,WORD PTR $S28_C+2
add ax,-5215
adc dx,28377
xchg dh,dl
xchg dl,ah
xchg ah,al
ROTLL
ROTLL
ROTLL
mov WORD PTR $S28_C,ax
mov WORD PTR $S28_C+2,dx
;|*** hh(B , C , D , A , 12 , hs4);
xor ax,WORD PTR $S29_D
xor dx,WORD PTR $S29_D+2
xor ax,WORD PTR $S26_A
xor dx,si
add ax,[bx+48]
adc dx,[bx+50]
add ax,WORD PTR $S27_B
adc dx,WORD PTR $S27_B+2
add ax,-5215
adc dx,28377
xchg ax,dx
ROTRL
mov WORD PTR $S27_B,ax
mov WORD PTR $S27_B+2,dx
;|*** hh(A , B , C , D , 2 , hs1);
xor ax,WORD PTR $S28_C
xor dx,WORD PTR $S28_C+2
xor ax,WORD PTR $S29_D
xor dx,WORD PTR $S29_D+2
add ax,[bx+8]
adc dx,[bx+10]
add ax,WORD PTR $S26_A
adc dx,si
add ax,-5215
adc dx,28377
ROTLL
ROTLL
ROTLL
mov WORD PTR $S26_A,ax
mov si,dx
;|*** hh(D , A , B , C , 10 , hs2);
xor ax,WORD PTR $S27_B
xor dx,WORD PTR $S27_B+2
xor ax,WORD PTR $S28_C
xor dx,WORD PTR $S28_C+2
add ax,[bx+40]
adc dx,[bx+42]
add ax,WORD PTR $S29_D
adc dx,WORD PTR $S29_D+2
add ax,-5215
adc dx,28377
xchg dh,dl
xchg dl,ah
xchg ah,al
ROTLL
mov WORD PTR $S29_D,ax
mov WORD PTR $S29_D+2,dx
;|*** hh(C , D , A , B , 6 , hs3);
xor ax,WORD PTR $S26_A
xor dx,si
xor ax,WORD PTR $S27_B
xor dx,WORD PTR $S27_B+2
add ax,[bx+24]
adc dx,[bx+26]
add ax,WORD PTR $S28_C
adc dx,WORD PTR $S28_C+2
add ax,-5215
adc dx,28377
xchg dh,dl
xchg dl,ah
xchg ah,al
ROTLL
ROTLL
ROTLL
mov WORD PTR $S28_C,ax
mov WORD PTR $S28_C+2,dx
;|*** hh(B , C , D , A , 14 , hs4);
xor ax,WORD PTR $S29_D
xor dx,WORD PTR $S29_D+2
xor ax,WORD PTR $S26_A
xor dx,si
add ax,[bx+56]
adc dx,[bx+58]
add ax,WORD PTR $S27_B
adc dx,WORD PTR $S27_B+2
add ax,-5215
adc dx,28377
xchg ax,dx
ROTRL
mov WORD PTR $S27_B,ax
mov WORD PTR $S27_B+2,dx
;|*** hh(A , B , C , D , 1 , hs1);
xor ax,WORD PTR $S28_C
xor dx,WORD PTR $S28_C+2
xor ax,WORD PTR $S29_D
xor dx,WORD PTR $S29_D+2
add ax,[bx+4]
adc dx,[bx+6]
add ax,WORD PTR $S26_A
adc dx,si
add ax,-5215
adc dx,28377
ROTLL
ROTLL
ROTLL
mov WORD PTR $S26_A,ax
mov si,dx
;|*** hh(D , A , B , C , 9 , hs2);
xor ax,WORD PTR $S27_B
xor dx,WORD PTR $S27_B+2
xor ax,WORD PTR $S28_C
xor dx,WORD PTR $S28_C+2
add ax,[bx+36]
adc dx,[bx+38]
add ax,WORD PTR $S29_D
adc dx,WORD PTR $S29_D+2
add ax,-5215
adc dx,28377
xchg dh,dl
xchg dl,ah
xchg ah,al
ROTLL
mov WORD PTR $S29_D,ax
mov WORD PTR $S29_D+2,dx
;|*** hh(C , D , A , B , 5 , hs3);
xor ax,WORD PTR $S26_A
xor dx,si
xor ax,WORD PTR $S27_B
xor dx,WORD PTR $S27_B+2
add ax,[bx+20]
adc dx,[bx+22]
add ax,WORD PTR $S28_C
adc dx,WORD PTR $S28_C+2
add ax,-5215
adc dx,28377
xchg dh,dl
xchg dl,ah
xchg ah,al
ROTLL
ROTLL
ROTLL
mov WORD PTR $S28_C,ax
mov WORD PTR $S28_C+2,dx
;|*** hh(B , C , D , A , 13 , hs4);
xor ax,WORD PTR $S29_D
xor dx,WORD PTR $S29_D+2
xor ax,WORD PTR $S26_A
xor dx,si
add ax,[bx+52]
adc dx,[bx+54]
add ax,WORD PTR $S27_B
adc dx,WORD PTR $S27_B+2
add ax,-5215
adc dx,28377
xchg ax,dx
ROTRL
mov WORD PTR $S27_B,ax
mov WORD PTR $S27_B+2,dx
;|*** hh(A , B , C , D , 3 , hs1);
xor ax,WORD PTR $S28_C
xor dx,WORD PTR $S28_C+2
xor ax,WORD PTR $S29_D
xor dx,WORD PTR $S29_D+2
add ax,[bx+12]
adc dx,[bx+14]
add ax,WORD PTR $S26_A
adc dx,si
add ax,-5215
adc dx,28377
ROTLL
ROTLL
ROTLL
mov WORD PTR $S26_A,ax
mov si,dx
;|*** hh(D , A , B , C , 11 , hs2);
xor ax,WORD PTR $S27_B
xor dx,WORD PTR $S27_B+2
xor ax,WORD PTR $S28_C
xor dx,WORD PTR $S28_C+2
add ax,[bx+44]
adc dx,[bx+46]
add ax,WORD PTR $S29_D
adc dx,WORD PTR $S29_D+2
add ax,-5215
adc dx,28377
xchg dh,dl
xchg dl,ah
xchg ah,al
ROTLL
mov WORD PTR $S29_D,ax
mov WORD PTR $S29_D+2,dx
;|*** hh(C , D , A , B , 7 , hs3);
xor ax,WORD PTR $S26_A
xor dx,si
xor ax,WORD PTR $S27_B
xor dx,WORD PTR $S27_B+2
add ax,[bx+28]
adc dx,[bx+30]
add ax,WORD PTR $S28_C
adc dx,WORD PTR $S28_C+2
add ax,-5215
adc dx,28377
xchg dh,dl
xchg dl,ah
xchg ah,al
ROTLL
ROTLL
ROTLL
mov WORD PTR $S28_C,ax
mov WORD PTR $S28_C+2,dx
;|*** hh(B , C , D , A , 15 , hs4);
xor ax,WORD PTR $S29_D
xor dx,WORD PTR $S29_D+2
xor ax,WORD PTR $S26_A
xor dx,si
add ax,[bx+60]
adc dx,[bx+62]
add ax,WORD PTR $S27_B
adc dx,WORD PTR $S27_B+2
add ax,-5215
adc dx,28377
xchg ax,dx
ROTRL
;|*** MDp->buffer[1] += B;
mov bx,[bp+4] ;MDp
add [bx+4],ax
adc [bx+6],dx
;|*** MDp->buffer[0] += A;
mov ax,WORD PTR $S26_A
mov dx,si
add [bx],ax
adc [bx+2],dx
;|*** MDp->buffer[2] += C;
mov ax,WORD PTR $S28_C
mov dx,WORD PTR $S28_C+2
add [bx+8],ax
adc [bx+10],dx
;|*** MDp->buffer[3] += D;
mov ax,WORD PTR $S29_D
mov dx,WORD PTR $S29_D+2
add [bx+12],ax
adc [bx+14],dx
;|*** }
$EX24: pop si
pop di
pop bp
ret
_MDblock ENDP
_TEXT ENDS
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -