我好像搞定了。。。
r0 = 0xffffffff;
r14 = 0x17D;
for (int i=0;i<0x39;i++)
{
if (r0 == 0xffffffff)
{
r0 = 7;
toDecode = br.ReadByte();
}
;//第一字节密文从0x130开始
for (r0 = 7; r0 != 0xffffffff; r0--)
{
if (GetBit(toDecode, (short)r0) == 0)
{
r14 = BitConverter.ToInt32(byteEncodeTable, r14 * 0xC + 4);
}
else
{
r14 = BitConverter.ToInt32(byteEncodeTable, r14 * 0xC + 8);
}
if (r14 <= 0xff)
{
byteWrite[byteOut] = Convert.ToByte(r14);
byteOut += 1;
r14 = 0x17D;
if (byteOut >= 2 && byteWrite[byteOut - 2] == 0xff && byteWrite[byteOut - 1] == 0xf0) break;
}
}
}
我还没批量处理,先用前面的0x39个字节测试
[ 此帖被边缘在2022-07-21 21:02重新编辑 ]