Function at 0x420cd0
Capabilities:
Check if file exists
Delete file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x470c0a
mov eax, dword fs:[0]
push eax
sub esp, 0x284
mov eax, dword [0x4926cc]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x270], edx
mov edi, ecx
mov dword [ebp - 0x278], edi
xor ebx, ebx
xor esi, esi
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0x20], esi
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x18], ebx
mov dword [ebp - 0x14], ebx
test edi, edi
je 0x420d60
cmp word [edi], bx
je 0x420d60
mov esi, edi
lea ecx, [esi + 2]
lea ecx, [ecx]
mov ax, word [esi]
add esi, 2
test ax, ax
jne 0x420d30
sub esi, ecx
sar esi, 1
push esi
lea ecx, [ebp - 0x24]
call fcn.004045c0
mov ebx, dword [ebp - 0x24]
push esi
push edi
push eax
push ebx
call fcn.00454b08
add esp, 0x10
xor eax, eax
mov word [ebx + esi*2], ax
mov dword [ebp - 0x20], esi
push str..zip
push ebx
mov dword [ebp - 4], 0
call fcn.00455005
add esp, 8
test eax, eax
jne 0x420d7e
or eax, 0xffffffff
jmp 0x420d82
sub eax, ebx
sar eax, 1
push eax
push 0
lea eax, [ebp - 0x290]
push eax
lea ecx, [ebp - 0x24]
call fcn.00404460
mov edi, eax
mov eax, dword [edi]
mov dword [ebp - 0x26c], eax
test eax, eax
je 0x420da8
cmp word [eax], 0
jne 0x420db3
mov eax, 0x481274
mov dword [ebp - 0x26c], eax
mov edi, dword [edi + 4]
test eax, eax
je 0x420e06
cmp word [eax], 0
je 0x420e06
test edi, edi
jns 0x420ddf
mov edi, eax
lea ecx, [edi + 2]
lea esp, [esp]
mov ax, word [edi]
add edi, 2
test ax, ax
jne 0x420dd0
sub edi, ecx
sar edi, 1
push edi
lea ecx, [ebp - 0x24]
call fcn.004045c0
mov ebx, dword [ebp - 0x24]
push edi
push dword [ebp - 0x26c]
push eax
push ebx
call fcn.00454b08
add esp, 0x10
xor eax, eax
mov word [ebx + edi*2], ax
mov esi, edi
jmp 0x420e14
test ebx, ebx
je 0x420e17
xor eax, eax
mov word [ebx], ax
mov dword [ebp - 0x1c], eax
xor esi, esi
mov dword [ebp - 0x20], esi
mov eax, dword [ebp - 0x290]
test eax, eax
je 0x420e34
push eax
call fcn.004547da
add esp, 4
mov dword [ebp - 0x290], 0
mov eax, dword [ebp - 0x284]
mov dword [ebp - 0x288], 0
mov dword [ebp - 0x28c], 0
test eax, eax
je 0x420e5b
push eax
call fcn.004547da
add esp, 4
test ebx, ebx
je 0x420e65
cmp word [ebx], 0
jne 0x420e6a
mov ebx, 0x481274
push ebx
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
cmp eax, 1
sete al
test al, al
jne 0x420e85
lea ecx, [ebp - 0x24]
call fcn.00420990
jmp 0x420e9b
sub esp, 0x14
lea eax, [ebp - 0x24]
mov ecx, esp
push eax
call fcn.00403fa0
call fcn.00421890
add esp, 0x14
lea eax, [esi + 1]
push eax
lea ecx, [ebp - 0x24]
call fcn.004045c0
push 0x4814f0
push eax
push dword [ebp - 0x24]
call fcn.004544c5
mov esi, dword [ebp - 0x278]
inc dword [ebp - 0x20]
add esp, 0xc
mov ecx, esi
call fcn.004213b0
mov dword [ebp - 0x27c], eax
test eax, eax
jne 0x420efe
push eax
push str.zip__file_cnt__:__d
push str.Utils
push 0x20f
push str.utilsUtils.cpp
push 4
call fcn.0040f8f0
push eax
call fcn.00402130
add esp, 0x1c
xor ebx, ebx
jmp 0x421255
push 2
xor edx, edx
mov ecx, esi
call fcn.00409180
mov esi, eax
add esp, 4
mov dword [ebp - 0x26c], esi
test esi, esi
jne 0x420f1f
xor ebx, ebx
jmp 0x421255
lea eax, [ebp - 0x268]
xor ebx, ebx
push eax
xor edx, edx
mov ecx, esi
mov dword [ebp - 0x274], ebx
call fcn.00409200
add esp, 4
test eax, eax
jne 0x42124e
mov dword [ebp - 0x278], ebx
mov ebx, dword [ebp - 0x270]
mov edi, edi
lea eax, [ebp - 0x24]
push eax
lea ecx, [ebp - 0x38]
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x2c], 0
call fcn.00403fa0
mov byte [ebp - 4], 1
cmp word [ebp - 0x264], 0
je 0x420fb7
lea esi, [ebp - 0x264]
lea ecx, [esi + 2]
mov ax, word [esi]
add esi, 2
test ax, ax
jne 0x420f81
mov eax, dword [ebp - 0x34]
sub esi, ecx
sar esi, 1
add eax, esi
push eax
lea ecx, [ebp - 0x38]
call fcn.004045c0
mov edi, dword [ebp - 0x38]
lea ecx, [ebp - 0x264]
push ecx
push eax
push edi
call fcn.004544c5
add esp, 0xc
add dword [ebp - 0x34], esi
jmp 0x420fba
mov edi, dword [ebp - 0x38]
test edi, edi
je 0x420fc6
cmp word [edi], 0
mov eax, edi
jne 0x420fcb
mov eax, 0x481274
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
cmp eax, 1
sete al
test al, al
je 0x421073
test edi, edi
je 0x420fec
cmp word [edi], 0
mov eax, edi
jne 0x420ff1
mov eax, 0x481274
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
mov esi, eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, dword [0x4969d0]
test cl, 1
jne 0x42104f
or ecx, 1
mov dword [0x4969d0], ecx
mov byte [ebp - 4], 2
sub esp, 8
mov dword [0x4969ac], 0
mov dword [0x4969b0], 0
mov dword [0x4969b4], 0
call fcn.00401b40
push 0x471ef0
call fcn.00453882
add esp, 4
mov byte [ebp - 4], 1
push esi
push 0x482978
push str.Utils
push 0x221
push str.utilsUtils.cpp
push 1
push 0x496990
call fcn.00402130
add esp, 0x1c
cmp dword [ebp - 0x34], 0
setle al
test al, al
jne 0x421360
test edi, edi
je 0x42108e
cmp word [edi], 0
mov eax, edi
jne 0x421093
mov eax, 0x481274
push 0
push 0x80
push 4
push 0
push 0
push 0xc0000000
push eax
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov esi, eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x270], eax
cmp esi, 0xffffffff
je 0x4212eb
mov eax, dword [ebp - 0x26c]
cmp dword [eax], 1
jne 0x421293
mov ecx, dword [eax + 4]
push 1
push 0
push esi
push dword [ebp - 0x274]
call fcn.00408cb0
mov dword [0x495ddc], eax
test eax, eax
jne 0x42129d
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov esi, dword [ebx + 4]
lea eax, [ebp - 0x38]
cmp eax, esi
jae 0x421149
mov eax, dword [ebx]
lea ecx, [ebp - 0x38]
cmp eax, ecx
ja 0x421149
sub ecx, eax
mov eax, 0x66666667
imul ecx
sar edx, 3
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dword [ebp - 0x270], eax
cmp esi, dword [ebx + 8]
jne 0x421138
push ecx
mov ecx, ebx
call fcn.00410690
mov eax, dword [ebp - 0x270]
lea ecx, [eax + eax*4]
mov eax, dword [ebx]
lea eax, [eax + ecx*4]
mov ecx, dword [ebx + 4]
test ecx, ecx
je 0x421166
jmp 0x421160
cmp esi, dword [ebx + 8]
jne 0x421156
push ecx
mov ecx, ebx
call fcn.00410690
mov ecx, dword [ebx + 4]
test ecx, ecx
je 0x421166
lea eax, [ebp - 0x38]
push eax
call fcn.00403fa0
mov eax, dword [ebp - 0x278]
add eax, 0x64
mov dword [ebp - 0x278], eax
cdq
idiv dword [ebp - 0x27c]
mov ecx, dword [0x4969d4]
add dword [ebx + 4], 0x14
inc dword [ebp - 0x274]
mov esi, eax
test cl, 1
jne 0x4211ee
or ecx, 1
mov dword [0x4969d4], ecx
mov byte [ebp - 4], 4
mov dword [0x496a2c], 0
mov dword [0x496a34], 0
mov dword [0x496a40], 0
mov dword [0x496a4c], 0
mov dword [0x496a50], 0
mov dword [0x496a58], 0
call fcn.00410ba0
push 0x471f60
call fcn.00453882
add esp, 4
push esi
push 0
push 0x465
push dword [0x496a2c]
call dword [sym.imp.USER32.dll_PostMessageW]
mov byte [ebp - 4], 0
test edi, edi
je 0x421213
push edi
call fcn.004547da
add esp, 4
mov eax, dword [ebp - 0x2c]
test eax, eax
je 0x421223
push eax
call fcn.004547da
add esp, 4
mov esi, dword [ebp - 0x26c]
mov edx, dword [ebp - 0x274]
lea eax, [ebp - 0x268]
push eax
mov ecx, esi
call fcn.00409200
add esp, 4
test eax, eax
je 0x420f50
mov ebx, dword [ebp - 0x274]
mov ecx, esi
call fcn.004094a0
mov eax, dword [ebp - 0x24]
test eax, eax
je 0x421265
push eax
call fcn.004547da
add esp, 4
mov ecx, dword [ebp - 0x18]
test ecx, ecx
je 0x421275
push ecx
call fcn.004547da
add esp, 4
mov eax, ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00452ca6
mov esp, ebp
pop ebp
ret
mov dword [0x495ddc], 0x80000
lea ecx, [ebp - 0x38]
call fcn.0040f980
push eax
push str.Unzip_file_item_err:__s
push str.Utils
push 0x22d
push str.utilsUtils.cpp
push 4
call fcn.0040f8f0
push eax
call fcn.00402130
mov ecx, dword [ebp - 0x26c]
add esp, 0x1c
call fcn.004094a0
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
lea ecx, [ebp - 0x38]
call fcn.00404110
xor ebx, ebx
jmp 0x421255
mov eax, dword [0x4969d0]
test al, 1
jne 0x421337
or eax, 1
mov dword [0x4969d0], eax
mov byte [ebp - 4], 3
sub esp, 8
mov dword [0x4969ac], 0
mov dword [0x4969b0], 0
mov dword [0x4969b4], 0
call fcn.00401b40
push 0x471ef0
call fcn.00453882
add esp, 4
mov byte [ebp - 4], 1
push dword [ebp - 0x270]
push str.writeFile_erro___d
push str.Utils
push 0x29d
push str.utilsUtils.cpp
push 4
push 0x496990
call fcn.00402130
add esp, 0x1c
lea ecx, [ebp - 0x38]
call fcn.0040f980
push eax
push str.Unzip_openFile_err:__s
push str.Utils
push 0x226
push str.utilsUtils.cpp
push 4
call fcn.0040f8f0
push eax
call fcn.00402130
mov ecx, dword [ebp - 0x26c]
add esp, 0x1c
call fcn.004094a0
lea ecx, [ebp - 0x38]
call fcn.00404110
xor ebx, ebx
jmp 0x421255