aes-mips.S revision 2178392bec7b69d0f469bce29f653c9fbd09b614
1b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.text 2b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic#ifdef OPENSSL_FIPSCANISTER 3b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic# include <openssl/fipssyms.h> 4b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic#endif 5b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 6b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic#if !defined(__vxworks) || defined(__pic__) 7b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.option pic2 8b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic#endif 9b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.set noat 10b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.align 5 11b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.ent _mips_AES_encrypt 12b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic_mips_AES_encrypt: 13b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic .frame $29,0,$31 14b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic .set reorder 15b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $12,0($6) 16b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $13,4($6) 17b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $14,8($6) 18b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $15,12($6) 19b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $30,240($6) 20b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $3,$6,16 21b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 22b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $8,$12 23b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $9,$13 24b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $10,$14 25b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $11,$15 26b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 27b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sub $30,1 28b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic srl $1,$9,6 29b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.Loop_enc: 30b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic srl $2,$10,6 31b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic srl $24,$11,6 32b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic srl $25,$8,6 33b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $1,0x3fc 34b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $2,0x3fc 35b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $24,0x3fc 36b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $25,0x3fc 37b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $1,$7 38b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $2,$7 39b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $24,$7 40b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $25,$7 41b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwl $12,2($1) # Te1[s1>>16] 42b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwl $13,2($2) # Te1[s2>>16] 43b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwl $14,2($24) # Te1[s3>>16] 44b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwl $15,2($25) # Te1[s0>>16] 45b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwr $12,3($1) # Te1[s1>>16] 46b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwr $13,3($2) # Te1[s2>>16] 47b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwr $14,3($24) # Te1[s3>>16] 48b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwr $15,3($25) # Te1[s0>>16] 49b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 50b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic srl $1,$10,14 51b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic srl $2,$11,14 52b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic srl $24,$8,14 53b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic srl $25,$9,14 54b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $1,0x3fc 55b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $2,0x3fc 56b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $24,0x3fc 57b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $25,0x3fc 58b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $1,$7 59b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $2,$7 60b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $24,$7 61b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $25,$7 62b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwl $16,1($1) # Te2[s2>>8] 63b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwl $17,1($2) # Te2[s3>>8] 64b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwl $18,1($24) # Te2[s0>>8] 65b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwl $19,1($25) # Te2[s1>>8] 66b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwr $16,2($1) # Te2[s2>>8] 67b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwr $17,2($2) # Te2[s3>>8] 68b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwr $18,2($24) # Te2[s0>>8] 69b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwr $19,2($25) # Te2[s1>>8] 70b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 71b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic srl $1,$11,22 72b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic srl $2,$8,22 73b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic srl $24,$9,22 74b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic srl $25,$10,22 75b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $1,0x3fc 76b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $2,0x3fc 77b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $24,0x3fc 78b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $25,0x3fc 79b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $1,$7 80b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $2,$7 81b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $24,$7 82b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $25,$7 83b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwl $20,0($1) # Te3[s3] 84b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwl $21,0($2) # Te3[s0] 85b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwl $22,0($24) # Te3[s1] 86b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwl $23,0($25) # Te3[s2] 87b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwr $20,1($1) # Te3[s3] 88b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwr $21,1($2) # Te3[s0] 89b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwr $22,1($24) # Te3[s1] 90b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwr $23,1($25) # Te3[s2] 91b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 92b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sll $1,$8,2 93b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sll $2,$9,2 94b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sll $24,$10,2 95b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sll $25,$11,2 96b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $1,0x3fc 97b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $2,0x3fc 98b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $24,0x3fc 99b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $25,0x3fc 100b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $1,$7 101b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $2,$7 102b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $24,$7 103b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $25,$7 104b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $12,$16 105b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $13,$17 106b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $14,$18 107b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $15,$19 108b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $16,0($1) # Te0[s0>>24] 109b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $17,0($2) # Te0[s1>>24] 110b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $18,0($24) # Te0[s2>>24] 111b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $19,0($25) # Te0[s3>>24] 112b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 113b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $8,0($3) 114b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $9,4($3) 115b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $10,8($3) 116b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $11,12($3) 117b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 118b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $12,$20 119b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $13,$21 120b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $14,$22 121b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $15,$23 122b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 123b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $12,$16 124b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $13,$17 125b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $14,$18 126b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $15,$19 127b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 128b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sub $30,1 129b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $3,16 130b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $8,$12 131b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $9,$13 132b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $10,$14 133b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $11,$15 134b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic .set noreorder 135b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic bnez $30,.Loop_enc 136b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic srl $1,$9,6 137b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 138b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic .set reorder 139b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic srl $2,$10,6 140b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic srl $24,$11,6 141b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic srl $25,$8,6 142b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $1,0x3fc 143b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $2,0x3fc 144b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $24,0x3fc 145b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $25,0x3fc 146b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $1,$7 147b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $2,$7 148b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $24,$7 149b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $25,$7 150b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lbu $12,2($1) # Te4[s1>>16] 151b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lbu $13,2($2) # Te4[s2>>16] 152b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lbu $14,2($24) # Te4[s3>>16] 153b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lbu $15,2($25) # Te4[s0>>16] 154b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 155b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic srl $1,$10,14 156b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic srl $2,$11,14 157b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic srl $24,$8,14 158b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic srl $25,$9,14 159b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $1,0x3fc 160b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $2,0x3fc 161b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $24,0x3fc 162b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $25,0x3fc 163b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $1,$7 164b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $2,$7 165b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $24,$7 166b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $25,$7 167b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lbu $16,2($1) # Te4[s2>>8] 168b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lbu $17,2($2) # Te4[s3>>8] 169b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lbu $18,2($24) # Te4[s0>>8] 170b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lbu $19,2($25) # Te4[s1>>8] 171b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 172b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sll $1,$8,2 173b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sll $2,$9,2 174b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sll $24,$10,2 175b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sll $25,$11,2 176b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $1,0x3fc 177b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $2,0x3fc 178b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $24,0x3fc 179b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $25,0x3fc 180b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $1,$7 181b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $2,$7 182b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $24,$7 183b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $25,$7 184b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lbu $20,2($1) # Te4[s0>>24] 185b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lbu $21,2($2) # Te4[s1>>24] 186b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lbu $22,2($24) # Te4[s2>>24] 187b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lbu $23,2($25) # Te4[s3>>24] 188b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 189b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic srl $1,$11,22 190b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic srl $2,$8,22 191b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic srl $24,$9,22 192b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic srl $25,$10,22 193b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $1,0x3fc 194b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $2,0x3fc 195b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $24,0x3fc 196b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $25,0x3fc 197b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 198b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sll $12,$12,8 199b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sll $13,$13,8 200b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sll $14,$14,8 201b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sll $15,$15,8 202b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 203b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sll $16,$16,16 204b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sll $17,$17,16 205b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sll $18,$18,16 206b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sll $19,$19,16 207b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 208b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $12,$16 209b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $13,$17 210b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $14,$18 211b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $15,$19 212b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 213b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $1,$7 214b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $2,$7 215b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $24,$7 216b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $25,$7 217b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lbu $16,2($1) # Te4[s3] 218b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lbu $17,2($2) # Te4[s0] 219b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lbu $18,2($24) # Te4[s1] 220b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lbu $19,2($25) # Te4[s2] 221b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 222b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic #sll $20,$20,0 223b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic #sll $21,$21,0 224b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic #sll $22,$22,0 225b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic #sll $23,$23,0 226b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 227b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $8,0($3) 228b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $9,4($3) 229b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $10,8($3) 230b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $11,12($3) 231b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 232b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $12,$20 233b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $13,$21 234b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $14,$22 235b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $15,$23 236b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 237b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sll $16,$16,24 238b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sll $17,$17,24 239b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sll $18,$18,24 240b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sll $19,$19,24 241b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 242b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $12,$16 243b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $13,$17 244b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $14,$18 245b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $15,$19 246b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 247b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $8,$12 248b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $9,$13 249b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $10,$14 250b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $11,$15 251b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 252b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic jr $31 253b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.end _mips_AES_encrypt 254b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 255b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.align 5 256b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.globl AES_encrypt 257b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.ent AES_encrypt 258b83a02d94f9ba66fc5da46c2e27572674ea17931Petar JovanovicAES_encrypt: 259b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic .frame $29,64,$31 260b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic .mask 3237937152,-4 261b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic .set noreorder 2622178392bec7b69d0f469bce29f653c9fbd09b614Chris Dearman .cpload $25 263b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sub $29,64 264b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sw $31,64-1*4($29) 265b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sw $30,64-2*4($29) 266b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sw $23,64-3*4($29) 267b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sw $22,64-4*4($29) 268b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sw $21,64-5*4($29) 269b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sw $20,64-6*4($29) 270b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sw $19,64-7*4($29) 271b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sw $18,64-8*4($29) 272b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sw $17,64-9*4($29) 273b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sw $16,64-10*4($29) 274b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic .set reorder 275b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic la $7,AES_Te # PIC-ified 'load address' 276b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 277b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwl $8,0+3($4) 278b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwl $9,4+3($4) 279b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwl $10,8+3($4) 280b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwl $11,12+3($4) 281b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwr $8,0+0($4) 282b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwr $9,4+0($4) 283b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwr $10,8+0($4) 284b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwr $11,12+0($4) 285b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 286b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic bal _mips_AES_encrypt 287b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 288b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic swr $8,0+0($5) 289b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic swr $9,4+0($5) 290b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic swr $10,8+0($5) 291b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic swr $11,12+0($5) 292b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic swl $8,0+3($5) 293b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic swl $9,4+3($5) 294b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic swl $10,8+3($5) 295b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic swl $11,12+3($5) 296b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 297b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic .set noreorder 298b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $31,64-1*4($29) 299b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $30,64-2*4($29) 300b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $23,64-3*4($29) 301b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $22,64-4*4($29) 302b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $21,64-5*4($29) 303b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $20,64-6*4($29) 304b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $19,64-7*4($29) 305b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $18,64-8*4($29) 306b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $17,64-9*4($29) 307b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $16,64-10*4($29) 308b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic jr $31 309b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $29,64 310b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.end AES_encrypt 311b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.align 5 312b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.ent _mips_AES_decrypt 313b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic_mips_AES_decrypt: 314b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic .frame $29,0,$31 315b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic .set reorder 316b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $12,0($6) 317b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $13,4($6) 318b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $14,8($6) 319b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $15,12($6) 320b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $30,240($6) 321b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $3,$6,16 322b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 323b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $8,$12 324b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $9,$13 325b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $10,$14 326b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $11,$15 327b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 328b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sub $30,1 329b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic srl $1,$11,6 330b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.Loop_dec: 331b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic srl $2,$8,6 332b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic srl $24,$9,6 333b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic srl $25,$10,6 334b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $1,0x3fc 335b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $2,0x3fc 336b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $24,0x3fc 337b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $25,0x3fc 338b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $1,$7 339b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $2,$7 340b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $24,$7 341b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $25,$7 342b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwl $12,2($1) # Td1[s3>>16] 343b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwl $13,2($2) # Td1[s0>>16] 344b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwl $14,2($24) # Td1[s1>>16] 345b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwl $15,2($25) # Td1[s2>>16] 346b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwr $12,3($1) # Td1[s3>>16] 347b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwr $13,3($2) # Td1[s0>>16] 348b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwr $14,3($24) # Td1[s1>>16] 349b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwr $15,3($25) # Td1[s2>>16] 350b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 351b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic srl $1,$10,14 352b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic srl $2,$11,14 353b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic srl $24,$8,14 354b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic srl $25,$9,14 355b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $1,0x3fc 356b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $2,0x3fc 357b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $24,0x3fc 358b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $25,0x3fc 359b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $1,$7 360b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $2,$7 361b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $24,$7 362b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $25,$7 363b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwl $16,1($1) # Td2[s2>>8] 364b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwl $17,1($2) # Td2[s3>>8] 365b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwl $18,1($24) # Td2[s0>>8] 366b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwl $19,1($25) # Td2[s1>>8] 367b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwr $16,2($1) # Td2[s2>>8] 368b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwr $17,2($2) # Td2[s3>>8] 369b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwr $18,2($24) # Td2[s0>>8] 370b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwr $19,2($25) # Td2[s1>>8] 371b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 372b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic srl $1,$9,22 373b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic srl $2,$10,22 374b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic srl $24,$11,22 375b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic srl $25,$8,22 376b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $1,0x3fc 377b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $2,0x3fc 378b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $24,0x3fc 379b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $25,0x3fc 380b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $1,$7 381b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $2,$7 382b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $24,$7 383b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $25,$7 384b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwl $20,0($1) # Td3[s1] 385b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwl $21,0($2) # Td3[s2] 386b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwl $22,0($24) # Td3[s3] 387b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwl $23,0($25) # Td3[s0] 388b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwr $20,1($1) # Td3[s1] 389b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwr $21,1($2) # Td3[s2] 390b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwr $22,1($24) # Td3[s3] 391b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwr $23,1($25) # Td3[s0] 392b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 393b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sll $1,$8,2 394b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sll $2,$9,2 395b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sll $24,$10,2 396b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sll $25,$11,2 397b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $1,0x3fc 398b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $2,0x3fc 399b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $24,0x3fc 400b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $25,0x3fc 401b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $1,$7 402b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $2,$7 403b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $24,$7 404b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $25,$7 405b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 406b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $12,$16 407b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $13,$17 408b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $14,$18 409b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $15,$19 410b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 411b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 412b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $16,0($1) # Td0[s0>>24] 413b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $17,0($2) # Td0[s1>>24] 414b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $18,0($24) # Td0[s2>>24] 415b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $19,0($25) # Td0[s3>>24] 416b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 417b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $8,0($3) 418b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $9,4($3) 419b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $10,8($3) 420b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $11,12($3) 421b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 422b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $12,$20 423b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $13,$21 424b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $14,$22 425b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $15,$23 426b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 427b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $12,$16 428b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $13,$17 429b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $14,$18 430b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $15,$19 431b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 432b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sub $30,1 433b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $3,16 434b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $8,$12 435b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $9,$13 436b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $10,$14 437b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $11,$15 438b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic .set noreorder 439b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic bnez $30,.Loop_dec 440b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic srl $1,$11,6 441b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 442b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic .set reorder 443b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $16,1024($7) # prefetch Td4 444b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $17,1024+32($7) 445b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $18,1024+64($7) 446b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $19,1024+96($7) 447b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $20,1024+128($7) 448b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $21,1024+160($7) 449b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $22,1024+192($7) 450b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $23,1024+224($7) 451b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 452b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic srl $1,$11,8 453b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic srl $2,$8,8 454b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic srl $24,$9,8 455b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic srl $25,$10,8 456b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $1,0xff 457b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $2,0xff 458b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $24,0xff 459b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $25,0xff 460b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $1,$7 461b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $2,$7 462b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $24,$7 463b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $25,$7 464b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lbu $12,1024($1) # Td4[s3>>16] 465b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lbu $13,1024($2) # Td4[s0>>16] 466b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lbu $14,1024($24) # Td4[s1>>16] 467b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lbu $15,1024($25) # Td4[s2>>16] 468b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 469b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic srl $1,$10,16 470b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic srl $2,$11,16 471b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic srl $24,$8,16 472b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic srl $25,$9,16 473b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $1,0xff 474b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $2,0xff 475b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $24,0xff 476b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $25,0xff 477b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $1,$7 478b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $2,$7 479b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $24,$7 480b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $25,$7 481b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lbu $16,1024($1) # Td4[s2>>8] 482b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lbu $17,1024($2) # Td4[s3>>8] 483b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lbu $18,1024($24) # Td4[s0>>8] 484b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lbu $19,1024($25) # Td4[s1>>8] 485b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 486b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $1,$8,0xff 487b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $2,$9,0xff 488b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $24,$10,0xff 489b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $25,$11,0xff 490b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $1,$7 491b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $2,$7 492b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $24,$7 493b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $25,$7 494b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lbu $20,1024($1) # Td4[s0>>24] 495b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lbu $21,1024($2) # Td4[s1>>24] 496b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lbu $22,1024($24) # Td4[s2>>24] 497b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lbu $23,1024($25) # Td4[s3>>24] 498b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 499b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic srl $1,$9,24 500b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic srl $2,$10,24 501b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic srl $24,$11,24 502b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic srl $25,$8,24 503b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 504b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sll $12,$12,8 505b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sll $13,$13,8 506b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sll $14,$14,8 507b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sll $15,$15,8 508b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 509b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sll $16,$16,16 510b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sll $17,$17,16 511b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sll $18,$18,16 512b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sll $19,$19,16 513b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 514b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $12,$16 515b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $13,$17 516b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $14,$18 517b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $15,$19 518b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 519b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $1,$7 520b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $2,$7 521b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $24,$7 522b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $25,$7 523b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lbu $16,1024($1) # Td4[s1] 524b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lbu $17,1024($2) # Td4[s2] 525b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lbu $18,1024($24) # Td4[s3] 526b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lbu $19,1024($25) # Td4[s0] 527b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 528b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic #sll $20,$20,0 529b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic #sll $21,$21,0 530b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic #sll $22,$22,0 531b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic #sll $23,$23,0 532b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 533b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $8,0($3) 534b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $9,4($3) 535b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $10,8($3) 536b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $11,12($3) 537b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 538b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sll $16,$16,24 539b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sll $17,$17,24 540b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sll $18,$18,24 541b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sll $19,$19,24 542b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 543b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 544b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $12,$20 545b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $13,$21 546b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $14,$22 547b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $15,$23 548b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 549b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $12,$16 550b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $13,$17 551b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $14,$18 552b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $15,$19 553b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 554b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $8,$12 555b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $9,$13 556b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $10,$14 557b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $11,$15 558b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 559b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic jr $31 560b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.end _mips_AES_decrypt 561b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 562b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.align 5 563b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.globl AES_decrypt 564b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.ent AES_decrypt 565b83a02d94f9ba66fc5da46c2e27572674ea17931Petar JovanovicAES_decrypt: 566b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic .frame $29,64,$31 567b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic .mask 3237937152,-4 568b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic .set noreorder 5692178392bec7b69d0f469bce29f653c9fbd09b614Chris Dearman .cpload $25 570b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sub $29,64 571b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sw $31,64-1*4($29) 572b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sw $30,64-2*4($29) 573b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sw $23,64-3*4($29) 574b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sw $22,64-4*4($29) 575b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sw $21,64-5*4($29) 576b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sw $20,64-6*4($29) 577b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sw $19,64-7*4($29) 578b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sw $18,64-8*4($29) 579b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sw $17,64-9*4($29) 580b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sw $16,64-10*4($29) 581b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic .set reorder 582b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic la $7,AES_Td # PIC-ified 'load address' 583b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 584b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwl $8,0+3($4) 585b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwl $9,4+3($4) 586b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwl $10,8+3($4) 587b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwl $11,12+3($4) 588b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwr $8,0+0($4) 589b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwr $9,4+0($4) 590b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwr $10,8+0($4) 591b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwr $11,12+0($4) 592b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 593b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic bal _mips_AES_decrypt 594b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 595b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic swr $8,0+0($5) 596b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic swr $9,4+0($5) 597b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic swr $10,8+0($5) 598b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic swr $11,12+0($5) 599b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic swl $8,0+3($5) 600b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic swl $9,4+3($5) 601b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic swl $10,8+3($5) 602b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic swl $11,12+3($5) 603b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 604b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic .set noreorder 605b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $31,64-1*4($29) 606b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $30,64-2*4($29) 607b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $23,64-3*4($29) 608b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $22,64-4*4($29) 609b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $21,64-5*4($29) 610b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $20,64-6*4($29) 611b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $19,64-7*4($29) 612b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $18,64-8*4($29) 613b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $17,64-9*4($29) 614b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $16,64-10*4($29) 615b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic jr $31 616b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $29,64 617b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.end AES_decrypt 618b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.align 5 619b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.ent _mips_AES_set_encrypt_key 620b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic_mips_AES_set_encrypt_key: 621b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic .frame $29,0,$31 622b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic .set noreorder 623b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic beqz $4,.Lekey_done 624b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic li $2,-1 625b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic beqz $6,.Lekey_done 626b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $3,$7,1024+256 627b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 628b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic .set reorder 629b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwl $8,0+3($4) # load 128 bits 630b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwl $9,4+3($4) 631b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwl $10,8+3($4) 632b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwl $11,12+3($4) 633b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic li $1,128 634b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwr $8,0+0($4) 635b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwr $9,4+0($4) 636b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwr $10,8+0($4) 637b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwr $11,12+0($4) 638b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic .set noreorder 639b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic beq $5,$1,.L128bits 640b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic li $30,10 641b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 642b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic .set reorder 643b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwl $12,16+3($4) # load 192 bits 644b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwl $13,20+3($4) 645b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic li $1,192 646b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwr $12,16+0($4) 647b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwr $13,20+0($4) 648b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic .set noreorder 649b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic beq $5,$1,.L192bits 650b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic li $30,8 651b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 652b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic .set reorder 653b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwl $14,24+3($4) # load 256 bits 654b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwl $15,28+3($4) 655b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic li $1,256 656b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwr $14,24+0($4) 657b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lwr $15,28+0($4) 658b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic .set noreorder 659b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic beq $5,$1,.L256bits 660b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic li $30,7 661b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 662b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic b .Lekey_done 663b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic li $2,-2 664b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 665b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.align 4 666b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.L128bits: 667b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic .set reorder 668b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic srl $1,$11,16 669b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic srl $2,$11,8 670b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $1,0xff 671b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $2,0xff 672b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $24,$11,0xff 673b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic srl $25,$11,24 674b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $1,$7 675b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $2,$7 676b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $24,$7 677b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $25,$7 678b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lbu $1,1024($1) 679b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lbu $2,1024($2) 680b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lbu $24,1024($24) 681b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lbu $25,1024($25) 682b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 683b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sw $8,0($6) 684b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sw $9,4($6) 685b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sw $10,8($6) 686b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sw $11,12($6) 687b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sub $30,1 688b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $6,16 689b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 690b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sll $1,$1,8 691b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic #sll $2,$2,0 692b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sll $24,$24,24 693b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sll $25,$25,16 694b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 695b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $8,$1 696b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $1,0($3) 697b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $8,$2 698b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $8,$24 699b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $8,$25 700b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $8,$1 701b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 702b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $9,$8 703b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $10,$9 704b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $11,$10 705b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 706b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic .set noreorder 707b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic bnez $30,.L128bits 708b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $3,4 709b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 710b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sw $8,0($6) 711b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sw $9,4($6) 712b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sw $10,8($6) 713b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic li $30,10 714b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sw $11,12($6) 715b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic li $2,0 716b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sw $30,80($6) 717b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic b .Lekey_done 718b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sub $6,10*16 719b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 720b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.align 4 721b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.L192bits: 722b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic .set reorder 723b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic srl $1,$13,16 724b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic srl $2,$13,8 725b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $1,0xff 726b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $2,0xff 727b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $24,$13,0xff 728b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic srl $25,$13,24 729b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $1,$7 730b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $2,$7 731b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $24,$7 732b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $25,$7 733b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lbu $1,1024($1) 734b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lbu $2,1024($2) 735b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lbu $24,1024($24) 736b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lbu $25,1024($25) 737b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 738b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sw $8,0($6) 739b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sw $9,4($6) 740b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sw $10,8($6) 741b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sw $11,12($6) 742b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sw $12,16($6) 743b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sw $13,20($6) 744b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sub $30,1 745b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $6,24 746b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 747b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sll $1,$1,8 748b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic #sll $2,$2,0 749b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sll $24,$24,24 750b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sll $25,$25,16 751b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 752b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $8,$1 753b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $1,0($3) 754b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $8,$2 755b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $8,$24 756b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $8,$25 757b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $8,$1 758b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 759b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $9,$8 760b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $10,$9 761b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $11,$10 762b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $12,$11 763b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $13,$12 764b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 765b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic .set noreorder 766b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic bnez $30,.L192bits 767b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $3,4 768b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 769b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sw $8,0($6) 770b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sw $9,4($6) 771b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sw $10,8($6) 772b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic li $30,12 773b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sw $11,12($6) 774b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic li $2,0 775b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sw $30,48($6) 776b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic b .Lekey_done 777b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sub $6,12*16 778b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 779b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.align 4 780b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.L256bits: 781b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic .set reorder 782b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic srl $1,$15,16 783b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic srl $2,$15,8 784b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $1,0xff 785b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $2,0xff 786b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $24,$15,0xff 787b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic srl $25,$15,24 788b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $1,$7 789b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $2,$7 790b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $24,$7 791b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $25,$7 792b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lbu $1,1024($1) 793b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lbu $2,1024($2) 794b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lbu $24,1024($24) 795b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lbu $25,1024($25) 796b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 797b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sw $8,0($6) 798b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sw $9,4($6) 799b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sw $10,8($6) 800b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sw $11,12($6) 801b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sw $12,16($6) 802b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sw $13,20($6) 803b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sw $14,24($6) 804b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sw $15,28($6) 805b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sub $30,1 806b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 807b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sll $1,$1,8 808b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic #sll $2,$2,0 809b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sll $24,$24,24 810b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sll $25,$25,16 811b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 812b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $8,$1 813b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $1,0($3) 814b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $8,$2 815b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $8,$24 816b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $8,$25 817b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $8,$1 818b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 819b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $9,$8 820b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $10,$9 821b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $11,$10 822b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic beqz $30,.L256bits_done 823b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 824b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic srl $1,$11,24 825b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic srl $2,$11,16 826b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic srl $24,$11,8 827b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $25,$11,0xff 828b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $2,0xff 829b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $24,0xff 830b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $1,$7 831b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $2,$7 832b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $24,$7 833b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $25,$7 834b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lbu $1,1024($1) 835b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lbu $2,1024($2) 836b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lbu $24,1024($24) 837b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lbu $25,1024($25) 838b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sll $1,24 839b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sll $2,16 840b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sll $24,8 841b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 842b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $12,$1 843b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $12,$2 844b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $12,$24 845b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $12,$25 846b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 847b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $13,$12 848b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $14,$13 849b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $15,$14 850b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 851b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $6,32 852b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic .set noreorder 853b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic b .L256bits 854b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $3,4 855b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 856b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.L256bits_done: 857b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sw $8,32($6) 858b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sw $9,36($6) 859b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sw $10,40($6) 860b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic li $30,14 861b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sw $11,44($6) 862b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic li $2,0 863b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sw $30,48($6) 864b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sub $6,12*16 865b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 866b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.Lekey_done: 867b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic jr $31 868b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic nop 869b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.end _mips_AES_set_encrypt_key 870b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 8712178392bec7b69d0f469bce29f653c9fbd09b614Chris Dearman.globl private_AES_set_encrypt_key 8722178392bec7b69d0f469bce29f653c9fbd09b614Chris Dearman.ent private_AES_set_encrypt_key 8732178392bec7b69d0f469bce29f653c9fbd09b614Chris Dearmanprivate_AES_set_encrypt_key: 874b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic .frame $29,32,$31 875b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic .mask 3221225472,-4 876b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic .set noreorder 8772178392bec7b69d0f469bce29f653c9fbd09b614Chris Dearman .cpload $25 878b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sub $29,32 879b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sw $31,32-1*4($29) 880b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sw $30,32-2*4($29) 881b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic .set reorder 882b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic la $7,AES_Te # PIC-ified 'load address' 883b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 884b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic bal _mips_AES_set_encrypt_key 885b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 886b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic .set noreorder 887b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic move $4,$2 888b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $31,32-1*4($29) 889b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $30,32-2*4($29) 890b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic jr $31 891b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $29,32 8922178392bec7b69d0f469bce29f653c9fbd09b614Chris Dearman.end private_AES_set_encrypt_key 893b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.align 5 8942178392bec7b69d0f469bce29f653c9fbd09b614Chris Dearman.globl private_AES_set_decrypt_key 8952178392bec7b69d0f469bce29f653c9fbd09b614Chris Dearman.ent private_AES_set_decrypt_key 8962178392bec7b69d0f469bce29f653c9fbd09b614Chris Dearmanprivate_AES_set_decrypt_key: 897b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic .frame $29,32,$31 898b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic .mask 3221225472,-4 899b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic .set noreorder 9002178392bec7b69d0f469bce29f653c9fbd09b614Chris Dearman .cpload $25 901b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sub $29,32 902b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sw $31,32-1*4($29) 903b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sw $30,32-2*4($29) 904b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic .set reorder 905b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic la $7,AES_Te # PIC-ified 'load address' 906b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 907b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic bal _mips_AES_set_encrypt_key 908b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 909b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic bltz $2,.Ldkey_done 910b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 911b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sll $1,$30,4 912b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $4,$6,0 913b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $5,$6,$1 914b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.align 4 915b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.Lswap: 916b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $8,0($4) 917b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $9,4($4) 918b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $10,8($4) 919b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $11,12($4) 920b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $12,0($5) 921b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $13,4($5) 922b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $14,8($5) 923b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $15,12($5) 924b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sw $8,0($5) 925b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sw $9,4($5) 926b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sw $10,8($5) 927b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sw $11,12($5) 928b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $4,16 929b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sub $5,16 930b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sw $12,-16($4) 931b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sw $13,-12($4) 932b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sw $14,-8($4) 933b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sw $15,-4($4) 934b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic bne $4,$5,.Lswap 935b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 936b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $8,16($6) # modulo-scheduled 937b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lui $2,0x8080 938b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sub $30,1 939b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic or $2,0x8080 940b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sll $30,2 941b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $6,16 942b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lui $25,0x1b1b 943b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic nor $24,$0,$2 944b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic or $25,0x1b1b 945b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.align 4 946b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.Lmix: 947b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $1,$8,$2 948b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $9,$8,$24 949b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic srl $10,$1,7 950b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic addu $9,$9 # tp2<<1 951b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic subu $1,$10 952b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $1,$25 953b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $9,$1 954b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 955b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $1,$9,$2 956b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $10,$9,$24 957b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic srl $11,$1,7 958b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic addu $10,$10 # tp4<<1 959b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic subu $1,$11 960b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $1,$25 961b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $10,$1 962b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 963b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $1,$10,$2 964b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $11,$10,$24 965b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic srl $12,$1,7 966b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic addu $11,$11 # tp8<<1 967b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic subu $1,$12 968b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic and $1,$25 969b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $11,$1 970b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 971b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $12,$11,$8 972b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $15,$11,$10 973b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $13,$12,$9 974b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $14,$12,$10 975b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 976b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sll $8,$14,16 977b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $15,$9 978b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic srl $9,$14,16 979b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $15,$8 980b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sll $8,$12,8 981b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $15,$9 982b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic srl $9,$12,24 983b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $15,$8 984b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sll $8,$13,24 985b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $15,$9 986b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic srl $9,$13,8 987b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $15,$8 988b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $8,4($6) # modulo-scheduled 989b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic xor $15,$9 990b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sub $30,1 991b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic sw $15,0($6) 992b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $6,4 993b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic bnez $30,.Lmix 994b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 995b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic li $2,0 996b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.Ldkey_done: 997b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic .set noreorder 998b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic move $4,$2 999b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $31,32-1*4($29) 1000b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic lw $30,32-2*4($29) 1001b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic jr $31 1002b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic add $29,32 10032178392bec7b69d0f469bce29f653c9fbd09b614Chris Dearman.end private_AES_set_decrypt_key 1004b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.rdata 1005b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.align 6 1006b83a02d94f9ba66fc5da46c2e27572674ea17931Petar JovanovicAES_Te: 1007b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xc6,0x63,0x63,0xa5, 0xf8,0x7c,0x7c,0x84 # Te0 1008b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xee,0x77,0x77,0x99, 0xf6,0x7b,0x7b,0x8d 1009b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xff,0xf2,0xf2,0x0d, 0xd6,0x6b,0x6b,0xbd 1010b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xde,0x6f,0x6f,0xb1, 0x91,0xc5,0xc5,0x54 1011b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x60,0x30,0x30,0x50, 0x02,0x01,0x01,0x03 1012b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xce,0x67,0x67,0xa9, 0x56,0x2b,0x2b,0x7d 1013b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xe7,0xfe,0xfe,0x19, 0xb5,0xd7,0xd7,0x62 1014b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x4d,0xab,0xab,0xe6, 0xec,0x76,0x76,0x9a 1015b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x8f,0xca,0xca,0x45, 0x1f,0x82,0x82,0x9d 1016b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x89,0xc9,0xc9,0x40, 0xfa,0x7d,0x7d,0x87 1017b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xef,0xfa,0xfa,0x15, 0xb2,0x59,0x59,0xeb 1018b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x8e,0x47,0x47,0xc9, 0xfb,0xf0,0xf0,0x0b 1019b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x41,0xad,0xad,0xec, 0xb3,0xd4,0xd4,0x67 1020b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x5f,0xa2,0xa2,0xfd, 0x45,0xaf,0xaf,0xea 1021b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x23,0x9c,0x9c,0xbf, 0x53,0xa4,0xa4,0xf7 1022b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xe4,0x72,0x72,0x96, 0x9b,0xc0,0xc0,0x5b 1023b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x75,0xb7,0xb7,0xc2, 0xe1,0xfd,0xfd,0x1c 1024b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x3d,0x93,0x93,0xae, 0x4c,0x26,0x26,0x6a 1025b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x6c,0x36,0x36,0x5a, 0x7e,0x3f,0x3f,0x41 1026b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xf5,0xf7,0xf7,0x02, 0x83,0xcc,0xcc,0x4f 1027b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x68,0x34,0x34,0x5c, 0x51,0xa5,0xa5,0xf4 1028b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xd1,0xe5,0xe5,0x34, 0xf9,0xf1,0xf1,0x08 1029b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xe2,0x71,0x71,0x93, 0xab,0xd8,0xd8,0x73 1030b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x62,0x31,0x31,0x53, 0x2a,0x15,0x15,0x3f 1031b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x08,0x04,0x04,0x0c, 0x95,0xc7,0xc7,0x52 1032b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x46,0x23,0x23,0x65, 0x9d,0xc3,0xc3,0x5e 1033b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x30,0x18,0x18,0x28, 0x37,0x96,0x96,0xa1 1034b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x0a,0x05,0x05,0x0f, 0x2f,0x9a,0x9a,0xb5 1035b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x0e,0x07,0x07,0x09, 0x24,0x12,0x12,0x36 1036b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x1b,0x80,0x80,0x9b, 0xdf,0xe2,0xe2,0x3d 1037b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xcd,0xeb,0xeb,0x26, 0x4e,0x27,0x27,0x69 1038b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x7f,0xb2,0xb2,0xcd, 0xea,0x75,0x75,0x9f 1039b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x12,0x09,0x09,0x1b, 0x1d,0x83,0x83,0x9e 1040b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x58,0x2c,0x2c,0x74, 0x34,0x1a,0x1a,0x2e 1041b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x36,0x1b,0x1b,0x2d, 0xdc,0x6e,0x6e,0xb2 1042b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xb4,0x5a,0x5a,0xee, 0x5b,0xa0,0xa0,0xfb 1043b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xa4,0x52,0x52,0xf6, 0x76,0x3b,0x3b,0x4d 1044b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xb7,0xd6,0xd6,0x61, 0x7d,0xb3,0xb3,0xce 1045b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x52,0x29,0x29,0x7b, 0xdd,0xe3,0xe3,0x3e 1046b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x5e,0x2f,0x2f,0x71, 0x13,0x84,0x84,0x97 1047b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xa6,0x53,0x53,0xf5, 0xb9,0xd1,0xd1,0x68 1048b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x00,0x00,0x00,0x00, 0xc1,0xed,0xed,0x2c 1049b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x40,0x20,0x20,0x60, 0xe3,0xfc,0xfc,0x1f 1050b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x79,0xb1,0xb1,0xc8, 0xb6,0x5b,0x5b,0xed 1051b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xd4,0x6a,0x6a,0xbe, 0x8d,0xcb,0xcb,0x46 1052b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x67,0xbe,0xbe,0xd9, 0x72,0x39,0x39,0x4b 1053b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x94,0x4a,0x4a,0xde, 0x98,0x4c,0x4c,0xd4 1054b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xb0,0x58,0x58,0xe8, 0x85,0xcf,0xcf,0x4a 1055b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xbb,0xd0,0xd0,0x6b, 0xc5,0xef,0xef,0x2a 1056b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x4f,0xaa,0xaa,0xe5, 0xed,0xfb,0xfb,0x16 1057b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x86,0x43,0x43,0xc5, 0x9a,0x4d,0x4d,0xd7 1058b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x66,0x33,0x33,0x55, 0x11,0x85,0x85,0x94 1059b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x8a,0x45,0x45,0xcf, 0xe9,0xf9,0xf9,0x10 1060b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x04,0x02,0x02,0x06, 0xfe,0x7f,0x7f,0x81 1061b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xa0,0x50,0x50,0xf0, 0x78,0x3c,0x3c,0x44 1062b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x25,0x9f,0x9f,0xba, 0x4b,0xa8,0xa8,0xe3 1063b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xa2,0x51,0x51,0xf3, 0x5d,0xa3,0xa3,0xfe 1064b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x80,0x40,0x40,0xc0, 0x05,0x8f,0x8f,0x8a 1065b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x3f,0x92,0x92,0xad, 0x21,0x9d,0x9d,0xbc 1066b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x70,0x38,0x38,0x48, 0xf1,0xf5,0xf5,0x04 1067b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x63,0xbc,0xbc,0xdf, 0x77,0xb6,0xb6,0xc1 1068b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xaf,0xda,0xda,0x75, 0x42,0x21,0x21,0x63 1069b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x20,0x10,0x10,0x30, 0xe5,0xff,0xff,0x1a 1070b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xfd,0xf3,0xf3,0x0e, 0xbf,0xd2,0xd2,0x6d 1071b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x81,0xcd,0xcd,0x4c, 0x18,0x0c,0x0c,0x14 1072b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x26,0x13,0x13,0x35, 0xc3,0xec,0xec,0x2f 1073b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xbe,0x5f,0x5f,0xe1, 0x35,0x97,0x97,0xa2 1074b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x88,0x44,0x44,0xcc, 0x2e,0x17,0x17,0x39 1075b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x93,0xc4,0xc4,0x57, 0x55,0xa7,0xa7,0xf2 1076b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xfc,0x7e,0x7e,0x82, 0x7a,0x3d,0x3d,0x47 1077b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xc8,0x64,0x64,0xac, 0xba,0x5d,0x5d,0xe7 1078b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x32,0x19,0x19,0x2b, 0xe6,0x73,0x73,0x95 1079b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xc0,0x60,0x60,0xa0, 0x19,0x81,0x81,0x98 1080b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x9e,0x4f,0x4f,0xd1, 0xa3,0xdc,0xdc,0x7f 1081b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x44,0x22,0x22,0x66, 0x54,0x2a,0x2a,0x7e 1082b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x3b,0x90,0x90,0xab, 0x0b,0x88,0x88,0x83 1083b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x8c,0x46,0x46,0xca, 0xc7,0xee,0xee,0x29 1084b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x6b,0xb8,0xb8,0xd3, 0x28,0x14,0x14,0x3c 1085b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xa7,0xde,0xde,0x79, 0xbc,0x5e,0x5e,0xe2 1086b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x16,0x0b,0x0b,0x1d, 0xad,0xdb,0xdb,0x76 1087b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xdb,0xe0,0xe0,0x3b, 0x64,0x32,0x32,0x56 1088b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x74,0x3a,0x3a,0x4e, 0x14,0x0a,0x0a,0x1e 1089b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x92,0x49,0x49,0xdb, 0x0c,0x06,0x06,0x0a 1090b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x48,0x24,0x24,0x6c, 0xb8,0x5c,0x5c,0xe4 1091b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x9f,0xc2,0xc2,0x5d, 0xbd,0xd3,0xd3,0x6e 1092b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x43,0xac,0xac,0xef, 0xc4,0x62,0x62,0xa6 1093b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x39,0x91,0x91,0xa8, 0x31,0x95,0x95,0xa4 1094b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xd3,0xe4,0xe4,0x37, 0xf2,0x79,0x79,0x8b 1095b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xd5,0xe7,0xe7,0x32, 0x8b,0xc8,0xc8,0x43 1096b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x6e,0x37,0x37,0x59, 0xda,0x6d,0x6d,0xb7 1097b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x01,0x8d,0x8d,0x8c, 0xb1,0xd5,0xd5,0x64 1098b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x9c,0x4e,0x4e,0xd2, 0x49,0xa9,0xa9,0xe0 1099b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xd8,0x6c,0x6c,0xb4, 0xac,0x56,0x56,0xfa 1100b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xf3,0xf4,0xf4,0x07, 0xcf,0xea,0xea,0x25 1101b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xca,0x65,0x65,0xaf, 0xf4,0x7a,0x7a,0x8e 1102b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x47,0xae,0xae,0xe9, 0x10,0x08,0x08,0x18 1103b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x6f,0xba,0xba,0xd5, 0xf0,0x78,0x78,0x88 1104b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x4a,0x25,0x25,0x6f, 0x5c,0x2e,0x2e,0x72 1105b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x38,0x1c,0x1c,0x24, 0x57,0xa6,0xa6,0xf1 1106b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x73,0xb4,0xb4,0xc7, 0x97,0xc6,0xc6,0x51 1107b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xcb,0xe8,0xe8,0x23, 0xa1,0xdd,0xdd,0x7c 1108b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xe8,0x74,0x74,0x9c, 0x3e,0x1f,0x1f,0x21 1109b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x96,0x4b,0x4b,0xdd, 0x61,0xbd,0xbd,0xdc 1110b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x0d,0x8b,0x8b,0x86, 0x0f,0x8a,0x8a,0x85 1111b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xe0,0x70,0x70,0x90, 0x7c,0x3e,0x3e,0x42 1112b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x71,0xb5,0xb5,0xc4, 0xcc,0x66,0x66,0xaa 1113b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x90,0x48,0x48,0xd8, 0x06,0x03,0x03,0x05 1114b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xf7,0xf6,0xf6,0x01, 0x1c,0x0e,0x0e,0x12 1115b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xc2,0x61,0x61,0xa3, 0x6a,0x35,0x35,0x5f 1116b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xae,0x57,0x57,0xf9, 0x69,0xb9,0xb9,0xd0 1117b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x17,0x86,0x86,0x91, 0x99,0xc1,0xc1,0x58 1118b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x3a,0x1d,0x1d,0x27, 0x27,0x9e,0x9e,0xb9 1119b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xd9,0xe1,0xe1,0x38, 0xeb,0xf8,0xf8,0x13 1120b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x2b,0x98,0x98,0xb3, 0x22,0x11,0x11,0x33 1121b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xd2,0x69,0x69,0xbb, 0xa9,0xd9,0xd9,0x70 1122b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x07,0x8e,0x8e,0x89, 0x33,0x94,0x94,0xa7 1123b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x2d,0x9b,0x9b,0xb6, 0x3c,0x1e,0x1e,0x22 1124b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x15,0x87,0x87,0x92, 0xc9,0xe9,0xe9,0x20 1125b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x87,0xce,0xce,0x49, 0xaa,0x55,0x55,0xff 1126b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x50,0x28,0x28,0x78, 0xa5,0xdf,0xdf,0x7a 1127b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x03,0x8c,0x8c,0x8f, 0x59,0xa1,0xa1,0xf8 1128b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x09,0x89,0x89,0x80, 0x1a,0x0d,0x0d,0x17 1129b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x65,0xbf,0xbf,0xda, 0xd7,0xe6,0xe6,0x31 1130b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x84,0x42,0x42,0xc6, 0xd0,0x68,0x68,0xb8 1131b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x82,0x41,0x41,0xc3, 0x29,0x99,0x99,0xb0 1132b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x5a,0x2d,0x2d,0x77, 0x1e,0x0f,0x0f,0x11 1133b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x7b,0xb0,0xb0,0xcb, 0xa8,0x54,0x54,0xfc 1134b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x6d,0xbb,0xbb,0xd6, 0x2c,0x16,0x16,0x3a 1135b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 1136b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x63, 0x7c, 0x77, 0x7b, 0xf2, 0x6b, 0x6f, 0xc5 # Te4 1137b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x30, 0x01, 0x67, 0x2b, 0xfe, 0xd7, 0xab, 0x76 1138b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xca, 0x82, 0xc9, 0x7d, 0xfa, 0x59, 0x47, 0xf0 1139b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xad, 0xd4, 0xa2, 0xaf, 0x9c, 0xa4, 0x72, 0xc0 1140b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xb7, 0xfd, 0x93, 0x26, 0x36, 0x3f, 0xf7, 0xcc 1141b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x34, 0xa5, 0xe5, 0xf1, 0x71, 0xd8, 0x31, 0x15 1142b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x04, 0xc7, 0x23, 0xc3, 0x18, 0x96, 0x05, 0x9a 1143b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x07, 0x12, 0x80, 0xe2, 0xeb, 0x27, 0xb2, 0x75 1144b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x09, 0x83, 0x2c, 0x1a, 0x1b, 0x6e, 0x5a, 0xa0 1145b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x52, 0x3b, 0xd6, 0xb3, 0x29, 0xe3, 0x2f, 0x84 1146b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x53, 0xd1, 0x00, 0xed, 0x20, 0xfc, 0xb1, 0x5b 1147b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x6a, 0xcb, 0xbe, 0x39, 0x4a, 0x4c, 0x58, 0xcf 1148b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xd0, 0xef, 0xaa, 0xfb, 0x43, 0x4d, 0x33, 0x85 1149b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x45, 0xf9, 0x02, 0x7f, 0x50, 0x3c, 0x9f, 0xa8 1150b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x51, 0xa3, 0x40, 0x8f, 0x92, 0x9d, 0x38, 0xf5 1151b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xbc, 0xb6, 0xda, 0x21, 0x10, 0xff, 0xf3, 0xd2 1152b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xcd, 0x0c, 0x13, 0xec, 0x5f, 0x97, 0x44, 0x17 1153b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xc4, 0xa7, 0x7e, 0x3d, 0x64, 0x5d, 0x19, 0x73 1154b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x60, 0x81, 0x4f, 0xdc, 0x22, 0x2a, 0x90, 0x88 1155b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x46, 0xee, 0xb8, 0x14, 0xde, 0x5e, 0x0b, 0xdb 1156b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xe0, 0x32, 0x3a, 0x0a, 0x49, 0x06, 0x24, 0x5c 1157b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xc2, 0xd3, 0xac, 0x62, 0x91, 0x95, 0xe4, 0x79 1158b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xe7, 0xc8, 0x37, 0x6d, 0x8d, 0xd5, 0x4e, 0xa9 1159b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x6c, 0x56, 0xf4, 0xea, 0x65, 0x7a, 0xae, 0x08 1160b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xba, 0x78, 0x25, 0x2e, 0x1c, 0xa6, 0xb4, 0xc6 1161b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xe8, 0xdd, 0x74, 0x1f, 0x4b, 0xbd, 0x8b, 0x8a 1162b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x70, 0x3e, 0xb5, 0x66, 0x48, 0x03, 0xf6, 0x0e 1163b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x61, 0x35, 0x57, 0xb9, 0x86, 0xc1, 0x1d, 0x9e 1164b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xe1, 0xf8, 0x98, 0x11, 0x69, 0xd9, 0x8e, 0x94 1165b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x9b, 0x1e, 0x87, 0xe9, 0xce, 0x55, 0x28, 0xdf 1166b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x8c, 0xa1, 0x89, 0x0d, 0xbf, 0xe6, 0x42, 0x68 1167b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x41, 0x99, 0x2d, 0x0f, 0xb0, 0x54, 0xbb, 0x16 1168b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 1169b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x01,0x00,0x00,0x00, 0x02,0x00,0x00,0x00 # rcon 1170b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x04,0x00,0x00,0x00, 0x08,0x00,0x00,0x00 1171b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x10,0x00,0x00,0x00, 0x20,0x00,0x00,0x00 1172b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x40,0x00,0x00,0x00, 0x80,0x00,0x00,0x00 1173b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x1B,0x00,0x00,0x00, 0x36,0x00,0x00,0x00 1174b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 1175b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.align 6 1176b83a02d94f9ba66fc5da46c2e27572674ea17931Petar JovanovicAES_Td: 1177b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x51,0xf4,0xa7,0x50, 0x7e,0x41,0x65,0x53 # Td0 1178b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x1a,0x17,0xa4,0xc3, 0x3a,0x27,0x5e,0x96 1179b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x3b,0xab,0x6b,0xcb, 0x1f,0x9d,0x45,0xf1 1180b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xac,0xfa,0x58,0xab, 0x4b,0xe3,0x03,0x93 1181b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x20,0x30,0xfa,0x55, 0xad,0x76,0x6d,0xf6 1182b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x88,0xcc,0x76,0x91, 0xf5,0x02,0x4c,0x25 1183b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x4f,0xe5,0xd7,0xfc, 0xc5,0x2a,0xcb,0xd7 1184b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x26,0x35,0x44,0x80, 0xb5,0x62,0xa3,0x8f 1185b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xde,0xb1,0x5a,0x49, 0x25,0xba,0x1b,0x67 1186b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x45,0xea,0x0e,0x98, 0x5d,0xfe,0xc0,0xe1 1187b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xc3,0x2f,0x75,0x02, 0x81,0x4c,0xf0,0x12 1188b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x8d,0x46,0x97,0xa3, 0x6b,0xd3,0xf9,0xc6 1189b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x03,0x8f,0x5f,0xe7, 0x15,0x92,0x9c,0x95 1190b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xbf,0x6d,0x7a,0xeb, 0x95,0x52,0x59,0xda 1191b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xd4,0xbe,0x83,0x2d, 0x58,0x74,0x21,0xd3 1192b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x49,0xe0,0x69,0x29, 0x8e,0xc9,0xc8,0x44 1193b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x75,0xc2,0x89,0x6a, 0xf4,0x8e,0x79,0x78 1194b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x99,0x58,0x3e,0x6b, 0x27,0xb9,0x71,0xdd 1195b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xbe,0xe1,0x4f,0xb6, 0xf0,0x88,0xad,0x17 1196b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xc9,0x20,0xac,0x66, 0x7d,0xce,0x3a,0xb4 1197b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x63,0xdf,0x4a,0x18, 0xe5,0x1a,0x31,0x82 1198b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x97,0x51,0x33,0x60, 0x62,0x53,0x7f,0x45 1199b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xb1,0x64,0x77,0xe0, 0xbb,0x6b,0xae,0x84 1200b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xfe,0x81,0xa0,0x1c, 0xf9,0x08,0x2b,0x94 1201b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x70,0x48,0x68,0x58, 0x8f,0x45,0xfd,0x19 1202b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x94,0xde,0x6c,0x87, 0x52,0x7b,0xf8,0xb7 1203b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xab,0x73,0xd3,0x23, 0x72,0x4b,0x02,0xe2 1204b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xe3,0x1f,0x8f,0x57, 0x66,0x55,0xab,0x2a 1205b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xb2,0xeb,0x28,0x07, 0x2f,0xb5,0xc2,0x03 1206b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x86,0xc5,0x7b,0x9a, 0xd3,0x37,0x08,0xa5 1207b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x30,0x28,0x87,0xf2, 0x23,0xbf,0xa5,0xb2 1208b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x02,0x03,0x6a,0xba, 0xed,0x16,0x82,0x5c 1209b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x8a,0xcf,0x1c,0x2b, 0xa7,0x79,0xb4,0x92 1210b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xf3,0x07,0xf2,0xf0, 0x4e,0x69,0xe2,0xa1 1211b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x65,0xda,0xf4,0xcd, 0x06,0x05,0xbe,0xd5 1212b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xd1,0x34,0x62,0x1f, 0xc4,0xa6,0xfe,0x8a 1213b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x34,0x2e,0x53,0x9d, 0xa2,0xf3,0x55,0xa0 1214b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x05,0x8a,0xe1,0x32, 0xa4,0xf6,0xeb,0x75 1215b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x0b,0x83,0xec,0x39, 0x40,0x60,0xef,0xaa 1216b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x5e,0x71,0x9f,0x06, 0xbd,0x6e,0x10,0x51 1217b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x3e,0x21,0x8a,0xf9, 0x96,0xdd,0x06,0x3d 1218b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xdd,0x3e,0x05,0xae, 0x4d,0xe6,0xbd,0x46 1219b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x91,0x54,0x8d,0xb5, 0x71,0xc4,0x5d,0x05 1220b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x04,0x06,0xd4,0x6f, 0x60,0x50,0x15,0xff 1221b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x19,0x98,0xfb,0x24, 0xd6,0xbd,0xe9,0x97 1222b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x89,0x40,0x43,0xcc, 0x67,0xd9,0x9e,0x77 1223b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xb0,0xe8,0x42,0xbd, 0x07,0x89,0x8b,0x88 1224b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xe7,0x19,0x5b,0x38, 0x79,0xc8,0xee,0xdb 1225b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xa1,0x7c,0x0a,0x47, 0x7c,0x42,0x0f,0xe9 1226b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xf8,0x84,0x1e,0xc9, 0x00,0x00,0x00,0x00 1227b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x09,0x80,0x86,0x83, 0x32,0x2b,0xed,0x48 1228b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x1e,0x11,0x70,0xac, 0x6c,0x5a,0x72,0x4e 1229b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xfd,0x0e,0xff,0xfb, 0x0f,0x85,0x38,0x56 1230b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x3d,0xae,0xd5,0x1e, 0x36,0x2d,0x39,0x27 1231b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x0a,0x0f,0xd9,0x64, 0x68,0x5c,0xa6,0x21 1232b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x9b,0x5b,0x54,0xd1, 0x24,0x36,0x2e,0x3a 1233b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x0c,0x0a,0x67,0xb1, 0x93,0x57,0xe7,0x0f 1234b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xb4,0xee,0x96,0xd2, 0x1b,0x9b,0x91,0x9e 1235b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x80,0xc0,0xc5,0x4f, 0x61,0xdc,0x20,0xa2 1236b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x5a,0x77,0x4b,0x69, 0x1c,0x12,0x1a,0x16 1237b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xe2,0x93,0xba,0x0a, 0xc0,0xa0,0x2a,0xe5 1238b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x3c,0x22,0xe0,0x43, 0x12,0x1b,0x17,0x1d 1239b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x0e,0x09,0x0d,0x0b, 0xf2,0x8b,0xc7,0xad 1240b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x2d,0xb6,0xa8,0xb9, 0x14,0x1e,0xa9,0xc8 1241b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x57,0xf1,0x19,0x85, 0xaf,0x75,0x07,0x4c 1242b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xee,0x99,0xdd,0xbb, 0xa3,0x7f,0x60,0xfd 1243b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xf7,0x01,0x26,0x9f, 0x5c,0x72,0xf5,0xbc 1244b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x44,0x66,0x3b,0xc5, 0x5b,0xfb,0x7e,0x34 1245b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x8b,0x43,0x29,0x76, 0xcb,0x23,0xc6,0xdc 1246b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xb6,0xed,0xfc,0x68, 0xb8,0xe4,0xf1,0x63 1247b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xd7,0x31,0xdc,0xca, 0x42,0x63,0x85,0x10 1248b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x13,0x97,0x22,0x40, 0x84,0xc6,0x11,0x20 1249b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x85,0x4a,0x24,0x7d, 0xd2,0xbb,0x3d,0xf8 1250b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xae,0xf9,0x32,0x11, 0xc7,0x29,0xa1,0x6d 1251b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x1d,0x9e,0x2f,0x4b, 0xdc,0xb2,0x30,0xf3 1252b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x0d,0x86,0x52,0xec, 0x77,0xc1,0xe3,0xd0 1253b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x2b,0xb3,0x16,0x6c, 0xa9,0x70,0xb9,0x99 1254b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x11,0x94,0x48,0xfa, 0x47,0xe9,0x64,0x22 1255b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xa8,0xfc,0x8c,0xc4, 0xa0,0xf0,0x3f,0x1a 1256b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x56,0x7d,0x2c,0xd8, 0x22,0x33,0x90,0xef 1257b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x87,0x49,0x4e,0xc7, 0xd9,0x38,0xd1,0xc1 1258b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x8c,0xca,0xa2,0xfe, 0x98,0xd4,0x0b,0x36 1259b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xa6,0xf5,0x81,0xcf, 0xa5,0x7a,0xde,0x28 1260b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xda,0xb7,0x8e,0x26, 0x3f,0xad,0xbf,0xa4 1261b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x2c,0x3a,0x9d,0xe4, 0x50,0x78,0x92,0x0d 1262b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x6a,0x5f,0xcc,0x9b, 0x54,0x7e,0x46,0x62 1263b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xf6,0x8d,0x13,0xc2, 0x90,0xd8,0xb8,0xe8 1264b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x2e,0x39,0xf7,0x5e, 0x82,0xc3,0xaf,0xf5 1265b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x9f,0x5d,0x80,0xbe, 0x69,0xd0,0x93,0x7c 1266b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x6f,0xd5,0x2d,0xa9, 0xcf,0x25,0x12,0xb3 1267b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xc8,0xac,0x99,0x3b, 0x10,0x18,0x7d,0xa7 1268b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xe8,0x9c,0x63,0x6e, 0xdb,0x3b,0xbb,0x7b 1269b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xcd,0x26,0x78,0x09, 0x6e,0x59,0x18,0xf4 1270b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xec,0x9a,0xb7,0x01, 0x83,0x4f,0x9a,0xa8 1271b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xe6,0x95,0x6e,0x65, 0xaa,0xff,0xe6,0x7e 1272b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x21,0xbc,0xcf,0x08, 0xef,0x15,0xe8,0xe6 1273b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xba,0xe7,0x9b,0xd9, 0x4a,0x6f,0x36,0xce 1274b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xea,0x9f,0x09,0xd4, 0x29,0xb0,0x7c,0xd6 1275b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x31,0xa4,0xb2,0xaf, 0x2a,0x3f,0x23,0x31 1276b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xc6,0xa5,0x94,0x30, 0x35,0xa2,0x66,0xc0 1277b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x74,0x4e,0xbc,0x37, 0xfc,0x82,0xca,0xa6 1278b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xe0,0x90,0xd0,0xb0, 0x33,0xa7,0xd8,0x15 1279b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xf1,0x04,0x98,0x4a, 0x41,0xec,0xda,0xf7 1280b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x7f,0xcd,0x50,0x0e, 0x17,0x91,0xf6,0x2f 1281b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x76,0x4d,0xd6,0x8d, 0x43,0xef,0xb0,0x4d 1282b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xcc,0xaa,0x4d,0x54, 0xe4,0x96,0x04,0xdf 1283b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x9e,0xd1,0xb5,0xe3, 0x4c,0x6a,0x88,0x1b 1284b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xc1,0x2c,0x1f,0xb8, 0x46,0x65,0x51,0x7f 1285b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x9d,0x5e,0xea,0x04, 0x01,0x8c,0x35,0x5d 1286b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xfa,0x87,0x74,0x73, 0xfb,0x0b,0x41,0x2e 1287b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xb3,0x67,0x1d,0x5a, 0x92,0xdb,0xd2,0x52 1288b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xe9,0x10,0x56,0x33, 0x6d,0xd6,0x47,0x13 1289b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x9a,0xd7,0x61,0x8c, 0x37,0xa1,0x0c,0x7a 1290b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x59,0xf8,0x14,0x8e, 0xeb,0x13,0x3c,0x89 1291b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xce,0xa9,0x27,0xee, 0xb7,0x61,0xc9,0x35 1292b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xe1,0x1c,0xe5,0xed, 0x7a,0x47,0xb1,0x3c 1293b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x9c,0xd2,0xdf,0x59, 0x55,0xf2,0x73,0x3f 1294b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x18,0x14,0xce,0x79, 0x73,0xc7,0x37,0xbf 1295b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x53,0xf7,0xcd,0xea, 0x5f,0xfd,0xaa,0x5b 1296b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xdf,0x3d,0x6f,0x14, 0x78,0x44,0xdb,0x86 1297b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xca,0xaf,0xf3,0x81, 0xb9,0x68,0xc4,0x3e 1298b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x38,0x24,0x34,0x2c, 0xc2,0xa3,0x40,0x5f 1299b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x16,0x1d,0xc3,0x72, 0xbc,0xe2,0x25,0x0c 1300b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x28,0x3c,0x49,0x8b, 0xff,0x0d,0x95,0x41 1301b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x39,0xa8,0x01,0x71, 0x08,0x0c,0xb3,0xde 1302b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xd8,0xb4,0xe4,0x9c, 0x64,0x56,0xc1,0x90 1303b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x7b,0xcb,0x84,0x61, 0xd5,0x32,0xb6,0x70 1304b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x48,0x6c,0x5c,0x74, 0xd0,0xb8,0x57,0x42 1305b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic 1306b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x52, 0x09, 0x6a, 0xd5, 0x30, 0x36, 0xa5, 0x38 # Td4 1307b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xbf, 0x40, 0xa3, 0x9e, 0x81, 0xf3, 0xd7, 0xfb 1308b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x7c, 0xe3, 0x39, 0x82, 0x9b, 0x2f, 0xff, 0x87 1309b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x34, 0x8e, 0x43, 0x44, 0xc4, 0xde, 0xe9, 0xcb 1310b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x54, 0x7b, 0x94, 0x32, 0xa6, 0xc2, 0x23, 0x3d 1311b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xee, 0x4c, 0x95, 0x0b, 0x42, 0xfa, 0xc3, 0x4e 1312b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x08, 0x2e, 0xa1, 0x66, 0x28, 0xd9, 0x24, 0xb2 1313b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x76, 0x5b, 0xa2, 0x49, 0x6d, 0x8b, 0xd1, 0x25 1314b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x72, 0xf8, 0xf6, 0x64, 0x86, 0x68, 0x98, 0x16 1315b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xd4, 0xa4, 0x5c, 0xcc, 0x5d, 0x65, 0xb6, 0x92 1316b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x6c, 0x70, 0x48, 0x50, 0xfd, 0xed, 0xb9, 0xda 1317b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x5e, 0x15, 0x46, 0x57, 0xa7, 0x8d, 0x9d, 0x84 1318b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x90, 0xd8, 0xab, 0x00, 0x8c, 0xbc, 0xd3, 0x0a 1319b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xf7, 0xe4, 0x58, 0x05, 0xb8, 0xb3, 0x45, 0x06 1320b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xd0, 0x2c, 0x1e, 0x8f, 0xca, 0x3f, 0x0f, 0x02 1321b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xc1, 0xaf, 0xbd, 0x03, 0x01, 0x13, 0x8a, 0x6b 1322b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x3a, 0x91, 0x11, 0x41, 0x4f, 0x67, 0xdc, 0xea 1323b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x97, 0xf2, 0xcf, 0xce, 0xf0, 0xb4, 0xe6, 0x73 1324b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x96, 0xac, 0x74, 0x22, 0xe7, 0xad, 0x35, 0x85 1325b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xe2, 0xf9, 0x37, 0xe8, 0x1c, 0x75, 0xdf, 0x6e 1326b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x47, 0xf1, 0x1a, 0x71, 0x1d, 0x29, 0xc5, 0x89 1327b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x6f, 0xb7, 0x62, 0x0e, 0xaa, 0x18, 0xbe, 0x1b 1328b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xfc, 0x56, 0x3e, 0x4b, 0xc6, 0xd2, 0x79, 0x20 1329b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x9a, 0xdb, 0xc0, 0xfe, 0x78, 0xcd, 0x5a, 0xf4 1330b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x1f, 0xdd, 0xa8, 0x33, 0x88, 0x07, 0xc7, 0x31 1331b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xb1, 0x12, 0x10, 0x59, 0x27, 0x80, 0xec, 0x5f 1332b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x60, 0x51, 0x7f, 0xa9, 0x19, 0xb5, 0x4a, 0x0d 1333b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x2d, 0xe5, 0x7a, 0x9f, 0x93, 0xc9, 0x9c, 0xef 1334b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xa0, 0xe0, 0x3b, 0x4d, 0xae, 0x2a, 0xf5, 0xb0 1335b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xc8, 0xeb, 0xbb, 0x3c, 0x83, 0x53, 0x99, 0x61 1336b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0x17, 0x2b, 0x04, 0x7e, 0xba, 0x77, 0xd6, 0x26 1337b83a02d94f9ba66fc5da46c2e27572674ea17931Petar Jovanovic.byte 0xe1, 0x69, 0x14, 0x63, 0x55, 0x21, 0x0c, 0x7d 1338