Function at 0x41ce55
Capabilities:
Delete file

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xd8
mov eax, dword [ebp + 0x1c]
mov word [ebp - 0x9c], ax
mov dword [ebp - 0x10], 0
mov dword [ebp - 0x14], 0
lea eax, [ebp - 0x68]
mov dword [esp], eax
call sym._mz_zip_zero_struct
mov eax, dword [ebp + 0x20]
test eax, eax
jns 0x41ce8f
mov dword [ebp + 0x20], 6
cmp dword [ebp + 8], 0
je 0x41cec2
cmp dword [ebp + 0xc], 0
je 0x41cec2
cmp dword [ebp + 0x14], 0
je 0x41cea7
cmp dword [ebp + 0x10], 0
je 0x41cec2
cmp word [ebp - 0x9c], 0
je 0x41ceb7
cmp dword [ebp + 0x18], 0
je 0x41cec2
mov eax, dword [ebp + 0x20]
and eax, 0xf
cmp eax, 0xa
jbe 0x41cedb
cmp dword [ebp + 0x24], 0
je 0x41ced1
mov eax, dword [ebp + 0x24]
mov dword [eax], 0x18
mov eax, 0
jmp 0x41d0dd
mov eax, dword [ebp + 0xc]
mov dword [esp], eax
call sym._mz_zip_writer_validate_archive_name
test eax, eax
jne 0x41cf03
cmp dword [ebp + 0x24], 0
je 0x41cef9
mov eax, dword [ebp + 0x24]
mov dword [eax], 0x19
mov eax, 0
jmp 0x41d0dd
lea eax, [ebp - 0x98]
mov dword [esp + 4], eax
mov eax, dword [ebp + 8]
mov dword [esp], eax
call sym._stat
test eax, eax
je 0x41cf6d
mov eax, dword [ebp + 0x20]
mov dword [esp + 0x10], eax
mov dword [esp + 8], 0
mov dword [esp + 0xc], 0
mov eax, dword [ebp + 8]
mov dword [esp + 4], eax
lea eax, [ebp - 0x68]
mov dword [esp], eax
call sym._mz_zip_writer_init_file_v2
test eax, eax
jne 0x41cf61
cmp dword [ebp + 0x24], 0
je 0x41cf57
mov edx, dword [ebp - 0x4c]
mov eax, dword [ebp + 0x24]
mov dword [eax], edx
mov eax, 0
jmp 0x41d0dd
mov dword [ebp - 0x10], 1
jmp 0x41d00d
mov eax, dword [ebp + 0x20]
or ah, 8
mov dword [esp + 0x14], 0
mov dword [esp + 0x18], 0
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 0
mov dword [esp + 8], eax
mov eax, dword [ebp + 8]
mov dword [esp + 4], eax
lea eax, [ebp - 0x68]
mov dword [esp], eax
call sym._mz_zip_reader_init_file_v2
test eax, eax
jne 0x41cfc5
cmp dword [ebp + 0x24], 0
je 0x41cfbb
mov edx, dword [ebp - 0x4c]
mov eax, dword [ebp + 0x24]
mov dword [eax], edx
mov eax, 0
jmp 0x41d0dd
mov eax, dword [ebp + 0x20]
mov dword [esp + 8], eax
mov eax, dword [ebp + 8]
mov dword [esp + 4], eax
lea eax, [ebp - 0x68]
mov dword [esp], eax
call sym._mz_zip_writer_init_from_reader_v2
test eax, eax
jne 0x41d00d
cmp dword [ebp + 0x24], 0
je 0x41cff0
mov edx, dword [ebp - 0x4c]
mov eax, dword [ebp + 0x24]
mov dword [eax], edx
mov dword [esp + 4], 0
lea eax, [ebp - 0x68]
mov dword [esp], eax
call sym._mz_zip_reader_end_internal
mov eax, 0
jmp 0x41d0dd
movzx eax, word [ebp - 0x9c]
mov dword [esp + 0x24], 0
mov dword [esp + 0x1c], 0
mov dword [esp + 0x20], 0
mov edx, dword [ebp + 0x20]
mov dword [esp + 0x18], edx
mov dword [esp + 0x14], eax
mov eax, dword [ebp + 0x18]
mov dword [esp + 0x10], eax
mov eax, dword [ebp + 0x14]
mov dword [esp + 0xc], eax
mov eax, dword [ebp + 0x10]
mov dword [esp + 8], eax
mov eax, dword [ebp + 0xc]
mov dword [esp + 4], eax
lea eax, [ebp - 0x68]
mov dword [esp], eax
call sym._mz_zip_writer_add_mem_ex
mov dword [ebp - 0xc], eax
mov eax, dword [ebp - 0x4c]
mov dword [ebp - 0x14], eax
lea eax, [ebp - 0x68]
mov dword [esp], eax
call sym._mz_zip_writer_finalize_archive
test eax, eax
jne 0x41d089
cmp dword [ebp - 0x14], 0
jne 0x41d082
mov eax, dword [ebp - 0x4c]
mov dword [ebp - 0x14], eax
mov dword [ebp - 0xc], 0
mov eax, dword [ebp - 0xc]
mov dword [esp + 4], eax
lea eax, [ebp - 0x68]
mov dword [esp], eax
call sym._mz_zip_writer_end_internal
test eax, eax
jne 0x41d0b2
cmp dword [ebp - 0x14], 0
jne 0x41d0ab
mov eax, dword [ebp - 0x4c]
mov dword [ebp - 0x14], eax
mov dword [ebp - 0xc], 0
cmp dword [ebp - 0xc], 0
jne 0x41d0cc
cmp dword [ebp - 0x10], 0
je 0x41d0cc
mov eax, dword [ebp + 8]
mov dword [esp], eax
call sym._remove
mov dword [ebp - 0x18], eax
cmp dword [ebp + 0x24], 0
je 0x41d0da
mov eax, dword [ebp + 0x24]
mov edx, dword [ebp - 0x14]
mov dword [eax], edx
mov eax, dword [ebp - 0xc]
leave
ret