Rev 227 | Rev 269 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 227 | Rev 237 | ||
---|---|---|---|
Line 516... | Line 516... | ||
516 | test eax, eax |
516 | test eax, eax |
517 | jnz .fail |
517 | jnz .fail |
518 | 518 | ||
Line 519... | Line 519... | ||
519 | mov eax, [file_size] |
519 | mov eax, [file_size] |
- | 520 | cmp eax, 1024*1024*16 |
|
- | 521 | ja .fail |
|
Line 520... | Line 522... | ||
520 | 522 | ||
521 | stdcall kernel_alloc, [file_size] |
523 | stdcall kernel_alloc, [file_size] |
Line 522... | Line 524... | ||
522 | mov [file], eax |
524 | mov [file], eax |
Line 527... | Line 529... | ||
527 | 529 | ||
Line 528... | Line 530... | ||
528 | mov eax, [file] |
530 | mov eax, [file] |
529 | cmp dword [eax], 0x4B43504B |
531 | cmp dword [eax], 0x4B43504B |
530 | jne .exit |
532 | jne .exit |
531 | - | ||
- | 533 | mov ebx, [eax+4] |
|
- | 534 | mov [file_size], ebx |
|
532 | stdcall kernel_alloc, [eax+4] |
535 | stdcall kernel_alloc, ebx |
Line 533... | Line 536... | ||
533 | 536 | ||
534 | test eax, eax |
537 | test eax, eax |
Line 535... | Line 538... | ||
535 | jz .cleanup |
538 | jz .cleanup |
536 | 539 | ||
537 | mov [file2], eax |
540 | mov [file2], eax |
538 | stdcall unpack, [file], eax |
541 | stdcall unpack, [file], eax |
- | 542 | stdcall kernel_free, [file] |
|
539 | stdcall kernel_free, [file] |
543 | mov eax, [file2] |
540 | mov eax, [file2] |
544 | mov ebx, [file_size] |
541 | .exit: |
545 | .exit: |
542 | ret |
546 | ret |
543 | .cleanup: |
547 | .cleanup: |
544 | stdcall kernel_free, [file] |
548 | stdcall kernel_free, [file] |
- | 549 | .fail: |
|
545 | .fail: |
550 | xor eax, eax |
546 | xor eax, eax |
551 | xor ebx, ebx |
Line 547... | Line 552... | ||
547 | ret |
552 | ret |
548 | endp |
553 | endp |
Line 860... | Line 865... | ||
860 | 865 | ||
Line 861... | Line 866... | ||
861 | cli |
866 | cli |
Line 862... | Line 867... | ||
862 | 867 | ||
863 | stdcall load_file, [file_name] |
- | |
864 | 868 | stdcall load_file, [file_name] |
|
865 | test eax, eax |
869 | test eax, eax |
Line 866... | Line 870... | ||
866 | jz .fail |
870 | jz .fail |
867 | 871 |