1*ebfedea0SLionel Sambuc#include <machine/asm.h> 2*ebfedea0SLionel Sambuc.text 3*ebfedea0SLionel Sambuc.type _x86_AES_encrypt_compact,@function 4*ebfedea0SLionel Sambuc.align 16 5*ebfedea0SLionel Sambuc_x86_AES_encrypt_compact: 6*ebfedea0SLionel Sambuc movl %edi,20(%esp) 7*ebfedea0SLionel Sambuc xorl (%edi),%eax 8*ebfedea0SLionel Sambuc xorl 4(%edi),%ebx 9*ebfedea0SLionel Sambuc xorl 8(%edi),%ecx 10*ebfedea0SLionel Sambuc xorl 12(%edi),%edx 11*ebfedea0SLionel Sambuc movl 240(%edi),%esi 12*ebfedea0SLionel Sambuc leal -2(%esi,%esi,1),%esi 13*ebfedea0SLionel Sambuc leal (%edi,%esi,8),%esi 14*ebfedea0SLionel Sambuc movl %esi,24(%esp) 15*ebfedea0SLionel Sambuc movl -128(%ebp),%edi 16*ebfedea0SLionel Sambuc movl -96(%ebp),%esi 17*ebfedea0SLionel Sambuc movl -64(%ebp),%edi 18*ebfedea0SLionel Sambuc movl -32(%ebp),%esi 19*ebfedea0SLionel Sambuc movl (%ebp),%edi 20*ebfedea0SLionel Sambuc movl 32(%ebp),%esi 21*ebfedea0SLionel Sambuc movl 64(%ebp),%edi 22*ebfedea0SLionel Sambuc movl 96(%ebp),%esi 23*ebfedea0SLionel Sambuc.align 16 24*ebfedea0SLionel Sambuc.L000loop: 25*ebfedea0SLionel Sambuc movl %eax,%esi 26*ebfedea0SLionel Sambuc andl $255,%esi 27*ebfedea0SLionel Sambuc movzbl -128(%ebp,%esi,1),%esi 28*ebfedea0SLionel Sambuc movzbl %bh,%edi 29*ebfedea0SLionel Sambuc movzbl -128(%ebp,%edi,1),%edi 30*ebfedea0SLionel Sambuc shll $8,%edi 31*ebfedea0SLionel Sambuc xorl %edi,%esi 32*ebfedea0SLionel Sambuc movl %ecx,%edi 33*ebfedea0SLionel Sambuc shrl $16,%edi 34*ebfedea0SLionel Sambuc andl $255,%edi 35*ebfedea0SLionel Sambuc movzbl -128(%ebp,%edi,1),%edi 36*ebfedea0SLionel Sambuc shll $16,%edi 37*ebfedea0SLionel Sambuc xorl %edi,%esi 38*ebfedea0SLionel Sambuc movl %edx,%edi 39*ebfedea0SLionel Sambuc shrl $24,%edi 40*ebfedea0SLionel Sambuc movzbl -128(%ebp,%edi,1),%edi 41*ebfedea0SLionel Sambuc shll $24,%edi 42*ebfedea0SLionel Sambuc xorl %edi,%esi 43*ebfedea0SLionel Sambuc movl %esi,4(%esp) 44*ebfedea0SLionel Sambuc 45*ebfedea0SLionel Sambuc movl %ebx,%esi 46*ebfedea0SLionel Sambuc andl $255,%esi 47*ebfedea0SLionel Sambuc shrl $16,%ebx 48*ebfedea0SLionel Sambuc movzbl -128(%ebp,%esi,1),%esi 49*ebfedea0SLionel Sambuc movzbl %ch,%edi 50*ebfedea0SLionel Sambuc movzbl -128(%ebp,%edi,1),%edi 51*ebfedea0SLionel Sambuc shll $8,%edi 52*ebfedea0SLionel Sambuc xorl %edi,%esi 53*ebfedea0SLionel Sambuc movl %edx,%edi 54*ebfedea0SLionel Sambuc shrl $16,%edi 55*ebfedea0SLionel Sambuc andl $255,%edi 56*ebfedea0SLionel Sambuc movzbl -128(%ebp,%edi,1),%edi 57*ebfedea0SLionel Sambuc shll $16,%edi 58*ebfedea0SLionel Sambuc xorl %edi,%esi 59*ebfedea0SLionel Sambuc movl %eax,%edi 60*ebfedea0SLionel Sambuc shrl $24,%edi 61*ebfedea0SLionel Sambuc movzbl -128(%ebp,%edi,1),%edi 62*ebfedea0SLionel Sambuc shll $24,%edi 63*ebfedea0SLionel Sambuc xorl %edi,%esi 64*ebfedea0SLionel Sambuc movl %esi,8(%esp) 65*ebfedea0SLionel Sambuc 66*ebfedea0SLionel Sambuc movl %ecx,%esi 67*ebfedea0SLionel Sambuc andl $255,%esi 68*ebfedea0SLionel Sambuc shrl $24,%ecx 69*ebfedea0SLionel Sambuc movzbl -128(%ebp,%esi,1),%esi 70*ebfedea0SLionel Sambuc movzbl %dh,%edi 71*ebfedea0SLionel Sambuc movzbl -128(%ebp,%edi,1),%edi 72*ebfedea0SLionel Sambuc shll $8,%edi 73*ebfedea0SLionel Sambuc xorl %edi,%esi 74*ebfedea0SLionel Sambuc movl %eax,%edi 75*ebfedea0SLionel Sambuc shrl $16,%edi 76*ebfedea0SLionel Sambuc andl $255,%edx 77*ebfedea0SLionel Sambuc andl $255,%edi 78*ebfedea0SLionel Sambuc movzbl -128(%ebp,%edi,1),%edi 79*ebfedea0SLionel Sambuc shll $16,%edi 80*ebfedea0SLionel Sambuc xorl %edi,%esi 81*ebfedea0SLionel Sambuc movzbl %bh,%edi 82*ebfedea0SLionel Sambuc movzbl -128(%ebp,%edi,1),%edi 83*ebfedea0SLionel Sambuc shll $24,%edi 84*ebfedea0SLionel Sambuc xorl %edi,%esi 85*ebfedea0SLionel Sambuc 86*ebfedea0SLionel Sambuc andl $255,%edx 87*ebfedea0SLionel Sambuc movzbl -128(%ebp,%edx,1),%edx 88*ebfedea0SLionel Sambuc movzbl %ah,%eax 89*ebfedea0SLionel Sambuc movzbl -128(%ebp,%eax,1),%eax 90*ebfedea0SLionel Sambuc shll $8,%eax 91*ebfedea0SLionel Sambuc xorl %eax,%edx 92*ebfedea0SLionel Sambuc movl 4(%esp),%eax 93*ebfedea0SLionel Sambuc andl $255,%ebx 94*ebfedea0SLionel Sambuc movzbl -128(%ebp,%ebx,1),%ebx 95*ebfedea0SLionel Sambuc shll $16,%ebx 96*ebfedea0SLionel Sambuc xorl %ebx,%edx 97*ebfedea0SLionel Sambuc movl 8(%esp),%ebx 98*ebfedea0SLionel Sambuc movzbl -128(%ebp,%ecx,1),%ecx 99*ebfedea0SLionel Sambuc shll $24,%ecx 100*ebfedea0SLionel Sambuc xorl %ecx,%edx 101*ebfedea0SLionel Sambuc movl %esi,%ecx 102*ebfedea0SLionel Sambuc 103*ebfedea0SLionel Sambuc movl %ecx,%esi 104*ebfedea0SLionel Sambuc andl $2155905152,%esi 105*ebfedea0SLionel Sambuc movl %esi,%ebp 106*ebfedea0SLionel Sambuc shrl $7,%ebp 107*ebfedea0SLionel Sambuc leal (%ecx,%ecx,1),%edi 108*ebfedea0SLionel Sambuc subl %ebp,%esi 109*ebfedea0SLionel Sambuc andl $4278124286,%edi 110*ebfedea0SLionel Sambuc andl $454761243,%esi 111*ebfedea0SLionel Sambuc movl %ecx,%ebp 112*ebfedea0SLionel Sambuc xorl %edi,%esi 113*ebfedea0SLionel Sambuc xorl %esi,%ecx 114*ebfedea0SLionel Sambuc roll $24,%ecx 115*ebfedea0SLionel Sambuc xorl %esi,%ecx 116*ebfedea0SLionel Sambuc rorl $16,%ebp 117*ebfedea0SLionel Sambuc xorl %ebp,%ecx 118*ebfedea0SLionel Sambuc rorl $8,%ebp 119*ebfedea0SLionel Sambuc xorl %ebp,%ecx 120*ebfedea0SLionel Sambuc movl %edx,%esi 121*ebfedea0SLionel Sambuc andl $2155905152,%esi 122*ebfedea0SLionel Sambuc movl %esi,%ebp 123*ebfedea0SLionel Sambuc shrl $7,%ebp 124*ebfedea0SLionel Sambuc leal (%edx,%edx,1),%edi 125*ebfedea0SLionel Sambuc subl %ebp,%esi 126*ebfedea0SLionel Sambuc andl $4278124286,%edi 127*ebfedea0SLionel Sambuc andl $454761243,%esi 128*ebfedea0SLionel Sambuc movl %edx,%ebp 129*ebfedea0SLionel Sambuc xorl %edi,%esi 130*ebfedea0SLionel Sambuc xorl %esi,%edx 131*ebfedea0SLionel Sambuc roll $24,%edx 132*ebfedea0SLionel Sambuc xorl %esi,%edx 133*ebfedea0SLionel Sambuc rorl $16,%ebp 134*ebfedea0SLionel Sambuc xorl %ebp,%edx 135*ebfedea0SLionel Sambuc rorl $8,%ebp 136*ebfedea0SLionel Sambuc xorl %ebp,%edx 137*ebfedea0SLionel Sambuc movl %eax,%esi 138*ebfedea0SLionel Sambuc andl $2155905152,%esi 139*ebfedea0SLionel Sambuc movl %esi,%ebp 140*ebfedea0SLionel Sambuc shrl $7,%ebp 141*ebfedea0SLionel Sambuc leal (%eax,%eax,1),%edi 142*ebfedea0SLionel Sambuc subl %ebp,%esi 143*ebfedea0SLionel Sambuc andl $4278124286,%edi 144*ebfedea0SLionel Sambuc andl $454761243,%esi 145*ebfedea0SLionel Sambuc movl %eax,%ebp 146*ebfedea0SLionel Sambuc xorl %edi,%esi 147*ebfedea0SLionel Sambuc xorl %esi,%eax 148*ebfedea0SLionel Sambuc roll $24,%eax 149*ebfedea0SLionel Sambuc xorl %esi,%eax 150*ebfedea0SLionel Sambuc rorl $16,%ebp 151*ebfedea0SLionel Sambuc xorl %ebp,%eax 152*ebfedea0SLionel Sambuc rorl $8,%ebp 153*ebfedea0SLionel Sambuc xorl %ebp,%eax 154*ebfedea0SLionel Sambuc movl %ebx,%esi 155*ebfedea0SLionel Sambuc andl $2155905152,%esi 156*ebfedea0SLionel Sambuc movl %esi,%ebp 157*ebfedea0SLionel Sambuc shrl $7,%ebp 158*ebfedea0SLionel Sambuc leal (%ebx,%ebx,1),%edi 159*ebfedea0SLionel Sambuc subl %ebp,%esi 160*ebfedea0SLionel Sambuc andl $4278124286,%edi 161*ebfedea0SLionel Sambuc andl $454761243,%esi 162*ebfedea0SLionel Sambuc movl %ebx,%ebp 163*ebfedea0SLionel Sambuc xorl %edi,%esi 164*ebfedea0SLionel Sambuc xorl %esi,%ebx 165*ebfedea0SLionel Sambuc roll $24,%ebx 166*ebfedea0SLionel Sambuc xorl %esi,%ebx 167*ebfedea0SLionel Sambuc rorl $16,%ebp 168*ebfedea0SLionel Sambuc xorl %ebp,%ebx 169*ebfedea0SLionel Sambuc rorl $8,%ebp 170*ebfedea0SLionel Sambuc xorl %ebp,%ebx 171*ebfedea0SLionel Sambuc movl 20(%esp),%edi 172*ebfedea0SLionel Sambuc movl 28(%esp),%ebp 173*ebfedea0SLionel Sambuc addl $16,%edi 174*ebfedea0SLionel Sambuc xorl (%edi),%eax 175*ebfedea0SLionel Sambuc xorl 4(%edi),%ebx 176*ebfedea0SLionel Sambuc xorl 8(%edi),%ecx 177*ebfedea0SLionel Sambuc xorl 12(%edi),%edx 178*ebfedea0SLionel Sambuc cmpl 24(%esp),%edi 179*ebfedea0SLionel Sambuc movl %edi,20(%esp) 180*ebfedea0SLionel Sambuc jb .L000loop 181*ebfedea0SLionel Sambuc movl %eax,%esi 182*ebfedea0SLionel Sambuc andl $255,%esi 183*ebfedea0SLionel Sambuc movzbl -128(%ebp,%esi,1),%esi 184*ebfedea0SLionel Sambuc movzbl %bh,%edi 185*ebfedea0SLionel Sambuc movzbl -128(%ebp,%edi,1),%edi 186*ebfedea0SLionel Sambuc shll $8,%edi 187*ebfedea0SLionel Sambuc xorl %edi,%esi 188*ebfedea0SLionel Sambuc movl %ecx,%edi 189*ebfedea0SLionel Sambuc shrl $16,%edi 190*ebfedea0SLionel Sambuc andl $255,%edi 191*ebfedea0SLionel Sambuc movzbl -128(%ebp,%edi,1),%edi 192*ebfedea0SLionel Sambuc shll $16,%edi 193*ebfedea0SLionel Sambuc xorl %edi,%esi 194*ebfedea0SLionel Sambuc movl %edx,%edi 195*ebfedea0SLionel Sambuc shrl $24,%edi 196*ebfedea0SLionel Sambuc movzbl -128(%ebp,%edi,1),%edi 197*ebfedea0SLionel Sambuc shll $24,%edi 198*ebfedea0SLionel Sambuc xorl %edi,%esi 199*ebfedea0SLionel Sambuc movl %esi,4(%esp) 200*ebfedea0SLionel Sambuc 201*ebfedea0SLionel Sambuc movl %ebx,%esi 202*ebfedea0SLionel Sambuc andl $255,%esi 203*ebfedea0SLionel Sambuc shrl $16,%ebx 204*ebfedea0SLionel Sambuc movzbl -128(%ebp,%esi,1),%esi 205*ebfedea0SLionel Sambuc movzbl %ch,%edi 206*ebfedea0SLionel Sambuc movzbl -128(%ebp,%edi,1),%edi 207*ebfedea0SLionel Sambuc shll $8,%edi 208*ebfedea0SLionel Sambuc xorl %edi,%esi 209*ebfedea0SLionel Sambuc movl %edx,%edi 210*ebfedea0SLionel Sambuc shrl $16,%edi 211*ebfedea0SLionel Sambuc andl $255,%edi 212*ebfedea0SLionel Sambuc movzbl -128(%ebp,%edi,1),%edi 213*ebfedea0SLionel Sambuc shll $16,%edi 214*ebfedea0SLionel Sambuc xorl %edi,%esi 215*ebfedea0SLionel Sambuc movl %eax,%edi 216*ebfedea0SLionel Sambuc shrl $24,%edi 217*ebfedea0SLionel Sambuc movzbl -128(%ebp,%edi,1),%edi 218*ebfedea0SLionel Sambuc shll $24,%edi 219*ebfedea0SLionel Sambuc xorl %edi,%esi 220*ebfedea0SLionel Sambuc movl %esi,8(%esp) 221*ebfedea0SLionel Sambuc 222*ebfedea0SLionel Sambuc movl %ecx,%esi 223*ebfedea0SLionel Sambuc andl $255,%esi 224*ebfedea0SLionel Sambuc shrl $24,%ecx 225*ebfedea0SLionel Sambuc movzbl -128(%ebp,%esi,1),%esi 226*ebfedea0SLionel Sambuc movzbl %dh,%edi 227*ebfedea0SLionel Sambuc movzbl -128(%ebp,%edi,1),%edi 228*ebfedea0SLionel Sambuc shll $8,%edi 229*ebfedea0SLionel Sambuc xorl %edi,%esi 230*ebfedea0SLionel Sambuc movl %eax,%edi 231*ebfedea0SLionel Sambuc shrl $16,%edi 232*ebfedea0SLionel Sambuc andl $255,%edx 233*ebfedea0SLionel Sambuc andl $255,%edi 234*ebfedea0SLionel Sambuc movzbl -128(%ebp,%edi,1),%edi 235*ebfedea0SLionel Sambuc shll $16,%edi 236*ebfedea0SLionel Sambuc xorl %edi,%esi 237*ebfedea0SLionel Sambuc movzbl %bh,%edi 238*ebfedea0SLionel Sambuc movzbl -128(%ebp,%edi,1),%edi 239*ebfedea0SLionel Sambuc shll $24,%edi 240*ebfedea0SLionel Sambuc xorl %edi,%esi 241*ebfedea0SLionel Sambuc 242*ebfedea0SLionel Sambuc movl 20(%esp),%edi 243*ebfedea0SLionel Sambuc andl $255,%edx 244*ebfedea0SLionel Sambuc movzbl -128(%ebp,%edx,1),%edx 245*ebfedea0SLionel Sambuc movzbl %ah,%eax 246*ebfedea0SLionel Sambuc movzbl -128(%ebp,%eax,1),%eax 247*ebfedea0SLionel Sambuc shll $8,%eax 248*ebfedea0SLionel Sambuc xorl %eax,%edx 249*ebfedea0SLionel Sambuc movl 4(%esp),%eax 250*ebfedea0SLionel Sambuc andl $255,%ebx 251*ebfedea0SLionel Sambuc movzbl -128(%ebp,%ebx,1),%ebx 252*ebfedea0SLionel Sambuc shll $16,%ebx 253*ebfedea0SLionel Sambuc xorl %ebx,%edx 254*ebfedea0SLionel Sambuc movl 8(%esp),%ebx 255*ebfedea0SLionel Sambuc movzbl -128(%ebp,%ecx,1),%ecx 256*ebfedea0SLionel Sambuc shll $24,%ecx 257*ebfedea0SLionel Sambuc xorl %ecx,%edx 258*ebfedea0SLionel Sambuc movl %esi,%ecx 259*ebfedea0SLionel Sambuc 260*ebfedea0SLionel Sambuc xorl 16(%edi),%eax 261*ebfedea0SLionel Sambuc xorl 20(%edi),%ebx 262*ebfedea0SLionel Sambuc xorl 24(%edi),%ecx 263*ebfedea0SLionel Sambuc xorl 28(%edi),%edx 264*ebfedea0SLionel Sambuc ret 265*ebfedea0SLionel Sambuc.size _x86_AES_encrypt_compact,.-_x86_AES_encrypt_compact 266*ebfedea0SLionel Sambuc.type _sse_AES_encrypt_compact,@function 267*ebfedea0SLionel Sambuc.align 16 268*ebfedea0SLionel Sambuc_sse_AES_encrypt_compact: 269*ebfedea0SLionel Sambuc pxor (%edi),%mm0 270*ebfedea0SLionel Sambuc pxor 8(%edi),%mm4 271*ebfedea0SLionel Sambuc movl 240(%edi),%esi 272*ebfedea0SLionel Sambuc leal -2(%esi,%esi,1),%esi 273*ebfedea0SLionel Sambuc leal (%edi,%esi,8),%esi 274*ebfedea0SLionel Sambuc movl %esi,24(%esp) 275*ebfedea0SLionel Sambuc movl $454761243,%eax 276*ebfedea0SLionel Sambuc movl %eax,8(%esp) 277*ebfedea0SLionel Sambuc movl %eax,12(%esp) 278*ebfedea0SLionel Sambuc movl -128(%ebp),%eax 279*ebfedea0SLionel Sambuc movl -96(%ebp),%ebx 280*ebfedea0SLionel Sambuc movl -64(%ebp),%ecx 281*ebfedea0SLionel Sambuc movl -32(%ebp),%edx 282*ebfedea0SLionel Sambuc movl (%ebp),%eax 283*ebfedea0SLionel Sambuc movl 32(%ebp),%ebx 284*ebfedea0SLionel Sambuc movl 64(%ebp),%ecx 285*ebfedea0SLionel Sambuc movl 96(%ebp),%edx 286*ebfedea0SLionel Sambuc.align 16 287*ebfedea0SLionel Sambuc.L001loop: 288*ebfedea0SLionel Sambuc pshufw $8,%mm0,%mm1 289*ebfedea0SLionel Sambuc pshufw $13,%mm4,%mm5 290*ebfedea0SLionel Sambuc movd %mm1,%eax 291*ebfedea0SLionel Sambuc movd %mm5,%ebx 292*ebfedea0SLionel Sambuc movzbl %al,%esi 293*ebfedea0SLionel Sambuc movzbl -128(%ebp,%esi,1),%ecx 294*ebfedea0SLionel Sambuc pshufw $13,%mm0,%mm2 295*ebfedea0SLionel Sambuc movzbl %ah,%edx 296*ebfedea0SLionel Sambuc movzbl -128(%ebp,%edx,1),%edx 297*ebfedea0SLionel Sambuc shll $8,%edx 298*ebfedea0SLionel Sambuc shrl $16,%eax 299*ebfedea0SLionel Sambuc movzbl %bl,%esi 300*ebfedea0SLionel Sambuc movzbl -128(%ebp,%esi,1),%esi 301*ebfedea0SLionel Sambuc shll $16,%esi 302*ebfedea0SLionel Sambuc orl %esi,%ecx 303*ebfedea0SLionel Sambuc pshufw $8,%mm4,%mm6 304*ebfedea0SLionel Sambuc movzbl %bh,%esi 305*ebfedea0SLionel Sambuc movzbl -128(%ebp,%esi,1),%esi 306*ebfedea0SLionel Sambuc shll $24,%esi 307*ebfedea0SLionel Sambuc orl %esi,%edx 308*ebfedea0SLionel Sambuc shrl $16,%ebx 309*ebfedea0SLionel Sambuc movzbl %ah,%esi 310*ebfedea0SLionel Sambuc movzbl -128(%ebp,%esi,1),%esi 311*ebfedea0SLionel Sambuc shll $8,%esi 312*ebfedea0SLionel Sambuc orl %esi,%ecx 313*ebfedea0SLionel Sambuc movzbl %bh,%esi 314*ebfedea0SLionel Sambuc movzbl -128(%ebp,%esi,1),%esi 315*ebfedea0SLionel Sambuc shll $24,%esi 316*ebfedea0SLionel Sambuc orl %esi,%ecx 317*ebfedea0SLionel Sambuc movd %ecx,%mm0 318*ebfedea0SLionel Sambuc movzbl %al,%esi 319*ebfedea0SLionel Sambuc movzbl -128(%ebp,%esi,1),%ecx 320*ebfedea0SLionel Sambuc movd %mm2,%eax 321*ebfedea0SLionel Sambuc movzbl %bl,%esi 322*ebfedea0SLionel Sambuc movzbl -128(%ebp,%esi,1),%esi 323*ebfedea0SLionel Sambuc shll $16,%esi 324*ebfedea0SLionel Sambuc orl %esi,%ecx 325*ebfedea0SLionel Sambuc movd %mm6,%ebx 326*ebfedea0SLionel Sambuc movzbl %ah,%esi 327*ebfedea0SLionel Sambuc movzbl -128(%ebp,%esi,1),%esi 328*ebfedea0SLionel Sambuc shll $24,%esi 329*ebfedea0SLionel Sambuc orl %esi,%ecx 330*ebfedea0SLionel Sambuc movzbl %bh,%esi 331*ebfedea0SLionel Sambuc movzbl -128(%ebp,%esi,1),%esi 332*ebfedea0SLionel Sambuc shll $8,%esi 333*ebfedea0SLionel Sambuc orl %esi,%ecx 334*ebfedea0SLionel Sambuc movd %ecx,%mm1 335*ebfedea0SLionel Sambuc movzbl %bl,%esi 336*ebfedea0SLionel Sambuc movzbl -128(%ebp,%esi,1),%ecx 337*ebfedea0SLionel Sambuc shrl $16,%ebx 338*ebfedea0SLionel Sambuc movzbl %al,%esi 339*ebfedea0SLionel Sambuc movzbl -128(%ebp,%esi,1),%esi 340*ebfedea0SLionel Sambuc shll $16,%esi 341*ebfedea0SLionel Sambuc orl %esi,%ecx 342*ebfedea0SLionel Sambuc shrl $16,%eax 343*ebfedea0SLionel Sambuc punpckldq %mm1,%mm0 344*ebfedea0SLionel Sambuc movzbl %ah,%esi 345*ebfedea0SLionel Sambuc movzbl -128(%ebp,%esi,1),%esi 346*ebfedea0SLionel Sambuc shll $24,%esi 347*ebfedea0SLionel Sambuc orl %esi,%ecx 348*ebfedea0SLionel Sambuc andl $255,%eax 349*ebfedea0SLionel Sambuc movzbl -128(%ebp,%eax,1),%eax 350*ebfedea0SLionel Sambuc shll $16,%eax 351*ebfedea0SLionel Sambuc orl %eax,%edx 352*ebfedea0SLionel Sambuc movzbl %bh,%esi 353*ebfedea0SLionel Sambuc movzbl -128(%ebp,%esi,1),%esi 354*ebfedea0SLionel Sambuc shll $8,%esi 355*ebfedea0SLionel Sambuc orl %esi,%ecx 356*ebfedea0SLionel Sambuc movd %ecx,%mm4 357*ebfedea0SLionel Sambuc andl $255,%ebx 358*ebfedea0SLionel Sambuc movzbl -128(%ebp,%ebx,1),%ebx 359*ebfedea0SLionel Sambuc orl %ebx,%edx 360*ebfedea0SLionel Sambuc movd %edx,%mm5 361*ebfedea0SLionel Sambuc punpckldq %mm5,%mm4 362*ebfedea0SLionel Sambuc addl $16,%edi 363*ebfedea0SLionel Sambuc cmpl 24(%esp),%edi 364*ebfedea0SLionel Sambuc ja .L002out 365*ebfedea0SLionel Sambuc movq 8(%esp),%mm2 366*ebfedea0SLionel Sambuc pxor %mm3,%mm3 367*ebfedea0SLionel Sambuc pxor %mm7,%mm7 368*ebfedea0SLionel Sambuc movq %mm0,%mm1 369*ebfedea0SLionel Sambuc movq %mm4,%mm5 370*ebfedea0SLionel Sambuc pcmpgtb %mm0,%mm3 371*ebfedea0SLionel Sambuc pcmpgtb %mm4,%mm7 372*ebfedea0SLionel Sambuc pand %mm2,%mm3 373*ebfedea0SLionel Sambuc pand %mm2,%mm7 374*ebfedea0SLionel Sambuc pshufw $177,%mm0,%mm2 375*ebfedea0SLionel Sambuc pshufw $177,%mm4,%mm6 376*ebfedea0SLionel Sambuc paddb %mm0,%mm0 377*ebfedea0SLionel Sambuc paddb %mm4,%mm4 378*ebfedea0SLionel Sambuc pxor %mm3,%mm0 379*ebfedea0SLionel Sambuc pxor %mm7,%mm4 380*ebfedea0SLionel Sambuc pshufw $177,%mm2,%mm3 381*ebfedea0SLionel Sambuc pshufw $177,%mm6,%mm7 382*ebfedea0SLionel Sambuc pxor %mm0,%mm1 383*ebfedea0SLionel Sambuc pxor %mm4,%mm5 384*ebfedea0SLionel Sambuc pxor %mm2,%mm0 385*ebfedea0SLionel Sambuc pxor %mm6,%mm4 386*ebfedea0SLionel Sambuc movq %mm3,%mm2 387*ebfedea0SLionel Sambuc movq %mm7,%mm6 388*ebfedea0SLionel Sambuc pslld $8,%mm3 389*ebfedea0SLionel Sambuc pslld $8,%mm7 390*ebfedea0SLionel Sambuc psrld $24,%mm2 391*ebfedea0SLionel Sambuc psrld $24,%mm6 392*ebfedea0SLionel Sambuc pxor %mm3,%mm0 393*ebfedea0SLionel Sambuc pxor %mm7,%mm4 394*ebfedea0SLionel Sambuc pxor %mm2,%mm0 395*ebfedea0SLionel Sambuc pxor %mm6,%mm4 396*ebfedea0SLionel Sambuc movq %mm1,%mm3 397*ebfedea0SLionel Sambuc movq %mm5,%mm7 398*ebfedea0SLionel Sambuc movq (%edi),%mm2 399*ebfedea0SLionel Sambuc movq 8(%edi),%mm6 400*ebfedea0SLionel Sambuc psrld $8,%mm1 401*ebfedea0SLionel Sambuc psrld $8,%mm5 402*ebfedea0SLionel Sambuc movl -128(%ebp),%eax 403*ebfedea0SLionel Sambuc pslld $24,%mm3 404*ebfedea0SLionel Sambuc pslld $24,%mm7 405*ebfedea0SLionel Sambuc movl -64(%ebp),%ebx 406*ebfedea0SLionel Sambuc pxor %mm1,%mm0 407*ebfedea0SLionel Sambuc pxor %mm5,%mm4 408*ebfedea0SLionel Sambuc movl (%ebp),%ecx 409*ebfedea0SLionel Sambuc pxor %mm3,%mm0 410*ebfedea0SLionel Sambuc pxor %mm7,%mm4 411*ebfedea0SLionel Sambuc movl 64(%ebp),%edx 412*ebfedea0SLionel Sambuc pxor %mm2,%mm0 413*ebfedea0SLionel Sambuc pxor %mm6,%mm4 414*ebfedea0SLionel Sambuc jmp .L001loop 415*ebfedea0SLionel Sambuc.align 16 416*ebfedea0SLionel Sambuc.L002out: 417*ebfedea0SLionel Sambuc pxor (%edi),%mm0 418*ebfedea0SLionel Sambuc pxor 8(%edi),%mm4 419*ebfedea0SLionel Sambuc ret 420*ebfedea0SLionel Sambuc.size _sse_AES_encrypt_compact,.-_sse_AES_encrypt_compact 421*ebfedea0SLionel Sambuc.type _x86_AES_encrypt,@function 422*ebfedea0SLionel Sambuc.align 16 423*ebfedea0SLionel Sambuc_x86_AES_encrypt: 424*ebfedea0SLionel Sambuc movl %edi,20(%esp) 425*ebfedea0SLionel Sambuc xorl (%edi),%eax 426*ebfedea0SLionel Sambuc xorl 4(%edi),%ebx 427*ebfedea0SLionel Sambuc xorl 8(%edi),%ecx 428*ebfedea0SLionel Sambuc xorl 12(%edi),%edx 429*ebfedea0SLionel Sambuc movl 240(%edi),%esi 430*ebfedea0SLionel Sambuc leal -2(%esi,%esi,1),%esi 431*ebfedea0SLionel Sambuc leal (%edi,%esi,8),%esi 432*ebfedea0SLionel Sambuc movl %esi,24(%esp) 433*ebfedea0SLionel Sambuc.align 16 434*ebfedea0SLionel Sambuc.L003loop: 435*ebfedea0SLionel Sambuc movl %eax,%esi 436*ebfedea0SLionel Sambuc andl $255,%esi 437*ebfedea0SLionel Sambuc movl (%ebp,%esi,8),%esi 438*ebfedea0SLionel Sambuc movzbl %bh,%edi 439*ebfedea0SLionel Sambuc xorl 3(%ebp,%edi,8),%esi 440*ebfedea0SLionel Sambuc movl %ecx,%edi 441*ebfedea0SLionel Sambuc shrl $16,%edi 442*ebfedea0SLionel Sambuc andl $255,%edi 443*ebfedea0SLionel Sambuc xorl 2(%ebp,%edi,8),%esi 444*ebfedea0SLionel Sambuc movl %edx,%edi 445*ebfedea0SLionel Sambuc shrl $24,%edi 446*ebfedea0SLionel Sambuc xorl 1(%ebp,%edi,8),%esi 447*ebfedea0SLionel Sambuc movl %esi,4(%esp) 448*ebfedea0SLionel Sambuc 449*ebfedea0SLionel Sambuc movl %ebx,%esi 450*ebfedea0SLionel Sambuc andl $255,%esi 451*ebfedea0SLionel Sambuc shrl $16,%ebx 452*ebfedea0SLionel Sambuc movl (%ebp,%esi,8),%esi 453*ebfedea0SLionel Sambuc movzbl %ch,%edi 454*ebfedea0SLionel Sambuc xorl 3(%ebp,%edi,8),%esi 455*ebfedea0SLionel Sambuc movl %edx,%edi 456*ebfedea0SLionel Sambuc shrl $16,%edi 457*ebfedea0SLionel Sambuc andl $255,%edi 458*ebfedea0SLionel Sambuc xorl 2(%ebp,%edi,8),%esi 459*ebfedea0SLionel Sambuc movl %eax,%edi 460*ebfedea0SLionel Sambuc shrl $24,%edi 461*ebfedea0SLionel Sambuc xorl 1(%ebp,%edi,8),%esi 462*ebfedea0SLionel Sambuc movl %esi,8(%esp) 463*ebfedea0SLionel Sambuc 464*ebfedea0SLionel Sambuc movl %ecx,%esi 465*ebfedea0SLionel Sambuc andl $255,%esi 466*ebfedea0SLionel Sambuc shrl $24,%ecx 467*ebfedea0SLionel Sambuc movl (%ebp,%esi,8),%esi 468*ebfedea0SLionel Sambuc movzbl %dh,%edi 469*ebfedea0SLionel Sambuc xorl 3(%ebp,%edi,8),%esi 470*ebfedea0SLionel Sambuc movl %eax,%edi 471*ebfedea0SLionel Sambuc shrl $16,%edi 472*ebfedea0SLionel Sambuc andl $255,%edx 473*ebfedea0SLionel Sambuc andl $255,%edi 474*ebfedea0SLionel Sambuc xorl 2(%ebp,%edi,8),%esi 475*ebfedea0SLionel Sambuc movzbl %bh,%edi 476*ebfedea0SLionel Sambuc xorl 1(%ebp,%edi,8),%esi 477*ebfedea0SLionel Sambuc 478*ebfedea0SLionel Sambuc movl 20(%esp),%edi 479*ebfedea0SLionel Sambuc movl (%ebp,%edx,8),%edx 480*ebfedea0SLionel Sambuc movzbl %ah,%eax 481*ebfedea0SLionel Sambuc xorl 3(%ebp,%eax,8),%edx 482*ebfedea0SLionel Sambuc movl 4(%esp),%eax 483*ebfedea0SLionel Sambuc andl $255,%ebx 484*ebfedea0SLionel Sambuc xorl 2(%ebp,%ebx,8),%edx 485*ebfedea0SLionel Sambuc movl 8(%esp),%ebx 486*ebfedea0SLionel Sambuc xorl 1(%ebp,%ecx,8),%edx 487*ebfedea0SLionel Sambuc movl %esi,%ecx 488*ebfedea0SLionel Sambuc 489*ebfedea0SLionel Sambuc addl $16,%edi 490*ebfedea0SLionel Sambuc xorl (%edi),%eax 491*ebfedea0SLionel Sambuc xorl 4(%edi),%ebx 492*ebfedea0SLionel Sambuc xorl 8(%edi),%ecx 493*ebfedea0SLionel Sambuc xorl 12(%edi),%edx 494*ebfedea0SLionel Sambuc cmpl 24(%esp),%edi 495*ebfedea0SLionel Sambuc movl %edi,20(%esp) 496*ebfedea0SLionel Sambuc jb .L003loop 497*ebfedea0SLionel Sambuc movl %eax,%esi 498*ebfedea0SLionel Sambuc andl $255,%esi 499*ebfedea0SLionel Sambuc movl 2(%ebp,%esi,8),%esi 500*ebfedea0SLionel Sambuc andl $255,%esi 501*ebfedea0SLionel Sambuc movzbl %bh,%edi 502*ebfedea0SLionel Sambuc movl (%ebp,%edi,8),%edi 503*ebfedea0SLionel Sambuc andl $65280,%edi 504*ebfedea0SLionel Sambuc xorl %edi,%esi 505*ebfedea0SLionel Sambuc movl %ecx,%edi 506*ebfedea0SLionel Sambuc shrl $16,%edi 507*ebfedea0SLionel Sambuc andl $255,%edi 508*ebfedea0SLionel Sambuc movl (%ebp,%edi,8),%edi 509*ebfedea0SLionel Sambuc andl $16711680,%edi 510*ebfedea0SLionel Sambuc xorl %edi,%esi 511*ebfedea0SLionel Sambuc movl %edx,%edi 512*ebfedea0SLionel Sambuc shrl $24,%edi 513*ebfedea0SLionel Sambuc movl 2(%ebp,%edi,8),%edi 514*ebfedea0SLionel Sambuc andl $4278190080,%edi 515*ebfedea0SLionel Sambuc xorl %edi,%esi 516*ebfedea0SLionel Sambuc movl %esi,4(%esp) 517*ebfedea0SLionel Sambuc movl %ebx,%esi 518*ebfedea0SLionel Sambuc andl $255,%esi 519*ebfedea0SLionel Sambuc shrl $16,%ebx 520*ebfedea0SLionel Sambuc movl 2(%ebp,%esi,8),%esi 521*ebfedea0SLionel Sambuc andl $255,%esi 522*ebfedea0SLionel Sambuc movzbl %ch,%edi 523*ebfedea0SLionel Sambuc movl (%ebp,%edi,8),%edi 524*ebfedea0SLionel Sambuc andl $65280,%edi 525*ebfedea0SLionel Sambuc xorl %edi,%esi 526*ebfedea0SLionel Sambuc movl %edx,%edi 527*ebfedea0SLionel Sambuc shrl $16,%edi 528*ebfedea0SLionel Sambuc andl $255,%edi 529*ebfedea0SLionel Sambuc movl (%ebp,%edi,8),%edi 530*ebfedea0SLionel Sambuc andl $16711680,%edi 531*ebfedea0SLionel Sambuc xorl %edi,%esi 532*ebfedea0SLionel Sambuc movl %eax,%edi 533*ebfedea0SLionel Sambuc shrl $24,%edi 534*ebfedea0SLionel Sambuc movl 2(%ebp,%edi,8),%edi 535*ebfedea0SLionel Sambuc andl $4278190080,%edi 536*ebfedea0SLionel Sambuc xorl %edi,%esi 537*ebfedea0SLionel Sambuc movl %esi,8(%esp) 538*ebfedea0SLionel Sambuc movl %ecx,%esi 539*ebfedea0SLionel Sambuc andl $255,%esi 540*ebfedea0SLionel Sambuc shrl $24,%ecx 541*ebfedea0SLionel Sambuc movl 2(%ebp,%esi,8),%esi 542*ebfedea0SLionel Sambuc andl $255,%esi 543*ebfedea0SLionel Sambuc movzbl %dh,%edi 544*ebfedea0SLionel Sambuc movl (%ebp,%edi,8),%edi 545*ebfedea0SLionel Sambuc andl $65280,%edi 546*ebfedea0SLionel Sambuc xorl %edi,%esi 547*ebfedea0SLionel Sambuc movl %eax,%edi 548*ebfedea0SLionel Sambuc shrl $16,%edi 549*ebfedea0SLionel Sambuc andl $255,%edx 550*ebfedea0SLionel Sambuc andl $255,%edi 551*ebfedea0SLionel Sambuc movl (%ebp,%edi,8),%edi 552*ebfedea0SLionel Sambuc andl $16711680,%edi 553*ebfedea0SLionel Sambuc xorl %edi,%esi 554*ebfedea0SLionel Sambuc movzbl %bh,%edi 555*ebfedea0SLionel Sambuc movl 2(%ebp,%edi,8),%edi 556*ebfedea0SLionel Sambuc andl $4278190080,%edi 557*ebfedea0SLionel Sambuc xorl %edi,%esi 558*ebfedea0SLionel Sambuc movl 20(%esp),%edi 559*ebfedea0SLionel Sambuc andl $255,%edx 560*ebfedea0SLionel Sambuc movl 2(%ebp,%edx,8),%edx 561*ebfedea0SLionel Sambuc andl $255,%edx 562*ebfedea0SLionel Sambuc movzbl %ah,%eax 563*ebfedea0SLionel Sambuc movl (%ebp,%eax,8),%eax 564*ebfedea0SLionel Sambuc andl $65280,%eax 565*ebfedea0SLionel Sambuc xorl %eax,%edx 566*ebfedea0SLionel Sambuc movl 4(%esp),%eax 567*ebfedea0SLionel Sambuc andl $255,%ebx 568*ebfedea0SLionel Sambuc movl (%ebp,%ebx,8),%ebx 569*ebfedea0SLionel Sambuc andl $16711680,%ebx 570*ebfedea0SLionel Sambuc xorl %ebx,%edx 571*ebfedea0SLionel Sambuc movl 8(%esp),%ebx 572*ebfedea0SLionel Sambuc movl 2(%ebp,%ecx,8),%ecx 573*ebfedea0SLionel Sambuc andl $4278190080,%ecx 574*ebfedea0SLionel Sambuc xorl %ecx,%edx 575*ebfedea0SLionel Sambuc movl %esi,%ecx 576*ebfedea0SLionel Sambuc addl $16,%edi 577*ebfedea0SLionel Sambuc xorl (%edi),%eax 578*ebfedea0SLionel Sambuc xorl 4(%edi),%ebx 579*ebfedea0SLionel Sambuc xorl 8(%edi),%ecx 580*ebfedea0SLionel Sambuc xorl 12(%edi),%edx 581*ebfedea0SLionel Sambuc ret 582*ebfedea0SLionel Sambuc.align 64 583*ebfedea0SLionel Sambuc.LAES_Te: 584*ebfedea0SLionel Sambuc.long 2774754246,2774754246 585*ebfedea0SLionel Sambuc.long 2222750968,2222750968 586*ebfedea0SLionel Sambuc.long 2574743534,2574743534 587*ebfedea0SLionel Sambuc.long 2373680118,2373680118 588*ebfedea0SLionel Sambuc.long 234025727,234025727 589*ebfedea0SLionel Sambuc.long 3177933782,3177933782 590*ebfedea0SLionel Sambuc.long 2976870366,2976870366 591*ebfedea0SLionel Sambuc.long 1422247313,1422247313 592*ebfedea0SLionel Sambuc.long 1345335392,1345335392 593*ebfedea0SLionel Sambuc.long 50397442,50397442 594*ebfedea0SLionel Sambuc.long 2842126286,2842126286 595*ebfedea0SLionel Sambuc.long 2099981142,2099981142 596*ebfedea0SLionel Sambuc.long 436141799,436141799 597*ebfedea0SLionel Sambuc.long 1658312629,1658312629 598*ebfedea0SLionel Sambuc.long 3870010189,3870010189 599*ebfedea0SLionel Sambuc.long 2591454956,2591454956 600*ebfedea0SLionel Sambuc.long 1170918031,1170918031 601*ebfedea0SLionel Sambuc.long 2642575903,2642575903 602*ebfedea0SLionel Sambuc.long 1086966153,1086966153 603*ebfedea0SLionel Sambuc.long 2273148410,2273148410 604*ebfedea0SLionel Sambuc.long 368769775,368769775 605*ebfedea0SLionel Sambuc.long 3948501426,3948501426 606*ebfedea0SLionel Sambuc.long 3376891790,3376891790 607*ebfedea0SLionel Sambuc.long 200339707,200339707 608*ebfedea0SLionel Sambuc.long 3970805057,3970805057 609*ebfedea0SLionel Sambuc.long 1742001331,1742001331 610*ebfedea0SLionel Sambuc.long 4255294047,4255294047 611*ebfedea0SLionel Sambuc.long 3937382213,3937382213 612*ebfedea0SLionel Sambuc.long 3214711843,3214711843 613*ebfedea0SLionel Sambuc.long 4154762323,4154762323 614*ebfedea0SLionel Sambuc.long 2524082916,2524082916 615*ebfedea0SLionel Sambuc.long 1539358875,1539358875 616*ebfedea0SLionel Sambuc.long 3266819957,3266819957 617*ebfedea0SLionel Sambuc.long 486407649,486407649 618*ebfedea0SLionel Sambuc.long 2928907069,2928907069 619*ebfedea0SLionel Sambuc.long 1780885068,1780885068 620*ebfedea0SLionel Sambuc.long 1513502316,1513502316 621*ebfedea0SLionel Sambuc.long 1094664062,1094664062 622*ebfedea0SLionel Sambuc.long 49805301,49805301 623*ebfedea0SLionel Sambuc.long 1338821763,1338821763 624*ebfedea0SLionel Sambuc.long 1546925160,1546925160 625*ebfedea0SLionel Sambuc.long 4104496465,4104496465 626*ebfedea0SLionel Sambuc.long 887481809,887481809 627*ebfedea0SLionel Sambuc.long 150073849,150073849 628*ebfedea0SLionel Sambuc.long 2473685474,2473685474 629*ebfedea0SLionel Sambuc.long 1943591083,1943591083 630*ebfedea0SLionel Sambuc.long 1395732834,1395732834 631*ebfedea0SLionel Sambuc.long 1058346282,1058346282 632*ebfedea0SLionel Sambuc.long 201589768,201589768 633*ebfedea0SLionel Sambuc.long 1388824469,1388824469 634*ebfedea0SLionel Sambuc.long 1696801606,1696801606 635*ebfedea0SLionel Sambuc.long 1589887901,1589887901 636*ebfedea0SLionel Sambuc.long 672667696,672667696 637*ebfedea0SLionel Sambuc.long 2711000631,2711000631 638*ebfedea0SLionel Sambuc.long 251987210,251987210 639*ebfedea0SLionel Sambuc.long 3046808111,3046808111 640*ebfedea0SLionel Sambuc.long 151455502,151455502 641*ebfedea0SLionel Sambuc.long 907153956,907153956 642*ebfedea0SLionel Sambuc.long 2608889883,2608889883 643*ebfedea0SLionel Sambuc.long 1038279391,1038279391 644*ebfedea0SLionel Sambuc.long 652995533,652995533 645*ebfedea0SLionel Sambuc.long 1764173646,1764173646 646*ebfedea0SLionel Sambuc.long 3451040383,3451040383 647*ebfedea0SLionel Sambuc.long 2675275242,2675275242 648*ebfedea0SLionel Sambuc.long 453576978,453576978 649*ebfedea0SLionel Sambuc.long 2659418909,2659418909 650*ebfedea0SLionel Sambuc.long 1949051992,1949051992 651*ebfedea0SLionel Sambuc.long 773462580,773462580 652*ebfedea0SLionel Sambuc.long 756751158,756751158 653*ebfedea0SLionel Sambuc.long 2993581788,2993581788 654*ebfedea0SLionel Sambuc.long 3998898868,3998898868 655*ebfedea0SLionel Sambuc.long 4221608027,4221608027 656*ebfedea0SLionel Sambuc.long 4132590244,4132590244 657*ebfedea0SLionel Sambuc.long 1295727478,1295727478 658*ebfedea0SLionel Sambuc.long 1641469623,1641469623 659*ebfedea0SLionel Sambuc.long 3467883389,3467883389 660*ebfedea0SLionel Sambuc.long 2066295122,2066295122 661*ebfedea0SLionel Sambuc.long 1055122397,1055122397 662*ebfedea0SLionel Sambuc.long 1898917726,1898917726 663*ebfedea0SLionel Sambuc.long 2542044179,2542044179 664*ebfedea0SLionel Sambuc.long 4115878822,4115878822 665*ebfedea0SLionel Sambuc.long 1758581177,1758581177 666*ebfedea0SLionel Sambuc.long 0,0 667*ebfedea0SLionel Sambuc.long 753790401,753790401 668*ebfedea0SLionel Sambuc.long 1612718144,1612718144 669*ebfedea0SLionel Sambuc.long 536673507,536673507 670*ebfedea0SLionel Sambuc.long 3367088505,3367088505 671*ebfedea0SLionel Sambuc.long 3982187446,3982187446 672*ebfedea0SLionel Sambuc.long 3194645204,3194645204 673*ebfedea0SLionel Sambuc.long 1187761037,1187761037 674*ebfedea0SLionel Sambuc.long 3653156455,3653156455 675*ebfedea0SLionel Sambuc.long 1262041458,1262041458 676*ebfedea0SLionel Sambuc.long 3729410708,3729410708 677*ebfedea0SLionel Sambuc.long 3561770136,3561770136 678*ebfedea0SLionel Sambuc.long 3898103984,3898103984 679*ebfedea0SLionel Sambuc.long 1255133061,1255133061 680*ebfedea0SLionel Sambuc.long 1808847035,1808847035 681*ebfedea0SLionel Sambuc.long 720367557,720367557 682*ebfedea0SLionel Sambuc.long 3853167183,3853167183 683*ebfedea0SLionel Sambuc.long 385612781,385612781 684*ebfedea0SLionel Sambuc.long 3309519750,3309519750 685*ebfedea0SLionel Sambuc.long 3612167578,3612167578 686*ebfedea0SLionel Sambuc.long 1429418854,1429418854 687*ebfedea0SLionel Sambuc.long 2491778321,2491778321 688*ebfedea0SLionel Sambuc.long 3477423498,3477423498 689*ebfedea0SLionel Sambuc.long 284817897,284817897 690*ebfedea0SLionel Sambuc.long 100794884,100794884 691*ebfedea0SLionel Sambuc.long 2172616702,2172616702 692*ebfedea0SLionel Sambuc.long 4031795360,4031795360 693*ebfedea0SLionel Sambuc.long 1144798328,1144798328 694*ebfedea0SLionel Sambuc.long 3131023141,3131023141 695*ebfedea0SLionel Sambuc.long 3819481163,3819481163 696*ebfedea0SLionel Sambuc.long 4082192802,4082192802 697*ebfedea0SLionel Sambuc.long 4272137053,4272137053 698*ebfedea0SLionel Sambuc.long 3225436288,3225436288 699*ebfedea0SLionel Sambuc.long 2324664069,2324664069 700*ebfedea0SLionel Sambuc.long 2912064063,2912064063 701*ebfedea0SLionel Sambuc.long 3164445985,3164445985 702*ebfedea0SLionel Sambuc.long 1211644016,1211644016 703*ebfedea0SLionel Sambuc.long 83228145,83228145 704*ebfedea0SLionel Sambuc.long 3753688163,3753688163 705*ebfedea0SLionel Sambuc.long 3249976951,3249976951 706*ebfedea0SLionel Sambuc.long 1977277103,1977277103 707*ebfedea0SLionel Sambuc.long 1663115586,1663115586 708*ebfedea0SLionel Sambuc.long 806359072,806359072 709*ebfedea0SLionel Sambuc.long 452984805,452984805 710*ebfedea0SLionel Sambuc.long 250868733,250868733 711*ebfedea0SLionel Sambuc.long 1842533055,1842533055 712*ebfedea0SLionel Sambuc.long 1288555905,1288555905 713*ebfedea0SLionel Sambuc.long 336333848,336333848 714*ebfedea0SLionel Sambuc.long 890442534,890442534 715*ebfedea0SLionel Sambuc.long 804056259,804056259 716*ebfedea0SLionel Sambuc.long 3781124030,3781124030 717*ebfedea0SLionel Sambuc.long 2727843637,2727843637 718*ebfedea0SLionel Sambuc.long 3427026056,3427026056 719*ebfedea0SLionel Sambuc.long 957814574,957814574 720*ebfedea0SLionel Sambuc.long 1472513171,1472513171 721*ebfedea0SLionel Sambuc.long 4071073621,4071073621 722*ebfedea0SLionel Sambuc.long 2189328124,2189328124 723*ebfedea0SLionel Sambuc.long 1195195770,1195195770 724*ebfedea0SLionel Sambuc.long 2892260552,2892260552 725*ebfedea0SLionel Sambuc.long 3881655738,3881655738 726*ebfedea0SLionel Sambuc.long 723065138,723065138 727*ebfedea0SLionel Sambuc.long 2507371494,2507371494 728*ebfedea0SLionel Sambuc.long 2690670784,2690670784 729*ebfedea0SLionel Sambuc.long 2558624025,2558624025 730*ebfedea0SLionel Sambuc.long 3511635870,3511635870 731*ebfedea0SLionel Sambuc.long 2145180835,2145180835 732*ebfedea0SLionel Sambuc.long 1713513028,1713513028 733*ebfedea0SLionel Sambuc.long 2116692564,2116692564 734*ebfedea0SLionel Sambuc.long 2878378043,2878378043 735*ebfedea0SLionel Sambuc.long 2206763019,2206763019 736*ebfedea0SLionel Sambuc.long 3393603212,3393603212 737*ebfedea0SLionel Sambuc.long 703524551,703524551 738*ebfedea0SLionel Sambuc.long 3552098411,3552098411 739*ebfedea0SLionel Sambuc.long 1007948840,1007948840 740*ebfedea0SLionel Sambuc.long 2044649127,2044649127 741*ebfedea0SLionel Sambuc.long 3797835452,3797835452 742*ebfedea0SLionel Sambuc.long 487262998,487262998 743*ebfedea0SLionel Sambuc.long 1994120109,1994120109 744*ebfedea0SLionel Sambuc.long 1004593371,1004593371 745*ebfedea0SLionel Sambuc.long 1446130276,1446130276 746*ebfedea0SLionel Sambuc.long 1312438900,1312438900 747*ebfedea0SLionel Sambuc.long 503974420,503974420 748*ebfedea0SLionel Sambuc.long 3679013266,3679013266 749*ebfedea0SLionel Sambuc.long 168166924,168166924 750*ebfedea0SLionel Sambuc.long 1814307912,1814307912 751*ebfedea0SLionel Sambuc.long 3831258296,3831258296 752*ebfedea0SLionel Sambuc.long 1573044895,1573044895 753*ebfedea0SLionel Sambuc.long 1859376061,1859376061 754*ebfedea0SLionel Sambuc.long 4021070915,4021070915 755*ebfedea0SLionel Sambuc.long 2791465668,2791465668 756*ebfedea0SLionel Sambuc.long 2828112185,2828112185 757*ebfedea0SLionel Sambuc.long 2761266481,2761266481 758*ebfedea0SLionel Sambuc.long 937747667,937747667 759*ebfedea0SLionel Sambuc.long 2339994098,2339994098 760*ebfedea0SLionel Sambuc.long 854058965,854058965 761*ebfedea0SLionel Sambuc.long 1137232011,1137232011 762*ebfedea0SLionel Sambuc.long 1496790894,1496790894 763*ebfedea0SLionel Sambuc.long 3077402074,3077402074 764*ebfedea0SLionel Sambuc.long 2358086913,2358086913 765*ebfedea0SLionel Sambuc.long 1691735473,1691735473 766*ebfedea0SLionel Sambuc.long 3528347292,3528347292 767*ebfedea0SLionel Sambuc.long 3769215305,3769215305 768*ebfedea0SLionel Sambuc.long 3027004632,3027004632 769*ebfedea0SLionel Sambuc.long 4199962284,4199962284 770*ebfedea0SLionel Sambuc.long 133494003,133494003 771*ebfedea0SLionel Sambuc.long 636152527,636152527 772*ebfedea0SLionel Sambuc.long 2942657994,2942657994 773*ebfedea0SLionel Sambuc.long 2390391540,2390391540 774*ebfedea0SLionel Sambuc.long 3920539207,3920539207 775*ebfedea0SLionel Sambuc.long 403179536,403179536 776*ebfedea0SLionel Sambuc.long 3585784431,3585784431 777*ebfedea0SLionel Sambuc.long 2289596656,2289596656 778*ebfedea0SLionel Sambuc.long 1864705354,1864705354 779*ebfedea0SLionel Sambuc.long 1915629148,1915629148 780*ebfedea0SLionel Sambuc.long 605822008,605822008 781*ebfedea0SLionel Sambuc.long 4054230615,4054230615 782*ebfedea0SLionel Sambuc.long 3350508659,3350508659 783*ebfedea0SLionel Sambuc.long 1371981463,1371981463 784*ebfedea0SLionel Sambuc.long 602466507,602466507 785*ebfedea0SLionel Sambuc.long 2094914977,2094914977 786*ebfedea0SLionel Sambuc.long 2624877800,2624877800 787*ebfedea0SLionel Sambuc.long 555687742,555687742 788*ebfedea0SLionel Sambuc.long 3712699286,3712699286 789*ebfedea0SLionel Sambuc.long 3703422305,3703422305 790*ebfedea0SLionel Sambuc.long 2257292045,2257292045 791*ebfedea0SLionel Sambuc.long 2240449039,2240449039 792*ebfedea0SLionel Sambuc.long 2423288032,2423288032 793*ebfedea0SLionel Sambuc.long 1111375484,1111375484 794*ebfedea0SLionel Sambuc.long 3300242801,3300242801 795*ebfedea0SLionel Sambuc.long 2858837708,2858837708 796*ebfedea0SLionel Sambuc.long 3628615824,3628615824 797*ebfedea0SLionel Sambuc.long 84083462,84083462 798*ebfedea0SLionel Sambuc.long 32962295,32962295 799*ebfedea0SLionel Sambuc.long 302911004,302911004 800*ebfedea0SLionel Sambuc.long 2741068226,2741068226 801*ebfedea0SLionel Sambuc.long 1597322602,1597322602 802*ebfedea0SLionel Sambuc.long 4183250862,4183250862 803*ebfedea0SLionel Sambuc.long 3501832553,3501832553 804*ebfedea0SLionel Sambuc.long 2441512471,2441512471 805*ebfedea0SLionel Sambuc.long 1489093017,1489093017 806*ebfedea0SLionel Sambuc.long 656219450,656219450 807*ebfedea0SLionel Sambuc.long 3114180135,3114180135 808*ebfedea0SLionel Sambuc.long 954327513,954327513 809*ebfedea0SLionel Sambuc.long 335083755,335083755 810*ebfedea0SLionel Sambuc.long 3013122091,3013122091 811*ebfedea0SLionel Sambuc.long 856756514,856756514 812*ebfedea0SLionel Sambuc.long 3144247762,3144247762 813*ebfedea0SLionel Sambuc.long 1893325225,1893325225 814*ebfedea0SLionel Sambuc.long 2307821063,2307821063 815*ebfedea0SLionel Sambuc.long 2811532339,2811532339 816*ebfedea0SLionel Sambuc.long 3063651117,3063651117 817*ebfedea0SLionel Sambuc.long 572399164,572399164 818*ebfedea0SLionel Sambuc.long 2458355477,2458355477 819*ebfedea0SLionel Sambuc.long 552200649,552200649 820*ebfedea0SLionel Sambuc.long 1238290055,1238290055 821*ebfedea0SLionel Sambuc.long 4283782570,4283782570 822*ebfedea0SLionel Sambuc.long 2015897680,2015897680 823*ebfedea0SLionel Sambuc.long 2061492133,2061492133 824*ebfedea0SLionel Sambuc.long 2408352771,2408352771 825*ebfedea0SLionel Sambuc.long 4171342169,4171342169 826*ebfedea0SLionel Sambuc.long 2156497161,2156497161 827*ebfedea0SLionel Sambuc.long 386731290,386731290 828*ebfedea0SLionel Sambuc.long 3669999461,3669999461 829*ebfedea0SLionel Sambuc.long 837215959,837215959 830*ebfedea0SLionel Sambuc.long 3326231172,3326231172 831*ebfedea0SLionel Sambuc.long 3093850320,3093850320 832*ebfedea0SLionel Sambuc.long 3275833730,3275833730 833*ebfedea0SLionel Sambuc.long 2962856233,2962856233 834*ebfedea0SLionel Sambuc.long 1999449434,1999449434 835*ebfedea0SLionel Sambuc.long 286199582,286199582 836*ebfedea0SLionel Sambuc.long 3417354363,3417354363 837*ebfedea0SLionel Sambuc.long 4233385128,4233385128 838*ebfedea0SLionel Sambuc.long 3602627437,3602627437 839*ebfedea0SLionel Sambuc.long 974525996,974525996 840*ebfedea0SLionel Sambuc.byte 99,124,119,123,242,107,111,197 841*ebfedea0SLionel Sambuc.byte 48,1,103,43,254,215,171,118 842*ebfedea0SLionel Sambuc.byte 202,130,201,125,250,89,71,240 843*ebfedea0SLionel Sambuc.byte 173,212,162,175,156,164,114,192 844*ebfedea0SLionel Sambuc.byte 183,253,147,38,54,63,247,204 845*ebfedea0SLionel Sambuc.byte 52,165,229,241,113,216,49,21 846*ebfedea0SLionel Sambuc.byte 4,199,35,195,24,150,5,154 847*ebfedea0SLionel Sambuc.byte 7,18,128,226,235,39,178,117 848*ebfedea0SLionel Sambuc.byte 9,131,44,26,27,110,90,160 849*ebfedea0SLionel Sambuc.byte 82,59,214,179,41,227,47,132 850*ebfedea0SLionel Sambuc.byte 83,209,0,237,32,252,177,91 851*ebfedea0SLionel Sambuc.byte 106,203,190,57,74,76,88,207 852*ebfedea0SLionel Sambuc.byte 208,239,170,251,67,77,51,133 853*ebfedea0SLionel Sambuc.byte 69,249,2,127,80,60,159,168 854*ebfedea0SLionel Sambuc.byte 81,163,64,143,146,157,56,245 855*ebfedea0SLionel Sambuc.byte 188,182,218,33,16,255,243,210 856*ebfedea0SLionel Sambuc.byte 205,12,19,236,95,151,68,23 857*ebfedea0SLionel Sambuc.byte 196,167,126,61,100,93,25,115 858*ebfedea0SLionel Sambuc.byte 96,129,79,220,34,42,144,136 859*ebfedea0SLionel Sambuc.byte 70,238,184,20,222,94,11,219 860*ebfedea0SLionel Sambuc.byte 224,50,58,10,73,6,36,92 861*ebfedea0SLionel Sambuc.byte 194,211,172,98,145,149,228,121 862*ebfedea0SLionel Sambuc.byte 231,200,55,109,141,213,78,169 863*ebfedea0SLionel Sambuc.byte 108,86,244,234,101,122,174,8 864*ebfedea0SLionel Sambuc.byte 186,120,37,46,28,166,180,198 865*ebfedea0SLionel Sambuc.byte 232,221,116,31,75,189,139,138 866*ebfedea0SLionel Sambuc.byte 112,62,181,102,72,3,246,14 867*ebfedea0SLionel Sambuc.byte 97,53,87,185,134,193,29,158 868*ebfedea0SLionel Sambuc.byte 225,248,152,17,105,217,142,148 869*ebfedea0SLionel Sambuc.byte 155,30,135,233,206,85,40,223 870*ebfedea0SLionel Sambuc.byte 140,161,137,13,191,230,66,104 871*ebfedea0SLionel Sambuc.byte 65,153,45,15,176,84,187,22 872*ebfedea0SLionel Sambuc.byte 99,124,119,123,242,107,111,197 873*ebfedea0SLionel Sambuc.byte 48,1,103,43,254,215,171,118 874*ebfedea0SLionel Sambuc.byte 202,130,201,125,250,89,71,240 875*ebfedea0SLionel Sambuc.byte 173,212,162,175,156,164,114,192 876*ebfedea0SLionel Sambuc.byte 183,253,147,38,54,63,247,204 877*ebfedea0SLionel Sambuc.byte 52,165,229,241,113,216,49,21 878*ebfedea0SLionel Sambuc.byte 4,199,35,195,24,150,5,154 879*ebfedea0SLionel Sambuc.byte 7,18,128,226,235,39,178,117 880*ebfedea0SLionel Sambuc.byte 9,131,44,26,27,110,90,160 881*ebfedea0SLionel Sambuc.byte 82,59,214,179,41,227,47,132 882*ebfedea0SLionel Sambuc.byte 83,209,0,237,32,252,177,91 883*ebfedea0SLionel Sambuc.byte 106,203,190,57,74,76,88,207 884*ebfedea0SLionel Sambuc.byte 208,239,170,251,67,77,51,133 885*ebfedea0SLionel Sambuc.byte 69,249,2,127,80,60,159,168 886*ebfedea0SLionel Sambuc.byte 81,163,64,143,146,157,56,245 887*ebfedea0SLionel Sambuc.byte 188,182,218,33,16,255,243,210 888*ebfedea0SLionel Sambuc.byte 205,12,19,236,95,151,68,23 889*ebfedea0SLionel Sambuc.byte 196,167,126,61,100,93,25,115 890*ebfedea0SLionel Sambuc.byte 96,129,79,220,34,42,144,136 891*ebfedea0SLionel Sambuc.byte 70,238,184,20,222,94,11,219 892*ebfedea0SLionel Sambuc.byte 224,50,58,10,73,6,36,92 893*ebfedea0SLionel Sambuc.byte 194,211,172,98,145,149,228,121 894*ebfedea0SLionel Sambuc.byte 231,200,55,109,141,213,78,169 895*ebfedea0SLionel Sambuc.byte 108,86,244,234,101,122,174,8 896*ebfedea0SLionel Sambuc.byte 186,120,37,46,28,166,180,198 897*ebfedea0SLionel Sambuc.byte 232,221,116,31,75,189,139,138 898*ebfedea0SLionel Sambuc.byte 112,62,181,102,72,3,246,14 899*ebfedea0SLionel Sambuc.byte 97,53,87,185,134,193,29,158 900*ebfedea0SLionel Sambuc.byte 225,248,152,17,105,217,142,148 901*ebfedea0SLionel Sambuc.byte 155,30,135,233,206,85,40,223 902*ebfedea0SLionel Sambuc.byte 140,161,137,13,191,230,66,104 903*ebfedea0SLionel Sambuc.byte 65,153,45,15,176,84,187,22 904*ebfedea0SLionel Sambuc.byte 99,124,119,123,242,107,111,197 905*ebfedea0SLionel Sambuc.byte 48,1,103,43,254,215,171,118 906*ebfedea0SLionel Sambuc.byte 202,130,201,125,250,89,71,240 907*ebfedea0SLionel Sambuc.byte 173,212,162,175,156,164,114,192 908*ebfedea0SLionel Sambuc.byte 183,253,147,38,54,63,247,204 909*ebfedea0SLionel Sambuc.byte 52,165,229,241,113,216,49,21 910*ebfedea0SLionel Sambuc.byte 4,199,35,195,24,150,5,154 911*ebfedea0SLionel Sambuc.byte 7,18,128,226,235,39,178,117 912*ebfedea0SLionel Sambuc.byte 9,131,44,26,27,110,90,160 913*ebfedea0SLionel Sambuc.byte 82,59,214,179,41,227,47,132 914*ebfedea0SLionel Sambuc.byte 83,209,0,237,32,252,177,91 915*ebfedea0SLionel Sambuc.byte 106,203,190,57,74,76,88,207 916*ebfedea0SLionel Sambuc.byte 208,239,170,251,67,77,51,133 917*ebfedea0SLionel Sambuc.byte 69,249,2,127,80,60,159,168 918*ebfedea0SLionel Sambuc.byte 81,163,64,143,146,157,56,245 919*ebfedea0SLionel Sambuc.byte 188,182,218,33,16,255,243,210 920*ebfedea0SLionel Sambuc.byte 205,12,19,236,95,151,68,23 921*ebfedea0SLionel Sambuc.byte 196,167,126,61,100,93,25,115 922*ebfedea0SLionel Sambuc.byte 96,129,79,220,34,42,144,136 923*ebfedea0SLionel Sambuc.byte 70,238,184,20,222,94,11,219 924*ebfedea0SLionel Sambuc.byte 224,50,58,10,73,6,36,92 925*ebfedea0SLionel Sambuc.byte 194,211,172,98,145,149,228,121 926*ebfedea0SLionel Sambuc.byte 231,200,55,109,141,213,78,169 927*ebfedea0SLionel Sambuc.byte 108,86,244,234,101,122,174,8 928*ebfedea0SLionel Sambuc.byte 186,120,37,46,28,166,180,198 929*ebfedea0SLionel Sambuc.byte 232,221,116,31,75,189,139,138 930*ebfedea0SLionel Sambuc.byte 112,62,181,102,72,3,246,14 931*ebfedea0SLionel Sambuc.byte 97,53,87,185,134,193,29,158 932*ebfedea0SLionel Sambuc.byte 225,248,152,17,105,217,142,148 933*ebfedea0SLionel Sambuc.byte 155,30,135,233,206,85,40,223 934*ebfedea0SLionel Sambuc.byte 140,161,137,13,191,230,66,104 935*ebfedea0SLionel Sambuc.byte 65,153,45,15,176,84,187,22 936*ebfedea0SLionel Sambuc.byte 99,124,119,123,242,107,111,197 937*ebfedea0SLionel Sambuc.byte 48,1,103,43,254,215,171,118 938*ebfedea0SLionel Sambuc.byte 202,130,201,125,250,89,71,240 939*ebfedea0SLionel Sambuc.byte 173,212,162,175,156,164,114,192 940*ebfedea0SLionel Sambuc.byte 183,253,147,38,54,63,247,204 941*ebfedea0SLionel Sambuc.byte 52,165,229,241,113,216,49,21 942*ebfedea0SLionel Sambuc.byte 4,199,35,195,24,150,5,154 943*ebfedea0SLionel Sambuc.byte 7,18,128,226,235,39,178,117 944*ebfedea0SLionel Sambuc.byte 9,131,44,26,27,110,90,160 945*ebfedea0SLionel Sambuc.byte 82,59,214,179,41,227,47,132 946*ebfedea0SLionel Sambuc.byte 83,209,0,237,32,252,177,91 947*ebfedea0SLionel Sambuc.byte 106,203,190,57,74,76,88,207 948*ebfedea0SLionel Sambuc.byte 208,239,170,251,67,77,51,133 949*ebfedea0SLionel Sambuc.byte 69,249,2,127,80,60,159,168 950*ebfedea0SLionel Sambuc.byte 81,163,64,143,146,157,56,245 951*ebfedea0SLionel Sambuc.byte 188,182,218,33,16,255,243,210 952*ebfedea0SLionel Sambuc.byte 205,12,19,236,95,151,68,23 953*ebfedea0SLionel Sambuc.byte 196,167,126,61,100,93,25,115 954*ebfedea0SLionel Sambuc.byte 96,129,79,220,34,42,144,136 955*ebfedea0SLionel Sambuc.byte 70,238,184,20,222,94,11,219 956*ebfedea0SLionel Sambuc.byte 224,50,58,10,73,6,36,92 957*ebfedea0SLionel Sambuc.byte 194,211,172,98,145,149,228,121 958*ebfedea0SLionel Sambuc.byte 231,200,55,109,141,213,78,169 959*ebfedea0SLionel Sambuc.byte 108,86,244,234,101,122,174,8 960*ebfedea0SLionel Sambuc.byte 186,120,37,46,28,166,180,198 961*ebfedea0SLionel Sambuc.byte 232,221,116,31,75,189,139,138 962*ebfedea0SLionel Sambuc.byte 112,62,181,102,72,3,246,14 963*ebfedea0SLionel Sambuc.byte 97,53,87,185,134,193,29,158 964*ebfedea0SLionel Sambuc.byte 225,248,152,17,105,217,142,148 965*ebfedea0SLionel Sambuc.byte 155,30,135,233,206,85,40,223 966*ebfedea0SLionel Sambuc.byte 140,161,137,13,191,230,66,104 967*ebfedea0SLionel Sambuc.byte 65,153,45,15,176,84,187,22 968*ebfedea0SLionel Sambuc.long 1,2,4,8 969*ebfedea0SLionel Sambuc.long 16,32,64,128 970*ebfedea0SLionel Sambuc.long 27,54,0,0 971*ebfedea0SLionel Sambuc.long 0,0,0,0 972*ebfedea0SLionel Sambuc.size _x86_AES_encrypt,.-_x86_AES_encrypt 973*ebfedea0SLionel Sambuc.globl AES_encrypt 974*ebfedea0SLionel Sambuc.type AES_encrypt,@function 975*ebfedea0SLionel Sambuc.align 16 976*ebfedea0SLionel SambucAES_encrypt: 977*ebfedea0SLionel Sambuc.L_AES_encrypt_begin: 978*ebfedea0SLionel Sambuc pushl %ebp 979*ebfedea0SLionel Sambuc pushl %ebx 980*ebfedea0SLionel Sambuc pushl %esi 981*ebfedea0SLionel Sambuc pushl %edi 982*ebfedea0SLionel Sambuc movl 20(%esp),%esi 983*ebfedea0SLionel Sambuc movl 28(%esp),%edi 984*ebfedea0SLionel Sambuc movl %esp,%eax 985*ebfedea0SLionel Sambuc subl $36,%esp 986*ebfedea0SLionel Sambuc andl $-64,%esp 987*ebfedea0SLionel Sambuc leal -127(%edi),%ebx 988*ebfedea0SLionel Sambuc subl %esp,%ebx 989*ebfedea0SLionel Sambuc negl %ebx 990*ebfedea0SLionel Sambuc andl $960,%ebx 991*ebfedea0SLionel Sambuc subl %ebx,%esp 992*ebfedea0SLionel Sambuc addl $4,%esp 993*ebfedea0SLionel Sambuc movl %eax,28(%esp) 994*ebfedea0SLionel Sambuc call .L004pic_point 995*ebfedea0SLionel Sambuc.L004pic_point: 996*ebfedea0SLionel Sambuc popl %ebp 997*ebfedea0SLionel Sambuc leal _GLOBAL_OFFSET_TABLE_+[.-.L004pic_point](%ebp),%eax 998*ebfedea0SLionel Sambuc movl OPENSSL_ia32cap_P@GOT(%eax),%eax 999*ebfedea0SLionel Sambuc leal .LAES_Te-.L004pic_point(%ebp),%ebp 1000*ebfedea0SLionel Sambuc leal 764(%esp),%ebx 1001*ebfedea0SLionel Sambuc subl %ebp,%ebx 1002*ebfedea0SLionel Sambuc andl $768,%ebx 1003*ebfedea0SLionel Sambuc leal 2176(%ebp,%ebx,1),%ebp 1004*ebfedea0SLionel Sambuc btl $25,(%eax) 1005*ebfedea0SLionel Sambuc jnc .L005x86 1006*ebfedea0SLionel Sambuc movq (%esi),%mm0 1007*ebfedea0SLionel Sambuc movq 8(%esi),%mm4 1008*ebfedea0SLionel Sambuc call _sse_AES_encrypt_compact 1009*ebfedea0SLionel Sambuc movl 28(%esp),%esp 1010*ebfedea0SLionel Sambuc movl 24(%esp),%esi 1011*ebfedea0SLionel Sambuc movq %mm0,(%esi) 1012*ebfedea0SLionel Sambuc movq %mm4,8(%esi) 1013*ebfedea0SLionel Sambuc emms 1014*ebfedea0SLionel Sambuc popl %edi 1015*ebfedea0SLionel Sambuc popl %esi 1016*ebfedea0SLionel Sambuc popl %ebx 1017*ebfedea0SLionel Sambuc popl %ebp 1018*ebfedea0SLionel Sambuc ret 1019*ebfedea0SLionel Sambuc.align 16 1020*ebfedea0SLionel Sambuc.L005x86: 1021*ebfedea0SLionel Sambuc movl %ebp,24(%esp) 1022*ebfedea0SLionel Sambuc movl (%esi),%eax 1023*ebfedea0SLionel Sambuc movl 4(%esi),%ebx 1024*ebfedea0SLionel Sambuc movl 8(%esi),%ecx 1025*ebfedea0SLionel Sambuc movl 12(%esi),%edx 1026*ebfedea0SLionel Sambuc call _x86_AES_encrypt_compact 1027*ebfedea0SLionel Sambuc movl 28(%esp),%esp 1028*ebfedea0SLionel Sambuc movl 24(%esp),%esi 1029*ebfedea0SLionel Sambuc movl %eax,(%esi) 1030*ebfedea0SLionel Sambuc movl %ebx,4(%esi) 1031*ebfedea0SLionel Sambuc movl %ecx,8(%esi) 1032*ebfedea0SLionel Sambuc movl %edx,12(%esi) 1033*ebfedea0SLionel Sambuc popl %edi 1034*ebfedea0SLionel Sambuc popl %esi 1035*ebfedea0SLionel Sambuc popl %ebx 1036*ebfedea0SLionel Sambuc popl %ebp 1037*ebfedea0SLionel Sambuc ret 1038*ebfedea0SLionel Sambuc.size AES_encrypt,.-.L_AES_encrypt_begin 1039*ebfedea0SLionel Sambuc.type _x86_AES_decrypt_compact,@function 1040*ebfedea0SLionel Sambuc.align 16 1041*ebfedea0SLionel Sambuc_x86_AES_decrypt_compact: 1042*ebfedea0SLionel Sambuc movl %edi,20(%esp) 1043*ebfedea0SLionel Sambuc xorl (%edi),%eax 1044*ebfedea0SLionel Sambuc xorl 4(%edi),%ebx 1045*ebfedea0SLionel Sambuc xorl 8(%edi),%ecx 1046*ebfedea0SLionel Sambuc xorl 12(%edi),%edx 1047*ebfedea0SLionel Sambuc movl 240(%edi),%esi 1048*ebfedea0SLionel Sambuc leal -2(%esi,%esi,1),%esi 1049*ebfedea0SLionel Sambuc leal (%edi,%esi,8),%esi 1050*ebfedea0SLionel Sambuc movl %esi,24(%esp) 1051*ebfedea0SLionel Sambuc movl -128(%ebp),%edi 1052*ebfedea0SLionel Sambuc movl -96(%ebp),%esi 1053*ebfedea0SLionel Sambuc movl -64(%ebp),%edi 1054*ebfedea0SLionel Sambuc movl -32(%ebp),%esi 1055*ebfedea0SLionel Sambuc movl (%ebp),%edi 1056*ebfedea0SLionel Sambuc movl 32(%ebp),%esi 1057*ebfedea0SLionel Sambuc movl 64(%ebp),%edi 1058*ebfedea0SLionel Sambuc movl 96(%ebp),%esi 1059*ebfedea0SLionel Sambuc.align 16 1060*ebfedea0SLionel Sambuc.L006loop: 1061*ebfedea0SLionel Sambuc movl %eax,%esi 1062*ebfedea0SLionel Sambuc andl $255,%esi 1063*ebfedea0SLionel Sambuc movzbl -128(%ebp,%esi,1),%esi 1064*ebfedea0SLionel Sambuc movzbl %dh,%edi 1065*ebfedea0SLionel Sambuc movzbl -128(%ebp,%edi,1),%edi 1066*ebfedea0SLionel Sambuc shll $8,%edi 1067*ebfedea0SLionel Sambuc xorl %edi,%esi 1068*ebfedea0SLionel Sambuc movl %ecx,%edi 1069*ebfedea0SLionel Sambuc shrl $16,%edi 1070*ebfedea0SLionel Sambuc andl $255,%edi 1071*ebfedea0SLionel Sambuc movzbl -128(%ebp,%edi,1),%edi 1072*ebfedea0SLionel Sambuc shll $16,%edi 1073*ebfedea0SLionel Sambuc xorl %edi,%esi 1074*ebfedea0SLionel Sambuc movl %ebx,%edi 1075*ebfedea0SLionel Sambuc shrl $24,%edi 1076*ebfedea0SLionel Sambuc movzbl -128(%ebp,%edi,1),%edi 1077*ebfedea0SLionel Sambuc shll $24,%edi 1078*ebfedea0SLionel Sambuc xorl %edi,%esi 1079*ebfedea0SLionel Sambuc movl %esi,4(%esp) 1080*ebfedea0SLionel Sambuc movl %ebx,%esi 1081*ebfedea0SLionel Sambuc andl $255,%esi 1082*ebfedea0SLionel Sambuc movzbl -128(%ebp,%esi,1),%esi 1083*ebfedea0SLionel Sambuc movzbl %ah,%edi 1084*ebfedea0SLionel Sambuc movzbl -128(%ebp,%edi,1),%edi 1085*ebfedea0SLionel Sambuc shll $8,%edi 1086*ebfedea0SLionel Sambuc xorl %edi,%esi 1087*ebfedea0SLionel Sambuc movl %edx,%edi 1088*ebfedea0SLionel Sambuc shrl $16,%edi 1089*ebfedea0SLionel Sambuc andl $255,%edi 1090*ebfedea0SLionel Sambuc movzbl -128(%ebp,%edi,1),%edi 1091*ebfedea0SLionel Sambuc shll $16,%edi 1092*ebfedea0SLionel Sambuc xorl %edi,%esi 1093*ebfedea0SLionel Sambuc movl %ecx,%edi 1094*ebfedea0SLionel Sambuc shrl $24,%edi 1095*ebfedea0SLionel Sambuc movzbl -128(%ebp,%edi,1),%edi 1096*ebfedea0SLionel Sambuc shll $24,%edi 1097*ebfedea0SLionel Sambuc xorl %edi,%esi 1098*ebfedea0SLionel Sambuc movl %esi,8(%esp) 1099*ebfedea0SLionel Sambuc movl %ecx,%esi 1100*ebfedea0SLionel Sambuc andl $255,%esi 1101*ebfedea0SLionel Sambuc movzbl -128(%ebp,%esi,1),%esi 1102*ebfedea0SLionel Sambuc movzbl %bh,%edi 1103*ebfedea0SLionel Sambuc movzbl -128(%ebp,%edi,1),%edi 1104*ebfedea0SLionel Sambuc shll $8,%edi 1105*ebfedea0SLionel Sambuc xorl %edi,%esi 1106*ebfedea0SLionel Sambuc movl %eax,%edi 1107*ebfedea0SLionel Sambuc shrl $16,%edi 1108*ebfedea0SLionel Sambuc andl $255,%edi 1109*ebfedea0SLionel Sambuc movzbl -128(%ebp,%edi,1),%edi 1110*ebfedea0SLionel Sambuc shll $16,%edi 1111*ebfedea0SLionel Sambuc xorl %edi,%esi 1112*ebfedea0SLionel Sambuc movl %edx,%edi 1113*ebfedea0SLionel Sambuc shrl $24,%edi 1114*ebfedea0SLionel Sambuc movzbl -128(%ebp,%edi,1),%edi 1115*ebfedea0SLionel Sambuc shll $24,%edi 1116*ebfedea0SLionel Sambuc xorl %edi,%esi 1117*ebfedea0SLionel Sambuc andl $255,%edx 1118*ebfedea0SLionel Sambuc movzbl -128(%ebp,%edx,1),%edx 1119*ebfedea0SLionel Sambuc movzbl %ch,%ecx 1120*ebfedea0SLionel Sambuc movzbl -128(%ebp,%ecx,1),%ecx 1121*ebfedea0SLionel Sambuc shll $8,%ecx 1122*ebfedea0SLionel Sambuc xorl %ecx,%edx 1123*ebfedea0SLionel Sambuc movl %esi,%ecx 1124*ebfedea0SLionel Sambuc shrl $16,%ebx 1125*ebfedea0SLionel Sambuc andl $255,%ebx 1126*ebfedea0SLionel Sambuc movzbl -128(%ebp,%ebx,1),%ebx 1127*ebfedea0SLionel Sambuc shll $16,%ebx 1128*ebfedea0SLionel Sambuc xorl %ebx,%edx 1129*ebfedea0SLionel Sambuc shrl $24,%eax 1130*ebfedea0SLionel Sambuc movzbl -128(%ebp,%eax,1),%eax 1131*ebfedea0SLionel Sambuc shll $24,%eax 1132*ebfedea0SLionel Sambuc xorl %eax,%edx 1133*ebfedea0SLionel Sambuc movl %ecx,%esi 1134*ebfedea0SLionel Sambuc andl $2155905152,%esi 1135*ebfedea0SLionel Sambuc movl %esi,%edi 1136*ebfedea0SLionel Sambuc shrl $7,%edi 1137*ebfedea0SLionel Sambuc leal (%ecx,%ecx,1),%eax 1138*ebfedea0SLionel Sambuc subl %edi,%esi 1139*ebfedea0SLionel Sambuc andl $4278124286,%eax 1140*ebfedea0SLionel Sambuc andl $454761243,%esi 1141*ebfedea0SLionel Sambuc xorl %eax,%esi 1142*ebfedea0SLionel Sambuc movl %esi,%eax 1143*ebfedea0SLionel Sambuc andl $2155905152,%esi 1144*ebfedea0SLionel Sambuc movl %esi,%edi 1145*ebfedea0SLionel Sambuc shrl $7,%edi 1146*ebfedea0SLionel Sambuc leal (%eax,%eax,1),%ebx 1147*ebfedea0SLionel Sambuc subl %edi,%esi 1148*ebfedea0SLionel Sambuc andl $4278124286,%ebx 1149*ebfedea0SLionel Sambuc andl $454761243,%esi 1150*ebfedea0SLionel Sambuc xorl %ecx,%eax 1151*ebfedea0SLionel Sambuc xorl %ebx,%esi 1152*ebfedea0SLionel Sambuc movl %esi,%ebx 1153*ebfedea0SLionel Sambuc andl $2155905152,%esi 1154*ebfedea0SLionel Sambuc movl %esi,%edi 1155*ebfedea0SLionel Sambuc shrl $7,%edi 1156*ebfedea0SLionel Sambuc leal (%ebx,%ebx,1),%ebp 1157*ebfedea0SLionel Sambuc subl %edi,%esi 1158*ebfedea0SLionel Sambuc andl $4278124286,%ebp 1159*ebfedea0SLionel Sambuc andl $454761243,%esi 1160*ebfedea0SLionel Sambuc xorl %ecx,%ebx 1161*ebfedea0SLionel Sambuc roll $8,%ecx 1162*ebfedea0SLionel Sambuc xorl %esi,%ebp 1163*ebfedea0SLionel Sambuc xorl %eax,%ecx 1164*ebfedea0SLionel Sambuc xorl %ebp,%eax 1165*ebfedea0SLionel Sambuc roll $24,%eax 1166*ebfedea0SLionel Sambuc xorl %ebx,%ecx 1167*ebfedea0SLionel Sambuc xorl %ebp,%ebx 1168*ebfedea0SLionel Sambuc roll $16,%ebx 1169*ebfedea0SLionel Sambuc xorl %ebp,%ecx 1170*ebfedea0SLionel Sambuc roll $8,%ebp 1171*ebfedea0SLionel Sambuc xorl %eax,%ecx 1172*ebfedea0SLionel Sambuc xorl %ebx,%ecx 1173*ebfedea0SLionel Sambuc movl 4(%esp),%eax 1174*ebfedea0SLionel Sambuc xorl %ebp,%ecx 1175*ebfedea0SLionel Sambuc movl %ecx,12(%esp) 1176*ebfedea0SLionel Sambuc movl %edx,%esi 1177*ebfedea0SLionel Sambuc andl $2155905152,%esi 1178*ebfedea0SLionel Sambuc movl %esi,%edi 1179*ebfedea0SLionel Sambuc shrl $7,%edi 1180*ebfedea0SLionel Sambuc leal (%edx,%edx,1),%ebx 1181*ebfedea0SLionel Sambuc subl %edi,%esi 1182*ebfedea0SLionel Sambuc andl $4278124286,%ebx 1183*ebfedea0SLionel Sambuc andl $454761243,%esi 1184*ebfedea0SLionel Sambuc xorl %ebx,%esi 1185*ebfedea0SLionel Sambuc movl %esi,%ebx 1186*ebfedea0SLionel Sambuc andl $2155905152,%esi 1187*ebfedea0SLionel Sambuc movl %esi,%edi 1188*ebfedea0SLionel Sambuc shrl $7,%edi 1189*ebfedea0SLionel Sambuc leal (%ebx,%ebx,1),%ecx 1190*ebfedea0SLionel Sambuc subl %edi,%esi 1191*ebfedea0SLionel Sambuc andl $4278124286,%ecx 1192*ebfedea0SLionel Sambuc andl $454761243,%esi 1193*ebfedea0SLionel Sambuc xorl %edx,%ebx 1194*ebfedea0SLionel Sambuc xorl %ecx,%esi 1195*ebfedea0SLionel Sambuc movl %esi,%ecx 1196*ebfedea0SLionel Sambuc andl $2155905152,%esi 1197*ebfedea0SLionel Sambuc movl %esi,%edi 1198*ebfedea0SLionel Sambuc shrl $7,%edi 1199*ebfedea0SLionel Sambuc leal (%ecx,%ecx,1),%ebp 1200*ebfedea0SLionel Sambuc subl %edi,%esi 1201*ebfedea0SLionel Sambuc andl $4278124286,%ebp 1202*ebfedea0SLionel Sambuc andl $454761243,%esi 1203*ebfedea0SLionel Sambuc xorl %edx,%ecx 1204*ebfedea0SLionel Sambuc roll $8,%edx 1205*ebfedea0SLionel Sambuc xorl %esi,%ebp 1206*ebfedea0SLionel Sambuc xorl %ebx,%edx 1207*ebfedea0SLionel Sambuc xorl %ebp,%ebx 1208*ebfedea0SLionel Sambuc roll $24,%ebx 1209*ebfedea0SLionel Sambuc xorl %ecx,%edx 1210*ebfedea0SLionel Sambuc xorl %ebp,%ecx 1211*ebfedea0SLionel Sambuc roll $16,%ecx 1212*ebfedea0SLionel Sambuc xorl %ebp,%edx 1213*ebfedea0SLionel Sambuc roll $8,%ebp 1214*ebfedea0SLionel Sambuc xorl %ebx,%edx 1215*ebfedea0SLionel Sambuc xorl %ecx,%edx 1216*ebfedea0SLionel Sambuc movl 8(%esp),%ebx 1217*ebfedea0SLionel Sambuc xorl %ebp,%edx 1218*ebfedea0SLionel Sambuc movl %edx,16(%esp) 1219*ebfedea0SLionel Sambuc movl %eax,%esi 1220*ebfedea0SLionel Sambuc andl $2155905152,%esi 1221*ebfedea0SLionel Sambuc movl %esi,%edi 1222*ebfedea0SLionel Sambuc shrl $7,%edi 1223*ebfedea0SLionel Sambuc leal (%eax,%eax,1),%ecx 1224*ebfedea0SLionel Sambuc subl %edi,%esi 1225*ebfedea0SLionel Sambuc andl $4278124286,%ecx 1226*ebfedea0SLionel Sambuc andl $454761243,%esi 1227*ebfedea0SLionel Sambuc xorl %ecx,%esi 1228*ebfedea0SLionel Sambuc movl %esi,%ecx 1229*ebfedea0SLionel Sambuc andl $2155905152,%esi 1230*ebfedea0SLionel Sambuc movl %esi,%edi 1231*ebfedea0SLionel Sambuc shrl $7,%edi 1232*ebfedea0SLionel Sambuc leal (%ecx,%ecx,1),%edx 1233*ebfedea0SLionel Sambuc subl %edi,%esi 1234*ebfedea0SLionel Sambuc andl $4278124286,%edx 1235*ebfedea0SLionel Sambuc andl $454761243,%esi 1236*ebfedea0SLionel Sambuc xorl %eax,%ecx 1237*ebfedea0SLionel Sambuc xorl %edx,%esi 1238*ebfedea0SLionel Sambuc movl %esi,%edx 1239*ebfedea0SLionel Sambuc andl $2155905152,%esi 1240*ebfedea0SLionel Sambuc movl %esi,%edi 1241*ebfedea0SLionel Sambuc shrl $7,%edi 1242*ebfedea0SLionel Sambuc leal (%edx,%edx,1),%ebp 1243*ebfedea0SLionel Sambuc subl %edi,%esi 1244*ebfedea0SLionel Sambuc andl $4278124286,%ebp 1245*ebfedea0SLionel Sambuc andl $454761243,%esi 1246*ebfedea0SLionel Sambuc xorl %eax,%edx 1247*ebfedea0SLionel Sambuc roll $8,%eax 1248*ebfedea0SLionel Sambuc xorl %esi,%ebp 1249*ebfedea0SLionel Sambuc xorl %ecx,%eax 1250*ebfedea0SLionel Sambuc xorl %ebp,%ecx 1251*ebfedea0SLionel Sambuc roll $24,%ecx 1252*ebfedea0SLionel Sambuc xorl %edx,%eax 1253*ebfedea0SLionel Sambuc xorl %ebp,%edx 1254*ebfedea0SLionel Sambuc roll $16,%edx 1255*ebfedea0SLionel Sambuc xorl %ebp,%eax 1256*ebfedea0SLionel Sambuc roll $8,%ebp 1257*ebfedea0SLionel Sambuc xorl %ecx,%eax 1258*ebfedea0SLionel Sambuc xorl %edx,%eax 1259*ebfedea0SLionel Sambuc xorl %ebp,%eax 1260*ebfedea0SLionel Sambuc movl %ebx,%esi 1261*ebfedea0SLionel Sambuc andl $2155905152,%esi 1262*ebfedea0SLionel Sambuc movl %esi,%edi 1263*ebfedea0SLionel Sambuc shrl $7,%edi 1264*ebfedea0SLionel Sambuc leal (%ebx,%ebx,1),%ecx 1265*ebfedea0SLionel Sambuc subl %edi,%esi 1266*ebfedea0SLionel Sambuc andl $4278124286,%ecx 1267*ebfedea0SLionel Sambuc andl $454761243,%esi 1268*ebfedea0SLionel Sambuc xorl %ecx,%esi 1269*ebfedea0SLionel Sambuc movl %esi,%ecx 1270*ebfedea0SLionel Sambuc andl $2155905152,%esi 1271*ebfedea0SLionel Sambuc movl %esi,%edi 1272*ebfedea0SLionel Sambuc shrl $7,%edi 1273*ebfedea0SLionel Sambuc leal (%ecx,%ecx,1),%edx 1274*ebfedea0SLionel Sambuc subl %edi,%esi 1275*ebfedea0SLionel Sambuc andl $4278124286,%edx 1276*ebfedea0SLionel Sambuc andl $454761243,%esi 1277*ebfedea0SLionel Sambuc xorl %ebx,%ecx 1278*ebfedea0SLionel Sambuc xorl %edx,%esi 1279*ebfedea0SLionel Sambuc movl %esi,%edx 1280*ebfedea0SLionel Sambuc andl $2155905152,%esi 1281*ebfedea0SLionel Sambuc movl %esi,%edi 1282*ebfedea0SLionel Sambuc shrl $7,%edi 1283*ebfedea0SLionel Sambuc leal (%edx,%edx,1),%ebp 1284*ebfedea0SLionel Sambuc subl %edi,%esi 1285*ebfedea0SLionel Sambuc andl $4278124286,%ebp 1286*ebfedea0SLionel Sambuc andl $454761243,%esi 1287*ebfedea0SLionel Sambuc xorl %ebx,%edx 1288*ebfedea0SLionel Sambuc roll $8,%ebx 1289*ebfedea0SLionel Sambuc xorl %esi,%ebp 1290*ebfedea0SLionel Sambuc xorl %ecx,%ebx 1291*ebfedea0SLionel Sambuc xorl %ebp,%ecx 1292*ebfedea0SLionel Sambuc roll $24,%ecx 1293*ebfedea0SLionel Sambuc xorl %edx,%ebx 1294*ebfedea0SLionel Sambuc xorl %ebp,%edx 1295*ebfedea0SLionel Sambuc roll $16,%edx 1296*ebfedea0SLionel Sambuc xorl %ebp,%ebx 1297*ebfedea0SLionel Sambuc roll $8,%ebp 1298*ebfedea0SLionel Sambuc xorl %ecx,%ebx 1299*ebfedea0SLionel Sambuc xorl %edx,%ebx 1300*ebfedea0SLionel Sambuc movl 12(%esp),%ecx 1301*ebfedea0SLionel Sambuc xorl %ebp,%ebx 1302*ebfedea0SLionel Sambuc movl 16(%esp),%edx 1303*ebfedea0SLionel Sambuc movl 20(%esp),%edi 1304*ebfedea0SLionel Sambuc movl 28(%esp),%ebp 1305*ebfedea0SLionel Sambuc addl $16,%edi 1306*ebfedea0SLionel Sambuc xorl (%edi),%eax 1307*ebfedea0SLionel Sambuc xorl 4(%edi),%ebx 1308*ebfedea0SLionel Sambuc xorl 8(%edi),%ecx 1309*ebfedea0SLionel Sambuc xorl 12(%edi),%edx 1310*ebfedea0SLionel Sambuc cmpl 24(%esp),%edi 1311*ebfedea0SLionel Sambuc movl %edi,20(%esp) 1312*ebfedea0SLionel Sambuc jb .L006loop 1313*ebfedea0SLionel Sambuc movl %eax,%esi 1314*ebfedea0SLionel Sambuc andl $255,%esi 1315*ebfedea0SLionel Sambuc movzbl -128(%ebp,%esi,1),%esi 1316*ebfedea0SLionel Sambuc movzbl %dh,%edi 1317*ebfedea0SLionel Sambuc movzbl -128(%ebp,%edi,1),%edi 1318*ebfedea0SLionel Sambuc shll $8,%edi 1319*ebfedea0SLionel Sambuc xorl %edi,%esi 1320*ebfedea0SLionel Sambuc movl %ecx,%edi 1321*ebfedea0SLionel Sambuc shrl $16,%edi 1322*ebfedea0SLionel Sambuc andl $255,%edi 1323*ebfedea0SLionel Sambuc movzbl -128(%ebp,%edi,1),%edi 1324*ebfedea0SLionel Sambuc shll $16,%edi 1325*ebfedea0SLionel Sambuc xorl %edi,%esi 1326*ebfedea0SLionel Sambuc movl %ebx,%edi 1327*ebfedea0SLionel Sambuc shrl $24,%edi 1328*ebfedea0SLionel Sambuc movzbl -128(%ebp,%edi,1),%edi 1329*ebfedea0SLionel Sambuc shll $24,%edi 1330*ebfedea0SLionel Sambuc xorl %edi,%esi 1331*ebfedea0SLionel Sambuc movl %esi,4(%esp) 1332*ebfedea0SLionel Sambuc movl %ebx,%esi 1333*ebfedea0SLionel Sambuc andl $255,%esi 1334*ebfedea0SLionel Sambuc movzbl -128(%ebp,%esi,1),%esi 1335*ebfedea0SLionel Sambuc movzbl %ah,%edi 1336*ebfedea0SLionel Sambuc movzbl -128(%ebp,%edi,1),%edi 1337*ebfedea0SLionel Sambuc shll $8,%edi 1338*ebfedea0SLionel Sambuc xorl %edi,%esi 1339*ebfedea0SLionel Sambuc movl %edx,%edi 1340*ebfedea0SLionel Sambuc shrl $16,%edi 1341*ebfedea0SLionel Sambuc andl $255,%edi 1342*ebfedea0SLionel Sambuc movzbl -128(%ebp,%edi,1),%edi 1343*ebfedea0SLionel Sambuc shll $16,%edi 1344*ebfedea0SLionel Sambuc xorl %edi,%esi 1345*ebfedea0SLionel Sambuc movl %ecx,%edi 1346*ebfedea0SLionel Sambuc shrl $24,%edi 1347*ebfedea0SLionel Sambuc movzbl -128(%ebp,%edi,1),%edi 1348*ebfedea0SLionel Sambuc shll $24,%edi 1349*ebfedea0SLionel Sambuc xorl %edi,%esi 1350*ebfedea0SLionel Sambuc movl %esi,8(%esp) 1351*ebfedea0SLionel Sambuc movl %ecx,%esi 1352*ebfedea0SLionel Sambuc andl $255,%esi 1353*ebfedea0SLionel Sambuc movzbl -128(%ebp,%esi,1),%esi 1354*ebfedea0SLionel Sambuc movzbl %bh,%edi 1355*ebfedea0SLionel Sambuc movzbl -128(%ebp,%edi,1),%edi 1356*ebfedea0SLionel Sambuc shll $8,%edi 1357*ebfedea0SLionel Sambuc xorl %edi,%esi 1358*ebfedea0SLionel Sambuc movl %eax,%edi 1359*ebfedea0SLionel Sambuc shrl $16,%edi 1360*ebfedea0SLionel Sambuc andl $255,%edi 1361*ebfedea0SLionel Sambuc movzbl -128(%ebp,%edi,1),%edi 1362*ebfedea0SLionel Sambuc shll $16,%edi 1363*ebfedea0SLionel Sambuc xorl %edi,%esi 1364*ebfedea0SLionel Sambuc movl %edx,%edi 1365*ebfedea0SLionel Sambuc shrl $24,%edi 1366*ebfedea0SLionel Sambuc movzbl -128(%ebp,%edi,1),%edi 1367*ebfedea0SLionel Sambuc shll $24,%edi 1368*ebfedea0SLionel Sambuc xorl %edi,%esi 1369*ebfedea0SLionel Sambuc movl 20(%esp),%edi 1370*ebfedea0SLionel Sambuc andl $255,%edx 1371*ebfedea0SLionel Sambuc movzbl -128(%ebp,%edx,1),%edx 1372*ebfedea0SLionel Sambuc movzbl %ch,%ecx 1373*ebfedea0SLionel Sambuc movzbl -128(%ebp,%ecx,1),%ecx 1374*ebfedea0SLionel Sambuc shll $8,%ecx 1375*ebfedea0SLionel Sambuc xorl %ecx,%edx 1376*ebfedea0SLionel Sambuc movl %esi,%ecx 1377*ebfedea0SLionel Sambuc shrl $16,%ebx 1378*ebfedea0SLionel Sambuc andl $255,%ebx 1379*ebfedea0SLionel Sambuc movzbl -128(%ebp,%ebx,1),%ebx 1380*ebfedea0SLionel Sambuc shll $16,%ebx 1381*ebfedea0SLionel Sambuc xorl %ebx,%edx 1382*ebfedea0SLionel Sambuc movl 8(%esp),%ebx 1383*ebfedea0SLionel Sambuc shrl $24,%eax 1384*ebfedea0SLionel Sambuc movzbl -128(%ebp,%eax,1),%eax 1385*ebfedea0SLionel Sambuc shll $24,%eax 1386*ebfedea0SLionel Sambuc xorl %eax,%edx 1387*ebfedea0SLionel Sambuc movl 4(%esp),%eax 1388*ebfedea0SLionel Sambuc xorl 16(%edi),%eax 1389*ebfedea0SLionel Sambuc xorl 20(%edi),%ebx 1390*ebfedea0SLionel Sambuc xorl 24(%edi),%ecx 1391*ebfedea0SLionel Sambuc xorl 28(%edi),%edx 1392*ebfedea0SLionel Sambuc ret 1393*ebfedea0SLionel Sambuc.size _x86_AES_decrypt_compact,.-_x86_AES_decrypt_compact 1394*ebfedea0SLionel Sambuc.type _sse_AES_decrypt_compact,@function 1395*ebfedea0SLionel Sambuc.align 16 1396*ebfedea0SLionel Sambuc_sse_AES_decrypt_compact: 1397*ebfedea0SLionel Sambuc pxor (%edi),%mm0 1398*ebfedea0SLionel Sambuc pxor 8(%edi),%mm4 1399*ebfedea0SLionel Sambuc movl 240(%edi),%esi 1400*ebfedea0SLionel Sambuc leal -2(%esi,%esi,1),%esi 1401*ebfedea0SLionel Sambuc leal (%edi,%esi,8),%esi 1402*ebfedea0SLionel Sambuc movl %esi,24(%esp) 1403*ebfedea0SLionel Sambuc movl $454761243,%eax 1404*ebfedea0SLionel Sambuc movl %eax,8(%esp) 1405*ebfedea0SLionel Sambuc movl %eax,12(%esp) 1406*ebfedea0SLionel Sambuc movl -128(%ebp),%eax 1407*ebfedea0SLionel Sambuc movl -96(%ebp),%ebx 1408*ebfedea0SLionel Sambuc movl -64(%ebp),%ecx 1409*ebfedea0SLionel Sambuc movl -32(%ebp),%edx 1410*ebfedea0SLionel Sambuc movl (%ebp),%eax 1411*ebfedea0SLionel Sambuc movl 32(%ebp),%ebx 1412*ebfedea0SLionel Sambuc movl 64(%ebp),%ecx 1413*ebfedea0SLionel Sambuc movl 96(%ebp),%edx 1414*ebfedea0SLionel Sambuc.align 16 1415*ebfedea0SLionel Sambuc.L007loop: 1416*ebfedea0SLionel Sambuc pshufw $12,%mm0,%mm1 1417*ebfedea0SLionel Sambuc movd %mm1,%eax 1418*ebfedea0SLionel Sambuc pshufw $9,%mm4,%mm5 1419*ebfedea0SLionel Sambuc movzbl %al,%esi 1420*ebfedea0SLionel Sambuc movzbl -128(%ebp,%esi,1),%ecx 1421*ebfedea0SLionel Sambuc movd %mm5,%ebx 1422*ebfedea0SLionel Sambuc movzbl %ah,%edx 1423*ebfedea0SLionel Sambuc movzbl -128(%ebp,%edx,1),%edx 1424*ebfedea0SLionel Sambuc shll $8,%edx 1425*ebfedea0SLionel Sambuc pshufw $6,%mm0,%mm2 1426*ebfedea0SLionel Sambuc movzbl %bl,%esi 1427*ebfedea0SLionel Sambuc movzbl -128(%ebp,%esi,1),%esi 1428*ebfedea0SLionel Sambuc shll $16,%esi 1429*ebfedea0SLionel Sambuc orl %esi,%ecx 1430*ebfedea0SLionel Sambuc shrl $16,%eax 1431*ebfedea0SLionel Sambuc movzbl %bh,%esi 1432*ebfedea0SLionel Sambuc movzbl -128(%ebp,%esi,1),%esi 1433*ebfedea0SLionel Sambuc shll $24,%esi 1434*ebfedea0SLionel Sambuc orl %esi,%edx 1435*ebfedea0SLionel Sambuc shrl $16,%ebx 1436*ebfedea0SLionel Sambuc pshufw $3,%mm4,%mm6 1437*ebfedea0SLionel Sambuc movzbl %ah,%esi 1438*ebfedea0SLionel Sambuc movzbl -128(%ebp,%esi,1),%esi 1439*ebfedea0SLionel Sambuc shll $24,%esi 1440*ebfedea0SLionel Sambuc orl %esi,%ecx 1441*ebfedea0SLionel Sambuc movzbl %bh,%esi 1442*ebfedea0SLionel Sambuc movzbl -128(%ebp,%esi,1),%esi 1443*ebfedea0SLionel Sambuc shll $8,%esi 1444*ebfedea0SLionel Sambuc orl %esi,%ecx 1445*ebfedea0SLionel Sambuc movd %ecx,%mm0 1446*ebfedea0SLionel Sambuc movzbl %al,%esi 1447*ebfedea0SLionel Sambuc movd %mm2,%eax 1448*ebfedea0SLionel Sambuc movzbl -128(%ebp,%esi,1),%ecx 1449*ebfedea0SLionel Sambuc shll $16,%ecx 1450*ebfedea0SLionel Sambuc movzbl %bl,%esi 1451*ebfedea0SLionel Sambuc movd %mm6,%ebx 1452*ebfedea0SLionel Sambuc movzbl -128(%ebp,%esi,1),%esi 1453*ebfedea0SLionel Sambuc orl %esi,%ecx 1454*ebfedea0SLionel Sambuc movzbl %al,%esi 1455*ebfedea0SLionel Sambuc movzbl -128(%ebp,%esi,1),%esi 1456*ebfedea0SLionel Sambuc orl %esi,%edx 1457*ebfedea0SLionel Sambuc movzbl %bl,%esi 1458*ebfedea0SLionel Sambuc movzbl -128(%ebp,%esi,1),%esi 1459*ebfedea0SLionel Sambuc shll $16,%esi 1460*ebfedea0SLionel Sambuc orl %esi,%edx 1461*ebfedea0SLionel Sambuc movd %edx,%mm1 1462*ebfedea0SLionel Sambuc movzbl %ah,%esi 1463*ebfedea0SLionel Sambuc movzbl -128(%ebp,%esi,1),%edx 1464*ebfedea0SLionel Sambuc shll $8,%edx 1465*ebfedea0SLionel Sambuc movzbl %bh,%esi 1466*ebfedea0SLionel Sambuc shrl $16,%eax 1467*ebfedea0SLionel Sambuc movzbl -128(%ebp,%esi,1),%esi 1468*ebfedea0SLionel Sambuc shll $24,%esi 1469*ebfedea0SLionel Sambuc orl %esi,%edx 1470*ebfedea0SLionel Sambuc shrl $16,%ebx 1471*ebfedea0SLionel Sambuc punpckldq %mm1,%mm0 1472*ebfedea0SLionel Sambuc movzbl %bh,%esi 1473*ebfedea0SLionel Sambuc movzbl -128(%ebp,%esi,1),%esi 1474*ebfedea0SLionel Sambuc shll $8,%esi 1475*ebfedea0SLionel Sambuc orl %esi,%ecx 1476*ebfedea0SLionel Sambuc andl $255,%ebx 1477*ebfedea0SLionel Sambuc movzbl -128(%ebp,%ebx,1),%ebx 1478*ebfedea0SLionel Sambuc orl %ebx,%edx 1479*ebfedea0SLionel Sambuc movzbl %al,%esi 1480*ebfedea0SLionel Sambuc movzbl -128(%ebp,%esi,1),%esi 1481*ebfedea0SLionel Sambuc shll $16,%esi 1482*ebfedea0SLionel Sambuc orl %esi,%edx 1483*ebfedea0SLionel Sambuc movd %edx,%mm4 1484*ebfedea0SLionel Sambuc movzbl %ah,%eax 1485*ebfedea0SLionel Sambuc movzbl -128(%ebp,%eax,1),%eax 1486*ebfedea0SLionel Sambuc shll $24,%eax 1487*ebfedea0SLionel Sambuc orl %eax,%ecx 1488*ebfedea0SLionel Sambuc movd %ecx,%mm5 1489*ebfedea0SLionel Sambuc punpckldq %mm5,%mm4 1490*ebfedea0SLionel Sambuc addl $16,%edi 1491*ebfedea0SLionel Sambuc cmpl 24(%esp),%edi 1492*ebfedea0SLionel Sambuc ja .L008out 1493*ebfedea0SLionel Sambuc movq %mm0,%mm3 1494*ebfedea0SLionel Sambuc movq %mm4,%mm7 1495*ebfedea0SLionel Sambuc pshufw $228,%mm0,%mm2 1496*ebfedea0SLionel Sambuc pshufw $228,%mm4,%mm6 1497*ebfedea0SLionel Sambuc movq %mm0,%mm1 1498*ebfedea0SLionel Sambuc movq %mm4,%mm5 1499*ebfedea0SLionel Sambuc pshufw $177,%mm0,%mm0 1500*ebfedea0SLionel Sambuc pshufw $177,%mm4,%mm4 1501*ebfedea0SLionel Sambuc pslld $8,%mm2 1502*ebfedea0SLionel Sambuc pslld $8,%mm6 1503*ebfedea0SLionel Sambuc psrld $8,%mm3 1504*ebfedea0SLionel Sambuc psrld $8,%mm7 1505*ebfedea0SLionel Sambuc pxor %mm2,%mm0 1506*ebfedea0SLionel Sambuc pxor %mm6,%mm4 1507*ebfedea0SLionel Sambuc pxor %mm3,%mm0 1508*ebfedea0SLionel Sambuc pxor %mm7,%mm4 1509*ebfedea0SLionel Sambuc pslld $16,%mm2 1510*ebfedea0SLionel Sambuc pslld $16,%mm6 1511*ebfedea0SLionel Sambuc psrld $16,%mm3 1512*ebfedea0SLionel Sambuc psrld $16,%mm7 1513*ebfedea0SLionel Sambuc pxor %mm2,%mm0 1514*ebfedea0SLionel Sambuc pxor %mm6,%mm4 1515*ebfedea0SLionel Sambuc pxor %mm3,%mm0 1516*ebfedea0SLionel Sambuc pxor %mm7,%mm4 1517*ebfedea0SLionel Sambuc movq 8(%esp),%mm3 1518*ebfedea0SLionel Sambuc pxor %mm2,%mm2 1519*ebfedea0SLionel Sambuc pxor %mm6,%mm6 1520*ebfedea0SLionel Sambuc pcmpgtb %mm1,%mm2 1521*ebfedea0SLionel Sambuc pcmpgtb %mm5,%mm6 1522*ebfedea0SLionel Sambuc pand %mm3,%mm2 1523*ebfedea0SLionel Sambuc pand %mm3,%mm6 1524*ebfedea0SLionel Sambuc paddb %mm1,%mm1 1525*ebfedea0SLionel Sambuc paddb %mm5,%mm5 1526*ebfedea0SLionel Sambuc pxor %mm2,%mm1 1527*ebfedea0SLionel Sambuc pxor %mm6,%mm5 1528*ebfedea0SLionel Sambuc movq %mm1,%mm3 1529*ebfedea0SLionel Sambuc movq %mm5,%mm7 1530*ebfedea0SLionel Sambuc movq %mm1,%mm2 1531*ebfedea0SLionel Sambuc movq %mm5,%mm6 1532*ebfedea0SLionel Sambuc pxor %mm1,%mm0 1533*ebfedea0SLionel Sambuc pxor %mm5,%mm4 1534*ebfedea0SLionel Sambuc pslld $24,%mm3 1535*ebfedea0SLionel Sambuc pslld $24,%mm7 1536*ebfedea0SLionel Sambuc psrld $8,%mm2 1537*ebfedea0SLionel Sambuc psrld $8,%mm6 1538*ebfedea0SLionel Sambuc pxor %mm3,%mm0 1539*ebfedea0SLionel Sambuc pxor %mm7,%mm4 1540*ebfedea0SLionel Sambuc pxor %mm2,%mm0 1541*ebfedea0SLionel Sambuc pxor %mm6,%mm4 1542*ebfedea0SLionel Sambuc movq 8(%esp),%mm2 1543*ebfedea0SLionel Sambuc pxor %mm3,%mm3 1544*ebfedea0SLionel Sambuc pxor %mm7,%mm7 1545*ebfedea0SLionel Sambuc pcmpgtb %mm1,%mm3 1546*ebfedea0SLionel Sambuc pcmpgtb %mm5,%mm7 1547*ebfedea0SLionel Sambuc pand %mm2,%mm3 1548*ebfedea0SLionel Sambuc pand %mm2,%mm7 1549*ebfedea0SLionel Sambuc paddb %mm1,%mm1 1550*ebfedea0SLionel Sambuc paddb %mm5,%mm5 1551*ebfedea0SLionel Sambuc pxor %mm3,%mm1 1552*ebfedea0SLionel Sambuc pxor %mm7,%mm5 1553*ebfedea0SLionel Sambuc pshufw $177,%mm1,%mm3 1554*ebfedea0SLionel Sambuc pshufw $177,%mm5,%mm7 1555*ebfedea0SLionel Sambuc pxor %mm1,%mm0 1556*ebfedea0SLionel Sambuc pxor %mm5,%mm4 1557*ebfedea0SLionel Sambuc pxor %mm3,%mm0 1558*ebfedea0SLionel Sambuc pxor %mm7,%mm4 1559*ebfedea0SLionel Sambuc pxor %mm3,%mm3 1560*ebfedea0SLionel Sambuc pxor %mm7,%mm7 1561*ebfedea0SLionel Sambuc pcmpgtb %mm1,%mm3 1562*ebfedea0SLionel Sambuc pcmpgtb %mm5,%mm7 1563*ebfedea0SLionel Sambuc pand %mm2,%mm3 1564*ebfedea0SLionel Sambuc pand %mm2,%mm7 1565*ebfedea0SLionel Sambuc paddb %mm1,%mm1 1566*ebfedea0SLionel Sambuc paddb %mm5,%mm5 1567*ebfedea0SLionel Sambuc pxor %mm3,%mm1 1568*ebfedea0SLionel Sambuc pxor %mm7,%mm5 1569*ebfedea0SLionel Sambuc pxor %mm1,%mm0 1570*ebfedea0SLionel Sambuc pxor %mm5,%mm4 1571*ebfedea0SLionel Sambuc movq %mm1,%mm3 1572*ebfedea0SLionel Sambuc movq %mm5,%mm7 1573*ebfedea0SLionel Sambuc pshufw $177,%mm1,%mm2 1574*ebfedea0SLionel Sambuc pshufw $177,%mm5,%mm6 1575*ebfedea0SLionel Sambuc pxor %mm2,%mm0 1576*ebfedea0SLionel Sambuc pxor %mm6,%mm4 1577*ebfedea0SLionel Sambuc pslld $8,%mm1 1578*ebfedea0SLionel Sambuc pslld $8,%mm5 1579*ebfedea0SLionel Sambuc psrld $8,%mm3 1580*ebfedea0SLionel Sambuc psrld $8,%mm7 1581*ebfedea0SLionel Sambuc movq (%edi),%mm2 1582*ebfedea0SLionel Sambuc movq 8(%edi),%mm6 1583*ebfedea0SLionel Sambuc pxor %mm1,%mm0 1584*ebfedea0SLionel Sambuc pxor %mm5,%mm4 1585*ebfedea0SLionel Sambuc pxor %mm3,%mm0 1586*ebfedea0SLionel Sambuc pxor %mm7,%mm4 1587*ebfedea0SLionel Sambuc movl -128(%ebp),%eax 1588*ebfedea0SLionel Sambuc pslld $16,%mm1 1589*ebfedea0SLionel Sambuc pslld $16,%mm5 1590*ebfedea0SLionel Sambuc movl -64(%ebp),%ebx 1591*ebfedea0SLionel Sambuc psrld $16,%mm3 1592*ebfedea0SLionel Sambuc psrld $16,%mm7 1593*ebfedea0SLionel Sambuc movl (%ebp),%ecx 1594*ebfedea0SLionel Sambuc pxor %mm1,%mm0 1595*ebfedea0SLionel Sambuc pxor %mm5,%mm4 1596*ebfedea0SLionel Sambuc movl 64(%ebp),%edx 1597*ebfedea0SLionel Sambuc pxor %mm3,%mm0 1598*ebfedea0SLionel Sambuc pxor %mm7,%mm4 1599*ebfedea0SLionel Sambuc pxor %mm2,%mm0 1600*ebfedea0SLionel Sambuc pxor %mm6,%mm4 1601*ebfedea0SLionel Sambuc jmp .L007loop 1602*ebfedea0SLionel Sambuc.align 16 1603*ebfedea0SLionel Sambuc.L008out: 1604*ebfedea0SLionel Sambuc pxor (%edi),%mm0 1605*ebfedea0SLionel Sambuc pxor 8(%edi),%mm4 1606*ebfedea0SLionel Sambuc ret 1607*ebfedea0SLionel Sambuc.size _sse_AES_decrypt_compact,.-_sse_AES_decrypt_compact 1608*ebfedea0SLionel Sambuc.type _x86_AES_decrypt,@function 1609*ebfedea0SLionel Sambuc.align 16 1610*ebfedea0SLionel Sambuc_x86_AES_decrypt: 1611*ebfedea0SLionel Sambuc movl %edi,20(%esp) 1612*ebfedea0SLionel Sambuc xorl (%edi),%eax 1613*ebfedea0SLionel Sambuc xorl 4(%edi),%ebx 1614*ebfedea0SLionel Sambuc xorl 8(%edi),%ecx 1615*ebfedea0SLionel Sambuc xorl 12(%edi),%edx 1616*ebfedea0SLionel Sambuc movl 240(%edi),%esi 1617*ebfedea0SLionel Sambuc leal -2(%esi,%esi,1),%esi 1618*ebfedea0SLionel Sambuc leal (%edi,%esi,8),%esi 1619*ebfedea0SLionel Sambuc movl %esi,24(%esp) 1620*ebfedea0SLionel Sambuc.align 16 1621*ebfedea0SLionel Sambuc.L009loop: 1622*ebfedea0SLionel Sambuc movl %eax,%esi 1623*ebfedea0SLionel Sambuc andl $255,%esi 1624*ebfedea0SLionel Sambuc movl (%ebp,%esi,8),%esi 1625*ebfedea0SLionel Sambuc movzbl %dh,%edi 1626*ebfedea0SLionel Sambuc xorl 3(%ebp,%edi,8),%esi 1627*ebfedea0SLionel Sambuc movl %ecx,%edi 1628*ebfedea0SLionel Sambuc shrl $16,%edi 1629*ebfedea0SLionel Sambuc andl $255,%edi 1630*ebfedea0SLionel Sambuc xorl 2(%ebp,%edi,8),%esi 1631*ebfedea0SLionel Sambuc movl %ebx,%edi 1632*ebfedea0SLionel Sambuc shrl $24,%edi 1633*ebfedea0SLionel Sambuc xorl 1(%ebp,%edi,8),%esi 1634*ebfedea0SLionel Sambuc movl %esi,4(%esp) 1635*ebfedea0SLionel Sambuc 1636*ebfedea0SLionel Sambuc movl %ebx,%esi 1637*ebfedea0SLionel Sambuc andl $255,%esi 1638*ebfedea0SLionel Sambuc movl (%ebp,%esi,8),%esi 1639*ebfedea0SLionel Sambuc movzbl %ah,%edi 1640*ebfedea0SLionel Sambuc xorl 3(%ebp,%edi,8),%esi 1641*ebfedea0SLionel Sambuc movl %edx,%edi 1642*ebfedea0SLionel Sambuc shrl $16,%edi 1643*ebfedea0SLionel Sambuc andl $255,%edi 1644*ebfedea0SLionel Sambuc xorl 2(%ebp,%edi,8),%esi 1645*ebfedea0SLionel Sambuc movl %ecx,%edi 1646*ebfedea0SLionel Sambuc shrl $24,%edi 1647*ebfedea0SLionel Sambuc xorl 1(%ebp,%edi,8),%esi 1648*ebfedea0SLionel Sambuc movl %esi,8(%esp) 1649*ebfedea0SLionel Sambuc 1650*ebfedea0SLionel Sambuc movl %ecx,%esi 1651*ebfedea0SLionel Sambuc andl $255,%esi 1652*ebfedea0SLionel Sambuc movl (%ebp,%esi,8),%esi 1653*ebfedea0SLionel Sambuc movzbl %bh,%edi 1654*ebfedea0SLionel Sambuc xorl 3(%ebp,%edi,8),%esi 1655*ebfedea0SLionel Sambuc movl %eax,%edi 1656*ebfedea0SLionel Sambuc shrl $16,%edi 1657*ebfedea0SLionel Sambuc andl $255,%edi 1658*ebfedea0SLionel Sambuc xorl 2(%ebp,%edi,8),%esi 1659*ebfedea0SLionel Sambuc movl %edx,%edi 1660*ebfedea0SLionel Sambuc shrl $24,%edi 1661*ebfedea0SLionel Sambuc xorl 1(%ebp,%edi,8),%esi 1662*ebfedea0SLionel Sambuc 1663*ebfedea0SLionel Sambuc movl 20(%esp),%edi 1664*ebfedea0SLionel Sambuc andl $255,%edx 1665*ebfedea0SLionel Sambuc movl (%ebp,%edx,8),%edx 1666*ebfedea0SLionel Sambuc movzbl %ch,%ecx 1667*ebfedea0SLionel Sambuc xorl 3(%ebp,%ecx,8),%edx 1668*ebfedea0SLionel Sambuc movl %esi,%ecx 1669*ebfedea0SLionel Sambuc shrl $16,%ebx 1670*ebfedea0SLionel Sambuc andl $255,%ebx 1671*ebfedea0SLionel Sambuc xorl 2(%ebp,%ebx,8),%edx 1672*ebfedea0SLionel Sambuc movl 8(%esp),%ebx 1673*ebfedea0SLionel Sambuc shrl $24,%eax 1674*ebfedea0SLionel Sambuc xorl 1(%ebp,%eax,8),%edx 1675*ebfedea0SLionel Sambuc movl 4(%esp),%eax 1676*ebfedea0SLionel Sambuc 1677*ebfedea0SLionel Sambuc addl $16,%edi 1678*ebfedea0SLionel Sambuc xorl (%edi),%eax 1679*ebfedea0SLionel Sambuc xorl 4(%edi),%ebx 1680*ebfedea0SLionel Sambuc xorl 8(%edi),%ecx 1681*ebfedea0SLionel Sambuc xorl 12(%edi),%edx 1682*ebfedea0SLionel Sambuc cmpl 24(%esp),%edi 1683*ebfedea0SLionel Sambuc movl %edi,20(%esp) 1684*ebfedea0SLionel Sambuc jb .L009loop 1685*ebfedea0SLionel Sambuc leal 2176(%ebp),%ebp 1686*ebfedea0SLionel Sambuc movl -128(%ebp),%edi 1687*ebfedea0SLionel Sambuc movl -96(%ebp),%esi 1688*ebfedea0SLionel Sambuc movl -64(%ebp),%edi 1689*ebfedea0SLionel Sambuc movl -32(%ebp),%esi 1690*ebfedea0SLionel Sambuc movl (%ebp),%edi 1691*ebfedea0SLionel Sambuc movl 32(%ebp),%esi 1692*ebfedea0SLionel Sambuc movl 64(%ebp),%edi 1693*ebfedea0SLionel Sambuc movl 96(%ebp),%esi 1694*ebfedea0SLionel Sambuc leal -128(%ebp),%ebp 1695*ebfedea0SLionel Sambuc movl %eax,%esi 1696*ebfedea0SLionel Sambuc andl $255,%esi 1697*ebfedea0SLionel Sambuc movzbl (%ebp,%esi,1),%esi 1698*ebfedea0SLionel Sambuc movzbl %dh,%edi 1699*ebfedea0SLionel Sambuc movzbl (%ebp,%edi,1),%edi 1700*ebfedea0SLionel Sambuc shll $8,%edi 1701*ebfedea0SLionel Sambuc xorl %edi,%esi 1702*ebfedea0SLionel Sambuc movl %ecx,%edi 1703*ebfedea0SLionel Sambuc shrl $16,%edi 1704*ebfedea0SLionel Sambuc andl $255,%edi 1705*ebfedea0SLionel Sambuc movzbl (%ebp,%edi,1),%edi 1706*ebfedea0SLionel Sambuc shll $16,%edi 1707*ebfedea0SLionel Sambuc xorl %edi,%esi 1708*ebfedea0SLionel Sambuc movl %ebx,%edi 1709*ebfedea0SLionel Sambuc shrl $24,%edi 1710*ebfedea0SLionel Sambuc movzbl (%ebp,%edi,1),%edi 1711*ebfedea0SLionel Sambuc shll $24,%edi 1712*ebfedea0SLionel Sambuc xorl %edi,%esi 1713*ebfedea0SLionel Sambuc movl %esi,4(%esp) 1714*ebfedea0SLionel Sambuc movl %ebx,%esi 1715*ebfedea0SLionel Sambuc andl $255,%esi 1716*ebfedea0SLionel Sambuc movzbl (%ebp,%esi,1),%esi 1717*ebfedea0SLionel Sambuc movzbl %ah,%edi 1718*ebfedea0SLionel Sambuc movzbl (%ebp,%edi,1),%edi 1719*ebfedea0SLionel Sambuc shll $8,%edi 1720*ebfedea0SLionel Sambuc xorl %edi,%esi 1721*ebfedea0SLionel Sambuc movl %edx,%edi 1722*ebfedea0SLionel Sambuc shrl $16,%edi 1723*ebfedea0SLionel Sambuc andl $255,%edi 1724*ebfedea0SLionel Sambuc movzbl (%ebp,%edi,1),%edi 1725*ebfedea0SLionel Sambuc shll $16,%edi 1726*ebfedea0SLionel Sambuc xorl %edi,%esi 1727*ebfedea0SLionel Sambuc movl %ecx,%edi 1728*ebfedea0SLionel Sambuc shrl $24,%edi 1729*ebfedea0SLionel Sambuc movzbl (%ebp,%edi,1),%edi 1730*ebfedea0SLionel Sambuc shll $24,%edi 1731*ebfedea0SLionel Sambuc xorl %edi,%esi 1732*ebfedea0SLionel Sambuc movl %esi,8(%esp) 1733*ebfedea0SLionel Sambuc movl %ecx,%esi 1734*ebfedea0SLionel Sambuc andl $255,%esi 1735*ebfedea0SLionel Sambuc movzbl (%ebp,%esi,1),%esi 1736*ebfedea0SLionel Sambuc movzbl %bh,%edi 1737*ebfedea0SLionel Sambuc movzbl (%ebp,%edi,1),%edi 1738*ebfedea0SLionel Sambuc shll $8,%edi 1739*ebfedea0SLionel Sambuc xorl %edi,%esi 1740*ebfedea0SLionel Sambuc movl %eax,%edi 1741*ebfedea0SLionel Sambuc shrl $16,%edi 1742*ebfedea0SLionel Sambuc andl $255,%edi 1743*ebfedea0SLionel Sambuc movzbl (%ebp,%edi,1),%edi 1744*ebfedea0SLionel Sambuc shll $16,%edi 1745*ebfedea0SLionel Sambuc xorl %edi,%esi 1746*ebfedea0SLionel Sambuc movl %edx,%edi 1747*ebfedea0SLionel Sambuc shrl $24,%edi 1748*ebfedea0SLionel Sambuc movzbl (%ebp,%edi,1),%edi 1749*ebfedea0SLionel Sambuc shll $24,%edi 1750*ebfedea0SLionel Sambuc xorl %edi,%esi 1751*ebfedea0SLionel Sambuc movl 20(%esp),%edi 1752*ebfedea0SLionel Sambuc andl $255,%edx 1753*ebfedea0SLionel Sambuc movzbl (%ebp,%edx,1),%edx 1754*ebfedea0SLionel Sambuc movzbl %ch,%ecx 1755*ebfedea0SLionel Sambuc movzbl (%ebp,%ecx,1),%ecx 1756*ebfedea0SLionel Sambuc shll $8,%ecx 1757*ebfedea0SLionel Sambuc xorl %ecx,%edx 1758*ebfedea0SLionel Sambuc movl %esi,%ecx 1759*ebfedea0SLionel Sambuc shrl $16,%ebx 1760*ebfedea0SLionel Sambuc andl $255,%ebx 1761*ebfedea0SLionel Sambuc movzbl (%ebp,%ebx,1),%ebx 1762*ebfedea0SLionel Sambuc shll $16,%ebx 1763*ebfedea0SLionel Sambuc xorl %ebx,%edx 1764*ebfedea0SLionel Sambuc movl 8(%esp),%ebx 1765*ebfedea0SLionel Sambuc shrl $24,%eax 1766*ebfedea0SLionel Sambuc movzbl (%ebp,%eax,1),%eax 1767*ebfedea0SLionel Sambuc shll $24,%eax 1768*ebfedea0SLionel Sambuc xorl %eax,%edx 1769*ebfedea0SLionel Sambuc movl 4(%esp),%eax 1770*ebfedea0SLionel Sambuc leal -2048(%ebp),%ebp 1771*ebfedea0SLionel Sambuc addl $16,%edi 1772*ebfedea0SLionel Sambuc xorl (%edi),%eax 1773*ebfedea0SLionel Sambuc xorl 4(%edi),%ebx 1774*ebfedea0SLionel Sambuc xorl 8(%edi),%ecx 1775*ebfedea0SLionel Sambuc xorl 12(%edi),%edx 1776*ebfedea0SLionel Sambuc ret 1777*ebfedea0SLionel Sambuc.align 64 1778*ebfedea0SLionel Sambuc.LAES_Td: 1779*ebfedea0SLionel Sambuc.long 1353184337,1353184337 1780*ebfedea0SLionel Sambuc.long 1399144830,1399144830 1781*ebfedea0SLionel Sambuc.long 3282310938,3282310938 1782*ebfedea0SLionel Sambuc.long 2522752826,2522752826 1783*ebfedea0SLionel Sambuc.long 3412831035,3412831035 1784*ebfedea0SLionel Sambuc.long 4047871263,4047871263 1785*ebfedea0SLionel Sambuc.long 2874735276,2874735276 1786*ebfedea0SLionel Sambuc.long 2466505547,2466505547 1787*ebfedea0SLionel Sambuc.long 1442459680,1442459680 1788*ebfedea0SLionel Sambuc.long 4134368941,4134368941 1789*ebfedea0SLionel Sambuc.long 2440481928,2440481928 1790*ebfedea0SLionel Sambuc.long 625738485,625738485 1791*ebfedea0SLionel Sambuc.long 4242007375,4242007375 1792*ebfedea0SLionel Sambuc.long 3620416197,3620416197 1793*ebfedea0SLionel Sambuc.long 2151953702,2151953702 1794*ebfedea0SLionel Sambuc.long 2409849525,2409849525 1795*ebfedea0SLionel Sambuc.long 1230680542,1230680542 1796*ebfedea0SLionel Sambuc.long 1729870373,1729870373 1797*ebfedea0SLionel Sambuc.long 2551114309,2551114309 1798*ebfedea0SLionel Sambuc.long 3787521629,3787521629 1799*ebfedea0SLionel Sambuc.long 41234371,41234371 1800*ebfedea0SLionel Sambuc.long 317738113,317738113 1801*ebfedea0SLionel Sambuc.long 2744600205,2744600205 1802*ebfedea0SLionel Sambuc.long 3338261355,3338261355 1803*ebfedea0SLionel Sambuc.long 3881799427,3881799427 1804*ebfedea0SLionel Sambuc.long 2510066197,2510066197 1805*ebfedea0SLionel Sambuc.long 3950669247,3950669247 1806*ebfedea0SLionel Sambuc.long 3663286933,3663286933 1807*ebfedea0SLionel Sambuc.long 763608788,763608788 1808*ebfedea0SLionel Sambuc.long 3542185048,3542185048 1809*ebfedea0SLionel Sambuc.long 694804553,694804553 1810*ebfedea0SLionel Sambuc.long 1154009486,1154009486 1811*ebfedea0SLionel Sambuc.long 1787413109,1787413109 1812*ebfedea0SLionel Sambuc.long 2021232372,2021232372 1813*ebfedea0SLionel Sambuc.long 1799248025,1799248025 1814*ebfedea0SLionel Sambuc.long 3715217703,3715217703 1815*ebfedea0SLionel Sambuc.long 3058688446,3058688446 1816*ebfedea0SLionel Sambuc.long 397248752,397248752 1817*ebfedea0SLionel Sambuc.long 1722556617,1722556617 1818*ebfedea0SLionel Sambuc.long 3023752829,3023752829 1819*ebfedea0SLionel Sambuc.long 407560035,407560035 1820*ebfedea0SLionel Sambuc.long 2184256229,2184256229 1821*ebfedea0SLionel Sambuc.long 1613975959,1613975959 1822*ebfedea0SLionel Sambuc.long 1165972322,1165972322 1823*ebfedea0SLionel Sambuc.long 3765920945,3765920945 1824*ebfedea0SLionel Sambuc.long 2226023355,2226023355 1825*ebfedea0SLionel Sambuc.long 480281086,480281086 1826*ebfedea0SLionel Sambuc.long 2485848313,2485848313 1827*ebfedea0SLionel Sambuc.long 1483229296,1483229296 1828*ebfedea0SLionel Sambuc.long 436028815,436028815 1829*ebfedea0SLionel Sambuc.long 2272059028,2272059028 1830*ebfedea0SLionel Sambuc.long 3086515026,3086515026 1831*ebfedea0SLionel Sambuc.long 601060267,601060267 1832*ebfedea0SLionel Sambuc.long 3791801202,3791801202 1833*ebfedea0SLionel Sambuc.long 1468997603,1468997603 1834*ebfedea0SLionel Sambuc.long 715871590,715871590 1835*ebfedea0SLionel Sambuc.long 120122290,120122290 1836*ebfedea0SLionel Sambuc.long 63092015,63092015 1837*ebfedea0SLionel Sambuc.long 2591802758,2591802758 1838*ebfedea0SLionel Sambuc.long 2768779219,2768779219 1839*ebfedea0SLionel Sambuc.long 4068943920,4068943920 1840*ebfedea0SLionel Sambuc.long 2997206819,2997206819 1841*ebfedea0SLionel Sambuc.long 3127509762,3127509762 1842*ebfedea0SLionel Sambuc.long 1552029421,1552029421 1843*ebfedea0SLionel Sambuc.long 723308426,723308426 1844*ebfedea0SLionel Sambuc.long 2461301159,2461301159 1845*ebfedea0SLionel Sambuc.long 4042393587,4042393587 1846*ebfedea0SLionel Sambuc.long 2715969870,2715969870 1847*ebfedea0SLionel Sambuc.long 3455375973,3455375973 1848*ebfedea0SLionel Sambuc.long 3586000134,3586000134 1849*ebfedea0SLionel Sambuc.long 526529745,526529745 1850*ebfedea0SLionel Sambuc.long 2331944644,2331944644 1851*ebfedea0SLionel Sambuc.long 2639474228,2639474228 1852*ebfedea0SLionel Sambuc.long 2689987490,2689987490 1853*ebfedea0SLionel Sambuc.long 853641733,853641733 1854*ebfedea0SLionel Sambuc.long 1978398372,1978398372 1855*ebfedea0SLionel Sambuc.long 971801355,971801355 1856*ebfedea0SLionel Sambuc.long 2867814464,2867814464 1857*ebfedea0SLionel Sambuc.long 111112542,111112542 1858*ebfedea0SLionel Sambuc.long 1360031421,1360031421 1859*ebfedea0SLionel Sambuc.long 4186579262,4186579262 1860*ebfedea0SLionel Sambuc.long 1023860118,1023860118 1861*ebfedea0SLionel Sambuc.long 2919579357,2919579357 1862*ebfedea0SLionel Sambuc.long 1186850381,1186850381 1863*ebfedea0SLionel Sambuc.long 3045938321,3045938321 1864*ebfedea0SLionel Sambuc.long 90031217,90031217 1865*ebfedea0SLionel Sambuc.long 1876166148,1876166148 1866*ebfedea0SLionel Sambuc.long 4279586912,4279586912 1867*ebfedea0SLionel Sambuc.long 620468249,620468249 1868*ebfedea0SLionel Sambuc.long 2548678102,2548678102 1869*ebfedea0SLionel Sambuc.long 3426959497,3426959497 1870*ebfedea0SLionel Sambuc.long 2006899047,2006899047 1871*ebfedea0SLionel Sambuc.long 3175278768,3175278768 1872*ebfedea0SLionel Sambuc.long 2290845959,2290845959 1873*ebfedea0SLionel Sambuc.long 945494503,945494503 1874*ebfedea0SLionel Sambuc.long 3689859193,3689859193 1875*ebfedea0SLionel Sambuc.long 1191869601,1191869601 1876*ebfedea0SLionel Sambuc.long 3910091388,3910091388 1877*ebfedea0SLionel Sambuc.long 3374220536,3374220536 1878*ebfedea0SLionel Sambuc.long 0,0 1879*ebfedea0SLionel Sambuc.long 2206629897,2206629897 1880*ebfedea0SLionel Sambuc.long 1223502642,1223502642 1881*ebfedea0SLionel Sambuc.long 2893025566,2893025566 1882*ebfedea0SLionel Sambuc.long 1316117100,1316117100 1883*ebfedea0SLionel Sambuc.long 4227796733,4227796733 1884*ebfedea0SLionel Sambuc.long 1446544655,1446544655 1885*ebfedea0SLionel Sambuc.long 517320253,517320253 1886*ebfedea0SLionel Sambuc.long 658058550,658058550 1887*ebfedea0SLionel Sambuc.long 1691946762,1691946762 1888*ebfedea0SLionel Sambuc.long 564550760,564550760 1889*ebfedea0SLionel Sambuc.long 3511966619,3511966619 1890*ebfedea0SLionel Sambuc.long 976107044,976107044 1891*ebfedea0SLionel Sambuc.long 2976320012,2976320012 1892*ebfedea0SLionel Sambuc.long 266819475,266819475 1893*ebfedea0SLionel Sambuc.long 3533106868,3533106868 1894*ebfedea0SLionel Sambuc.long 2660342555,2660342555 1895*ebfedea0SLionel Sambuc.long 1338359936,1338359936 1896*ebfedea0SLionel Sambuc.long 2720062561,2720062561 1897*ebfedea0SLionel Sambuc.long 1766553434,1766553434 1898*ebfedea0SLionel Sambuc.long 370807324,370807324 1899*ebfedea0SLionel Sambuc.long 179999714,179999714 1900*ebfedea0SLionel Sambuc.long 3844776128,3844776128 1901*ebfedea0SLionel Sambuc.long 1138762300,1138762300 1902*ebfedea0SLionel Sambuc.long 488053522,488053522 1903*ebfedea0SLionel Sambuc.long 185403662,185403662 1904*ebfedea0SLionel Sambuc.long 2915535858,2915535858 1905*ebfedea0SLionel Sambuc.long 3114841645,3114841645 1906*ebfedea0SLionel Sambuc.long 3366526484,3366526484 1907*ebfedea0SLionel Sambuc.long 2233069911,2233069911 1908*ebfedea0SLionel Sambuc.long 1275557295,1275557295 1909*ebfedea0SLionel Sambuc.long 3151862254,3151862254 1910*ebfedea0SLionel Sambuc.long 4250959779,4250959779 1911*ebfedea0SLionel Sambuc.long 2670068215,2670068215 1912*ebfedea0SLionel Sambuc.long 3170202204,3170202204 1913*ebfedea0SLionel Sambuc.long 3309004356,3309004356 1914*ebfedea0SLionel Sambuc.long 880737115,880737115 1915*ebfedea0SLionel Sambuc.long 1982415755,1982415755 1916*ebfedea0SLionel Sambuc.long 3703972811,3703972811 1917*ebfedea0SLionel Sambuc.long 1761406390,1761406390 1918*ebfedea0SLionel Sambuc.long 1676797112,1676797112 1919*ebfedea0SLionel Sambuc.long 3403428311,3403428311 1920*ebfedea0SLionel Sambuc.long 277177154,277177154 1921*ebfedea0SLionel Sambuc.long 1076008723,1076008723 1922*ebfedea0SLionel Sambuc.long 538035844,538035844 1923*ebfedea0SLionel Sambuc.long 2099530373,2099530373 1924*ebfedea0SLionel Sambuc.long 4164795346,4164795346 1925*ebfedea0SLionel Sambuc.long 288553390,288553390 1926*ebfedea0SLionel Sambuc.long 1839278535,1839278535 1927*ebfedea0SLionel Sambuc.long 1261411869,1261411869 1928*ebfedea0SLionel Sambuc.long 4080055004,4080055004 1929*ebfedea0SLionel Sambuc.long 3964831245,3964831245 1930*ebfedea0SLionel Sambuc.long 3504587127,3504587127 1931*ebfedea0SLionel Sambuc.long 1813426987,1813426987 1932*ebfedea0SLionel Sambuc.long 2579067049,2579067049 1933*ebfedea0SLionel Sambuc.long 4199060497,4199060497 1934*ebfedea0SLionel Sambuc.long 577038663,577038663 1935*ebfedea0SLionel Sambuc.long 3297574056,3297574056 1936*ebfedea0SLionel Sambuc.long 440397984,440397984 1937*ebfedea0SLionel Sambuc.long 3626794326,3626794326 1938*ebfedea0SLionel Sambuc.long 4019204898,4019204898 1939*ebfedea0SLionel Sambuc.long 3343796615,3343796615 1940*ebfedea0SLionel Sambuc.long 3251714265,3251714265 1941*ebfedea0SLionel Sambuc.long 4272081548,4272081548 1942*ebfedea0SLionel Sambuc.long 906744984,906744984 1943*ebfedea0SLionel Sambuc.long 3481400742,3481400742 1944*ebfedea0SLionel Sambuc.long 685669029,685669029 1945*ebfedea0SLionel Sambuc.long 646887386,646887386 1946*ebfedea0SLionel Sambuc.long 2764025151,2764025151 1947*ebfedea0SLionel Sambuc.long 3835509292,3835509292 1948*ebfedea0SLionel Sambuc.long 227702864,227702864 1949*ebfedea0SLionel Sambuc.long 2613862250,2613862250 1950*ebfedea0SLionel Sambuc.long 1648787028,1648787028 1951*ebfedea0SLionel Sambuc.long 3256061430,3256061430 1952*ebfedea0SLionel Sambuc.long 3904428176,3904428176 1953*ebfedea0SLionel Sambuc.long 1593260334,1593260334 1954*ebfedea0SLionel Sambuc.long 4121936770,4121936770 1955*ebfedea0SLionel Sambuc.long 3196083615,3196083615 1956*ebfedea0SLionel Sambuc.long 2090061929,2090061929 1957*ebfedea0SLionel Sambuc.long 2838353263,2838353263 1958*ebfedea0SLionel Sambuc.long 3004310991,3004310991 1959*ebfedea0SLionel Sambuc.long 999926984,999926984 1960*ebfedea0SLionel Sambuc.long 2809993232,2809993232 1961*ebfedea0SLionel Sambuc.long 1852021992,1852021992 1962*ebfedea0SLionel Sambuc.long 2075868123,2075868123 1963*ebfedea0SLionel Sambuc.long 158869197,158869197 1964*ebfedea0SLionel Sambuc.long 4095236462,4095236462 1965*ebfedea0SLionel Sambuc.long 28809964,28809964 1966*ebfedea0SLionel Sambuc.long 2828685187,2828685187 1967*ebfedea0SLionel Sambuc.long 1701746150,1701746150 1968*ebfedea0SLionel Sambuc.long 2129067946,2129067946 1969*ebfedea0SLionel Sambuc.long 147831841,147831841 1970*ebfedea0SLionel Sambuc.long 3873969647,3873969647 1971*ebfedea0SLionel Sambuc.long 3650873274,3650873274 1972*ebfedea0SLionel Sambuc.long 3459673930,3459673930 1973*ebfedea0SLionel Sambuc.long 3557400554,3557400554 1974*ebfedea0SLionel Sambuc.long 3598495785,3598495785 1975*ebfedea0SLionel Sambuc.long 2947720241,2947720241 1976*ebfedea0SLionel Sambuc.long 824393514,824393514 1977*ebfedea0SLionel Sambuc.long 815048134,815048134 1978*ebfedea0SLionel Sambuc.long 3227951669,3227951669 1979*ebfedea0SLionel Sambuc.long 935087732,935087732 1980*ebfedea0SLionel Sambuc.long 2798289660,2798289660 1981*ebfedea0SLionel Sambuc.long 2966458592,2966458592 1982*ebfedea0SLionel Sambuc.long 366520115,366520115 1983*ebfedea0SLionel Sambuc.long 1251476721,1251476721 1984*ebfedea0SLionel Sambuc.long 4158319681,4158319681 1985*ebfedea0SLionel Sambuc.long 240176511,240176511 1986*ebfedea0SLionel Sambuc.long 804688151,804688151 1987*ebfedea0SLionel Sambuc.long 2379631990,2379631990 1988*ebfedea0SLionel Sambuc.long 1303441219,1303441219 1989*ebfedea0SLionel Sambuc.long 1414376140,1414376140 1990*ebfedea0SLionel Sambuc.long 3741619940,3741619940 1991*ebfedea0SLionel Sambuc.long 3820343710,3820343710 1992*ebfedea0SLionel Sambuc.long 461924940,461924940 1993*ebfedea0SLionel Sambuc.long 3089050817,3089050817 1994*ebfedea0SLionel Sambuc.long 2136040774,2136040774 1995*ebfedea0SLionel Sambuc.long 82468509,82468509 1996*ebfedea0SLionel Sambuc.long 1563790337,1563790337 1997*ebfedea0SLionel Sambuc.long 1937016826,1937016826 1998*ebfedea0SLionel Sambuc.long 776014843,776014843 1999*ebfedea0SLionel Sambuc.long 1511876531,1511876531 2000*ebfedea0SLionel Sambuc.long 1389550482,1389550482 2001*ebfedea0SLionel Sambuc.long 861278441,861278441 2002*ebfedea0SLionel Sambuc.long 323475053,323475053 2003*ebfedea0SLionel Sambuc.long 2355222426,2355222426 2004*ebfedea0SLionel Sambuc.long 2047648055,2047648055 2005*ebfedea0SLionel Sambuc.long 2383738969,2383738969 2006*ebfedea0SLionel Sambuc.long 2302415851,2302415851 2007*ebfedea0SLionel Sambuc.long 3995576782,3995576782 2008*ebfedea0SLionel Sambuc.long 902390199,902390199 2009*ebfedea0SLionel Sambuc.long 3991215329,3991215329 2010*ebfedea0SLionel Sambuc.long 1018251130,1018251130 2011*ebfedea0SLionel Sambuc.long 1507840668,1507840668 2012*ebfedea0SLionel Sambuc.long 1064563285,1064563285 2013*ebfedea0SLionel Sambuc.long 2043548696,2043548696 2014*ebfedea0SLionel Sambuc.long 3208103795,3208103795 2015*ebfedea0SLionel Sambuc.long 3939366739,3939366739 2016*ebfedea0SLionel Sambuc.long 1537932639,1537932639 2017*ebfedea0SLionel Sambuc.long 342834655,342834655 2018*ebfedea0SLionel Sambuc.long 2262516856,2262516856 2019*ebfedea0SLionel Sambuc.long 2180231114,2180231114 2020*ebfedea0SLionel Sambuc.long 1053059257,1053059257 2021*ebfedea0SLionel Sambuc.long 741614648,741614648 2022*ebfedea0SLionel Sambuc.long 1598071746,1598071746 2023*ebfedea0SLionel Sambuc.long 1925389590,1925389590 2024*ebfedea0SLionel Sambuc.long 203809468,203809468 2025*ebfedea0SLionel Sambuc.long 2336832552,2336832552 2026*ebfedea0SLionel Sambuc.long 1100287487,1100287487 2027*ebfedea0SLionel Sambuc.long 1895934009,1895934009 2028*ebfedea0SLionel Sambuc.long 3736275976,3736275976 2029*ebfedea0SLionel Sambuc.long 2632234200,2632234200 2030*ebfedea0SLionel Sambuc.long 2428589668,2428589668 2031*ebfedea0SLionel Sambuc.long 1636092795,1636092795 2032*ebfedea0SLionel Sambuc.long 1890988757,1890988757 2033*ebfedea0SLionel Sambuc.long 1952214088,1952214088 2034*ebfedea0SLionel Sambuc.long 1113045200,1113045200 2035*ebfedea0SLionel Sambuc.byte 82,9,106,213,48,54,165,56 2036*ebfedea0SLionel Sambuc.byte 191,64,163,158,129,243,215,251 2037*ebfedea0SLionel Sambuc.byte 124,227,57,130,155,47,255,135 2038*ebfedea0SLionel Sambuc.byte 52,142,67,68,196,222,233,203 2039*ebfedea0SLionel Sambuc.byte 84,123,148,50,166,194,35,61 2040*ebfedea0SLionel Sambuc.byte 238,76,149,11,66,250,195,78 2041*ebfedea0SLionel Sambuc.byte 8,46,161,102,40,217,36,178 2042*ebfedea0SLionel Sambuc.byte 118,91,162,73,109,139,209,37 2043*ebfedea0SLionel Sambuc.byte 114,248,246,100,134,104,152,22 2044*ebfedea0SLionel Sambuc.byte 212,164,92,204,93,101,182,146 2045*ebfedea0SLionel Sambuc.byte 108,112,72,80,253,237,185,218 2046*ebfedea0SLionel Sambuc.byte 94,21,70,87,167,141,157,132 2047*ebfedea0SLionel Sambuc.byte 144,216,171,0,140,188,211,10 2048*ebfedea0SLionel Sambuc.byte 247,228,88,5,184,179,69,6 2049*ebfedea0SLionel Sambuc.byte 208,44,30,143,202,63,15,2 2050*ebfedea0SLionel Sambuc.byte 193,175,189,3,1,19,138,107 2051*ebfedea0SLionel Sambuc.byte 58,145,17,65,79,103,220,234 2052*ebfedea0SLionel Sambuc.byte 151,242,207,206,240,180,230,115 2053*ebfedea0SLionel Sambuc.byte 150,172,116,34,231,173,53,133 2054*ebfedea0SLionel Sambuc.byte 226,249,55,232,28,117,223,110 2055*ebfedea0SLionel Sambuc.byte 71,241,26,113,29,41,197,137 2056*ebfedea0SLionel Sambuc.byte 111,183,98,14,170,24,190,27 2057*ebfedea0SLionel Sambuc.byte 252,86,62,75,198,210,121,32 2058*ebfedea0SLionel Sambuc.byte 154,219,192,254,120,205,90,244 2059*ebfedea0SLionel Sambuc.byte 31,221,168,51,136,7,199,49 2060*ebfedea0SLionel Sambuc.byte 177,18,16,89,39,128,236,95 2061*ebfedea0SLionel Sambuc.byte 96,81,127,169,25,181,74,13 2062*ebfedea0SLionel Sambuc.byte 45,229,122,159,147,201,156,239 2063*ebfedea0SLionel Sambuc.byte 160,224,59,77,174,42,245,176 2064*ebfedea0SLionel Sambuc.byte 200,235,187,60,131,83,153,97 2065*ebfedea0SLionel Sambuc.byte 23,43,4,126,186,119,214,38 2066*ebfedea0SLionel Sambuc.byte 225,105,20,99,85,33,12,125 2067*ebfedea0SLionel Sambuc.byte 82,9,106,213,48,54,165,56 2068*ebfedea0SLionel Sambuc.byte 191,64,163,158,129,243,215,251 2069*ebfedea0SLionel Sambuc.byte 124,227,57,130,155,47,255,135 2070*ebfedea0SLionel Sambuc.byte 52,142,67,68,196,222,233,203 2071*ebfedea0SLionel Sambuc.byte 84,123,148,50,166,194,35,61 2072*ebfedea0SLionel Sambuc.byte 238,76,149,11,66,250,195,78 2073*ebfedea0SLionel Sambuc.byte 8,46,161,102,40,217,36,178 2074*ebfedea0SLionel Sambuc.byte 118,91,162,73,109,139,209,37 2075*ebfedea0SLionel Sambuc.byte 114,248,246,100,134,104,152,22 2076*ebfedea0SLionel Sambuc.byte 212,164,92,204,93,101,182,146 2077*ebfedea0SLionel Sambuc.byte 108,112,72,80,253,237,185,218 2078*ebfedea0SLionel Sambuc.byte 94,21,70,87,167,141,157,132 2079*ebfedea0SLionel Sambuc.byte 144,216,171,0,140,188,211,10 2080*ebfedea0SLionel Sambuc.byte 247,228,88,5,184,179,69,6 2081*ebfedea0SLionel Sambuc.byte 208,44,30,143,202,63,15,2 2082*ebfedea0SLionel Sambuc.byte 193,175,189,3,1,19,138,107 2083*ebfedea0SLionel Sambuc.byte 58,145,17,65,79,103,220,234 2084*ebfedea0SLionel Sambuc.byte 151,242,207,206,240,180,230,115 2085*ebfedea0SLionel Sambuc.byte 150,172,116,34,231,173,53,133 2086*ebfedea0SLionel Sambuc.byte 226,249,55,232,28,117,223,110 2087*ebfedea0SLionel Sambuc.byte 71,241,26,113,29,41,197,137 2088*ebfedea0SLionel Sambuc.byte 111,183,98,14,170,24,190,27 2089*ebfedea0SLionel Sambuc.byte 252,86,62,75,198,210,121,32 2090*ebfedea0SLionel Sambuc.byte 154,219,192,254,120,205,90,244 2091*ebfedea0SLionel Sambuc.byte 31,221,168,51,136,7,199,49 2092*ebfedea0SLionel Sambuc.byte 177,18,16,89,39,128,236,95 2093*ebfedea0SLionel Sambuc.byte 96,81,127,169,25,181,74,13 2094*ebfedea0SLionel Sambuc.byte 45,229,122,159,147,201,156,239 2095*ebfedea0SLionel Sambuc.byte 160,224,59,77,174,42,245,176 2096*ebfedea0SLionel Sambuc.byte 200,235,187,60,131,83,153,97 2097*ebfedea0SLionel Sambuc.byte 23,43,4,126,186,119,214,38 2098*ebfedea0SLionel Sambuc.byte 225,105,20,99,85,33,12,125 2099*ebfedea0SLionel Sambuc.byte 82,9,106,213,48,54,165,56 2100*ebfedea0SLionel Sambuc.byte 191,64,163,158,129,243,215,251 2101*ebfedea0SLionel Sambuc.byte 124,227,57,130,155,47,255,135 2102*ebfedea0SLionel Sambuc.byte 52,142,67,68,196,222,233,203 2103*ebfedea0SLionel Sambuc.byte 84,123,148,50,166,194,35,61 2104*ebfedea0SLionel Sambuc.byte 238,76,149,11,66,250,195,78 2105*ebfedea0SLionel Sambuc.byte 8,46,161,102,40,217,36,178 2106*ebfedea0SLionel Sambuc.byte 118,91,162,73,109,139,209,37 2107*ebfedea0SLionel Sambuc.byte 114,248,246,100,134,104,152,22 2108*ebfedea0SLionel Sambuc.byte 212,164,92,204,93,101,182,146 2109*ebfedea0SLionel Sambuc.byte 108,112,72,80,253,237,185,218 2110*ebfedea0SLionel Sambuc.byte 94,21,70,87,167,141,157,132 2111*ebfedea0SLionel Sambuc.byte 144,216,171,0,140,188,211,10 2112*ebfedea0SLionel Sambuc.byte 247,228,88,5,184,179,69,6 2113*ebfedea0SLionel Sambuc.byte 208,44,30,143,202,63,15,2 2114*ebfedea0SLionel Sambuc.byte 193,175,189,3,1,19,138,107 2115*ebfedea0SLionel Sambuc.byte 58,145,17,65,79,103,220,234 2116*ebfedea0SLionel Sambuc.byte 151,242,207,206,240,180,230,115 2117*ebfedea0SLionel Sambuc.byte 150,172,116,34,231,173,53,133 2118*ebfedea0SLionel Sambuc.byte 226,249,55,232,28,117,223,110 2119*ebfedea0SLionel Sambuc.byte 71,241,26,113,29,41,197,137 2120*ebfedea0SLionel Sambuc.byte 111,183,98,14,170,24,190,27 2121*ebfedea0SLionel Sambuc.byte 252,86,62,75,198,210,121,32 2122*ebfedea0SLionel Sambuc.byte 154,219,192,254,120,205,90,244 2123*ebfedea0SLionel Sambuc.byte 31,221,168,51,136,7,199,49 2124*ebfedea0SLionel Sambuc.byte 177,18,16,89,39,128,236,95 2125*ebfedea0SLionel Sambuc.byte 96,81,127,169,25,181,74,13 2126*ebfedea0SLionel Sambuc.byte 45,229,122,159,147,201,156,239 2127*ebfedea0SLionel Sambuc.byte 160,224,59,77,174,42,245,176 2128*ebfedea0SLionel Sambuc.byte 200,235,187,60,131,83,153,97 2129*ebfedea0SLionel Sambuc.byte 23,43,4,126,186,119,214,38 2130*ebfedea0SLionel Sambuc.byte 225,105,20,99,85,33,12,125 2131*ebfedea0SLionel Sambuc.byte 82,9,106,213,48,54,165,56 2132*ebfedea0SLionel Sambuc.byte 191,64,163,158,129,243,215,251 2133*ebfedea0SLionel Sambuc.byte 124,227,57,130,155,47,255,135 2134*ebfedea0SLionel Sambuc.byte 52,142,67,68,196,222,233,203 2135*ebfedea0SLionel Sambuc.byte 84,123,148,50,166,194,35,61 2136*ebfedea0SLionel Sambuc.byte 238,76,149,11,66,250,195,78 2137*ebfedea0SLionel Sambuc.byte 8,46,161,102,40,217,36,178 2138*ebfedea0SLionel Sambuc.byte 118,91,162,73,109,139,209,37 2139*ebfedea0SLionel Sambuc.byte 114,248,246,100,134,104,152,22 2140*ebfedea0SLionel Sambuc.byte 212,164,92,204,93,101,182,146 2141*ebfedea0SLionel Sambuc.byte 108,112,72,80,253,237,185,218 2142*ebfedea0SLionel Sambuc.byte 94,21,70,87,167,141,157,132 2143*ebfedea0SLionel Sambuc.byte 144,216,171,0,140,188,211,10 2144*ebfedea0SLionel Sambuc.byte 247,228,88,5,184,179,69,6 2145*ebfedea0SLionel Sambuc.byte 208,44,30,143,202,63,15,2 2146*ebfedea0SLionel Sambuc.byte 193,175,189,3,1,19,138,107 2147*ebfedea0SLionel Sambuc.byte 58,145,17,65,79,103,220,234 2148*ebfedea0SLionel Sambuc.byte 151,242,207,206,240,180,230,115 2149*ebfedea0SLionel Sambuc.byte 150,172,116,34,231,173,53,133 2150*ebfedea0SLionel Sambuc.byte 226,249,55,232,28,117,223,110 2151*ebfedea0SLionel Sambuc.byte 71,241,26,113,29,41,197,137 2152*ebfedea0SLionel Sambuc.byte 111,183,98,14,170,24,190,27 2153*ebfedea0SLionel Sambuc.byte 252,86,62,75,198,210,121,32 2154*ebfedea0SLionel Sambuc.byte 154,219,192,254,120,205,90,244 2155*ebfedea0SLionel Sambuc.byte 31,221,168,51,136,7,199,49 2156*ebfedea0SLionel Sambuc.byte 177,18,16,89,39,128,236,95 2157*ebfedea0SLionel Sambuc.byte 96,81,127,169,25,181,74,13 2158*ebfedea0SLionel Sambuc.byte 45,229,122,159,147,201,156,239 2159*ebfedea0SLionel Sambuc.byte 160,224,59,77,174,42,245,176 2160*ebfedea0SLionel Sambuc.byte 200,235,187,60,131,83,153,97 2161*ebfedea0SLionel Sambuc.byte 23,43,4,126,186,119,214,38 2162*ebfedea0SLionel Sambuc.byte 225,105,20,99,85,33,12,125 2163*ebfedea0SLionel Sambuc.size _x86_AES_decrypt,.-_x86_AES_decrypt 2164*ebfedea0SLionel Sambuc.globl AES_decrypt 2165*ebfedea0SLionel Sambuc.type AES_decrypt,@function 2166*ebfedea0SLionel Sambuc.align 16 2167*ebfedea0SLionel SambucAES_decrypt: 2168*ebfedea0SLionel Sambuc.L_AES_decrypt_begin: 2169*ebfedea0SLionel Sambuc pushl %ebp 2170*ebfedea0SLionel Sambuc pushl %ebx 2171*ebfedea0SLionel Sambuc pushl %esi 2172*ebfedea0SLionel Sambuc pushl %edi 2173*ebfedea0SLionel Sambuc movl 20(%esp),%esi 2174*ebfedea0SLionel Sambuc movl 28(%esp),%edi 2175*ebfedea0SLionel Sambuc movl %esp,%eax 2176*ebfedea0SLionel Sambuc subl $36,%esp 2177*ebfedea0SLionel Sambuc andl $-64,%esp 2178*ebfedea0SLionel Sambuc leal -127(%edi),%ebx 2179*ebfedea0SLionel Sambuc subl %esp,%ebx 2180*ebfedea0SLionel Sambuc negl %ebx 2181*ebfedea0SLionel Sambuc andl $960,%ebx 2182*ebfedea0SLionel Sambuc subl %ebx,%esp 2183*ebfedea0SLionel Sambuc addl $4,%esp 2184*ebfedea0SLionel Sambuc movl %eax,28(%esp) 2185*ebfedea0SLionel Sambuc call .L010pic_point 2186*ebfedea0SLionel Sambuc.L010pic_point: 2187*ebfedea0SLionel Sambuc popl %ebp 2188*ebfedea0SLionel Sambuc leal _GLOBAL_OFFSET_TABLE_+[.-.L010pic_point](%ebp),%eax 2189*ebfedea0SLionel Sambuc movl OPENSSL_ia32cap_P@GOT(%eax),%eax 2190*ebfedea0SLionel Sambuc leal .LAES_Td-.L010pic_point(%ebp),%ebp 2191*ebfedea0SLionel Sambuc leal 764(%esp),%ebx 2192*ebfedea0SLionel Sambuc subl %ebp,%ebx 2193*ebfedea0SLionel Sambuc andl $768,%ebx 2194*ebfedea0SLionel Sambuc leal 2176(%ebp,%ebx,1),%ebp 2195*ebfedea0SLionel Sambuc btl $25,(%eax) 2196*ebfedea0SLionel Sambuc jnc .L011x86 2197*ebfedea0SLionel Sambuc movq (%esi),%mm0 2198*ebfedea0SLionel Sambuc movq 8(%esi),%mm4 2199*ebfedea0SLionel Sambuc call _sse_AES_decrypt_compact 2200*ebfedea0SLionel Sambuc movl 28(%esp),%esp 2201*ebfedea0SLionel Sambuc movl 24(%esp),%esi 2202*ebfedea0SLionel Sambuc movq %mm0,(%esi) 2203*ebfedea0SLionel Sambuc movq %mm4,8(%esi) 2204*ebfedea0SLionel Sambuc emms 2205*ebfedea0SLionel Sambuc popl %edi 2206*ebfedea0SLionel Sambuc popl %esi 2207*ebfedea0SLionel Sambuc popl %ebx 2208*ebfedea0SLionel Sambuc popl %ebp 2209*ebfedea0SLionel Sambuc ret 2210*ebfedea0SLionel Sambuc.align 16 2211*ebfedea0SLionel Sambuc.L011x86: 2212*ebfedea0SLionel Sambuc movl %ebp,24(%esp) 2213*ebfedea0SLionel Sambuc movl (%esi),%eax 2214*ebfedea0SLionel Sambuc movl 4(%esi),%ebx 2215*ebfedea0SLionel Sambuc movl 8(%esi),%ecx 2216*ebfedea0SLionel Sambuc movl 12(%esi),%edx 2217*ebfedea0SLionel Sambuc call _x86_AES_decrypt_compact 2218*ebfedea0SLionel Sambuc movl 28(%esp),%esp 2219*ebfedea0SLionel Sambuc movl 24(%esp),%esi 2220*ebfedea0SLionel Sambuc movl %eax,(%esi) 2221*ebfedea0SLionel Sambuc movl %ebx,4(%esi) 2222*ebfedea0SLionel Sambuc movl %ecx,8(%esi) 2223*ebfedea0SLionel Sambuc movl %edx,12(%esi) 2224*ebfedea0SLionel Sambuc popl %edi 2225*ebfedea0SLionel Sambuc popl %esi 2226*ebfedea0SLionel Sambuc popl %ebx 2227*ebfedea0SLionel Sambuc popl %ebp 2228*ebfedea0SLionel Sambuc ret 2229*ebfedea0SLionel Sambuc.size AES_decrypt,.-.L_AES_decrypt_begin 2230*ebfedea0SLionel Sambuc.globl AES_cbc_encrypt 2231*ebfedea0SLionel Sambuc.type AES_cbc_encrypt,@function 2232*ebfedea0SLionel Sambuc.align 16 2233*ebfedea0SLionel SambucAES_cbc_encrypt: 2234*ebfedea0SLionel Sambuc.L_AES_cbc_encrypt_begin: 2235*ebfedea0SLionel Sambuc pushl %ebp 2236*ebfedea0SLionel Sambuc pushl %ebx 2237*ebfedea0SLionel Sambuc pushl %esi 2238*ebfedea0SLionel Sambuc pushl %edi 2239*ebfedea0SLionel Sambuc movl 28(%esp),%ecx 2240*ebfedea0SLionel Sambuc cmpl $0,%ecx 2241*ebfedea0SLionel Sambuc je .L012drop_out 2242*ebfedea0SLionel Sambuc call .L013pic_point 2243*ebfedea0SLionel Sambuc.L013pic_point: 2244*ebfedea0SLionel Sambuc popl %ebp 2245*ebfedea0SLionel Sambuc leal _GLOBAL_OFFSET_TABLE_+[.-.L013pic_point](%ebp),%eax 2246*ebfedea0SLionel Sambuc movl OPENSSL_ia32cap_P@GOT(%eax),%eax 2247*ebfedea0SLionel Sambuc cmpl $0,40(%esp) 2248*ebfedea0SLionel Sambuc leal .LAES_Te-.L013pic_point(%ebp),%ebp 2249*ebfedea0SLionel Sambuc jne .L014picked_te 2250*ebfedea0SLionel Sambuc leal .LAES_Td-.LAES_Te(%ebp),%ebp 2251*ebfedea0SLionel Sambuc.L014picked_te: 2252*ebfedea0SLionel Sambuc pushfl 2253*ebfedea0SLionel Sambuc cld 2254*ebfedea0SLionel Sambuc cmpl $512,%ecx 2255*ebfedea0SLionel Sambuc jb .L015slow_way 2256*ebfedea0SLionel Sambuc testl $15,%ecx 2257*ebfedea0SLionel Sambuc jnz .L015slow_way 2258*ebfedea0SLionel Sambuc btl $28,(%eax) 2259*ebfedea0SLionel Sambuc jc .L015slow_way 2260*ebfedea0SLionel Sambuc leal -324(%esp),%esi 2261*ebfedea0SLionel Sambuc andl $-64,%esi 2262*ebfedea0SLionel Sambuc movl %ebp,%eax 2263*ebfedea0SLionel Sambuc leal 2304(%ebp),%ebx 2264*ebfedea0SLionel Sambuc movl %esi,%edx 2265*ebfedea0SLionel Sambuc andl $4095,%eax 2266*ebfedea0SLionel Sambuc andl $4095,%ebx 2267*ebfedea0SLionel Sambuc andl $4095,%edx 2268*ebfedea0SLionel Sambuc cmpl %ebx,%edx 2269*ebfedea0SLionel Sambuc jb .L016tbl_break_out 2270*ebfedea0SLionel Sambuc subl %ebx,%edx 2271*ebfedea0SLionel Sambuc subl %edx,%esi 2272*ebfedea0SLionel Sambuc jmp .L017tbl_ok 2273*ebfedea0SLionel Sambuc.align 4 2274*ebfedea0SLionel Sambuc.L016tbl_break_out: 2275*ebfedea0SLionel Sambuc subl %eax,%edx 2276*ebfedea0SLionel Sambuc andl $4095,%edx 2277*ebfedea0SLionel Sambuc addl $384,%edx 2278*ebfedea0SLionel Sambuc subl %edx,%esi 2279*ebfedea0SLionel Sambuc.align 4 2280*ebfedea0SLionel Sambuc.L017tbl_ok: 2281*ebfedea0SLionel Sambuc leal 24(%esp),%edx 2282*ebfedea0SLionel Sambuc xchgl %esi,%esp 2283*ebfedea0SLionel Sambuc addl $4,%esp 2284*ebfedea0SLionel Sambuc movl %ebp,24(%esp) 2285*ebfedea0SLionel Sambuc movl %esi,28(%esp) 2286*ebfedea0SLionel Sambuc movl (%edx),%eax 2287*ebfedea0SLionel Sambuc movl 4(%edx),%ebx 2288*ebfedea0SLionel Sambuc movl 12(%edx),%edi 2289*ebfedea0SLionel Sambuc movl 16(%edx),%esi 2290*ebfedea0SLionel Sambuc movl 20(%edx),%edx 2291*ebfedea0SLionel Sambuc movl %eax,32(%esp) 2292*ebfedea0SLionel Sambuc movl %ebx,36(%esp) 2293*ebfedea0SLionel Sambuc movl %ecx,40(%esp) 2294*ebfedea0SLionel Sambuc movl %edi,44(%esp) 2295*ebfedea0SLionel Sambuc movl %esi,48(%esp) 2296*ebfedea0SLionel Sambuc movl $0,316(%esp) 2297*ebfedea0SLionel Sambuc movl %edi,%ebx 2298*ebfedea0SLionel Sambuc movl $61,%ecx 2299*ebfedea0SLionel Sambuc subl %ebp,%ebx 2300*ebfedea0SLionel Sambuc movl %edi,%esi 2301*ebfedea0SLionel Sambuc andl $4095,%ebx 2302*ebfedea0SLionel Sambuc leal 76(%esp),%edi 2303*ebfedea0SLionel Sambuc cmpl $2304,%ebx 2304*ebfedea0SLionel Sambuc jb .L018do_copy 2305*ebfedea0SLionel Sambuc cmpl $3852,%ebx 2306*ebfedea0SLionel Sambuc jb .L019skip_copy 2307*ebfedea0SLionel Sambuc.align 4 2308*ebfedea0SLionel Sambuc.L018do_copy: 2309*ebfedea0SLionel Sambuc movl %edi,44(%esp) 2310*ebfedea0SLionel Sambuc.long 2784229001 2311*ebfedea0SLionel Sambuc.L019skip_copy: 2312*ebfedea0SLionel Sambuc movl $16,%edi 2313*ebfedea0SLionel Sambuc.align 4 2314*ebfedea0SLionel Sambuc.L020prefetch_tbl: 2315*ebfedea0SLionel Sambuc movl (%ebp),%eax 2316*ebfedea0SLionel Sambuc movl 32(%ebp),%ebx 2317*ebfedea0SLionel Sambuc movl 64(%ebp),%ecx 2318*ebfedea0SLionel Sambuc movl 96(%ebp),%esi 2319*ebfedea0SLionel Sambuc leal 128(%ebp),%ebp 2320*ebfedea0SLionel Sambuc subl $1,%edi 2321*ebfedea0SLionel Sambuc jnz .L020prefetch_tbl 2322*ebfedea0SLionel Sambuc subl $2048,%ebp 2323*ebfedea0SLionel Sambuc movl 32(%esp),%esi 2324*ebfedea0SLionel Sambuc movl 48(%esp),%edi 2325*ebfedea0SLionel Sambuc cmpl $0,%edx 2326*ebfedea0SLionel Sambuc je .L021fast_decrypt 2327*ebfedea0SLionel Sambuc movl (%edi),%eax 2328*ebfedea0SLionel Sambuc movl 4(%edi),%ebx 2329*ebfedea0SLionel Sambuc.align 16 2330*ebfedea0SLionel Sambuc.L022fast_enc_loop: 2331*ebfedea0SLionel Sambuc movl 8(%edi),%ecx 2332*ebfedea0SLionel Sambuc movl 12(%edi),%edx 2333*ebfedea0SLionel Sambuc xorl (%esi),%eax 2334*ebfedea0SLionel Sambuc xorl 4(%esi),%ebx 2335*ebfedea0SLionel Sambuc xorl 8(%esi),%ecx 2336*ebfedea0SLionel Sambuc xorl 12(%esi),%edx 2337*ebfedea0SLionel Sambuc movl 44(%esp),%edi 2338*ebfedea0SLionel Sambuc call _x86_AES_encrypt 2339*ebfedea0SLionel Sambuc movl 32(%esp),%esi 2340*ebfedea0SLionel Sambuc movl 36(%esp),%edi 2341*ebfedea0SLionel Sambuc movl %eax,(%edi) 2342*ebfedea0SLionel Sambuc movl %ebx,4(%edi) 2343*ebfedea0SLionel Sambuc movl %ecx,8(%edi) 2344*ebfedea0SLionel Sambuc movl %edx,12(%edi) 2345*ebfedea0SLionel Sambuc leal 16(%esi),%esi 2346*ebfedea0SLionel Sambuc movl 40(%esp),%ecx 2347*ebfedea0SLionel Sambuc movl %esi,32(%esp) 2348*ebfedea0SLionel Sambuc leal 16(%edi),%edx 2349*ebfedea0SLionel Sambuc movl %edx,36(%esp) 2350*ebfedea0SLionel Sambuc subl $16,%ecx 2351*ebfedea0SLionel Sambuc movl %ecx,40(%esp) 2352*ebfedea0SLionel Sambuc jnz .L022fast_enc_loop 2353*ebfedea0SLionel Sambuc movl 48(%esp),%esi 2354*ebfedea0SLionel Sambuc movl 8(%edi),%ecx 2355*ebfedea0SLionel Sambuc movl 12(%edi),%edx 2356*ebfedea0SLionel Sambuc movl %eax,(%esi) 2357*ebfedea0SLionel Sambuc movl %ebx,4(%esi) 2358*ebfedea0SLionel Sambuc movl %ecx,8(%esi) 2359*ebfedea0SLionel Sambuc movl %edx,12(%esi) 2360*ebfedea0SLionel Sambuc cmpl $0,316(%esp) 2361*ebfedea0SLionel Sambuc movl 44(%esp),%edi 2362*ebfedea0SLionel Sambuc je .L023skip_ezero 2363*ebfedea0SLionel Sambuc movl $60,%ecx 2364*ebfedea0SLionel Sambuc xorl %eax,%eax 2365*ebfedea0SLionel Sambuc.align 4 2366*ebfedea0SLionel Sambuc.long 2884892297 2367*ebfedea0SLionel Sambuc.L023skip_ezero: 2368*ebfedea0SLionel Sambuc movl 28(%esp),%esp 2369*ebfedea0SLionel Sambuc popfl 2370*ebfedea0SLionel Sambuc.L012drop_out: 2371*ebfedea0SLionel Sambuc popl %edi 2372*ebfedea0SLionel Sambuc popl %esi 2373*ebfedea0SLionel Sambuc popl %ebx 2374*ebfedea0SLionel Sambuc popl %ebp 2375*ebfedea0SLionel Sambuc ret 2376*ebfedea0SLionel Sambuc pushfl 2377*ebfedea0SLionel Sambuc.align 16 2378*ebfedea0SLionel Sambuc.L021fast_decrypt: 2379*ebfedea0SLionel Sambuc cmpl 36(%esp),%esi 2380*ebfedea0SLionel Sambuc je .L024fast_dec_in_place 2381*ebfedea0SLionel Sambuc movl %edi,52(%esp) 2382*ebfedea0SLionel Sambuc.align 4 2383*ebfedea0SLionel Sambuc.align 16 2384*ebfedea0SLionel Sambuc.L025fast_dec_loop: 2385*ebfedea0SLionel Sambuc movl (%esi),%eax 2386*ebfedea0SLionel Sambuc movl 4(%esi),%ebx 2387*ebfedea0SLionel Sambuc movl 8(%esi),%ecx 2388*ebfedea0SLionel Sambuc movl 12(%esi),%edx 2389*ebfedea0SLionel Sambuc movl 44(%esp),%edi 2390*ebfedea0SLionel Sambuc call _x86_AES_decrypt 2391*ebfedea0SLionel Sambuc movl 52(%esp),%edi 2392*ebfedea0SLionel Sambuc movl 40(%esp),%esi 2393*ebfedea0SLionel Sambuc xorl (%edi),%eax 2394*ebfedea0SLionel Sambuc xorl 4(%edi),%ebx 2395*ebfedea0SLionel Sambuc xorl 8(%edi),%ecx 2396*ebfedea0SLionel Sambuc xorl 12(%edi),%edx 2397*ebfedea0SLionel Sambuc movl 36(%esp),%edi 2398*ebfedea0SLionel Sambuc movl 32(%esp),%esi 2399*ebfedea0SLionel Sambuc movl %eax,(%edi) 2400*ebfedea0SLionel Sambuc movl %ebx,4(%edi) 2401*ebfedea0SLionel Sambuc movl %ecx,8(%edi) 2402*ebfedea0SLionel Sambuc movl %edx,12(%edi) 2403*ebfedea0SLionel Sambuc movl 40(%esp),%ecx 2404*ebfedea0SLionel Sambuc movl %esi,52(%esp) 2405*ebfedea0SLionel Sambuc leal 16(%esi),%esi 2406*ebfedea0SLionel Sambuc movl %esi,32(%esp) 2407*ebfedea0SLionel Sambuc leal 16(%edi),%edi 2408*ebfedea0SLionel Sambuc movl %edi,36(%esp) 2409*ebfedea0SLionel Sambuc subl $16,%ecx 2410*ebfedea0SLionel Sambuc movl %ecx,40(%esp) 2411*ebfedea0SLionel Sambuc jnz .L025fast_dec_loop 2412*ebfedea0SLionel Sambuc movl 52(%esp),%edi 2413*ebfedea0SLionel Sambuc movl 48(%esp),%esi 2414*ebfedea0SLionel Sambuc movl (%edi),%eax 2415*ebfedea0SLionel Sambuc movl 4(%edi),%ebx 2416*ebfedea0SLionel Sambuc movl 8(%edi),%ecx 2417*ebfedea0SLionel Sambuc movl 12(%edi),%edx 2418*ebfedea0SLionel Sambuc movl %eax,(%esi) 2419*ebfedea0SLionel Sambuc movl %ebx,4(%esi) 2420*ebfedea0SLionel Sambuc movl %ecx,8(%esi) 2421*ebfedea0SLionel Sambuc movl %edx,12(%esi) 2422*ebfedea0SLionel Sambuc jmp .L026fast_dec_out 2423*ebfedea0SLionel Sambuc.align 16 2424*ebfedea0SLionel Sambuc.L024fast_dec_in_place: 2425*ebfedea0SLionel Sambuc.L027fast_dec_in_place_loop: 2426*ebfedea0SLionel Sambuc movl (%esi),%eax 2427*ebfedea0SLionel Sambuc movl 4(%esi),%ebx 2428*ebfedea0SLionel Sambuc movl 8(%esi),%ecx 2429*ebfedea0SLionel Sambuc movl 12(%esi),%edx 2430*ebfedea0SLionel Sambuc leal 60(%esp),%edi 2431*ebfedea0SLionel Sambuc movl %eax,(%edi) 2432*ebfedea0SLionel Sambuc movl %ebx,4(%edi) 2433*ebfedea0SLionel Sambuc movl %ecx,8(%edi) 2434*ebfedea0SLionel Sambuc movl %edx,12(%edi) 2435*ebfedea0SLionel Sambuc movl 44(%esp),%edi 2436*ebfedea0SLionel Sambuc call _x86_AES_decrypt 2437*ebfedea0SLionel Sambuc movl 48(%esp),%edi 2438*ebfedea0SLionel Sambuc movl 36(%esp),%esi 2439*ebfedea0SLionel Sambuc xorl (%edi),%eax 2440*ebfedea0SLionel Sambuc xorl 4(%edi),%ebx 2441*ebfedea0SLionel Sambuc xorl 8(%edi),%ecx 2442*ebfedea0SLionel Sambuc xorl 12(%edi),%edx 2443*ebfedea0SLionel Sambuc movl %eax,(%esi) 2444*ebfedea0SLionel Sambuc movl %ebx,4(%esi) 2445*ebfedea0SLionel Sambuc movl %ecx,8(%esi) 2446*ebfedea0SLionel Sambuc movl %edx,12(%esi) 2447*ebfedea0SLionel Sambuc leal 16(%esi),%esi 2448*ebfedea0SLionel Sambuc movl %esi,36(%esp) 2449*ebfedea0SLionel Sambuc leal 60(%esp),%esi 2450*ebfedea0SLionel Sambuc movl (%esi),%eax 2451*ebfedea0SLionel Sambuc movl 4(%esi),%ebx 2452*ebfedea0SLionel Sambuc movl 8(%esi),%ecx 2453*ebfedea0SLionel Sambuc movl 12(%esi),%edx 2454*ebfedea0SLionel Sambuc movl %eax,(%edi) 2455*ebfedea0SLionel Sambuc movl %ebx,4(%edi) 2456*ebfedea0SLionel Sambuc movl %ecx,8(%edi) 2457*ebfedea0SLionel Sambuc movl %edx,12(%edi) 2458*ebfedea0SLionel Sambuc movl 32(%esp),%esi 2459*ebfedea0SLionel Sambuc movl 40(%esp),%ecx 2460*ebfedea0SLionel Sambuc leal 16(%esi),%esi 2461*ebfedea0SLionel Sambuc movl %esi,32(%esp) 2462*ebfedea0SLionel Sambuc subl $16,%ecx 2463*ebfedea0SLionel Sambuc movl %ecx,40(%esp) 2464*ebfedea0SLionel Sambuc jnz .L027fast_dec_in_place_loop 2465*ebfedea0SLionel Sambuc.align 4 2466*ebfedea0SLionel Sambuc.L026fast_dec_out: 2467*ebfedea0SLionel Sambuc cmpl $0,316(%esp) 2468*ebfedea0SLionel Sambuc movl 44(%esp),%edi 2469*ebfedea0SLionel Sambuc je .L028skip_dzero 2470*ebfedea0SLionel Sambuc movl $60,%ecx 2471*ebfedea0SLionel Sambuc xorl %eax,%eax 2472*ebfedea0SLionel Sambuc.align 4 2473*ebfedea0SLionel Sambuc.long 2884892297 2474*ebfedea0SLionel Sambuc.L028skip_dzero: 2475*ebfedea0SLionel Sambuc movl 28(%esp),%esp 2476*ebfedea0SLionel Sambuc popfl 2477*ebfedea0SLionel Sambuc popl %edi 2478*ebfedea0SLionel Sambuc popl %esi 2479*ebfedea0SLionel Sambuc popl %ebx 2480*ebfedea0SLionel Sambuc popl %ebp 2481*ebfedea0SLionel Sambuc ret 2482*ebfedea0SLionel Sambuc pushfl 2483*ebfedea0SLionel Sambuc.align 16 2484*ebfedea0SLionel Sambuc.L015slow_way: 2485*ebfedea0SLionel Sambuc movl (%eax),%eax 2486*ebfedea0SLionel Sambuc movl 36(%esp),%edi 2487*ebfedea0SLionel Sambuc leal -80(%esp),%esi 2488*ebfedea0SLionel Sambuc andl $-64,%esi 2489*ebfedea0SLionel Sambuc leal -143(%edi),%ebx 2490*ebfedea0SLionel Sambuc subl %esi,%ebx 2491*ebfedea0SLionel Sambuc negl %ebx 2492*ebfedea0SLionel Sambuc andl $960,%ebx 2493*ebfedea0SLionel Sambuc subl %ebx,%esi 2494*ebfedea0SLionel Sambuc leal 768(%esi),%ebx 2495*ebfedea0SLionel Sambuc subl %ebp,%ebx 2496*ebfedea0SLionel Sambuc andl $768,%ebx 2497*ebfedea0SLionel Sambuc leal 2176(%ebp,%ebx,1),%ebp 2498*ebfedea0SLionel Sambuc leal 24(%esp),%edx 2499*ebfedea0SLionel Sambuc xchgl %esi,%esp 2500*ebfedea0SLionel Sambuc addl $4,%esp 2501*ebfedea0SLionel Sambuc movl %ebp,24(%esp) 2502*ebfedea0SLionel Sambuc movl %esi,28(%esp) 2503*ebfedea0SLionel Sambuc movl %eax,52(%esp) 2504*ebfedea0SLionel Sambuc movl (%edx),%eax 2505*ebfedea0SLionel Sambuc movl 4(%edx),%ebx 2506*ebfedea0SLionel Sambuc movl 16(%edx),%esi 2507*ebfedea0SLionel Sambuc movl 20(%edx),%edx 2508*ebfedea0SLionel Sambuc movl %eax,32(%esp) 2509*ebfedea0SLionel Sambuc movl %ebx,36(%esp) 2510*ebfedea0SLionel Sambuc movl %ecx,40(%esp) 2511*ebfedea0SLionel Sambuc movl %edi,44(%esp) 2512*ebfedea0SLionel Sambuc movl %esi,48(%esp) 2513*ebfedea0SLionel Sambuc movl %esi,%edi 2514*ebfedea0SLionel Sambuc movl %eax,%esi 2515*ebfedea0SLionel Sambuc cmpl $0,%edx 2516*ebfedea0SLionel Sambuc je .L029slow_decrypt 2517*ebfedea0SLionel Sambuc cmpl $16,%ecx 2518*ebfedea0SLionel Sambuc movl %ebx,%edx 2519*ebfedea0SLionel Sambuc jb .L030slow_enc_tail 2520*ebfedea0SLionel Sambuc btl $25,52(%esp) 2521*ebfedea0SLionel Sambuc jnc .L031slow_enc_x86 2522*ebfedea0SLionel Sambuc movq (%edi),%mm0 2523*ebfedea0SLionel Sambuc movq 8(%edi),%mm4 2524*ebfedea0SLionel Sambuc.align 16 2525*ebfedea0SLionel Sambuc.L032slow_enc_loop_sse: 2526*ebfedea0SLionel Sambuc pxor (%esi),%mm0 2527*ebfedea0SLionel Sambuc pxor 8(%esi),%mm4 2528*ebfedea0SLionel Sambuc movl 44(%esp),%edi 2529*ebfedea0SLionel Sambuc call _sse_AES_encrypt_compact 2530*ebfedea0SLionel Sambuc movl 32(%esp),%esi 2531*ebfedea0SLionel Sambuc movl 36(%esp),%edi 2532*ebfedea0SLionel Sambuc movl 40(%esp),%ecx 2533*ebfedea0SLionel Sambuc movq %mm0,(%edi) 2534*ebfedea0SLionel Sambuc movq %mm4,8(%edi) 2535*ebfedea0SLionel Sambuc leal 16(%esi),%esi 2536*ebfedea0SLionel Sambuc movl %esi,32(%esp) 2537*ebfedea0SLionel Sambuc leal 16(%edi),%edx 2538*ebfedea0SLionel Sambuc movl %edx,36(%esp) 2539*ebfedea0SLionel Sambuc subl $16,%ecx 2540*ebfedea0SLionel Sambuc cmpl $16,%ecx 2541*ebfedea0SLionel Sambuc movl %ecx,40(%esp) 2542*ebfedea0SLionel Sambuc jae .L032slow_enc_loop_sse 2543*ebfedea0SLionel Sambuc testl $15,%ecx 2544*ebfedea0SLionel Sambuc jnz .L030slow_enc_tail 2545*ebfedea0SLionel Sambuc movl 48(%esp),%esi 2546*ebfedea0SLionel Sambuc movq %mm0,(%esi) 2547*ebfedea0SLionel Sambuc movq %mm4,8(%esi) 2548*ebfedea0SLionel Sambuc emms 2549*ebfedea0SLionel Sambuc movl 28(%esp),%esp 2550*ebfedea0SLionel Sambuc popfl 2551*ebfedea0SLionel Sambuc popl %edi 2552*ebfedea0SLionel Sambuc popl %esi 2553*ebfedea0SLionel Sambuc popl %ebx 2554*ebfedea0SLionel Sambuc popl %ebp 2555*ebfedea0SLionel Sambuc ret 2556*ebfedea0SLionel Sambuc pushfl 2557*ebfedea0SLionel Sambuc.align 16 2558*ebfedea0SLionel Sambuc.L031slow_enc_x86: 2559*ebfedea0SLionel Sambuc movl (%edi),%eax 2560*ebfedea0SLionel Sambuc movl 4(%edi),%ebx 2561*ebfedea0SLionel Sambuc.align 4 2562*ebfedea0SLionel Sambuc.L033slow_enc_loop_x86: 2563*ebfedea0SLionel Sambuc movl 8(%edi),%ecx 2564*ebfedea0SLionel Sambuc movl 12(%edi),%edx 2565*ebfedea0SLionel Sambuc xorl (%esi),%eax 2566*ebfedea0SLionel Sambuc xorl 4(%esi),%ebx 2567*ebfedea0SLionel Sambuc xorl 8(%esi),%ecx 2568*ebfedea0SLionel Sambuc xorl 12(%esi),%edx 2569*ebfedea0SLionel Sambuc movl 44(%esp),%edi 2570*ebfedea0SLionel Sambuc call _x86_AES_encrypt_compact 2571*ebfedea0SLionel Sambuc movl 32(%esp),%esi 2572*ebfedea0SLionel Sambuc movl 36(%esp),%edi 2573*ebfedea0SLionel Sambuc movl %eax,(%edi) 2574*ebfedea0SLionel Sambuc movl %ebx,4(%edi) 2575*ebfedea0SLionel Sambuc movl %ecx,8(%edi) 2576*ebfedea0SLionel Sambuc movl %edx,12(%edi) 2577*ebfedea0SLionel Sambuc movl 40(%esp),%ecx 2578*ebfedea0SLionel Sambuc leal 16(%esi),%esi 2579*ebfedea0SLionel Sambuc movl %esi,32(%esp) 2580*ebfedea0SLionel Sambuc leal 16(%edi),%edx 2581*ebfedea0SLionel Sambuc movl %edx,36(%esp) 2582*ebfedea0SLionel Sambuc subl $16,%ecx 2583*ebfedea0SLionel Sambuc cmpl $16,%ecx 2584*ebfedea0SLionel Sambuc movl %ecx,40(%esp) 2585*ebfedea0SLionel Sambuc jae .L033slow_enc_loop_x86 2586*ebfedea0SLionel Sambuc testl $15,%ecx 2587*ebfedea0SLionel Sambuc jnz .L030slow_enc_tail 2588*ebfedea0SLionel Sambuc movl 48(%esp),%esi 2589*ebfedea0SLionel Sambuc movl 8(%edi),%ecx 2590*ebfedea0SLionel Sambuc movl 12(%edi),%edx 2591*ebfedea0SLionel Sambuc movl %eax,(%esi) 2592*ebfedea0SLionel Sambuc movl %ebx,4(%esi) 2593*ebfedea0SLionel Sambuc movl %ecx,8(%esi) 2594*ebfedea0SLionel Sambuc movl %edx,12(%esi) 2595*ebfedea0SLionel Sambuc movl 28(%esp),%esp 2596*ebfedea0SLionel Sambuc popfl 2597*ebfedea0SLionel Sambuc popl %edi 2598*ebfedea0SLionel Sambuc popl %esi 2599*ebfedea0SLionel Sambuc popl %ebx 2600*ebfedea0SLionel Sambuc popl %ebp 2601*ebfedea0SLionel Sambuc ret 2602*ebfedea0SLionel Sambuc pushfl 2603*ebfedea0SLionel Sambuc.align 16 2604*ebfedea0SLionel Sambuc.L030slow_enc_tail: 2605*ebfedea0SLionel Sambuc emms 2606*ebfedea0SLionel Sambuc movl %edx,%edi 2607*ebfedea0SLionel Sambuc movl $16,%ebx 2608*ebfedea0SLionel Sambuc subl %ecx,%ebx 2609*ebfedea0SLionel Sambuc cmpl %esi,%edi 2610*ebfedea0SLionel Sambuc je .L034enc_in_place 2611*ebfedea0SLionel Sambuc.align 4 2612*ebfedea0SLionel Sambuc.long 2767451785 2613*ebfedea0SLionel Sambuc jmp .L035enc_skip_in_place 2614*ebfedea0SLionel Sambuc.L034enc_in_place: 2615*ebfedea0SLionel Sambuc leal (%edi,%ecx,1),%edi 2616*ebfedea0SLionel Sambuc.L035enc_skip_in_place: 2617*ebfedea0SLionel Sambuc movl %ebx,%ecx 2618*ebfedea0SLionel Sambuc xorl %eax,%eax 2619*ebfedea0SLionel Sambuc.align 4 2620*ebfedea0SLionel Sambuc.long 2868115081 2621*ebfedea0SLionel Sambuc movl 48(%esp),%edi 2622*ebfedea0SLionel Sambuc movl %edx,%esi 2623*ebfedea0SLionel Sambuc movl (%edi),%eax 2624*ebfedea0SLionel Sambuc movl 4(%edi),%ebx 2625*ebfedea0SLionel Sambuc movl $16,40(%esp) 2626*ebfedea0SLionel Sambuc jmp .L033slow_enc_loop_x86 2627*ebfedea0SLionel Sambuc.align 16 2628*ebfedea0SLionel Sambuc.L029slow_decrypt: 2629*ebfedea0SLionel Sambuc btl $25,52(%esp) 2630*ebfedea0SLionel Sambuc jnc .L036slow_dec_loop_x86 2631*ebfedea0SLionel Sambuc.align 4 2632*ebfedea0SLionel Sambuc.L037slow_dec_loop_sse: 2633*ebfedea0SLionel Sambuc movq (%esi),%mm0 2634*ebfedea0SLionel Sambuc movq 8(%esi),%mm4 2635*ebfedea0SLionel Sambuc movl 44(%esp),%edi 2636*ebfedea0SLionel Sambuc call _sse_AES_decrypt_compact 2637*ebfedea0SLionel Sambuc movl 32(%esp),%esi 2638*ebfedea0SLionel Sambuc leal 60(%esp),%eax 2639*ebfedea0SLionel Sambuc movl 36(%esp),%ebx 2640*ebfedea0SLionel Sambuc movl 40(%esp),%ecx 2641*ebfedea0SLionel Sambuc movl 48(%esp),%edi 2642*ebfedea0SLionel Sambuc movq (%esi),%mm1 2643*ebfedea0SLionel Sambuc movq 8(%esi),%mm5 2644*ebfedea0SLionel Sambuc pxor (%edi),%mm0 2645*ebfedea0SLionel Sambuc pxor 8(%edi),%mm4 2646*ebfedea0SLionel Sambuc movq %mm1,(%edi) 2647*ebfedea0SLionel Sambuc movq %mm5,8(%edi) 2648*ebfedea0SLionel Sambuc subl $16,%ecx 2649*ebfedea0SLionel Sambuc jc .L038slow_dec_partial_sse 2650*ebfedea0SLionel Sambuc movq %mm0,(%ebx) 2651*ebfedea0SLionel Sambuc movq %mm4,8(%ebx) 2652*ebfedea0SLionel Sambuc leal 16(%ebx),%ebx 2653*ebfedea0SLionel Sambuc movl %ebx,36(%esp) 2654*ebfedea0SLionel Sambuc leal 16(%esi),%esi 2655*ebfedea0SLionel Sambuc movl %esi,32(%esp) 2656*ebfedea0SLionel Sambuc movl %ecx,40(%esp) 2657*ebfedea0SLionel Sambuc jnz .L037slow_dec_loop_sse 2658*ebfedea0SLionel Sambuc emms 2659*ebfedea0SLionel Sambuc movl 28(%esp),%esp 2660*ebfedea0SLionel Sambuc popfl 2661*ebfedea0SLionel Sambuc popl %edi 2662*ebfedea0SLionel Sambuc popl %esi 2663*ebfedea0SLionel Sambuc popl %ebx 2664*ebfedea0SLionel Sambuc popl %ebp 2665*ebfedea0SLionel Sambuc ret 2666*ebfedea0SLionel Sambuc pushfl 2667*ebfedea0SLionel Sambuc.align 16 2668*ebfedea0SLionel Sambuc.L038slow_dec_partial_sse: 2669*ebfedea0SLionel Sambuc movq %mm0,(%eax) 2670*ebfedea0SLionel Sambuc movq %mm4,8(%eax) 2671*ebfedea0SLionel Sambuc emms 2672*ebfedea0SLionel Sambuc addl $16,%ecx 2673*ebfedea0SLionel Sambuc movl %ebx,%edi 2674*ebfedea0SLionel Sambuc movl %eax,%esi 2675*ebfedea0SLionel Sambuc.align 4 2676*ebfedea0SLionel Sambuc.long 2767451785 2677*ebfedea0SLionel Sambuc movl 28(%esp),%esp 2678*ebfedea0SLionel Sambuc popfl 2679*ebfedea0SLionel Sambuc popl %edi 2680*ebfedea0SLionel Sambuc popl %esi 2681*ebfedea0SLionel Sambuc popl %ebx 2682*ebfedea0SLionel Sambuc popl %ebp 2683*ebfedea0SLionel Sambuc ret 2684*ebfedea0SLionel Sambuc pushfl 2685*ebfedea0SLionel Sambuc.align 16 2686*ebfedea0SLionel Sambuc.L036slow_dec_loop_x86: 2687*ebfedea0SLionel Sambuc movl (%esi),%eax 2688*ebfedea0SLionel Sambuc movl 4(%esi),%ebx 2689*ebfedea0SLionel Sambuc movl 8(%esi),%ecx 2690*ebfedea0SLionel Sambuc movl 12(%esi),%edx 2691*ebfedea0SLionel Sambuc leal 60(%esp),%edi 2692*ebfedea0SLionel Sambuc movl %eax,(%edi) 2693*ebfedea0SLionel Sambuc movl %ebx,4(%edi) 2694*ebfedea0SLionel Sambuc movl %ecx,8(%edi) 2695*ebfedea0SLionel Sambuc movl %edx,12(%edi) 2696*ebfedea0SLionel Sambuc movl 44(%esp),%edi 2697*ebfedea0SLionel Sambuc call _x86_AES_decrypt_compact 2698*ebfedea0SLionel Sambuc movl 48(%esp),%edi 2699*ebfedea0SLionel Sambuc movl 40(%esp),%esi 2700*ebfedea0SLionel Sambuc xorl (%edi),%eax 2701*ebfedea0SLionel Sambuc xorl 4(%edi),%ebx 2702*ebfedea0SLionel Sambuc xorl 8(%edi),%ecx 2703*ebfedea0SLionel Sambuc xorl 12(%edi),%edx 2704*ebfedea0SLionel Sambuc subl $16,%esi 2705*ebfedea0SLionel Sambuc jc .L039slow_dec_partial_x86 2706*ebfedea0SLionel Sambuc movl %esi,40(%esp) 2707*ebfedea0SLionel Sambuc movl 36(%esp),%esi 2708*ebfedea0SLionel Sambuc movl %eax,(%esi) 2709*ebfedea0SLionel Sambuc movl %ebx,4(%esi) 2710*ebfedea0SLionel Sambuc movl %ecx,8(%esi) 2711*ebfedea0SLionel Sambuc movl %edx,12(%esi) 2712*ebfedea0SLionel Sambuc leal 16(%esi),%esi 2713*ebfedea0SLionel Sambuc movl %esi,36(%esp) 2714*ebfedea0SLionel Sambuc leal 60(%esp),%esi 2715*ebfedea0SLionel Sambuc movl (%esi),%eax 2716*ebfedea0SLionel Sambuc movl 4(%esi),%ebx 2717*ebfedea0SLionel Sambuc movl 8(%esi),%ecx 2718*ebfedea0SLionel Sambuc movl 12(%esi),%edx 2719*ebfedea0SLionel Sambuc movl %eax,(%edi) 2720*ebfedea0SLionel Sambuc movl %ebx,4(%edi) 2721*ebfedea0SLionel Sambuc movl %ecx,8(%edi) 2722*ebfedea0SLionel Sambuc movl %edx,12(%edi) 2723*ebfedea0SLionel Sambuc movl 32(%esp),%esi 2724*ebfedea0SLionel Sambuc leal 16(%esi),%esi 2725*ebfedea0SLionel Sambuc movl %esi,32(%esp) 2726*ebfedea0SLionel Sambuc jnz .L036slow_dec_loop_x86 2727*ebfedea0SLionel Sambuc movl 28(%esp),%esp 2728*ebfedea0SLionel Sambuc popfl 2729*ebfedea0SLionel Sambuc popl %edi 2730*ebfedea0SLionel Sambuc popl %esi 2731*ebfedea0SLionel Sambuc popl %ebx 2732*ebfedea0SLionel Sambuc popl %ebp 2733*ebfedea0SLionel Sambuc ret 2734*ebfedea0SLionel Sambuc pushfl 2735*ebfedea0SLionel Sambuc.align 16 2736*ebfedea0SLionel Sambuc.L039slow_dec_partial_x86: 2737*ebfedea0SLionel Sambuc leal 60(%esp),%esi 2738*ebfedea0SLionel Sambuc movl %eax,(%esi) 2739*ebfedea0SLionel Sambuc movl %ebx,4(%esi) 2740*ebfedea0SLionel Sambuc movl %ecx,8(%esi) 2741*ebfedea0SLionel Sambuc movl %edx,12(%esi) 2742*ebfedea0SLionel Sambuc movl 32(%esp),%esi 2743*ebfedea0SLionel Sambuc movl (%esi),%eax 2744*ebfedea0SLionel Sambuc movl 4(%esi),%ebx 2745*ebfedea0SLionel Sambuc movl 8(%esi),%ecx 2746*ebfedea0SLionel Sambuc movl 12(%esi),%edx 2747*ebfedea0SLionel Sambuc movl %eax,(%edi) 2748*ebfedea0SLionel Sambuc movl %ebx,4(%edi) 2749*ebfedea0SLionel Sambuc movl %ecx,8(%edi) 2750*ebfedea0SLionel Sambuc movl %edx,12(%edi) 2751*ebfedea0SLionel Sambuc movl 40(%esp),%ecx 2752*ebfedea0SLionel Sambuc movl 36(%esp),%edi 2753*ebfedea0SLionel Sambuc leal 60(%esp),%esi 2754*ebfedea0SLionel Sambuc.align 4 2755*ebfedea0SLionel Sambuc.long 2767451785 2756*ebfedea0SLionel Sambuc movl 28(%esp),%esp 2757*ebfedea0SLionel Sambuc popfl 2758*ebfedea0SLionel Sambuc popl %edi 2759*ebfedea0SLionel Sambuc popl %esi 2760*ebfedea0SLionel Sambuc popl %ebx 2761*ebfedea0SLionel Sambuc popl %ebp 2762*ebfedea0SLionel Sambuc ret 2763*ebfedea0SLionel Sambuc.size AES_cbc_encrypt,.-.L_AES_cbc_encrypt_begin 2764*ebfedea0SLionel Sambuc.type _x86_AES_set_encrypt_key,@function 2765*ebfedea0SLionel Sambuc.align 16 2766*ebfedea0SLionel Sambuc_x86_AES_set_encrypt_key: 2767*ebfedea0SLionel Sambuc pushl %ebp 2768*ebfedea0SLionel Sambuc pushl %ebx 2769*ebfedea0SLionel Sambuc pushl %esi 2770*ebfedea0SLionel Sambuc pushl %edi 2771*ebfedea0SLionel Sambuc movl 24(%esp),%esi 2772*ebfedea0SLionel Sambuc movl 32(%esp),%edi 2773*ebfedea0SLionel Sambuc testl $-1,%esi 2774*ebfedea0SLionel Sambuc jz .L040badpointer 2775*ebfedea0SLionel Sambuc testl $-1,%edi 2776*ebfedea0SLionel Sambuc jz .L040badpointer 2777*ebfedea0SLionel Sambuc call .L041pic_point 2778*ebfedea0SLionel Sambuc.L041pic_point: 2779*ebfedea0SLionel Sambuc popl %ebp 2780*ebfedea0SLionel Sambuc leal .LAES_Te-.L041pic_point(%ebp),%ebp 2781*ebfedea0SLionel Sambuc leal 2176(%ebp),%ebp 2782*ebfedea0SLionel Sambuc movl -128(%ebp),%eax 2783*ebfedea0SLionel Sambuc movl -96(%ebp),%ebx 2784*ebfedea0SLionel Sambuc movl -64(%ebp),%ecx 2785*ebfedea0SLionel Sambuc movl -32(%ebp),%edx 2786*ebfedea0SLionel Sambuc movl (%ebp),%eax 2787*ebfedea0SLionel Sambuc movl 32(%ebp),%ebx 2788*ebfedea0SLionel Sambuc movl 64(%ebp),%ecx 2789*ebfedea0SLionel Sambuc movl 96(%ebp),%edx 2790*ebfedea0SLionel Sambuc movl 28(%esp),%ecx 2791*ebfedea0SLionel Sambuc cmpl $128,%ecx 2792*ebfedea0SLionel Sambuc je .L04210rounds 2793*ebfedea0SLionel Sambuc cmpl $192,%ecx 2794*ebfedea0SLionel Sambuc je .L04312rounds 2795*ebfedea0SLionel Sambuc cmpl $256,%ecx 2796*ebfedea0SLionel Sambuc je .L04414rounds 2797*ebfedea0SLionel Sambuc movl $-2,%eax 2798*ebfedea0SLionel Sambuc jmp .L045exit 2799*ebfedea0SLionel Sambuc.L04210rounds: 2800*ebfedea0SLionel Sambuc movl (%esi),%eax 2801*ebfedea0SLionel Sambuc movl 4(%esi),%ebx 2802*ebfedea0SLionel Sambuc movl 8(%esi),%ecx 2803*ebfedea0SLionel Sambuc movl 12(%esi),%edx 2804*ebfedea0SLionel Sambuc movl %eax,(%edi) 2805*ebfedea0SLionel Sambuc movl %ebx,4(%edi) 2806*ebfedea0SLionel Sambuc movl %ecx,8(%edi) 2807*ebfedea0SLionel Sambuc movl %edx,12(%edi) 2808*ebfedea0SLionel Sambuc xorl %ecx,%ecx 2809*ebfedea0SLionel Sambuc jmp .L04610shortcut 2810*ebfedea0SLionel Sambuc.align 4 2811*ebfedea0SLionel Sambuc.L04710loop: 2812*ebfedea0SLionel Sambuc movl (%edi),%eax 2813*ebfedea0SLionel Sambuc movl 12(%edi),%edx 2814*ebfedea0SLionel Sambuc.L04610shortcut: 2815*ebfedea0SLionel Sambuc movzbl %dl,%esi 2816*ebfedea0SLionel Sambuc movzbl -128(%ebp,%esi,1),%ebx 2817*ebfedea0SLionel Sambuc movzbl %dh,%esi 2818*ebfedea0SLionel Sambuc shll $24,%ebx 2819*ebfedea0SLionel Sambuc xorl %ebx,%eax 2820*ebfedea0SLionel Sambuc movzbl -128(%ebp,%esi,1),%ebx 2821*ebfedea0SLionel Sambuc shrl $16,%edx 2822*ebfedea0SLionel Sambuc movzbl %dl,%esi 2823*ebfedea0SLionel Sambuc xorl %ebx,%eax 2824*ebfedea0SLionel Sambuc movzbl -128(%ebp,%esi,1),%ebx 2825*ebfedea0SLionel Sambuc movzbl %dh,%esi 2826*ebfedea0SLionel Sambuc shll $8,%ebx 2827*ebfedea0SLionel Sambuc xorl %ebx,%eax 2828*ebfedea0SLionel Sambuc movzbl -128(%ebp,%esi,1),%ebx 2829*ebfedea0SLionel Sambuc shll $16,%ebx 2830*ebfedea0SLionel Sambuc xorl %ebx,%eax 2831*ebfedea0SLionel Sambuc xorl 896(%ebp,%ecx,4),%eax 2832*ebfedea0SLionel Sambuc movl %eax,16(%edi) 2833*ebfedea0SLionel Sambuc xorl 4(%edi),%eax 2834*ebfedea0SLionel Sambuc movl %eax,20(%edi) 2835*ebfedea0SLionel Sambuc xorl 8(%edi),%eax 2836*ebfedea0SLionel Sambuc movl %eax,24(%edi) 2837*ebfedea0SLionel Sambuc xorl 12(%edi),%eax 2838*ebfedea0SLionel Sambuc movl %eax,28(%edi) 2839*ebfedea0SLionel Sambuc incl %ecx 2840*ebfedea0SLionel Sambuc addl $16,%edi 2841*ebfedea0SLionel Sambuc cmpl $10,%ecx 2842*ebfedea0SLionel Sambuc jl .L04710loop 2843*ebfedea0SLionel Sambuc movl $10,80(%edi) 2844*ebfedea0SLionel Sambuc xorl %eax,%eax 2845*ebfedea0SLionel Sambuc jmp .L045exit 2846*ebfedea0SLionel Sambuc.L04312rounds: 2847*ebfedea0SLionel Sambuc movl (%esi),%eax 2848*ebfedea0SLionel Sambuc movl 4(%esi),%ebx 2849*ebfedea0SLionel Sambuc movl 8(%esi),%ecx 2850*ebfedea0SLionel Sambuc movl 12(%esi),%edx 2851*ebfedea0SLionel Sambuc movl %eax,(%edi) 2852*ebfedea0SLionel Sambuc movl %ebx,4(%edi) 2853*ebfedea0SLionel Sambuc movl %ecx,8(%edi) 2854*ebfedea0SLionel Sambuc movl %edx,12(%edi) 2855*ebfedea0SLionel Sambuc movl 16(%esi),%ecx 2856*ebfedea0SLionel Sambuc movl 20(%esi),%edx 2857*ebfedea0SLionel Sambuc movl %ecx,16(%edi) 2858*ebfedea0SLionel Sambuc movl %edx,20(%edi) 2859*ebfedea0SLionel Sambuc xorl %ecx,%ecx 2860*ebfedea0SLionel Sambuc jmp .L04812shortcut 2861*ebfedea0SLionel Sambuc.align 4 2862*ebfedea0SLionel Sambuc.L04912loop: 2863*ebfedea0SLionel Sambuc movl (%edi),%eax 2864*ebfedea0SLionel Sambuc movl 20(%edi),%edx 2865*ebfedea0SLionel Sambuc.L04812shortcut: 2866*ebfedea0SLionel Sambuc movzbl %dl,%esi 2867*ebfedea0SLionel Sambuc movzbl -128(%ebp,%esi,1),%ebx 2868*ebfedea0SLionel Sambuc movzbl %dh,%esi 2869*ebfedea0SLionel Sambuc shll $24,%ebx 2870*ebfedea0SLionel Sambuc xorl %ebx,%eax 2871*ebfedea0SLionel Sambuc movzbl -128(%ebp,%esi,1),%ebx 2872*ebfedea0SLionel Sambuc shrl $16,%edx 2873*ebfedea0SLionel Sambuc movzbl %dl,%esi 2874*ebfedea0SLionel Sambuc xorl %ebx,%eax 2875*ebfedea0SLionel Sambuc movzbl -128(%ebp,%esi,1),%ebx 2876*ebfedea0SLionel Sambuc movzbl %dh,%esi 2877*ebfedea0SLionel Sambuc shll $8,%ebx 2878*ebfedea0SLionel Sambuc xorl %ebx,%eax 2879*ebfedea0SLionel Sambuc movzbl -128(%ebp,%esi,1),%ebx 2880*ebfedea0SLionel Sambuc shll $16,%ebx 2881*ebfedea0SLionel Sambuc xorl %ebx,%eax 2882*ebfedea0SLionel Sambuc xorl 896(%ebp,%ecx,4),%eax 2883*ebfedea0SLionel Sambuc movl %eax,24(%edi) 2884*ebfedea0SLionel Sambuc xorl 4(%edi),%eax 2885*ebfedea0SLionel Sambuc movl %eax,28(%edi) 2886*ebfedea0SLionel Sambuc xorl 8(%edi),%eax 2887*ebfedea0SLionel Sambuc movl %eax,32(%edi) 2888*ebfedea0SLionel Sambuc xorl 12(%edi),%eax 2889*ebfedea0SLionel Sambuc movl %eax,36(%edi) 2890*ebfedea0SLionel Sambuc cmpl $7,%ecx 2891*ebfedea0SLionel Sambuc je .L05012break 2892*ebfedea0SLionel Sambuc incl %ecx 2893*ebfedea0SLionel Sambuc xorl 16(%edi),%eax 2894*ebfedea0SLionel Sambuc movl %eax,40(%edi) 2895*ebfedea0SLionel Sambuc xorl 20(%edi),%eax 2896*ebfedea0SLionel Sambuc movl %eax,44(%edi) 2897*ebfedea0SLionel Sambuc addl $24,%edi 2898*ebfedea0SLionel Sambuc jmp .L04912loop 2899*ebfedea0SLionel Sambuc.L05012break: 2900*ebfedea0SLionel Sambuc movl $12,72(%edi) 2901*ebfedea0SLionel Sambuc xorl %eax,%eax 2902*ebfedea0SLionel Sambuc jmp .L045exit 2903*ebfedea0SLionel Sambuc.L04414rounds: 2904*ebfedea0SLionel Sambuc movl (%esi),%eax 2905*ebfedea0SLionel Sambuc movl 4(%esi),%ebx 2906*ebfedea0SLionel Sambuc movl 8(%esi),%ecx 2907*ebfedea0SLionel Sambuc movl 12(%esi),%edx 2908*ebfedea0SLionel Sambuc movl %eax,(%edi) 2909*ebfedea0SLionel Sambuc movl %ebx,4(%edi) 2910*ebfedea0SLionel Sambuc movl %ecx,8(%edi) 2911*ebfedea0SLionel Sambuc movl %edx,12(%edi) 2912*ebfedea0SLionel Sambuc movl 16(%esi),%eax 2913*ebfedea0SLionel Sambuc movl 20(%esi),%ebx 2914*ebfedea0SLionel Sambuc movl 24(%esi),%ecx 2915*ebfedea0SLionel Sambuc movl 28(%esi),%edx 2916*ebfedea0SLionel Sambuc movl %eax,16(%edi) 2917*ebfedea0SLionel Sambuc movl %ebx,20(%edi) 2918*ebfedea0SLionel Sambuc movl %ecx,24(%edi) 2919*ebfedea0SLionel Sambuc movl %edx,28(%edi) 2920*ebfedea0SLionel Sambuc xorl %ecx,%ecx 2921*ebfedea0SLionel Sambuc jmp .L05114shortcut 2922*ebfedea0SLionel Sambuc.align 4 2923*ebfedea0SLionel Sambuc.L05214loop: 2924*ebfedea0SLionel Sambuc movl 28(%edi),%edx 2925*ebfedea0SLionel Sambuc.L05114shortcut: 2926*ebfedea0SLionel Sambuc movl (%edi),%eax 2927*ebfedea0SLionel Sambuc movzbl %dl,%esi 2928*ebfedea0SLionel Sambuc movzbl -128(%ebp,%esi,1),%ebx 2929*ebfedea0SLionel Sambuc movzbl %dh,%esi 2930*ebfedea0SLionel Sambuc shll $24,%ebx 2931*ebfedea0SLionel Sambuc xorl %ebx,%eax 2932*ebfedea0SLionel Sambuc movzbl -128(%ebp,%esi,1),%ebx 2933*ebfedea0SLionel Sambuc shrl $16,%edx 2934*ebfedea0SLionel Sambuc movzbl %dl,%esi 2935*ebfedea0SLionel Sambuc xorl %ebx,%eax 2936*ebfedea0SLionel Sambuc movzbl -128(%ebp,%esi,1),%ebx 2937*ebfedea0SLionel Sambuc movzbl %dh,%esi 2938*ebfedea0SLionel Sambuc shll $8,%ebx 2939*ebfedea0SLionel Sambuc xorl %ebx,%eax 2940*ebfedea0SLionel Sambuc movzbl -128(%ebp,%esi,1),%ebx 2941*ebfedea0SLionel Sambuc shll $16,%ebx 2942*ebfedea0SLionel Sambuc xorl %ebx,%eax 2943*ebfedea0SLionel Sambuc xorl 896(%ebp,%ecx,4),%eax 2944*ebfedea0SLionel Sambuc movl %eax,32(%edi) 2945*ebfedea0SLionel Sambuc xorl 4(%edi),%eax 2946*ebfedea0SLionel Sambuc movl %eax,36(%edi) 2947*ebfedea0SLionel Sambuc xorl 8(%edi),%eax 2948*ebfedea0SLionel Sambuc movl %eax,40(%edi) 2949*ebfedea0SLionel Sambuc xorl 12(%edi),%eax 2950*ebfedea0SLionel Sambuc movl %eax,44(%edi) 2951*ebfedea0SLionel Sambuc cmpl $6,%ecx 2952*ebfedea0SLionel Sambuc je .L05314break 2953*ebfedea0SLionel Sambuc incl %ecx 2954*ebfedea0SLionel Sambuc movl %eax,%edx 2955*ebfedea0SLionel Sambuc movl 16(%edi),%eax 2956*ebfedea0SLionel Sambuc movzbl %dl,%esi 2957*ebfedea0SLionel Sambuc movzbl -128(%ebp,%esi,1),%ebx 2958*ebfedea0SLionel Sambuc movzbl %dh,%esi 2959*ebfedea0SLionel Sambuc xorl %ebx,%eax 2960*ebfedea0SLionel Sambuc movzbl -128(%ebp,%esi,1),%ebx 2961*ebfedea0SLionel Sambuc shrl $16,%edx 2962*ebfedea0SLionel Sambuc shll $8,%ebx 2963*ebfedea0SLionel Sambuc movzbl %dl,%esi 2964*ebfedea0SLionel Sambuc xorl %ebx,%eax 2965*ebfedea0SLionel Sambuc movzbl -128(%ebp,%esi,1),%ebx 2966*ebfedea0SLionel Sambuc movzbl %dh,%esi 2967*ebfedea0SLionel Sambuc shll $16,%ebx 2968*ebfedea0SLionel Sambuc xorl %ebx,%eax 2969*ebfedea0SLionel Sambuc movzbl -128(%ebp,%esi,1),%ebx 2970*ebfedea0SLionel Sambuc shll $24,%ebx 2971*ebfedea0SLionel Sambuc xorl %ebx,%eax 2972*ebfedea0SLionel Sambuc movl %eax,48(%edi) 2973*ebfedea0SLionel Sambuc xorl 20(%edi),%eax 2974*ebfedea0SLionel Sambuc movl %eax,52(%edi) 2975*ebfedea0SLionel Sambuc xorl 24(%edi),%eax 2976*ebfedea0SLionel Sambuc movl %eax,56(%edi) 2977*ebfedea0SLionel Sambuc xorl 28(%edi),%eax 2978*ebfedea0SLionel Sambuc movl %eax,60(%edi) 2979*ebfedea0SLionel Sambuc addl $32,%edi 2980*ebfedea0SLionel Sambuc jmp .L05214loop 2981*ebfedea0SLionel Sambuc.L05314break: 2982*ebfedea0SLionel Sambuc movl $14,48(%edi) 2983*ebfedea0SLionel Sambuc xorl %eax,%eax 2984*ebfedea0SLionel Sambuc jmp .L045exit 2985*ebfedea0SLionel Sambuc.L040badpointer: 2986*ebfedea0SLionel Sambuc movl $-1,%eax 2987*ebfedea0SLionel Sambuc.L045exit: 2988*ebfedea0SLionel Sambuc popl %edi 2989*ebfedea0SLionel Sambuc popl %esi 2990*ebfedea0SLionel Sambuc popl %ebx 2991*ebfedea0SLionel Sambuc popl %ebp 2992*ebfedea0SLionel Sambuc ret 2993*ebfedea0SLionel Sambuc.size _x86_AES_set_encrypt_key,.-_x86_AES_set_encrypt_key 2994*ebfedea0SLionel Sambuc.globl private_AES_set_encrypt_key 2995*ebfedea0SLionel Sambuc.type private_AES_set_encrypt_key,@function 2996*ebfedea0SLionel Sambuc.align 16 2997*ebfedea0SLionel Sambucprivate_AES_set_encrypt_key: 2998*ebfedea0SLionel Sambuc.L_private_AES_set_encrypt_key_begin: 2999*ebfedea0SLionel Sambuc call _x86_AES_set_encrypt_key 3000*ebfedea0SLionel Sambuc ret 3001*ebfedea0SLionel Sambuc.size private_AES_set_encrypt_key,.-.L_private_AES_set_encrypt_key_begin 3002*ebfedea0SLionel Sambuc.globl private_AES_set_decrypt_key 3003*ebfedea0SLionel Sambuc.type private_AES_set_decrypt_key,@function 3004*ebfedea0SLionel Sambuc.align 16 3005*ebfedea0SLionel Sambucprivate_AES_set_decrypt_key: 3006*ebfedea0SLionel Sambuc.L_private_AES_set_decrypt_key_begin: 3007*ebfedea0SLionel Sambuc call _x86_AES_set_encrypt_key 3008*ebfedea0SLionel Sambuc cmpl $0,%eax 3009*ebfedea0SLionel Sambuc je .L054proceed 3010*ebfedea0SLionel Sambuc ret 3011*ebfedea0SLionel Sambuc.L054proceed: 3012*ebfedea0SLionel Sambuc pushl %ebp 3013*ebfedea0SLionel Sambuc pushl %ebx 3014*ebfedea0SLionel Sambuc pushl %esi 3015*ebfedea0SLionel Sambuc pushl %edi 3016*ebfedea0SLionel Sambuc movl 28(%esp),%esi 3017*ebfedea0SLionel Sambuc movl 240(%esi),%ecx 3018*ebfedea0SLionel Sambuc leal (,%ecx,4),%ecx 3019*ebfedea0SLionel Sambuc leal (%esi,%ecx,4),%edi 3020*ebfedea0SLionel Sambuc.align 4 3021*ebfedea0SLionel Sambuc.L055invert: 3022*ebfedea0SLionel Sambuc movl (%esi),%eax 3023*ebfedea0SLionel Sambuc movl 4(%esi),%ebx 3024*ebfedea0SLionel Sambuc movl (%edi),%ecx 3025*ebfedea0SLionel Sambuc movl 4(%edi),%edx 3026*ebfedea0SLionel Sambuc movl %eax,(%edi) 3027*ebfedea0SLionel Sambuc movl %ebx,4(%edi) 3028*ebfedea0SLionel Sambuc movl %ecx,(%esi) 3029*ebfedea0SLionel Sambuc movl %edx,4(%esi) 3030*ebfedea0SLionel Sambuc movl 8(%esi),%eax 3031*ebfedea0SLionel Sambuc movl 12(%esi),%ebx 3032*ebfedea0SLionel Sambuc movl 8(%edi),%ecx 3033*ebfedea0SLionel Sambuc movl 12(%edi),%edx 3034*ebfedea0SLionel Sambuc movl %eax,8(%edi) 3035*ebfedea0SLionel Sambuc movl %ebx,12(%edi) 3036*ebfedea0SLionel Sambuc movl %ecx,8(%esi) 3037*ebfedea0SLionel Sambuc movl %edx,12(%esi) 3038*ebfedea0SLionel Sambuc addl $16,%esi 3039*ebfedea0SLionel Sambuc subl $16,%edi 3040*ebfedea0SLionel Sambuc cmpl %edi,%esi 3041*ebfedea0SLionel Sambuc jne .L055invert 3042*ebfedea0SLionel Sambuc movl 28(%esp),%edi 3043*ebfedea0SLionel Sambuc movl 240(%edi),%esi 3044*ebfedea0SLionel Sambuc leal -2(%esi,%esi,1),%esi 3045*ebfedea0SLionel Sambuc leal (%edi,%esi,8),%esi 3046*ebfedea0SLionel Sambuc movl %esi,28(%esp) 3047*ebfedea0SLionel Sambuc movl 16(%edi),%eax 3048*ebfedea0SLionel Sambuc.align 4 3049*ebfedea0SLionel Sambuc.L056permute: 3050*ebfedea0SLionel Sambuc addl $16,%edi 3051*ebfedea0SLionel Sambuc movl %eax,%esi 3052*ebfedea0SLionel Sambuc andl $2155905152,%esi 3053*ebfedea0SLionel Sambuc movl %esi,%ebp 3054*ebfedea0SLionel Sambuc shrl $7,%ebp 3055*ebfedea0SLionel Sambuc leal (%eax,%eax,1),%ebx 3056*ebfedea0SLionel Sambuc subl %ebp,%esi 3057*ebfedea0SLionel Sambuc andl $4278124286,%ebx 3058*ebfedea0SLionel Sambuc andl $454761243,%esi 3059*ebfedea0SLionel Sambuc xorl %ebx,%esi 3060*ebfedea0SLionel Sambuc movl %esi,%ebx 3061*ebfedea0SLionel Sambuc andl $2155905152,%esi 3062*ebfedea0SLionel Sambuc movl %esi,%ebp 3063*ebfedea0SLionel Sambuc shrl $7,%ebp 3064*ebfedea0SLionel Sambuc leal (%ebx,%ebx,1),%ecx 3065*ebfedea0SLionel Sambuc subl %ebp,%esi 3066*ebfedea0SLionel Sambuc andl $4278124286,%ecx 3067*ebfedea0SLionel Sambuc andl $454761243,%esi 3068*ebfedea0SLionel Sambuc xorl %eax,%ebx 3069*ebfedea0SLionel Sambuc xorl %ecx,%esi 3070*ebfedea0SLionel Sambuc movl %esi,%ecx 3071*ebfedea0SLionel Sambuc andl $2155905152,%esi 3072*ebfedea0SLionel Sambuc movl %esi,%ebp 3073*ebfedea0SLionel Sambuc shrl $7,%ebp 3074*ebfedea0SLionel Sambuc leal (%ecx,%ecx,1),%edx 3075*ebfedea0SLionel Sambuc xorl %eax,%ecx 3076*ebfedea0SLionel Sambuc subl %ebp,%esi 3077*ebfedea0SLionel Sambuc andl $4278124286,%edx 3078*ebfedea0SLionel Sambuc andl $454761243,%esi 3079*ebfedea0SLionel Sambuc roll $8,%eax 3080*ebfedea0SLionel Sambuc xorl %esi,%edx 3081*ebfedea0SLionel Sambuc movl 4(%edi),%ebp 3082*ebfedea0SLionel Sambuc xorl %ebx,%eax 3083*ebfedea0SLionel Sambuc xorl %edx,%ebx 3084*ebfedea0SLionel Sambuc xorl %ecx,%eax 3085*ebfedea0SLionel Sambuc roll $24,%ebx 3086*ebfedea0SLionel Sambuc xorl %edx,%ecx 3087*ebfedea0SLionel Sambuc xorl %edx,%eax 3088*ebfedea0SLionel Sambuc roll $16,%ecx 3089*ebfedea0SLionel Sambuc xorl %ebx,%eax 3090*ebfedea0SLionel Sambuc roll $8,%edx 3091*ebfedea0SLionel Sambuc xorl %ecx,%eax 3092*ebfedea0SLionel Sambuc movl %ebp,%ebx 3093*ebfedea0SLionel Sambuc xorl %edx,%eax 3094*ebfedea0SLionel Sambuc movl %eax,(%edi) 3095*ebfedea0SLionel Sambuc movl %ebx,%esi 3096*ebfedea0SLionel Sambuc andl $2155905152,%esi 3097*ebfedea0SLionel Sambuc movl %esi,%ebp 3098*ebfedea0SLionel Sambuc shrl $7,%ebp 3099*ebfedea0SLionel Sambuc leal (%ebx,%ebx,1),%ecx 3100*ebfedea0SLionel Sambuc subl %ebp,%esi 3101*ebfedea0SLionel Sambuc andl $4278124286,%ecx 3102*ebfedea0SLionel Sambuc andl $454761243,%esi 3103*ebfedea0SLionel Sambuc xorl %ecx,%esi 3104*ebfedea0SLionel Sambuc movl %esi,%ecx 3105*ebfedea0SLionel Sambuc andl $2155905152,%esi 3106*ebfedea0SLionel Sambuc movl %esi,%ebp 3107*ebfedea0SLionel Sambuc shrl $7,%ebp 3108*ebfedea0SLionel Sambuc leal (%ecx,%ecx,1),%edx 3109*ebfedea0SLionel Sambuc subl %ebp,%esi 3110*ebfedea0SLionel Sambuc andl $4278124286,%edx 3111*ebfedea0SLionel Sambuc andl $454761243,%esi 3112*ebfedea0SLionel Sambuc xorl %ebx,%ecx 3113*ebfedea0SLionel Sambuc xorl %edx,%esi 3114*ebfedea0SLionel Sambuc movl %esi,%edx 3115*ebfedea0SLionel Sambuc andl $2155905152,%esi 3116*ebfedea0SLionel Sambuc movl %esi,%ebp 3117*ebfedea0SLionel Sambuc shrl $7,%ebp 3118*ebfedea0SLionel Sambuc leal (%edx,%edx,1),%eax 3119*ebfedea0SLionel Sambuc xorl %ebx,%edx 3120*ebfedea0SLionel Sambuc subl %ebp,%esi 3121*ebfedea0SLionel Sambuc andl $4278124286,%eax 3122*ebfedea0SLionel Sambuc andl $454761243,%esi 3123*ebfedea0SLionel Sambuc roll $8,%ebx 3124*ebfedea0SLionel Sambuc xorl %esi,%eax 3125*ebfedea0SLionel Sambuc movl 8(%edi),%ebp 3126*ebfedea0SLionel Sambuc xorl %ecx,%ebx 3127*ebfedea0SLionel Sambuc xorl %eax,%ecx 3128*ebfedea0SLionel Sambuc xorl %edx,%ebx 3129*ebfedea0SLionel Sambuc roll $24,%ecx 3130*ebfedea0SLionel Sambuc xorl %eax,%edx 3131*ebfedea0SLionel Sambuc xorl %eax,%ebx 3132*ebfedea0SLionel Sambuc roll $16,%edx 3133*ebfedea0SLionel Sambuc xorl %ecx,%ebx 3134*ebfedea0SLionel Sambuc roll $8,%eax 3135*ebfedea0SLionel Sambuc xorl %edx,%ebx 3136*ebfedea0SLionel Sambuc movl %ebp,%ecx 3137*ebfedea0SLionel Sambuc xorl %eax,%ebx 3138*ebfedea0SLionel Sambuc movl %ebx,4(%edi) 3139*ebfedea0SLionel Sambuc movl %ecx,%esi 3140*ebfedea0SLionel Sambuc andl $2155905152,%esi 3141*ebfedea0SLionel Sambuc movl %esi,%ebp 3142*ebfedea0SLionel Sambuc shrl $7,%ebp 3143*ebfedea0SLionel Sambuc leal (%ecx,%ecx,1),%edx 3144*ebfedea0SLionel Sambuc subl %ebp,%esi 3145*ebfedea0SLionel Sambuc andl $4278124286,%edx 3146*ebfedea0SLionel Sambuc andl $454761243,%esi 3147*ebfedea0SLionel Sambuc xorl %edx,%esi 3148*ebfedea0SLionel Sambuc movl %esi,%edx 3149*ebfedea0SLionel Sambuc andl $2155905152,%esi 3150*ebfedea0SLionel Sambuc movl %esi,%ebp 3151*ebfedea0SLionel Sambuc shrl $7,%ebp 3152*ebfedea0SLionel Sambuc leal (%edx,%edx,1),%eax 3153*ebfedea0SLionel Sambuc subl %ebp,%esi 3154*ebfedea0SLionel Sambuc andl $4278124286,%eax 3155*ebfedea0SLionel Sambuc andl $454761243,%esi 3156*ebfedea0SLionel Sambuc xorl %ecx,%edx 3157*ebfedea0SLionel Sambuc xorl %eax,%esi 3158*ebfedea0SLionel Sambuc movl %esi,%eax 3159*ebfedea0SLionel Sambuc andl $2155905152,%esi 3160*ebfedea0SLionel Sambuc movl %esi,%ebp 3161*ebfedea0SLionel Sambuc shrl $7,%ebp 3162*ebfedea0SLionel Sambuc leal (%eax,%eax,1),%ebx 3163*ebfedea0SLionel Sambuc xorl %ecx,%eax 3164*ebfedea0SLionel Sambuc subl %ebp,%esi 3165*ebfedea0SLionel Sambuc andl $4278124286,%ebx 3166*ebfedea0SLionel Sambuc andl $454761243,%esi 3167*ebfedea0SLionel Sambuc roll $8,%ecx 3168*ebfedea0SLionel Sambuc xorl %esi,%ebx 3169*ebfedea0SLionel Sambuc movl 12(%edi),%ebp 3170*ebfedea0SLionel Sambuc xorl %edx,%ecx 3171*ebfedea0SLionel Sambuc xorl %ebx,%edx 3172*ebfedea0SLionel Sambuc xorl %eax,%ecx 3173*ebfedea0SLionel Sambuc roll $24,%edx 3174*ebfedea0SLionel Sambuc xorl %ebx,%eax 3175*ebfedea0SLionel Sambuc xorl %ebx,%ecx 3176*ebfedea0SLionel Sambuc roll $16,%eax 3177*ebfedea0SLionel Sambuc xorl %edx,%ecx 3178*ebfedea0SLionel Sambuc roll $8,%ebx 3179*ebfedea0SLionel Sambuc xorl %eax,%ecx 3180*ebfedea0SLionel Sambuc movl %ebp,%edx 3181*ebfedea0SLionel Sambuc xorl %ebx,%ecx 3182*ebfedea0SLionel Sambuc movl %ecx,8(%edi) 3183*ebfedea0SLionel Sambuc movl %edx,%esi 3184*ebfedea0SLionel Sambuc andl $2155905152,%esi 3185*ebfedea0SLionel Sambuc movl %esi,%ebp 3186*ebfedea0SLionel Sambuc shrl $7,%ebp 3187*ebfedea0SLionel Sambuc leal (%edx,%edx,1),%eax 3188*ebfedea0SLionel Sambuc subl %ebp,%esi 3189*ebfedea0SLionel Sambuc andl $4278124286,%eax 3190*ebfedea0SLionel Sambuc andl $454761243,%esi 3191*ebfedea0SLionel Sambuc xorl %eax,%esi 3192*ebfedea0SLionel Sambuc movl %esi,%eax 3193*ebfedea0SLionel Sambuc andl $2155905152,%esi 3194*ebfedea0SLionel Sambuc movl %esi,%ebp 3195*ebfedea0SLionel Sambuc shrl $7,%ebp 3196*ebfedea0SLionel Sambuc leal (%eax,%eax,1),%ebx 3197*ebfedea0SLionel Sambuc subl %ebp,%esi 3198*ebfedea0SLionel Sambuc andl $4278124286,%ebx 3199*ebfedea0SLionel Sambuc andl $454761243,%esi 3200*ebfedea0SLionel Sambuc xorl %edx,%eax 3201*ebfedea0SLionel Sambuc xorl %ebx,%esi 3202*ebfedea0SLionel Sambuc movl %esi,%ebx 3203*ebfedea0SLionel Sambuc andl $2155905152,%esi 3204*ebfedea0SLionel Sambuc movl %esi,%ebp 3205*ebfedea0SLionel Sambuc shrl $7,%ebp 3206*ebfedea0SLionel Sambuc leal (%ebx,%ebx,1),%ecx 3207*ebfedea0SLionel Sambuc xorl %edx,%ebx 3208*ebfedea0SLionel Sambuc subl %ebp,%esi 3209*ebfedea0SLionel Sambuc andl $4278124286,%ecx 3210*ebfedea0SLionel Sambuc andl $454761243,%esi 3211*ebfedea0SLionel Sambuc roll $8,%edx 3212*ebfedea0SLionel Sambuc xorl %esi,%ecx 3213*ebfedea0SLionel Sambuc movl 16(%edi),%ebp 3214*ebfedea0SLionel Sambuc xorl %eax,%edx 3215*ebfedea0SLionel Sambuc xorl %ecx,%eax 3216*ebfedea0SLionel Sambuc xorl %ebx,%edx 3217*ebfedea0SLionel Sambuc roll $24,%eax 3218*ebfedea0SLionel Sambuc xorl %ecx,%ebx 3219*ebfedea0SLionel Sambuc xorl %ecx,%edx 3220*ebfedea0SLionel Sambuc roll $16,%ebx 3221*ebfedea0SLionel Sambuc xorl %eax,%edx 3222*ebfedea0SLionel Sambuc roll $8,%ecx 3223*ebfedea0SLionel Sambuc xorl %ebx,%edx 3224*ebfedea0SLionel Sambuc movl %ebp,%eax 3225*ebfedea0SLionel Sambuc xorl %ecx,%edx 3226*ebfedea0SLionel Sambuc movl %edx,12(%edi) 3227*ebfedea0SLionel Sambuc cmpl 28(%esp),%edi 3228*ebfedea0SLionel Sambuc jb .L056permute 3229*ebfedea0SLionel Sambuc xorl %eax,%eax 3230*ebfedea0SLionel Sambuc popl %edi 3231*ebfedea0SLionel Sambuc popl %esi 3232*ebfedea0SLionel Sambuc popl %ebx 3233*ebfedea0SLionel Sambuc popl %ebp 3234*ebfedea0SLionel Sambuc ret 3235*ebfedea0SLionel Sambuc.size private_AES_set_decrypt_key,.-.L_private_AES_set_decrypt_key_begin 3236*ebfedea0SLionel Sambuc.byte 65,69,83,32,102,111,114,32,120,56,54,44,32,67,82,89 3237*ebfedea0SLionel Sambuc.byte 80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114 3238*ebfedea0SLionel Sambuc.byte 111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 3239*ebfedea0SLionel Sambuc.comm OPENSSL_ia32cap_P,8,4 3240