Function at 0x459310
Capabilities:
Set file attributes

Disassembly:
push 0xf8
mov eax, 0x46dc84
call fcn.00461b38
mov edi, ecx
mov edx, dword [ebp + 8]
xor ebx, ebx
push ecx
push ecx
mov ecx, esp
mov dword [ebp - 0x54], edx
push edx
mov dword [ebp - 0x48], ebx
call fcn.0041f499
lea ecx, [ebp - 0x2c]
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 - 0x54]
cmp dword [eax + 0x14], 8
jb 0x45935b
mov eax, dword [eax]
push 0x80
push eax
call dword [sym.imp.KERNEL32.dll_SetFileAttributesW]
mov eax, dword [edi + 0x30]
lea ecx, [ebp - 0x5c]
mov dword [ebp - 0x48], esi
and dword [eax + 4], 0
mov eax, dword [edi + 0x30]
mov dword [ebp - 0x50], eax
lea eax, [ebp - 0x48]
push eax
lea eax, [ebp - 0x50]
push eax
call fcn.0045a01a
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 - 0x5c]
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 0x4593ba
lea eax, [ebp - 0x2c]
push eax
call dword [sym.imp.infra.dll_public:_bool___thiscall_sql::Connection::Open_class_base::FilePath_const__]
jmp 0x4593c7
push 0
push eax
lea eax, [ebp - 0x2c]
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 0x459508
push 0x1388
call dword [sym.imp.infra.dll_public:_void___thiscall_sql::Connection::SetBusyTimeout_int_]
mov ecx, edi
call fcn.00459202
test al, al
je 0x4593f2
mov ecx, edi
call fcn.004592c8
test al, al
jne 0x459415
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.00459202
test al, al
je 0x45941d
mov ecx, edi
call fcn.004592c8
test al, al
je 0x45941d
xor ebx, ebx
inc ebx
jmp 0x459604
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 0x4594e8
test edi, edi
mov ecx, 0x486cc0
cmovne ecx, edi
push ecx
push ecx
mov esi, esp
mov dword [esi], ecx
test ecx, ecx
jne 0x45944e
xor eax, eax
jmp 0x459455
push ecx
call fcn.004010ec
pop ecx
mov dword [esi + 4], eax
lea eax, [ebp - 0x44]
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 - 0x104]
push 0x48deb8
mov dword [ebp - 0x48], 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 - 0x48], 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, 0x48e140
call fcn.004090d3
mov edx, dword [ebp - 0x54]
mov ecx, eax
call fcn.004065d8
mov edx, 0x48e124
mov ecx, eax
call fcn.004090d3
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.004090d3
mov edx, edi
mov ecx, eax
call fcn.004065d8
mov esi, dword [ebp - 0x4c]
test bl, 2
je 0x4594fc
lea ecx, [ebp - 0x104]
and ebx, 0xfffffffd
call dword [sym.imp.logging.dll_public:_void___thiscall_KLogMessage::destructor_void_]
and dword [ebp - 4], 0
test bl, 1
jmp 0x4595ec
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 0x4595d1
test edi, edi
mov ecx, 0x486cc0
cmovne ecx, edi
push ecx
push ecx
mov esi, esp
mov dword [esi], ecx
test ecx, ecx
jne 0x459537
xor eax, eax
jmp 0x45953e
push ecx
call fcn.004010ec
pop ecx
mov dword [esi + 4], eax
lea eax, [ebp - 0x44]
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 - 0x104]
push 0x48deb8
mov dword [ebp - 0x48], 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 - 0x48], 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, 0x48e16c
call fcn.004090d3
mov edx, dword [ebp - 0x54]
mov ecx, eax
call fcn.004065d8
mov edx, 0x48e124
mov ecx, eax
call fcn.004090d3
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.004090d3
mov edx, edi
mov ecx, eax
call fcn.004065d8
mov esi, dword [ebp - 0x4c]
test bl, 8
je 0x4595e5
lea ecx, [ebp - 0x104]
and ebx, 0xfffffff7
call dword [sym.imp.logging.dll_public:_void___thiscall_KLogMessage::destructor_void_]
and dword [ebp - 4], 0
test bl, 4
je 0x4595fa
push 0
push 1
lea ecx, [ebp - 0x44]
call fcn.004061c2
mov ecx, esi
call dword [sym.imp.infra.dll_public:_void___thiscall_sql::Connection::Close_void_]
xor bl, bl
lea ecx, [ebp - 0x2c]
call dword [sym.imp.infra.dll_public:_void___thiscall_base::FilePath::destructor_void_]
mov al, bl
call fcn.00461ae2
ret 4