1 1.1 christos .machine "any" 2 1.1 christos 3 1.1 christos .text 4 1.1 christos 5 1.1 christos .align 7 6 1.1 christos rcon: 7 1.1 christos .byte 0x01,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x01,0x00,0x00,0x00 8 1.1 christos .byte 0x1b,0x00,0x00,0x00,0x1b,0x00,0x00,0x00,0x1b,0x00,0x00,0x00,0x1b,0x00,0x00,0x00 9 1.1 christos .byte 0x0d,0x0e,0x0f,0x0c,0x0d,0x0e,0x0f,0x0c,0x0d,0x0e,0x0f,0x0c,0x0d,0x0e,0x0f,0x0c 10 1.1 christos .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 11 1.1 christos .Lconsts: 12 1.1 christos mflr 0 13 1.1 christos bcl 20,31,$+4 14 1.1 christos mflr 6 15 1.1 christos addi 6,6,-0x48 16 1.1 christos mtlr 0 17 1.1 christos blr 18 1.1 christos .long 0 19 1.1 christos .byte 0,12,0x14,0,0,0,0,0 20 1.1.1.2 christos .byte 65,69,83,32,102,111,114,32,80,111,119,101,114,73,83,65,32,50,46,48,55,44,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 21 1.1 christos .align 2 22 1.1 christos 23 1.1 christos .globl aes_p8_set_encrypt_key 24 1.1 christos .type aes_p8_set_encrypt_key,@function 25 1.1 christos .align 5 26 1.1 christos aes_p8_set_encrypt_key: 27 1.1 christos .Lset_encrypt_key: 28 1.1 christos mflr 11 29 1.1 christos stw 11,4(1) 30 1.1 christos 31 1.1 christos li 6,-1 32 1.1 christos cmplwi 3,0 33 1.1 christos beq- .Lenc_key_abort 34 1.1 christos cmplwi 5,0 35 1.1 christos beq- .Lenc_key_abort 36 1.1 christos li 6,-2 37 1.1 christos cmpwi 4,128 38 1.1 christos blt- .Lenc_key_abort 39 1.1 christos cmpwi 4,256 40 1.1 christos bgt- .Lenc_key_abort 41 1.1 christos andi. 0,4,0x3f 42 1.1 christos bne- .Lenc_key_abort 43 1.1 christos 44 1.1 christos lis 0,0xfff0 45 1.1 christos mfspr 12,256 46 1.1 christos mtspr 256,0 47 1.1 christos 48 1.1 christos bl .Lconsts 49 1.1 christos mtlr 11 50 1.1 christos 51 1.1 christos neg 9,3 52 1.1 christos lvx 1,0,3 53 1.1 christos addi 3,3,15 54 1.1 christos lvsr 3,0,9 55 1.1 christos li 8,0x20 56 1.1 christos cmpwi 4,192 57 1.1 christos lvx 2,0,3 58 1.1 christos 59 1.1 christos lvx 4,0,6 60 1.1 christos 61 1.1 christos lvx 5,8,6 62 1.1 christos addi 6,6,0x10 63 1.1 christos vperm 1,1,2,3 64 1.1 christos li 7,8 65 1.1 christos vxor 0,0,0 66 1.1 christos mtctr 7 67 1.1 christos 68 1.1 christos lvsr 8,0,5 69 1.1 christos vspltisb 9,-1 70 1.1 christos lvx 10,0,5 71 1.1 christos vperm 9,0,9,8 72 1.1 christos 73 1.1 christos blt .Loop128 74 1.1 christos addi 3,3,8 75 1.1 christos beq .L192 76 1.1 christos addi 3,3,8 77 1.1 christos b .L256 78 1.1 christos 79 1.1 christos .align 4 80 1.1 christos .Loop128: 81 1.1 christos vperm 3,1,1,5 82 1.1 christos vsldoi 6,0,1,12 83 1.1 christos vperm 11,1,1,8 84 1.1 christos vsel 7,10,11,9 85 1.1 christos vor 10,11,11 86 1.1 christos .long 0x10632509 87 1.1 christos stvx 7,0,5 88 1.1 christos addi 5,5,16 89 1.1 christos 90 1.1 christos vxor 1,1,6 91 1.1 christos vsldoi 6,0,6,12 92 1.1 christos vxor 1,1,6 93 1.1 christos vsldoi 6,0,6,12 94 1.1 christos vxor 1,1,6 95 1.1 christos vadduwm 4,4,4 96 1.1 christos vxor 1,1,3 97 1.1 christos bc 16,0,.Loop128 98 1.1 christos 99 1.1 christos lvx 4,0,6 100 1.1 christos 101 1.1 christos vperm 3,1,1,5 102 1.1 christos vsldoi 6,0,1,12 103 1.1 christos vperm 11,1,1,8 104 1.1 christos vsel 7,10,11,9 105 1.1 christos vor 10,11,11 106 1.1 christos .long 0x10632509 107 1.1 christos stvx 7,0,5 108 1.1 christos addi 5,5,16 109 1.1 christos 110 1.1 christos vxor 1,1,6 111 1.1 christos vsldoi 6,0,6,12 112 1.1 christos vxor 1,1,6 113 1.1 christos vsldoi 6,0,6,12 114 1.1 christos vxor 1,1,6 115 1.1 christos vadduwm 4,4,4 116 1.1 christos vxor 1,1,3 117 1.1 christos 118 1.1 christos vperm 3,1,1,5 119 1.1 christos vsldoi 6,0,1,12 120 1.1 christos vperm 11,1,1,8 121 1.1 christos vsel 7,10,11,9 122 1.1 christos vor 10,11,11 123 1.1 christos .long 0x10632509 124 1.1 christos stvx 7,0,5 125 1.1 christos addi 5,5,16 126 1.1 christos 127 1.1 christos vxor 1,1,6 128 1.1 christos vsldoi 6,0,6,12 129 1.1 christos vxor 1,1,6 130 1.1 christos vsldoi 6,0,6,12 131 1.1 christos vxor 1,1,6 132 1.1 christos vxor 1,1,3 133 1.1 christos vperm 11,1,1,8 134 1.1 christos vsel 7,10,11,9 135 1.1 christos vor 10,11,11 136 1.1 christos stvx 7,0,5 137 1.1 christos 138 1.1 christos addi 3,5,15 139 1.1 christos addi 5,5,0x50 140 1.1 christos 141 1.1 christos li 8,10 142 1.1 christos b .Ldone 143 1.1 christos 144 1.1 christos .align 4 145 1.1 christos .L192: 146 1.1 christos lvx 6,0,3 147 1.1 christos li 7,4 148 1.1 christos vperm 11,1,1,8 149 1.1 christos vsel 7,10,11,9 150 1.1 christos vor 10,11,11 151 1.1 christos stvx 7,0,5 152 1.1 christos addi 5,5,16 153 1.1 christos vperm 2,2,6,3 154 1.1 christos vspltisb 3,8 155 1.1 christos mtctr 7 156 1.1 christos vsububm 5,5,3 157 1.1 christos 158 1.1 christos .Loop192: 159 1.1 christos vperm 3,2,2,5 160 1.1 christos vsldoi 6,0,1,12 161 1.1 christos .long 0x10632509 162 1.1 christos 163 1.1 christos vxor 1,1,6 164 1.1 christos vsldoi 6,0,6,12 165 1.1 christos vxor 1,1,6 166 1.1 christos vsldoi 6,0,6,12 167 1.1 christos vxor 1,1,6 168 1.1 christos 169 1.1 christos vsldoi 7,0,2,8 170 1.1 christos vspltw 6,1,3 171 1.1 christos vxor 6,6,2 172 1.1 christos vsldoi 2,0,2,12 173 1.1 christos vadduwm 4,4,4 174 1.1 christos vxor 2,2,6 175 1.1 christos vxor 1,1,3 176 1.1 christos vxor 2,2,3 177 1.1 christos vsldoi 7,7,1,8 178 1.1 christos 179 1.1 christos vperm 3,2,2,5 180 1.1 christos vsldoi 6,0,1,12 181 1.1 christos vperm 11,7,7,8 182 1.1 christos vsel 7,10,11,9 183 1.1 christos vor 10,11,11 184 1.1 christos .long 0x10632509 185 1.1 christos stvx 7,0,5 186 1.1 christos addi 5,5,16 187 1.1 christos 188 1.1 christos vsldoi 7,1,2,8 189 1.1 christos vxor 1,1,6 190 1.1 christos vsldoi 6,0,6,12 191 1.1 christos vperm 11,7,7,8 192 1.1 christos vsel 7,10,11,9 193 1.1 christos vor 10,11,11 194 1.1 christos vxor 1,1,6 195 1.1 christos vsldoi 6,0,6,12 196 1.1 christos vxor 1,1,6 197 1.1 christos stvx 7,0,5 198 1.1 christos addi 5,5,16 199 1.1 christos 200 1.1 christos vspltw 6,1,3 201 1.1 christos vxor 6,6,2 202 1.1 christos vsldoi 2,0,2,12 203 1.1 christos vadduwm 4,4,4 204 1.1 christos vxor 2,2,6 205 1.1 christos vxor 1,1,3 206 1.1 christos vxor 2,2,3 207 1.1 christos vperm 11,1,1,8 208 1.1 christos vsel 7,10,11,9 209 1.1 christos vor 10,11,11 210 1.1 christos stvx 7,0,5 211 1.1 christos addi 3,5,15 212 1.1 christos addi 5,5,16 213 1.1 christos bc 16,0,.Loop192 214 1.1 christos 215 1.1 christos li 8,12 216 1.1 christos addi 5,5,0x20 217 1.1 christos b .Ldone 218 1.1 christos 219 1.1 christos .align 4 220 1.1 christos .L256: 221 1.1 christos lvx 6,0,3 222 1.1 christos li 7,7 223 1.1 christos li 8,14 224 1.1 christos vperm 11,1,1,8 225 1.1 christos vsel 7,10,11,9 226 1.1 christos vor 10,11,11 227 1.1 christos stvx 7,0,5 228 1.1 christos addi 5,5,16 229 1.1 christos vperm 2,2,6,3 230 1.1 christos mtctr 7 231 1.1 christos 232 1.1 christos .Loop256: 233 1.1 christos vperm 3,2,2,5 234 1.1 christos vsldoi 6,0,1,12 235 1.1 christos vperm 11,2,2,8 236 1.1 christos vsel 7,10,11,9 237 1.1 christos vor 10,11,11 238 1.1 christos .long 0x10632509 239 1.1 christos stvx 7,0,5 240 1.1 christos addi 5,5,16 241 1.1 christos 242 1.1 christos vxor 1,1,6 243 1.1 christos vsldoi 6,0,6,12 244 1.1 christos vxor 1,1,6 245 1.1 christos vsldoi 6,0,6,12 246 1.1 christos vxor 1,1,6 247 1.1 christos vadduwm 4,4,4 248 1.1 christos vxor 1,1,3 249 1.1 christos vperm 11,1,1,8 250 1.1 christos vsel 7,10,11,9 251 1.1 christos vor 10,11,11 252 1.1 christos stvx 7,0,5 253 1.1 christos addi 3,5,15 254 1.1 christos addi 5,5,16 255 1.1 christos bdz .Ldone 256 1.1 christos 257 1.1 christos vspltw 3,1,3 258 1.1 christos vsldoi 6,0,2,12 259 1.1 christos .long 0x106305C8 260 1.1 christos 261 1.1 christos vxor 2,2,6 262 1.1 christos vsldoi 6,0,6,12 263 1.1 christos vxor 2,2,6 264 1.1 christos vsldoi 6,0,6,12 265 1.1 christos vxor 2,2,6 266 1.1 christos 267 1.1 christos vxor 2,2,3 268 1.1 christos b .Loop256 269 1.1 christos 270 1.1 christos .align 4 271 1.1 christos .Ldone: 272 1.1 christos lvx 2,0,3 273 1.1 christos vsel 2,10,2,9 274 1.1 christos stvx 2,0,3 275 1.1 christos li 6,0 276 1.1 christos mtspr 256,12 277 1.1 christos stw 8,0(5) 278 1.1 christos 279 1.1 christos .Lenc_key_abort: 280 1.1 christos mr 3,6 281 1.1 christos blr 282 1.1 christos .long 0 283 1.1 christos .byte 0,12,0x14,1,0,0,3,0 284 1.1 christos .long 0 285 1.1 christos 286 1.1 christos 287 1.1 christos .globl aes_p8_set_decrypt_key 288 1.1 christos .type aes_p8_set_decrypt_key,@function 289 1.1 christos .align 5 290 1.1 christos aes_p8_set_decrypt_key: 291 1.1 christos stwu 1,-32(1) 292 1.1 christos mflr 10 293 1.1 christos stw 10,32+4(1) 294 1.1 christos bl .Lset_encrypt_key 295 1.1 christos mtlr 10 296 1.1 christos 297 1.1 christos cmpwi 3,0 298 1.1 christos bne- .Ldec_key_abort 299 1.1 christos 300 1.1 christos slwi 7,8,4 301 1.1 christos subi 3,5,240 302 1.1 christos srwi 8,8,1 303 1.1 christos add 5,3,7 304 1.1 christos mtctr 8 305 1.1 christos 306 1.1 christos .Ldeckey: 307 1.1 christos lwz 0, 0(3) 308 1.1 christos lwz 6, 4(3) 309 1.1 christos lwz 7, 8(3) 310 1.1 christos lwz 8, 12(3) 311 1.1 christos addi 3,3,16 312 1.1 christos lwz 9, 0(5) 313 1.1 christos lwz 10,4(5) 314 1.1 christos lwz 11,8(5) 315 1.1 christos lwz 12,12(5) 316 1.1 christos stw 0, 0(5) 317 1.1 christos stw 6, 4(5) 318 1.1 christos stw 7, 8(5) 319 1.1 christos stw 8, 12(5) 320 1.1 christos subi 5,5,16 321 1.1 christos stw 9, -16(3) 322 1.1 christos stw 10,-12(3) 323 1.1 christos stw 11,-8(3) 324 1.1 christos stw 12,-4(3) 325 1.1 christos bc 16,0,.Ldeckey 326 1.1 christos 327 1.1 christos xor 3,3,3 328 1.1 christos .Ldec_key_abort: 329 1.1 christos addi 1,1,32 330 1.1 christos blr 331 1.1 christos .long 0 332 1.1 christos .byte 0,12,4,1,0x80,0,3,0 333 1.1 christos .long 0 334 1.1 christos 335 1.1 christos .globl aes_p8_encrypt 336 1.1 christos .type aes_p8_encrypt,@function 337 1.1 christos .align 5 338 1.1 christos aes_p8_encrypt: 339 1.1 christos lwz 6,240(5) 340 1.1 christos lis 0,0xfc00 341 1.1 christos mfspr 12,256 342 1.1 christos li 7,15 343 1.1 christos mtspr 256,0 344 1.1 christos 345 1.1 christos lvx 0,0,3 346 1.1 christos neg 11,4 347 1.1 christos lvx 1,7,3 348 1.1 christos lvsl 2,0,3 349 1.1 christos 350 1.1 christos lvsl 3,0,11 351 1.1 christos 352 1.1 christos li 7,16 353 1.1 christos vperm 0,0,1,2 354 1.1 christos lvx 1,0,5 355 1.1 christos lvsl 5,0,5 356 1.1 christos srwi 6,6,1 357 1.1 christos lvx 2,7,5 358 1.1 christos addi 7,7,16 359 1.1 christos subi 6,6,1 360 1.1 christos vperm 1,1,2,5 361 1.1 christos 362 1.1 christos vxor 0,0,1 363 1.1 christos lvx 1,7,5 364 1.1 christos addi 7,7,16 365 1.1 christos mtctr 6 366 1.1 christos 367 1.1 christos .Loop_enc: 368 1.1 christos vperm 2,2,1,5 369 1.1 christos .long 0x10001508 370 1.1 christos lvx 2,7,5 371 1.1 christos addi 7,7,16 372 1.1 christos vperm 1,1,2,5 373 1.1 christos .long 0x10000D08 374 1.1 christos lvx 1,7,5 375 1.1 christos addi 7,7,16 376 1.1 christos bc 16,0,.Loop_enc 377 1.1 christos 378 1.1 christos vperm 2,2,1,5 379 1.1 christos .long 0x10001508 380 1.1 christos lvx 2,7,5 381 1.1 christos vperm 1,1,2,5 382 1.1 christos .long 0x10000D09 383 1.1 christos 384 1.1 christos vspltisb 2,-1 385 1.1 christos vxor 1,1,1 386 1.1 christos li 7,15 387 1.1 christos vperm 2,1,2,3 388 1.1 christos 389 1.1 christos lvx 1,0,4 390 1.1 christos vperm 0,0,0,3 391 1.1 christos vsel 1,1,0,2 392 1.1 christos lvx 4,7,4 393 1.1 christos stvx 1,0,4 394 1.1 christos vsel 0,0,4,2 395 1.1 christos stvx 0,7,4 396 1.1 christos 397 1.1 christos mtspr 256,12 398 1.1 christos blr 399 1.1 christos .long 0 400 1.1 christos .byte 0,12,0x14,0,0,0,3,0 401 1.1 christos .long 0 402 1.1 christos 403 1.1 christos .globl aes_p8_decrypt 404 1.1 christos .type aes_p8_decrypt,@function 405 1.1 christos .align 5 406 1.1 christos aes_p8_decrypt: 407 1.1 christos lwz 6,240(5) 408 1.1 christos lis 0,0xfc00 409 1.1 christos mfspr 12,256 410 1.1 christos li 7,15 411 1.1 christos mtspr 256,0 412 1.1 christos 413 1.1 christos lvx 0,0,3 414 1.1 christos neg 11,4 415 1.1 christos lvx 1,7,3 416 1.1 christos lvsl 2,0,3 417 1.1 christos 418 1.1 christos lvsl 3,0,11 419 1.1 christos 420 1.1 christos li 7,16 421 1.1 christos vperm 0,0,1,2 422 1.1 christos lvx 1,0,5 423 1.1 christos lvsl 5,0,5 424 1.1 christos srwi 6,6,1 425 1.1 christos lvx 2,7,5 426 1.1 christos addi 7,7,16 427 1.1 christos subi 6,6,1 428 1.1 christos vperm 1,1,2,5 429 1.1 christos 430 1.1 christos vxor 0,0,1 431 1.1 christos lvx 1,7,5 432 1.1 christos addi 7,7,16 433 1.1 christos mtctr 6 434 1.1 christos 435 1.1 christos .Loop_dec: 436 1.1 christos vperm 2,2,1,5 437 1.1 christos .long 0x10001548 438 1.1 christos lvx 2,7,5 439 1.1 christos addi 7,7,16 440 1.1 christos vperm 1,1,2,5 441 1.1 christos .long 0x10000D48 442 1.1 christos lvx 1,7,5 443 1.1 christos addi 7,7,16 444 1.1 christos bc 16,0,.Loop_dec 445 1.1 christos 446 1.1 christos vperm 2,2,1,5 447 1.1 christos .long 0x10001548 448 1.1 christos lvx 2,7,5 449 1.1 christos vperm 1,1,2,5 450 1.1 christos .long 0x10000D49 451 1.1 christos 452 1.1 christos vspltisb 2,-1 453 1.1 christos vxor 1,1,1 454 1.1 christos li 7,15 455 1.1 christos vperm 2,1,2,3 456 1.1 christos 457 1.1 christos lvx 1,0,4 458 1.1 christos vperm 0,0,0,3 459 1.1 christos vsel 1,1,0,2 460 1.1 christos lvx 4,7,4 461 1.1 christos stvx 1,0,4 462 1.1 christos vsel 0,0,4,2 463 1.1 christos stvx 0,7,4 464 1.1 christos 465 1.1 christos mtspr 256,12 466 1.1 christos blr 467 1.1 christos .long 0 468 1.1 christos .byte 0,12,0x14,0,0,0,3,0 469 1.1 christos .long 0 470 1.1 christos 471 1.1 christos .globl aes_p8_cbc_encrypt 472 1.1 christos .type aes_p8_cbc_encrypt,@function 473 1.1 christos .align 5 474 1.1 christos aes_p8_cbc_encrypt: 475 1.1 christos cmplwi 5,16 476 1.1 christos bltlr 477 1.1 christos 478 1.1 christos cmpwi 8,0 479 1.1 christos lis 0,0xffe0 480 1.1 christos mfspr 12,256 481 1.1 christos mtspr 256,0 482 1.1 christos 483 1.1 christos li 10,15 484 1.1 christos vxor 0,0,0 485 1.1 christos 486 1.1 christos 487 1.1 christos lvx 4,0,7 488 1.1 christos lvsl 6,0,7 489 1.1 christos lvx 5,10,7 490 1.1 christos 491 1.1 christos vperm 4,4,5,6 492 1.1 christos 493 1.1 christos neg 11,3 494 1.1 christos lvsl 10,0,6 495 1.1 christos lwz 9,240(6) 496 1.1 christos 497 1.1 christos lvsr 6,0,11 498 1.1 christos lvx 5,0,3 499 1.1 christos addi 3,3,15 500 1.1 christos 501 1.1 christos 502 1.1 christos lvsr 8,0,4 503 1.1 christos vspltisb 9,-1 504 1.1 christos lvx 7,0,4 505 1.1 christos vperm 9,0,9,8 506 1.1 christos 507 1.1 christos 508 1.1 christos srwi 9,9,1 509 1.1 christos li 10,16 510 1.1 christos subi 9,9,1 511 1.1 christos beq .Lcbc_dec 512 1.1 christos 513 1.1 christos .Lcbc_enc: 514 1.1 christos vor 2,5,5 515 1.1 christos lvx 5,0,3 516 1.1 christos addi 3,3,16 517 1.1 christos mtctr 9 518 1.1 christos subi 5,5,16 519 1.1 christos 520 1.1 christos lvx 0,0,6 521 1.1 christos vperm 2,2,5,6 522 1.1 christos lvx 1,10,6 523 1.1 christos addi 10,10,16 524 1.1 christos vperm 0,0,1,10 525 1.1 christos vxor 2,2,0 526 1.1 christos lvx 0,10,6 527 1.1 christos addi 10,10,16 528 1.1 christos vxor 2,2,4 529 1.1 christos 530 1.1 christos .Loop_cbc_enc: 531 1.1 christos vperm 1,1,0,10 532 1.1 christos .long 0x10420D08 533 1.1 christos lvx 1,10,6 534 1.1 christos addi 10,10,16 535 1.1 christos vperm 0,0,1,10 536 1.1 christos .long 0x10420508 537 1.1 christos lvx 0,10,6 538 1.1 christos addi 10,10,16 539 1.1 christos bc 16,0,.Loop_cbc_enc 540 1.1 christos 541 1.1 christos vperm 1,1,0,10 542 1.1 christos .long 0x10420D08 543 1.1 christos lvx 1,10,6 544 1.1 christos li 10,16 545 1.1 christos vperm 0,0,1,10 546 1.1 christos .long 0x10820509 547 1.1 christos cmplwi 5,16 548 1.1 christos 549 1.1 christos vperm 3,4,4,8 550 1.1 christos vsel 2,7,3,9 551 1.1 christos vor 7,3,3 552 1.1 christos stvx 2,0,4 553 1.1 christos addi 4,4,16 554 1.1 christos bge .Lcbc_enc 555 1.1 christos 556 1.1 christos b .Lcbc_done 557 1.1 christos 558 1.1 christos .align 4 559 1.1 christos .Lcbc_dec: 560 1.1 christos cmplwi 5,128 561 1.1 christos bge _aesp8_cbc_decrypt8x 562 1.1 christos vor 3,5,5 563 1.1 christos lvx 5,0,3 564 1.1 christos addi 3,3,16 565 1.1 christos mtctr 9 566 1.1 christos subi 5,5,16 567 1.1 christos 568 1.1 christos lvx 0,0,6 569 1.1 christos vperm 3,3,5,6 570 1.1 christos lvx 1,10,6 571 1.1 christos addi 10,10,16 572 1.1 christos vperm 0,0,1,10 573 1.1 christos vxor 2,3,0 574 1.1 christos lvx 0,10,6 575 1.1 christos addi 10,10,16 576 1.1 christos 577 1.1 christos .Loop_cbc_dec: 578 1.1 christos vperm 1,1,0,10 579 1.1 christos .long 0x10420D48 580 1.1 christos lvx 1,10,6 581 1.1 christos addi 10,10,16 582 1.1 christos vperm 0,0,1,10 583 1.1 christos .long 0x10420548 584 1.1 christos lvx 0,10,6 585 1.1 christos addi 10,10,16 586 1.1 christos bc 16,0,.Loop_cbc_dec 587 1.1 christos 588 1.1 christos vperm 1,1,0,10 589 1.1 christos .long 0x10420D48 590 1.1 christos lvx 1,10,6 591 1.1 christos li 10,16 592 1.1 christos vperm 0,0,1,10 593 1.1 christos .long 0x10420549 594 1.1 christos cmplwi 5,16 595 1.1 christos 596 1.1 christos vxor 2,2,4 597 1.1 christos vor 4,3,3 598 1.1 christos vperm 3,2,2,8 599 1.1 christos vsel 2,7,3,9 600 1.1 christos vor 7,3,3 601 1.1 christos stvx 2,0,4 602 1.1 christos addi 4,4,16 603 1.1 christos bge .Lcbc_dec 604 1.1 christos 605 1.1 christos .Lcbc_done: 606 1.1 christos addi 4,4,-1 607 1.1 christos lvx 2,0,4 608 1.1 christos vsel 2,7,2,9 609 1.1 christos stvx 2,0,4 610 1.1 christos 611 1.1 christos neg 8,7 612 1.1 christos li 10,15 613 1.1 christos vxor 0,0,0 614 1.1 christos vspltisb 9,-1 615 1.1 christos 616 1.1 christos lvsl 8,0,8 617 1.1 christos vperm 9,0,9,8 618 1.1 christos 619 1.1 christos lvx 7,0,7 620 1.1 christos vperm 4,4,4,8 621 1.1 christos vsel 2,7,4,9 622 1.1 christos lvx 5,10,7 623 1.1 christos stvx 2,0,7 624 1.1 christos vsel 2,4,5,9 625 1.1 christos stvx 2,10,7 626 1.1 christos 627 1.1 christos mtspr 256,12 628 1.1 christos blr 629 1.1 christos .long 0 630 1.1 christos .byte 0,12,0x14,0,0,0,6,0 631 1.1 christos .long 0 632 1.1 christos .align 5 633 1.1 christos _aesp8_cbc_decrypt8x: 634 1.1 christos stwu 1,-392(1) 635 1.1 christos li 10,175 636 1.1 christos li 11,191 637 1.1 christos stvx 20,10,1 638 1.1 christos addi 10,10,32 639 1.1 christos stvx 21,11,1 640 1.1 christos addi 11,11,32 641 1.1 christos stvx 22,10,1 642 1.1 christos addi 10,10,32 643 1.1 christos stvx 23,11,1 644 1.1 christos addi 11,11,32 645 1.1 christos stvx 24,10,1 646 1.1 christos addi 10,10,32 647 1.1 christos stvx 25,11,1 648 1.1 christos addi 11,11,32 649 1.1 christos stvx 26,10,1 650 1.1 christos addi 10,10,32 651 1.1 christos stvx 27,11,1 652 1.1 christos addi 11,11,32 653 1.1 christos stvx 28,10,1 654 1.1 christos addi 10,10,32 655 1.1 christos stvx 29,11,1 656 1.1 christos addi 11,11,32 657 1.1 christos stvx 30,10,1 658 1.1 christos stvx 31,11,1 659 1.1 christos li 0,-1 660 1.1 christos stw 12,364(1) 661 1.1 christos li 8,0x10 662 1.1 christos stw 26,368(1) 663 1.1 christos li 26,0x20 664 1.1 christos stw 27,372(1) 665 1.1 christos li 27,0x30 666 1.1 christos stw 28,376(1) 667 1.1 christos li 28,0x40 668 1.1 christos stw 29,380(1) 669 1.1 christos li 29,0x50 670 1.1 christos stw 30,384(1) 671 1.1 christos li 30,0x60 672 1.1 christos stw 31,388(1) 673 1.1 christos li 31,0x70 674 1.1 christos mtspr 256,0 675 1.1 christos 676 1.1 christos subi 9,9,3 677 1.1 christos subi 5,5,128 678 1.1 christos 679 1.1 christos lvx 23,0,6 680 1.1 christos lvx 30,8,6 681 1.1 christos addi 6,6,0x20 682 1.1 christos lvx 31,0,6 683 1.1 christos vperm 23,23,30,10 684 1.1 christos addi 11,1,32+15 685 1.1 christos mtctr 9 686 1.1 christos 687 1.1 christos .Load_cbc_dec_key: 688 1.1 christos vperm 24,30,31,10 689 1.1 christos lvx 30,8,6 690 1.1 christos addi 6,6,0x20 691 1.1 christos stvx 24,0,11 692 1.1 christos vperm 25,31,30,10 693 1.1 christos lvx 31,0,6 694 1.1 christos stvx 25,8,11 695 1.1 christos addi 11,11,0x20 696 1.1 christos bc 16,0,.Load_cbc_dec_key 697 1.1 christos 698 1.1 christos lvx 26,8,6 699 1.1 christos vperm 24,30,31,10 700 1.1 christos lvx 27,26,6 701 1.1 christos stvx 24,0,11 702 1.1 christos vperm 25,31,26,10 703 1.1 christos lvx 28,27,6 704 1.1 christos stvx 25,8,11 705 1.1 christos addi 11,1,32+15 706 1.1 christos vperm 26,26,27,10 707 1.1 christos lvx 29,28,6 708 1.1 christos vperm 27,27,28,10 709 1.1 christos lvx 30,29,6 710 1.1 christos vperm 28,28,29,10 711 1.1 christos lvx 31,30,6 712 1.1 christos vperm 29,29,30,10 713 1.1 christos lvx 14,31,6 714 1.1 christos vperm 30,30,31,10 715 1.1 christos lvx 24,0,11 716 1.1 christos vperm 31,31,14,10 717 1.1 christos lvx 25,8,11 718 1.1 christos 719 1.1 christos 720 1.1 christos 721 1.1 christos subi 3,3,15 722 1.1 christos 723 1.1 christos 724 1.1 christos .long 0x7C001E99 725 1.1 christos 726 1.1 christos 727 1.1 christos .long 0x7C281E99 728 1.1 christos 729 1.1 christos .long 0x7C5A1E99 730 1.1 christos 731 1.1 christos .long 0x7C7B1E99 732 1.1 christos 733 1.1 christos .long 0x7D5C1E99 734 1.1 christos 735 1.1 christos vxor 14,0,23 736 1.1 christos .long 0x7D7D1E99 737 1.1 christos 738 1.1 christos vxor 15,1,23 739 1.1 christos .long 0x7D9E1E99 740 1.1 christos 741 1.1 christos vxor 16,2,23 742 1.1 christos .long 0x7DBF1E99 743 1.1 christos addi 3,3,0x80 744 1.1 christos 745 1.1 christos vxor 17,3,23 746 1.1 christos 747 1.1 christos vxor 18,10,23 748 1.1 christos 749 1.1 christos vxor 19,11,23 750 1.1 christos vxor 20,12,23 751 1.1 christos vxor 21,13,23 752 1.1 christos 753 1.1 christos mtctr 9 754 1.1 christos b .Loop_cbc_dec8x 755 1.1 christos .align 5 756 1.1 christos .Loop_cbc_dec8x: 757 1.1 christos .long 0x11CEC548 758 1.1 christos .long 0x11EFC548 759 1.1 christos .long 0x1210C548 760 1.1 christos .long 0x1231C548 761 1.1 christos .long 0x1252C548 762 1.1 christos .long 0x1273C548 763 1.1 christos .long 0x1294C548 764 1.1 christos .long 0x12B5C548 765 1.1 christos lvx 24,26,11 766 1.1 christos addi 11,11,0x20 767 1.1 christos 768 1.1 christos .long 0x11CECD48 769 1.1 christos .long 0x11EFCD48 770 1.1 christos .long 0x1210CD48 771 1.1 christos .long 0x1231CD48 772 1.1 christos .long 0x1252CD48 773 1.1 christos .long 0x1273CD48 774 1.1 christos .long 0x1294CD48 775 1.1 christos .long 0x12B5CD48 776 1.1 christos lvx 25,8,11 777 1.1 christos bc 16,0,.Loop_cbc_dec8x 778 1.1 christos 779 1.1 christos subic 5,5,128 780 1.1 christos .long 0x11CEC548 781 1.1 christos .long 0x11EFC548 782 1.1 christos .long 0x1210C548 783 1.1 christos .long 0x1231C548 784 1.1 christos .long 0x1252C548 785 1.1 christos .long 0x1273C548 786 1.1 christos .long 0x1294C548 787 1.1 christos .long 0x12B5C548 788 1.1 christos 789 1.1 christos subfe. 0,0,0 790 1.1 christos .long 0x11CECD48 791 1.1 christos .long 0x11EFCD48 792 1.1 christos .long 0x1210CD48 793 1.1 christos .long 0x1231CD48 794 1.1 christos .long 0x1252CD48 795 1.1 christos .long 0x1273CD48 796 1.1 christos .long 0x1294CD48 797 1.1 christos .long 0x12B5CD48 798 1.1 christos 799 1.1 christos and 0,0,5 800 1.1 christos .long 0x11CED548 801 1.1 christos .long 0x11EFD548 802 1.1 christos .long 0x1210D548 803 1.1 christos .long 0x1231D548 804 1.1 christos .long 0x1252D548 805 1.1 christos .long 0x1273D548 806 1.1 christos .long 0x1294D548 807 1.1 christos .long 0x12B5D548 808 1.1 christos 809 1.1 christos add 3,3,0 810 1.1 christos 811 1.1 christos 812 1.1 christos 813 1.1 christos .long 0x11CEDD48 814 1.1 christos .long 0x11EFDD48 815 1.1 christos .long 0x1210DD48 816 1.1 christos .long 0x1231DD48 817 1.1 christos .long 0x1252DD48 818 1.1 christos .long 0x1273DD48 819 1.1 christos .long 0x1294DD48 820 1.1 christos .long 0x12B5DD48 821 1.1 christos 822 1.1 christos addi 11,1,32+15 823 1.1 christos .long 0x11CEE548 824 1.1 christos .long 0x11EFE548 825 1.1 christos .long 0x1210E548 826 1.1 christos .long 0x1231E548 827 1.1 christos .long 0x1252E548 828 1.1 christos .long 0x1273E548 829 1.1 christos .long 0x1294E548 830 1.1 christos .long 0x12B5E548 831 1.1 christos lvx 24,0,11 832 1.1 christos 833 1.1 christos .long 0x11CEED48 834 1.1 christos .long 0x11EFED48 835 1.1 christos .long 0x1210ED48 836 1.1 christos .long 0x1231ED48 837 1.1 christos .long 0x1252ED48 838 1.1 christos .long 0x1273ED48 839 1.1 christos .long 0x1294ED48 840 1.1 christos .long 0x12B5ED48 841 1.1 christos lvx 25,8,11 842 1.1 christos 843 1.1 christos .long 0x11CEF548 844 1.1 christos vxor 4,4,31 845 1.1 christos .long 0x11EFF548 846 1.1 christos vxor 0,0,31 847 1.1 christos .long 0x1210F548 848 1.1 christos vxor 1,1,31 849 1.1 christos .long 0x1231F548 850 1.1 christos vxor 2,2,31 851 1.1 christos .long 0x1252F548 852 1.1 christos vxor 3,3,31 853 1.1 christos .long 0x1273F548 854 1.1 christos vxor 10,10,31 855 1.1 christos .long 0x1294F548 856 1.1 christos vxor 11,11,31 857 1.1 christos .long 0x12B5F548 858 1.1 christos vxor 12,12,31 859 1.1 christos 860 1.1 christos .long 0x11CE2549 861 1.1 christos .long 0x11EF0549 862 1.1 christos .long 0x7C001E99 863 1.1 christos .long 0x12100D49 864 1.1 christos .long 0x7C281E99 865 1.1 christos .long 0x12311549 866 1.1 christos 867 1.1 christos .long 0x7C5A1E99 868 1.1 christos .long 0x12521D49 869 1.1 christos 870 1.1 christos .long 0x7C7B1E99 871 1.1 christos .long 0x12735549 872 1.1 christos 873 1.1 christos .long 0x7D5C1E99 874 1.1 christos .long 0x12945D49 875 1.1 christos 876 1.1 christos .long 0x7D7D1E99 877 1.1 christos .long 0x12B56549 878 1.1 christos 879 1.1 christos .long 0x7D9E1E99 880 1.1 christos vor 4,13,13 881 1.1 christos 882 1.1 christos .long 0x7DBF1E99 883 1.1 christos addi 3,3,0x80 884 1.1 christos 885 1.1 christos 886 1.1 christos 887 1.1 christos .long 0x7DC02799 888 1.1 christos 889 1.1 christos vxor 14,0,23 890 1.1 christos 891 1.1 christos .long 0x7DE82799 892 1.1 christos 893 1.1 christos vxor 15,1,23 894 1.1 christos 895 1.1 christos .long 0x7E1A2799 896 1.1 christos vxor 16,2,23 897 1.1 christos 898 1.1 christos .long 0x7E3B2799 899 1.1 christos vxor 17,3,23 900 1.1 christos 901 1.1 christos .long 0x7E5C2799 902 1.1 christos vxor 18,10,23 903 1.1 christos 904 1.1 christos .long 0x7E7D2799 905 1.1 christos vxor 19,11,23 906 1.1 christos 907 1.1 christos .long 0x7E9E2799 908 1.1 christos vxor 20,12,23 909 1.1 christos .long 0x7EBF2799 910 1.1 christos addi 4,4,0x80 911 1.1 christos vxor 21,13,23 912 1.1 christos 913 1.1 christos mtctr 9 914 1.1 christos beq .Loop_cbc_dec8x 915 1.1 christos 916 1.1 christos addic. 5,5,128 917 1.1 christos beq .Lcbc_dec8x_done 918 1.1 christos nop 919 1.1 christos nop 920 1.1 christos 921 1.1 christos .Loop_cbc_dec8x_tail: 922 1.1 christos .long 0x11EFC548 923 1.1 christos .long 0x1210C548 924 1.1 christos .long 0x1231C548 925 1.1 christos .long 0x1252C548 926 1.1 christos .long 0x1273C548 927 1.1 christos .long 0x1294C548 928 1.1 christos .long 0x12B5C548 929 1.1 christos lvx 24,26,11 930 1.1 christos addi 11,11,0x20 931 1.1 christos 932 1.1 christos .long 0x11EFCD48 933 1.1 christos .long 0x1210CD48 934 1.1 christos .long 0x1231CD48 935 1.1 christos .long 0x1252CD48 936 1.1 christos .long 0x1273CD48 937 1.1 christos .long 0x1294CD48 938 1.1 christos .long 0x12B5CD48 939 1.1 christos lvx 25,8,11 940 1.1 christos bc 16,0,.Loop_cbc_dec8x_tail 941 1.1 christos 942 1.1 christos .long 0x11EFC548 943 1.1 christos .long 0x1210C548 944 1.1 christos .long 0x1231C548 945 1.1 christos .long 0x1252C548 946 1.1 christos .long 0x1273C548 947 1.1 christos .long 0x1294C548 948 1.1 christos .long 0x12B5C548 949 1.1 christos 950 1.1 christos .long 0x11EFCD48 951 1.1 christos .long 0x1210CD48 952 1.1 christos .long 0x1231CD48 953 1.1 christos .long 0x1252CD48 954 1.1 christos .long 0x1273CD48 955 1.1 christos .long 0x1294CD48 956 1.1 christos .long 0x12B5CD48 957 1.1 christos 958 1.1 christos .long 0x11EFD548 959 1.1 christos .long 0x1210D548 960 1.1 christos .long 0x1231D548 961 1.1 christos .long 0x1252D548 962 1.1 christos .long 0x1273D548 963 1.1 christos .long 0x1294D548 964 1.1 christos .long 0x12B5D548 965 1.1 christos 966 1.1 christos .long 0x11EFDD48 967 1.1 christos .long 0x1210DD48 968 1.1 christos .long 0x1231DD48 969 1.1 christos .long 0x1252DD48 970 1.1 christos .long 0x1273DD48 971 1.1 christos .long 0x1294DD48 972 1.1 christos .long 0x12B5DD48 973 1.1 christos 974 1.1 christos .long 0x11EFE548 975 1.1 christos .long 0x1210E548 976 1.1 christos .long 0x1231E548 977 1.1 christos .long 0x1252E548 978 1.1 christos .long 0x1273E548 979 1.1 christos .long 0x1294E548 980 1.1 christos .long 0x12B5E548 981 1.1 christos 982 1.1 christos .long 0x11EFED48 983 1.1 christos .long 0x1210ED48 984 1.1 christos .long 0x1231ED48 985 1.1 christos .long 0x1252ED48 986 1.1 christos .long 0x1273ED48 987 1.1 christos .long 0x1294ED48 988 1.1 christos .long 0x12B5ED48 989 1.1 christos 990 1.1 christos .long 0x11EFF548 991 1.1 christos vxor 4,4,31 992 1.1 christos .long 0x1210F548 993 1.1 christos vxor 1,1,31 994 1.1 christos .long 0x1231F548 995 1.1 christos vxor 2,2,31 996 1.1 christos .long 0x1252F548 997 1.1 christos vxor 3,3,31 998 1.1 christos .long 0x1273F548 999 1.1 christos vxor 10,10,31 1000 1.1 christos .long 0x1294F548 1001 1.1 christos vxor 11,11,31 1002 1.1 christos .long 0x12B5F548 1003 1.1 christos vxor 12,12,31 1004 1.1 christos 1005 1.1 christos cmplwi 5,32 1006 1.1 christos blt .Lcbc_dec8x_one 1007 1.1 christos nop 1008 1.1 christos beq .Lcbc_dec8x_two 1009 1.1 christos cmplwi 5,64 1010 1.1 christos blt .Lcbc_dec8x_three 1011 1.1 christos nop 1012 1.1 christos beq .Lcbc_dec8x_four 1013 1.1 christos cmplwi 5,96 1014 1.1 christos blt .Lcbc_dec8x_five 1015 1.1 christos nop 1016 1.1 christos beq .Lcbc_dec8x_six 1017 1.1 christos 1018 1.1 christos .Lcbc_dec8x_seven: 1019 1.1 christos .long 0x11EF2549 1020 1.1 christos .long 0x12100D49 1021 1.1 christos .long 0x12311549 1022 1.1 christos .long 0x12521D49 1023 1.1 christos .long 0x12735549 1024 1.1 christos .long 0x12945D49 1025 1.1 christos .long 0x12B56549 1026 1.1 christos vor 4,13,13 1027 1.1 christos 1028 1.1 christos 1029 1.1 christos 1030 1.1 christos .long 0x7DE02799 1031 1.1 christos 1032 1.1 christos .long 0x7E082799 1033 1.1 christos 1034 1.1 christos .long 0x7E3A2799 1035 1.1 christos 1036 1.1 christos .long 0x7E5B2799 1037 1.1 christos 1038 1.1 christos .long 0x7E7C2799 1039 1.1 christos 1040 1.1 christos .long 0x7E9D2799 1041 1.1 christos .long 0x7EBE2799 1042 1.1 christos addi 4,4,0x70 1043 1.1 christos b .Lcbc_dec8x_done 1044 1.1 christos 1045 1.1 christos .align 5 1046 1.1 christos .Lcbc_dec8x_six: 1047 1.1 christos .long 0x12102549 1048 1.1 christos .long 0x12311549 1049 1.1 christos .long 0x12521D49 1050 1.1 christos .long 0x12735549 1051 1.1 christos .long 0x12945D49 1052 1.1 christos .long 0x12B56549 1053 1.1 christos vor 4,13,13 1054 1.1 christos 1055 1.1 christos 1056 1.1 christos 1057 1.1 christos .long 0x7E002799 1058 1.1 christos 1059 1.1 christos .long 0x7E282799 1060 1.1 christos 1061 1.1 christos .long 0x7E5A2799 1062 1.1 christos 1063 1.1 christos .long 0x7E7B2799 1064 1.1 christos 1065 1.1 christos .long 0x7E9C2799 1066 1.1 christos .long 0x7EBD2799 1067 1.1 christos addi 4,4,0x60 1068 1.1 christos b .Lcbc_dec8x_done 1069 1.1 christos 1070 1.1 christos .align 5 1071 1.1 christos .Lcbc_dec8x_five: 1072 1.1 christos .long 0x12312549 1073 1.1 christos .long 0x12521D49 1074 1.1 christos .long 0x12735549 1075 1.1 christos .long 0x12945D49 1076 1.1 christos .long 0x12B56549 1077 1.1 christos vor 4,13,13 1078 1.1 christos 1079 1.1 christos 1080 1.1 christos 1081 1.1 christos .long 0x7E202799 1082 1.1 christos 1083 1.1 christos .long 0x7E482799 1084 1.1 christos 1085 1.1 christos .long 0x7E7A2799 1086 1.1 christos 1087 1.1 christos .long 0x7E9B2799 1088 1.1 christos .long 0x7EBC2799 1089 1.1 christos addi 4,4,0x50 1090 1.1 christos b .Lcbc_dec8x_done 1091 1.1 christos 1092 1.1 christos .align 5 1093 1.1 christos .Lcbc_dec8x_four: 1094 1.1 christos .long 0x12522549 1095 1.1 christos .long 0x12735549 1096 1.1 christos .long 0x12945D49 1097 1.1 christos .long 0x12B56549 1098 1.1 christos vor 4,13,13 1099 1.1 christos 1100 1.1 christos 1101 1.1 christos 1102 1.1 christos .long 0x7E402799 1103 1.1 christos 1104 1.1 christos .long 0x7E682799 1105 1.1 christos 1106 1.1 christos .long 0x7E9A2799 1107 1.1 christos .long 0x7EBB2799 1108 1.1 christos addi 4,4,0x40 1109 1.1 christos b .Lcbc_dec8x_done 1110 1.1 christos 1111 1.1 christos .align 5 1112 1.1 christos .Lcbc_dec8x_three: 1113 1.1 christos .long 0x12732549 1114 1.1 christos .long 0x12945D49 1115 1.1 christos .long 0x12B56549 1116 1.1 christos vor 4,13,13 1117 1.1 christos 1118 1.1 christos 1119 1.1 christos 1120 1.1 christos .long 0x7E602799 1121 1.1 christos 1122 1.1 christos .long 0x7E882799 1123 1.1 christos .long 0x7EBA2799 1124 1.1 christos addi 4,4,0x30 1125 1.1 christos b .Lcbc_dec8x_done 1126 1.1 christos 1127 1.1 christos .align 5 1128 1.1 christos .Lcbc_dec8x_two: 1129 1.1 christos .long 0x12942549 1130 1.1 christos .long 0x12B56549 1131 1.1 christos vor 4,13,13 1132 1.1 christos 1133 1.1 christos 1134 1.1 christos 1135 1.1 christos .long 0x7E802799 1136 1.1 christos .long 0x7EA82799 1137 1.1 christos addi 4,4,0x20 1138 1.1 christos b .Lcbc_dec8x_done 1139 1.1 christos 1140 1.1 christos .align 5 1141 1.1 christos .Lcbc_dec8x_one: 1142 1.1 christos .long 0x12B52549 1143 1.1 christos vor 4,13,13 1144 1.1 christos 1145 1.1 christos 1146 1.1 christos .long 0x7EA02799 1147 1.1 christos addi 4,4,0x10 1148 1.1 christos 1149 1.1 christos .Lcbc_dec8x_done: 1150 1.1 christos 1151 1.1 christos .long 0x7C803F99 1152 1.1 christos 1153 1.1 christos li 10,47 1154 1.1 christos li 11,63 1155 1.1 christos stvx 6,10,1 1156 1.1 christos addi 10,10,32 1157 1.1 christos stvx 6,11,1 1158 1.1 christos addi 11,11,32 1159 1.1 christos stvx 6,10,1 1160 1.1 christos addi 10,10,32 1161 1.1 christos stvx 6,11,1 1162 1.1 christos addi 11,11,32 1163 1.1 christos stvx 6,10,1 1164 1.1 christos addi 10,10,32 1165 1.1 christos stvx 6,11,1 1166 1.1 christos addi 11,11,32 1167 1.1 christos stvx 6,10,1 1168 1.1 christos addi 10,10,32 1169 1.1 christos stvx 6,11,1 1170 1.1 christos addi 11,11,32 1171 1.1 christos 1172 1.1 christos mtspr 256,12 1173 1.1 christos lvx 20,10,1 1174 1.1 christos addi 10,10,32 1175 1.1 christos lvx 21,11,1 1176 1.1 christos addi 11,11,32 1177 1.1 christos lvx 22,10,1 1178 1.1 christos addi 10,10,32 1179 1.1 christos lvx 23,11,1 1180 1.1 christos addi 11,11,32 1181 1.1 christos lvx 24,10,1 1182 1.1 christos addi 10,10,32 1183 1.1 christos lvx 25,11,1 1184 1.1 christos addi 11,11,32 1185 1.1 christos lvx 26,10,1 1186 1.1 christos addi 10,10,32 1187 1.1 christos lvx 27,11,1 1188 1.1 christos addi 11,11,32 1189 1.1 christos lvx 28,10,1 1190 1.1 christos addi 10,10,32 1191 1.1 christos lvx 29,11,1 1192 1.1 christos addi 11,11,32 1193 1.1 christos lvx 30,10,1 1194 1.1 christos lvx 31,11,1 1195 1.1 christos lwz 26,368(1) 1196 1.1 christos lwz 27,372(1) 1197 1.1 christos lwz 28,376(1) 1198 1.1 christos lwz 29,380(1) 1199 1.1 christos lwz 30,384(1) 1200 1.1 christos lwz 31,388(1) 1201 1.1 christos addi 1,1,392 1202 1.1 christos blr 1203 1.1 christos .long 0 1204 1.1 christos .byte 0,12,0x04,0,0x80,6,6,0 1205 1.1 christos .long 0 1206 1.1 christos 1207 1.1 christos .globl aes_p8_ctr32_encrypt_blocks 1208 1.1 christos .type aes_p8_ctr32_encrypt_blocks,@function 1209 1.1 christos .align 5 1210 1.1 christos aes_p8_ctr32_encrypt_blocks: 1211 1.1 christos cmplwi 5,1 1212 1.1 christos bltlr 1213 1.1 christos 1214 1.1 christos lis 0,0xfff0 1215 1.1 christos mfspr 12,256 1216 1.1 christos mtspr 256,0 1217 1.1 christos 1218 1.1 christos li 10,15 1219 1.1 christos vxor 0,0,0 1220 1.1 christos 1221 1.1 christos 1222 1.1 christos lvx 4,0,7 1223 1.1 christos lvsl 6,0,7 1224 1.1 christos lvx 5,10,7 1225 1.1 christos vspltisb 11,1 1226 1.1 christos 1227 1.1 christos vperm 4,4,5,6 1228 1.1 christos vsldoi 11,0,11,1 1229 1.1 christos 1230 1.1 christos neg 11,3 1231 1.1 christos lvsl 10,0,6 1232 1.1 christos lwz 9,240(6) 1233 1.1 christos 1234 1.1 christos lvsr 6,0,11 1235 1.1 christos lvx 5,0,3 1236 1.1 christos addi 3,3,15 1237 1.1 christos 1238 1.1 christos 1239 1.1 christos srwi 9,9,1 1240 1.1 christos li 10,16 1241 1.1 christos subi 9,9,1 1242 1.1 christos 1243 1.1 christos cmplwi 5,8 1244 1.1 christos bge _aesp8_ctr32_encrypt8x 1245 1.1 christos 1246 1.1 christos lvsr 8,0,4 1247 1.1 christos vspltisb 9,-1 1248 1.1 christos lvx 7,0,4 1249 1.1 christos vperm 9,0,9,8 1250 1.1 christos 1251 1.1 christos 1252 1.1 christos lvx 0,0,6 1253 1.1 christos mtctr 9 1254 1.1 christos lvx 1,10,6 1255 1.1 christos addi 10,10,16 1256 1.1 christos vperm 0,0,1,10 1257 1.1 christos vxor 2,4,0 1258 1.1 christos lvx 0,10,6 1259 1.1 christos addi 10,10,16 1260 1.1 christos b .Loop_ctr32_enc 1261 1.1 christos 1262 1.1 christos .align 5 1263 1.1 christos .Loop_ctr32_enc: 1264 1.1 christos vperm 1,1,0,10 1265 1.1 christos .long 0x10420D08 1266 1.1 christos lvx 1,10,6 1267 1.1 christos addi 10,10,16 1268 1.1 christos vperm 0,0,1,10 1269 1.1 christos .long 0x10420508 1270 1.1 christos lvx 0,10,6 1271 1.1 christos addi 10,10,16 1272 1.1 christos bc 16,0,.Loop_ctr32_enc 1273 1.1 christos 1274 1.1 christos vadduwm 4,4,11 1275 1.1 christos vor 3,5,5 1276 1.1 christos lvx 5,0,3 1277 1.1 christos addi 3,3,16 1278 1.1 christos subic. 5,5,1 1279 1.1 christos 1280 1.1 christos vperm 1,1,0,10 1281 1.1 christos .long 0x10420D08 1282 1.1 christos lvx 1,10,6 1283 1.1 christos vperm 3,3,5,6 1284 1.1 christos li 10,16 1285 1.1 christos vperm 1,0,1,10 1286 1.1 christos lvx 0,0,6 1287 1.1 christos vxor 3,3,1 1288 1.1 christos .long 0x10421D09 1289 1.1 christos 1290 1.1 christos lvx 1,10,6 1291 1.1 christos addi 10,10,16 1292 1.1 christos vperm 2,2,2,8 1293 1.1 christos vsel 3,7,2,9 1294 1.1 christos mtctr 9 1295 1.1 christos vperm 0,0,1,10 1296 1.1 christos vor 7,2,2 1297 1.1 christos vxor 2,4,0 1298 1.1 christos lvx 0,10,6 1299 1.1 christos addi 10,10,16 1300 1.1 christos stvx 3,0,4 1301 1.1 christos addi 4,4,16 1302 1.1 christos bne .Loop_ctr32_enc 1303 1.1 christos 1304 1.1 christos addi 4,4,-1 1305 1.1 christos lvx 2,0,4 1306 1.1 christos vsel 2,7,2,9 1307 1.1 christos stvx 2,0,4 1308 1.1 christos 1309 1.1 christos mtspr 256,12 1310 1.1 christos blr 1311 1.1 christos .long 0 1312 1.1 christos .byte 0,12,0x14,0,0,0,6,0 1313 1.1 christos .long 0 1314 1.1 christos .align 5 1315 1.1 christos _aesp8_ctr32_encrypt8x: 1316 1.1 christos stwu 1,-392(1) 1317 1.1 christos li 10,175 1318 1.1 christos li 11,191 1319 1.1 christos stvx 20,10,1 1320 1.1 christos addi 10,10,32 1321 1.1 christos stvx 21,11,1 1322 1.1 christos addi 11,11,32 1323 1.1 christos stvx 22,10,1 1324 1.1 christos addi 10,10,32 1325 1.1 christos stvx 23,11,1 1326 1.1 christos addi 11,11,32 1327 1.1 christos stvx 24,10,1 1328 1.1 christos addi 10,10,32 1329 1.1 christos stvx 25,11,1 1330 1.1 christos addi 11,11,32 1331 1.1 christos stvx 26,10,1 1332 1.1 christos addi 10,10,32 1333 1.1 christos stvx 27,11,1 1334 1.1 christos addi 11,11,32 1335 1.1 christos stvx 28,10,1 1336 1.1 christos addi 10,10,32 1337 1.1 christos stvx 29,11,1 1338 1.1 christos addi 11,11,32 1339 1.1 christos stvx 30,10,1 1340 1.1 christos stvx 31,11,1 1341 1.1 christos li 0,-1 1342 1.1 christos stw 12,364(1) 1343 1.1 christos li 8,0x10 1344 1.1 christos stw 26,368(1) 1345 1.1 christos li 26,0x20 1346 1.1 christos stw 27,372(1) 1347 1.1 christos li 27,0x30 1348 1.1 christos stw 28,376(1) 1349 1.1 christos li 28,0x40 1350 1.1 christos stw 29,380(1) 1351 1.1 christos li 29,0x50 1352 1.1 christos stw 30,384(1) 1353 1.1 christos li 30,0x60 1354 1.1 christos stw 31,388(1) 1355 1.1 christos li 31,0x70 1356 1.1 christos mtspr 256,0 1357 1.1 christos 1358 1.1 christos subi 9,9,3 1359 1.1 christos 1360 1.1 christos lvx 23,0,6 1361 1.1 christos lvx 30,8,6 1362 1.1 christos addi 6,6,0x20 1363 1.1 christos lvx 31,0,6 1364 1.1 christos vperm 23,23,30,10 1365 1.1 christos addi 11,1,32+15 1366 1.1 christos mtctr 9 1367 1.1 christos 1368 1.1 christos .Load_ctr32_enc_key: 1369 1.1 christos vperm 24,30,31,10 1370 1.1 christos lvx 30,8,6 1371 1.1 christos addi 6,6,0x20 1372 1.1 christos stvx 24,0,11 1373 1.1 christos vperm 25,31,30,10 1374 1.1 christos lvx 31,0,6 1375 1.1 christos stvx 25,8,11 1376 1.1 christos addi 11,11,0x20 1377 1.1 christos bc 16,0,.Load_ctr32_enc_key 1378 1.1 christos 1379 1.1 christos lvx 26,8,6 1380 1.1 christos vperm 24,30,31,10 1381 1.1 christos lvx 27,26,6 1382 1.1 christos stvx 24,0,11 1383 1.1 christos vperm 25,31,26,10 1384 1.1 christos lvx 28,27,6 1385 1.1 christos stvx 25,8,11 1386 1.1 christos addi 11,1,32+15 1387 1.1 christos vperm 26,26,27,10 1388 1.1 christos lvx 29,28,6 1389 1.1 christos vperm 27,27,28,10 1390 1.1 christos lvx 30,29,6 1391 1.1 christos vperm 28,28,29,10 1392 1.1 christos lvx 31,30,6 1393 1.1 christos vperm 29,29,30,10 1394 1.1 christos lvx 15,31,6 1395 1.1 christos vperm 30,30,31,10 1396 1.1 christos lvx 24,0,11 1397 1.1 christos vperm 31,31,15,10 1398 1.1 christos lvx 25,8,11 1399 1.1 christos 1400 1.1 christos vadduwm 7,11,11 1401 1.1 christos subi 3,3,15 1402 1.1 christos slwi 5,5,4 1403 1.1 christos 1404 1.1 christos vadduwm 16,4,11 1405 1.1 christos vadduwm 17,4,7 1406 1.1 christos vxor 15,4,23 1407 1.1 christos 1408 1.1 christos vadduwm 18,16,7 1409 1.1 christos vxor 16,16,23 1410 1.1 christos 1411 1.1 christos vadduwm 19,17,7 1412 1.1 christos vxor 17,17,23 1413 1.1 christos 1414 1.1 christos vadduwm 20,18,7 1415 1.1 christos vxor 18,18,23 1416 1.1 christos 1417 1.1 christos vadduwm 21,19,7 1418 1.1 christos vxor 19,19,23 1419 1.1 christos vadduwm 22,20,7 1420 1.1 christos vxor 20,20,23 1421 1.1 christos vadduwm 4,21,7 1422 1.1 christos vxor 21,21,23 1423 1.1 christos vxor 22,22,23 1424 1.1 christos 1425 1.1 christos mtctr 9 1426 1.1 christos b .Loop_ctr32_enc8x 1427 1.1 christos .align 5 1428 1.1 christos .Loop_ctr32_enc8x: 1429 1.1 christos .long 0x11EFC508 1430 1.1 christos .long 0x1210C508 1431 1.1 christos .long 0x1231C508 1432 1.1 christos .long 0x1252C508 1433 1.1 christos .long 0x1273C508 1434 1.1 christos .long 0x1294C508 1435 1.1 christos .long 0x12B5C508 1436 1.1 christos .long 0x12D6C508 1437 1.1 christos .Loop_ctr32_enc8x_middle: 1438 1.1 christos lvx 24,26,11 1439 1.1 christos addi 11,11,0x20 1440 1.1 christos 1441 1.1 christos .long 0x11EFCD08 1442 1.1 christos .long 0x1210CD08 1443 1.1 christos .long 0x1231CD08 1444 1.1 christos .long 0x1252CD08 1445 1.1 christos .long 0x1273CD08 1446 1.1 christos .long 0x1294CD08 1447 1.1 christos .long 0x12B5CD08 1448 1.1 christos .long 0x12D6CD08 1449 1.1 christos lvx 25,8,11 1450 1.1 christos bc 16,0,.Loop_ctr32_enc8x 1451 1.1 christos 1452 1.1 christos subic 11,5,256 1453 1.1 christos .long 0x11EFC508 1454 1.1 christos .long 0x1210C508 1455 1.1 christos .long 0x1231C508 1456 1.1 christos .long 0x1252C508 1457 1.1 christos .long 0x1273C508 1458 1.1 christos .long 0x1294C508 1459 1.1 christos .long 0x12B5C508 1460 1.1 christos .long 0x12D6C508 1461 1.1 christos 1462 1.1 christos subfe 0,0,0 1463 1.1 christos .long 0x11EFCD08 1464 1.1 christos .long 0x1210CD08 1465 1.1 christos .long 0x1231CD08 1466 1.1 christos .long 0x1252CD08 1467 1.1 christos .long 0x1273CD08 1468 1.1 christos .long 0x1294CD08 1469 1.1 christos .long 0x12B5CD08 1470 1.1 christos .long 0x12D6CD08 1471 1.1 christos 1472 1.1 christos and 0,0,11 1473 1.1 christos addi 11,1,32+15 1474 1.1 christos .long 0x11EFD508 1475 1.1 christos .long 0x1210D508 1476 1.1 christos .long 0x1231D508 1477 1.1 christos .long 0x1252D508 1478 1.1 christos .long 0x1273D508 1479 1.1 christos .long 0x1294D508 1480 1.1 christos .long 0x12B5D508 1481 1.1 christos .long 0x12D6D508 1482 1.1 christos lvx 24,0,11 1483 1.1 christos 1484 1.1 christos subic 5,5,129 1485 1.1 christos .long 0x11EFDD08 1486 1.1 christos addi 5,5,1 1487 1.1 christos .long 0x1210DD08 1488 1.1 christos .long 0x1231DD08 1489 1.1 christos .long 0x1252DD08 1490 1.1 christos .long 0x1273DD08 1491 1.1 christos .long 0x1294DD08 1492 1.1 christos .long 0x12B5DD08 1493 1.1 christos .long 0x12D6DD08 1494 1.1 christos lvx 25,8,11 1495 1.1 christos 1496 1.1 christos .long 0x11EFE508 1497 1.1 christos .long 0x7C001E99 1498 1.1 christos .long 0x1210E508 1499 1.1 christos .long 0x7C281E99 1500 1.1 christos .long 0x1231E508 1501 1.1 christos .long 0x7C5A1E99 1502 1.1 christos .long 0x1252E508 1503 1.1 christos .long 0x7C7B1E99 1504 1.1 christos .long 0x1273E508 1505 1.1 christos .long 0x7D5C1E99 1506 1.1 christos .long 0x1294E508 1507 1.1 christos .long 0x7D9D1E99 1508 1.1 christos .long 0x12B5E508 1509 1.1 christos .long 0x7DBE1E99 1510 1.1 christos .long 0x12D6E508 1511 1.1 christos .long 0x7DDF1E99 1512 1.1 christos addi 3,3,0x80 1513 1.1 christos 1514 1.1 christos .long 0x11EFED08 1515 1.1 christos 1516 1.1 christos .long 0x1210ED08 1517 1.1 christos 1518 1.1 christos .long 0x1231ED08 1519 1.1 christos 1520 1.1 christos .long 0x1252ED08 1521 1.1 christos 1522 1.1 christos .long 0x1273ED08 1523 1.1 christos 1524 1.1 christos .long 0x1294ED08 1525 1.1 christos 1526 1.1 christos .long 0x12B5ED08 1527 1.1 christos 1528 1.1 christos .long 0x12D6ED08 1529 1.1 christos 1530 1.1 christos 1531 1.1 christos add 3,3,0 1532 1.1 christos 1533 1.1 christos 1534 1.1 christos 1535 1.1 christos subfe. 0,0,0 1536 1.1 christos .long 0x11EFF508 1537 1.1 christos vxor 0,0,31 1538 1.1 christos .long 0x1210F508 1539 1.1 christos vxor 1,1,31 1540 1.1 christos .long 0x1231F508 1541 1.1 christos vxor 2,2,31 1542 1.1 christos .long 0x1252F508 1543 1.1 christos vxor 3,3,31 1544 1.1 christos .long 0x1273F508 1545 1.1 christos vxor 10,10,31 1546 1.1 christos .long 0x1294F508 1547 1.1 christos vxor 12,12,31 1548 1.1 christos .long 0x12B5F508 1549 1.1 christos vxor 13,13,31 1550 1.1 christos .long 0x12D6F508 1551 1.1 christos vxor 14,14,31 1552 1.1 christos 1553 1.1 christos bne .Lctr32_enc8x_break 1554 1.1 christos 1555 1.1 christos .long 0x100F0509 1556 1.1 christos .long 0x10300D09 1557 1.1 christos vadduwm 16,4,11 1558 1.1 christos .long 0x10511509 1559 1.1 christos vadduwm 17,4,7 1560 1.1 christos vxor 15,4,23 1561 1.1 christos .long 0x10721D09 1562 1.1 christos vadduwm 18,16,7 1563 1.1 christos vxor 16,16,23 1564 1.1 christos .long 0x11535509 1565 1.1 christos vadduwm 19,17,7 1566 1.1 christos vxor 17,17,23 1567 1.1 christos .long 0x11946509 1568 1.1 christos vadduwm 20,18,7 1569 1.1 christos vxor 18,18,23 1570 1.1 christos .long 0x11B56D09 1571 1.1 christos vadduwm 21,19,7 1572 1.1 christos vxor 19,19,23 1573 1.1 christos .long 0x11D67509 1574 1.1 christos vadduwm 22,20,7 1575 1.1 christos vxor 20,20,23 1576 1.1 christos 1577 1.1 christos vadduwm 4,21,7 1578 1.1 christos vxor 21,21,23 1579 1.1 christos 1580 1.1 christos vxor 22,22,23 1581 1.1 christos mtctr 9 1582 1.1 christos 1583 1.1 christos .long 0x11EFC508 1584 1.1 christos .long 0x7C002799 1585 1.1 christos 1586 1.1 christos .long 0x1210C508 1587 1.1 christos .long 0x7C282799 1588 1.1 christos 1589 1.1 christos .long 0x1231C508 1590 1.1 christos .long 0x7C5A2799 1591 1.1 christos 1592 1.1 christos .long 0x1252C508 1593 1.1 christos .long 0x7C7B2799 1594 1.1 christos 1595 1.1 christos .long 0x1273C508 1596 1.1 christos .long 0x7D5C2799 1597 1.1 christos 1598 1.1 christos .long 0x1294C508 1599 1.1 christos .long 0x7D9D2799 1600 1.1 christos 1601 1.1 christos .long 0x12B5C508 1602 1.1 christos .long 0x7DBE2799 1603 1.1 christos .long 0x12D6C508 1604 1.1 christos .long 0x7DDF2799 1605 1.1 christos addi 4,4,0x80 1606 1.1 christos 1607 1.1 christos b .Loop_ctr32_enc8x_middle 1608 1.1 christos 1609 1.1 christos .align 5 1610 1.1 christos .Lctr32_enc8x_break: 1611 1.1 christos cmpwi 5,-0x60 1612 1.1 christos blt .Lctr32_enc8x_one 1613 1.1 christos nop 1614 1.1 christos beq .Lctr32_enc8x_two 1615 1.1 christos cmpwi 5,-0x40 1616 1.1 christos blt .Lctr32_enc8x_three 1617 1.1 christos nop 1618 1.1 christos beq .Lctr32_enc8x_four 1619 1.1 christos cmpwi 5,-0x20 1620 1.1 christos blt .Lctr32_enc8x_five 1621 1.1 christos nop 1622 1.1 christos beq .Lctr32_enc8x_six 1623 1.1 christos cmpwi 5,0x00 1624 1.1 christos blt .Lctr32_enc8x_seven 1625 1.1 christos 1626 1.1 christos .Lctr32_enc8x_eight: 1627 1.1 christos .long 0x11EF0509 1628 1.1 christos .long 0x12100D09 1629 1.1 christos .long 0x12311509 1630 1.1 christos .long 0x12521D09 1631 1.1 christos .long 0x12735509 1632 1.1 christos .long 0x12946509 1633 1.1 christos .long 0x12B56D09 1634 1.1 christos .long 0x12D67509 1635 1.1 christos 1636 1.1 christos 1637 1.1 christos 1638 1.1 christos .long 0x7DE02799 1639 1.1 christos 1640 1.1 christos .long 0x7E082799 1641 1.1 christos 1642 1.1 christos .long 0x7E3A2799 1643 1.1 christos 1644 1.1 christos .long 0x7E5B2799 1645 1.1 christos 1646 1.1 christos .long 0x7E7C2799 1647 1.1 christos 1648 1.1 christos .long 0x7E9D2799 1649 1.1 christos 1650 1.1 christos .long 0x7EBE2799 1651 1.1 christos .long 0x7EDF2799 1652 1.1 christos addi 4,4,0x80 1653 1.1 christos b .Lctr32_enc8x_done 1654 1.1 christos 1655 1.1 christos .align 5 1656 1.1 christos .Lctr32_enc8x_seven: 1657 1.1 christos .long 0x11EF0D09 1658 1.1 christos .long 0x12101509 1659 1.1 christos .long 0x12311D09 1660 1.1 christos .long 0x12525509 1661 1.1 christos .long 0x12736509 1662 1.1 christos .long 0x12946D09 1663 1.1 christos .long 0x12B57509 1664 1.1 christos 1665 1.1 christos 1666 1.1 christos 1667 1.1 christos .long 0x7DE02799 1668 1.1 christos 1669 1.1 christos .long 0x7E082799 1670 1.1 christos 1671 1.1 christos .long 0x7E3A2799 1672 1.1 christos 1673 1.1 christos .long 0x7E5B2799 1674 1.1 christos 1675 1.1 christos .long 0x7E7C2799 1676 1.1 christos 1677 1.1 christos .long 0x7E9D2799 1678 1.1 christos .long 0x7EBE2799 1679 1.1 christos addi 4,4,0x70 1680 1.1 christos b .Lctr32_enc8x_done 1681 1.1 christos 1682 1.1 christos .align 5 1683 1.1 christos .Lctr32_enc8x_six: 1684 1.1 christos .long 0x11EF1509 1685 1.1 christos .long 0x12101D09 1686 1.1 christos .long 0x12315509 1687 1.1 christos .long 0x12526509 1688 1.1 christos .long 0x12736D09 1689 1.1 christos .long 0x12947509 1690 1.1 christos 1691 1.1 christos 1692 1.1 christos 1693 1.1 christos .long 0x7DE02799 1694 1.1 christos 1695 1.1 christos .long 0x7E082799 1696 1.1 christos 1697 1.1 christos .long 0x7E3A2799 1698 1.1 christos 1699 1.1 christos .long 0x7E5B2799 1700 1.1 christos 1701 1.1 christos .long 0x7E7C2799 1702 1.1 christos .long 0x7E9D2799 1703 1.1 christos addi 4,4,0x60 1704 1.1 christos b .Lctr32_enc8x_done 1705 1.1 christos 1706 1.1 christos .align 5 1707 1.1 christos .Lctr32_enc8x_five: 1708 1.1 christos .long 0x11EF1D09 1709 1.1 christos .long 0x12105509 1710 1.1 christos .long 0x12316509 1711 1.1 christos .long 0x12526D09 1712 1.1 christos .long 0x12737509 1713 1.1 christos 1714 1.1 christos 1715 1.1 christos 1716 1.1 christos .long 0x7DE02799 1717 1.1 christos 1718 1.1 christos .long 0x7E082799 1719 1.1 christos 1720 1.1 christos .long 0x7E3A2799 1721 1.1 christos 1722 1.1 christos .long 0x7E5B2799 1723 1.1 christos .long 0x7E7C2799 1724 1.1 christos addi 4,4,0x50 1725 1.1 christos b .Lctr32_enc8x_done 1726 1.1 christos 1727 1.1 christos .align 5 1728 1.1 christos .Lctr32_enc8x_four: 1729 1.1 christos .long 0x11EF5509 1730 1.1 christos .long 0x12106509 1731 1.1 christos .long 0x12316D09 1732 1.1 christos .long 0x12527509 1733 1.1 christos 1734 1.1 christos 1735 1.1 christos 1736 1.1 christos .long 0x7DE02799 1737 1.1 christos 1738 1.1 christos .long 0x7E082799 1739 1.1 christos 1740 1.1 christos .long 0x7E3A2799 1741 1.1 christos .long 0x7E5B2799 1742 1.1 christos addi 4,4,0x40 1743 1.1 christos b .Lctr32_enc8x_done 1744 1.1 christos 1745 1.1 christos .align 5 1746 1.1 christos .Lctr32_enc8x_three: 1747 1.1 christos .long 0x11EF6509 1748 1.1 christos .long 0x12106D09 1749 1.1 christos .long 0x12317509 1750 1.1 christos 1751 1.1 christos 1752 1.1 christos 1753 1.1 christos .long 0x7DE02799 1754 1.1 christos 1755 1.1 christos .long 0x7E082799 1756 1.1 christos .long 0x7E3A2799 1757 1.1 christos addi 4,4,0x30 1758 1.1.1.2 christos b .Lctr32_enc8x_done 1759 1.1 christos 1760 1.1 christos .align 5 1761 1.1 christos .Lctr32_enc8x_two: 1762 1.1 christos .long 0x11EF6D09 1763 1.1 christos .long 0x12107509 1764 1.1 christos 1765 1.1 christos 1766 1.1 christos 1767 1.1 christos .long 0x7DE02799 1768 1.1 christos .long 0x7E082799 1769 1.1 christos addi 4,4,0x20 1770 1.1.1.2 christos b .Lctr32_enc8x_done 1771 1.1 christos 1772 1.1 christos .align 5 1773 1.1 christos .Lctr32_enc8x_one: 1774 1.1 christos .long 0x11EF7509 1775 1.1 christos 1776 1.1 christos 1777 1.1 christos .long 0x7DE02799 1778 1.1 christos addi 4,4,0x10 1779 1.1 christos 1780 1.1 christos .Lctr32_enc8x_done: 1781 1.1 christos li 10,47 1782 1.1 christos li 11,63 1783 1.1 christos stvx 6,10,1 1784 1.1 christos addi 10,10,32 1785 1.1 christos stvx 6,11,1 1786 1.1 christos addi 11,11,32 1787 1.1 christos stvx 6,10,1 1788 1.1 christos addi 10,10,32 1789 1.1 christos stvx 6,11,1 1790 1.1 christos addi 11,11,32 1791 1.1 christos stvx 6,10,1 1792 1.1 christos addi 10,10,32 1793 1.1 christos stvx 6,11,1 1794 1.1 christos addi 11,11,32 1795 1.1 christos stvx 6,10,1 1796 1.1 christos addi 10,10,32 1797 1.1 christos stvx 6,11,1 1798 1.1 christos addi 11,11,32 1799 1.1 christos 1800 1.1 christos mtspr 256,12 1801 1.1 christos lvx 20,10,1 1802 1.1 christos addi 10,10,32 1803 1.1 christos lvx 21,11,1 1804 1.1 christos addi 11,11,32 1805 1.1 christos lvx 22,10,1 1806 1.1 christos addi 10,10,32 1807 1.1 christos lvx 23,11,1 1808 1.1 christos addi 11,11,32 1809 1.1 christos lvx 24,10,1 1810 1.1 christos addi 10,10,32 1811 1.1 christos lvx 25,11,1 1812 1.1 christos addi 11,11,32 1813 1.1 christos lvx 26,10,1 1814 1.1 christos addi 10,10,32 1815 1.1 christos lvx 27,11,1 1816 1.1 christos addi 11,11,32 1817 1.1 christos lvx 28,10,1 1818 1.1 christos addi 10,10,32 1819 1.1 christos lvx 29,11,1 1820 1.1 christos addi 11,11,32 1821 1.1 christos lvx 30,10,1 1822 1.1 christos lvx 31,11,1 1823 1.1 christos lwz 26,368(1) 1824 1.1 christos lwz 27,372(1) 1825 1.1 christos lwz 28,376(1) 1826 1.1 christos lwz 29,380(1) 1827 1.1 christos lwz 30,384(1) 1828 1.1 christos lwz 31,388(1) 1829 1.1 christos addi 1,1,392 1830 1.1 christos blr 1831 1.1 christos .long 0 1832 1.1 christos .byte 0,12,0x04,0,0x80,6,6,0 1833 1.1 christos .long 0 1834 1.1 christos 1835 1.1.1.2 christos .globl aes_p8_xts_encrypt 1836 1.1.1.2 christos .type aes_p8_xts_encrypt,@function 1837 1.1.1.2 christos .align 5 1838 1.1.1.2 christos aes_p8_xts_encrypt: 1839 1.1.1.2 christos mr 10,3 1840 1.1.1.2 christos li 3,-1 1841 1.1.1.2 christos cmplwi 5,16 1842 1.1.1.2 christos bltlr 1843 1.1.1.2 christos 1844 1.1.1.2 christos lis 0,0xfff0 1845 1.1.1.2 christos mfspr 12,256 1846 1.1.1.2 christos li 11,0 1847 1.1.1.2 christos mtspr 256,0 1848 1.1.1.2 christos 1849 1.1.1.2 christos vspltisb 9,0x07 1850 1.1.1.2 christos 1851 1.1.1.2 christos 1852 1.1.1.2 christos 1853 1.1.1.2 christos 1854 1.1.1.2 christos li 3,15 1855 1.1.1.2 christos lvx 8,0,8 1856 1.1.1.2 christos lvsl 5,0,8 1857 1.1.1.2 christos lvx 4,3,8 1858 1.1.1.2 christos 1859 1.1.1.2 christos vperm 8,8,4,5 1860 1.1.1.2 christos 1861 1.1.1.2 christos neg 11,10 1862 1.1.1.2 christos lvsr 5,0,11 1863 1.1.1.2 christos lvx 2,0,10 1864 1.1.1.2 christos addi 10,10,15 1865 1.1.1.2 christos 1866 1.1.1.2 christos 1867 1.1.1.2 christos cmplwi 7,0 1868 1.1.1.2 christos beq .Lxts_enc_no_key2 1869 1.1.1.2 christos 1870 1.1.1.2 christos lvsl 7,0,7 1871 1.1.1.2 christos lwz 9,240(7) 1872 1.1.1.2 christos srwi 9,9,1 1873 1.1.1.2 christos subi 9,9,1 1874 1.1.1.2 christos li 3,16 1875 1.1.1.2 christos 1876 1.1.1.2 christos lvx 0,0,7 1877 1.1.1.2 christos lvx 1,3,7 1878 1.1.1.2 christos addi 3,3,16 1879 1.1.1.2 christos vperm 0,0,1,7 1880 1.1.1.2 christos vxor 8,8,0 1881 1.1.1.2 christos lvx 0,3,7 1882 1.1.1.2 christos addi 3,3,16 1883 1.1.1.2 christos mtctr 9 1884 1.1.1.2 christos 1885 1.1.1.2 christos .Ltweak_xts_enc: 1886 1.1.1.2 christos vperm 1,1,0,7 1887 1.1.1.2 christos .long 0x11080D08 1888 1.1.1.2 christos lvx 1,3,7 1889 1.1.1.2 christos addi 3,3,16 1890 1.1.1.2 christos vperm 0,0,1,7 1891 1.1.1.2 christos .long 0x11080508 1892 1.1.1.2 christos lvx 0,3,7 1893 1.1.1.2 christos addi 3,3,16 1894 1.1.1.2 christos bc 16,0,.Ltweak_xts_enc 1895 1.1.1.2 christos 1896 1.1.1.2 christos vperm 1,1,0,7 1897 1.1.1.2 christos .long 0x11080D08 1898 1.1.1.2 christos lvx 1,3,7 1899 1.1.1.2 christos vperm 0,0,1,7 1900 1.1.1.2 christos .long 0x11080509 1901 1.1.1.2 christos 1902 1.1.1.2 christos li 8,0 1903 1.1.1.2 christos b .Lxts_enc 1904 1.1.1.2 christos 1905 1.1.1.2 christos .Lxts_enc_no_key2: 1906 1.1.1.2 christos li 3,-16 1907 1.1.1.2 christos and 5,5,3 1908 1.1.1.2 christos 1909 1.1.1.2 christos 1910 1.1.1.2 christos .Lxts_enc: 1911 1.1.1.2 christos lvx 4,0,10 1912 1.1.1.2 christos addi 10,10,16 1913 1.1.1.2 christos 1914 1.1.1.2 christos lvsl 7,0,6 1915 1.1.1.2 christos lwz 9,240(6) 1916 1.1.1.2 christos srwi 9,9,1 1917 1.1.1.2 christos subi 9,9,1 1918 1.1.1.2 christos li 3,16 1919 1.1.1.2 christos 1920 1.1.1.2 christos vslb 10,9,9 1921 1.1.1.2 christos vor 10,10,9 1922 1.1.1.2 christos vspltisb 11,1 1923 1.1.1.2 christos vsldoi 10,10,11,15 1924 1.1.1.2 christos 1925 1.1.1.2 christos cmplwi 5,96 1926 1.1.1.2 christos bge _aesp8_xts_encrypt6x 1927 1.1.1.2 christos 1928 1.1.1.2 christos andi. 7,5,15 1929 1.1.1.2 christos subic 0,5,32 1930 1.1.1.2 christos subi 7,7,16 1931 1.1.1.2 christos subfe 0,0,0 1932 1.1.1.2 christos and 0,0,7 1933 1.1.1.2 christos add 10,10,0 1934 1.1.1.2 christos 1935 1.1.1.2 christos lvx 0,0,6 1936 1.1.1.2 christos lvx 1,3,6 1937 1.1.1.2 christos addi 3,3,16 1938 1.1.1.2 christos vperm 2,2,4,5 1939 1.1.1.2 christos vperm 0,0,1,7 1940 1.1.1.2 christos vxor 2,2,8 1941 1.1.1.2 christos vxor 2,2,0 1942 1.1.1.2 christos lvx 0,3,6 1943 1.1.1.2 christos addi 3,3,16 1944 1.1.1.2 christos mtctr 9 1945 1.1.1.2 christos b .Loop_xts_enc 1946 1.1.1.2 christos 1947 1.1.1.2 christos .align 5 1948 1.1.1.2 christos .Loop_xts_enc: 1949 1.1.1.2 christos vperm 1,1,0,7 1950 1.1.1.2 christos .long 0x10420D08 1951 1.1.1.2 christos lvx 1,3,6 1952 1.1.1.2 christos addi 3,3,16 1953 1.1.1.2 christos vperm 0,0,1,7 1954 1.1.1.2 christos .long 0x10420508 1955 1.1.1.2 christos lvx 0,3,6 1956 1.1.1.2 christos addi 3,3,16 1957 1.1.1.2 christos bc 16,0,.Loop_xts_enc 1958 1.1.1.2 christos 1959 1.1.1.2 christos vperm 1,1,0,7 1960 1.1.1.2 christos .long 0x10420D08 1961 1.1.1.2 christos lvx 1,3,6 1962 1.1.1.2 christos li 3,16 1963 1.1.1.2 christos vperm 0,0,1,7 1964 1.1.1.2 christos vxor 0,0,8 1965 1.1.1.2 christos .long 0x10620509 1966 1.1.1.2 christos 1967 1.1.1.2 christos 1968 1.1.1.2 christos nop 1969 1.1.1.2 christos 1970 1.1.1.2 christos .long 0x7C602799 1971 1.1.1.2 christos addi 4,4,16 1972 1.1.1.2 christos 1973 1.1.1.2 christos subic. 5,5,16 1974 1.1.1.2 christos beq .Lxts_enc_done 1975 1.1.1.2 christos 1976 1.1.1.2 christos vor 2,4,4 1977 1.1.1.2 christos lvx 4,0,10 1978 1.1.1.2 christos addi 10,10,16 1979 1.1.1.2 christos lvx 0,0,6 1980 1.1.1.2 christos lvx 1,3,6 1981 1.1.1.2 christos addi 3,3,16 1982 1.1.1.2 christos 1983 1.1.1.2 christos subic 0,5,32 1984 1.1.1.2 christos subfe 0,0,0 1985 1.1.1.2 christos and 0,0,7 1986 1.1.1.2 christos add 10,10,0 1987 1.1.1.2 christos 1988 1.1.1.2 christos vsrab 11,8,9 1989 1.1.1.2 christos vaddubm 8,8,8 1990 1.1.1.2 christos vsldoi 11,11,11,15 1991 1.1.1.2 christos vand 11,11,10 1992 1.1.1.2 christos vxor 8,8,11 1993 1.1.1.2 christos 1994 1.1.1.2 christos vperm 2,2,4,5 1995 1.1.1.2 christos vperm 0,0,1,7 1996 1.1.1.2 christos vxor 2,2,8 1997 1.1.1.2 christos vxor 3,3,0 1998 1.1.1.2 christos vxor 2,2,0 1999 1.1.1.2 christos lvx 0,3,6 2000 1.1.1.2 christos addi 3,3,16 2001 1.1.1.2 christos 2002 1.1.1.2 christos mtctr 9 2003 1.1.1.2 christos cmplwi 5,16 2004 1.1.1.2 christos bge .Loop_xts_enc 2005 1.1.1.2 christos 2006 1.1.1.2 christos vxor 3,3,8 2007 1.1.1.2 christos lvsr 5,0,5 2008 1.1.1.2 christos vxor 4,4,4 2009 1.1.1.2 christos vspltisb 11,-1 2010 1.1.1.2 christos vperm 4,4,11,5 2011 1.1.1.2 christos vsel 2,2,3,4 2012 1.1.1.2 christos 2013 1.1.1.2 christos subi 11,4,17 2014 1.1.1.2 christos subi 4,4,16 2015 1.1.1.2 christos mtctr 5 2016 1.1.1.2 christos li 5,16 2017 1.1.1.2 christos .Loop_xts_enc_steal: 2018 1.1.1.2 christos lbzu 0,1(11) 2019 1.1.1.2 christos stb 0,16(11) 2020 1.1.1.2 christos bc 16,0,.Loop_xts_enc_steal 2021 1.1.1.2 christos 2022 1.1.1.2 christos mtctr 9 2023 1.1.1.2 christos b .Loop_xts_enc 2024 1.1.1.2 christos 2025 1.1.1.2 christos .Lxts_enc_done: 2026 1.1.1.2 christos cmplwi 8,0 2027 1.1.1.2 christos beq .Lxts_enc_ret 2028 1.1.1.2 christos 2029 1.1.1.2 christos vsrab 11,8,9 2030 1.1.1.2 christos vaddubm 8,8,8 2031 1.1.1.2 christos vsldoi 11,11,11,15 2032 1.1.1.2 christos vand 11,11,10 2033 1.1.1.2 christos vxor 8,8,11 2034 1.1.1.2 christos 2035 1.1.1.2 christos 2036 1.1.1.2 christos .long 0x7D004799 2037 1.1.1.2 christos 2038 1.1.1.2 christos .Lxts_enc_ret: 2039 1.1.1.2 christos mtspr 256,12 2040 1.1.1.2 christos li 3,0 2041 1.1.1.2 christos blr 2042 1.1.1.2 christos .long 0 2043 1.1.1.2 christos .byte 0,12,0x04,0,0x80,6,6,0 2044 1.1.1.2 christos .long 0 2045 1.1.1.2 christos 2046 1.1.1.2 christos 2047 1.1.1.2 christos .globl aes_p8_xts_decrypt 2048 1.1.1.2 christos .type aes_p8_xts_decrypt,@function 2049 1.1.1.2 christos .align 5 2050 1.1.1.2 christos aes_p8_xts_decrypt: 2051 1.1.1.2 christos mr 10,3 2052 1.1.1.2 christos li 3,-1 2053 1.1.1.2 christos cmplwi 5,16 2054 1.1.1.2 christos bltlr 2055 1.1.1.2 christos 2056 1.1.1.2 christos lis 0,0xfff8 2057 1.1.1.2 christos mfspr 12,256 2058 1.1.1.2 christos li 11,0 2059 1.1.1.2 christos mtspr 256,0 2060 1.1.1.2 christos 2061 1.1.1.2 christos andi. 0,5,15 2062 1.1.1.2 christos neg 0,0 2063 1.1.1.2 christos andi. 0,0,16 2064 1.1.1.2 christos sub 5,5,0 2065 1.1.1.2 christos 2066 1.1.1.2 christos vspltisb 9,0x07 2067 1.1.1.2 christos 2068 1.1.1.2 christos 2069 1.1.1.2 christos 2070 1.1.1.2 christos 2071 1.1.1.2 christos li 3,15 2072 1.1.1.2 christos lvx 8,0,8 2073 1.1.1.2 christos lvsl 5,0,8 2074 1.1.1.2 christos lvx 4,3,8 2075 1.1.1.2 christos 2076 1.1.1.2 christos vperm 8,8,4,5 2077 1.1.1.2 christos 2078 1.1.1.2 christos neg 11,10 2079 1.1.1.2 christos lvsr 5,0,11 2080 1.1.1.2 christos lvx 2,0,10 2081 1.1.1.2 christos addi 10,10,15 2082 1.1.1.2 christos 2083 1.1.1.2 christos 2084 1.1.1.2 christos cmplwi 7,0 2085 1.1.1.2 christos beq .Lxts_dec_no_key2 2086 1.1.1.2 christos 2087 1.1.1.2 christos lvsl 7,0,7 2088 1.1.1.2 christos lwz 9,240(7) 2089 1.1.1.2 christos srwi 9,9,1 2090 1.1.1.2 christos subi 9,9,1 2091 1.1.1.2 christos li 3,16 2092 1.1.1.2 christos 2093 1.1.1.2 christos lvx 0,0,7 2094 1.1.1.2 christos lvx 1,3,7 2095 1.1.1.2 christos addi 3,3,16 2096 1.1.1.2 christos vperm 0,0,1,7 2097 1.1.1.2 christos vxor 8,8,0 2098 1.1.1.2 christos lvx 0,3,7 2099 1.1.1.2 christos addi 3,3,16 2100 1.1.1.2 christos mtctr 9 2101 1.1.1.2 christos 2102 1.1.1.2 christos .Ltweak_xts_dec: 2103 1.1.1.2 christos vperm 1,1,0,7 2104 1.1.1.2 christos .long 0x11080D08 2105 1.1.1.2 christos lvx 1,3,7 2106 1.1.1.2 christos addi 3,3,16 2107 1.1.1.2 christos vperm 0,0,1,7 2108 1.1.1.2 christos .long 0x11080508 2109 1.1.1.2 christos lvx 0,3,7 2110 1.1.1.2 christos addi 3,3,16 2111 1.1.1.2 christos bc 16,0,.Ltweak_xts_dec 2112 1.1.1.2 christos 2113 1.1.1.2 christos vperm 1,1,0,7 2114 1.1.1.2 christos .long 0x11080D08 2115 1.1.1.2 christos lvx 1,3,7 2116 1.1.1.2 christos vperm 0,0,1,7 2117 1.1.1.2 christos .long 0x11080509 2118 1.1.1.2 christos 2119 1.1.1.2 christos li 8,0 2120 1.1.1.2 christos b .Lxts_dec 2121 1.1.1.2 christos 2122 1.1.1.2 christos .Lxts_dec_no_key2: 2123 1.1.1.2 christos neg 3,5 2124 1.1.1.2 christos andi. 3,3,15 2125 1.1.1.2 christos add 5,5,3 2126 1.1.1.2 christos 2127 1.1.1.2 christos 2128 1.1.1.2 christos .Lxts_dec: 2129 1.1.1.2 christos lvx 4,0,10 2130 1.1.1.2 christos addi 10,10,16 2131 1.1.1.2 christos 2132 1.1.1.2 christos lvsl 7,0,6 2133 1.1.1.2 christos lwz 9,240(6) 2134 1.1.1.2 christos srwi 9,9,1 2135 1.1.1.2 christos subi 9,9,1 2136 1.1.1.2 christos li 3,16 2137 1.1.1.2 christos 2138 1.1.1.2 christos vslb 10,9,9 2139 1.1.1.2 christos vor 10,10,9 2140 1.1.1.2 christos vspltisb 11,1 2141 1.1.1.2 christos vsldoi 10,10,11,15 2142 1.1.1.2 christos 2143 1.1.1.2 christos cmplwi 5,96 2144 1.1.1.2 christos bge _aesp8_xts_decrypt6x 2145 1.1.1.2 christos 2146 1.1.1.2 christos lvx 0,0,6 2147 1.1.1.2 christos lvx 1,3,6 2148 1.1.1.2 christos addi 3,3,16 2149 1.1.1.2 christos vperm 2,2,4,5 2150 1.1.1.2 christos vperm 0,0,1,7 2151 1.1.1.2 christos vxor 2,2,8 2152 1.1.1.2 christos vxor 2,2,0 2153 1.1.1.2 christos lvx 0,3,6 2154 1.1.1.2 christos addi 3,3,16 2155 1.1.1.2 christos mtctr 9 2156 1.1.1.2 christos 2157 1.1.1.2 christos cmplwi 5,16 2158 1.1.1.2 christos blt .Ltail_xts_dec 2159 1.1.1.2 christos b .Loop_xts_dec 2160 1.1.1.2 christos 2161 1.1.1.2 christos .align 5 2162 1.1.1.2 christos .Loop_xts_dec: 2163 1.1.1.2 christos vperm 1,1,0,7 2164 1.1.1.2 christos .long 0x10420D48 2165 1.1.1.2 christos lvx 1,3,6 2166 1.1.1.2 christos addi 3,3,16 2167 1.1.1.2 christos vperm 0,0,1,7 2168 1.1.1.2 christos .long 0x10420548 2169 1.1.1.2 christos lvx 0,3,6 2170 1.1.1.2 christos addi 3,3,16 2171 1.1.1.2 christos bc 16,0,.Loop_xts_dec 2172 1.1.1.2 christos 2173 1.1.1.2 christos vperm 1,1,0,7 2174 1.1.1.2 christos .long 0x10420D48 2175 1.1.1.2 christos lvx 1,3,6 2176 1.1.1.2 christos li 3,16 2177 1.1.1.2 christos vperm 0,0,1,7 2178 1.1.1.2 christos vxor 0,0,8 2179 1.1.1.2 christos .long 0x10620549 2180 1.1.1.2 christos 2181 1.1.1.2 christos 2182 1.1.1.2 christos nop 2183 1.1.1.2 christos 2184 1.1.1.2 christos .long 0x7C602799 2185 1.1.1.2 christos addi 4,4,16 2186 1.1.1.2 christos 2187 1.1.1.2 christos subic. 5,5,16 2188 1.1.1.2 christos beq .Lxts_dec_done 2189 1.1.1.2 christos 2190 1.1.1.2 christos vor 2,4,4 2191 1.1.1.2 christos lvx 4,0,10 2192 1.1.1.2 christos addi 10,10,16 2193 1.1.1.2 christos lvx 0,0,6 2194 1.1.1.2 christos lvx 1,3,6 2195 1.1.1.2 christos addi 3,3,16 2196 1.1.1.2 christos 2197 1.1.1.2 christos vsrab 11,8,9 2198 1.1.1.2 christos vaddubm 8,8,8 2199 1.1.1.2 christos vsldoi 11,11,11,15 2200 1.1.1.2 christos vand 11,11,10 2201 1.1.1.2 christos vxor 8,8,11 2202 1.1.1.2 christos 2203 1.1.1.2 christos vperm 2,2,4,5 2204 1.1.1.2 christos vperm 0,0,1,7 2205 1.1.1.2 christos vxor 2,2,8 2206 1.1.1.2 christos vxor 2,2,0 2207 1.1.1.2 christos lvx 0,3,6 2208 1.1.1.2 christos addi 3,3,16 2209 1.1.1.2 christos 2210 1.1.1.2 christos mtctr 9 2211 1.1.1.2 christos cmplwi 5,16 2212 1.1.1.2 christos bge .Loop_xts_dec 2213 1.1.1.2 christos 2214 1.1.1.2 christos .Ltail_xts_dec: 2215 1.1.1.2 christos vsrab 11,8,9 2216 1.1.1.2 christos vaddubm 12,8,8 2217 1.1.1.2 christos vsldoi 11,11,11,15 2218 1.1.1.2 christos vand 11,11,10 2219 1.1.1.2 christos vxor 12,12,11 2220 1.1.1.2 christos 2221 1.1.1.2 christos subi 10,10,16 2222 1.1.1.2 christos add 10,10,5 2223 1.1.1.2 christos 2224 1.1.1.2 christos vxor 2,2,8 2225 1.1.1.2 christos vxor 2,2,12 2226 1.1.1.2 christos 2227 1.1.1.2 christos .Loop_xts_dec_short: 2228 1.1.1.2 christos vperm 1,1,0,7 2229 1.1.1.2 christos .long 0x10420D48 2230 1.1.1.2 christos lvx 1,3,6 2231 1.1.1.2 christos addi 3,3,16 2232 1.1.1.2 christos vperm 0,0,1,7 2233 1.1.1.2 christos .long 0x10420548 2234 1.1.1.2 christos lvx 0,3,6 2235 1.1.1.2 christos addi 3,3,16 2236 1.1.1.2 christos bc 16,0,.Loop_xts_dec_short 2237 1.1.1.2 christos 2238 1.1.1.2 christos vperm 1,1,0,7 2239 1.1.1.2 christos .long 0x10420D48 2240 1.1.1.2 christos lvx 1,3,6 2241 1.1.1.2 christos li 3,16 2242 1.1.1.2 christos vperm 0,0,1,7 2243 1.1.1.2 christos vxor 0,0,12 2244 1.1.1.2 christos .long 0x10620549 2245 1.1.1.2 christos 2246 1.1.1.2 christos 2247 1.1.1.2 christos nop 2248 1.1.1.2 christos 2249 1.1.1.2 christos .long 0x7C602799 2250 1.1.1.2 christos 2251 1.1.1.2 christos vor 2,4,4 2252 1.1.1.2 christos lvx 4,0,10 2253 1.1.1.2 christos 2254 1.1.1.2 christos lvx 0,0,6 2255 1.1.1.2 christos lvx 1,3,6 2256 1.1.1.2 christos addi 3,3,16 2257 1.1.1.2 christos vperm 2,2,4,5 2258 1.1.1.2 christos vperm 0,0,1,7 2259 1.1.1.2 christos 2260 1.1.1.2 christos lvsr 5,0,5 2261 1.1.1.2 christos vxor 4,4,4 2262 1.1.1.2 christos vspltisb 11,-1 2263 1.1.1.2 christos vperm 4,4,11,5 2264 1.1.1.2 christos vsel 2,2,3,4 2265 1.1.1.2 christos 2266 1.1.1.2 christos vxor 0,0,8 2267 1.1.1.2 christos vxor 2,2,0 2268 1.1.1.2 christos lvx 0,3,6 2269 1.1.1.2 christos addi 3,3,16 2270 1.1.1.2 christos 2271 1.1.1.2 christos subi 11,4,1 2272 1.1.1.2 christos mtctr 5 2273 1.1.1.2 christos li 5,16 2274 1.1.1.2 christos .Loop_xts_dec_steal: 2275 1.1.1.2 christos lbzu 0,1(11) 2276 1.1.1.2 christos stb 0,16(11) 2277 1.1.1.2 christos bc 16,0,.Loop_xts_dec_steal 2278 1.1.1.2 christos 2279 1.1.1.2 christos mtctr 9 2280 1.1.1.2 christos b .Loop_xts_dec 2281 1.1.1.2 christos 2282 1.1.1.2 christos .Lxts_dec_done: 2283 1.1.1.2 christos cmplwi 8,0 2284 1.1.1.2 christos beq .Lxts_dec_ret 2285 1.1.1.2 christos 2286 1.1.1.2 christos vsrab 11,8,9 2287 1.1.1.2 christos vaddubm 8,8,8 2288 1.1.1.2 christos vsldoi 11,11,11,15 2289 1.1.1.2 christos vand 11,11,10 2290 1.1.1.2 christos vxor 8,8,11 2291 1.1.1.2 christos 2292 1.1.1.2 christos 2293 1.1.1.2 christos .long 0x7D004799 2294 1.1.1.2 christos 2295 1.1.1.2 christos .Lxts_dec_ret: 2296 1.1.1.2 christos mtspr 256,12 2297 1.1.1.2 christos li 3,0 2298 1.1.1.2 christos blr 2299 1.1.1.2 christos .long 0 2300 1.1.1.2 christos .byte 0,12,0x04,0,0x80,6,6,0 2301 1.1.1.2 christos .long 0 2302 1.1.1.2 christos 2303 1.1.1.2 christos .align 5 2304 1.1.1.2 christos _aesp8_xts_encrypt6x: 2305 1.1.1.2 christos stwu 1,-392(1) 2306 1.1.1.2 christos mflr 11 2307 1.1.1.2 christos li 7,175 2308 1.1.1.2 christos li 3,191 2309 1.1.1.2 christos stw 11,396(1) 2310 1.1.1.2 christos stvx 20,7,1 2311 1.1.1.2 christos addi 7,7,32 2312 1.1.1.2 christos stvx 21,3,1 2313 1.1.1.2 christos addi 3,3,32 2314 1.1.1.2 christos stvx 22,7,1 2315 1.1.1.2 christos addi 7,7,32 2316 1.1.1.2 christos stvx 23,3,1 2317 1.1.1.2 christos addi 3,3,32 2318 1.1.1.2 christos stvx 24,7,1 2319 1.1.1.2 christos addi 7,7,32 2320 1.1.1.2 christos stvx 25,3,1 2321 1.1.1.2 christos addi 3,3,32 2322 1.1.1.2 christos stvx 26,7,1 2323 1.1.1.2 christos addi 7,7,32 2324 1.1.1.2 christos stvx 27,3,1 2325 1.1.1.2 christos addi 3,3,32 2326 1.1.1.2 christos stvx 28,7,1 2327 1.1.1.2 christos addi 7,7,32 2328 1.1.1.2 christos stvx 29,3,1 2329 1.1.1.2 christos addi 3,3,32 2330 1.1.1.2 christos stvx 30,7,1 2331 1.1.1.2 christos stvx 31,3,1 2332 1.1.1.2 christos li 0,-1 2333 1.1.1.2 christos stw 12,364(1) 2334 1.1.1.2 christos li 3,0x10 2335 1.1.1.2 christos stw 26,368(1) 2336 1.1.1.2 christos li 26,0x20 2337 1.1.1.2 christos stw 27,372(1) 2338 1.1.1.2 christos li 27,0x30 2339 1.1.1.2 christos stw 28,376(1) 2340 1.1.1.2 christos li 28,0x40 2341 1.1.1.2 christos stw 29,380(1) 2342 1.1.1.2 christos li 29,0x50 2343 1.1.1.2 christos stw 30,384(1) 2344 1.1.1.2 christos li 30,0x60 2345 1.1.1.2 christos stw 31,388(1) 2346 1.1.1.2 christos li 31,0x70 2347 1.1.1.2 christos mtspr 256,0 2348 1.1.1.2 christos 2349 1.1.1.2 christos subi 9,9,3 2350 1.1.1.2 christos 2351 1.1.1.2 christos lvx 23,0,6 2352 1.1.1.2 christos lvx 30,3,6 2353 1.1.1.2 christos addi 6,6,0x20 2354 1.1.1.2 christos lvx 31,0,6 2355 1.1.1.2 christos vperm 23,23,30,7 2356 1.1.1.2 christos addi 7,1,32+15 2357 1.1.1.2 christos mtctr 9 2358 1.1.1.2 christos 2359 1.1.1.2 christos .Load_xts_enc_key: 2360 1.1.1.2 christos vperm 24,30,31,7 2361 1.1.1.2 christos lvx 30,3,6 2362 1.1.1.2 christos addi 6,6,0x20 2363 1.1.1.2 christos stvx 24,0,7 2364 1.1.1.2 christos vperm 25,31,30,7 2365 1.1.1.2 christos lvx 31,0,6 2366 1.1.1.2 christos stvx 25,3,7 2367 1.1.1.2 christos addi 7,7,0x20 2368 1.1.1.2 christos bc 16,0,.Load_xts_enc_key 2369 1.1.1.2 christos 2370 1.1.1.2 christos lvx 26,3,6 2371 1.1.1.2 christos vperm 24,30,31,7 2372 1.1.1.2 christos lvx 27,26,6 2373 1.1.1.2 christos stvx 24,0,7 2374 1.1.1.2 christos vperm 25,31,26,7 2375 1.1.1.2 christos lvx 28,27,6 2376 1.1.1.2 christos stvx 25,3,7 2377 1.1.1.2 christos addi 7,1,32+15 2378 1.1.1.2 christos vperm 26,26,27,7 2379 1.1.1.2 christos lvx 29,28,6 2380 1.1.1.2 christos vperm 27,27,28,7 2381 1.1.1.2 christos lvx 30,29,6 2382 1.1.1.2 christos vperm 28,28,29,7 2383 1.1.1.2 christos lvx 31,30,6 2384 1.1.1.2 christos vperm 29,29,30,7 2385 1.1.1.2 christos lvx 22,31,6 2386 1.1.1.2 christos vperm 30,30,31,7 2387 1.1.1.2 christos lvx 24,0,7 2388 1.1.1.2 christos vperm 31,31,22,7 2389 1.1.1.2 christos lvx 25,3,7 2390 1.1.1.2 christos 2391 1.1.1.2 christos vperm 0,2,4,5 2392 1.1.1.2 christos subi 10,10,31 2393 1.1.1.2 christos vxor 17,8,23 2394 1.1.1.2 christos vsrab 11,8,9 2395 1.1.1.2 christos vaddubm 8,8,8 2396 1.1.1.2 christos vsldoi 11,11,11,15 2397 1.1.1.2 christos vand 11,11,10 2398 1.1.1.2 christos vxor 7,0,17 2399 1.1.1.2 christos vxor 8,8,11 2400 1.1.1.2 christos 2401 1.1.1.2 christos .long 0x7C235699 2402 1.1.1.2 christos vxor 18,8,23 2403 1.1.1.2 christos vsrab 11,8,9 2404 1.1.1.2 christos vaddubm 8,8,8 2405 1.1.1.2 christos vsldoi 11,11,11,15 2406 1.1.1.2 christos 2407 1.1.1.2 christos vand 11,11,10 2408 1.1.1.2 christos vxor 12,1,18 2409 1.1.1.2 christos vxor 8,8,11 2410 1.1.1.2 christos 2411 1.1.1.2 christos .long 0x7C5A5699 2412 1.1.1.2 christos andi. 31,5,15 2413 1.1.1.2 christos vxor 19,8,23 2414 1.1.1.2 christos vsrab 11,8,9 2415 1.1.1.2 christos vaddubm 8,8,8 2416 1.1.1.2 christos vsldoi 11,11,11,15 2417 1.1.1.2 christos 2418 1.1.1.2 christos vand 11,11,10 2419 1.1.1.2 christos vxor 13,2,19 2420 1.1.1.2 christos vxor 8,8,11 2421 1.1.1.2 christos 2422 1.1.1.2 christos .long 0x7C7B5699 2423 1.1.1.2 christos sub 5,5,31 2424 1.1.1.2 christos vxor 20,8,23 2425 1.1.1.2 christos vsrab 11,8,9 2426 1.1.1.2 christos vaddubm 8,8,8 2427 1.1.1.2 christos vsldoi 11,11,11,15 2428 1.1.1.2 christos 2429 1.1.1.2 christos vand 11,11,10 2430 1.1.1.2 christos vxor 14,3,20 2431 1.1.1.2 christos vxor 8,8,11 2432 1.1.1.2 christos 2433 1.1.1.2 christos .long 0x7C9C5699 2434 1.1.1.2 christos subi 5,5,0x60 2435 1.1.1.2 christos vxor 21,8,23 2436 1.1.1.2 christos vsrab 11,8,9 2437 1.1.1.2 christos vaddubm 8,8,8 2438 1.1.1.2 christos vsldoi 11,11,11,15 2439 1.1.1.2 christos 2440 1.1.1.2 christos vand 11,11,10 2441 1.1.1.2 christos vxor 15,4,21 2442 1.1.1.2 christos vxor 8,8,11 2443 1.1.1.2 christos 2444 1.1.1.2 christos .long 0x7CBD5699 2445 1.1.1.2 christos addi 10,10,0x60 2446 1.1.1.2 christos vxor 22,8,23 2447 1.1.1.2 christos vsrab 11,8,9 2448 1.1.1.2 christos vaddubm 8,8,8 2449 1.1.1.2 christos vsldoi 11,11,11,15 2450 1.1.1.2 christos 2451 1.1.1.2 christos vand 11,11,10 2452 1.1.1.2 christos vxor 16,5,22 2453 1.1.1.2 christos vxor 8,8,11 2454 1.1.1.2 christos 2455 1.1.1.2 christos vxor 31,31,23 2456 1.1.1.2 christos mtctr 9 2457 1.1.1.2 christos b .Loop_xts_enc6x 2458 1.1.1.2 christos 2459 1.1.1.2 christos .align 5 2460 1.1.1.2 christos .Loop_xts_enc6x: 2461 1.1.1.2 christos .long 0x10E7C508 2462 1.1.1.2 christos .long 0x118CC508 2463 1.1.1.2 christos .long 0x11ADC508 2464 1.1.1.2 christos .long 0x11CEC508 2465 1.1.1.2 christos .long 0x11EFC508 2466 1.1.1.2 christos .long 0x1210C508 2467 1.1.1.2 christos lvx 24,26,7 2468 1.1.1.2 christos addi 7,7,0x20 2469 1.1.1.2 christos 2470 1.1.1.2 christos .long 0x10E7CD08 2471 1.1.1.2 christos .long 0x118CCD08 2472 1.1.1.2 christos .long 0x11ADCD08 2473 1.1.1.2 christos .long 0x11CECD08 2474 1.1.1.2 christos .long 0x11EFCD08 2475 1.1.1.2 christos .long 0x1210CD08 2476 1.1.1.2 christos lvx 25,3,7 2477 1.1.1.2 christos bc 16,0,.Loop_xts_enc6x 2478 1.1.1.2 christos 2479 1.1.1.2 christos subic 5,5,96 2480 1.1.1.2 christos vxor 0,17,31 2481 1.1.1.2 christos .long 0x10E7C508 2482 1.1.1.2 christos .long 0x118CC508 2483 1.1.1.2 christos vsrab 11,8,9 2484 1.1.1.2 christos vxor 17,8,23 2485 1.1.1.2 christos vaddubm 8,8,8 2486 1.1.1.2 christos .long 0x11ADC508 2487 1.1.1.2 christos .long 0x11CEC508 2488 1.1.1.2 christos vsldoi 11,11,11,15 2489 1.1.1.2 christos .long 0x11EFC508 2490 1.1.1.2 christos .long 0x1210C508 2491 1.1.1.2 christos 2492 1.1.1.2 christos subfe. 0,0,0 2493 1.1.1.2 christos vand 11,11,10 2494 1.1.1.2 christos .long 0x10E7CD08 2495 1.1.1.2 christos .long 0x118CCD08 2496 1.1.1.2 christos vxor 8,8,11 2497 1.1.1.2 christos .long 0x11ADCD08 2498 1.1.1.2 christos .long 0x11CECD08 2499 1.1.1.2 christos vxor 1,18,31 2500 1.1.1.2 christos vsrab 11,8,9 2501 1.1.1.2 christos vxor 18,8,23 2502 1.1.1.2 christos .long 0x11EFCD08 2503 1.1.1.2 christos .long 0x1210CD08 2504 1.1.1.2 christos 2505 1.1.1.2 christos and 0,0,5 2506 1.1.1.2 christos vaddubm 8,8,8 2507 1.1.1.2 christos vsldoi 11,11,11,15 2508 1.1.1.2 christos .long 0x10E7D508 2509 1.1.1.2 christos .long 0x118CD508 2510 1.1.1.2 christos vand 11,11,10 2511 1.1.1.2 christos .long 0x11ADD508 2512 1.1.1.2 christos .long 0x11CED508 2513 1.1.1.2 christos vxor 8,8,11 2514 1.1.1.2 christos .long 0x11EFD508 2515 1.1.1.2 christos .long 0x1210D508 2516 1.1.1.2 christos 2517 1.1.1.2 christos add 10,10,0 2518 1.1.1.2 christos 2519 1.1.1.2 christos 2520 1.1.1.2 christos 2521 1.1.1.2 christos vxor 2,19,31 2522 1.1.1.2 christos vsrab 11,8,9 2523 1.1.1.2 christos vxor 19,8,23 2524 1.1.1.2 christos vaddubm 8,8,8 2525 1.1.1.2 christos .long 0x10E7DD08 2526 1.1.1.2 christos .long 0x118CDD08 2527 1.1.1.2 christos vsldoi 11,11,11,15 2528 1.1.1.2 christos .long 0x11ADDD08 2529 1.1.1.2 christos .long 0x11CEDD08 2530 1.1.1.2 christos vand 11,11,10 2531 1.1.1.2 christos .long 0x11EFDD08 2532 1.1.1.2 christos .long 0x1210DD08 2533 1.1.1.2 christos 2534 1.1.1.2 christos addi 7,1,32+15 2535 1.1.1.2 christos vxor 8,8,11 2536 1.1.1.2 christos .long 0x10E7E508 2537 1.1.1.2 christos .long 0x118CE508 2538 1.1.1.2 christos vxor 3,20,31 2539 1.1.1.2 christos vsrab 11,8,9 2540 1.1.1.2 christos vxor 20,8,23 2541 1.1.1.2 christos .long 0x11ADE508 2542 1.1.1.2 christos .long 0x11CEE508 2543 1.1.1.2 christos vaddubm 8,8,8 2544 1.1.1.2 christos vsldoi 11,11,11,15 2545 1.1.1.2 christos .long 0x11EFE508 2546 1.1.1.2 christos .long 0x1210E508 2547 1.1.1.2 christos lvx 24,0,7 2548 1.1.1.2 christos vand 11,11,10 2549 1.1.1.2 christos 2550 1.1.1.2 christos .long 0x10E7ED08 2551 1.1.1.2 christos .long 0x118CED08 2552 1.1.1.2 christos vxor 8,8,11 2553 1.1.1.2 christos .long 0x11ADED08 2554 1.1.1.2 christos .long 0x11CEED08 2555 1.1.1.2 christos vxor 4,21,31 2556 1.1.1.2 christos vsrab 11,8,9 2557 1.1.1.2 christos vxor 21,8,23 2558 1.1.1.2 christos .long 0x11EFED08 2559 1.1.1.2 christos .long 0x1210ED08 2560 1.1.1.2 christos lvx 25,3,7 2561 1.1.1.2 christos vaddubm 8,8,8 2562 1.1.1.2 christos vsldoi 11,11,11,15 2563 1.1.1.2 christos 2564 1.1.1.2 christos .long 0x10E7F508 2565 1.1.1.2 christos .long 0x118CF508 2566 1.1.1.2 christos vand 11,11,10 2567 1.1.1.2 christos .long 0x11ADF508 2568 1.1.1.2 christos .long 0x11CEF508 2569 1.1.1.2 christos vxor 8,8,11 2570 1.1.1.2 christos .long 0x11EFF508 2571 1.1.1.2 christos .long 0x1210F508 2572 1.1.1.2 christos vxor 5,22,31 2573 1.1.1.2 christos vsrab 11,8,9 2574 1.1.1.2 christos vxor 22,8,23 2575 1.1.1.2 christos 2576 1.1.1.2 christos .long 0x10E70509 2577 1.1.1.2 christos .long 0x7C005699 2578 1.1.1.2 christos vaddubm 8,8,8 2579 1.1.1.2 christos vsldoi 11,11,11,15 2580 1.1.1.2 christos .long 0x118C0D09 2581 1.1.1.2 christos .long 0x7C235699 2582 1.1.1.2 christos .long 0x11AD1509 2583 1.1.1.2 christos 2584 1.1.1.2 christos .long 0x7C5A5699 2585 1.1.1.2 christos vand 11,11,10 2586 1.1.1.2 christos .long 0x11CE1D09 2587 1.1.1.2 christos 2588 1.1.1.2 christos .long 0x7C7B5699 2589 1.1.1.2 christos .long 0x11EF2509 2590 1.1.1.2 christos 2591 1.1.1.2 christos .long 0x7C9C5699 2592 1.1.1.2 christos vxor 8,8,11 2593 1.1.1.2 christos .long 0x11702D09 2594 1.1.1.2 christos 2595 1.1.1.2 christos 2596 1.1.1.2 christos .long 0x7CBD5699 2597 1.1.1.2 christos addi 10,10,0x60 2598 1.1.1.2 christos 2599 1.1.1.2 christos 2600 1.1.1.2 christos 2601 1.1.1.2 christos 2602 1.1.1.2 christos 2603 1.1.1.2 christos .long 0x7CE02799 2604 1.1.1.2 christos vxor 7,0,17 2605 1.1.1.2 christos 2606 1.1.1.2 christos .long 0x7D832799 2607 1.1.1.2 christos vxor 12,1,18 2608 1.1.1.2 christos 2609 1.1.1.2 christos .long 0x7DBA2799 2610 1.1.1.2 christos vxor 13,2,19 2611 1.1.1.2 christos 2612 1.1.1.2 christos .long 0x7DDB2799 2613 1.1.1.2 christos vxor 14,3,20 2614 1.1.1.2 christos 2615 1.1.1.2 christos .long 0x7DFC2799 2616 1.1.1.2 christos vxor 15,4,21 2617 1.1.1.2 christos 2618 1.1.1.2 christos .long 0x7D7D2799 2619 1.1.1.2 christos vxor 16,5,22 2620 1.1.1.2 christos addi 4,4,0x60 2621 1.1.1.2 christos 2622 1.1.1.2 christos mtctr 9 2623 1.1.1.2 christos beq .Loop_xts_enc6x 2624 1.1.1.2 christos 2625 1.1.1.2 christos addic. 5,5,0x60 2626 1.1.1.2 christos beq .Lxts_enc6x_zero 2627 1.1.1.2 christos cmpwi 5,0x20 2628 1.1.1.2 christos blt .Lxts_enc6x_one 2629 1.1.1.2 christos nop 2630 1.1.1.2 christos beq .Lxts_enc6x_two 2631 1.1.1.2 christos cmpwi 5,0x40 2632 1.1.1.2 christos blt .Lxts_enc6x_three 2633 1.1.1.2 christos nop 2634 1.1.1.2 christos beq .Lxts_enc6x_four 2635 1.1.1.2 christos 2636 1.1.1.2 christos .Lxts_enc6x_five: 2637 1.1.1.2 christos vxor 7,1,17 2638 1.1.1.2 christos vxor 12,2,18 2639 1.1.1.2 christos vxor 13,3,19 2640 1.1.1.2 christos vxor 14,4,20 2641 1.1.1.2 christos vxor 15,5,21 2642 1.1.1.2 christos 2643 1.1.1.2 christos bl _aesp8_xts_enc5x 2644 1.1.1.2 christos 2645 1.1.1.2 christos 2646 1.1.1.2 christos vor 17,22,22 2647 1.1.1.2 christos 2648 1.1.1.2 christos .long 0x7CE02799 2649 1.1.1.2 christos 2650 1.1.1.2 christos .long 0x7D832799 2651 1.1.1.2 christos 2652 1.1.1.2 christos .long 0x7DBA2799 2653 1.1.1.2 christos vxor 11,15,22 2654 1.1.1.2 christos 2655 1.1.1.2 christos .long 0x7DDB2799 2656 1.1.1.2 christos .long 0x7DFC2799 2657 1.1.1.2 christos addi 4,4,0x50 2658 1.1.1.2 christos bne .Lxts_enc6x_steal 2659 1.1.1.2 christos b .Lxts_enc6x_done 2660 1.1.1.2 christos 2661 1.1.1.2 christos .align 4 2662 1.1.1.2 christos .Lxts_enc6x_four: 2663 1.1.1.2 christos vxor 7,2,17 2664 1.1.1.2 christos vxor 12,3,18 2665 1.1.1.2 christos vxor 13,4,19 2666 1.1.1.2 christos vxor 14,5,20 2667 1.1.1.2 christos vxor 15,15,15 2668 1.1.1.2 christos 2669 1.1.1.2 christos bl _aesp8_xts_enc5x 2670 1.1.1.2 christos 2671 1.1.1.2 christos 2672 1.1.1.2 christos vor 17,21,21 2673 1.1.1.2 christos 2674 1.1.1.2 christos .long 0x7CE02799 2675 1.1.1.2 christos 2676 1.1.1.2 christos .long 0x7D832799 2677 1.1.1.2 christos vxor 11,14,21 2678 1.1.1.2 christos 2679 1.1.1.2 christos .long 0x7DBA2799 2680 1.1.1.2 christos .long 0x7DDB2799 2681 1.1.1.2 christos addi 4,4,0x40 2682 1.1.1.2 christos bne .Lxts_enc6x_steal 2683 1.1.1.2 christos b .Lxts_enc6x_done 2684 1.1.1.2 christos 2685 1.1.1.2 christos .align 4 2686 1.1.1.2 christos .Lxts_enc6x_three: 2687 1.1.1.2 christos vxor 7,3,17 2688 1.1.1.2 christos vxor 12,4,18 2689 1.1.1.2 christos vxor 13,5,19 2690 1.1.1.2 christos vxor 14,14,14 2691 1.1.1.2 christos vxor 15,15,15 2692 1.1.1.2 christos 2693 1.1.1.2 christos bl _aesp8_xts_enc5x 2694 1.1.1.2 christos 2695 1.1.1.2 christos 2696 1.1.1.2 christos vor 17,20,20 2697 1.1.1.2 christos 2698 1.1.1.2 christos .long 0x7CE02799 2699 1.1.1.2 christos vxor 11,13,20 2700 1.1.1.2 christos 2701 1.1.1.2 christos .long 0x7D832799 2702 1.1.1.2 christos .long 0x7DBA2799 2703 1.1.1.2 christos addi 4,4,0x30 2704 1.1.1.2 christos bne .Lxts_enc6x_steal 2705 1.1.1.2 christos b .Lxts_enc6x_done 2706 1.1.1.2 christos 2707 1.1.1.2 christos .align 4 2708 1.1.1.2 christos .Lxts_enc6x_two: 2709 1.1.1.2 christos vxor 7,4,17 2710 1.1.1.2 christos vxor 12,5,18 2711 1.1.1.2 christos vxor 13,13,13 2712 1.1.1.2 christos vxor 14,14,14 2713 1.1.1.2 christos vxor 15,15,15 2714 1.1.1.2 christos 2715 1.1.1.2 christos bl _aesp8_xts_enc5x 2716 1.1.1.2 christos 2717 1.1.1.2 christos 2718 1.1.1.2 christos vor 17,19,19 2719 1.1.1.2 christos vxor 11,12,19 2720 1.1.1.2 christos 2721 1.1.1.2 christos .long 0x7CE02799 2722 1.1.1.2 christos .long 0x7D832799 2723 1.1.1.2 christos addi 4,4,0x20 2724 1.1.1.2 christos bne .Lxts_enc6x_steal 2725 1.1.1.2 christos b .Lxts_enc6x_done 2726 1.1.1.2 christos 2727 1.1.1.2 christos .align 4 2728 1.1.1.2 christos .Lxts_enc6x_one: 2729 1.1.1.2 christos vxor 7,5,17 2730 1.1.1.2 christos nop 2731 1.1.1.2 christos .Loop_xts_enc1x: 2732 1.1.1.2 christos .long 0x10E7C508 2733 1.1.1.2 christos lvx 24,26,7 2734 1.1.1.2 christos addi 7,7,0x20 2735 1.1.1.2 christos 2736 1.1.1.2 christos .long 0x10E7CD08 2737 1.1.1.2 christos lvx 25,3,7 2738 1.1.1.2 christos bc 16,0,.Loop_xts_enc1x 2739 1.1.1.2 christos 2740 1.1.1.2 christos add 10,10,31 2741 1.1.1.2 christos cmpwi 31,0 2742 1.1.1.2 christos .long 0x10E7C508 2743 1.1.1.2 christos 2744 1.1.1.2 christos subi 10,10,16 2745 1.1.1.2 christos .long 0x10E7CD08 2746 1.1.1.2 christos 2747 1.1.1.2 christos lvsr 5,0,31 2748 1.1.1.2 christos .long 0x10E7D508 2749 1.1.1.2 christos 2750 1.1.1.2 christos .long 0x7C005699 2751 1.1.1.2 christos .long 0x10E7DD08 2752 1.1.1.2 christos 2753 1.1.1.2 christos addi 7,1,32+15 2754 1.1.1.2 christos .long 0x10E7E508 2755 1.1.1.2 christos lvx 24,0,7 2756 1.1.1.2 christos 2757 1.1.1.2 christos .long 0x10E7ED08 2758 1.1.1.2 christos lvx 25,3,7 2759 1.1.1.2 christos vxor 17,17,31 2760 1.1.1.2 christos 2761 1.1.1.2 christos 2762 1.1.1.2 christos .long 0x10E7F508 2763 1.1.1.2 christos 2764 1.1.1.2 christos vperm 0,0,0,5 2765 1.1.1.2 christos .long 0x10E78D09 2766 1.1.1.2 christos 2767 1.1.1.2 christos vor 17,18,18 2768 1.1.1.2 christos vxor 11,7,18 2769 1.1.1.2 christos 2770 1.1.1.2 christos .long 0x7CE02799 2771 1.1.1.2 christos addi 4,4,0x10 2772 1.1.1.2 christos bne .Lxts_enc6x_steal 2773 1.1.1.2 christos b .Lxts_enc6x_done 2774 1.1.1.2 christos 2775 1.1.1.2 christos .align 4 2776 1.1.1.2 christos .Lxts_enc6x_zero: 2777 1.1.1.2 christos cmpwi 31,0 2778 1.1.1.2 christos beq .Lxts_enc6x_done 2779 1.1.1.2 christos 2780 1.1.1.2 christos add 10,10,31 2781 1.1.1.2 christos subi 10,10,16 2782 1.1.1.2 christos .long 0x7C005699 2783 1.1.1.2 christos lvsr 5,0,31 2784 1.1.1.2 christos 2785 1.1.1.2 christos vperm 0,0,0,5 2786 1.1.1.2 christos vxor 11,11,17 2787 1.1.1.2 christos .Lxts_enc6x_steal: 2788 1.1.1.2 christos vxor 0,0,17 2789 1.1.1.2 christos vxor 7,7,7 2790 1.1.1.2 christos vspltisb 12,-1 2791 1.1.1.2 christos vperm 7,7,12,5 2792 1.1.1.2 christos vsel 7,0,11,7 2793 1.1.1.2 christos 2794 1.1.1.2 christos subi 30,4,17 2795 1.1.1.2 christos subi 4,4,16 2796 1.1.1.2 christos mtctr 31 2797 1.1.1.2 christos .Loop_xts_enc6x_steal: 2798 1.1.1.2 christos lbzu 0,1(30) 2799 1.1.1.2 christos stb 0,16(30) 2800 1.1.1.2 christos bc 16,0,.Loop_xts_enc6x_steal 2801 1.1.1.2 christos 2802 1.1.1.2 christos li 31,0 2803 1.1.1.2 christos mtctr 9 2804 1.1.1.2 christos b .Loop_xts_enc1x 2805 1.1.1.2 christos 2806 1.1.1.2 christos .align 4 2807 1.1.1.2 christos .Lxts_enc6x_done: 2808 1.1.1.2 christos cmplwi 8,0 2809 1.1.1.2 christos beq .Lxts_enc6x_ret 2810 1.1.1.2 christos 2811 1.1.1.2 christos vxor 8,17,23 2812 1.1.1.2 christos 2813 1.1.1.2 christos .long 0x7D004799 2814 1.1.1.2 christos 2815 1.1.1.2 christos .Lxts_enc6x_ret: 2816 1.1.1.2 christos mtlr 11 2817 1.1.1.2 christos li 10,47 2818 1.1.1.2 christos li 11,63 2819 1.1.1.2 christos stvx 9,10,1 2820 1.1.1.2 christos addi 10,10,32 2821 1.1.1.2 christos stvx 9,11,1 2822 1.1.1.2 christos addi 11,11,32 2823 1.1.1.2 christos stvx 9,10,1 2824 1.1.1.2 christos addi 10,10,32 2825 1.1.1.2 christos stvx 9,11,1 2826 1.1.1.2 christos addi 11,11,32 2827 1.1.1.2 christos stvx 9,10,1 2828 1.1.1.2 christos addi 10,10,32 2829 1.1.1.2 christos stvx 9,11,1 2830 1.1.1.2 christos addi 11,11,32 2831 1.1.1.2 christos stvx 9,10,1 2832 1.1.1.2 christos addi 10,10,32 2833 1.1.1.2 christos stvx 9,11,1 2834 1.1.1.2 christos addi 11,11,32 2835 1.1.1.2 christos 2836 1.1.1.2 christos mtspr 256,12 2837 1.1.1.2 christos lvx 20,10,1 2838 1.1.1.2 christos addi 10,10,32 2839 1.1.1.2 christos lvx 21,11,1 2840 1.1.1.2 christos addi 11,11,32 2841 1.1.1.2 christos lvx 22,10,1 2842 1.1.1.2 christos addi 10,10,32 2843 1.1.1.2 christos lvx 23,11,1 2844 1.1.1.2 christos addi 11,11,32 2845 1.1.1.2 christos lvx 24,10,1 2846 1.1.1.2 christos addi 10,10,32 2847 1.1.1.2 christos lvx 25,11,1 2848 1.1.1.2 christos addi 11,11,32 2849 1.1.1.2 christos lvx 26,10,1 2850 1.1.1.2 christos addi 10,10,32 2851 1.1.1.2 christos lvx 27,11,1 2852 1.1.1.2 christos addi 11,11,32 2853 1.1.1.2 christos lvx 28,10,1 2854 1.1.1.2 christos addi 10,10,32 2855 1.1.1.2 christos lvx 29,11,1 2856 1.1.1.2 christos addi 11,11,32 2857 1.1.1.2 christos lvx 30,10,1 2858 1.1.1.2 christos lvx 31,11,1 2859 1.1.1.2 christos lwz 26,368(1) 2860 1.1.1.2 christos lwz 27,372(1) 2861 1.1.1.2 christos lwz 28,376(1) 2862 1.1.1.2 christos lwz 29,380(1) 2863 1.1.1.2 christos lwz 30,384(1) 2864 1.1.1.2 christos lwz 31,388(1) 2865 1.1.1.2 christos addi 1,1,392 2866 1.1.1.2 christos blr 2867 1.1.1.2 christos .long 0 2868 1.1.1.2 christos .byte 0,12,0x04,1,0x80,6,6,0 2869 1.1.1.2 christos .long 0 2870 1.1.1.2 christos 2871 1.1.1.2 christos .align 5 2872 1.1.1.2 christos _aesp8_xts_enc5x: 2873 1.1.1.2 christos .long 0x10E7C508 2874 1.1.1.2 christos .long 0x118CC508 2875 1.1.1.2 christos .long 0x11ADC508 2876 1.1.1.2 christos .long 0x11CEC508 2877 1.1.1.2 christos .long 0x11EFC508 2878 1.1.1.2 christos lvx 24,26,7 2879 1.1.1.2 christos addi 7,7,0x20 2880 1.1.1.2 christos 2881 1.1.1.2 christos .long 0x10E7CD08 2882 1.1.1.2 christos .long 0x118CCD08 2883 1.1.1.2 christos .long 0x11ADCD08 2884 1.1.1.2 christos .long 0x11CECD08 2885 1.1.1.2 christos .long 0x11EFCD08 2886 1.1.1.2 christos lvx 25,3,7 2887 1.1.1.2 christos bc 16,0,_aesp8_xts_enc5x 2888 1.1.1.2 christos 2889 1.1.1.2 christos add 10,10,31 2890 1.1.1.2 christos cmpwi 31,0 2891 1.1.1.2 christos .long 0x10E7C508 2892 1.1.1.2 christos .long 0x118CC508 2893 1.1.1.2 christos .long 0x11ADC508 2894 1.1.1.2 christos .long 0x11CEC508 2895 1.1.1.2 christos .long 0x11EFC508 2896 1.1.1.2 christos 2897 1.1.1.2 christos subi 10,10,16 2898 1.1.1.2 christos .long 0x10E7CD08 2899 1.1.1.2 christos .long 0x118CCD08 2900 1.1.1.2 christos .long 0x11ADCD08 2901 1.1.1.2 christos .long 0x11CECD08 2902 1.1.1.2 christos .long 0x11EFCD08 2903 1.1.1.2 christos vxor 17,17,31 2904 1.1.1.2 christos 2905 1.1.1.2 christos .long 0x10E7D508 2906 1.1.1.2 christos lvsr 5,0,31 2907 1.1.1.2 christos .long 0x118CD508 2908 1.1.1.2 christos .long 0x11ADD508 2909 1.1.1.2 christos .long 0x11CED508 2910 1.1.1.2 christos .long 0x11EFD508 2911 1.1.1.2 christos vxor 1,18,31 2912 1.1.1.2 christos 2913 1.1.1.2 christos .long 0x10E7DD08 2914 1.1.1.2 christos .long 0x7C005699 2915 1.1.1.2 christos .long 0x118CDD08 2916 1.1.1.2 christos .long 0x11ADDD08 2917 1.1.1.2 christos .long 0x11CEDD08 2918 1.1.1.2 christos .long 0x11EFDD08 2919 1.1.1.2 christos vxor 2,19,31 2920 1.1.1.2 christos 2921 1.1.1.2 christos addi 7,1,32+15 2922 1.1.1.2 christos .long 0x10E7E508 2923 1.1.1.2 christos .long 0x118CE508 2924 1.1.1.2 christos .long 0x11ADE508 2925 1.1.1.2 christos .long 0x11CEE508 2926 1.1.1.2 christos .long 0x11EFE508 2927 1.1.1.2 christos lvx 24,0,7 2928 1.1.1.2 christos vxor 3,20,31 2929 1.1.1.2 christos 2930 1.1.1.2 christos .long 0x10E7ED08 2931 1.1.1.2 christos 2932 1.1.1.2 christos .long 0x118CED08 2933 1.1.1.2 christos .long 0x11ADED08 2934 1.1.1.2 christos .long 0x11CEED08 2935 1.1.1.2 christos .long 0x11EFED08 2936 1.1.1.2 christos lvx 25,3,7 2937 1.1.1.2 christos vxor 4,21,31 2938 1.1.1.2 christos 2939 1.1.1.2 christos .long 0x10E7F508 2940 1.1.1.2 christos vperm 0,0,0,5 2941 1.1.1.2 christos .long 0x118CF508 2942 1.1.1.2 christos .long 0x11ADF508 2943 1.1.1.2 christos .long 0x11CEF508 2944 1.1.1.2 christos .long 0x11EFF508 2945 1.1.1.2 christos 2946 1.1.1.2 christos .long 0x10E78D09 2947 1.1.1.2 christos .long 0x118C0D09 2948 1.1.1.2 christos .long 0x11AD1509 2949 1.1.1.2 christos .long 0x11CE1D09 2950 1.1.1.2 christos .long 0x11EF2509 2951 1.1.1.2 christos blr 2952 1.1.1.2 christos .long 0 2953 1.1.1.2 christos .byte 0,12,0x14,0,0,0,0,0 2954 1.1.1.2 christos 2955 1.1.1.2 christos .align 5 2956 1.1.1.2 christos _aesp8_xts_decrypt6x: 2957 1.1.1.2 christos stwu 1,-392(1) 2958 1.1.1.2 christos mflr 11 2959 1.1.1.2 christos li 7,175 2960 1.1.1.2 christos li 3,191 2961 1.1.1.2 christos stw 11,396(1) 2962 1.1.1.2 christos stvx 20,7,1 2963 1.1.1.2 christos addi 7,7,32 2964 1.1.1.2 christos stvx 21,3,1 2965 1.1.1.2 christos addi 3,3,32 2966 1.1.1.2 christos stvx 22,7,1 2967 1.1.1.2 christos addi 7,7,32 2968 1.1.1.2 christos stvx 23,3,1 2969 1.1.1.2 christos addi 3,3,32 2970 1.1.1.2 christos stvx 24,7,1 2971 1.1.1.2 christos addi 7,7,32 2972 1.1.1.2 christos stvx 25,3,1 2973 1.1.1.2 christos addi 3,3,32 2974 1.1.1.2 christos stvx 26,7,1 2975 1.1.1.2 christos addi 7,7,32 2976 1.1.1.2 christos stvx 27,3,1 2977 1.1.1.2 christos addi 3,3,32 2978 1.1.1.2 christos stvx 28,7,1 2979 1.1.1.2 christos addi 7,7,32 2980 1.1.1.2 christos stvx 29,3,1 2981 1.1.1.2 christos addi 3,3,32 2982 1.1.1.2 christos stvx 30,7,1 2983 1.1.1.2 christos stvx 31,3,1 2984 1.1.1.2 christos li 0,-1 2985 1.1.1.2 christos stw 12,364(1) 2986 1.1.1.2 christos li 3,0x10 2987 1.1.1.2 christos stw 26,368(1) 2988 1.1.1.2 christos li 26,0x20 2989 1.1.1.2 christos stw 27,372(1) 2990 1.1.1.2 christos li 27,0x30 2991 1.1.1.2 christos stw 28,376(1) 2992 1.1.1.2 christos li 28,0x40 2993 1.1.1.2 christos stw 29,380(1) 2994 1.1.1.2 christos li 29,0x50 2995 1.1.1.2 christos stw 30,384(1) 2996 1.1.1.2 christos li 30,0x60 2997 1.1.1.2 christos stw 31,388(1) 2998 1.1.1.2 christos li 31,0x70 2999 1.1.1.2 christos mtspr 256,0 3000 1.1.1.2 christos 3001 1.1.1.2 christos subi 9,9,3 3002 1.1.1.2 christos 3003 1.1.1.2 christos lvx 23,0,6 3004 1.1.1.2 christos lvx 30,3,6 3005 1.1.1.2 christos addi 6,6,0x20 3006 1.1.1.2 christos lvx 31,0,6 3007 1.1.1.2 christos vperm 23,23,30,7 3008 1.1.1.2 christos addi 7,1,32+15 3009 1.1.1.2 christos mtctr 9 3010 1.1.1.2 christos 3011 1.1.1.2 christos .Load_xts_dec_key: 3012 1.1.1.2 christos vperm 24,30,31,7 3013 1.1.1.2 christos lvx 30,3,6 3014 1.1.1.2 christos addi 6,6,0x20 3015 1.1.1.2 christos stvx 24,0,7 3016 1.1.1.2 christos vperm 25,31,30,7 3017 1.1.1.2 christos lvx 31,0,6 3018 1.1.1.2 christos stvx 25,3,7 3019 1.1.1.2 christos addi 7,7,0x20 3020 1.1.1.2 christos bc 16,0,.Load_xts_dec_key 3021 1.1.1.2 christos 3022 1.1.1.2 christos lvx 26,3,6 3023 1.1.1.2 christos vperm 24,30,31,7 3024 1.1.1.2 christos lvx 27,26,6 3025 1.1.1.2 christos stvx 24,0,7 3026 1.1.1.2 christos vperm 25,31,26,7 3027 1.1.1.2 christos lvx 28,27,6 3028 1.1.1.2 christos stvx 25,3,7 3029 1.1.1.2 christos addi 7,1,32+15 3030 1.1.1.2 christos vperm 26,26,27,7 3031 1.1.1.2 christos lvx 29,28,6 3032 1.1.1.2 christos vperm 27,27,28,7 3033 1.1.1.2 christos lvx 30,29,6 3034 1.1.1.2 christos vperm 28,28,29,7 3035 1.1.1.2 christos lvx 31,30,6 3036 1.1.1.2 christos vperm 29,29,30,7 3037 1.1.1.2 christos lvx 22,31,6 3038 1.1.1.2 christos vperm 30,30,31,7 3039 1.1.1.2 christos lvx 24,0,7 3040 1.1.1.2 christos vperm 31,31,22,7 3041 1.1.1.2 christos lvx 25,3,7 3042 1.1.1.2 christos 3043 1.1.1.2 christos vperm 0,2,4,5 3044 1.1.1.2 christos subi 10,10,31 3045 1.1.1.2 christos vxor 17,8,23 3046 1.1.1.2 christos vsrab 11,8,9 3047 1.1.1.2 christos vaddubm 8,8,8 3048 1.1.1.2 christos vsldoi 11,11,11,15 3049 1.1.1.2 christos vand 11,11,10 3050 1.1.1.2 christos vxor 7,0,17 3051 1.1.1.2 christos vxor 8,8,11 3052 1.1.1.2 christos 3053 1.1.1.2 christos .long 0x7C235699 3054 1.1.1.2 christos vxor 18,8,23 3055 1.1.1.2 christos vsrab 11,8,9 3056 1.1.1.2 christos vaddubm 8,8,8 3057 1.1.1.2 christos vsldoi 11,11,11,15 3058 1.1.1.2 christos 3059 1.1.1.2 christos vand 11,11,10 3060 1.1.1.2 christos vxor 12,1,18 3061 1.1.1.2 christos vxor 8,8,11 3062 1.1.1.2 christos 3063 1.1.1.2 christos .long 0x7C5A5699 3064 1.1.1.2 christos andi. 31,5,15 3065 1.1.1.2 christos vxor 19,8,23 3066 1.1.1.2 christos vsrab 11,8,9 3067 1.1.1.2 christos vaddubm 8,8,8 3068 1.1.1.2 christos vsldoi 11,11,11,15 3069 1.1.1.2 christos 3070 1.1.1.2 christos vand 11,11,10 3071 1.1.1.2 christos vxor 13,2,19 3072 1.1.1.2 christos vxor 8,8,11 3073 1.1.1.2 christos 3074 1.1.1.2 christos .long 0x7C7B5699 3075 1.1.1.2 christos sub 5,5,31 3076 1.1.1.2 christos vxor 20,8,23 3077 1.1.1.2 christos vsrab 11,8,9 3078 1.1.1.2 christos vaddubm 8,8,8 3079 1.1.1.2 christos vsldoi 11,11,11,15 3080 1.1.1.2 christos 3081 1.1.1.2 christos vand 11,11,10 3082 1.1.1.2 christos vxor 14,3,20 3083 1.1.1.2 christos vxor 8,8,11 3084 1.1.1.2 christos 3085 1.1.1.2 christos .long 0x7C9C5699 3086 1.1.1.2 christos subi 5,5,0x60 3087 1.1.1.2 christos vxor 21,8,23 3088 1.1.1.2 christos vsrab 11,8,9 3089 1.1.1.2 christos vaddubm 8,8,8 3090 1.1.1.2 christos vsldoi 11,11,11,15 3091 1.1.1.2 christos 3092 1.1.1.2 christos vand 11,11,10 3093 1.1.1.2 christos vxor 15,4,21 3094 1.1.1.2 christos vxor 8,8,11 3095 1.1.1.2 christos 3096 1.1.1.2 christos .long 0x7CBD5699 3097 1.1.1.2 christos addi 10,10,0x60 3098 1.1.1.2 christos vxor 22,8,23 3099 1.1.1.2 christos vsrab 11,8,9 3100 1.1.1.2 christos vaddubm 8,8,8 3101 1.1.1.2 christos vsldoi 11,11,11,15 3102 1.1.1.2 christos 3103 1.1.1.2 christos vand 11,11,10 3104 1.1.1.2 christos vxor 16,5,22 3105 1.1.1.2 christos vxor 8,8,11 3106 1.1.1.2 christos 3107 1.1.1.2 christos vxor 31,31,23 3108 1.1.1.2 christos mtctr 9 3109 1.1.1.2 christos b .Loop_xts_dec6x 3110 1.1.1.2 christos 3111 1.1.1.2 christos .align 5 3112 1.1.1.2 christos .Loop_xts_dec6x: 3113 1.1.1.2 christos .long 0x10E7C548 3114 1.1.1.2 christos .long 0x118CC548 3115 1.1.1.2 christos .long 0x11ADC548 3116 1.1.1.2 christos .long 0x11CEC548 3117 1.1.1.2 christos .long 0x11EFC548 3118 1.1.1.2 christos .long 0x1210C548 3119 1.1.1.2 christos lvx 24,26,7 3120 1.1.1.2 christos addi 7,7,0x20 3121 1.1.1.2 christos 3122 1.1.1.2 christos .long 0x10E7CD48 3123 1.1.1.2 christos .long 0x118CCD48 3124 1.1.1.2 christos .long 0x11ADCD48 3125 1.1.1.2 christos .long 0x11CECD48 3126 1.1.1.2 christos .long 0x11EFCD48 3127 1.1.1.2 christos .long 0x1210CD48 3128 1.1.1.2 christos lvx 25,3,7 3129 1.1.1.2 christos bc 16,0,.Loop_xts_dec6x 3130 1.1.1.2 christos 3131 1.1.1.2 christos subic 5,5,96 3132 1.1.1.2 christos vxor 0,17,31 3133 1.1.1.2 christos .long 0x10E7C548 3134 1.1.1.2 christos .long 0x118CC548 3135 1.1.1.2 christos vsrab 11,8,9 3136 1.1.1.2 christos vxor 17,8,23 3137 1.1.1.2 christos vaddubm 8,8,8 3138 1.1.1.2 christos .long 0x11ADC548 3139 1.1.1.2 christos .long 0x11CEC548 3140 1.1.1.2 christos vsldoi 11,11,11,15 3141 1.1.1.2 christos .long 0x11EFC548 3142 1.1.1.2 christos .long 0x1210C548 3143 1.1.1.2 christos 3144 1.1.1.2 christos subfe. 0,0,0 3145 1.1.1.2 christos vand 11,11,10 3146 1.1.1.2 christos .long 0x10E7CD48 3147 1.1.1.2 christos .long 0x118CCD48 3148 1.1.1.2 christos vxor 8,8,11 3149 1.1.1.2 christos .long 0x11ADCD48 3150 1.1.1.2 christos .long 0x11CECD48 3151 1.1.1.2 christos vxor 1,18,31 3152 1.1.1.2 christos vsrab 11,8,9 3153 1.1.1.2 christos vxor 18,8,23 3154 1.1.1.2 christos .long 0x11EFCD48 3155 1.1.1.2 christos .long 0x1210CD48 3156 1.1.1.2 christos 3157 1.1.1.2 christos and 0,0,5 3158 1.1.1.2 christos vaddubm 8,8,8 3159 1.1.1.2 christos vsldoi 11,11,11,15 3160 1.1.1.2 christos .long 0x10E7D548 3161 1.1.1.2 christos .long 0x118CD548 3162 1.1.1.2 christos vand 11,11,10 3163 1.1.1.2 christos .long 0x11ADD548 3164 1.1.1.2 christos .long 0x11CED548 3165 1.1.1.2 christos vxor 8,8,11 3166 1.1.1.2 christos .long 0x11EFD548 3167 1.1.1.2 christos .long 0x1210D548 3168 1.1.1.2 christos 3169 1.1.1.2 christos add 10,10,0 3170 1.1.1.2 christos 3171 1.1.1.2 christos 3172 1.1.1.2 christos 3173 1.1.1.2 christos vxor 2,19,31 3174 1.1.1.2 christos vsrab 11,8,9 3175 1.1.1.2 christos vxor 19,8,23 3176 1.1.1.2 christos vaddubm 8,8,8 3177 1.1.1.2 christos .long 0x10E7DD48 3178 1.1.1.2 christos .long 0x118CDD48 3179 1.1.1.2 christos vsldoi 11,11,11,15 3180 1.1.1.2 christos .long 0x11ADDD48 3181 1.1.1.2 christos .long 0x11CEDD48 3182 1.1.1.2 christos vand 11,11,10 3183 1.1.1.2 christos .long 0x11EFDD48 3184 1.1.1.2 christos .long 0x1210DD48 3185 1.1.1.2 christos 3186 1.1.1.2 christos addi 7,1,32+15 3187 1.1.1.2 christos vxor 8,8,11 3188 1.1.1.2 christos .long 0x10E7E548 3189 1.1.1.2 christos .long 0x118CE548 3190 1.1.1.2 christos vxor 3,20,31 3191 1.1.1.2 christos vsrab 11,8,9 3192 1.1.1.2 christos vxor 20,8,23 3193 1.1.1.2 christos .long 0x11ADE548 3194 1.1.1.2 christos .long 0x11CEE548 3195 1.1.1.2 christos vaddubm 8,8,8 3196 1.1.1.2 christos vsldoi 11,11,11,15 3197 1.1.1.2 christos .long 0x11EFE548 3198 1.1.1.2 christos .long 0x1210E548 3199 1.1.1.2 christos lvx 24,0,7 3200 1.1.1.2 christos vand 11,11,10 3201 1.1.1.2 christos 3202 1.1.1.2 christos .long 0x10E7ED48 3203 1.1.1.2 christos .long 0x118CED48 3204 1.1.1.2 christos vxor 8,8,11 3205 1.1.1.2 christos .long 0x11ADED48 3206 1.1.1.2 christos .long 0x11CEED48 3207 1.1.1.2 christos vxor 4,21,31 3208 1.1.1.2 christos vsrab 11,8,9 3209 1.1.1.2 christos vxor 21,8,23 3210 1.1.1.2 christos .long 0x11EFED48 3211 1.1.1.2 christos .long 0x1210ED48 3212 1.1.1.2 christos lvx 25,3,7 3213 1.1.1.2 christos vaddubm 8,8,8 3214 1.1.1.2 christos vsldoi 11,11,11,15 3215 1.1.1.2 christos 3216 1.1.1.2 christos .long 0x10E7F548 3217 1.1.1.2 christos .long 0x118CF548 3218 1.1.1.2 christos vand 11,11,10 3219 1.1.1.2 christos .long 0x11ADF548 3220 1.1.1.2 christos .long 0x11CEF548 3221 1.1.1.2 christos vxor 8,8,11 3222 1.1.1.2 christos .long 0x11EFF548 3223 1.1.1.2 christos .long 0x1210F548 3224 1.1.1.2 christos vxor 5,22,31 3225 1.1.1.2 christos vsrab 11,8,9 3226 1.1.1.2 christos vxor 22,8,23 3227 1.1.1.2 christos 3228 1.1.1.2 christos .long 0x10E70549 3229 1.1.1.2 christos .long 0x7C005699 3230 1.1.1.2 christos vaddubm 8,8,8 3231 1.1.1.2 christos vsldoi 11,11,11,15 3232 1.1.1.2 christos .long 0x118C0D49 3233 1.1.1.2 christos .long 0x7C235699 3234 1.1.1.2 christos .long 0x11AD1549 3235 1.1.1.2 christos 3236 1.1.1.2 christos .long 0x7C5A5699 3237 1.1.1.2 christos vand 11,11,10 3238 1.1.1.2 christos .long 0x11CE1D49 3239 1.1.1.2 christos 3240 1.1.1.2 christos .long 0x7C7B5699 3241 1.1.1.2 christos .long 0x11EF2549 3242 1.1.1.2 christos 3243 1.1.1.2 christos .long 0x7C9C5699 3244 1.1.1.2 christos vxor 8,8,11 3245 1.1.1.2 christos .long 0x12102D49 3246 1.1.1.2 christos 3247 1.1.1.2 christos .long 0x7CBD5699 3248 1.1.1.2 christos addi 10,10,0x60 3249 1.1.1.2 christos 3250 1.1.1.2 christos 3251 1.1.1.2 christos 3252 1.1.1.2 christos 3253 1.1.1.2 christos 3254 1.1.1.2 christos .long 0x7CE02799 3255 1.1.1.2 christos vxor 7,0,17 3256 1.1.1.2 christos 3257 1.1.1.2 christos .long 0x7D832799 3258 1.1.1.2 christos vxor 12,1,18 3259 1.1.1.2 christos 3260 1.1.1.2 christos .long 0x7DBA2799 3261 1.1.1.2 christos vxor 13,2,19 3262 1.1.1.2 christos 3263 1.1.1.2 christos .long 0x7DDB2799 3264 1.1.1.2 christos vxor 14,3,20 3265 1.1.1.2 christos 3266 1.1.1.2 christos .long 0x7DFC2799 3267 1.1.1.2 christos vxor 15,4,21 3268 1.1.1.2 christos .long 0x7E1D2799 3269 1.1.1.2 christos vxor 16,5,22 3270 1.1.1.2 christos addi 4,4,0x60 3271 1.1.1.2 christos 3272 1.1.1.2 christos mtctr 9 3273 1.1.1.2 christos beq .Loop_xts_dec6x 3274 1.1.1.2 christos 3275 1.1.1.2 christos addic. 5,5,0x60 3276 1.1.1.2 christos beq .Lxts_dec6x_zero 3277 1.1.1.2 christos cmpwi 5,0x20 3278 1.1.1.2 christos blt .Lxts_dec6x_one 3279 1.1.1.2 christos nop 3280 1.1.1.2 christos beq .Lxts_dec6x_two 3281 1.1.1.2 christos cmpwi 5,0x40 3282 1.1.1.2 christos blt .Lxts_dec6x_three 3283 1.1.1.2 christos nop 3284 1.1.1.2 christos beq .Lxts_dec6x_four 3285 1.1.1.2 christos 3286 1.1.1.2 christos .Lxts_dec6x_five: 3287 1.1.1.2 christos vxor 7,1,17 3288 1.1.1.2 christos vxor 12,2,18 3289 1.1.1.2 christos vxor 13,3,19 3290 1.1.1.2 christos vxor 14,4,20 3291 1.1.1.2 christos vxor 15,5,21 3292 1.1.1.2 christos 3293 1.1.1.2 christos bl _aesp8_xts_dec5x 3294 1.1.1.2 christos 3295 1.1.1.2 christos 3296 1.1.1.2 christos vor 17,22,22 3297 1.1.1.2 christos vxor 18,8,23 3298 1.1.1.2 christos 3299 1.1.1.2 christos .long 0x7CE02799 3300 1.1.1.2 christos vxor 7,0,18 3301 1.1.1.2 christos 3302 1.1.1.2 christos .long 0x7D832799 3303 1.1.1.2 christos 3304 1.1.1.2 christos .long 0x7DBA2799 3305 1.1.1.2 christos 3306 1.1.1.2 christos .long 0x7DDB2799 3307 1.1.1.2 christos .long 0x7DFC2799 3308 1.1.1.2 christos addi 4,4,0x50 3309 1.1.1.2 christos bne .Lxts_dec6x_steal 3310 1.1.1.2 christos b .Lxts_dec6x_done 3311 1.1.1.2 christos 3312 1.1.1.2 christos .align 4 3313 1.1.1.2 christos .Lxts_dec6x_four: 3314 1.1.1.2 christos vxor 7,2,17 3315 1.1.1.2 christos vxor 12,3,18 3316 1.1.1.2 christos vxor 13,4,19 3317 1.1.1.2 christos vxor 14,5,20 3318 1.1.1.2 christos vxor 15,15,15 3319 1.1.1.2 christos 3320 1.1.1.2 christos bl _aesp8_xts_dec5x 3321 1.1.1.2 christos 3322 1.1.1.2 christos 3323 1.1.1.2 christos vor 17,21,21 3324 1.1.1.2 christos vor 18,22,22 3325 1.1.1.2 christos 3326 1.1.1.2 christos .long 0x7CE02799 3327 1.1.1.2 christos vxor 7,0,22 3328 1.1.1.2 christos 3329 1.1.1.2 christos .long 0x7D832799 3330 1.1.1.2 christos 3331 1.1.1.2 christos .long 0x7DBA2799 3332 1.1.1.2 christos .long 0x7DDB2799 3333 1.1.1.2 christos addi 4,4,0x40 3334 1.1.1.2 christos bne .Lxts_dec6x_steal 3335 1.1.1.2 christos b .Lxts_dec6x_done 3336 1.1.1.2 christos 3337 1.1.1.2 christos .align 4 3338 1.1.1.2 christos .Lxts_dec6x_three: 3339 1.1.1.2 christos vxor 7,3,17 3340 1.1.1.2 christos vxor 12,4,18 3341 1.1.1.2 christos vxor 13,5,19 3342 1.1.1.2 christos vxor 14,14,14 3343 1.1.1.2 christos vxor 15,15,15 3344 1.1.1.2 christos 3345 1.1.1.2 christos bl _aesp8_xts_dec5x 3346 1.1.1.2 christos 3347 1.1.1.2 christos 3348 1.1.1.2 christos vor 17,20,20 3349 1.1.1.2 christos vor 18,21,21 3350 1.1.1.2 christos 3351 1.1.1.2 christos .long 0x7CE02799 3352 1.1.1.2 christos vxor 7,0,21 3353 1.1.1.2 christos 3354 1.1.1.2 christos .long 0x7D832799 3355 1.1.1.2 christos .long 0x7DBA2799 3356 1.1.1.2 christos addi 4,4,0x30 3357 1.1.1.2 christos bne .Lxts_dec6x_steal 3358 1.1.1.2 christos b .Lxts_dec6x_done 3359 1.1.1.2 christos 3360 1.1.1.2 christos .align 4 3361 1.1.1.2 christos .Lxts_dec6x_two: 3362 1.1.1.2 christos vxor 7,4,17 3363 1.1.1.2 christos vxor 12,5,18 3364 1.1.1.2 christos vxor 13,13,13 3365 1.1.1.2 christos vxor 14,14,14 3366 1.1.1.2 christos vxor 15,15,15 3367 1.1.1.2 christos 3368 1.1.1.2 christos bl _aesp8_xts_dec5x 3369 1.1.1.2 christos 3370 1.1.1.2 christos 3371 1.1.1.2 christos vor 17,19,19 3372 1.1.1.2 christos vor 18,20,20 3373 1.1.1.2 christos 3374 1.1.1.2 christos .long 0x7CE02799 3375 1.1.1.2 christos vxor 7,0,20 3376 1.1.1.2 christos .long 0x7D832799 3377 1.1.1.2 christos addi 4,4,0x20 3378 1.1.1.2 christos bne .Lxts_dec6x_steal 3379 1.1.1.2 christos b .Lxts_dec6x_done 3380 1.1.1.2 christos 3381 1.1.1.2 christos .align 4 3382 1.1.1.2 christos .Lxts_dec6x_one: 3383 1.1.1.2 christos vxor 7,5,17 3384 1.1.1.2 christos nop 3385 1.1.1.2 christos .Loop_xts_dec1x: 3386 1.1.1.2 christos .long 0x10E7C548 3387 1.1.1.2 christos lvx 24,26,7 3388 1.1.1.2 christos addi 7,7,0x20 3389 1.1.1.2 christos 3390 1.1.1.2 christos .long 0x10E7CD48 3391 1.1.1.2 christos lvx 25,3,7 3392 1.1.1.2 christos bc 16,0,.Loop_xts_dec1x 3393 1.1.1.2 christos 3394 1.1.1.2 christos subi 0,31,1 3395 1.1.1.2 christos .long 0x10E7C548 3396 1.1.1.2 christos 3397 1.1.1.2 christos andi. 0,0,16 3398 1.1.1.2 christos cmpwi 31,0 3399 1.1.1.2 christos .long 0x10E7CD48 3400 1.1.1.2 christos 3401 1.1.1.2 christos sub 10,10,0 3402 1.1.1.2 christos .long 0x10E7D548 3403 1.1.1.2 christos 3404 1.1.1.2 christos .long 0x7C005699 3405 1.1.1.2 christos .long 0x10E7DD48 3406 1.1.1.2 christos 3407 1.1.1.2 christos addi 7,1,32+15 3408 1.1.1.2 christos .long 0x10E7E548 3409 1.1.1.2 christos lvx 24,0,7 3410 1.1.1.2 christos 3411 1.1.1.2 christos .long 0x10E7ED48 3412 1.1.1.2 christos lvx 25,3,7 3413 1.1.1.2 christos vxor 17,17,31 3414 1.1.1.2 christos 3415 1.1.1.2 christos 3416 1.1.1.2 christos .long 0x10E7F548 3417 1.1.1.2 christos 3418 1.1.1.2 christos mtctr 9 3419 1.1.1.2 christos .long 0x10E78D49 3420 1.1.1.2 christos 3421 1.1.1.2 christos vor 17,18,18 3422 1.1.1.2 christos vor 18,19,19 3423 1.1.1.2 christos 3424 1.1.1.2 christos .long 0x7CE02799 3425 1.1.1.2 christos addi 4,4,0x10 3426 1.1.1.2 christos vxor 7,0,19 3427 1.1.1.2 christos bne .Lxts_dec6x_steal 3428 1.1.1.2 christos b .Lxts_dec6x_done 3429 1.1.1.2 christos 3430 1.1.1.2 christos .align 4 3431 1.1.1.2 christos .Lxts_dec6x_zero: 3432 1.1.1.2 christos cmpwi 31,0 3433 1.1.1.2 christos beq .Lxts_dec6x_done 3434 1.1.1.2 christos 3435 1.1.1.2 christos .long 0x7C005699 3436 1.1.1.2 christos 3437 1.1.1.2 christos vxor 7,0,18 3438 1.1.1.2 christos .Lxts_dec6x_steal: 3439 1.1.1.2 christos .long 0x10E7C548 3440 1.1.1.2 christos lvx 24,26,7 3441 1.1.1.2 christos addi 7,7,0x20 3442 1.1.1.2 christos 3443 1.1.1.2 christos .long 0x10E7CD48 3444 1.1.1.2 christos lvx 25,3,7 3445 1.1.1.2 christos bc 16,0,.Lxts_dec6x_steal 3446 1.1.1.2 christos 3447 1.1.1.2 christos add 10,10,31 3448 1.1.1.2 christos .long 0x10E7C548 3449 1.1.1.2 christos 3450 1.1.1.2 christos cmpwi 31,0 3451 1.1.1.2 christos .long 0x10E7CD48 3452 1.1.1.2 christos 3453 1.1.1.2 christos .long 0x7C005699 3454 1.1.1.2 christos .long 0x10E7D548 3455 1.1.1.2 christos 3456 1.1.1.2 christos lvsr 5,0,31 3457 1.1.1.2 christos .long 0x10E7DD48 3458 1.1.1.2 christos 3459 1.1.1.2 christos addi 7,1,32+15 3460 1.1.1.2 christos .long 0x10E7E548 3461 1.1.1.2 christos lvx 24,0,7 3462 1.1.1.2 christos 3463 1.1.1.2 christos .long 0x10E7ED48 3464 1.1.1.2 christos lvx 25,3,7 3465 1.1.1.2 christos vxor 18,18,31 3466 1.1.1.2 christos 3467 1.1.1.2 christos 3468 1.1.1.2 christos .long 0x10E7F548 3469 1.1.1.2 christos 3470 1.1.1.2 christos vperm 0,0,0,5 3471 1.1.1.2 christos .long 0x11679549 3472 1.1.1.2 christos 3473 1.1.1.2 christos 3474 1.1.1.2 christos 3475 1.1.1.2 christos .long 0x7D602799 3476 1.1.1.2 christos 3477 1.1.1.2 christos vxor 7,7,7 3478 1.1.1.2 christos vspltisb 12,-1 3479 1.1.1.2 christos vperm 7,7,12,5 3480 1.1.1.2 christos vsel 7,0,11,7 3481 1.1.1.2 christos vxor 7,7,17 3482 1.1.1.2 christos 3483 1.1.1.2 christos subi 30,4,1 3484 1.1.1.2 christos mtctr 31 3485 1.1.1.2 christos .Loop_xts_dec6x_steal: 3486 1.1.1.2 christos lbzu 0,1(30) 3487 1.1.1.2 christos stb 0,16(30) 3488 1.1.1.2 christos bc 16,0,.Loop_xts_dec6x_steal 3489 1.1.1.2 christos 3490 1.1.1.2 christos li 31,0 3491 1.1.1.2 christos mtctr 9 3492 1.1.1.2 christos b .Loop_xts_dec1x 3493 1.1.1.2 christos 3494 1.1.1.2 christos .align 4 3495 1.1.1.2 christos .Lxts_dec6x_done: 3496 1.1.1.2 christos cmplwi 8,0 3497 1.1.1.2 christos beq .Lxts_dec6x_ret 3498 1.1.1.2 christos 3499 1.1.1.2 christos vxor 8,17,23 3500 1.1.1.2 christos 3501 1.1.1.2 christos .long 0x7D004799 3502 1.1.1.2 christos 3503 1.1.1.2 christos .Lxts_dec6x_ret: 3504 1.1.1.2 christos mtlr 11 3505 1.1.1.2 christos li 10,47 3506 1.1.1.2 christos li 11,63 3507 1.1.1.2 christos stvx 9,10,1 3508 1.1.1.2 christos addi 10,10,32 3509 1.1.1.2 christos stvx 9,11,1 3510 1.1.1.2 christos addi 11,11,32 3511 1.1.1.2 christos stvx 9,10,1 3512 1.1.1.2 christos addi 10,10,32 3513 1.1.1.2 christos stvx 9,11,1 3514 1.1.1.2 christos addi 11,11,32 3515 1.1.1.2 christos stvx 9,10,1 3516 1.1.1.2 christos addi 10,10,32 3517 1.1.1.2 christos stvx 9,11,1 3518 1.1.1.2 christos addi 11,11,32 3519 1.1.1.2 christos stvx 9,10,1 3520 1.1.1.2 christos addi 10,10,32 3521 1.1.1.2 christos stvx 9,11,1 3522 1.1.1.2 christos addi 11,11,32 3523 1.1.1.2 christos 3524 1.1.1.2 christos mtspr 256,12 3525 1.1.1.2 christos lvx 20,10,1 3526 1.1.1.2 christos addi 10,10,32 3527 1.1.1.2 christos lvx 21,11,1 3528 1.1.1.2 christos addi 11,11,32 3529 1.1.1.2 christos lvx 22,10,1 3530 1.1.1.2 christos addi 10,10,32 3531 1.1.1.2 christos lvx 23,11,1 3532 1.1.1.2 christos addi 11,11,32 3533 1.1.1.2 christos lvx 24,10,1 3534 1.1.1.2 christos addi 10,10,32 3535 1.1.1.2 christos lvx 25,11,1 3536 1.1.1.2 christos addi 11,11,32 3537 1.1.1.2 christos lvx 26,10,1 3538 1.1.1.2 christos addi 10,10,32 3539 1.1.1.2 christos lvx 27,11,1 3540 1.1.1.2 christos addi 11,11,32 3541 1.1.1.2 christos lvx 28,10,1 3542 1.1.1.2 christos addi 10,10,32 3543 1.1.1.2 christos lvx 29,11,1 3544 1.1.1.2 christos addi 11,11,32 3545 1.1.1.2 christos lvx 30,10,1 3546 1.1.1.2 christos lvx 31,11,1 3547 1.1.1.2 christos lwz 26,368(1) 3548 1.1.1.2 christos lwz 27,372(1) 3549 1.1.1.2 christos lwz 28,376(1) 3550 1.1.1.2 christos lwz 29,380(1) 3551 1.1.1.2 christos lwz 30,384(1) 3552 1.1.1.2 christos lwz 31,388(1) 3553 1.1.1.2 christos addi 1,1,392 3554 1.1.1.2 christos blr 3555 1.1.1.2 christos .long 0 3556 1.1.1.2 christos .byte 0,12,0x04,1,0x80,6,6,0 3557 1.1.1.2 christos .long 0 3558 1.1.1.2 christos 3559 1.1.1.2 christos .align 5 3560 1.1.1.2 christos _aesp8_xts_dec5x: 3561 1.1.1.2 christos .long 0x10E7C548 3562 1.1.1.2 christos .long 0x118CC548 3563 1.1.1.2 christos .long 0x11ADC548 3564 1.1.1.2 christos .long 0x11CEC548 3565 1.1.1.2 christos .long 0x11EFC548 3566 1.1.1.2 christos lvx 24,26,7 3567 1.1.1.2 christos addi 7,7,0x20 3568 1.1.1.2 christos 3569 1.1.1.2 christos .long 0x10E7CD48 3570 1.1.1.2 christos .long 0x118CCD48 3571 1.1.1.2 christos .long 0x11ADCD48 3572 1.1.1.2 christos .long 0x11CECD48 3573 1.1.1.2 christos .long 0x11EFCD48 3574 1.1.1.2 christos lvx 25,3,7 3575 1.1.1.2 christos bc 16,0,_aesp8_xts_dec5x 3576 1.1.1.2 christos 3577 1.1.1.2 christos subi 0,31,1 3578 1.1.1.2 christos .long 0x10E7C548 3579 1.1.1.2 christos .long 0x118CC548 3580 1.1.1.2 christos .long 0x11ADC548 3581 1.1.1.2 christos .long 0x11CEC548 3582 1.1.1.2 christos .long 0x11EFC548 3583 1.1.1.2 christos 3584 1.1.1.2 christos andi. 0,0,16 3585 1.1.1.2 christos cmpwi 31,0 3586 1.1.1.2 christos .long 0x10E7CD48 3587 1.1.1.2 christos .long 0x118CCD48 3588 1.1.1.2 christos .long 0x11ADCD48 3589 1.1.1.2 christos .long 0x11CECD48 3590 1.1.1.2 christos .long 0x11EFCD48 3591 1.1.1.2 christos vxor 17,17,31 3592 1.1.1.2 christos 3593 1.1.1.2 christos sub 10,10,0 3594 1.1.1.2 christos .long 0x10E7D548 3595 1.1.1.2 christos .long 0x118CD548 3596 1.1.1.2 christos .long 0x11ADD548 3597 1.1.1.2 christos .long 0x11CED548 3598 1.1.1.2 christos .long 0x11EFD548 3599 1.1.1.2 christos vxor 1,18,31 3600 1.1.1.2 christos 3601 1.1.1.2 christos .long 0x10E7DD48 3602 1.1.1.2 christos .long 0x7C005699 3603 1.1.1.2 christos .long 0x118CDD48 3604 1.1.1.2 christos .long 0x11ADDD48 3605 1.1.1.2 christos .long 0x11CEDD48 3606 1.1.1.2 christos .long 0x11EFDD48 3607 1.1.1.2 christos vxor 2,19,31 3608 1.1.1.2 christos 3609 1.1.1.2 christos addi 7,1,32+15 3610 1.1.1.2 christos .long 0x10E7E548 3611 1.1.1.2 christos .long 0x118CE548 3612 1.1.1.2 christos .long 0x11ADE548 3613 1.1.1.2 christos .long 0x11CEE548 3614 1.1.1.2 christos .long 0x11EFE548 3615 1.1.1.2 christos lvx 24,0,7 3616 1.1.1.2 christos vxor 3,20,31 3617 1.1.1.2 christos 3618 1.1.1.2 christos .long 0x10E7ED48 3619 1.1.1.2 christos 3620 1.1.1.2 christos .long 0x118CED48 3621 1.1.1.2 christos .long 0x11ADED48 3622 1.1.1.2 christos .long 0x11CEED48 3623 1.1.1.2 christos .long 0x11EFED48 3624 1.1.1.2 christos lvx 25,3,7 3625 1.1.1.2 christos vxor 4,21,31 3626 1.1.1.2 christos 3627 1.1.1.2 christos .long 0x10E7F548 3628 1.1.1.2 christos .long 0x118CF548 3629 1.1.1.2 christos .long 0x11ADF548 3630 1.1.1.2 christos .long 0x11CEF548 3631 1.1.1.2 christos .long 0x11EFF548 3632 1.1.1.2 christos 3633 1.1.1.2 christos .long 0x10E78D49 3634 1.1.1.2 christos .long 0x118C0D49 3635 1.1.1.2 christos .long 0x11AD1549 3636 1.1.1.2 christos .long 0x11CE1D49 3637 1.1.1.2 christos .long 0x11EF2549 3638 1.1.1.2 christos mtctr 9 3639 1.1.1.2 christos blr 3640 1.1.1.2 christos .long 0 3641 1.1.1.2 christos .byte 0,12,0x14,0,0,0,0,0 3642