首页
社区
课程
招聘
[求助]PB源玛转C++编译或其他语言编译
发表于: 2010-4-8 23:04 4240

[求助]PB源玛转C++编译或其他语言编译

2010-4-8 23:04
4240
这个是我喊朋友帮我写的注册机,是PB的~
但是这个不知道为什么输出的是错的(不知那里出问题)

想用 VB E语言 C++等把这个源玛重新编译一个程序~

特此感谢~

integer li
integer li_pass
integer li_len
integer li1
integer listart = 1
integer lipos = 1
string lc
string ls1
string lsrtn

li_pass = asc("8")
lsrtn = ""
ls_pass = trim(ls_pass)
li_len = len(ls_pass)

if li_len < 8 then
        ls_pass = fill("A",8 - li_len) + ls_pass
end if

ls_pass = right(ls_pass,8)
li = 1
li_len = 8

do while li <= 4
        lc = mid(ls_pass,li_len,1)
        li1 = asc(lc)
        lsrtn = lsrtn + string(mod(li1,li_pass))
        li_pass = li_pass + 8
        lc = mid(ls_pass,li,1)
        li1 = asc(lc)
        lsrtn = lsrtn + string(mod(li1,li_pass))
        li_pass = li_pass - 11
        li_len = li_len - 1
        li = li + 1
loop

return lsrtn

ls_pass 是机器码
lsrtn是注册码

ls_pass 这个是输入的
lsrtn 是输出的

算法汉语表达意思大约就是

取八位的机器码,超过八位的取后八位,不足的前面补 大写的A,然后 去 8 1  7 2   6 3  5 4  和一个动态修改的key进行mod运算 ~然后取结果就可以了

希望有朋友能给个编译好的EXE或者代码 万分感谢``

[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

收藏
免费 0
支持
分享
最新回复 (2)
雪    币: 217
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
有输入输出的实例吗?这样好测试。就是输入什么,结果得到什么?
2010-4-15 09:12
0
雪    币: 217
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
我用VB的写了一个,你看下。在语法上PB和VB非常相似。

Private Sub Command1_Click()
Text2.Text = aaa(Text1.Text)

End Sub

Public Function aaa(b As String) As String
Dim li As Long
Dim li_pass As Long
Dim li_len As Long
Dim li1 As Long
Dim listart As Long   '= 1
Dim lipos As Long   '= 1
Dim lc As String
Dim ls1 As String
Dim lsrtn As String
Dim str As String
str = "AAAAAAAA"
ls_pass = b
listart = 1
lipos = 1
li_pass = Asc("8")
lsrtn = ""
ls_pass = Trim(ls_pass)
li_len = Len(ls_pass)

If li_len < 8 Then
ls_pass = Left(str, 8 - li_len) + ls_pass
  'ls_pass = Space("A", 8 - li_len) + ls_pass
End If

ls_pass = Right(ls_pass, 8)
li = 1
li_len = 8

Do While li <= 4
  lc = Mid(ls_pass, li_len, 1)
  li1 = Asc(lc)
  lsrtn = lsrtn + CStr(li1 Mod li_pass)
  li_pass = li_pass + 8
  lc = Mid(ls_pass, li, 1)
  li1 = Asc(lc)
  lsrtn = lsrtn + CStr(li1 Mod li_pass)
  li_pass = li_pass - 11
  li_len = li_len - 1
  li = li + 1
Loop

aaa = lsrtn

End Function
上传的附件:
2010-4-15 09:16
0
游客
登录 | 注册 方可回帖
返回
//