round 15
theta rho pi chi iota




round 15: before theta
A[0] = 0x16fe4df5b19d652b
A[1] = 0x2c8c9106a8a464c2
A[2] = 0xe2b1e72961d8c10d
A[3] = 0xd0a9d90c0fba3918
A[4] = 0x60159e81c241722b
A[5] = 0x344d72e78b6b811c
A[6] = 0xa55e543c347cc975
A[7] = 0xa9b29555fff7f15b
A[8] = 0x1050ba5e7fcef970
A[9] = 0x5a025307d4b10df5
A[10] = 0xabf527323af34a10
A[11] = 0xf4a043164ffa57d4
A[12] = 0xd7934e5808c2f861
A[13] = 0x257496d877346c4c
A[14] = 0xc8140ff835a45fab
A[15] = 0xfcd7200efc195bb0
A[16] = 0xd7e83882eb6ad367
A[17] = 0xf0c203a4463d84d1
A[18] = 0x8e5ab470191fd083
A[19] = 0xc5b53414d2d3f1fd
A[20] = 0x2b62b7fd6a528ed2
A[21] = 0x764cd41ee9e4d625
A[22] = 0x81967d52191f3cc1
A[23] = 0x1fc8d0e4d28e702c
A[24] = 0xe5300b4a651ab426



round 15: theta
C[0] = A[0] ^ A[5] ^ A[10] ^ A[15] ^ A[20]
= 0x16fe4df5b19d652b ^ 0x344d72e78b6b811c ^ 0xabf527323af34a10 ^ 0xfcd7200efc195bb0 ^ 0x2b62b7fd6a528ed2
= 0x5ef38fd3964e7b45
C[1] = A[1] ^ A[6] ^ A[11] ^ A[16] ^ A[21]
= 0x2c8c9106a8a464c2 ^ 0xa55e543c347cc975 ^ 0xf4a043164ffa57d4 ^ 0xd7e83882eb6ad367 ^ 0x764cd41ee9e4d625
= 0xdcd66ab0d1acff21
C[2] = A[2] ^ A[7] ^ A[12] ^ A[17] ^ A[22]
= 0xe2b1e72961d8c10d ^ 0xa9b29555fff7f15b ^ 0xd7934e5808c2f861 ^ 0xf0c203a4463d84d1 ^ 0x81967d52191f3cc1
= 0xedc442d2c9cf7027
C[3] = A[3] ^ A[8] ^ A[13] ^ A[18] ^ A[23]
= 0xd0a9d90c0fba3918 ^ 0x1050ba5e7fcef970 ^ 0x257496d877346c4c ^ 0x8e5ab470191fd083 ^ 0x1fc8d0e4d28e702c
= 0x741f911eccd10c8b
C[4] = A[4] ^ A[9] ^ A[14] ^ A[19] ^ A[24]
= 0x60159e81c241722b ^ 0x5a025307d4b10df5 ^ 0xc8140ff835a45fab ^ 0xc5b53414d2d3f1fd ^ 0xe5300b4a651ab426
= 0xd286fd20949d65ae
D[0] = LeftRotation(C[1], 1) ^ C[4]
= LeftRotation(0xdcd66ab0d1acff21, 1) ^ 0xd286fd20949d65ae
= 0xb9acd561a359fe43 ^ 0xd286fd20949d65ae
= 0x6b2a284137c49bed
D[1] = LeftRotation(C[2], 1) ^ C[0]
= LeftRotation(0xedc442d2c9cf7027, 1) ^ 0x5ef38fd3964e7b45
= 0xdb8885a5939ee04f ^ 0x5ef38fd3964e7b45
= 0x857b0a7605d09b0a
D[2] = LeftRotation(C[3], 1) ^ C[1]
= LeftRotation(0x741f911eccd10c8b, 1) ^ 0xdcd66ab0d1acff21
= 0xe83f223d99a21916 ^ 0xdcd66ab0d1acff21
= 0x34e9488d480ee637
D[3] = LeftRotation(C[4], 1) ^ C[2]
= LeftRotation(0xd286fd20949d65ae, 1) ^ 0xedc442d2c9cf7027
= 0xa50dfa41293acb5d ^ 0xedc442d2c9cf7027
= 0x48c9b893e0f5bb7a
D[4] = LeftRotation(C[0], 1) ^ C[3]
= LeftRotation(0x5ef38fd3964e7b45, 1) ^ 0x741f911eccd10c8b
= 0xbde71fa72c9cf68a ^ 0x741f911eccd10c8b
= 0xc9f88eb9e04dfa01
A[0] = A[0] ^ D[0]
= 0x16fe4df5b19d652b ^ 0x6b2a284137c49bed
= 0x7dd465b48659fec6
A[5] = A[5] ^ D[0]
= 0x344d72e78b6b811c ^ 0x6b2a284137c49bed
= 0x5f675aa6bcaf1af1
A[10] = A[10] ^ D[0]
= 0xabf527323af34a10 ^ 0x6b2a284137c49bed
= 0xc0df0f730d37d1fd
A[15] = A[15] ^ D[0]
= 0xfcd7200efc195bb0 ^ 0x6b2a284137c49bed
= 0x97fd084fcbddc05d
A[20] = A[20] ^ D[0]
= 0x2b62b7fd6a528ed2 ^ 0x6b2a284137c49bed
= 0x40489fbc5d96153f
A[1] = A[1] ^ D[1]
= 0x2c8c9106a8a464c2 ^ 0x857b0a7605d09b0a
= 0xa9f79b70ad74ffc8
A[6] = A[6] ^ D[1]
= 0xa55e543c347cc975 ^ 0x857b0a7605d09b0a
= 0x20255e4a31ac527f
A[11] = A[11] ^ D[1]
= 0xf4a043164ffa57d4 ^ 0x857b0a7605d09b0a
= 0x71db49604a2accde
A[16] = A[16] ^ D[1]
= 0xd7e83882eb6ad367 ^ 0x857b0a7605d09b0a
= 0x529332f4eeba486d
A[21] = A[21] ^ D[1]
= 0x764cd41ee9e4d625 ^ 0x857b0a7605d09b0a
= 0xf337de68ec344d2f
A[2] = A[2] ^ D[2]
= 0xe2b1e72961d8c10d ^ 0x34e9488d480ee637
= 0xd658afa429d6273a
A[7] = A[7] ^ D[2]
= 0xa9b29555fff7f15b ^ 0x34e9488d480ee637
= 0x9d5bddd8b7f9176c
A[12] = A[12] ^ D[2]
= 0xd7934e5808c2f861 ^ 0x34e9488d480ee637
= 0xe37a06d540cc1e56
A[17] = A[17] ^ D[2]
= 0xf0c203a4463d84d1 ^ 0x34e9488d480ee637
= 0xc42b4b290e3362e6
A[22] = A[22] ^ D[2]
= 0x81967d52191f3cc1 ^ 0x34e9488d480ee637
= 0xb57f35df5111daf6
A[3] = A[3] ^ D[3]
= 0xd0a9d90c0fba3918 ^ 0x48c9b893e0f5bb7a
= 0x9860619fef4f8262
A[8] = A[8] ^ D[3]
= 0x1050ba5e7fcef970 ^ 0x48c9b893e0f5bb7a
= 0x589902cd9f3b420a
A[13] = A[13] ^ D[3]
= 0x257496d877346c4c ^ 0x48c9b893e0f5bb7a
= 0x6dbd2e4b97c1d736
A[18] = A[18] ^ D[3]
= 0x8e5ab470191fd083 ^ 0x48c9b893e0f5bb7a
= 0xc6930ce3f9ea6bf9
A[23] = A[23] ^ D[3]
= 0x1fc8d0e4d28e702c ^ 0x48c9b893e0f5bb7a
= 0x57016877327bcb56
A[4] = A[4] ^ D[4]
= 0x60159e81c241722b ^ 0xc9f88eb9e04dfa01
= 0xa9ed1038220c882a
A[9] = A[9] ^ D[4]
= 0x5a025307d4b10df5 ^ 0xc9f88eb9e04dfa01
= 0x93faddbe34fcf7f4
A[14] = A[14] ^ D[4]
= 0xc8140ff835a45fab ^ 0xc9f88eb9e04dfa01
= 0x01ec8141d5e9a5aa
A[19] = A[19] ^ D[4]
= 0xc5b53414d2d3f1fd ^ 0xc9f88eb9e04dfa01
= 0x0c4dbaad329e0bfc
A[24] = A[24] ^ D[4]
= 0xe5300b4a651ab426 ^ 0xc9f88eb9e04dfa01
= 0x2cc885f385574e27



round 15: after theta
A[0] = 0x7dd465b48659fec6
A[1] = 0xa9f79b70ad74ffc8
A[2] = 0xd658afa429d6273a
A[3] = 0x9860619fef4f8262
A[4] = 0xa9ed1038220c882a
A[5] = 0x5f675aa6bcaf1af1
A[6] = 0x20255e4a31ac527f
A[7] = 0x9d5bddd8b7f9176c
A[8] = 0x589902cd9f3b420a
A[9] = 0x93faddbe34fcf7f4
A[10] = 0xc0df0f730d37d1fd
A[11] = 0x71db49604a2accde
A[12] = 0xe37a06d540cc1e56
A[13] = 0x6dbd2e4b97c1d736
A[14] = 0x01ec8141d5e9a5aa
A[15] = 0x97fd084fcbddc05d
A[16] = 0x529332f4eeba486d
A[17] = 0xc42b4b290e3362e6
A[18] = 0xc6930ce3f9ea6bf9
A[19] = 0x0c4dbaad329e0bfc
A[20] = 0x40489fbc5d96153f
A[21] = 0xf337de68ec344d2f
A[22] = 0xb57f35df5111daf6
A[23] = 0x57016877327bcb56
A[24] = 0x2cc885f385574e27



round 15: rho
A[0] = LeftRotation(A[0] , 0)
= LeftRotation(0x7dd465b48659fec6, 0)
= 0x7dd465b48659fec6
A[1] = LeftRotation(A[1] , 1)
= LeftRotation(0xa9f79b70ad74ffc8, 1)
= 0x53ef36e15ae9ff91
A[2] = LeftRotation(A[2] , 62)
= LeftRotation(0xd658afa429d6273a, 62)
= 0xb5962be90a7589ce
A[3] = LeftRotation(A[3] , 28)
= LeftRotation(0x9860619fef4f8262, 28)
= 0xfef4f82629860619
A[4] = LeftRotation(A[4] , 27)
= LeftRotation(0xa9ed1038220c882a, 27)
= 0xc1106441554f6881
A[5] = LeftRotation(A[5] , 36)
= LeftRotation(0x5f675aa6bcaf1af1, 36)
= 0xcaf1af15f675aa6b
A[6] = LeftRotation(A[6] , 44)
= LeftRotation(0x20255e4a31ac527f, 44)
= 0xc527f20255e4a31a
A[7] = LeftRotation(A[7] , 6)
= LeftRotation(0x9d5bddd8b7f9176c, 6)
= 0x56f7762dfe45db27
A[8] = LeftRotation(A[8] , 55)
= LeftRotation(0x589902cd9f3b420a, 55)
= 0x052c4c8166cf9da1
A[9] = LeftRotation(A[9] , 20)
= LeftRotation(0x93faddbe34fcf7f4, 20)
= 0xdbe34fcf7f493fad
A[10] = LeftRotation(A[10] , 3)
= LeftRotation(0xc0df0f730d37d1fd, 3)
= 0x06f87b9869be8fee
A[11] = LeftRotation(A[11] , 10)
= LeftRotation(0x71db49604a2accde, 10)
= 0x6d258128ab3379c7
A[12] = LeftRotation(A[12] , 43)
= LeftRotation(0xe37a06d540cc1e56, 43)
= 0x60f2b71bd036aa06
A[13] = LeftRotation(A[13] , 25)
= LeftRotation(0x6dbd2e4b97c1d736, 25)
= 0x972f83ae6cdb7a5c
A[14] = LeftRotation(A[14] , 39)
= LeftRotation(0x01ec8141d5e9a5aa, 39)
= 0xf4d2d500f640a0ea
A[15] = LeftRotation(A[15] , 41)
= LeftRotation(0x97fd084fcbddc05d, 41)
= 0xbb80bb2ffa109f97
A[16] = LeftRotation(A[16] , 45)
= LeftRotation(0x529332f4eeba486d, 45)
= 0x490daa52665e9dd7
A[17] = LeftRotation(A[17] , 15)
= LeftRotation(0xc42b4b290e3362e6, 15)
= 0xa5948719b1736215
A[18] = LeftRotation(A[18] , 21)
= LeftRotation(0xc6930ce3f9ea6bf9, 21)
= 0x9c7f3d4d7f38d261
A[19] = LeftRotation(A[19] , 8)
= LeftRotation(0x0c4dbaad329e0bfc, 8)
= 0x4dbaad329e0bfc0c
A[20] = LeftRotation(A[20] , 18)
= LeftRotation(0x40489fbc5d96153f, 18)
= 0x7ef1765854fd0122
A[21] = LeftRotation(A[21] , 2)
= LeftRotation(0xf337de68ec344d2f, 2)
= 0xccdf79a3b0d134bf
A[22] = LeftRotation(A[22] , 61)
= LeftRotation(0xb57f35df5111daf6, 61)
= 0xd6afe6bbea223b5e
A[23] = LeftRotation(A[23] , 56)
= LeftRotation(0x57016877327bcb56, 56)
= 0x5657016877327bcb



round 15: after rho
A[0] = 0x7dd465b48659fec6
A[1] = 0x53ef36e15ae9ff91
A[2] = 0xb5962be90a7589ce
A[3] = 0xfef4f82629860619
A[4] = 0xc1106441554f6881
A[5] = 0xcaf1af15f675aa6b
A[6] = 0xc527f20255e4a31a
A[7] = 0x56f7762dfe45db27
A[8] = 0x052c4c8166cf9da1
A[9] = 0xdbe34fcf7f493fad
A[10] = 0x06f87b9869be8fee
A[11] = 0x6d258128ab3379c7
A[12] = 0x60f2b71bd036aa06
A[13] = 0x972f83ae6cdb7a5c
A[14] = 0xf4d2d500f640a0ea
A[15] = 0xbb80bb2ffa109f97
A[16] = 0x490daa52665e9dd7
A[17] = 0xa5948719b1736215
A[18] = 0x9c7f3d4d7f38d261
A[19] = 0x4dbaad329e0bfc0c
A[20] = 0x7ef1765854fd0122
A[21] = 0xccdf79a3b0d134bf
A[22] = 0xd6afe6bbea223b5e
A[23] = 0x5657016877327bcb
A[24] = 0x217ce155d389cb32



round 15: pi
A1temp = A[1]
= 0x53ef36e15ae9ff91
A[1] = A[6]
= 0xc527f20255e4a31a
A[6] = A[9]
= 0xdbe34fcf7f493fad
A[9] = A[22]
= 0xd6afe6bbea223b5e
A[22] = A[14]
= 0xf4d2d500f640a0ea
A[14] = A[20]
= 0x7ef1765854fd0122
A[20] = A[2]
= 0xb5962be90a7589ce
A[2] = A[12]
= 0x60f2b71bd036aa06
A[12] = A[13]
= 0x972f83ae6cdb7a5c
A[13] = A[19]
= 0x4dbaad329e0bfc0c
A[19] = A[23]
= 0x5657016877327bcb
A[23] = A[15]
= 0xbb80bb2ffa109f97
A[15] = A[4]
= 0xc1106441554f6881
A[4] = A[24]
= 0x217ce155d389cb32
A[24] = A[21]
= 0xccdf79a3b0d134bf
A[21] = A[8]
= 0x052c4c8166cf9da1
A[8] = A[16]
= 0x490daa52665e9dd7
A[16] = A[5]
= 0xcaf1af15f675aa6b
A[5] = A[3]
= 0xfef4f82629860619
A[3] = A[18]
= 0x9c7f3d4d7f38d261
A[18] = A[17]
= 0xa5948719b1736215
A[17] = A[11]
= 0x6d258128ab3379c7
A[11] = A[7]
= 0x56f7762dfe45db27
A[7] = A[10]
= 0x06f87b9869be8fee
A[10] = A1temp
= 0x53ef36e15ae9ff91



round 15: after pi
A[0] = 0x7dd465b48659fec6
A[1] = 0xc527f20255e4a31a
A[2] = 0x60f2b71bd036aa06
A[3] = 0x9c7f3d4d7f38d261
A[4] = 0x217ce155d389cb32
A[5] = 0xfef4f82629860619
A[6] = 0xdbe34fcf7f493fad
A[7] = 0x06f87b9869be8fee
A[8] = 0x490daa52665e9dd7
A[9] = 0xd6afe6bbea223b5e
A[10] = 0x53ef36e15ae9ff91
A[11] = 0x56f7762dfe45db27
A[12] = 0x972f83ae6cdb7a5c
A[13] = 0x4dbaad329e0bfc0c
A[14] = 0x7ef1765854fd0122
A[15] = 0xc1106441554f6881
A[16] = 0xcaf1af15f675aa6b
A[17] = 0x6d258128ab3379c7
A[18] = 0xa5948719b1736215
A[19] = 0x5657016877327bcb
A[20] = 0xb5962be90a7589ce
A[21] = 0x052c4c8166cf9da1
A[22] = 0xf4d2d500f640a0ea
A[23] = 0xbb80bb2ffa109f97
A[24] = 0xccdf79a3b0d134bf



round 15: chi
A0temp = A[0]
= 0x7dd465b48659fec6
A1temp = A[1]
= 0xc527f20255e4a31a
A[0] = A[0] ^ (~A1temp & A[2])
= 0x7dd465b48659fec6 ^ (~0xc527f20255e4a31a & 0x60f2b71bd036aa06)
= 0x7dd465b48659fec6 ^ (0x3ad80dfdaa1b5ce5 & 0x60f2b71bd036aa06)
= 0x7dd465b48659fec6 ^ 0x20d0051980120804
= 0x5d0460ad064bf6c2
A[1] = A[1] ^ (~A[2] & A[3])
= 0xc527f20255e4a31a ^ (~0x60f2b71bd036aa06 & 0x9c7f3d4d7f38d261)
= 0xc527f20255e4a31a ^ (0x9f0d48e42fc955f9 & 0x9c7f3d4d7f38d261)
= 0xc527f20255e4a31a ^ 0x9c0d08442f085061
= 0xc527f20255e4a31a
A[2] = A[2] ^ (~A[3] & A[4])
= 0x60f2b71bd036aa06 ^ (~0x9c7f3d4d7f38d261 & 0x217ce155d389cb32)
= 0x60f2b71bd036aa06 ^ (0x6380c2b280c72d9e & 0x217ce155d389cb32)
= 0x60f2b71bd036aa06 ^ 0x2100c01080810912
= 0x0072350950308200
A[3] = A[3] ^ (~A[4] & A0temp)
= 0x9c7f3d4d7f38d261 ^ (~0x217ce155d389cb32 & 0x7dd465b48659fec6)
= 0x9c7f3d4d7f38d261 ^ (0xde831eaa2c7634cd & 0x7dd465b48659fec6)
= 0x9c7f3d4d7f38d261 ^ 0x5c8004a0045034c4
= 0xdcfd2b477f0ef265
A[4] = A[4] ^ (~A0temp & A1temp)
= 0x217ce155d389cb32 ^ (~0x7dd465b48659fec6 & 0xc527f20255e4a31a)
= 0x217ce155d389cb32 ^ (0x822b9a4b79a60139 & 0xc527f20255e4a31a)
= 0x217ce155d389cb32 ^ 0x8023920251a40118
= 0x215e735e83afcb32
A5temp = A[5]
= 0xfef4f82629860619
A6temp = A[6]
= 0xdbe34fcf7f493fad
A[5] = A[5] ^ (~A6temp & A[7])
= 0xfef4f82629860619 ^ (~0xdbe34fcf7f493fad & 0x06f87b9869be8fee)
= 0xfef4f82629860619 ^ (0x241cb03080b6c052 & 0x06f87b9869be8fee)
= 0xfef4f82629860619 ^ 0x0418301000b68042
= 0xfaecc8362930865b
A[6] = A[6] ^ (~A[7] & A[8])
= 0xdbe34fcf7f493fad ^ (~0x06f87b9869be8fee & 0x490daa52665e9dd7)
= 0xdbe34fcf7f493fad ^ (0xf907846796417011 & 0x490daa52665e9dd7)
= 0xdbe34fcf7f493fad ^ 0x4905804206401011
= 0xdbe34fcf7f493fad
A[7] = A[7] ^ (~A[8] & A[9])
= 0x06f87b9869be8fee ^ (~0x490daa52665e9dd7 & 0xd6afe6bbea223b5e)
= 0x06f87b9869be8fee ^ (0xb6f255ad99a16228 & 0xd6afe6bbea223b5e)
= 0x06f87b9869be8fee ^ 0x96a244a988202208
= 0x00082a10601e8dc6
A[8] = A[8] ^ (~A[9] & A5temp)
= 0x490daa52665e9dd7 ^ (~0xd6afe6bbea223b5e & 0xfef4f82629860619)
= 0x490daa52665e9dd7 ^ (0x2950194415ddc4a1 & 0xfef4f82629860619)
= 0x490daa52665e9dd7 ^ 0x2850180401840401
= 0x495db35267c21977
A[9] = A[9] ^ (~A5temp & A6temp)
= 0xd6afe6bbea223b5e ^ (~0xfef4f82629860619 & 0xdbe34fcf7f493fad)
= 0xd6afe6bbea223b5e ^ (0x010b07d9d679f9e6 & 0xdbe34fcf7f493fad)
= 0xd6afe6bbea223b5e ^ 0x010307c9564939a4
= 0xd6a7e523aa1ab2b8
A10temp = A[10]
= 0x53ef36e15ae9ff91
A11temp = A[11]
= 0x56f7762dfe45db27
A[10] = A[10] ^ (~A11temp & A[12])
= 0x53ef36e15ae9ff91 ^ (~0x56f7762dfe45db27 & 0x972f83ae6cdb7a5c)
= 0x53ef36e15ae9ff91 ^ (0xa90889d201ba24d8 & 0x972f83ae6cdb7a5c)
= 0x53ef36e15ae9ff91 ^ 0x81088182009a2058
= 0xd2e7b7635a73dfc9
A[11] = A[11] ^ (~A[12] & A[13])
= 0x56f7762dfe45db27 ^ (~0x972f83ae6cdb7a5c & 0x4dbaad329e0bfc0c)
= 0x56f7762dfe45db27 ^ (0x68d07c51932485a3 & 0x4dbaad329e0bfc0c)
= 0x56f7762dfe45db27 ^ 0x48902c1092008400
= 0x56f7762dfe45db27
A[12] = A[12] ^ (~A[13] & A[14])
= 0x972f83ae6cdb7a5c ^ (~0x4dbaad329e0bfc0c & 0x7ef1765854fd0122)
= 0x972f83ae6cdb7a5c ^ (0xb24552cd61f403f3 & 0x7ef1765854fd0122)
= 0x972f83ae6cdb7a5c ^ 0x3241524840f40122
= 0x052a81220c0b780c
A[13] = A[13] ^ (~A[14] & A10temp)
= 0x4dbaad329e0bfc0c ^ (~0x7ef1765854fd0122 & 0x53ef36e15ae9ff91)
= 0x4dbaad329e0bfc0c ^ (0x810e89a7ab02fedd & 0x53ef36e15ae9ff91)
= 0x4dbaad329e0bfc0c ^ 0x010e00a10a00fe91
= 0xccb42c94b6098650
A[14] = A[14] ^ (~A10temp & A11temp)
= 0x7ef1765854fd0122 ^ (~0x53ef36e15ae9ff91 & 0x56f7762dfe45db27)
= 0x7ef1765854fd0122 ^ (0xac10c91ea516006e & 0x56f7762dfe45db27)
= 0x7ef1765854fd0122 ^ 0x0410400ca4040026
= 0xfaf1f75670ef016e
A15temp = A[15]
= 0xc1106441554f6881
A16temp = A[16]
= 0xcaf1af15f675aa6b
A[15] = A[15] ^ (~A16temp & A[17])
= 0xc1106441554f6881 ^ (~0xcaf1af15f675aa6b & 0x6d258128ab3379c7)
= 0xc1106441554f6881 ^ (0x350e50ea098a5594 & 0x6d258128ab3379c7)
= 0xc1106441554f6881 ^ 0x2504002809025184
= 0xe41464695c4d3905
A[16] = A[16] ^ (~A[17] & A[18])
= 0xcaf1af15f675aa6b ^ (~0x6d258128ab3379c7 & 0xa5948719b1736215)
= 0xcaf1af15f675aa6b ^ (0x92da7ed754cc8638 & 0xa5948719b1736215)
= 0xcaf1af15f675aa6b ^ 0x8090061110400210
= 0xcaf1af15f675aa6b
A[17] = A[17] ^ (~A[18] & A[19])
= 0x6d258128ab3379c7 ^ (~0xa5948719b1736215 & 0x5657016877327bcb)
= 0x6d258128ab3379c7 ^ (0x5a6b78e64e8c9dea & 0x5657016877327bcb)
= 0x6d258128ab3379c7 ^ 0x52430060460019ca
= 0x25048108a1336005
A[18] = A[18] ^ (~A[19] & A15temp)
= 0xa5948719b1736215 ^ (~0x5657016877327bcb & 0xc1106441554f6881)
= 0xa5948719b1736215 ^ (0xa9a8fe9788cd8434 & 0xc1106441554f6881)
= 0xa5948719b1736215 ^ 0x81006401004d0000
= 0x8cb4071939726211
A[19] = A[19] ^ (~A15temp & A16temp)
= 0x5657016877327bcb ^ (~0xc1106441554f6881 & 0xcaf1af15f675aa6b)
= 0x5657016877327bcb ^ (0x3eef9bbeaab0977e & 0xcaf1af15f675aa6b)
= 0x5657016877327bcb ^ 0x0ae18b14a230826a
= 0x7a728040dd026a8d
A20temp = A[20]
= 0xb5962be90a7589ce
A21temp = A[21]
= 0x052c4c8166cf9da1
A[20] = A[20] ^ (~A21temp & A[22])
= 0xb5962be90a7589ce ^ (~0x052c4c8166cf9da1 & 0xf4d2d500f640a0ea)
= 0xb5962be90a7589ce ^ (0xfad3b37e9930625e & 0xf4d2d500f640a0ea)
= 0xb5962be90a7589ce ^ 0xf0d291009000204a
= 0x4544bae99a75a984
A[21] = A[21] ^ (~A[22] & A[23])
= 0x052c4c8166cf9da1 ^ (~0xf4d2d500f640a0ea & 0xbb80bb2ffa109f97)
= 0x052c4c8166cf9da1 ^ (0x0b2d2aff09bf5f15 & 0xbb80bb2ffa109f97)
= 0x052c4c8166cf9da1 ^ 0x0b002a2f08101f15
= 0x052c4c8166cf9da1
A[22] = A[22] ^ (~A[23] & A[24])
= 0xf4d2d500f640a0ea ^ (~0xbb80bb2ffa109f97 & 0xccdf79a3b0d134bf)
= 0xf4d2d500f640a0ea ^ (0x447f44d005ef6068 & 0xccdf79a3b0d134bf)
= 0xf4d2d500f640a0ea ^ 0x445f408000c12028
= 0xb0809100f2008082
A[23] = A[23] ^ (~A[24] & A20temp)
= 0xbb80bb2ffa109f97 ^ (~0xccdf79a3b0d134bf & 0xb5962be90a7589ce)
= 0xbb80bb2ffa109f97 ^ (0x3320865c4f2ecb40 & 0xb5962be90a7589ce)
= 0xbb80bb2ffa109f97 ^ 0x310002480a248940
= 0x8b803f2fbc101fd7
A[24] = A[24] ^ (~A20temp & A21temp)
= 0xccdf79a3b0d134bf ^ (~0xb5962be90a7589ce & 0x052c4c8166cf9da1)
= 0xccdf79a3b0d134bf ^ (0x4a69d416f58a7631 & 0x052c4c8166cf9da1)
= 0xccdf79a3b0d134bf ^ 0x00284400648a1421
= 0x8c9fada344d1149f



round 15: after chi
A[0] = 0x5d0460ad064bf6c2
A[1] = 0x592afa467aecf37b
A[2] = 0x41f2770b50b7a314
A[3] = 0xc0ff39ed7b68e6a5
A[4] = 0xa15f7357822dca2a
A[5] = 0xfaecc8362930865b
A[6] = 0x92e6cf8d79092fbc
A[7] = 0x905a3f31e19eade6
A[8] = 0x615db25667da99d6
A[9] = 0xd7ace172bc6b02fa
A[10] = 0xd2e7b7635a73dfc9
A[11] = 0x1e675a3d6c455f27
A[12] = 0xa56ed1e62c2f7b7e
A[13] = 0x4cb4ad93940b029d
A[14] = 0x7ae13654f0f90104
A[15] = 0xe41464695c4d3905
A[16] = 0x4a61a904e635a87b
A[17] = 0x3f668148ed33600d
A[18] = 0x2494e318b13e6215
A[19] = 0x5cb68a7cd502f9a1
A[20] = 0x4544bae99a75a984
A[21] = 0x0e2c66ae6edf82b4
A[22] = 0xb08d9580f68180c2
A[23] = 0x8a80b967f03416d7
A[24] = 0xccf73da3d45b209e



round 15: iota
A[0] = A[0] ^ rc[15]
= 0x5d0460ad064bf6c2 ^ 0x8000000000008003
= 0xdd0460ad064b76c1



round 15: after iota
A[0] = 0xdd0460ad064b76c1
A[1] = 0x592afa467aecf37b
A[2] = 0x41f2770b50b7a314
A[3] = 0xc0ff39ed7b68e6a5
A[4] = 0xa15f7357822dca2a
A[5] = 0xfaecc8362930865b
A[6] = 0x92e6cf8d79092fbc
A[7] = 0x905a3f31e19eade6
A[8] = 0x615db25667da99d6
A[9] = 0xd7ace172bc6b02fa
A[10] = 0xd2e7b7635a73dfc9
A[11] = 0x1e675a3d6c455f27
A[12] = 0xa56ed1e62c2f7b7e
A[13] = 0x4cb4ad93940b029d
A[14] = 0x7ae13654f0f90104
A[15] = 0xe41464695c4d3905
A[16] = 0x4a61a904e635a87b
A[17] = 0x3f668148ed33600d
A[18] = 0x2494e318b13e6215
A[19] = 0x5cb68a7cd502f9a1
A[20] = 0x4544bae99a75a984
A[21] = 0x0e2c66ae6edf82b4
A[22] = 0xb08d9580f68180c2
A[23] = 0x8a80b967f03416d7
A[24] = 0xccf73da3d45b209e