Rev 427 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 427 | Rev 432 | ||
---|---|---|---|
Line 244... | Line 244... | ||
244 | ; eax= error code |
244 | ; eax= error code |
245 | 245 | ||
Line 246... | Line 246... | ||
246 | align 4 |
246 | align 4 |
247 | srv_handlerEx: |
247 | srv_handlerEx: |
248 | test ebx, ebx |
248 | cmp ebx, OS_BASE |
249 | jz .fail |
249 | jae .fail |
250 | ; add ebx, new_app_base |
- | |
Line 251... | Line 250... | ||
251 | 250 | ||
252 | mov eax, [ebx+handle] |
251 | mov eax, [ebx+handle] |
253 | cmp [eax+SRV.magic], ' SRV' |
252 | cmp [eax+SRV.magic], ' SRV' |
Line 254... | Line 253... | ||
254 | jne .fail |
253 | jne .fail |
255 | 254 | ||
Line 256... | Line -... | ||
256 | cmp [eax+SRV.size], SRV_SIZE |
- | |
257 | jne .fail |
- | |
258 | - | ||
259 | ; add [ebx+input], new_app_base |
255 | cmp [eax+SRV.size], SRV_SIZE |
260 | ; add [ebx+output], new_app_base |
256 | jne .fail |
261 | 257 | ||
262 | stdcall [eax+SRV.srv_proc], ebx |
258 | stdcall [eax+SRV.srv_proc], ebx |
263 | ret |
259 | ret |
Line 435... | Line 431... | ||
435 | mov ebx, [file_name] |
431 | mov ebx, [file_name] |
436 | mov ecx, [off] |
432 | mov ecx, [off] |
437 | mov edx, [bytes] |
433 | mov edx, [bytes] |
438 | mov esi, [buffer] |
434 | mov esi, [buffer] |
439 | ; sub ebx, new_app_base |
435 | |
440 | ; sub esi, new_app_base |
- | |
441 | - | ||
Line 442... | Line 436... | ||
442 | mov [cmd], eax |
436 | mov [cmd], eax |
443 | mov [offset], ecx |
437 | mov [offset], ecx |
444 | mov [offset+4], eax |
438 | mov [offset+4], eax |
445 | mov [count], edx |
439 | mov [count], edx |
446 | mov [buff], esi |
440 | mov [buff], esi |
447 | mov byte [buff+4], al |
441 | mov byte [buff+4], al |
448 | mov [name], ebx |
442 | mov [name], ebx |
Line -... | Line 443... | ||
- | 443 | ||
449 | 444 | pushad |
|
450 | mov eax, 70 |
445 | push eax |
451 | lea ebx, [cmd] |
446 | lea eax, [cmd] |
452 | ; sub ebx, new_app_base |
447 | call file_system_lfn |
- | 448 | pop eax |
|
453 | int 0x40 |
449 | popad |
454 | ret |
450 | ret |
Line 455... | Line 451... | ||
455 | endp |
451 | endp |
456 | 452 |