рд╕рд░рд▓ рджрд░рд╛рд░ рдХреА рдЦреЛрдЬ (рднрд╛рдЧ 3)

рдирдорд╕реНрддреЗ, рд╣рдмреНрд░рд▓реБрдорд┐ред

рдореИрдВ рдЕрдкрдиреЗ рд▓реЗрдЦ рд╢реНрд░реГрдВрдЦрд▓рд╛ рдХреЗ рддреАрд╕рд░реЗ рднрд╛рдЧ рдХреЛ рдЖрдкрдХреЗ рд▓рд┐рдП quackies рдХреЗ рдЕрдзреНрдпрдпрди рдкрд░ рдкреНрд░рд╕реНрддреБрдд рдХрд░рддрд╛ рд╣реВрдВред рдЗрд╕ рд╡рд┐рд╖рдп рдореЗрдВ, рд╣рдо рдЖрдкрд╕реЗ рдХреБрдЫ рдкреИрдХрд░реНрд╕ рдХреЗ рдЕрдирдкреИрдХрд┐рдВрдЧ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░реЗрдВрдЧреЗ рдФрд░ рдЬрдЯрд┐рд▓ рд░реВрдк рд╕реЗ рдПрдВрдЯреА-рдбреАрдмрдЧрд┐рдВрдЧ рд╡рд┐рдзрд┐рдпреЛрдВ рдкрд░ рдХрд╛рдмреВ рдирд╣реАрдВ рдХрд░реЗрдВрдЧреЗред





1. рдореИрдиреБрдЕрд▓ рдЕрдирдкреИрдХрд┐рдВрдЧ



рдореЗрд░реЗ рджреНрд╡рд╛рд░рд╛ рдЖрд╡рд╢реНрдпрдХ рдЙрдкрдХрд░рдгреЛрдВ рд╕реЗ:



рд╕рд┐рджреНрдзрд╛рдВрдд


рдПрдХ рдкреИрдХреНрдб рдкреНрд░реЛрдЧреНрд░рд╛рдо рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ:

рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдЕрдирдкреИрдХрд░ рдХреЛрдб рд▓реЙрдиреНрдЪ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬреЛ рдкреИрдХреНрдб рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЛрдб рдХреЛ рдбрд┐рдХреНрд░рд┐рдкреНрдЯ рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░рддрд╛ рд╣реИред рдбрд┐рдХреНрд░рд┐рдкреНрд╢рди рдкреВрд░рд╛ рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж, рдУрдИрдкреА рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЗ рд▓рд┐рдП рдПрдХ рдЫрд▓рд╛рдВрдЧ рд▓рдЧрд╛рдИ рдЬрд╛рддреА рд╣реИ рдФрд░ рдлрд┐рд░ рдкрд╣рд▓реЗ рд╕реЗ рдЕрдирдкреИрдХ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЛрдб рдЪрд▓рдирд╛ рд╢реБрд░реВ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред



рдЕрдирдкреИрдХрд┐рдВрдЧ рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рд╣реЛрдЧрд╛:

1. RVA OEP рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдПрдВред

2. рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЛ рдбрдВрдк рдХрд░реЗрдВред

3. рдЖрдпрд╛рдд рддрд╛рд▓рд┐рдХрд╛ рдХреЛ рдкреБрдирд░реНрд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВред

4. рдкреНрд░рд╡реЗрд╢ рдмрд┐рдВрджреБ рдХреЛ рдореВрд▓ рдореЗрдВ рдмрджрд▓реЗрдВред



рддреЛ, рд╣рдореЗрдВ рдЬреЛ OEP рдкрддрд╛ рдЪрд╛рд╣рд┐рдП рд╡рд╣ рд╕реВрддреНрд░ рджреНрд╡рд╛рд░рд╛ рдЧрдгрдирд╛ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ:

RVA OEP = VA OEP - ImageBase



, рдЬрд╣рд╛рдВ:

Image Base рдореЗрдореЛрд░реА рдХрд╛ рдкрддрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рд╕реЗ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЛ рдореЗрдореЛрд░реА рдореЗрдВ рд▓реЛрдб рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ

OEP (рдУрд░рд┐рдЬрдирд▓ рдПрдВрдЯреНрд░реА рдкреЙрдЗрдВрдЯ) рд╡рд╣ рдкрддрд╛ рд╣реИ, рдЬрд╣рд╛рдВ рд╕реЗ рдпрджрд┐ рдпрд╣ рдкреИрдХ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рддреЛ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдЪрд▓рдирд╛ рд╢реБрд░реВ рд╣реЛ рдЬрд╛рдПрдЧрд╛ред

рд╡рд░реНрдЪреБрдЕрд▓ рдПрдбреНрд░реЗрд╕ (VA) - рдореЗрдореЛрд░реА рдореЗрдВ рдЖрдЗрдЯрдо рдХрд╛ рд╡рд░реНрдЪреБрдЕрд▓ рдПрдбреНрд░реЗрд╕

рд░рд┐рд▓реЗрдЯрд┐рд╡ рд╡рд░реНрдЪреБрдЕрд▓ рдПрдбреНрд░реЗрд╕ (RVA) - рд░рд┐рд▓реЗрдЯрд┐рд╡ рд╡рд░реНрдЪреБрдЕрд▓ рдПрдбреНрд░реЗрд╕ред рдкрддрд╛ ImageBase рдХреЗ рд╕рд╛рдкреЗрдХреНрд╖ рд╣реИред

рдареАрдХ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╣рдордиреЗ OEP рдХреЛ 00301000 рдХреЗ рдмрд░рд╛рдмрд░ рдкрд╛рдпрд╛, рдФрд░ ImageBase рдХреЛ 00300000 рдХреЗ рдмрд░рд╛рдмрд░, рдлрд┐рд░ RVA OEP рдХреЛ 1000 рдХреЗ рдмрд░рд╛рдмрд░ рдХрд┐рдпрд╛ред ImageBase рдХрд╛ рдореВрд▓реНрдп рдХрд┐рд╕реА рднреА рд╣реЗрдбрд░ рдПрдбрд┐рдЯрд░ PE рдореЗрдВ рджреЗрдЦрдХрд░ рдкрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

RVA OEP рдЦреЛрдЬрдиреЗ рдХреЗ рдмрд╛рдж рд╣рдореЗрдВ рдбрдВрдк рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЛ рд╣рдЯрд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдбрдВрдк рдХрд╛ рдЕрд░реНрде рд╣реИ - рдореЗрдореЛрд░реА рдХрд╛ рдХреНрд╖реЗрддреНрд░ (рднрд╛рдЧ) рдпрд╛ рдореЗрдореЛрд░реА рд╕реЗ рдбрд┐рд╕реНрдХ рдкрд░ рд╕реЗрд╡ рдХреА рдЧрдИ рдлрд╛рдЗрд▓ред рдбрдВрдк рдХреЛ рд╣рдЯрд╛рдиреЗ рдХрд╛ рдорддрд▓рдм рд╣рд╛рд░реНрдб рдбреНрд░рд╛рдЗрд╡ рдкрд░ рд╡рд╛рдВрдЫрд┐рдд рдореЗрдореЛрд░реА рдХреНрд╖реЗрддреНрд░ (рдЖрдорддреМрд░ рдкрд░ рдХрд╛рд░реНрдпрдХреНрд░рдо рджреНрд╡рд╛рд░рд╛ рдХрдмреНрдЬрд╛ рдХрд░ рд▓рд┐рдпрд╛ рдЧрдпрд╛) рдХреЛ рдмрдЪрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╣реИред рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, рд╣рдореЗрдВ рдЕрдирдкреИрдХреНрдб рдкреНрд░реЛрдЧреНрд░рд╛рдо рдорд┐рд▓рддрд╛ рд╣реИред

рдЕрдЧрд▓рд╛, рд╣рдореЗрдВ рдЖрдпрд╛рдд рддрд╛рд▓рд┐рдХрд╛ рдХреЛ рдкреБрдирд░реНрд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдЖрдпрд╛рдд рддрд╛рд▓рд┐рдХрд╛ рдЕрдкрдиреЗ рдСрдкрд░реЗрд╢рди рдХреЗ рджреМрд░рд╛рди рдХрд╛рд░реНрдпрдХреНрд░рдо рджреНрд╡рд╛рд░рд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рддреА рд╣реИред рдкреНрд░рд╛рд░рдВрдн рдореЗрдВ, рдЖрдпрд╛рдд рддрд╛рд▓рд┐рдХрд╛ рдЙрди рдкрддреЛрдВ рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рддреА рд╣реИ рдЬрд┐рди рдкрд░ рдЖрдпрд╛рддрд┐рдд рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рдирд╛рдо рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╕реНрдерд┐рдд рд╣реИрдВ, рдЕрд░реНрдерд╛рддреНред рдХрд╛рд░реНрдпрдХреНрд░рдо рд╕рдВрдЪрд╛рд▓рди рдХреЗ рджреМрд░рд╛рди рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдХрд╛рд░реНрдпред рдЬрдм рдХрд╛рд░реНрдпрдХреНрд░рдо рд╢реБрд░реВ рд╣реЛрддрд╛ рд╣реИ, рддреЛ рдпреЗ рдкрддреЗ (рдпрд╣ рд╕рднреА рдореЗрдореЛрд░реА рдореЗрдВ рд╣реИ) рдЖрдпрд╛рддрд┐рдд рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рдкреНрд░рддреНрдпрдХреНрд╖ рдкрддреЗ рджреНрд╡рд╛рд░рд╛ рдУрд╡рд░рд░рд╛рдЗрдЯ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред рдЗрд╕реЗ рдкреБрдирд░реНрд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдЙрди рдХреЛрд╢рд┐рдХрд╛рдУрдВ рдореЗрдВ рдЬреЛ рдореВрд▓ рд░реВрдк рд╕реЗ рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдХреЗ рдХрд┐рд╕реА рднреА рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рдкреНрд░рддреНрдпрдХреНрд╖ рдкрддреЗ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рдирд╛рдо рдХреЗ рдкрддреЗ рд╣реЛрддреЗ рд╣реИрдВ, рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ рдЗрди рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рдкрддреЗ рд╕реЗ рднрд░реЗ рд╣реЛрддреЗ рд╣реИрдВ рдЬрд┐рд╕рдореЗрдВ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЛ рдбрдВрдк рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдирд╛рдореЛрдВ рдХреЗ рдкрддреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рдЕрдм рдмрд╣рд╛рд▓ рдирд╣реАрдВ рдХреА рдЬрд╛ рд╕рдХрддреА рд╣реИ, рдФрд░ рдЗрд╕ рддрд░рд╣ рдХреЗ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЛ рд╢реБрд░реВ рдХрд░рддреЗ рд╕рдордп, рдкрд╣рд▓реЗ рд╕реЗ рд░рд┐рдХреЙрд░реНрдб рдХрд┐рдП рдЧрдП рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рдкреНрд░рддреНрдпрдХреНрд╖ рдкрддреЗ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдФрд░ рдпрд╣ рдУрдПрд╕ рдХреЗ рдЕрдиреНрдп рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдкрд░ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреА рдЕрдХреНрд╖рдорддрд╛ рдХреА рдУрд░ рдЬрд╛рддрд╛ рд╣реИред

рдФрд░ рдЕрдВрдд рдореЗрдВ, OEP рдХреЛ рдкреБрдирд░реНрд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВред рдпрд╣ рдХрд┐рд╕реА рднреА рдкреАрдИ рд╣реЗрдбрд░ рдПрдбрд┐рдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рдпрд╣ рд╕рдВрдкреВрд░реНрдг рд╕рд┐рджреНрдзрд╛рдВрдд рд╣реИред



рдЕрднреНрдпрд╛рд╕


рдЗрд╕ рд▓реЗрдЦ рдореЗрдВ рд╣рдо рджреЛ рдкреИрдХрд░реНрд╕ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВрдЧреЗред рдпреЗ рд╣реИрдВ UPX рдФрд░ ASPackред рдЕрдиреНрдп рдкреИрдХрд░реНрд╕ рдХреЛ рдЕрдирдкреИрдХ рдХрд░рдирд╛ рдЗрди рджреЛрдиреЛрдВ рдХреЛ рдЕрдирдкреИрдХ рдХрд░рдиреЗ рд╕реЗ рдмрд╣реБрдд рдЕрд▓рдЧ рдирд╣реАрдВ рд╣реЛрдЧрд╛ред



UPX


рдирд╡реАрдирддрдо рд╕рдВрд╕реНрдХрд░рдг рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВред рд╣рдо рдХреБрдЫ рдкреИрдХ рдХрд░рддреЗ рд╣реИрдВред рдбреАрдмрдЧрд░ рдХреЗ рдиреАрдЪреЗ рдЗрд╕реЗ рдЪрд▓рд╛рдПрдБред

рдкреИрдХреНрдб рдХреЛрдб рдХреЗ рдбрд┐рдХреНрд░рд┐рдкреНрд╢рди рдХреЗ рджреМрд░рд╛рди, рдкреИрдХрд░ рд╕реНрдЯреИрдХ рдХрд╛ рдкреВрд░реНрдг рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред рд╕реНрд╡рд╛рднрд╛рд╡рд┐рдХ рд░реВрдк рд╕реЗ, рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреИрдХреНрдб рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЗ рд▓рд┐рдП, рдкреИрдХрд░ рдХреЛ рд╕реНрдЯреИрдХ рдХреЗ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдореВрд▓реНрдп рдХреЛ рдмрдЪрд╛рдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИ рдФрд░ рдлрд┐рд░, рдЕрдирдкреИрдХрд┐рдВрдЧ рдХреЗ рдмрд╛рдж, рдЗрд╕реЗ рдкреБрдирд░реНрд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВред рд▓рдЧрднрдЧ рд╕рднреА рдкреИрдХрд░реНрд╕ рдореЗрдВ, рдЬрдм рд╡реЗ рдУрдИрдкреА рдкрд░ рд╕реНрд╡рд┐рдЪ рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рд╕реНрдЯреИрдХ рдХреЛ рдкреБрдирд░реНрд╕реНрдерд╛рдкрд┐рдд рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рд╕реНрдЯреИрдХ рдореЗрдВ рд╡реИрд▓реНрдпреВ рдПрд╕реНрдк -4 рдкрд░ рдкрдврд╝рд╛ рдЬрд╛рддрд╛ рд╣реИред

рдЗрд╕ рдкреНрд░рдХрд╛рд░, рдСрд▓реА рдореЗрдВ, рд╣рдордиреЗ "рдШрдВрдЯрд╛ рдПрд╕реНрдк -4" рдХрдорд╛рдВрдб рдХреЗ рд╕рд╛рде рдмреНрд░реЗрдХрдбрд╛рдЙрди рд░рдЦрд╛ред рдлрд┐рд░ рдХрд╛рд░реНрдпрдХреНрд░рдо рдЪрд▓рд╛рдПрдВ рдФрд░ рджреЗрдЦреЗрдВ рдХрд┐ рдмреНрд░реЗрдХ рдиреЗ рдпрд╣рд╛рдВ рдХрд╛рдо рдХрд┐рдпрд╛:



00472176 . 8D4424 80 LEA EAX,DWORD PTR SS:[ESP-80] //

0047217A > 6A 00 PUSH 0 //

0047217C . 39C4 CMP ESP,EAX //

0047217E .^75 FA JNZ SHORT 111.0047217A //.

00472180 . 83EC 80 SUB ESP,-80

00472183 .^E9 386EFEFF JMP 111.00458FC0 // OEP








рдЕрдЧрд▓рд╛, рд╣рдо OEP рдХреЗ рд▓рд┐рдП рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рддреЗ рд╣реИрдВ (рдореЛрдЯреЗ рддреМрд░ рдкрд░ рдмреЛрд▓рддреЗ рд╣реБрдП, рд╣рдо OEP рдмрди рдЬрд╛рддреЗ рд╣реИрдВ)ред рдСрд▓реА рдбрдВрдк рдкреНрд▓рдЧрдЗрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ, рд╣рдо рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЛ рдбрдВрдк рдХрд░рддреЗ рд╣реИрдВред

рдЕрдм рдпрд╣ рд╕рдм рдЖрдпрд╛рдд рдХреЛ рдмрд╣рд╛рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣реИред рд╣рдо рдЕрдкрдиреЗ рдкреИрдХреЗрдЬреНрдб рдкреНрд░реЛрдЧреНрд░рд╛рдо рдФрд░ рдЗрдореНрдкреНрд░реЗрдХ рдЪрд▓рд╛рддреЗ рд╣реИрдВред ImpREC'a рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреА рд╕реВрдЪреА рдореЗрдВ рд╣рдо рдЕрдкрдирд╛ рдХрд╛рд░реНрдпрдХреНрд░рдо рдкрд╛рддреЗ рд╣реИрдВред RVA рдлрд╝реАрд▓реНрдб рдореЗрдВ, RVA OEP рджрд░реНрдЬ рдХрд░реЗрдВ (рдКрдкрд░ рд╡рд░реНрдгрд┐рдд рд╣реИ рдХрд┐ рдЗрд╕реЗ рдХреИрд╕реЗ рдЦреЛрдЬреЗрдВ)ред AutoSearch рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВред рд╕рдВрджреЗрд╢ рдкреНрд░рдХрдЯ рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж, рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИ рдХрд┐ рдХреБрдЫ рдкрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЧреЗрдЯ рдЗрдореНрдкреЛрд░реНрдЯреНрд╕ рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВ рдФрд░ рдпрджрд┐ рдлрд╝рдВрдХреНрд╢рди рд╕реВрдЪреА рдореЗрдВ рджрд┐рдЦрд╛рдИ рджреЗрддреЗ рд╣реИрдВ, рддреЛ рдлрд┐рдХреНрд╕ рдбрдВрдк рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВ рдФрд░ рдЕрдкрдиреЗ рдбрдВрдк рдХрд╛ рдЪрдпрди рдХрд░реЗрдВред рдпрд╣ рд╕рдм рдкреНрд░реЛрдЧреНрд░рд╛рдо рдЕрдирдкреИрдХреНрдб рд╣реИред



ASPack


рдХреБрдЫ рдмрд┐рдВрджреБ рдХреЗ рдЕрдкрд╡рд╛рдж рдХреЗ рд╕рд╛рде рдпрд╣рд╛рдВ рд╕рдм рдХреБрдЫ рд╕рдорд╛рди рд╣реИред рджрд░рд╛рд░ рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рд╣рдо рдпрд╣рд╛рдВ рдЖрддреЗ рд╣реИрдВ:



0046F416 75 08 JNZ SHORT Test_Com.0046F420

0046F418 B8 01000000 MOV EAX,1

0046F41D C2 0C00 RETN 0C

0046F420 68 C08F4500 PUSH Test_Com.00458FC0 // OEP

0046F425 C3 RETN // OEP








рд╢реЗрд╖ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╕рдорд╛рди рд╣реИред



рдХреНрд░реИрдХрдорд┐рд╕ рдХреЛ рдЕрдирдкреИрдХ рдХрд░рдирд╛


рдпрд╣рд╛рдБ рдпрд╣ рджрд░рд╛рд░ рд╣реИред

рдЬреИрд╕рд╛ рдХрд┐ рдКрдкрд░ рд╡рд░реНрдгрд┐рдд рд╣реИ рдЕрдирдкреИрдХред рд╕рдм рдХреБрдЫ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЕрдирдкреИрдХреНрдб рд╣реИред (рд╕рдВрджрд░реНрдн рдХреЗ рд▓рд┐рдП, рдУрдИрдкреА = 00401000)ред рдЙрд╕рдХреЗ рдмрд╛рдж, рд╣рдо GetDlgItemTextA рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдХреЙрд▓ рдкрд░ рдмреНрд░реЗрдХ рдирд┐рдЪреЛрдбрд╝рддреЗ рд╣реИрдВ, рдЗрд╕реЗ рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВ, рдирдХрд▓реА рдкрд╛рд╕ рджрд░реНрдЬ рдХрд░рддреЗ рд╣реИрдВ, рдмрдЯрди рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВ рдФрд░ рдпрд╣рд╛рдВ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВ:



00401206 . E8 1B060000 CALL <JMP.&user32.GetDlgItemTextA> //

0040120B . 8B35 00604000 MOV ESI,DWORD PTR DS:[406000]

00401211 . 81C6 7F010300 ADD ESI,3017F

00401217 . 81EE 66060000 SUB ESI,666

0040121D . 81F6 ADDE0000 XOR ESI,0DEAD

00401223 . BB 33604000 MOV EBX,dddddddd.00406033

00401228 . C0E0 03 SHL AL,3 // !

0040122B . 83F8 78 CMP EAX,78 // !

0040122E . 0F85 9A050000 JNZ dddddddd.004017CE // ""








EAX рдореЗрдВ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рджрд░реНрдЬ рдкрд╛рд╕рд╡рд░реНрдб рдХреА рд▓рдВрдмрд╛рдИ рд╣реИред SHL рдЕрд▓, 3 рдХрдорд╛рдВрдб рдХреЗ рд╕рд╛рде, рд╣рдо 3 рд╕реЗ рдмрд╛рдИрдВ рдУрд░ AL рдорд╛рди рдХреА рдПрдХ рддрд╛рд░реНрдХрд┐рдХ рдкрд╛рд░реА рдХрд░рддреЗ рд╣реИрдВ рдФрд░, рдЖрджрд░реНрд╢ рд░реВрдк рд╕реЗ, рд╣рдореЗрдВ 78 рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред рд╣рдо рд░рд┐рд╡рд░реНрд╕ рд╢рд▓ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХрд░реЗрдВрдЧреЗред рдпрд╣ рд╕реНрдерд╛рди 78.3 = 0F = 15 рд╡реИрдз рдкрд╛рд╕рд╡рд░реНрдб рдХреА рд▓рдВрдмрд╛рдИ рд╣реИред рдлрд┐рд░ рдореИрдВрдиреЗ рдХрд┐рд╕реА рдмрд┐рдВрджреБ рдкрд░ рдмрд╣реБрдд рд▓рдВрдмреЗ рд╕рдордп рдХреЗ рд▓рд┐рдП рдкрддрд╛ рд▓рдЧрд╛рдпрд╛ рдФрд░ рд░рд╛рд╕реНрддреЗ рдореЗрдВ рдореБрдЭреЗ рдХрдИ рд╡рд┐рд░реЛрдзреА рдбрд┐рдмрдЧрд┐рдВрдЧ рдЪрд╛рд▓реЗрдВ рдЖрдИрдВ:



004012B0 0F31 RDTSC //

004012B2 8BC8 MOV ECX,EAX

004012B4 0F31 RDTSC //

004012B6 2BC8 SUB ECX,EAX

004012B8 F7D1 NOT ECX

004012BA 81F9 00500000 CMP ECX,5000

004012C0 -7F FE JG SHORT crackme2.004012C0 //








рдЖрд░рдбреАрд╕реАрдЯреАрдПрд╕ рдирд┐рд░реНрджреЗрд╢ рдИрдПрдПрдХреНрд╕рдПрдХреНрд╕ рдкрд░ рд▓реМрдЯрддрд╛ рд╣реИ, рдЕрдВрддрд┐рдо рдкреНрд░реЛрд╕реЗрд╕рд░ рд░реАрд╕реЗрдЯ рдХреЗ рдмрд╛рдж рд╕реЗ рдШрдбрд╝реА рдЪрдХреНрд░ рдХреА рд╕рдВрдЦреНрдпрд╛ рджрд░реНрдЬ рдХрд░рддрд╛ рд╣реИред рдЙрдкрд░реЛрдХреНрдд рдХреЛрдб рдореЗрдВ, рд╣рдо рдЗрд╕ рдирд┐рд░реНрджреЗрд╢ рдкрд░ рджреЛ рдХреЙрд▓ рджреЗрдЦрддреЗ рд╣реИрдВ рдФрд░ рдлрд┐рд░ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рд╕рдВрджрд░реНрдн рдореВрд▓реНрдп рдХреЗ рд╕рд╛рде рдЙрдирдХреЗ рдЖрдЙрдЯрдкреБрдЯ рдореЗрдВ рдЕрдВрддрд░ рдХреА рддреБрд▓рдирд╛ рдХрд░рддреЗ рд╣реИрдВред рддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐ рдЬрдм рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЛ рдбрд┐рдмрдЧрд░ рдХреЗ рдмрд┐рдирд╛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдШрдбрд╝реА рдХрд╛ рдЕрдВрддрд░ рдЫреЛрдЯрд╛ рд╣реЛрдЧрд╛, рдФрд░ рдЬрдм рдпрд╣ рдбреАрдмрдЧрд░ рдХреЗ рдиреАрдЪреЗ рд╣реЛрдЧрд╛ рддреЛ рдЕрдВрддрд░ рдмрдбрд╝рд╛ рд╣реЛрдЧрд╛ред рдЖрдкрдХреЛ рдРрд╕реЗ рдХрдИ рдХреНрд╖рдг рдорд┐рд▓реЗрдВрдЧреЗ, рдмрд╕ рдЙрдиреНрд╣реЗрдВ рдкреИрдЪ рдХрд░реЗрдВ рдпрд╛ рдЭрдВрдбреЗ рдмрджрд▓реЗрдВред рдЬрдм рдЖрдк рдЕрдЧрд▓реЗ рдХреНрд╖рдг рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рддреЗ рд╣реИрдВ:



0040126A 0F31 RDTSC

0040126C 8BC8 MOV ECX,EAX

0040126E 0F31 RDTSC

00401270 2BC8 SUB ECX,EAX

00401272 F7D1 NOT ECX

00401274 81F9 00500000 CMP ECX,5000

0040127A 7C 05 JL SHORT crackme2.00401281

0040127C -E9 139C04EC JMP EC44AE94

00401281 EB 0D JMP SHORT crackme2.00401290








0040127C рдкрд░ рдзреНрдпрд╛рди рджреЗрдВред рдпрд╣рд╛рдБ рдПрдХ рдЫрд▓рд╛рдВрдЧ рдПрдХ рдмрд┐рдирд╛ рдкрддреЗ рдХреЗ рд▓рд┐рдП рдмрдирд╛рдИ рдЧрдИ рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╕рд╛рд╣рд╕рдкреВрд░реНрд╡рдХ 00401281 рдкрд░ рд╕рдВрдХреНрд░рдордг рдХреЛ рдкреИрдЪ рдХрд░реЗрдВред рдРрд╕реЗ рдХрдИ рдХреНрд╖рдг рд╣реЛрдВрдЧреЗред рдирд┐рдореНрди рдХреЛрдб рдХреЗ рд▓рд┐рдП рдЯреНрд░реЗрд╕:



004014F1 0FB613 MOVZX EDX,BYTE PTR DS:[EBX] ; EBX, EDX

004014F4 B9 08000000 MOV ECX,8

004014F9 AC LODS BYTE PTR DS:[ESI] ; EAX -

004014FA 24 01 AND AL,1 ; and 1

004014FC 74 04 JE SHORT crackme2.00401502

004014FE D0E2 SHL DL,1

00401500 72 08 JB SHORT crackme2.0040150A

00401502 D0E2 SHL DL,1

00401504 0F82 BF020000 JB crackme2.004017C9 ;

0040150A ^E2 ED LOOPD SHORT crackme2.004014F9

0040150C 43 INC EBX

0040150D 58 POP EAX

0040150E 48 DEC EAX

0040150F 0F84 9A020000 JE crackme2.004017AF

00401515 50 PUSH EAX

00401516 ^EB D9 JMP SHORT crackme2.004014F1








рдореИрдВрдиреЗ рдЗрд╕ рдкрд▓ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╣реБрдд рд▓рдВрдмреЗ рд╕рдордп рддрдХ рд╕реЛрдЪрд╛ред рдпрд╣ рдкрддрд╛ рдЪрд▓рд╛ рдХрд┐ рдпрд╣ рдПрдХ рдкрд╛рд╕рд╡рд░реНрдб рдЬрдирд░реЗрд╢рди рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╣реИред рдпрд╣реА рд╣реИ, рдкрд╛рд╕рд╡рд░реНрдб рдкреНрд░реЛрдЧреНрд░рд╛рдо рдореЗрдВ рд╕реНрдкрд╖реНрдЯ рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдирд╣реАрдВ рд╣реИред рдкреВрд░реЗ рдкреАрдврд╝реА рдореЗрдВ AL 1 рдпрд╛ 0. рдорд╛рди рд▓реЗрддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдкрд╛рд╕рд╡рд░реНрдб рдмрдирд╛рдиреЗ рдФрд░ рд╕рднреА рдорд╛рдиреЛрдВ рдХреЛ рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдкреВрд░реА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдпрд╛ рд╣реИ, рдореБрдЭреЗ рджреНрд╡рд┐рдЖрдзрд╛рд░реА рдореВрд▓реНрдпреЛрдВ рдХрд╛ рдПрдХ рдмрдбрд╝рд╛ рддрд╛рд░ рдорд┐рд▓рд╛ рд╣реИ (рд╕реБрд╡рд┐рдзрд╛ рдХреЗ рд▓рд┐рдП рдореИрдВрдиреЗ рдЗрд╕реЗ рджрд╢рдорд▓рд╡ рдкреНрд░рдгрд╛рд▓реА рдореЗрдВ рдЕрдиреБрд╡рд╛рджрд┐рдд рдХрд┐рдпрд╛ рд╣реИ):



119 101 108 108 100 111 110 101 85 102 105 110 100 109 101







рдпрд╣ рджреЗрдЦрддреЗ рд╣реБрдП рдХрд┐ рд╣рд░ рдЖрда рдЕрдХреНрд╖рд░ (рдПрдХ рдбрдмрд▓ рд▓рд╛рдЗрди рдореЗрдВ, рдФрд░ рдореИрдВ рджрд╢рдорд▓рд╡ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рд╣реЛ рдЧрдпрд╛, рдЗрд╕рд▓рд┐рдП рдпрд╣рд╛рдВ рдкреНрд░рддреНрдпреЗрдХ рд╡рд░реНрдг рдХреЛ рдПрдХ рд╕реНрдерд╛рди рдХреЗ рд╕рд╛рде рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ), рддрдм рдЙрддреНрдкрдиреНрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ рдЬрдм рд╣рдордиреЗ EDX рдореЗрдВ рд╣рдорд╛рд░реЗ рджрд░реНрдЬ рдкрд╛рд╕рд╡рд░реНрдб рдХрд╛ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рд╡рд░реНрдг рдбрд╛рд▓ рджрд┐рдпрд╛ рдерд╛, рд╣рдо рдХрд╣ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдКрдкрд░ рдХреА рд░реЗрдЦрд╛ рд╣реИ рд╡реИрдз рдкрд╛рд╕рд╡рд░реНрдбред рдЗрд╕реЗ рд░реАрдХреЛрдб рдХрд░рдХреЗ "рд╡реЗрд▓рдбреЛрдиреЗрдЙрдиреНрддреЗрдореЗрдореЗ" рдирд┐рдХрд▓рд╛ред



2. рдХреБрдЫ рдбрд┐рдмрдЧрд┐рдВрдЧ рдХреЗ рддрд░реАрдХреЗ



рдмрд╣реБрдд рд╕рд╛рд░реЗ рдПрдВрдЯреА-рдбрд┐рдмрдЧрд┐рдВрдЧ рддрд░реАрдХреЗ рд╣реИрдВ, рдЗрд╕ рд▓реЗрдЦ рд╕реЗ рд╢реБрд░реВ рдХрд░рдХреЗ рд╣рдо рдЙрдиреНрд╣реЗрдВ рдмрд╛рд░реА-рдмрд╛рд░реА рд╕реЗ рд╕рд░рд▓ рд╕реЗ рдЬрдЯрд┐рд▓ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░реЗрдВрдЧреЗред

рддреЛ, crackmes.de рдкрд░ рдмрд╕ рдПрдХ рд╡рд┐рд╢реЗрд╖ рджрд░рд╛рд░ рд╣реИ, рдЬрд┐рд╕реЗ рдПрдВрдЯреАрдСрд▓реА рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред рдЗрд╕реЗ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВ, рдЗрд╕реЗ рдЪрд▓рд╛рдПрдВ рдФрд░ рдирд┐рдореНрди рд╡рд┐рдВрдбреЛ рджреЗрдЦреЗрдВ:



рдЫрд╡рд┐



рдпрд╣рд╛рдБ рд╡реЗ рд╣рдореЗрдВ рдмрддрд╛рддреЗ рд╣реИрдВ рдХрд┐ рдХреБрдЫ рднреА рдирд╣реАрдВ рдорд┐рд▓рд╛ рдФрд░ рд╣рдо рдХрд╛рдордпрд╛рдм рд░рд╣реЗред рдЕрдм рд╣рдореЗрдВ рдЗрд╕ рдмрд╛рдд рдХрд╛ рдЕрдВрджрд╛рдЬрд╛ рд╣реИ рдХрд┐ "рдЕрдЪреНрдЫрд╛" рд╕рдВрджреЗрд╢ рдХреИрд╕рд╛ рджрд┐рдЦрддрд╛ рд╣реИред рд╣рдо рдУрд▓рд┐рдпрдо рдореЗрдВ рдХреНрд░рд╛рдпрдХрд┐рдо рдХреЛ рд▓реЛрдб рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рд╣рдо рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рджреЗрдЦрддреЗ рд╣реИрдВ:



рдЫрд╡рд┐



рддреНрд░реБрдЯрд┐ рдЗрд╕ рддрдереНрдп рдХреЗ рдХрд╛рд░рдг рд╣реЛрддреА рд╣реИ рдХрд┐ рдСрд▓реА рдиреЗ рд╣рдорд╛рд░реА рджрд░рд╛рд░ рдХреЗ рд╣реЗрдбрд░ рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд┐рдпрд╛, рдЙрд╕рдореЗрдВ рддреНрд░реБрдЯрд┐рдпрд╛рдВ рдкрд╛рдИрдВ (рд╣реЗрдбрд░)ред рд▓реЗрдХрд┐рди рдпрд╣ рдирд┐рд╢реНрдЪрд┐рдд рд╣реИред рд╣рдо рдкреАрдИ рдПрдбрд┐рдЕрд░ рдореЗрдВ рдЕрдкрдиреА рджрд░рд╛рд░ рдХреЛ рд▓реЛрдб рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рд╡реИрдХрд▓реНрдкрд┐рдХ рд╣реЗрдбрд░ рдЯреИрдм рдкрд░ рдЬрд╛рддреЗ рд╣реИрдВред рдореЗрд░рд╛ рдзреНрдпрд╛рди NumberOfRVAandSize, рдХреЛрдб рдХреЗ рдЖрдзрд╛рд░ рдФрд░ рдбреЗрдЯрд╛ рдорд╛рдкрджрдВрдбреЛрдВ рдХреЗ рдЖрдзрд╛рд░ рдХреЗ "рдмрд╣реБрдд рдмрдбрд╝реЗ" рдореВрд▓реНрдп рдХреЗ рд▓рд┐рдП рдЖрдХрд░реНрд╖рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдЖрдорддреМрд░ рдкрд░, NumberOfRVAandSize = 0x00000010, рдХреЛрдб рдХрд╛ рдЖрдзрд╛рд░ = 00001000, рдбреЗрдЯрд╛ рдХрд╛ рдЖрдзрд╛рд░ = 00002000ред рдЗрди рдорд╛рдкрджрдВрдбреЛрдВ рдХреЛ "рд╕рд╛рдорд╛рдиреНрдп" рдореЗрдВ рдмрджрд▓реЗрдВ рдФрд░ рдбреАрдмрдЧрд░ рдХреЗ рдиреАрдЪреЗ рджрд░рд╛рд░ рдХреЛ рдЪрд▓рд╛рдПрдВред рдЕрдм рдЕрдкрдорд╛рдирдЬрдирдХ рд╕рдВрджреЗрд╢ рджрд┐рдЦрд╛рдИ рдирд╣реАрдВ рджреЗрддрд╛ (рд╡рд╣ рд╣реИ, рдпрд╣ рдмрдирд╛ рд░рд╣рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ) рдФрд░ рд╣рдо рд╕реБрд░рдХреНрд╖рд┐рдд рд░реВрдк рд╕реЗ рджрд░рд╛рд░ рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рддреЛ рдпрд╣ рдкрд╣рд▓реА рдбрд┐рдмреЗрдЯрд┐рдВрдЧ рдЯреНрд░рд┐рдХ рдереАред

рдбрд┐рдмрдЧрд┐рдВрдЧ рдХреЗ рддрд╣рдд рдХреНрд░рд╛рдпрдХрд┐рдорд┐рд╕ рдЪрд▓рд╛рдирд╛, рд╣рдо рдПрдХ "рдмреБрд░рд╛" рд╕рдВрджреЗрд╢ рджреЗрдЦрддреЗ рд╣реИрдВ:



рдЫрд╡рд┐



рдХрд╛рд░реНрдпрдХреНрд░рдо рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рд╣рдореЗрдВ рдПрдВрдЯреА-рдбреАрдмрдЧрд┐рдВрдЧ рдХреЛрдб рдХрд╛ рдПрдХ рднрд╛рдЧ рдорд┐рд▓рддрд╛ рд╣реИ:



00401010 |. FFD7 CALL EDI // GetTickCount

00401012 |. 6A 00 PUSH 0

00401014 |. 68 34214000 PUSH AntiOlly.00402134

00401019 |. 8BF0 MOV ESI,EAX

0040101B |. FF15 DC204000 CALL DWORD PTR DS:[4020DC] //FindWindowA

00401021 |. 85C0 TEST EAX,EAX

00401023 |. 75 04 JNZ SHORT AntiOlly.00401029

00401025 |. 884424 0F MOV BYTE PTR SS:[ESP+F],AL

00401029 |> FF15 04204000 CALL DWORD PTR DS:[402004] //IsDebuggerPresent








рддреЛ, рдкрд╣рд▓рд╛ GetTickCount рдлрд╝рдВрдХреНрд╢рди рд╣реИред рдпрд╣ рдлрд╝рдВрдХреНрд╢рди рдорд┐рд▓реАрд╕реЗрдХрдВрдб рдореЗрдВ рд╕рд┐рд╕реНрдЯрдо рдХреА рд╢реБрд░реБрдЖрдд рдХреЗ рдмрд╛рдж рд╕реЗ рдЧреБрдЬрд░реЗ рд╕рдордп рдХреЛ рд▓реМрдЯрд╛рддрд╛ рд╣реИред рддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐ рдЗрд╕ рдлрд╝рдВрдХреНрд╢рди рдХреЗ рд▓рд┐рдП рдПрдХ рдФрд░ рдХреЙрд▓ рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреЛрдб рдореЗрдВ, рдЗрди рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рдХрд░рдиреЗ рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рдкреНрд░рд╛рдкреНрдд рдореВрд▓реНрдпреЛрдВ рдХреЗ рдмреАрдЪ рдХрд╛ рдЕрдВрддрд░ рдорд╛рдкрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣ рджреВрд╕рд░реА рдбрд┐рдмреЗрдЯрд┐рдВрдЧ рдЯреНрд░рд┐рдХ рдереАред

рдЗрд╕рдХреЗ рдмрд╛рдж FindWindowA рдХреЗ рд▓рд┐рдП рдПрдХ рдХреЙрд▓ рдЖрддрд╛ рд╣реИ, рдЬреЛ рдУрд▓реАрдбрдмрдЧ рд╢реАрд░реНрд╖рдХ рдХреЗ рд╕рд╛рде рдПрдХ рд╡рд┐рдВрдбреЛ рдЦреЛрдЬрддрд╛ рд╣реИред рдФрд░ рдЕрдВрдд рдореЗрдВ, IsDebuggerPresent рдХреЗ рд▓рд┐рдП рдПрдХ рдХреЙрд▓, рдЬреЛ рдХреЗрд╡рд▓ рдЗрд╕ рдмрд╛рдд рдХреА рдЬрд╛рдВрдЪ рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдбреАрдмрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ рдпрд╛ рдирд╣реАрдВред рдпрджрд┐ рд╣рд╛рдВ, рддреЛ Eax 1 рдореЗрдВ, рдпрджрд┐ рдирд╣реАрдВ рддреЛ 0ред

рдпрд╣рд╛рдБ рдЬрд╛рдБрдЪ рдХреА рдЬрд╛рддреА рд╣реИ рдХрд┐ рдХреНрд░рд┐рдХрдорд┐рд╕рд┐рд╕ рдЖрдЪрд░рдг рдХрд░рддрд╛ рд╣реИ:



0040102F |. 85C0 TEST EAX,EAX // IsDebuggerPresent

00401031 |. 75 02 JNZ SHORT AntiOlly.00401035 // 00401035

00401033 |. 32DB XOR BL,BL // BL

00401035 |> FFD7 CALL EDI // GetTickCount

00401037 |. 2BF0 SUB ESI,EAX

00401039 |. 83FE 64 CMP ESI,64 //

0040103C |. 76 0D JBE SHORT AntiOlly.0040104B // ok 0040104B

0040103E |. A1 44204000 MOV EAX,DWORD PTR DS:[402044]

00401043 |. 50 PUSH EAX

00401044 |. 68 3C214000 PUSH AntiOlly.0040213C

00401049 |. EB 3F JMP SHORT AntiOlly.0040108A // ok

0040104B |> 84DB TEST BL,BL

0040104D |. 74 14 JE SHORT AntiOlly.00401063 // IsDebuggerPresent

0040104F |. 8B15 44204000 MOV EDX,DWORD PTR DS:[402044]

00401055 |. A1 60204000 MOV EAX,DWORD PTR DS:[402060]

0040105A |. 52 PUSH EDX

0040105B |. 68 3C214000 PUSH AntiOlly.0040213C

00401060 |. 50 PUSH EAX

00401061 |. EB 2E JMP SHORT AntiOlly.00401091

00401063 |> 807C24 0F 00 CMP BYTE PTR SS:[ESP+F],0 // FindWindow

00401068 |. 74 15 JE SHORT AntiOlly.0040107F








рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЕрдм рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд╣реЛ рдЧрдпрд╛ рд╣реИ рдХрд┐ рд░рдЬрд┐рд╕реНрдЯрд░реЛрдВ рдХреЛ рдХрд╣рд╛рдБ рдкреИрдЪ рдпрд╛ рдПрдбрд┐рдЯ рдХрд░рдирд╛ рд╣реИред

рдЖрдкрдХрд╛ рдзреНрдпрд╛рди рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдмрд╣реБрдд рдзрдиреНрдпрд╡рд╛рджред



All Articles