Details | Last modification | View Log | RSS feed
Rev | Author | Line No. | Line |
---|---|---|---|
7321 | pavelyakov | 1 | #pragma option OST |
2 | #pragma option ON |
||
3 | #pragma option cri- |
||
4 | #pragma option -CPA |
||
5 | #initallvar 0 |
||
6 | #jumptomain FALSE |
||
7 | |||
7326 | pavelyakov | 8 | #startaddress 0 |
9 | |||
10 | #code32 TRUE |
||
7321 | pavelyakov | 11 | |
12 | char os_name[8] = {'M','E','N','U','E','T','0','1'}; |
||
13 | dword os_version = 0x00000001; |
||
14 | dword start_addr = #____INIT____; |
||
15 | dword final_addr = #____STOP____+32; |
||
16 | dword alloc_mem = 4*1024*1024; |
||
17 | dword x86esp_reg = 4*1024*1024; |
||
18 | dword I_Param = #param; |
||
19 | dword I_Path = #program_path; |
||
20 | char param[4096]; |
||
21 | char program_path[4096]; |
||
22 | |||
23 | |||
24 | void ExitProcess() |
||
25 | { |
||
26 | EAX = -1; |
||
27 | $int 0x40 |
||
28 | } |
||
29 | |||
7326 | pavelyakov | 30 | segmentDisableFunction: |
7321 | pavelyakov | 31 | dword eaxFunctionDestroy(){RETURN 0;} |
7326 | pavelyakov | 32 | segmentDisableFunctionEnd: |
7321 | pavelyakov | 33 | |
34 | void ____INIT____() |
||
35 | { |
||
36 | |||
37 | // Disable door kernel |
||
38 | EAX = 81; |
||
7326 | pavelyakov | 39 | EBX = 81; // Self function |
40 | ECX = #eaxFunctionDestroy; // Function execute |
||
41 | EDX = #segmentDisableFunction; // Begin segment |
||
42 | ESI = #segmentDisableFunctionEnd; // End segment |
||
7321 | pavelyakov | 43 | $int 0x40 |
44 | |||
45 | ExitProcess(); |
||
46 | } |
||
47 | |||
48 | void ____STOP____() |
||
49 | { |
||
50 | ExitProcess(); |
||
51 | } |