Function at 0x407a4f
Capabilities:
Move file

Disassembly:
push ecx
push ecx
push ebx
mov ebx, dword [esp + 0x10]
push ebp
mov ebp, dword [sym.imp.USER32.dll_CharToOemA]
push edi
mov edi, 0x429bc0
push edi
push ebx
call ebp
cmp byte [0x429814], 0
mov eax, 0x423c84
jne 0x407a7a
mov eax, str.from
push eax
push edi
push str.Converting_archive___s___s_SFX_n_n
call fcn.00416ccd
add esp, 0xc
mov ecx, ebx
call fcn.004028ee
test eax, eax
mov dword [esp + 0x10], eax
jne 0x407aad
push 0x10
pop edx
mov ecx, str.This_is_not_a_valid_CAB_archive.
call fcn.004011a2
push 2
pop eax
jmp 0x407c94
push esi
push ebx
push edi
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
push 0x2e
push edi
call fcn.00415070
test eax, eax
pop ecx
pop ecx
mov dword [esp + 0x10], eax
mov esi, 0x429ce0
je 0x407b8d
inc eax
push 0x423c54
push eax
call fcn.0041c98e
test eax, eax
pop ecx
pop ecx
je 0x407afd
mov eax, dword [esp + 0x10]
inc eax
push 0x423c50
push eax
call fcn.0041c98e
test eax, eax
pop ecx
pop ecx
jne 0x407b8d
push dword [0x429824]
push dword [esp + 0x14]
call fcn.0041c98e
test eax, eax
pop ecx
pop ecx
jne 0x407b7b
cmp byte [0x429814], al
jne 0x407b32
cmp dword [0x432860], eax
jne 0x407b32
push str.Nothing_to_do._n
call fcn.00416ccd
pop ecx
jmp 0x407c91
push str..bak
push ebx
call dword [sym.imp.KERNEL32.dll_lstrcatA]
push ebx
push edi
call dword [sym.imp.KERNEL32.dll_MoveFileA]
test eax, eax
jne 0x407b68
mov esi, 0x429ce0
push esi
push ebx
call ebp
push esi
push str.ERROR:_MsCab_cant_create_backup_copy____s___n
call fcn.00416ccd
pop ecx
pop ecx
push 2
pop eax
jmp 0x407c93
push esi
push ebx
call ebp
push esi
push str.Renaming_source_file_to___s__n
call fcn.00416ccd
pop ecx
pop ecx
jmp 0x407b9a
push dword [0x429824]
push dword [esp + 0x14]
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
jmp 0x407b9a
push dword [0x429824]
push edi
call dword [sym.imp.KERNEL32.dll_lstrcatA]
push esi
push ebx
call ebp
push esi
push str.Converting____s___to___
call fcn.00416ccd
pop ecx
pop ecx
push esi
push edi
call ebp
push esi
push str._s_...
call fcn.00416ccd
mov ebp, 0x8000
push ebp
push ebx
call fcn.00415825
mov ebx, eax
add esp, 0x10
cmp ebx, 0xffffffff
jne 0x407bdc
push str._nERROR:_MsCab_cant_open_source_file_n
call fcn.00416ccd
jmp 0x407b5f
push 0
push dword [0x432860]
push ebx
call fcn.00415493
add esp, 0xc
cmp eax, dword [0x432860]
je 0x407bfc
push str._nERROR:_bad_source_file_n
jmp 0x407c1d
push 0x180
push 0x8501
push edi
call fcn.00415825
add esp, 0xc
cmp eax, 0xffffffff
mov dword [esp + 0x10], eax
jne 0x407c27
push str._nERROR:_MsCab_cant_create_destination_file_n
call fcn.00416ccd
jmp 0x407cb5
push dword [0x429838]
push dword [0x429800]
push eax
call fcn.004162e9
add esp, 0xc
cmp eax, dword [0x429838]
jne 0x407ca1
mov edi, dword [esp + 0x14]
cmp edi, ebp
jle 0x407c4e
mov edi, ebp
push edi
push esi
push ebx
call fcn.00415f9a
add esp, 0xc
cmp eax, edi
jne 0x407c9a
push edi
push esi
push dword [esp + 0x18]
call fcn.004162e9
add esp, 0xc
cmp eax, edi
jne 0x407ca1
sub dword [esp + 0x14], edi
jne 0x407c44
push ebx
call fcn.00415384
push dword [esp + 0x14]
call fcn.00415384
push str._b_b_b_OK_n
call fcn.00416ccd
add esp, 0xc
xor eax, eax
pop esi
pop edi
pop ebp
pop ebx
pop ecx
pop ecx
ret
push str._nERROR:_read_error_n
jmp 0x407ca6
push str._nERROR:_write_error_n
call fcn.00416ccd
pop ecx
push dword [esp + 0x10]
call fcn.00415384
pop ecx
push ebx
call fcn.00415384
jmp 0x407b5f