Function at 0x54e700
Capabilities:
Delete file
Move file

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x4a98
call fcn.0067ac70
mov dword [ebp - 0x14], 1
mov dword [ebp - 4], 0xffffff9c
mov dword [ebp - 8], 0xffffff9c
mov eax, dword [ebp + 8]
push eax
call fcn.00401500
add esp, 4
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0xffffff9c
jne 0x54e755
push 0x30
push str.Error.
push str.File_open_error.
mov ecx, dword [0x15da928]
push ecx
call dword [sym.imp.USER32.dll_MessageBoxA]
jmp 0x54ea62
mov edx, dword [ebp + 8]
push edx
lea eax, [ebp - 0x298]
push eax
call fcn.006b6b40
add esp, 8
push 0x2e
lea ecx, [ebp - 0x298]
push ecx
call fcn.0067d790
add esp, 8
mov dword [ebp - 0x10], eax
mov edx, dword [ebp - 0x10]
add edx, 1
mov dword [ebp - 0x10], edx
push 0x721bfc
mov eax, dword [ebp - 0x10]
push eax
call fcn.006b6b40
add esp, 8
push 1
lea ecx, [ebp - 0x298]
push ecx
call fcn.00401390
add esp, 8
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0xffffff9c
jne 0x54e7d9
mov edx, dword [ebp - 4]
push edx
call fcn.00401380
add esp, 4
push 0x30
push str.Error.
push str.File_create_error.
mov eax, dword [0x15da928]
push eax
call dword [sym.imp.USER32.dll_MessageBoxA]
jmp 0x54ea62
push 4
lea ecx, [ebp - 0x14]
push ecx
mov edx, dword [ebp - 4]
push edx
call fcn.00401560
add esp, 0xc
push 4
lea eax, [ebp - 0x14]
push eax
mov ecx, dword [ebp - 8]
push ecx
call fcn.004016d0
add esp, 0xc
mov edx, dword [0x25eca60]
lea eax, [edx*8 + 0x804]
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x14], 0x18
jge 0x54e848
mov ecx, dword [ebp - 4]
push ecx
call fcn.00401380
add esp, 4
mov edx, dword [ebp - 8]
push edx
call fcn.00401380
add esp, 4
push 0x30
push str.Error.
push str.This_is_an_out_of_date_map_file._Please_try_again_with_a_version_24_or_later_file.
mov eax, dword [0x15da928]
push eax
call dword [sym.imp.USER32.dll_MessageBoxA]
jmp 0x54ea62
push 4
lea ecx, [ebp - 0x20]
push ecx
mov edx, dword [ebp - 4]
push edx
call fcn.00401560
add esp, 0xc
push 4
lea eax, [ebp - 0x1c]
push eax
mov ecx, dword [ebp - 8]
push ecx
call fcn.004016d0
add esp, 0xc
mov edx, dword [ebp - 4]
push edx
call fcn.004016a0
add esp, 4
sub eax, 0xc
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0x14], 0x19
jl 0x54e88f
mov eax, dword [ebp - 0xc]
sub eax, 0x7d0
mov dword [ebp - 0xc], eax
mov ecx, dword [ebp - 0xc]
sub ecx, dword [ebp - 0x20]
mov dword [ebp - 0xc], ecx
mov edx, dword [ebp - 0xc]
push edx
call fcn.0067ac30
add esp, 4
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x10], eax
mov ecx, dword [ebp - 0xc]
push ecx
mov edx, dword [ebp - 0x10]
push edx
mov eax, dword [ebp - 4]
push eax
call fcn.00401560
add esp, 0xc
mov ecx, dword [ebp - 0xc]
push ecx
mov edx, dword [ebp - 0x10]
push edx
mov eax, dword [ebp - 8]
push eax
call fcn.004016d0
add esp, 0xc
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x28], ecx
mov edx, dword [ebp - 0x28]
push edx
call fcn.0067ac50
add esp, 4
push 4
lea eax, [ebp - 0x2c]
push eax
mov ecx, dword [ebp - 4]
push ecx
call fcn.00401560
add esp, 0xc
mov edx, dword [ebp - 0x2c]
shl edx, 3
push edx
mov eax, 8
imul ecx, eax, 0
lea edx, [ebp + ecx - 0x4a98]
push edx
mov eax, dword [ebp - 4]
push eax
call fcn.00401560
add esp, 0xc
push 0x800
mov ecx, 0x40
imul edx, ecx, 0
lea eax, [ebp + edx - 0xa98]
mov ecx, 2
imul edx, ecx, 0
add eax, edx
push eax
mov eax, dword [ebp - 4]
push eax
call fcn.00401560
add esp, 0xc
push 4
push 0x25eca60
mov ecx, dword [ebp - 8]
push ecx
call fcn.004016d0
add esp, 0xc
mov edx, dword [0x25eca60]
shl edx, 3
push edx
mov eax, 8
imul ecx, eax, 0
add ecx, dword [0x25eca5c]
push ecx
mov edx, dword [ebp - 8]
push edx
call fcn.004016d0
add esp, 0xc
push 0x800
mov eax, 0x40
imul ecx, eax, 0
add ecx, dword [0x25eca58]
mov edx, 2
imul eax, edx, 0
add ecx, eax
push ecx
mov ecx, dword [ebp - 8]
push ecx
call fcn.004016d0
add esp, 0xc
push 0x64
mov edx, 1
imul eax, edx, 0
lea ecx, [ebp + eax - 0x90]
push ecx
mov edx, dword [ebp - 4]
push edx
call fcn.00401560
add esp, 0xc
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x18]
push eax
mov ecx, 1
imul edx, ecx, 0
lea eax, [ebp + edx - 0x90]
push eax
mov ecx, dword [ebp - 8]
push ecx
call fcn.004016d0
add esp, 0xc
cmp dword [ebp - 0x18], 0x64
je 0x54e9a9
mov edx, dword [ebp - 4]
push edx
call fcn.00401380
add esp, 4
mov eax, dword [ebp - 8]
push eax
call fcn.00401380
add esp, 4
mov ecx, dword [ebp + 8]
push ecx
lea edx, [ebp - 0x194]
push edx
call fcn.006b6b40
add esp, 8
push str..bak
lea eax, [ebp - 0x194]
push eax
call fcn.006b6b50
add esp, 8
lea ecx, [ebp - 0x194]
push ecx
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
lea edx, [ebp - 0x194]
push edx
mov eax, dword [ebp + 8]
push eax
call fcn.006d3f70
add esp, 8
mov ecx, dword [ebp + 8]
push ecx
lea edx, [ebp - 0x298]
push edx
call fcn.006d3f70
add esp, 8
mov esp, ebp
pop ebp
ret