1*96cbc34fSDavid du Colombier# 1 "<stdin>" 2*96cbc34fSDavid du Colombier# 1 "<built-in>" 3*96cbc34fSDavid du Colombier# 1 "<command line>" 4*96cbc34fSDavid du Colombier# 1 "<stdin>" 5*96cbc34fSDavid du Colombier.text 6*96cbc34fSDavid du Colombier 7*96cbc34fSDavid du Colombier.p2align 2,0x90 8*96cbc34fSDavid du Colombier 9*96cbc34fSDavid du Colombier.globl __sha1block 10*96cbc34fSDavid du Colombier__sha1block: 11*96cbc34fSDavid du Colombier# 110 "<stdin>" 12*96cbc34fSDavid du Colombier pushl %ebp 13*96cbc34fSDavid du Colombier subl $((48+80*4)), %esp 14*96cbc34fSDavid du Colombier 15*96cbc34fSDavid du Colombier mov %ebx, ((48+80*4)-36-(80*4))(%esp) 16*96cbc34fSDavid du Colombier mov %esi, ((48+80*4)-40-(80*4))(%esp) 17*96cbc34fSDavid du Colombier mov %edi, ((48+80*4)-44-(80*4))(%esp) 18*96cbc34fSDavid du Colombier 19*96cbc34fSDavid du Colombier movl ((48+80*4)+8)(%esp), %eax 20*96cbc34fSDavid du Colombier addl ((48+80*4)+12)(%esp), %eax 21*96cbc34fSDavid du Colombier movl %eax, ((48+80*4)-32-(80*4))(%esp) 22*96cbc34fSDavid du Colombier 23*96cbc34fSDavid du Colombier leal (((48+80*4)-4-(80*4))+15*4)(%esp), %edi 24*96cbc34fSDavid du Colombier movl %edi, ((48+80*4)-16-(80*4))(%esp) 25*96cbc34fSDavid du Colombier leal (((48+80*4)-4-(80*4))+40*4)(%esp), %edx 26*96cbc34fSDavid du Colombier movl %edx, ((48+80*4)-20-(80*4))(%esp) 27*96cbc34fSDavid du Colombier leal (((48+80*4)-4-(80*4))+60*4)(%esp), %ecx 28*96cbc34fSDavid du Colombier movl %ecx, ((48+80*4)-24-(80*4))(%esp) 29*96cbc34fSDavid du Colombier leal (((48+80*4)-4-(80*4))+80*4)(%esp), %edi 30*96cbc34fSDavid du Colombier movl %edi, ((48+80*4)-28-(80*4))(%esp) 31*96cbc34fSDavid du Colombier 32*96cbc34fSDavid du Colombier0: 33*96cbc34fSDavid du Colombier leal ((48+80*4)-4-(80*4))(%esp), %ebp 34*96cbc34fSDavid du Colombier 35*96cbc34fSDavid du Colombier movl ((48+80*4)+16)(%esp), %edi 36*96cbc34fSDavid du Colombier movl (%edi),%eax 37*96cbc34fSDavid du Colombier movl 4(%edi),%ebx 38*96cbc34fSDavid du Colombier movl %ebx, ((48+80*4)-8-(80*4))(%esp) 39*96cbc34fSDavid du Colombier movl 8(%edi), %ecx 40*96cbc34fSDavid du Colombier movl 12(%edi), %edx 41*96cbc34fSDavid du Colombier movl 16(%edi), %esi 42*96cbc34fSDavid du Colombier 43*96cbc34fSDavid du Colombier movl ((48+80*4)+8)(%esp), %ebx 44*96cbc34fSDavid du Colombier 45*96cbc34fSDavid du Colombier1: 46*96cbc34fSDavid du Colombier movl 0(%ebx), %edi; bswap %edi; movl %edi, 0(%ebp); leal 0x5a827999(%edi,%esi,1), %esi; movl %eax, %edi; roll $5,%edi; addl %edi,%esi; movl %ecx, %edi; xorl %edx, %edi; andl ((48+80*4)-8-(80*4))(%esp), %edi; xorl %edx, %edi; addl %edi,%esi; rorl $2,((48+80*4)-8-(80*4))(%esp); 47*96cbc34fSDavid du Colombier movl %esi,((48+80*4)-12-(80*4))(%esp) 48*96cbc34fSDavid du Colombier movl 4(%ebx), %edi; bswap %edi; movl %edi, 4(%ebp); leal 0x5a827999(%edi,%edx,1), %edx; movl %esi, %edi; roll $5,%edi; addl %edi,%edx; movl ((48+80*4)-8-(80*4))(%esp), %edi; xorl %ecx, %edi; andl %eax, %edi; xorl %ecx, %edi; addl %edi,%edx; rorl $2,%eax; 49*96cbc34fSDavid du Colombier movl ((48+80*4)-8-(80*4))(%esp),%esi 50*96cbc34fSDavid du Colombier movl 8(%ebx), %edi; bswap %edi; movl %edi, 8(%ebp); leal 0x5a827999(%edi,%ecx,1), %ecx; movl %edx, %edi; roll $5,%edi; addl %edi,%ecx; movl %eax, %edi; xorl %esi, %edi; andl ((48+80*4)-12-(80*4))(%esp), %edi; xorl %esi, %edi; addl %edi,%ecx; rorl $2,((48+80*4)-12-(80*4))(%esp); 51*96cbc34fSDavid du Colombier movl 12(%ebx), %edi; bswap %edi; movl %edi, 12(%ebp); leal 0x5a827999(%edi,%esi,1), %esi; movl %ecx, %edi; roll $5,%edi; addl %edi,%esi; movl ((48+80*4)-12-(80*4))(%esp), %edi; xorl %eax, %edi; andl %edx, %edi; xorl %eax, %edi; addl %edi,%esi; rorl $2,%edx; 52*96cbc34fSDavid du Colombier movl %esi,((48+80*4)-8-(80*4))(%esp) 53*96cbc34fSDavid du Colombier movl 16(%ebx), %edi; bswap %edi; movl %edi, 16(%ebp); leal 0x5a827999(%edi,%eax,1), %eax; movl %esi, %edi; roll $5,%edi; addl %edi,%eax; movl %edx, %edi; xorl ((48+80*4)-12-(80*4))(%esp), %edi; andl %ecx, %edi; xorl ((48+80*4)-12-(80*4))(%esp), %edi; addl %edi,%eax; rorl $2,%ecx; 54*96cbc34fSDavid du Colombier movl ((48+80*4)-12-(80*4))(%esp),%esi 55*96cbc34fSDavid du Colombier 56*96cbc34fSDavid du Colombier addl $20, %ebx 57*96cbc34fSDavid du Colombier addl $20, %ebp 58*96cbc34fSDavid du Colombier cmpl ((48+80*4)-16-(80*4))(%esp), %ebp 59*96cbc34fSDavid du Colombier jb 1b 60*96cbc34fSDavid du Colombier 61*96cbc34fSDavid du Colombier movl 0(%ebx), %edi; bswap %edi; movl %edi, 0(%ebp); leal 0x5a827999(%edi,%esi,1), %esi; movl %eax, %edi; roll $5,%edi; addl %edi,%esi; movl %ecx, %edi; xorl %edx, %edi; andl ((48+80*4)-8-(80*4))(%esp), %edi; xorl %edx, %edi; addl %edi,%esi; rorl $2,((48+80*4)-8-(80*4))(%esp); 62*96cbc34fSDavid du Colombier addl $4, %ebx 63*96cbc34fSDavid du Colombier MOVL %ebx, ((48+80*4)+8)(%esp) 64*96cbc34fSDavid du Colombier MOVL ((48+80*4)-8-(80*4))(%esp),%ebx 65*96cbc34fSDavid du Colombier 66*96cbc34fSDavid du Colombier movl (4 -64)(%ebp), %edi; xorl (4 -56)(%ebp), %edi; xorl (4 -32)(%ebp), %edi; xorl (4 -12)(%ebp), %edi; roll $1, %edi; movl %edi, 4(%ebp); leal 0x5a827999(%edi, %edx, 1), %edx; movl %esi, %edi; roll $5, %edi; addl %edi, %edx; movl %ebx, %edi; xorl %ecx, %edi; andl %eax, %edi; xorl %ecx, %edi; addl %edi, %edx; rorl $2, %eax; 67*96cbc34fSDavid du Colombier movl (8 -64)(%ebp), %edi; xorl (8 -56)(%ebp), %edi; xorl (8 -32)(%ebp), %edi; xorl (8 -12)(%ebp), %edi; roll $1, %edi; movl %edi, 8(%ebp); leal 0x5a827999(%edi, %ecx, 1), %ecx; movl %edx, %edi; roll $5, %edi; addl %edi, %ecx; movl %eax, %edi; xorl %ebx, %edi; andl %esi, %edi; xorl %ebx, %edi; addl %edi, %ecx; rorl $2, %esi; 68*96cbc34fSDavid du Colombier movl (12 -64)(%ebp), %edi; xorl (12 -56)(%ebp), %edi; xorl (12 -32)(%ebp), %edi; xorl (12 -12)(%ebp), %edi; roll $1, %edi; movl %edi, 12(%ebp); leal 0x5a827999(%edi, %ebx, 1), %ebx; movl %ecx, %edi; roll $5, %edi; addl %edi, %ebx; movl %esi, %edi; xorl %eax, %edi; andl %edx, %edi; xorl %eax, %edi; addl %edi, %ebx; rorl $2, %edx; 69*96cbc34fSDavid du Colombier movl (16 -64)(%ebp), %edi; xorl (16 -56)(%ebp), %edi; xorl (16 -32)(%ebp), %edi; xorl (16 -12)(%ebp), %edi; roll $1, %edi; movl %edi, 16(%ebp); leal 0x5a827999(%edi, %eax, 1), %eax; movl %ebx, %edi; roll $5, %edi; addl %edi, %eax; movl %edx, %edi; xorl %esi, %edi; andl %ecx, %edi; xorl %esi, %edi; addl %edi, %eax; rorl $2, %ecx; 70*96cbc34fSDavid du Colombier 71*96cbc34fSDavid du Colombier addl $20, %ebp 72*96cbc34fSDavid du Colombier 73*96cbc34fSDavid du Colombier2: 74*96cbc34fSDavid du Colombier movl (0 -64)(%ebp), %edi; xorl (0 -56)(%ebp), %edi; xorl (0 -32)(%ebp), %edi; xorl (0 -12)(%ebp), %edi; roll $1, %edi; movl %edi, 0(%ebp); leal 0x6ed9eba1(%edi, %esi, 1), %esi; movl %eax, %edi; roll $5, %edi; addl %edi, %esi; movl %ebx, %edi; xorl %ecx, %edi; xorl %edx, %edi; addl %edi, %esi; rorl $2, %ebx; 75*96cbc34fSDavid du Colombier movl (4 -64)(%ebp), %edi; xorl (4 -56)(%ebp), %edi; xorl (4 -32)(%ebp), %edi; xorl (4 -12)(%ebp), %edi; roll $1, %edi; movl %edi, 4(%ebp); leal 0x6ed9eba1(%edi, %edx, 1), %edx; movl %esi, %edi; roll $5, %edi; addl %edi, %edx; movl %eax, %edi; xorl %ebx, %edi; xorl %ecx, %edi; addl %edi, %edx; rorl $2, %eax; 76*96cbc34fSDavid du Colombier movl (8 -64)(%ebp), %edi; xorl (8 -56)(%ebp), %edi; xorl (8 -32)(%ebp), %edi; xorl (8 -12)(%ebp), %edi; roll $1, %edi; movl %edi, 8(%ebp); leal 0x6ed9eba1(%edi, %ecx, 1), %ecx; movl %edx, %edi; roll $5, %edi; addl %edi, %ecx; movl %esi, %edi; xorl %eax, %edi; xorl %ebx, %edi; addl %edi, %ecx; rorl $2, %esi; 77*96cbc34fSDavid du Colombier movl (12 -64)(%ebp), %edi; xorl (12 -56)(%ebp), %edi; xorl (12 -32)(%ebp), %edi; xorl (12 -12)(%ebp), %edi; roll $1, %edi; movl %edi, 12(%ebp); leal 0x6ed9eba1(%edi, %ebx, 1), %ebx; movl %ecx, %edi; roll $5, %edi; addl %edi, %ebx; movl %edx, %edi; xorl %esi, %edi; xorl %eax, %edi; addl %edi, %ebx; rorl $2, %edx; 78*96cbc34fSDavid du Colombier movl (16 -64)(%ebp), %edi; xorl (16 -56)(%ebp), %edi; xorl (16 -32)(%ebp), %edi; xorl (16 -12)(%ebp), %edi; roll $1, %edi; movl %edi, 16(%ebp); leal 0x6ed9eba1(%edi, %eax, 1), %eax; movl %ebx, %edi; roll $5, %edi; addl %edi, %eax; movl %ecx, %edi; xorl %edx, %edi; xorl %esi, %edi; addl %edi, %eax; rorl $2, %ecx; 79*96cbc34fSDavid du Colombier 80*96cbc34fSDavid du Colombier addl $20,%ebp 81*96cbc34fSDavid du Colombier cmpl ((48+80*4)-20-(80*4))(%esp), %ebp 82*96cbc34fSDavid du Colombier jb 2b 83*96cbc34fSDavid du Colombier 84*96cbc34fSDavid du Colombier3: 85*96cbc34fSDavid du Colombier movl (0 -64)(%ebp), %edi; xorl (0 -56)(%ebp), %edi; xorl (0 -32)(%ebp), %edi; xorl (0 -12)(%ebp), %edi; roll $1, %edi; movl %edi, 0(%ebp); leal 0x8f1bbcdc(%edi, %esi, 1), %esi; movl %eax, %edi; roll $5, %edi; addl %edi, %esi; movl %ebx, %edi; xorl %ecx, %edi; xorl %ebx, %edx; andl %edx, %edi; xorl %ebx, %edi; xorl %ebx, %edx; addl %edi, %esi; rorl $2, %ebx; 86*96cbc34fSDavid du Colombier movl (4 -64)(%ebp), %edi; xorl (4 -56)(%ebp), %edi; xorl (4 -32)(%ebp), %edi; xorl (4 -12)(%ebp), %edi; roll $1, %edi; movl %edi, 4(%ebp); leal 0x8f1bbcdc(%edi, %edx, 1), %edx; movl %esi, %edi; roll $5, %edi; addl %edi, %edx; movl %eax, %edi; xorl %ebx, %edi; xorl %eax, %ecx; andl %ecx, %edi; xorl %eax, %edi; xorl %eax, %ecx; addl %edi, %edx; rorl $2, %eax; 87*96cbc34fSDavid du Colombier movl (8 -64)(%ebp), %edi; xorl (8 -56)(%ebp), %edi; xorl (8 -32)(%ebp), %edi; xorl (8 -12)(%ebp), %edi; roll $1, %edi; movl %edi, 8(%ebp); leal 0x8f1bbcdc(%edi, %ecx, 1), %ecx; movl %edx, %edi; roll $5, %edi; addl %edi, %ecx; movl %esi, %edi; xorl %eax, %edi; xorl %esi, %ebx; andl %ebx, %edi; xorl %esi, %edi; xorl %esi, %ebx; addl %edi, %ecx; rorl $2, %esi; 88*96cbc34fSDavid du Colombier movl (12 -64)(%ebp), %edi; xorl (12 -56)(%ebp), %edi; xorl (12 -32)(%ebp), %edi; xorl (12 -12)(%ebp), %edi; roll $1, %edi; movl %edi, 12(%ebp); leal 0x8f1bbcdc(%edi, %ebx, 1), %ebx; movl %ecx, %edi; roll $5, %edi; addl %edi, %ebx; movl %edx, %edi; xorl %esi, %edi; xorl %edx, %eax; andl %eax, %edi; xorl %edx, %edi; xorl %edx, %eax; addl %edi, %ebx; rorl $2, %edx; 89*96cbc34fSDavid du Colombier movl (16 -64)(%ebp), %edi; xorl (16 -56)(%ebp), %edi; xorl (16 -32)(%ebp), %edi; xorl (16 -12)(%ebp), %edi; roll $1, %edi; movl %edi, 16(%ebp); leal 0x8f1bbcdc(%edi, %eax, 1), %eax; movl %ebx, %edi; roll $5, %edi; addl %edi, %eax; movl %ecx, %edi; xorl %edx, %edi; xorl %ecx, %esi; andl %esi, %edi; xorl %ecx, %edi; xorl %ecx, %esi; addl %edi, %eax; rorl $2, %ecx; 90*96cbc34fSDavid du Colombier 91*96cbc34fSDavid du Colombier addl $20, %ebp 92*96cbc34fSDavid du Colombier cmpl ((48+80*4)-24-(80*4))(%esp), %ebp 93*96cbc34fSDavid du Colombier jb 3b 94*96cbc34fSDavid du Colombier 95*96cbc34fSDavid du Colombier4: 96*96cbc34fSDavid du Colombier movl (0 -64)(%ebp), %edi; xorl (0 -56)(%ebp), %edi; xorl (0 -32)(%ebp), %edi; xorl (0 -12)(%ebp), %edi; roll $1, %edi; movl %edi, 0(%ebp); leal 0xca62c1d6(%edi, %esi, 1), %esi; movl %eax, %edi; roll $5, %edi; addl %edi, %esi; movl %ebx, %edi; xorl %ecx, %edi; xorl %edx, %edi; addl %edi, %esi; rorl $2, %ebx; 97*96cbc34fSDavid du Colombier movl (4 -64)(%ebp), %edi; xorl (4 -56)(%ebp), %edi; xorl (4 -32)(%ebp), %edi; xorl (4 -12)(%ebp), %edi; roll $1, %edi; movl %edi, 4(%ebp); leal 0xca62c1d6(%edi, %edx, 1), %edx; movl %esi, %edi; roll $5, %edi; addl %edi, %edx; movl %eax, %edi; xorl %ebx, %edi; xorl %ecx, %edi; addl %edi, %edx; rorl $2, %eax; 98*96cbc34fSDavid du Colombier movl (8 -64)(%ebp), %edi; xorl (8 -56)(%ebp), %edi; xorl (8 -32)(%ebp), %edi; xorl (8 -12)(%ebp), %edi; roll $1, %edi; movl %edi, 8(%ebp); leal 0xca62c1d6(%edi, %ecx, 1), %ecx; movl %edx, %edi; roll $5, %edi; addl %edi, %ecx; movl %esi, %edi; xorl %eax, %edi; xorl %ebx, %edi; addl %edi, %ecx; rorl $2, %esi; 99*96cbc34fSDavid du Colombier movl (12 -64)(%ebp), %edi; xorl (12 -56)(%ebp), %edi; xorl (12 -32)(%ebp), %edi; xorl (12 -12)(%ebp), %edi; roll $1, %edi; movl %edi, 12(%ebp); leal 0xca62c1d6(%edi, %ebx, 1), %ebx; movl %ecx, %edi; roll $5, %edi; addl %edi, %ebx; movl %edx, %edi; xorl %esi, %edi; xorl %eax, %edi; addl %edi, %ebx; rorl $2, %edx; 100*96cbc34fSDavid du Colombier movl (16 -64)(%ebp), %edi; xorl (16 -56)(%ebp), %edi; xorl (16 -32)(%ebp), %edi; xorl (16 -12)(%ebp), %edi; roll $1, %edi; movl %edi, 16(%ebp); leal 0xca62c1d6(%edi, %eax, 1), %eax; movl %ebx, %edi; roll $5, %edi; addl %edi, %eax; movl %ecx, %edi; xorl %edx, %edi; xorl %esi, %edi; addl %edi, %eax; rorl $2, %ecx; 101*96cbc34fSDavid du Colombier 102*96cbc34fSDavid du Colombier addl $20, %ebp 103*96cbc34fSDavid du Colombier cmpl ((48+80*4)-28-(80*4))(%esp), %ebp 104*96cbc34fSDavid du Colombier jb 4b 105*96cbc34fSDavid du Colombier 106*96cbc34fSDavid du Colombier movl ((48+80*4)+16)(%esp), %edi 107*96cbc34fSDavid du Colombier addl %eax, 0(%edi) 108*96cbc34fSDavid du Colombier addl %ebx, 4(%edi) 109*96cbc34fSDavid du Colombier addl %ecx, 8(%edi) 110*96cbc34fSDavid du Colombier addl %edx, 12(%edi) 111*96cbc34fSDavid du Colombier addl %esi, 16(%edi) 112*96cbc34fSDavid du Colombier 113*96cbc34fSDavid du Colombier movl ((48+80*4)-32-(80*4))(%esp), %edi 114*96cbc34fSDavid du Colombier cmpl %edi, ((48+80*4)+8)(%esp) 115*96cbc34fSDavid du Colombier jb 0b 116*96cbc34fSDavid du Colombier 117*96cbc34fSDavid du Colombier 118*96cbc34fSDavid du Colombier mov ((48+80*4)-36-(80*4))(%esp), %ebx 119*96cbc34fSDavid du Colombier mov ((48+80*4)-40-(80*4))(%esp), %esi 120*96cbc34fSDavid du Colombier mov ((48+80*4)-44-(80*4))(%esp), %edi 121*96cbc34fSDavid du Colombier addl $((48+80*4)), %esp 122*96cbc34fSDavid du Colombier popl %ebp 123*96cbc34fSDavid du Colombier ret 124