Function at 0x419c30
Capabilities:
Check mutex on windows
Clear file content
Delete file
Enumerate files on windows
Get common file path
Set current directory
Set file attributes

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0xa5c
mov eax, dword [0x5f3008]
xor eax, esp
mov dword [esp + 0xa58], eax
push ebx
mov ebx, dword [0x6167a4]
push esi
mov esi, dword [ebp + 0xc]
push edi
mov edi, dword [0x616724]
push str.OYAZIVIEWER_CONV_MUTEX
push 0
push 0x1f0001
mov dword [esp + 0x18], 0
mov dword [esi], 0
call dword [sym.imp.KERNEL32.dll_OpenMutexW]
mov dword [ebx], eax
test eax, eax
jne 0x419ca4
mov dword [esi], 0x270f
mov eax, 0x232b
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0xa58]
xor ecx, esp
call fcn.0056060a
mov esp, ebp
pop ebp
ret 8
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
push 0
push 0x8000000
push 4
push 0
push 0
push 0x40000000
lea eax, [edi + 0x800]
push eax
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov dword [ebx + 0x39f8], eax
cmp eax, 0xffffffff
jne 0x419cec
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [esi], eax
mov dword [esp + 0xc], 0xe11
jmp 0x419f4c
push eax
call dword [sym.imp.KERNEL32.dll_SetEndOfFile]
push dword [ebx + 0x39f8]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
lea eax, [esp + 0x660]
push eax
push 0x200
call dword [sym.imp.KERNEL32.dll_GetCurrentDirectoryW]
test eax, eax
je 0x419f4c
push edi
lea eax, [esp + 0x264]
or esi, 0xffffffff
push 0x200
push eax
call fcn.00565fee
mov ax, word [esp + 0x26c]
add esp, 0xc
xor ecx, ecx
test ax, ax
je 0x419d60
movzx edx, ax
cmp dx, 0x5c
mov eax, ecx
cmovne eax, esi
inc ecx
mov esi, eax
movzx eax, word [esp + ecx*2 + 0x260]
mov edx, eax
test ax, ax
jne 0x419d45
xor eax, eax
mov word [esp + esi*2 + 0x262], ax
lea eax, [esp + 0x260]
push str.Scrapbook_
push eax
call dword [sym.imp.KERNEL32.dll_lstrcatW]
lea eax, [esp + 0x260]
push eax
call dword [sym.imp.KERNEL32.dll_SetCurrentDirectoryW]
test eax, eax
je 0x419f4c
lea eax, [esp + 0x10]
push eax
push 0x5aacfc
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov edi, eax
cmp edi, 0xffffffff
je 0x419f3e
nop
push 0x5a9fb8
lea eax, [esp + 0x40]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcmpW]
test eax, eax
je 0x419f23
push 0x5a9fc0
lea eax, [esp + 0x40]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
je 0x419f23
test byte [esp + 0x10], 0x10
je 0x419df5
lea ecx, [esp + 0x3c]
call fcn.0040bb30
jmp 0x419f23
lea eax, [esp + 0x3c]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenW]
mov ecx, eax
cmp ecx, 4
jl 0x419f23
movzx esi, word [esp + ecx*2 + 0x34]
cmp esi, 0x2e
jne 0x419ece
movzx eax, word [esp + ecx*2 + 0x36]
cmp eax, 0x70
je 0x419e28
cmp eax, 0x50
jne 0x419e4e
movzx edx, word [esp + ecx*2 + 0x38]
cmp edx, 0x6e
je 0x419e37
cmp edx, 0x4e
jne 0x419e4e
movzx edx, word [esp + ecx*2 + 0x3a]
cmp edx, 0x67
je 0x419f08
cmp edx, 0x47
je 0x419f08
cmp eax, 0x67
je 0x419e58
cmp eax, 0x47
jne 0x419e7e
movzx edx, word [esp + ecx*2 + 0x38]
cmp edx, 0x69
je 0x419e67
cmp edx, 0x49
jne 0x419e7e
movzx edx, word [esp + ecx*2 + 0x3a]
cmp edx, 0x66
je 0x419f08
cmp edx, 0x46
je 0x419f08
cmp eax, 0x62
je 0x419e88
cmp eax, 0x42
jne 0x419ea6
movzx edx, word [esp + ecx*2 + 0x38]
cmp edx, 0x6d
je 0x419e97
cmp edx, 0x4d
jne 0x419ea6
movzx edx, word [esp + ecx*2 + 0x3a]
cmp edx, 0x70
je 0x419f08
cmp edx, 0x50
je 0x419f08
cmp eax, 0x6a
je 0x419eb0
cmp eax, 0x4a
jne 0x419ece
movzx eax, word [esp + ecx*2 + 0x38]
cmp eax, 0x70
je 0x419ebf
cmp eax, 0x50
jne 0x419ece
movzx eax, word [esp + ecx*2 + 0x3a]
cmp eax, 0x67
je 0x419f08
cmp eax, 0x47
je 0x419f08
cmp word [esp + ecx*2 + 0x32], 0x2e
jne 0x419f23
cmp esi, 0x6a
jne 0x419f23
movzx eax, word [esp + ecx*2 + 0x36]
cmp eax, 0x70
je 0x419eea
cmp eax, 0x50
jne 0x419f23
movzx eax, word [esp + ecx*2 + 0x38]
cmp eax, 0x65
je 0x419ef9
cmp eax, 0x45
jne 0x419f23
movzx eax, word [esp + ecx*2 + 0x3a]
cmp eax, 0x67
je 0x419f08
cmp eax, 0x47
jne 0x419f23
push 0x80
lea eax, [esp + 0x40]
push eax
call dword [sym.imp.KERNEL32.dll_SetFileAttributesW]
lea eax, [esp + 0x3c]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
lea eax, [esp + 0x10]
push eax
push edi
call dword [sym.imp.KERNEL32.dll_FindNextFileW]
test eax, eax
jne 0x419db0
push edi
call dword [sym.imp.KERNEL32.dll_FindClose]
lea eax, [esp + 0x660]
push eax
call dword [sym.imp.KERNEL32.dll_SetCurrentDirectoryW]
push dword [ebx]
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
mov ecx, dword [esp + 0xa64]
mov eax, dword [esp + 0xc]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.0056060a
mov esp, ebp
pop ebp
ret 8