The block is passed to the plugin: ;--------------------------------------------------------------------- ; not change this section!!! ; start section ;--------------------------------------------------------------------- align 4 image_file dd 0 ;+0 raw_pointer dd 0 ;+4 return_code dd 0 ;+8 img_size dd 0 ;+12 deflate_unpack dd 0 ;+16 raw_pointer_2 dd 0 ;+20 ;--------------------------------------------------------------------- ; end section ;--------------------------------------------------------------------- Calling plugins: ;--------------------------------------------------------------------- convert: xor eax,eax cmp [error_fs],eax jnz .error mov [return_code],eax ; mov eax,image_file push image_file call [plugin] cmp [return_code],dword 0 je @f cmp [return_code],dword 2 je @f ;------------------------------- xor eax,eax mov [return_code],eax ; mov eax,image_file push image_file call [plugin_1] cmp [return_code],dword 0 je @f cmp [return_code],dword 2 je @f ;------------------------------- xor eax,eax mov [return_code],eax ; mov eax,image_file push image_file call [plugin_2] cmp [return_code],dword 0 je @f cmp [return_code],dword 2 je @f ;------------------------------- xor eax,eax mov [return_code],eax ; mov eax,image_file push image_file call [plugin_3] ;------------------------------- @@: mov ecx,[image_file] mcall 68,13 cmp [return_code],dword 0 je .all_ok xor eax,eax ;-------------------------------