Function at 0x46c4df
Capabilities:
Copy file
Delete file

Disassembly:
push 0xd4
mov eax, 0x5732f8
call fcn.0054d478
and dword [ebp - 0x38], 0
xor eax, eax
mov edi, ecx
mov esi, edx
mov dword [ebp - 0x34], 7
mov word [ebp - 0x48], ax
and dword [ebp - 4], eax
mov eax, 0x59672c
lea ecx, [ebp - 0x30]
call fcn.004066c0
lea edx, [ebp - 0x30]
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 1
call fcn.0046c0f7
lea ecx, [ebp - 0x30]
mov bl, al
mov byte [ebp - 4], 0
call fcn.00409c40
cmp dword [ebp - 0x34], 8
mov eax, dword [ebp - 0x48]
jae 0x46c53c
lea eax, [ebp - 0x48]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
test bl, bl
jne 0x46c6c2
call fcn.00462c28
cmp byte [eax], bl
jne 0x46c5b8
lea eax, [ebp - 0xe0]
push eax
call fcn.00409b60
lea eax, [ebp - 0xd8]
push str.CSystemCommands::CopyFileToTmpFolder___CreateTempFileName_failed.
push eax
mov byte [ebp - 4], 2
call fcn.00407390
pop ecx
pop ecx
lea ecx, [ebp - 0x30]
lea eax, [ebp - 0xe0]
call fcn.00407170
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x30]
call fcn.00406a80
lea ecx, [ebp - 0x30]
call fcn.00409c40
lea eax, [ebp - 0xe0]
mov byte [ebp - 4], 0
call fcn.00407660
lea ecx, [ebp - 0x4c]
call fcn.00409c40
xor al, al
call fcn.0054d4d4
ret
lea eax, [ebp - 0xd8]
push eax
mov byte [ebp - 4], 4
call fcn.004068d0
mov byte [ebp - 4], 5
call fcn.00462c28
lea esi, [ebp - 0x30]
call fcn.00406720
mov byte [ebp - 4], 6
cmp dword [eax + 0x18], 8
jb 0x46c5e8
mov esi, dword [eax + 4]
jmp 0x46c5eb
lea esi, [eax + 4]
lea eax, [ebp - 0xd8]
push 0x5950f8
push eax
call fcn.00407390
pop ecx
pop ecx
push esi
push eax
call fcn.00407390
pop ecx
pop ecx
push 0x5950f0
push eax
call fcn.00407390
pop ecx
pop ecx
push str.CSystemCommands::CopyFileToTmpFolder___CreateTempFileName_failed.
push eax
call fcn.00407390
pop ecx
pop ecx
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 5
call fcn.00409c40
lea eax, [ebp - 0x54]
push eax
call sub.log4cplusU.dll_public:_static_class_log4cplus::Logger___cdecl_log4cplus::Logger::getRoot_void_
pop ecx
mov esi, 0x2710
push esi
lea ecx, [ebp - 0x54]
mov byte [ebp - 4], 7
call sub.log4cplusU.dll_public:_bool___thiscall_log4cplus::Logger::isEnabledFor_int_const
test al, al
je 0x46c67b
lea ecx, [ebp - 0x30]
lea eax, [ebp - 0xd8]
call fcn.00406700
push 0x88a
push str..SystemCommands.cpp
push eax
push esi
lea ecx, [ebp - 0x54]
mov byte [ebp - 4], 8
call sub.log4cplusU.dll_public:_void___thiscall_log4cplus::Logger::forcedLog_int__class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t___const___char_const___int_const
lea ecx, [ebp - 0x30]
call fcn.00409c40
lea ecx, [ebp - 0x54]
mov byte [ebp - 4], 5
call sub.log4cplusU.dll_public_virtual:_void___thiscall_log4cplus::Logger::destructor_void_
mov byte [ebp - 4], 4
lea eax, [ebp - 0xd8]
call fcn.004067e0
jmp 0x46c5a8
push esi
lea ecx, [ebp - 0x4c]
call fcn.004eeb6d
pop ecx
test al, al
jne 0x46c817
call fcn.00462c28
cmp byte [eax], 0
jne 0x46c718
lea eax, [ebp - 0xe0]
push eax
call fcn.00409b60
lea eax, [ebp - 0xd8]
push str.CSystemCommands::CopyFileToTmpFolder___zstring_to_string_failed.
push eax
mov byte [ebp - 4], 0xb
call fcn.00407390
pop ecx
pop ecx
lea ecx, [ebp - 0x30]
lea eax, [ebp - 0xe0]
call fcn.00407170
mov byte [ebp - 4], 0xc
jmp 0x46c589
lea eax, [ebp - 0xd8]
push eax
mov byte [ebp - 4], 0xd
call fcn.004068d0
mov byte [ebp - 4], 0xe
call fcn.00462c28
lea esi, [ebp - 0x30]
call fcn.00406720
mov byte [ebp - 4], 0xf
cmp dword [eax + 0x18], 8
jb 0x46c748
mov esi, dword [eax + 4]
jmp 0x46c74b
lea esi, [eax + 4]
lea eax, [ebp - 0xd8]
push 0x5950f8
push eax
call fcn.00407390
pop ecx
pop ecx
push esi
push eax
call fcn.00407390
pop ecx
pop ecx
push 0x5950f0
push eax
call fcn.00407390
pop ecx
pop ecx
push str.CSystemCommands::CopyFileToTmpFolder___zstring_to_string_failed.
push eax
call fcn.00407390
pop ecx
pop ecx
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 0xe
call fcn.00409c40
lea eax, [ebp - 0x54]
push eax
call sub.log4cplusU.dll_public:_static_class_log4cplus::Logger___cdecl_log4cplus::Logger::getRoot_void_
pop ecx
mov esi, 0x2710
push esi
lea ecx, [ebp - 0x54]
mov byte [ebp - 4], 0x10
call sub.log4cplusU.dll_public:_bool___thiscall_log4cplus::Logger::isEnabledFor_int_const
test al, al
je 0x46c7db
lea ecx, [ebp - 0x30]
lea eax, [ebp - 0xd8]
call fcn.00406700
push 0x88e
push str..SystemCommands.cpp
push eax
push esi
lea ecx, [ebp - 0x54]
mov byte [ebp - 4], 0x11
call sub.log4cplusU.dll_public:_void___thiscall_log4cplus::Logger::forcedLog_int__class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t___const___char_const___int_const
lea ecx, [ebp - 0x30]
call fcn.00409c40
lea ecx, [ebp - 0x54]
mov byte [ebp - 4], 0xe
call sub.log4cplusU.dll_public_virtual:_void___thiscall_log4cplus::Logger::destructor_void_
mov byte [ebp - 4], 0xd
jmp 0x46c68b
cmp dword [esi + 0x18], 0x10
jb 0x46c822
mov esi, dword [esi + 4]
jmp 0x46c825
add esi, 4
cmp dword [edi + 0x18], 0x10
jb 0x46c830
mov eax, dword [edi + 4]
jmp 0x46c833
lea eax, [edi + 4]
push 0
push esi
push eax
call dword [sym.imp.KERNEL32.dll_CopyFileA]
test eax, eax
jne 0x46c9f2
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
call fcn.00462c28
cmp byte [eax], 0
jne 0x46c8d4
lea eax, [ebp - 0xe0]
push eax
call fcn.00409b60
push edi
push ecx
push 0x5967ac
push ecx
lea eax, [ebp - 0xd8]
push str.CSystemCommands::CopyFileToTmpFolder___CopyFileA_failed.
push eax
mov byte [ebp - 4], 0x14
call fcn.00407390
add esp, 0xc
push eax
call fcn.00407390
add esp, 0xc
push eax
call fcn.004155d0
lea ecx, [ebp - 0x30]
lea eax, [ebp - 0xe0]
call fcn.00407170
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 0x15
call fcn.00406a80
lea ecx, [ebp - 0x30]
call fcn.00409c40
lea eax, [ebp - 0xe0]
mov byte [ebp - 4], 0
call fcn.00407660
xor bl, bl
lea ecx, [ebp - 0x4c]
call fcn.00409c40
mov al, bl
jmp 0x46c5b2
lea eax, [ebp - 0xd8]
push eax
mov byte [ebp - 4], 0x16
call fcn.004068d0
mov byte [ebp - 4], 0x17
call fcn.00462c28
lea esi, [ebp - 0x30]
call fcn.00406720
mov byte [ebp - 4], 0x18
cmp dword [eax + 0x18], 8
jb 0x46c904
mov esi, dword [eax + 4]
jmp 0x46c907
lea esi, [eax + 4]
lea eax, [ebp - 0xd8]
push 0x5950f8
push eax
call fcn.00407390
pop ecx
pop ecx
push esi
push eax
call fcn.00407390
pop ecx
pop ecx
push 0x5950f0
push eax
call fcn.00407390
pop ecx
pop ecx
push str.CSystemCommands::CopyFileToTmpFolder___CopyFileA_failed.
push eax
call fcn.00407390
pop ecx
pop ecx
push 0x5967ac
push eax
call fcn.00407390
pop ecx
pop ecx
push edi
push eax
call fcn.004155d0
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 0x17
call fcn.00409c40
lea eax, [ebp - 0x54]
push eax
call sub.log4cplusU.dll_public:_static_class_log4cplus::Logger___cdecl_log4cplus::Logger::getRoot_void_
pop ecx
mov esi, 0x2710
push esi
lea ecx, [ebp - 0x54]
mov byte [ebp - 4], 0x19
call sub.log4cplusU.dll_public:_bool___thiscall_log4cplus::Logger::isEnabledFor_int_const
test al, al
je 0x46c9ab
lea ecx, [ebp - 0x30]
lea eax, [ebp - 0xd8]
call fcn.00406700
push 0x893
push str..SystemCommands.cpp
push eax
push esi
lea ecx, [ebp - 0x54]
mov byte [ebp - 4], 0x1a
call sub.log4cplusU.dll_public:_void___thiscall_log4cplus::Logger::forcedLog_int__class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t___const___char_const___int_const
lea ecx, [ebp - 0x30]
call fcn.00409c40
lea ecx, [ebp - 0x54]
mov byte [ebp - 4], 0x17
call sub.log4cplusU.dll_public_virtual:_void___thiscall_log4cplus::Logger::destructor_void_
lea eax, [ebp - 0xd8]
mov byte [ebp - 4], 0x16
call fcn.004067e0
jmp 0x46c8c3
mov bl, 1
jmp 0x46c8c5