⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 arma_unpack.txt

📁 700个脱壳脚本, 可以放在在OD的ollyscript Plugin中.
💻 TXT
字号:
/*Armadillo script - detach parent from client and unpack (1000 bytes method) - by hiputnx to Ricardo for his complete instructions (im just emulating what the man says...)MAKE SURE ALL BREAKPOINTS ARE DELETED BEFORE EXECUTING THE SCRIPT!!! ALSO: since im using the IsDebuggerPresent plugin, i didnt do IsDebuggerPresent patch.do whatever is needed if u dont use the plugin...*/var WaitForDebugEventvar WriteProcessMemoryvar pDebugEventvar pBuffervar child_ProcIDvar oep_offset1var oep_offset2var oep_offset3var crypto_procvar child_OEPvar patched_line1var imgbasevar rdata_begingmi eip,MODULEBASEmov imgbase, $RESULT mov rdata_begin, imgbasefind rdata_begin, #2E726461746100#  //find ".rdata" stringmov rdata_begin, $RESULT add rdata_begin, 0cmov rdata_begin, [rdata_begin]add rdata_begin, imgbaselog rdata_begin/*another way to get the .rdata_begin - taken from VolXgmi eip,MODULEBASEmov imgbase, $RESULT mov rdata_begin, imgbaseadd rdata_begin, 3cmov rdata_begin, [rdata_begin]add rdata_begin, imgbaseadd rdata_begin, 0f8add rdata_begin, 28add rdata_begin, 0cmov rdata_begin, [rdata_begin]add rdata_begin, imgbaselog rdata_begin*///eob found_WaitForDebugEventgpa "WaitForDebugEvent", "kernel32.dll" mov WaitForDebugEvent, $RESULTgpa "WriteProcessMemory", "kernel32.dll" mov WriteProcessMemory, $RESULTbp WaitForDebugEventrunbc WaitForDebugEventmov pDebugEvent, espadd pDebugEvent, 04mov pDebugEvent, [pDebugEvent]log pDebugEventmov oep_offset1, pDebugEventadd oep_offset1, 18mov oep_offset2, pDebugEventadd oep_offset2, 24mov oep_offset3, pDebugEventadd oep_offset3, 28bp WriteProcessMemoryrunbc WriteProcessMemorymov child_ProcID, pDebugEventadd child_ProcID, 4mov child_ProcID, [child_ProcID]mov child_OEP, [oep_offset1]// ******* UGLY WAY TO FIND ENCRYPTOR. USE AT YOUR OWN RISK!mov crypto_proc, espadd crypto_proc, 128mov crypto_proc, [crypto_proc]//1st crypto_proc cal...//sub crypto_proc, 5add crypto_proc, 2d0mov [crypto_proc], #9090909090#rtr	//ctrl-f9sto	//f8log "crypto_proc was nopped..."log "patch OEP of child process to EBFE (using PUPE...)"log child_ProcIDlog child_OEPlog "press script/resume when ready"msg "look in the log, and press script/resume when ready"pausebp WaitForDebugEventrunbc WaitForDebugEventmov patched_line1, [esp]sub patched_line1, 12fill patched_line1, 1a, 90asm [esp], "CALL 401000"asm 401000, "ADD DWORD PTR DS:[0], 1000"asm 40100A, "ADD DWORD PTR DS:[0], 1000"asm 401014, "ADD DWORD PTR DS:[0], 1000"asm 40101E, "CMP DWORD PTR DS:[0], 0"asm 401028, "JNZ 401035"asm 40102A, "PUSH 0FFFFFFFF"asm 40102F, "CALL DebugActiveProcessStop"asm 401034, "NOP"asm 401035, "RET"mov [401002], oep_offset1mov [40100C], oep_offset2mov [401016], oep_offset3mov [401020], oep_offset3mov [401024], rdata_beginmov [40102B], child_ProcIDmov [oep_offset1], 400000mov [oep_offset2], 400000mov [oep_offset3], 400000//go [esp]mov eip, [esp]bp 401034runbc 401034msg "Close OllyDbg, execute again and attach to your newely created process. Have fun."ret

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -