Function at 0x47edd0
Capabilities:
Copy file
Resolve function by parsing pe exports

Disassembly:
push 0xffffffffffffffff
push 0x585548
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x68
push ebx
push ebp
push esi
mov esi, ecx
push edi
mov dword [esp + 0x20], esi
mov ecx, 0x5fda18
mov dword [esp + 0x80], 1
call fcn.004bec20
mov ebp, eax
lea ecx, [esp + 0x1c]
mov dword [esp + 0x24], ebp
call dword [sym.imp.MFC71.DLL_ATL::CStringT::CStringT_7]
mov bl, 2
push 0x168
lea ecx, [esp + 0x20]
mov byte [esp + 0x84], bl
call dword [sym.imp.MFC71.DLL_ATL::CStringT::LoadStringA]
mov eax, dword [esi]
lea ecx, [esp + 0x1c]
push ecx
mov ecx, esi
call dword [eax + 0x4c]
xor edi, edi
cmp ebp, edi
je 0x47f276
cmp dword [esp + 0x90], edi
je 0x47f276
push 1
lea edx, [esp + 0x18]
push edx
lea ecx, [esp + 0x9c]
call dword [sym.imp.MFC71.DLL_ATL::CStringT::Right]
push 0x597664
mov ecx, eax
call dword [sym.imp.MFC71.DLL_ATL::CStringT::Compare]
test eax, eax
lea ecx, [esp + 0x14]
setne bl
call dword [sym.imp.MFC71.DLL_ATL::CStringT::CStringT_1]
test bl, bl
je 0x47ee95
push 0x5c
lea ecx, [esp + 0x98]
call dword [0x59483c]
mov ebp, dword [esp + 0x8c]
mov eax, dword [ebp]
add eax, 0xc
push eax
lea ecx, [esp + 0x1c]
call dword [sym.imp.MFC71.DLL_ATL::CStringT::CStringT_5]
push 0x5c
lea ecx, [esp + 0x1c]
mov byte [esp + 0x84], 4
call dword [sym.imp.MFC71.DLL_ATL::CStringT::ReverseFind]
cmp eax, edi
jl 0x47eefb
inc eax
push eax
lea eax, [esp + 0x18]
push eax
lea ecx, [esp + 0x20]
call dword [sym.imp.MFC71.DLL_ATL::CStringT::Left]
push eax
lea ecx, [esp + 0x1c]
mov byte [esp + 0x84], 5
call dword [sym.imp.MFC71.DLL_ATL::CStringT::operator_4]
lea ecx, [esp + 0x14]
mov byte [esp + 0x80], 4
call dword [sym.imp.MFC71.DLL_ATL::CStringT::CStringT_1]
lea ecx, [esp + 0x94]
call dword [sym.imp.MFC71.DLL_ATL::CSimpleStringT::operator_char_const_]
push eax
lea ecx, [esp + 0x1c]
call dword [sym.imp.MFC71.DLL_ATL::CStringT::Compare]
mov ebx, eax
neg ebx
sbb bl, bl
inc bl
mov byte [esp + 0x13], bl
mov ecx, esi
je 0x47ef65
push 0x135
push edi
call fcn.0047dce0
push 0x48e
push str.._burningNeroRecorderBase.cpp
push ecx
mov ecx, esp
mov dword [esp + 0x34], esp
push str.Keeping_files_from_previous_transcoding_process
call dword [sym.imp.MFC71.DLL_ATL::CStringT::CStringT_6]
mov ecx, 0x5fda18
mov byte [esp + 0x8c], 4
call fcn.004bec20
mov ecx, eax
call fcn.004d8c90
jmp 0x47ef70
push 0x166
push edi
call fcn.0047dce0
mov dword [esp + 0x30], esi
mov dword [esp + 0x38], edi
mov dword [esp + 0x3c], edi
mov dword [esp + 0x40], edi
mov dword [esp + 0x44], edi
mov esi, dword [ebp]
cmp esi, ebp
je 0x47efce
jmp 0x47ef90
lea ecx, [esp + 0x48]
push ecx
lea ecx, [esi + 0xc]
call dword [sym.imp.MFC71.DLL_ATL::CSimpleStringT::operator_char_const_]
push eax
call dword [sym.imp.MSVCR71.dll__stati64]
add esp, 8
test eax, eax
jne 0x47efc8
mov edi, dword [esp + 0x40]
mov edx, dword [esp + 0x60]
mov ecx, dword [esp + 0x44]
mov eax, dword [esp + 0x64]
add edi, edx
adc ecx, eax
mov dword [esp + 0x40], edi
mov dword [esp + 0x44], ecx
mov esi, dword [esi]
cmp esi, ebp
jne 0x47ef90
mov edi, dword [ebp]
cmp edi, ebp
je 0x47f0e4
mov ebx, dword [sym.imp.KERNEL32.dll_CopyFileExA]
nop
lea esi, [edi + 8]
push esi
lea ecx, [esp + 0x98]
push ecx
lea edx, [esp + 0x1c]
push edx
call fcn.0040cd70
add esp, 0xc
lea ecx, [edi + 0xc]
mov byte [esp + 0x80], 7
call dword [sym.imp.MFC71.DLL_ATL::CSimpleStringT::operator_char_const_]
push eax
lea ecx, [esp + 0x18]
call dword [sym.imp.MFC71.DLL_ATL::CStringT::Compare]
test eax, eax
push 0
jne 0x47f055
push ecx
lea eax, [esi + 4]
mov ecx, esp
mov dword [esp + 0x30], esp
push eax
call dword [sym.imp.MFC71.DLL_ATL::CStringT::CStringT_5]
push ecx
mov ecx, esp
mov dword [esp + 0x38], esp
push esi
mov byte [esp + 0x90], 8
call dword [sym.imp.MFC71.DLL_ATL::CStringT::CStringT_5]
mov ecx, dword [esp + 0x30]
mov byte [esp + 0x8c], 7
call fcn.004d9ad0
jmp 0x47f0c4
lea ecx, [esp + 0x2c]
push ecx
lea edx, [esp + 0x38]
push edx
push 0x47df50
lea ecx, [esp + 0x24]
mov dword [esp + 0x38], 0
call dword [sym.imp.MFC71.DLL_ATL::CSimpleStringT::operator_char_const_]
push eax
lea ecx, [esi + 4]
call dword [sym.imp.MFC71.DLL_ATL::CSimpleStringT::operator_char_const_]
push eax
call ebx
test eax, eax
je 0x47f170
lea eax, [esp + 0x48]
push eax
lea ecx, [esp + 0x18]
call dword [sym.imp.MFC71.DLL_ATL::CSimpleStringT::operator_char_const_]
push eax
call dword [sym.imp.MSVCR71.dll__stati64]
add esp, 8
test eax, eax
jne 0x47f0c4
mov edx, dword [esp + 0x38]
mov ecx, dword [esp + 0x60]
mov eax, dword [esp + 0x3c]
add edx, ecx
mov dword [esp + 0x38], edx
mov edx, dword [esp + 0x64]
adc eax, edx
mov dword [esp + 0x3c], eax
lea ecx, [esp + 0x14]
mov byte [esp + 0x80], 4
call dword [sym.imp.MFC71.DLL_ATL::CStringT::CStringT_1]
mov edi, dword [edi]
cmp edi, ebp
jne 0x47efe0
mov bl, byte [esp + 0x13]
test bl, bl
jne 0x47f0f8
mov ecx, dword [esp + 0x20]
push 0x180
push 0
call fcn.0047dce0
lea ecx, [esp + 0x18]
call dword [sym.imp.MFC71.DLL_ATL::CStringT::CStringT_1]
lea ecx, [esp + 0x1c]
call dword [sym.imp.MFC71.DLL_ATL::CStringT::CStringT_1]
mov esi, dword [ebp]
cmp esi, ebp
mov dword [ebp], ebp
mov dword [ebp + 4], ebp
je 0x47f145
lea esp, [esp]
mov edi, dword [esi]
lea ebx, [esi + 8]
lea ecx, [ebx + 4]
call dword [sym.imp.MFC71.DLL_ATL::CStringT::CStringT_1]
mov ecx, ebx
call dword [sym.imp.MFC71.DLL_ATL::CStringT::CStringT_1]
push esi
call sub.MFC71.DLL_operator_delete_1
add esp, 4
cmp edi, ebp
mov esi, edi
jne 0x47f120
push ebp
call sub.MFC71.DLL_operator_delete_1
add esp, 4
lea ecx, [esp + 0x94]
call dword [sym.imp.MFC71.DLL_ATL::CStringT::CStringT_1]
mov ecx, dword [esp + 0x78]
pop edi
pop esi
pop ebp
mov dword fs:[0], ecx
pop ebx
add esp, 0x74
ret 0x10
mov ecx, 0x5fcb20
call fcn.004641c0
movzx eax, al
test eax, eax
jne 0x47f212
mov eax, dword [esp + 0x14]
mov ecx, dword [edi + 0xc]
push eax
push ecx
push str.Copying_file__s_to__s_failed
push 0x4b9
push str.._burningNeroRecorderBase.cpp
mov ecx, 0x5fda18
call fcn.004bec20
push eax
call fcn.004d8e30
mov esi, dword [esp + 0x38]
add esp, 0x18
push 0x8c
push 1
mov ecx, esi
call fcn.0047dce0
push 0x184
push 1
mov ecx, esi
call fcn.0047dce0
push 0xc
call sub.MFC71.DLL_operator_new_1
add esp, 4
mov dword [esp + 0x2c], eax
test eax, eax
mov byte [esp + 0x80], 9
je 0x47f1f5
push 0x73
mov ecx, eax
call fcn.0049bd50
jmp 0x47f1f7
xor eax, eax
push 0x5d1fa4
lea edx, [esp + 0x28]
push edx
mov byte [esp + 0x88], 7
mov dword [esp + 0x2c], eax
call sub.MSVCR71.dll__CxxThrowException
push str.Copying_process_cancelled_by_user
push 0x4c2
push str.._burningNeroRecorderBase.cpp
mov ecx, 0x5fda18
call fcn.004bec20
push eax
call fcn.004d8e30
push 0xc
call sub.MFC71.DLL_operator_new_1
add esp, 0x14
mov dword [esp + 0x2c], eax
test eax, eax
mov byte [esp + 0x80], 0xa
je 0x47f259
push 0x81
mov ecx, eax
call fcn.0049bd50
jmp 0x47f25b
xor eax, eax
mov dword [esp + 0x24], eax
push 0x5d1fa4
lea eax, [esp + 0x28]
push eax
mov byte [esp + 0x88], 7
call sub.MSVCR71.dll__CxxThrowException
push str.Internal_error
push 0x479
push str.._burningNeroRecorderBase.cpp
mov ecx, 0x5fda18
call fcn.004bec20
push eax
call fcn.004d8e30
push 0xc
call sub.MFC71.DLL_operator_new_1
add esp, 0x14
mov dword [esp + 0x2c], eax
cmp eax, edi
mov byte [esp + 0x80], 3
je 0x47f2bd
push 0x84
mov ecx, eax
call fcn.0049bd50
jmp 0x47f2bf
xor eax, eax
push 0x5d1fa4
lea ecx, [esp + 0x2c]
push ecx
mov byte [esp + 0x88], bl
mov dword [esp + 0x30], eax
call sub.MSVCR71.dll__CxxThrowException
int3