硬编码学习(一)

0x50~0x5f 16
0x40~0x4f 16
0x90~0x97 8
0xb0~0xbf 16

占一个字节

#include <stdio.h>
#include <stdlib.h>
void main()
{
    __asm
    {
        push eax
        __emit(0X50)
        __emit(0X51)
        __emit(0X52)
        __emit(0X53)
        __emit(0X54)
        __emit(0X55)
        __emit(0X56)
        __emit(0X57)
        __emit(0X58)
        __emit(0X59)
        __emit(0X5a)
        __emit(0X5b)
        __emit(0X5c)
        __emit(0X5d)
        __emit(0X5e)
        __emit(0X5f)
    }
}
----------

6:        __asm
7:        {
8:            push eax
0040D448   push        eax
9:            __emit(0X50)
0040D449   push        eax
10:           __emit(0X51)
0040D44A   push        ecx
11:           __emit(0X52)
0040D44B   push        edx
12:           __emit(0X53)
0040D44C   push        ebx
13:           __emit(0X54)
0040D44D   push        esp
14:           __emit(0X55)
0040D44E   push        ebp
15:           __emit(0X56)
0040D44F   push        esi
16:           __emit(0X57)
0040D450   push        edi
17:           __emit(0X58)
0040D451   pop         eax
18:           __emit(0X59)
0040D452   pop         ecx
19:           __emit(0X5a)
0040D453   pop         edx
20:           __emit(0X5b)
0040D454   pop         ebx
21:           __emit(0X5c)
0040D455   pop         esp
22:           __emit(0X5d)
0040D456   pop         ebp
23:           __emit(0X5e)
0040D457   pop         esi
24:           __emit(0X5f)
0040D458   pop         edi
25:       }

#include <stdio.h>
#include <stdlib.h>

void main()
{
    __asm
    {
        push eax
        __emit(0X40)
        __emit(0X41)
        __emit(0X42)
        __emit(0X43)
        __emit(0X44)
        __emit(0X45)
        __emit(0X46)
        __emit(0X47)
        __emit(0X48)
        __emit(0X49)
        __emit(0X4a)
        __emit(0X4b)
        __emit(0X4c)
        __emit(0X4d)
        __emit(0X4e)
        __emit(0X4f)
    }
}

----------

6:        __asm
7:        {
8:            push eax
0040D448   push        eax
9:            __emit(0X40)
0040D449   inc         eax
10:           __emit(0X41)
0040D44A   inc         ecx
11:           __emit(0X42)
0040D44B   inc         edx
12:           __emit(0X43)
0040D44C   inc         ebx
13:           __emit(0X44)
0040D44D   inc         esp
14:           __emit(0X45)
0040D44E   inc         ebp
15:           __emit(0X46)
0040D44F   inc         esi
16:           __emit(0X47)
0040D450   inc         edi
17:           __emit(0X48)
0040D451   dec         eax
18:           __emit(0X49)
0040D452   dec         ecx
19:           __emit(0X4a)
0040D453   dec         edx
20:           __emit(0X4b)
0040D454   dec         ebx
21:           __emit(0X4c)
0040D455   dec         esp
22:           __emit(0X4d)
0040D456   dec         ebp
23:           __emit(0X4e)
0040D457   dec         esi
24:           __emit(0X4f)
0040D458   dec         edi
25:       }
26:   }

__emit 0x90 nop //不起任何作用

6:        __asm
7:        {
8:
9:            __emit(0X90)
0040D448   nop          // xchg eax,eax
10:           __emit(0X91)
0040D449   xchg        eax,ecx
11:           __emit(0X92)
0040D44A   xchg        eax,edx
12:           __emit(0X93)
0040D44B   xchg        eax,ebx
13:           __emit(0X94)
0040D44C   xchg        eax,esp
14:           __emit(0X95)
0040D44D   xchg        eax,ebp
15:           __emit(0X96)
0040D44E   xchg        eax,esi
16:           __emit(0X97)
0040D44F   xchg        eax,edi
__emit(0XB0)
        __emit 0x21
        __emit(0XB1)
        __emit 0x21
        __emit(0XB2)
        __emit 0x21
        __emit(0XB3)
        __emit 0x21
        __emit(0XB4)
        __emit 0x21
        __emit(0XB5)
        __emit 0x21
        __emit(0XB6)
        __emit 0x21
        __emit(0XB7)
        __emit 0x21
        __emit(0XB8)
        __emit 0x21
        __emit(0XB9)
        __emit 0x21
        __emit(0XBa)
        __emit 0x21


6:        __asm
7:        {
8:            __emit(0XB0)
0040D448 B0 21                mov         al,21h
10:           __emit(0XB1)
0040D44A B1 21                mov         cl,21h
12:           __emit(0XB2)
0040D44C B2 21                mov         dl,21h
14:           __emit(0XB3)
0040D44E B3 21                mov         bl,21h
16:           __emit(0XB4)
0040D450 B4 21                mov         ah,21h
18:           __emit(0XB5)
0040D452 B5 21                mov         ch,21h
20:           __emit(0XB6)
0040D454 B6 21                mov         dh,21h
22:           __emit(0XB7)
0040D456 B7 21                mov         bh,21h
    __emit(0xb0)
    __emit 0x44

__emit(0xb0)
0040D448 B0 44 mov al,44h

    __emit 0xb8
        __emit 0x21
        __emit 0x22
        __emit 0x23
        __emit 0x24
        __emit 0xb9
        __emit 0x21
        __emit 0x22
        __emit 0x23
        __emit 0x24
        __emit 0xba
        __emit 0x21
        __emit 0x22
        __emit 0x23
        __emit 0x24
        __emit 0xbb
        __emit 0x21
        __emit 0x22
        __emit 0x23
        __emit 0x24
        __emit 0xbc
        __emit 0x21
        __emit 0x22
        __emit 0x23
        __emit 0x24
        __emit 0xbd
        __emit 0x21
        __emit 0x22
        __emit 0x23
        __emit 0x24
        __emit 0xbe
        __emit 0x21
        __emit 0x22
        __emit 0x23
        __emit 0x24
        __emit 0xbf
        __emit 0x21
        __emit 0x22
        __emit 0x23
        __emit 0x24

----------

              __emit 0xb8
0040D448 B8 21 22 23 24       mov         eax,24232221h
13:           __emit 0xb9
0040D44D B9 21 22 23 24       mov         ecx,24232221h
18:           __emit 0xba
0040D452 BA 21 22 23 24       mov         edx,24232221h
23:           __emit 0xbb
0040D457 BB 21 22 23 24       mov         ebx,24232221h
28:           __emit 0xbc
0040D45C BC 21 22 23 24       mov         esp,24232221h
33:           __emit 0xbd
0040D461 BD 21 22 23 24       mov         ebp,24232221h
38:           __emit 0xbe
0040D466 BE 21 22 23 24       mov         esi,24232221h
              __emit 0xbf
0040D448 BF 21 22 23 24       mov         edi,24232221h

        mov ax,0x1234
        mov cx,0x1234
        mov dx,0x1234
        mov bx,0x1234

9:            mov ax,0x1234
0040D448 66 B8 34 12          mov         ax,offset main+1Ah (0040d44a)
10:           mov cx,0x1234
0040D44C 66 B9 34 12          mov         cx,offset main+1Eh (0040d44e)
11:           mov dx,0x1234
0040D450 66 BA 34 12          mov         dx,offset main+22h (0040d452)
12:           mov bx,0x1234
0040D454 66 BB 34 12          mov         bx,offset main+26h (0040d456)
__emit 0x66
        __emit 0xbc
        __emit 0x34
        __emit 0x12

        __emit 0x66
        __emit 0xbc
        __emit 0x34
        __emit 0x12

        __emit 0x66
        __emit 0xbd
        __emit 0x34
        __emit 0x12

        __emit 0x66
        __emit 0xbb
        __emit 0x34
        __emit 0x12

        __emit 0x66
        __emit 0xb9
        __emit 0x34
        __emit 0x12

        __emit 0x66
        __emit 0xba
        __emit 0x34
        __emit 0x12

        __emit 0x66
        __emit 0xbb
        __emit 0x34
        __emit 0x12

        __emit 0x66
        __emit 0xbc
        __emit 0x34
        __emit 0x12

        __emit 0x66
        __emit 0xbd
        __emit 0x34
        __emit 0x12
9:            __emit 0x66
0040D448 66 BC 34 12          mov         sp,offset main+1Ah (0040d44a)
13:
14:           __emit 0x66
0040D44C 66 BC 34 12          mov         sp,offset main+1Eh (0040d44e)
18:
19:           __emit 0x66
0040D450 66 BD 34 12          mov         bp,offset main+22h (0040d452)
23:
24:           __emit 0x66
0040D454 66 BB 34 12          mov         bx,offset main+26h (0040d456)
28:
29:           __emit 0x66
0040D458 66 B9 34 12          mov         cx,offset main+2Ah (0040d45a)
33:
34:           __emit 0x66
0040D45C 66 BA 34 12          mov         dx,offset main+2Eh (0040d45e)
38:
39:           __emit 0x66
0040D460 66 BB 34 12          mov         bx,offset main+32h (0040d462)
43:
44:           __emit 0x66
0040D464 66 BC 34 12          mov         sp,offset main+36h (0040d466)
48:
49:           __emit 0x66
0040D468 66 BD 34 12          mov         bp,offset main+3Ah (0040d46a)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值