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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
mov eax, 0x2cbc
call fcn.005c4400
mov eax, dword [ebp + 8]
test eax, eax
push ebx
push esi
push edi
mov dword [esp + 0x10], 0
je 0x552ca7
mov esi, dword [ebp + 0xc]
test esi, esi
je 0x552ca7
mov edi, dword [ebp + 0x10]
test edi, edi
je 0x552ca7
push 0
push 0xffffffffffffffff
push 0
push eax
call sym.vidcap60.exe__SfList_DeleteList_16
push esi
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x552776
test al, 0x10
je 0x552776
mov eax, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
push esi
call sym.vidcap60.exe__SfDoesFileExist_4
test eax, eax
jne 0x55278e
mov eax, 0x8004e00a
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
push edi
call sym.vidcap60.exe__SfDoesFileExist_4
test eax, eax
je 0x5527a6
mov eax, 0x8004e032
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
push edi
call fcn.004049f0
inc eax
cmp eax, 0x104
jae 0x552c99
push edi
call sym.vidcap60.exe__SfGetFileNamePtrW_4
test eax, eax
je 0x552c99
push 0
push eax
call sym.vidcap60.exe__SfValidateFileName_8
test eax, eax
je 0x552c99
push esi
call fcn.004993b0
test eax, eax
je 0x5527eb
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
lea eax, [esp + 0x630]
push eax
lea ecx, [esp + 0x1c8c]
push ecx
lea edx, [esp + 0x1060]
push edx
lea eax, [esp + 0x434]
push eax
push esi
mov esi, dword [0x5d24f4]
call esi
lea ecx, [esp + 0x24bc]
push ecx
lea edx, [esp + 0x20b0]
push edx
lea eax, [esp + 0x28d4]
push eax
lea ecx, [esp + 0x26d0]
push ecx
push edi
call esi
add esp, 0x28
lea edx, [esp + 0x24a8]
push edx
call fcn.004049f0
lea eax, [esp + 0x630]
push str..wav
push eax
call dword [0x5d25ac]
add esp, 8
mov ebx, eax
neg ebx
sbb ebx, ebx
inc ebx
xor esi, esi
mov dword [esp + 0x14], ebx
mov dword [esp + 0xc], esi
mov edi, edi
mov edi, dword [esi + 0x6121d0]
push edi
lea ecx, [esp + 0x634]
push ecx
lea edx, [esp + 0x1c90]
push edx
lea eax, [esp + 0x1064]
push eax
lea ecx, [esp + 0x438]
push ecx
lea edx, [esp + 0x147c]
push str._s_s_s_s_s
push edx
call sym.vidcap60.exe_SfPrintF
push edi
lea eax, [esp + 0x650]
push eax
lea ecx, [esp + 0x20bc]
push ecx
lea edx, [esp + 0x1080]
push edx
lea eax, [esp + 0x454]
push eax
lea ecx, [esp + 0x18a8]
push str._s_s_s_s_s
push ecx
call sym.vidcap60.exe_SfPrintF
add esp, 0x38
lea edx, [esp + 0x1468]
push edx
call sym.vidcap60.exe__SfDoesFileExist_4
test eax, eax
je 0x552aab
mov esi, dword [0x5d2618]
xor eax, eax
mov ecx, 0x104
lea edi, [esp + 0x18]
rep stosd dword es:[edi], eax
push 0x104
lea eax, [esp + 0x146c]
push eax
lea ecx, [esp + 0x20]
push ecx
call esi
push 0x104
lea edx, [esp + 0x1888]
push edx
lea eax, [esp + 0x234]
xor ebx, ebx
push eax
mov word [esp + 0x236], bx
call esi
mov esi, dword [0x5d24c4]
lea ecx, [esp + 0x1480]
push ecx
lea edx, [esp + 0x34]
push edx
mov word [esp + 0x446], bx
call esi
add esp, 0x20
test eax, eax
jne 0x552c75
lea eax, [esp + 0x1878]
push eax
lea ecx, [esp + 0x224]
push ecx
call esi
add esp, 8
test eax, eax
jne 0x552c75
mov eax, dword [ebp + 8]
push ebx
push 0xffffffffffffffff
push 0x410
lea edx, [esp + 0x24]
push edx
push eax
call sym.vidcap60.exe__SfList_AllocAndInsertItem_20
jmp 0x5529a0
mov esi, dword [ebx + 0x6121dc]
push esi
lea ecx, [esp + 0x146c]
push ecx
lea edx, [esp + 0x840]
push 0x5d4ee8
push edx
call sym.vidcap60.exe_SfPrintF
push esi
lea eax, [esp + 0x188c]
push eax
lea ecx, [esp + 0xc60]
push 0x5d4ee8
push ecx
call sym.vidcap60.exe_SfPrintF
add esp, 0x20
lea edx, [esp + 0x838]
push edx
call sym.vidcap60.exe__SfDoesFileExist_4
test eax, eax
je 0x552a97
mov esi, dword [0x5d2618]
xor eax, eax
mov ecx, 0x104
lea edi, [esp + 0x18]
rep stosd dword es:[edi], eax
push 0x104
lea eax, [esp + 0x83c]
push eax
lea ecx, [esp + 0x20]
push ecx
call esi
push 0x104
lea edx, [esp + 0xc58]
push edx
lea eax, [esp + 0x234]
xor edi, edi
push eax
mov word [esp + 0x236], di
call esi
mov esi, dword [0x5d24c4]
lea ecx, [esp + 0x850]
push ecx
lea edx, [esp + 0x34]
push edx
mov word [esp + 0x446], di
call esi
add esp, 0x20
test eax, eax
jne 0x552c75
lea eax, [esp + 0xc48]
push eax
lea ecx, [esp + 0x224]
push ecx
call esi
add esp, 8
test eax, eax
jne 0x552c75
mov eax, dword [ebp + 8]
push edi
push 0xffffffffffffffff
push 0x410
lea edx, [esp + 0x24]
push edx
push eax
call sym.vidcap60.exe__SfList_AllocAndInsertItem_20
add ebx, 4
cmp ebx, 0xc
jb 0x5529a0
mov ebx, dword [esp + 0x14]
mov esi, dword [esp + 0xc]
add esi, 4
cmp esi, 0xc
mov dword [esp + 0xc], esi
jb 0x552870
mov dword [esp + 0xc], 0
mov ecx, dword [esp + 0xc]
mov esi, dword [ecx + 0x6121dc]
xor eax, eax
test ebx, ebx
mov ecx, 0x104
lea edi, [esp + 0x838]
rep stosd dword es:[edi], eax
mov ecx, 0x104
lea edi, [esp + 0xc48]
rep stosd dword es:[edi], eax
lea eax, [esp + 0x1058]
lea edx, [esp + 0x1c88]
push esi
je 0x552b4a
push edx
push eax
lea ecx, [esp + 0x434]
push ecx
lea edx, [esp + 0x848]
push str._s_s_s_s
push edx
call sym.vidcap60.exe_SfPrintF
push esi
lea eax, [esp + 0x20b4]
push eax
lea ecx, [esp + 0x1078]
push ecx
lea edx, [esp + 0x44c]
push edx
lea eax, [esp + 0xc70]
push str._s_s_s_s
push eax
call sym.vidcap60.exe_SfPrintF
add esp, 0x30
jmp 0x552ba4
lea ecx, [esp + 0x634]
push ecx
push edx
push eax
lea ecx, [esp + 0x438]
push ecx
lea edx, [esp + 0x84c]
push str._s_s_s_s_s
push edx
call sym.vidcap60.exe_SfPrintF
push esi
lea eax, [esp + 0x650]
push eax
lea ecx, [esp + 0x20bc]
push ecx
lea edx, [esp + 0x1080]
push edx
lea eax, [esp + 0x454]
push eax
lea ecx, [esp + 0xc78]
push str._s_s_s_s_s
push ecx
call sym.vidcap60.exe_SfPrintF
add esp, 0x38
lea edx, [esp + 0x838]
push edx
call sym.vidcap60.exe__SfDoesFileExist_4
test eax, eax
je 0x552c54
mov esi, dword [0x5d2618]
xor eax, eax
mov ecx, 0x104
lea edi, [esp + 0x18]
rep stosd dword es:[edi], eax
push 0x104
lea eax, [esp + 0x83c]
push eax
lea ecx, [esp + 0x20]
push ecx
call esi
push 0x104
lea edx, [esp + 0xc58]
push edx
lea eax, [esp + 0x234]
xor edi, edi
push eax
mov word [esp + 0x236], di
call esi
mov esi, dword [0x5d24c4]
lea ecx, [esp + 0x850]
push ecx
lea edx, [esp + 0x34]
push edx
mov word [esp + 0x446], di
call esi
add esp, 0x20
test eax, eax
jne 0x552c75
lea eax, [esp + 0xc48]
push eax
lea ecx, [esp + 0x224]
push ecx
call esi
add esp, 8
test eax, eax
jne 0x552c75
mov eax, dword [ebp + 8]
push edi
push 0xffffffffffffffff
push 0x410
lea edx, [esp + 0x24]
push edx
push eax
call sym.vidcap60.exe__SfList_AllocAndInsertItem_20
mov eax, dword [esp + 0xc]
add eax, 4
cmp eax, 0xc
mov dword [esp + 0xc], eax
jb 0x552ac3
mov eax, dword [esp + 0x10]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov ecx, dword [ebp + 8]
push 0
push 0xffffffffffffffff
push 0
push ecx
mov dword [esp + 0x20], 0x8004e00d
call sym.vidcap60.exe__SfList_DeleteList_16
mov eax, dword [esp + 0x10]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov eax, 0x8004e00d
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
pop edi
pop esi
mov eax, 0x80070057
pop ebx
mov esp, ebp
pop ebp
ret 0xc