SUCTF re

1.base_re
解释器部分
while ( n )
{
–n;
for ( j = 22; j; v184[j] |= v189 << n ) // 第一个是0x53,就是01010011
// 第二个是0x55,就是01010101
// 第三个是0x43 01000011
// 0x54 01010100
// 0x46 01000110
// 0x7b 01111011
{
v188 = *(&v4 + 22 * n + --j);
v189 = (v188 >> ((input >> 2 * n) & 3)) & 1;
}
}
这个就是不停的进行操作后,移位,之后因为是|,而且一开始v184里面全是保留的0,所以我们要判断的就是每次v188的移动位数
又它给了我们格式,所以可以查ascll码表后,化为二进制,之后按照每个的二进制的各位上是1还是0确定input每位的值,之后因为input是int,所以之后开始逆就可以了。

猜你喜欢

转载自blog.csdn.net/weixin_43225801/article/details/83892701