Tham khảo tài liệu 'cracker handbook part 289', công nghệ thông tin, kỹ thuật lập trình phục vụ nhu cầu học tập, nghiên cứu và làm việc hiệu quả | - Double click lên String trên chúng ta sẽ quay trở lại màn hình chính của Olly. Dịch lên một chút chúng ta đặt BP tại hàm sau Quote 0042DB17 . FF91 A0000000 CALL DWORD PTR DS ECX A0 Set BP here II - Cracking - Sau khi đặt BP tại hàm trên chúng ta nhấn Ctrl F2 để Restart lại tiếp theo nhấn F9 để run chương trình. Chúng ta tiến hành nhập Fake Serial vào chú ý các bạn nên gõ FS ra một file sau đó copy lại và paste vào lý do là vì nếu bạn gõ thì chỉ cần gõ 1 kí tự thôi nó sẽ tự Break trong Olly ngay . Sau khi nhập xong chúng ta sẽ Break tại hàm trên Quote 0042DB17 . FF91 A0000000 CALL DWORD PTR DS ECX A0 We re here - Trace qua đoạn code này chúng ta sẽ đến đây Code 0042DB35 8B45 E8 MOV EAX DWORD PTR SS EBP-18 Fake Serial 0042DB38 . 50 PUSH EAX 0042DB39 . FF15 24104000 CALL DWORD PTR DS Get Length FS 0042DB3F . 33C9 XOR ECX ECX 0042DB41 . 83F8 06 CMP EAX 6 Length FS must equal 6 0042DB44 . 0F95C1 SETNE CL CL 1 if Length FS 6 0042DB47 . F7D9 NEG ECX 0042DB49 . 8BF9 MOV EDI ECX EDI ECX 0042DB4B . 8D4D E8 LEA ECX DWORD PTR SS EBP-18 0042DB4E . FF15 E8114000 CALL DWORD PTR DS 0042dB54 . 8B1D E4114000 MOV EBX DWORD PTR DS 0042DB5A . 8D4D E4 LEA ECX DWORD PTR SS EBP-1C 0042DB5D . FFD3 CALL EBX 0042DB5F . 66 85FF TEST DI DI If EDI 0 then 0042DB62 . 0F85 BC010000 JNZ Jump out of check Serial - Qua đoạn code trên bạn đã hiểu tại sao lại phải gõ FS ra rùi paste vô textbox rùi chứ. Bởi vì nếu bạn nhập bằng tay vào thì chúng ta chỉ được một kí tự thôi và Olly sẽ Break ngay lập tức do đó chúng ta sẽ không thể vượt qua được đoạn check length . He he nhưng có một mẹo nhỏ để các bạn có thể vượt qua được đoạn check length nếu chỉ nhập một kí tự đó là khi đến lệnh Test DI DI bạn hãy Assemble click Space tại câu lệnh nhảy JNZ ở phía dưới và sửa lại câu lệnh này. Oki - Bây giờ sau khi chúng ta đã vượt qua được đoạn check Length