|
#1
|
|||
|
|||
Ripping from v0!d keygenme 1
Dear All
I want to make a keygen from the ripped code from the keygenme. Preparing keygen is very simple in vb, masm or cpp. But I want to ripping code fully from the keygenme. Don't know what is the issue. Would you please suggest? https://mega.nz/file/YggXmQbA#JkKo3pEIDFYynK_YMBMpBhTTGZ2k5Ypm5Iy_TBGlF0s Note: not sure external link for this case is allowed or not. Thanks |
#2
|
|||
|
|||
What is the specific goal you are trying to reach?
is it that you want to rip code from vcrkme01.exe into your keygen.asm project or smth else PS keygen.exe is crashing in my case (silent close on Generate button) vcrkme01.exe is doing nothing (if filled in both fields and pressing [Check] button |
The Following User Says Thank You to sendersu For This Useful Post: | ||
Zeocrack (10-06-2022) |
#3
|
|||
|
|||
Thanks for reply. I just want rip from keygenme and make a keygen . Yes the keygen is closing but I couldn't find why. The goal is learn ripping and make it workable.
Thanks |
#4
|
|||
|
|||
Hi Zeocrack
I've analyzed your code, the culprit looks like comes from ripped code it is the assembly instruction mov ebp, temp which is overwriting value of register ebp (which is used when you call any WinAPI + passing some local variable eg in your case - after you damaged correct ebp value you are calling afterwards this: invoke SetDlgItemText,hWnd,ID_OUTPUT,addr buffer and it translates to the following asm code: CPU Disasm Address Hex dump Command Comments 004012DE |. 68 1E314000 PUSH OFFSET 0040311E ; /Text = "Z-K25494-2549" 004012E3 |. 6A 65 PUSH 65 ; |ControlID = 101. 004012E5 |. FF75 08 PUSH DWORD PTR SS:[EBP+8] ; |hDialog 004012E8 |. E8 AB000000 CALL and the crash is on the line which is trying to use the (damaged) value of EBP register... usually app should not use EBP as data register, so either do not use it (use another one), or if you need to use it - do the push ebp ... change ebp + math ...pop ebp |
#5
|
|||
|
|||
In fact ebp/rbp is used by the x86 architecture as the base pointer for the stack specifically in instructions enter and leave.
If the frame is managed only via esp/rsp with push, pop, call, ret and add/sub, then the ebp could actually be used on effect as an ordinary register. It also may have some nuances in how it appears in the addressing modes. In general, addressing modes combined with opcode specific register uses can help infer optimal register allocation for a given task. |
Tags |
keygening |
Thread Tools | |
Display Modes | |
|
|