MFC X86常用汇编指令转十六进制机器码
X86常量宏.h
#pragma once
#define CALL 1
#define RETN 2
#define PUSHAD 3
#define POPAD 4
#define CALLEAX 5
#define CALLECX 6
#define CALLEDX 7
#define CALLEBX 8
#define CALLESP 9
#define CALLEBP 10
#define CALLESI 11
#define CALLEDI 12
#define MOVEAXEAX 13
#define MOVEAXECX 14
#define MOVEAXEDX 15
#define MOVEAXEBX 16
#define MOVEAXESP 17
#define MOVEAXEBP 18
#define MOVEAXESI 19
#define MOVEAXEDI 20
#define MOVECXEAX 21
#define MOVECXECX 22
#define MOVECXEDX 23
#define MOVECXEBX 24
#define MOVECXESP 25
#define MOVECXEBP 26
#define MOVECXESI 27
#define MOVECXEDI 28
#define MOVEDXEAX 29
#define MOVEDXECX 30
#define MOVEDXEDX 31
#define MOVEDXEBX 32
#define MOVEDXESP 33
#define MOVEDXEBP 34
#define MOVEDXESI 35
#define MOVEDXEDI 36
#define MOVEBXEAX 37
#define MOVEBXECX 38
#define MOVEBXEDX 39
#define MOVEBXEBX 40
#define MOVEBXESP 41
#define MOVEBXEBP 42
#define MOVEBXESI 43
#define MOVEBXEDI 44
#define MOVESPEAX 45
#define MOVESPECX 46
#define MOVESPEDX 47
#define MOVESPEBX 48
#define MOVESPESP 49
#define MOVESPEBP 50
#define MOVESPESI 51
#define MOVESPEDI 52
#define MOVEBPEAX 53
#define MOVEBPECX 54
#define MOVEBPEDX 55
#define MOVEBPEBX 56
#define MOVEBPESP 57
#define MOVEBPEBP 58
#define MOVEBPESI 59
#define MOVEBPEDI 60
#define MOVESIEAX 61
#define MOVESIECX 62
#define MOVESIEDX 63
#define MOVESIEBX 64
#define MOVESIESP 65
#define MOVESIEBP 66
#define MOVESIESI 67
#define MOVESIEDI 68
#define MOVEDIEAX 69
#define MOVEDIECX 70
#define MOVEDIEDX 71
#define MOVEDIEBX 72
#define MOVEDIESP 73
#define MOVEDIEBP 74
#define MOVEDIESI 75
#define MOVEDIEDI 76//1--76
//mov常数
#define MOVEAXC 77
#define MOVECXC 78
#define MOVEDXC 79
#define MOVEBXC 80
#define MOVESPC 81
#define MOVEBPC 82
#define MOVESIC 83
#define MOVEDIC 84
//mov eax,dword ptr ds:[0x79]
#define MOVEAXDWORDPTR 85
#define MOVECXDWORDPTR 86
#define MOVEDXDWORDPTR 87
#define MOVEBXDWORDPTR 88
#define MOVESPDWORDPTR 89
#define MOVEBPDWORDPTR 90
#define MOVESIDWORDPTR 91
#define MOVEDIDWORDPTR 92
//lea eax, dword ptr ds : [0x79]
#define LEAEAXDWORDPTR 93
#define LEAECXDWORDPTR 94
#define LEAEDXDWORDPTR 95
#define LEAEBXDWORDPTR 96
#define LEAESPDWORDPTR 97
#define LEAEBPDWORDPTR 98
#define LEAESIDWORDPTR 99
#define LEAEDIDWORDPTR 100
#define RETN4 101
#define PUSH 102
#define PUSH4 103
#define SUBESP 104
#define SUBESP4 105
#define ADDESP 106
#define ADDESP4 107
//mov EAX, dword ptr ds : [eax + 0x79] eax>108
#define MOVEAXDWORDPTREAX 108//参数小于等于0x79108
#define MOVEAXDWORDPTREAX_ 109//参数大于等于0x80
#define MOVEAXDWORDPTRECX 110//参数小于等于0x79
#define MOVEAXDWORDPTRECX_ 111//参数大于等于0x80
#define MOVEAXDWORDPTREDX 112//参数小于等于0x79
#define MOVEAXDWORDPTREDX_ 113//参数大于等于0x80
#define MOVEAXDWORDPTREBX 114//参数小于等于0x79
#define MOVEAXDWORDPTREBX_ 115//参数大于等于0x80
#define MOVEAXDWORDPTRESP 116//参数小于等于0x79
#define MOVEAXDWORDPTRESP_ 117//参数大于等于0x80
#define MOVEAXDWORDPTREBP 118//参数小于等于0x79
#define MOVEAXDWORDPTREBP_ 119//参数大于等于0x80
#define MOVEAXDWORDPTRESI 120//参数小于等于0x79
#define MOVEAXDWORDPTRESI_ 121//参数大于等于0x80
#define MOVEAXDWORDPTREDI 122//参数小于等于0x79
#define MOVEAXDWORDPTREDI_ 123//参数大于等于0x80
//mov ECX, dword ptr ds : [eax + 0x79]
#define MOVECXDWORDPTREAX 124//参数小于等于0x79
#define MOVECXDWORDPTREAX_ 125//参数大于等于0x80
#define MOVECXDWORDPTRECX 126//参数小于等于0x79
#define MOVECXDWORDPTRECX_ 127//参数大于等于0x80
#define MOVECXDWORDPTREDX 128//参数小于等于0x79
#define MOVECXDWORDPTREDX_ 129//参数大于等于0x80
#define MOVECXDWORDPTREBX 130//参数小于等于0x79
#define MOVECXDWORDPTREBX_ 131//参数大于等于0x80
#define MOVECXDWORDPTRESP 132//参数小于等于0x79
#define MOVECXDWORDPTRESP_ 133//参数大于等于0x80
#define MOVECXDWORDPTREBP 134//参数小于等于0x79
#define MOVECXDWORDPTREBP_ 135//参数大于等于0x80
#define MOVECXDWORDPTRESI 136//参数小于等于0x79
#define MOVECXDWORDPTRESI_ 137//参数大于等于0x80
#define MOVECXDWORDPTREDI 138//参数小于等于0x79
#define MOVECXDWORDPTREDI_ 139//参数大于等于0x80
//mov EDX, dword ptr ds : [eax + 0x79]
#define MOVEDXDWORDPTREAX 140//参数小于等于0x79
#define MOVEDXDWORDPTREAX_ 141//参数大于等于0x80
#define MOVEDXDWORDPTRECX 142//参数小于等于0x79
#define MOVEDXDWORDPTRECX_ 143//参数大于等于0x80
#define MOVEDXDWORDPTREDX 144//参数小于等于0x79
#define MOVEDXDWORDPTREDX_ 145//参数大于等于0x80
#define MOVEDXDWORDPTREBX 146//参数小于等于0x79
#define MOVEDXDWORDPTREBX_ 147//参数大于等于0x80
#define MOVEDXDWORDPTRESP 148//参数小于等于0x79
#define MOVEDXDWORDPTRESP_ 149//参数大于等于0x80
#define MOVEDXDWORDPTREBP 150//参数小于等于0x79
#define MOVEDXDWORDPTREBP_ 151//参数大于等于0x80
#define MOVEDXDWORDPTRESI 152//参数小于等于0x79
#define MOVEDXDWORDPTRESI_ 153//参数大于等于0x80
#define MOVEDXDWORDPTREDI 154//参数小于等于0x79
#define MOVEDXDWORDPTREDI_ 155//参数大于等于0x80
//mov EBX, dword ptr ds : [eax + 0x79]
#define MOVEBXDWORDPTREAX 156//参数小于等于0x79
#define MOVEBXDWORDPTREAX_ 157//参数大于等于0x80
#define MOVEBXDWORDPTRECX 158//参数小于等于0x79
#define MOVEBXDWORDPTRECX_ 159//参数大于等于0x80
#define MOVEBXDWORDPTREDX 160//参数小于等于0x79
#define MOVEBXDWORDPTREDX_ 161//参数大于等于0x80
#define MOVEBXDWORDPTREBX 162//参数小于等于0x79
#define MOVEBXDWORDPTREBX_ 163//参数大于等于0x80
#define MOVEBXDWORDPTRESP 164//参数小于等于0x79
#define MOVEBXDWORDPTRESP_ 165//参数大于等于0x80
#define MOVEBXDWORDPTREBP 166//参数小于等于0x79
#define MOVEBXDWORDPTREBP_ 167//参数大于等于0x80
#define MOVEBXDWORDPTRESI 168//参数小于等于0x79
#define MOVEBXDWORDPTRESI_ 169//参数大于等于0x80
#define MOVEBXDWORDPTREDI 170//参数小于等于0x79
#define MOVEBXDWORDPTREDI_ 171//参数大于等于0x80
//mov ESP, dword ptr ds : [eax + 0x79]
#define MOVESPDWORDPTREAX 172//参数小于等于0x79
#define MOVESPDWORDPTREAX_ 173//参数大于等于0x80
#define MOVESPDWORDPTRECX 174//参数小于等于0x79
#define MOVESPDWORDPTRECX_ 175//参数大于等于0x80
#define MOVESPDWORDPTREDX 176//参数小于等于0x79
#define MOVESPDWORDPTREDX_ 177//参数大于等于0x80
#define MOVESPDWORDPTREBX 178//参数小于等于0x79
#define MOVESPDWORDPTREBX_ 179//参数大于等于0x80
#define MOVESPDWORDPTRESP 180//参数小于等于0x79
#define MOVESPDWORDPTRESP_ 181//参数大于等于0x80
#define MOVESPDWORDPTREBP 182//参数小于等于0x79
#define MOVESPDWORDPTREBP_ 183//参数大于等于0x80
#define MOVESPDWORDPTRESI 184//参数小于等于0x79
#define MOVESPDWORDPTRESI_ 185//参数大于等于0x80
#define MOVESPDWORDPTREDI 186//参数小于等于0x79
#define MOVESPDWORDPTREDI_ 187//参数大于等于0x80
//mov EBP, dword ptr ds : [eax + 0x79]
#define MOVEBPDWORDPTREAX 188//参数小于等于0x79
#define MOVEBPDWORDPTREAX_ 189//参数大于等于0x80
#define MOVEBPDWORDPTRECX 190//参数小于等于0x79
#define MOVEBPDWORDPTRECX_ 191//参数大于等于0x80
#define MOVEBPDWORDPTREDX 192//参数小于等于0x79
#define MOVEBPDWORDPTREDX_ 193//参数大于等于0x80
#define MOVEBPDWORDPTREBX 194//参数小于等于0x79
#define MOVEBPDWORDPTREBX_ 195//参数大于等于0x80
#define MOVEBPDWORDPTRESP 196//参数小于等于0x79
#define MOVEBPDWORDPTRESP_ 197//参数大于等于0x80
#define MOVEBPDWORDPTREBP 198//参数小于等于0x79
#define MOVEBPDWORDPTREBP_ 199//参数大于等于0x80
#define MOVEBPDWORDPTRESI 200//参数小于等于0x79
#define MOVEBPDWORDPTRESI_ 201//参数大于等于0x80
#define MOVEBPDWORDPTREDI 202//参数小于等于0x79
#define MOVEBPDWORDPTREDI_ 203//参数大于等于0x80
//mov ESI, dword ptr ds : [eax + 0x79]
#define MOVESIDWORDPTREAX 204//参数小于等于0x79
#define MOVESIDWORDPTREAX_ 205//参数大于等于0x80
#define MOVESIDWORDPTRECX 206//参数小于等于0x79
#define MOVESIDWORDPTRECX_ 207//参数大于等于0x80
#define MOVESIDWORDPTREDX 208//参数小于等于0x79
#define MOVESIDWORDPTREDX_ 209//参数大于等于0x80
#define MOVESIDWORDPTREBX 210//参数小于等于0x79
#define MOVESIDWORDPTREBX_ 211//参数大于等于0x80
#define MOVESIDWORDPTRESP 212//参数小于等于0x79
#define MOVESIDWORDPTRESP_ 213//参数大于等于0x80
#define MOVESIDWORDPTREBP 214//参数小于等于0x79
#define MOVESIDWORDPTREBP_ 215//参数大于等于0x80
#define MOVESIDWORDPTRESI 216//参数小于等于0x79
#define MOVESIDWORDPTRESI_ 217//参数大于等于0x80
#define MOVESIDWORDPTREDI 218//参数小于等于0x79
#define MOVESIDWORDPTREDI_ 219//参数大于等于0x80
//mov EDI, dword ptr ds : [eax + 0x79]
#define MOVEDIDWORDPTREAX 220//参数小于等于0x79
#define MOVEDIDWORDPTREAX_ 221//参数大于等于0x80
#define MOVEDIDWORDPTRECX 222//参数小于等于0x79
#define MOVEDIDWORDPTRECX_ 223//参数大于等于0x80
#define MOVEDIDWORDPTREDX 224//参数小于等于0x79
#define MOVEDIDWORDPTREDX_ 225//参数大于等于0x80
#define MOVEDIDWORDPTREBX 226//参数小于等于0x79
#define MOVEDIDWORDPTREBX_ 227//参数大于等于0x80
#define MOVEDIDWORDPTRESP 228//参数小于等于0x79
#define MOVEDIDWORDPTRESP_ 229//参数大于等于0x80
#define MOVEDIDWORDPTREBP 230//参数小于等于0x79
#define MOVEDIDWORDPTREBP_ 231//参数大于等于0x80
#define MOVEDIDWORDPTRESI 232//参数小于等于0x79
#define MOVEDIDWORDPTRESI_ 233//参数大于等于0x80
#define MOVEDIDWORDPTREDI 234//参数小于等于0x79
#define MOVEDIDWORDPTREDI_ 235//参数大于等于0x80
//lea eax,dword ptr ds:[eax+0x79]
#define LEAEAXDWORDPTREAX2 236
#define LEAEAXDWORDPTREAX4 360
#define LEAEAXDWORDPTRECX2 361
#define LEAEAXDWORDPTRECX4 362
#define LEAEAXDWORDPTREDX2 363
#define LEAEAXDWORDPTREDX4 237
#define LEAEAXDWORDPTREBX2 238
#define LEAEAXDWORDPTREBX4 239
#define LEAEAXDWORDPTRESP2 240
#define LEAEAXDWORDPTRESP4 241
#define LEAEAXDWORDPTREBP2 242
#define LEAEAXDWORDPTREBP4 243
#define LEAEAXDWORDPTRESI2 244
#define LEAEAXDWORDPTRESI4 245
#define LEAEAXDWORDPTREDI2 246
#define LEAEAXDWORDPTREDI4 247
//lea ECX,dword ptr ds:[eax+0x79]
#define LEAECXDWORDPTREAX2 248
#define LEAECXDWORDPTREAX4 249
#define LEAECXDWORDPTRECX2 250
#define LEAECXDWORDPTRECX4 251
#define LEAECXDWORDPTREDX2 252
#define LEAECXDWORDPTREDX4 253
#define LEAECXDWORDPTREBX2 254
#define LEAECXDWORDPTREBX4 255
#define LEAECXDWORDPTRESP2 256
#define LEAECXDWORDPTRESP4 257
#define LEAECXDWORDPTREBP2 258
#define LEAECXDWORDPTREBP4 259
#define LEAECXDWORDPTRESI2 260
#define LEAECXDWORDPTRESI4 261
#define LEAECXDWORDPTREDI2 262
#define LEAECXDWORDPTREDI4 263
//lea EDX,dword ptr ds:[eax+0x79]
#define LEAEDXDWORDPTREAX2 264
#define LEAEDXDWORDPTREAX4 265
#define LEAEDXDWORDPTRECX2 266
#define LEAEDXDWORDPTRECX4 267
#define LEAEDXDWORDPTREDX2 268
#define LEAEDXDWORDPTREDX4 269
#define LEAEDXDWORDPTREBX2 270
#define LEAEDXDWORDPTREBX4 271
#define LEAEDXDWORDPTRESP2 272
#define LEAEDXDWORDPTRESP4 273
#define LEAEDXDWORDPTREBP2 274
#define LEAEDXDWORDPTREBP4 275
#define LEAEDXDWORDPTRESI2 276
#define LEAEDXDWORDPTRESI4 277
#define LEAEDXDWORDPTREDI2 278
#define LEAEDXDWORDPTREDI4 279
//lea EBX,dword ptr ds:[eax+0x79]
#define LEAEBXDWORDPTREAX2 280
#define LEAEBXDWORDPTREAX4 281
#define LEAEBXDWORDPTRECX2 282
#define LEAEBXDWORDPTRECX4 283
#define LEAEBXDWORDPTREDX2 284
#define LEAEBXDWORDPTREDX4 285
#define LEAEBXDWORDPTREBX2 286
#define LEAEBXDWORDPTREBX4 287
#define LEAEBXDWORDPTRESP2 288
#define LEAEBXDWORDPTRESP4 289
#define LEAEBXDWORDPTREBP2 290
#define LEAEBXDWORDPTREBP4 291
#define LEAEBXDWORDPTRESI2 292
#define LEAEBXDWORDPTRESI4 293
#define LEAEBXDWORDPTREDI2 294
#define LEAEBXDWORDPTREDI4 295
//lea ESP,dword ptr ds:[eax+0x79]
#define LEAESPDWORDPTREAX2 296
#define LEAESPDWORDPTREAX4 297
#define LEAESPDWORDPTRECX2 298
#define LEAESPDWORDPTRECX4 299
#define LEAESPDWORDPTREDX2 300
#define LEAESPDWORDPTREDX4 301
#define LEAESPDWORDPTREBX2 302
#define LEAESPDWORDPTREBX4 303
#define LEAESPDWORDPTRESP2 304
#define LEAESPDWORDPTRESP4 305
#define LEAESPDWORDPTREBP2 306
#define LEAESPDWORDPTREBP4 307
#define LEAESPDWORDPTRESI2 308
#define LEAESPDWORDPTRESI4 309
#define LEAESPDWORDPTREDI2 310
#define LEAESPDWORDPTREDI4 311
//lea EBP,dword ptr ds:[eax+0x79]
#define LEAEBPDWORDPTREAX2 312
#define LEAEBPDWORDPTREAX4 313
#define LEAEBPDWORDPTRECX2 314
#define LEAEBPDWORDPTRECX4 315
#define LEAEBPDWORDPTREDX2 316
#define LEAEBPDWORDPTREDX4 317
#define LEAEBPDWORDPTREBX2 318
#define LEAEBPDWORDPTREBX4 319
#define LEAEBPDWORDPTRESP2 320
#define LEAEBPDWORDPTRESP4 321
#define LEAEBPDWORDPTREBP2 322
#define LEAEBPDWORDPTREBP4 323
#define LEAEBPDWORDPTRESI2 324
#define LEAEBPDWORDPTRESI4 325
#define LEAEBPDWORDPTREDI2 326
#define LEAEBPDWORDPTREDI4 327
//lea ESI,dword ptr ds:[eax+0x79]
#define LEAESIDWORDPTREAX2 328
#define LEAESIDWORDPTREAX4 329
#define LEAESIDWORDPTRECX2 330
#define LEAESIDWORDPTRECX4 331
#define LEAESIDWORDPTREDX2 332
#define LEAESIDWORDPTREDX4 333
#define LEAESIDWORDPTREBX2 334
#define LEAESIDWORDPTREBX4 335
#define LEAESIDWORDPTRESP2 336
#define LEAESIDWORDPTRESP4 337
#define LEAESIDWORDPTREBP2 338
#define LEAESIDWORDPTREBP4 339
#define LEAESIDWORDPTRESI2 340
#define LEAESIDWORDPTRESI4 341
#define LEAESIDWORDPTREDI2 342
#define LEAESIDWORDPTREDI4 343
//lea EDI,dword ptr ds:[eax+0x79]
#define LEAEDIDWORDPTREAX2 344
#define LEAEDIDWORDPTREAX4 345
#define LEAEDIDWORDPTRECX2 346
#define LEAEDIDWORDPTRECX4 347
#define LEAEDIDWORDPTREDX2 348
#define LEAEDIDWORDPTREDX4 349
#define LEAEDIDWORDPTREBX2 350
#define LEAEDIDWORDPTREBX4 351
#define LEAEDIDWORDPTRESP2 352
#define LEAEDIDWORDPTRESP4 353
#define LEAEDIDWORDPTREBP2 354
#define LEAEDIDWORDPTREBP4 355
#define LEAEDIDWORDPTRESI2 356
#define LEAEDIDWORDPTRESI4 357
#define LEAEDIDWORDPTREDI2 358
#define LEAEDIDWORDPTREDI4 359
struct ASMchar32
{
CString chCALL;
QWORD CALLsize = 0;
};
struct ASMbyte32
{
const CString CCALL = "E8";
const CString CRETN = "C3";
const CString CRETN4 = "C2";
const CString CPUSH = "6A";//参数小于等于0x79
const CString CPUSH4 = "68";//参数大于等于0x80
const CString CPUSHAD = "60";
const CString CPOPAD = "61";
const CString CSUBESP = "83EC";//参数小于等于0x79
const CString CSUBESP4 = "81EC";//参数大于等于0x80
const CString CADDESP = "83C4";//参数小于等于0x79
const CString CADDESP4 = "81C4";//参数大于等于0x80
const CString CALL_EAX = "FFD0";
const CString CALL_ECX = "FFD1";
const CString CALL_EDX = "FFD2";
const CString CALL_EBX = "FFD3";
const CString CALL_ESP = "FFD4";
const CString CALL_EBP = "FFD5";
const CString CALL_ESI = "FFD6";
const CString CALL_EDI = "FFD7";
//MOV EAX,EAX MOV ECX,EAX
const CString MOV_EAX_EAX = "8BC0";
const CString MOV_EAX_ECX = "8BC1";
const CString MOV_EAX_EDX = "8BC2";
const CString MOV_EAX_EBX = "8BC3";
const CString MOV_EAX_ESP = "8BC4";
const CString MOV_EAX_EBP = "8BC5";
const CString MOV_EAX_ESI = "8BC6";
const CString MOV_EAX_EDI = "8BC7";
const CString MOV_ECX_EAX = "8BC8";
const CString MOV_ECX_ECX = "8BC9";
const CString MOV_ECX_EDX = "8BCA";
const CString MOV_ECX_EBX = "8BCB";
const CString MOV_ECX_ESP = "8BCC";
const CString MOV_ECX_EBP = "8BCD";
const CString MOV_ECX_ESI = "8BCE";
const CString MOV_ECX_EDI = "8BCF";
//MOV EDX,EAX MOV EX,EBX
const CString MOV_EDX_EAX = "8BD0";
const CString MOV_EDX_ECX = "8BD1";
const CString MOV_EDX_EDX = "8BD2";
const CString MOV_EDX_EBX = "8BD3";
const CString MOV_EDX_ESP = "8BD4";
const CString MOV_EDX_EBP = "8BD5";
const CString MOV_EDX_ESI = "8BD6";
const CString MOV_EDX_EDI = "8BD7";
const CString MOV_EBX_EAX = "8BD8";
const CString MOV_EBX_ECX = "8BD9";
const CString MOV_EBX_EDX = "8BDA";
const CString MOV_EBX_EBX = "8BDB";
const CString MOV_EBX_ESP = "8BDC";
const CString MOV_EBX_EBP = "8BDD";
const CString MOV_EBX_ESI = "8BDE";
const CString MOV_EBX_EDI = "8BDF";
//MOV ESP,EAX MOV EX,EBX
const CString MOV_ESP_EAX = "8BE0";
const CString MOV_ESP_ECX = "8BE1";
const CString MOV_ESP_EDX = "8BE2";
const CString MOV_ESP_EBX = "8BE3";
const CString MOV_ESP_ESP = "8BE4";
const CString MOV_ESP_EBP = "8BE5";
const CString MOV_ESP_ESI = "8BE6";
const CString MOV_ESP_EDI = "8BE7";
const CString MOV_EBP_EAX = "8BE8";
const CString MOV_EBP_ECX = "8BE9";
const CString MOV_EBP_EDX = "8BEA";
const CString MOV_EBP_EBX = "8BEB";
const CString MOV_EBP_ESP = "8BEC";
const CString MOV_EBP_EBP = "8BED";
const CString MOV_EBP_ESI = "8BEE";
const CString MOV_EBP_EDI = "8BEF";
//MOV ESI,EAX MOV EX,EBX
const CString MOV_ESI_EAX = "8BF0";
const CString MOV_ESI_ECX = "8BF1";
const CString MOV_ESI_EDX = "8BF2";
const CString MOV_ESI_EBX = "8BF3";
const CString MOV_ESI_ESP = "8BF4";
const CString MOV_ESI_EBP = "8BF5";
const CString MOV_ESI_ESI = "8BF6";
const CString MOV_ESI_EDI = "8BF7";
const CString MOV_EDI_EAX = "8BF8";
const CString MOV_EDI_ECX = "8BF9";
const CString MOV_EDI_EDX = "8BFA";
const CString MOV_EDI_EBX = "8BFB";
const CString MOV_EDI_ESP = "8BFC";
const CString MOV_EDI_EBP = "8BFD";
const CString MOV_EDI_ESI = "8BFE";
const CString MOV_EDI_EDI = "8BFF";
//mov常数
const CString MOV_EAX_C = "B8";
const CString MOV_ECX_C = "B9";
const CString MOV_EDX_C = "BA";
const CString MOV_EBX_C = "BB";
const CString MOV_ESP_C = "BC";
const CString MOV_EBP_C = "BD";
const CString MOV_ESI_C = "BE";
const CString MOV_EDI_C = "BF";
//mov eax,dword ptr ds:[0x79]
const CString MOV_EAX_DWORDPTR = "A1";
const CString MOV_ECX_DWORDPTR = "8B0D";
const CString MOV_EDX_DWORDPTR = "8B15";
const CString MOV_EBX_DWORDPTR = "8B1D";
const CString MOV_ESP_DWORDPTR = "8B25";
const CString MOV_EBP_DWORDPTR = "8B2D";
const CString MOV_ESI_DWORDPTR = "8B35";
const CString MOV_EDI_DWORDPTR = "8B3D";
//mov eax, dword ptr ds : [eax + 0x79]
const CString MOV_EAX_DWORDPTR_EAX_2 = "8B40";//参数小于等于0x79
const CString MOV_EAX_DWORDPTR_EAX_4 = "8B80";//参数大于等于0x80
const CString MOV_EAX_DWORDPTR_ECX_2 = "8B41";//参数小于等于0x79
const CString MOV_EAX_DWORDPTR_ECX_4 = "8B81";//参数大于等于0x80
const CString MOV_EAX_DWORDPTR_EDX_2 = "8B42";//参数小于等于0x79
const CString MOV_EAX_DWORDPTR_EDX_4 = "8B82";//参数大于等于0x80
const CString MOV_EAX_DWORDPTR_EBX_2 = "8B43";//参数小于等于0x79
const CString MOV_EAX_DWORDPTR_EBX_4 = "8B83";//参数大于等于0x80
const CString MOV_EAX_DWORDPTR_ESP_2 = "3E8B4424";//参数小于等于0x79
const CString MOV_EAX_DWORDPTR_ESP_4 = "3E8B8424";//参数大于等于0x80
const CString MOV_EAX_DWORDPTR_EBP_2 = "3E8B45";//参数小于等于0x79
const CString MOV_EAX_DWORDPTR_EBP_4 = "8B85";//参数大于等于0x80
const CString MOV_EAX_DWORDPTR_ESI_2 = "8B46";//参数小于等于0x79
const CString MOV_EAX_DWORDPTR_ESI_4 = "8B86";//参数大于等于0x80
const CString MOV_EAX_DWORDPTR_EDI_2 = "8B47";//参数小于等于0x79
const CString MOV_EAX_DWORDPTR_EDI_4 = "8B87";//参数大于等于0x80
//mov ecx, dword ptr ds : [eax + 0x79]
const CString MOV_ECX_DWORDPTR_EAX_2 = "8B48";//参数小于等于0x79
const CString MOV_ECX_DWORDPTR_EAX_4 = "8B88";//参数大于等于0x80
const CString MOV_ECX_DWORDPTR_ECX_2 = "8B49";//参数小于等于0x79
const CString MOV_ECX_DWORDPTR_ECX_4 = "8B89";//参数大于等于0x80
const CString MOV_ECX_DWORDPTR_EDX_2 = "8B4A";//参数小于等于0x79
const CString MOV_ECX_DWORDPTR_EDX_4 = "8B8A";//参数大于等于0x80
const CString MOV_ECX_DWORDPTR_EBX_2 = "8B4B";//参数小于等于0x79
const CString MOV_ECX_DWORDPTR_EBX_4 = "8B8B";//参数大于等于0x80
const CString MOV_ECX_DWORDPTR_ESP_2 = "3E8B4C24";//参数小于等于0x79
const CString MOV_ECX_DWORDPTR_ESP_4 = "3E8B8C24";//参数大于等于0x80
const CString MOV_ECX_DWORDPTR_EBP_2 = "3E8B4D";//参数小于等于0x79
const CString MOV_ECX_DWORDPTR_EBP_4 = "8B8D";//参数大于等于0x80
const CString MOV_ECX_DWORDPTR_ESI_2 = "8B4E";//参数小于等于0x79
const CString MOV_ECX_DWORDPTR_ESI_4 = "8B8E";//参数大于等于0x80
const CString MOV_ECX_DWORDPTR_EDI_2 = "8B4F";//参数小于等于0x79
const CString MOV_ECX_DWORDPTR_EDI_4 = "8B8F";//参数大于等于0x80
//mov ECX, dword ptr ds : [eax + 0x79]
const CString MOV_EDX_DWORDPTR_EAX_2 = "8B50";//参数小于等于0x79
const CString MOV_EDX_DWORDPTR_EAX_4 = "8B90";//参数大于等于0x80
const CString MOV_EDX_DWORDPTR_ECX_2 = "8B51";//参数小于等于0x79
const CString MOV_EDX_DWORDPTR_ECX_4 = "8B91";//参数大于等于0x80
const CString MOV_EDX_DWORDPTR_EDX_2 = "8B52";//参数小于等于0x79
const CString MOV_EDX_DWORDPTR_EDX_4 = "8B92";//参数大于等于0x80
const CString MOV_EDX_DWORDPTR_EBX_2 = "8B53";//参数小于等于0x79
const CString MOV_EDX_DWORDPTR_EBX_4 = "8B93";//参数大于等于0x80
const CString MOV_EDX_DWORDPTR_ESP_2 = "3E8B5424";//参数小于等于0x79
const CString MOV_EDX_DWORDPTR_ESP_4 = "8B9424";//参数大于等于0x80
const CString MOV_EDX_DWORDPTR_EBP_2 = "3E8B55";//参数小于等于0x79
const CString MOV_EDX_DWORDPTR_EBP_4 = "8B95";//参数大于等于0x80
const CString MOV_EDX_DWORDPTR_ESI_2 = "8B56";//参数小于等于0x79
const CString MOV_EDX_DWORDPTR_ESI_4 = "8B96";//参数大于等于0x80
const CString MOV_EDX_DWORDPTR_EDI_2 = "8B57";//参数小于等于0x79
const CString MOV_EDX_DWORDPTR_EDI_4 = "8B97";//参数大于等于0x80
//mov EBX, dword ptr ds : [eax + 0x79]
const CString MOV_EBX_DWORDPTR_EAX_2 = "8B58";//参数小于等于0x79
const CString MOV_EBX_DWORDPTR_EAX_4 = "8B98";//参数大于等于0x80
const CString MOV_EBX_DWORDPTR_ECX_2 = "8B59";//参数小于等于0x79
const CString MOV_EBX_DWORDPTR_ECX_4 = "8B99";//参数大于等于0x80
const CString MOV_EBX_DWORDPTR_EDX_2 = "8B5A";//参数小于等于0x79
const CString MOV_EBX_DWORDPTR_EDX_4 = "8B9A";//参数大于等于0x80
const CString MOV_EBX_DWORDPTR_EBX_2 = "8B5B";//参数小于等于0x79
const CString MOV_EBX_DWORDPTR_EBX_4 = "8B9B";//参数大于等于0x80
const CString MOV_EBX_DWORDPTR_ESP_2 = "3E8B5C24";//参数小于等于0x79
const CString MOV_EBX_DWORDPTR_ESP_4 = "8B9C24";//参数大于等于0x80
const CString MOV_EBX_DWORDPTR_EBP_2 = "3E8B5D";//参数小于等于0x79
const CString MOV_EBX_DWORDPTR_EBP_4 = "8B9D";//参数大于等于0x80
const CString MOV_EBX_DWORDPTR_ESI_2 = "8B5E";//参数小于等于0x79
const CString MOV_EBX_DWORDPTR_ESI_4 = "8B9E";//参数大于等于0x80
const CString MOV_EBX_DWORDPTR_EDI_2 = "8B5F";//参数小于等于0x79
const CString MOV_EBX_DWORDPTR_EDI_4 = "8B9F";//参数大于等于0x80
//mov ESP, dword ptr ds : [eax + 0x79]
const CString MOV_ESP_DWORDPTR_EAX_2 = "8B60";//参数小于等于0x79
const CString MOV_ESP_DWORDPTR_EAX_4 = "8BA0";//参数大于等于0x80
const CString MOV_ESP_DWORDPTR_ECX_2 = "8B61";//参数小于等于0x79
const CString MOV_ESP_DWORDPTR_ECX_4 = "8BA1";//参数大于等于0x80
const CString MOV_ESP_DWORDPTR_EDX_2 = "8B62";//参数小于等于0x79
const CString MOV_ESP_DWORDPTR_EDX_4 = "8BA2";//参数大于等于0x80
const CString MOV_ESP_DWORDPTR_EBX_2 = "8B63";//参数小于等于0x79
const CString MOV_ESP_DWORDPTR_EBX_4 = "8BA3";//参数大于等于0x80
const CString MOV_ESP_DWORDPTR_ESP_2 = "3E8B6424";//参数小于等于0x79
const CString MOV_ESP_DWORDPTR_ESP_4 = "8BA424";//参数大于等于0x80
const CString MOV_ESP_DWORDPTR_EBP_2 = "3E8B65";//参数小于等于0x79
const CString MOV_ESP_DWORDPTR_EBP_4 = "8BA5";//参数大于等于0x80
const CString MOV_ESP_DWORDPTR_ESI_2 = "8B66";//参数小于等于0x79
const CString MOV_ESP_DWORDPTR_ESI_4 = "8BA6";//参数大于等于0x80
const CString MOV_ESP_DWORDPTR_EDI_2 = "8B67";//参数小于等于0x79
const CString MOV_ESP_DWORDPTR_EDI_4 = "8BA7";//参数大于等于0x80
//mov EBP, dword ptr ds : [eax + 0x79]
const CString MOV_EBP_DWORDPTR_EAX_2 = "8B68";//参数小于等于0x79
const CString MOV_EBP_DWORDPTR_EAX_4 = "8BA8";//参数大于等于0x80
const CString MOV_EBP_DWORDPTR_ECX_2 = "8B69";//参数小于等于0x79
const CString MOV_EBP_DWORDPTR_ECX_4 = "8BA9";//参数大于等于0x80
const CString MOV_EBP_DWORDPTR_EDX_2 = "8B6A";//参数小于等于0x79
const CString MOV_EBP_DWORDPTR_EDX_4 = "8BAA";//参数大于等于0x80
const CString MOV_EBP_DWORDPTR_EBX_2 = "8B6B";//参数小于等于0x79
const CString MOV_EBP_DWORDPTR_EBX_4 = "8BAB";//参数大于等于0x80
const CString MOV_EBP_DWORDPTR_ESP_2 = "3E8B6C24";//参数小于等于0x79
const CString MOV_EBP_DWORDPTR_ESP_4 = "8BAC24";//参数大于等于0x80
const CString MOV_EBP_DWORDPTR_EBP_2 = "3E8B6D";//参数小于等于0x79
const CString MOV_EBP_DWORDPTR_EBP_4 = "8BAD";//参数大于等于0x80
const CString MOV_EBP_DWORDPTR_ESI_2 = "8B6E";//参数小于等于0x79
const CString MOV_EBP_DWORDPTR_ESI_4 = "8BAE";//参数大于等于0x80
const CString MOV_EBP_DWORDPTR_EDI_2 = "8B6F";//参数小于等于0x79
const CString MOV_EBP_DWORDPTR_EDI_4 = "8BAF";//参数大于等于0x80
//mov ESI, dword ptr ds : [eax + 0x79]
const CString MOV_ESI_DWORDPTR_EAX_2 = "8B70";//参数小于等于0x79
const CString MOV_ESI_DWORDPTR_EAX_4 = "8BB0";//参数大于等于0x80
const CString MOV_ESI_DWORDPTR_ECX_2 = "8B71";//参数小于等于0x79
const CString MOV_ESI_DWORDPTR_ECX_4 = "8BB1";//参数大于等于0x80
const CString MOV_ESI_DWORDPTR_EDX_2 = "8B72";//参数小于等于0x79
const CString MOV_ESI_DWORDPTR_EDX_4 = "8BB2";//参数大于等于0x80
const CString MOV_ESI_DWORDPTR_EBX_2 = "8B73";//参数小于等于0x79
const CString MOV_ESI_DWORDPTR_EBX_4 = "8BB3";//参数大于等于0x80
const CString MOV_ESI_DWORDPTR_ESP_2 = "3E8B7424";//参数小于等于0x79
const CString MOV_ESI_DWORDPTR_ESP_4 = "8BB424";//参数大于等于0x80
const CString MOV_ESI_DWORDPTR_EBP_2 = "3E8B75";//参数小于等于0x79
const CString MOV_ESI_DWORDPTR_EBP_4 = "8BB5";//参数大于等于0x80
const CString MOV_ESI_DWORDPTR_ESI_2 = "8B76";//参数小于等于0x79
const CString MOV_ESI_DWORDPTR_ESI_4 = "8BB6";//参数大于等于0x80
const CString MOV_ESI_DWORDPTR_EDI_2 = "8B77";//参数小于等于0x79
const CString MOV_ESI_DWORDPTR_EDI_4 = "8BB7";//参数大于等于0x80
//mov EDI, dword ptr ds : [eax + 0x79]
const CString MOV_EDI_DWORDPTR_EAX_2 = "8B78";//参数小于等于0x79
const CString MOV_EDI_DWORDPTR_EAX_4 = "8BB8";//参数大于等于0x80
const CString MOV_EDI_DWORDPTR_ECX_2 = "8B79";//参数小于等于0x79
const CString MOV_EDI_DWORDPTR_ECX_4 = "8BB9";//参数大于等于0x80
const CString MOV_EDI_DWORDPTR_EDX_2 = "8B7A";//参数小于等于0x79
const CString MOV_EDI_DWORDPTR_EDX_4 = "8BBA";//参数大于等于0x80
const CString MOV_EDI_DWORDPTR_EBX_2 = "8B7B";//参数小于等于0x79
const CString MOV_EDI_DWORDPTR_EBX_4 = "8BBB";//参数大于等于0x80
const CString MOV_EDI_DWORDPTR_ESP_2 = "3E8B7C24";//参数小于等于0x79
const CString MOV_EDI_DWORDPTR_ESP_4 = "8BBC24";//参数大于等于0x80
const CString MOV_EDI_DWORDPTR_EBP_2 = "3E8B7D";//参数小于等于0x79
const CString MOV_EDI_DWORDPTR_EBP_4 = "8BBD";//参数大于等于0x80
const CString MOV_EDI_DWORDPTR_ESI_2 = "8B7E";//参数小于等于0x79
const CString MOV_EDI_DWORDPTR_ESI_4 = "8BBE";//参数大于等于0x80
const CString MOV_EDI_DWORDPTR_EDI_2 = "8B7F";//参数小于等于0x79
const CString MOV_EDI_DWORDPTR_EDI_4 = "8BBF";//参数大于等于0x80
//lea eax, dword ptr ds : [0x79]
const CString LEA_EAX_DWORDPTR_C = "8D05";
const CString LEA_ECX_DWORDPTR_C = "8D0D";
const CString LEA_EDX_DWORDPTR_C = "8D15";
const CString LEA_EBX_DWORDPTR_C = "8D1D";
const CString LEA_ESP_DWORDPTR_C = "8D25";
const CString LEA_EBP_DWORDPTR_C = "8D2D";
const CString LEA_ESI_DWORDPTR_C = "8D35";
const CString LEA_EDI_DWORDPTR_C = "8D3D";
//lea eax,dword ptr ds:[eax+0x79]
const CString LEA_EAX_DWORDPTR_EAX_2 = "8D40";//参数小于等于0x79
const CString LEA_EAX_DWORDPTR_EAX_4 = "8D80";//参数大于等于0x80
const CString LEA_EAX_DWORDPTR_ECX_2 = "8D41";//参数小于等于0x79
const CString LEA_EAX_DWORDPTR_ECX_4 = "8D81";//参数大于等于0x80
const CString LEA_EAX_DWORDPTR_EDX_2 = "8D42";//参数小于等于0x79
const CString LEA_EAX_DWORDPTR_EDX_4 = "8D82";//参数大于等于0x80
const CString LEA_EAX_DWORDPTR_EBX_2 = "8D43";//参数小于等于0x79
const CString LEA_EAX_DWORDPTR_EBX_4 = "8D83";//参数大于等于0x80
const CString LEA_EAX_DWORDPTR_ESP_2 = "3E8D4424";//参数小于等于0x79
const CString LEA_EAX_DWORDPTR_ESP_4 = "3E8D8424";//参数大于等于0x80
const CString LEA_EAX_DWORDPTR_EBP_2 = "3E8D45";//参数小于等于0x79
const CString LEA_EAX_DWORDPTR_EBP_4 = "8D85";//参数大于等于0x80
const CString LEA_EAX_DWORDPTR_ESI_2 = "8D46";//参数小于等于0x79
const CString LEA_EAX_DWORDPTR_ESI_4 = "8D86";//参数大于等于0x80
const CString LEA_EAX_DWORDPTR_EDI_2 = "8D47";//参数小于等于0x79
const CString LEA_EAX_DWORDPTR_EDI_4 = "8D87";//参数大于等于0x80
//lea ECX,dword ptr ds:[eax+0x79]
const CString LEA_ECX_DWORDPTR_EAX_2 = "8D48";//参数小于等于0x79
const CString LEA_ECX_DWORDPTR_EAX_4 = "8D88";//参数大于等于0x80
const CString LEA_ECX_DWORDPTR_ECX_2 = "8D49";//参数小于等于0x79
const CString LEA_ECX_DWORDPTR_ECX_4 = "8D89";//参数大于等于0x80
const CString LEA_ECX_DWORDPTR_EDX_2 = "8D4A";//参数小于等于0x79
const CString LEA_ECX_DWORDPTR_EDX_4 = "8D8A";//参数大于等于0x80
const CString LEA_ECX_DWORDPTR_EBX_2 = "8D4B";//参数小于等于0x79
const CString LEA_ECX_DWORDPTR_EBX_4 = "8D8B";//参数大于等于0x80
const CString LEA_ECX_DWORDPTR_ESP_2 = "3E8D4C24";//参数小于等于0x79
const CString LEA_ECX_DWORDPTR_ESP_4 = "3E8D8C24";//参数大于等于0x80
const CString LEA_ECX_DWORDPTR_EBP_2 = "3E8D4D";//参数小于等于0x79
const CString LEA_ECX_DWORDPTR_EBP_4 = "8D8D";//参数大于等于0x80
const CString LEA_ECX_DWORDPTR_ESI_2 = "8D4E";//参数小于等于0x79
const CString LEA_ECX_DWORDPTR_ESI_4 = "8D8E";//参数大于等于0x80
const CString LEA_ECX_DWORDPTR_EDI_2 = "8D4F";//参数小于等于0x79
const CString LEA_ECX_DWORDPTR_EDI_4 = "8D8F";//参数大于等于0x80
//lea EDX,dword ptr ds:[eax+0x79]
const CString LEA_EDX_DWORDPTR_EAX_2 = "8D50";//参数小于等于0x79
const CString LEA_EDX_DWORDPTR_EAX_4 = "8D90";//参数大于等于0x80
const CString LEA_EDX_DWORDPTR_ECX_2 = "8D51";//参数小于等于0x79
const CString LEA_EDX_DWORDPTR_ECX_4 = "8D91";//参数大于等于0x80
const CString LEA_EDX_DWORDPTR_EDX_2 = "8D52";//参数小于等于0x79
const CString LEA_EDX_DWORDPTR_EDX_4 = "8D92";//参数大于等于0x80
const CString LEA_EDX_DWORDPTR_EBX_2 = "8D53";//参数小于等于0x79
const CString LEA_EDX_DWORDPTR_EBX_4 = "8D93";//参数大于等于0x80
const CString LEA_EDX_DWORDPTR_ESP_2 = "3E8D5424";//参数小于等于0x79
const CString LEA_EDX_DWORDPTR_ESP_4 = "3E8D9424";//参数大于等于0x80
const CString LEA_EDX_DWORDPTR_EBP_2 = "3E8D55";//参数小于等于0x79
const CString LEA_EDX_DWORDPTR_EBP_4 = "8D95";//参数大于等于0x80
const CString LEA_EDX_DWORDPTR_ESI_2 = "8D56";//参数小于等于0x79
const CString LEA_EDX_DWORDPTR_ESI_4 = "8D96";//参数大于等于0x80
const CString LEA_EDX_DWORDPTR_EDI_2 = "8D57";//参数小于等于0x79
const CString LEA_EDX_DWORDPTR_EDI_4 = "8D97";//参数大于等于0x80
//lea EBX,dword ptr ds:[eax+0x79]
const CString LEA_EBX_DWORDPTR_EAX_2 = "8D58";//参数小于等于0x79
const CString LEA_EBX_DWORDPTR_EAX_4 = "8D98";//参数大于等于0x80
const CString LEA_EBX_DWORDPTR_ECX_2 = "8D59";//参数小于等于0x79
const CString LEA_EBX_DWORDPTR_ECX_4 = "8D99";//参数大于等于0x80
const CString LEA_EBX_DWORDPTR_EDX_2 = "8D5A";//参数小于等于0x79
const CString LEA_EBX_DWORDPTR_EDX_4 = "8D9A";//参数大于等于0x80
const CString LEA_EBX_DWORDPTR_EBX_2 = "8D5B";//参数小于等于0x79
const CString LEA_EBX_DWORDPTR_EBX_4 = "8D9B";//参数大于等于0x80
const CString LEA_EBX_DWORDPTR_ESP_2 = "3E8D5C24";//参数小于等于0x79
const CString LEA_EBX_DWORDPTR_ESP_4 = "8D9C24";//参数大于等于0x80
const CString LEA_EBX_DWORDPTR_EBP_2 = "3E8D5D";//参数小于等于0x79
const CString LEA_EBX_DWORDPTR_EBP_4 = "8D9D";//参数大于等于0x80
const CString LEA_EBX_DWORDPTR_ESI_2 = "8D5E";//参数小于等于0x79
const CString LEA_EBX_DWORDPTR_ESI_4 = "8D9E";//参数大于等于0x80
const CString LEA_EBX_DWORDPTR_EDI_2 = "8D5F";//参数小于等于0x79
const CString LEA_EBX_DWORDPTR_EDI_4 = "8D9F";//参数大于等于0x80
//lea ESP,dword ptr ds:[eax+0x79]
const CString LEA_ESP_DWORDPTR_EAX_2 = "8D60";//参数小于等于0x79
const CString LEA_ESP_DWORDPTR_EAX_4 = "8DA0";//参数大于等于0x80
const CString LEA_ESP_DWORDPTR_ECX_2 = "8D61";//参数小于等于0x79
const CString LEA_ESP_DWORDPTR_ECX_4 = "8DA1";//参数大于等于0x80
const CString LEA_ESP_DWORDPTR_EDX_2 = "8D62";//参数小于等于0x79
const CString LEA_ESP_DWORDPTR_EDX_4 = "8DA2";//参数大于等于0x80
const CString LEA_ESP_DWORDPTR_EBX_2 = "8D63";//参数小于等于0x79
const CString LEA_ESP_DWORDPTR_EBX_4 = "8DA3";//参数大于等于0x80
const CString LEA_ESP_DWORDPTR_ESP_2 = "3E8D6424";//参数小于等于0x79
const CString LEA_ESP_DWORDPTR_ESP_4 = "8DA424";//参数大于等于0x80
const CString LEA_ESP_DWORDPTR_EBP_2 = "3E8D65";//参数小于等于0x79
const CString LEA_ESP_DWORDPTR_EBP_4 = "8DA5";//参数大于等于0x80
const CString LEA_ESP_DWORDPTR_ESI_2 = "8D66";//参数小于等于0x79
const CString LEA_ESP_DWORDPTR_ESI_4 = "8DA6";//参数大于等于0x80
const CString LEA_ESP_DWORDPTR_EDI_2 = "8D67";//参数小于等于0x79
const CString LEA_ESP_DWORDPTR_EDI_4 = "8DA7";//参数大于等于0x80
//lea EBP,dword ptr ds:[eax+0x79]
const CString LEA_EBP_DWORDPTR_EAX_2 = "8D68";//参数小于等于0x79
const CString LEA_EBP_DWORDPTR_EAX_4 = "8DA8";//参数大于等于0x80
const CString LEA_EBP_DWORDPTR_ECX_2 = "8D69";//参数小于等于0x79
const CString LEA_EBP_DWORDPTR_ECX_4 = "8DA9";//参数大于等于0x80
const CString LEA_EBP_DWORDPTR_EDX_2 = "8D6A";//参数小于等于0x79
const CString LEA_EBP_DWORDPTR_EDX_4 = "8DAA";//参数大于等于0x80
const CString LEA_EBP_DWORDPTR_EBX_2 = "8D6B";//参数小于等于0x79
const CString LEA_EBP_DWORDPTR_EBX_4 = "8DAB";//参数大于等于0x80
const CString LEA_EBP_DWORDPTR_ESP_2 = "3E8D6C24";//参数小于等于0x79
const CString LEA_EBP_DWORDPTR_ESP_4 = "8DAC24";//参数大于等于0x80
const CString LEA_EBP_DWORDPTR_EBP_2 = "3E8D6D";//参数小于等于0x79
const CString LEA_EBP_DWORDPTR_EBP_4 = "8DAD";//参数大于等于0x80
const CString LEA_EBP_DWORDPTR_ESI_2 = "8D6E";//参数小于等于0x79
const CString LEA_EBP_DWORDPTR_ESI_4 = "8DAE";//参数大于等于0x80
const CString LEA_EBP_DWORDPTR_EDI_2 = "8D6F";//参数小于等于0x79
const CString LEA_EBP_DWORDPTR_EDI_4 = "8DAF";//参数大于等于0x80
//lea ESI,dword ptr ds:[eax+0x79]
const CString LEA_ESI_DWORDPTR_EAX_2 = "8D70";//参数小于等于0x79
const CString LEA_ESI_DWORDPTR_EAX_4 = "8DB0";//参数大于等于0x80
const CString LEA_ESI_DWORDPTR_ECX_2 = "8D71";//参数小于等于0x79
const CString LEA_ESI_DWORDPTR_ECX_4 = "8DB1";//参数大于等于0x80
const CString LEA_ESI_DWORDPTR_EDX_2 = "8D72";//参数小于等于0x79
const CString LEA_ESI_DWORDPTR_EDX_4 = "8DB2";//参数大于等于0x80
const CString LEA_ESI_DWORDPTR_EBX_2 = "8D73";//参数小于等于0x79
const CString LEA_ESI_DWORDPTR_EBX_4 = "8DB3";//参数大于等于0x80
const CString LEA_ESI_DWORDPTR_ESP_2 = "3E8D7424";//参数小于等于0x79
const CString LEA_ESI_DWORDPTR_ESP_4 = "8DB424";//参数大于等于0x80
const CString LEA_ESI_DWORDPTR_EBP_2 = "3E8D75";//参数小于等于0x79
const CString LEA_ESI_DWORDPTR_EBP_4 = "8DB5";//参数大于等于0x80
const CString LEA_ESI_DWORDPTR_ESI_2 = "8D76";//参数小于等于0x79
const CString LEA_ESI_DWORDPTR_ESI_4 = "8DB6";//参数大于等于0x80
const CString LEA_ESI_DWORDPTR_EDI_2 = "8D77";//参数小于等于0x79
const CString LEA_ESI_DWORDPTR_EDI_4 = "8DB7";//参数大于等于0x80
//lea EDI,dword ptr ds:[eax+0x79]
const CString LEA_EDI_DWORDPTR_EAX_2 = "8D78";//参数小于等于0x79
const CString LEA_EDI_DWORDPTR_EAX_4 = "8DB8";//参数大于等于0x80
const CString LEA_EDI_DWORDPTR_ECX_2 = "8D79";//参数小于等于0x79
const CString LEA_EDI_DWORDPTR_ECX_4 = "8DB9";//参数大于等于0x80
const CString LEA_EDI_DWORDPTR_EDX_2 = "8D7A";//参数小于等于0x79
const CString LEA_EDI_DWORDPTR_EDX_4 = "8DBA";//参数大于等于0x80
const CString LEA_EDI_DWORDPTR_EBX_2 = "8D7B";//参数小于等于0x79
const CString LEA_EDI_DWORDPTR_EBX_4 = "8DBB";//参数大于等于0x80
const CString LEA_EDI_DWORDPTR_ESP_2 = "3E8D7C24";//参数小于等于0x79
const CString LEA_EDI_DWORDPTR_ESP_4 = "8DBC24";//参数大于等于0x80
const CString LEA_EDI_DWORDPTR_EBP_2 = "3E8D7D";//参数小于等于0x79
const CString LEA_EDI_DWORDPTR_EBP_4 = "8DBD";//参数大于等于0x80
const CString LEA_EDI_DWORDPTR_ESI_2 = "8D7E";//参数小于等于0x79
const CString LEA_EDI_DWORDPTR_ESI_4 = "8DBE";//参数大于等于0x80
const CString LEA_EDI_DWORDPTR_EDI_2 = "8D7F";//参数小于等于0x79
const CString LEA_EDI_DWORDPTR_EDI_4 = "8DBF";//参数大于等于0x80
};
下面就是功能。CPP
#include "pch.h"
#include "Signature.h"
#include"红汇编32.h"
#include <windows.h>
#include"AsmTobyte32.h"
ASMbyte32 asmbyte;
ASMchar32 asmchr;
QWORD g_32meoy = 0;
const CString pusha= "pushad";
const CString popa = "popad";
const CString retz = "retn";
const CString rcall = "call";
/*汇编参数格式化并添加*/
BOOL OXGSH(CString Dem, int lx);
int CsAsmToint(CString AsmCall,CString Asm0x )
{
int ret =0;
toUpper(AsmCall.GetBuffer());//到小写
toUpper(Asm0x.GetBuffer());//到小写
AsmCall.ReleaseBuffer();
Asm0x.ReleaseBuffer();
if (Asm0x.Mid(0,2)=="0x")//参数去头部
{Asm0x = Asm0x.Mid(2, Asm0x.GetLength()-2);}
if (AsmCall == "call") { ret = CALL; return ret; }
if (AsmCall == "retn"|| AsmCall == "retn4")
{
if (AsmCall == "retn")
{
return RETN;
}
else if(AsmCall == "retn4")
{
return RETN4;
}
}
QWORD Asize = Hex_Conversion_Dec1(Asm0x.GetBuffer());
Asm0x.ReleaseBuffer();
if (Asize <= 0x79) { Asize = 0; }
else if (Asize >= 0x80) { Asize = 1; }
//单函数
{
if (AsmCall == "push") { if (Asize == 0) { return PUSH; }return PUSH4; }
if (AsmCall == "pushad") { return PUSHAD; }
if (AsmCall == "popad") { return POPAD; }
if (AsmCall == "subesp") { if (Asize == 0) { return SUBESP; }return SUBESP4; }
if (AsmCall == "addesp") { if (Asize == 0) { return SUBESP; }return SUBESP4; }
if (AsmCall == "calleax") { return CALLEAX; }
if (AsmCall == "callecx") { return CALLECX; }
if (AsmCall == "calledx") { return CALLEDX; }
if (AsmCall == "callebx") { return CALLEBX; }
if (AsmCall == "callesp") { return CALLESP; }
if (AsmCall == "callebp") { return CALLEBP; }
if (AsmCall == "callesi") { return CALLESI; }
if (AsmCall == "calledi") { return CALLEDI; }
}
//mov eax,eax
{
if (AsmCall == "moveaxeax") { return MOVEAXEAX; }
if (AsmCall == "moveaxecx") { return MOVEAXECX; }
if (AsmCall == "moveaxedx") { return MOVEAXEDX; }
if (AsmCall == "moveaxebx") { return MOVEAXEBX; }
if (AsmCall == "moveaxesp") { return MOVEAXESP; }
if (AsmCall == "moveaxebp") { return MOVEAXEBP; }
if (AsmCall == "moveaxesi") { return MOVEAXESI; }
if (AsmCall == "moveaxedi") { return MOVEAXEDI; }
if (AsmCall == "movecxeax") { return MOVECXEAX; }
if (AsmCall == "movecxecx") { return MOVECXECX; }
if (AsmCall == "movecxedx") { return MOVECXEDX; }
if (AsmCall == "movecxebx") { return MOVECXEBX; }
if (AsmCall == "movecxesp") { return MOVECXESP; }
if (AsmCall == "movecxebp") { return MOVECXEBP; }
if (AsmCall == "movecxesi") { return MOVECXESI; }
if (AsmCall == "movecxedi") { return MOVECXEDI; }
if (AsmCall == "movedxeax") { return MOVEDXEAX; }
if (AsmCall == "movedxecx") { return MOVEDXECX; }
if (AsmCall == "movedxedx") { return MOVEDXEDX; }
if (AsmCall == "movedxebx") { return MOVEDXEBX; }
if (AsmCall == "movedxesp") { return MOVEDXESP; }
if (AsmCall == "movedxebp") { return MOVEDXEBP; }
if (AsmCall == "movedxesi") { return MOVEDXESI; }
if (AsmCall == "movedxedi") { return MOVEDXEDI; }
if (AsmCall == "movebxeax") { return MOVEBXEAX; }
if (AsmCall == "movebxecx") { return MOVEBXECX; }
if (AsmCall == "movebxedx") { return MOVEBXEDX; }
if (AsmCall == "movebxebx") { return MOVEBXEBX; }
if (AsmCall == "movebxesp") { return MOVEBXESP; }
if (AsmCall == "movebxebp") { return MOVEBXEBP; }
if (AsmCall == "movebxesi") { return MOVEBXESI; }
if (AsmCall == "movebxedi") { return MOVEBXEDI; }
if (AsmCall == "movespeax") { return MOVESPEAX; }
if (AsmCall == "movespecx") { return MOVESPECX; }
if (AsmCall == "movespedx") { return MOVESPEDX; }
if (AsmCall == "movespebx") { return MOVESPEBX; }
if (AsmCall == "movespesp") { return MOVESPESP; }
if (AsmCall == "movespebp") { return MOVESPEBP; }
if (AsmCall == "movespesi") { return MOVESPESI; }
if (AsmCall == "movespedi") { return MOVESPEDI; }
if (AsmCall == "movebpeax") { return MOVEBPEAX; }
if (AsmCall == "movebpecx") { return MOVEBPECX; }
if (AsmCall == "movebpedx") { return MOVEBPEDX; }
if (AsmCall == "movebpebx") { return MOVEBPEBX; }
if (AsmCall == "movebpesp") { return MOVEBPESP; }
if (AsmCall == "movebpebp") { return MOVEBPEBP; }
if (AsmCall == "movebpesi") { return MOVEBPESI; }
if (AsmCall == "movebpedi") { return MOVEBPEDI; }
if (AsmCall == "movesieax") { return MOVESIEAX; }
if (AsmCall == "movesiecx") { return MOVESIECX; }
if (AsmCall == "movesiedx") { return MOVESIEDX; }
if (AsmCall == "movesiebx") { return MOVESIEBX; }
if (AsmCall == "movesiesp") { return MOVESIESP; }
if (AsmCall == "movesiebp") { return MOVESIEBP; }
if (AsmCall == "movesiesi") { return MOVESIESI; }
if (AsmCall == "movesiedi") { return MOVESIEDI; }
if (AsmCall == "movedieax") { return MOVEDIEAX; }
if (AsmCall == "movediecx") { return MOVEDIECX; }
if (AsmCall == "movediedx") { return MOVEDIEDX; }
if (AsmCall == "movediebx") { return MOVEDIEBX; }
if (AsmCall == "movediesp") { return MOVEDIESP; }
if (AsmCall == "movediebp") { return MOVEDIEBP; }
if (AsmCall == "movediesi") { return MOVEDIESI; }
if (AsmCall == "movediedi") { return MOVEDIEDI; }
}
//mov eax,常数
{
if (AsmCall == "moveaxc") { return MOVEAXC; }
if (AsmCall == "movecxc") { return MOVECXC; }
if (AsmCall == "movedxc") { return MOVEDXC; }
if (AsmCall == "movebxc") { return MOVEBXC; }
if (AsmCall == "movespc") { return MOVESPC; }
if (AsmCall == "movebpc") { return MOVEBPC; }
if (AsmCall == "movesic") { return MOVESIC; }
if (AsmCall == "movedic") { return MOVEDIC; }
}
//mov eax,dword ptr ds:[0x79]
{
if (AsmCall == "moveaxdwordptr") { return MOVEAXDWORDPTR; }
if (AsmCall == "movecxdwordptr") { return MOVECXDWORDPTR; }
if (AsmCall == "movedxdwordptr") { return MOVEDXDWORDPTR; }
if (AsmCall == "movebxdwordptr") { return MOVEBXDWORDPTR; }
if (AsmCall == "movespdwordptr") { return MOVESPDWORDPTR; }
if (AsmCall == "movebpdwordptr") { return MOVEBPDWORDPTR; }
if (AsmCall == "movesidwordptr") { return MOVESIDWORDPTR; }
if (AsmCall == "movedidwordptr") { return MOVEDIDWORDPTR; }
}
//mov EAX, dword ptr ds : [eax + 0x79]
{
{
if (AsmCall == "moveaxdwordptreax+") {
if (Asize == 0) { return MOVEAXDWORDPTREAX; }
else if (Asize == 1) { return MOVEAXDWORDPTREAX_; }
}
if (AsmCall == "moveaxdwordptrecx+") {
if (Asize == 0) { return MOVEAXDWORDPTRECX; }
else if (Asize == 1) { return MOVEAXDWORDPTRECX_; }
}
if (AsmCall == "moveaxdwordptredx+") {
if (Asize == 0) { return MOVEAXDWORDPTREDX; }
else if (Asize == 1) { return MOVEAXDWORDPTREDX_; }
}
if (AsmCall == "moveaxdwordptrebx+") {
if (Asize == 0) { return MOVEAXDWORDPTREBX; }
else if (Asize == 1) { return MOVEAXDWORDPTREBX_; }
}
if (AsmCall == "moveaxdwordptresp+") {
if (Asize == 0) { return MOVEAXDWORDPTRESP; }
else if (Asize == 1) { return MOVEAXDWORDPTRESP_; }
}
if (AsmCall == "moveaxdwordptrebp+") {
if (Asize == 0) { return MOVEAXDWORDPTREBP; }
else if (Asize == 1) { return MOVEAXDWORDPTREBP_; }
}
if (AsmCall == "moveaxdwordptresi+") {
if (Asize == 0) { return MOVEAXDWORDPTRESI; }
else if (Asize == 1) { return MOVEAXDWORDPTRESI_; }
}
if (AsmCall == "moveaxdwordptredi+") {
if (Asize == 0) { return MOVEAXDWORDPTREDI; }
else if (Asize == 1) { return MOVEAXDWORDPTREDI_; }
}
}
//mov ECX, dword ptr ds : [ecx + 0x79]
{
if (AsmCall == "movecxdwordptreax+") {
if (Asize == 0) { return MOVECXDWORDPTREAX; }
else if (Asize == 1) { return MOVECXDWORDPTREAX_; }
}
if (AsmCall == "movecxdwordptrecx+") {
if (Asize == 0) { return MOVECXDWORDPTRECX; }
else if (Asize == 1) { return MOVECXDWORDPTRECX_; }
}
if (AsmCall == "movecxdwordptredx+") {
if (Asize == 0) { return MOVECXDWORDPTREDX; }
else if (Asize == 1) { return MOVECXDWORDPTREDX_; }
}
if (AsmCall == "movecxdwordptrebx+") {
if (Asize == 0) { return MOVECXDWORDPTREBX; }
else if (Asize == 1) { return MOVECXDWORDPTREBX_; }
}
if (AsmCall == "movecxdwordptresp+") {
if (Asize == 0) { return MOVECXDWORDPTRESP; }
else if (Asize == 1) { return MOVECXDWORDPTRESP_; }
}
if (AsmCall == "movecxdwordptrebp+") {
if (Asize == 0) { return MOVECXDWORDPTREBP; }
else if (Asize == 1) { return MOVECXDWORDPTREBP_; }
}
if (AsmCall == "movecxdwordptresi+") {
if (Asize == 0) { return MOVECXDWORDPTRESI; }
else if (Asize == 1) { return MOVECXDWORDPTRESI_; }
}
if (AsmCall == "movecxdwordptredi+") {
if (Asize == 0) { return MOVECXDWORDPTREDI; }
else if (Asize == 1) { return MOVECXDWORDPTREDI_; }
}
}
//mov EDX, dword ptr ds : [edx + 0x79]
{
if (AsmCall == "movedxdwordptreax+") {
if (Asize == 0) { return MOVEDXDWORDPTREAX; }
else if (Asize == 1) { return MOVEDXDWORDPTREAX_; }
}
if (AsmCall == "movedxdwordptrecx+") {
if (Asize == 0) { return MOVEDXDWORDPTRECX; }
else if (Asize == 1) { return MOVEDXDWORDPTRECX_; }
}
if (AsmCall == "movedxdwordptredx+") {
if (Asize == 0) { return MOVEDXDWORDPTREDX; }
else if (Asize == 1) { return MOVEDXDWORDPTREDX_; }
}
if (AsmCall == "movedxdwordptrebx+") {
if (Asize == 0) { return MOVEDXDWORDPTREBX; }
else if (Asize == 1) { return MOVEDXDWORDPTREBX_; }
}
if (AsmCall == "movedxdwordptresp+") {
if (Asize == 0) { return MOVEDXDWORDPTRESP; }
else if (Asize == 1) { return MOVEDXDWORDPTRESP_; }
}
if (AsmCall == "movedxdwordptrebp+") {
if (Asize == 0) { return MOVEDXDWORDPTREBP; }
else if (Asize == 1) { return MOVEDXDWORDPTREBP_; }
}
if (AsmCall == "movedxdwordptresi+") {
if (Asize == 0) { return MOVEDXDWORDPTRESI; }
else if (Asize == 1) { return MOVEDXDWORDPTRESI_; }
}
if (AsmCall == "movedxdwordptredi+") {
if (Asize == 0) { return MOVEDXDWORDPTREDI; }
else if (Asize == 1) { return MOVEDXDWORDPTREDI_; }
}
}
//mov EBX, dword ptr ds : [ebx + 0x79]
{
if (AsmCall == "movebxdwordptreax+") {
if (Asize == 0) { return MOVEBXDWORDPTREAX; }
else if (Asize == 1) { return MOVEBXDWORDPTREAX_; }
}
if (AsmCall == "movebxdwordptrecx+") {
if (Asize == 0) { return MOVEBXDWORDPTRECX; }
else if (Asize == 1) { return MOVEBXDWORDPTRECX_; }
}
if (AsmCall == "movebxdwordptredx+") {
if (Asize == 0) { return MOVEBXDWORDPTREDX; }
else if (Asize == 1) { return MOVEBXDWORDPTREDX_; }
}
if (AsmCall == "movebxdwordptrebx+") {
if (Asize == 0) { return MOVEBXDWORDPTREBX; }
else if (Asize == 1) { return MOVEBXDWORDPTREBX_; }
}
if (AsmCall == "movebxdwordptresp+") {
if (Asize == 0) { return MOVEBXDWORDPTRESP; }
else if (Asize == 1) { return MOVEBXDWORDPTRESP_; }
}
if (AsmCall == "movebxdwordptrebp+") {
if (Asize == 0) { return MOVEBXDWORDPTREBP; }
else if (Asize == 1) { return MOVEBXDWORDPTREBP_; }
}
if (AsmCall == "movebxdwordptresi+") {
if (Asize == 0) { return MOVEBXDWORDPTRESI; }
else if (Asize == 1) { return MOVEBXDWORDPTRESI_; }
}
if (AsmCall == "movebxdwordptredi+") {
if (Asize == 0) { return MOVEBXDWORDPTREDI; }
else if (Asize == 1) { return MOVEBXDWORDPTREDI_; }
}
}
//mov ESP, dword ptr ds : [esp + 0x79]
{
if (AsmCall == "movespdwordptreax+") {
if (Asize == 0) { return MOVESPDWORDPTREAX; }
else if (Asize == 1) { return MOVESPDWORDPTREAX_; }
}
if (AsmCall == "movespdwordptrecx+") {
if (Asize == 0) { return MOVESPDWORDPTRECX; }
else if (Asize == 1) { return MOVESPDWORDPTRECX_; }
}
if (AsmCall == "movespdwordptredx+") {
if (Asize == 0) { return MOVESPDWORDPTREDX; }
else if (Asize == 1) { return MOVESPDWORDPTREDX_; }
}
if (AsmCall == "movespdwordptrebx+") {
if (Asize == 0) { return MOVESPDWORDPTREBX; }
else if (Asize == 1) { return MOVESPDWORDPTREBX_; }
}
if (AsmCall == "movespdwordptresp+") {
if (Asize == 0) { return MOVESPDWORDPTRESP; }
else if (Asize == 1) { return MOVESPDWORDPTRESP_; }
}
if (AsmCall == "movespdwordptrebp+") {
if (Asize == 0) { return MOVESPDWORDPTREBP; }
else if (Asize == 1) { return MOVESPDWORDPTREBP_; }
}
if (AsmCall == "movespdwordptresi+") {
if (Asize == 0) { return MOVESPDWORDPTRESI; }
else if (Asize == 1) { return MOVESPDWORDPTRESI_; }
}
if (AsmCall == "movespdwordptredi+") {
if (Asize == 0) { return MOVESPDWORDPTREDI; }
else if (Asize == 1) { return MOVESPDWORDPTREDI_; }
}
}
//mov EBP, dword ptr ds : [ebp + 0x79]
{
if (AsmCall == "movebpdwordptreax+") {
if (Asize == 0) { return MOVEBPDWORDPTREAX; }
else if (Asize == 1) { return MOVEBPDWORDPTREAX_; }
}
if (AsmCall == "movebpdwordptrecx+") {
if (Asize == 0) { return MOVEBPDWORDPTRECX; }
else if (Asize == 1) { return MOVEBPDWORDPTRECX_; }
}
if (AsmCall == "movebpdwordptredx+") {
if (Asize == 0) { return MOVEBPDWORDPTREDX; }
else if (Asize == 1) { return MOVEBPDWORDPTREDX_; }
}
if (AsmCall == "movebpdwordptrebx+") {
if (Asize == 0) { return MOVEBPDWORDPTREBX; }
else if (Asize == 1) { return MOVEBPDWORDPTREBX_; }
}
if (AsmCall == "movebpdwordptresp+") {
if (Asize == 0) { return MOVEBPDWORDPTRESP; }
else if (Asize == 1) { return MOVEBPDWORDPTRESP_; }
}
if (AsmCall == "movebpdwordptrebp+") {
if (Asize == 0) { return MOVEBPDWORDPTREBP; }
else if (Asize == 1) { return MOVEBPDWORDPTREBP_; }
}
if (AsmCall == "movebpdwordptresi+") {
if (Asize == 0) { return MOVEBPDWORDPTRESI; }
else if (Asize == 1) { return MOVEBPDWORDPTRESI_; }
}
if (AsmCall == "movebpdwordptredi+") {
if (Asize == 0) { return MOVEBPDWORDPTREDI; }
else if (Asize == 1) { return MOVEBPDWORDPTREDI_; }
}
}
//mov ESI, dword ptr ds : [esi + 0x79]
{
if (AsmCall == "movesidwordptreax+") {
if (Asize == 0) { return MOVESIDWORDPTREAX; }
else if (Asize == 1) { return MOVESIDWORDPTREAX_; }
}
if (AsmCall == "movesidwordptrecx+") {
if (Asize == 0) { return MOVESIDWORDPTRECX; }
else if (Asize == 1) { return MOVESIDWORDPTRECX_; }
}
if (AsmCall == "movesidwordptredx+") {
if (Asize == 0) { return MOVESIDWORDPTREDX; }
else if (Asize == 1) { return MOVESIDWORDPTREDX_; }
}
if (AsmCall == "movesidwordptrebx+") {
if (Asize == 0) { return MOVESIDWORDPTREBX; }
else if (Asize == 1) { return MOVESIDWORDPTREBX_; }
}
if (AsmCall == "movesidwordptresp+") {
if (Asize == 0) { return MOVESIDWORDPTRESP; }
else if (Asize == 1) { return MOVESIDWORDPTRESP_; }
}
if (AsmCall == "movesidwordptrebp+") {
if (Asize == 0) { return MOVESIDWORDPTREBP; }
else if (Asize == 1) { return MOVESIDWORDPTREBP_; }
}
if (AsmCall == "movesidwordptresi+") {
if (Asize == 0) { return MOVESIDWORDPTRESI; }
else if (Asize == 1) { return MOVESIDWORDPTRESI_; }
}
if (AsmCall == "movesidwordptredi+") {
if (Asize == 0) { return MOVESIDWORDPTREDI; }
else if (Asize == 1) { return MOVESIDWORDPTREDI_; }
}
}
//mov EDI, dword ptr ds : [edi + 0x79]
{
if (AsmCall == "movedidwordptreax+") {
if (Asize == 0) { return MOVEDIDWORDPTREAX; }
else if (Asize == 1) { return MOVEDIDWORDPTREAX_; }
}
if (AsmCall == "movedidwordptrecx+") {
if (Asize == 0) { return MOVEDIDWORDPTRECX; }
else if (Asize == 1) { return MOVEDIDWORDPTRECX_; }
}
if (AsmCall == "movedidwordptredx+") {
if (Asize == 0) { return MOVEDIDWORDPTREDX; }
else if (Asize == 1) { return MOVEDIDWORDPTREDX_; }
}
if (AsmCall == "movedidwordptrebx+") {
if (Asize == 0) { return MOVEDIDWORDPTREBX; }
else if (Asize == 1) { return MOVEDIDWORDPTREBX_; }
}
if (AsmCall == "movedidwordptresp+") {
if (Asize == 0) { return MOVEDIDWORDPTRESP; }
else if (Asize == 1) { return MOVEDIDWORDPTRESP_; }
}
if (AsmCall == "movedidwordptrebp+") {
if (Asize == 0) { return MOVEDIDWORDPTREBP; }
else if (Asize == 1) { return MOVEDIDWORDPTREBP_; }
}
if (AsmCall == "movedidwordptresi+") {
if (Asize == 0) { return MOVEDIDWORDPTRESI; }
else if (Asize == 1) { return MOVEDIDWORDPTRESI_; }
}
if (AsmCall == "movedidwordptredi+") {
if (Asize == 0) { return MOVEDIDWORDPTREDI; }
else if (Asize == 1) { return MOVEDIDWORDPTREDI_; }
}
}
}
//lea eax, dword ptr ds : [0x79]
{
if (AsmCall == "leaeaxdwordptr") { return LEAEAXDWORDPTR; }
if (AsmCall == "leaecxdwordptr") { return LEAECXDWORDPTR; }
if (AsmCall == "leaedxdwordptr") { return LEAEDXDWORDPTR; }
if (AsmCall == "leaebxdwordptr") { return LEAEBXDWORDPTR; }
if (AsmCall == "leaespdwordptr") { return LEAESPDWORDPTR; }
if (AsmCall == "leaebpdwordptr") { return LEAEBPDWORDPTR; }
if (AsmCall == "leaesidwordptr") { return LEAESIDWORDPTR; }
if (AsmCall == "leaedidwordptr") { return LEAEDIDWORDPTR; }
}
//lea EAX, dword ptr ds : [eax + 0x79]
{
{
if (AsmCall == "leaeaxdwordptreax+") {
if (Asize == 0) { return LEAEAXDWORDPTREAX2; }
else if (Asize == 1) { return LEAEAXDWORDPTREAX4; }
}
if (AsmCall == "leaeaxdwordptrecx+") {
if (Asize == 0) { return LEAEAXDWORDPTRECX2; }
else if (Asize == 1) { return LEAEAXDWORDPTRECX4; }
}
if (AsmCall == "leaeaxdwordptredx+") {
if (Asize == 0) { return LEAEAXDWORDPTREDX2; }
else if (Asize == 1) { return LEAEAXDWORDPTREDX4; }
}
if (AsmCall == "leaeaxdwordptrebx+") {
if (Asize == 0) { return LEAEAXDWORDPTREBX2; }
else if (Asize == 1) { return LEAEAXDWORDPTREBX4; }
}
if (AsmCall == "leaeaxdwordptresp+") {
if (Asize == 0) { return LEAEAXDWORDPTRESP2; }
else if (Asize == 1) { return LEAEAXDWORDPTRESP4; }
}
if (AsmCall == "leaeaxdwordptrebp+") {
if (Asize == 0) { return LEAEAXDWORDPTREBP2; }
else if (Asize == 1) { return LEAEAXDWORDPTREBP4; }
}
if (AsmCall == "leaeaxdwordptresi+") {
if (Asize == 0) { return LEAEAXDWORDPTRESI2; }
else if (Asize == 1) { return LEAEAXDWORDPTRESI4; }
}
if (AsmCall == "leaeaxdwordptredi+") {
if (Asize == 0) { return LEAEAXDWORDPTREDI2; }
else if (Asize == 1) { return LEAEAXDWORDPTREDI4; }
}
}
//lea ECX, dword ptr ds : [ecx + 0x79]
{
if (AsmCall == "leaecxdwordptreax+") {
if (Asize == 0) { return LEAECXDWORDPTREAX2; }
else if (Asize == 1) { return LEAECXDWORDPTREAX4; }
}
if (AsmCall == "leaecxdwordptrecx+") {
if (Asize == 0) { return LEAECXDWORDPTRECX2; }
else if (Asize == 1) { return LEAECXDWORDPTRECX4; }
}
if (AsmCall == "leaecxdwordptredx+") {
if (Asize == 0) { return LEAECXDWORDPTREDX2; }
else if (Asize == 1) { return LEAECXDWORDPTREDX4; }
}
if (AsmCall == "leaecxdwordptrebx+") {
if (Asize == 0) { return LEAECXDWORDPTREBX2; }
else if (Asize == 1) { return LEAECXDWORDPTREBX4; }
}
if (AsmCall == "leaecxdwordptresp+") {
if (Asize == 0) { return LEAECXDWORDPTRESP2; }
else if (Asize == 1) { return LEAECXDWORDPTRESP4; }
}
if (AsmCall == "leaecxdwordptrebp+") {
if (Asize == 0) { return LEAECXDWORDPTREBP2; }
else if (Asize == 1) { return LEAECXDWORDPTREBP4; }
}
if (AsmCall == "leaecxdwordptresi+") {
if (Asize == 0) { return LEAECXDWORDPTRESI2; }
else if (Asize == 1) { return LEAECXDWORDPTRESI4; }
}
if (AsmCall == "leaecxdwordptredi+") {
if (Asize == 0) { return LEAECXDWORDPTREDI2; }
else if (Asize == 1) { return LEAECXDWORDPTREDI4; }
}
}
//lea EDX, dword ptr ds : [edx + 0x79]
{
if (AsmCall == "leaedxdwordptreax+") {
if (Asize == 0) { return LEAEDXDWORDPTREAX2; }
else if (Asize == 1) { return LEAEDXDWORDPTREAX4; }
}
if (AsmCall == "leaedxdwordptrecx+") {
if (Asize == 0) { return LEAEDXDWORDPTRECX2; }
else if (Asize == 1) { return LEAEDXDWORDPTRECX4; }
}
if (AsmCall == "leaedxdwordptredx+") {
if (Asize == 0) { return LEAEDXDWORDPTREDX2; }
else if (Asize == 1) { return LEAEDXDWORDPTREDX4; }
}
if (AsmCall == "leaedxdwordptrebx+") {
if (Asize == 0) { return LEAEDXDWORDPTREBX2; }
else if (Asize == 1) { return LEAEDXDWORDPTREBX4; }
}
if (AsmCall == "leaedxdwordptresp+") {
if (Asize == 0) { return LEAEDXDWORDPTRESP2; }
else if (Asize == 1) { return LEAEDXDWORDPTRESP4; }
}
if (AsmCall == "leaedxdwordptrebp+") {
if (Asize == 0) { return LEAEDXDWORDPTREBP2; }
else if (Asize == 1) { return LEAEDXDWORDPTREBP4; }
}
if (AsmCall == "leaedxdwordptresi+") {
if (Asize == 0) { return LEAEDXDWORDPTRESI2; }
else if (Asize == 1) { return LEAEDXDWORDPTRESI4; }
}
if (AsmCall == "leaedxdwordptredi+") {
if (Asize == 0) { return LEAEDXDWORDPTREDI2; }
else if (Asize == 1) { return LEAEDXDWORDPTREDI4; }
}
}
//lea EBX, dword ptr ds : [ebx + 0x79]
{
if (AsmCall == "leaebxdwordptreax+") {
if (Asize == 0) { return LEAEBXDWORDPTREAX2; }
else if (Asize == 1) { return LEAEBXDWORDPTREAX4; }
}
if (AsmCall == "leaebxdwordptrecx+") {
if (Asize == 0) { return LEAEBXDWORDPTRECX2; }
else if (Asize == 1) { return LEAEBXDWORDPTRECX4; }
}
if (AsmCall == "leaebxdwordptredx+") {
if (Asize == 0) { return LEAEBXDWORDPTREDX2; }
else if (Asize == 1) { return LEAEBXDWORDPTREDX4; }
}
if (AsmCall == "leaebxdwordptrebx+") {
if (Asize == 0) { return LEAEBXDWORDPTREBX2; }
else if (Asize == 1) { return LEAEBXDWORDPTREBX4; }
}
if (AsmCall == "leaebxdwordptresp+") {
if (Asize == 0) { return LEAEBXDWORDPTRESP2; }
else if (Asize == 1) { return LEAEBXDWORDPTRESP4; }
}
if (AsmCall == "leaebxdwordptrebp+") {
if (Asize == 0) { return LEAEBXDWORDPTREBP2; }
else if (Asize == 1) { return LEAEBXDWORDPTREBP4; }
}
if (AsmCall == "leaebxdwordptresi+") {
if (Asize == 0) { return LEAEBXDWORDPTRESI2; }
else if (Asize == 1) { return LEAEBXDWORDPTRESI4; }
}
if (AsmCall == "leaebxdwordptredi+") {
if (Asize == 0) { return LEAEBXDWORDPTREDI2; }
else if (Asize == 1) { return LEAEBXDWORDPTREDI4; }
}
}
//lea ESP, dword ptr ds : [esp + 0x79]
{
if (AsmCall == "leaespdwordptreax+") {
if (Asize == 0) { return LEAESPDWORDPTREAX2; }
else if (Asize == 1) { return LEAESPDWORDPTREAX4; }
}
if (AsmCall == "leaespdwordptrecx+") {
if (Asize == 0) { return LEAESPDWORDPTRECX2; }
else if (Asize == 1) { return LEAESPDWORDPTRECX4; }
}
if (AsmCall == "leaespdwordptredx+") {
if (Asize == 0) { return LEAESPDWORDPTREDX2; }
else if (Asize == 1) { return LEAESPDWORDPTREDX4; }
}
if (AsmCall == "leaespdwordptrebx+") {
if (Asize == 0) { return LEAESPDWORDPTREBX2; }
else if (Asize == 1) { return LEAESPDWORDPTREBX4; }
}
if (AsmCall == "leaespdwordptresp+") {
if (Asize == 0) { return LEAESPDWORDPTRESP2; }
else if (Asize == 1) { return LEAESPDWORDPTRESP4; }
}
if (AsmCall == "leaespdwordptrebp+") {
if (Asize == 0) { return LEAESPDWORDPTREBP2; }
else if (Asize == 1) { return LEAESPDWORDPTREBP4; }
}
if (AsmCall == "leaespdwordptresi+") {
if (Asize == 0) { return LEAESPDWORDPTRESI2; }
else if (Asize == 1) { return LEAESPDWORDPTRESI4; }
}
if (AsmCall == "leaespdwordptredi+") {
if (Asize == 0) { return LEAESPDWORDPTREDI2; }
else if (Asize == 1) { return LEAESPDWORDPTREDI4; }
}
}
//lea EBP, dword ptr ds : [ebp + 0x79]
{
if (AsmCall == "leaebpdwordptreax+") {
if (Asize == 0) { return LEAEBPDWORDPTREAX2; }
else if (Asize == 1) { return LEAEBPDWORDPTREAX4; }
}
if (AsmCall == "leaebpdwordptrecx+") {
if (Asize == 0) { return LEAEBPDWORDPTRECX2; }
else if (Asize == 1) { return LEAEBPDWORDPTRECX4; }
}
if (AsmCall == "leaebpdwordptredx+") {
if (Asize == 0) { return LEAEBPDWORDPTREDX2; }
else if (Asize == 1) { return LEAEBPDWORDPTREDX4; }
}
if (AsmCall == "leaebpdwordptrebx+") {
if (Asize == 0) { return LEAEBPDWORDPTREBX2; }
else if (Asize == 1) { return LEAEBPDWORDPTREBX4; }
}
if (AsmCall == "leaebpdwordptresp+") {
if (Asize == 0) { return LEAEBPDWORDPTRESP2; }
else if (Asize == 1) { return LEAEBPDWORDPTRESP4; }
}
if (AsmCall == "leaebpdwordptrebp+") {
if (Asize == 0) { return LEAEBPDWORDPTREBP2; }
else if (Asize == 1) { return LEAEBPDWORDPTREBP4; }
}
if (AsmCall == "leaebpdwordptresi+") {
if (Asize == 0) { return LEAEBPDWORDPTRESI2; }
else if (Asize == 1) { return LEAEBPDWORDPTRESI4; }
}
if (AsmCall == "leaebpdwordptredi+") {
if (Asize == 0) { return LEAEBPDWORDPTREDI2; }
else if (Asize == 1) { return LEAEBPDWORDPTREDI4; }
}
}
//lea ESI, dword ptr ds : [esi + 0x79]
{
if (AsmCall == "leaesidwordptreax+") {
if (Asize == 0) { return LEAESIDWORDPTREAX2; }
else if (Asize == 1) { return LEAESIDWORDPTREAX4; }
}
if (AsmCall == "leaesidwordptrecx+") {
if (Asize == 0) { return LEAESIDWORDPTRECX2; }
else if (Asize == 1) { return LEAESIDWORDPTRECX4; }
}
if (AsmCall == "leaesidwordptredx+") {
if (Asize == 0) { return LEAESIDWORDPTREDX2; }
else if (Asize == 1) { return LEAESIDWORDPTREDX4; }
}
if (AsmCall == "leaesidwordptrebx+") {
if (Asize == 0) { return LEAESIDWORDPTREBX2; }
else if (Asize == 1) { return LEAESIDWORDPTREBX4; }
}
if (AsmCall == "leaesidwordptresp+") {
if (Asize == 0) { return LEAESIDWORDPTRESP2; }
else if (Asize == 1) { return LEAESIDWORDPTRESP4; }
}
if (AsmCall == "leaesidwordptrebp+") {
if (Asize == 0) { return LEAESIDWORDPTREBP2; }
else if (Asize == 1) { return LEAESIDWORDPTREBP4; }
}
if (AsmCall == "leaesidwordptresi+") {
if (Asize == 0) { return LEAESIDWORDPTRESI2; }
else if (Asize == 1) { return LEAESIDWORDPTRESI4; }
}
if (AsmCall == "leaesidwordptredi+") {
if (Asize == 0) { return LEAESIDWORDPTREDI2; }
else if (Asize == 1) { return LEAESIDWORDPTREDI4; }
}
}
//lea EDI, dword ptr ds : [edi + 0x79]
{
if (AsmCall == "leaedidwordptreax+") {
if (Asize == 0) { return LEAEDIDWORDPTREAX2; }
else if (Asize == 1) { return LEAEDIDWORDPTREAX4; }
}
if (AsmCall == "leaedidwordptrecx+") {
if (Asize == 0) { return LEAEDIDWORDPTRECX2; }
else if (Asize == 1) { return LEAEDIDWORDPTRECX4; }
}
if (AsmCall == "leaedidwordptredx+") {
if (Asize == 0) { return LEAEDIDWORDPTREDX2; }
else if (Asize == 1) { return LEAEDIDWORDPTREDX4; }
}
if (AsmCall == "leaedidwordptrebx+") {
if (Asize == 0) { return LEAEDIDWORDPTREBX2; }
else if (Asize == 1) { return LEAEDIDWORDPTREBX4; }
}
if (AsmCall == "leaedidwordptresp+") {
if (Asize == 0) { return LEAEDIDWORDPTRESP2; }
else if (Asize == 1) { return LEAEDIDWORDPTRESP4; }
}
if (AsmCall == "leaedidwordptrebp+") {
if (Asize == 0) { return LEAEDIDWORDPTREBP2; }
else if (Asize == 1) { return LEAEDIDWORDPTREBP4; }
}
if (AsmCall == "leaedidwordptresi+") {
if (Asize == 0) { return LEAEDIDWORDPTRESI2; }
else if (Asize == 1) { return LEAEDIDWORDPTRESI4; }
}
if (AsmCall == "leaedidwordptredi+") {
if (Asize == 0) { return LEAEDIDWORDPTREDI2; }
else if (Asize == 1) { return LEAEDIDWORDPTREDI4; }
}
}
}
return 0;
}
CString IntToASBy(int cod)
{
if (cod==0){return "0";}
switch (cod)
{
//单功能
{
case CALL:
{
return asmbyte.CCALL;
asmchr.CALLsize += 1;
break;
}
case RETN:
{
return asmbyte.CRETN;
asmchr.CALLsize += 1;
break;
}
case RETN4:
{
return asmbyte.CRETN4;
asmchr.CALLsize += 1;
break;
}
case PUSH:
{
return asmbyte.CPUSH;
asmchr.CALLsize += 1;
break;
}
case PUSH4:
{
return asmbyte.CPUSH4;
asmchr.CALLsize += 1;
break;
}
case PUSHAD:
{
return asmbyte.CPUSHAD;
asmchr.CALLsize += 1;
break;
}
case POPAD:
{
return asmbyte.CPOPAD;
asmchr.CALLsize += 1;
break;
}
case SUBESP:
{
return asmbyte.CSUBESP;
asmchr.CALLsize += 2;
break;
}
case SUBESP4:
{
return asmbyte.CSUBESP4;
asmchr.CALLsize += 2;
break;
}
case ADDESP:
{
return asmbyte.CADDESP;
asmchr.CALLsize += 2;
break;
}
case ADDESP4:
{
return asmbyte.CADDESP4;
asmchr.CALLsize += 2;
break;
}
//mov常数
{
case MOVEAXC:
{
return asmbyte.MOV_EAX_C;
asmchr.CALLsize += 1;
break;
}
case MOVECXC:
{
return asmbyte.MOV_ECX_C;
asmchr.CALLsize += 1;
break;
}
case MOVEDXC:
{
return asmbyte.MOV_EDX_C;
asmchr.CALLsize += 1;
break;
}
case MOVEBXC:
{
return asmbyte.MOV_EBX_C;
asmchr.CALLsize += 1;
break;
}
case MOVESPC:
{
return asmbyte.MOV_ESP_C;
asmchr.CALLsize += 1;
break;
}
case MOVESIC:
{
return asmbyte.MOV_ESI_C;
asmchr.CALLsize += 1;
break;
}
case MOVEDIC:
{
return asmbyte.MOV_EDI_C;
asmchr.CALLsize += 1;
break;
}
case MOVEBPC:
{
return asmbyte.MOV_EBP_C;
asmchr.CALLsize += 1;
break;
}}
}
//CALL 寄存器
{
case CALLEAX:
{
return asmbyte.CALL_EAX;
asmchr.CALLsize += 2;
break;
}
case CALLECX:
{
return asmbyte.CALL_ECX;
asmchr.CALLsize += 2;
break;
}
case CALLEDX:
{
return asmbyte.CALL_EDX;
asmchr.CALLsize += 2;
break;
}
case CALLEBX:
{
return asmbyte.CALL_EBX;
asmchr.CALLsize += 2;
break;
}
case CALLESP:
{
return asmbyte.CALL_ESP;
asmchr.CALLsize += 2;
break;
}
case CALLEBP:
{
return asmbyte.CALL_EBP;
asmchr.CALLsize += 2;
break;
}
case CALLESI:
{
return asmbyte.CALL_ESI;
asmchr.CALLsize += 2;
break;
}
case CALLEDI:
{
return asmbyte.CALL_EDI;
asmchr.CALLsize += 2;
break;
}
}
//MOV EAX,EAX
{
//EAX
{
case MOVEAXEAX:
{
return asmbyte.MOV_EAX_EAX;
asmchr.CALLsize += 2;
break;
}
case MOVEAXECX:
{
return asmbyte.MOV_EAX_ECX;
asmchr.CALLsize += 2;
break;
}
case MOVEAXEDX:
{
return asmbyte.MOV_EAX_EDX;
asmchr.CALLsize += 2;
break;
}
case MOVEAXEBX:
{
return asmbyte.MOV_EAX_EBX;
asmchr.CALLsize += 2;
break;
}
case MOVEAXESP:
{
return asmbyte.MOV_EAX_ESP;
asmchr.CALLsize += 2;
break;
}
case MOVEAXEBP:
{
return asmbyte.MOV_EAX_EBP;
asmchr.CALLsize += 2;
break;
}
case MOVEAXESI:
{
return asmbyte.MOV_EAX_ESI;
asmchr.CALLsize += 2;
break;
}
case MOVEAXEDI:
{
return asmbyte.MOV_EAX_EDI;
asmchr.CALLsize += 2;
break;
}
}
//ECX
{
case MOVECXEAX:
{
return asmbyte.MOV_ECX_EAX;
asmchr.CALLsize += 2;
break;
}
case MOVECXECX:
{
return asmbyte.MOV_ECX_ECX;
asmchr.CALLsize += 2;
break;
}
case MOVECXEDX:
{
return asmbyte.MOV_ECX_EDX;
asmchr.CALLsize += 2;
break;
}
case MOVECXEBX:
{
return asmbyte.MOV_ECX_EBX;
asmchr.CALLsize += 2;
break;
}
case MOVECXESP:
{
return asmbyte.MOV_ECX_ESP;
asmchr.CALLsize += 2;
break;
}
case MOVECXEBP:
{
return asmbyte.MOV_ECX_EBP;
asmchr.CALLsize += 2;
break;
}
case MOVECXESI:
{
return asmbyte.MOV_ECX_ESI;
asmchr.CALLsize += 2;
break;
}
case MOVECXEDI:
{
return asmbyte.MOV_ECX_EDI;
asmchr.CALLsize += 2;
break;
}
}
//EDX
{
case MOVEDXEAX:
{
return asmbyte.MOV_EDX_EAX;
asmchr.CALLsize += 2;
break;
}
case MOVEDXECX:
{
return asmbyte.MOV_EDX_ECX;
asmchr.CALLsize += 2;
break;
}
case MOVEDXEDX:
{
return asmbyte.MOV_EDX_EDX;
asmchr.CALLsize += 2;
break;
}
case MOVEDXEBX:
{
return asmbyte.MOV_EDX_EBX;
asmchr.CALLsize += 2;
break;
}
case MOVEDXESP:
{
return asmbyte.MOV_EDX_ESP;
asmchr.CALLsize += 2;
break;
}
case MOVEDXEBP:
{
return asmbyte.MOV_EDX_EBP;
asmchr.CALLsize += 2;
break;
}
case MOVEDXESI:
{
return asmbyte.MOV_EDX_ESI;
asmchr.CALLsize += 2;
break;
}
case MOVEDXEDI:
{
return asmbyte.MOV_EDX_EDI;
asmchr.CALLsize += 2;
break;
}
}
//EBX
{
case MOVEBXEAX:
{
return asmbyte.MOV_EBX_EAX;
asmchr.CALLsize += 2;
break;
}
case MOVEBXECX:
{
return asmbyte.MOV_EBX_ECX;
asmchr.CALLsize += 2;
break;
}
case MOVEBXEDX:
{
return asmbyte.MOV_EBX_EDX;
asmchr.CALLsize += 2;
break;
}
case MOVEBXEBX:
{
return asmbyte.MOV_EBX_EBX;
asmchr.CALLsize += 2;
break;
}
case MOVEBXESP:
{
return asmbyte.MOV_EBX_ESP;
asmchr.CALLsize += 2;
break;
}
case MOVEBXEBP:
{
return asmbyte.MOV_EBX_EBP;
asmchr.CALLsize += 2;
break;
}
case MOVEBXESI:
{
return asmbyte.MOV_EBX_ESI;
asmchr.CALLsize += 2;
break;
}
case MOVEBXEDI:
{
return asmbyte.MOV_EBX_EDI;
asmchr.CALLsize += 2;
break;
}
}
//ESP
{
case MOVESPEAX:
{
return asmbyte.MOV_ESP_EAX;
asmchr.CALLsize += 2;
break;
}
case MOVESPECX :
{
return asmbyte.MOV_ESP_ECX;
asmchr.CALLsize += 2;
break;
}
case MOVESPEDX:
{
return asmbyte.MOV_ESP_EDX;
asmchr.CALLsize += 2;
break;
}
case MOVESPEBX:
{
return asmbyte.MOV_ESP_EBX;
asmchr.CALLsize += 2;
break;
}
case MOVESPESP:
{
return asmbyte.MOV_ESP_ESP;
asmchr.CALLsize += 2;
break;
}
case MOVESPEBP:
{
return asmbyte.MOV_ESP_EBP;
asmchr.CALLsize += 2;
break;
}
case MOVESPESI:
{
return asmbyte.MOV_ESP_ESI;
asmchr.CALLsize += 2;
break;
}
case MOVESPEDI:
{
return asmbyte.MOV_ESP_EDI;
asmchr.CALLsize += 2;
break;
}
}
//EBP
{
case MOVEBPEAX:
{
return asmbyte.MOV_EBP_EAX;
asmchr.CALLsize += 2;
break;
}
case MOVEBPECX:
{
return asmbyte.MOV_EBP_ECX;
asmchr.CALLsize += 2;
break;
}
case MOVEBPEDX:
{
return asmbyte.MOV_EBP_EDX;
asmchr.CALLsize += 2;
break;
}
case MOVEBPEBX:
{
return asmbyte.MOV_EBP_EBX;
asmchr.CALLsize += 2;
break;
}
case MOVEBPESP:
{
return asmbyte.MOV_EBP_ESP;
asmchr.CALLsize += 2;
break;
}
case MOVEBPEBP:
{
return asmbyte.MOV_EBP_EBP;
asmchr.CALLsize += 2;
break;
}
case MOVEBPESI:
{
return asmbyte.MOV_EBP_ESI;
asmchr.CALLsize += 2;
break;
}
case MOVEBPEDI:
{
return asmbyte.MOV_EBP_EDI;
asmchr.CALLsize += 2;
break;
}
}
//ESI
{
case MOVESIEAX:
{
return asmbyte.MOV_ESI_EAX;
asmchr.CALLsize += 2;
break;
}
case MOVESIECX:
{
return asmbyte.MOV_ESI_ECX;
asmchr.CALLsize += 2;
break;
}
case MOVESIEDX:
{
return asmbyte.MOV_ESI_EDX;
asmchr.CALLsize += 2;
break;
}
case MOVESIEBX:
{
return asmbyte.MOV_ESI_EBX;
asmchr.CALLsize += 2;
break;
}
case MOVESIESP:
{
return asmbyte.MOV_ESI_ESP;
asmchr.CALLsize += 2;
break;
}
case MOVESIEBP:
{
return asmbyte.MOV_ESI_EBP;
asmchr.CALLsize += 2;
break;
}
case MOVESIESI:
{
return asmbyte.MOV_ESI_ESI;
asmchr.CALLsize += 2;
break;
}
case MOVESIEDI:
{
return asmbyte.MOV_ESI_EDI;
asmchr.CALLsize += 2;
break;
}
}
//EDI
{
case MOVEDIEAX:
{
return asmbyte.MOV_EDI_EAX;
asmchr.CALLsize += 2;
break;
}
case MOVEDIECX:
{
return asmbyte.MOV_EDI_ECX;
asmchr.CALLsize += 2;
break;
}
case MOVEDIEDX:
{
return asmbyte.MOV_EDI_EDX;
asmchr.CALLsize += 2;
break;
}
case MOVEDIEBX:
{
return asmbyte.MOV_EDI_EBX;
asmchr.CALLsize += 2;
break;
}
case MOVEDIESP:
{
return asmbyte.MOV_EDI_ESP;
asmchr.CALLsize += 2;
break;
}
case MOVEDIEBP:
{
return asmbyte.MOV_EDI_EBP;
asmchr.CALLsize += 2;
break;
}
case MOVEDIESI:
{
return asmbyte.MOV_EDI_ESI;
asmchr.CALLsize += 2;
break;
}
case MOVEDIEDI:
{
return asmbyte.MOV_EDI_EDI;
asmchr.CALLsize += 2;
break;
}
}
}
//mov eax,dword ptr ds:[0x79]
{
case MOVEAXDWORDPTR:
{
return asmbyte.MOV_EAX_DWORDPTR;
asmchr.CALLsize += 1;
break;
}
case MOVECXDWORDPTR:
{
return asmbyte.MOV_ECX_DWORDPTR;
asmchr.CALLsize += 2;
break;
}
case MOVEDXDWORDPTR:
{
return asmbyte.MOV_EDX_DWORDPTR;
asmchr.CALLsize += 2;
break;
}
case MOVEBXDWORDPTR:
{
return asmbyte.MOV_EBX_DWORDPTR;
asmchr.CALLsize += 2;
break;
}
case MOVESPDWORDPTR:
{
return asmbyte.MOV_ESP_DWORDPTR;
asmchr.CALLsize += 2;
break;
}
case MOVEBPDWORDPTR:
{
return asmbyte.MOV_EBP_DWORDPTR;
asmchr.CALLsize += 2;
break;
}
case MOVESIDWORDPTR:
{
return asmbyte.MOV_ESI_DWORDPTR;
asmchr.CALLsize += 2;
break;
}
case MOVEDIDWORDPTR:
{
return asmbyte.MOV_EDI_DWORDPTR;
asmchr.CALLsize += 2;
break;
}
}
//mov EAX, dword ptr ds : [eax + 0x79]
{
{
case MOVEAXDWORDPTREAX:
{
return asmbyte.MOV_EAX_DWORDPTR_EAX_2;
asmchr.CALLsize += 2;
break;
}
case MOVEAXDWORDPTREAX_:
{
return asmbyte.MOV_EAX_DWORDPTR_EAX_4;
asmchr.CALLsize += 2;
break;
}
case MOVEAXDWORDPTRECX:
{
return asmbyte.MOV_EAX_DWORDPTR_ECX_2;
asmchr.CALLsize += 2;
break;
}
case MOVEAXDWORDPTRECX_:
{
return asmbyte.MOV_EAX_DWORDPTR_ECX_4;
asmchr.CALLsize += 2;
break;
}
case MOVEAXDWORDPTREDX:
{
return asmbyte.MOV_EAX_DWORDPTR_EDX_2;
asmchr.CALLsize += 2;
break;
}
case MOVEAXDWORDPTREDX_:
{
return asmbyte.MOV_EAX_DWORDPTR_EDX_4;
asmchr.CALLsize += 2;
break;
}
case MOVEAXDWORDPTREBX:
{
return asmbyte.MOV_EAX_DWORDPTR_EBX_2;
asmchr.CALLsize += 2;
break;
}
case MOVEAXDWORDPTREBX_:
{
return asmbyte.MOV_EAX_DWORDPTR_EBX_4;
asmchr.CALLsize += 2;
break;
}
case MOVEAXDWORDPTRESP:
{
return asmbyte.MOV_EAX_DWORDPTR_ESP_2;
asmchr.CALLsize += 2;
break;
}
case MOVEAXDWORDPTRESP_:
{
return asmbyte.MOV_EAX_DWORDPTR_ESP_4;
asmchr.CALLsize += 2;
break;
}
case MOVEAXDWORDPTREBP:
{
return asmbyte.MOV_EAX_DWORDPTR_EBP_2;
asmchr.CALLsize += 2;
break;
}
case MOVEAXDWORDPTREBP_:
{
return asmbyte.MOV_EAX_DWORDPTR_EBP_4;
asmchr.CALLsize += 2;
break;
}
case MOVEAXDWORDPTRESI:
{
return asmbyte.MOV_EAX_DWORDPTR_ESI_2;
asmchr.CALLsize += 2;
break;
}
case MOVEAXDWORDPTRESI_:
{
return asmbyte.MOV_EAX_DWORDPTR_ESI_4;
asmchr.CALLsize += 2;
break;
}
case MOVEAXDWORDPTREDI:
{
return asmbyte.MOV_EAX_DWORDPTR_EDI_2;
asmchr.CALLsize += 2;
break;
}
case MOVEAXDWORDPTREDI_:
{
return asmbyte.MOV_EAX_DWORDPTR_EDI_4;
asmchr.CALLsize += 2;
break;
}
}
//mov ECX, dword ptr ds : [eax + 0x79]
{
case MOVECXDWORDPTREAX:
{
return asmbyte.MOV_ECX_DWORDPTR_EAX_2;
asmchr.CALLsize += 2;
break;
}
case MOVECXDWORDPTREAX_:
{
return asmbyte.MOV_ECX_DWORDPTR_EAX_4;
asmchr.CALLsize += 2;
break;
}
case MOVECXDWORDPTRECX:
{
return asmbyte.MOV_ECX_DWORDPTR_ECX_2;
asmchr.CALLsize += 2;
break;
}
case MOVECXDWORDPTRECX_:
{
return asmbyte.MOV_ECX_DWORDPTR_ECX_4;
asmchr.CALLsize += 2;
break;
}
case MOVECXDWORDPTREDX:
{
return asmbyte.MOV_ECX_DWORDPTR_EDX_2;
asmchr.CALLsize += 2;
break;
}
case MOVECXDWORDPTREDX_:
{
return asmbyte.MOV_ECX_DWORDPTR_EDX_4;
asmchr.CALLsize += 2;
break;
}
case MOVECXDWORDPTREBX:
{
return asmbyte.MOV_ECX_DWORDPTR_EBX_2;
asmchr.CALLsize += 2;
break;
}
case MOVECXDWORDPTREBX_:
{
return asmbyte.MOV_ECX_DWORDPTR_EBX_4;
asmchr.CALLsize += 2;
break;
}
case MOVECXDWORDPTRESP:
{
return asmbyte.MOV_ECX_DWORDPTR_ESP_2;
asmchr.CALLsize += 2;
break;
}
case MOVECXDWORDPTRESP_:
{
return asmbyte.MOV_ECX_DWORDPTR_ESP_4;
asmchr.CALLsize += 2;
break;
}
case MOVECXDWORDPTREBP:
{
return asmbyte.MOV_ECX_DWORDPTR_EBP_2;
asmchr.CALLsize += 2;
break;
}
case MOVECXDWORDPTREBP_:
{
return asmbyte.MOV_ECX_DWORDPTR_EBP_4;
asmchr.CALLsize += 2;
break;
}
case MOVECXDWORDPTRESI:
{
return asmbyte.MOV_ECX_DWORDPTR_ESI_2;
asmchr.CALLsize += 2;
break;
}
case MOVECXDWORDPTRESI_:
{
return asmbyte.MOV_ECX_DWORDPTR_ESI_4;
asmchr.CALLsize += 2;
break;
}
case MOVECXDWORDPTREDI:
{
return asmbyte.MOV_ECX_DWORDPTR_EDI_2;
asmchr.CALLsize += 2;
break;
}
case MOVECXDWORDPTREDI_:
{
return asmbyte.MOV_ECX_DWORDPTR_EDI_4;
asmchr.CALLsize += 2;
break;
}
}
//mov EDX, dword ptr ds : [eax + 0x79]
{
case MOVEDXDWORDPTREAX:
{
return asmbyte.MOV_EDX_DWORDPTR_EAX_2;
asmchr.CALLsize += 2;
break;
}
case MOVEDXDWORDPTREAX_:
{
return asmbyte.MOV_EDX_DWORDPTR_EAX_4;
asmchr.CALLsize += 2;
break;
}
case MOVEDXDWORDPTRECX:
{
return asmbyte.MOV_EDX_DWORDPTR_ECX_2;
asmchr.CALLsize += 2;
break;
}
case MOVEDXDWORDPTRECX_:
{
return asmbyte.MOV_EDX_DWORDPTR_ECX_4;
asmchr.CALLsize += 2;
break;
}
case MOVEDXDWORDPTREDX:
{
return asmbyte.MOV_EDX_DWORDPTR_EDX_2;
asmchr.CALLsize += 2;
break;
}
case MOVEDXDWORDPTREDX_:
{
return asmbyte.MOV_EDX_DWORDPTR_EDX_4;
asmchr.CALLsize += 2;
break;
}
case MOVEDXDWORDPTREBX:
{
return asmbyte.MOV_EDX_DWORDPTR_EBX_2;
asmchr.CALLsize += 2;
break;
}
case MOVEDXDWORDPTREBX_:
{
return asmbyte.MOV_EDX_DWORDPTR_EBX_4;
asmchr.CALLsize += 2;
break;
}
case MOVEDXDWORDPTRESP:
{
return asmbyte.MOV_EDX_DWORDPTR_ESP_2;
asmchr.CALLsize += 2;
break;
}
case MOVEDXDWORDPTRESP_:
{
return asmbyte.MOV_EDX_DWORDPTR_ESP_4;
asmchr.CALLsize += 2;
break;
}
case MOVEDXDWORDPTREBP:
{
return asmbyte.MOV_EDX_DWORDPTR_EBP_2;
asmchr.CALLsize += 2;
break;
}
case MOVEDXDWORDPTREBP_:
{
return asmbyte.MOV_EDX_DWORDPTR_EBP_4;
asmchr.CALLsize += 2;
break;
}
case MOVEDXDWORDPTRESI:
{
return asmbyte.MOV_EDX_DWORDPTR_ESI_2;
asmchr.CALLsize += 2;
break;
}
case MOVEDXDWORDPTRESI_:
{
return asmbyte.MOV_EDX_DWORDPTR_ESI_4;
asmchr.CALLsize += 2;
break;
}
case MOVEDXDWORDPTREDI:
{
return asmbyte.MOV_EDX_DWORDPTR_EDI_2;
asmchr.CALLsize += 2;
break;
}
case MOVEDXDWORDPTREDI_:
{
return asmbyte.MOV_EDX_DWORDPTR_EDI_4;
asmchr.CALLsize += 2;
break;
}
}
//mov EBX, dword ptr ds : [eax + 0x79]
{
case MOVEBXDWORDPTREAX:
{
return asmbyte.MOV_EBX_DWORDPTR_EAX_2;
asmchr.CALLsize += 2;
break;
}
case MOVEBXDWORDPTREAX_:
{
return asmbyte.MOV_EBX_DWORDPTR_EAX_4;
asmchr.CALLsize += 2;
break;
}
case MOVEBXDWORDPTRECX:
{
return asmbyte.MOV_EBX_DWORDPTR_ECX_2;
asmchr.CALLsize += 2;
break;
}
case MOVEBXDWORDPTRECX_:
{
return asmbyte.MOV_EBX_DWORDPTR_ECX_4;
asmchr.CALLsize += 2;
break;
}
case MOVEBXDWORDPTREDX:
{
return asmbyte.MOV_EBX_DWORDPTR_EDX_2;
asmchr.CALLsize += 2;
break;
}
case MOVEBXDWORDPTREDX_:
{
return asmbyte.MOV_EBX_DWORDPTR_EDX_4;
asmchr.CALLsize += 2;
break;
}
case MOVEBXDWORDPTREBX:
{
return asmbyte.MOV_EBX_DWORDPTR_EBX_2;
asmchr.CALLsize += 2;
break;
}
case MOVEBXDWORDPTREBX_:
{
return asmbyte.MOV_EBX_DWORDPTR_EBX_4;
asmchr.CALLsize += 2;
break;
}
case MOVEBXDWORDPTRESP:
{
return asmbyte.MOV_EBX_DWORDPTR_ESP_2;
asmchr.CALLsize += 2;
break;
}
case MOVEBXDWORDPTRESP_:
{
return asmbyte.MOV_EBX_DWORDPTR_ESP_4;
asmchr.CALLsize += 2;
break;
}
case MOVEBXDWORDPTREBP:
{
return asmbyte.MOV_EBX_DWORDPTR_EBP_2;
asmchr.CALLsize += 2;
break;
}
case MOVEBXDWORDPTREBP_:
{
return asmbyte.MOV_EBX_DWORDPTR_EBP_4;
asmchr.CALLsize += 2;
break;
}
case MOVEBXDWORDPTRESI:
{
return asmbyte.MOV_EBX_DWORDPTR_ESI_2;
asmchr.CALLsize += 2;
break;
}
case MOVEBXDWORDPTRESI_:
{
return asmbyte.MOV_EBX_DWORDPTR_ESI_4;
asmchr.CALLsize += 2;
break;
}
case MOVEBXDWORDPTREDI:
{
return asmbyte.MOV_EBX_DWORDPTR_EDI_2;
asmchr.CALLsize += 2;
break;
}
case MOVEBXDWORDPTREDI_:
{
return asmbyte.MOV_EBX_DWORDPTR_EDI_4;
asmchr.CALLsize += 2;
break;
}
}
//mov ESP, dword ptr ds : [eax + 0x79]
{
case MOVESPDWORDPTREAX:
{
return asmbyte.MOV_ESP_DWORDPTR_EAX_2;
asmchr.CALLsize += 2;
break;
}
case MOVESPDWORDPTREAX_:
{
return asmbyte.MOV_ESP_DWORDPTR_EAX_4;
asmchr.CALLsize += 2;
break;
}
case MOVESPDWORDPTRECX:
{
return asmbyte.MOV_ESP_DWORDPTR_ECX_2;
asmchr.CALLsize += 2;
break;
}
case MOVESPDWORDPTRECX_:
{
return asmbyte.MOV_ESP_DWORDPTR_ECX_4;
asmchr.CALLsize += 2;
break;
}
case MOVESPDWORDPTREDX:
{
return asmbyte.MOV_ESP_DWORDPTR_EDX_2;
asmchr.CALLsize += 2;
break;
}
case MOVESPDWORDPTREDX_:
{
return asmbyte.MOV_ESP_DWORDPTR_EDX_4;
asmchr.CALLsize += 2;
break;
}
case MOVESPDWORDPTREBX:
{
return asmbyte.MOV_ESP_DWORDPTR_EBX_2;
asmchr.CALLsize += 2;
break;
}
case MOVESPDWORDPTREBX_:
{
return asmbyte.MOV_ESP_DWORDPTR_EBX_4;
asmchr.CALLsize += 2;
break;
}
case MOVESPDWORDPTRESP:
{
return asmbyte.MOV_ESP_DWORDPTR_ESP_2;
asmchr.CALLsize += 2;
break;
}
case MOVESPDWORDPTRESP_:
{
return asmbyte.MOV_ESP_DWORDPTR_ESP_4;
asmchr.CALLsize += 2;
break;
}
case MOVESPDWORDPTREBP:
{
return asmbyte.MOV_ESP_DWORDPTR_EBP_2;
asmchr.CALLsize += 2;
break;
}
case MOVESPDWORDPTREBP_:
{
return asmbyte.MOV_ESP_DWORDPTR_EBP_4;
asmchr.CALLsize += 2;
break;
}
case MOVESPDWORDPTRESI:
{
return asmbyte.MOV_ESP_DWORDPTR_ESI_2;
asmchr.CALLsize += 2;
break;
}
case MOVESPDWORDPTRESI_:
{
return asmbyte.MOV_ESP_DWORDPTR_ESI_4;
asmchr.CALLsize += 2;
break;
}
case MOVESPDWORDPTREDI:
{
return asmbyte.MOV_ESP_DWORDPTR_EDI_2;
asmchr.CALLsize += 2;
break;
}
case MOVESPDWORDPTREDI_:
{
return asmbyte.MOV_ESP_DWORDPTR_EDI_4;
asmchr.CALLsize += 2;
break;
}
}
//mov EBP, dword ptr ds : [eax + 0x79]
{
case MOVEBPDWORDPTREAX:
{
return asmbyte.MOV_EBP_DWORDPTR_EAX_2;
asmchr.CALLsize += 2;
break;
}
case MOVEBPDWORDPTREAX_:
{
return asmbyte.MOV_EBP_DWORDPTR_EAX_4;
asmchr.CALLsize += 2;
break;
}
case MOVEBPDWORDPTRECX:
{
return asmbyte.MOV_EBP_DWORDPTR_ECX_2;
asmchr.CALLsize += 2;
break;
}
case MOVEBPDWORDPTRECX_:
{
return asmbyte.MOV_EBP_DWORDPTR_ECX_4;
asmchr.CALLsize += 2;
break;
}
case MOVEBPDWORDPTREDX:
{
return asmbyte.MOV_EBP_DWORDPTR_EDX_2;
asmchr.CALLsize += 2;
break;
}
case MOVEBPDWORDPTREDX_:
{
return asmbyte.MOV_EBP_DWORDPTR_EDX_4;
asmchr.CALLsize += 2;
break;
}
case MOVEBPDWORDPTREBX:
{
return asmbyte.MOV_EBP_DWORDPTR_EBX_2;
asmchr.CALLsize += 2;
break;
}
case MOVEBPDWORDPTREBX_:
{
return asmbyte.MOV_EBP_DWORDPTR_EBX_4;
asmchr.CALLsize += 2;
break;
}
case MOVEBPDWORDPTRESP:
{
return asmbyte.MOV_EBP_DWORDPTR_ESP_2;
asmchr.CALLsize += 2;
break;
}
case MOVEBPDWORDPTRESP_:
{
return asmbyte.MOV_EBP_DWORDPTR_ESP_4;
asmchr.CALLsize += 2;
break;
}
case MOVEBPDWORDPTREBP:
{
return asmbyte.MOV_EBP_DWORDPTR_EBP_2;
asmchr.CALLsize += 2;
break;
}
case MOVEBPDWORDPTREBP_:
{
return asmbyte.MOV_EBP_DWORDPTR_EBP_4;
asmchr.CALLsize += 2;
break;
}
case MOVEBPDWORDPTRESI:
{
return asmbyte.MOV_EBP_DWORDPTR_ESI_2;
asmchr.CALLsize += 2;
break;
}
case MOVEBPDWORDPTRESI_:
{
return asmbyte.MOV_EBP_DWORDPTR_ESI_4;
asmchr.CALLsize += 2;
break;
}
case MOVEBPDWORDPTREDI:
{
return asmbyte.MOV_EBP_DWORDPTR_EDI_2;
asmchr.CALLsize += 2;
break;
}
case MOVEBPDWORDPTREDI_:
{
return asmbyte.MOV_EBP_DWORDPTR_EDI_4;
asmchr.CALLsize += 2;
break;
}
}
//mov ESI, dword ptr ds : [eax + 0x79]
{
case MOVESIDWORDPTREAX:
{
return asmbyte.MOV_ESI_DWORDPTR_EAX_2;
asmchr.CALLsize += 2;
break;
}
case MOVESIDWORDPTREAX_:
{
return asmbyte.MOV_ESI_DWORDPTR_EAX_4;
asmchr.CALLsize += 2;
break;
}
case MOVESIDWORDPTRECX:
{
return asmbyte.MOV_ESI_DWORDPTR_ECX_2;
asmchr.CALLsize += 2;
break;
}
case MOVESIDWORDPTRECX_:
{
return asmbyte.MOV_ESI_DWORDPTR_ECX_4;
asmchr.CALLsize += 2;
break;
}
case MOVESIDWORDPTREDX:
{
return asmbyte.MOV_ESI_DWORDPTR_EDX_2;
asmchr.CALLsize += 2;
break;
}
case MOVESIDWORDPTREDX_:
{
return asmbyte.MOV_ESI_DWORDPTR_EDX_4;
asmchr.CALLsize += 2;
break;
}
case MOVESIDWORDPTREBX:
{
return asmbyte.MOV_ESI_DWORDPTR_EBX_2;
asmchr.CALLsize += 2;
break;
}
case MOVESIDWORDPTREBX_:
{
return asmbyte.MOV_ESI_DWORDPTR_EBX_4;
asmchr.CALLsize += 2;
break;
}
case MOVESIDWORDPTRESP:
{
return asmbyte.MOV_ESI_DWORDPTR_ESP_2;
asmchr.CALLsize += 2;
break;
}
case MOVESIDWORDPTRESP_:
{
return asmbyte.MOV_ESI_DWORDPTR_ESP_4;
asmchr.CALLsize += 2;
break;
}
case MOVESIDWORDPTREBP:
{
return asmbyte.MOV_ESI_DWORDPTR_EBP_2;
asmchr.CALLsize += 2;
break;
}
case MOVESIDWORDPTREBP_:
{
return asmbyte.MOV_ESI_DWORDPTR_EBP_4;
asmchr.CALLsize += 2;
break;
}
case MOVESIDWORDPTRESI:
{
return asmbyte.MOV_ESI_DWORDPTR_ESI_2;
asmchr.CALLsize += 2;
break;
}
case MOVESIDWORDPTRESI_:
{
return asmbyte.MOV_ESI_DWORDPTR_ESI_4;
asmchr.CALLsize += 2;
break;
}
case MOVESIDWORDPTREDI:
{
return asmbyte.MOV_ESI_DWORDPTR_EDI_2;
asmchr.CALLsize += 2;
break;
}
case MOVESIDWORDPTREDI_:
{
return asmbyte.MOV_ESI_DWORDPTR_EDI_4;
asmchr.CALLsize += 2;
break;
}
}
//mov EDI, dword ptr ds : [eax + 0x79]
{
case MOVEDIDWORDPTREAX:
{
return asmbyte.MOV_EDI_DWORDPTR_EAX_2;
asmchr.CALLsize += 2;
break;
}
case MOVEDIDWORDPTREAX_:
{
return asmbyte.MOV_EDI_DWORDPTR_EAX_4;
asmchr.CALLsize += 2;
break;
}
case MOVEDIDWORDPTRECX:
{
return asmbyte.MOV_EDI_DWORDPTR_ECX_2;
asmchr.CALLsize += 2;
break;
}
case MOVEDIDWORDPTRECX_:
{
return asmbyte.MOV_EDI_DWORDPTR_ECX_4;
asmchr.CALLsize += 2;
break;
}
case MOVEDIDWORDPTREDX:
{
return asmbyte.MOV_EDI_DWORDPTR_EDX_2;
asmchr.CALLsize += 2;
break;
}
case MOVEDIDWORDPTREDX_:
{
return asmbyte.MOV_EDI_DWORDPTR_EDX_4;
asmchr.CALLsize += 2;
break;
}
case MOVEDIDWORDPTREBX:
{
return asmbyte.MOV_EDI_DWORDPTR_EBX_2;
asmchr.CALLsize += 2;
break;
}
case MOVEDIDWORDPTREBX_:
{
return asmbyte.MOV_EDI_DWORDPTR_EBX_4;
asmchr.CALLsize += 2;
break;
}
case MOVEDIDWORDPTRESP:
{
return asmbyte.MOV_EDI_DWORDPTR_ESP_2;
asmchr.CALLsize += 2;
break;
}
case MOVEDIDWORDPTRESP_:
{
return asmbyte.MOV_EDI_DWORDPTR_ESP_4;
asmchr.CALLsize += 2;
break;
}
case MOVEDIDWORDPTREBP:
{
return asmbyte.MOV_EDI_DWORDPTR_EBP_2;
asmchr.CALLsize += 2;
break;
}
case MOVEDIDWORDPTREBP_:
{
return asmbyte.MOV_EDI_DWORDPTR_EBP_4;
asmchr.CALLsize += 2;
break;
}
case MOVEDIDWORDPTRESI:
{
return asmbyte.MOV_EDI_DWORDPTR_ESI_2;
asmchr.CALLsize += 2;
break;
}
case MOVEDIDWORDPTRESI_:
{
return asmbyte.MOV_EDI_DWORDPTR_ESI_4;
asmchr.CALLsize += 2;
break;
}
case MOVEDIDWORDPTREDI:
{
return asmbyte.MOV_EDI_DWORDPTR_EDI_2;
asmchr.CALLsize += 2;
break;
}
case MOVEDIDWORDPTREDI_:
{
return asmbyte.MOV_EDI_DWORDPTR_EDI_4;
asmchr.CALLsize += 2;
break;
}
}
}
//mov EAX, dword ptr ds : [eax + 0x79]
{
{
case LEAEAXDWORDPTREAX2:
{
return asmbyte.LEA_EAX_DWORDPTR_EAX_2;
asmchr.CALLsize += 2;
break;
}
case LEAEAXDWORDPTREAX4:
{
return asmbyte.LEA_EAX_DWORDPTR_EAX_4;
asmchr.CALLsize += 2;
break;
}
case LEAEAXDWORDPTRECX2:
{
return asmbyte.LEA_EAX_DWORDPTR_ECX_2;
asmchr.CALLsize += 2;
break;
}
case LEAEAXDWORDPTRECX4:
{
return asmbyte.LEA_EAX_DWORDPTR_ECX_4;
asmchr.CALLsize += 2;
break;
}
case LEAEAXDWORDPTREDX2:
{
return asmbyte.LEA_EAX_DWORDPTR_EDX_2;
asmchr.CALLsize += 2;
break;
}
case LEAEAXDWORDPTREDX4:
{
return asmbyte.LEA_EAX_DWORDPTR_EDX_4;
asmchr.CALLsize += 2;
break;
}
case LEAEAXDWORDPTREBX2:
{
return asmbyte.LEA_EAX_DWORDPTR_EBX_2;
asmchr.CALLsize += 2;
break;
}
case LEAEAXDWORDPTREBX4:
{
return asmbyte.LEA_EAX_DWORDPTR_EBX_4;
asmchr.CALLsize += 2;
break;
}
case LEAEAXDWORDPTRESP2:
{
return asmbyte.LEA_EAX_DWORDPTR_ESP_2;
asmchr.CALLsize += 2;
break;
}
case LEAEAXDWORDPTRESP4:
{
return asmbyte.LEA_EAX_DWORDPTR_ESP_4;
asmchr.CALLsize += 2;
break;
}
case LEAEAXDWORDPTREBP2:
{
return asmbyte.LEA_EAX_DWORDPTR_EBP_2;
asmchr.CALLsize += 2;
break;
}
case LEAEAXDWORDPTREBP4:
{
return asmbyte.LEA_EAX_DWORDPTR_EBP_4;
asmchr.CALLsize += 2;
break;
}
case LEAEAXDWORDPTRESI2:
{
return asmbyte.LEA_EAX_DWORDPTR_ESI_2;
asmchr.CALLsize += 2;
break;
}
case LEAEAXDWORDPTRESI4:
{
return asmbyte.LEA_EAX_DWORDPTR_ESI_4;
asmchr.CALLsize += 2;
break;
}
case LEAEAXDWORDPTREDI2:
{
return asmbyte.LEA_EAX_DWORDPTR_EDI_2;
asmchr.CALLsize += 2;
break;
}
case LEAEAXDWORDPTREDI4:
{
return asmbyte.LEA_EAX_DWORDPTR_EDI_4;
asmchr.CALLsize += 2;
break;
}
}
//mov ECX, dword ptr ds : [eax + 0x79]
{
case LEAECXDWORDPTREAX2:
{
return asmbyte.LEA_ECX_DWORDPTR_EAX_2;
asmchr.CALLsize += 2;
break;
}
case LEAECXDWORDPTREAX4:
{
return asmbyte.LEA_ECX_DWORDPTR_EAX_4;
asmchr.CALLsize += 2;
break;
}
case LEAECXDWORDPTRECX2:
{
return asmbyte.LEA_ECX_DWORDPTR_ECX_2;
asmchr.CALLsize += 2;
break;
}
case LEAECXDWORDPTRECX4:
{
return asmbyte.LEA_ECX_DWORDPTR_ECX_4;
asmchr.CALLsize += 2;
break;
}
case LEAECXDWORDPTREDX2:
{
return asmbyte.LEA_ECX_DWORDPTR_EDX_2;
asmchr.CALLsize += 2;
break;
}
case LEAECXDWORDPTREDX4:
{
return asmbyte.LEA_ECX_DWORDPTR_EDX_4;
asmchr.CALLsize += 2;
break;
}
case LEAECXDWORDPTREBX2:
{
return asmbyte.LEA_ECX_DWORDPTR_EBX_2;
asmchr.CALLsize += 2;
break;
}
case LEAECXDWORDPTREBX4:
{
return asmbyte.LEA_ECX_DWORDPTR_EBX_4;
asmchr.CALLsize += 2;
break;
}
case LEAECXDWORDPTRESP2:
{
return asmbyte.LEA_ECX_DWORDPTR_ESP_2;
asmchr.CALLsize += 2;
break;
}
case LEAECXDWORDPTRESP4:
{
return asmbyte.LEA_ECX_DWORDPTR_ESP_4;
asmchr.CALLsize += 2;
break;
}
case LEAECXDWORDPTREBP2:
{
return asmbyte.LEA_ECX_DWORDPTR_EBP_2;
asmchr.CALLsize += 2;
break;
}
case LEAECXDWORDPTREBP4:
{
return asmbyte.LEA_ECX_DWORDPTR_EBP_4;
asmchr.CALLsize += 2;
break;
}
case LEAECXDWORDPTRESI2:
{
return asmbyte.LEA_ECX_DWORDPTR_ESI_2;
asmchr.CALLsize += 2;
break;
}
case LEAECXDWORDPTRESI4:
{
return asmbyte.LEA_ECX_DWORDPTR_ESI_4;
asmchr.CALLsize += 2;
break;
}
case LEAECXDWORDPTREDI2:
{
return asmbyte.LEA_ECX_DWORDPTR_EDI_2;
asmchr.CALLsize += 2;
break;
}
case LEAECXDWORDPTREDI4:
{
return asmbyte.LEA_ECX_DWORDPTR_EDI_4;
asmchr.CALLsize += 2;
break;
}
}
//mov EDX, dword ptr ds : [eax + 0x79]
{
case LEAEDXDWORDPTREAX2:
{
return asmbyte.LEA_EDX_DWORDPTR_EAX_2;
asmchr.CALLsize += 2;
break;
}
case LEAEDXDWORDPTREAX4:
{
return asmbyte.LEA_EDX_DWORDPTR_EAX_4;
asmchr.CALLsize += 2;
break;
}
case LEAEDXDWORDPTRECX2:
{
return asmbyte.LEA_EDX_DWORDPTR_ECX_2;
asmchr.CALLsize += 2;
break;
}
case LEAEDXDWORDPTRECX4:
{
return asmbyte.LEA_EDX_DWORDPTR_ECX_4;
asmchr.CALLsize += 2;
break;
}
case LEAEDXDWORDPTREDX2:
{
return asmbyte.LEA_EDX_DWORDPTR_EDX_2;
asmchr.CALLsize += 2;
break;
}
case LEAEDXDWORDPTREDX4:
{
return asmbyte.LEA_EDX_DWORDPTR_EDX_4;
asmchr.CALLsize += 2;
break;
}
case LEAEDXDWORDPTREBX2:
{
return asmbyte.LEA_EDX_DWORDPTR_EBX_2;
asmchr.CALLsize += 2;
break;
}
case LEAEDXDWORDPTREBX4:
{
return asmbyte.LEA_EDX_DWORDPTR_EBX_4;
asmchr.CALLsize += 2;
break;
}
case LEAEDXDWORDPTRESP2:
{
return asmbyte.LEA_EDX_DWORDPTR_ESP_2;
asmchr.CALLsize += 2;
break;
}
case LEAEDXDWORDPTRESP4:
{
return asmbyte.LEA_EDX_DWORDPTR_ESP_4;
asmchr.CALLsize += 2;
break;
}
case LEAEDXDWORDPTREBP2:
{
return asmbyte.LEA_EDX_DWORDPTR_EBP_2;
asmchr.CALLsize += 2;
break;
}
case LEAEDXDWORDPTREBP4:
{
return asmbyte.LEA_EDX_DWORDPTR_EBP_4;
asmchr.CALLsize += 2;
break;
}
case LEAEDXDWORDPTRESI2:
{
return asmbyte.LEA_EDX_DWORDPTR_ESI_2;
asmchr.CALLsize += 2;
break;
}
case LEAEDXDWORDPTRESI4:
{
return asmbyte.LEA_EDX_DWORDPTR_ESI_4;
asmchr.CALLsize += 2;
break;
}
case LEAEDXDWORDPTREDI2:
{
return asmbyte.LEA_EDX_DWORDPTR_EDI_2;
asmchr.CALLsize += 2;
break;
}
case LEAEDXDWORDPTREDI4:
{
return asmbyte.LEA_EDX_DWORDPTR_EDI_4;
asmchr.CALLsize += 2;
break;
}
}
//mov EBX, dword ptr ds : [eax + 0x79]
{
case LEAEBXDWORDPTREAX2:
{
return asmbyte.LEA_EBX_DWORDPTR_EAX_2;
asmchr.CALLsize += 2;
break;
}
case LEAEBXDWORDPTREAX4:
{
return asmbyte.LEA_EBX_DWORDPTR_EAX_4;
asmchr.CALLsize += 2;
break;
}
case LEAEBXDWORDPTRECX2:
{
return asmbyte.LEA_EBX_DWORDPTR_ECX_2;
asmchr.CALLsize += 2;
break;
}
case LEAEBXDWORDPTRECX4:
{
return asmbyte.LEA_EBX_DWORDPTR_ECX_4;
asmchr.CALLsize += 2;
break;
}
case LEAEBXDWORDPTREDX2:
{
return asmbyte.LEA_EBX_DWORDPTR_EDX_2;
asmchr.CALLsize += 2;
break;
}
case LEAEBXDWORDPTREDX4:
{
return asmbyte.LEA_EBX_DWORDPTR_EDX_4;
asmchr.CALLsize += 2;
break;
}
case LEAEBXDWORDPTREBX2:
{
return asmbyte.LEA_EBX_DWORDPTR_EBX_2;
asmchr.CALLsize += 2;
break;
}
case LEAEBXDWORDPTREBX4:
{
return asmbyte.LEA_EBX_DWORDPTR_EBX_4;
asmchr.CALLsize += 2;
break;
}
case LEAEBXDWORDPTRESP2:
{
return asmbyte.LEA_EBX_DWORDPTR_ESP_2;
asmchr.CALLsize += 2;
break;
}
case LEAEBXDWORDPTRESP4:
{
return asmbyte.LEA_EBX_DWORDPTR_ESP_4;
asmchr.CALLsize += 2;
break;
}
case LEAEBXDWORDPTREBP2:
{
return asmbyte.LEA_EBX_DWORDPTR_EBP_2;
asmchr.CALLsize += 2;
break;
}
case LEAEBXDWORDPTREBP4:
{
return asmbyte.LEA_EBX_DWORDPTR_EBP_4;
asmchr.CALLsize += 2;
break;
}
case LEAEBXDWORDPTRESI2:
{
return asmbyte.LEA_EBX_DWORDPTR_ESI_2;
asmchr.CALLsize += 2;
break;
}
case LEAEBXDWORDPTRESI4:
{
return asmbyte.LEA_EBX_DWORDPTR_ESI_4;
asmchr.CALLsize += 2;
break;
}
case LEAEBXDWORDPTREDI2:
{
return asmbyte.LEA_EBX_DWORDPTR_EDI_2;
asmchr.CALLsize += 2;
break;
}
case LEAEBXDWORDPTREDI4:
{
return asmbyte.LEA_EBX_DWORDPTR_EDI_4;
asmchr.CALLsize += 2;
break;
}
}
//mov ESP, dword ptr ds : [eax + 0x79]
{
case LEAESPDWORDPTREAX2:
{
return asmbyte.LEA_ESP_DWORDPTR_EAX_2;
asmchr.CALLsize += 2;
break;
}
case LEAESPDWORDPTREAX4:
{
return asmbyte.LEA_ESP_DWORDPTR_EAX_4;
asmchr.CALLsize += 2;
break;
}
case LEAESPDWORDPTRECX2:
{
return asmbyte.LEA_ESP_DWORDPTR_ECX_2;
asmchr.CALLsize += 2;
break;
}
case LEAESPDWORDPTRECX4:
{
return asmbyte.LEA_ESP_DWORDPTR_ECX_4;
asmchr.CALLsize += 2;
break;
}
case LEAESPDWORDPTREDX2:
{
return asmbyte.LEA_ESP_DWORDPTR_EDX_2;
asmchr.CALLsize += 2;
break;
}
case LEAESPDWORDPTREDX4:
{
return asmbyte.LEA_ESP_DWORDPTR_EDX_4;
asmchr.CALLsize += 2;
break;
}
case LEAESPDWORDPTREBX2:
{
return asmbyte.LEA_ESP_DWORDPTR_EBX_2;
asmchr.CALLsize += 2;
break;
}
case LEAESPDWORDPTREBX4:
{
return asmbyte.LEA_ESP_DWORDPTR_EBX_4;
asmchr.CALLsize += 2;
break;
}
case LEAESPDWORDPTRESP2:
{
return asmbyte.LEA_ESP_DWORDPTR_ESP_2;
asmchr.CALLsize += 2;
break;
}
case LEAESPDWORDPTRESP4:
{
return asmbyte.LEA_ESP_DWORDPTR_ESP_4;
asmchr.CALLsize += 2;
break;
}
case LEAESPDWORDPTREBP2:
{
return asmbyte.LEA_ESP_DWORDPTR_EBP_2;
asmchr.CALLsize += 2;
break;
}
case LEAESPDWORDPTREBP4:
{
return asmbyte.LEA_ESP_DWORDPTR_EBP_4;
asmchr.CALLsize += 2;
break;
}
case LEAESPDWORDPTRESI2:
{
return asmbyte.LEA_ESP_DWORDPTR_ESI_2;
asmchr.CALLsize += 2;
break;
}
case LEAESPDWORDPTRESI4:
{
return asmbyte.LEA_ESP_DWORDPTR_ESI_4;
asmchr.CALLsize += 2;
break;
}
case LEAESPDWORDPTREDI2:
{
return asmbyte.LEA_ESP_DWORDPTR_EDI_2;
asmchr.CALLsize += 2;
break;
}
case LEAESPDWORDPTREDI4:
{
return asmbyte.LEA_ESP_DWORDPTR_EDI_4;
asmchr.CALLsize += 2;
break;
}
}
//mov EBP, dword ptr ds : [eax + 0x79]
{
case LEAEBPDWORDPTREAX2:
{
return asmbyte.LEA_EBP_DWORDPTR_EAX_2;
asmchr.CALLsize += 2;
break;
}
case LEAEBPDWORDPTREAX4:
{
return asmbyte.LEA_EBP_DWORDPTR_EAX_4;
asmchr.CALLsize += 2;
break;
}
case LEAEBPDWORDPTRECX2:
{
return asmbyte.LEA_EBP_DWORDPTR_ECX_2;
asmchr.CALLsize += 2;
break;
}
case LEAEBPDWORDPTRECX4:
{
return asmbyte.LEA_EBP_DWORDPTR_ECX_4;
asmchr.CALLsize += 2;
break;
}
case LEAEBPDWORDPTREDX2:
{
return asmbyte.LEA_EBP_DWORDPTR_EDX_2;
asmchr.CALLsize += 2;
break;
}
case LEAEBPDWORDPTREDX4:
{
return asmbyte.LEA_EBP_DWORDPTR_EDX_4;
asmchr.CALLsize += 2;
break;
}
case LEAEBPDWORDPTREBX2:
{
return asmbyte.LEA_EBP_DWORDPTR_EBX_2;
asmchr.CALLsize += 2;
break;
}
case LEAEBPDWORDPTREBX4:
{
return asmbyte.LEA_EBP_DWORDPTR_EBX_4;
asmchr.CALLsize += 2;
break;
}
case LEAEBPDWORDPTRESP2:
{
return asmbyte.LEA_EBP_DWORDPTR_ESP_2;
asmchr.CALLsize += 2;
break;
}
case LEAEBPDWORDPTRESP4:
{
return asmbyte.LEA_EBP_DWORDPTR_ESP_4;
asmchr.CALLsize += 2;
break;
}
case LEAEBPDWORDPTREBP2:
{
return asmbyte.LEA_EBP_DWORDPTR_EBP_2;
asmchr.CALLsize += 2;
break;
}
case LEAEBPDWORDPTREBP4:
{
return asmbyte.LEA_EBP_DWORDPTR_EBP_4;
asmchr.CALLsize += 2;
break;
}
case LEAEBPDWORDPTRESI2:
{
return asmbyte.LEA_EBP_DWORDPTR_ESI_2;
asmchr.CALLsize += 2;
break;
}
case LEAEBPDWORDPTRESI4:
{
return asmbyte.LEA_EBP_DWORDPTR_ESI_4;
asmchr.CALLsize += 2;
break;
}
case LEAEBPDWORDPTREDI2:
{
return asmbyte.LEA_EBP_DWORDPTR_EDI_2;
asmchr.CALLsize += 2;
break;
}
case LEAEBPDWORDPTREDI4:
{
return asmbyte.LEA_EBP_DWORDPTR_EDI_4;
asmchr.CALLsize += 2;
break;
}
}
//mov ESI, dword ptr ds : [eax + 0x79]
{
case LEAESIDWORDPTREAX2:
{
return asmbyte.LEA_ESI_DWORDPTR_EAX_2;
asmchr.CALLsize += 2;
break;
}
case LEAESIDWORDPTREAX4:
{
return asmbyte.LEA_ESI_DWORDPTR_EAX_4;
asmchr.CALLsize += 2;
break;
}
case LEAESIDWORDPTRECX2:
{
return asmbyte.LEA_ESI_DWORDPTR_ECX_2;
asmchr.CALLsize += 2;
break;
}
case LEAESIDWORDPTRECX4:
{
return asmbyte.LEA_ESI_DWORDPTR_ECX_4;
asmchr.CALLsize += 2;
break;
}
case LEAESIDWORDPTREDX2:
{
return asmbyte.LEA_ESI_DWORDPTR_EDX_2;
asmchr.CALLsize += 2;
break;
}
case LEAESIDWORDPTREDX4:
{
return asmbyte.LEA_ESI_DWORDPTR_EDX_4;
asmchr.CALLsize += 2;
break;
}
case LEAESIDWORDPTREBX2:
{
return asmbyte.LEA_ESI_DWORDPTR_EBX_2;
asmchr.CALLsize += 2;
break;
}
case LEAESIDWORDPTREBX4:
{
return asmbyte.LEA_ESI_DWORDPTR_EBX_4;
asmchr.CALLsize += 2;
break;
}
case LEAESIDWORDPTRESP2:
{
return asmbyte.LEA_ESI_DWORDPTR_ESP_2;
asmchr.CALLsize += 2;
break;
}
case LEAESIDWORDPTRESP4:
{
return asmbyte.LEA_ESI_DWORDPTR_ESP_4;
asmchr.CALLsize += 2;
break;
}
case LEAESIDWORDPTREBP2:
{
return asmbyte.LEA_ESI_DWORDPTR_EBP_2;
asmchr.CALLsize += 2;
break;
}
case LEAESIDWORDPTREBP4:
{
return asmbyte.LEA_ESI_DWORDPTR_EBP_4;
asmchr.CALLsize += 2;
break;
}
case LEAESIDWORDPTRESI2:
{
return asmbyte.LEA_ESI_DWORDPTR_ESI_2;
asmchr.CALLsize += 2;
break;
}
case LEAESIDWORDPTRESI4:
{
return asmbyte.LEA_ESI_DWORDPTR_ESI_4;
asmchr.CALLsize += 2;
break;
}
case LEAESIDWORDPTREDI2:
{
return asmbyte.LEA_ESI_DWORDPTR_EDI_2;
asmchr.CALLsize += 2;
break;
}
case LEAESIDWORDPTREDI4:
{
return asmbyte.LEA_ESI_DWORDPTR_EDI_4;
asmchr.CALLsize += 2;
break;
}
}
//mov EDI, dword ptr ds : [eax + 0x79]
{
case LEAEDIDWORDPTREAX2:
{
return asmbyte.LEA_EDI_DWORDPTR_EAX_2;
asmchr.CALLsize += 2;
break;
}
case LEAEDIDWORDPTREAX4:
{
return asmbyte.LEA_EDI_DWORDPTR_EAX_4;
asmchr.CALLsize += 2;
break;
}
case LEAEDIDWORDPTRECX2:
{
return asmbyte.LEA_EDI_DWORDPTR_ECX_2;
asmchr.CALLsize += 2;
break;
}
case LEAEDIDWORDPTRECX4:
{
return asmbyte.LEA_EDI_DWORDPTR_ECX_4;
asmchr.CALLsize += 2;
break;
}
case LEAEDIDWORDPTREDX2:
{
return asmbyte.LEA_EDI_DWORDPTR_EDX_2;
asmchr.CALLsize += 2;
break;
}
case LEAEDIDWORDPTREDX4:
{
return asmbyte.LEA_EDI_DWORDPTR_EDX_4;
asmchr.CALLsize += 2;
break;
}
case LEAEDIDWORDPTREBX2:
{
return asmbyte.LEA_EDI_DWORDPTR_EBX_2;
asmchr.CALLsize += 2;
break;
}
case LEAEDIDWORDPTREBX4:
{
return asmbyte.LEA_EDI_DWORDPTR_EBX_4;
asmchr.CALLsize += 2;
break;
}
case LEAEDIDWORDPTRESP2:
{
return asmbyte.LEA_EDI_DWORDPTR_ESP_2;
asmchr.CALLsize += 2;
break;
}
case LEAEDIDWORDPTRESP4:
{
return asmbyte.LEA_EDI_DWORDPTR_ESP_4;
asmchr.CALLsize += 2;
break;
}
case LEAEDIDWORDPTREBP2:
{
return asmbyte.LEA_EDI_DWORDPTR_EBP_2;
asmchr.CALLsize += 2;
break;
}
case LEAEDIDWORDPTREBP4:
{
return asmbyte.LEA_EDI_DWORDPTR_EBP_4;
asmchr.CALLsize += 2;
break;
}
case LEAEDIDWORDPTRESI2:
{
return asmbyte.LEA_EDI_DWORDPTR_ESI_2;
asmchr.CALLsize += 2;
break;
}
case LEAEDIDWORDPTRESI4:
{
return asmbyte.LEA_EDI_DWORDPTR_ESI_4;
asmchr.CALLsize += 2;
break;
}
case LEAEDIDWORDPTREDI2:
{
return asmbyte.LEA_EDI_DWORDPTR_EDI_2;
asmchr.CALLsize += 2;
break;
}
case LEAEDIDWORDPTREDI4:
{
return asmbyte.LEA_EDI_DWORDPTR_EDI_4;
asmchr.CALLsize += 2;
break;
}
}
//mov EDI, dword ptr ds : [eax + 0x79]
{
case LEAEAXDWORDPTR:
{
return asmbyte.LEA_EAX_DWORDPTR_C;
asmchr.CALLsize += 2;
break;
}
case LEAECXDWORDPTR:
{
return asmbyte.LEA_ECX_DWORDPTR_C;
asmchr.CALLsize += 2;
break;
}
case LEAEDXDWORDPTR:
{
return asmbyte.LEA_EDX_DWORDPTR_C;
asmchr.CALLsize += 2;
break;
}
case LEAEBXDWORDPTR:
{
return asmbyte.LEA_EBX_DWORDPTR_C;
asmchr.CALLsize += 2;
break;
}
case LEAESPDWORDPTR:
{
return asmbyte.LEA_ESP_DWORDPTR_C;
asmchr.CALLsize += 2;
break;
}
case LEAEBPDWORDPTR:
{
return asmbyte.LEA_EBP_DWORDPTR_C;
asmchr.CALLsize += 2;
break;
}
case LEAESIDWORDPTR:
{
return asmbyte.LEA_ESI_DWORDPTR_C;
asmchr.CALLsize += 2;
break;
}
case LEAEDIDWORDPTR:
{
return asmbyte.LEA_EDI_DWORDPTR_C;
asmchr.CALLsize += 2;
break;
}
}
}
default:
break;
}
return "0";
}
CString CAch = "", CA0X = "";
BOOL OXPD(CString str)
{
if (str.GetLength() <= 2) { return FALSE; }
if (str == "eax") { return TRUE; }
if (str == "ecx") { return TRUE; }
if (str == "edx") { return TRUE; }
if (str == "ebx") { return TRUE; }
if (str == "esp") { return TRUE; }
if (str == "ebp") { return TRUE; }
if (str == "esi") { return TRUE; }
if (str == "edi") { return TRUE; }
if (str == "retn") { return TRUE; }
if (str == "pushad") { return TRUE; }
if (str == "popad") { return TRUE; }
if (str == "push")
{
return FALSE;
}
if (str == "moveax") { CAch = "moveaxc";return FALSE; }
if (str == "movecx") { CAch = "movecxc";return FALSE; }
if (str == "movedx") { CAch = "movedxc";return FALSE; }
if (str == "movebx") { CAch = "movebxc";return FALSE; }
if (str == "movesp") { CAch = "movespc";return FALSE; }
if (str == "movebp") { CAch = "movebpc";return FALSE; }
if (str == "movesi") { CAch = "movesic";return FALSE; }
if (str == "movedi") { CAch = "movedic";return FALSE; }
return FALSE;
}
//判断是否带参数
BOOL amssipd(CString str)
{
CAch = "";
CA0X = "";
int strL = str.GetLength();
CString str1, str2;
int strlock = 0;
for (int i = 0; i < strL; i++)
{
str1 = str.Mid(strL-(i+1), 1);
if (str1==","|| str1 == " "|| str1 == "\0"&& strlock == 1)
{
strlock = 2;
}
else if(str1 != "," && str1 != " " && str1 != "\0"&&(strlock == 1|| strlock == 0))
{
strlock = 1;
CA0X = str1+CA0X;
str1 = "";
}
else if (str1 != "," && str1 != " " && str1 != "\0" && strlock == 2)
{
strlock = 2;
CAch = str1 + CAch;
str1 = "";
}
}
if (OXPD(CA0X))
{
CAch += CA0X;
CA0X = "";
return TRUE;
}
if (CAch=="")
{
CAch = CA0X;
return FALSE;
}
if (CAch == "retn")
{
CAch = "retn4";
return FALSE;
}
if (OXPD(CAch)==TRUE)
{
CAch = "0";
}
return FALSE;
}
CString CSPD(CString sstr)
{
if (sstr == "moveax") { sstr = "moveaxc"; }
if (sstr == "movecx") { sstr = "movecxc"; }
if (sstr == "movedx") { sstr = "movedxc"; }
if (sstr == "movebx") { sstr = "movebxc"; }
if (sstr == "movesp") { sstr = "movespc"; }
if (sstr == "movebp") { sstr = "movebpc"; }
if (sstr == "movesi") { sstr = "movesic"; }
if (sstr == "movedi") { sstr = "movedic"; }
return sstr;
}
//判断是否带参数取地址
BOOL amssipd1(CString sstr)
{
CAch = "", CA0X = "";
int strL = sstr.GetLength();
CString str, str1;
int strlock = 0;
for (int i = 0; i < strL; i++)
{
str1 = sstr.Mid(strL-(i+1),1);
if (strlock == 0 && str1!=" " && str1 != "\0"
&& str1 != "\r" && str1 != "\n")
{strlock = 1;}//取参数
if (strlock == 1 && (str1 == " " || str1 == ","
|| str1 == "\0" || str1 == "+" || str1 == "[") )
{
strlock = 2;
}//取功能
if (strlock == 1 && str1 != " " && str1 != "\0"
&& str1 != "\r" && str1 != "\n" && str1 != ","
&& str1 != "]" && str1 != "[" && str1 != "+")
{
CA0X = str1 + CA0X;
str1 = "";
}
if (strlock == 2 && str1 != " " && str1 != "\0"
&& str1 != "\r" && str1 != "\n" && str1 != ","
&& str1 != "]" && str1 != "[")
{
CAch = str1+ CAch;
str1 = "";
}
}
if (CAch.GetLength()<4|| CA0X.GetLength() < 0)
{
return FALSE;
}
int b = CsAsmToint(CSPD(CAch), CA0X);
if (b>=77)
{
CAch = IntToASBy(b);
if (CAch!="0")
{
asmchr.chCALL += CAch;
if (OXGSH(CA0X, b))
{
return TRUE;
}
return FALSE;
}
return FALSE;
}
if (b == 1)
{
asmchr.chCALL+=IntToASBy(MOVESIC);
if (OXGSH(CA0X, MOVESIC))
{
asmchr.chCALL += IntToASBy(CALLESI);
return TRUE;
}
return FALSE;
}
return FALSE;
}
/*汇编参数格式化并添加*/
BOOL OXGSH(CString Dem,int lx)
{
int strL = Dem.GetLength();
if (Dem.Mid(0,2)=="0x")
{
Dem = Dem.Mid(2, strL-2);
}
strL = Dem.GetLength();
if (strL>8)
{
return FALSE;
}
int y = 0;
CString str, str1, str2;
int strlock = 0;
for (int i = 0; i < Dem.GetLength(); i++)
{
str1 = Dem.Mid(i,1);
//下面的函数是十六进制到十进制
if (Hex_Conversion_Dec1(str1)>=1&& strlock == 0)
{
strlock = 1;
}
if (strlock == 1)
{
str += str1;
}
}
if (str=="")
{
str="00";
}
if (str.GetLength()==1)
{
str = "0"+str;
}
strL = str.GetLength();
y = strL % 2;
if (y == 1)
{
strL = strL / 2 + 1;
}
else
{
strL = strL / 2;
}
Dem = str;
str = "";
for (int i = 0; i < strL; i++)
{
if (strL ==1)
{
str1 = Dem;
Dem = "";
}
y = Dem.GetLength();
if (y>=2)
{
str1 = Dem.Mid(y-2, 2);
Dem = Dem.Mid(0, y - 2);
}
else if(y==1)
{
str1 = "0"+Dem.Mid(0, 1);
Dem = "";
}
if (str1.GetLength()==1)
{
str1 = "0" + str1;
}
str = str+str1 ;
}
if (lx==SUBESP|| lx == ADDESP || lx == RETN4 )
{
if(lx== RETN4)
{
y = 4 - str.GetLength();
for (int i = 0; i < y; i++)
{
str = str + "0";
}
asmchr.chCALL += str;
return TRUE;
}
else
{
y = Hex_Conversion_Dec1(str.GetBuffer());
str.ReleaseBuffer();
if (y >= 0x80)
{
y = 8 - str.GetLength();
for (int i = 0; i < y; i++)
{
str = str + "0";
}
asmchr.chCALL += str;
return TRUE;
}
else if (y <= 0x79)
{
if (str.GetLength()==1)
{
str = str + "0";
}
asmchr.chCALL += str;
return TRUE;
}
}
}
else
{
if (lx>=100)
{
y = Hex_Conversion_Dec1(str.GetBuffer());
str.ReleaseBuffer();
if (y>=0x80)
{
y = 8 - str.GetLength();
for (int i = 0; i < y; i++)
{
str = str + "0";
}
asmchr.chCALL += str;
return TRUE;
}
else if (y <= 0x79)
{
y = 2 - str.GetLength();
for (int i = 0; i < y; i++)
{
str = str + "0";
}
asmchr.chCALL += str;
return TRUE;
}
}
}
if (lx >= 77||lx<=84)
{
y = 8 - str.GetLength();
for (int i = 0; i < y; i++)
{
str = str + "0";
}
asmchr.chCALL += str;
return TRUE;
}
return FALSE;
}
/*汇编代码头尾判断*/
CString HBTWPD(CString Deo)
{
CString HBzT = "", HBzW = "",ret="", csCALL = "";
CString str,str1,str2;
int caL = 0;
QWORD strL = Deo.GetLength();
for (QWORD i = 0; i < 4; i++)
{
{
if (i == 0)
{
caL = pusha.GetLength();
str = pusha;
}
else if (i == 1)
{
caL = popa.GetLength();
str = popa;
}
else if (i == 2)
{
caL = rcall.GetLength();
str = rcall;
}
else if (i == 3)
{
caL = retz.GetLength();
str = retz;
}
}
for (QWORD j = 0; j < strL; j++)
{
str1 = Deo.Mid(j, 1);
if (str1 != "\0" && str1 != "\r" && str1 != "\n" && str1 != ","
&& str1 != " " && str1 != "+" && str1 != "[" && str1 != "]"
&& str1 != "-")
{
str1 = Deo.Mid(j, caL);
}
switch (i)
{
case 0:
{
if (str1 == str)
{
HBzT = str1;
break;
}
break;
}
case 1:
{
if (str1 == str)
{
HBzW = str1;
break;
}
break;
}
case 2:
{
if (str1 == str)
{
csCALL = str1;
break;
}
break;
}
case 3:
{
if (str1 == str)
{
ret = str1;
break;
}
break;
}
default:
break;
}
}
}
if (csCALL=="")
{
return "0";
}
if (HBzT=="")
{
Deo = pusha + "\r\n" + Deo;
}
if (HBzW == ""&&ret=="")
{
Deo = Deo + "\r\n" + popa + "\r\n"+retz;
return Deo;
}
else if (HBzW != "" && ret == "")
{
Deo = Deo + "\r\n" + retz;
return Deo;
}
else if (HBzW != "" && ret != "")
{
return Deo;
}
else if (HBzW == "" && ret != "")
{
strL = Deo.GetLength();
caL = 0;
for (QWORD i = 0; i < strL; i++)
{
str = Deo.Mid(i, 4);
if (str=="retn")
{
caL = i;
}
}
str = Deo.Mid(0, caL);
str1 = Deo.Mid(caL, Deo.GetLength()-(caL+1));
Deo = str + "\r\n" + popa+str1;
return Deo;
}
return "0";
}
/*汇编指令转换字节集*/
CString StrTobyte(CString Deo)
{
Deo = HBTWPD(Deo);
if (Deo=="0")
{
return "0";
}
toUpper(Deo.GetBuffer());//到小写
Deo.ReleaseBuffer();
g_32meoy = 0;
asmchr.chCALL = "";
asmchr.CALLsize = 0;
CString str="", st1, st2;
int stL = Deo.GetLength();
int strlock = 0;
int b = 0;
for (int i = 0; i < stL; i++)
{
st2 = Deo.Mid(i, 2);
st1 = Deo.Mid(i, 1);
if (st1 != "\r" && st1 != "\n" )
{
str += st1;
}
if (st2=="\r\n"|| i==stL-1 && str!="")
{
if (str.GetLength()>=4 && str.GetLength() <= 10)
{
if(amssipd(str))
{
b = CsAsmToint(CAch, CA0X);
if (b>=1)
{
CAch=IntToASBy(b);
if (CAch!="0")
{
asmchr.chCALL += CAch;
str = "";
}
}
}
else
{
if (CAch == "0"){return "0";}
b = CsAsmToint(CAch, CA0X);
if (b >= 77)
{
CAch = IntToASBy(b);
if (CAch != "0")
{
asmchr.chCALL += CAch;
str = "";
}
if (OXGSH(CA0X,b)==FALSE)
{
return "0";
}
}
}
}
else
{
if (str!="")
{
if (amssipd1(str) == FALSE)
{
return "0";
}
}
}
str = "";
}
}
return asmchr.chCALL;
}
导出函数.h
#pragma once
CString StrTobyte(CString Deo);//