飘云阁

 找回密码
 加入我们

QQ登录

只需一步,快速开始

查看: 11355|回复: 32

[转贴] 常见各种语言编写的程序的入口点代码

[复制链接]
  • TA的每日心情
    开心
    2024-5-1 14:44
  • 签到天数: 2 天

    [LV.1]初来乍到

    发表于 2008-2-29 07:14:35 | 显示全部楼层 |阅读模式
    Borland Delphi 6.0 - 7.0
    1. 00509CB0 > $ 55 PUSH EBP
    2. 00509CB1 . 8BEC MOV EBP,ESP
    3. 00509CB3 . 83C4 EC ADD ESP,-14
    4. 00509CB6 . 53 PUSH EBX
    5. 00509CB7 . 56 PUSH ESI
    6. 00509CB8 . 57 PUSH EDI
    7. 00509CB9 . 33C0 XOR EAX,EAX
    8. 00509CBB . 8945 EC MOV DWORD PTR SS:[EBP-14],EAX
    9. 00509CBE . B8 20975000 MOV EAX,unpack.00509720
    10. 00509CC3 . E8 84CCEFFF CALL unpack.0040694C
    复制代码
    Microsoft Visual C++ 6.0
    1. 00496EB8 >/$ 55 PUSH EBP ; (初始 cpu 选择)
    2. 00496EB9 |. 8BEC MOV EBP,ESP
    3. 00496EBB |. 6A FF PUSH -1
    4. 00496EBD |. 68 40375600 PUSH Screensh.00563740
    5. 00496EC2 |. 68 8CC74900 PUSH Screensh.0049C78C ; SE 处理程序安装
    6. 00496EC7 |. 64:A1 0000000>MOV EAX,DWORD PTR FS:[0]
    7. 00496ECD |. 50 PUSH EAX
    8. 00496ECE |. 64:8925 00000>MOV DWORD PTR FS:[0],ESP
    9. 00496ED5 |. 83EC 58 SUB ESP,58
    复制代码
    Microsoft Visual C++ 6.0 [Overlay] E语言
    1. 00403831 >/$ 55 PUSH EBP
    2. 00403832 |. 8BEC MOV EBP,ESP
    3. 00403834 |. 6A FF PUSH -1
    4. 00403836 |. 68 F0624000 PUSH Nisy521.004062F0
    5. 0040383B |. 68 A44C4000 PUSH Nisy521.00404CA4 ; SE 处理程序安装
    6. 00403840 |. 64:A1 0000000>MOV EAX,DWORD PTR FS:[0]
    7. 00403846 |. 50 PUSH EAX
    8. 00403847 |. 64:8925 00000>MOV DWORD PTR FS:[0],ESP
    复制代码
    Microsoft Visual Basic 5.0 / 6.0
    1. 00401166 - FF25 6C104000 JMP DWORD PTR DS:[] ; MSVBVM60.ThunRTMain
    2. 0040116C > 68 147C4000 PUSH PACKME.00407C14
    3. 00401171 E8 F0FFFFFF CALL
    4. 00401176 0000 ADD BYTE PTR DS:[EAX],AL
    5. 00401178 0000 ADD BYTE PTR DS:[EAX],AL
    6. 0040117A 0000 ADD BYTE PTR DS:[EAX],AL
    7. 0040117C 3000 XOR BYTE PTR DS:[EAX],AL
    8. 或省略第一行的JMP
    9. 00401FBC > 68 D0D44000 push dumped_.0040D4D0
    10. 00401FC1 E8 EEFFFFFF call
    11. 00401FC6 0000 add byte ptr ds:[eax],al
    12. 00401FC8 0000 add byte ptr ds:[eax],al
    13. 00401FCA 0000 add byte ptr ds:[eax],al
    14. 00401FCC 3000 xor byte ptr ds:[eax],al
    15. 00401FCE 0000 add byte ptr ds:[eax],al
    复制代码
    BC++
    1. 0040163C > $ /EB 10 JMP SHORT BCLOCK.0040164E
    2. 0040163E |66 DB 66 ; CHAR 'f'
    3. 0040163F |62 DB 62 ; CHAR 'b'
    4. 00401640 |3A DB 3A ; CHAR ':'
    5. 00401641 |43 DB 43 ; CHAR 'C'
    6. 00401642 |2B DB 2B ; CHAR '+'
    7. 00401643 |2B DB 2B ; CHAR '+'
    8. 00401644 |48 DB 48 ; CHAR 'H'
    9. 00401645 |4F DB 4F ; CHAR 'O'
    10. 00401646 |4F DB 4F ; CHAR 'O'
    11. 00401647 |4B DB 4B ; CHAR 'K'
    12. 00401648 |90 NOP
    13. 00401649 |E9 DB E9
    14. 0040164A . |98E04E00 DD OFFSET BCLOCK.___CPPdebugHook
    15. 0040164E > \A1 8BE04E00 MOV EAX,DWORD PTR DS:[4EE08B]
    16. 00401653 . C1E0 02 SHL EAX,2
    17. 00401656 . A3 8FE04E00 MOV DWORD PTR DS:[4EE08F],EAX
    18. 0040165B . 52 PUSH EDX
    19. 0040165C . 6A 00 PUSH 0 ; /pModule = NULL
    20. 0040165E . E8 DFBC0E00 CALL  ; \GetModuleHandleA
    21. 00401663 . 8BD0 MOV EDX,EAX
    复制代码
    Dasm:
    1. 00401000 >/$ 6A 00 PUSH 0 ; /pModule = NULL
    2. 00401002 |. E8 C50A0000 CALL  ; \GetModuleHandleA
    3. 00401007 |. A3 0C354000 MOV DWORD PTR DS:[40350C],EAX
    4. 0040100C |. E8 B50A0000 CALL  ; [GetCommandLineA
    5. 00401011 |. A3 10354000 MOV DWORD PTR DS:[403510],EAX
    6. 00401016 |. 6A 0A PUSH 0A ; /Arg4 = 0000000A
    7. 00401018 |. FF35 10354000 PUSH DWORD PTR DS:[403510] ; |Arg3 = 00000000
    8. 0040101E |. 6A 00 PUSH 0 ; |Arg2 = 00000000
    9. 00401020 |. FF35 0C354000 PUSH DWORD PTR DS:[40350C] ; |Arg1 = 00000000
    复制代码
    VC8 -> Microsoft Corporation
    1. 0043DEE1 Q>  E8 2D8D0000        call QQRecord.00446C13                     ; (Initial CPU selection)
    2. 0043DEE6   ^ E9 16FEFFFF        jmp QQRecord.0043DD01
    3. 0043DEEB     55                 push ebp
    4. 0043DEEC     8BEC               mov ebp,esp
    5. 0043DEEE     51                 push ecx
    6. 0043DEEF     53                 push ebx
    7. 0043DEF0     8B45 0C            mov eax,dword ptr ss:[ebp+C]
    8. 0043DEF3     83C0 0C            add eax,0C
    9. 0043DEF6     8945 FC            mov dword ptr ss:[ebp-4],eax
    10. 0043DEF9     64:8B1D 00000000   mov ebx,dword ptr fs:[0]
    11. 0043DF00     8B03               mov eax,dword ptr ds:[ebx]
    12. 0043DF02     64:A3 00000000     mov dword ptr fs:[0],eax
    13. 0043DF08     8B45 08            mov eax,dword ptr ss:[ebp+8]
    14. 0043DF0B     8B5D 0C            mov ebx,dword ptr ss:[ebp+C]
    15. 0043DF0E     8B6D FC            mov ebp,dword ptr ss:[ebp-4]
    16. 0043DF11     8B63 FC            mov esp,dword ptr ds:[ebx-4]
    17. 0043DF14     FFE0               jmp eax
    18. 0043DF16     5B                 pop ebx
    19. 0043DF17     C9                 leave
    20. 0043DF18     C2 0800            retn 8
    复制代码
    PB
    1. 00410D50: 55                       PUSH EBP
    2. 00410D51: 8BEC                     MOV EBP, ESP
    3. 00410D53: 53                       PUSH EBX
    4. 00410D54: 56                       PUSH ESI
    5. 00410D55: 57                       PUSH EDI
    6. 00410D56: BB00604100               MOV EBX, 00416000
    7. 00410D5B: 662EF705D213410004000F85 TEST WORD PTR CS:[004113D2], 850F0004
    8. 00410D67: DB00                     FILD DWORD PTR [EAX]
    9. 00410D69: 0000                     ADD [EAX], AL
    10. 00410D6B: 6A00                     PUSH 00000000
    11. 00410D6D: FF1554844100             CALL [00418454] ; CoInitialize
    12. 00410D73: E892020000               CALL 0041100A
    13. 00410D78: C7830801000001000000     MOV [EBX+00000108], 00000001
    14. 00410D82: 8D8390020000             LEA EAX, [EBX+00000290]
    15. 00410D88: 50                       PUSH EAX
    16. 00410D89: FF15DC834100             CALL [004183DC] ; GetVersionExA
    17. 00410D8F: 83EC44                   SUB ESP, 00000044
    18. 00410D92: C7042444000000           MOV [ESP], 00000044
    19. 00410D99: C744242C00000000         MOV [ESP+2C], 00000000
    20. 00410DA1: 54                       PUSH ESP
    21. 00410DA2: FF15D4834100             CALL [004183D4] ; GetStartupInfoA
    22. 00410DA8: B80A000000               MOV EAX, 0000000A
    23. 00410DAD: F744242C01000000         TEST [ESP+2C], 00000001
    24. 00410DB5: 7405                     JZ 410DBC
    25. 00410DB7: 0FB7442430               MOVZX EAX, WORD PTR [ESP+30]
    26. 00410DBC: 83C444                   ADD ESP, 00000044
    27. 00410DBF: 8983FE000000             MOV [EBX+000000FE], EAX
    28. 00410DC5: FF15B0834100             CALL [004183B0] ; GetCommandLineA
    复制代码
    Borland C++ 1999
    1. 004014D0 VB> /EB 10     jmp short VBto_UNP.004014E2
    2. 004014D2     |66:623A   bound di,dword ptr ds:[edx]
    3. 004014D5     |43        inc ebx
    4. 004014D6     |2B2B      sub ebp,dword ptr ds:[ebx]
    5. 004014D8     |48        dec eax
    6. 004014D9     |4F        dec edi
    7. 004014DA     |4F        dec edi
    8. 004014DB     |4B        dec ebx
    9. 004014DC     |90        nop
    10. 004014DD    -|E9 980057>jmp 0097157A
    11. 004014E2     \A1 8B0057>mov eax,dword ptr ds:[57008B]
    12. 004014E7      C1E0 02   shl eax,2
    13. 004014EA      A3 8F0057>mov dword ptr ds:[57008F],eax
    14. 004014EF      52        push edx
    15. 004014F0      6A 00     push 0
    16. 004014F2      E8 C7D116>call <jmp.&kernel32.GetModuleHandleA>
    复制代码

    [ 本帖最后由 tianxj 于 2008-2-29 07:17 编辑 ]

    评分

    参与人数 1威望 +20 飘云币 +20 收起 理由
    蓝枫 + 20 + 20 不错,呵呵大家要学习哟!

    查看全部评分

    PYG19周年生日快乐!

    该用户从未签到

    发表于 2008-2-29 08:13:03 | 显示全部楼层
    楼主,你起来的好早哦``呵呵``谢谢给我们菜鸟提供资料,辛苦了哦``/:018
    PYG19周年生日快乐!
  • TA的每日心情
    开心
    2023-11-28 14:14
  • 签到天数: 11 天

    [LV.3]偶尔看看II

    发表于 2008-2-29 10:54:02 | 显示全部楼层
    呵呵!有了这就有了行动的指南!
    PYG19周年生日快乐!
  • TA的每日心情
    奋斗
    2017-4-21 10:43
  • 签到天数: 1 天

    [LV.1]初来乍到

    发表于 2008-2-29 12:06:40 | 显示全部楼层
    PB  是什么语言? 呵
       好象都没见过~
    PYG19周年生日快乐!
  • TA的每日心情
    郁闷
    2016-5-24 14:44
  • 签到天数: 1 天

    [LV.1]初来乍到

    发表于 2008-2-29 16:12:17 | 显示全部楼层
    PB  是Powerbuilder
    PYG19周年生日快乐!

    该用户从未签到

    发表于 2008-2-29 16:25:39 | 显示全部楼层
    更看不懂了 ,唉太菜了本人!
    PYG19周年生日快乐!

    该用户从未签到

    发表于 2008-3-5 12:38:07 | 显示全部楼层
    PYG19周年生日快乐!

    该用户从未签到

    发表于 2008-3-7 00:55:01 | 显示全部楼层
    谢谢楼主热心的代码!
    PYG19周年生日快乐!

    该用户从未签到

    发表于 2008-4-5 19:11:57 | 显示全部楼层
    收藏了!感谢!!
    PYG19周年生日快乐!

    该用户从未签到

    发表于 2008-4-10 10:33:05 | 显示全部楼层
    谢谢分享………………
    PYG19周年生日快乐!
    您需要登录后才可以回帖 登录 | 加入我们

    本版积分规则

    快速回复 返回顶部 返回列表