-------------------------------
OllyScript plugin v0.62 by SHaG
-------------------------------
1. About OllyScript
2. Status
2.1 What's new in v0.62?
3. Documentation
3.1 Language
3.2 Labels
3.3 Comments
3.4 Menus
4. Contact me
5. License
6. Thanks!
------------------------------
1. About OllyScript
-------------------
OllyScript is a plugin for OllyDbg, which is, in my opinion,
the best application-mode debugger out there. One of the best
features of this debugger is the plugin architecture which allows
users to extend its functionality. OllyScript is a plugin
meant to let you automate OllyDbg by writing scripts in an
assembly-like language. Many tasks involve a lot of repetitive
work just to get to some point in the debugged application. By
using my plugin you can write a script once and for all.
------------------------------
2. Status (4 March 2004)
----------------------------
Fixed another hardware breakpoint bug (thanks loveboom).
Also added ability to change the EFLAGS register (see the MOV command and section 3.1).
2.1 What's new?
---------------
The internal architecture of the plugin totally redone and object-oriented
(its not perfect OO, but bear with it). Because of this rewrite, bugs are
likely to appear. Please report them to me ASAP!
Bugs with script processing are fixed, parts of code are redone etc.
+ New commands:
BPCND, BC, BPMC, JA, JB, JAE, JBE, AI, AO, TI, TO
+ Conditional breakpoints
+ Breakpoint clearing (even memory)
+ Tracing and animation
+ More jumps
+ Can change EFLAGS register
# BP behaviour fixed (it now SETS breakpoint, instead of TOGGLEING it).
# Bugs in script processing fixed (thanks s0nkite).
# LOG now logs things like strings that are referenced by the address,
referenced function addresses etc. Try it, its cool!
# EOB now works correctly with hardware breakpoints.
# "Thanks" section of readme updated. =)
------------------------------
3. Documentation
----------------
Two example scripts (tElock098.osc and UPX.osc) are available with this release.
The scripts will when run immediately find the OEP packed executable.
3.1 Language
------------
The scripting language of OllyScript is an assembly-like language.
In the document below, src and dest can be (unless stated otherwise):
- Constant in the form of a hex number withot prefixes and suffixes (i.e. 00FF, not 0x00FF or 00FFh)
- Variable previously declared by VAR
- A 32-bit register (one of EAX, EBX, ECX, EDX, ESI, EDI, EBP, ESP, EIP). Non 32-bit registers are not supported at
the moment, but you can use SHL/SHR and AND to get their values.
- A memory reference in square brackets (i.e. [401000] points to the memory at address 401000, [ecx] points to the memory at address ecx).
- A flag with an exclamation mark in front (one of !CF, !PF, !AF, !ZF, !SF, !DF, !OF)
The following commands are available at the moment:
ADD dest, src
-------------
Adds src to dest and stores result in dest
Example:
add x, 0F
add eax, x
add [401000], 5
AI
--
Executes "Animate into" in OllyDbg
Example:
ai
AND dest, src
-------------
ANDs src and dest and stores result in dest
Example:
and x, 0F
and eax, x
and [401000], 5
ASM addr, command
-----------------
Assemble a command at some address
Example:
asm eip, "mov eax, ecx"
AO
--
Executes "Animate over" in OllyDbg
Example:
ao
BC addr
-------
Clear unconditional breakpoint at addr.
Example:
bc 401000
bc x
bc eip
BP addr
--------
Set unconditional breakpoint at addr.
Example:
bp 401000
bp x
bp eip
BPCND addr, cond
----------------
Set breakpoint on address addr with condition cond.
Example:
bpcnd 401000, "ECX==1"
BPMC
----
Clear memory breakpoint.
Example:
bpmc
BPHWC addr
----------
Delete hardware breakpoint at a specified address
Example:
bphwc 401000
BPHWS addr, mode
----------------
Set hardware breakpoint. Mode can be "r" - read, "w" - write or "x" - execute.
Example:
bphws 401000, "x"
BPRM addr, size
---------------
Set memory breakpoint on read. Size is size of memory in bytes.
Example:
bprm 401000, FF
BPWM addr, size
---------------
Set memory breakpoint on write. Size is size of memory in bytes.
Example:
bpwm 401000, FF
CMP dest, src
-------------
Compares dest to src. Works like it's ASM counterpart.
Example:
cmp y, x
cmp eip, 401000
CMT addr, text
--------------
Inserts a comment at the specified address
Example:
cmt eip, "This is the entry point"
EOB label
---------
Transfer execution to some label on next breakpoint.
Example:
eob SOME_LABEL
EOE label
---------
Transfer execution to some label on next exception.
Example:
eob SOME_LABEL
ESTI
----
Executes SHIFT-F7 in OllyDbg.
Example:
esti
ESTO
----
Executes SHIFT-F9 in OllyDbg.
Example:
esto
FINDOP addr, what
-----------------
Searches code starting at addr for an instruction that begins with the specified bytes.
When found sets the reserved $RESULT variable. $RESULT == 0 if nothing found.
Example:
findop 401000, #61# // find next POPAD
GPA proc, lib
-------------
Gets the address of the specified procedure in the specified library.
When found sets the reserved $RESULT variable. $RESULT == 0 if nothing found.
Useful for setting breakpoints on APIs.
Example:
gpa "MessageBoxA", "user32.dll" // After this $RESULT is the address of MessageBoxA and you can do "bp $RESULT".
GMI addr, info
--------------
Gets information about a module to which the specified address belongs.
"info" can be MODULEBASE, MODULESIZE, CODEBASE or CODESIZE (if you want other info in the future versions plz tell me).
Sets the reserved $RESULT variable (0 if data not found).
Example:
GMI eip, CODEBASE // After this $RESULT is the address to the codebase of the module to which eip belongs
JA label
--------
Use this after cmp. Works like it's asm counterpart.
Example:
ja SOME_LABEL
JAE label
---------
Use this after cmp. Works like it's asm counterpart.
Example:
jae SOME_LABEL
JB label
--------
Use this after cmp. Works like it's asm counterpart.
Example:
jb SOME_LABEL
JBE label
---------
Use this after cmp. Works like it's asm counterpart.
Example:
jbe SOME_LABEL
JE label
--------
Use this after cmp. Works like it's asm counterpart.
Example:
je SOME_LABEL
JMP label
---------
Unconditionally jump to a label.
Example:
jmp SOME_LABEL
JNE label
---------
Use this after cmp. Works like it's asm counterpart.
Example:
jne SOME_LABEL
LBL addr, text
--------------
Inserts a label at the specified address
Example:
lbl eip, "NiceJump"
LOG src
-------
Logs src to OllyDbg log window.
If src is a constant string the string is logged as it is.
If src is a variable or register its logged with its name.
Example:
log "Hello world" // The string "Hello world" is logged
var x
mov x, 10
log x // The string "x = 00000010" is logged.
MOV dest, src
-------------
Move src to dest.
Src can be a long hex string in the format #<some hex numbers>#, for example #1234#.
Remember that the number of digits in the hex string must be even, i.e. 2, 4, 6, 8 etc.
Example:
mov x, 0F
mov y, "Hello world"
mov eax, ecx
mov [ecx], #00DEAD00BEEF00#
mov !CF, 1
mov !DF, !PF
MSG message
-----------
Display a message box with specified message
Example:
MSG "Script paused"
OR dest, src
-------------
ORs src and dest and stores result in dest
Example:
or x, 0F
or eax, x
or [401000], 5
PAUSE
-----
Pauses script execution. Script can be resumed from plugin menu.
Example:
pause
RET
---
Exits script.
Example:
ret
RTR
---
Executes "Run to return" in OllyDbg
Example:
rtr
RTU
---
Executes "Run to user code" in OllyDbg
Example:
rtu
RUN
---
Executes F9 in OllyDbg
Example:
run
SHL dest, src
-------------
Shifts dest to the left src times and stores the result in dest.
Example:
mov x, 00000010
shl x, 8 // x is now 00001000
SHR dest, src
-------------
Shifts dest to the right src times and stores the result in dest.
Example:
mov x, 00001000
shr x, 8 // x is now 00000010
STI
---
Execute F7 in OllyDbg.
Example:
sti
STO
---
Execu
没有合适的资源?快使用搜索试试~ 我知道了~
OD Scripts
共1212个文件
txt:1123个
osc:59个
td:3个
需积分: 4 8 下载量 68 浏览量
2009-03-01
14:09:17
上传
评论
收藏 1018KB RAR 举报
温馨提示
OD Scripts集合 脚本大全~脚本大全~脚本大全~脚本大全~
资源推荐
资源详情
资源评论
收起资源包目录
OD Scripts (1212个子文件)
ASProtect 2.0 Import Recovery + Scrambled Code Recovery (Delphi 8KB
Crypt 1.0 OEP Finder 288B
CRYPT 1.0 OEP-FINDER 288B
PESPIN 0.3 - 1.0 STOLEN BYTES 957B
ExeStealth 3.04 1KB
PeLock 1.06 OEP Finder + Stolen Code + Remove Junk JMP's 3KB
ASProtect 2.0x Import Recovery + Scrambled Code Recovery (Delphi 8KB
Petite 2.2 OEP finder 1KB
PEbundle 2.3 OEP 781B
Petite 2.3 OEP Finder 324B
ASProtect 1.30b Import Recovery + OEP Finder (Delphi 2KB
MSLRH v0.31A Find OEP 2KB
ASProtect 1.31b Import Recovery + OEP Finder (Delphi 3KB
ASProtect 1.2x - 1(2).3x (Registered) OEP Finder 1KB
ASProtect 1.2x - 1.3x (Registered) OEP Finder 1KB
ASProtect 1.2x - 1(1).3x (Registered) OEP Finder 1KB
Exe32Pack 1.42 OEP Finder 630B
Exe32Pack 1.43 OEP Finder 698B
ExeStealth 2.72 OEP Finder 1KB
ASPROTECT TEST SCRIPT V2.0.txt.td.cfg 440B
WWPack32 1.20 OEP Finder.txt.td.cfg 436B
JDPACK 1.01 OEP-FINDER.txt.td.cfg 344B
Aspr2.XX_unpacker_v1.13SC.osc 130KB
Aspr2.XX Unpacker 1.0SE.osc 125KB
Aspr2.XX_unpacker_v1.0E.osc 125KB
Aspr2.XX_unpacker_v1.0SC.osc 125KB
Aspr2.XX_unpacker_v1.0SC.osc 125KB
Aspr2.XX_IATfixer_v2.2s.osc 33KB
Aspr2.XX_IATfixer_v1.02.osc 18KB
Obsidium V1.3.0.0.osc 12KB
CRYPToCRACk's PE Protector V0.9.3.oSc 9KB
Protection Plus V4.2.osc 9KB
tELock V0.80-V0.9X.osc 8KB
tELock V0.8X-V0.9X.osc 8KB
ChekFlagsv2.osc 7KB
ChekFlagsv2.osc 7KB
EXECryptor 2.x IAT rebuilder by PE_Kill.osc 6KB
Aspro2_AIP1.osc 6KB
dbpe.osc 6KB
ChekFlags.osc 5KB
ChekFlags.osc 5KB
Armadillo V4.0-V4.4.Standard.Protection.osc 5KB
Armadillo V4.0-V4.4.Standard.Protection.osc 5KB
Get.eXe.PE.Information.osc 5KB
Get.eXe.PE.Information.osc 5KB
Execyptor脱壳脚本.osc 5KB
SafeDisc V2.43.000.osc 5KB
AddrEnc.osc 5KB
AddrEnc.osc 5KB
NanoTablesv2.osc 4KB
NanoTablesv2.osc 4KB
Armadillo.fiXed.IT.osc 4KB
Armadillo.fiXed.IT.osc 4KB
olly script ot TIMaASProtect_2.0x.osc 3KB
THEMIDA脚本(for IAT restore).osc 3KB
Execryptor 2.x - 2.41 find VM EP - Stolen OEP v1.1.osc 3KB
Aspr2.XX SKE OEP finder.osc 2KB
yoda's cryptor V1.2-V1.3.osc 2KB
yoda's Protector V1.03.X.osc 2KB
JDProtect.V0.9-JDPack.V1.X.osc 2KB
Petite V1.2-V2.3.osc 2KB
ExeCryptor 2.xx IAT Rebuilder v1.1.osc 2KB
Acpr1.41-2.0_unpacker全自动脱壳.osc 2KB
DebugActiveProcess.osc 1KB
DebugActiveProcess.osc 1KB
POLYCRYPT OEP-FINDER.osc 1KB
Upack V0.10-V0.34.osc 1KB
xpresor.osc 1KB
ExeCryptor Bypass AntiDBG OEP.osc 1KB
WaitForDebugEvent.osc 1KB
WaitForDebugEvent.osc 1KB
NsPack.V1.0-V3.0.osc 887B
telock098.osc 609B
IATScriptv2.osc 508B
IATScriptv2.osc 508B
UPX.osc 276B
ArmMutex.osc 235B
ArmMutex.osc 235B
Delphi魔法断点.osc 185B
arm IAT Script.osc 144B
arm IAT Script.osc 144B
ASPROTECT TEST SCRIPT V2.0.txt.td 4KB
WWPack32 1.20 OEP Finder.txt.td 4KB
JDPACK 1.01 OEP-FINDER.txt.td 4KB
CodeRipper.tmp 18B
ASProtect 1.3x - 2.xx Unpacker v1.0E.txt 119KB
ASProtect 2.xx Virtual Machine Rebuilder.txt 37KB
Asprotect 2.xx Virtual Macine Rebuilder.txt 37KB
ASProtect 1.3x - 2.xx IAT Repair Script v2.2 SE.txt 33KB
Themida&WinLicenScript_1.91+.txt 26KB
Themida 1.9.x Unpacker v1.0.txt 18KB
ASProtect 2.3 4.26& 6.26 .txt 18KB
ASProtect 1.3x - 2.xx IAT Repair Script v1.02.txt 18KB
ASProtect 2.0x Fix IAT with Import Elimination #4b.txt 14KB
ASProtect 2.0x Fix IAT with Import Elimination #4.txt 14KB
Obsidium 1.3.0.x OEP Finder + Find Stolen Code + Fix IAT .txt 12KB
Obsidium 1.3.0.x OEP Finder + Find Stolen Code + Fix IAT.txt 12KB
中文ReadMe.txt 12KB
DotFix NiceProtect 2%2e2 OEP Finder + Fix VM + Fix Metamorphic Code + Recover Stolen Bytes.txt 11KB
README.TXT 10KB
共 1212 条
- 1
- 2
- 3
- 4
- 5
- 6
- 13
资源评论
hackconn2
- 粉丝: 0
- 资源: 1
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功