1*8fb009dcSAndroid Build Coastguard Worker; This file is generated from a similarly-named Perl script in the BoringSSL 2*8fb009dcSAndroid Build Coastguard Worker; source tree. Do not edit by hand. 3*8fb009dcSAndroid Build Coastguard Worker 4*8fb009dcSAndroid Build Coastguard Worker%ifdef BORINGSSL_PREFIX 5*8fb009dcSAndroid Build Coastguard Worker%include "boringssl_prefix_symbols_nasm.inc" 6*8fb009dcSAndroid Build Coastguard Worker%endif 7*8fb009dcSAndroid Build Coastguard Worker%ifidn __OUTPUT_FORMAT__, win32 8*8fb009dcSAndroid Build Coastguard Worker%ifidn __OUTPUT_FORMAT__,obj 9*8fb009dcSAndroid Build Coastguard Workersection code use32 class=code align=64 10*8fb009dcSAndroid Build Coastguard Worker%elifidn __OUTPUT_FORMAT__,win32 11*8fb009dcSAndroid Build Coastguard Worker$@feat.00 equ 1 12*8fb009dcSAndroid Build Coastguard Workersection .text code align=64 13*8fb009dcSAndroid Build Coastguard Worker%else 14*8fb009dcSAndroid Build Coastguard Workersection .text code 15*8fb009dcSAndroid Build Coastguard Worker%endif 16*8fb009dcSAndroid Build Coastguard Worker%ifdef BORINGSSL_DISPATCH_TEST 17*8fb009dcSAndroid Build Coastguard Workerextern _BORINGSSL_function_hit 18*8fb009dcSAndroid Build Coastguard Worker%endif 19*8fb009dcSAndroid Build Coastguard Workerglobal _aes_hw_encrypt 20*8fb009dcSAndroid Build Coastguard Workeralign 16 21*8fb009dcSAndroid Build Coastguard Worker_aes_hw_encrypt: 22*8fb009dcSAndroid Build Coastguard WorkerL$_aes_hw_encrypt_begin: 23*8fb009dcSAndroid Build Coastguard Worker%ifdef BORINGSSL_DISPATCH_TEST 24*8fb009dcSAndroid Build Coastguard Worker push ebx 25*8fb009dcSAndroid Build Coastguard Worker push edx 26*8fb009dcSAndroid Build Coastguard Worker call L$000pic_for_function_hit 27*8fb009dcSAndroid Build Coastguard WorkerL$000pic_for_function_hit: 28*8fb009dcSAndroid Build Coastguard Worker pop ebx 29*8fb009dcSAndroid Build Coastguard Worker lea ebx,[(_BORINGSSL_function_hit+1-L$000pic_for_function_hit)+ebx] 30*8fb009dcSAndroid Build Coastguard Worker mov edx,1 31*8fb009dcSAndroid Build Coastguard Worker mov BYTE [ebx],dl 32*8fb009dcSAndroid Build Coastguard Worker pop edx 33*8fb009dcSAndroid Build Coastguard Worker pop ebx 34*8fb009dcSAndroid Build Coastguard Worker%endif 35*8fb009dcSAndroid Build Coastguard Worker mov eax,DWORD [4+esp] 36*8fb009dcSAndroid Build Coastguard Worker mov edx,DWORD [12+esp] 37*8fb009dcSAndroid Build Coastguard Worker movups xmm2,[eax] 38*8fb009dcSAndroid Build Coastguard Worker mov ecx,DWORD [240+edx] 39*8fb009dcSAndroid Build Coastguard Worker mov eax,DWORD [8+esp] 40*8fb009dcSAndroid Build Coastguard Worker movups xmm0,[edx] 41*8fb009dcSAndroid Build Coastguard Worker movups xmm1,[16+edx] 42*8fb009dcSAndroid Build Coastguard Worker lea edx,[32+edx] 43*8fb009dcSAndroid Build Coastguard Worker xorps xmm2,xmm0 44*8fb009dcSAndroid Build Coastguard WorkerL$001enc1_loop_1: 45*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,209 46*8fb009dcSAndroid Build Coastguard Worker dec ecx 47*8fb009dcSAndroid Build Coastguard Worker movups xmm1,[edx] 48*8fb009dcSAndroid Build Coastguard Worker lea edx,[16+edx] 49*8fb009dcSAndroid Build Coastguard Worker jnz NEAR L$001enc1_loop_1 50*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,221,209 51*8fb009dcSAndroid Build Coastguard Worker pxor xmm0,xmm0 52*8fb009dcSAndroid Build Coastguard Worker pxor xmm1,xmm1 53*8fb009dcSAndroid Build Coastguard Worker movups [eax],xmm2 54*8fb009dcSAndroid Build Coastguard Worker pxor xmm2,xmm2 55*8fb009dcSAndroid Build Coastguard Worker ret 56*8fb009dcSAndroid Build Coastguard Workerglobal _aes_hw_decrypt 57*8fb009dcSAndroid Build Coastguard Workeralign 16 58*8fb009dcSAndroid Build Coastguard Worker_aes_hw_decrypt: 59*8fb009dcSAndroid Build Coastguard WorkerL$_aes_hw_decrypt_begin: 60*8fb009dcSAndroid Build Coastguard Worker mov eax,DWORD [4+esp] 61*8fb009dcSAndroid Build Coastguard Worker mov edx,DWORD [12+esp] 62*8fb009dcSAndroid Build Coastguard Worker movups xmm2,[eax] 63*8fb009dcSAndroid Build Coastguard Worker mov ecx,DWORD [240+edx] 64*8fb009dcSAndroid Build Coastguard Worker mov eax,DWORD [8+esp] 65*8fb009dcSAndroid Build Coastguard Worker movups xmm0,[edx] 66*8fb009dcSAndroid Build Coastguard Worker movups xmm1,[16+edx] 67*8fb009dcSAndroid Build Coastguard Worker lea edx,[32+edx] 68*8fb009dcSAndroid Build Coastguard Worker xorps xmm2,xmm0 69*8fb009dcSAndroid Build Coastguard WorkerL$002dec1_loop_2: 70*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,222,209 71*8fb009dcSAndroid Build Coastguard Worker dec ecx 72*8fb009dcSAndroid Build Coastguard Worker movups xmm1,[edx] 73*8fb009dcSAndroid Build Coastguard Worker lea edx,[16+edx] 74*8fb009dcSAndroid Build Coastguard Worker jnz NEAR L$002dec1_loop_2 75*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,223,209 76*8fb009dcSAndroid Build Coastguard Worker pxor xmm0,xmm0 77*8fb009dcSAndroid Build Coastguard Worker pxor xmm1,xmm1 78*8fb009dcSAndroid Build Coastguard Worker movups [eax],xmm2 79*8fb009dcSAndroid Build Coastguard Worker pxor xmm2,xmm2 80*8fb009dcSAndroid Build Coastguard Worker ret 81*8fb009dcSAndroid Build Coastguard Workeralign 16 82*8fb009dcSAndroid Build Coastguard Worker__aesni_encrypt2: 83*8fb009dcSAndroid Build Coastguard Worker movups xmm0,[edx] 84*8fb009dcSAndroid Build Coastguard Worker shl ecx,4 85*8fb009dcSAndroid Build Coastguard Worker movups xmm1,[16+edx] 86*8fb009dcSAndroid Build Coastguard Worker xorps xmm2,xmm0 87*8fb009dcSAndroid Build Coastguard Worker pxor xmm3,xmm0 88*8fb009dcSAndroid Build Coastguard Worker movups xmm0,[32+edx] 89*8fb009dcSAndroid Build Coastguard Worker lea edx,[32+ecx*1+edx] 90*8fb009dcSAndroid Build Coastguard Worker neg ecx 91*8fb009dcSAndroid Build Coastguard Worker add ecx,16 92*8fb009dcSAndroid Build Coastguard WorkerL$003enc2_loop: 93*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,209 94*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,217 95*8fb009dcSAndroid Build Coastguard Worker movups xmm1,[ecx*1+edx] 96*8fb009dcSAndroid Build Coastguard Worker add ecx,32 97*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,208 98*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,216 99*8fb009dcSAndroid Build Coastguard Worker movups xmm0,[ecx*1+edx-16] 100*8fb009dcSAndroid Build Coastguard Worker jnz NEAR L$003enc2_loop 101*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,209 102*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,217 103*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,221,208 104*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,221,216 105*8fb009dcSAndroid Build Coastguard Worker ret 106*8fb009dcSAndroid Build Coastguard Workeralign 16 107*8fb009dcSAndroid Build Coastguard Worker__aesni_decrypt2: 108*8fb009dcSAndroid Build Coastguard Worker movups xmm0,[edx] 109*8fb009dcSAndroid Build Coastguard Worker shl ecx,4 110*8fb009dcSAndroid Build Coastguard Worker movups xmm1,[16+edx] 111*8fb009dcSAndroid Build Coastguard Worker xorps xmm2,xmm0 112*8fb009dcSAndroid Build Coastguard Worker pxor xmm3,xmm0 113*8fb009dcSAndroid Build Coastguard Worker movups xmm0,[32+edx] 114*8fb009dcSAndroid Build Coastguard Worker lea edx,[32+ecx*1+edx] 115*8fb009dcSAndroid Build Coastguard Worker neg ecx 116*8fb009dcSAndroid Build Coastguard Worker add ecx,16 117*8fb009dcSAndroid Build Coastguard WorkerL$004dec2_loop: 118*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,222,209 119*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,222,217 120*8fb009dcSAndroid Build Coastguard Worker movups xmm1,[ecx*1+edx] 121*8fb009dcSAndroid Build Coastguard Worker add ecx,32 122*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,222,208 123*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,222,216 124*8fb009dcSAndroid Build Coastguard Worker movups xmm0,[ecx*1+edx-16] 125*8fb009dcSAndroid Build Coastguard Worker jnz NEAR L$004dec2_loop 126*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,222,209 127*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,222,217 128*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,223,208 129*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,223,216 130*8fb009dcSAndroid Build Coastguard Worker ret 131*8fb009dcSAndroid Build Coastguard Workeralign 16 132*8fb009dcSAndroid Build Coastguard Worker__aesni_encrypt3: 133*8fb009dcSAndroid Build Coastguard Worker movups xmm0,[edx] 134*8fb009dcSAndroid Build Coastguard Worker shl ecx,4 135*8fb009dcSAndroid Build Coastguard Worker movups xmm1,[16+edx] 136*8fb009dcSAndroid Build Coastguard Worker xorps xmm2,xmm0 137*8fb009dcSAndroid Build Coastguard Worker pxor xmm3,xmm0 138*8fb009dcSAndroid Build Coastguard Worker pxor xmm4,xmm0 139*8fb009dcSAndroid Build Coastguard Worker movups xmm0,[32+edx] 140*8fb009dcSAndroid Build Coastguard Worker lea edx,[32+ecx*1+edx] 141*8fb009dcSAndroid Build Coastguard Worker neg ecx 142*8fb009dcSAndroid Build Coastguard Worker add ecx,16 143*8fb009dcSAndroid Build Coastguard WorkerL$005enc3_loop: 144*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,209 145*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,217 146*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,225 147*8fb009dcSAndroid Build Coastguard Worker movups xmm1,[ecx*1+edx] 148*8fb009dcSAndroid Build Coastguard Worker add ecx,32 149*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,208 150*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,216 151*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,224 152*8fb009dcSAndroid Build Coastguard Worker movups xmm0,[ecx*1+edx-16] 153*8fb009dcSAndroid Build Coastguard Worker jnz NEAR L$005enc3_loop 154*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,209 155*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,217 156*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,225 157*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,221,208 158*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,221,216 159*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,221,224 160*8fb009dcSAndroid Build Coastguard Worker ret 161*8fb009dcSAndroid Build Coastguard Workeralign 16 162*8fb009dcSAndroid Build Coastguard Worker__aesni_decrypt3: 163*8fb009dcSAndroid Build Coastguard Worker movups xmm0,[edx] 164*8fb009dcSAndroid Build Coastguard Worker shl ecx,4 165*8fb009dcSAndroid Build Coastguard Worker movups xmm1,[16+edx] 166*8fb009dcSAndroid Build Coastguard Worker xorps xmm2,xmm0 167*8fb009dcSAndroid Build Coastguard Worker pxor xmm3,xmm0 168*8fb009dcSAndroid Build Coastguard Worker pxor xmm4,xmm0 169*8fb009dcSAndroid Build Coastguard Worker movups xmm0,[32+edx] 170*8fb009dcSAndroid Build Coastguard Worker lea edx,[32+ecx*1+edx] 171*8fb009dcSAndroid Build Coastguard Worker neg ecx 172*8fb009dcSAndroid Build Coastguard Worker add ecx,16 173*8fb009dcSAndroid Build Coastguard WorkerL$006dec3_loop: 174*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,222,209 175*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,222,217 176*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,222,225 177*8fb009dcSAndroid Build Coastguard Worker movups xmm1,[ecx*1+edx] 178*8fb009dcSAndroid Build Coastguard Worker add ecx,32 179*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,222,208 180*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,222,216 181*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,222,224 182*8fb009dcSAndroid Build Coastguard Worker movups xmm0,[ecx*1+edx-16] 183*8fb009dcSAndroid Build Coastguard Worker jnz NEAR L$006dec3_loop 184*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,222,209 185*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,222,217 186*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,222,225 187*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,223,208 188*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,223,216 189*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,223,224 190*8fb009dcSAndroid Build Coastguard Worker ret 191*8fb009dcSAndroid Build Coastguard Workeralign 16 192*8fb009dcSAndroid Build Coastguard Worker__aesni_encrypt4: 193*8fb009dcSAndroid Build Coastguard Worker movups xmm0,[edx] 194*8fb009dcSAndroid Build Coastguard Worker movups xmm1,[16+edx] 195*8fb009dcSAndroid Build Coastguard Worker shl ecx,4 196*8fb009dcSAndroid Build Coastguard Worker xorps xmm2,xmm0 197*8fb009dcSAndroid Build Coastguard Worker pxor xmm3,xmm0 198*8fb009dcSAndroid Build Coastguard Worker pxor xmm4,xmm0 199*8fb009dcSAndroid Build Coastguard Worker pxor xmm5,xmm0 200*8fb009dcSAndroid Build Coastguard Worker movups xmm0,[32+edx] 201*8fb009dcSAndroid Build Coastguard Worker lea edx,[32+ecx*1+edx] 202*8fb009dcSAndroid Build Coastguard Worker neg ecx 203*8fb009dcSAndroid Build Coastguard Workerdb 15,31,64,0 204*8fb009dcSAndroid Build Coastguard Worker add ecx,16 205*8fb009dcSAndroid Build Coastguard WorkerL$007enc4_loop: 206*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,209 207*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,217 208*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,225 209*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,233 210*8fb009dcSAndroid Build Coastguard Worker movups xmm1,[ecx*1+edx] 211*8fb009dcSAndroid Build Coastguard Worker add ecx,32 212*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,208 213*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,216 214*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,224 215*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,232 216*8fb009dcSAndroid Build Coastguard Worker movups xmm0,[ecx*1+edx-16] 217*8fb009dcSAndroid Build Coastguard Worker jnz NEAR L$007enc4_loop 218*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,209 219*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,217 220*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,225 221*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,233 222*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,221,208 223*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,221,216 224*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,221,224 225*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,221,232 226*8fb009dcSAndroid Build Coastguard Worker ret 227*8fb009dcSAndroid Build Coastguard Workeralign 16 228*8fb009dcSAndroid Build Coastguard Worker__aesni_decrypt4: 229*8fb009dcSAndroid Build Coastguard Worker movups xmm0,[edx] 230*8fb009dcSAndroid Build Coastguard Worker movups xmm1,[16+edx] 231*8fb009dcSAndroid Build Coastguard Worker shl ecx,4 232*8fb009dcSAndroid Build Coastguard Worker xorps xmm2,xmm0 233*8fb009dcSAndroid Build Coastguard Worker pxor xmm3,xmm0 234*8fb009dcSAndroid Build Coastguard Worker pxor xmm4,xmm0 235*8fb009dcSAndroid Build Coastguard Worker pxor xmm5,xmm0 236*8fb009dcSAndroid Build Coastguard Worker movups xmm0,[32+edx] 237*8fb009dcSAndroid Build Coastguard Worker lea edx,[32+ecx*1+edx] 238*8fb009dcSAndroid Build Coastguard Worker neg ecx 239*8fb009dcSAndroid Build Coastguard Workerdb 15,31,64,0 240*8fb009dcSAndroid Build Coastguard Worker add ecx,16 241*8fb009dcSAndroid Build Coastguard WorkerL$008dec4_loop: 242*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,222,209 243*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,222,217 244*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,222,225 245*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,222,233 246*8fb009dcSAndroid Build Coastguard Worker movups xmm1,[ecx*1+edx] 247*8fb009dcSAndroid Build Coastguard Worker add ecx,32 248*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,222,208 249*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,222,216 250*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,222,224 251*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,222,232 252*8fb009dcSAndroid Build Coastguard Worker movups xmm0,[ecx*1+edx-16] 253*8fb009dcSAndroid Build Coastguard Worker jnz NEAR L$008dec4_loop 254*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,222,209 255*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,222,217 256*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,222,225 257*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,222,233 258*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,223,208 259*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,223,216 260*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,223,224 261*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,223,232 262*8fb009dcSAndroid Build Coastguard Worker ret 263*8fb009dcSAndroid Build Coastguard Workeralign 16 264*8fb009dcSAndroid Build Coastguard Worker__aesni_encrypt6: 265*8fb009dcSAndroid Build Coastguard Worker movups xmm0,[edx] 266*8fb009dcSAndroid Build Coastguard Worker shl ecx,4 267*8fb009dcSAndroid Build Coastguard Worker movups xmm1,[16+edx] 268*8fb009dcSAndroid Build Coastguard Worker xorps xmm2,xmm0 269*8fb009dcSAndroid Build Coastguard Worker pxor xmm3,xmm0 270*8fb009dcSAndroid Build Coastguard Worker pxor xmm4,xmm0 271*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,209 272*8fb009dcSAndroid Build Coastguard Worker pxor xmm5,xmm0 273*8fb009dcSAndroid Build Coastguard Worker pxor xmm6,xmm0 274*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,217 275*8fb009dcSAndroid Build Coastguard Worker lea edx,[32+ecx*1+edx] 276*8fb009dcSAndroid Build Coastguard Worker neg ecx 277*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,225 278*8fb009dcSAndroid Build Coastguard Worker pxor xmm7,xmm0 279*8fb009dcSAndroid Build Coastguard Worker movups xmm0,[ecx*1+edx] 280*8fb009dcSAndroid Build Coastguard Worker add ecx,16 281*8fb009dcSAndroid Build Coastguard Worker jmp NEAR L$009_aesni_encrypt6_inner 282*8fb009dcSAndroid Build Coastguard Workeralign 16 283*8fb009dcSAndroid Build Coastguard WorkerL$010enc6_loop: 284*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,209 285*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,217 286*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,225 287*8fb009dcSAndroid Build Coastguard WorkerL$009_aesni_encrypt6_inner: 288*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,233 289*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,241 290*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,249 291*8fb009dcSAndroid Build Coastguard WorkerL$_aesni_encrypt6_enter: 292*8fb009dcSAndroid Build Coastguard Worker movups xmm1,[ecx*1+edx] 293*8fb009dcSAndroid Build Coastguard Worker add ecx,32 294*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,208 295*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,216 296*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,224 297*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,232 298*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,240 299*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,248 300*8fb009dcSAndroid Build Coastguard Worker movups xmm0,[ecx*1+edx-16] 301*8fb009dcSAndroid Build Coastguard Worker jnz NEAR L$010enc6_loop 302*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,209 303*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,217 304*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,225 305*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,233 306*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,241 307*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,249 308*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,221,208 309*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,221,216 310*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,221,224 311*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,221,232 312*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,221,240 313*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,221,248 314*8fb009dcSAndroid Build Coastguard Worker ret 315*8fb009dcSAndroid Build Coastguard Workeralign 16 316*8fb009dcSAndroid Build Coastguard Worker__aesni_decrypt6: 317*8fb009dcSAndroid Build Coastguard Worker movups xmm0,[edx] 318*8fb009dcSAndroid Build Coastguard Worker shl ecx,4 319*8fb009dcSAndroid Build Coastguard Worker movups xmm1,[16+edx] 320*8fb009dcSAndroid Build Coastguard Worker xorps xmm2,xmm0 321*8fb009dcSAndroid Build Coastguard Worker pxor xmm3,xmm0 322*8fb009dcSAndroid Build Coastguard Worker pxor xmm4,xmm0 323*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,222,209 324*8fb009dcSAndroid Build Coastguard Worker pxor xmm5,xmm0 325*8fb009dcSAndroid Build Coastguard Worker pxor xmm6,xmm0 326*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,222,217 327*8fb009dcSAndroid Build Coastguard Worker lea edx,[32+ecx*1+edx] 328*8fb009dcSAndroid Build Coastguard Worker neg ecx 329*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,222,225 330*8fb009dcSAndroid Build Coastguard Worker pxor xmm7,xmm0 331*8fb009dcSAndroid Build Coastguard Worker movups xmm0,[ecx*1+edx] 332*8fb009dcSAndroid Build Coastguard Worker add ecx,16 333*8fb009dcSAndroid Build Coastguard Worker jmp NEAR L$011_aesni_decrypt6_inner 334*8fb009dcSAndroid Build Coastguard Workeralign 16 335*8fb009dcSAndroid Build Coastguard WorkerL$012dec6_loop: 336*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,222,209 337*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,222,217 338*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,222,225 339*8fb009dcSAndroid Build Coastguard WorkerL$011_aesni_decrypt6_inner: 340*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,222,233 341*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,222,241 342*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,222,249 343*8fb009dcSAndroid Build Coastguard WorkerL$_aesni_decrypt6_enter: 344*8fb009dcSAndroid Build Coastguard Worker movups xmm1,[ecx*1+edx] 345*8fb009dcSAndroid Build Coastguard Worker add ecx,32 346*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,222,208 347*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,222,216 348*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,222,224 349*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,222,232 350*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,222,240 351*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,222,248 352*8fb009dcSAndroid Build Coastguard Worker movups xmm0,[ecx*1+edx-16] 353*8fb009dcSAndroid Build Coastguard Worker jnz NEAR L$012dec6_loop 354*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,222,209 355*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,222,217 356*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,222,225 357*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,222,233 358*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,222,241 359*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,222,249 360*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,223,208 361*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,223,216 362*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,223,224 363*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,223,232 364*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,223,240 365*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,223,248 366*8fb009dcSAndroid Build Coastguard Worker ret 367*8fb009dcSAndroid Build Coastguard Workerglobal _aes_hw_ecb_encrypt 368*8fb009dcSAndroid Build Coastguard Workeralign 16 369*8fb009dcSAndroid Build Coastguard Worker_aes_hw_ecb_encrypt: 370*8fb009dcSAndroid Build Coastguard WorkerL$_aes_hw_ecb_encrypt_begin: 371*8fb009dcSAndroid Build Coastguard Worker push ebp 372*8fb009dcSAndroid Build Coastguard Worker push ebx 373*8fb009dcSAndroid Build Coastguard Worker push esi 374*8fb009dcSAndroid Build Coastguard Worker push edi 375*8fb009dcSAndroid Build Coastguard Worker mov esi,DWORD [20+esp] 376*8fb009dcSAndroid Build Coastguard Worker mov edi,DWORD [24+esp] 377*8fb009dcSAndroid Build Coastguard Worker mov eax,DWORD [28+esp] 378*8fb009dcSAndroid Build Coastguard Worker mov edx,DWORD [32+esp] 379*8fb009dcSAndroid Build Coastguard Worker mov ebx,DWORD [36+esp] 380*8fb009dcSAndroid Build Coastguard Worker and eax,-16 381*8fb009dcSAndroid Build Coastguard Worker jz NEAR L$013ecb_ret 382*8fb009dcSAndroid Build Coastguard Worker mov ecx,DWORD [240+edx] 383*8fb009dcSAndroid Build Coastguard Worker test ebx,ebx 384*8fb009dcSAndroid Build Coastguard Worker jz NEAR L$014ecb_decrypt 385*8fb009dcSAndroid Build Coastguard Worker mov ebp,edx 386*8fb009dcSAndroid Build Coastguard Worker mov ebx,ecx 387*8fb009dcSAndroid Build Coastguard Worker cmp eax,96 388*8fb009dcSAndroid Build Coastguard Worker jb NEAR L$015ecb_enc_tail 389*8fb009dcSAndroid Build Coastguard Worker movdqu xmm2,[esi] 390*8fb009dcSAndroid Build Coastguard Worker movdqu xmm3,[16+esi] 391*8fb009dcSAndroid Build Coastguard Worker movdqu xmm4,[32+esi] 392*8fb009dcSAndroid Build Coastguard Worker movdqu xmm5,[48+esi] 393*8fb009dcSAndroid Build Coastguard Worker movdqu xmm6,[64+esi] 394*8fb009dcSAndroid Build Coastguard Worker movdqu xmm7,[80+esi] 395*8fb009dcSAndroid Build Coastguard Worker lea esi,[96+esi] 396*8fb009dcSAndroid Build Coastguard Worker sub eax,96 397*8fb009dcSAndroid Build Coastguard Worker jmp NEAR L$016ecb_enc_loop6_enter 398*8fb009dcSAndroid Build Coastguard Workeralign 16 399*8fb009dcSAndroid Build Coastguard WorkerL$017ecb_enc_loop6: 400*8fb009dcSAndroid Build Coastguard Worker movups [edi],xmm2 401*8fb009dcSAndroid Build Coastguard Worker movdqu xmm2,[esi] 402*8fb009dcSAndroid Build Coastguard Worker movups [16+edi],xmm3 403*8fb009dcSAndroid Build Coastguard Worker movdqu xmm3,[16+esi] 404*8fb009dcSAndroid Build Coastguard Worker movups [32+edi],xmm4 405*8fb009dcSAndroid Build Coastguard Worker movdqu xmm4,[32+esi] 406*8fb009dcSAndroid Build Coastguard Worker movups [48+edi],xmm5 407*8fb009dcSAndroid Build Coastguard Worker movdqu xmm5,[48+esi] 408*8fb009dcSAndroid Build Coastguard Worker movups [64+edi],xmm6 409*8fb009dcSAndroid Build Coastguard Worker movdqu xmm6,[64+esi] 410*8fb009dcSAndroid Build Coastguard Worker movups [80+edi],xmm7 411*8fb009dcSAndroid Build Coastguard Worker lea edi,[96+edi] 412*8fb009dcSAndroid Build Coastguard Worker movdqu xmm7,[80+esi] 413*8fb009dcSAndroid Build Coastguard Worker lea esi,[96+esi] 414*8fb009dcSAndroid Build Coastguard WorkerL$016ecb_enc_loop6_enter: 415*8fb009dcSAndroid Build Coastguard Worker call __aesni_encrypt6 416*8fb009dcSAndroid Build Coastguard Worker mov edx,ebp 417*8fb009dcSAndroid Build Coastguard Worker mov ecx,ebx 418*8fb009dcSAndroid Build Coastguard Worker sub eax,96 419*8fb009dcSAndroid Build Coastguard Worker jnc NEAR L$017ecb_enc_loop6 420*8fb009dcSAndroid Build Coastguard Worker movups [edi],xmm2 421*8fb009dcSAndroid Build Coastguard Worker movups [16+edi],xmm3 422*8fb009dcSAndroid Build Coastguard Worker movups [32+edi],xmm4 423*8fb009dcSAndroid Build Coastguard Worker movups [48+edi],xmm5 424*8fb009dcSAndroid Build Coastguard Worker movups [64+edi],xmm6 425*8fb009dcSAndroid Build Coastguard Worker movups [80+edi],xmm7 426*8fb009dcSAndroid Build Coastguard Worker lea edi,[96+edi] 427*8fb009dcSAndroid Build Coastguard Worker add eax,96 428*8fb009dcSAndroid Build Coastguard Worker jz NEAR L$013ecb_ret 429*8fb009dcSAndroid Build Coastguard WorkerL$015ecb_enc_tail: 430*8fb009dcSAndroid Build Coastguard Worker movups xmm2,[esi] 431*8fb009dcSAndroid Build Coastguard Worker cmp eax,32 432*8fb009dcSAndroid Build Coastguard Worker jb NEAR L$018ecb_enc_one 433*8fb009dcSAndroid Build Coastguard Worker movups xmm3,[16+esi] 434*8fb009dcSAndroid Build Coastguard Worker je NEAR L$019ecb_enc_two 435*8fb009dcSAndroid Build Coastguard Worker movups xmm4,[32+esi] 436*8fb009dcSAndroid Build Coastguard Worker cmp eax,64 437*8fb009dcSAndroid Build Coastguard Worker jb NEAR L$020ecb_enc_three 438*8fb009dcSAndroid Build Coastguard Worker movups xmm5,[48+esi] 439*8fb009dcSAndroid Build Coastguard Worker je NEAR L$021ecb_enc_four 440*8fb009dcSAndroid Build Coastguard Worker movups xmm6,[64+esi] 441*8fb009dcSAndroid Build Coastguard Worker xorps xmm7,xmm7 442*8fb009dcSAndroid Build Coastguard Worker call __aesni_encrypt6 443*8fb009dcSAndroid Build Coastguard Worker movups [edi],xmm2 444*8fb009dcSAndroid Build Coastguard Worker movups [16+edi],xmm3 445*8fb009dcSAndroid Build Coastguard Worker movups [32+edi],xmm4 446*8fb009dcSAndroid Build Coastguard Worker movups [48+edi],xmm5 447*8fb009dcSAndroid Build Coastguard Worker movups [64+edi],xmm6 448*8fb009dcSAndroid Build Coastguard Worker jmp NEAR L$013ecb_ret 449*8fb009dcSAndroid Build Coastguard Workeralign 16 450*8fb009dcSAndroid Build Coastguard WorkerL$018ecb_enc_one: 451*8fb009dcSAndroid Build Coastguard Worker movups xmm0,[edx] 452*8fb009dcSAndroid Build Coastguard Worker movups xmm1,[16+edx] 453*8fb009dcSAndroid Build Coastguard Worker lea edx,[32+edx] 454*8fb009dcSAndroid Build Coastguard Worker xorps xmm2,xmm0 455*8fb009dcSAndroid Build Coastguard WorkerL$022enc1_loop_3: 456*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,209 457*8fb009dcSAndroid Build Coastguard Worker dec ecx 458*8fb009dcSAndroid Build Coastguard Worker movups xmm1,[edx] 459*8fb009dcSAndroid Build Coastguard Worker lea edx,[16+edx] 460*8fb009dcSAndroid Build Coastguard Worker jnz NEAR L$022enc1_loop_3 461*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,221,209 462*8fb009dcSAndroid Build Coastguard Worker movups [edi],xmm2 463*8fb009dcSAndroid Build Coastguard Worker jmp NEAR L$013ecb_ret 464*8fb009dcSAndroid Build Coastguard Workeralign 16 465*8fb009dcSAndroid Build Coastguard WorkerL$019ecb_enc_two: 466*8fb009dcSAndroid Build Coastguard Worker call __aesni_encrypt2 467*8fb009dcSAndroid Build Coastguard Worker movups [edi],xmm2 468*8fb009dcSAndroid Build Coastguard Worker movups [16+edi],xmm3 469*8fb009dcSAndroid Build Coastguard Worker jmp NEAR L$013ecb_ret 470*8fb009dcSAndroid Build Coastguard Workeralign 16 471*8fb009dcSAndroid Build Coastguard WorkerL$020ecb_enc_three: 472*8fb009dcSAndroid Build Coastguard Worker call __aesni_encrypt3 473*8fb009dcSAndroid Build Coastguard Worker movups [edi],xmm2 474*8fb009dcSAndroid Build Coastguard Worker movups [16+edi],xmm3 475*8fb009dcSAndroid Build Coastguard Worker movups [32+edi],xmm4 476*8fb009dcSAndroid Build Coastguard Worker jmp NEAR L$013ecb_ret 477*8fb009dcSAndroid Build Coastguard Workeralign 16 478*8fb009dcSAndroid Build Coastguard WorkerL$021ecb_enc_four: 479*8fb009dcSAndroid Build Coastguard Worker call __aesni_encrypt4 480*8fb009dcSAndroid Build Coastguard Worker movups [edi],xmm2 481*8fb009dcSAndroid Build Coastguard Worker movups [16+edi],xmm3 482*8fb009dcSAndroid Build Coastguard Worker movups [32+edi],xmm4 483*8fb009dcSAndroid Build Coastguard Worker movups [48+edi],xmm5 484*8fb009dcSAndroid Build Coastguard Worker jmp NEAR L$013ecb_ret 485*8fb009dcSAndroid Build Coastguard Workeralign 16 486*8fb009dcSAndroid Build Coastguard WorkerL$014ecb_decrypt: 487*8fb009dcSAndroid Build Coastguard Worker mov ebp,edx 488*8fb009dcSAndroid Build Coastguard Worker mov ebx,ecx 489*8fb009dcSAndroid Build Coastguard Worker cmp eax,96 490*8fb009dcSAndroid Build Coastguard Worker jb NEAR L$023ecb_dec_tail 491*8fb009dcSAndroid Build Coastguard Worker movdqu xmm2,[esi] 492*8fb009dcSAndroid Build Coastguard Worker movdqu xmm3,[16+esi] 493*8fb009dcSAndroid Build Coastguard Worker movdqu xmm4,[32+esi] 494*8fb009dcSAndroid Build Coastguard Worker movdqu xmm5,[48+esi] 495*8fb009dcSAndroid Build Coastguard Worker movdqu xmm6,[64+esi] 496*8fb009dcSAndroid Build Coastguard Worker movdqu xmm7,[80+esi] 497*8fb009dcSAndroid Build Coastguard Worker lea esi,[96+esi] 498*8fb009dcSAndroid Build Coastguard Worker sub eax,96 499*8fb009dcSAndroid Build Coastguard Worker jmp NEAR L$024ecb_dec_loop6_enter 500*8fb009dcSAndroid Build Coastguard Workeralign 16 501*8fb009dcSAndroid Build Coastguard WorkerL$025ecb_dec_loop6: 502*8fb009dcSAndroid Build Coastguard Worker movups [edi],xmm2 503*8fb009dcSAndroid Build Coastguard Worker movdqu xmm2,[esi] 504*8fb009dcSAndroid Build Coastguard Worker movups [16+edi],xmm3 505*8fb009dcSAndroid Build Coastguard Worker movdqu xmm3,[16+esi] 506*8fb009dcSAndroid Build Coastguard Worker movups [32+edi],xmm4 507*8fb009dcSAndroid Build Coastguard Worker movdqu xmm4,[32+esi] 508*8fb009dcSAndroid Build Coastguard Worker movups [48+edi],xmm5 509*8fb009dcSAndroid Build Coastguard Worker movdqu xmm5,[48+esi] 510*8fb009dcSAndroid Build Coastguard Worker movups [64+edi],xmm6 511*8fb009dcSAndroid Build Coastguard Worker movdqu xmm6,[64+esi] 512*8fb009dcSAndroid Build Coastguard Worker movups [80+edi],xmm7 513*8fb009dcSAndroid Build Coastguard Worker lea edi,[96+edi] 514*8fb009dcSAndroid Build Coastguard Worker movdqu xmm7,[80+esi] 515*8fb009dcSAndroid Build Coastguard Worker lea esi,[96+esi] 516*8fb009dcSAndroid Build Coastguard WorkerL$024ecb_dec_loop6_enter: 517*8fb009dcSAndroid Build Coastguard Worker call __aesni_decrypt6 518*8fb009dcSAndroid Build Coastguard Worker mov edx,ebp 519*8fb009dcSAndroid Build Coastguard Worker mov ecx,ebx 520*8fb009dcSAndroid Build Coastguard Worker sub eax,96 521*8fb009dcSAndroid Build Coastguard Worker jnc NEAR L$025ecb_dec_loop6 522*8fb009dcSAndroid Build Coastguard Worker movups [edi],xmm2 523*8fb009dcSAndroid Build Coastguard Worker movups [16+edi],xmm3 524*8fb009dcSAndroid Build Coastguard Worker movups [32+edi],xmm4 525*8fb009dcSAndroid Build Coastguard Worker movups [48+edi],xmm5 526*8fb009dcSAndroid Build Coastguard Worker movups [64+edi],xmm6 527*8fb009dcSAndroid Build Coastguard Worker movups [80+edi],xmm7 528*8fb009dcSAndroid Build Coastguard Worker lea edi,[96+edi] 529*8fb009dcSAndroid Build Coastguard Worker add eax,96 530*8fb009dcSAndroid Build Coastguard Worker jz NEAR L$013ecb_ret 531*8fb009dcSAndroid Build Coastguard WorkerL$023ecb_dec_tail: 532*8fb009dcSAndroid Build Coastguard Worker movups xmm2,[esi] 533*8fb009dcSAndroid Build Coastguard Worker cmp eax,32 534*8fb009dcSAndroid Build Coastguard Worker jb NEAR L$026ecb_dec_one 535*8fb009dcSAndroid Build Coastguard Worker movups xmm3,[16+esi] 536*8fb009dcSAndroid Build Coastguard Worker je NEAR L$027ecb_dec_two 537*8fb009dcSAndroid Build Coastguard Worker movups xmm4,[32+esi] 538*8fb009dcSAndroid Build Coastguard Worker cmp eax,64 539*8fb009dcSAndroid Build Coastguard Worker jb NEAR L$028ecb_dec_three 540*8fb009dcSAndroid Build Coastguard Worker movups xmm5,[48+esi] 541*8fb009dcSAndroid Build Coastguard Worker je NEAR L$029ecb_dec_four 542*8fb009dcSAndroid Build Coastguard Worker movups xmm6,[64+esi] 543*8fb009dcSAndroid Build Coastguard Worker xorps xmm7,xmm7 544*8fb009dcSAndroid Build Coastguard Worker call __aesni_decrypt6 545*8fb009dcSAndroid Build Coastguard Worker movups [edi],xmm2 546*8fb009dcSAndroid Build Coastguard Worker movups [16+edi],xmm3 547*8fb009dcSAndroid Build Coastguard Worker movups [32+edi],xmm4 548*8fb009dcSAndroid Build Coastguard Worker movups [48+edi],xmm5 549*8fb009dcSAndroid Build Coastguard Worker movups [64+edi],xmm6 550*8fb009dcSAndroid Build Coastguard Worker jmp NEAR L$013ecb_ret 551*8fb009dcSAndroid Build Coastguard Workeralign 16 552*8fb009dcSAndroid Build Coastguard WorkerL$026ecb_dec_one: 553*8fb009dcSAndroid Build Coastguard Worker movups xmm0,[edx] 554*8fb009dcSAndroid Build Coastguard Worker movups xmm1,[16+edx] 555*8fb009dcSAndroid Build Coastguard Worker lea edx,[32+edx] 556*8fb009dcSAndroid Build Coastguard Worker xorps xmm2,xmm0 557*8fb009dcSAndroid Build Coastguard WorkerL$030dec1_loop_4: 558*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,222,209 559*8fb009dcSAndroid Build Coastguard Worker dec ecx 560*8fb009dcSAndroid Build Coastguard Worker movups xmm1,[edx] 561*8fb009dcSAndroid Build Coastguard Worker lea edx,[16+edx] 562*8fb009dcSAndroid Build Coastguard Worker jnz NEAR L$030dec1_loop_4 563*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,223,209 564*8fb009dcSAndroid Build Coastguard Worker movups [edi],xmm2 565*8fb009dcSAndroid Build Coastguard Worker jmp NEAR L$013ecb_ret 566*8fb009dcSAndroid Build Coastguard Workeralign 16 567*8fb009dcSAndroid Build Coastguard WorkerL$027ecb_dec_two: 568*8fb009dcSAndroid Build Coastguard Worker call __aesni_decrypt2 569*8fb009dcSAndroid Build Coastguard Worker movups [edi],xmm2 570*8fb009dcSAndroid Build Coastguard Worker movups [16+edi],xmm3 571*8fb009dcSAndroid Build Coastguard Worker jmp NEAR L$013ecb_ret 572*8fb009dcSAndroid Build Coastguard Workeralign 16 573*8fb009dcSAndroid Build Coastguard WorkerL$028ecb_dec_three: 574*8fb009dcSAndroid Build Coastguard Worker call __aesni_decrypt3 575*8fb009dcSAndroid Build Coastguard Worker movups [edi],xmm2 576*8fb009dcSAndroid Build Coastguard Worker movups [16+edi],xmm3 577*8fb009dcSAndroid Build Coastguard Worker movups [32+edi],xmm4 578*8fb009dcSAndroid Build Coastguard Worker jmp NEAR L$013ecb_ret 579*8fb009dcSAndroid Build Coastguard Workeralign 16 580*8fb009dcSAndroid Build Coastguard WorkerL$029ecb_dec_four: 581*8fb009dcSAndroid Build Coastguard Worker call __aesni_decrypt4 582*8fb009dcSAndroid Build Coastguard Worker movups [edi],xmm2 583*8fb009dcSAndroid Build Coastguard Worker movups [16+edi],xmm3 584*8fb009dcSAndroid Build Coastguard Worker movups [32+edi],xmm4 585*8fb009dcSAndroid Build Coastguard Worker movups [48+edi],xmm5 586*8fb009dcSAndroid Build Coastguard WorkerL$013ecb_ret: 587*8fb009dcSAndroid Build Coastguard Worker pxor xmm0,xmm0 588*8fb009dcSAndroid Build Coastguard Worker pxor xmm1,xmm1 589*8fb009dcSAndroid Build Coastguard Worker pxor xmm2,xmm2 590*8fb009dcSAndroid Build Coastguard Worker pxor xmm3,xmm3 591*8fb009dcSAndroid Build Coastguard Worker pxor xmm4,xmm4 592*8fb009dcSAndroid Build Coastguard Worker pxor xmm5,xmm5 593*8fb009dcSAndroid Build Coastguard Worker pxor xmm6,xmm6 594*8fb009dcSAndroid Build Coastguard Worker pxor xmm7,xmm7 595*8fb009dcSAndroid Build Coastguard Worker pop edi 596*8fb009dcSAndroid Build Coastguard Worker pop esi 597*8fb009dcSAndroid Build Coastguard Worker pop ebx 598*8fb009dcSAndroid Build Coastguard Worker pop ebp 599*8fb009dcSAndroid Build Coastguard Worker ret 600*8fb009dcSAndroid Build Coastguard Workerglobal _aes_hw_ccm64_encrypt_blocks 601*8fb009dcSAndroid Build Coastguard Workeralign 16 602*8fb009dcSAndroid Build Coastguard Worker_aes_hw_ccm64_encrypt_blocks: 603*8fb009dcSAndroid Build Coastguard WorkerL$_aes_hw_ccm64_encrypt_blocks_begin: 604*8fb009dcSAndroid Build Coastguard Worker push ebp 605*8fb009dcSAndroid Build Coastguard Worker push ebx 606*8fb009dcSAndroid Build Coastguard Worker push esi 607*8fb009dcSAndroid Build Coastguard Worker push edi 608*8fb009dcSAndroid Build Coastguard Worker mov esi,DWORD [20+esp] 609*8fb009dcSAndroid Build Coastguard Worker mov edi,DWORD [24+esp] 610*8fb009dcSAndroid Build Coastguard Worker mov eax,DWORD [28+esp] 611*8fb009dcSAndroid Build Coastguard Worker mov edx,DWORD [32+esp] 612*8fb009dcSAndroid Build Coastguard Worker mov ebx,DWORD [36+esp] 613*8fb009dcSAndroid Build Coastguard Worker mov ecx,DWORD [40+esp] 614*8fb009dcSAndroid Build Coastguard Worker mov ebp,esp 615*8fb009dcSAndroid Build Coastguard Worker sub esp,60 616*8fb009dcSAndroid Build Coastguard Worker and esp,-16 617*8fb009dcSAndroid Build Coastguard Worker mov DWORD [48+esp],ebp 618*8fb009dcSAndroid Build Coastguard Worker movdqu xmm7,[ebx] 619*8fb009dcSAndroid Build Coastguard Worker movdqu xmm3,[ecx] 620*8fb009dcSAndroid Build Coastguard Worker mov ecx,DWORD [240+edx] 621*8fb009dcSAndroid Build Coastguard Worker mov DWORD [esp],202182159 622*8fb009dcSAndroid Build Coastguard Worker mov DWORD [4+esp],134810123 623*8fb009dcSAndroid Build Coastguard Worker mov DWORD [8+esp],67438087 624*8fb009dcSAndroid Build Coastguard Worker mov DWORD [12+esp],66051 625*8fb009dcSAndroid Build Coastguard Worker mov ebx,1 626*8fb009dcSAndroid Build Coastguard Worker xor ebp,ebp 627*8fb009dcSAndroid Build Coastguard Worker mov DWORD [16+esp],ebx 628*8fb009dcSAndroid Build Coastguard Worker mov DWORD [20+esp],ebp 629*8fb009dcSAndroid Build Coastguard Worker mov DWORD [24+esp],ebp 630*8fb009dcSAndroid Build Coastguard Worker mov DWORD [28+esp],ebp 631*8fb009dcSAndroid Build Coastguard Worker shl ecx,4 632*8fb009dcSAndroid Build Coastguard Worker mov ebx,16 633*8fb009dcSAndroid Build Coastguard Worker lea ebp,[edx] 634*8fb009dcSAndroid Build Coastguard Worker movdqa xmm5,[esp] 635*8fb009dcSAndroid Build Coastguard Worker movdqa xmm2,xmm7 636*8fb009dcSAndroid Build Coastguard Worker lea edx,[32+ecx*1+edx] 637*8fb009dcSAndroid Build Coastguard Worker sub ebx,ecx 638*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,0,253 639*8fb009dcSAndroid Build Coastguard WorkerL$031ccm64_enc_outer: 640*8fb009dcSAndroid Build Coastguard Worker movups xmm0,[ebp] 641*8fb009dcSAndroid Build Coastguard Worker mov ecx,ebx 642*8fb009dcSAndroid Build Coastguard Worker movups xmm6,[esi] 643*8fb009dcSAndroid Build Coastguard Worker xorps xmm2,xmm0 644*8fb009dcSAndroid Build Coastguard Worker movups xmm1,[16+ebp] 645*8fb009dcSAndroid Build Coastguard Worker xorps xmm0,xmm6 646*8fb009dcSAndroid Build Coastguard Worker xorps xmm3,xmm0 647*8fb009dcSAndroid Build Coastguard Worker movups xmm0,[32+ebp] 648*8fb009dcSAndroid Build Coastguard WorkerL$032ccm64_enc2_loop: 649*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,209 650*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,217 651*8fb009dcSAndroid Build Coastguard Worker movups xmm1,[ecx*1+edx] 652*8fb009dcSAndroid Build Coastguard Worker add ecx,32 653*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,208 654*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,216 655*8fb009dcSAndroid Build Coastguard Worker movups xmm0,[ecx*1+edx-16] 656*8fb009dcSAndroid Build Coastguard Worker jnz NEAR L$032ccm64_enc2_loop 657*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,209 658*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,217 659*8fb009dcSAndroid Build Coastguard Worker paddq xmm7,[16+esp] 660*8fb009dcSAndroid Build Coastguard Worker dec eax 661*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,221,208 662*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,221,216 663*8fb009dcSAndroid Build Coastguard Worker lea esi,[16+esi] 664*8fb009dcSAndroid Build Coastguard Worker xorps xmm6,xmm2 665*8fb009dcSAndroid Build Coastguard Worker movdqa xmm2,xmm7 666*8fb009dcSAndroid Build Coastguard Worker movups [edi],xmm6 667*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,0,213 668*8fb009dcSAndroid Build Coastguard Worker lea edi,[16+edi] 669*8fb009dcSAndroid Build Coastguard Worker jnz NEAR L$031ccm64_enc_outer 670*8fb009dcSAndroid Build Coastguard Worker mov esp,DWORD [48+esp] 671*8fb009dcSAndroid Build Coastguard Worker mov edi,DWORD [40+esp] 672*8fb009dcSAndroid Build Coastguard Worker movups [edi],xmm3 673*8fb009dcSAndroid Build Coastguard Worker pxor xmm0,xmm0 674*8fb009dcSAndroid Build Coastguard Worker pxor xmm1,xmm1 675*8fb009dcSAndroid Build Coastguard Worker pxor xmm2,xmm2 676*8fb009dcSAndroid Build Coastguard Worker pxor xmm3,xmm3 677*8fb009dcSAndroid Build Coastguard Worker pxor xmm4,xmm4 678*8fb009dcSAndroid Build Coastguard Worker pxor xmm5,xmm5 679*8fb009dcSAndroid Build Coastguard Worker pxor xmm6,xmm6 680*8fb009dcSAndroid Build Coastguard Worker pxor xmm7,xmm7 681*8fb009dcSAndroid Build Coastguard Worker pop edi 682*8fb009dcSAndroid Build Coastguard Worker pop esi 683*8fb009dcSAndroid Build Coastguard Worker pop ebx 684*8fb009dcSAndroid Build Coastguard Worker pop ebp 685*8fb009dcSAndroid Build Coastguard Worker ret 686*8fb009dcSAndroid Build Coastguard Workerglobal _aes_hw_ccm64_decrypt_blocks 687*8fb009dcSAndroid Build Coastguard Workeralign 16 688*8fb009dcSAndroid Build Coastguard Worker_aes_hw_ccm64_decrypt_blocks: 689*8fb009dcSAndroid Build Coastguard WorkerL$_aes_hw_ccm64_decrypt_blocks_begin: 690*8fb009dcSAndroid Build Coastguard Worker push ebp 691*8fb009dcSAndroid Build Coastguard Worker push ebx 692*8fb009dcSAndroid Build Coastguard Worker push esi 693*8fb009dcSAndroid Build Coastguard Worker push edi 694*8fb009dcSAndroid Build Coastguard Worker mov esi,DWORD [20+esp] 695*8fb009dcSAndroid Build Coastguard Worker mov edi,DWORD [24+esp] 696*8fb009dcSAndroid Build Coastguard Worker mov eax,DWORD [28+esp] 697*8fb009dcSAndroid Build Coastguard Worker mov edx,DWORD [32+esp] 698*8fb009dcSAndroid Build Coastguard Worker mov ebx,DWORD [36+esp] 699*8fb009dcSAndroid Build Coastguard Worker mov ecx,DWORD [40+esp] 700*8fb009dcSAndroid Build Coastguard Worker mov ebp,esp 701*8fb009dcSAndroid Build Coastguard Worker sub esp,60 702*8fb009dcSAndroid Build Coastguard Worker and esp,-16 703*8fb009dcSAndroid Build Coastguard Worker mov DWORD [48+esp],ebp 704*8fb009dcSAndroid Build Coastguard Worker movdqu xmm7,[ebx] 705*8fb009dcSAndroid Build Coastguard Worker movdqu xmm3,[ecx] 706*8fb009dcSAndroid Build Coastguard Worker mov ecx,DWORD [240+edx] 707*8fb009dcSAndroid Build Coastguard Worker mov DWORD [esp],202182159 708*8fb009dcSAndroid Build Coastguard Worker mov DWORD [4+esp],134810123 709*8fb009dcSAndroid Build Coastguard Worker mov DWORD [8+esp],67438087 710*8fb009dcSAndroid Build Coastguard Worker mov DWORD [12+esp],66051 711*8fb009dcSAndroid Build Coastguard Worker mov ebx,1 712*8fb009dcSAndroid Build Coastguard Worker xor ebp,ebp 713*8fb009dcSAndroid Build Coastguard Worker mov DWORD [16+esp],ebx 714*8fb009dcSAndroid Build Coastguard Worker mov DWORD [20+esp],ebp 715*8fb009dcSAndroid Build Coastguard Worker mov DWORD [24+esp],ebp 716*8fb009dcSAndroid Build Coastguard Worker mov DWORD [28+esp],ebp 717*8fb009dcSAndroid Build Coastguard Worker movdqa xmm5,[esp] 718*8fb009dcSAndroid Build Coastguard Worker movdqa xmm2,xmm7 719*8fb009dcSAndroid Build Coastguard Worker mov ebp,edx 720*8fb009dcSAndroid Build Coastguard Worker mov ebx,ecx 721*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,0,253 722*8fb009dcSAndroid Build Coastguard Worker movups xmm0,[edx] 723*8fb009dcSAndroid Build Coastguard Worker movups xmm1,[16+edx] 724*8fb009dcSAndroid Build Coastguard Worker lea edx,[32+edx] 725*8fb009dcSAndroid Build Coastguard Worker xorps xmm2,xmm0 726*8fb009dcSAndroid Build Coastguard WorkerL$033enc1_loop_5: 727*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,209 728*8fb009dcSAndroid Build Coastguard Worker dec ecx 729*8fb009dcSAndroid Build Coastguard Worker movups xmm1,[edx] 730*8fb009dcSAndroid Build Coastguard Worker lea edx,[16+edx] 731*8fb009dcSAndroid Build Coastguard Worker jnz NEAR L$033enc1_loop_5 732*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,221,209 733*8fb009dcSAndroid Build Coastguard Worker shl ebx,4 734*8fb009dcSAndroid Build Coastguard Worker mov ecx,16 735*8fb009dcSAndroid Build Coastguard Worker movups xmm6,[esi] 736*8fb009dcSAndroid Build Coastguard Worker paddq xmm7,[16+esp] 737*8fb009dcSAndroid Build Coastguard Worker lea esi,[16+esi] 738*8fb009dcSAndroid Build Coastguard Worker sub ecx,ebx 739*8fb009dcSAndroid Build Coastguard Worker lea edx,[32+ebx*1+ebp] 740*8fb009dcSAndroid Build Coastguard Worker mov ebx,ecx 741*8fb009dcSAndroid Build Coastguard Worker jmp NEAR L$034ccm64_dec_outer 742*8fb009dcSAndroid Build Coastguard Workeralign 16 743*8fb009dcSAndroid Build Coastguard WorkerL$034ccm64_dec_outer: 744*8fb009dcSAndroid Build Coastguard Worker xorps xmm6,xmm2 745*8fb009dcSAndroid Build Coastguard Worker movdqa xmm2,xmm7 746*8fb009dcSAndroid Build Coastguard Worker movups [edi],xmm6 747*8fb009dcSAndroid Build Coastguard Worker lea edi,[16+edi] 748*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,0,213 749*8fb009dcSAndroid Build Coastguard Worker sub eax,1 750*8fb009dcSAndroid Build Coastguard Worker jz NEAR L$035ccm64_dec_break 751*8fb009dcSAndroid Build Coastguard Worker movups xmm0,[ebp] 752*8fb009dcSAndroid Build Coastguard Worker mov ecx,ebx 753*8fb009dcSAndroid Build Coastguard Worker movups xmm1,[16+ebp] 754*8fb009dcSAndroid Build Coastguard Worker xorps xmm6,xmm0 755*8fb009dcSAndroid Build Coastguard Worker xorps xmm2,xmm0 756*8fb009dcSAndroid Build Coastguard Worker xorps xmm3,xmm6 757*8fb009dcSAndroid Build Coastguard Worker movups xmm0,[32+ebp] 758*8fb009dcSAndroid Build Coastguard WorkerL$036ccm64_dec2_loop: 759*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,209 760*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,217 761*8fb009dcSAndroid Build Coastguard Worker movups xmm1,[ecx*1+edx] 762*8fb009dcSAndroid Build Coastguard Worker add ecx,32 763*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,208 764*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,216 765*8fb009dcSAndroid Build Coastguard Worker movups xmm0,[ecx*1+edx-16] 766*8fb009dcSAndroid Build Coastguard Worker jnz NEAR L$036ccm64_dec2_loop 767*8fb009dcSAndroid Build Coastguard Worker movups xmm6,[esi] 768*8fb009dcSAndroid Build Coastguard Worker paddq xmm7,[16+esp] 769*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,209 770*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,217 771*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,221,208 772*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,221,216 773*8fb009dcSAndroid Build Coastguard Worker lea esi,[16+esi] 774*8fb009dcSAndroid Build Coastguard Worker jmp NEAR L$034ccm64_dec_outer 775*8fb009dcSAndroid Build Coastguard Workeralign 16 776*8fb009dcSAndroid Build Coastguard WorkerL$035ccm64_dec_break: 777*8fb009dcSAndroid Build Coastguard Worker mov ecx,DWORD [240+ebp] 778*8fb009dcSAndroid Build Coastguard Worker mov edx,ebp 779*8fb009dcSAndroid Build Coastguard Worker movups xmm0,[edx] 780*8fb009dcSAndroid Build Coastguard Worker movups xmm1,[16+edx] 781*8fb009dcSAndroid Build Coastguard Worker xorps xmm6,xmm0 782*8fb009dcSAndroid Build Coastguard Worker lea edx,[32+edx] 783*8fb009dcSAndroid Build Coastguard Worker xorps xmm3,xmm6 784*8fb009dcSAndroid Build Coastguard WorkerL$037enc1_loop_6: 785*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,217 786*8fb009dcSAndroid Build Coastguard Worker dec ecx 787*8fb009dcSAndroid Build Coastguard Worker movups xmm1,[edx] 788*8fb009dcSAndroid Build Coastguard Worker lea edx,[16+edx] 789*8fb009dcSAndroid Build Coastguard Worker jnz NEAR L$037enc1_loop_6 790*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,221,217 791*8fb009dcSAndroid Build Coastguard Worker mov esp,DWORD [48+esp] 792*8fb009dcSAndroid Build Coastguard Worker mov edi,DWORD [40+esp] 793*8fb009dcSAndroid Build Coastguard Worker movups [edi],xmm3 794*8fb009dcSAndroid Build Coastguard Worker pxor xmm0,xmm0 795*8fb009dcSAndroid Build Coastguard Worker pxor xmm1,xmm1 796*8fb009dcSAndroid Build Coastguard Worker pxor xmm2,xmm2 797*8fb009dcSAndroid Build Coastguard Worker pxor xmm3,xmm3 798*8fb009dcSAndroid Build Coastguard Worker pxor xmm4,xmm4 799*8fb009dcSAndroid Build Coastguard Worker pxor xmm5,xmm5 800*8fb009dcSAndroid Build Coastguard Worker pxor xmm6,xmm6 801*8fb009dcSAndroid Build Coastguard Worker pxor xmm7,xmm7 802*8fb009dcSAndroid Build Coastguard Worker pop edi 803*8fb009dcSAndroid Build Coastguard Worker pop esi 804*8fb009dcSAndroid Build Coastguard Worker pop ebx 805*8fb009dcSAndroid Build Coastguard Worker pop ebp 806*8fb009dcSAndroid Build Coastguard Worker ret 807*8fb009dcSAndroid Build Coastguard Workerglobal _aes_hw_ctr32_encrypt_blocks 808*8fb009dcSAndroid Build Coastguard Workeralign 16 809*8fb009dcSAndroid Build Coastguard Worker_aes_hw_ctr32_encrypt_blocks: 810*8fb009dcSAndroid Build Coastguard WorkerL$_aes_hw_ctr32_encrypt_blocks_begin: 811*8fb009dcSAndroid Build Coastguard Worker push ebp 812*8fb009dcSAndroid Build Coastguard Worker push ebx 813*8fb009dcSAndroid Build Coastguard Worker push esi 814*8fb009dcSAndroid Build Coastguard Worker push edi 815*8fb009dcSAndroid Build Coastguard Worker%ifdef BORINGSSL_DISPATCH_TEST 816*8fb009dcSAndroid Build Coastguard Worker push ebx 817*8fb009dcSAndroid Build Coastguard Worker push edx 818*8fb009dcSAndroid Build Coastguard Worker call L$038pic_for_function_hit 819*8fb009dcSAndroid Build Coastguard WorkerL$038pic_for_function_hit: 820*8fb009dcSAndroid Build Coastguard Worker pop ebx 821*8fb009dcSAndroid Build Coastguard Worker lea ebx,[(_BORINGSSL_function_hit+0-L$038pic_for_function_hit)+ebx] 822*8fb009dcSAndroid Build Coastguard Worker mov edx,1 823*8fb009dcSAndroid Build Coastguard Worker mov BYTE [ebx],dl 824*8fb009dcSAndroid Build Coastguard Worker pop edx 825*8fb009dcSAndroid Build Coastguard Worker pop ebx 826*8fb009dcSAndroid Build Coastguard Worker%endif 827*8fb009dcSAndroid Build Coastguard Worker mov esi,DWORD [20+esp] 828*8fb009dcSAndroid Build Coastguard Worker mov edi,DWORD [24+esp] 829*8fb009dcSAndroid Build Coastguard Worker mov eax,DWORD [28+esp] 830*8fb009dcSAndroid Build Coastguard Worker mov edx,DWORD [32+esp] 831*8fb009dcSAndroid Build Coastguard Worker mov ebx,DWORD [36+esp] 832*8fb009dcSAndroid Build Coastguard Worker mov ebp,esp 833*8fb009dcSAndroid Build Coastguard Worker sub esp,88 834*8fb009dcSAndroid Build Coastguard Worker and esp,-16 835*8fb009dcSAndroid Build Coastguard Worker mov DWORD [80+esp],ebp 836*8fb009dcSAndroid Build Coastguard Worker cmp eax,1 837*8fb009dcSAndroid Build Coastguard Worker je NEAR L$039ctr32_one_shortcut 838*8fb009dcSAndroid Build Coastguard Worker movdqu xmm7,[ebx] 839*8fb009dcSAndroid Build Coastguard Worker mov DWORD [esp],202182159 840*8fb009dcSAndroid Build Coastguard Worker mov DWORD [4+esp],134810123 841*8fb009dcSAndroid Build Coastguard Worker mov DWORD [8+esp],67438087 842*8fb009dcSAndroid Build Coastguard Worker mov DWORD [12+esp],66051 843*8fb009dcSAndroid Build Coastguard Worker mov ecx,6 844*8fb009dcSAndroid Build Coastguard Worker xor ebp,ebp 845*8fb009dcSAndroid Build Coastguard Worker mov DWORD [16+esp],ecx 846*8fb009dcSAndroid Build Coastguard Worker mov DWORD [20+esp],ecx 847*8fb009dcSAndroid Build Coastguard Worker mov DWORD [24+esp],ecx 848*8fb009dcSAndroid Build Coastguard Worker mov DWORD [28+esp],ebp 849*8fb009dcSAndroid Build Coastguard Workerdb 102,15,58,22,251,3 850*8fb009dcSAndroid Build Coastguard Workerdb 102,15,58,34,253,3 851*8fb009dcSAndroid Build Coastguard Worker mov ecx,DWORD [240+edx] 852*8fb009dcSAndroid Build Coastguard Worker bswap ebx 853*8fb009dcSAndroid Build Coastguard Worker pxor xmm0,xmm0 854*8fb009dcSAndroid Build Coastguard Worker pxor xmm1,xmm1 855*8fb009dcSAndroid Build Coastguard Worker movdqa xmm2,[esp] 856*8fb009dcSAndroid Build Coastguard Workerdb 102,15,58,34,195,0 857*8fb009dcSAndroid Build Coastguard Worker lea ebp,[3+ebx] 858*8fb009dcSAndroid Build Coastguard Workerdb 102,15,58,34,205,0 859*8fb009dcSAndroid Build Coastguard Worker inc ebx 860*8fb009dcSAndroid Build Coastguard Workerdb 102,15,58,34,195,1 861*8fb009dcSAndroid Build Coastguard Worker inc ebp 862*8fb009dcSAndroid Build Coastguard Workerdb 102,15,58,34,205,1 863*8fb009dcSAndroid Build Coastguard Worker inc ebx 864*8fb009dcSAndroid Build Coastguard Workerdb 102,15,58,34,195,2 865*8fb009dcSAndroid Build Coastguard Worker inc ebp 866*8fb009dcSAndroid Build Coastguard Workerdb 102,15,58,34,205,2 867*8fb009dcSAndroid Build Coastguard Worker movdqa [48+esp],xmm0 868*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,0,194 869*8fb009dcSAndroid Build Coastguard Worker movdqu xmm6,[edx] 870*8fb009dcSAndroid Build Coastguard Worker movdqa [64+esp],xmm1 871*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,0,202 872*8fb009dcSAndroid Build Coastguard Worker pshufd xmm2,xmm0,192 873*8fb009dcSAndroid Build Coastguard Worker pshufd xmm3,xmm0,128 874*8fb009dcSAndroid Build Coastguard Worker cmp eax,6 875*8fb009dcSAndroid Build Coastguard Worker jb NEAR L$040ctr32_tail 876*8fb009dcSAndroid Build Coastguard Worker pxor xmm7,xmm6 877*8fb009dcSAndroid Build Coastguard Worker shl ecx,4 878*8fb009dcSAndroid Build Coastguard Worker mov ebx,16 879*8fb009dcSAndroid Build Coastguard Worker movdqa [32+esp],xmm7 880*8fb009dcSAndroid Build Coastguard Worker mov ebp,edx 881*8fb009dcSAndroid Build Coastguard Worker sub ebx,ecx 882*8fb009dcSAndroid Build Coastguard Worker lea edx,[32+ecx*1+edx] 883*8fb009dcSAndroid Build Coastguard Worker sub eax,6 884*8fb009dcSAndroid Build Coastguard Worker jmp NEAR L$041ctr32_loop6 885*8fb009dcSAndroid Build Coastguard Workeralign 16 886*8fb009dcSAndroid Build Coastguard WorkerL$041ctr32_loop6: 887*8fb009dcSAndroid Build Coastguard Worker pshufd xmm4,xmm0,64 888*8fb009dcSAndroid Build Coastguard Worker movdqa xmm0,[32+esp] 889*8fb009dcSAndroid Build Coastguard Worker pshufd xmm5,xmm1,192 890*8fb009dcSAndroid Build Coastguard Worker pxor xmm2,xmm0 891*8fb009dcSAndroid Build Coastguard Worker pshufd xmm6,xmm1,128 892*8fb009dcSAndroid Build Coastguard Worker pxor xmm3,xmm0 893*8fb009dcSAndroid Build Coastguard Worker pshufd xmm7,xmm1,64 894*8fb009dcSAndroid Build Coastguard Worker movups xmm1,[16+ebp] 895*8fb009dcSAndroid Build Coastguard Worker pxor xmm4,xmm0 896*8fb009dcSAndroid Build Coastguard Worker pxor xmm5,xmm0 897*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,209 898*8fb009dcSAndroid Build Coastguard Worker pxor xmm6,xmm0 899*8fb009dcSAndroid Build Coastguard Worker pxor xmm7,xmm0 900*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,217 901*8fb009dcSAndroid Build Coastguard Worker movups xmm0,[32+ebp] 902*8fb009dcSAndroid Build Coastguard Worker mov ecx,ebx 903*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,225 904*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,233 905*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,241 906*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,249 907*8fb009dcSAndroid Build Coastguard Worker call L$_aesni_encrypt6_enter 908*8fb009dcSAndroid Build Coastguard Worker movups xmm1,[esi] 909*8fb009dcSAndroid Build Coastguard Worker movups xmm0,[16+esi] 910*8fb009dcSAndroid Build Coastguard Worker xorps xmm2,xmm1 911*8fb009dcSAndroid Build Coastguard Worker movups xmm1,[32+esi] 912*8fb009dcSAndroid Build Coastguard Worker xorps xmm3,xmm0 913*8fb009dcSAndroid Build Coastguard Worker movups [edi],xmm2 914*8fb009dcSAndroid Build Coastguard Worker movdqa xmm0,[16+esp] 915*8fb009dcSAndroid Build Coastguard Worker xorps xmm4,xmm1 916*8fb009dcSAndroid Build Coastguard Worker movdqa xmm1,[64+esp] 917*8fb009dcSAndroid Build Coastguard Worker movups [16+edi],xmm3 918*8fb009dcSAndroid Build Coastguard Worker movups [32+edi],xmm4 919*8fb009dcSAndroid Build Coastguard Worker paddd xmm1,xmm0 920*8fb009dcSAndroid Build Coastguard Worker paddd xmm0,[48+esp] 921*8fb009dcSAndroid Build Coastguard Worker movdqa xmm2,[esp] 922*8fb009dcSAndroid Build Coastguard Worker movups xmm3,[48+esi] 923*8fb009dcSAndroid Build Coastguard Worker movups xmm4,[64+esi] 924*8fb009dcSAndroid Build Coastguard Worker xorps xmm5,xmm3 925*8fb009dcSAndroid Build Coastguard Worker movups xmm3,[80+esi] 926*8fb009dcSAndroid Build Coastguard Worker lea esi,[96+esi] 927*8fb009dcSAndroid Build Coastguard Worker movdqa [48+esp],xmm0 928*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,0,194 929*8fb009dcSAndroid Build Coastguard Worker xorps xmm6,xmm4 930*8fb009dcSAndroid Build Coastguard Worker movups [48+edi],xmm5 931*8fb009dcSAndroid Build Coastguard Worker xorps xmm7,xmm3 932*8fb009dcSAndroid Build Coastguard Worker movdqa [64+esp],xmm1 933*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,0,202 934*8fb009dcSAndroid Build Coastguard Worker movups [64+edi],xmm6 935*8fb009dcSAndroid Build Coastguard Worker pshufd xmm2,xmm0,192 936*8fb009dcSAndroid Build Coastguard Worker movups [80+edi],xmm7 937*8fb009dcSAndroid Build Coastguard Worker lea edi,[96+edi] 938*8fb009dcSAndroid Build Coastguard Worker pshufd xmm3,xmm0,128 939*8fb009dcSAndroid Build Coastguard Worker sub eax,6 940*8fb009dcSAndroid Build Coastguard Worker jnc NEAR L$041ctr32_loop6 941*8fb009dcSAndroid Build Coastguard Worker add eax,6 942*8fb009dcSAndroid Build Coastguard Worker jz NEAR L$042ctr32_ret 943*8fb009dcSAndroid Build Coastguard Worker movdqu xmm7,[ebp] 944*8fb009dcSAndroid Build Coastguard Worker mov edx,ebp 945*8fb009dcSAndroid Build Coastguard Worker pxor xmm7,[32+esp] 946*8fb009dcSAndroid Build Coastguard Worker mov ecx,DWORD [240+ebp] 947*8fb009dcSAndroid Build Coastguard WorkerL$040ctr32_tail: 948*8fb009dcSAndroid Build Coastguard Worker por xmm2,xmm7 949*8fb009dcSAndroid Build Coastguard Worker cmp eax,2 950*8fb009dcSAndroid Build Coastguard Worker jb NEAR L$043ctr32_one 951*8fb009dcSAndroid Build Coastguard Worker pshufd xmm4,xmm0,64 952*8fb009dcSAndroid Build Coastguard Worker por xmm3,xmm7 953*8fb009dcSAndroid Build Coastguard Worker je NEAR L$044ctr32_two 954*8fb009dcSAndroid Build Coastguard Worker pshufd xmm5,xmm1,192 955*8fb009dcSAndroid Build Coastguard Worker por xmm4,xmm7 956*8fb009dcSAndroid Build Coastguard Worker cmp eax,4 957*8fb009dcSAndroid Build Coastguard Worker jb NEAR L$045ctr32_three 958*8fb009dcSAndroid Build Coastguard Worker pshufd xmm6,xmm1,128 959*8fb009dcSAndroid Build Coastguard Worker por xmm5,xmm7 960*8fb009dcSAndroid Build Coastguard Worker je NEAR L$046ctr32_four 961*8fb009dcSAndroid Build Coastguard Worker por xmm6,xmm7 962*8fb009dcSAndroid Build Coastguard Worker call __aesni_encrypt6 963*8fb009dcSAndroid Build Coastguard Worker movups xmm1,[esi] 964*8fb009dcSAndroid Build Coastguard Worker movups xmm0,[16+esi] 965*8fb009dcSAndroid Build Coastguard Worker xorps xmm2,xmm1 966*8fb009dcSAndroid Build Coastguard Worker movups xmm1,[32+esi] 967*8fb009dcSAndroid Build Coastguard Worker xorps xmm3,xmm0 968*8fb009dcSAndroid Build Coastguard Worker movups xmm0,[48+esi] 969*8fb009dcSAndroid Build Coastguard Worker xorps xmm4,xmm1 970*8fb009dcSAndroid Build Coastguard Worker movups xmm1,[64+esi] 971*8fb009dcSAndroid Build Coastguard Worker xorps xmm5,xmm0 972*8fb009dcSAndroid Build Coastguard Worker movups [edi],xmm2 973*8fb009dcSAndroid Build Coastguard Worker xorps xmm6,xmm1 974*8fb009dcSAndroid Build Coastguard Worker movups [16+edi],xmm3 975*8fb009dcSAndroid Build Coastguard Worker movups [32+edi],xmm4 976*8fb009dcSAndroid Build Coastguard Worker movups [48+edi],xmm5 977*8fb009dcSAndroid Build Coastguard Worker movups [64+edi],xmm6 978*8fb009dcSAndroid Build Coastguard Worker jmp NEAR L$042ctr32_ret 979*8fb009dcSAndroid Build Coastguard Workeralign 16 980*8fb009dcSAndroid Build Coastguard WorkerL$039ctr32_one_shortcut: 981*8fb009dcSAndroid Build Coastguard Worker movups xmm2,[ebx] 982*8fb009dcSAndroid Build Coastguard Worker mov ecx,DWORD [240+edx] 983*8fb009dcSAndroid Build Coastguard WorkerL$043ctr32_one: 984*8fb009dcSAndroid Build Coastguard Worker movups xmm0,[edx] 985*8fb009dcSAndroid Build Coastguard Worker movups xmm1,[16+edx] 986*8fb009dcSAndroid Build Coastguard Worker lea edx,[32+edx] 987*8fb009dcSAndroid Build Coastguard Worker xorps xmm2,xmm0 988*8fb009dcSAndroid Build Coastguard WorkerL$047enc1_loop_7: 989*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,209 990*8fb009dcSAndroid Build Coastguard Worker dec ecx 991*8fb009dcSAndroid Build Coastguard Worker movups xmm1,[edx] 992*8fb009dcSAndroid Build Coastguard Worker lea edx,[16+edx] 993*8fb009dcSAndroid Build Coastguard Worker jnz NEAR L$047enc1_loop_7 994*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,221,209 995*8fb009dcSAndroid Build Coastguard Worker movups xmm6,[esi] 996*8fb009dcSAndroid Build Coastguard Worker xorps xmm6,xmm2 997*8fb009dcSAndroid Build Coastguard Worker movups [edi],xmm6 998*8fb009dcSAndroid Build Coastguard Worker jmp NEAR L$042ctr32_ret 999*8fb009dcSAndroid Build Coastguard Workeralign 16 1000*8fb009dcSAndroid Build Coastguard WorkerL$044ctr32_two: 1001*8fb009dcSAndroid Build Coastguard Worker call __aesni_encrypt2 1002*8fb009dcSAndroid Build Coastguard Worker movups xmm5,[esi] 1003*8fb009dcSAndroid Build Coastguard Worker movups xmm6,[16+esi] 1004*8fb009dcSAndroid Build Coastguard Worker xorps xmm2,xmm5 1005*8fb009dcSAndroid Build Coastguard Worker xorps xmm3,xmm6 1006*8fb009dcSAndroid Build Coastguard Worker movups [edi],xmm2 1007*8fb009dcSAndroid Build Coastguard Worker movups [16+edi],xmm3 1008*8fb009dcSAndroid Build Coastguard Worker jmp NEAR L$042ctr32_ret 1009*8fb009dcSAndroid Build Coastguard Workeralign 16 1010*8fb009dcSAndroid Build Coastguard WorkerL$045ctr32_three: 1011*8fb009dcSAndroid Build Coastguard Worker call __aesni_encrypt3 1012*8fb009dcSAndroid Build Coastguard Worker movups xmm5,[esi] 1013*8fb009dcSAndroid Build Coastguard Worker movups xmm6,[16+esi] 1014*8fb009dcSAndroid Build Coastguard Worker xorps xmm2,xmm5 1015*8fb009dcSAndroid Build Coastguard Worker movups xmm7,[32+esi] 1016*8fb009dcSAndroid Build Coastguard Worker xorps xmm3,xmm6 1017*8fb009dcSAndroid Build Coastguard Worker movups [edi],xmm2 1018*8fb009dcSAndroid Build Coastguard Worker xorps xmm4,xmm7 1019*8fb009dcSAndroid Build Coastguard Worker movups [16+edi],xmm3 1020*8fb009dcSAndroid Build Coastguard Worker movups [32+edi],xmm4 1021*8fb009dcSAndroid Build Coastguard Worker jmp NEAR L$042ctr32_ret 1022*8fb009dcSAndroid Build Coastguard Workeralign 16 1023*8fb009dcSAndroid Build Coastguard WorkerL$046ctr32_four: 1024*8fb009dcSAndroid Build Coastguard Worker call __aesni_encrypt4 1025*8fb009dcSAndroid Build Coastguard Worker movups xmm6,[esi] 1026*8fb009dcSAndroid Build Coastguard Worker movups xmm7,[16+esi] 1027*8fb009dcSAndroid Build Coastguard Worker movups xmm1,[32+esi] 1028*8fb009dcSAndroid Build Coastguard Worker xorps xmm2,xmm6 1029*8fb009dcSAndroid Build Coastguard Worker movups xmm0,[48+esi] 1030*8fb009dcSAndroid Build Coastguard Worker xorps xmm3,xmm7 1031*8fb009dcSAndroid Build Coastguard Worker movups [edi],xmm2 1032*8fb009dcSAndroid Build Coastguard Worker xorps xmm4,xmm1 1033*8fb009dcSAndroid Build Coastguard Worker movups [16+edi],xmm3 1034*8fb009dcSAndroid Build Coastguard Worker xorps xmm5,xmm0 1035*8fb009dcSAndroid Build Coastguard Worker movups [32+edi],xmm4 1036*8fb009dcSAndroid Build Coastguard Worker movups [48+edi],xmm5 1037*8fb009dcSAndroid Build Coastguard WorkerL$042ctr32_ret: 1038*8fb009dcSAndroid Build Coastguard Worker pxor xmm0,xmm0 1039*8fb009dcSAndroid Build Coastguard Worker pxor xmm1,xmm1 1040*8fb009dcSAndroid Build Coastguard Worker pxor xmm2,xmm2 1041*8fb009dcSAndroid Build Coastguard Worker pxor xmm3,xmm3 1042*8fb009dcSAndroid Build Coastguard Worker pxor xmm4,xmm4 1043*8fb009dcSAndroid Build Coastguard Worker movdqa [32+esp],xmm0 1044*8fb009dcSAndroid Build Coastguard Worker pxor xmm5,xmm5 1045*8fb009dcSAndroid Build Coastguard Worker movdqa [48+esp],xmm0 1046*8fb009dcSAndroid Build Coastguard Worker pxor xmm6,xmm6 1047*8fb009dcSAndroid Build Coastguard Worker movdqa [64+esp],xmm0 1048*8fb009dcSAndroid Build Coastguard Worker pxor xmm7,xmm7 1049*8fb009dcSAndroid Build Coastguard Worker mov esp,DWORD [80+esp] 1050*8fb009dcSAndroid Build Coastguard Worker pop edi 1051*8fb009dcSAndroid Build Coastguard Worker pop esi 1052*8fb009dcSAndroid Build Coastguard Worker pop ebx 1053*8fb009dcSAndroid Build Coastguard Worker pop ebp 1054*8fb009dcSAndroid Build Coastguard Worker ret 1055*8fb009dcSAndroid Build Coastguard Workerglobal _aes_hw_xts_encrypt 1056*8fb009dcSAndroid Build Coastguard Workeralign 16 1057*8fb009dcSAndroid Build Coastguard Worker_aes_hw_xts_encrypt: 1058*8fb009dcSAndroid Build Coastguard WorkerL$_aes_hw_xts_encrypt_begin: 1059*8fb009dcSAndroid Build Coastguard Worker push ebp 1060*8fb009dcSAndroid Build Coastguard Worker push ebx 1061*8fb009dcSAndroid Build Coastguard Worker push esi 1062*8fb009dcSAndroid Build Coastguard Worker push edi 1063*8fb009dcSAndroid Build Coastguard Worker mov edx,DWORD [36+esp] 1064*8fb009dcSAndroid Build Coastguard Worker mov esi,DWORD [40+esp] 1065*8fb009dcSAndroid Build Coastguard Worker mov ecx,DWORD [240+edx] 1066*8fb009dcSAndroid Build Coastguard Worker movups xmm2,[esi] 1067*8fb009dcSAndroid Build Coastguard Worker movups xmm0,[edx] 1068*8fb009dcSAndroid Build Coastguard Worker movups xmm1,[16+edx] 1069*8fb009dcSAndroid Build Coastguard Worker lea edx,[32+edx] 1070*8fb009dcSAndroid Build Coastguard Worker xorps xmm2,xmm0 1071*8fb009dcSAndroid Build Coastguard WorkerL$048enc1_loop_8: 1072*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,209 1073*8fb009dcSAndroid Build Coastguard Worker dec ecx 1074*8fb009dcSAndroid Build Coastguard Worker movups xmm1,[edx] 1075*8fb009dcSAndroid Build Coastguard Worker lea edx,[16+edx] 1076*8fb009dcSAndroid Build Coastguard Worker jnz NEAR L$048enc1_loop_8 1077*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,221,209 1078*8fb009dcSAndroid Build Coastguard Worker mov esi,DWORD [20+esp] 1079*8fb009dcSAndroid Build Coastguard Worker mov edi,DWORD [24+esp] 1080*8fb009dcSAndroid Build Coastguard Worker mov eax,DWORD [28+esp] 1081*8fb009dcSAndroid Build Coastguard Worker mov edx,DWORD [32+esp] 1082*8fb009dcSAndroid Build Coastguard Worker mov ebp,esp 1083*8fb009dcSAndroid Build Coastguard Worker sub esp,120 1084*8fb009dcSAndroid Build Coastguard Worker mov ecx,DWORD [240+edx] 1085*8fb009dcSAndroid Build Coastguard Worker and esp,-16 1086*8fb009dcSAndroid Build Coastguard Worker mov DWORD [96+esp],135 1087*8fb009dcSAndroid Build Coastguard Worker mov DWORD [100+esp],0 1088*8fb009dcSAndroid Build Coastguard Worker mov DWORD [104+esp],1 1089*8fb009dcSAndroid Build Coastguard Worker mov DWORD [108+esp],0 1090*8fb009dcSAndroid Build Coastguard Worker mov DWORD [112+esp],eax 1091*8fb009dcSAndroid Build Coastguard Worker mov DWORD [116+esp],ebp 1092*8fb009dcSAndroid Build Coastguard Worker movdqa xmm1,xmm2 1093*8fb009dcSAndroid Build Coastguard Worker pxor xmm0,xmm0 1094*8fb009dcSAndroid Build Coastguard Worker movdqa xmm3,[96+esp] 1095*8fb009dcSAndroid Build Coastguard Worker pcmpgtd xmm0,xmm1 1096*8fb009dcSAndroid Build Coastguard Worker and eax,-16 1097*8fb009dcSAndroid Build Coastguard Worker mov ebp,edx 1098*8fb009dcSAndroid Build Coastguard Worker mov ebx,ecx 1099*8fb009dcSAndroid Build Coastguard Worker sub eax,96 1100*8fb009dcSAndroid Build Coastguard Worker jc NEAR L$049xts_enc_short 1101*8fb009dcSAndroid Build Coastguard Worker shl ecx,4 1102*8fb009dcSAndroid Build Coastguard Worker mov ebx,16 1103*8fb009dcSAndroid Build Coastguard Worker sub ebx,ecx 1104*8fb009dcSAndroid Build Coastguard Worker lea edx,[32+ecx*1+edx] 1105*8fb009dcSAndroid Build Coastguard Worker jmp NEAR L$050xts_enc_loop6 1106*8fb009dcSAndroid Build Coastguard Workeralign 16 1107*8fb009dcSAndroid Build Coastguard WorkerL$050xts_enc_loop6: 1108*8fb009dcSAndroid Build Coastguard Worker pshufd xmm2,xmm0,19 1109*8fb009dcSAndroid Build Coastguard Worker pxor xmm0,xmm0 1110*8fb009dcSAndroid Build Coastguard Worker movdqa [esp],xmm1 1111*8fb009dcSAndroid Build Coastguard Worker paddq xmm1,xmm1 1112*8fb009dcSAndroid Build Coastguard Worker pand xmm2,xmm3 1113*8fb009dcSAndroid Build Coastguard Worker pcmpgtd xmm0,xmm1 1114*8fb009dcSAndroid Build Coastguard Worker pxor xmm1,xmm2 1115*8fb009dcSAndroid Build Coastguard Worker pshufd xmm2,xmm0,19 1116*8fb009dcSAndroid Build Coastguard Worker pxor xmm0,xmm0 1117*8fb009dcSAndroid Build Coastguard Worker movdqa [16+esp],xmm1 1118*8fb009dcSAndroid Build Coastguard Worker paddq xmm1,xmm1 1119*8fb009dcSAndroid Build Coastguard Worker pand xmm2,xmm3 1120*8fb009dcSAndroid Build Coastguard Worker pcmpgtd xmm0,xmm1 1121*8fb009dcSAndroid Build Coastguard Worker pxor xmm1,xmm2 1122*8fb009dcSAndroid Build Coastguard Worker pshufd xmm2,xmm0,19 1123*8fb009dcSAndroid Build Coastguard Worker pxor xmm0,xmm0 1124*8fb009dcSAndroid Build Coastguard Worker movdqa [32+esp],xmm1 1125*8fb009dcSAndroid Build Coastguard Worker paddq xmm1,xmm1 1126*8fb009dcSAndroid Build Coastguard Worker pand xmm2,xmm3 1127*8fb009dcSAndroid Build Coastguard Worker pcmpgtd xmm0,xmm1 1128*8fb009dcSAndroid Build Coastguard Worker pxor xmm1,xmm2 1129*8fb009dcSAndroid Build Coastguard Worker pshufd xmm2,xmm0,19 1130*8fb009dcSAndroid Build Coastguard Worker pxor xmm0,xmm0 1131*8fb009dcSAndroid Build Coastguard Worker movdqa [48+esp],xmm1 1132*8fb009dcSAndroid Build Coastguard Worker paddq xmm1,xmm1 1133*8fb009dcSAndroid Build Coastguard Worker pand xmm2,xmm3 1134*8fb009dcSAndroid Build Coastguard Worker pcmpgtd xmm0,xmm1 1135*8fb009dcSAndroid Build Coastguard Worker pxor xmm1,xmm2 1136*8fb009dcSAndroid Build Coastguard Worker pshufd xmm7,xmm0,19 1137*8fb009dcSAndroid Build Coastguard Worker movdqa [64+esp],xmm1 1138*8fb009dcSAndroid Build Coastguard Worker paddq xmm1,xmm1 1139*8fb009dcSAndroid Build Coastguard Worker movups xmm0,[ebp] 1140*8fb009dcSAndroid Build Coastguard Worker pand xmm7,xmm3 1141*8fb009dcSAndroid Build Coastguard Worker movups xmm2,[esi] 1142*8fb009dcSAndroid Build Coastguard Worker pxor xmm7,xmm1 1143*8fb009dcSAndroid Build Coastguard Worker mov ecx,ebx 1144*8fb009dcSAndroid Build Coastguard Worker movdqu xmm3,[16+esi] 1145*8fb009dcSAndroid Build Coastguard Worker xorps xmm2,xmm0 1146*8fb009dcSAndroid Build Coastguard Worker movdqu xmm4,[32+esi] 1147*8fb009dcSAndroid Build Coastguard Worker pxor xmm3,xmm0 1148*8fb009dcSAndroid Build Coastguard Worker movdqu xmm5,[48+esi] 1149*8fb009dcSAndroid Build Coastguard Worker pxor xmm4,xmm0 1150*8fb009dcSAndroid Build Coastguard Worker movdqu xmm6,[64+esi] 1151*8fb009dcSAndroid Build Coastguard Worker pxor xmm5,xmm0 1152*8fb009dcSAndroid Build Coastguard Worker movdqu xmm1,[80+esi] 1153*8fb009dcSAndroid Build Coastguard Worker pxor xmm6,xmm0 1154*8fb009dcSAndroid Build Coastguard Worker lea esi,[96+esi] 1155*8fb009dcSAndroid Build Coastguard Worker pxor xmm2,[esp] 1156*8fb009dcSAndroid Build Coastguard Worker movdqa [80+esp],xmm7 1157*8fb009dcSAndroid Build Coastguard Worker pxor xmm7,xmm1 1158*8fb009dcSAndroid Build Coastguard Worker movups xmm1,[16+ebp] 1159*8fb009dcSAndroid Build Coastguard Worker pxor xmm3,[16+esp] 1160*8fb009dcSAndroid Build Coastguard Worker pxor xmm4,[32+esp] 1161*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,209 1162*8fb009dcSAndroid Build Coastguard Worker pxor xmm5,[48+esp] 1163*8fb009dcSAndroid Build Coastguard Worker pxor xmm6,[64+esp] 1164*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,217 1165*8fb009dcSAndroid Build Coastguard Worker pxor xmm7,xmm0 1166*8fb009dcSAndroid Build Coastguard Worker movups xmm0,[32+ebp] 1167*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,225 1168*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,233 1169*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,241 1170*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,249 1171*8fb009dcSAndroid Build Coastguard Worker call L$_aesni_encrypt6_enter 1172*8fb009dcSAndroid Build Coastguard Worker movdqa xmm1,[80+esp] 1173*8fb009dcSAndroid Build Coastguard Worker pxor xmm0,xmm0 1174*8fb009dcSAndroid Build Coastguard Worker xorps xmm2,[esp] 1175*8fb009dcSAndroid Build Coastguard Worker pcmpgtd xmm0,xmm1 1176*8fb009dcSAndroid Build Coastguard Worker xorps xmm3,[16+esp] 1177*8fb009dcSAndroid Build Coastguard Worker movups [edi],xmm2 1178*8fb009dcSAndroid Build Coastguard Worker xorps xmm4,[32+esp] 1179*8fb009dcSAndroid Build Coastguard Worker movups [16+edi],xmm3 1180*8fb009dcSAndroid Build Coastguard Worker xorps xmm5,[48+esp] 1181*8fb009dcSAndroid Build Coastguard Worker movups [32+edi],xmm4 1182*8fb009dcSAndroid Build Coastguard Worker xorps xmm6,[64+esp] 1183*8fb009dcSAndroid Build Coastguard Worker movups [48+edi],xmm5 1184*8fb009dcSAndroid Build Coastguard Worker xorps xmm7,xmm1 1185*8fb009dcSAndroid Build Coastguard Worker movups [64+edi],xmm6 1186*8fb009dcSAndroid Build Coastguard Worker pshufd xmm2,xmm0,19 1187*8fb009dcSAndroid Build Coastguard Worker movups [80+edi],xmm7 1188*8fb009dcSAndroid Build Coastguard Worker lea edi,[96+edi] 1189*8fb009dcSAndroid Build Coastguard Worker movdqa xmm3,[96+esp] 1190*8fb009dcSAndroid Build Coastguard Worker pxor xmm0,xmm0 1191*8fb009dcSAndroid Build Coastguard Worker paddq xmm1,xmm1 1192*8fb009dcSAndroid Build Coastguard Worker pand xmm2,xmm3 1193*8fb009dcSAndroid Build Coastguard Worker pcmpgtd xmm0,xmm1 1194*8fb009dcSAndroid Build Coastguard Worker pxor xmm1,xmm2 1195*8fb009dcSAndroid Build Coastguard Worker sub eax,96 1196*8fb009dcSAndroid Build Coastguard Worker jnc NEAR L$050xts_enc_loop6 1197*8fb009dcSAndroid Build Coastguard Worker mov ecx,DWORD [240+ebp] 1198*8fb009dcSAndroid Build Coastguard Worker mov edx,ebp 1199*8fb009dcSAndroid Build Coastguard Worker mov ebx,ecx 1200*8fb009dcSAndroid Build Coastguard WorkerL$049xts_enc_short: 1201*8fb009dcSAndroid Build Coastguard Worker add eax,96 1202*8fb009dcSAndroid Build Coastguard Worker jz NEAR L$051xts_enc_done6x 1203*8fb009dcSAndroid Build Coastguard Worker movdqa xmm5,xmm1 1204*8fb009dcSAndroid Build Coastguard Worker cmp eax,32 1205*8fb009dcSAndroid Build Coastguard Worker jb NEAR L$052xts_enc_one 1206*8fb009dcSAndroid Build Coastguard Worker pshufd xmm2,xmm0,19 1207*8fb009dcSAndroid Build Coastguard Worker pxor xmm0,xmm0 1208*8fb009dcSAndroid Build Coastguard Worker paddq xmm1,xmm1 1209*8fb009dcSAndroid Build Coastguard Worker pand xmm2,xmm3 1210*8fb009dcSAndroid Build Coastguard Worker pcmpgtd xmm0,xmm1 1211*8fb009dcSAndroid Build Coastguard Worker pxor xmm1,xmm2 1212*8fb009dcSAndroid Build Coastguard Worker je NEAR L$053xts_enc_two 1213*8fb009dcSAndroid Build Coastguard Worker pshufd xmm2,xmm0,19 1214*8fb009dcSAndroid Build Coastguard Worker pxor xmm0,xmm0 1215*8fb009dcSAndroid Build Coastguard Worker movdqa xmm6,xmm1 1216*8fb009dcSAndroid Build Coastguard Worker paddq xmm1,xmm1 1217*8fb009dcSAndroid Build Coastguard Worker pand xmm2,xmm3 1218*8fb009dcSAndroid Build Coastguard Worker pcmpgtd xmm0,xmm1 1219*8fb009dcSAndroid Build Coastguard Worker pxor xmm1,xmm2 1220*8fb009dcSAndroid Build Coastguard Worker cmp eax,64 1221*8fb009dcSAndroid Build Coastguard Worker jb NEAR L$054xts_enc_three 1222*8fb009dcSAndroid Build Coastguard Worker pshufd xmm2,xmm0,19 1223*8fb009dcSAndroid Build Coastguard Worker pxor xmm0,xmm0 1224*8fb009dcSAndroid Build Coastguard Worker movdqa xmm7,xmm1 1225*8fb009dcSAndroid Build Coastguard Worker paddq xmm1,xmm1 1226*8fb009dcSAndroid Build Coastguard Worker pand xmm2,xmm3 1227*8fb009dcSAndroid Build Coastguard Worker pcmpgtd xmm0,xmm1 1228*8fb009dcSAndroid Build Coastguard Worker pxor xmm1,xmm2 1229*8fb009dcSAndroid Build Coastguard Worker movdqa [esp],xmm5 1230*8fb009dcSAndroid Build Coastguard Worker movdqa [16+esp],xmm6 1231*8fb009dcSAndroid Build Coastguard Worker je NEAR L$055xts_enc_four 1232*8fb009dcSAndroid Build Coastguard Worker movdqa [32+esp],xmm7 1233*8fb009dcSAndroid Build Coastguard Worker pshufd xmm7,xmm0,19 1234*8fb009dcSAndroid Build Coastguard Worker movdqa [48+esp],xmm1 1235*8fb009dcSAndroid Build Coastguard Worker paddq xmm1,xmm1 1236*8fb009dcSAndroid Build Coastguard Worker pand xmm7,xmm3 1237*8fb009dcSAndroid Build Coastguard Worker pxor xmm7,xmm1 1238*8fb009dcSAndroid Build Coastguard Worker movdqu xmm2,[esi] 1239*8fb009dcSAndroid Build Coastguard Worker movdqu xmm3,[16+esi] 1240*8fb009dcSAndroid Build Coastguard Worker movdqu xmm4,[32+esi] 1241*8fb009dcSAndroid Build Coastguard Worker pxor xmm2,[esp] 1242*8fb009dcSAndroid Build Coastguard Worker movdqu xmm5,[48+esi] 1243*8fb009dcSAndroid Build Coastguard Worker pxor xmm3,[16+esp] 1244*8fb009dcSAndroid Build Coastguard Worker movdqu xmm6,[64+esi] 1245*8fb009dcSAndroid Build Coastguard Worker pxor xmm4,[32+esp] 1246*8fb009dcSAndroid Build Coastguard Worker lea esi,[80+esi] 1247*8fb009dcSAndroid Build Coastguard Worker pxor xmm5,[48+esp] 1248*8fb009dcSAndroid Build Coastguard Worker movdqa [64+esp],xmm7 1249*8fb009dcSAndroid Build Coastguard Worker pxor xmm6,xmm7 1250*8fb009dcSAndroid Build Coastguard Worker call __aesni_encrypt6 1251*8fb009dcSAndroid Build Coastguard Worker movaps xmm1,[64+esp] 1252*8fb009dcSAndroid Build Coastguard Worker xorps xmm2,[esp] 1253*8fb009dcSAndroid Build Coastguard Worker xorps xmm3,[16+esp] 1254*8fb009dcSAndroid Build Coastguard Worker xorps xmm4,[32+esp] 1255*8fb009dcSAndroid Build Coastguard Worker movups [edi],xmm2 1256*8fb009dcSAndroid Build Coastguard Worker xorps xmm5,[48+esp] 1257*8fb009dcSAndroid Build Coastguard Worker movups [16+edi],xmm3 1258*8fb009dcSAndroid Build Coastguard Worker xorps xmm6,xmm1 1259*8fb009dcSAndroid Build Coastguard Worker movups [32+edi],xmm4 1260*8fb009dcSAndroid Build Coastguard Worker movups [48+edi],xmm5 1261*8fb009dcSAndroid Build Coastguard Worker movups [64+edi],xmm6 1262*8fb009dcSAndroid Build Coastguard Worker lea edi,[80+edi] 1263*8fb009dcSAndroid Build Coastguard Worker jmp NEAR L$056xts_enc_done 1264*8fb009dcSAndroid Build Coastguard Workeralign 16 1265*8fb009dcSAndroid Build Coastguard WorkerL$052xts_enc_one: 1266*8fb009dcSAndroid Build Coastguard Worker movups xmm2,[esi] 1267*8fb009dcSAndroid Build Coastguard Worker lea esi,[16+esi] 1268*8fb009dcSAndroid Build Coastguard Worker xorps xmm2,xmm5 1269*8fb009dcSAndroid Build Coastguard Worker movups xmm0,[edx] 1270*8fb009dcSAndroid Build Coastguard Worker movups xmm1,[16+edx] 1271*8fb009dcSAndroid Build Coastguard Worker lea edx,[32+edx] 1272*8fb009dcSAndroid Build Coastguard Worker xorps xmm2,xmm0 1273*8fb009dcSAndroid Build Coastguard WorkerL$057enc1_loop_9: 1274*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,209 1275*8fb009dcSAndroid Build Coastguard Worker dec ecx 1276*8fb009dcSAndroid Build Coastguard Worker movups xmm1,[edx] 1277*8fb009dcSAndroid Build Coastguard Worker lea edx,[16+edx] 1278*8fb009dcSAndroid Build Coastguard Worker jnz NEAR L$057enc1_loop_9 1279*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,221,209 1280*8fb009dcSAndroid Build Coastguard Worker xorps xmm2,xmm5 1281*8fb009dcSAndroid Build Coastguard Worker movups [edi],xmm2 1282*8fb009dcSAndroid Build Coastguard Worker lea edi,[16+edi] 1283*8fb009dcSAndroid Build Coastguard Worker movdqa xmm1,xmm5 1284*8fb009dcSAndroid Build Coastguard Worker jmp NEAR L$056xts_enc_done 1285*8fb009dcSAndroid Build Coastguard Workeralign 16 1286*8fb009dcSAndroid Build Coastguard WorkerL$053xts_enc_two: 1287*8fb009dcSAndroid Build Coastguard Worker movaps xmm6,xmm1 1288*8fb009dcSAndroid Build Coastguard Worker movups xmm2,[esi] 1289*8fb009dcSAndroid Build Coastguard Worker movups xmm3,[16+esi] 1290*8fb009dcSAndroid Build Coastguard Worker lea esi,[32+esi] 1291*8fb009dcSAndroid Build Coastguard Worker xorps xmm2,xmm5 1292*8fb009dcSAndroid Build Coastguard Worker xorps xmm3,xmm6 1293*8fb009dcSAndroid Build Coastguard Worker call __aesni_encrypt2 1294*8fb009dcSAndroid Build Coastguard Worker xorps xmm2,xmm5 1295*8fb009dcSAndroid Build Coastguard Worker xorps xmm3,xmm6 1296*8fb009dcSAndroid Build Coastguard Worker movups [edi],xmm2 1297*8fb009dcSAndroid Build Coastguard Worker movups [16+edi],xmm3 1298*8fb009dcSAndroid Build Coastguard Worker lea edi,[32+edi] 1299*8fb009dcSAndroid Build Coastguard Worker movdqa xmm1,xmm6 1300*8fb009dcSAndroid Build Coastguard Worker jmp NEAR L$056xts_enc_done 1301*8fb009dcSAndroid Build Coastguard Workeralign 16 1302*8fb009dcSAndroid Build Coastguard WorkerL$054xts_enc_three: 1303*8fb009dcSAndroid Build Coastguard Worker movaps xmm7,xmm1 1304*8fb009dcSAndroid Build Coastguard Worker movups xmm2,[esi] 1305*8fb009dcSAndroid Build Coastguard Worker movups xmm3,[16+esi] 1306*8fb009dcSAndroid Build Coastguard Worker movups xmm4,[32+esi] 1307*8fb009dcSAndroid Build Coastguard Worker lea esi,[48+esi] 1308*8fb009dcSAndroid Build Coastguard Worker xorps xmm2,xmm5 1309*8fb009dcSAndroid Build Coastguard Worker xorps xmm3,xmm6 1310*8fb009dcSAndroid Build Coastguard Worker xorps xmm4,xmm7 1311*8fb009dcSAndroid Build Coastguard Worker call __aesni_encrypt3 1312*8fb009dcSAndroid Build Coastguard Worker xorps xmm2,xmm5 1313*8fb009dcSAndroid Build Coastguard Worker xorps xmm3,xmm6 1314*8fb009dcSAndroid Build Coastguard Worker xorps xmm4,xmm7 1315*8fb009dcSAndroid Build Coastguard Worker movups [edi],xmm2 1316*8fb009dcSAndroid Build Coastguard Worker movups [16+edi],xmm3 1317*8fb009dcSAndroid Build Coastguard Worker movups [32+edi],xmm4 1318*8fb009dcSAndroid Build Coastguard Worker lea edi,[48+edi] 1319*8fb009dcSAndroid Build Coastguard Worker movdqa xmm1,xmm7 1320*8fb009dcSAndroid Build Coastguard Worker jmp NEAR L$056xts_enc_done 1321*8fb009dcSAndroid Build Coastguard Workeralign 16 1322*8fb009dcSAndroid Build Coastguard WorkerL$055xts_enc_four: 1323*8fb009dcSAndroid Build Coastguard Worker movaps xmm6,xmm1 1324*8fb009dcSAndroid Build Coastguard Worker movups xmm2,[esi] 1325*8fb009dcSAndroid Build Coastguard Worker movups xmm3,[16+esi] 1326*8fb009dcSAndroid Build Coastguard Worker movups xmm4,[32+esi] 1327*8fb009dcSAndroid Build Coastguard Worker xorps xmm2,[esp] 1328*8fb009dcSAndroid Build Coastguard Worker movups xmm5,[48+esi] 1329*8fb009dcSAndroid Build Coastguard Worker lea esi,[64+esi] 1330*8fb009dcSAndroid Build Coastguard Worker xorps xmm3,[16+esp] 1331*8fb009dcSAndroid Build Coastguard Worker xorps xmm4,xmm7 1332*8fb009dcSAndroid Build Coastguard Worker xorps xmm5,xmm6 1333*8fb009dcSAndroid Build Coastguard Worker call __aesni_encrypt4 1334*8fb009dcSAndroid Build Coastguard Worker xorps xmm2,[esp] 1335*8fb009dcSAndroid Build Coastguard Worker xorps xmm3,[16+esp] 1336*8fb009dcSAndroid Build Coastguard Worker xorps xmm4,xmm7 1337*8fb009dcSAndroid Build Coastguard Worker movups [edi],xmm2 1338*8fb009dcSAndroid Build Coastguard Worker xorps xmm5,xmm6 1339*8fb009dcSAndroid Build Coastguard Worker movups [16+edi],xmm3 1340*8fb009dcSAndroid Build Coastguard Worker movups [32+edi],xmm4 1341*8fb009dcSAndroid Build Coastguard Worker movups [48+edi],xmm5 1342*8fb009dcSAndroid Build Coastguard Worker lea edi,[64+edi] 1343*8fb009dcSAndroid Build Coastguard Worker movdqa xmm1,xmm6 1344*8fb009dcSAndroid Build Coastguard Worker jmp NEAR L$056xts_enc_done 1345*8fb009dcSAndroid Build Coastguard Workeralign 16 1346*8fb009dcSAndroid Build Coastguard WorkerL$051xts_enc_done6x: 1347*8fb009dcSAndroid Build Coastguard Worker mov eax,DWORD [112+esp] 1348*8fb009dcSAndroid Build Coastguard Worker and eax,15 1349*8fb009dcSAndroid Build Coastguard Worker jz NEAR L$058xts_enc_ret 1350*8fb009dcSAndroid Build Coastguard Worker movdqa xmm5,xmm1 1351*8fb009dcSAndroid Build Coastguard Worker mov DWORD [112+esp],eax 1352*8fb009dcSAndroid Build Coastguard Worker jmp NEAR L$059xts_enc_steal 1353*8fb009dcSAndroid Build Coastguard Workeralign 16 1354*8fb009dcSAndroid Build Coastguard WorkerL$056xts_enc_done: 1355*8fb009dcSAndroid Build Coastguard Worker mov eax,DWORD [112+esp] 1356*8fb009dcSAndroid Build Coastguard Worker pxor xmm0,xmm0 1357*8fb009dcSAndroid Build Coastguard Worker and eax,15 1358*8fb009dcSAndroid Build Coastguard Worker jz NEAR L$058xts_enc_ret 1359*8fb009dcSAndroid Build Coastguard Worker pcmpgtd xmm0,xmm1 1360*8fb009dcSAndroid Build Coastguard Worker mov DWORD [112+esp],eax 1361*8fb009dcSAndroid Build Coastguard Worker pshufd xmm5,xmm0,19 1362*8fb009dcSAndroid Build Coastguard Worker paddq xmm1,xmm1 1363*8fb009dcSAndroid Build Coastguard Worker pand xmm5,[96+esp] 1364*8fb009dcSAndroid Build Coastguard Worker pxor xmm5,xmm1 1365*8fb009dcSAndroid Build Coastguard WorkerL$059xts_enc_steal: 1366*8fb009dcSAndroid Build Coastguard Worker movzx ecx,BYTE [esi] 1367*8fb009dcSAndroid Build Coastguard Worker movzx edx,BYTE [edi-16] 1368*8fb009dcSAndroid Build Coastguard Worker lea esi,[1+esi] 1369*8fb009dcSAndroid Build Coastguard Worker mov BYTE [edi-16],cl 1370*8fb009dcSAndroid Build Coastguard Worker mov BYTE [edi],dl 1371*8fb009dcSAndroid Build Coastguard Worker lea edi,[1+edi] 1372*8fb009dcSAndroid Build Coastguard Worker sub eax,1 1373*8fb009dcSAndroid Build Coastguard Worker jnz NEAR L$059xts_enc_steal 1374*8fb009dcSAndroid Build Coastguard Worker sub edi,DWORD [112+esp] 1375*8fb009dcSAndroid Build Coastguard Worker mov edx,ebp 1376*8fb009dcSAndroid Build Coastguard Worker mov ecx,ebx 1377*8fb009dcSAndroid Build Coastguard Worker movups xmm2,[edi-16] 1378*8fb009dcSAndroid Build Coastguard Worker xorps xmm2,xmm5 1379*8fb009dcSAndroid Build Coastguard Worker movups xmm0,[edx] 1380*8fb009dcSAndroid Build Coastguard Worker movups xmm1,[16+edx] 1381*8fb009dcSAndroid Build Coastguard Worker lea edx,[32+edx] 1382*8fb009dcSAndroid Build Coastguard Worker xorps xmm2,xmm0 1383*8fb009dcSAndroid Build Coastguard WorkerL$060enc1_loop_10: 1384*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,209 1385*8fb009dcSAndroid Build Coastguard Worker dec ecx 1386*8fb009dcSAndroid Build Coastguard Worker movups xmm1,[edx] 1387*8fb009dcSAndroid Build Coastguard Worker lea edx,[16+edx] 1388*8fb009dcSAndroid Build Coastguard Worker jnz NEAR L$060enc1_loop_10 1389*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,221,209 1390*8fb009dcSAndroid Build Coastguard Worker xorps xmm2,xmm5 1391*8fb009dcSAndroid Build Coastguard Worker movups [edi-16],xmm2 1392*8fb009dcSAndroid Build Coastguard WorkerL$058xts_enc_ret: 1393*8fb009dcSAndroid Build Coastguard Worker pxor xmm0,xmm0 1394*8fb009dcSAndroid Build Coastguard Worker pxor xmm1,xmm1 1395*8fb009dcSAndroid Build Coastguard Worker pxor xmm2,xmm2 1396*8fb009dcSAndroid Build Coastguard Worker movdqa [esp],xmm0 1397*8fb009dcSAndroid Build Coastguard Worker pxor xmm3,xmm3 1398*8fb009dcSAndroid Build Coastguard Worker movdqa [16+esp],xmm0 1399*8fb009dcSAndroid Build Coastguard Worker pxor xmm4,xmm4 1400*8fb009dcSAndroid Build Coastguard Worker movdqa [32+esp],xmm0 1401*8fb009dcSAndroid Build Coastguard Worker pxor xmm5,xmm5 1402*8fb009dcSAndroid Build Coastguard Worker movdqa [48+esp],xmm0 1403*8fb009dcSAndroid Build Coastguard Worker pxor xmm6,xmm6 1404*8fb009dcSAndroid Build Coastguard Worker movdqa [64+esp],xmm0 1405*8fb009dcSAndroid Build Coastguard Worker pxor xmm7,xmm7 1406*8fb009dcSAndroid Build Coastguard Worker movdqa [80+esp],xmm0 1407*8fb009dcSAndroid Build Coastguard Worker mov esp,DWORD [116+esp] 1408*8fb009dcSAndroid Build Coastguard Worker pop edi 1409*8fb009dcSAndroid Build Coastguard Worker pop esi 1410*8fb009dcSAndroid Build Coastguard Worker pop ebx 1411*8fb009dcSAndroid Build Coastguard Worker pop ebp 1412*8fb009dcSAndroid Build Coastguard Worker ret 1413*8fb009dcSAndroid Build Coastguard Workerglobal _aes_hw_xts_decrypt 1414*8fb009dcSAndroid Build Coastguard Workeralign 16 1415*8fb009dcSAndroid Build Coastguard Worker_aes_hw_xts_decrypt: 1416*8fb009dcSAndroid Build Coastguard WorkerL$_aes_hw_xts_decrypt_begin: 1417*8fb009dcSAndroid Build Coastguard Worker push ebp 1418*8fb009dcSAndroid Build Coastguard Worker push ebx 1419*8fb009dcSAndroid Build Coastguard Worker push esi 1420*8fb009dcSAndroid Build Coastguard Worker push edi 1421*8fb009dcSAndroid Build Coastguard Worker mov edx,DWORD [36+esp] 1422*8fb009dcSAndroid Build Coastguard Worker mov esi,DWORD [40+esp] 1423*8fb009dcSAndroid Build Coastguard Worker mov ecx,DWORD [240+edx] 1424*8fb009dcSAndroid Build Coastguard Worker movups xmm2,[esi] 1425*8fb009dcSAndroid Build Coastguard Worker movups xmm0,[edx] 1426*8fb009dcSAndroid Build Coastguard Worker movups xmm1,[16+edx] 1427*8fb009dcSAndroid Build Coastguard Worker lea edx,[32+edx] 1428*8fb009dcSAndroid Build Coastguard Worker xorps xmm2,xmm0 1429*8fb009dcSAndroid Build Coastguard WorkerL$061enc1_loop_11: 1430*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,209 1431*8fb009dcSAndroid Build Coastguard Worker dec ecx 1432*8fb009dcSAndroid Build Coastguard Worker movups xmm1,[edx] 1433*8fb009dcSAndroid Build Coastguard Worker lea edx,[16+edx] 1434*8fb009dcSAndroid Build Coastguard Worker jnz NEAR L$061enc1_loop_11 1435*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,221,209 1436*8fb009dcSAndroid Build Coastguard Worker mov esi,DWORD [20+esp] 1437*8fb009dcSAndroid Build Coastguard Worker mov edi,DWORD [24+esp] 1438*8fb009dcSAndroid Build Coastguard Worker mov eax,DWORD [28+esp] 1439*8fb009dcSAndroid Build Coastguard Worker mov edx,DWORD [32+esp] 1440*8fb009dcSAndroid Build Coastguard Worker mov ebp,esp 1441*8fb009dcSAndroid Build Coastguard Worker sub esp,120 1442*8fb009dcSAndroid Build Coastguard Worker and esp,-16 1443*8fb009dcSAndroid Build Coastguard Worker xor ebx,ebx 1444*8fb009dcSAndroid Build Coastguard Worker test eax,15 1445*8fb009dcSAndroid Build Coastguard Worker setnz bl 1446*8fb009dcSAndroid Build Coastguard Worker shl ebx,4 1447*8fb009dcSAndroid Build Coastguard Worker sub eax,ebx 1448*8fb009dcSAndroid Build Coastguard Worker mov DWORD [96+esp],135 1449*8fb009dcSAndroid Build Coastguard Worker mov DWORD [100+esp],0 1450*8fb009dcSAndroid Build Coastguard Worker mov DWORD [104+esp],1 1451*8fb009dcSAndroid Build Coastguard Worker mov DWORD [108+esp],0 1452*8fb009dcSAndroid Build Coastguard Worker mov DWORD [112+esp],eax 1453*8fb009dcSAndroid Build Coastguard Worker mov DWORD [116+esp],ebp 1454*8fb009dcSAndroid Build Coastguard Worker mov ecx,DWORD [240+edx] 1455*8fb009dcSAndroid Build Coastguard Worker mov ebp,edx 1456*8fb009dcSAndroid Build Coastguard Worker mov ebx,ecx 1457*8fb009dcSAndroid Build Coastguard Worker movdqa xmm1,xmm2 1458*8fb009dcSAndroid Build Coastguard Worker pxor xmm0,xmm0 1459*8fb009dcSAndroid Build Coastguard Worker movdqa xmm3,[96+esp] 1460*8fb009dcSAndroid Build Coastguard Worker pcmpgtd xmm0,xmm1 1461*8fb009dcSAndroid Build Coastguard Worker and eax,-16 1462*8fb009dcSAndroid Build Coastguard Worker sub eax,96 1463*8fb009dcSAndroid Build Coastguard Worker jc NEAR L$062xts_dec_short 1464*8fb009dcSAndroid Build Coastguard Worker shl ecx,4 1465*8fb009dcSAndroid Build Coastguard Worker mov ebx,16 1466*8fb009dcSAndroid Build Coastguard Worker sub ebx,ecx 1467*8fb009dcSAndroid Build Coastguard Worker lea edx,[32+ecx*1+edx] 1468*8fb009dcSAndroid Build Coastguard Worker jmp NEAR L$063xts_dec_loop6 1469*8fb009dcSAndroid Build Coastguard Workeralign 16 1470*8fb009dcSAndroid Build Coastguard WorkerL$063xts_dec_loop6: 1471*8fb009dcSAndroid Build Coastguard Worker pshufd xmm2,xmm0,19 1472*8fb009dcSAndroid Build Coastguard Worker pxor xmm0,xmm0 1473*8fb009dcSAndroid Build Coastguard Worker movdqa [esp],xmm1 1474*8fb009dcSAndroid Build Coastguard Worker paddq xmm1,xmm1 1475*8fb009dcSAndroid Build Coastguard Worker pand xmm2,xmm3 1476*8fb009dcSAndroid Build Coastguard Worker pcmpgtd xmm0,xmm1 1477*8fb009dcSAndroid Build Coastguard Worker pxor xmm1,xmm2 1478*8fb009dcSAndroid Build Coastguard Worker pshufd xmm2,xmm0,19 1479*8fb009dcSAndroid Build Coastguard Worker pxor xmm0,xmm0 1480*8fb009dcSAndroid Build Coastguard Worker movdqa [16+esp],xmm1 1481*8fb009dcSAndroid Build Coastguard Worker paddq xmm1,xmm1 1482*8fb009dcSAndroid Build Coastguard Worker pand xmm2,xmm3 1483*8fb009dcSAndroid Build Coastguard Worker pcmpgtd xmm0,xmm1 1484*8fb009dcSAndroid Build Coastguard Worker pxor xmm1,xmm2 1485*8fb009dcSAndroid Build Coastguard Worker pshufd xmm2,xmm0,19 1486*8fb009dcSAndroid Build Coastguard Worker pxor xmm0,xmm0 1487*8fb009dcSAndroid Build Coastguard Worker movdqa [32+esp],xmm1 1488*8fb009dcSAndroid Build Coastguard Worker paddq xmm1,xmm1 1489*8fb009dcSAndroid Build Coastguard Worker pand xmm2,xmm3 1490*8fb009dcSAndroid Build Coastguard Worker pcmpgtd xmm0,xmm1 1491*8fb009dcSAndroid Build Coastguard Worker pxor xmm1,xmm2 1492*8fb009dcSAndroid Build Coastguard Worker pshufd xmm2,xmm0,19 1493*8fb009dcSAndroid Build Coastguard Worker pxor xmm0,xmm0 1494*8fb009dcSAndroid Build Coastguard Worker movdqa [48+esp],xmm1 1495*8fb009dcSAndroid Build Coastguard Worker paddq xmm1,xmm1 1496*8fb009dcSAndroid Build Coastguard Worker pand xmm2,xmm3 1497*8fb009dcSAndroid Build Coastguard Worker pcmpgtd xmm0,xmm1 1498*8fb009dcSAndroid Build Coastguard Worker pxor xmm1,xmm2 1499*8fb009dcSAndroid Build Coastguard Worker pshufd xmm7,xmm0,19 1500*8fb009dcSAndroid Build Coastguard Worker movdqa [64+esp],xmm1 1501*8fb009dcSAndroid Build Coastguard Worker paddq xmm1,xmm1 1502*8fb009dcSAndroid Build Coastguard Worker movups xmm0,[ebp] 1503*8fb009dcSAndroid Build Coastguard Worker pand xmm7,xmm3 1504*8fb009dcSAndroid Build Coastguard Worker movups xmm2,[esi] 1505*8fb009dcSAndroid Build Coastguard Worker pxor xmm7,xmm1 1506*8fb009dcSAndroid Build Coastguard Worker mov ecx,ebx 1507*8fb009dcSAndroid Build Coastguard Worker movdqu xmm3,[16+esi] 1508*8fb009dcSAndroid Build Coastguard Worker xorps xmm2,xmm0 1509*8fb009dcSAndroid Build Coastguard Worker movdqu xmm4,[32+esi] 1510*8fb009dcSAndroid Build Coastguard Worker pxor xmm3,xmm0 1511*8fb009dcSAndroid Build Coastguard Worker movdqu xmm5,[48+esi] 1512*8fb009dcSAndroid Build Coastguard Worker pxor xmm4,xmm0 1513*8fb009dcSAndroid Build Coastguard Worker movdqu xmm6,[64+esi] 1514*8fb009dcSAndroid Build Coastguard Worker pxor xmm5,xmm0 1515*8fb009dcSAndroid Build Coastguard Worker movdqu xmm1,[80+esi] 1516*8fb009dcSAndroid Build Coastguard Worker pxor xmm6,xmm0 1517*8fb009dcSAndroid Build Coastguard Worker lea esi,[96+esi] 1518*8fb009dcSAndroid Build Coastguard Worker pxor xmm2,[esp] 1519*8fb009dcSAndroid Build Coastguard Worker movdqa [80+esp],xmm7 1520*8fb009dcSAndroid Build Coastguard Worker pxor xmm7,xmm1 1521*8fb009dcSAndroid Build Coastguard Worker movups xmm1,[16+ebp] 1522*8fb009dcSAndroid Build Coastguard Worker pxor xmm3,[16+esp] 1523*8fb009dcSAndroid Build Coastguard Worker pxor xmm4,[32+esp] 1524*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,222,209 1525*8fb009dcSAndroid Build Coastguard Worker pxor xmm5,[48+esp] 1526*8fb009dcSAndroid Build Coastguard Worker pxor xmm6,[64+esp] 1527*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,222,217 1528*8fb009dcSAndroid Build Coastguard Worker pxor xmm7,xmm0 1529*8fb009dcSAndroid Build Coastguard Worker movups xmm0,[32+ebp] 1530*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,222,225 1531*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,222,233 1532*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,222,241 1533*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,222,249 1534*8fb009dcSAndroid Build Coastguard Worker call L$_aesni_decrypt6_enter 1535*8fb009dcSAndroid Build Coastguard Worker movdqa xmm1,[80+esp] 1536*8fb009dcSAndroid Build Coastguard Worker pxor xmm0,xmm0 1537*8fb009dcSAndroid Build Coastguard Worker xorps xmm2,[esp] 1538*8fb009dcSAndroid Build Coastguard Worker pcmpgtd xmm0,xmm1 1539*8fb009dcSAndroid Build Coastguard Worker xorps xmm3,[16+esp] 1540*8fb009dcSAndroid Build Coastguard Worker movups [edi],xmm2 1541*8fb009dcSAndroid Build Coastguard Worker xorps xmm4,[32+esp] 1542*8fb009dcSAndroid Build Coastguard Worker movups [16+edi],xmm3 1543*8fb009dcSAndroid Build Coastguard Worker xorps xmm5,[48+esp] 1544*8fb009dcSAndroid Build Coastguard Worker movups [32+edi],xmm4 1545*8fb009dcSAndroid Build Coastguard Worker xorps xmm6,[64+esp] 1546*8fb009dcSAndroid Build Coastguard Worker movups [48+edi],xmm5 1547*8fb009dcSAndroid Build Coastguard Worker xorps xmm7,xmm1 1548*8fb009dcSAndroid Build Coastguard Worker movups [64+edi],xmm6 1549*8fb009dcSAndroid Build Coastguard Worker pshufd xmm2,xmm0,19 1550*8fb009dcSAndroid Build Coastguard Worker movups [80+edi],xmm7 1551*8fb009dcSAndroid Build Coastguard Worker lea edi,[96+edi] 1552*8fb009dcSAndroid Build Coastguard Worker movdqa xmm3,[96+esp] 1553*8fb009dcSAndroid Build Coastguard Worker pxor xmm0,xmm0 1554*8fb009dcSAndroid Build Coastguard Worker paddq xmm1,xmm1 1555*8fb009dcSAndroid Build Coastguard Worker pand xmm2,xmm3 1556*8fb009dcSAndroid Build Coastguard Worker pcmpgtd xmm0,xmm1 1557*8fb009dcSAndroid Build Coastguard Worker pxor xmm1,xmm2 1558*8fb009dcSAndroid Build Coastguard Worker sub eax,96 1559*8fb009dcSAndroid Build Coastguard Worker jnc NEAR L$063xts_dec_loop6 1560*8fb009dcSAndroid Build Coastguard Worker mov ecx,DWORD [240+ebp] 1561*8fb009dcSAndroid Build Coastguard Worker mov edx,ebp 1562*8fb009dcSAndroid Build Coastguard Worker mov ebx,ecx 1563*8fb009dcSAndroid Build Coastguard WorkerL$062xts_dec_short: 1564*8fb009dcSAndroid Build Coastguard Worker add eax,96 1565*8fb009dcSAndroid Build Coastguard Worker jz NEAR L$064xts_dec_done6x 1566*8fb009dcSAndroid Build Coastguard Worker movdqa xmm5,xmm1 1567*8fb009dcSAndroid Build Coastguard Worker cmp eax,32 1568*8fb009dcSAndroid Build Coastguard Worker jb NEAR L$065xts_dec_one 1569*8fb009dcSAndroid Build Coastguard Worker pshufd xmm2,xmm0,19 1570*8fb009dcSAndroid Build Coastguard Worker pxor xmm0,xmm0 1571*8fb009dcSAndroid Build Coastguard Worker paddq xmm1,xmm1 1572*8fb009dcSAndroid Build Coastguard Worker pand xmm2,xmm3 1573*8fb009dcSAndroid Build Coastguard Worker pcmpgtd xmm0,xmm1 1574*8fb009dcSAndroid Build Coastguard Worker pxor xmm1,xmm2 1575*8fb009dcSAndroid Build Coastguard Worker je NEAR L$066xts_dec_two 1576*8fb009dcSAndroid Build Coastguard Worker pshufd xmm2,xmm0,19 1577*8fb009dcSAndroid Build Coastguard Worker pxor xmm0,xmm0 1578*8fb009dcSAndroid Build Coastguard Worker movdqa xmm6,xmm1 1579*8fb009dcSAndroid Build Coastguard Worker paddq xmm1,xmm1 1580*8fb009dcSAndroid Build Coastguard Worker pand xmm2,xmm3 1581*8fb009dcSAndroid Build Coastguard Worker pcmpgtd xmm0,xmm1 1582*8fb009dcSAndroid Build Coastguard Worker pxor xmm1,xmm2 1583*8fb009dcSAndroid Build Coastguard Worker cmp eax,64 1584*8fb009dcSAndroid Build Coastguard Worker jb NEAR L$067xts_dec_three 1585*8fb009dcSAndroid Build Coastguard Worker pshufd xmm2,xmm0,19 1586*8fb009dcSAndroid Build Coastguard Worker pxor xmm0,xmm0 1587*8fb009dcSAndroid Build Coastguard Worker movdqa xmm7,xmm1 1588*8fb009dcSAndroid Build Coastguard Worker paddq xmm1,xmm1 1589*8fb009dcSAndroid Build Coastguard Worker pand xmm2,xmm3 1590*8fb009dcSAndroid Build Coastguard Worker pcmpgtd xmm0,xmm1 1591*8fb009dcSAndroid Build Coastguard Worker pxor xmm1,xmm2 1592*8fb009dcSAndroid Build Coastguard Worker movdqa [esp],xmm5 1593*8fb009dcSAndroid Build Coastguard Worker movdqa [16+esp],xmm6 1594*8fb009dcSAndroid Build Coastguard Worker je NEAR L$068xts_dec_four 1595*8fb009dcSAndroid Build Coastguard Worker movdqa [32+esp],xmm7 1596*8fb009dcSAndroid Build Coastguard Worker pshufd xmm7,xmm0,19 1597*8fb009dcSAndroid Build Coastguard Worker movdqa [48+esp],xmm1 1598*8fb009dcSAndroid Build Coastguard Worker paddq xmm1,xmm1 1599*8fb009dcSAndroid Build Coastguard Worker pand xmm7,xmm3 1600*8fb009dcSAndroid Build Coastguard Worker pxor xmm7,xmm1 1601*8fb009dcSAndroid Build Coastguard Worker movdqu xmm2,[esi] 1602*8fb009dcSAndroid Build Coastguard Worker movdqu xmm3,[16+esi] 1603*8fb009dcSAndroid Build Coastguard Worker movdqu xmm4,[32+esi] 1604*8fb009dcSAndroid Build Coastguard Worker pxor xmm2,[esp] 1605*8fb009dcSAndroid Build Coastguard Worker movdqu xmm5,[48+esi] 1606*8fb009dcSAndroid Build Coastguard Worker pxor xmm3,[16+esp] 1607*8fb009dcSAndroid Build Coastguard Worker movdqu xmm6,[64+esi] 1608*8fb009dcSAndroid Build Coastguard Worker pxor xmm4,[32+esp] 1609*8fb009dcSAndroid Build Coastguard Worker lea esi,[80+esi] 1610*8fb009dcSAndroid Build Coastguard Worker pxor xmm5,[48+esp] 1611*8fb009dcSAndroid Build Coastguard Worker movdqa [64+esp],xmm7 1612*8fb009dcSAndroid Build Coastguard Worker pxor xmm6,xmm7 1613*8fb009dcSAndroid Build Coastguard Worker call __aesni_decrypt6 1614*8fb009dcSAndroid Build Coastguard Worker movaps xmm1,[64+esp] 1615*8fb009dcSAndroid Build Coastguard Worker xorps xmm2,[esp] 1616*8fb009dcSAndroid Build Coastguard Worker xorps xmm3,[16+esp] 1617*8fb009dcSAndroid Build Coastguard Worker xorps xmm4,[32+esp] 1618*8fb009dcSAndroid Build Coastguard Worker movups [edi],xmm2 1619*8fb009dcSAndroid Build Coastguard Worker xorps xmm5,[48+esp] 1620*8fb009dcSAndroid Build Coastguard Worker movups [16+edi],xmm3 1621*8fb009dcSAndroid Build Coastguard Worker xorps xmm6,xmm1 1622*8fb009dcSAndroid Build Coastguard Worker movups [32+edi],xmm4 1623*8fb009dcSAndroid Build Coastguard Worker movups [48+edi],xmm5 1624*8fb009dcSAndroid Build Coastguard Worker movups [64+edi],xmm6 1625*8fb009dcSAndroid Build Coastguard Worker lea edi,[80+edi] 1626*8fb009dcSAndroid Build Coastguard Worker jmp NEAR L$069xts_dec_done 1627*8fb009dcSAndroid Build Coastguard Workeralign 16 1628*8fb009dcSAndroid Build Coastguard WorkerL$065xts_dec_one: 1629*8fb009dcSAndroid Build Coastguard Worker movups xmm2,[esi] 1630*8fb009dcSAndroid Build Coastguard Worker lea esi,[16+esi] 1631*8fb009dcSAndroid Build Coastguard Worker xorps xmm2,xmm5 1632*8fb009dcSAndroid Build Coastguard Worker movups xmm0,[edx] 1633*8fb009dcSAndroid Build Coastguard Worker movups xmm1,[16+edx] 1634*8fb009dcSAndroid Build Coastguard Worker lea edx,[32+edx] 1635*8fb009dcSAndroid Build Coastguard Worker xorps xmm2,xmm0 1636*8fb009dcSAndroid Build Coastguard WorkerL$070dec1_loop_12: 1637*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,222,209 1638*8fb009dcSAndroid Build Coastguard Worker dec ecx 1639*8fb009dcSAndroid Build Coastguard Worker movups xmm1,[edx] 1640*8fb009dcSAndroid Build Coastguard Worker lea edx,[16+edx] 1641*8fb009dcSAndroid Build Coastguard Worker jnz NEAR L$070dec1_loop_12 1642*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,223,209 1643*8fb009dcSAndroid Build Coastguard Worker xorps xmm2,xmm5 1644*8fb009dcSAndroid Build Coastguard Worker movups [edi],xmm2 1645*8fb009dcSAndroid Build Coastguard Worker lea edi,[16+edi] 1646*8fb009dcSAndroid Build Coastguard Worker movdqa xmm1,xmm5 1647*8fb009dcSAndroid Build Coastguard Worker jmp NEAR L$069xts_dec_done 1648*8fb009dcSAndroid Build Coastguard Workeralign 16 1649*8fb009dcSAndroid Build Coastguard WorkerL$066xts_dec_two: 1650*8fb009dcSAndroid Build Coastguard Worker movaps xmm6,xmm1 1651*8fb009dcSAndroid Build Coastguard Worker movups xmm2,[esi] 1652*8fb009dcSAndroid Build Coastguard Worker movups xmm3,[16+esi] 1653*8fb009dcSAndroid Build Coastguard Worker lea esi,[32+esi] 1654*8fb009dcSAndroid Build Coastguard Worker xorps xmm2,xmm5 1655*8fb009dcSAndroid Build Coastguard Worker xorps xmm3,xmm6 1656*8fb009dcSAndroid Build Coastguard Worker call __aesni_decrypt2 1657*8fb009dcSAndroid Build Coastguard Worker xorps xmm2,xmm5 1658*8fb009dcSAndroid Build Coastguard Worker xorps xmm3,xmm6 1659*8fb009dcSAndroid Build Coastguard Worker movups [edi],xmm2 1660*8fb009dcSAndroid Build Coastguard Worker movups [16+edi],xmm3 1661*8fb009dcSAndroid Build Coastguard Worker lea edi,[32+edi] 1662*8fb009dcSAndroid Build Coastguard Worker movdqa xmm1,xmm6 1663*8fb009dcSAndroid Build Coastguard Worker jmp NEAR L$069xts_dec_done 1664*8fb009dcSAndroid Build Coastguard Workeralign 16 1665*8fb009dcSAndroid Build Coastguard WorkerL$067xts_dec_three: 1666*8fb009dcSAndroid Build Coastguard Worker movaps xmm7,xmm1 1667*8fb009dcSAndroid Build Coastguard Worker movups xmm2,[esi] 1668*8fb009dcSAndroid Build Coastguard Worker movups xmm3,[16+esi] 1669*8fb009dcSAndroid Build Coastguard Worker movups xmm4,[32+esi] 1670*8fb009dcSAndroid Build Coastguard Worker lea esi,[48+esi] 1671*8fb009dcSAndroid Build Coastguard Worker xorps xmm2,xmm5 1672*8fb009dcSAndroid Build Coastguard Worker xorps xmm3,xmm6 1673*8fb009dcSAndroid Build Coastguard Worker xorps xmm4,xmm7 1674*8fb009dcSAndroid Build Coastguard Worker call __aesni_decrypt3 1675*8fb009dcSAndroid Build Coastguard Worker xorps xmm2,xmm5 1676*8fb009dcSAndroid Build Coastguard Worker xorps xmm3,xmm6 1677*8fb009dcSAndroid Build Coastguard Worker xorps xmm4,xmm7 1678*8fb009dcSAndroid Build Coastguard Worker movups [edi],xmm2 1679*8fb009dcSAndroid Build Coastguard Worker movups [16+edi],xmm3 1680*8fb009dcSAndroid Build Coastguard Worker movups [32+edi],xmm4 1681*8fb009dcSAndroid Build Coastguard Worker lea edi,[48+edi] 1682*8fb009dcSAndroid Build Coastguard Worker movdqa xmm1,xmm7 1683*8fb009dcSAndroid Build Coastguard Worker jmp NEAR L$069xts_dec_done 1684*8fb009dcSAndroid Build Coastguard Workeralign 16 1685*8fb009dcSAndroid Build Coastguard WorkerL$068xts_dec_four: 1686*8fb009dcSAndroid Build Coastguard Worker movaps xmm6,xmm1 1687*8fb009dcSAndroid Build Coastguard Worker movups xmm2,[esi] 1688*8fb009dcSAndroid Build Coastguard Worker movups xmm3,[16+esi] 1689*8fb009dcSAndroid Build Coastguard Worker movups xmm4,[32+esi] 1690*8fb009dcSAndroid Build Coastguard Worker xorps xmm2,[esp] 1691*8fb009dcSAndroid Build Coastguard Worker movups xmm5,[48+esi] 1692*8fb009dcSAndroid Build Coastguard Worker lea esi,[64+esi] 1693*8fb009dcSAndroid Build Coastguard Worker xorps xmm3,[16+esp] 1694*8fb009dcSAndroid Build Coastguard Worker xorps xmm4,xmm7 1695*8fb009dcSAndroid Build Coastguard Worker xorps xmm5,xmm6 1696*8fb009dcSAndroid Build Coastguard Worker call __aesni_decrypt4 1697*8fb009dcSAndroid Build Coastguard Worker xorps xmm2,[esp] 1698*8fb009dcSAndroid Build Coastguard Worker xorps xmm3,[16+esp] 1699*8fb009dcSAndroid Build Coastguard Worker xorps xmm4,xmm7 1700*8fb009dcSAndroid Build Coastguard Worker movups [edi],xmm2 1701*8fb009dcSAndroid Build Coastguard Worker xorps xmm5,xmm6 1702*8fb009dcSAndroid Build Coastguard Worker movups [16+edi],xmm3 1703*8fb009dcSAndroid Build Coastguard Worker movups [32+edi],xmm4 1704*8fb009dcSAndroid Build Coastguard Worker movups [48+edi],xmm5 1705*8fb009dcSAndroid Build Coastguard Worker lea edi,[64+edi] 1706*8fb009dcSAndroid Build Coastguard Worker movdqa xmm1,xmm6 1707*8fb009dcSAndroid Build Coastguard Worker jmp NEAR L$069xts_dec_done 1708*8fb009dcSAndroid Build Coastguard Workeralign 16 1709*8fb009dcSAndroid Build Coastguard WorkerL$064xts_dec_done6x: 1710*8fb009dcSAndroid Build Coastguard Worker mov eax,DWORD [112+esp] 1711*8fb009dcSAndroid Build Coastguard Worker and eax,15 1712*8fb009dcSAndroid Build Coastguard Worker jz NEAR L$071xts_dec_ret 1713*8fb009dcSAndroid Build Coastguard Worker mov DWORD [112+esp],eax 1714*8fb009dcSAndroid Build Coastguard Worker jmp NEAR L$072xts_dec_only_one_more 1715*8fb009dcSAndroid Build Coastguard Workeralign 16 1716*8fb009dcSAndroid Build Coastguard WorkerL$069xts_dec_done: 1717*8fb009dcSAndroid Build Coastguard Worker mov eax,DWORD [112+esp] 1718*8fb009dcSAndroid Build Coastguard Worker pxor xmm0,xmm0 1719*8fb009dcSAndroid Build Coastguard Worker and eax,15 1720*8fb009dcSAndroid Build Coastguard Worker jz NEAR L$071xts_dec_ret 1721*8fb009dcSAndroid Build Coastguard Worker pcmpgtd xmm0,xmm1 1722*8fb009dcSAndroid Build Coastguard Worker mov DWORD [112+esp],eax 1723*8fb009dcSAndroid Build Coastguard Worker pshufd xmm2,xmm0,19 1724*8fb009dcSAndroid Build Coastguard Worker pxor xmm0,xmm0 1725*8fb009dcSAndroid Build Coastguard Worker movdqa xmm3,[96+esp] 1726*8fb009dcSAndroid Build Coastguard Worker paddq xmm1,xmm1 1727*8fb009dcSAndroid Build Coastguard Worker pand xmm2,xmm3 1728*8fb009dcSAndroid Build Coastguard Worker pcmpgtd xmm0,xmm1 1729*8fb009dcSAndroid Build Coastguard Worker pxor xmm1,xmm2 1730*8fb009dcSAndroid Build Coastguard WorkerL$072xts_dec_only_one_more: 1731*8fb009dcSAndroid Build Coastguard Worker pshufd xmm5,xmm0,19 1732*8fb009dcSAndroid Build Coastguard Worker movdqa xmm6,xmm1 1733*8fb009dcSAndroid Build Coastguard Worker paddq xmm1,xmm1 1734*8fb009dcSAndroid Build Coastguard Worker pand xmm5,xmm3 1735*8fb009dcSAndroid Build Coastguard Worker pxor xmm5,xmm1 1736*8fb009dcSAndroid Build Coastguard Worker mov edx,ebp 1737*8fb009dcSAndroid Build Coastguard Worker mov ecx,ebx 1738*8fb009dcSAndroid Build Coastguard Worker movups xmm2,[esi] 1739*8fb009dcSAndroid Build Coastguard Worker xorps xmm2,xmm5 1740*8fb009dcSAndroid Build Coastguard Worker movups xmm0,[edx] 1741*8fb009dcSAndroid Build Coastguard Worker movups xmm1,[16+edx] 1742*8fb009dcSAndroid Build Coastguard Worker lea edx,[32+edx] 1743*8fb009dcSAndroid Build Coastguard Worker xorps xmm2,xmm0 1744*8fb009dcSAndroid Build Coastguard WorkerL$073dec1_loop_13: 1745*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,222,209 1746*8fb009dcSAndroid Build Coastguard Worker dec ecx 1747*8fb009dcSAndroid Build Coastguard Worker movups xmm1,[edx] 1748*8fb009dcSAndroid Build Coastguard Worker lea edx,[16+edx] 1749*8fb009dcSAndroid Build Coastguard Worker jnz NEAR L$073dec1_loop_13 1750*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,223,209 1751*8fb009dcSAndroid Build Coastguard Worker xorps xmm2,xmm5 1752*8fb009dcSAndroid Build Coastguard Worker movups [edi],xmm2 1753*8fb009dcSAndroid Build Coastguard WorkerL$074xts_dec_steal: 1754*8fb009dcSAndroid Build Coastguard Worker movzx ecx,BYTE [16+esi] 1755*8fb009dcSAndroid Build Coastguard Worker movzx edx,BYTE [edi] 1756*8fb009dcSAndroid Build Coastguard Worker lea esi,[1+esi] 1757*8fb009dcSAndroid Build Coastguard Worker mov BYTE [edi],cl 1758*8fb009dcSAndroid Build Coastguard Worker mov BYTE [16+edi],dl 1759*8fb009dcSAndroid Build Coastguard Worker lea edi,[1+edi] 1760*8fb009dcSAndroid Build Coastguard Worker sub eax,1 1761*8fb009dcSAndroid Build Coastguard Worker jnz NEAR L$074xts_dec_steal 1762*8fb009dcSAndroid Build Coastguard Worker sub edi,DWORD [112+esp] 1763*8fb009dcSAndroid Build Coastguard Worker mov edx,ebp 1764*8fb009dcSAndroid Build Coastguard Worker mov ecx,ebx 1765*8fb009dcSAndroid Build Coastguard Worker movups xmm2,[edi] 1766*8fb009dcSAndroid Build Coastguard Worker xorps xmm2,xmm6 1767*8fb009dcSAndroid Build Coastguard Worker movups xmm0,[edx] 1768*8fb009dcSAndroid Build Coastguard Worker movups xmm1,[16+edx] 1769*8fb009dcSAndroid Build Coastguard Worker lea edx,[32+edx] 1770*8fb009dcSAndroid Build Coastguard Worker xorps xmm2,xmm0 1771*8fb009dcSAndroid Build Coastguard WorkerL$075dec1_loop_14: 1772*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,222,209 1773*8fb009dcSAndroid Build Coastguard Worker dec ecx 1774*8fb009dcSAndroid Build Coastguard Worker movups xmm1,[edx] 1775*8fb009dcSAndroid Build Coastguard Worker lea edx,[16+edx] 1776*8fb009dcSAndroid Build Coastguard Worker jnz NEAR L$075dec1_loop_14 1777*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,223,209 1778*8fb009dcSAndroid Build Coastguard Worker xorps xmm2,xmm6 1779*8fb009dcSAndroid Build Coastguard Worker movups [edi],xmm2 1780*8fb009dcSAndroid Build Coastguard WorkerL$071xts_dec_ret: 1781*8fb009dcSAndroid Build Coastguard Worker pxor xmm0,xmm0 1782*8fb009dcSAndroid Build Coastguard Worker pxor xmm1,xmm1 1783*8fb009dcSAndroid Build Coastguard Worker pxor xmm2,xmm2 1784*8fb009dcSAndroid Build Coastguard Worker movdqa [esp],xmm0 1785*8fb009dcSAndroid Build Coastguard Worker pxor xmm3,xmm3 1786*8fb009dcSAndroid Build Coastguard Worker movdqa [16+esp],xmm0 1787*8fb009dcSAndroid Build Coastguard Worker pxor xmm4,xmm4 1788*8fb009dcSAndroid Build Coastguard Worker movdqa [32+esp],xmm0 1789*8fb009dcSAndroid Build Coastguard Worker pxor xmm5,xmm5 1790*8fb009dcSAndroid Build Coastguard Worker movdqa [48+esp],xmm0 1791*8fb009dcSAndroid Build Coastguard Worker pxor xmm6,xmm6 1792*8fb009dcSAndroid Build Coastguard Worker movdqa [64+esp],xmm0 1793*8fb009dcSAndroid Build Coastguard Worker pxor xmm7,xmm7 1794*8fb009dcSAndroid Build Coastguard Worker movdqa [80+esp],xmm0 1795*8fb009dcSAndroid Build Coastguard Worker mov esp,DWORD [116+esp] 1796*8fb009dcSAndroid Build Coastguard Worker pop edi 1797*8fb009dcSAndroid Build Coastguard Worker pop esi 1798*8fb009dcSAndroid Build Coastguard Worker pop ebx 1799*8fb009dcSAndroid Build Coastguard Worker pop ebp 1800*8fb009dcSAndroid Build Coastguard Worker ret 1801*8fb009dcSAndroid Build Coastguard Workerglobal _aes_hw_cbc_encrypt 1802*8fb009dcSAndroid Build Coastguard Workeralign 16 1803*8fb009dcSAndroid Build Coastguard Worker_aes_hw_cbc_encrypt: 1804*8fb009dcSAndroid Build Coastguard WorkerL$_aes_hw_cbc_encrypt_begin: 1805*8fb009dcSAndroid Build Coastguard Worker push ebp 1806*8fb009dcSAndroid Build Coastguard Worker push ebx 1807*8fb009dcSAndroid Build Coastguard Worker push esi 1808*8fb009dcSAndroid Build Coastguard Worker push edi 1809*8fb009dcSAndroid Build Coastguard Worker mov esi,DWORD [20+esp] 1810*8fb009dcSAndroid Build Coastguard Worker mov ebx,esp 1811*8fb009dcSAndroid Build Coastguard Worker mov edi,DWORD [24+esp] 1812*8fb009dcSAndroid Build Coastguard Worker sub ebx,24 1813*8fb009dcSAndroid Build Coastguard Worker mov eax,DWORD [28+esp] 1814*8fb009dcSAndroid Build Coastguard Worker and ebx,-16 1815*8fb009dcSAndroid Build Coastguard Worker mov edx,DWORD [32+esp] 1816*8fb009dcSAndroid Build Coastguard Worker mov ebp,DWORD [36+esp] 1817*8fb009dcSAndroid Build Coastguard Worker test eax,eax 1818*8fb009dcSAndroid Build Coastguard Worker jz NEAR L$076cbc_abort 1819*8fb009dcSAndroid Build Coastguard Worker cmp DWORD [40+esp],0 1820*8fb009dcSAndroid Build Coastguard Worker xchg ebx,esp 1821*8fb009dcSAndroid Build Coastguard Worker movups xmm7,[ebp] 1822*8fb009dcSAndroid Build Coastguard Worker mov ecx,DWORD [240+edx] 1823*8fb009dcSAndroid Build Coastguard Worker mov ebp,edx 1824*8fb009dcSAndroid Build Coastguard Worker mov DWORD [16+esp],ebx 1825*8fb009dcSAndroid Build Coastguard Worker mov ebx,ecx 1826*8fb009dcSAndroid Build Coastguard Worker je NEAR L$077cbc_decrypt 1827*8fb009dcSAndroid Build Coastguard Worker movaps xmm2,xmm7 1828*8fb009dcSAndroid Build Coastguard Worker cmp eax,16 1829*8fb009dcSAndroid Build Coastguard Worker jb NEAR L$078cbc_enc_tail 1830*8fb009dcSAndroid Build Coastguard Worker sub eax,16 1831*8fb009dcSAndroid Build Coastguard Worker jmp NEAR L$079cbc_enc_loop 1832*8fb009dcSAndroid Build Coastguard Workeralign 16 1833*8fb009dcSAndroid Build Coastguard WorkerL$079cbc_enc_loop: 1834*8fb009dcSAndroid Build Coastguard Worker movups xmm7,[esi] 1835*8fb009dcSAndroid Build Coastguard Worker lea esi,[16+esi] 1836*8fb009dcSAndroid Build Coastguard Worker movups xmm0,[edx] 1837*8fb009dcSAndroid Build Coastguard Worker movups xmm1,[16+edx] 1838*8fb009dcSAndroid Build Coastguard Worker xorps xmm7,xmm0 1839*8fb009dcSAndroid Build Coastguard Worker lea edx,[32+edx] 1840*8fb009dcSAndroid Build Coastguard Worker xorps xmm2,xmm7 1841*8fb009dcSAndroid Build Coastguard WorkerL$080enc1_loop_15: 1842*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,220,209 1843*8fb009dcSAndroid Build Coastguard Worker dec ecx 1844*8fb009dcSAndroid Build Coastguard Worker movups xmm1,[edx] 1845*8fb009dcSAndroid Build Coastguard Worker lea edx,[16+edx] 1846*8fb009dcSAndroid Build Coastguard Worker jnz NEAR L$080enc1_loop_15 1847*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,221,209 1848*8fb009dcSAndroid Build Coastguard Worker mov ecx,ebx 1849*8fb009dcSAndroid Build Coastguard Worker mov edx,ebp 1850*8fb009dcSAndroid Build Coastguard Worker movups [edi],xmm2 1851*8fb009dcSAndroid Build Coastguard Worker lea edi,[16+edi] 1852*8fb009dcSAndroid Build Coastguard Worker sub eax,16 1853*8fb009dcSAndroid Build Coastguard Worker jnc NEAR L$079cbc_enc_loop 1854*8fb009dcSAndroid Build Coastguard Worker add eax,16 1855*8fb009dcSAndroid Build Coastguard Worker jnz NEAR L$078cbc_enc_tail 1856*8fb009dcSAndroid Build Coastguard Worker movaps xmm7,xmm2 1857*8fb009dcSAndroid Build Coastguard Worker pxor xmm2,xmm2 1858*8fb009dcSAndroid Build Coastguard Worker jmp NEAR L$081cbc_ret 1859*8fb009dcSAndroid Build Coastguard WorkerL$078cbc_enc_tail: 1860*8fb009dcSAndroid Build Coastguard Worker mov ecx,eax 1861*8fb009dcSAndroid Build Coastguard Workerdd 2767451785 1862*8fb009dcSAndroid Build Coastguard Worker mov ecx,16 1863*8fb009dcSAndroid Build Coastguard Worker sub ecx,eax 1864*8fb009dcSAndroid Build Coastguard Worker xor eax,eax 1865*8fb009dcSAndroid Build Coastguard Workerdd 2868115081 1866*8fb009dcSAndroid Build Coastguard Worker lea edi,[edi-16] 1867*8fb009dcSAndroid Build Coastguard Worker mov ecx,ebx 1868*8fb009dcSAndroid Build Coastguard Worker mov esi,edi 1869*8fb009dcSAndroid Build Coastguard Worker mov edx,ebp 1870*8fb009dcSAndroid Build Coastguard Worker jmp NEAR L$079cbc_enc_loop 1871*8fb009dcSAndroid Build Coastguard Workeralign 16 1872*8fb009dcSAndroid Build Coastguard WorkerL$077cbc_decrypt: 1873*8fb009dcSAndroid Build Coastguard Worker cmp eax,80 1874*8fb009dcSAndroid Build Coastguard Worker jbe NEAR L$082cbc_dec_tail 1875*8fb009dcSAndroid Build Coastguard Worker movaps [esp],xmm7 1876*8fb009dcSAndroid Build Coastguard Worker sub eax,80 1877*8fb009dcSAndroid Build Coastguard Worker jmp NEAR L$083cbc_dec_loop6_enter 1878*8fb009dcSAndroid Build Coastguard Workeralign 16 1879*8fb009dcSAndroid Build Coastguard WorkerL$084cbc_dec_loop6: 1880*8fb009dcSAndroid Build Coastguard Worker movaps [esp],xmm0 1881*8fb009dcSAndroid Build Coastguard Worker movups [edi],xmm7 1882*8fb009dcSAndroid Build Coastguard Worker lea edi,[16+edi] 1883*8fb009dcSAndroid Build Coastguard WorkerL$083cbc_dec_loop6_enter: 1884*8fb009dcSAndroid Build Coastguard Worker movdqu xmm2,[esi] 1885*8fb009dcSAndroid Build Coastguard Worker movdqu xmm3,[16+esi] 1886*8fb009dcSAndroid Build Coastguard Worker movdqu xmm4,[32+esi] 1887*8fb009dcSAndroid Build Coastguard Worker movdqu xmm5,[48+esi] 1888*8fb009dcSAndroid Build Coastguard Worker movdqu xmm6,[64+esi] 1889*8fb009dcSAndroid Build Coastguard Worker movdqu xmm7,[80+esi] 1890*8fb009dcSAndroid Build Coastguard Worker call __aesni_decrypt6 1891*8fb009dcSAndroid Build Coastguard Worker movups xmm1,[esi] 1892*8fb009dcSAndroid Build Coastguard Worker movups xmm0,[16+esi] 1893*8fb009dcSAndroid Build Coastguard Worker xorps xmm2,[esp] 1894*8fb009dcSAndroid Build Coastguard Worker xorps xmm3,xmm1 1895*8fb009dcSAndroid Build Coastguard Worker movups xmm1,[32+esi] 1896*8fb009dcSAndroid Build Coastguard Worker xorps xmm4,xmm0 1897*8fb009dcSAndroid Build Coastguard Worker movups xmm0,[48+esi] 1898*8fb009dcSAndroid Build Coastguard Worker xorps xmm5,xmm1 1899*8fb009dcSAndroid Build Coastguard Worker movups xmm1,[64+esi] 1900*8fb009dcSAndroid Build Coastguard Worker xorps xmm6,xmm0 1901*8fb009dcSAndroid Build Coastguard Worker movups xmm0,[80+esi] 1902*8fb009dcSAndroid Build Coastguard Worker xorps xmm7,xmm1 1903*8fb009dcSAndroid Build Coastguard Worker movups [edi],xmm2 1904*8fb009dcSAndroid Build Coastguard Worker movups [16+edi],xmm3 1905*8fb009dcSAndroid Build Coastguard Worker lea esi,[96+esi] 1906*8fb009dcSAndroid Build Coastguard Worker movups [32+edi],xmm4 1907*8fb009dcSAndroid Build Coastguard Worker mov ecx,ebx 1908*8fb009dcSAndroid Build Coastguard Worker movups [48+edi],xmm5 1909*8fb009dcSAndroid Build Coastguard Worker mov edx,ebp 1910*8fb009dcSAndroid Build Coastguard Worker movups [64+edi],xmm6 1911*8fb009dcSAndroid Build Coastguard Worker lea edi,[80+edi] 1912*8fb009dcSAndroid Build Coastguard Worker sub eax,96 1913*8fb009dcSAndroid Build Coastguard Worker ja NEAR L$084cbc_dec_loop6 1914*8fb009dcSAndroid Build Coastguard Worker movaps xmm2,xmm7 1915*8fb009dcSAndroid Build Coastguard Worker movaps xmm7,xmm0 1916*8fb009dcSAndroid Build Coastguard Worker add eax,80 1917*8fb009dcSAndroid Build Coastguard Worker jle NEAR L$085cbc_dec_clear_tail_collected 1918*8fb009dcSAndroid Build Coastguard Worker movups [edi],xmm2 1919*8fb009dcSAndroid Build Coastguard Worker lea edi,[16+edi] 1920*8fb009dcSAndroid Build Coastguard WorkerL$082cbc_dec_tail: 1921*8fb009dcSAndroid Build Coastguard Worker movups xmm2,[esi] 1922*8fb009dcSAndroid Build Coastguard Worker movaps xmm6,xmm2 1923*8fb009dcSAndroid Build Coastguard Worker cmp eax,16 1924*8fb009dcSAndroid Build Coastguard Worker jbe NEAR L$086cbc_dec_one 1925*8fb009dcSAndroid Build Coastguard Worker movups xmm3,[16+esi] 1926*8fb009dcSAndroid Build Coastguard Worker movaps xmm5,xmm3 1927*8fb009dcSAndroid Build Coastguard Worker cmp eax,32 1928*8fb009dcSAndroid Build Coastguard Worker jbe NEAR L$087cbc_dec_two 1929*8fb009dcSAndroid Build Coastguard Worker movups xmm4,[32+esi] 1930*8fb009dcSAndroid Build Coastguard Worker cmp eax,48 1931*8fb009dcSAndroid Build Coastguard Worker jbe NEAR L$088cbc_dec_three 1932*8fb009dcSAndroid Build Coastguard Worker movups xmm5,[48+esi] 1933*8fb009dcSAndroid Build Coastguard Worker cmp eax,64 1934*8fb009dcSAndroid Build Coastguard Worker jbe NEAR L$089cbc_dec_four 1935*8fb009dcSAndroid Build Coastguard Worker movups xmm6,[64+esi] 1936*8fb009dcSAndroid Build Coastguard Worker movaps [esp],xmm7 1937*8fb009dcSAndroid Build Coastguard Worker movups xmm2,[esi] 1938*8fb009dcSAndroid Build Coastguard Worker xorps xmm7,xmm7 1939*8fb009dcSAndroid Build Coastguard Worker call __aesni_decrypt6 1940*8fb009dcSAndroid Build Coastguard Worker movups xmm1,[esi] 1941*8fb009dcSAndroid Build Coastguard Worker movups xmm0,[16+esi] 1942*8fb009dcSAndroid Build Coastguard Worker xorps xmm2,[esp] 1943*8fb009dcSAndroid Build Coastguard Worker xorps xmm3,xmm1 1944*8fb009dcSAndroid Build Coastguard Worker movups xmm1,[32+esi] 1945*8fb009dcSAndroid Build Coastguard Worker xorps xmm4,xmm0 1946*8fb009dcSAndroid Build Coastguard Worker movups xmm0,[48+esi] 1947*8fb009dcSAndroid Build Coastguard Worker xorps xmm5,xmm1 1948*8fb009dcSAndroid Build Coastguard Worker movups xmm7,[64+esi] 1949*8fb009dcSAndroid Build Coastguard Worker xorps xmm6,xmm0 1950*8fb009dcSAndroid Build Coastguard Worker movups [edi],xmm2 1951*8fb009dcSAndroid Build Coastguard Worker movups [16+edi],xmm3 1952*8fb009dcSAndroid Build Coastguard Worker pxor xmm3,xmm3 1953*8fb009dcSAndroid Build Coastguard Worker movups [32+edi],xmm4 1954*8fb009dcSAndroid Build Coastguard Worker pxor xmm4,xmm4 1955*8fb009dcSAndroid Build Coastguard Worker movups [48+edi],xmm5 1956*8fb009dcSAndroid Build Coastguard Worker pxor xmm5,xmm5 1957*8fb009dcSAndroid Build Coastguard Worker lea edi,[64+edi] 1958*8fb009dcSAndroid Build Coastguard Worker movaps xmm2,xmm6 1959*8fb009dcSAndroid Build Coastguard Worker pxor xmm6,xmm6 1960*8fb009dcSAndroid Build Coastguard Worker sub eax,80 1961*8fb009dcSAndroid Build Coastguard Worker jmp NEAR L$090cbc_dec_tail_collected 1962*8fb009dcSAndroid Build Coastguard Workeralign 16 1963*8fb009dcSAndroid Build Coastguard WorkerL$086cbc_dec_one: 1964*8fb009dcSAndroid Build Coastguard Worker movups xmm0,[edx] 1965*8fb009dcSAndroid Build Coastguard Worker movups xmm1,[16+edx] 1966*8fb009dcSAndroid Build Coastguard Worker lea edx,[32+edx] 1967*8fb009dcSAndroid Build Coastguard Worker xorps xmm2,xmm0 1968*8fb009dcSAndroid Build Coastguard WorkerL$091dec1_loop_16: 1969*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,222,209 1970*8fb009dcSAndroid Build Coastguard Worker dec ecx 1971*8fb009dcSAndroid Build Coastguard Worker movups xmm1,[edx] 1972*8fb009dcSAndroid Build Coastguard Worker lea edx,[16+edx] 1973*8fb009dcSAndroid Build Coastguard Worker jnz NEAR L$091dec1_loop_16 1974*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,223,209 1975*8fb009dcSAndroid Build Coastguard Worker xorps xmm2,xmm7 1976*8fb009dcSAndroid Build Coastguard Worker movaps xmm7,xmm6 1977*8fb009dcSAndroid Build Coastguard Worker sub eax,16 1978*8fb009dcSAndroid Build Coastguard Worker jmp NEAR L$090cbc_dec_tail_collected 1979*8fb009dcSAndroid Build Coastguard Workeralign 16 1980*8fb009dcSAndroid Build Coastguard WorkerL$087cbc_dec_two: 1981*8fb009dcSAndroid Build Coastguard Worker call __aesni_decrypt2 1982*8fb009dcSAndroid Build Coastguard Worker xorps xmm2,xmm7 1983*8fb009dcSAndroid Build Coastguard Worker xorps xmm3,xmm6 1984*8fb009dcSAndroid Build Coastguard Worker movups [edi],xmm2 1985*8fb009dcSAndroid Build Coastguard Worker movaps xmm2,xmm3 1986*8fb009dcSAndroid Build Coastguard Worker pxor xmm3,xmm3 1987*8fb009dcSAndroid Build Coastguard Worker lea edi,[16+edi] 1988*8fb009dcSAndroid Build Coastguard Worker movaps xmm7,xmm5 1989*8fb009dcSAndroid Build Coastguard Worker sub eax,32 1990*8fb009dcSAndroid Build Coastguard Worker jmp NEAR L$090cbc_dec_tail_collected 1991*8fb009dcSAndroid Build Coastguard Workeralign 16 1992*8fb009dcSAndroid Build Coastguard WorkerL$088cbc_dec_three: 1993*8fb009dcSAndroid Build Coastguard Worker call __aesni_decrypt3 1994*8fb009dcSAndroid Build Coastguard Worker xorps xmm2,xmm7 1995*8fb009dcSAndroid Build Coastguard Worker xorps xmm3,xmm6 1996*8fb009dcSAndroid Build Coastguard Worker xorps xmm4,xmm5 1997*8fb009dcSAndroid Build Coastguard Worker movups [edi],xmm2 1998*8fb009dcSAndroid Build Coastguard Worker movaps xmm2,xmm4 1999*8fb009dcSAndroid Build Coastguard Worker pxor xmm4,xmm4 2000*8fb009dcSAndroid Build Coastguard Worker movups [16+edi],xmm3 2001*8fb009dcSAndroid Build Coastguard Worker pxor xmm3,xmm3 2002*8fb009dcSAndroid Build Coastguard Worker lea edi,[32+edi] 2003*8fb009dcSAndroid Build Coastguard Worker movups xmm7,[32+esi] 2004*8fb009dcSAndroid Build Coastguard Worker sub eax,48 2005*8fb009dcSAndroid Build Coastguard Worker jmp NEAR L$090cbc_dec_tail_collected 2006*8fb009dcSAndroid Build Coastguard Workeralign 16 2007*8fb009dcSAndroid Build Coastguard WorkerL$089cbc_dec_four: 2008*8fb009dcSAndroid Build Coastguard Worker call __aesni_decrypt4 2009*8fb009dcSAndroid Build Coastguard Worker movups xmm1,[16+esi] 2010*8fb009dcSAndroid Build Coastguard Worker movups xmm0,[32+esi] 2011*8fb009dcSAndroid Build Coastguard Worker xorps xmm2,xmm7 2012*8fb009dcSAndroid Build Coastguard Worker movups xmm7,[48+esi] 2013*8fb009dcSAndroid Build Coastguard Worker xorps xmm3,xmm6 2014*8fb009dcSAndroid Build Coastguard Worker movups [edi],xmm2 2015*8fb009dcSAndroid Build Coastguard Worker xorps xmm4,xmm1 2016*8fb009dcSAndroid Build Coastguard Worker movups [16+edi],xmm3 2017*8fb009dcSAndroid Build Coastguard Worker pxor xmm3,xmm3 2018*8fb009dcSAndroid Build Coastguard Worker xorps xmm5,xmm0 2019*8fb009dcSAndroid Build Coastguard Worker movups [32+edi],xmm4 2020*8fb009dcSAndroid Build Coastguard Worker pxor xmm4,xmm4 2021*8fb009dcSAndroid Build Coastguard Worker lea edi,[48+edi] 2022*8fb009dcSAndroid Build Coastguard Worker movaps xmm2,xmm5 2023*8fb009dcSAndroid Build Coastguard Worker pxor xmm5,xmm5 2024*8fb009dcSAndroid Build Coastguard Worker sub eax,64 2025*8fb009dcSAndroid Build Coastguard Worker jmp NEAR L$090cbc_dec_tail_collected 2026*8fb009dcSAndroid Build Coastguard Workeralign 16 2027*8fb009dcSAndroid Build Coastguard WorkerL$085cbc_dec_clear_tail_collected: 2028*8fb009dcSAndroid Build Coastguard Worker pxor xmm3,xmm3 2029*8fb009dcSAndroid Build Coastguard Worker pxor xmm4,xmm4 2030*8fb009dcSAndroid Build Coastguard Worker pxor xmm5,xmm5 2031*8fb009dcSAndroid Build Coastguard Worker pxor xmm6,xmm6 2032*8fb009dcSAndroid Build Coastguard WorkerL$090cbc_dec_tail_collected: 2033*8fb009dcSAndroid Build Coastguard Worker and eax,15 2034*8fb009dcSAndroid Build Coastguard Worker jnz NEAR L$092cbc_dec_tail_partial 2035*8fb009dcSAndroid Build Coastguard Worker movups [edi],xmm2 2036*8fb009dcSAndroid Build Coastguard Worker pxor xmm0,xmm0 2037*8fb009dcSAndroid Build Coastguard Worker jmp NEAR L$081cbc_ret 2038*8fb009dcSAndroid Build Coastguard Workeralign 16 2039*8fb009dcSAndroid Build Coastguard WorkerL$092cbc_dec_tail_partial: 2040*8fb009dcSAndroid Build Coastguard Worker movaps [esp],xmm2 2041*8fb009dcSAndroid Build Coastguard Worker pxor xmm0,xmm0 2042*8fb009dcSAndroid Build Coastguard Worker mov ecx,16 2043*8fb009dcSAndroid Build Coastguard Worker mov esi,esp 2044*8fb009dcSAndroid Build Coastguard Worker sub ecx,eax 2045*8fb009dcSAndroid Build Coastguard Workerdd 2767451785 2046*8fb009dcSAndroid Build Coastguard Worker movdqa [esp],xmm2 2047*8fb009dcSAndroid Build Coastguard WorkerL$081cbc_ret: 2048*8fb009dcSAndroid Build Coastguard Worker mov esp,DWORD [16+esp] 2049*8fb009dcSAndroid Build Coastguard Worker mov ebp,DWORD [36+esp] 2050*8fb009dcSAndroid Build Coastguard Worker pxor xmm2,xmm2 2051*8fb009dcSAndroid Build Coastguard Worker pxor xmm1,xmm1 2052*8fb009dcSAndroid Build Coastguard Worker movups [ebp],xmm7 2053*8fb009dcSAndroid Build Coastguard Worker pxor xmm7,xmm7 2054*8fb009dcSAndroid Build Coastguard WorkerL$076cbc_abort: 2055*8fb009dcSAndroid Build Coastguard Worker pop edi 2056*8fb009dcSAndroid Build Coastguard Worker pop esi 2057*8fb009dcSAndroid Build Coastguard Worker pop ebx 2058*8fb009dcSAndroid Build Coastguard Worker pop ebp 2059*8fb009dcSAndroid Build Coastguard Worker ret 2060*8fb009dcSAndroid Build Coastguard Workerglobal _aes_hw_set_encrypt_key_base 2061*8fb009dcSAndroid Build Coastguard Workeralign 16 2062*8fb009dcSAndroid Build Coastguard Worker_aes_hw_set_encrypt_key_base: 2063*8fb009dcSAndroid Build Coastguard WorkerL$_aes_hw_set_encrypt_key_base_begin: 2064*8fb009dcSAndroid Build Coastguard Worker%ifdef BORINGSSL_DISPATCH_TEST 2065*8fb009dcSAndroid Build Coastguard Worker push ebx 2066*8fb009dcSAndroid Build Coastguard Worker push edx 2067*8fb009dcSAndroid Build Coastguard Worker call L$093pic_for_function_hit 2068*8fb009dcSAndroid Build Coastguard WorkerL$093pic_for_function_hit: 2069*8fb009dcSAndroid Build Coastguard Worker pop ebx 2070*8fb009dcSAndroid Build Coastguard Worker lea ebx,[(_BORINGSSL_function_hit+3-L$093pic_for_function_hit)+ebx] 2071*8fb009dcSAndroid Build Coastguard Worker mov edx,1 2072*8fb009dcSAndroid Build Coastguard Worker mov BYTE [ebx],dl 2073*8fb009dcSAndroid Build Coastguard Worker pop edx 2074*8fb009dcSAndroid Build Coastguard Worker pop ebx 2075*8fb009dcSAndroid Build Coastguard Worker%endif 2076*8fb009dcSAndroid Build Coastguard Worker mov eax,DWORD [4+esp] 2077*8fb009dcSAndroid Build Coastguard Worker mov ecx,DWORD [8+esp] 2078*8fb009dcSAndroid Build Coastguard Worker mov edx,DWORD [12+esp] 2079*8fb009dcSAndroid Build Coastguard Worker push ebx 2080*8fb009dcSAndroid Build Coastguard Worker call L$094pic 2081*8fb009dcSAndroid Build Coastguard WorkerL$094pic: 2082*8fb009dcSAndroid Build Coastguard Worker pop ebx 2083*8fb009dcSAndroid Build Coastguard Worker lea ebx,[(L$key_const-L$094pic)+ebx] 2084*8fb009dcSAndroid Build Coastguard Worker movups xmm0,[eax] 2085*8fb009dcSAndroid Build Coastguard Worker xorps xmm4,xmm4 2086*8fb009dcSAndroid Build Coastguard Worker lea edx,[16+edx] 2087*8fb009dcSAndroid Build Coastguard Worker cmp ecx,256 2088*8fb009dcSAndroid Build Coastguard Worker je NEAR L$09514rounds 2089*8fb009dcSAndroid Build Coastguard Worker cmp ecx,192 2090*8fb009dcSAndroid Build Coastguard Worker je NEAR L$09612rounds 2091*8fb009dcSAndroid Build Coastguard Worker cmp ecx,128 2092*8fb009dcSAndroid Build Coastguard Worker jne NEAR L$097bad_keybits 2093*8fb009dcSAndroid Build Coastguard Workeralign 16 2094*8fb009dcSAndroid Build Coastguard WorkerL$09810rounds: 2095*8fb009dcSAndroid Build Coastguard Worker mov ecx,9 2096*8fb009dcSAndroid Build Coastguard Worker movups [edx-16],xmm0 2097*8fb009dcSAndroid Build Coastguard Workerdb 102,15,58,223,200,1 2098*8fb009dcSAndroid Build Coastguard Worker call L$099key_128_cold 2099*8fb009dcSAndroid Build Coastguard Workerdb 102,15,58,223,200,2 2100*8fb009dcSAndroid Build Coastguard Worker call L$100key_128 2101*8fb009dcSAndroid Build Coastguard Workerdb 102,15,58,223,200,4 2102*8fb009dcSAndroid Build Coastguard Worker call L$100key_128 2103*8fb009dcSAndroid Build Coastguard Workerdb 102,15,58,223,200,8 2104*8fb009dcSAndroid Build Coastguard Worker call L$100key_128 2105*8fb009dcSAndroid Build Coastguard Workerdb 102,15,58,223,200,16 2106*8fb009dcSAndroid Build Coastguard Worker call L$100key_128 2107*8fb009dcSAndroid Build Coastguard Workerdb 102,15,58,223,200,32 2108*8fb009dcSAndroid Build Coastguard Worker call L$100key_128 2109*8fb009dcSAndroid Build Coastguard Workerdb 102,15,58,223,200,64 2110*8fb009dcSAndroid Build Coastguard Worker call L$100key_128 2111*8fb009dcSAndroid Build Coastguard Workerdb 102,15,58,223,200,128 2112*8fb009dcSAndroid Build Coastguard Worker call L$100key_128 2113*8fb009dcSAndroid Build Coastguard Workerdb 102,15,58,223,200,27 2114*8fb009dcSAndroid Build Coastguard Worker call L$100key_128 2115*8fb009dcSAndroid Build Coastguard Workerdb 102,15,58,223,200,54 2116*8fb009dcSAndroid Build Coastguard Worker call L$100key_128 2117*8fb009dcSAndroid Build Coastguard Worker movups [edx],xmm0 2118*8fb009dcSAndroid Build Coastguard Worker mov DWORD [80+edx],ecx 2119*8fb009dcSAndroid Build Coastguard Worker jmp NEAR L$101good_key 2120*8fb009dcSAndroid Build Coastguard Workeralign 16 2121*8fb009dcSAndroid Build Coastguard WorkerL$100key_128: 2122*8fb009dcSAndroid Build Coastguard Worker movups [edx],xmm0 2123*8fb009dcSAndroid Build Coastguard Worker lea edx,[16+edx] 2124*8fb009dcSAndroid Build Coastguard WorkerL$099key_128_cold: 2125*8fb009dcSAndroid Build Coastguard Worker shufps xmm4,xmm0,16 2126*8fb009dcSAndroid Build Coastguard Worker xorps xmm0,xmm4 2127*8fb009dcSAndroid Build Coastguard Worker shufps xmm4,xmm0,140 2128*8fb009dcSAndroid Build Coastguard Worker xorps xmm0,xmm4 2129*8fb009dcSAndroid Build Coastguard Worker shufps xmm1,xmm1,255 2130*8fb009dcSAndroid Build Coastguard Worker xorps xmm0,xmm1 2131*8fb009dcSAndroid Build Coastguard Worker ret 2132*8fb009dcSAndroid Build Coastguard Workeralign 16 2133*8fb009dcSAndroid Build Coastguard WorkerL$09612rounds: 2134*8fb009dcSAndroid Build Coastguard Worker movq xmm2,[16+eax] 2135*8fb009dcSAndroid Build Coastguard Worker mov ecx,11 2136*8fb009dcSAndroid Build Coastguard Worker movups [edx-16],xmm0 2137*8fb009dcSAndroid Build Coastguard Workerdb 102,15,58,223,202,1 2138*8fb009dcSAndroid Build Coastguard Worker call L$102key_192a_cold 2139*8fb009dcSAndroid Build Coastguard Workerdb 102,15,58,223,202,2 2140*8fb009dcSAndroid Build Coastguard Worker call L$103key_192b 2141*8fb009dcSAndroid Build Coastguard Workerdb 102,15,58,223,202,4 2142*8fb009dcSAndroid Build Coastguard Worker call L$104key_192a 2143*8fb009dcSAndroid Build Coastguard Workerdb 102,15,58,223,202,8 2144*8fb009dcSAndroid Build Coastguard Worker call L$103key_192b 2145*8fb009dcSAndroid Build Coastguard Workerdb 102,15,58,223,202,16 2146*8fb009dcSAndroid Build Coastguard Worker call L$104key_192a 2147*8fb009dcSAndroid Build Coastguard Workerdb 102,15,58,223,202,32 2148*8fb009dcSAndroid Build Coastguard Worker call L$103key_192b 2149*8fb009dcSAndroid Build Coastguard Workerdb 102,15,58,223,202,64 2150*8fb009dcSAndroid Build Coastguard Worker call L$104key_192a 2151*8fb009dcSAndroid Build Coastguard Workerdb 102,15,58,223,202,128 2152*8fb009dcSAndroid Build Coastguard Worker call L$103key_192b 2153*8fb009dcSAndroid Build Coastguard Worker movups [edx],xmm0 2154*8fb009dcSAndroid Build Coastguard Worker mov DWORD [48+edx],ecx 2155*8fb009dcSAndroid Build Coastguard Worker jmp NEAR L$101good_key 2156*8fb009dcSAndroid Build Coastguard Workeralign 16 2157*8fb009dcSAndroid Build Coastguard WorkerL$104key_192a: 2158*8fb009dcSAndroid Build Coastguard Worker movups [edx],xmm0 2159*8fb009dcSAndroid Build Coastguard Worker lea edx,[16+edx] 2160*8fb009dcSAndroid Build Coastguard Workeralign 16 2161*8fb009dcSAndroid Build Coastguard WorkerL$102key_192a_cold: 2162*8fb009dcSAndroid Build Coastguard Worker movaps xmm5,xmm2 2163*8fb009dcSAndroid Build Coastguard WorkerL$105key_192b_warm: 2164*8fb009dcSAndroid Build Coastguard Worker shufps xmm4,xmm0,16 2165*8fb009dcSAndroid Build Coastguard Worker movdqa xmm3,xmm2 2166*8fb009dcSAndroid Build Coastguard Worker xorps xmm0,xmm4 2167*8fb009dcSAndroid Build Coastguard Worker shufps xmm4,xmm0,140 2168*8fb009dcSAndroid Build Coastguard Worker pslldq xmm3,4 2169*8fb009dcSAndroid Build Coastguard Worker xorps xmm0,xmm4 2170*8fb009dcSAndroid Build Coastguard Worker pshufd xmm1,xmm1,85 2171*8fb009dcSAndroid Build Coastguard Worker pxor xmm2,xmm3 2172*8fb009dcSAndroid Build Coastguard Worker pxor xmm0,xmm1 2173*8fb009dcSAndroid Build Coastguard Worker pshufd xmm3,xmm0,255 2174*8fb009dcSAndroid Build Coastguard Worker pxor xmm2,xmm3 2175*8fb009dcSAndroid Build Coastguard Worker ret 2176*8fb009dcSAndroid Build Coastguard Workeralign 16 2177*8fb009dcSAndroid Build Coastguard WorkerL$103key_192b: 2178*8fb009dcSAndroid Build Coastguard Worker movaps xmm3,xmm0 2179*8fb009dcSAndroid Build Coastguard Worker shufps xmm5,xmm0,68 2180*8fb009dcSAndroid Build Coastguard Worker movups [edx],xmm5 2181*8fb009dcSAndroid Build Coastguard Worker shufps xmm3,xmm2,78 2182*8fb009dcSAndroid Build Coastguard Worker movups [16+edx],xmm3 2183*8fb009dcSAndroid Build Coastguard Worker lea edx,[32+edx] 2184*8fb009dcSAndroid Build Coastguard Worker jmp NEAR L$105key_192b_warm 2185*8fb009dcSAndroid Build Coastguard Workeralign 16 2186*8fb009dcSAndroid Build Coastguard WorkerL$09514rounds: 2187*8fb009dcSAndroid Build Coastguard Worker movups xmm2,[16+eax] 2188*8fb009dcSAndroid Build Coastguard Worker lea edx,[16+edx] 2189*8fb009dcSAndroid Build Coastguard Worker mov ecx,13 2190*8fb009dcSAndroid Build Coastguard Worker movups [edx-32],xmm0 2191*8fb009dcSAndroid Build Coastguard Worker movups [edx-16],xmm2 2192*8fb009dcSAndroid Build Coastguard Workerdb 102,15,58,223,202,1 2193*8fb009dcSAndroid Build Coastguard Worker call L$106key_256a_cold 2194*8fb009dcSAndroid Build Coastguard Workerdb 102,15,58,223,200,1 2195*8fb009dcSAndroid Build Coastguard Worker call L$107key_256b 2196*8fb009dcSAndroid Build Coastguard Workerdb 102,15,58,223,202,2 2197*8fb009dcSAndroid Build Coastguard Worker call L$108key_256a 2198*8fb009dcSAndroid Build Coastguard Workerdb 102,15,58,223,200,2 2199*8fb009dcSAndroid Build Coastguard Worker call L$107key_256b 2200*8fb009dcSAndroid Build Coastguard Workerdb 102,15,58,223,202,4 2201*8fb009dcSAndroid Build Coastguard Worker call L$108key_256a 2202*8fb009dcSAndroid Build Coastguard Workerdb 102,15,58,223,200,4 2203*8fb009dcSAndroid Build Coastguard Worker call L$107key_256b 2204*8fb009dcSAndroid Build Coastguard Workerdb 102,15,58,223,202,8 2205*8fb009dcSAndroid Build Coastguard Worker call L$108key_256a 2206*8fb009dcSAndroid Build Coastguard Workerdb 102,15,58,223,200,8 2207*8fb009dcSAndroid Build Coastguard Worker call L$107key_256b 2208*8fb009dcSAndroid Build Coastguard Workerdb 102,15,58,223,202,16 2209*8fb009dcSAndroid Build Coastguard Worker call L$108key_256a 2210*8fb009dcSAndroid Build Coastguard Workerdb 102,15,58,223,200,16 2211*8fb009dcSAndroid Build Coastguard Worker call L$107key_256b 2212*8fb009dcSAndroid Build Coastguard Workerdb 102,15,58,223,202,32 2213*8fb009dcSAndroid Build Coastguard Worker call L$108key_256a 2214*8fb009dcSAndroid Build Coastguard Workerdb 102,15,58,223,200,32 2215*8fb009dcSAndroid Build Coastguard Worker call L$107key_256b 2216*8fb009dcSAndroid Build Coastguard Workerdb 102,15,58,223,202,64 2217*8fb009dcSAndroid Build Coastguard Worker call L$108key_256a 2218*8fb009dcSAndroid Build Coastguard Worker movups [edx],xmm0 2219*8fb009dcSAndroid Build Coastguard Worker mov DWORD [16+edx],ecx 2220*8fb009dcSAndroid Build Coastguard Worker xor eax,eax 2221*8fb009dcSAndroid Build Coastguard Worker jmp NEAR L$101good_key 2222*8fb009dcSAndroid Build Coastguard Workeralign 16 2223*8fb009dcSAndroid Build Coastguard WorkerL$108key_256a: 2224*8fb009dcSAndroid Build Coastguard Worker movups [edx],xmm2 2225*8fb009dcSAndroid Build Coastguard Worker lea edx,[16+edx] 2226*8fb009dcSAndroid Build Coastguard WorkerL$106key_256a_cold: 2227*8fb009dcSAndroid Build Coastguard Worker shufps xmm4,xmm0,16 2228*8fb009dcSAndroid Build Coastguard Worker xorps xmm0,xmm4 2229*8fb009dcSAndroid Build Coastguard Worker shufps xmm4,xmm0,140 2230*8fb009dcSAndroid Build Coastguard Worker xorps xmm0,xmm4 2231*8fb009dcSAndroid Build Coastguard Worker shufps xmm1,xmm1,255 2232*8fb009dcSAndroid Build Coastguard Worker xorps xmm0,xmm1 2233*8fb009dcSAndroid Build Coastguard Worker ret 2234*8fb009dcSAndroid Build Coastguard Workeralign 16 2235*8fb009dcSAndroid Build Coastguard WorkerL$107key_256b: 2236*8fb009dcSAndroid Build Coastguard Worker movups [edx],xmm0 2237*8fb009dcSAndroid Build Coastguard Worker lea edx,[16+edx] 2238*8fb009dcSAndroid Build Coastguard Worker shufps xmm4,xmm2,16 2239*8fb009dcSAndroid Build Coastguard Worker xorps xmm2,xmm4 2240*8fb009dcSAndroid Build Coastguard Worker shufps xmm4,xmm2,140 2241*8fb009dcSAndroid Build Coastguard Worker xorps xmm2,xmm4 2242*8fb009dcSAndroid Build Coastguard Worker shufps xmm1,xmm1,170 2243*8fb009dcSAndroid Build Coastguard Worker xorps xmm2,xmm1 2244*8fb009dcSAndroid Build Coastguard Worker ret 2245*8fb009dcSAndroid Build Coastguard WorkerL$101good_key: 2246*8fb009dcSAndroid Build Coastguard Worker pxor xmm0,xmm0 2247*8fb009dcSAndroid Build Coastguard Worker pxor xmm1,xmm1 2248*8fb009dcSAndroid Build Coastguard Worker pxor xmm2,xmm2 2249*8fb009dcSAndroid Build Coastguard Worker pxor xmm3,xmm3 2250*8fb009dcSAndroid Build Coastguard Worker pxor xmm4,xmm4 2251*8fb009dcSAndroid Build Coastguard Worker pxor xmm5,xmm5 2252*8fb009dcSAndroid Build Coastguard Worker xor eax,eax 2253*8fb009dcSAndroid Build Coastguard Worker pop ebx 2254*8fb009dcSAndroid Build Coastguard Worker ret 2255*8fb009dcSAndroid Build Coastguard Workeralign 4 2256*8fb009dcSAndroid Build Coastguard WorkerL$097bad_keybits: 2257*8fb009dcSAndroid Build Coastguard Worker pxor xmm0,xmm0 2258*8fb009dcSAndroid Build Coastguard Worker mov eax,-2 2259*8fb009dcSAndroid Build Coastguard Worker pop ebx 2260*8fb009dcSAndroid Build Coastguard Worker ret 2261*8fb009dcSAndroid Build Coastguard Workerglobal _aes_hw_set_encrypt_key_alt 2262*8fb009dcSAndroid Build Coastguard Workeralign 16 2263*8fb009dcSAndroid Build Coastguard Worker_aes_hw_set_encrypt_key_alt: 2264*8fb009dcSAndroid Build Coastguard WorkerL$_aes_hw_set_encrypt_key_alt_begin: 2265*8fb009dcSAndroid Build Coastguard Worker%ifdef BORINGSSL_DISPATCH_TEST 2266*8fb009dcSAndroid Build Coastguard Worker push ebx 2267*8fb009dcSAndroid Build Coastguard Worker push edx 2268*8fb009dcSAndroid Build Coastguard Worker call L$109pic_for_function_hit 2269*8fb009dcSAndroid Build Coastguard WorkerL$109pic_for_function_hit: 2270*8fb009dcSAndroid Build Coastguard Worker pop ebx 2271*8fb009dcSAndroid Build Coastguard Worker lea ebx,[(_BORINGSSL_function_hit+3-L$109pic_for_function_hit)+ebx] 2272*8fb009dcSAndroid Build Coastguard Worker mov edx,1 2273*8fb009dcSAndroid Build Coastguard Worker mov BYTE [ebx],dl 2274*8fb009dcSAndroid Build Coastguard Worker pop edx 2275*8fb009dcSAndroid Build Coastguard Worker pop ebx 2276*8fb009dcSAndroid Build Coastguard Worker%endif 2277*8fb009dcSAndroid Build Coastguard Worker mov eax,DWORD [4+esp] 2278*8fb009dcSAndroid Build Coastguard Worker mov ecx,DWORD [8+esp] 2279*8fb009dcSAndroid Build Coastguard Worker mov edx,DWORD [12+esp] 2280*8fb009dcSAndroid Build Coastguard Worker push ebx 2281*8fb009dcSAndroid Build Coastguard Worker call L$110pic 2282*8fb009dcSAndroid Build Coastguard WorkerL$110pic: 2283*8fb009dcSAndroid Build Coastguard Worker pop ebx 2284*8fb009dcSAndroid Build Coastguard Worker lea ebx,[(L$key_const-L$110pic)+ebx] 2285*8fb009dcSAndroid Build Coastguard Worker movups xmm0,[eax] 2286*8fb009dcSAndroid Build Coastguard Worker xorps xmm4,xmm4 2287*8fb009dcSAndroid Build Coastguard Worker lea edx,[16+edx] 2288*8fb009dcSAndroid Build Coastguard Worker cmp ecx,256 2289*8fb009dcSAndroid Build Coastguard Worker je NEAR L$11114rounds_alt 2290*8fb009dcSAndroid Build Coastguard Worker cmp ecx,192 2291*8fb009dcSAndroid Build Coastguard Worker je NEAR L$11212rounds_alt 2292*8fb009dcSAndroid Build Coastguard Worker cmp ecx,128 2293*8fb009dcSAndroid Build Coastguard Worker jne NEAR L$113bad_keybits 2294*8fb009dcSAndroid Build Coastguard Workeralign 16 2295*8fb009dcSAndroid Build Coastguard WorkerL$11410rounds_alt: 2296*8fb009dcSAndroid Build Coastguard Worker movdqa xmm5,[ebx] 2297*8fb009dcSAndroid Build Coastguard Worker mov ecx,8 2298*8fb009dcSAndroid Build Coastguard Worker movdqa xmm4,[32+ebx] 2299*8fb009dcSAndroid Build Coastguard Worker movdqa xmm2,xmm0 2300*8fb009dcSAndroid Build Coastguard Worker movdqu [edx-16],xmm0 2301*8fb009dcSAndroid Build Coastguard WorkerL$115loop_key128: 2302*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,0,197 2303*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,221,196 2304*8fb009dcSAndroid Build Coastguard Worker pslld xmm4,1 2305*8fb009dcSAndroid Build Coastguard Worker lea edx,[16+edx] 2306*8fb009dcSAndroid Build Coastguard Worker movdqa xmm3,xmm2 2307*8fb009dcSAndroid Build Coastguard Worker pslldq xmm2,4 2308*8fb009dcSAndroid Build Coastguard Worker pxor xmm3,xmm2 2309*8fb009dcSAndroid Build Coastguard Worker pslldq xmm2,4 2310*8fb009dcSAndroid Build Coastguard Worker pxor xmm3,xmm2 2311*8fb009dcSAndroid Build Coastguard Worker pslldq xmm2,4 2312*8fb009dcSAndroid Build Coastguard Worker pxor xmm2,xmm3 2313*8fb009dcSAndroid Build Coastguard Worker pxor xmm0,xmm2 2314*8fb009dcSAndroid Build Coastguard Worker movdqu [edx-16],xmm0 2315*8fb009dcSAndroid Build Coastguard Worker movdqa xmm2,xmm0 2316*8fb009dcSAndroid Build Coastguard Worker dec ecx 2317*8fb009dcSAndroid Build Coastguard Worker jnz NEAR L$115loop_key128 2318*8fb009dcSAndroid Build Coastguard Worker movdqa xmm4,[48+ebx] 2319*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,0,197 2320*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,221,196 2321*8fb009dcSAndroid Build Coastguard Worker pslld xmm4,1 2322*8fb009dcSAndroid Build Coastguard Worker movdqa xmm3,xmm2 2323*8fb009dcSAndroid Build Coastguard Worker pslldq xmm2,4 2324*8fb009dcSAndroid Build Coastguard Worker pxor xmm3,xmm2 2325*8fb009dcSAndroid Build Coastguard Worker pslldq xmm2,4 2326*8fb009dcSAndroid Build Coastguard Worker pxor xmm3,xmm2 2327*8fb009dcSAndroid Build Coastguard Worker pslldq xmm2,4 2328*8fb009dcSAndroid Build Coastguard Worker pxor xmm2,xmm3 2329*8fb009dcSAndroid Build Coastguard Worker pxor xmm0,xmm2 2330*8fb009dcSAndroid Build Coastguard Worker movdqu [edx],xmm0 2331*8fb009dcSAndroid Build Coastguard Worker movdqa xmm2,xmm0 2332*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,0,197 2333*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,221,196 2334*8fb009dcSAndroid Build Coastguard Worker movdqa xmm3,xmm2 2335*8fb009dcSAndroid Build Coastguard Worker pslldq xmm2,4 2336*8fb009dcSAndroid Build Coastguard Worker pxor xmm3,xmm2 2337*8fb009dcSAndroid Build Coastguard Worker pslldq xmm2,4 2338*8fb009dcSAndroid Build Coastguard Worker pxor xmm3,xmm2 2339*8fb009dcSAndroid Build Coastguard Worker pslldq xmm2,4 2340*8fb009dcSAndroid Build Coastguard Worker pxor xmm2,xmm3 2341*8fb009dcSAndroid Build Coastguard Worker pxor xmm0,xmm2 2342*8fb009dcSAndroid Build Coastguard Worker movdqu [16+edx],xmm0 2343*8fb009dcSAndroid Build Coastguard Worker mov ecx,9 2344*8fb009dcSAndroid Build Coastguard Worker mov DWORD [96+edx],ecx 2345*8fb009dcSAndroid Build Coastguard Worker jmp NEAR L$116good_key 2346*8fb009dcSAndroid Build Coastguard Workeralign 16 2347*8fb009dcSAndroid Build Coastguard WorkerL$11212rounds_alt: 2348*8fb009dcSAndroid Build Coastguard Worker movq xmm2,[16+eax] 2349*8fb009dcSAndroid Build Coastguard Worker movdqa xmm5,[16+ebx] 2350*8fb009dcSAndroid Build Coastguard Worker movdqa xmm4,[32+ebx] 2351*8fb009dcSAndroid Build Coastguard Worker mov ecx,8 2352*8fb009dcSAndroid Build Coastguard Worker movdqu [edx-16],xmm0 2353*8fb009dcSAndroid Build Coastguard WorkerL$117loop_key192: 2354*8fb009dcSAndroid Build Coastguard Worker movq [edx],xmm2 2355*8fb009dcSAndroid Build Coastguard Worker movdqa xmm1,xmm2 2356*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,0,213 2357*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,221,212 2358*8fb009dcSAndroid Build Coastguard Worker pslld xmm4,1 2359*8fb009dcSAndroid Build Coastguard Worker lea edx,[24+edx] 2360*8fb009dcSAndroid Build Coastguard Worker movdqa xmm3,xmm0 2361*8fb009dcSAndroid Build Coastguard Worker pslldq xmm0,4 2362*8fb009dcSAndroid Build Coastguard Worker pxor xmm3,xmm0 2363*8fb009dcSAndroid Build Coastguard Worker pslldq xmm0,4 2364*8fb009dcSAndroid Build Coastguard Worker pxor xmm3,xmm0 2365*8fb009dcSAndroid Build Coastguard Worker pslldq xmm0,4 2366*8fb009dcSAndroid Build Coastguard Worker pxor xmm0,xmm3 2367*8fb009dcSAndroid Build Coastguard Worker pshufd xmm3,xmm0,255 2368*8fb009dcSAndroid Build Coastguard Worker pxor xmm3,xmm1 2369*8fb009dcSAndroid Build Coastguard Worker pslldq xmm1,4 2370*8fb009dcSAndroid Build Coastguard Worker pxor xmm3,xmm1 2371*8fb009dcSAndroid Build Coastguard Worker pxor xmm0,xmm2 2372*8fb009dcSAndroid Build Coastguard Worker pxor xmm2,xmm3 2373*8fb009dcSAndroid Build Coastguard Worker movdqu [edx-16],xmm0 2374*8fb009dcSAndroid Build Coastguard Worker dec ecx 2375*8fb009dcSAndroid Build Coastguard Worker jnz NEAR L$117loop_key192 2376*8fb009dcSAndroid Build Coastguard Worker mov ecx,11 2377*8fb009dcSAndroid Build Coastguard Worker mov DWORD [32+edx],ecx 2378*8fb009dcSAndroid Build Coastguard Worker jmp NEAR L$116good_key 2379*8fb009dcSAndroid Build Coastguard Workeralign 16 2380*8fb009dcSAndroid Build Coastguard WorkerL$11114rounds_alt: 2381*8fb009dcSAndroid Build Coastguard Worker movups xmm2,[16+eax] 2382*8fb009dcSAndroid Build Coastguard Worker lea edx,[16+edx] 2383*8fb009dcSAndroid Build Coastguard Worker movdqa xmm5,[ebx] 2384*8fb009dcSAndroid Build Coastguard Worker movdqa xmm4,[32+ebx] 2385*8fb009dcSAndroid Build Coastguard Worker mov ecx,7 2386*8fb009dcSAndroid Build Coastguard Worker movdqu [edx-32],xmm0 2387*8fb009dcSAndroid Build Coastguard Worker movdqa xmm1,xmm2 2388*8fb009dcSAndroid Build Coastguard Worker movdqu [edx-16],xmm2 2389*8fb009dcSAndroid Build Coastguard WorkerL$118loop_key256: 2390*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,0,213 2391*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,221,212 2392*8fb009dcSAndroid Build Coastguard Worker movdqa xmm3,xmm0 2393*8fb009dcSAndroid Build Coastguard Worker pslldq xmm0,4 2394*8fb009dcSAndroid Build Coastguard Worker pxor xmm3,xmm0 2395*8fb009dcSAndroid Build Coastguard Worker pslldq xmm0,4 2396*8fb009dcSAndroid Build Coastguard Worker pxor xmm3,xmm0 2397*8fb009dcSAndroid Build Coastguard Worker pslldq xmm0,4 2398*8fb009dcSAndroid Build Coastguard Worker pxor xmm0,xmm3 2399*8fb009dcSAndroid Build Coastguard Worker pslld xmm4,1 2400*8fb009dcSAndroid Build Coastguard Worker pxor xmm0,xmm2 2401*8fb009dcSAndroid Build Coastguard Worker movdqu [edx],xmm0 2402*8fb009dcSAndroid Build Coastguard Worker dec ecx 2403*8fb009dcSAndroid Build Coastguard Worker jz NEAR L$119done_key256 2404*8fb009dcSAndroid Build Coastguard Worker pshufd xmm2,xmm0,255 2405*8fb009dcSAndroid Build Coastguard Worker pxor xmm3,xmm3 2406*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,221,211 2407*8fb009dcSAndroid Build Coastguard Worker movdqa xmm3,xmm1 2408*8fb009dcSAndroid Build Coastguard Worker pslldq xmm1,4 2409*8fb009dcSAndroid Build Coastguard Worker pxor xmm3,xmm1 2410*8fb009dcSAndroid Build Coastguard Worker pslldq xmm1,4 2411*8fb009dcSAndroid Build Coastguard Worker pxor xmm3,xmm1 2412*8fb009dcSAndroid Build Coastguard Worker pslldq xmm1,4 2413*8fb009dcSAndroid Build Coastguard Worker pxor xmm1,xmm3 2414*8fb009dcSAndroid Build Coastguard Worker pxor xmm2,xmm1 2415*8fb009dcSAndroid Build Coastguard Worker movdqu [16+edx],xmm2 2416*8fb009dcSAndroid Build Coastguard Worker lea edx,[32+edx] 2417*8fb009dcSAndroid Build Coastguard Worker movdqa xmm1,xmm2 2418*8fb009dcSAndroid Build Coastguard Worker jmp NEAR L$118loop_key256 2419*8fb009dcSAndroid Build Coastguard WorkerL$119done_key256: 2420*8fb009dcSAndroid Build Coastguard Worker mov ecx,13 2421*8fb009dcSAndroid Build Coastguard Worker mov DWORD [16+edx],ecx 2422*8fb009dcSAndroid Build Coastguard WorkerL$116good_key: 2423*8fb009dcSAndroid Build Coastguard Worker pxor xmm0,xmm0 2424*8fb009dcSAndroid Build Coastguard Worker pxor xmm1,xmm1 2425*8fb009dcSAndroid Build Coastguard Worker pxor xmm2,xmm2 2426*8fb009dcSAndroid Build Coastguard Worker pxor xmm3,xmm3 2427*8fb009dcSAndroid Build Coastguard Worker pxor xmm4,xmm4 2428*8fb009dcSAndroid Build Coastguard Worker pxor xmm5,xmm5 2429*8fb009dcSAndroid Build Coastguard Worker xor eax,eax 2430*8fb009dcSAndroid Build Coastguard Worker pop ebx 2431*8fb009dcSAndroid Build Coastguard Worker ret 2432*8fb009dcSAndroid Build Coastguard Workeralign 4 2433*8fb009dcSAndroid Build Coastguard WorkerL$113bad_keybits: 2434*8fb009dcSAndroid Build Coastguard Worker pxor xmm0,xmm0 2435*8fb009dcSAndroid Build Coastguard Worker mov eax,-2 2436*8fb009dcSAndroid Build Coastguard Worker pop ebx 2437*8fb009dcSAndroid Build Coastguard Worker ret 2438*8fb009dcSAndroid Build Coastguard Workerglobal _aes_hw_encrypt_key_to_decrypt_key 2439*8fb009dcSAndroid Build Coastguard Workeralign 16 2440*8fb009dcSAndroid Build Coastguard Worker_aes_hw_encrypt_key_to_decrypt_key: 2441*8fb009dcSAndroid Build Coastguard WorkerL$_aes_hw_encrypt_key_to_decrypt_key_begin: 2442*8fb009dcSAndroid Build Coastguard Worker mov edx,DWORD [4+esp] 2443*8fb009dcSAndroid Build Coastguard Worker mov ecx,DWORD [240+edx] 2444*8fb009dcSAndroid Build Coastguard Worker shl ecx,4 2445*8fb009dcSAndroid Build Coastguard Worker lea eax,[16+ecx*1+edx] 2446*8fb009dcSAndroid Build Coastguard Worker movups xmm0,[edx] 2447*8fb009dcSAndroid Build Coastguard Worker movups xmm1,[eax] 2448*8fb009dcSAndroid Build Coastguard Worker movups [eax],xmm0 2449*8fb009dcSAndroid Build Coastguard Worker movups [edx],xmm1 2450*8fb009dcSAndroid Build Coastguard Worker lea edx,[16+edx] 2451*8fb009dcSAndroid Build Coastguard Worker lea eax,[eax-16] 2452*8fb009dcSAndroid Build Coastguard WorkerL$120dec_key_inverse: 2453*8fb009dcSAndroid Build Coastguard Worker movups xmm0,[edx] 2454*8fb009dcSAndroid Build Coastguard Worker movups xmm1,[eax] 2455*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,219,192 2456*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,219,201 2457*8fb009dcSAndroid Build Coastguard Worker lea edx,[16+edx] 2458*8fb009dcSAndroid Build Coastguard Worker lea eax,[eax-16] 2459*8fb009dcSAndroid Build Coastguard Worker movups [16+eax],xmm0 2460*8fb009dcSAndroid Build Coastguard Worker movups [edx-16],xmm1 2461*8fb009dcSAndroid Build Coastguard Worker cmp eax,edx 2462*8fb009dcSAndroid Build Coastguard Worker ja NEAR L$120dec_key_inverse 2463*8fb009dcSAndroid Build Coastguard Worker movups xmm0,[edx] 2464*8fb009dcSAndroid Build Coastguard Workerdb 102,15,56,219,192 2465*8fb009dcSAndroid Build Coastguard Worker movups [edx],xmm0 2466*8fb009dcSAndroid Build Coastguard Worker pxor xmm0,xmm0 2467*8fb009dcSAndroid Build Coastguard Worker pxor xmm1,xmm1 2468*8fb009dcSAndroid Build Coastguard Worker ret 2469*8fb009dcSAndroid Build Coastguard Workeralign 64 2470*8fb009dcSAndroid Build Coastguard WorkerL$key_const: 2471*8fb009dcSAndroid Build Coastguard Workerdd 202313229,202313229,202313229,202313229 2472*8fb009dcSAndroid Build Coastguard Workerdd 67569157,67569157,67569157,67569157 2473*8fb009dcSAndroid Build Coastguard Workerdd 1,1,1,1 2474*8fb009dcSAndroid Build Coastguard Workerdd 27,27,27,27 2475*8fb009dcSAndroid Build Coastguard Workerdb 65,69,83,32,102,111,114,32,73,110,116,101,108,32,65,69 2476*8fb009dcSAndroid Build Coastguard Workerdb 83,45,78,73,44,32,67,82,89,80,84,79,71,65,77,83 2477*8fb009dcSAndroid Build Coastguard Workerdb 32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115 2478*8fb009dcSAndroid Build Coastguard Workerdb 115,108,46,111,114,103,62,0 2479*8fb009dcSAndroid Build Coastguard Worker%else 2480*8fb009dcSAndroid Build Coastguard Worker; Work around https://bugzilla.nasm.us/show_bug.cgi?id=3392738 2481*8fb009dcSAndroid Build Coastguard Workerret 2482*8fb009dcSAndroid Build Coastguard Worker%endif 2483