zoukankan      html  css  js  c++  java
  • 逆向笔记013

    00401010   push        ebp
    00401011   mov         ebp,esp
    00401013   sub         esp,50h
    00401016   push        ebx
    00401017   push        esi
    00401018   push        edi
    00401019   lea         edi,[ebp-50h]
    0040101C   mov         ecx,14h
    00401021   mov         eax,0CCCCCCCCh
    00401026   rep stos    dword ptr [edi]
    
    
    00401028   mov         dword ptr [ebp-10h],1;[ebp-10h]=1
    ;调用    printf 
    0040102F   push        offset string "xc7xebxcaxe4xc8xebxc1xbdxb8xf6xcaxfdxa3xacxxbaxcdyxa3xa
    00401034   call        printf (00401160)
    00401039   add         esp,4
    
    ;调用scanf("%d%d",5,3)
    0040103C   lea         eax,[ebp-0Ch]
    0040103F   push        eax
    00401040   lea         ecx,[ebp-8]
    00401043   push        ecx
    00401044   push        offset string "%d%d" (00425054)
    00401049   call        scanf (00401100)
    0040104E   add         esp,0Ch
    
    00401051   mov         dword ptr [ebp-4],1
    
    00401051   mov         dword ptr [ebp-4],1
    00401058   jmp         main+53h (00401063)
    0040105A   mov         edx,dword ptr [ebp-4]
    0040105D   add         edx,1;[ebp-4]+1
    00401063   mov         eax,dword ptr [ebp-4]
    00401066   cmp         eax,dword ptr [ebp-0Ch]
    00401069   jg          main+6Fh (0040107f);如果[ebp-4]<[ebp-0Ch]则跳转
    0040106B   mov         eax,dword ptr [ebp-10h]
    0040106E   imul        eax,dword ptr [ebp-8];[ebp-10h]=[ebp-08h]*[ebp-10h]
    00401072   cdq;将eax中的符号拓展到ecx中
    00401073   mov         ecx,3E8h
    00401078   idiv        eax,ecx;[ebp-10h]/3E8h  将余数送入edx
    0040107A   mov         dword ptr [ebp-10h],edx;[ebp-10h]=edx
    0040107D   jmp         main+4Ah (0040105a);跳到0040105a
    
    
    0040107F   cmp         dword ptr [ebp-10h],64h
    00401083   jl          main+90h (004010a0);[ebp-10h]<64h转移
    00401085   mov         edx,dword ptr [ebp-10h]
    00401088   push        edx
    00401089   mov         eax,dword ptr [ebp-0Ch]
    0040108C   push        eax
    0040108D   mov         ecx,dword ptr [ebp-8]
    00401090   push        ecx
    00401091   push        offset string "%d^%dxb5xc4xd7xeexbaxf3xc8xfdxcexbbxcaxc7xa3xba%d
    " (00425
    00401096   call        printf (00401160)
    0040109B   add         esp,10h
    0040109E   jmp         main+0A9h (004010b9)
    
    004010A0   mov         edx,dword ptr [ebp-10h]
    004010A3   push        edx
    004010A4   mov         eax,dword ptr [ebp-0Ch]
    004010A7   push        eax
    004010A8   mov         ecx,dword ptr [ebp-8]
    004010AB   push        ecx
    004010AC   push        offset string "%d^%dxb5xc4xd7xeexbaxf3xc8xfdxcexbbxcaxc7xa3xba0%d
    " (0042
    004010B1   call        printf (00401160)
    004010B6   add         esp,10h
    
    004010B9   xor         eax,eax
    004010BB   pop         edi
    004010BC   pop         esi
    004010BD   pop         ebx
    004010BE   add         esp,50h
    004010C1   cmp         ebp,esp
    004010C3   call        __chkesp (004011e0)
    004010C8   mov         esp,ebp
    004010CA   pop         ebp
    004010CB   ret
  • 相关阅读:
    mmap 函数
    poisx 文件锁
    三次握手的第三个ACK包丢了,TCP的处理方式
    unix 网络编程第八章 UDP
    STDIN_FILENO vs stdin
    unix 网络编程 第七章
    select 实现分析,poll epoll
    pselect 和 select
    export LANG="zh_CN.UTF-8"
    Unix 网络编程 I/O 模型 第六章
  • 原文地址:https://www.cnblogs.com/zheh/p/4571969.html
Copyright © 2011-2022 走看看