Function at 0x14007f3f0
Capabilities:
Check if file exists
Get file attributes
Get file size
Read file via mapping

Disassembly:
push rbp
push rbx
push rdi
push r13
lea rbp, [rsp - 0x3f]
sub rsp, 0xb8
mov rbx, rcx
xor r13d, r13d
lea rcx, [rbp + 7]
mov qword [rbp + 0x6f], r13
mov edi, r13d
call fcn.14007e5b0
lea r8d, [r13 + 0xa]
mov rcx, rax
lea rdx, str.dbicon.db
call fcn.140002740
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x19], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 9], xmm1
mov qword [rax + 0x10], r13
mov qword [rax + 0x18], 7
mov word [rax], r13w
mov rdx, qword [rbp + 0x1f]
cmp rdx, 8
jb 0x14007f48a
mov rcx, qword [rbp + 7]
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14007f485
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14007fa90
call fcn.14017b7ac
cmp qword [rbp - 1], 8
lea rcx, [rbp - 0x19]
mov qword [rsp + 0xb0], r12
cmovae rcx, qword [rbp - 0x19]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x14007f655
and eax, 0x10
test al, al
jne 0x14007f655
cmp qword [rbp - 1], 8
lea rcx, [rbp - 0x19]
mov qword [rsp + 0x30], r13
mov edx, 0x80000000
cmovae rcx, qword [rbp - 0x19]
mov r12b, 1
xor r9d, r9d
mov dword [rsp + 0x28], 0x80
xor r8d, r8d
mov qword [rsp + 0xa8], r14
mov dword [rsp + 0x20], 3
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov r14, rax
cmp rax, 0xffffffffffffffff
je 0x14007f621
lea rdx, [rbp + 0x77]
mov qword [rsp + 0xe0], rsi
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetFileSizeEx]
mov esi, dword [rbp + 0x77]
test esi, esi
je 0x14007f619
mov qword [rsp + 0x28], r13
xor r9d, r9d
xor edx, edx
mov dword [rsp + 0x20], r13d
mov r8d, 0x4000002
mov qword [rsp + 0xa0], r15
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_CreateFileMappingA]
mov r15, rax
test rax, rax
je 0x14007f611
xor r9d, r9d
mov qword [rsp + 0x20], r13
xor r8d, r8d
mov rcx, rax
lea edx, [r9 + 4]
call qword [sym.imp.KERNEL32.dll_MapViewOfFile]
mov r8, rax
test rax, rax
je 0x14007f608
mov edx, r13d
cmp esi, 8
jb 0x14007f5dc
movdqa xmm2, xmmword [0x1401ccdb0]
mov r9d, esi
and r9d, 0xfffffff8
movdqa xmm3, xmm2
nop word [rax + rax]
mov eax, edx
xorps xmm0, xmm0
movd xmm1, dword [rax + r8]
lea eax, [rdx + 4]
punpcklbw xmm1, xmm0
add edx, 8
punpcklwd xmm1, xmm0
pand xmm1, xmm2
movdqa xmm2, xmm1
movd xmm1, dword [rax + r8]
punpcklbw xmm1, xmm0
punpcklwd xmm1, xmm0
pand xmm1, xmm3
movdqa xmm3, xmm1
cmp edx, r9d
jb 0x14007f5a0
cmp edx, esi
jae 0x14007f5ff
mov ecx, edx
add rcx, r8
sub esi, edx
mov edx, esi
nop dword [rax]
movzx eax, byte [rcx]
lea rcx, [rcx + 1]
and edi, eax
sub rdx, 1
jne 0x14007f5f0
mov rcx, r8
call qword [sym.imp.KERNEL32.dll_UnmapViewOfFile]
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov r15, qword [rsp + 0xa0]
mov rsi, qword [rsp + 0xe0]
test r14, r14
je 0x14007f62f
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov ecx, 1
call fcn.1401b0a80
mov rcx, rax
lea rdx, [0x1401cc738]
mov r8d, edi
call fcn.140082100
mov r14, qword [rsp + 0xa8]
jmp 0x14007f658
xor r12b, r12b
movdqa xmm0, xmmword [0x1401f8be0]
lea rdx, [rbp - 0x39]
mov r8d, 0xfde9
mov byte [rbp - 0x39], r13b
lea rcx, [rbp - 0x19]
movdqu xmmword [rbp - 0x29], xmm0
call fcn.140001990
cmp qword [rbp - 0x21], 0x10
lea rcx, [rbp - 0x39]
mov rdx, rbx
cmovae rcx, qword [rbp - 0x39]
call fcn.1400d93c0
test eax, eax
je 0x14007f6c4
mov rcx, qword [rbx]
call fcn.1400d99e0
mov ecx, 2
mov rbx, rax
call fcn.1401b0a80
mov rcx, rax
lea rdx, [0x1401cc740]
mov r8, rbx
call fcn.140082100
xor bl, bl
jmp 0x14007f9ee
test r12b, r12b
jne 0x14007f82e
mov rcx, qword [rbx]
lea rax, [rbp + 0x6f]
xor r9d, r9d
mov qword [rsp + 0x20], rax
lea r8, [0x140081e30]
lea rdx, str.CREATE_TABLE_IF_NOT_EXISTS_Version_ID_INTEGER_PRIMARY_KEY__Ver_INTEGER_
call fcn.1400d7830
test eax, eax
jne 0x14007f8b3
mov r8d, dword [0x14022600c]
lea rdx, str.REPLACE_INTO_Version_ID_Ver__VALUES__1__d__
lea rcx, [rbp + 7]
call fcn.1400015b0
mov r8d, 0xfde9
lea rdx, [rbp - 0x39]
lea rcx, [rbp + 7]
call fcn.140001990
cmp qword [rbp - 0x21], 0x10
lea rax, [rbp + 0x6f]
mov rcx, qword [rbx]
lea rdx, [rbp - 0x39]
cmovae rdx, qword [rbp - 0x39]
xor r9d, r9d
xor r8d, r8d
mov qword [rsp + 0x20], rax
call fcn.1400d7830
test eax, eax
jne 0x14007f779
mov eax, dword [0x14022600c]
lea r8, [0x140081e30]
mov rcx, qword [rbx]
lea rdx, str.CREATE_TABLE_IF_NOT_EXISTS_Cache_ID_INTEGER_PRIMARY_KEY_Invalid_TINYINT_DEFAULT_0_Icon16_BLOB_Icon32_BLOB_Icon48_BLOB_
mov dword [rbx + 8], eax
xor r9d, r9d
lea rax, [rbp + 0x6f]
mov qword [rsp + 0x20], rax
call fcn.1400d7830
test eax, eax
je 0x14007f7ee
mov ecx, 2
call fcn.1401b0a80
mov r8, qword [rbp + 0x6f]
lea rdx, str.SQL_error:__s_n
mov rcx, rax
call fcn.140082100
mov rcx, qword [rbp + 0x6f]
call fcn.1400d8d90
mov rdx, qword [rbp + 0x1f]
cmp rdx, 8
jb 0x14007f998
mov rcx, qword [rbp + 7]
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14007f993
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14007fa96
call fcn.14017b7ac
xor bl, bl
jmp 0x14007f9ee
mov rdx, qword [rbp + 0x1f]
cmp rdx, 8
jb 0x14007f82e
mov rcx, qword [rbp + 7]
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14007f829
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14007fa96
call fcn.14017b7ac
cmp dword [rbx + 8], r13d
jne 0x14007f9e3
mov rcx, qword [rbx]
lea r9, [rbp + 0x77]
mov r8d, 0xffffffff
mov qword [rbp + 0x77], r13
lea rdx, str.select_Ver_from_Version_where_id1
mov qword [rsp + 0x20], r13
call fcn.1400d9d00
test eax, eax
jne 0x14007f883
mov rcx, qword [rbp + 0x77]
call fcn.1400daba0
cmp eax, 0x64
jne 0x14007f87a
mov rcx, qword [rbp + 0x77]
xor edx, edx
call fcn.1400db190
mov dword [rbx + 8], eax
mov rcx, qword [rbp + 0x77]
call fcn.1400db670
cmp dword [rbx + 8], r13d
jne 0x14007f9e3
mov rcx, qword [rbx]
lea rax, [rbp + 0x6f]
xor r9d, r9d
mov qword [rsp + 0x20], rax
lea r8, [0x140081e30]
lea rdx, str.CREATE_TABLE_IF_NOT_EXISTS_Version_ID_INTEGER_PRIMARY_KEY__Ver_INTEGER_
call fcn.1400d7830
test eax, eax
je 0x14007f8e0
mov ecx, 2
call fcn.1401b0a80
mov r8, qword [rbp + 0x6f]
lea rdx, str.SQL_error:__s_n
mov rcx, rax
call fcn.140082100
mov rcx, qword [rbp + 0x6f]
call fcn.1400d8d90
xor bl, bl
jmp 0x14007f9ee
mov r8d, 0x2968
lea rdx, str.REPLACE_INTO_Version_ID_Ver__VALUES__1__d__
lea rcx, [rbp + 7]
call fcn.1400015b0
mov r8d, 0xfde9
lea rdx, [rbp - 0x39]
lea rcx, [rbp + 7]
call fcn.140001990
cmp qword [rbp - 0x21], 0x10
lea rax, [rbp + 0x6f]
mov rcx, qword [rbx]
lea rdx, [rbp - 0x39]
cmovae rdx, qword [rbp - 0x39]
xor r9d, r9d
xor r8d, r8d
mov qword [rsp + 0x20], rax
call fcn.1400d7830
test eax, eax
je 0x14007f99c
mov ecx, 2
call fcn.1401b0a80
mov r8, qword [rbp + 0x6f]
lea rdx, str.SQL_error:__s_n
mov rcx, rax
call fcn.140082100
mov rcx, qword [rbp + 0x6f]
call fcn.1400d8d90
mov rdx, qword [rbp + 0x1f]
cmp rdx, 8
jb 0x14007f998
mov rcx, qword [rbp + 7]
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14007f993
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14007fa9c
call fcn.14017b7ac
xor bl, bl
jmp 0x14007f9ee
mov rdx, qword [rbp + 0x1f]
mov dword [rbx + 8], 0x2968
cmp rdx, 8
jb 0x14007f9e3
mov rcx, qword [rbp + 7]
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14007f9de
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14007fa9c
call fcn.14017b7ac
mov rcx, rbx
call fcn.1400806f0
movzx ebx, al
mov rdx, qword [rbp - 0x21]
cmp rdx, 0x10
jb 0x14007fa25
mov rcx, qword [rbp - 0x39]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x14007fa20
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14007fa8a
call fcn.14017b7ac
mov rdx, qword [rbp - 1]
movdqa xmm0, xmmword [0x1401f8be0]
mov byte [rbp - 0x39], r13b
movdqu xmmword [rbp - 0x29], xmm0
cmp rdx, 8
jb 0x14007fa72
mov rcx, qword [rbp - 0x19]
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14007fa6d
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14007fa8a
call fcn.14017b7ac
mov r12, qword [rsp + 0xb0]
movzx eax, bl
add rsp, 0xb8
pop r13
pop rdi
pop rbx
pop rbp
ret
call fcn.1401b08a0
int3
call fcn.1401b08a0
int3
call fcn.1401b08a0
int3
call fcn.1401b08a0
int3