Function at 0x4b1550
Capabilities:
Check if file exists
Get file attributes

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
mov eax, 0x107c
call fcn.005c4400
mov eax, dword [ebp + 0x14]
test eax, eax
push ebx
push esi
push edi
jne 0x4b1578
mov eax, 0x80070057
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x10
push 0
push 0xffffffffffffffff
push 0
push eax
call sym.vidcap60.exe__SfList_DeleteList_16
push 1
push 0x1a
lea eax, [esp + 0x18]
push eax
push 0
mov word [esp + 0x20], 0
call sym.vidcap60.exe_int___stdcall_SfWtsGetSpecialFolderPath_struct_HWND_____unsigned_short_int___unsigned_long_int__int_
test eax, eax
je 0x4b1616
lea ecx, [esp + 0x10]
push ecx
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x4b1616
test al, 0x10
je 0x4b1616
push 0x104
lea edx, [esp + 0x14]
push edx
call sym.vidcap60.exe__SfAddSlashToPathName_8
push 0x104
push str.Sony_
lea eax, [esp + 0x18]
push eax
call fcn.00482350
mov eax, dword [ebp + 0x10]
test eax, eax
je 0x4b1602
cmp word [eax], 0
je 0x4b1602
push 0x104
push eax
lea ecx, [esp + 0x18]
push ecx
call fcn.00482350
push 0x104
lea edx, [esp + 0x14]
push edx
call sym.vidcap60.exe__SfAddSlashToPathName_8
push 0x104
push 0x5e9f68
lea eax, [esp + 0x18]
push eax
call fcn.00482350
lea ecx, [esp + 0x10]
push ecx
call sym.vidcap60.exe__SfDoesFileExist_4
test eax, eax
je 0x4b1817
push 0
push 0x80
push 3
push 0
push 1
push SysReAllocString
lea edx, [esp + 0x28]
push edx
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov esi, eax
cmp esi, 0xffffffff
mov dword [esp + 0xc], esi
je 0x4b1807
lea ecx, [esp + 0x630]
call fcn.00552e90
push esi
push 0
lea eax, [esp + 0x638]
push eax
call fcn.00552fb0
mov ebx, eax
test ebx, ebx
jl 0x4b17d8
lea ebx, [ebx]
push 0x410
lea ecx, [esp + 0x86c]
push ecx
lea edx, [esp + 0x638]
push edx
mov word [esp + 0x874], 0
call fcn.00553230
mov ebx, eax
test ebx, ebx
jl 0x4b17d8
cmp ebx, 1
jne 0x4b16c2
cmp word [esp + 0x868], 0
je 0x4b17cb
lea eax, [esp + 0x868]
push eax
call fcn.00404a80
test ebx, ebx
mov esi, eax
jne 0x4b16da
cmp word [esi], bx
je 0x4b1680
cmp word [esi], 0x2a
jne 0x4b17d3
xor ecx, ecx
mov cx, word [esi + 2]
push ecx
call dword [0x5d25e0]
add esp, 4
test eax, eax
je 0x4b17d3
cmp word [esi + 4], 0x3a
jne 0x4b17d3
cmp word [esi + 6], 0x5c
jne 0x4b17d3
push 0x5d9018
push esi
call dword [0x5d24e4]
mov esi, eax
add esp, 8
test esi, esi
je 0x4b17d3
mov edi, dword [0x5d2614]
lea edx, [esp + 0x21c]
push esi
push edx
call edi
push esi
call dword [0x5d2620]
inc eax
push 0x5d9018
push 0
mov word [esp + 0x22c], ax
call dword [0x5d24e4]
mov esi, eax
add esp, 0x14
test esi, esi
je 0x4b17d3
movzx eax, word [esp + 0x218]
lea ecx, [esp + eax*2 + 0x21c]
push esi
push ecx
call edi
push esi
call dword [0x5d2620]
mov edi, dword [ebp + 0x14]
add esp, 0xc
inc eax
push esi
mov word [esp + 0x21e], ax
call fcn.004b14f0
cmp eax, 0xffffffff
jne 0x4b17c2
movzx edx, word [esp + 0x21a]
push 0
push eax
movzx eax, word [esp + 0x220]
add edx, eax
lea ecx, [edx + edx + 4]
push ecx
lea edx, [esp + 0x224]
push edx
push edi
call sym.vidcap60.exe__SfList_AllocAndInsertItem_20
test eax, eax
jl 0x4b17cf
cmp ebx, 1
jne 0x4b1680
xor ebx, ebx
jmp 0x4b17d8
mov ebx, eax
jmp 0x4b17d8
mov ebx, 0x8004e00b
lea eax, [esp + 0x630]
push eax
call fcn.00552f00
mov ecx, dword [esp + 0xc]
push ecx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
lea ecx, [esp + 0x630]
call fcn.00552fa0
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x10
mov ebx, 0x8004e007
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x10
mov esi, dword [ebp + 8]
test esi, esi
jne 0x4b182e
mov ebx, 0x80070057
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x10
push 0x800
push 0x42
call dword [sym.imp.KERNEL32.dll_GlobalAlloc]
push eax
call dword [sym.imp.KERNEL32.dll_GlobalLock]
mov ebx, eax
test ebx, ebx
mov dword [esp + 0xc], ebx
jne 0x4b185c
mov ebx, 0x8007000e
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x10
mov edx, dword [ebp + 0xc]
push 0x800
push ebx
push edx
push esi
call sym.vidcap60.exe__SfGetMetricBinary_16
test eax, eax
je 0x4b1949
cmp word [ebx], 0
je 0x4b1949
mov edi, edi
cmp word [ebx], 0
mov esi, ebx
je 0x4b1891
add ebx, 2
cmp word [ebx], 0
jne 0x4b1888
add ebx, 2
mov eax, ebx
sub eax, esi
sar eax, 1
movzx ecx, ax
shl ecx, 1
mov word [esp + 0x218], ax
mov eax, ecx
shr ecx, 2
lea edi, [esp + 0x21c]
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
cmp word [ebx], 0
mov esi, ebx
je 0x4b18cd
add ebx, 2
cmp word [ebx], 0
jne 0x4b18c4
mov eax, ebx
sub eax, esi
sar eax, 1
test ax, ax
mov word [esp + 0x21a], ax
je 0x4b193b
movzx edi, word [esp + 0x218]
inc ax
movzx ecx, ax
shl ecx, 1
mov edx, ecx
shr ecx, 2
mov word [esp + 0x21a], ax
lea edi, [esp + edi*2 + 0x21c]
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
movzx ecx, word [esp + 0x218]
movzx eax, word [esp + 0x21a]
push 0
add eax, ecx
mov ecx, dword [ebp + 0x14]
push 0xffffffffffffffff
lea edx, [eax + eax + 4]
push edx
lea eax, [esp + 0x224]
push eax
push ecx
call sym.vidcap60.exe__SfList_AllocAndInsertItem_20
add ebx, 2
cmp word [ebx], 0
jne 0x4b1880
mov ebx, dword [esp + 0xc]
mov esi, dword [sym.imp.KERNEL32.dll_GlobalHandle]
push ebx
call esi
push eax
call dword [sym.imp.KERNEL32.dll_GlobalUnlock]
push ebx
call esi
push eax
call dword [sym.imp.KERNEL32.dll_GlobalFree]
pop edi
xor ebx, ebx
pop esi
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret 0x10