これがベクトル化されれば夢のような話だ!

for(j=0;j<16;j++){
for(i=0;i<16;i++){
d1[i]^=GF[((FG[a[j]]-1)+(FG[h1[i][FG[b[j]]]]-1)%255)+1];
d2[i]^=GF[mlt(FG[a[j]],FG[h2[i][FG[b[j]]]])];
}
}