Function at 0x50e910
Capabilities:
Move file
Resolve function by parsing pe exports

Disassembly:
mov ecx, dword [0x686ac0]
sub esp, 0x60
push esi
push edi
test ecx, ecx
je 0x50e977
mov eax, dword [ecx]
mov edx, dword [eax + 0xc]
call edx
cmp eax, 0x14
jl 0x50e977
mov esi, dword [esp + 0x70]
mov ecx, esi
test esi, esi
jne 0x50e93a
mov ecx, str._null_
mov edi, dword [esp + 0x6c]
mov eax, edi
test edi, edi
jne 0x50e949
mov eax, str._null_
push ecx
push eax
lea eax, [esp + 0x10]
push str._ENTER_PzLocalFile::RenameSub__src_s__tar_s_
push eax
mov dword [esp + 0x18], str..._osfile.cpp
mov dword [esp + 0x1c], 0x2a7
mov dword [esp + 0x20], 0x14
call fcn.0050c8a0
add esp, 0x10
jmp 0x50e97f
mov esi, dword [esp + 0x70]
mov edi, dword [esp + 0x6c]
push esi
push edi
call dword [sym.imp.MSVCR90.dll_rename]
add esp, 8
test eax, eax
jne 0x50e9d6
mov ecx, dword [0x686ac0]
test ecx, ecx
je 0x50e9ce
mov edx, dword [ecx]
mov eax, dword [edx + 0xc]
call eax
cmp eax, 0x28
jl 0x50e9ce
lea ecx, [esp + 8]
push str._EXIT_RenameSub__:_true
push ecx
mov dword [esp + 0x10], str..._osfile.cpp
mov dword [esp + 0x14], 0x2ae
mov dword [esp + 0x18], 0x28
call fcn.0050c8a0
add esp, 8
pop edi
mov al, 1
pop esi
add esp, 0x60
ret
mov edi, dword [sym.imp.MSVCR90.dll__errno]
push ebx
push ebp
call edi
mov eax, dword [eax]
sub eax, 2
mov ecx, dword [0x686ac0]
je 0x50ebfb
test ecx, ecx
je 0x50ea7d
mov edx, dword [ecx]
mov eax, dword [edx + 0xc]
call eax
cmp eax, 0xa
jl 0x50ea7d
call edi
mov ecx, dword [eax]
mov ebx, dword [sym.imp.MSVCR90.dll_strerror]
push ecx
call ebx
add esp, 4
test eax, eax
je 0x50ea27
call edi
mov edx, dword [eax]
push edx
call ebx
add esp, 4
mov ebp, eax
jmp 0x50ea2c
mov ebp, str._null_
mov ebx, esi
test esi, esi
jne 0x50ea37
mov ebx, str._null_
mov esi, dword [esp + 0x74]
test esi, esi
jne 0x50ea44
mov esi, str._null_
mov dword [esp + 0x10], str..._osfile.cpp
mov dword [esp + 0x14], 0x2bf
mov dword [esp + 0x18], 0xa
call edi
mov eax, dword [eax]
push ebp
push eax
push ebx
push esi
lea ecx, [esp + 0x20]
push str.FAILED:__0_rename_src_s__tar_s_:__d___s_
push ecx
call fcn.0050c8a0
mov esi, dword [esp + 0x90]
add esp, 0x18
xor ebx, ebx
mov ebp, 0x2d1
push 0xbb8
call fcn.0050e510
mov edx, dword [esp + 0x78]
push esi
push edx
call dword [sym.imp.MSVCR90.dll_rename]
mov ecx, dword [0x686ac0]
add esp, 0xc
test eax, eax
je 0x50eb75
test ecx, ecx
je 0x50eb1f
mov eax, dword [ecx]
mov edx, dword [eax + 0xc]
call edx
cmp eax, 0xa
jl 0x50eb19
call edi
mov eax, dword [eax]
mov esi, dword [sym.imp.MSVCR90.dll_strerror]
push eax
call esi
add esp, 4
test eax, eax
je 0x50eadd
call edi
mov ecx, dword [eax]
push ecx
call esi
add esp, 4
mov esi, eax
jmp 0x50eae2
mov esi, str._null_
mov dword [esp + 0x20], str..._osfile.cpp
mov dword [esp + 0x24], ebp
mov dword [esp + 0x28], 0xa
call edi
mov edx, dword [eax]
push esi
push edx
lea eax, [ebx + 1]
push eax
lea ecx, [esp + 0x2c]
push str.FAILED:___d_rename__:__d___s_
push ecx
call fcn.0050c8a0
mov esi, dword [esp + 0x8c]
add esp, 0x14
mov ecx, dword [0x686ac0]
inc ebx
cmp ebx, 0x28
jl 0x50ea84
test ecx, ecx
je 0x50ecc0
mov edx, dword [ecx]
mov eax, dword [edx + 0xc]
call eax
cmp eax, 0x28
jl 0x50ecc0
lea ecx, [esp + 0x40]
push str._EXIT_RenameSub__:_false
push ecx
mov dword [esp + 0x48], str..._osfile.cpp
mov dword [esp + 0x4c], 0x2d8
mov dword [esp + 0x50], 0x28
call fcn.0050c8a0
add esp, 8
pop ebp
pop ebx
pop edi
xor al, al
pop esi
add esp, 0x60
ret
test ecx, ecx
je 0x50ebf1
mov edx, dword [ecx]
mov eax, dword [edx + 0xc]
call eax
cmp eax, 0xa
jl 0x50ebb1
inc ebx
push ebx
lea ecx, [esp + 0x34]
push str.SUCCEEDED:___d_rename__
push ecx
mov dword [esp + 0x3c], str..._osfile.cpp
mov dword [esp + 0x40], 0x2cb
mov dword [esp + 0x44], 0xa
call fcn.0050c8a0
add esp, 0xc
mov ecx, dword [0x686ac0]
test ecx, ecx
je 0x50ebf1
mov edx, dword [ecx]
mov eax, dword [edx + 0xc]
call eax
cmp eax, 0x28
jl 0x50ebf1
lea ecx, [esp + 0x40]
push str._EXITING_RenameSub__:_true
push ecx
mov dword [esp + 0x48], str..._osfile.cpp
mov dword [esp + 0x4c], 0x2cc
mov dword [esp + 0x50], 0x28
call fcn.0050c8a0
add esp, 8
pop ebp
pop ebx
pop edi
mov al, 1
pop esi
add esp, 0x60
ret
test ecx, ecx
je 0x50ecc0
mov edx, dword [ecx]
mov eax, dword [edx + 0xc]
call eax
cmp eax, 0x32
jl 0x50ec80
call edi
mov ecx, dword [eax]
mov ebx, dword [sym.imp.MSVCR90.dll_strerror]
push ecx
call ebx
add esp, 4
test eax, eax
je 0x50ec31
call edi
mov edx, dword [eax]
push edx
call ebx
add esp, 4
mov ebp, eax
jmp 0x50ec36
mov ebp, str._null_
mov ebx, esi
test esi, esi
jne 0x50ec41
mov ebx, str._null_
mov esi, dword [esp + 0x74]
test esi, esi
jne 0x50ec4e
mov esi, str._null_
mov dword [esp + 0x50], str..._osfile.cpp
mov dword [esp + 0x54], 0x2b7
mov dword [esp + 0x58], 0x32
call edi
mov eax, dword [eax]
push ebp
push eax
push ebx
push esi
lea ecx, [esp + 0x60]
push str.FAILED:_rename_src_s__tar_s_:__d___s_
push ecx
call fcn.0050c8a0
add esp, 0x18
mov ecx, dword [0x686ac0]
test ecx, ecx
je 0x50ecc0
mov edx, dword [ecx]
mov eax, dword [edx + 0xc]
call eax
cmp eax, 0x28
jl 0x50ecc0
lea ecx, [esp + 0x60]
push str._EXITING_RenameSub__:_false
push ecx
mov dword [esp + 0x68], str..._osfile.cpp
mov dword [esp + 0x6c], 0x2ba
mov dword [esp + 0x70], 0x28
call fcn.0050c8a0
add esp, 8
pop ebp
pop ebx
pop edi
xor al, al
pop esi
add esp, 0x60
ret