//es:[edi]=[00401000]=00
//复制回各区段
数据0057142F 5E pop esi
00571430 48 dec eax
//原始 NumberOfSections
00571431 75 D8 jnz short 0057140B
//依次复制回所有的区段
数据00571433 8B55 F4 mov edx,dword ptr ss:[ebp-C]
00571436 2B55 FC sub edx,dword ptr ss:[ebp-4]
00571439 74 5C je short 00571497
//判断是否需要重定位处理,DLL使用
0057143B 8B45 F4 mov eax,dword ptr ss:[ebp-C]
0057143E 89C3 mov ebx,eax
00571440 035B 3C add ebx,dword ptr ds:[ebx+3C]
00571443 8B9B A0000000 mov ebx,dword ptr ds:[ebx+A0]
00571449 85DB test ebx,ebx
0057144B 74 4A je short 00571497
0057144D 01C3 add ebx,eax
0057144F 8B43 04 mov eax,dword ptr ds:[ebx+4]
00571452 85C0 test eax,eax
00571454 74 41 je short 00571497
00571456 8D48 F8 lea ecx,dword ptr ds:[eax-8]
00571459 D1E9 shr ecx,1
0057145B 8D7B 08 lea edi,dword ptr ds:[ebx+8]
0057145E 0FB707 movzx eax,word ptr ds:[edi]
00571461 52 push edx
00571462 89C2 mov edx,eax
00571464 C1E8 0C shr eax,0C
00571467 8B75 F4 mov esi,dword ptr ss:[ebp-C]
0057146A 66:81E2 FF0F and dx,0FFF
0057146F 0333 add esi,dword ptr ds:[ebx]
00571471 01D6 add esi,edx
00571473 5A pop edx
00571474 48 dec eax
00571475 75 07 jnz short 0057147E
00571477 89D0 mov eax,edx
00571479 C1E8 10 shr eax,10
0057147C EB 06 jmp short 00571484
0057147E 48 dec eax
0057147F 75 08 jnz short 00571489
00571481 0FB7C2 movzx eax,dx
00571484 66:0106 add word ptr ds:[esi],ax
00571487 EB 05 jmp short 0057148E
00571489 48 dec eax
0057148A 75 02 jnz short 0057148E
0057148C 0116 add dword ptr ds:[esi],edx
0057148E 47 inc edi
0057148F 47 inc edi
00571490 E2 CC loopd short 0057145E
00571492 035B 04 add ebx,dword ptr ds:[ebx+4]
00571495 EB B8 jmp short 0057144F