ARIA_BLOCK_SIZE
memcpy(kr.c, userKey + ARIA_BLOCK_SIZE, sizeof(kr) / 2);
memset(kr.c + ARIA_BLOCK_SIZE / 2, 0, sizeof(kr) / 2);
memcpy(kr.c, userKey + ARIA_BLOCK_SIZE, sizeof(kr));
memcpy(rk_head, rk_tail, ARIA_BLOCK_SIZE);
for (i = 0; i < ARIA_BLOCK_SIZE; i++)
for (i = 0; i < ARIA_BLOCK_SIZE; i++)
t.c[(i + bytes) % ARIA_BLOCK_SIZE] = z->c[i];
for (i = 0; i < ARIA_BLOCK_SIZE; i++)
o->c[i] = ((t.c[i] >> bits) | (t.c[i ? i - 1 : ARIA_BLOCK_SIZE - 1] << (8 - bits))) ^ xor->c[i];
rotnr(8 * ARIA_BLOCK_SIZE - 61, o, xor, z);
rotnr(8 * ARIA_BLOCK_SIZE - 31, o, xor, z);
rotnr(8 * ARIA_BLOCK_SIZE - 19, o, xor, z);
for (i = 0; i < ARIA_BLOCK_SIZE; i += 4) {
for (i = 0; i < ARIA_BLOCK_SIZE; i += 4) {
unsigned char c[ARIA_BLOCK_SIZE];
unsigned int u[ARIA_BLOCK_SIZE / sizeof(unsigned int)];