一个安卓逆向题目
用jadx-gui反编译apk
发现函数a中有flag算法
首先定义了a,b,c,d四个数组
接着传入参数str
由于函数a要返回true
str长度与数组b长度一样为34
接着创建了一个新数组iarr[0]为0,后面34位为str也就是flag
下面一个判断a[i2] = (((b[i2] * iArr[i2]) * iArr[i2]) + (c[i2] * iArr[i2])) + d[i2] || a[i2 + 1] != (((b[i2] * iArr[i2 + 1]) * iArr[i2 + 1]) + (c[i2] * iArr[i2 + 1])) + d[i2])
所以就是a[x]=b[x]*iarr[x]*iarr[x]+c[x]*iarr[x]+d[x]
a[x+1]=b[x]*iarr[x+1]*iarr[x+1]+c[x]*iarr[x+1]+d[x]
编程实现算法