Function at 0x40e3e0
Capabilities:
Delete file

Disassembly:
sub esp, 0x198
mov eax, dword [0x4630e0]
xor eax, esp
mov dword [esp + 0x194], eax
mov eax, dword [str.All_Files__._]
mov edx, dword [0x4537b0]
mov ecx, dword [0x4537ac]
push ebp
mov ebp, dword [esp + 0x1a0]
push edi
mov dword [esp + 0x18], eax
mov eax, dword [0x4537b4]
push 0x6b
mov dword [esp + 0x28], eax
mov dword [esp + 0x20], ecx
mov ecx, dword [0x4537b8]
mov dword [esp + 0x24], edx
mov dl, byte [0x4537bc]
lea eax, [esp + 0x31]
push 0
push eax
mov dword [esp + 0x14], 0
mov dword [esp + 0x34], ecx
mov byte [esp + 0x38], dl
call fcn.0043ae80
mov eax, dword [esp + 0x1b4]
mov ecx, dword [0x464c00]
mov edi, eax
imul edi, edi, 0x1008
add ecx, edi
add esp, 0xc
cmp dword [ecx], 0x1a
mov dword [esp + 0xc], ecx
jne 0x40e499
push 0x94
call fcn.0040ab70
add esp, 4
pop edi
mov eax, 1
pop ebp
mov ecx, dword [esp + 0x194]
xor ecx, esp
call fcn.0043b76b
add esp, 0x198
ret
push ebx
push esi
lea esi, [eax + eax*2]
mov eax, dword [0x464bfc]
xor edx, edx
shl esi, 5
cmp dword [esi + eax + 0x50], edx
push 0x400
setne dl
mov dword [esp + 0x1c], edx
call fcn.0043cde4
mov ecx, dword [0x464c00]
mov ebx, eax
add esp, 4
mov dword [esp + 0x1c], ebx
lea ecx, [edi + ecx + 4]
mov edx, ebx
mov al, byte [ecx]
mov byte [edx], al
add ecx, 1
add edx, 1
test al, al
jne 0x40e4d2
mov edx, dword [0x464c00]
mov eax, dword [edi + edx]
cmp eax, 9
je 0x40e5ad
cmp eax, 0x1b
je 0x40e556
cmp eax, 0x1e
jne 0x40e5f3
push 0x80
lea eax, [esp + 0x24]
push 0
push eax
call fcn.0043ae80
mov eax, dword [0x45379c]
mov ecx, dword [str.JPG__.jpg_]
mov edx, dword [0x453798]
mov dword [esp + 0x34], eax
mov eax, ebx
add esp, 0xc
mov dword [esp + 0x20], ecx
mov dword [esp + 0x24], edx
add eax, 0xffffffff
mov cl, byte [eax + 1]
add eax, 1
test cl, cl
jne 0x40e536
mov ecx, dword [0x453738]
mov dword [eax], ecx
mov dl, byte [0x45373c]
mov byte [eax + 4], dl
jmp 0x40e5f3
push 0x80
lea eax, [esp + 0x24]
push 0
push eax
call fcn.0043ae80
mov eax, dword [0x453788]
mov ecx, dword [str.SVG__.svg_]
mov edx, dword [0x453784]
mov dword [esp + 0x34], eax
mov eax, ebx
add esp, 0xc
mov dword [esp + 0x20], ecx
mov dword [esp + 0x24], edx
add eax, 0xffffffff
lea esp, [esp]
mov cl, byte [eax + 1]
add eax, 1
test cl, cl
jne 0x40e590
mov ecx, dword [0x453778]
mov dword [eax], ecx
mov dl, byte [0x45377c]
mov byte [eax + 4], dl
jmp 0x40e5f3
mov eax, ebx
add eax, 0xffffffff
mov cl, byte [eax + 1]
add eax, 1
test cl, cl
jne 0x40e5b2
mov ecx, dword [0x453770]
mov dword [eax], ecx
mov dl, byte [0x453774]
mov byte [eax + 4], dl
mov eax, dword [str.TIFF__.tif_]
mov ecx, dword [0x453760]
mov edx, dword [0x453764]
mov dword [esp + 0x20], eax
mov al, byte [0x453768]
mov dword [esp + 0x24], ecx
mov dword [esp + 0x28], edx
mov byte [esp + 0x2c], al
push 0
lea ecx, [esp + 0x24]
push ecx
push 0x460010
push 1
push ebx
push 0x465198
push 0x71
call fcn.00406080
add esp, 8
push eax
push 1
push ebp
call fcn.00407130
add esp, 0x20
test eax, eax
je 0x40e62e
mov dword [esp + 0x10], 1
jmp 0x40e7ca
push ebx
call fcn.0040a420
add esp, 4
test eax, eax
je 0x40e66d
mov edx, dword [section..data]
push 4
push edx
push 0x465198
push 0x72
call fcn.00406080
add esp, 8
push eax
push ebp
call dword [sym.imp.USER32.dll_MessageBoxA]
cmp eax, 6
je 0x40e66d
mov dword [esp + 0x10], 1
jmp 0x40e7ca
mov eax, dword [0x464c00]
cmp dword [edi + eax], 0x1e
je 0x40e691
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0xa10]
push ebx
push edx
call fcn.0041e730
add esp, 8
jmp 0x40e7f9
push 0x1000
push ebx
call fcn.0040a330
mov ebp, eax
add esp, 8
test ebp, ebp
jge 0x40e6af
mov eax, 1
jmp 0x40e7f9
push 0x10000
push 0x42
call dword [sym.imp.KERNEL32.dll_GlobalAlloc]
push eax
call dword [sym.imp.KERNEL32.dll_GlobalLock]
test eax, eax
mov dword [esp + 0x14], eax
jne 0x40e6d8
mov dword [esp + 0x10], 1
jmp 0x40e796
cmp dword [esp + 0x18], 0
mov eax, dword [0x464bfc]
je 0x40e6ee
mov ebx, dword [esi + eax + 0x4c]
mov edi, dword [esi + eax + 0x50]
jmp 0x40e6f5
mov ebx, dword [esi + eax]
mov edi, dword [esi + eax + 4]
mov eax, dword [0x460004]
push 0
push ebx
push eax
call fcn.0040a3a0
add esp, 0xc
cmp eax, ebx
je 0x40e714
mov dword [esp + 0x10], 1
jmp 0x40e792
push 0x7f02
push 0
call dword [sym.imp.USER32.dll_LoadCursorA]
push eax
call dword [sym.imp.USER32.dll_SetCursor]
test edi, edi
mov dword [esp + 0x18], eax
je 0x40e76b
cmp edi, 0x10000
mov esi, edi
jl 0x40e73f
mov esi, 0x10000
mov ebx, dword [esp + 0x14]
mov ecx, dword [0x460004]
push esi
push ebx
push ecx
call fcn.0040a3c0
add esp, 0xc
cmp eax, esi
jne 0x40e77b
push esi
push ebx
push ebp
call fcn.0040a3f0
add esp, 0xc
cmp eax, esi
jne 0x40e77b
sub edi, esi
jne 0x40e730
push ebp
call fcn.0040a380
add esp, 4
or ebp, 0xffffffff
test eax, eax
je 0x40e783
mov dword [esp + 0x10], 1
mov eax, dword [esp + 0x18]
test eax, eax
je 0x40e792
push eax
call dword [sym.imp.USER32.dll_SetCursor]
mov ebx, dword [esp + 0x1c]
cmp ebp, 0xffffffff
jle 0x40e7a4
push ebp
call fcn.0040a380
add esp, 4
mov eax, dword [esp + 0x14]
test eax, eax
je 0x40e7ca
mov esi, dword [sym.imp.KERNEL32.dll_GlobalHandle]
push eax
call esi
push eax
call dword [sym.imp.KERNEL32.dll_GlobalUnlock]
mov edx, dword [esp + 0x14]
push edx
call esi
push eax
call dword [sym.imp.KERNEL32.dll_GlobalFree]
test ebx, ebx
je 0x40e7d7
push ebx
call fcn.0043cd07
add esp, 4
mov esi, dword [esp + 0x10]
test esi, esi
je 0x40e7f7
lea eax, [esp + 0xa0]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
push 0x73
call fcn.0040ab70
add esp, 4
mov eax, esi
mov ecx, dword [esp + 0x1a4]
pop esi
pop ebx
pop edi
pop ebp
xor ecx, esp
call fcn.0043b76b
add esp, 0x198
ret