这段代码虽然不难,但是里面突然蹦出一个莫名其妙的数据,就是我们叫他s1的那个东西,我开始也觉得晕,就快要到头了,发现那个"欢迎界面"的机器码还没有用到,没用就没用吧,更好,但是直觉告诉(别砸我,其实是猜的,呵呵)我,这个s1不会那么简单,肯定和硬件还是有关系的,先解决这个硬件码的问题吧.
说说我的跟踪思路,很笨的方法,追了很久才追到,思路就是,追他到天边!;)
(也许有兄弟会觉得这个字符串是个固定的字符串,我其实也期望这样,但是理想与现实总是有一段差距的.呵呵!)
先跟入--->00401B44.看看再说
00401B44 8338 00 cmp dword ptr ds:[eax],0
00401B47 74 04 je short 屏录专家.00401B4D
00401B49 8B00 mov eax,dword ptr ds:[eax] ;在这里发现字符串地址在036FDA4C
00401B4B EB 05 jmp short 屏录专家.00401B52
00401B4D B8 51505200 mov eax,屏录专家.00525051
00401B52 C3 retn
这是证明:
ds:[036C7C08]=036FDA4C, (ASCII "24237270606580267567")
eax=036C7C08
第一次郁闷,字符串是被复制过来的,没办法哦,继续追踪036FDA4C,
接下来怎么办呢?
怎么追踪这个036FDA4C什么时候被写入的呢?
第二次郁闷一下!如果你也郁闷了,建议休息一下!嘿嘿!
郁闷之后接着工作吧,搞破解的,需要恒心和耐心,永不放弃的精神.
我对自己说,加油,胜利就在眼前.
我带着试一试的心理,想看看那个数据("24237270606580267567")在显示注册窗口的时候是否已经被写入,
OK,说干就干.下什么断点呢,打开dede吧,找注册窗口的事件信息,发现这个
FormShow 00444054
好的,我们去那里下断点,看看!运行下.
OK,我们让它断在了00444054地址处,数据窗口跟随到以036C0000开始的虚拟地址,搜索下"24237270606580267567",发现已经存在.(注意:位置可能不是036FDA4C).
第三次郁闷了,再把时间提前一点,在注册窗体显示之前是"欢迎界面"的"注册"按钮点击事件,(别弄混了,不是"注册窗口"的"确定"按钮点击事件哦,还是用dede找!),看看那个时候有没有生成那个数据.
试了几次后知道是button2,事件是Button2Click,事件处理地址是00444398.
(我开始还以为是button3呢),在00444398,下断点,运行程序,点击下"注册",程序断在00444398,
好了,数据窗口跟随到以036C0000开始的虚拟地址,搜索下"24237270606580267567",发现不存在.
非常好,成功又进了一步了.我们继续分析是在哪里给跑出来的.
我们到了这里
00444481 E8 5A810C00 call 屏录专家.0050C5E0
发现,这个call之后,发现EDX里面出现了我们在"欢迎界面"里面看到的机器码,非常好!黑黑!(不过好像没什么用,哪来好看的,呵呵)
注意注意:不是"24237270606580267567"
在004444A1 E8 B270FEFF call 屏录专家.0042B558
这个CALL之后,我发现,
以036C0000开始的虚拟地址,搜索下"24237270606580267567",发现已经存在,在此之前不存在
(问我是怎么知道是这里在出现的阿,呵呵!很简单,每过一个CALL,我就搜索一下,看看存在么,
前面都是失败了,就这里成功了,所以,我就知道这个CALL就是和硬件码有关的一个CALL,
如果兄弟们有什么好的办法来定位,请指教,谢谢)
再来,我们需要跟入这个CALL,所以我们再来一次,在这个CALL上面f7跟进去看看.
发现
0042B567 E8 542A0D00 call 屏录专家.004FDFC0
0042B56C 8D83 6C130000 lea eax,dword ptr ds:[ebx+136C]
0042B572 8B50 34 mov edx,dword ptr ds:[eax+34]
0042B575 81C2 9AB1FFFF add edx,FFFFB19A
这个add语句之后, edx里面出现了"24237270606580267567",以036C0000开始的虚拟地址中是没有的,
看看字符串的地址是: 00B607E0
现在怎么办?我也不知道.
第4次郁闷了,这样吧,看看"欢迎窗口"创建完之后,00B607E0这个虚拟地址的上下文中有没有我们要找的东西吧,
说实话,我都快崩溃了,还不是看运气.
试验结果是这样的:
OD运行程序,主界面运行好之后,不做任何操作,发现,以00B40000开始的虚拟地址中,发现了我们要找的东西,非常好,
证明这个数据是在此之前就算好的,我们再想想什么事件居然在这个之前呢,很简单,窗体创建事件,显示事件好吧,继续DEDE,
找到"欢迎界面"窗体创建显示事件的代码开始位置(没有写窗体创建事件的代码).004446E0.
我们去那里下断点.运行程序.断在了004446E0.
以00B40000开始的虚拟地址,搜索下"24237270606580267567",发现已经存在,晕了.
奇怪了,不可能阿,其实我也觉得不可能了.
但是还是有两种可能:
1:这个数据串为固定值
2:还有一些事件在此之前.
排除法,我选第2种可能,因为第一种可能是有点夸张的.呵呵!
还记得我们写程序的时候么,那个主窗体是最先创建的,呵呵!
看看dede里面,果然有一个叫MainForm的东西(不是那个欢迎窗口哦),呵呵,好说了.
看看他的窗体的事件.FormCreate---->0040BE2C.还有一个FormShow事件,那个先不考虑,
看看FormCreate事件里面都作了些什么哈.在0040BE2C处下断点.运行程序,成功断下.
慢慢分析吧,一次又一次的搜索,我发现,就是在这里生成机器码的,
看下面的分析吧,如果觉得累了,就休息下吧,我其实也有点累了.
0040BE2C 55 push ebp
0040BE2D 8BEC mov ebp,esp
0040BE2F 81C4 B8F6FFFF add esp,-948
0040BE35 53 push ebx
0040BE36 56 push esi
0040BE37 57 push edi
0040BE38 8985 C8FEFFFF mov dword ptr ss:[ebp-138],eax
0040BE3E B8 48735200 mov eax,屏录专家.00527348
0040BE43 E8 78210F00 call 屏录专家.004FDFC0
0040BE48 68 F0020000 push 2F0
0040BE4D E8 9E130F00 call 屏录专家.004FD1F0
0040BE52 59 pop ecx
0040BE53 8945 FC mov dword ptr ss:[ebp-4],eax
0040BE56 85C0 test eax,eax
0040BE58 74 21 je short 屏录专家.0040BE7B
0040BE5A 66:C785 DCFEFFFF >mov word ptr ss:[ebp-124],14
0040BE63 8B55 FC mov edx,dword ptr ss:[ebp-4]
0040BE66 52 push edx
0040BE67 E8 E0EA0700 call 屏录专家.0048A94C
0040BE6C 59 pop ecx
0040BE6D 66:C785 DCFEFFFF >mov word ptr ss:[ebp-124],8
0040BE76 8B4D FC mov ecx,dword ptr ss:[ebp-4]
0040BE79 EB 03 jmp short 屏录专家.0040BE7E
0040BE7B 8B4D FC mov ecx,dword ptr ss:[ebp-4]
0040BE7E 8B85 C8FEFFFF mov eax,dword ptr ss:[ebp-138]
0040BE84 8988 B00B0000 mov dword ptr ds:[eax+BB0],ecx
0040BE8A 8B95 C8FEFFFF mov edx,dword ptr ss:[ebp-138]
0040BE90 52 push edx
0040BE91 E8 D2470200 call 屏录专家.00430668
0040BE96 59 pop ecx
0040BE97 33DB xor ebx,ebx
0040BE99 8AD8 mov bl,al
0040BE9B 8B85 C8FEFFFF mov eax,dword ptr ss:[ebp-138]
0040BEA1 8998 B80B0000 mov dword ptr ds:[eax+BB8],ebx
0040BEA7 85DB test ebx,ebx
0040BEA9 75 36 jnz short 屏录专家.0040BEE1
0040BEAB 66:C785 DCFEFFFF >mov word ptr ss:[ebp-124],20
0040BEB4 BA FE315200 mov edx,屏录专家.005231FE
0040BEB9 8D45 F8 lea eax,dword ptr ss:[ebp-8]
0040BEBC E8 E7041000 call 屏录专家.0050C3A8
0040BEC1 FF85 E8FEFFFF inc dword ptr ss:[ebp-118]
0040BEC7 8B00 mov eax,dword ptr ds:[eax]
0040BEC9 E8 629B0B00 call 屏录专家.004C5A30
0040BECE FF8D E8FEFFFF dec dword ptr ss:[ebp-118]
0040BED4 8D45 F8 lea eax,dword ptr ss:[ebp-8]
0040BED7 BA 02000000 mov edx,2
0040BEDC E8 FF061000 call 屏录专家.0050C5E0
0040BEE1 C705 042C5500 1C1>mov dword ptr ds:[552C04],屏录专家.0040191C
0040BEEB 8B8D C8FEFFFF mov ecx,dword ptr ss:[ebp-138]
0040BEF1 33C0 xor eax,eax
0040BEF3 8981 000C0000 mov dword ptr ds:[ecx+C00],eax
0040BEF9 8B95 C8FEFFFF mov edx,dword ptr ss:[ebp-138]
0040BEFF C682 0C0C0000 01 mov byte ptr ds:[edx+C0C],1
0040BF06 8B8D C8FEFFFF mov ecx,dword ptr ss:[ebp-138]
0040BF0C 51 push ecx
0040BF0D E8 E2180000 call 屏录专家.0040D7F4
0040BF12 59 pop ecx
0040BF13 8B85 C8FEFFFF mov eax,dword ptr ss:[ebp-138]
0040BF19 C680 FC170000 01 mov byte ptr ds:[eax+17FC],1
0040BF20 68 61325200 push 屏录专家.00523261 ; ASCII "PMLXZJ"
0040BF25 6A 00 push 0
0040BF27 6A 00 push 0
0040BF29 E8 50481100 call <jmp.&KERNEL32.CreateMutexA>
0040BF2E A3 F82B5500 mov dword ptr ds:[552BF8],eax
0040BF33 E8 12491100 call <jmp.&KERNEL32.GetLastError>
0040BF38 3D B7000000 cmp eax,0B7
0040BF3D 75 3E jnz short 屏录专家.0040BF7D
0040BF3F 66:C785 DCFEFFFF >mov word ptr ss:[ebp-124],2C
0040BF48 BA 68325200 mov edx,屏录专家.00523268
0040BF4D 8D45 F4 lea eax,dword ptr ss:[ebp-C]
0040BF50 E8 53041000 call 屏录专家.0050C3A8
0040BF55 FF85 E8FEFFFF inc dword ptr ss:[ebp-118]
0040BF5B 8B00 mov eax,dword ptr ds:[eax]
0040BF5D E8 CE9A0B00 call 屏录专家.004C5A30
0040BF62 FF8D E8FEFFFF dec dword ptr ss:[ebp-118]
0040BF68 8D45 F4 lea eax,dword ptr ss:[ebp-C]
0040BF6B BA 02000000 mov edx,2
0040BF70 E8 6B061000 call 屏录专家.0050C5E0
0040BF75 6A 01 push 1
0040BF77 E8 70AF0F00 call 屏录专家.00506EEC
0040BF7C 59 pop ecx
0040BF7D 66:C785 DCFEFFFF >mov word ptr ss:[ebp-124],38
0040BF86 8D45 F0 lea eax,dword ptr ss:[ebp-10]
0040BF89 E8 DE58FFFF call 屏录专家.0040186C
0040BF8E 8BD0 mov edx,eax
0040BF90 FF85 E8FEFFFF inc dword ptr ss:[ebp-118]
0040BF96 8B0D 80275500 mov ecx,dword ptr ds:[552780] ; 屏录专家.005596A4
0040BF9C 8B01 mov eax,dword ptr ds:[ecx]
0040BF9E E8 49EF0A00 call 屏录专家.004BAEEC
0040BFA3 8D55 F0 lea edx,dword ptr ss:[ebp-10]
0040BFA6 8D45 EC lea eax,dword ptr ss:[ebp-14]
0040BFA9 8B0A mov ecx,dword ptr ds:[edx]
0040BFAB 51 push ecx
0040BFAC E8 BB58FFFF call 屏录专家.0040186C
0040BFB1 8BD0 mov edx,eax
0040BFB3 FF85 E8FEFFFF inc dword ptr ss:[ebp-118]
0040BFB9 58 pop eax
0040BFBA E8 C1780E00 call 屏录专家.004F3880
0040BFBF 8D55 EC lea edx,dword ptr ss:[ebp-14]
0040BFC2 8B9D C8FEFFFF mov ebx,dword ptr ss:[ebp-138]
0040BFC8 81C3 00180000 add ebx,1800
0040BFCE 8BC3 mov eax,ebx
0040BFD0 E8 3B061000 call 屏录专家.0050C610
0040BFD5 FF8D E8FEFFFF dec dword ptr ss:[ebp-118]
0040BFDB 8D45 EC lea eax,dword ptr ss:[ebp-14]
0040BFDE BA 02000000 mov edx,2
0040BFE3 E8 F8051000 call 屏录专家.0050C5E0
0040BFE8 FF8D E8FEFFFF dec dword ptr ss:[ebp-118]
0040BFEE 8D45 F0 lea eax,dword ptr ss:[ebp-10]
0040BFF1 BA 02000000 mov edx,2
0040BFF6 E8 E5051000 call 屏录专家.0050C5E0
0040BFFB 8B8D C8FEFFFF mov ecx,dword ptr ss:[ebp-138]
0040C001 51 push ecx
0040C002 E8 41190000 call 屏录专家.0040D948 ; 跟进去,里面会产生一个用于计算硬件码的数据
0040C007 59 pop ecx
0040C008 6A 28 push 28
0040C00A E8 85130F00 call 屏录专家.004FD394
0040C00F 59 pop ecx
0040C010 8B95 C8FEFFFF mov edx,dword ptr ss:[ebp-138]
0040C016 8982 D40B0000 mov dword ptr ds:[edx+BD4],eax
0040C01C 66:C785 DCFEFFFF >mov word ptr ss:[ebp-124],44
0040C025 8D45 E4 lea eax,dword ptr ss:[ebp-1C]
0040C028 E8 3F58FFFF call 屏录专家.0040186C
0040C02D 50 push eax
0040C02E FF85 E8FEFFFF inc dword ptr ss:[ebp-118]
0040C034 BA 97325200 mov edx,屏录专家.00523297 ; ASCII "ly.exe"
0040C039 8D45 E8 lea eax,dword ptr ss:[ebp-18]
0040C03C E8 67031000 call 屏录专家.0050C3A8
0040C041 FF85 E8FEFFFF inc dword ptr ss:[ebp-118]
0040C047 8D55 E8 lea edx,dword ptr ss:[ebp-18]
0040C04A 8BC3 mov eax,ebx
0040C04C 59 pop ecx
0040C04D E8 E6051000 call 屏录专家.0050C638
0040C052 8D45 E4 lea eax,dword ptr ss:[ebp-1C]
0040C055 8B00 mov eax,dword ptr ds:[eax]
0040C057 E8 64760E00 call 屏录专家.004F36C0
0040C05C 84C0 test al,al
0040C05E 8D45 E4 lea eax,dword ptr ss:[ebp-1C]
0040C061 0F94C2 sete dl
0040C064 83E2 01 and edx,1
0040C067 52 push edx
0040C068 BA 02000000 mov edx,2
0040C06D FF8D E8FEFFFF dec dword ptr ss:[ebp-118]
0040C073 E8 68051000 call 屏录专家.0050C5E0
0040C078 FF8D E8FEFFFF dec dword ptr ss:[ebp-118]
0040C07E 8D45 E8 lea eax,dword ptr ss:[ebp-18]
0040C081 BA 02000000 mov edx,2
0040C086 E8 55051000 call 屏录专家.0050C5E0
0040C08B 59 pop ecx
0040C08C 84C9 test cl,cl
0040C08E 74 50 je short 屏录专家.0040C0E0
0040C090 66:C785 DCFEFFFF >mov word ptr ss:[ebp-124],50
0040C099 BA 9E325200 mov edx,屏录专家.0052329E
0040C09E 8D45 E0 lea eax,dword ptr ss:[ebp-20]
0040C0A1 E8 02031000 call 屏录专家.0050C3A8
0040C0A6 FF85 E8FEFFFF inc dword ptr ss:[ebp-118]
0040C0AC 8B00 mov eax,dword ptr ds:[eax]
0040C0AE E8 7D990B00 call 屏录专家.004C5A30
0040C0B3 FF8D E8FEFFFF dec dword ptr ss:[ebp-118]
0040C0B9 8D45 E0 lea eax,dword ptr ss:[ebp-20]
0040C0BC BA 02000000 mov edx,2
0040C0C1 E8 1A051000 call 屏录专家.0050C5E0
0040C0C6 6A 01 push 1
0040C0C8 E8 1FAE0F00 call 屏录专家.00506EEC
0040C0CD 59 pop ecx
0040C0CE 8B8D CCFEFFFF mov ecx,dword ptr ss:[ebp-134]
0040C0D4 64:890D 00000000 mov dword ptr fs:[0],ecx
0040C0DB E9 0C170000 jmp 屏录专家.0040D7EC
0040C0E0 68 BC325200 push 屏录专家.005232BC ; ASCII "PMLXZJRECORDER{A8B0ADB7-ECB6-4D8F-829A-F050181A6510}"
0040C0E5 6A 00 push 0
0040C0E7 E8 A44D1100 call <jmp.&USER32.FindWindowA>
0040C0EC 85C0 test eax,eax
0040C0EE 74 70 je short 屏录专家.0040C160
0040C0F0 50 push eax
0040C0F1 8B85 C8FEFFFF mov eax,dword ptr ss:[ebp-138]
0040C0F7 50 push eax
0040C0F8 E8 F7180000 call 屏录专家.0040D9F4
0040C0FD 83C4 08 add esp,8
0040C100 68 F1325200 push 屏录专家.005232F1 ; ASCII "PMLXZJRECORDER{A8B0ADB7-ECB6-4D8F-829A-F050181A6510}"
0040C105 6A 00 push 0
0040C107 E8 844D1100 call <jmp.&USER32.FindWindowA>
0040C10C 85C0 test eax,eax
0040C10E 74 50 je short 屏录专家.0040C160
0040C110 66:C785 DCFEFFFF >mov word ptr ss:[ebp-124],5C
0040C119 BA 26335200 mov edx,屏录专家.00523326
0040C11E 8D45 DC lea eax,dword ptr ss:[ebp-24]
0040C121 E8 82021000 call 屏录专家.0050C3A8
0040C126 FF85 E8FEFFFF inc dword ptr ss:[ebp-118]
0040C12C 8B00 mov eax,dword ptr ds:[eax]
0040C12E E8 FD980B00 call 屏录专家.004C5A30
0040C133 FF8D E8FEFFFF dec dword ptr ss:[ebp-118]
0040C139 8D45 DC lea eax,dword ptr ss:[ebp-24]
0040C13C BA 02000000 mov edx,2
0040C141 E8 9A041000 call 屏录专家.0050C5E0
0040C146 6A 01 push 1
0040C148 E8 9FAD0F00 call 屏录专家.00506EEC
0040C14D 59 pop ecx
0040C14E 8B8D CCFEFFFF mov ecx,dword ptr ss:[ebp-134]
0040C154 64:890D 00000000 mov dword ptr fs:[0],ecx
0040C15B E9 8C160000 jmp 屏录专家.0040D7EC
0040C160 8B85 C8FEFFFF mov eax,dword ptr ss:[ebp-138]
0040C166 50 push eax
0040C167 E8 B8180000 call 屏录专家.0040DA24
0040C16C 59 pop ecx
0040C16D 6A 00 push 0
0040C16F E8 62501100 call <jmp.&OLE32.CoInitialize>
0040C174 6A 00 push 0
0040C176 6A 00 push 0
0040C178 6A 00 push 0
0040C17A 6A 03 push 3
0040C17C 6A 04 push 4
0040C17E 6A 00 push 0
0040C180 6A 00 push 0
0040C182 6A FF push -1
0040C184 6A 00 push 0
0040C186 E8 51501100 call <jmp.&OLE32.CoInitializeSecurity>
0040C18B 66:C785 DCFEFFFF >mov word ptr ss:[ebp-124],68
0040C194 66:C785 DCFEFFFF >mov word ptr ss:[ebp-124],74
0040C19D 8D55 D4 lea edx,dword ptr ss:[ebp-2C]
0040C1A0 52 push edx
0040C1A1 E8 72220000 call 屏录专家.0040E418
0040C1A6 59 pop ecx
0040C1A7 8D4D D4 lea ecx,dword ptr ss:[ebp-2C]
0040C1AA 51 push ecx
0040C1AB 8385 E8FEFFFF 02 add dword ptr ss:[ebp-118],2
0040C1B2 8B9D C8FEFFFF mov ebx,dword ptr ss:[ebp-138]
0040C1B8 81C3 F00B0000 add ebx,0BF0
0040C1BE 53 push ebx
0040C1BF E8 00250000 call 屏录专家.0040E6C4
0040C1C4 FF8D E8FEFFFF dec dword ptr ss:[ebp-118]
0040C1CA 83C4 08 add esp,8
0040C1CD FF8D E8FEFFFF dec dword ptr ss:[ebp-118]
0040C1D3 8D45 D4 lea eax,dword ptr ss:[ebp-2C]
0040C1D6 6A 00 push 0
0040C1D8 50 push eax
0040C1D9 E8 5E250000 call 屏录专家.0040E73C
0040C1DE 83C4 08 add esp,8
0040C1E1 8BC3 mov eax,ebx
0040C1E3 E8 7C250000 call 屏录专家.0040E764
0040C1E8 66:C785 DCFEFFFF >mov word ptr ss:[ebp-124],0
0040C1F1 E9 56010000 jmp 屏录专家.0040C34C
0040C1F6 66:C785 DCFEFFFF >mov word ptr ss:[ebp-124],80
0040C1FF 66:C785 DCFEFFFF >mov word ptr ss:[ebp-124],8C
0040C208 8D45 CC lea eax,dword ptr ss:[ebp-34]
0040C20B E8 5C56FFFF call 屏录专家.0040186C
0040C210 50 push eax
0040C211 FF85 E8FEFFFF inc dword ptr ss:[ebp-118]
0040C217 BA 42335200 mov edx,屏录专家.00523342 ; ASCII "ly.exe"
0040C21C 8D45 D0 lea eax,dword ptr ss:[ebp-30]
0040C21F E8 84011000 call 屏录专家.0050C3A8
0040C224 FF85 E8FEFFFF inc dword ptr ss:[ebp-118]
0040C22A 8D55 D0 lea edx,dword ptr ss:[ebp-30]
0040C22D 8B85 C8FEFFFF mov eax,dword ptr ss:[ebp-138]
0040C233 59 pop ecx
0040C234 05 00180000 add eax,1800
0040C239 E8 FA031000 call 屏录专家.0050C638
0040C23E 8D55 CC lea edx,dword ptr ss:[ebp-34]
0040C241 8B02 mov eax,dword ptr ds:[edx]
0040C243 50 push eax
0040C244 8B95 C8FEFFFF mov edx,dword ptr ss:[ebp-138]
0040C24A 52 push edx
0040C24B E8 7C180000 call 屏录专家.0040DACC
0040C250 83C4 08 add esp,8
0040C253 FF8D E8FEFFFF dec dword ptr ss:[ebp-118]
0040C259 8D45 CC lea eax,dword ptr ss:[ebp-34]
0040C25C BA 02000000 mov edx,2
0040C261 E8 7A031000 call 屏录专家.0050C5E0
0040C266 FF8D E8FEFFFF dec dword ptr ss:[ebp-118]
0040C26C 8D45 D0 lea eax,dword ptr ss:[ebp-30]
0040C26F BA 02000000 mov edx,2
0040C274 E8 67031000 call 屏录专家.0050C5E0
0040C279 66:C785 DCFEFFFF >mov word ptr ss:[ebp-124],98
0040C282 8D4D C4 lea ecx,dword ptr ss:[ebp-3C]
0040C285 51 push ecx
0040C286 E8 8D210000 call 屏录专家.0040E418
0040C28B 59 pop ecx
0040C28C 8D45 C4 lea eax,dword ptr ss:[ebp-3C]
0040C28F 50 push eax
0040C290 8385 E8FEFFFF 02 add dword ptr ss:[ebp-118],2
0040C297 8B9D C8FEFFFF mov ebx,dword ptr ss:[ebp-138]
0040C29D 81C3 F00B0000 add ebx,0BF0
0040C2A3 53 push ebx
0040C2A4 E8 1B240000 call 屏录专家.0040E6C4
0040C2A9 FF8D E8FEFFFF dec dword ptr ss:[ebp-118]
0040C2AF 83C4 08 add esp,8
0040C2B2 FF8D E8FEFFFF dec dword ptr ss:[ebp-118]
0040C2B8 8D45 C4 lea eax,dword ptr ss:[ebp-3C]
0040C2BB 6A 00 push 0
0040C2BD 50 push eax
0040C2BE E8 79240000 call 屏录专家.0040E73C
0040C2C3 83C4 08 add esp,8
0040C2C6 8BC3 mov eax,ebx
0040C2C8 E8 97240000 call 屏录专家.0040E764
0040C2CD 66:C785 DCFEFFFF >mov word ptr ss:[ebp-124],70
0040C2D6 EB 66 jmp short 屏录专家.0040C33E
0040C2D8 66:C785 DCFEFFFF >mov word ptr ss:[ebp-124],0A4
0040C2E1 BA 49335200 mov edx,屏录专家.00523349
0040C2E6 8D45 C0 lea eax,dword ptr ss:[ebp-40]
0040C2E9 E8 BA001000 call 屏录专家.0050C3A8
0040C2EE FF85 E8FEFFFF inc dword ptr ss:[ebp-118]
0040C2F4 8B00 mov eax,dword ptr ds:[eax]
0040C2F6 E8 35970B00 call 屏录专家.004C5A30
0040C2FB FF8D E8FEFFFF dec dword ptr ss:[ebp-118]
0040C301 8D45 C0 lea eax,dword ptr ss:[ebp-40]
0040C304 BA 02000000 mov edx,2
0040C309 E8 D2021000 call 屏录专家.0050C5E0
0040C30E 6A 01 push 1
0040C310 E8 D7AB0F00 call 屏录专家.00506EEC
0040C315 59 pop ecx
0040C316 33C9 xor ecx,ecx
0040C318 898D E8FEFFFF mov dword ptr ss:[ebp-118],ecx
0040C31E 8D85 CCFEFFFF lea eax,dword ptr ss:[ebp-134]
0040C324 50 push eax
0040C325 E8 25D80F00 call 屏录专家.00509B4F
0040C32A 59 pop ecx
0040C32B E9 BC140000 jmp 屏录专家.0040D7EC
0040C330 66:C785 DCFEFFFF >mov word ptr ss:[ebp-124],88
0040C339 E8 5CD10F00 call 屏录专家.0050949A
0040C33E 66:C785 DCFEFFFF >mov word ptr ss:[ebp-124],70
0040C347 E8 4ED10F00 call 屏录专家.0050949A
0040C34C 8B95 C8FEFFFF mov edx,dword ptr ss:[ebp-138]
0040C352 52 push edx
0040C353 E8 70180000 call 屏录专家.0040DBC8
0040C358 59 pop ecx
0040C359 68 65335200 push 屏录专家.00523365 ; ASCII "LYSTOPEVENT"
0040C35E 6A 00 push 0
0040C360 6A 00 push 0
0040C362 6A 00 push 0
0040C364 E8 09441100 call <jmp.&KERNEL32.CreateEventA>
0040C369 8B8D C8FEFFFF mov ecx,dword ptr ss:[ebp-138]
0040C36F 8981 F80B0000 mov dword ptr ds:[ecx+BF8],eax
0040C375 6A 2C push 2C
0040C377 6A 00 push 0
0040C379 8B85 C8FEFFFF mov eax,dword ptr ss:[ebp-138]
0040C37F 05 E40C0000 add eax,0CE4
0040C384 50 push eax
0040C385 E8 0E180F00 call 屏录专家.004FDB98
0040C38A 8B95 C8FEFFFF mov edx,dword ptr ss:[ebp-138]
0040C390 83C4 0C add esp,0C
0040C393 BF 18265200 mov edi,屏录专家.00522618 ; ASCII "pmlxzjtlx"
0040C398 C782 F80C0000 080>mov dword ptr ds:[edx+CF8],8
0040C3A2 8B8D C8FEFFFF mov ecx,dword ptr ss:[ebp-138]
0040C3A8 C781 FC0C0000 080>mov dword ptr ds:[ecx+CFC],8
0040C3B2 8B85 C8FEFFFF mov eax,dword ptr ss:[ebp-138]
0040C3B8 05 040D0000 add eax,0D04
0040C3BD 8BF0 mov esi,eax
0040C3BF 33C0 xor eax,eax
0040C3C1 83C9 FF or ecx,FFFFFFFF
0040C3C4 F2:AE repne scas byte ptr es:[edi]
0040C3C6 F7D1 not ecx
0040C3C8 2BF9 sub edi,ecx
0040C3CA 8BD1 mov edx,ecx
0040C3CC 87F7 xchg edi,esi
0040C3CE C1E9 02 shr ecx,2
0040C3D1 8BC7 mov eax,edi
0040C3D3 F3:A5 rep movs dword ptr es:[edi],dword ptr ds:[es>
0040C3D5 8BCA mov ecx,edx
0040C3D7 8D45 B8 lea eax,dword ptr ss:[ebp-48]
0040C3DA 83E1 03 and ecx,3
0040C3DD F3:A4 rep movs byte ptr es:[edi],byte ptr ds:[esi]
0040C3DF 66:C785 DCFEFFFF >mov word ptr ss:[ebp-124],0B0
0040C3E8 E8 7F54FFFF call 屏录专家.0040186C
0040C3ED 50 push eax
0040C3EE FF85 E8FEFFFF inc dword ptr ss:[ebp-118]
0040C3F4 BA 71335200 mov edx,屏录专家.00523371 ; ASCII "\play.dat"
0040C3F9 8D45 BC lea eax,dword ptr ss:[ebp-44]
0040C3FC E8 A7FF0F00 call 屏录专家.0050C3A8
0040C401 FF85 E8FEFFFF inc dword ptr ss:[ebp-118]
0040C407 8D55 BC lea edx,dword ptr ss:[ebp-44]
0040C40A 8B9D C8FEFFFF mov ebx,dword ptr ss:[ebp-138]
0040C410 59 pop ecx
0040C411 81C3 00180000 add ebx,1800
0040C417 8BC3 mov eax,ebx
0040C419 E8 1A021000 call 屏录专家.0050C638
0040C41E 8D55 B8 lea edx,dword ptr ss:[ebp-48]
0040C421 8B02 mov eax,dword ptr ds:[edx]
0040C423 50 push eax
0040C424 8B95 C8FEFFFF mov edx,dword ptr ss:[ebp-138]
0040C42A 52 push edx
0040C42B E8 AC180000 call 屏录专家.0040DCDC
0040C430 83C4 08 add esp,8
0040C433 8B8D C8FEFFFF mov ecx,dword ptr ss:[ebp-138]
0040C439 8981 000D0000 mov dword ptr ds:[ecx+D00],eax
0040C43F FF8D E8FEFFFF dec dword ptr ss:[ebp-118]
0040C445 8D45 B8 lea eax,dword ptr ss:[ebp-48]
0040C448 BA 02000000 mov edx,2
0040C44D E8 8E011000 call 屏录专家.0050C5E0
0040C452 FF8D E8FEFFFF dec dword ptr ss:[ebp-118]
0040C458 8D45 BC lea eax,dword ptr ss:[ebp-44]
0040C45B BA 02000000 mov edx,2
0040C460 E8 7B011000 call 屏录专家.0050C5E0
0040C465 8B8D C8FEFFFF mov ecx,dword ptr ss:[ebp-138]
0040C46B 51 push ecx
0040C46C E8 3F190000 call 屏录专家.0040DDB0 ; 机器码生成算法
0040C471 59 pop ecx
跟入0040D948看看,如下:
0040D948 55 push ebp
0040D949 8BEC mov ebp,esp
0040D94B 83C4 D8 add esp,-28
0040D94E B8 B8105300 mov eax,屏录专家.005310B8
0040D953 53 push ebx
0040D954 56 push esi
0040D955 57 push edi
0040D956 E8 65060F00 call 屏录专家.004FDFC0
0040D95B 6A 19 push 19
0040D95D E8 32FA0E00 call 屏录专家.004FD394
0040D962 59 pop ecx
0040D963 8945 D8 mov dword ptr ss:[ebp-28],eax
0040D966 6A 19 push 19
0040D968 6A 00 push 0
0040D96A 8B55 D8 mov edx,dword ptr ss:[ebp-28]
0040D96D 52 push edx
0040D96E E8 25020F00 call 屏录专家.004FDB98
0040D973 83C4 0C add esp,0C
0040D976 66:C745 EC 0800 mov word ptr ss:[ebp-14],8
0040D97C 8B4D D8 mov ecx,dword ptr ss:[ebp-28]
0040D97F 51 push ecx
0040D980 E8 8BC10600 call 屏录专家.00479B10 ; 这里会获取到一组cpu相关的数据,保存到[ebp-28]
0040D985 8B45 D8 mov eax,dword ptr ss:[ebp-28] ; str2生成算法(上面得到的数据为运算的原始数据)
0040D988 59 pop ecx ; 把cpuid相关的一些信息进行异或,最后结果保存到[ebp-28]
0040D989 83C0 04 add eax,4
0040D98C BA 01000000 mov edx,1
0040D991 8B5D D8 mov ebx,dword ptr ss:[ebp-28]
0040D994 8A08 mov cl,byte ptr ds:[eax]
0040D996 42 inc edx
0040D997 300B xor byte ptr ds:[ebx],cl
0040D999 8B5D D8 mov ebx,dword ptr ss:[ebp-28]
0040D99C 8A48 01 mov cl,byte ptr ds:[eax+1]
0040D99F 304B 01 xor byte ptr ds:[ebx+1],cl
0040D9A2 8B5D D8 mov ebx,dword ptr ss:[ebp-28]
0040D9A5 8A48 02 mov cl,byte ptr ds:[eax+2]
0040D9A8 304B 02 xor byte ptr ds:[ebx+2],cl
0040D9AB 8B5D D8 mov ebx,dword ptr ss:[ebp-28]
0040D9AE 8A48 03 mov cl,byte ptr ds:[eax+3]
0040D9B1 83C0 04 add eax,4
0040D9B4 304B 03 xor byte ptr ds:[ebx+3],cl
0040D9B7 83FA 06 cmp edx,6
0040D9BA ^ 7C D5 jl short 屏录专家.0040D991
0040D9BC 66:C745 EC 0000 mov word ptr ss:[ebp-14],0
0040D9C2 EB 0B jmp short 屏录专家.0040D9CF
0040D9C4 66:C745 EC 1000 mov word ptr ss:[ebp-14],10
0040D9CA E8 CBBA0F00 call 屏录专家.0050949A
0040D9CF 8B55 08 mov edx,dword ptr ss:[ebp+8]
0040D9D2 8B45 D8 mov eax,dword ptr ss:[ebp-28]
0040D9D5 05 E8030000 add eax,3E8
0040D9DA 8982 BC130000 mov dword ptr ds:[edx+13BC],eax
0040D9E0 8B4D DC mov ecx,dword ptr ss:[ebp-24]
0040D9E3 64:890D 00000000 mov dword ptr fs:[0],ecx
0040D9EA 5F pop edi
0040D9EB 5E pop esi
0040D9EC 5B pop ebx
0040D9ED 8BE5 mov esp,ebp
0040D9EF 5D pop ebp
0040D9F0 C3 retn
继续跟入:00479B10
00479B10 55 push ebp
00479B11 8BEC mov ebp,esp
00479B13 83C4 E4 add esp,-1C
00479B16 53 push ebx
00479B17 B8 01000000 mov eax,1 ; eax=1
00479B1C 33DB xor ebx,ebx
00479B1E 33C9 xor ecx,ecx
00479B20 33D2 xor edx,edx
00479B22 0FA2 cpuid ; 获取cpuid
00479B24 8955 E4 mov dword ptr ss:[ebp-1C],edx
00479B27 894D E8 mov dword ptr ss:[ebp-18],ecx
00479B2A 8945 EC mov dword ptr ss:[ebp-14],eax
00479B2D B8 03000000 mov eax,3 ; eax=3
00479B32 33DB xor ebx,ebx
00479B34 33C9 xor ecx,ecx
00479B36 33D2 xor edx,edx
00479B38 0FA2 cpuid ; 获取cpuid
00479B3A 8955 F0 mov dword ptr ss:[ebp-10],edx
00479B3D 894D F4 mov dword ptr ss:[ebp-C],ecx
00479B40 895D F8 mov dword ptr ss:[ebp-8],ebx
00479B43 C645 FC 00 mov byte ptr ss:[ebp-4],0
00479B47 6A 19 push 19
00479B49 8D45 E4 lea eax,dword ptr ss:[ebp-1C]
00479B4C 50 push eax
00479B4D 8B55 08 mov edx,dword ptr ss:[ebp+8]
00479B50 52 push edx
00479B51 E8 D23F0800 call 屏录专家.004FDB28 ; 保存上面取得的结果
00479B56 83C4 0C add esp,0C
00479B59 5B pop ebx
00479B5A 8BE5 mov esp,ebp
00479B5C 5D pop ebp
00479B5D C3 retn
好了0040D948 这个CALL 分析完了,总结下,就是获取CPU的信息,然后进行异或运算,得到了一组数据,计为data1
继续分析机器码生成的关键算法吧,累了就先休息下,呵呵.
进入0040DDB0这个call,分析如下:
0040DDB0 55 push ebp
0040DDB1 8BEC mov ebp,esp
0040DDB3 83C4 D4 add esp,-2C
0040DDB6 B8 18125300 mov eax,屏录专家.00531218
0040DDBB 53 push ebx
0040DDBC 56 push esi
0040DDBD 57 push edi
0040DDBE 8B75 08 mov esi,dword ptr ss:[ebp+8]
0040DDC1 E8 FA010F00 call 屏录专家.004FDFC0
0040DDC6 66:C745 E4 0800 mov word ptr ss:[ebp-1C],8
0040DDCC 8D45 FC lea eax,dword ptr ss:[ebp-4]
0040DDCF E8 983AFFFF call 屏录专家.0040186C
0040DDD4 FF45 F0 inc dword ptr ss:[ebp-10]
0040DDD7 8D45 F8 lea eax,dword ptr ss:[ebp-8]
0040DDDA 66:C745 E4 1400 mov word ptr ss:[ebp-1C],14
0040DDE0 66:C745 E4 2000 mov word ptr ss:[ebp-1C],20
0040DDE6 56 push esi
0040DDE7 E8 803AFFFF call 屏录专家.0040186C
0040DDEC 50 push eax
0040DDED FF45 F0 inc dword ptr ss:[ebp-10]
0040DDF0 E8 03640000 call 屏录专家.004141F8 ; 机器码生成算法,跟进
0040DDF5 83C4 08 add esp,8
0040DDF8 8D55 F8 lea edx,dword ptr ss:[ebp-8]
0040DDFB 8D45 FC lea eax,dword ptr ss:[ebp-4]
0040DDFE E8 0DE80F00 call 屏录专家.0050C610
0040DE03 FF4D F0 dec dword ptr ss:[ebp-10]
0040DE06 8D45 F8 lea eax,dword ptr ss:[ebp-8]
0040DE09 BA 02000000 mov edx,2
0040DE0E E8 CDE70F00 call 屏录专家.0050C5E0
0040DE13 6A 15 push 15
0040DE15 E8 7AF50E00 call 屏录专家.004FD394
0040DE1A 59 pop ecx
0040DE1B 8BD8 mov ebx,eax
0040DE1D 8D45 FC lea eax,dword ptr ss:[ebp-4]
0040DE20 E8 1F3DFFFF call 屏录专家.00401B44
0040DE25 8BF8 mov edi,eax
0040DE27 33C0 xor eax,eax
0040DE29 56 push esi
0040DE2A 83C9 FF or ecx,FFFFFFFF
0040DE2D F2:AE repne scas byte ptr es:[edi]
0040DE2F F7D1 not ecx
0040DE31 2BF9 sub edi,ecx
0040DE33 8BF3 mov esi,ebx
0040DE35 87F7 xchg edi,esi
0040DE37 8BD1 mov edx,ecx
0040DE39 8BC7 mov eax,edi
0040DE3B C1E9 02 shr ecx,2
0040DE3E 8D45 FC lea eax,dword ptr ss:[ebp-4]
0040DE41 F3:A5 rep movs dword ptr es:[edi],dword ptr ds:[es>
0040DE43 8BCA mov ecx,edx
0040DE45 BA 02000000 mov edx,2
0040DE4A 83E1 03 and ecx,3
0040DE4D F3:A4 rep movs byte ptr es:[edi],byte ptr ds:[esi]
0040DE4F 5E pop esi
0040DE50 C643 14 00 mov byte ptr ds:[ebx+14],0
0040DE54 81C3 664E0000 add ebx,4E66
0040DE5A 899E A0130000 mov dword ptr ds:[esi+13A0],ebx
0040DE60 FF4D F0 dec dword ptr ss:[ebp-10]
0040DE63 E8 78E70F00 call 屏录专家.0050C5E0
0040DE68 8B4D D4 mov ecx,dword ptr ss:[ebp-2C]
0040DE6B 64:890D 00000000 mov dword ptr fs:[0],ecx
0040DE72 5F pop edi
0040DE73 5E pop esi
0040DE74 5B pop ebx
0040DE75 8BE5 mov esp,ebp
0040DE77 5D pop ebp
0040DE78 C3 retn
继续跟入:004141F8
004141F8 55 push ebp
004141F9 8BEC mov ebp,esp
004141FB 81C4 C0F7FFFF add esp,-840
00414201 B8 30195300 mov eax,屏录专家.00531930
00414206 53 push ebx
00414207 56 push esi
00414208 57 push edi
00414209 8B75 0C mov esi,dword ptr ss:[ebp+C]
0041420C E8 AF9D0E00 call 屏录专家.004FDFC0
00414211 68 00040000 push 400
00414216 6A 00 push 0
00414218 8D95 C0FBFFFF lea edx,dword ptr ss:[ebp-440]
0041421E 52 push edx
0041421F E8 74990E00 call 屏录专家.004FDB98
00414224 83C4 0C add esp,0C
00414227 8D8D C0F7FFFF lea ecx,dword ptr ss:[ebp-840]
0041422D 68 00040000 push 400
00414232 6A 00 push 0
00414234 51 push ecx
00414235 E8 5E990E00 call 屏录专家.004FDB98
0041423A 83C4 0C add esp,0C
0041423D 8D45 C0 lea eax,dword ptr ss:[ebp-40]
00414240 C686 140C0000 01 mov byte ptr ds:[esi+C14],1
00414247 50 push eax
00414248 56 push esi
00414249 E8 5EA40200 call 屏录专家.0043E6AC ; 复制data1(前面取得的cpu信息处理后的数据)到新的地方
0041424E 83C4 08 add esp,8
00414251 80BE 140C0000 01 cmp byte ptr ds:[esi+C14],1
00414258 0F85 63010000 jnz 屏录专家.004143C1
0041425E 8D95 C0FBFFFF lea edx,dword ptr ss:[ebp-440]
00414264 52 push edx
00414265 56 push esi
00414266 E8 ADA40200 call 屏录专家.0043E718 ; 获取硬盘序列号str1
0041426B 83C4 08 add esp,8
0041426E 83F8 FF cmp eax,-1
00414271 0F85 C3000000 jnz 屏录专家.0041433A
00414277 66:C745 DC 0800 mov word ptr ss:[ebp-24],8
0041427D BA E0515200 mov edx,屏录专家.005251E0
00414282 8D45 FC lea eax,dword ptr ss:[ebp-4]
00414285 E8 1E810F00 call 屏录专家.0050C3A8
0041428A FF45 E8 inc dword ptr ss:[ebp-18]
0041428D 8D55 FC lea edx,dword ptr ss:[ebp-4]
00414290 8D9E 100C0000 lea ebx,dword ptr ds:[esi+C10]
00414296 8BC3 mov eax,ebx
00414298 E8 3F840F00 call 屏录专家.0050C6DC
0041429D 50 push eax
0041429E FF4D E8 dec dword ptr ss:[ebp-18]
004142A1 8D45 FC lea eax,dword ptr ss:[ebp-4]
004142A4 BA 02000000 mov edx,2
004142A9 E8 32830F00 call 屏录专家.0050C5E0
004142AE 59 pop ecx
004142AF 84C9 test cl,cl
004142B1 74 33 je short 屏录专家.004142E6
004142B3 8BC3 mov eax,ebx
004142B5 E8 8AD8FEFF call 屏录专家.00401B44
004142BA 8BF8 mov edi,eax
004142BC 33C0 xor eax,eax
004142BE 56 push esi
004142BF 83C9 FF or ecx,FFFFFFFF
004142C2 F2:AE repne scas byte ptr es:[edi]
004142C4 F7D1 not ecx
004142C6 2BF9 sub edi,ecx
004142C8 8DB5 C0FBFFFF lea esi,dword ptr ss:[ebp-440]
004142CE 87F7 xchg edi,esi
004142D0 8BD1 mov edx,ecx
004142D2 8BC7 mov eax,edi
004142D4 C1E9 02 shr ecx,2
004142D7 F3:A5 rep movs dword ptr es:[edi],dword ptr>
004142D9 8BCA mov ecx,edx
004142DB 83E1 03 and ecx,3
004142DE F3:A4 rep movs byte ptr es:[edi],byte ptr d>
004142E0 5E pop esi
004142E1 E9 DB000000 jmp 屏录专家.004143C1
004142E6 66:C745 DC 1400 mov word ptr ss:[ebp-24],14
004142EC BA E1515200 mov edx,屏录专家.005251E1
004142F1 8D45 F8 lea eax,dword ptr ss:[ebp-8]
004142F4 E8 AF800F00 call 屏录专家.0050C3A8
004142F9 FF45 E8 inc dword ptr ss:[ebp-18]
004142FC 8D55 F8 lea edx,dword ptr ss:[ebp-8]
004142FF 8B45 08 mov eax,dword ptr ss:[ebp+8]
00414302 E8 09830F00 call 屏录专家.0050C610
00414307 8B45 08 mov eax,dword ptr ss:[ebp+8]
0041430A BA 02000000 mov edx,2
0041430F 66:C745 DC 2000 mov word ptr ss:[ebp-24],20
00414315 50 push eax
00414316 8D45 F8 lea eax,dword ptr ss:[ebp-8]
00414319 FF4D E8 dec dword ptr ss:[ebp-18]
0041431C E8 BF820F00 call 屏录专家.0050C5E0
00414321 58 pop eax
00414322 66:C745 DC 1400 mov word ptr ss:[ebp-24],14
00414328 FF45 E8 inc dword ptr ss:[ebp-18]
0041432B 8B55 CC mov edx,dword ptr ss:[ebp-34]
0041432E 64:8915 00000000 mov dword ptr fs:[0],edx
00414335 E9 BB010000 jmp 屏录专家.004144F5
0041433A 83F8 FE cmp eax,-2
0041433D 75 54 jnz short 屏录专家.00414393
0041433F 66:C745 DC 2C00 mov word ptr ss:[ebp-24],2C
00414345 BA F4515200 mov edx,屏录专家.005251F4
0041434A 8D45 F4 lea eax,dword ptr ss:[ebp-C]
0041434D E8 56800F00 call 屏录专家.0050C3A8
00414352 FF45 E8 inc dword ptr ss:[ebp-18]
00414355 8D55 F4 lea edx,dword ptr ss:[ebp-C]
00414358 8B45 08 mov eax,dword ptr ss:[ebp+8]
0041435B E8 B0820F00 call 屏录专家.0050C610
00414360 8B45 08 mov eax,dword ptr ss:[ebp+8]
00414363 BA 02000000 mov edx,2
00414368 66:C745 DC 3800 mov word ptr ss:[ebp-24],38
0041436E 50 push eax
0041436F 8D45 F4 lea eax,dword ptr ss:[ebp-C]
00414372 FF4D E8 dec dword ptr ss:[ebp-18]
00414375 E8 66820F00 call 屏录专家.0050C5E0
0041437A 58 pop eax
0041437B 66:C745 DC 2C00 mov word ptr ss:[ebp-24],2C
00414381 FF45 E8 inc dword ptr ss:[ebp-18]
00414384 8B55 CC mov edx,dword ptr ss:[ebp-34]
00414387 64:8915 00000000 mov dword ptr fs:[0],edx
0041438E E9 62010000 jmp 屏录专家.004144F5
00414393 85C0 test eax,eax
00414395 75 09 jnz short 屏录专家.004143A0
00414397 C686 140C0000 00 mov byte ptr ds:[esi+C14],0
0041439E EB 21 jmp short 屏录专家.004143C1
004143A0 33DB xor ebx,ebx ; EBX=0
004143A2 8D8D C0FBFFFF lea ecx,dword ptr ss:[ebp-440] ; ECX=出现一个重要的字符串(20位)=硬盘序列号
004143A8 0FBE01 movsx eax,byte ptr ds:[ecx] ; 按位取ECX数据到EAX
004143AB 99 cdq ; EDX=0
004143AC BF 0A000000 mov edi,0A ; EDI=A
004143B1 43 inc ebx ; EBX+1
004143B2 F7FF idiv edi ; EDX=EAX MOD A
004143B4 8BC2 mov eax,edx ; EAX=EDX
004143B6 83C0 30 add eax,30 ; EAX=EAX+30H
004143B9 8801 mov byte ptr ds:[ecx],al ; 按位覆盖ecx
004143BB 41 inc ecx ; ECX+1
004143BC 83FB 14 cmp ebx,14 ; EBX<20?
004143BF ^ 7C E7 jl short 屏录专家.004143A8 ; <就继续循环
004143C1 80BE 140C0000 00 cmp byte ptr ds:[esi+C14],0 ; 设处理后的数据为str2
004143C8 0F85 B0000000 jnz 屏录专家.0041447E
004143CE 8D95 C0F7FFFF lea edx,dword ptr ss:[ebp-840]
004143D4 68 00040000 push 400
004143D9 52 push edx
004143DA 6A 00 push 0
004143DC 8D4D C8 lea ecx,dword ptr ss:[ebp-38]
004143DF 6A 00 push 0
004143E1 51 push ecx
004143E2 8D85 C0FBFFFF lea eax,dword ptr ss:[ebp-440]
004143E8 68 00040000 push 400
004143ED 50 push eax
004143EE 68 FF515200 push 屏录专家.005251FF ; ASCII "c:/"
004143F3 E8 DCC41000 call <jmp.&KERNEL32.GetVolumeInformat>
004143F8 8B45 C8 mov eax,dword ptr ss:[ebp-38]
004143FB 33D2 xor edx,edx
004143FD B9 58000000 mov ecx,58
00414402 BB 58000000 mov ebx,58
00414407 F7F1 div ecx
00414409 8BC8 mov ecx,eax
0041440B 8B45 C8 mov eax,dword ptr ss:[ebp-38]
0041440E 33D2 xor edx,edx
00414410 F7F3 div ebx
00414412 03CA add ecx,edx
00414414 8D95 C0FBFFFF lea edx,dword ptr ss:[ebp-440]
0041441A 81C1 75D22D01 add ecx,12DD275
00414420 894D C8 mov dword ptr ss:[ebp-38],ecx
00414423 8B45 C8 mov eax,dword ptr ss:[ebp-38]
00414426 50 push eax
00414427 68 03525200 push 屏录专家.00525203 ; ASCII "%u"
0041442C 52 push edx
0041442D E8 B2CE0E00 call 屏录专家.005012E4
00414432 83C4 0C add esp,0C
00414435 8D8D C0FBFFFF lea ecx,dword ptr ss:[ebp-440]
0041443B 51 push ecx
0041443C E8 8B980E00 call 屏录专家.004FDCCC
00414441 59 pop ecx
00414442 83F8 03 cmp eax,3
00414445 7C 18 jl short 屏录专家.0041445F
00414447 8A95 C2FBFFFF mov dl,byte ptr ss:[ebp-43E]
0041444D 8A8D C0FBFFFF mov cl,byte ptr ss:[ebp-440]
00414453 888D C2FBFFFF mov byte ptr ss:[ebp-43E],cl
00414459 8895 C0FBFFFF mov byte ptr ss:[ebp-440],dl
0041445F 8BD8 mov ebx,eax
00414461 8D841D C0FBFFFF lea eax,dword ptr ss:[ebp+ebx-440]
00414468 83FB 14 cmp ebx,14
0041446B 7D 0A jge short 屏录专家.00414477
0041446D C600 37 mov byte ptr ds:[eax],37
00414470 43 inc ebx
00414471 40 inc eax
00414472 83FB 14 cmp ebx,14
00414475 ^ 7C F6 jl short 屏录专家.0041446D
00414477 C685 D4FBFFFF 00 mov byte ptr ss:[ebp-42C],0 ; 下面再次计算机起码前2-5位
0041447E 33DB xor ebx,ebx ; EBX=0
00414480 8D8D C1FBFFFF lea ecx,dword ptr ss:[ebp-43F] ; ECX=str2(从第2位开始)
00414486 8D75 C0 lea esi,dword ptr ss:[ebp-40]
00414489 8A06 mov al,byte ptr ds:[esi] ; AL=按字节取data1
0041448B BF 0A000000 mov edi,0A ; EDI=A
00414490 3001 xor byte ptr ds:[ecx],al ; str2按位与AL抑或
00414492 0FBE01 movsx eax,byte ptr ds:[ecx] ; 按字节取ecx
00414495 33D2 xor edx,edx ; edx=0
00414497 46 inc esi ; esi+1
00414498 F7F7 div edi ; edx=al mod edi
0041449A 80C2 30 add dl,30 ; dl=dl+30h
0041449D 43 inc ebx ; ebx=ebx+1
0041449E 8811 mov byte ptr ds:[ecx],dl ; 保存
004144A0 41 inc ecx ; ecx=ecx+1
004144A1 83FB 04 cmp ebx,4 ; ebx和4比较
004144A4 ^ 7C E3 jl short 屏录专家.00414489 ; <4就回跳
004144A6 66:C745 DC 4400 mov word ptr ss:[ebp-24],44
004144AC 8D95 C0FBFFFF lea edx,dword ptr ss:[ebp-440] ; edx=机器码
004144B2 8D45 F0 lea eax,dword ptr ss:[ebp-10]
004144B5 E8 EE7E0F00 call 屏录专家.0050C3A8
004144BA 8BD0 mov edx,eax
004144BC FF45 E8 inc dword ptr ss:[ebp-18]
004144BF 8B45 08 mov eax,dword ptr ss:[ebp+8]
004144C2 E8 49810F00 call 屏录专家.0050C610
004144C7 8B45 08 mov eax,dword ptr ss:[ebp+8]
004144CA BA 02000000 mov edx,2
004144CF 66:C745 DC 5000 mov word ptr ss:[ebp-24],50
004144D5 50 push eax
004144D6 8D45 F0 lea eax,dword ptr ss:[ebp-10]
004144D9 FF4D E8 dec dword ptr ss:[ebp-18]
004144DC E8 FF800F00 call 屏录专家.0050C5E0
004144E1 58 pop eax
004144E2 66:C745 DC 4400 mov word ptr ss:[ebp-24],44
004144E8 FF45 E8 inc dword ptr ss:[ebp-18]
004144EB 8B55 CC mov edx,dword ptr ss:[ebp-34]
004144EE 64:8915 00000000 mov dword ptr fs:[0],edx
004144F5 5F pop edi
004144F6 5E pop esi
004144F7 5B pop ebx
004144F8 8BE5 mov esp,ebp
004144FA 5D pop ebp
004144FB C3 retn