Сейчас на форуме: bartolomeo, -Sanchez- (+4 невидимых)

 eXeL@B —› Вопросы новичков —› Помогите разобраться со взломом регистрации
Посл.ответ Сообщение

Ранг: 1.9 (гость)
Активность: 0=0
Статус: Участник

Создано: 08 апреля 2006 22:44
· Личное сообщение · #1

Имеется кусок тода который сравнивает введенный мною текст с чем то и выдает соответственно результат
0043DD68 |. PUSH 50 ; /Count = 50 (80.)
0043DD6A |. PUSH RIP.00570A08 ; |Buffer = RIP.00570A08
0043DD6F |. PUSH 3E9 ; |ControlID = 3E9 (1001.)
0043DD74 |. PUSH EBX ; |hWnd
0043DD75 |. CALL DWORD PTR DS:[<&USER32.GetDlgItemTe>; \GetDlgItemTextA
0043DD7B TEST EAX,EAX
0043DD7D |. JNZ SHORT RIP.0043DD8D
0043DD7F |. MOV BYTE PTR DS:[570A08],AL
0043DD84 |. POP EDI
0043DD85 |. POP ESI
0043DD86 |. POP EBX
0043DD87 |. MOV ESP,EBP
0043DD89 |. POP EBP
0043DD8A |. RETN 10
0043DD8D |> MOV EDI,RIP.00570A08 ; ASCII "tyuoio"
0043DD92 |. OR ECX,FFFFFFFF
0043DD95 |. XOR EAX,EAX
0043DD97 |. XOR ESI,ESI
0043DD99 |. REPNE SCAS BYTE PTR ES:[EDI]
0043DD9B |. NOT ECX
0043DD9D |. DEC ECX
0043DD9E |. MOV DWORD PTR SS:[ESP+10],0
0043DDA6 |. MOV DWORD PTR SS:[ESP+18],0
0043DDAE |. MOV DWORD PTR SS:[ESP+1C],0
0043DDB6 JE RIP.0043DEA4
0043DDBC |> MOV AL,BYTE PTR DS:[ESI+570A08]
0043DDC2 |. MOV DL,BYTE PTR DS:[ESI+570A09]
0043DDC8 |. MOVSX ECX,AL
0043DDCB |. MOV DWORD PTR SS:[ESP+14],ECX
0043DDCF |. PUSH EDX
0043DDD0 |. FILD DWORD PTR SS:[ESP+18]
0043DDD4 |. PUSH EAX
0043DDD5 |. FADD DWORD PTR SS:[ESP+18]
0043DDD9 |. FSTP DWORD PTR SS:[ESP+18]
0043DDDD |. CALL RIP.0043DCE0
0043DDE2 |. ADD ESP,8
0043DDE5 |. MOV EDI,RIP.00570A08 ; ASCII "tyuoio"
0043DDEA |. OR ECX,FFFFFFFF
0043DDED |. XOR EAX,EAX
0043DDEF |. INC ESI
0043DDF0 |. FADD QWORD PTR SS:[ESP+18]
0043DDF4 |. REPNE SCAS BYTE PTR ES:[EDI]
0043DDF6 |. FSTP QWORD PTR SS:[ESP+18]
0043DDFA |. NOT ECX
0043DDFC |. DEC ECX
0043DDFD |. CMP ESI,ECX
0043DDFF |. JB SHORT RIP.0043DDBC
0043DE01 |. FLD DWORD PTR SS:[ESP+10]
0043DE05 |. FCOMP DWORD PTR DS:[483320]
0043DE0B |. FSTSW AX
0043DE0D |. TEST AH,40
0043DE10 JE RIP.0043DEA4
0043DE16 |. FLD QWORD PTR SS:[ESP+18]
0043DE1A |. FSUB QWORD PTR DS:[483318]
0043DE20 |. FABS
0043DE22 |. FCOMP QWORD PTR DS:[483310]
0043DE28 |. FSTSW AX
0043DE2A |. TEST AH,1
0043DE2D JE SHORT RIP.0043DEA4
0043DE2F |. PUSH 0 ; /Style = MB_OK|MB_APPLMODAL
0043DE31 |. PUSH RIP.004953E8 ; |Title = "Thank you for registration!"
0043DE36 |. PUSH RIP.004953CC ; |Text = "RIP has been registered!!!"
0043DE3B |. PUSH EBX ; |hOwner
0043DE3C |. CALL DWORD PTR DS:[<&USER32.MessageBoxA>>; \MessageBoxA
0043DE42 |. MOV EDI,RIP.00570A08 ; ASCII "tyuoio"
0043DE47 |. OR ECX,FFFFFFFF
0043DE4A |. XOR EAX,EAX
0043DE4C |. REPNE SCAS BYTE PTR ES:[EDI]
0043DE4E |. NOT ECX
0043DE50 |. SUB EDI,ECX
0043DE52 |. MOV EAX,ECX
0043DE54 |. MOV ESI,EDI
0043DE56 |. MOV EDI,RIP.0049F8EC ; ASCII "fghfgh"
0043DE5B |. SHR ECX,2
0043DE5E |. REP MOVS DWORD PTR ES:[EDI],DWORD PTR DS>
0043DE60 |. MOV ECX,EAX
0043DE62 |. XOR EAX,EAX
0043DE64 |. AND ECX,3
0043DE67 |. REP MOVS BYTE PTR ES:[EDI],BYTE PTR DS:[>
0043DE69 |. MOV EDI,RIP.0049F8EC ; ASCII "fghfgh"
0043DE6E |. OR ECX,FFFFFFFF
0043DE71 |. REPNE SCAS BYTE PTR ES:[EDI]
0043DE73 |. NOT ECX
0043DE75 |. PUSH ECX ; /BufSize
0043DE76 |. MOV ECX,DWORD PTR DS:[49FA50] ; |
0043DE7C |. PUSH RIP.0049F8EC ; |Buffer = RIP.0049F8EC
0043DE81 |. PUSH 1 ; |ValueType = REG_SZ
0043DE83 |. PUSH EAX ; |Reserved => 0
0043DE84 |. PUSH RIP.004953C8 ; |ValueName = "Key"
0043DE89 |. PUSH ECX ; |hKey => 6C
0043DE8A |. CALL DWORD PTR DS:[<&ADVAPI32.RegSetValu>; \RegSetValueExA
0043DE90 |. PUSH 1 ; /Result = 1
0043DE92 |. PUSH EBX ; |hWnd
0043DE93 |. CALL DWORD PTR DS:[<&USER32.EndDialog>] ; \EndDialog
0043DE99 |. XOR EAX,EAX
0043DE9B |. POP EDI
0043DE9C |. POP ESI
0043DE9D |. POP EBX
0043DE9E |. MOV ESP,EBP
0043DEA0 |. POP EBP
0043DEA1 |. RETN 10
0043DEA4 |> PUSH 30 ; /Style = MB_OK|MB_ICONEXCLAMATION|MB_APPLMODAL
0043DEA6 |. PUSH RIP.004953A8 ; |Title = "You have entered invalid code."
0043DEAB |. PUSH RIP.0049538C ; |Text = "Invalid registration code!"
0043DEB0 |. PUSH EBX ; |hOwner
0043DEB1 |. CALL DWORD PTR DS:[<&USER32.MessageBoxA>>; \MessageBoxA
0043DEB7 |> POP EDI ; Default case of switch 0043DD44

Для чего нужны команды test ah,1 и test ah,40? Текст fghfgh я ввел для пробы


 eXeL@B —› Вопросы новичков —› Помогите разобраться со взломом регистрации
Эта тема закрыта. Ответы больше не принимаются.
   Для печати Для печати