오늘도 영어 똥을 배설한다....


오늘도 영어의 똥을 놓기 원한다…


우리 아들은 똥을 무지 좋아한다.


아이들은 똥에 대해서 굉장한 반응을 한다….


ㅎㅎㅎ


가장 원초적인 단어중에 한가지 인것 같다..


왜 좋아 하는 것일까?


그게 좋아하는 것 맞나?


암튼...반응이 굉장하다…


똥에 대해서 말이다.




그리고 나도 솔직히 하루에 한번씩 똥을 누고 있다..

흐…

암튼…

원래 하나님이 만드렸을때는

이세상에 부끄러운것이 없었다…..


사단이

선악과를 먹이기 나서 부터 부끄러운것들이 생긴것이다….


똥도 원래는 부끄러운 것이 였을까?


암튼….


아기들의 똥은 그럽게 아주

더럽지는 않다…


암튼.~~

오늘

영어의 똥을 누고자 한다.


ㅎㅎㅎ

;;;

으~

더러워~

무식해~~!



‘끝없이 공부하는’


끝없이… 공부하는

endless endless 끝없이….


hours of studying…


endless hours of studying~~!!

‘끝없이 공부하다’



현실에 지금에

기쁨에 충실하는 것이 돈이다..


돈은 다른 곳에 오는 것이 아니다...


이곳에서 오는 돈이 진짜 돈이다....


기쁨으로 주님이 주신 달란트를 사용함으로 벌려지는 것......

먼저 그의 나를 구하는 것이 돈이다....


뭔 또 개소리인가?

영어를 하다 갑자기라고 생각하실 수 있지만....


우린 항상 스스로에게

아니면 누군가에게 속는게 인생이기 때문에....

진짜를 다시 내 스타일로 표현해본것이다....






오랜만에 ...글을 쓰는군요…

흐…


음...인간은

곤충같은 인생을 살지 말아야 하는데...말입니다….

개같이 살지 말아야 하는데 말입니다.


뭔가에 계속해서 쫒기듯이 살긴하는데…

참..효율이 떨어지는 인생인것 같습니다.


효율이 좋은게 좋은 인생인지 모르겠지만..


음..효율이라는 단어보다는 음..집중을 못한다고 이야기 해야 하나?


음..정확히 내 생각을 표현할 수 없군요…

ㅎㅎㅎㅎㅎㅎㅎㅎㅎ


암튼…

오늘도 컴퓨터에 대한 이야기를 하고 싶어요~~!!


오늘은…


필드 오프셋에 대해서 말하고 싶어요…


필드 Field Offset

구조체에서… 특정 필드(Field)의 오프세(Offset)을 알아내는 벙법입니다.



구조체는 다 알고 계시잖아요…

여러 자료들이 상황에 맞게 쌓여 있는 녀석이잖아요…

많은 녀석들이 섞여 있다는 것이죠~~!!


그런데 어떤 녀석이..어디에 있는지 알고 싶을 때 사용할 수 있도록 만든 것입니다.



구조체의 특정 필드까지의 offset(차이)를 알아내는 방법을 알아야 한다.



the byte offset을 리턴하는 메크로라고 합니다. 더 바이트 옵셋(the byte offset)은...구조체 타입안에 있는 필드의 옵셉말입니다.





구조체에서 특정 필드까지의 위치를 알아낼 수 있습니다.


오늘은 요기까쥐~~~



음...안녕하세요

아니 할렐루야~~~


예수님은 부활하셨습니다.

이것은 역사적 사실입니다....


이것이 정말 확증되고 그 부활에 굴복되는 수간..............

모든것이...새로와 진다고 한다...


아직.....

나는 믿기는 하지만...완전한 굴복됨은 되지 않는 것 같다.

왜냐하면, 내가 걱정할 것 내가 주인 되어 걱정하고 있으니 말이다....


음....


이렇게 기도한다...


예수님.. 예수님의 부활하심이 확증되게 해주세요!!!


예수님...예수님의 부활하심이 확증되게 해주세요!!!


자~~

예수님 저는 컴퓨터 프로그래밍으로 예수님의 부활하심을 증거하고 싶어요...


그러면, 저는 뭘 해야 할까요?


뭘 해야 하는 거죠????


음....컴퓨터 안에도 부활이 있나요? 없겠죠^^?;;


Jesus was resurrected~~!!! so Jesus was God! so Jesus is God!!


핸들...

아...오늘은....

프로세스 해커를 찝어 먹으며...예수님께 영광을 돌릴 수 있을까요?

아니..예수님 얼굴에 먹칠을 하지 말아야 하죠~~!!


그럼 열심히 해보겠습니다...


ARM CPU에 대해서 알아봐야 합니다.




MS MVP ComCamp에 갔다가
집으로 돌아가는 길이다​~~~

흐...새로운하루가 시작되었군요.

오늘도...오직 믿음으로 버티다…

사는 하루 되길 예수님의 이름으로 기도합니다.


오늘도 항상 기뻐하라 쉬지말고 기도하라 범사에 감사하라 이는 그리스도 예수 안에서 너의에게 향하신 하나님의 뜻이리나

데살로니가전서 5:16, 17, 18


만번의 법칙을…

만들어가리라…


말씀…

이사야서 53:5절 말씀…

그가 찔림은 우리의 허물 때문이요

그가 상항은 우리의 죄악 때문이라

그가 징계를 받으므로 우리는 평화를 누리고

그가 채찍에 맞으므로 우리는 나음을 받았도다

이말씀 만번외우자…



음….

음………

음…………………………………………………………


이번에는 미친식빵이 나타나…………..

엄마가 한마디 한다…

미친감자~~


잘하고 있냐고….


그렇게 시작하자…


엄마 나타난다…


이런...엄마를 그린 파일이 없어졌다...어디로 날라갔나? 저장을 하지 않았나보다……..;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;



음...어쩔수 없지….

일단 미친식빵 나타나….버럭해준다~~~~~(왜 버럭해야 하는지는 모르겠고~~일단 버럭해준다…)

미친감자…

일단 깜짝놀란다…

흐~~~

“당연하죠~”라고 대사를 쳐준다~~!


오늘은 여기까지..;;;이런 …흐….

먹고 살려고 바뿌다 바뻐;;;


음....마소에...다음 편을 써야 한다...

초딩(?)을 위한 글을 써주라고 부탁을 해서...


미친감자와 미친식빵을 이용해서......


컴퓨터란 놈과 대화를 하는 컨셉으로 쓰고 있다.....


음....


이번 호에는 무슨 내용으로 써야 하는가?


성령님....도와주세요...


Oh Holy Spririt..~~~


컴파일러와 대화를 시작했다....


씨언어를 이용해서 말이다....


음...컴파일러는 무슨 짓(?)을 하는 것일까?


음…

샵…..

샵에 대해서 씹어 먹어야 한다…


전처리기에 대해서 알아보자….


전처리기?


전처리기에 대해서 이야기를 뽑아 내보자….


전 처리기 입니다….


‘전처리기’


전처리기에 대해서 이야기 해보자…..


전처리기의 정체를 알아볼 것 이다….


전처리기는 뭐지?


전 처리기 입니다????


I am 처리기? ㅋㅋㅋㅋ


전처리기



음…



프로젝트 속성에서 …

전처리기의 속성을

전처기기란 놈을 확인 할 수 있다…

여기 숨어 있다..

뭐든지….숨어 있다...ㅋㅋㅋ



음…

속성>구성 속성 > C/C++ > 전처리기

안으로 들어가니까!!!


온갖...옵션들이 있네~~!!


음….


전처리기 정의~!!

오~~여기에서………..

정의를 하는 구나!!!


WIN32;_DEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)


전처리기 정의 해제

모든 전처리기 정의 해제

표준 포함 경로 무시

파일로 전처리

전처리 줄 번호 표시 안함

주석 유지


음…


음..전처리기에서 하는 일 중에 정의라는 것이 중요한 것인가 보내..

정의 할지 해제할지….모드 해제할지….를 3개의 옵션으로 처리하고 있네~!!


표준 포함 경로 ~??


파일로 전처리를 ‘예(/P)’로 변경하였다…음..이 옵션으로...전처리 결과를 확인할 수 있쥐~~!!!



줄 번호~~

주석 유지~~ 기본적으로 전처리 과정을 거치고 나면...주석을 없에 버린다….


자..확인해보면~~!!



음….

파일로 전처리를 처리하면….

저런 파일이 생긴다!!!


음…^^

이렇게 전처리기를 사용하면….

전처기리글 돌기고 나면..

이렇게 나옵니다.



TEST TEST2는 없어지고….

정의 했던 값으로 바뀌어 버린다…


컴파일러 입장에서는 .TEST 나,.....TEST2란 녀석은 필요가 없는 것이다…

다..이것들은 인간들을 위해 있는 것이니~~~


음..그렇다….


자..전처기기에 대해서 좀더 알아보자…..


전처리기….


그리고  결과를 컴파일러가 컴파일을 시작하는 거쥐~~



음....






오늘은 맨티가...이것을 가져왔다...


다음 소스를 말이다.

http://forum.sysinternals.com/uploads/Napalm/2006-04-20_211055_HandleList.zip


음...


맨티 : 음...시스인터날에서 핸들을 알아내는 소스가 있더라구요~


그래서 소스를 보니까..


NtQuerySystemInformation()

NtDuplicateHandle()

NtQueryObject()


맨티 : 이 함수를 이용해서 핸들을 알아내고, 핸들 정보를 알아내더라구요~~


오 그렇구나....


그래 좋았어...

그럼 저 함수를 이용해서........

핸들 정보를 알아내보도록.....


이건 진짜 게임이야...

이게 진짜 게임....


게임방이나 오락실 게임이 진까게임이 아닌거야...


저 함수는 괴물인거야..

저 괴물을 잡아 먹어~~


그러면 SP지수(Sysmtem Power)지수가 올라갈거야....오케?


우리의 진짜 게임은 우리의 삶이야....


예수님안에서 지성소의 법궤안에 임재해 계시는 야훼의 파워로

저 괴물을 다 물리치는 것이 진짜 게임인거야~~

오케~?


지금 아주 잘 따라오고 있어~~!!!


오늘도 이기자고~~마귀에게서....

우리들이 싸우는 것은 혈과 육이 아니고

마귀랑 싸우는 거야~~!


자....


자...오늘은 말이야...


NtDuplicateHandle()을 왜하는지를 설명해줄께…


a.exe라는 프로그램을 클릭하는 순간 프로세스라는 것이 만들어지잖아~~

그럼.. 내가 뭐라고 했지?


프로세스가 실행될 수 있는 환경이 만들어진다고 했지?


그 환경에는 말이지…

밥상이 있어 밥상~~테이블(Table)~~!!무슨 밥상이냐?

핸들밥상~~

핸들 테이블

이 핸들 테이블은 프로세스마다 주어지지

누가 ? 커널 쪽에서 누군가가~~~


그래서 다른 프로세스의 핸들테이블에 있는 핸들값을 그대로 절대로 사용할 수 없는 거야…


그놈을 복사해야되는거야~


NtDuplicateHandle()함수를 호출하면,

커널쪽에…

이 핸들이 가르치는 개체 저도 사용할 수 있게 해주세요~~~

그럼 커널쪽 누군가가(누군지 모르겠어~~~) 그 핸들이 가르키는 개체에 대해서

사용할 수 있도록 핸들을 다시 할당해서 핸들 테이블에 저장해주고

그 핸들테이블의 인덱스 값을 넘겨주는 거쥐~~

알겠어?



음….

그리고, NTDLL.DLL의 함수를 컴파일러가 직접 호출할 수 가 없어….

NTDLL.DLL의 함수를 내 프로그램에서 사용하기 위해선느

컴파일러에게 함수의 모양을 알려줘야하고, 그 함수를 직접 로드해야 한다고~~!

그러면, 함수의 주소를 알아낼 수 있는데

이 함수를 함수주소포인터에 저장해서 사용하면 된다고~~!


그러면서, 나는 LoadLibrary()함수와 GetProcAddress()함수를 설명했다.


LoadLibrary()는 입력(Input)으로 경로를 받고, 출력(Output)으로 메모리 주소를 받는다고 했다.

이 메모리 주소는 로드한 모듈이 위한한 주소라고..

그리고 , 그 주소를 이용해서 함수를



ntdll.dll이 로드된 주소는 0x77a1000

그렇다면 LoadLibrary() 이놈이 뱉어낸 주소도?




0x77a10000

음….

즉… LoardLibrary()라는 녀석은 해당 모듈이 로드되어 있는 메모리 주소를 리턴해주는 것이 맞습니다!!!


그리고, GetProcAddress()는 함수의 주소를 리턴해주고~~!!



FARPROC WINAPI GetProcAddress(
 _In_  HMODULE hModule,
 _In_  LPCSTR lpProcName
);

그리고, 함수포인터로 해당 함수주소를 받아서 사용하면 된다는 점~~

함수 포인터는 어떻게 만드느냐?


리턴타입 가로열고 별 함수주소이름 가로닫고 인자값형태~~

로 하면 된다.

이런 식으로 말이다.



DWORD (*pMyFun)(INT nData);


pMyFun = GetProcAddress(hModule, "test");


이렇게 하면 어떤 dll이든 다 사용할 수 있다는 점~~!!






+ Recent posts