📄 f.s
字号:
# Don't even think of reading this code # It was automatically generated by sha1-586.pl # Which is a perl program used to generate the x86 assember for # any of elf, a.out, BSDI,Win32, or Solaris # eric <eay@cryptsoft.com> .file "sha1-586.s" .version "01.01"gcc2_compiled.:.text .align 16.globl sha1_block_x86 .type sha1_block_x86,@functionsha1_block_x86: pushl %esi pushl %ebp movl 20(%esp), %eax movl 16(%esp), %esi addl %esi, %eax movl 12(%esp), %ebp pushl %ebx subl $64, %eax pushl %edi movl 4(%ebp), %ebx subl $72, %esp movl 12(%ebp), %edx movl 16(%ebp), %edi movl 8(%ebp), %ecx movl %eax, 68(%esp) # First we need to setup the X array movl (%esi), %eax.L000start: # First, load the words onto the stack in network byte order .byte 15.byte 200 # bswapl %eax movl %eax, (%esp) movl 4(%esi), %eax.byte 15.byte 200 # bswapl %eax movl %eax, 4(%esp) movl 8(%esi), %eax.byte 15.byte 200 # bswapl %eax movl %eax, 8(%esp) movl 12(%esi), %eax.byte 15.byte 200 # bswapl %eax movl %eax, 12(%esp) movl 16(%esi), %eax.byte 15.byte 200 # bswapl %eax movl %eax, 16(%esp) movl 20(%esi), %eax.byte 15.byte 200 # bswapl %eax movl %eax, 20(%esp) movl 24(%esi), %eax.byte 15.byte 200 # bswapl %eax movl %eax, 24(%esp) movl 28(%esi), %eax.byte 15.byte 200 # bswapl %eax movl %eax, 28(%esp) movl 32(%esi), %eax.byte 15.byte 200 # bswapl %eax movl %eax, 32(%esp) movl 36(%esi), %eax.byte 15.byte 200 # bswapl %eax movl %eax, 36(%esp) movl 40(%esi), %eax.byte 15.byte 200 # bswapl %eax movl %eax, 40(%esp) movl 44(%esi), %eax.byte 15.byte 200 # bswapl %eax movl %eax, 44(%esp) movl 48(%esi), %eax.byte 15.byte 200 # bswapl %eax movl %eax, 48(%esp) movl 52(%esi), %eax.byte 15.byte 200 # bswapl %eax movl %eax, 52(%esp) movl 56(%esi), %eax.byte 15.byte 200 # bswapl %eax movl %eax, 56(%esp) movl 60(%esi), %eax.byte 15.byte 200 # bswapl %eax movl %eax, 60(%esp) # We now have the X array on the stack # starting at sp-4 movl %esi, 64(%esp) # Start processing movl (%ebp), %eax # 00_15 0 movl %ecx, %esi movl %eax, %ebp xorl %edx, %esi roll $5, %ebp andl %ebx, %esi addl %edi, %ebp.byte 209.byte 203 # rorl $1 %ebx movl (%esp), %edi.byte 209.byte 203 # rorl $1 %ebx xorl %edx, %esi leal 1518500249(%ebp,%edi,1),%ebp movl %ebx, %edi addl %ebp, %esi xorl %ecx, %edi movl %esi, %ebp andl %eax, %edi roll $5, %ebp addl %edx, %ebp movl 4(%esp), %edx.byte 209.byte 200 # rorl $1 %eax xorl %ecx, %edi.byte 209.byte 200 # rorl $1 %eax leal 1518500249(%ebp,%edx,1),%ebp addl %ebp, %edi # 00_15 2 movl %eax, %edx movl %edi, %ebp xorl %ebx, %edx roll $5, %ebp andl %esi, %edx addl %ecx, %ebp.byte 209.byte 206 # rorl $1 %esi movl 8(%esp), %ecx.byte 209.byte 206 # rorl $1 %esi xorl %ebx, %edx leal 1518500249(%ebp,%ecx,1),%ebp movl %esi, %ecx addl %ebp, %edx xorl %eax, %ecx movl %edx, %ebp andl %edi, %ecx roll $5, %ebp addl %ebx, %ebp movl 12(%esp), %ebx.byte 209.byte 207 # rorl $1 %edi xorl %eax, %ecx.byte 209.byte 207 # rorl $1 %edi leal 1518500249(%ebp,%ebx,1),%ebp addl %ebp, %ecx # 00_15 4 movl %edi, %ebx movl %ecx, %ebp xorl %esi, %ebx roll $5, %ebp andl %edx, %ebx addl %eax, %ebp.byte 209.byte 202 # rorl $1 %edx movl 16(%esp), %eax.byte 209.byte 202 # rorl $1 %edx xorl %esi, %ebx leal 1518500249(%ebp,%eax,1),%ebp movl %edx, %eax addl %ebp, %ebx xorl %edi, %eax movl %ebx, %ebp andl %ecx, %eax roll $5, %ebp addl %esi, %ebp movl 20(%esp), %esi.byte 209.byte 201 # rorl $1 %ecx xorl %edi, %eax.byte 209.byte 201 # rorl $1 %ecx leal 1518500249(%ebp,%esi,1),%ebp addl %ebp, %eax # 00_15 6 movl %ecx, %esi movl %eax, %ebp xorl %edx, %esi roll $5, %ebp andl %ebx, %esi addl %edi, %ebp.byte 209.byte 203 # rorl $1 %ebx movl 24(%esp), %edi.byte 209.byte 203 # rorl $1 %ebx xorl %edx, %esi leal 1518500249(%ebp,%edi,1),%ebp movl %ebx, %edi addl %ebp, %esi xorl %ecx, %edi movl %esi, %ebp andl %eax, %edi roll $5, %ebp addl %edx, %ebp movl 28(%esp), %edx.byte 209.byte 200 # rorl $1 %eax xorl %ecx, %edi.byte 209.byte 200 # rorl $1 %eax leal 1518500249(%ebp,%edx,1),%ebp addl %ebp, %edi # 00_15 8 movl %eax, %edx movl %edi, %ebp xorl %ebx, %edx roll $5, %ebp andl %esi, %edx addl %ecx, %ebp.byte 209.byte 206 # rorl $1 %esi movl 32(%esp), %ecx.byte 209.byte 206 # rorl $1 %esi xorl %ebx, %edx leal 1518500249(%ebp,%ecx,1),%ebp movl %esi, %ecx addl %ebp, %edx xorl %eax, %ecx movl %edx, %ebp andl %edi, %ecx roll $5, %ebp addl %ebx, %ebp movl 36(%esp), %ebx.byte 209.byte 207 # rorl $1 %edi xorl %eax, %ecx.byte 209.byte 207 # rorl $1 %edi leal 1518500249(%ebp,%ebx,1),%ebp addl %ebp, %ecx # 00_15 10 movl %edi, %ebx movl %ecx, %ebp xorl %esi, %ebx roll $5, %ebp andl %edx, %ebx addl %eax, %ebp.byte 209.byte 202 # rorl $1 %edx movl 40(%esp), %eax.byte 209.byte 202 # rorl $1 %edx xorl %esi, %ebx leal 1518500249(%ebp,%eax,1),%ebp movl %edx, %eax addl %ebp, %ebx xorl %edi, %eax movl %ebx, %ebp andl %ecx, %eax roll $5, %ebp addl %esi, %ebp movl 44(%esp), %esi.byte 209.byte 201 # rorl $1 %ecx xorl %edi, %eax.byte 209.byte 201 # rorl $1 %ecx leal 1518500249(%ebp,%esi,1),%ebp addl %ebp, %eax # 00_15 12 movl %ecx, %esi movl %eax, %ebp xorl %edx, %esi roll $5, %ebp andl %ebx, %esi addl %edi, %ebp.byte 209.byte 203 # rorl $1 %ebx movl 48(%esp), %edi.byte 209.byte 203 # rorl $1 %ebx xorl %edx, %esi leal 1518500249(%ebp,%edi,1),%ebp movl %ebx, %edi addl %ebp, %esi xorl %ecx, %edi movl %esi, %ebp andl %eax, %edi roll $5, %ebp addl %edx, %ebp movl 52(%esp), %edx.byte 209.byte 200 # rorl $1 %eax xorl %ecx, %edi.byte 209.byte 200 # rorl $1 %eax leal 1518500249(%ebp,%edx,1),%ebp addl %ebp, %edi # 00_15 14 movl %eax, %edx movl %edi, %ebp xorl %ebx, %edx roll $5, %ebp andl %esi, %edx addl %ecx, %ebp.byte 209.byte 206 # rorl $1 %esi movl 56(%esp), %ecx.byte 209.byte 206 # rorl $1 %esi xorl %ebx, %edx leal 1518500249(%ebp,%ecx,1),%ebp movl %esi, %ecx addl %ebp, %edx xorl %eax, %ecx movl %edx, %ebp andl %edi, %ecx roll $5, %ebp addl %ebx, %ebp movl 60(%esp), %ebx.byte 209.byte 207 # rorl $1 %edi xorl %eax, %ecx.byte 209.byte 207 # rorl $1 %edi leal 1518500249(%ebp,%ebx,1),%ebp addl %ebp, %ecx # 16_19 16 nop movl (%esp), %ebp movl 8(%esp), %ebx xorl %ebp, %ebx movl 32(%esp), %ebp xorl %ebp, %ebx movl 52(%esp), %ebp xorl %ebp, %ebx movl %edi, %ebp.byte 209.byte 195 # roll $1 %ebx xorl %esi, %ebp movl %ebx, (%esp) andl %edx, %ebp leal 1518500249(%ebx,%eax,1),%ebx xorl %esi, %ebp movl %ecx, %eax addl %ebp, %ebx roll $5, %eax.byte 209.byte 202 # rorl $1 %edx addl %eax, %ebx movl 4(%esp), %eax movl 12(%esp), %ebp xorl %ebp, %eax movl 36(%esp), %ebp xorl %ebp, %eax movl 56(%esp), %ebp.byte 209.byte 202 # rorl $1 %edx xorl %ebp, %eax.byte 209.byte 192 # roll $1 %eax movl %edx, %ebp xorl %edi, %ebp movl %eax, 4(%esp) andl %ecx, %ebp leal 1518500249(%eax,%esi,1),%eax xorl %edi, %ebp movl %ebx, %esi roll $5, %esi.byte 209.byte 201 # rorl $1 %ecx addl %esi, %eax.byte 209.byte 201 # rorl $1 %ecx addl %ebp, %eax # 16_19 18 movl 8(%esp), %ebp movl 16(%esp), %esi xorl %ebp, %esi movl 40(%esp), %ebp xorl %ebp, %esi movl 60(%esp), %ebp xorl %ebp, %esi movl %ecx, %ebp.byte 209.byte 198 # roll $1 %esi xorl %edx, %ebp movl %esi, 8(%esp) andl %ebx, %ebp leal 1518500249(%esi,%edi,1),%esi xorl %edx, %ebp movl %eax, %edi addl %ebp, %esi roll $5, %edi.byte 209.byte 203 # rorl $1 %ebx addl %edi, %esi movl 12(%esp), %edi movl 20(%esp), %ebp xorl %ebp, %edi movl 44(%esp), %ebp xorl %ebp, %edi movl (%esp), %ebp.byte 209.byte 203 # rorl $1 %ebx xorl %ebp, %edi.byte 209.byte 199 # roll $1 %edi movl %ebx, %ebp xorl %ecx, %ebp movl %edi, 12(%esp) andl %eax, %ebp leal 1518500249(%edi,%edx,1),%edi xorl %ecx, %ebp movl %esi, %edx roll $5, %edx.byte 209.byte 200 # rorl $1 %eax addl %edx, %edi.byte 209.byte 200 # rorl $1 %eax addl %ebp, %edi # 20_39 20 movl 16(%esp), %edx movl 24(%esp), %ebp xorl %ebp, %edx movl 48(%esp), %ebp xorl %ebp, %edx movl 4(%esp), %ebp xorl %ebp, %edx movl %esi, %ebp.byte 209.byte 194 # roll $1 %edx xorl %eax, %ebp movl %edx, 16(%esp) xorl %ebx, %ebp leal 1859775393(%edx,%ecx,1),%edx movl %edi, %ecx roll $5, %ecx.byte 209.byte 206 # rorl $1 %esi addl %ebp, %ecx.byte 209.byte 206 # rorl $1 %esi addl %ecx, %edx # 20_39 21 movl 20(%esp), %ecx movl 28(%esp), %ebp xorl %ebp, %ecx movl 52(%esp), %ebp xorl %ebp, %ecx movl 8(%esp), %ebp xorl %ebp, %ecx movl %edi, %ebp.byte 209.byte 193 # roll $1 %ecx xorl %esi, %ebp movl %ecx, 20(%esp) xorl %eax, %ebp leal 1859775393(%ecx,%ebx,1),%ecx movl %edx, %ebx roll $5, %ebx.byte 209.byte 207 # rorl $1 %edi addl %ebp, %ebx.byte 209.byte 207 # rorl $1 %edi addl %ebx, %ecx # 20_39 22 movl 24(%esp), %ebx movl 32(%esp), %ebp xorl %ebp, %ebx movl 56(%esp), %ebp xorl %ebp, %ebx movl 12(%esp), %ebp xorl %ebp, %ebx movl %edx, %ebp.byte 209.byte 195 # roll $1 %ebx xorl %edi, %ebp movl %ebx, 24(%esp) xorl %esi, %ebp leal 1859775393(%ebx,%eax,1),%ebx movl %ecx, %eax roll $5, %eax.byte 209.byte 202 # rorl $1 %edx addl %ebp, %eax.byte 209.byte 202 # rorl $1 %edx addl %eax, %ebx # 20_39 23 movl 28(%esp), %eax movl 36(%esp), %ebp xorl %ebp, %eax movl 60(%esp), %ebp xorl %ebp, %eax movl 16(%esp), %ebp xorl %ebp, %eax movl %ecx, %ebp.byte 209.byte 192 # roll $1 %eax xorl %edx, %ebp movl %eax, 28(%esp) xorl %edi, %ebp leal 1859775393(%eax,%esi,1),%eax movl %ebx, %esi roll $5, %esi.byte 209.byte 201 # rorl $1 %ecx addl %ebp, %esi.byte 209.byte 201 # rorl $1 %ecx addl %esi, %eax # 20_39 24 movl 32(%esp), %esi movl 40(%esp), %ebp xorl %ebp, %esi movl (%esp), %ebp xorl %ebp, %esi movl 20(%esp), %ebp xorl %ebp, %esi movl %ebx, %ebp.byte 209.byte 198 # roll $1 %esi xorl %ecx, %ebp movl %esi, 32(%esp) xorl %edx, %ebp leal 1859775393(%esi,%edi,1),%esi movl %eax, %edi roll $5, %edi.byte 209.byte 203 # rorl $1 %ebx addl %ebp, %edi.byte 209.byte 203 # rorl $1 %ebx addl %edi, %esi # 20_39 25 movl 36(%esp), %edi movl 44(%esp), %ebp xorl %ebp, %edi movl 4(%esp), %ebp xorl %ebp, %edi movl 24(%esp), %ebp xorl %ebp, %edi movl %eax, %ebp.byte 209.byte 199 # roll $1 %edi xorl %ebx, %ebp movl %edi, 36(%esp) xorl %ecx, %ebp leal 1859775393(%edi,%edx,1),%edi movl %esi, %edx roll $5, %edx.byte 209.byte 200 # rorl $1 %eax addl %ebp, %edx.byte 209.byte 200 # rorl $1 %eax addl %edx, %edi # 20_39 26 movl 40(%esp), %edx movl 48(%esp), %ebp xorl %ebp, %edx movl 8(%esp), %ebp xorl %ebp, %edx movl 28(%esp), %ebp xorl %ebp, %edx movl %esi, %ebp.byte 209.byte 194 # roll $1 %edx xorl %eax, %ebp movl %edx, 40(%esp) xorl %ebx, %ebp leal 1859775393(%edx,%ecx,1),%edx movl %edi, %ecx roll $5, %ecx.byte 209.byte 206 # rorl $1 %esi addl %ebp, %ecx.byte 209.byte 206 # rorl $1 %esi addl %ecx, %edx # 20_39 27 movl 44(%esp), %ecx movl 52(%esp), %ebp xorl %ebp, %ecx movl 12(%esp), %ebp xorl %ebp, %ecx movl 32(%esp), %ebp xorl %ebp, %ecx movl %edi, %ebp.byte 209.byte 193 # roll $1 %ecx xorl %esi, %ebp movl %ecx, 44(%esp) xorl %eax, %ebp leal 1859775393(%ecx,%ebx,1),%ecx movl %edx, %ebx roll $5, %ebx.byte 209.byte 207 # rorl $1 %edi addl %ebp, %ebx.byte 209.byte 207 # rorl $1 %edi addl %ebx, %ecx # 20_39 28 movl 48(%esp), %ebx movl 56(%esp), %ebp xorl %ebp, %ebx movl 16(%esp), %ebp xorl %ebp, %ebx movl 36(%esp), %ebp xorl %ebp, %ebx movl %edx, %ebp.byte 209.byte 195 # roll $1 %ebx xorl %edi, %ebp movl %ebx, 48(%esp) xorl %esi, %ebp leal 1859775393(%ebx,%eax,1),%ebx movl %ecx, %eax roll $5, %eax.byte 209.byte 202 # rorl $1 %edx addl %ebp, %eax.byte 209.byte 202 # rorl $1 %edx addl %eax, %ebx
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -