Find the smallest illegal (probable) prime
Java (about 2048 bits)

14951059135011030015480908520726485619103063818476057564660360628799292628035097139943806440612109515246411930476451010075357954683100898936593739762786721583164361680031433048702186473094092210118641364347032899100220949873928633438856732508590863996147513646363328498023218161000104939462296626885931085914071985322044175133733909287366858309877885352980365735019082872958155754848273583139151810812417879417661663044291630490856568568829579704849173609110647303708828534149066778229242936297219753177569833591637704406031011600073082097633261877649625598598670707453831253888534424016277678136396605413799234576729


The code is

void C(int[]s,int[]k){int a=k[0]^s[84]|256,b=k[1]^s[85],c=k[2]^k[3]&lt;&lt;8^k[4]&lt;&lt;16^s[86]^s[87]&lt;&lt;8^s[88]&lt;&lt;16,d=c&amp;7,e=0,f,i=127;for(c=c*2+8-d;++i&lt;2048;e&gt;&gt;=8){e+=S[f=(c&gt;&gt;17^c&gt;&gt;14^c&gt;&gt;13^c&gt;&gt;5)&amp;255]+T[d=Q[b]^R[a]];b=a/2;a=a&amp;1&lt;&lt;8^d;c=c&lt;&lt;8|f;s[i]=P[s[i]]^e&amp;255;}}//!Y


I took the liberty of renaming the lookup tables from CSSt1 ... CSSt5 to P ... T, and the method from CSSDescramble to C. I also ditched the gzip step, because it was giving a larger file than the source.