zoukankan      html  css  js  c++  java
  • 第二段代码就容易多了,可能我已经习惯了,哈哈哈哈哈

    但是这个函数是用EBX作为返回值的,不合逻辑,正常返回应该是用EAX

    004013D8    33C0            XOR EAX,EAX
    004013DA    33FF            XOR EDI,EDI
    004013DC    33DB            XOR EBX,EBX
    004013DE    8B7424 04       MOV ESI,DWORD PTR SS:[ESP+4]
    004013E2    B0 0A           MOV AL,0A
    004013E4    8A1E            MOV BL,BYTE PTR DS:[ESI]
    004013E6    84DB            TEST BL,BL
    004013E8    74 0B           JE SHORT serial.004013F5
    004013EA    80EB 30         SUB BL,30
    004013ED    0FAFF8          IMUL EDI,EAX
    004013F0    03FB            ADD EDI,EBX
    004013F2    46              INC ESI
    004013F3  ^ EB ED           JMP SHORT serial.004013E2
    004013F5    81F7 34120000   XOR EDI,1234
    004013FB    8BDF            MOV EBX,EDI
    004013FD    C3              RETN

    int fun2(char *str)
    {
     char *temp = str;
     int j = 0;
     for( int i = 0 ; ; i++ )
     {
      if( temp == '' )
      {
       break;
      }
      temp -= 0x30;
      j = ( j * 10 ) + (int)temp ;
     }
     j = j ^ 0x1234;
     return j;
    }

  • 相关阅读:
    Mac版sublime text右键open in browser 不能识别中文名解决办法
    python 内置函数
    python 迭代器 生成器 列表推导式和生成器表达式
    python 闭包
    python 练习题
    python 打印扑克牌练习题
    python 函数 可变数据类型默认值
    python min() ,max()
    python 九九乘法表
    函数的进阶
  • 原文地址:https://www.cnblogs.com/suanguade/p/4038247.html
Copyright © 2011-2022 走看看