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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x514cda
mov eax, dword fs:[0]
push eax
sub esp, 0xf8
mov eax, dword [0x535008]
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 ebx, ecx
mov dword [ebp - 0x100], 0
mov eax, dword [ebx + 0x1c]
test eax, eax
jne 0x421212
cmp dword [ebx + 0x18], 8
lea edi, [ebx + 4]
mov eax, edi
jb 0x421002
mov eax, dword [edi]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
cmp dword [edi + 0x14], 8
mov eax, edi
jb 0x421013
mov eax, dword [edi]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x42122c
push eax
push eax
mov dword [ebp - 0xfc], eax
mov dword [ebp - 0xf8], eax
mov dword [ebp - 0xf4], eax
call fcn.00421ee0
mov dword [ebp - 0xf8], eax
push 0xfde9
mov edx, 0x5207ec
mov dword [ebp - 4], 0
lea ecx, [ebp - 0x28]
call fcn.00405a10
add esp, 4
mov byte [ebp - 4], 1
cmp dword [eax + 0x14], 0x10
jb 0x421069
mov eax, dword [eax]
push 0
push 6
lea edx, [ebp - 0xfc]
mov ecx, eax
call fcn.004cf050
mov byte [ebp - 4], 0
add esp, 8
mov edx, dword [ebp - 0x14]
mov esi, eax
mov dword [ebp - 0x104], esi
cmp edx, 0x10
jb 0x4210bf
mov ecx, dword [ebp - 0x28]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4210b5
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x4210b5
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.0051098e
add esp, 8
test esi, esi
jne 0x421249
push str.PRAGMA_foreign_keysOFF_
lea ecx, [ebp - 0xfc]
call fcn.00428d90
push str.PRAGMA_temp_storeMEMORY_
lea ecx, [ebp - 0xfc]
call fcn.00428d90
push str.PRAGMA_legacy_file_formatFALSE_
lea ecx, [ebp - 0xfc]
call fcn.00428d90
push str.PRAGMA_encoding_UTF_16__
lea ecx, [ebp - 0xfc]
call fcn.00428d90
push str.PRAGMA_cache_size_160000_
lea ecx, [ebp - 0xfc]
call fcn.00428d90
push str.PRAGMA_synchronousoff_
lea ecx, [ebp - 0xfc]
call fcn.00428d90
mov esi, dword [ebp - 0xfc]
push esi
push 0x4cd6b0
push esi
call fcn.004cd770
add esp, 0xc
mov dword [esi + 0x1d8], 0x190
mov byte [esi + 0x1b0], 1
cmp dword [ebx + 0x30], 0
jne 0x421157
xor eax, eax
jmp 0x42118c
cmp dword [ebx + 0x34], 0x10
lea edx, [ebx + 0x20]
jb 0x421162
mov edx, dword [edx]
push dword [0x5384fc]
lea ecx, [ebp - 0x28]
call fcn.00404590
add esp, 4
mov byte [ebp - 4], 3
lea eax, [ebp - 0x28]
mov dword [ebp - 0x100], 3
cmp dword [ebp - 0x14], 8
cmovae eax, dword [ebp - 0x28]
cmp dword [edi + 0x14], 8
jb 0x421194
mov edi, dword [edi]
push eax
push ecx
push edi
lea ecx, [ebx + 0x38]
call fcn.004202d0
mov dword [ebp - 4], 0
test byte [ebp - 0x100], 1
je 0x4211b7
lea ecx, [ebp - 0x28]
call fcn.00402230
push str.PRAGMA_page_size4096_
lea ecx, [ebx + 0x38]
call fcn.00428d90
push str.PRAGMA_journal_modeMEMORY_
lea ecx, [ebx + 0x38]
call fcn.00428d90
push str.BEGIN_TRANSACTION_
lea ecx, [ebx + 0x38]
call fcn.00428d90
mov eax, dword [ebx]
mov ecx, ebx
mov dword [ebx + 0x1c], 1
call dword [eax]
lea ecx, [ebp - 0xfc]
call fcn.00420500
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.0051023c
mov esp, ebp
pop ebp
ret
cmp eax, 2
jne 0x4211f6
lea ecx, [ebp - 0x1c]
call fcn.00404150
push 0x530b3c
mov eax, ecx
push eax
call sub.VCRUNTIME140.dll__CxxThrowException
push edi
lea ecx, [ebp - 0xf0]
call fcn.0041fd80
push 0x530b4c
lea eax, [ebp - 0xf0]
push eax
call sub.VCRUNTIME140.dll__CxxThrowException
push 0xfde9
mov edx, 0x5207ec
lea ecx, [ebp - 0x28]
call fcn.00405a10
mov esi, eax
mov byte [ebp - 4], 2
push dword [ebp - 0xfc]
call fcn.004ce4b0
add esp, 8
mov ecx, esi
push eax
push dword [ebp - 0x104]
call fcn.004066b0
push eax
lea ecx, [ebp - 0x64]
call fcn.004221f0
push 0x530be0
lea eax, [ebp - 0x64]
push eax
call sub.VCRUNTIME140.dll__CxxThrowException
int3