전체 글 (189) 썸네일형 리스트형 main 분석 (3) gcc 3.22 지금 pc방이라서 집에 쓰는 gcc가 다르네요 보니까 약간의 어셈코드가 다른데 큰 차이는 없습니다. 포인터가 어셈에서 어떻게 쓰이는지 보겠습니다. 먼저 disasm 입니다. 80482f4: 55 push %ebp 80482f5: 89 e5 mov %esp,%ebp 80482f7: 83 ec 18 sub $0x18,%esp 80482fa: 83 e4 f0 and $0xfffffff0,%esp 80482fd: b8 00 00 00 00 mov $0x0,%eax 8048302: 29 c4 sub %eax,%esp int a; int b; int *p; a=10; 8048304: c7 45 fc 0a 00 00 00 movl $0xa,0xfffffffc(%ebp) b=20; 804830b: c7.. 파일전송 처리중... 일단 ubchat 에 파일전송을 간단히 테스트해 보았다 되긴되는데 문제가 1, 2가지가 아니다 일단 클라이언트가 서버에 보내 다시 서버가 받을 클라이언트에 보낸다 내가 생각해보 정말 병맛같은 짓이다 아우 이건 용량이 크면 버퍼링 무지 걸릴듯... 그리고 아직 테스트 안해봤지만 생각나는대로 몇가지 문제가 있다 아우 내일 알바가는데 죽겟네.... main 분석 (2) 어제 알바뛰고 낮에 자서 새벽까지 눈이 탱글탱글하다..ㅋㅋ 어셈 코드만 보고 해석하기 힘들다 gdb로 브레이크 걸면서 레지 변화를 주목하면서 따라가면 그나마 이해하기 쉽다 main에서 변수하나를 선언했다. 08048344 : int main() { 8048344: 8d 4c 24 04 lea 0x4(%esp),%ecx 8048348: 83 e4 f0 and $0xfffffff0,%esp 804834b: ff 71 fc pushl -0x4(%ecx) 804834e: 55 push %ebp 804834f: 89 e5 mov %esp,%ebp 8048351: 51 push %ecx 8048352: 83 ec 10 sub $0x10,%esp int i; i=10; 8048355: c7 45 f8 0a 00 00.. 어셈 기초 강좌 어셈블리어 입문자를 위한 어셈블리어 자료들의 모음 main 분석 (1) gcc 버전은 4.24 gcc버전마다 어셈코드가 조금씩 다를수 있다. int main() { return 0; } 요걸 디스어셈해봣다 .. gcc -g -o main main.c objdump -S main > main.txt vi main.txt 뭔지 모를 어셈코드가 암호화 해서 나온다 (머리가..ㅡㅡ) 일단 main 코드 위치에서 부터 보자 08048344 : int main() { 8048344: 8d 4c 24 04 lea 0x4(%esp),%ecx 8048348: 83 e4 f0 and $0xfffffff0,%esp 804834b: ff 71 fc pushl -0x4(%ecx) 804834e: 55 push %ebp 804834f: 89 e5 mov %esp,%ebp 8048351: 51 pus.. start gdb로 어셈을 해볼까? 갠적으로 예전부터 어셈에 관심이 있었는데 공부도 해봤지만 도저히 감 잡기가 어려웠다 우연한 기회에 disasm을 분석하게 돼 뭐 조금은 이해할듯 하고..ㅡㅡ 일단 아는데 까지 해볼생각 일단 c언어를 알아야 한다 왜냐면 c언어를 어셈으로 번역한걸 해석할 테니까 기본적인 어셈문법또한 알면 좋을듯.. 나같이 어셈공부 하다 포기하신 분들이 조금이라도 도움이 됐으면 한다 디스어셈 재미에 빠졌어요~ ^^ 요즘 플밍이 지겨워 져서..ㅠㅠ 잠깐 다른것좀 알아보러 구글링 하다 리눅스에서 c파일을 어셈제작 과정이 너무 잼있어...ㅋㅋ 어설픈 리버싱도 조금 해봤고 근데 너무 어려워 자료도 별로 없고 어셈은 솔직히 하나도 모르는데 이것또한 삽질이 될거같은..ㅋㅋ 이번주는 어셈을 공부해볼 생각 (ubchat 은 다음주에.. ㅡㅡ) 어느 정도 정리되면 어셈에 대해 글도 올릴테니 기대해 주삼 stl 기초강좌 참 stl이란거 나도 배우고 있지만 오묘해.. 이전 1 ··· 16 17 18 19 20 21 22 ··· 24 다음 목록 더보기