一款送货单软件单机版菜鸟分析-
不确定是不是发这个板块一款送货单软件单机版菜鸟分析 肯请表哥们给解个疑问
先附上自己的简易分析
公司名:河北石家庄
注册码:400ED74C6CEDD5CCE3AD3640D5423690CBE69F926F3E4EA152F78E4E451AF158
软件地址:
链接: http://pan.baidu.com/s/1sl6RSXf 密码: 7bb6
CPU Disasm
地址 十六进制数据 指令 注释
00A0F8DC/.55 PUSH EBP ; 注册段首
00A0F8DD|.8BEC MOV EBP,ESP
00A0F8DF|.B9 09000000 MOV ECX,9
00A0F8E4|>6A 00 /PUSH 0 ; 循环储备 72.字节堆栈上
00A0F8E6|.6A 00 |PUSH 0
00A0F8E8|.49 |DEC ECX
00A0F8E9|.^ 75 F9 \JNZ SHORT 00A0F8E4
00A0F8EB|.51 PUSH ECX
00A0F8EC|.8945 FC MOV DWORD PTR SS:,EAX
00A0F8EF|.33C0 XOR EAX,EAX
00A0F8F1|.55 PUSH EBP
00A0F8F2|.68 33FCA000 PUSH 00A0FC33
00A0F8F7|.64:FF30 PUSH DWORD PTR FS:
00A0F8FA|.64:8920 MOV DWORD PTR FS:,ESP ; 安装 <???> SE 处理程序
00A0F8FD|.8D55 E8 LEA EDX,
00A0F900|.8B45 FC MOV EAX,DWORD PTR SS:
00A0F903|.8B80 14030000 MOV EAX,DWORD PTR DS:
00A0F909|.E8 BE13A5FF CALL 00460CCC ; 取公司名
00A0F90E|.8B45 E8 MOV EAX,DWORD PTR SS:
00A0F911|.8D55 EC LEA EDX,
00A0F914|.E8 B7AD9FFF CALL 0040A6D0
00A0F919|.837D EC 00 CMP DWORD PTR SS:,0
00A0F91D|.75 2E JNE SHORT 00A0F94D
00A0F91F|.6A 40 PUSH 40 ; /Arg1 = 40
00A0F921|.B9 40FCA000 MOV ECX,00A0FC40 ; |
00A0F926|.BA 48FCA000 MOV EDX,00A0FC48 ; |UNICODE "请输入公司名称!"
00A0F92B|.A1 6455A300 MOV EAX,DWORD PTR DS: ; |
00A0F930|.8B00 MOV EAX,DWORD PTR DS: ; |
00A0F932|.E8 A942A7FF CALL 00483BE0 ; \Sale.00483BE0
00A0F937|.8B45 FC MOV EAX,DWORD PTR SS:
00A0F93A|.8B80 14030000 MOV EAX,DWORD PTR DS:
00A0F940|.8B10 MOV EDX,DWORD PTR DS:
00A0F942|.FF92 C4000000 CALL DWORD PTR DS:
00A0F948|.E9 69020000 JMP 00A0FBB6
00A0F94D|>B2 01 MOV DL,1
00A0F94F|.A1 50074200 MOV EAX,DWORD PTR DS:
00A0F954|.E8 F7449FFF CALL 00403E50
00A0F959|.8945 F8 MOV DWORD PTR SS:,EAX
00A0F95C|.8D55 E0 LEA EDX,
00A0F95F|.33C0 XOR EAX,EAX
00A0F961|.E8 CA369FFF CALL 00403030
00A0F966|.8B45 E0 MOV EAX,DWORD PTR SS:
00A0F969|.8D55 E4 LEA EDX,
00A0F96C|.E8 D3BE9FFF CALL 0040B844 ; 应该是判断目录下Licenses.dat文件--注册文件
00A0F971|.8B55 E4 MOV EDX,DWORD PTR SS:
00A0F974|.8D45 F4 LEA EAX,
00A0F977|.B9 64FCA000 MOV ECX,00A0FC64 ; ASCII "Licenses.dat"
00A0F97C|.E8 6B579FFF CALL 004050EC
00A0F981|.33C0 XOR EAX,EAX
00A0F983|.55 PUSH EBP
00A0F984|.68 5DFBA000 PUSH 00A0FB5D
00A0F989|.64:FF30 PUSH DWORD PTR FS:
00A0F98C|.64:8920 MOV DWORD PTR FS:,ESP ; 安装 <???> SE 处理程序
00A0F98F|.8D55 D8 LEA EDX,
00A0F992|.8B45 FC MOV EAX,DWORD PTR SS:
00A0F995|.8B80 10030000 MOV EAX,DWORD PTR DS:
00A0F99B|.E8 2C13A5FF CALL 00460CCC ; 取注册码
00A0F9A0|.8B45 D8 MOV EAX,DWORD PTR SS:
00A0F9A3|.8D55 DC LEA EDX,
00A0F9A6|.E8 25AD9FFF CALL 0040A6D0
00A0F9AB|.8B45 DC MOV EAX,DWORD PTR SS:
00A0F9AE|.50 PUSH EAX
00A0F9AF|.8D55 CC LEA EDX,
00A0F9B2|.8B45 FC MOV EAX,DWORD PTR SS:
00A0F9B5|.8B80 14030000 MOV EAX,DWORD PTR DS:
00A0F9BB|.E8 0C13A5FF CALL 00460CCC
00A0F9C0|.8D45 CC LEA EAX,
00A0F9C3|.BA 7CFCA000 MOV EDX,00A0FC7C ; 应该是固定字符;"-你Y的,破解者死全家!"
00A0F9C8|.E8 DB569FFF CALL 004050A8
00A0F9CD|.8B45 CC MOV EAX,DWORD PTR SS:
00A0F9D0|.8D4D D0 LEA ECX,
00A0F9D3|.BA 9CFCA000 MOV EDX,00A0FC9C ; ASCII "0760-81630888-122882899-013232366993!@#$%^&*()_+" 应该也是固定字符
00A0F9D8|.E8 3BABAAFF CALL 004BA518 ; [Sale.004BA518
00A0F9DD|.8B55 D0 MOV EDX,DWORD PTR SS: ASCII "851FA154E4E87F251AE4E3F629F96EBC0963245D0463DA3ECC5DDEC6C47DE004"
00A0F9E0|.8D4D D4 LEA ECX,
00A0F9E3|.A1 204CA300 MOV EAX,DWORD PTR DS:
00A0F9E8|.8B00 MOV EAX,DWORD PTR DS:
00A0F9EA|.E8 39470000 CALL 00A14128 ; [Sale.00A14128, 循环倒序
00A0F9EF|.8B55 D4 MOV EDX,DWORD PTR SS: ; 倒序400ED74C6CEDD5CCE3AD3640D5423690CBE69F926F3E4EA152F78E4E451AF158
00A0F9F2|.58 POP EAX
00A0F9F3|.E8 F4579FFF CALL 004051EC ; 关键CALL--真假码对比
00A0F9F8|.0F85 DD000000 JNZ 00A0FADB
疑问:想知道00A0F9DD地址ASCII "851FA154E4E87F251AE4E3F629F96EBC0963245D0463DA3ECC5DDEC6C47DE004"这个值是怎么来的,我跟了半天水平太菜没有头绪,这个值倒序过来就是真码,望各位表哥指点一下,感谢! 应该是固定字符;"-你Y的,破解者死全家!"
这个作者。。。 你可以看看他前面的call里面或者前面是不是有什么跳转 跟进00A0F9D8|.E8 3BABAAFF CALL 004BA518 ; [Sale.004BA518 这个call
第一段数据转换循环:
第一个call:00A0F9D8 E8 3BABAAFF call Sale.004BA518
004BA57A 8D45 EC lea eax,dword ptr ss:
004BA57D 50 push eax
004BA57E 8B45 F0 mov eax,dword ptr ss:
004BA581 0FB60430 movzx eax,byte ptr ds:
004BA585 8945 E4 mov dword ptr ss:,eax
004BA588 C645 E8 00 mov byte ptr ss:,0x0
004BA58C 8D55 E4 lea edx,dword ptr ss:
004BA58F 33C9 xor ecx,ecx
004BA591 B8 00A64B00 mov eax,Sale.004BA600 ; ASCII "%x"
004BA596 E8 5D25F5FF call Sale.0040CAF8
004BA59B 8B45 EC mov eax,dword ptr ss: ; ASCII "C4" ASCII "2F"
004BA59E E8 FDAAF4FF call Sale.004050A0
004BA5A3 48 dec eax
004BA5A4 75 10 jnz short Sale.004BA5B6
004BA5A6 8D45 EC lea eax,dword ptr ss:
004BA5A9 8B4D EC mov ecx,dword ptr ss:
004BA5AC BA 0CA64B00 mov edx,Sale.004BA60C ; UNICODE "0"
004BA5B1 E8 36ABF4FF call Sale.004050EC
004BA5B6 8D45 F4 lea eax,dword ptr ss:
004BA5B9 8B55 EC mov edx,dword ptr ss: ; ASCII "C4"
004BA5BC E8 E7AAF4FF call Sale.004050A8
004BA5C1 46 inc esi ; Sale.00505BEC
004BA5C2 4B dec ebx
004BA5C3^ 75 B5 jnz short Sale.004BA57A
第二段数据转换循环:
第二个call:00A0F9EA E8 39470000 call Sale.00A14128
00A14157 8D45 FC lea eax,dword ptr ss:
00A1415A 8A541F FF mov dl,byte ptr ds:
00A1415E E8 550E9FFF call Sale.00404FB8
00A14163 8B55 FC mov edx,dword ptr ss:
00A14166 8BC6 mov eax,esi
00A14168 E8 3B0F9FFF call Sale.004050A8
00A1416D 4B dec ebx
00A1416E 85DB test ebx,ebx
00A14170^ 75 E5 jnz short Sale.00A14157
具体的还需要你自己看,两个call 分别跟进去,简单的运算方法。不复杂。
这个作者真性情呀{:titter:} Dxer 发表于 2017-5-2 15:48
第一段数据转换循环:
第一个call:00A0F9D8 E8 3BABAAFF call Sale.004BA518
感谢,我当时也跟到这,可能太菜了,没明白咋回事,我再多跟两遍,看看 ,谢谢
野猫III 发表于 2017-5-2 17:43
这个作者真性情呀
艾玛,54教学的创始人惊现。抱大腿
页:
[1]