Subversion Repositories Kolibri OS

Rev

Go to most recent revision | Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
1032 Lrz 1
SPHINX/SHEKER C-- One Pass Disassembler. Version 0.239c b26 Apr 27 2007
2
 
3
..\lib\kolibri.h-- 4: char   os_name[8]   = {'M','E','N','U','E','T','0','1'};
4
00000000 4D454E5545543031         db      4Dh,45h,4Eh,55h,45h,54h,30h,31h
5
 
6
..\lib\kolibri.h-- 5: dword  os_version   = 0x00000001;
7
00000008 01000000                 dd      1
8
 
9
..\lib\kolibri.h-- 6: dword  start_addr   = #main;
10
0000000C 88050000                 dd      588h
11
 
12
..\lib\kolibri.h-- 7: dword  final_addr   = #stop+32;
13
00000010 5D070000                 dd      75Dh
14
 
15
..\lib\kolibri.h-- 8: dword  alloc_mem    = #stop+0x100;
16
00000014 3D080000                 dd      83Dh
17
 
18
..\lib\kolibri.h-- 9: dword  x86esp_reg   = #stop+0x100;
19
00000018 3D080000                 dd      83Dh
20
 
21
..\lib\kolibri.h-- 10: dword  I_Param      = 0x0;
22
0000001C 00000000                 dd      0
23
 
24
..\lib\kolibri.h-- 11: dword  I_Icon       = 0x0;
25
00000020 00000000                 dd      0
26
 
27
..\lib\kolibri.h-- 39: void system_colors::get()
28
00000024 55                       push    ebp
29
00000025 89E5                     mov     ebp,esp
30
 
31
..\lib\kolibri.h-- 41: EAX = 48;
32
00000027 6A30                     push    30h
33
00000029 58                       pop     eax
34
 
35
..\lib\kolibri.h-- 42: EBX = 3;
36
0000002A 6A03                     push    3
37
0000002C 5B                       pop     ebx
38
 
39
..\lib\kolibri.h-- 43: ECX = #frame;
40
0000002D 8B4D08                   mov     ecx,[ebp+8]
41
 
42
..\lib\kolibri.h-- 44: EDX = 40;
43
00000030 6A28                     push    28h
44
00000032 5A                       pop     edx
45
 
46
..\lib\kolibri.h-- 45: $int    0x40
47
00000033 CD40                     int     40h
48
00000035 5D                       pop     ebp
49
00000036 C20400                   ret     4
50
 
51
..\lib\kolibri.h-- 55: void mouse::get()
52
00000039 55                       push    ebp
53
0000003A 89E5                     mov     ebp,esp
54
 
55
..\lib\kolibri.h-- 57: EAX = 37;
56
0000003C 6A25                     push    25h
57
0000003E 58                       pop     eax
58
 
59
..\lib\kolibri.h-- 58: EBX = 1;
60
0000003F 31DB                     xor     ebx,ebx
61
00000041 43                       inc     ebx
62
 
63
..\lib\kolibri.h-- 59: $int    0x40
64
00000042 CD40                     int     40h
65
 
66
..\lib\kolibri.h-- 60: $mov    ebx, eax
67
00000044 89C3                     mov     ebx,eax
68
 
69
..\lib\kolibri.h-- 61: $shr    eax, 16
70
00000046 C1E810                   shr     eax,10h
71
 
72
..\lib\kolibri.h-- 62: $and    ebx,0x0000FFFF
73
00000049 81E3FFFF0000             and     ebx,0FFFFh
74
 
75
..\lib\kolibri.h-- 63: x = EAX;
76
0000004F 8B7508                   mov     esi,[ebp+8]
77
00000052 8906                     mov     [esi],eax
78
 
79
..\lib\kolibri.h-- 64: y = EBX;
80
00000054 895E04                   mov     [esi+4],ebx
81
 
82
..\lib\kolibri.h-- 65: EAX = 37;
83
00000057 6A25                     push    25h
84
00000059 58                       pop     eax
85
 
86
..\lib\kolibri.h-- 66: EBX = 2;
87
0000005A 6A02                     push    2
88
0000005C 5B                       pop     ebx
89
 
90
..\lib\kolibri.h-- 67: $int    0x40
91
0000005D CD40                     int     40h
92
 
93
..\lib\kolibri.h-- 68: $mov    ebx, eax
94
0000005F 89C3                     mov     ebx,eax
95
 
96
..\lib\kolibri.h-- 69: $and    eax, 0x00000001
97
00000061 83E001                   and     eax,1
98
 
99
..\lib\kolibri.h-- 70: $shr    ebx, 1
100
00000064 D1EB                     shr     ebx,1
101
 
102
..\lib\kolibri.h-- 71: $and    ebx, 0x00000001
103
00000066 83E301                   and     ebx,1
104
 
105
..\lib\kolibri.h-- 72: lkm = EAX;
106
00000069 8B7508                   mov     esi,[ebp+8]
107
0000006C 894608                   mov     [esi+8],eax
108
 
109
..\lib\kolibri.h-- 73: pkm = EBX;
110
0000006F 895E0C                   mov     [esi+0Ch],ebx
111
 
112
..\lib\kolibri.h-- 74: EAX = 37; //колёсико
113
00000072 6A25                     push    25h
114
00000074 58                       pop     eax
115
 
116
..\lib\kolibri.h-- 75: EBX = 7;
117
00000075 6A07                     push    7
118
00000077 5B                       pop     ebx
119
 
120
..\lib\kolibri.h-- 76: $int    0x40
121
00000078 CD40                     int     40h
122
 
123
..\lib\kolibri.h-- 77: $mov    ebx, eax
124
0000007A 89C3                     mov     ebx,eax
125
 
126
..\lib\kolibri.h-- 78: $shr    eax, 16
127
0000007C C1E810                   shr     eax,10h
128
 
129
..\lib\kolibri.h-- 79: $and    ebx,0x0000FFFF
130
0000007F 81E3FFFF0000             and     ebx,0FFFFh
131
 
132
..\lib\kolibri.h-- 81: vert = EBX;
133
00000085 891D88070000             mov     [788h],ebx
134
0000008B 5D                       pop     ebp
135
0000008C C20400                   ret     4
136
 
137
..\lib\kolibri.h-- 123: void proc_info::getme()
138
0000008F 55                       push    ebp
139
00000090 89E5                     mov     ebp,esp
140
 
141
..\lib\kolibri.h-- 125: EAX = 9;
142
00000092 6A09                     push    9
143
00000094 58                       pop     eax
144
 
145
..\lib\kolibri.h-- 126: EBX = #use_cpu;
146
00000095 8B5D08                   mov     ebx,[ebp+8]
147
 
148
..\lib\kolibri.h-- 127: ECX = -1;
149
00000098 83C9FF                   or      ecx,0FFFFFFFFh
150
 
151
..\lib\kolibri.h-- 128: $int    0x40
152
0000009B CD40                     int     40h
153
0000009D 5D                       pop     ebp
154
0000009E C20400                   ret     4
155
 
156
..\lib\kolibri.h-- 367: void WindowRedrawStatus(dword i)
157
000000A1 55                       push    ebp
158
000000A2 89E5                     mov     ebp,esp
159
 
160
..\lib\kolibri.h-- 369: EAX = 12;              // function 12:tell os about windowdraw
161
000000A4 6A0C                     push    0Ch
162
000000A6 58                       pop     eax
163
 
164
..\lib\kolibri.h-- 370: EBX = i;               // 1, start of draw
165
000000A7 8B5D08                   mov     ebx,[ebp+8]
166
 
167
..\lib\kolibri.h-- 371: $int 0x40
168
000000AA CD40                     int     40h
169
000000AC 5D                       pop     ebp
170
000000AD C20400                   ret     4
171
 
172
..\lib\kolibri.h-- 374: void DefineAndDrawWindow(dword x,y,sizeX,sizeY,byte mainAreaType,dword mainAreaColour,byte headerType,dword headerColour,border
173
000000B0 C8100000                 enter   10h,0
174
 
175
..\lib\kolibri.h-- 378: arg1 = x << 16 + sizeX;
176
000000B4 8B4528                   mov     eax,[ebp+28h]
177
000000B7 C1E010                   shl     eax,10h
178
000000BA 034520                   add     eax,[ebp+20h]
179
000000BD 8945FC                   mov     [ebp-4],eax
180
 
181
..\lib\kolibri.h-- 379: arg2 = y << 16 + sizeY;
182
000000C0 8B4524                   mov     eax,[ebp+24h]
183
000000C3 C1E010                   shl     eax,10h
184
000000C6 03451C                   add     eax,[ebp+1Ch]
185
000000C9 8945F8                   mov     [ebp-8],eax
186
 
187
..\lib\kolibri.h-- 380: arg3 = mainAreaType << 24 | mainAreaColour;
188
000000CC 0FB64518                 movzx   eax,[ebp+18h]
189
000000D0 C1E018                   shl     eax,18h
190
000000D3 0B4514                   or      eax,[ebp+14h]
191
000000D6 8945F4                   mov     [ebp-0Ch],eax
192
 
193
..\lib\kolibri.h-- 381: arg4 = headerType << 24 | headerColour;
194
000000D9 0FB64510                 movzx   eax,[ebp+10h]
195
000000DD C1E018                   shl     eax,18h
196
000000E0 0B450C                   or      eax,[ebp+0Ch]
197
000000E3 8945F0                   mov     [ebp-10h],eax
198
 
199
..\lib\kolibri.h-- 383: $mov eax, 0
200
000000E6 B800000000               mov     eax,0
201
 
202
..\lib\kolibri.h-- 384: $mov ebx, arg1
203
000000EB 8B5DFC                   mov     ebx,[ebp-4]
204
 
205
..\lib\kolibri.h-- 385: $mov ecx, arg2
206
000000EE 8B4DF8                   mov     ecx,[ebp-8]
207
 
208
..\lib\kolibri.h-- 386: $mov edx, arg3
209
000000F1 8B55F4                   mov     edx,[ebp-0Ch]
210
 
211
..\lib\kolibri.h-- 387: $mov esi, arg4
212
000000F4 8B75F0                   mov     esi,[ebp-10h]
213
 
214
..\lib\kolibri.h-- 388: $mov edi, borderColour
215
000000F7 8B7D08                   mov     edi,[ebp+8]
216
 
217
..\lib\kolibri.h-- 389: $int 0x40
218
000000FA CD40                     int     40h
219
000000FC C9                       leave
220
000000FD C22400                   ret     24h
221
 
222
..\lib\kolibri.h-- 392: void DefineButton(dword x,y,w,h,id,color)
223
00000100 55                       push    ebp
224
00000101 89E5                     mov     ebp,esp
225
 
226
..\lib\kolibri.h-- 394: DrawButton(x<<16+w, skin_width+y<<16+h, id, color);
227
00000103 8B5D1C                   mov     ebx,[ebp+1Ch]
228
00000106 C1E310                   shl     ebx,10h
229
00000109 035D14                   add     ebx,[ebp+14h]
230
0000010C 8B0D84070000             mov     ecx,[784h]
231
00000112 034D18                   add     ecx,[ebp+18h]
232
00000115 C1E110                   shl     ecx,10h
233
00000118 034D10                   add     ecx,[ebp+10h]
234
0000011B 8B550C                   mov     edx,[ebp+0Ch]
235
0000011E 8B7508                   mov     esi,[ebp+8]
236
00000121 E84E060000               call    774h
237
00000126 5D                       pop     ebp
238
00000127 C21800                   ret     18h
239
 
240
..\lib\kolibri.h-- 397: void WriteText(dword x,y,byte fontType, dword color, text, len)
241
0000012A 55                       push    ebp
242
0000012B 89E5                     mov     ebp,esp
243
 
244
..\lib\kolibri.h-- 399: EBX = x<<16+skin_width+y;
245
0000012D 8B5D1C                   mov     ebx,[ebp+1Ch]
246
00000130 C1E310                   shl     ebx,10h
247
00000133 031D84070000             add     ebx,[784h]
248
00000139 035D18                   add     ebx,[ebp+18h]
249
 
250
..\lib\kolibri.h-- 400: ECX = fontType<<24+color;
251
0000013C 0FB64D14                 movzx   ecx,[ebp+14h]
252
00000140 C1E118                   shl     ecx,18h
253
00000143 034D10                   add     ecx,[ebp+10h]
254
 
255
..\lib\kolibri.h-- 401: EDX = text;
256
00000146 8B550C                   mov     edx,[ebp+0Ch]
257
 
258
..\lib\kolibri.h-- 402: ESI = len;
259
00000149 8B7508                   mov     esi,[ebp+8]
260
 
261
..\lib\kolibri.h-- 403: EAX = 4;
262
0000014C 6A04                     push    4
263
0000014E 58                       pop     eax
264
 
265
..\lib\kolibri.h-- 404: $int 0x40;
266
0000014F CD40                     int     40h
267
00000151 5D                       pop     ebp
268
00000152 C21800                   ret     18h
269
 
270
..\lib\kolibri.h-- 413: void DrawBar(dword x,y,w,h,color)
271
00000155 55                       push    ebp
272
00000156 89E5                     mov     ebp,esp
273
 
274
..\lib\kolibri.h-- 415: kos_DrawBar(x<<16+w,skin_width+y<<16+h,color);
275
00000158 8B5D18                   mov     ebx,[ebp+18h]
276
0000015B C1E310                   shl     ebx,10h
277
0000015E 035D10                   add     ebx,[ebp+10h]
278
00000161 8B0D84070000             mov     ecx,[784h]
279
00000167 034D14                   add     ecx,[ebp+14h]
280
0000016A C1E110                   shl     ecx,10h
281
0000016D 034D0C                   add     ecx,[ebp+0Ch]
282
00000170 8B5508                   mov     edx,[ebp+8]
283
00000173 E8D2050000               call    74Ah
284
00000178 5D                       pop     ebp
285
00000179 C21400                   ret     14h
286
 
287
..\lib\kolibri.h-- 418: void DrawRegion(dword x,y,width,height,color1)
288
0000017C 55                       push    ebp
289
0000017D 89E5                     mov     ebp,esp
290
 
291
..\lib\kolibri.h-- 420: DrawBar(x,y,width,1,color1); //яюыюёр уюЁ ётхЁїє
292
0000017F FF7518                   push    dword ptr [ebp+18h]
293
00000182 FF7514                   push    dword ptr [ebp+14h]
294
00000185 FF7510                   push    dword ptr [ebp+10h]
295
00000188 6A01                     push    1
296
0000018A FF7508                   push    dword ptr [ebp+8]
297
0000018D E8C3FFFFFF               call    155h
298
 
299
..\lib\kolibri.h-- 421: DrawBar(x,y+height,width,1,color1); //яюыюёр уюЁ ёэшчє
300
00000192 FF7518                   push    dword ptr [ebp+18h]
301
00000195 8B4514                   mov     eax,[ebp+14h]
302
00000198 03450C                   add     eax,[ebp+0Ch]
303
0000019B 50                       push    eax
304
0000019C FF7510                   push    dword ptr [ebp+10h]
305
0000019F 6A01                     push    1
306
000001A1 FF7508                   push    dword ptr [ebp+8]
307
000001A4 E8ACFFFFFF               call    155h
308
 
309
..\lib\kolibri.h-- 422: DrawBar(x,y,1,height,color1); //яюыюёр тхЁЄ ёыхтр
310
000001A9 FF7518                   push    dword ptr [ebp+18h]
311
000001AC FF7514                   push    dword ptr [ebp+14h]
312
000001AF 6A01                     push    1
313
000001B1 FF750C                   push    dword ptr [ebp+0Ch]
314
000001B4 FF7508                   push    dword ptr [ebp+8]
315
000001B7 E899FFFFFF               call    155h
316
 
317
..\lib\kolibri.h-- 423: DrawBar(x+width,y,1,height+1,color1); //яюыюёр тхЁЄ ёяЁртр
318
000001BC 8B4518                   mov     eax,[ebp+18h]
319
000001BF 034510                   add     eax,[ebp+10h]
320
000001C2 50                       push    eax
321
000001C3 FF7514                   push    dword ptr [ebp+14h]
322
000001C6 6A01                     push    1
323
000001C8 8B450C                   mov     eax,[ebp+0Ch]
324
000001CB 40                       inc     eax
325
000001CC 50                       push    eax
326
000001CD FF7508                   push    dword ptr [ebp+8]
327
000001D0 E880FFFFFF               call    155h
328
000001D5 5D                       pop     ebp
329
000001D6 C21400                   ret     14h
330
 
331
..\lib\kolibri.h-- 426: void DrawFlatButton(dword x,y,width,height,id,color,text)
332
000001D9 55                       push    ebp
333
000001DA 89E5                     mov     ebp,esp
334
 
335
..\lib\kolibri.h-- 428: DrawRegion(x,y,width,height,0x94AECE);
336
000001DC FF7520                   push    dword ptr [ebp+20h]
337
000001DF FF751C                   push    dword ptr [ebp+1Ch]
338
000001E2 FF7518                   push    dword ptr [ebp+18h]
339
000001E5 FF7514                   push    dword ptr [ebp+14h]
340
000001E8 68CEAE9400               push    94AECEh
341
000001ED E88AFFFFFF               call    17Ch
342
 
343
..\lib\kolibri.h-- 429: DrawBar(x+1,y+1,width-1,1,0xFFFFFF); //яюыюёр уюЁ схыр 
344
000001F2 8B4520                   mov     eax,[ebp+20h]
345
000001F5 40                       inc     eax
346
000001F6 50                       push    eax
347
000001F7 8B451C                   mov     eax,[ebp+1Ch]
348
000001FA 40                       inc     eax
349
000001FB 50                       push    eax
350
000001FC 8B4518                   mov     eax,[ebp+18h]
351
000001FF 48                       dec     eax
352
00000200 50                       push    eax
353
00000201 6A01                     push    1
354
00000203 68FFFFFF00               push    0FFFFFFh
355
00000208 E848FFFFFF               call    155h
356
 
357
..\lib\kolibri.h-- 430: DrawBar(x+1,y+height-1,width-2,1,0xC7C7C7); //Єхэ№ тхЁЄ
358
0000020D 8B4520                   mov     eax,[ebp+20h]
359
00000210 40                       inc     eax
360
00000211 50                       push    eax
361
00000212 8B451C                   mov     eax,[ebp+1Ch]
362
00000215 034514                   add     eax,[ebp+14h]
363
00000218 48                       dec     eax
364
00000219 50                       push    eax
365
0000021A 8B4518                   mov     eax,[ebp+18h]
366
0000021D 48                       dec     eax
367
0000021E 48                       dec     eax
368
0000021F 50                       push    eax
369
00000220 6A01                     push    1
370
00000222 68C7C7C700               push    0C7C7C7h
371
00000227 E829FFFFFF               call    155h
372
 
373
..\lib\kolibri.h-- 431: DrawBar(x+1,y+1,1,height-1,0xFFFFFF); //яюыюёр тхЁЄ схыр 
374
0000022C 8B4520                   mov     eax,[ebp+20h]
375
0000022F 40                       inc     eax
376
00000230 50                       push    eax
377
00000231 8B451C                   mov     eax,[ebp+1Ch]
378
00000234 40                       inc     eax
379
00000235 50                       push    eax
380
00000236 6A01                     push    1
381
00000238 8B4514                   mov     eax,[ebp+14h]
382
0000023B 48                       dec     eax
383
0000023C 50                       push    eax
384
0000023D 68FFFFFF00               push    0FFFFFFh
385
00000242 E80EFFFFFF               call    155h
386
 
387
..\lib\kolibri.h-- 432: DrawBar(x+width-1,y+2,1,height-2,0xC7C7C7); //Єхэ№ тхЁЄ
388
00000247 8B4520                   mov     eax,[ebp+20h]
389
0000024A 034518                   add     eax,[ebp+18h]
390
0000024D 48                       dec     eax
391
0000024E 50                       push    eax
392
0000024F 8B451C                   mov     eax,[ebp+1Ch]
393
00000252 40                       inc     eax
394
00000253 40                       inc     eax
395
00000254 50                       push    eax
396
00000255 6A01                     push    1
397
00000257 8B4514                   mov     eax,[ebp+14h]
398
0000025A 48                       dec     eax
399
0000025B 48                       dec     eax
400
0000025C 50                       push    eax
401
0000025D 68C7C7C700               push    0C7C7C7h
402
00000262 E8EEFEFFFF               call    155h
403
 
404
..\lib\kolibri.h-- 433: DrawBar(x+2,y+2,width-3,height-3,color); //чрыштър
405
00000267 8B4520                   mov     eax,[ebp+20h]
406
0000026A 40                       inc     eax
407
0000026B 40                       inc     eax
408
0000026C 50                       push    eax
409
0000026D 8B451C                   mov     eax,[ebp+1Ch]
410
00000270 40                       inc     eax
411
00000271 40                       inc     eax
412
00000272 50                       push    eax
413
00000273 8B4518                   mov     eax,[ebp+18h]
414
00000276 83E803                   sub     eax,3
415
00000279 50                       push    eax
416
0000027A 8B4514                   mov     eax,[ebp+14h]
417
0000027D 83E803                   sub     eax,3
418
00000280 50                       push    eax
419
00000281 FF750C                   push    dword ptr [ebp+0Ch]
420
00000284 E8CCFEFFFF               call    155h
421
 
422
..\lib\kolibri.h-- 434: IF (id<>0)      DefineButton(x,y,width,height,id+BT_HIDE,0xEFEBEF); //юяЁхфхы хь ъэюяъє
423
00000289 837D1000                 cmp     dword ptr [ebp+10h],0
424
0000028D 741F                     je      2AEh
425
0000028F FF7520                   push    dword ptr [ebp+20h]
426
00000292 FF751C                   push    dword ptr [ebp+1Ch]
427
00000295 FF7518                   push    dword ptr [ebp+18h]
428
00000298 FF7514                   push    dword ptr [ebp+14h]
429
0000029B 8B4510                   mov     eax,[ebp+10h]
430
0000029E 0500000040               add     eax,40000000h
431
000002A3 50                       push    eax
432
000002A4 68EFEBEF00               push    0EFEBEFh
433
000002A9 E852FEFFFF               call    100h
434
 
435
..\lib\kolibri.h-- 435: WriteText(-strlen(text)*6+width/2+x+1,height/2-3+y,0x80,0,text,strlen(text));
436
000002AE 8B7D08                   mov     edi,[ebp+8]
437
000002B1 E887040000               call    73Dh
438
000002B6 F7D8                     neg     eax
439
000002B8 B906000000               mov     ecx,6
440
000002BD F7E1                     mul     ecx
441
000002BF 034518                   add     eax,[ebp+18h]
442
000002C2 83D200                   adc     edx,0
443
000002C5 0FACD001                 shrd    eax,edx,1
444
000002C9 034520                   add     eax,[ebp+20h]
445
000002CC 40                       inc     eax
446
000002CD 50                       push    eax
447
000002CE 8B4514                   mov     eax,[ebp+14h]
448
000002D1 D1E8                     shr     eax,1
449
000002D3 83E803                   sub     eax,3
450
000002D6 03451C                   add     eax,[ebp+1Ch]
451
000002D9 50                       push    eax
452
000002DA 6880000000               push    80h
453
000002DF 6A00                     push    0
454
000002E1 FF7508                   push    dword ptr [ebp+8]
455
000002E4 8B7D08                   mov     edi,[ebp+8]
456
000002E7 E851040000               call    73Dh
457
000002EC 50                       push    eax
458
000002ED E838FEFFFF               call    12Ah
459
000002F2 5D                       pop     ebp
460
000002F3 C21C00                   ret     1Ch
461
 
462
..\lib\kolibri.h-- 439: void PutImage(dword buf,w,h,x,y)
463
000002F6 C8100000                 enter   10h,0
464
 
465
..\lib\kolibri.h-- 442: EDI=buf;
466
000002FA 8B7D18                   mov     edi,[ebp+18h]
467
 
468
..\lib\kolibri.h-- 443: EAX = 7;
469
000002FD 6A07                     push    7
470
000002FF 58                       pop     eax
471
 
472
..\lib\kolibri.h-- 444: EBX = buf;
473
00000300 89FB                     mov     ebx,edi
474
 
475
..\lib\kolibri.h-- 445: ECX = w<<16+h;
476
00000302 8B4D14                   mov     ecx,[ebp+14h]
477
00000305 C1E110                   shl     ecx,10h
478
00000308 034D10                   add     ecx,[ebp+10h]
479
 
480
..\lib\kolibri.h-- 446: EDX = x<<16+y+skin_width;
481
0000030B 8B550C                   mov     edx,[ebp+0Ch]
482
0000030E C1E210                   shl     edx,10h
483
00000311 035508                   add     edx,[ebp+8]
484
00000314 031584070000             add     edx,[784h]
485
 
486
..\lib\kolibri.h-- 447: $int 0x40
487
0000031A CD40                     int     40h
488
0000031C C9                       leave
489
0000031D C21400                   ret     14h
490
 
491
..\lib\kolibri.h-- 451: void copystr(dword s,d)
492
00000320 55                       push    ebp
493
00000321 89E5                     mov     ebp,esp
494
 
495
..\lib\kolibri.h-- 453: $mov esi,s
496
00000323 8B750C                   mov     esi,[ebp+0Ch]
497
 
498
..\lib\kolibri.h-- 454: $mov edi,d
499
00000326 8B7D08                   mov     edi,[ebp+8]
500
 
501
..\lib\kolibri.h-- 455: $cld
502
00000329 FC                       cld
503
 
504
..\lib\kolibri.h-- 457: $lodsb
505
0000032A AC                       lodsb
506
 
507
..\lib\kolibri.h-- 458: $stosb
508
0000032B AA                       stosb
509
 
510
..\lib\kolibri.h-- 459: $test al,al
511
0000032C 84C0                     test    al,al
512
 
513
..\lib\kolibri.h-- 460: $jnz l1
514
0000032E 75FA                     jne     32Ah
515
00000330 5D                       pop     ebp
516
00000331 C20800                   ret     8
517
 
518
..\lib\kolibri.h-- 464: int     pos,razr,backup,j=0,chislo;
519
00000334 00000000                 dd      0
520
 
521
..\lib\kolibri.h-- 465: char    buffer[11]="";
522
00000338 000000000000000000000000 db      0,0,0,0,0,0,0,0,0,0,0,0
523
 
524
use_library.h-- 2: dword edit_box_draw = #aEdit_box_draw;
525
00000344 5C030000                 dd      35Ch
526
 
527
use_library.h-- 3: dword edit_box_key  = #aEdit_box_key;
528
00000348 66030000                 dd      366h
529
 
530
use_library.h-- 4: dword edit_box_mouse = #aEdit_box_mouse;
531
0000034C 74030000                 dd      374h
532
 
533
use_library.h-- 5: dword version_ed     = #aVersion_ed;
534
00000350 84030000                 dd      384h
535
 
536
use_library.h-- 28: dword  am__ = 0x0;
537
00000354 00000000                 dd      0
538
 
539
use_library.h-- 29: dword  bm__ = 0x0;
540
00000358 00000000                 dd      0
541
 
542
use_library.h-- 31: char aEdit_box_draw[9]  = "edit_box\0";
543
0000035C 656469745F626F780000     db      'edit_box',0,0
544
 
545
use_library.h-- 32: char aEdit_box_key[13] = "edit_box_key\0";
546
00000366 656469745F626F785F6B6579 db      'edit_box_key'
547
00000372 0000                     db      0,0
548
 
549
use_library.h-- 33: char aEdit_box_mouse[15] = "edit_box_mouse\0";
550
00000374 656469745F626F785F6D6F75 db      'edit_box_mou'
551
00000380 73650000                 db      'se',0,0
552
 
553
use_library.h-- 34: char aVersion_ed[11] = "version_ed\0";
554
00000384 76657273696F6E5F65640000 db      'version_ed',0,0
555
 
556
use_library.h-- 36: char aCheck_box_draw  [15] = "check_box_draw\0";
557
00000390 636865636B5F626F785F6472 db      'check_box_dr'
558
0000039C 61770000                 db      'aw',0,0
559
 
560
use_library.h-- 37: char aCheck_box_mouse [16] = "check_box_mouse\0";
561
000003A0 636865636B5F626F785F6D6F db      'check_box_mo'
562
000003AC 7573650000               db      'use',0,0
563
 
564
use_library.h-- 38: char aVersion_ch      [11] = "version_ch\0";
565
000003B1 76657273696F6E5F63680000 db      'version_ch',0,0
566
 
567
use_library.h-- 40: char aOption_box_draw [16] = "option_box_draw\0";
568
000003BD 6F7074696F6E5F626F785F64 db      'option_box_d'
569
000003C9 7261770000               db      'raw',0,0
570
 
571
use_library.h-- 41: char aOption_box_mouse[17] = "option_box_mouse\0";
572
000003CE 6F7074696F6E5F626F785F6D db      'option_box_m'
573
000003DA 6F7573650000             db      'ouse',0,0
574
 
575
use_library.h-- 42: char aVersion_op      [11] = "version_op\0" ;
576
000003E0 76657273696F6E5F6F700000 db      'version_op',0,0
577
 
578
use_library.h-- 65: $mov    eax,40
579
000003EC B828000000               mov     eax,28h
580
 
581
use_library.h-- 66: $mov    ebx,0x27
582
000003F1 BB27000000               mov     ebx,27h
583
 
584
use_library.h-- 67: $int    0x40
585
000003F6 CD40                     int     40h
586
 
587
use_library.h-- 69: $mov     eax, 68
588
000003F8 B844000000               mov     eax,44h
589
 
590
use_library.h-- 70: $mov     ebx, 19
591
000003FD BB13000000               mov     ebx,13h
592
 
593
use_library.h-- 71: ECX=#way_of_ini;
594
00000402 B946040000               mov     ecx,446h
595
 
596
use_library.h-- 72: $int     0x40
597
00000407 CD40                     int     40h
598
 
599
use_library.h-- 73: $test    eax, eax
600
00000409 85C0                     test    eax,eax
601
 
602
use_library.h-- 74: $jz      exit
603
0000040B 7435                     je      442h
604
 
605
use_library.h-- 77: $mov     edx,eax
606
0000040D 89C2                     mov     edx,eax
607
 
608
use_library.h-- 78: ESI=#edit_box_draw;
609
0000040F BE44030000               mov     esi,344h
610
 
611
use_library.h-- 80: $lodsd
612
00000414 AD                       lodsd
613
 
614
use_library.h-- 81: $test    eax,eax
615
00000415 85C0                     test    eax,eax
616
 
617
use_library.h-- 82: $jz      import_done
618
00000417 7426                     je      43Fh
619
 
620
use_library.h-- 83: $push    edx
621
00000419 52                       push    edx
622
 
623
use_library.h-- 85: $mov     ebx,DSDWORD[EDX]
624
0000041A 8B1A                     mov     ebx,[edx]
625
 
626
use_library.h-- 86: $test    ebx, ebx
627
0000041C 85DB                     test    ebx,ebx
628
 
629
use_library.h-- 87: $jz      exit
630
0000041E 7422                     je      442h
631
 
632
use_library.h-- 88: $push    eax
633
00000420 50                       push    eax
634
 
635
use_library.h-- 90: $mov     cl,DSBYTE[EAX];
636
00000421 8A08                     mov     cl,[eax]
637
 
638
use_library.h-- 91: $cmp     cl,DSBYTE[EBX];
639
00000423 3A0B                     cmp     cl,[ebx]
640
 
641
use_library.h-- 92: $jnz     import_find_next
642
00000425 7508                     jne     42Fh
643
 
644
use_library.h-- 93: $test    cl,cl
645
00000427 84C9                     test    cl,cl
646
 
647
use_library.h-- 94: $jz      import_found
648
00000429 740A                     je      435h
649
 
650
use_library.h-- 95: $inc     eax
651
0000042B 40                       inc     eax
652
 
653
use_library.h-- 96: $inc     ebx
654
0000042C 43                       inc     ebx
655
 
656
use_library.h-- 97: $jmp     nex1
657
0000042D EBF2                     jmp     short 421h
658
 
659
use_library.h-- 99: $pop     eax
660
0000042F 58                       pop     eax
661
 
662
use_library.h-- 100: $add     edx, 8
663
00000430 83C208                   add     edx,8
664
 
665
use_library.h-- 101: $jmp     import_find
666
00000433 EBE5                     jmp     short 41Ah
667
 
668
use_library.h-- 103: $pop     eax
669
00000435 58                       pop     eax
670
 
671
use_library.h-- 104: $mov     eax,DSDWORD[edx+4]
672
00000436 8B4204                   mov     eax,[edx+4]
673
 
674
use_library.h-- 105: $mov     DSDWORD[esi-4],eax
675
00000439 8946FC                   mov     [esi-4],eax
676
 
677
use_library.h-- 106: $pop     edx
678
0000043C 5A                       pop     edx
679
 
680
use_library.h-- 107: $jmp     import_loop
681
0000043D EBD5                     jmp     short 414h
682
 
683
use_library.h-- 109: return 0;
684
0000043F 31C0                     xor     eax,eax
685
00000441 C3                       ret
686
 
687
use_library.h-- 111: return -1;
688
00000442 83C8FF                   or      eax,0FFFFFFFFh
689
00000445 C3                       ret
690
 
691
EditBox2.c-- 13: char way_of_ini[250] = "/sys/lib/box_lib.obj",NULL; //содержимое EditBox'a
692
00000446 2F7379732F6C69622F626F78 db      '/sys/lib/box'
693
00000452 5F6C69622E6F626A00000000 db      '_lib.obj',0,0,0,0
694
0000045E 000000000000000000000000 db      0,0,0,0,0,0,0,0,0,0,0,0
695
0000046A 000000000000000000000000 db      0,0,0,0,0,0,0,0,0,0,0,0
696
00000476 000000000000000000000000 db      0,0,0,0,0,0,0,0,0,0,0,0
697
00000482 000000000000000000000000 db      0,0,0,0,0,0,0,0,0,0,0,0
698
0000048E 000000000000000000000000 db      0,0,0,0,0,0,0,0,0,0,0,0
699
0000049A 000000000000000000000000 db      0,0,0,0,0,0,0,0,0,0,0,0
700
000004A6 000000000000000000000000 db      0,0,0,0,0,0,0,0,0,0,0,0
701
000004B2 000000000000000000000000 db      0,0,0,0,0,0,0,0,0,0,0,0
702
000004BE 000000000000000000000000 db      0,0,0,0,0,0,0,0,0,0,0,0
703
000004CA 000000000000000000000000 db      0,0,0,0,0,0,0,0,0,0,0,0
704
000004D6 000000000000000000000000 db      0,0,0,0,0,0,0,0,0,0,0,0
705
000004E2 000000000000000000000000 db      0,0,0,0,0,0,0,0,0,0,0,0
706
000004EE 000000000000000000000000 db      0,0,0,0,0,0,0,0,0,0,0,0
707
000004FA 000000000000000000000000 db      0,0,0,0,0,0,0,0,0,0,0,0
708
00000506 000000000000000000000000 db      0,0,0,0,0,0,0,0,0,0,0,0
709
00000512 000000000000000000000000 db      0,0,0,0,0,0,0,0,0,0,0,0
710
0000051E 000000000000000000000000 db      0,0,0,0,0,0,0,0,0,0,0,0
711
0000052A 000000000000000000000000 db      0,0,0,0,0,0,0,0,0,0,0,0
712
00000536 00000000000000000000     db      0,0,0,0,0,0,0,0,0,0
713
 
714
EditBox2.c-- 15: edit_box edit1= {250,14,35,0xffffff,0x6f9480,0,0xAABBCC,0,248,#way_of_ini,2,20,20};
715
00000540 FA0000000E00000023000000 dd      0FAh,0Eh,23h
716
0000054C FFFFFF0080946F0000000000 dd      0FFFFFFh,6F9480h,0
717
00000558 CCBBAA0000000000F8000000 dd      0AABBCCh,0,0F8h
718
00000564 460400000200000014000000 dd      446h,2,14h
719
00000570 140000000000000000000000 dd      14h,0,0
720
0000057C 000000000000000000000000 dd      0,0,0
721
 
722
EditBox2.c-- 39: void main()
723
00000588 C8040000                 enter   4,0
724
 
725
EditBox2.c-- 42: load_dll();
726
0000058C E85BFEFFFF               call    3ECh
727
 
728
EditBox2.c-- 44: draw_window();
729
00000591 E868000000               call    5FEh
730
 
731
EditBox2.c-- 47: switch(WaitEvent())
732
00000596 E8B5010000               call    750h
733
0000059B 83F801                   cmp     eax,1
734
0000059E 0F8441000000             jz      5E5h
735
000005A4 83F802                   cmp     eax,2
736
000005A7 0F8423000000             jz      5D0h
737
000005AD 83F803                   cmp     eax,3
738
000005B0 0F8534000000             jnz     5EAh
739
 
740
EditBox2.c-- 51: id=GetButtonID();
741
000005B6 E8B0010000               call    76Bh
742
000005BB 8845FC                   mov     [ebp-4],al
743
 
744
EditBox2.c-- 52: IF (id==1) || (id==2) ExitProcess();
745
000005BE 3C01                     cmp     al,1
746
000005C0 7404                     je      5C6h
747
000005C2 3C02                     cmp     al,2
748
000005C4 7505                     jne     5CBh
749
000005C6 E88B010000               call    756h
750
 
751
EditBox2.c-- 53: break;
752
000005CB E91A000000               jmp     5EAh
753
 
754
EditBox2.c-- 56: GetKey();
755
000005D0 E887010000               call    75Ch
756
 
757
EditBox2.c-- 57: edit_box_key stdcall (#edit1);
758
000005D5 6840050000               push    540h
759
000005DA FF1548030000             call    dword ptr [348h]
760
 
761
EditBox2.c-- 58: break;
762
000005E0 E905000000               jmp     5EAh
763
 
764
EditBox2.c-- 60: case evReDraw: draw_window();   break;
765
000005E5 E814000000               call    5FEh
766
 
767
EditBox2.c-- 65: edit_box_mouse stdcall (#edit1);
768
000005EA 6840050000               push    540h
769
000005EF FF154C030000             call    dword ptr [34Ch]
770
000005F5 EB9F                     jmp     short 596h
771
 
772
EditBox2.c-- 69: ExitProcess();
773
000005F7 E85A010000               call    756h
774
000005FC C9                       leave
775
000005FD C3                       ret
776
 
777
EditBox2.c-- 74: WindowRedrawStatus(1);
778
000005FE 6A01                     push    1
779
00000600 E89CFAFFFF               call    0A1h
780
 
781
EditBox2.c-- 75: skin_width = GetSkinWidth();
782
00000605 E858010000               call    762h
783
0000060A A384070000               mov     [784h],eax
784
 
785
EditBox2.c-- 76: DefineAndDrawWindow(400,200,280,200,0x04,0x00E4DFE1,0,0,0); DrawTitle("Extended EditBox in C--");
786
0000060F 6890010000               push    190h
787
00000614 68C8000000               push    0C8h
788
00000619 6818010000               push    118h
789
0000061E 68C8000000               push    0C8h
790
00000623 6A04                     push    4
791
00000625 68E1DFE400               push    0E4DFE1h
792
0000062A 6A00                     push    0
793
0000062C 6A00                     push    0
794
0000062E 6A00                     push    0
795
00000630 E87BFAFFFF               call    0B0h
796
00000635 B9BA060000               mov     ecx,6BAh
797
0000063A E83B010000               call    77Ah
798
 
799
EditBox2.c-- 77: Form.getme();
800
0000063F 68E6090000               push    9E6h
801
00000644 E846FAFFFF               call    8Fh
802
 
803
EditBox2.c-- 79: WriteText(30,40,0x80,0,"Наипростейший пример EditBox'a на С--",0);
804
00000649 6A1E                     push    1Eh
805
0000064B 6A28                     push    28h
806
0000064D 6880000000               push    80h
807
00000652 6A00                     push    0
808
00000654 68D2060000               push    6D2h
809
00000659 6A00                     push    0
810
0000065B E8CAFAFFFF               call    12Ah
811
 
812
EditBox2.c-- 80: WriteText(30,50,0x80,0,"Но его можно немного усложнить с целью",0);
813
00000660 6A1E                     push    1Eh
814
00000662 6A32                     push    32h
815
00000664 6880000000               push    80h
816
00000669 6A00                     push    0
817
0000066B 68F8060000               push    6F8h
818
00000670 6A00                     push    0
819
00000672 E8B3FAFFFF               call    12Ah
820
 
821
EditBox2.c-- 81: WriteText(30,60,0x80,0,"уменьшения перерисовки.",0);
822
00000677 6A1E                     push    1Eh
823
00000679 6A3C                     push    3Ch
824
0000067B 6880000000               push    80h
825
00000680 6A00                     push    0
826
00000682 681F070000               push    71Fh
827
00000687 6A00                     push    0
828
00000689 E89CFAFFFF               call    12Ah
829
 
830
EditBox2.c-- 83: DrawFlatButton(100,105,70,22,2,0xD7D7D7,"Close");
831
0000068E 6A64                     push    64h
832
00000690 6A69                     push    69h
833
00000692 6A46                     push    46h
834
00000694 6A16                     push    16h
835
00000696 6A02                     push    2
836
00000698 68D7D7D700               push    0D7D7D7h
837
0000069D 6837070000               push    737h
838
000006A2 E832FBFFFF               call    1D9h
839
 
840
EditBox2.c-- 88: edit_box_draw  stdcall (#edit1);
841
000006A7 6840050000               push    540h
842
000006AC FF1544030000             call    dword ptr [344h]
843
 
844
EditBox2.c-- 92: WindowRedrawStatus(2);
845
000006B2 6A02                     push    2
846
000006B4 E8E8F9FFFF               call    0A1h
847
000006B9 C3                       ret
848
 
849
000006BA 457874656E64656420456469 db      'Extended Edi'
850
000006C6 74426F7820696E20432D2D00 db      'tBox in C--',0
851
000006D2 8DA0A8AFE0AEE1E2A5A9E8A8 db      'Наипростейши'
852
000006DE A920AFE0A8ACA5E020456469 db      'й пример Edi'
853
000006EA 74426F78276120ADA020912D db      'tBox'a на С-'
854
000006F6 2D008DAE20A5A3AE20ACAEA6 db      '-',0,'Но его мож'
855
00000702 ADAE20ADA5ACADAEA3AE20E3 db      'но немного у'
856
0000070E E1ABAEA6ADA8E2EC20E120E6 db      'сложнить с ц'
857
0000071A A5ABECEE00E3ACA5ADECE8A5 db      'елью',0,'уменьше'
858
00000726 ADA8EF20AFA5E0A5E0A8E1AE db      'ния перерисо'
859
00000732 A2AAA82E00436C6F736500   db      'вки.',0,'Close',0
860
 
861
..\lib\kolibri.h-- 287: ECX=0;
862
0000073D 31C9                     xor     ecx,ecx
863
 
864
..\lib\kolibri.h-- 288: EAX=0;
865
0000073F 89C8                     mov     eax,ecx
866
 
867
..\lib\kolibri.h-- 289: ECX--;
868
00000741 49                       dec     ecx
869
 
870
..\lib\kolibri.h-- 290: $REPNE $SCASB
871
00000742 F2AE                     repne   scasb
872
 
873
..\lib\kolibri.h-- 291: EAX=EAX-2-ECX;
874
00000744 83E802                   sub     eax,2
875
00000747 29C8                     sub     eax,ecx
876
00000749 C3                       ret
877
 
878
..\lib\kolibri.h-- 215: EAX = 13;
879
0000074A 6A0D                     push    0Dh
880
0000074C 58                       pop     eax
881
 
882
..\lib\kolibri.h-- 216: $int 0x40
883
0000074D CD40                     int     40h
884
 
885
..\lib\kolibri.h-- 217: #codesize
886
0000074F C3                       ret
887
 
888
..\lib\kolibri.h-- 156: EAX = 10;              // wait here for event
889
00000750 6A0A                     push    0Ah
890
00000752 58                       pop     eax
891
 
892
..\lib\kolibri.h-- 157: $int 0x40
893
00000753 CD40                     int     40h
894
00000755 C3                       ret
895
 
896
..\lib\kolibri.h-- 161: EAX = -1;              // close this program
897
00000756 83C8FF                   or      eax,0FFFFFFFFh
898
 
899
..\lib\kolibri.h-- 162: $int 0x40
900
00000759 CD40                     int     40h
901
0000075B C3                       ret
902
 
903
..\lib\kolibri.h-- 172: EAX = 2;              // just read this key from buffer
904
0000075C 6A02                     push    2
905
0000075E 58                       pop     eax
906
 
907
..\lib\kolibri.h-- 173: $int  0x40
908
0000075F CD40                     int     40h
909
00000761 C3                       ret
910
 
911
..\lib\kolibri.h-- 249: EAX = 48;
912
00000762 6A30                     push    30h
913
00000764 58                       pop     eax
914
 
915
..\lib\kolibri.h-- 250: EBX = 4;
916
00000765 6A04                     push    4
917
00000767 5B                       pop     ebx
918
 
919
..\lib\kolibri.h-- 251: $int 0x40
920
00000768 CD40                     int     40h
921
0000076A C3                       ret
922
 
923
..\lib\kolibri.h-- 184: EAX = 17;            // Get ID
924
0000076B 6A11                     push    11h
925
0000076D 58                       pop     eax
926
 
927
..\lib\kolibri.h-- 185: $int  0x40
928
0000076E CD40                     int     40h
929
 
930
..\lib\kolibri.h-- 186: EAX = EAX >> 8;
931
00000770 C1E808                   shr     eax,8
932
00000773 C3                       ret
933
 
934
..\lib\kolibri.h-- 151: EAX = 8;
935
00000774 6A08                     push    8
936
00000776 58                       pop     eax
937
 
938
..\lib\kolibri.h-- 152: $int 0x40
939
00000777 CD40                     int     40h
940
00000779 C3                       ret
941
 
942
..\lib\kolibri.h-- 242: EAX = 71;
943
0000077A 6A47                     push    47h
944
0000077C 58                       pop     eax
945
 
946
..\lib\kolibri.h-- 243: EBX = 1;
947
0000077D 31DB                     xor     ebx,ebx
948
0000077F 43                       inc     ebx
949
 
950
..\lib\kolibri.h-- 244: $int 0x40;
951
00000780 CD40                     int     40h
952
00000782 C3                       ret