#############################################################################
# ini Σá⌐½ N-Rec 1.2
# ºñÑß∞ ºáñáεΓß∩ Σá⌐½δ ß Γáí½¿µá¼¿ »ÑαÑσ«ñ«ó, Γ¿»á¼¿ »ÑαÑσ«ñ«ó, ¬«½¿τÑßΓó«¼
# ¡á¡«¼¿Γ«ó á Γá¬ªÑ ñ«»«½¡¿Γѽ∞¡δÑ áñαÑßá ñ½∩ ñ¿ºáßßѼí½Ñαá
#
# óδσ«ñ¡δ¼ Σá⌐½«¼ ∩ó½∩ÑΓß∩ .DIF Σá⌐½, ¬«Γ«αδ⌐ ¼«ª¡« »α¿¼Ñ¡¿Γ∞ ¬ «ß¡«ó¡«¼π
# c »«¼«Θ∞ε πΓ¿½¿Γδ PT.EXE
#
# »α«úαá¼¼á αáí«ΓáÑΓ ó ñóπσ αѪ¿¼áσ - »α«ßΓ«Ñ ñ¿ºáßÑ¼í½¿α«óá¡¿Ñ ¬«ñá ¡áτ¿¡á∩
# «Γ ºáñá¡¡δσ Γ«τѬ óσ«ñá ¿ αѪ¿¼ «Γ½áñ¬¿ ºáΘ¿ΘÑ¡¡«ú« Σá⌐½á. èᬿ¼ αѪ¿¼«¼
# πñ«í¡ÑÑ »«½∞º«óáΓ∞ß∩ - αÑΦáΓ∞ óá¼. ÆÑ«αÑΓ¿τÑ߬¿ αѪ¿¼ ñ¿ºáß¼á »α¿
# »αáó¿½∞¡«¼ ºáñá¡¿¿ Γ«τѬ óσ«ñá ß»«ß«íÑ¡ »α«⌐Γ¿ »« óßѼ óÑΓ¬á¼ »α«úαá¼¼δ
# á ó αѪ¿¼Ñ «Γ½áñ¬¿ ßπΘÑßΓóπÑΓ óÑα«∩Γ¡«ßΓ∞ τΓ« ¬á¬«⌐-Γ« ¬«ñ ¡Ñ íπñÑΓ
# óδ»«½¡Ñ¡ ¿ ß««ΓóÑΓßΓóÑ¡¡« »ÑαÑσ«ñδ ¡Ñ ó«ßßΓá¡«ó∩Γß∩. Å«φΓ«¼π ...
#
# Ñß½¿ 󫺡¿¬áεΓ ó«»α«ßδ τΓ« ºá Γáí½¿µδ ¡πª¡δ ¿ ¬á¬ ¿σ »«½πτ¿Γ∞ ¿ ¬á¬ ßñѽáΓ∞
# ñá¼» ºáΘ¿ΘÑ¡¡«⌐ »α«ú¿ - ß¡áτá½á »α«τΓ¿ΓÑ ¼á¡πá½ «Γ dragon (ó¬½ετÑ¡ ó áασ¿ó)
#
# ñ½∩ ß¡∩Γ¿∩ ñá¼»á ¼«ª¡« ó«ß»«½∞º«óáΓ∞ß∩ πΓ¿½¿Γ«⌐ dumper.exe - ¡áσ«ñ¿Γß∩ ó
# ¬áΓὫúÑ dumper. èᬠÑ⌐ »«½∞º«óáΓ∞ß∩ - τ¿Γá⌐ΓÑ ó ÑÑ readme.txt
#
# 󡿼᡿Ñ: óßÑ τ¿ß½á ó ñá¡¡«¼ Σá⌐½Ñ ΦÑßΓ¡áñµáΓ¿α¿τ¡δÑ
#
# ó »α«úαá¼¼Ñ ¿ß»«½∞º«óá¡« ∩ñα« ñ¿ºáßßѼí½Ñαá OllyDbg (C) 2001 Oleh Yuschuk
#
#############################################################################
#############################################################################
# «í∩ºáΓѽ∞¡δÑ »áαá¼ÑΓαδ ñ½∩ «í«¿σ αѪ¿¼«ó αáí«Γδ
#############################################################################
# ¬«½¿τÑßΓó« ¡á¡«¼¿Γ«ó
NCNT 0885
# Σá⌐½ ß Γáí½¿µÑ⌐ áñαÑß«ó, »« ¬«Γ«αδ¼ ¡áσ«ñ∩Γß∩ íá⌐Γδ 0CCh
CCAD cc_addr.bin
# Σá⌐½ ß Γáí½¿µÑ⌐ Γ¿»«ó ¬«¼á¡ñ »ÑαÑσ«ñ«ó
JTYP jmp_types.bin
# Σá⌐½ ß Γáí½¿µÑ⌐ αẼÑα«ó ¬«¼á¡ñ »ÑαÑσ«ñ«ó
JSIZ jmp_size.bin
# Σá⌐½ ß Γáí½¿µÑ⌐ áñαÑß«ó ¡áº¡áτÑ¡¿∩ »ÑαÑσ«ñ«ó
# ó »«ß½Ññ¡¿σ áα¼áσ «¡ ºáΦ¿Σα«óá¡, »«φΓ«¼π ¡Ñ«íσ«ñ¿¼« π¬áºáΓ∞ Σá⌐½ ß ¬½ετἿ
JDST jmp_dest.bin
# Σá⌐½ ß ¬½ετἿ ñ½∩ αáßΦ¿Σα«ó¬¿ Γáí½¿µδ áñαÑß«ó ¡áº¡áτÑ¡¿∩
# ñ½¿¡á Σá⌐½á - 40h íá⌐Γ (ñ« óÑαß¿¿ 3.40 á½ú«α¿Γ¼ ¡Ñ ¼Ñ¡∩½ß∩, Ñß½¿ «¡
# ¿º¼Ñ¡¿½ß∩ Γ« ¡á«íσ«ñ¿¼« óαπτ¡πε αáßΦ¿Σα«óáΓ∞ Σá⌐½ JDST ¿
# ºá¬«¼¼Ñ¡Γ¿α«óáΓ∞ »áαá¼ÑΓα JDSK
# 󡿼᡿Ñ: φëà »áαá¼ÑΓα ñ«½ªÑ¡ íδΓ∞ »«ß½Ñ JDST ¿¡áτÑ Γáí½¿µá
# αáßΦ¿Σα«óá¡á ¡Ñ íπñÑΓ
JDSK jmp_dest_keys.bin
# Γáí½¿µá ß««ΓóÑΓßΓó¿⌐ ¬«ñ«ó ó Σá⌐½Ñ JTYP αÑá½∞¡δ¼ ¬«¼á¡ñá¼ »ÑαÑσ«ñ«ó
# ¡á»α¿¼Ñα ó ñá¡¡«¼ ß½πτáÑ ¬«ñ 4 ß««ΓóÑΓßΓóπÑΓ ¬«¼á¡ñÑ JECXZ
# á ¬«ñ 11 - ¬«¼á¡ñÑ JNS
# jmp jnp jno jo jecxz jc jle jnc jp
JCD1 7 0 5 0b 4 8 0f 0d 10
# js jz jg jl jns ja jbe jge jnz
JCD2 6 1 e c 11 3 2 a 9
# ñ½∩ ß«ºñá¡¿∩ Γáí½¿µδ JCDx ∩ ¿ß»«½∞º«óá½ ß½ÑñπεΘ¿⌐ ¬«ñ ó áα¼Ñ:
#
#.text1:0061099A loc_61099A:
#.text1:0061099A mov [ebp-0Ch], eax
#.text1:0061099D cmp dword ptr [ebp-0Ch], 11h
#.text1:006109A1 ja loc_610BDF
#.text1:006109A7 mov ecx, [ebp-0Ch]
#.text1:006109AA jmp ds:off_610C0E[ecx*4]
#
#.text1:00610C0E off_610C0E dd offset _00_jnp
#.text1:00610C12 dd offset _01_jz
#.text1:00610C16 dd offset _02_jbe
#.text1:00610C1A dd offset _03_ja
#.text1:00610C1E dd offset _04_jecxz
#.text1:00610C22 dd offset _05_jno
#.text1:00610C26 dd offset _06_js
#.text1:00610C2A dd offset _07_jmp
#.text1:00610C2E dd offset _08_jc
#.text1:00610C32 dd offset _09_jnz
#.text1:00610C36 dd offset _0A_jge
#.text1:00610C3A dd offset _0B_jo
#.text1:00610C3E dd offset _0C_jl
#.text1:00610C42 dd offset _0D_jnc
#.text1:00610C46 dd offset _0E_jg
#.text1:00610C4A dd offset _0F_jle
#.text1:00610C4E dd offset _10_jp
#.text1:00610C52 dd offset _11_jns
#############################################################################
# ß½ÑñπεΘ¿Ñ »áαá¼ÑΓαδ ∩ó½∩εΓß∩ ¡Ñ«í∩ºáΓѽ∞¡δ¼¿ ¿ ¿ß»«½∞ºπεΓß∩ Γ«½∞¬« ñ½∩
# αáí«Γδ ó αѪ¿¼Ñ ñ¿ºáßßѼí½Ñαá
#############################################################################
# »α«úαá¼¼á ¡Ñ «íαáíáΓδóáÑΓ ¬«ßóÑ¡¡δÑ »ÑαÑσ«ñδ ¿ ó맮óδ. Å«φΓ«¼π ñ½∩
# π½πτΦÑ¡¿∩ ¬áτÑßΓóá ó«ßßΓá¡«ó½Ñ¡¿∩ »ÑαÑσ«ñ«ó αѬ«¼Ñ¡ñπÑΓß∩ ºáñáΓ∞
# ñ«»«½¡¿Γѽ∞¡δÑ ßΓáαΓ«óδÑ áñαÑßá ñ½∩ ñ¿ºáßßÑ¼í½¿α«óá¡¿∩. ÇñαÑßá ¼«ª¡«
# ºáñáΓ∞ ñóπ¼∩ ß»«ß«íἿ - ¡Ñ»«ßαÑñßΓóÑ¡¡« ¿ π¬áºá¡¿Ñ¼ Γáí½¿µδ π¬áºáΓѽÑ⌐
# ¡á Σπ¡¬µ¿¿. ÉѬ«¼Ñ¡ñπÑΓß∩ ßαáºπ π¬áºδóáΓ∞ Γáí½¿µδ __cinit ñ½∩ VC ¿
# ñѽ∞Σ«óδÑ/í¿½ñÑα«ó߬¿Ñ Γáí½¿µδ ¿¡¿µ¿á½¿ºáµ¿¿
# »α¿¼Ñα ºáñá¡¿∩ Γáí½¿µδ ß¼ÑΘÑ¡¿⌐:
# ΓπΓ 5d4000 φΓ« áñαÑß ¡áτá½á Γáí½¿µδ, á 5d4470 áñαÑß ¬«¡µá Γáí½¿µδ
OTBL 005d4000 005D4470
# ßá¼á Γáí½¿µá ¿º φΓ« »α¿¼Ñαá óδú½∩ñ¿Γ Γá¬:
#.data:005D4000 begin_tbl_2 dd 0 ; DATA XREF: __cinit+1F o
#.data:005D4004 dd offset sub_56C313
#.data:005D4008 dd offset sub_56C587
#.data:005D400C dd offset sub_56C5C7
#.data:005D4010 dd offset sub_56C7A3
# ...
# ¿ Γᬠñá½ÑÑ. ¡π½ÑóδÑ φ½Ñ¼Ñ¡Γδ Γáí½¿µδ íπñπΓ áóΓ«¼áΓ¿τÑ߬¿ »α«»πΘÑ¡δ
# «ñ¡á¬« Ñß½¿ ó¼ÑßΓ« ¬«ñá Γáí½¿µá íπñÑΓ ß«ñÑαªáΓ∞ áñαÑßá ñá¡¡δσ Γ«
# ñ¿ºáßßѼí½Ñα ¼«ªÑΓ ¡áó«ßßΓá¡áó½¿óáΓ∞ Γᬫú« ...
# »α¿¼Ñα ºáñá¡¿∩ ¡Ñ»«ßαÑñßΓóÑ¡¡«ú« áñαÑßá ñ½∩ ñ¿ºáßßѼí½Ñαá
ADDR 0046E540
ADDR 0041a630
# ¡«ó«Ñ ó óÑαß¿¿ 1.2 - αѪ¿¼ »«½¡«ú« ñ¿ºáßßÑ¼í½¿α«óá¡¿∩ óδíαá¡¡«ú« í½«¬á
# áñαÑß«ó. ê¼ÑÑΓ ß¼δß½ ñ½∩ VC/MFC-Φ¡δσ »α«ú, 𠬫ëαδσ ¬πτá «íαáí«Γτ¿¬«ó,
# ¬«Γ«αδÑ óδºδóáεΓß∩ ¬«ßóÑ¡¡« ¿ ßΓá¡ñáαΓ¡δ⌐ αѪ¿¼ ñ¿ºáß¼á ¿σ ¡Ñ ¡áσ«ñ¿Γ,
# ¿ ºáñáΓ∞ óßÑ Γáí½¿µδ τÑαѺ OTBL Γ«ªÑ ¡ÑαÑá½∞¡«. ü½«¬ ºáñáÑΓß∩ ¬«¼á¡ñ«⌐
# CSEG beg_addr end_addr. é »α«µÑßßÑ «íαáí«Γ¬¿ ¬«ñá N-Rec »α«»π߬áÑΓ
# óδαáó¡¿óá¡¿∩ ¬«ñá »«ß½Ñ ¬«¼á¡ñ ret (»«¬á Γ«½∞¬« ¿ßΓαπ¬µ¿∩¼¿ NOP ¿ INT3).
CSEG 00401000 0043B3D5
# ¡Ñ߬«½∞¬« ß«óÑΓ«ó:
# - ñ«íáó∞ΓÑ «ß¡«ó¡δÑ Γáí½¿µδ ¿¡¿µ¿á½¿ºáµ¿¿ τÑαѺ OTBL (Ñß½¿ «¡¿ ÑßΓ∞
# ¬«¡Ñτ¡«) ¿ ºá»πßΓ¿ΓÑ N-Rec ó αѪ¿¼Ñ ñ¿ºáßßѼí½Ñαá
# - »«ß½Ñ Γ«ú« ¬á¬ «¡ «Γαáí«ΓáÑΓ »α¿¼Ñ¡¿ΓÑ »«½πτÑ¡¡δ⌐ Σá⌐½ .DIF ¿ ºá»πßΓ¿ΓÑ
# »α¿½«ªÑ¡¿Ñ. àß½¿ «¡« »áñáÑΓ ¡á INT3 exception Γ« ¼«ª¡« »«ß¼«ΓαÑΓ∞
# ó IDA ¡áτὫ »α«µÑñπαδ ó ¬«Γ«α«⌐ »α«úá »áñáÑΓ, ñ«íáó¿Γ∞ φëà áñαÑß
# ó ini Σá⌐½ ¿ ÑΘÑ αẠ»α«ú¡áΓ∞ τÑαѺ N-Rec
# - ΓᬪÑ, «ß«íÑ¡¡« Ñß½¿ »α«µÑñπαπ ¡á⌐Γ¿ ß½«ª¡« ¼«ª¡« ¿ß»«½∞º«óáΓ∞ αѪ¿¼
# «Γ½áñ¬¿.
# - ó ¿Γ«úÑ »«ß½Ñ ¡Ñ߬«½∞¬¿σ »α«ú«¡«ó óδ »«½πτ¿ΓÑ »«½¡«ßΓ∞ε αáí«Γ«ß»«ß«í¡«Ñ
# »α¿½«ªÑ¡¿Ñ.
# - ó ß½πτáÑ »α«úαá¼¼ úñÑ ¬«ñ ¿ñÑΓ µÑ½∞¡δ¼ ¬π߬«¼ íѺ ñá¡¡δσ ¡Ñ ºáíδóá⌐ΓÑ
# ¿ß»«½∞º«óáΓ∞ ¬«¼á¡ñπ CSEG
# φΓá óÑαß¿∩ N-Rec ¡áσ«ñ¿Γß∩ ó »α«µÑßßÑ αáºαáí«Γ¬¿. àß½¿ 𠬫ú«-¡¿íπñí íπñπΓ
# »«ªÑ½á¡¿∩, ¿ñÑ¿ «í ÑÑ π½πτΦÑ¡¿¿ - »¿Φ¿ΓÑ ¼¡Ñ ¡á e-mail [email protected]
# ¿½¿ »« icq: 23485245
#
# ÇéÆÄÉ ìà ìàæ≡Æ ìêèÇèÄë ÄÆéàÆæÆéàììÄæÆê çÇ ÅÉÄÆêéÄçÇèÄììÄà êæÅÄï£çÄéÇìêà
# äÇììÄë ÅÉÄâÉÇîî¢.
#
# (c) 2003 infern0 / TSRh team
#
# ps: thanks to dragon
#