Function at 0x468770
Capabilities:
Write file on windows

Disassembly:
sub esp, 0x1ec
mov eax, dword [0x55bb24]
xor eax, esp
mov dword [esp + 0x1e4], eax
push ebx
mov eax, dword [esp + 0x1f8]
push ebp
push esi
push edi
push 0
push 0
push 0
push 0
mov ebx, ecx
push 0x100
lea ecx, [esp + 0x84]
push ecx
lea edx, [esp + 0x38]
push edx
push ebx
mov dword [esp + 0x30], ebx
mov dword [esp + 0x34], eax
call fcn.004db2e0
mov esi, eax
test esi, esi
je 0x4687d2
push esi
push str.error__d_with_zipfile_in_unzGetCurrentFileInfo_n
call fcn.004f32f3
add esp, 8
jmp 0x468a93
push 0x2000
call fcn.004f2867
add esp, 4
mov dword [esp + 0x18], eax
test eax, eax
jne 0x4687fe
push str.Error_allocating_memory_n
call fcn.004f32f3
add esp, 4
mov eax, 0xffffff98
jmp 0x468a95
mov al, byte [esp + 0x70]
lea ebp, [esp + 0x70]
mov ecx, ebp
test al, al
je 0x468828
lea esp, [esp]
cmp al, 0x2f
je 0x468818
cmp al, 0x5c
jne 0x46881b
lea ebp, [ecx + 1]
mov al, byte [ecx + 1]
inc ecx
test al, al
jne 0x468810
cmp byte [ebp], al
jne 0x468859
mov eax, dword [esp + 0x200]
cmp dword [eax], 0
jne 0x468a86
lea ecx, [esp + 0x70]
push ecx
push str.creating_directory:__s_n
call fcn.004f32f3
lea edx, [esp + 0x78]
push edx
call fcn.0051e613
add esp, 0xc
jmp 0x468a86
mov eax, dword [esp + 0x200]
cmp dword [eax], 0
mov dword [esp + 0x1c], 0
lea edi, [esp + 0x70]
je 0x468873
mov edi, ebp
push 0
push ebx
call fcn.004dbdb0
mov esi, eax
test esi, esi
je 0x46888f
push esi
push str.error__d_with_zipfile_in_unzOpenCurrentFilePassword_n
call fcn.004f32f3
add esp, 8
mov ecx, dword [esp + 0x14]
cmp dword [ecx], 0
jne 0x468933
test esi, esi
jne 0x468a80
push 0x53e768
push edi
call fcn.004f347c
add esp, 8
test eax, eax
je 0x46893b
push eax
call fcn.004f1b5e
add esp, 4
push edi
push str.The_file__s_exists._Overwrite____y_es___n_o___A_ll:
call fcn.004f32f3
lea edx, [esp + 0x178]
push edx
push 0x53e7a4
call fcn.004f3201
add esp, 0x10
cmp eax, 1
jne 0x468910
mov al, byte [esp + 0x170]
cmp al, 0x61
jl 0x4688f9
cmp al, 0x7a
jg 0x4688f9
sub al, 0x20
cmp al, 0x59
je 0x468905
cmp al, 0x4e
je 0x468909
cmp al, 0x41
jne 0x4688c3
cmp al, 0x4e
jne 0x468917
mov ecx, 1
jmp 0x46891b
push 1
call fcn.004f3733
mov ecx, dword [esp + 0x1c]
cmp al, 0x41
jne 0x468929
mov eax, dword [esp + 0x14]
mov dword [eax], 1
test ecx, ecx
jne 0x468a4d
jmp 0x46893b
test esi, esi
jne 0x468a80
push 0x53e7a8
push edi
call fcn.004f347c
mov ebx, eax
add esp, 8
test ebx, ebx
jne 0x468997
mov ecx, dword [esp + 0x200]
cmp dword [ecx], eax
jne 0x468980
lea edx, [esp + 0x70]
cmp ebp, edx
je 0x468980
mov bl, byte [ebp - 1]
mov byte [ebp - 1], al
call fcn.00468690
push 0x53e7a8
push edi
mov byte [ebp - 1], bl
call fcn.004f347c
add esp, 8
mov ebx, eax
test ebx, ebx
jne 0x468997
push edi
push str.error_opening__s_n
call fcn.004f32f3
add esp, 8
jmp 0x468a49
push edi
push str._extracting:__s_n
call fcn.004f32f3
add esp, 8
jmp 0x4689b0
mov ebp, dword [esp + 0x18]
mov eax, dword [esp + 0x10]
push 0x2000
push ebp
push eax
call fcn.004dbdd0
mov esi, eax
test esi, esi
jl 0x468a69
jle 0x4689f2
push ebx
push 1
push esi
push ebp
call fcn.004f15bf
add esp, 0x10
cmp eax, 1
je 0x4689b0
push str.error_in_writing_extracted_file_n
call fcn.004f32f3
add esp, 4
or esi, 0xffffffff
test ebx, ebx
je 0x4689ff
push ebx
call fcn.004f1b5e
add esp, 4
test esi, esi
jne 0x468a7c
mov ecx, dword [esp + 0x58]
mov edx, dword [esp + 0x5c]
sub esp, 0x18
mov eax, esp
mov dword [eax], ecx
mov ecx, dword [esp + 0x78]
mov dword [eax + 4], edx
mov edx, dword [esp + 0x7c]
mov dword [eax + 8], ecx
mov ecx, dword [esp + 0x80]
mov dword [eax + 0xc], edx
mov edx, dword [esp + 0x84]
mov dword [eax + 0x10], ecx
mov ecx, dword [esp + 0x48]
mov dword [eax + 0x14], edx
mov eax, edi
call fcn.00468610
add esp, 0x18
mov ebx, dword [esp + 0x10]
push ebx
call fcn.004dc2a0
mov esi, eax
test esi, esi
je 0x468a86
push esi
push str.error__d_with_zipfile_in_unzCloseCurrentFile_n
call fcn.004f32f3
add esp, 8
jmp 0x468a86
push esi
push str.error__d_with_zipfile_in_unzReadCurrentFile_n
call fcn.004f32f3
add esp, 8
jmp 0x4689f2
mov ebx, dword [esp + 0x10]
push ebx
call fcn.004dc2a0
mov eax, dword [esp + 0x18]
push eax
call fcn.004f0a4a
add esp, 4
mov eax, esi
mov ecx, dword [esp + 0x1f4]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.004f070d
add esp, 0x1ec
ret