META-INF/
META-INF/MANIFEST.MF
Twofish/
Twofish/Twofish_Algorithm.class
Twofish_Algorithm.java
package Twofish
public final Twofish.Twofish_Algorithm extends java.lang.Object {
	static final String NAME
	static final boolean IN
	static final boolean OUT
	static final boolean DEBUG
	static final int debuglevel
	static final java.io.PrintWriter err
	static final boolean TRACE
	static final int BLOCK_SIZE
	private static final int ROUNDS
	private static final int MAX_ROUNDS
	private static final int INPUT_WHITEN
	private static final int OUTPUT_WHITEN
	private static final int ROUND_SUBKEYS
	private static final int TOTAL_SUBKEYS
	private static final int SK_STEP
	private static final int SK_BUMP
	private static final int SK_ROTL
	private static final byte[][] P
	private static final int P_00
	private static final int P_01
	private static final int P_02
	private static final int P_03
	private static final int P_04
	private static final int P_10
	private static final int P_11
	private static final int P_12
	private static final int P_13
	private static final int P_14
	private static final int P_20
	private static final int P_21
	private static final int P_22
	private static final int P_23
	private static final int P_24
	private static final int P_30
	private static final int P_31
	private static final int P_32
	private static final int P_33
	private static final int P_34
	private static final int GF256_FDBK
	private static final int GF256_FDBK_2
	private static final int GF256_FDBK_4
	private static final int[][] MDS
	private static final int RS_GF_FDBK
	private static final char[] HEX_DIGITS
	public void  () 
	static void debug (java.lang.String) 
		String s
	static void trace (boolean, java.lang.String) 
		boolean in
		String s
	static void trace (java.lang.String) 
		String s
	private static final int LFSR1 (int) 
		int x
	private static final int LFSR2 (int) 
		int x
	private static final int Mx_1 (int) 
		int x
	private static final int Mx_X (int) 
		int x
	private static final int Mx_Y (int) 
		int x
	public static synchronized java.lang.Object makeKey (byte[])  throws java.security.InvalidKeyException 
		int A
		int B
		int b0
		int b1
		int b2
		int b3
		byte[] k
		int length
		int k64Cnt
		int subkeyCnt
		int[] k32e
		int[] k32o
		int[] sBoxKey
		int i
		int j
		int offset
		int q
		int[] subKeys
		int k0
		int k1
		int k2
		int k3
		int[] sBox
		Object sessionKey
	public static byte[] blockEncrypt (byte[], int, java.lang.Object) 
		int t0
		int t1
		int R
		byte[] in
		int inOffset
		Object sessionKey
		Object[] sk
		int[] sBox
		int[] sKey
		int x0
		int x1
		int x2
		int x3
		int k
		byte[] result
	public static byte[] blockDecrypt (byte[], int, java.lang.Object) 
		int t0
		int t1
		int R
		byte[] in
		int inOffset
		Object sessionKey
		Object[] sk
		int[] sBox
		int[] sKey
		int x2
		int x3
		int x0
		int x1
		int k
		byte[] result
	public static boolean self_test () 
	private static final int b0 (int) 
		int x
	private static final int b1 (int) 
		int x
	private static final int b2 (int) 
		int x
	private static final int b3 (int) 
		int x
	private static final int RS_MDS_Encode (int, int) 
		int i
		int i
		int k0
		int k1
		int r
	private static final int RS_rem (int) 
		int x
		int b
		int g2
		int g3
		int result
	private static final int F32 (int, int, int[]) 
		int k64Cnt
		int x
		int[] k32
		int b0
		int b1
		int b2
		int b3
		int k0
		int k1
		int k2
		int k3
		int result
	private static final int Fe32 (int[], int, int) 
		int[] sBox
		int x
		int R
	private static final int _b (int, int) 
		int x
		int N
		int result
	public static int blockSize () 
	private static boolean self_test (int) 
		byte[] kb
		byte[] pt
		int i
		Object key
		byte[] ct
		byte[] cpt
		Exception x
		int keysize
		boolean ok
	private static boolean areEqual (byte[], byte[]) 
		int i
		byte[] a
		byte[] b
		int aLength
	private static java.lang.String intToString (int) 
		int i
		int n
		char[] buf
	private static java.lang.String toString (byte[]) 
		byte[] ba
	private static java.lang.String toString (byte[], int, int) 
		int i
		int j
		int k
		byte[] ba
		int offset
		int length
		char[] buf
	public static void main (java.lang.String[]) 
		String[] args
	static void  () 
		int j
		long time
		int[] m1
		int[] mX
		int[] mY
		int i
}

Twofish/Twofish_Properties.class
Twofish_Properties.java
package Twofish
public Twofish.Twofish_Properties extends java.lang.Object {
	static final boolean GLOBAL_DEBUG
	static final String ALGORITHM
	static final double VERSION
	static final String FULL_NAME
	static final String NAME
	static final java.util.Properties properties
	private static final String[][] DEFAULT_PROPERTIES
	public void  () 
	public static java.lang.String getProperty (java.lang.String) 
		String key
	public static java.lang.String getProperty (java.lang.String, java.lang.String) 
		String key
		String value
	public static void list (java.io.PrintStream) 
		java.io.PrintStream out
	public static void list (java.io.PrintWriter) 
		String key
		String value
		java.io.PrintWriter out
		java.util.Enumeration en
	public static java.util.Enumeration propertyNames () 
	static boolean isTraceable (java.lang.String) 
		String label
		String s
	static int getLevel (java.lang.String) 
		NumberFormatException e
		String label
		String s
	static java.io.PrintWriter getOutput () 
		java.io.PrintWriter pw
		java.io.PrintWriter pw
		String name
	static void  () 
		Exception x
		int i
		int n
		String it
		java.io.InputStream is
		boolean ok
}

com/
com/android/
com/android/jobb/
com/android/jobb/EncryptedBlockFile$EncryptedBlockFileChannel.class
EncryptedBlockFile.java
package com.android.jobb
final com.android.jobb.EncryptedBlockFile$EncryptedBlockFileChannel extends java.nio.channels.FileChannel {
	final java.nio.channels.FileChannel mFC
	final synthetic com.android.jobb.EncryptedBlockFile this$0
	protected void  (com.android.jobb.EncryptedBlockFile, java.nio.channels.FileChannel) 
		java.nio.channels.FileChannel wrappedFC
	public void force (boolean)  throws java.io.IOException 
		boolean metaData
	public java.nio.channels.FileLock lock (long, long, boolean)  throws java.io.IOException 
		long position
		long size
		boolean shared
	public java.nio.MappedByteBuffer map (java.nio.channels.FileChannel$MapMode, long, long)  throws java.io.IOException 
		java.nio.channels.FileChannel$MapMode mode
		long position
		long size
	public long position ()  throws java.io.IOException 
	public java.nio.channels.FileChannel position (long)  throws java.io.IOException 
		long newPosition
	public int read (java.nio.ByteBuffer)  throws java.io.IOException 
		java.nio.ByteBuffer dst
		long position
		int read
	public int read (java.nio.ByteBuffer, long)  throws java.io.IOException 
		boolean isMisaligned
		boolean doubleBuffer
		boolean isPartial
		java.nio.ByteBuffer tempDest
		int i
		java.nio.ByteBuffer dest
		long position
		boolean isMisaligned
		boolean isPartial
		boolean doubleBuffer
		int toRead
		int targetRead
		int numSectors
		int alignmentOff
		int firstSector
		int partialReadSize
		java.nio.ByteBuffer tempDest
		int lastSector
	public long read (java.nio.ByteBuffer[], int, int)  throws java.io.IOException 
		java.nio.ByteBuffer[] dsts
		int offset
		int length
	public long size ()  throws java.io.IOException 
	public long transferFrom (java.nio.channels.ReadableByteChannel, long, long)  throws java.io.IOException 
		java.nio.channels.ReadableByteChannel src
		long position
		long count
	public long transferTo (long, long, java.nio.channels.WritableByteChannel)  throws java.io.IOException 
		long position
		long count
		java.nio.channels.WritableByteChannel target
	public java.nio.channels.FileChannel truncate (long)  throws java.io.IOException 
		long size
	public java.nio.channels.FileLock tryLock (long, long, boolean)  throws java.io.IOException 
		long position
		long size
		boolean shared
	public int write (java.nio.ByteBuffer)  throws java.io.IOException 
		java.nio.ByteBuffer src
		long position
		int write
	public int write (java.nio.ByteBuffer, long)  throws java.io.IOException 
		long alignmentOff
		long readOffset
		java.nio.ByteBuffer dest
		int bufOffset
		int i
		java.nio.ByteBuffer src
		long position
		int toWrite
		int targetWrite
		int firstSector
		int numSectors
		boolean fixAccess
		long readOffset
		int lastSector
	public long write (java.nio.ByteBuffer[], int, int)  throws java.io.IOException 
		java.nio.ByteBuffer[] srcs
		int offset
		int length
	protected void implCloseChannel ()  throws java.io.IOException 
	private void cryptIVPlainGen (int, byte[]) 
		int sector
		byte[] out
	private void readDecryptedSector (int, java.nio.ByteBuffer)  throws java.io.IOException 
		int read
		int j
		byte[] decryptBuf
		int i
		int sector
		java.nio.ByteBuffer dest
		java.nio.ByteBuffer temp
		int toRead
		int devOffset
		int blockSize
		byte[] bufLast
		int numBlocks
		byte[] buf
	private void writeEncryptedSector (int, java.nio.ByteBuffer)  throws java.io.IOException 
		int j
		int written
		byte[] encryptBuf
		int toWrite
		java.nio.ByteBuffer encryptBuffer
		int i
		int sector
		java.nio.ByteBuffer src
		byte[] sectorBuf
		int toRead
		int devOffset
		int blockSize
		byte[] bufLast
		int numBlocks
		int pos
		byte[] buf
}

com/android/jobb/PBKDF.class
PBKDF.java
package com.android.jobb
public com.android.jobb.PBKDF extends java.lang.Object {
	public static final int SALT_LEN
	private static final int ROUNDS
	private static final int KEY_BITS
	public void  () 
	public static byte[] getKey (java.lang.String, byte[])  throws java.security.InvalidKeyException java.security.NoSuchAlgorithmException java.io.UnsupportedEncodingException 
		byte[] pbkdfKey
		java.security.spec.InvalidKeySpecException e
		String password
		byte[] saltBytes
		javax.crypto.spec.PBEKeySpec pwKey
		javax.crypto.SecretKeyFactory factory
		javax.crypto.interfaces.PBEKey pbeKey
	public static byte[] getRandomSalt () 
		java.security.SecureRandom random
		byte[] saltBytes
}

com/android/jobb/Main.class
Main.java
package com.android.jobb
public com.android.jobb.Main extends java.lang.Object {
	private static final int BLOCK_SIZE
	static String sDirectory
	static java.io.File sDirectoryFile
	static boolean sHasOutputDirectory
	static String sKey
	static String sOutputFile
	static boolean sVerboseMode
	static String sPackageName
	static int sPackageVersion
	static byte[] sSalt
	static boolean sOverlay
	static int sFlags
	static String sInputFile
	static byte[] sFishKey
	static java.nio.ByteBuffer sTempBuf
	public void  () 
	public static void printArgs () 
	public static void dumpDirectory (de.waldheinz.fs.FsDirectory, int, java.io.File)  throws java.io.IOException 
		int idx
		int idx
		int idx
		int readLength
		long pos
		java.nio.channels.FileChannel outputChannel
		int capacity
		long length
		de.waldheinz.fs.FsFile f
		java.io.FileOutputStream fos
		java.io.File curFile
		de.waldheinz.fs.FsDirectoryEntry e
		de.waldheinz.fs.FsDirectory dir
		int tabStop
		java.io.File curDirectory
		java.util.Iterator i
	public static void main (java.lang.String[]) 
		String saltString
		java.math.BigInteger bi
		String curArg
		int i
		ArrayIndexOutOfBoundsException e
		java.security.InvalidKeyException e
		java.security.NoSuchAlgorithmException e
		java.io.UnsupportedEncodingException e
		java.math.BigInteger bi
		com.android.jobb.EncryptedBlockFile ebf
		de.waldheinz.fs.BlockDevice fd
		de.waldheinz.fs.fat.FatType ft
		de.waldheinz.fs.fat.FatFileSystem fatFs
		de.waldheinz.fs.fat.BootSector bs
		de.waldheinz.fs.FsDirectory rootDir
		java.io.IOException e
		java.security.InvalidKeyException e
		com.android.jobb.ObbFile obbFile
		java.io.File obbInputFile
		de.waldheinz.fs.BlockDevice fd
		boolean printArgs
		boolean printArgs
		boolean printArgs
		boolean printArgs
		boolean printArgs
		Exception e
		int out
		byte b
		byte[] arr$
		int len$
		int i$
		int out
		byte b
		byte[] arr$
		int len$
		int i$
		com.android.jobb.EncryptedBlockFile ebf
		java.security.InvalidKeyException e
		de.waldheinz.fs.BlockDevice fd
		de.waldheinz.fs.fat.FatFileSystem fs
		String rootPath
		de.waldheinz.fs.fat.Fat fat
		com.android.jobb.ObbFile ob
		java.io.IOException e
		java.io.File f
		long fileSize
		long numSectors
		long clusterSize
		long fatOverhead
		long clusterSizeInBytes
		long filesystemSize
		java.io.File fsFile
		String[] args
		boolean displayHelp
		boolean isEncrypted
		boolean printArgs
	public static long getTotalFileSize (java.io.File, int) 
		java.io.File dir
		int clusterSize
		long[] mSize
		boolean calculateSlop
	public static void processAllFiles (java.io.File, com.android.jobb.Main$FileProcessor) 
		int i
		String[] children
		java.io.File dir
		com.android.jobb.Main$FileProcessor fp
	static void  () 
}

com/android/jobb/EncryptedBlockFile.class
EncryptedBlockFile.java
package com.android.jobb
public com.android.jobb.EncryptedBlockFile extends java.io.RandomAccessFile {
	public static final int BYTES_PER_SECTOR
	private final Object mKey
	private final com.android.jobb.EncryptedBlockFile$EncryptedBlockFileChannel mEBFC
	public com.android.jobb.EncryptedBlockFile$EncryptedBlockFileChannel getEncryptedFileChannel () 
	public void setLength (long)  throws java.io.IOException 
		int i
		long newLength
		int numsectors
		byte[] byteBuf
		java.nio.ByteBuffer buf
	public void  (byte[], java.io.File, java.lang.String)  throws java.io.FileNotFoundException java.security.InvalidKeyException 
		byte[] key
		java.io.File file
		String mode
	static synthetic java.lang.Object access$000 (com.android.jobb.EncryptedBlockFile) 
		com.android.jobb.EncryptedBlockFile x0
}

com/android/jobb/Main$1.class
Main.java
package com.android.jobb
final com.android.jobb.Main$1 extends java.lang.Object implements com.android.jobb.Main$FileProcessor  {
	java.util.Stack mCurDir
	final synthetic String val$rootPath
	final synthetic de.waldheinz.fs.fat.FatFileSystem val$fs
	void  (java.lang.String, de.waldheinz.fs.fat.FatFileSystem) 
	public void processDirectory (java.io.File) 
		java.io.IOException e
		java.io.IOException e
		String name
		de.waldheinz.fs.fat.FatLfnDirectoryEntry entry
		java.io.File tempFile
		java.util.Stack pathStack
		java.io.File curFile
		String directory
		de.waldheinz.fs.fat.FatLfnDirectory curDir
	public void processFile (java.io.File) 
		java.io.IOException e
		de.waldheinz.fs.fat.FatFile f
		java.nio.ByteBuffer buf
		int numRead
		long offset
		java.io.IOException e
		java.io.IOException e
		java.io.IOException e
		java.io.File curFile
		de.waldheinz.fs.fat.FatLfnDirectoryEntry entry
		de.waldheinz.fs.fat.FatLfnDirectory curDir
		java.nio.channels.ReadableByteChannel channel
	public void endDirectory (java.io.File) 
		java.io.File dir
}

com/android/jobb/Main$2.class
Main.java
package com.android.jobb
final com.android.jobb.Main$2 extends java.lang.Object implements com.android.jobb.Main$FileProcessor  {
	java.util.Stack mDirLen
	final synthetic boolean val$calculateSlop
	final synthetic int val$clusterSize
	final synthetic long[] val$mSize
	void  (boolean, int, long[]) 
	public void processFile (java.io.File) 
		int[] dirLen
		long realLength
		long slop
		java.io.File f
		long length
	public void processDirectory (java.io.File) 
		int[] dirLen
		java.io.File f
	public void endDirectory (java.io.File) 
		long realLength
		long slop
		int[] dirLen
		long lastDirLen
		java.io.File dir
}

com/android/jobb/Main$FileProcessor.class
Main.java
package com.android.jobb
abstract com.android.jobb.Main$FileProcessor extends java.lang.Object {
	public abstract void processFile (java.io.File) 
	public abstract void processDirectory (java.io.File) 
	public abstract void endDirectory (java.io.File) 
}

com/android/jobb/Encoder.class
Encoder.java
package com.android.jobb
public abstract com.android.jobb.Encoder extends java.lang.Object {
	public abstract int encode (byte[], int, int, java.io.OutputStream)  throws java.io.IOException 
	public abstract int decode (byte[], int, int, java.io.OutputStream)  throws java.io.IOException 
	public abstract int decode (java.lang.String, java.io.OutputStream)  throws java.io.IOException 
}

com/android/jobb/Base64.class
Base64.java
package com.android.jobb
public com.android.jobb.Base64 extends java.lang.Object {
	private static final byte[] encodingTable
	private static final byte[] decodingTable
	public void  () 
	public static byte[] encode (byte[]) 
		byte[] bytes
		int a1
		int a2
		int a3
		int i
		int j
		int b1
		int b2
		int b3
		int d1
		int d2
		byte[] data
		byte[] bytes
		int modulus
		int dataLength
	public static byte[] decode (byte[]) 
		byte[] bytes
		byte[] bytes
		byte b1
		byte b2
		byte b3
		byte b4
		int i
		int j
		byte b1
		byte b2
		byte b1
		byte b2
		byte b3
		byte b3
		byte b4
		byte[] data
		byte[] bytes
		byte b1
		byte b2
	public static byte[] decode (java.lang.String) 
		byte[] bytes
		byte[] bytes
		byte b1
		byte b2
		byte b3
		byte b4
		int i
		int j
		byte b1
		byte b2
		byte b1
		byte b2
		byte b3
		byte b3
		byte b4
		String data
		byte[] bytes
		byte b1
		byte b2
	static void  () 
		int i
		int i
		int i
}

com/android/jobb/ObbFile.class
ObbFile.java
package com.android.jobb
public com.android.jobb.ObbFile extends java.lang.Object {
	public static final int OBB_OVERLAY
	public static final int OBB_SALTED
	static final int kFooterTagSize
	static final int kFooterMinSize
	static final int kMaxBufSize
	static final long kSignature
	static final int kSigVersion
	static final int kPackageVersionOffset
	static final int kFlagsOffset
	static final int kSaltOffset
	static final int kPackageNameLenOffset
	static final int kPackageNameOffset
	long mPackageVersion
	long mFlags
	String mPackageName
	byte[] mSalt
	public void  () 
	public boolean readFrom (java.lang.String) 
		String filename
		java.io.File obbFile
	public boolean readFrom (java.io.File) 
		java.io.File obbFile
	public static long get4LE (java.nio.ByteBuffer) 
		java.nio.ByteBuffer buf
	public void setPackageName (java.lang.String) 
		String packageName
	public void setSalt (byte[]) 
		byte[] salt
	public void setPackageVersion (long) 
		long packageVersion
	public void setFlags (long) 
		long flags
	public boolean parseObbFile (java.io.File) 
		long fileLength
		java.io.RandomAccessFile raf
		byte[] footer
		java.nio.ByteBuffer footBuf
		long fileSig
		long footerSize
		long fileOffset
		long sigVersion
		long packageNameLen
		byte[] packageNameBuf
		java.io.IOException e
		java.io.File obbFile
	public boolean writeTo (java.lang.String) 
		String fileName
		java.io.File obbFile
	public boolean writeTo (java.io.File) 
		long fileLength
		java.io.RandomAccessFile raf
		java.nio.channels.FileChannel fc
		java.nio.ByteBuffer bbInt
		java.io.IOException e
		java.io.File obbFile
}