decompiling之任何人都可以识别此代码段的编程语言吗
linjiqin
阅读:54
2025-05-04 20:05:19
评论:0
我一直在尝试创建一个 Android 应用程序来使用我手机上的 IR blaster 控制各种设备。作为起点,我想获得另一个应用程序使用的脉冲,即小米的“Mi Remote”应用程序。
我安装了应用程序,并从 Android 上的 /data
目录复制了应用程序的数据。我设法找到了一个 SQLite 数据库,其中包含我的设备的频率和脉冲信息。它被存储为代码片段,如下所示。谁能认出这是什么语言?
if(exts~=nil) then
timing_on=exts[9]
timing_off=exts[10]
bytes1={}
for i=1,9,1 do bytes1[i]=bytes[i] bytes1[i+9]=bytes[i] end
bytes1[13]=0x60
if(((timing_on==0)or(timing_on==nil))and((timing_off==0) or(timing_off==nil)))then return end
if(timing_on~=nil)and(timing_on>0) then
if(timing_on<600) then
if(timing_on%60==0) then
bytes1[2]=(bytes1[2]&0x0F)+0x80
else bytes1[2]=(bytes1[2]&0x0F)+0x90
end
elseif(timing_on>=600)and(timing_on<1200) then
if(timing_on%60==0) then
bytes1[2]=(bytes[2]&0x0F)+0xA0
else bytes1[2]=(bytes1[2]&0x0F)+0xB0
end
elseif(timing_on>=1200) then
if(timing_on%60==0) then
bytes[2]=(bytes1[2]&0x0F)+0xC0
else bytes1[2]=(bytes1[2]&0x0F)+0xD0
end
end
bytes1[3]=bytes1[3]+math.floor((timing_on\/60)%10)
bytes1[9]=(((bytes1[1]&0x0F)+(bytes1[2]&0x0F)+(bytes1[3]&0x0F)+(bytes1[4]&0x0F)+(bytes1[6]>>4)+0x0C)<<4)
bytes1[11]=bytes1[2]
bytes1[12]=bytes1[3]
bytes1[15]=(timing_on&0xFF)
bytes1[16]=((timing_on>>8)&0x0F)
bytes1[17]=0
bytes1[18]=(((bytes1[9]>>4)+(bytes1[15]>>4)+(bytes1[16]>>4)+(bytes1[17]>>4)+0x0D)<<4)+0x02
elseif(timing_off~=nil)and(timing_off>0)then
if(timing_off<600) then
if(timing_off%60==0) then
bytes1[2]=(bytes1[2]&0x0F)+0x80
else
bytes1[2]=(bytes1[2]&0x0F)+0x90
end
elseif(timing_off>=600)and(timing_off<1200) then
if(timing_off%60==0) then
bytes1[2]=(bytes1[2]&0x0F)+0xA0
else bytes1[2]=(bytes1[2]&0x0F)+0xB0
end
elseif(timing_off)>=1200 then
if(timing_off%60==0) then
bytes1[2]=(bytes1[2]&0x0F)+0xC0
else bytes1[2]=(bytes1[2]&0x0F)+0xD0
end
end
bytes1[3]=bytes1[3]+math.floor((timing_off\/60)%10)
bytes1[9]=(((bytes1[1]&0x0F)+(bytes1[2]&0x0F)+(bytes1[3]&0x0F)+(bytes1[4]&0x0F)+(bytes1[6]>>4)+0x0C)<<4)
bytes1[11]=bytes1[2]
bytes1[12]=bytes1[3]
bytes1[16]=((timing_off&0x0F)<<4)
bytes1[17]=(timing_off>>4)
bytes1[15]=0
bytes1[18]=(((bytes1[9]>>4)+(bytes1[15]>>4)+(bytes1[16]>>4)+(bytes1[17]>>4)+0x0D)<<4)+0x01
end
bytes=bytes1
end
请您参考如下方法:
可能是 Lua。它有 elseif
和 nil
以及一个带有 .floor()
函数的数学库。
声明
1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。