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