duangsuse::Echo
717 subscribers
4.26K photos
130 videos
583 files
6.48K links
import this:
美而不丑、明而不暗、短而不凡、长而不乱,扁平不宽,读而后码,行之天下,勿托地上天国。
异常勿吞,难过勿过,叹一真理。效率是很重要,盲目最是低效。
简明是可靠的先验,不是可靠的祭品。
知其变,守其恒,为天下式;穷其变,知不穷,得地上势。知变守恒却穷变知新,我认真理,我不认真。

技术相干订阅~
另外有 throws 闲杂频道 @dsuset
转载频道 @dsusep
极小可能会有批评zf的消息 如有不适可退出
suse小站(面向运气编程): https://WOJS.org/#/
Download Telegram
me 里有一个字符串: 1keatGU3dFVKlkTFZESVpmUDZlRKRHVIBXTNZEcIFFWWJUTrJVc
手动分析了一下 BEL 函数.... 我整理一下
int BEL(int a) {
// dx = 0x55555556
// ax = (int32_t) a1
// cx = ax + 2
// ax = cx // ax + 2
// dx = ax * dx // (ax + 2) * 0x55555556
// ax = cx // ax + 2
// ax = ax >> 31 // 0x1f // ax + 2 >> 31
// dx -= ax // (ax + 2) * 0x55555556 - ax + 2 >> 31
// ax = dx // ax * dx - ax
// ax << 2 // ax * 4 // 现在估计没人用这种位运算“优化”了
// ((ax + 2) * 0x55555556 - ax + 2 >> 31) * 4
// ax++
return ((a + 2) * 0x55555556 - ax + 2 >> 31) * 4
}

有没有 可能 是 这样 呢?
在测试 中(
如果真的是 int BEL(void); 那 就应该 是 (2 * 0x55555556 - ax + 2 >> 31)*4 吧(
我 Python ctypes 试了一下,


for i in range(0, 1000):
print(c.BEL(i))
1
5
5
5
9
9
9
13
13
13
17
17
17


从 1 开始遵循一个规律: 每三个数加四
但反编译出来的明显不能用...


irb(main):021:0> def bel n
irb(main):022:1> 4 * (n + 2) / 3 | 1
irb(main):023:1> end

(0..1000).each { |n| puts bel n }

3
5
5
7
9
9
11
13
13
15
17
17
19
def bel_asm(n)
ax = n
cx = ax + 2
dx = 1431655766
ax = cx
dx, ax = ax * dx
ax = cx
ax >>= 31
dx -= ax
ax = dx
ax <<= 2
ax += 1
return ax
end
This media is not supported in your browser
VIEW IN TELEGRAM
「我的技术居然不如机器」
探索出了能用的公式,实现了 liba.so!BEL (int BEL(int n))
def CoolApk::Token.bel(n)
(4 * (n - 1) / 3 | 3) + 2
end
This media is not supported in your browser
VIEW IN TELEGRAM
#tech #Lowlvl_backend duangsuse 在 decompiler 工具的帮助下(删除)取得成就:
native code 已经阻止不了我了
(当然这次就到此为止吧,还有更有意义的事情要做
This media is not supported in your browser
VIEW IN TELEGRAM
Forwarded from interesting ¯\\_(ツ)_/¯
内存不够可以下载点内存.. #高科技 #ram #magic #url
http://DownloadMoreRAM.com
This media is not supported in your browser
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM