Function at 0x45f353
Capabilities:
Set file attributes

Disassembly:
push 0xf4
mov eax, 0x4749fc
call fcn.004676d8
mov edi, ecx
mov edx, dword [ebp + 8]
xor ebx, ebx
push ecx
push ecx
mov ecx, esp
mov dword [ebp - 0x50], edx
push edx
mov dword [ebp - 0x44], ebx
call fcn.004220a4
lea ecx, [ebp - 0x28]
call dword [sym.imp.infra.dll_public:_void___thiscall_base::FilePath::constructor_class_base::BasicStringPiece_class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t____]
and dword [ebp - 4], ebx
lea esi, [edi + 0x34]
mov ecx, esi
mov dword [ebp - 0x4c], esi
call dword [sym.imp.infra.dll_public:_void___thiscall_sql::Connection::Close_void_]
mov eax, dword [ebp - 0x50]
cmp dword [eax + 0x14], 8
jb 0x45f39e
mov eax, dword [eax]
push 0x80
push eax
call dword [sym.imp.KERNEL32.dll_SetFileAttributesW]
mov eax, dword [edi + 0x30]
lea ecx, [ebp - 0x58]
mov dword [ebp - 0x44], esi
and dword [eax + 4], 0
mov eax, dword [edi + 0x30]
mov dword [ebp - 0x48], eax
lea eax, [ebp - 0x44]
push eax
lea eax, [ebp - 0x48]
push eax
call fcn.004601d2
pop ecx
pop ecx
push eax
mov ecx, esi
mov byte [ebp - 4], 1
call dword [sym.imp.infra.dll_public:_void___thiscall_sql::Connection::set_error_callback_class_base::Callback_void____cdecl___int__class_sql::Statement____const__]
lea ecx, [ebp - 0x58]
mov byte [ebp - 4], 0
call dword [sym.imp.infra.dll_protected:_void___thiscall_base::internal::CallbackBase::destructor_void_]
lea eax, [edi + 0x18]
mov ecx, esi
cmp dword [eax + 0x10], 0
jne 0x45f3fd
lea eax, [ebp - 0x28]
push eax
call dword [sym.imp.infra.dll_public:_bool___thiscall_sql::Connection::Open_class_base::FilePath_const__]
jmp 0x45f40a
push 0
push eax
lea eax, [ebp - 0x28]
push eax
call dword [sym.imp.infra.dll_public:_bool___thiscall_sql::Connection::OpenWithKey_class_base::FilePath_const___class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t___const___bool_]
mov ecx, esi
test al, al
je 0x45f55e
push 0x1388
call dword [sym.imp.infra.dll_public:_void___thiscall_sql::Connection::SetBusyTimeout_int_]
push ecx
push ecx
call fcn.0045fd71
mov ecx, edi
mov dword [ebp - 0x48], eax
call fcn.0045f245
test al, al
je 0x45f448
mov ecx, edi
call fcn.0045f30b
test al, al
je 0x45f448
cmp dword [ebp - 0x48], 0x3e8
jl 0x45f46b
push str.VACUUM
mov ecx, esi
call dword [sym.imp.infra.dll_public:_bool___thiscall_sql::Connection::Execute_char_const__]
mov ecx, edi
call fcn.0045f245
test al, al
je 0x45f473
mov ecx, edi
call fcn.0045f30b
test al, al
je 0x45f473
xor ebx, ebx
inc ebx
jmp 0x45f65a
mov ecx, esi
call dword [sym.imp.infra.dll_public:_char_const____thiscall_sql::Connection::GetErrorMessage_void_const]
mov edi, eax
call dword [sym.imp.logging.dll_int___cdecl_GetMinKLogLevel_void_]
cmp eax, 3
jg 0x45f53e
test edi, edi
mov ecx, 0x47b510
cmovne ecx, edi
push ecx
push ecx
mov esi, esp
mov dword [esi], ecx
test ecx, ecx
jne 0x45f4a4
xor eax, eax
jmp 0x45f4ab
push ecx
call fcn.004010ec
pop ecx
mov dword [esi + 4], eax
lea eax, [ebp - 0x40]
push eax
call dword [sym.imp.infra.dll_class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t_____cdecl_base::UTF8ToWide_class_base::BasicStringPiece_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char____]
add esp, 0xc
mov edi, eax
push 3
push 0xd9
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x100]
push 0x482ba8
mov dword [ebp - 0x44], 1
call dword [sym.imp.logging.dll_public:_void___thiscall_KLogMessage::constructor_wchar_t_const___int__int_]
mov esi, eax
mov ecx, dword [ebp - 0x4c]
push 3
pop ebx
mov dword [ebp - 4], 3
mov dword [ebp - 0x44], ebx
call dword [sym.imp.infra.dll_public:_int___thiscall_sql::Connection::GetErrorCode_void_const]
push eax
push ecx
lea ecx, [esi + 8]
mov edx, 0x482e54
call fcn.00409102
mov edx, dword [ebp - 0x50]
mov ecx, eax
call fcn.004065c1
mov edx, 0x482e38
mov ecx, eax
call fcn.00409102
pop ecx
mov ecx, eax
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t______thiscall_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t__::operator___int_]
mov edx, str.__MSG:
mov ecx, eax
call fcn.00409102
mov edx, edi
mov ecx, eax
call fcn.004065c1
mov esi, dword [ebp - 0x4c]
test bl, 2
je 0x45f552
lea ecx, [ebp - 0x100]
and ebx, 0xfffffffd
call dword [sym.imp.logging.dll_public:_void___thiscall_KLogMessage::destructor_void_]
and dword [ebp - 4], 0
test bl, 1
jmp 0x45f642
call dword [sym.imp.infra.dll_public:_char_const____thiscall_sql::Connection::GetErrorMessage_void_const]
mov edi, eax
call dword [sym.imp.logging.dll_int___cdecl_GetMinKLogLevel_void_]
cmp eax, 3
jg 0x45f627
test edi, edi
mov ecx, 0x47b510
cmovne ecx, edi
push ecx
push ecx
mov esi, esp
mov dword [esi], ecx
test ecx, ecx
jne 0x45f58d
xor eax, eax
jmp 0x45f594
push ecx
call fcn.004010ec
pop ecx
mov dword [esi + 4], eax
lea eax, [ebp - 0x40]
push eax
call dword [sym.imp.infra.dll_class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t_____cdecl_base::UTF8ToWide_class_base::BasicStringPiece_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char____]
add esp, 0xc
mov edi, eax
push 3
push 0xe1
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x100]
push 0x482ba8
mov dword [ebp - 0x44], 4
call dword [sym.imp.logging.dll_public:_void___thiscall_KLogMessage::constructor_wchar_t_const___int__int_]
mov esi, eax
mov ecx, dword [ebp - 0x4c]
push 0xc
pop ebx
mov dword [ebp - 4], 5
mov dword [ebp - 0x44], ebx
call dword [sym.imp.infra.dll_public:_int___thiscall_sql::Connection::GetErrorCode_void_const]
push eax
push ecx
lea ecx, [esi + 8]
mov edx, 0x482e80
call fcn.00409102
mov edx, dword [ebp - 0x50]
mov ecx, eax
call fcn.004065c1
mov edx, 0x482e38
mov ecx, eax
call fcn.00409102
pop ecx
mov ecx, eax
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t______thiscall_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t__::operator___int_]
mov edx, str.__MSG:
mov ecx, eax
call fcn.00409102
mov edx, edi
mov ecx, eax
call fcn.004065c1
mov esi, dword [ebp - 0x4c]
test bl, 8
je 0x45f63b
lea ecx, [ebp - 0x100]
and ebx, 0xfffffff7
call dword [sym.imp.logging.dll_public:_void___thiscall_KLogMessage::destructor_void_]
and dword [ebp - 4], 0
test bl, 4
je 0x45f650
push 0
push 1
lea ecx, [ebp - 0x40]
call fcn.004061ab
mov ecx, esi
call dword [sym.imp.infra.dll_public:_void___thiscall_sql::Connection::Close_void_]
xor bl, bl
lea ecx, [ebp - 0x28]
call dword [sym.imp.infra.dll_public:_void___thiscall_base::FilePath::destructor_void_]
mov al, bl
call fcn.00467682
ret 8