Function at 0x4e5560
Capabilities:
Delete file
Move file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5d5341
mov eax, dword fs:[0]
push eax
push ecx
sub esp, 0x88c
mov eax, dword [0x671330]
xor eax, ebp
mov dword [ebp - 0x14], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
mov dword [ebp - 0xf4], 0
mov dword [ebp - 0xf0], 0xffffffff
mov ecx, dword [ebp + 8]
call fcn.00416be0
test eax, eax
jne 0x4e5676
push 0xfa0
call dword [sym.imp.Dbglog.dll_struct_boost::logging::level::holder_no_ts____cdecl_g_l_filter_void_]
mov ecx, eax
call fcn.0040a130
movzx eax, al
test eax, eax
jne 0x4e55d4
jmp 0x4e5674
lea ecx, [ebp - 0x398]
push ecx
call dword [sym.imp.Dbglog.dll_struct_boost::logging::logger_holder_struct_boost::logging::logger_format_write_struct_boost::logging::default___struct_boost::logging::default___struct_boost::logging::writer::threading::ts_write__struct_boost::logging::default___struct_boost::logging::lock_resource_finder::single_thread______cdecl_g_l_void_]
push eax
call fcn.004048b0
add esp, 4
mov ecx, eax
call fcn.00402ad0
mov dword [ebp - 0x1c4], eax
mov edx, dword [ebp - 0x1c4]
mov dword [ebp - 0x10c], edx
mov dword [ebp - 4], 0
push str.DB_not_open
push 0x5f0248
push 0x5f0260
push 0x5f027c
push 0x5f0280
mov ecx, dword [ebp - 0x10c]
call fcn.00402a30
mov ecx, eax
call fcn.00402d20
push eax
call fcn.00409d00
add esp, 8
push eax
call fcn.00409d00
add esp, 8
push eax
call fcn.00409d00
add esp, 8
push eax
call fcn.00409d00
add esp, 8
push eax
call fcn.00409d00
add esp, 8
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x398]
call fcn.00402a50
jmp 0x4e568a
push 0
mov eax, dword [ebp + 8]
push eax
call fcn.004e5390
add esp, 8
mov dword [ebp - 0xf0], eax
mov dword [ebp - 4], 1
mov ecx, dword [ebp + 8]
call fcn.005c4700
jmp 0x4e56a1
mov dword [ebp - 4], 0xffffffff
jmp 0x4e56b1
push 4
lea ecx, [ebp - 0x18]
call fcn.004029d0
mov ecx, dword [ebp + 0x10]
push ecx
lea ecx, [ebp - 0x18]
call fcn.0040e1d0
mov dword [ebp - 4], 3
push str..new
lea ecx, [ebp - 0x18]
call fcn.004f6030
lea ecx, [ebp - 0x18]
call fcn.00402d50
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
mov byte [ebp - 4], 4
push 0
mov edx, dword [ebp + 0x1c]
push edx
lea ecx, [ebp - 0x18]
call fcn.00402d50
push eax
mov eax, dword [ebp + 0xc]
push eax
mov ecx, dword [ebp + 8]
push ecx
call fcn.004e5030
add esp, 0x14
mov dword [ebp - 0x110], eax
cmp dword [ebp - 0x110], 0
je 0x4e5f8d
mov byte [ebp - 4], 5
push 0xfde9
lea ecx, [ebp - 0x18]
call fcn.00402d50
push eax
lea ecx, [ebp - 0x26c]
call fcn.0045d310
mov dword [ebp - 0x114], eax
mov edx, dword [ebp - 0x114]
mov dword [ebp - 0x118], edx
mov byte [ebp - 4], 6
mov eax, dword [ebp + 0xc]
push eax
mov ecx, dword [ebp - 0x118]
call fcn.00418da0
push eax
mov ecx, dword [ebp + 8]
call fcn.005c5360
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x26c]
call fcn.00418db0
cmp dword [ebp - 0xf0], 7
jg 0x4e578f
mov dword [ebp - 0x108], 0x2afc
jmp 0x4e57fc
cmp dword [ebp - 0xf0], 0xb
jg 0x4e57a4
mov dword [ebp - 0x104], 0x2b00
jmp 0x4e57f0
cmp dword [ebp - 0xf0], 0xc
jg 0x4e57b9
mov dword [ebp - 0x100], 0x2b01
jmp 0x4e57e4
cmp dword [ebp - 0xf0], 0xd
jg 0x4e57ce
mov dword [ebp - 0xfc], 0x2b06
jmp 0x4e57d8
mov dword [ebp - 0xfc], 0x2aff
mov ecx, dword [ebp - 0xfc]
mov dword [ebp - 0x100], ecx
mov edx, dword [ebp - 0x100]
mov dword [ebp - 0x104], edx
mov eax, dword [ebp - 0x104]
mov dword [ebp - 0x108], eax
mov cx, word [ebp - 0x108]
mov word [ebp - 0xf8], cx
push 4
lea ecx, [ebp - 0x28]
call fcn.004029d0
push 0
push 0x5f0308
movzx edx, word [ebp - 0xf8]
push edx
lea eax, [ebp - 0x28]
push eax
call fcn.0044f590
add esp, 0x10
mov dword [ebp - 0x1e8], eax
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x28]
call fcn.00475520
movzx ecx, al
test ecx, ecx
jne 0x4e5b2c
push 4
lea ecx, [ebp - 0x24]
call fcn.004029d0
push 0xfde9
mov edx, dword [ebp + 0x10]
push edx
lea ecx, [ebp - 0x2f0]
call fcn.0045d310
mov dword [ebp - 0x11c], eax
mov eax, dword [ebp - 0x11c]
mov dword [ebp - 0x120], eax
mov byte [ebp - 4], 8
mov ecx, dword [ebp - 0x120]
call fcn.00418da0
push eax
lea ecx, [ebp - 0x24]
call fcn.004f1de0
mov dword [ebp - 0x1c8], eax
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x2f0]
call fcn.00418db0
push 0x5f0334
push 0x5f033c
lea ecx, [ebp - 0x24]
call fcn.004f74b0
push 4
lea ecx, [ebp - 0x1c]
call fcn.004029d0
lea ecx, [ebp - 0x1c]
call fcn.00404b40
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x24]
call fcn.00402d50
push eax
lea ecx, [ebp - 0x28]
call fcn.00402d50
push eax
lea ecx, [ebp - 0x1c]
push ecx
call fcn.004f7100
add esp, 0xc
lea ecx, [ebp - 0x1c]
call fcn.00475520
movzx edx, al
test edx, edx
jne 0x4e5b12
mov byte [ebp - 4], 0xc
mov ecx, dword [ebp + 8]
call fcn.00416be0
mov dword [ebp - 0x124], eax
push 0
push 0
push 0x4ebf70
push 0
push 1
push 1
push str.domain_from_url
mov eax, dword [ebp - 0x124]
push eax
call fcn.0054f3c0
add esp, 0x20
lea ecx, [ebp - 0x1c]
call fcn.00402d50
push eax
mov ecx, dword [ebp + 8]
call fcn.005c4e60
mov dword [ebp - 0x128], eax
mov ecx, dword [ebp - 0x128]
mov dword [ebp - 0x154], ecx
call dword [sym.imp.Dbglog.dll_struct_boost::logging::level::holder_no_ts____cdecl_g_l_filter_void_]
mov dword [ebp - 0x12c], eax
push 0x7d0
mov ecx, dword [ebp - 0x12c]
call fcn.0040a130
mov byte [ebp - 0xea], al
movzx edx, byte [ebp - 0xea]
test edx, edx
jne 0x4e598c
jmp 0x4e5a81
call dword [sym.imp.Dbglog.dll_struct_boost::logging::logger_holder_struct_boost::logging::logger_format_write_struct_boost::logging::default___struct_boost::logging::default___struct_boost::logging::writer::threading::ts_write__struct_boost::logging::default___struct_boost::logging::lock_resource_finder::single_thread______cdecl_g_l_void_]
mov dword [ebp - 0x130], eax
mov eax, dword [ebp - 0x130]
push eax
call fcn.004048b0
add esp, 4
mov dword [ebp - 0x134], eax
lea ecx, [ebp - 0x440]
push ecx
mov ecx, dword [ebp - 0x134]
call fcn.00402ad0
mov dword [ebp - 0x138], eax
mov edx, dword [ebp - 0x138]
mov dword [ebp - 0x13c], edx
mov byte [ebp - 4], 0xd
mov ecx, dword [ebp - 0x13c]
call fcn.00402a30
mov dword [ebp - 0x140], eax
mov ecx, dword [ebp - 0x140]
call fcn.00402d20
mov dword [ebp - 0x144], eax
push 0x5f042c
mov eax, dword [ebp - 0x144]
push eax
call fcn.00409d00
add esp, 8
mov dword [ebp - 0x148], eax
push 0x5f03d8
mov ecx, dword [ebp - 0x148]
push ecx
call fcn.00409d00
add esp, 8
mov dword [ebp - 0x14c], eax
push 0x5f03c4
mov edx, dword [ebp - 0x14c]
push edx
call fcn.00409d00
add esp, 8
mov dword [ebp - 0x150], eax
push str.Conversion_affected_records:
mov eax, dword [ebp - 0x150]
push eax
call fcn.00409d00
add esp, 8
mov dword [ebp - 0x158], eax
mov ecx, dword [ebp - 0x154]
push ecx
mov ecx, dword [ebp - 0x158]
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 byte [ebp - 4], 0xc
lea ecx, [ebp - 0x440]
call fcn.00402a50
mov dword [ebp - 0xf4], 1
jmp 0x4e5b02
mov dword [ebp - 4], 0xb
jmp 0x4e5b12
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x1c]
call fcn.00402d30
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x24]
call fcn.00402d30
jmp 0x4e5b3f
cmp dword [ebp + 0x1c], 0
je 0x4e5b3f
push str.Convert_DB_error:_read_empty_conversion_SQL_script
mov ecx, dword [ebp + 0x1c]
call fcn.00414b50
cmp dword [ebp - 0xf0], 0x11
jge 0x4e5d0b
cmp dword [ebp + 0x18], 0
je 0x4e5d0b
mov ecx, dword [ebp + 0x18]
push ecx
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcslen]
add esp, 4
test eax, eax
jbe 0x4e5d0b
cmp dword [ebp + 0x10], 0
je 0x4e5d0b
mov edx, dword [ebp + 0x10]
push edx
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcslen]
add esp, 4
test eax, eax
jbe 0x4e5d0b
push 4
lea ecx, [ebp - 0x34]
call fcn.004029d0
mov eax, dword [ebp + 0x18]
push eax
lea ecx, [ebp - 0x34]
call fcn.0040e050
mov dword [ebp - 0x1d0], eax
mov byte [ebp - 4], 0x10
call dword [sym.imp.Dbglog.dll_struct_boost::logging::level::holder_no_ts____cdecl_g_l_filter_void_]
mov dword [ebp - 0x168], eax
push 0x7d0
mov ecx, dword [ebp - 0x168]
call fcn.0040a130
mov byte [ebp - 0xe9], al
movzx ecx, byte [ebp - 0xe9]
test ecx, ecx
jne 0x4e5bdc
jmp 0x4e5cb8
call dword [sym.imp.Dbglog.dll_struct_boost::logging::logger_holder_struct_boost::logging::logger_format_write_struct_boost::logging::default___struct_boost::logging::default___struct_boost::logging::writer::threading::ts_write__struct_boost::logging::default___struct_boost::logging::lock_resource_finder::single_thread______cdecl_g_l_void_]
mov dword [ebp - 0x16c], eax
mov edx, dword [ebp - 0x16c]
push edx
call fcn.004048b0
add esp, 4
mov dword [ebp - 0x170], eax
lea eax, [ebp - 0x4e8]
push eax
mov ecx, dword [ebp - 0x170]
call fcn.00402ad0
mov dword [ebp - 0x174], eax
mov ecx, dword [ebp - 0x174]
mov dword [ebp - 0x178], ecx
mov byte [ebp - 4], 0x11
mov ecx, dword [ebp - 0x178]
call fcn.00402a30
mov dword [ebp - 0x17c], eax
mov ecx, dword [ebp - 0x17c]
call fcn.00402d20
mov dword [ebp - 0x180], eax
push 0x5f0568
mov edx, dword [ebp - 0x180]
push edx
call fcn.00409d00
add esp, 8
mov dword [ebp - 0x184], eax
push 0x5f054c
mov eax, dword [ebp - 0x184]
push eax
call fcn.00409d00
add esp, 8
mov dword [ebp - 0x188], eax
push 0x5f0544
mov ecx, dword [ebp - 0x188]
push ecx
call fcn.00409d00
add esp, 8
mov dword [ebp - 0x18c], eax
push str.Building_screenshots_index...
mov edx, dword [ebp - 0x18c]
push edx
call fcn.00409d00
add esp, 8
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x4e8]
call fcn.00402a50
push 0xb0
lea ecx, [ebp - 0xe8]
call fcn.004029d0
lea eax, [ebp - 0x34]
push eax
mov ecx, dword [ebp + 8]
push ecx
lea ecx, [ebp - 0xe8]
call fcn.004e7670
mov dword [ebp - 0x1d4], eax
mov byte [ebp - 4], 0x12
lea ecx, [ebp - 0xe8]
call fcn.004e78f0
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0xe8]
call fcn.004f55b0
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x34]
call fcn.0040c680
mov ecx, dword [ebp + 8]
call fcn.005c4700
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x28]
call fcn.00402d30
jmp 0x4e5d96
mov dword [ebp - 4], 4
jmp 0x4e5da6
cmp dword [ebp - 0xf4], 0
je 0x4e5f8d
cmp dword [ebp + 0x14], 0
je 0x4e5ec7
push 4
lea ecx, [ebp - 0x20]
call fcn.004029d0
mov ecx, dword [ebp + 0x10]
push ecx
lea ecx, [ebp - 0x20]
call fcn.0040e1d0
mov dword [ebp - 0x1dc], eax
mov byte [ebp - 4], 0x15
push str..bak
lea ecx, [ebp - 0x20]
call fcn.004f6030
push 1
lea ecx, [ebp - 0x20]
call fcn.00402d50
push eax
mov edx, dword [ebp + 0x10]
push edx
call dword [sym.imp.KERNEL32.dll_MoveFileExW]
test eax, eax
jne 0x4e5ebb
cmp dword [ebp + 0x1c], 0
je 0x4e5ea0
push 4
lea ecx, [ebp - 0x2c]
call fcn.004029d0
lea ecx, [ebp - 0x2c]
call fcn.00404b40
mov byte [ebp - 4], 0x16
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
lea eax, [ebp - 0x1a4]
push eax
call fcn.004047e0
add esp, 8
mov dword [ebp - 0x19c], eax
mov ecx, dword [ebp - 0x19c]
mov dword [ebp - 0x1a0], ecx
mov byte [ebp - 4], 0x17
mov ecx, dword [ebp - 0x1a0]
call fcn.00402d50
push eax
mov edx, dword [ebp + 0x10]
push edx
push 0x5f05a0
lea eax, [ebp - 0x2c]
push eax
call fcn.004b3830
add esp, 0x10
mov byte [ebp - 4], 0x16
lea ecx, [ebp - 0x1a4]
call fcn.00402d30
lea ecx, [ebp - 0x2c]
call fcn.00402d50
push eax
mov ecx, dword [ebp + 0x1c]
call fcn.00414b50
mov byte [ebp - 4], 0x15
lea ecx, [ebp - 0x2c]
call fcn.00402d30
mov dword [ebp - 0x1a8], 1
push 0x62efd0
lea ecx, [ebp - 0x1a8]
push ecx
call sub.VCRUNTIME140.dll__CxxThrowException
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x20]
call fcn.00402d30
push 1
mov edx, dword [ebp + 0x10]
push edx
lea ecx, [ebp - 0x18]
call fcn.00402d50
push eax
call dword [sym.imp.KERNEL32.dll_MoveFileExW]
test eax, eax
jne 0x4e5f8d
cmp dword [ebp + 0x1c], 0
je 0x4e5f72
push 4
lea ecx, [ebp - 0x38]
call fcn.004029d0
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
lea eax, [ebp - 0x38]
push eax
call fcn.004047e0
add esp, 8
mov dword [ebp - 0x1e0], eax
mov byte [ebp - 4], 0x18
push 4
lea ecx, [ebp - 0x30]
call fcn.004029d0
lea ecx, [ebp - 0x30]
call fcn.00404b40
mov byte [ebp - 4], 0x19
lea ecx, [ebp - 0x38]
call fcn.00402d50
push eax
mov ecx, dword [ebp + 0x10]
push ecx
push str.Convert_DB_error__nFile:__s_nError:__s
lea edx, [ebp - 0x30]
push edx
call fcn.004b3830
add esp, 0x10
lea ecx, [ebp - 0x30]
call fcn.00402d50
push eax
mov ecx, dword [ebp + 0x1c]
call fcn.00414b50
mov byte [ebp - 4], 0x18
lea ecx, [ebp - 0x30]
call fcn.00402d30
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x38]
call fcn.00402d30
mov dword [ebp - 0x1ac], 1
push 0x62efd0
lea eax, [ebp - 0x1ac]
push eax
call sub.VCRUNTIME140.dll__CxxThrowException
jmp 0x4e6008
mov dword [ebp - 4], 3
jmp 0x4e601a
jmp 0x4e6023
cmp dword [ebp - 0xf4], 0
jne 0x4e60f6
cmp dword [ebp + 0x1c], 0
je 0x4e60f6
push 0xfa0
call dword [sym.imp.Dbglog.dll_struct_boost::logging::level::holder_no_ts____cdecl_g_l_filter_void_]
mov ecx, eax
call fcn.0040a130
movzx edx, al
test edx, edx
jne 0x4e6058
jmp 0x4e60f6
lea eax, [ebp - 0x590]
push eax
call dword [sym.imp.Dbglog.dll_struct_boost::logging::logger_holder_struct_boost::logging::logger_format_write_struct_boost::logging::default___struct_boost::logging::default___struct_boost::logging::writer::threading::ts_write__struct_boost::logging::default___struct_boost::logging::lock_resource_finder::single_thread______cdecl_g_l_void_]
push eax
call fcn.004048b0
add esp, 4
mov ecx, eax
call fcn.00402ad0
mov dword [ebp - 0x1b8], eax
mov ecx, dword [ebp - 0x1b8]
mov dword [ebp - 0x1bc], ecx
mov byte [ebp - 4], 0x1c
mov ecx, dword [ebp + 0x1c]
call fcn.0040bfe0
push eax
push 0x5f067c
push str.saDbConvertFromOldVersion
push 0x5f0684
push 0x5f0688
mov ecx, dword [ebp - 0x1bc]
call fcn.00402a30
mov ecx, eax
call fcn.00402d20
push eax
call fcn.00409d00
add esp, 8
push eax
call fcn.00409d00
add esp, 8
push eax
call fcn.00409d00
add esp, 8
push eax
call fcn.00409d00
add esp, 8
push eax
call fcn.0040a4b0
add esp, 8
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x590]
call fcn.00402a50
mov edx, dword [ebp - 0xf4]
mov dword [ebp - 0x1c0], edx
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x18]
call fcn.00402d30
mov eax, dword [ebp - 0x1c0]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.00544286
mov esp, ebp
pop ebp
ret