📄 s1-win32.asm
字号:
add ebp, edx ror eax, 1 add edi, ebp ; 40_59 43 ; 40_59 44 mov edx, [48+esp] mov ebp, [56+esp] xor edx, ebp mov ebp, [16+esp] xor edx, ebp mov ebp, [36+esp] xor edx, ebp mov ebp, esi rol edx, 1 or ebp, eax mov [48+esp], edx and ebp, ecx lea edx, [2400959708+ebx*1+edx] mov ebx, esi ror esi, 1 and ebx, eax or ebp, ebx mov ebx, edi rol ebx, 5 add ebp, ebx mov ebx, [52+esp] add edx, ebp mov ebp, [60+esp] xor ebx, ebp mov ebp, [20+esp] xor ebx, ebp mov ebp, [40+esp] ror esi, 1 xor ebx, ebp rol ebx, 1 mov ebp, edi mov [52+esp], ebx or ebp, esi lea ebx, [2400959708+ecx*1+ebx] mov ecx, edi and ebp, eax and ecx, esi or ebp, ecx mov ecx, edx rol ecx, 5 ror edi, 1 add ebp, ecx ror edi, 1 add ebx, ebp ; 40_59 45 ; 40_59 46 mov ecx, [56+esp] mov ebp, [esp] xor ecx, ebp mov ebp, [24+esp] xor ecx, ebp mov ebp, [44+esp] xor ecx, ebp mov ebp, edx rol ecx, 1 or ebp, edi mov [56+esp], ecx and ebp, esi lea ecx, [2400959708+eax*1+ecx] mov eax, edx ror edx, 1 and eax, edi or ebp, eax mov eax, ebx rol eax, 5 add ebp, eax mov eax, [60+esp] add ecx, ebp mov ebp, [4+esp] xor eax, ebp mov ebp, [28+esp] xor eax, ebp mov ebp, [48+esp] ror edx, 1 xor eax, ebp rol eax, 1 mov ebp, ebx mov [60+esp], eax or ebp, edx lea eax, [2400959708+esi*1+eax] mov esi, ebx and ebp, edi and esi, edx or ebp, esi mov esi, ecx rol esi, 5 ror ebx, 1 add ebp, esi ror ebx, 1 add eax, ebp ; 40_59 47 ; 40_59 48 mov esi, [esp] mov ebp, [8+esp] xor esi, ebp mov ebp, [32+esp] xor esi, ebp mov ebp, [52+esp] xor esi, ebp mov ebp, ecx rol esi, 1 or ebp, ebx mov [esp], esi and ebp, edx lea esi, [2400959708+edi*1+esi] mov edi, ecx ror ecx, 1 and edi, ebx or ebp, edi mov edi, eax rol edi, 5 add ebp, edi mov edi, [4+esp] add esi, ebp mov ebp, [12+esp] xor edi, ebp mov ebp, [36+esp] xor edi, ebp mov ebp, [56+esp] ror ecx, 1 xor edi, ebp rol edi, 1 mov ebp, eax mov [4+esp], edi or ebp, ecx lea edi, [2400959708+edx*1+edi] mov edx, eax and ebp, ebx and edx, ecx or ebp, edx mov edx, esi rol edx, 5 ror eax, 1 add ebp, edx ror eax, 1 add edi, ebp ; 40_59 49 ; 40_59 50 mov edx, [8+esp] mov ebp, [16+esp] xor edx, ebp mov ebp, [40+esp] xor edx, ebp mov ebp, [60+esp] xor edx, ebp mov ebp, esi rol edx, 1 or ebp, eax mov [8+esp], edx and ebp, ecx lea edx, [2400959708+ebx*1+edx] mov ebx, esi ror esi, 1 and ebx, eax or ebp, ebx mov ebx, edi rol ebx, 5 add ebp, ebx mov ebx, [12+esp] add edx, ebp mov ebp, [20+esp] xor ebx, ebp mov ebp, [44+esp] xor ebx, ebp mov ebp, [esp] ror esi, 1 xor ebx, ebp rol ebx, 1 mov ebp, edi mov [12+esp], ebx or ebp, esi lea ebx, [2400959708+ecx*1+ebx] mov ecx, edi and ebp, eax and ecx, esi or ebp, ecx mov ecx, edx rol ecx, 5 ror edi, 1 add ebp, ecx ror edi, 1 add ebx, ebp ; 40_59 51 ; 40_59 52 mov ecx, [16+esp] mov ebp, [24+esp] xor ecx, ebp mov ebp, [48+esp] xor ecx, ebp mov ebp, [4+esp] xor ecx, ebp mov ebp, edx rol ecx, 1 or ebp, edi mov [16+esp], ecx and ebp, esi lea ecx, [2400959708+eax*1+ecx] mov eax, edx ror edx, 1 and eax, edi or ebp, eax mov eax, ebx rol eax, 5 add ebp, eax mov eax, [20+esp] add ecx, ebp mov ebp, [28+esp] xor eax, ebp mov ebp, [52+esp] xor eax, ebp mov ebp, [8+esp] ror edx, 1 xor eax, ebp rol eax, 1 mov ebp, ebx mov [20+esp], eax or ebp, edx lea eax, [2400959708+esi*1+eax] mov esi, ebx and ebp, edi and esi, edx or ebp, esi mov esi, ecx rol esi, 5 ror ebx, 1 add ebp, esi ror ebx, 1 add eax, ebp ; 40_59 53 ; 40_59 54 mov esi, [24+esp] mov ebp, [32+esp] xor esi, ebp mov ebp, [56+esp] xor esi, ebp mov ebp, [12+esp] xor esi, ebp mov ebp, ecx rol esi, 1 or ebp, ebx mov [24+esp], esi and ebp, edx lea esi, [2400959708+edi*1+esi] mov edi, ecx ror ecx, 1 and edi, ebx or ebp, edi mov edi, eax rol edi, 5 add ebp, edi mov edi, [28+esp] add esi, ebp mov ebp, [36+esp] xor edi, ebp mov ebp, [60+esp] xor edi, ebp mov ebp, [16+esp] ror ecx, 1 xor edi, ebp rol edi, 1 mov ebp, eax mov [28+esp], edi or ebp, ecx lea edi, [2400959708+edx*1+edi] mov edx, eax and ebp, ebx and edx, ecx or ebp, edx mov edx, esi rol edx, 5 ror eax, 1 add ebp, edx ror eax, 1 add edi, ebp ; 40_59 55 ; 40_59 56 mov edx, [32+esp] mov ebp, [40+esp] xor edx, ebp mov ebp, [esp] xor edx, ebp mov ebp, [20+esp] xor edx, ebp mov ebp, esi rol edx, 1 or ebp, eax mov [32+esp], edx and ebp, ecx lea edx, [2400959708+ebx*1+edx] mov ebx, esi ror esi, 1 and ebx, eax or ebp, ebx mov ebx, edi rol ebx, 5 add ebp, ebx mov ebx, [36+esp] add edx, ebp mov ebp, [44+esp] xor ebx, ebp mov ebp, [4+esp] xor ebx, ebp mov ebp, [24+esp] ror esi, 1 xor ebx, ebp rol ebx, 1 mov ebp, edi mov [36+esp], ebx or ebp, esi lea ebx, [2400959708+ecx*1+ebx] mov ecx, edi and ebp, eax and ecx, esi or ebp, ecx mov ecx, edx rol ecx, 5 ror edi, 1 add ebp, ecx ror edi, 1 add ebx, ebp ; 40_59 57 ; 40_59 58 mov ecx, [40+esp] mov ebp, [48+esp] xor ecx, ebp mov ebp, [8+esp] xor ecx, ebp mov ebp, [28+esp] xor ecx, ebp mov ebp, edx rol ecx, 1 or ebp, edi mov [40+esp], ecx and ebp, esi lea ecx, [2400959708+eax*1+ecx] mov eax, edx ror edx, 1 and eax, edi or ebp, eax mov eax, ebx rol eax, 5 add ebp, eax mov eax, [44+esp] add ecx, ebp mov ebp, [52+esp] xor eax, ebp mov ebp, [12+esp] xor eax, ebp mov ebp, [32+esp] ror edx, 1 xor eax, ebp rol eax, 1 mov ebp, ebx mov [44+esp], eax or ebp, edx lea eax, [2400959708+esi*1+eax] mov esi, ebx and ebp, edi and esi, edx or ebp, esi mov esi, ecx rol esi, 5 ror ebx, 1 add ebp, esi ror ebx, 1 add eax, ebp ; 40_59 59 ; 20_39 60 mov esi, [48+esp] mov ebp, [56+esp] xor esi, ebp mov ebp, [16+esp] xor esi, ebp mov ebp, [36+esp] xor esi, ebp mov ebp, ecx rol esi, 1 xor ebp, ebx mov [48+esp], esi xor ebp, edx lea esi, [3395469782+edi*1+esi] mov edi, eax rol edi, 5 ror ecx, 1 add edi, ebp ror ecx, 1 add esi, edi ; 20_39 61 mov edi, [52+esp] mov ebp, [60+esp] xor edi, ebp mov ebp, [20+esp] xor edi, ebp mov ebp, [40+esp] xor edi, ebp mov ebp, eax rol edi, 1 xor ebp, ecx mov [52+esp], edi xor ebp, ebx lea edi, [3395469782+edx*1+edi] mov edx, esi rol edx, 5 ror eax, 1 add edx, ebp ror eax, 1 add edi, edx ; 20_39 62 mov edx, [56+esp] mov ebp, [esp] xor edx, ebp mov ebp, [24+esp] xor edx, ebp mov ebp, [44+esp] xor edx, ebp mov ebp, esi rol edx, 1 xor ebp, eax mov [56+esp], edx xor ebp, ecx lea edx, [3395469782+ebx*1+edx] mov ebx, edi rol ebx, 5 ror esi, 1 add ebx, ebp ror esi, 1 add edx, ebx ; 20_39 63 mov ebx, [60+esp] mov ebp, [4+esp] xor ebx, ebp mov ebp, [28+esp] xor ebx, ebp mov ebp, [48+esp] xor ebx, ebp mov ebp, edi rol ebx, 1 xor ebp, esi mov [60+esp], ebx xor ebp, eax lea ebx, [3395469782+ecx*1+ebx] mov ecx, edx rol ecx, 5 ror edi, 1 add ecx, ebp ror edi, 1 add ebx, ecx ; 20_39 64 mov ecx, [esp] mov ebp, [8+esp] xor ecx, ebp mov ebp, [32+esp] xor ecx, ebp mov ebp, [52+esp] xor ecx, ebp mov ebp, edx rol ecx, 1 xor ebp, edi mov [esp], ecx xor ebp, esi lea ecx, [3395469782+eax*1+ecx] mov eax, ebx rol eax, 5 ror edx, 1 add eax, ebp ror edx, 1 add ecx, eax ; 20_39 65 mov eax, [4+esp] mov ebp, [12+esp] xor eax, ebp mov ebp, [36+esp] xor eax, ebp mov ebp, [56+esp] xor eax, ebp mov ebp, ebx rol eax, 1 xor ebp, edx mov [4+esp], eax xor ebp, edi lea eax, [3395469782+esi*1+eax] mov esi, ecx rol esi, 5 ror ebx, 1 add esi, ebp ror ebx, 1 add eax, esi ; 20_39 66 mov esi, [8+esp] mov ebp, [16+esp] xor esi, ebp mov ebp, [40+esp] xor esi, ebp mov ebp, [60+esp] xor esi, ebp mov ebp, ecx rol esi, 1 xor ebp, ebx mov [8+esp], esi xor ebp, edx lea esi, [3395469782+edi*1+esi] mov edi, eax rol edi, 5 ror ecx, 1 add edi, ebp ror ecx, 1 add esi, edi ; 20_39 67 mov edi, [12+esp] mov ebp, [20+esp] xor edi, ebp mov ebp, [44+esp] xor edi, ebp mov ebp, [esp] xor edi, ebp mov ebp, eax rol edi, 1 xor ebp, ecx mov [12+esp], edi xor ebp, ebx lea edi, [3395469782+edx*1+edi] mov edx, esi rol edx, 5 ror eax, 1 add edx, ebp ror eax, 1 add edi, edx ; 20_39 68 mov edx, [16+esp] mov ebp, [24+esp] xor edx, ebp mov ebp, [48+esp] xor edx, ebp mov ebp, [4+esp] xor edx, ebp mov ebp, esi rol edx, 1 xor ebp, eax mov [16+esp], edx xor ebp, ecx lea edx, [3395469782+ebx*1+edx] mov ebx, edi rol ebx, 5 ror esi, 1 add ebx, ebp ror esi, 1 add edx, ebx ; 20_39 69 mov ebx, [20+esp] mov ebp, [28+esp] xor ebx, ebp mov ebp, [52+esp] xor ebx, ebp mov ebp, [8+esp] xor ebx, ebp mov ebp, edi rol ebx, 1 xor ebp, esi mov [20+esp], ebx xor ebp, eax lea ebx, [3395469782+ecx*1+ebx] mov ecx, edx rol ecx, 5 ror edi, 1 add ecx, ebp ror edi, 1 add ebx, ecx ; 20_39 70 mov ecx, [24+esp] mov ebp, [32+esp] xor ecx, ebp mov ebp, [56+esp] xor ecx, ebp mov ebp, [12+esp] xor ecx, ebp mov ebp, edx rol ecx, 1 xor ebp, edi mov [24+esp], ecx xor ebp, esi lea ecx, [3395469782+eax*1+ecx] mov eax, ebx rol eax, 5 ror edx, 1 add eax, ebp ror edx, 1 add ecx, eax ; 20_39 71 mov eax, [28+esp] mov ebp, [36+esp] xor eax, ebp mov ebp, [60+esp] xor eax, ebp mov ebp, [16+esp] xor eax, ebp mov ebp, ebx rol eax, 1 xor ebp, edx mov [28+esp], eax xor ebp, edi lea eax, [3395469782+esi*1+eax] mov esi, ecx rol esi, 5 ror ebx, 1 add esi, ebp ror ebx, 1 add eax, esi ; 20_39 72 mov esi, [32+esp] mov ebp, [40+esp] xor esi, ebp mov ebp, [esp] xor esi, ebp mov ebp, [20+esp] xor esi, ebp mov ebp, ecx rol esi, 1 xor ebp, ebx mov [32+esp], esi xor ebp, edx lea esi, [3395469782+edi*1+esi] mov edi, eax rol edi, 5 ror ecx, 1 add edi, ebp ror ecx, 1 add esi, edi ; 20_39 73 mov edi, [36+esp] mov ebp, [44+esp] xor edi, ebp mov ebp, [4+esp] xor edi, ebp mov ebp, [24+esp] xor edi, ebp mov ebp, eax rol edi, 1 xor ebp, ecx mov [36+esp], edi xor ebp, ebx lea edi, [3395469782+edx*1+edi] mov edx, esi rol edx, 5 ror eax, 1 add edx, ebp ror eax, 1 add edi, edx ; 20_39 74 mov edx, [40+esp] mov ebp, [48+esp] xor edx, ebp mov ebp, [8+esp] xor edx, ebp mov ebp, [28+esp] xor edx, ebp mov ebp, esi rol edx, 1 xor ebp, eax mov [40+esp], edx xor ebp, ecx lea edx, [3395469782+ebx*1+edx] mov ebx, edi rol ebx, 5 ror esi, 1 add ebx, ebp ror esi, 1 add edx, ebx ; 20_39 75 mov ebx, [44+esp] mov ebp, [52+esp] xor ebx, ebp mov ebp, [12+esp] xor ebx, ebp mov ebp, [32+esp] xor ebx, ebp mov ebp, edi rol ebx, 1 xor ebp, esi mov [44+esp], ebx xor ebp, eax lea ebx, [3395469782+ecx*1+ebx] mov ecx, edx rol ecx, 5 ror edi, 1 add ecx, ebp ror edi, 1 add ebx, ecx ; 20_39 76 mov ecx, [48+esp] mov ebp, [56+esp] xor ecx, ebp mov ebp, [16+esp] xor ecx, ebp mov ebp, [36+esp] xor ecx, ebp mov ebp, edx rol ecx, 1 xor ebp, edi mov [48+esp], ecx xor ebp, esi lea ecx, [3395469782+eax*1+ecx] mov eax, ebx rol eax, 5 ror edx, 1 add eax, ebp ror edx, 1 add ecx, eax ; 20_39 77 mov eax, [52+esp] mov ebp, [60+esp] xor eax, ebp mov ebp, [20+esp] xor eax, ebp mov ebp, [40+esp] xor eax, ebp mov ebp, ebx rol eax, 1 xor ebp, edx mov [52+esp], eax xor ebp, edi lea eax, [3395469782+esi*1+eax] mov esi, ecx rol esi, 5 ror ebx, 1 add esi, ebp ror ebx, 1 add eax, esi ; 20_39 78 mov esi, [56+esp] mov ebp, [esp] xor esi, ebp mov ebp, [24+esp] xor esi, ebp mov ebp, [44+esp] xor esi, ebp mov ebp, ecx rol esi, 1 xor ebp, ebx mov [56+esp], esi xor ebp, edx lea esi, [3395469782+edi*1+esi] mov edi, eax rol edi, 5 ror ecx, 1 add edi, ebp ror ecx, 1 add esi, edi ; 20_39 79 mov edi, [60+esp] mov ebp, [4+esp] xor edi, ebp mov ebp, [28+esp] xor edi, ebp mov ebp, [48+esp] xor edi, ebp mov ebp, eax rol edi, 1 xor ebp, ecx mov [60+esp], edi xor ebp, ebx lea edi, [3395469782+edx*1+edi] mov edx, esi rol edx, 5 add edx, ebp mov ebp, [128+esp] ror eax, 1 add edi, edx ror eax, 1 ; End processing ; mov edx, [12+ebp] add edx, ecx mov ecx, [4+ebp] add ecx, esi mov esi, eax mov eax, [ebp] mov [12+ebp], edx add eax, edi mov edi, [16+ebp] add edi, ebx mov ebx, [8+ebp] add ebx, esi mov [ebp], eax mov esi, [132+esp] mov [8+ebp], ebx add esi, 64 mov eax, [68+esp] mov [16+ebp], edi cmp esi, eax mov [4+ebp], ecx jl NEAR L000start add esp, 108 pop edi pop ebx pop ebp pop esi retglobal _sha1_block_asm_host_order_sha1_block_asm_host_order: mov ecx, [12+esp] push esi shl ecx, 6 mov esi, [12+esp] push ebp add ecx, esi push ebx mov ebp, [16+esp] push edi mov edx, [12+ebp] sub esp, 108 mov edi, [16+ebp] mov ebx, [8+ebp] mov [68+esp], ecx ; First we need to setup the X array mov eax, [esi] mov ecx, [4+esi] mov [esp], eax mov [4+esp], ecx mov eax, [8+esi] mov ecx, [12+esi] mov [8+esp], eax mov [12+esp], ecx mov eax, [16+esi] mov ecx, [20+esi] mov [16+esp], eax mov [20+esp], ecx mov eax, [24+esi] mov ecx, [28+esi] mov [24+esp], eax mov [28+esp], ecx mov eax, [32+esi] mov ecx, [36+esi] mov [32+esp], eax mov [36+esp], ecx mov eax, [40+esi] mov ecx, [44+esi] mov [40+esp], eax mov [44+esp], ecx mov eax, [48+esi] mov ecx, [52+esi] mov [48+esp], eax mov [52+esp], ecx mov eax, [56+esi] mov ecx, [60+esi] mov [56+esp], eax mov [60+esp], ecx jmp L001shortcut
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -