Through the analysis of , The registration code is divided into six parts :
Addr2: "zzz" These three characters don't represent length
Key1: "32 A string of hexadecimal numbers " It's in memory in the form of : For example, the string is
"18A519949D4E5F1FAED08A3EAB7CC665" It takes two characters as a byte , In memory in sequence ===> 18 A5 19 94 wait
Key2: "32 A string of hexadecimal digits " ditto
Chksm: "kk" Just one byte
The second half of the above six parts will be copied to the following location :
key1 Value 5e2fdf
key2 Value 5e2fef
key1 and key2 The values in are tightly linked in memory .
Chksm Value 5e30f9
The first half of the above six parts , There will be a comparison , That is to say as like as two peas . In addition to the space in the middle, it can be replaced with other characters
use PEID Check and find no shell , Then look at the import table , Find the key function
stay lstrcmpiA Break down , Enter the registration code at will , And then I found out , Register the judgment function in sub_568A74
The separation and copy of the whole string is closely related to sub_569fa4 of , He'll clear some of the separators , Go to the next part .
The first half of the six parts are tested in the following form :
among 5e42fc It's a transfer station :
stay sub_569fa4 in , Will copy the separated string to 5e42fc in , If it's the second half of the string, it will be copied to [5e2F14,+0xeb) The corresponding position of
The above is the separation and partial detection of six registration codes .
Here is checksum How to calculate the value of :
Is to put 5e2f14 At the beginning 0xeb Bytes , Add all in bytes
Because this data block has been set before 0, So there won't be any other factors .
checksum Is to put 5 The second half of each part is added in bytes , The lower byte of the resulting value , Namely checksum The value of the .
in addition 0x5e3238 The value of determines the expiration time of the software
0x5e3238 The value of is determined by key1 The head of word And tail word Exclusive or obtained , Pay attention to the byte order , This value must be in [46e4,5221) Between , High byte must be &&0x80==0
key1 The last of 3 Bytes byte_5e2fec and 0x1f == 0x13 ==>5e2fec == 0x13 or 0x33 0x53 73 93 b3 e3
byte_5e2fec/32 ==> 5e31a2 !=5,8,6 that b3 No way. ` 0 1 2 3 4 5 6
Genuinely Licensed for personal use. personal use
Software is unlocked. All Updates released before 2018/03/28 are free for me.
The software has been unlocked . 2018 year 3 month 28 All previous upgrades are free for me .
- Fibonacci Sequence algorithm analysis
/************************************************* * Fibonacci Sequence algorithm analysis ****************************** ...
- Data structure and algorithm analysis ——C Language description The single linked list in Chapter 3
Data structure and algorithm analysis --C Language description The single linked list in Chapter 3 Something very basic . Go through the process . Some people say that the simplest and most stupid way to learn programming is to type the code on the book . I copied the header file ..c The source file is implemented by itself . list.h typede ...
- Chapter four Leader Electoral algorithm analysis
Leader The election Study leader Election algorithm , Mainly from the election overview , Algorithm analysis and source code analysis ( The following chapters write ) Three aspects . Leader Election overview During server startup Leader The election The implicit condition of an election is ZooKeepe ...
- Python Data structure and algorithm -- Algorithm analysis
In computer science , Algorithm analysis (Analysis of algorithm) It analyzes the amount of computing resources needed to execute a given algorithm ( For example, calculating time , Memory usage, etc ) The process of . The efficiency or complexity of the algorithm is theoretically expressed as a function . Its definition ...
- Algorithm analysis Analysis of Algorithms -------GeekforGeeker translate
Algorithm analysis Analysis of Algorithms Why do you do performance analysis ?Why performance analysis? There are many important factors we should consider in the field of computer Like user friendliness , modularization , Security ...
- Sum of factorials & Program running time & Algorithm analysis
example : Input n, Calculation S = 1! + 2! + 3! + 4! + ... + n! The last six ( Without leading 0). among n ≤ 106. analysis : Considering the data overflow, the program is as follows : #include <stdio ...
- GC One of --GC The algorithm analysis of 、 Garbage collector 、 Introduction to memory allocation strategy
One . summary garbage collection Garbage Collection Usually called “GC”, It was born in 1960 year MIT Of Lisp Language , After more than half a century , It's very mature now . jvm in , Program counter . Virtual machine stack . Ben ...
- XoftSpy 4.13 Analysis of the registration algorithm
[ title ]XoftSpy 4.13 Analysis of the registration algorithm [ author ]forever[RCT] [ Language ]VC [ Tools ]ida4.6,ollydbg1.1 [ Text ] The algorithm of this software is very simple , It's just for reverse division ...
- Data results and algorithm analysis (1)—— Algorithm analysis
While making sure an algorithm is correct , We should also ensure the effectiveness of the algorithm . The most important standard time for algorithm analysis is runtime T(N), Run time and the number of input elements N of . Mathematical basis T(N) = O(f(N)) Express T(N ...
- python Corpus processing （ Reading files from a folder , participle , To stop using words , Go to single word ）
# -*- coding:utf8 -*- import os import jieba def splitSentence(inputFile): fin = open(inputFile, 'r' ...
- Quartus Pin assignment of
Some functions related to pin assignment are in assignments Under menu , Remove assignments... Back-Annotate Assignment... Import Assignment... ...
- Use encryption technology to protect Java Source code / customized ClassLoader
Why encrypt ? For the traditional C or C++ For languages like that , To be in Web It's easy to protect the source code on the computer , Just don't publish it . Unfortunately ,Java The source code of the program is easy to be peeked at by others . As long as there's a decompiler , Anyone can analyze other people's code ...
- addClass function
- Xidian OJ (Problem 1006 - Turntable game )-- Dynamic programming
Topic link : http://acm.xidian.edu.cn/land/problem/detail?problem_id=1006 Description wm Recently I like a boring turntable unlocking game , He ...
- HDOJ1005 The sequence
Problem Description A number sequence is defined as follows:f(1) = 1, f(2) = 1, f(n) = (A * f(n - 1) ...
- jrae Source code parsing （ Two ）
This paper describes in detail the RAECost and SoftmaxCost Two classes . SoftmaxCost We already know .SoftmaxCost Class is given features and label Under the circumstances ( Super parameters are given ), Measure a given weight ( ...
- centos 6 Installation error
Missing ISO image The installer has tried to . but cannot find it on the hard drive. Please copy thi ...
- Golang Containers are different from header Parsing
Make a note of , use golang Implement a static resource container , Worship the strong man http.Handle("/", http.FileServer(http.Dir(currentPath+"/ ...
- python Statistical analysis of data
#-*- coding: utf-8 -*- # Statistical analysis of catering sales data from __future__ import print_function import pandas as pd cateri ...