Function at 0x405cf0
Capabilities:
Copy file
Delete file
Move file
Read .ini file

Disassembly:
sub esp, 0x5a8
push ebx
push ebp
push esi
mov esi, dword [sym.imp.MSVCRT.dll_sprintf]
push edi
push 0x428510
push 0x42d478
lea eax, [esp + 0x4bc]
push 0x428240
push eax
call esi
add esp, 0x10
lea ecx, [esp + 0x4b4]
push ecx
push 0
push 0x428824
push 0x42881c
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov ebp, dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
xor ebx, ebx
test eax, eax
mov dword [esp + 0x10], eax
jle 0x405ec9
lea edi, [ebx + 1]
lea edx, [esp + 0x14]
push edi
push 0x4287d4
push edx
call esi
add esp, 0xc
lea eax, [esp + 0x4b4]
lea ecx, [esp + 0x3b4]
lea edx, [esp + 0x14]
push eax
push 0xff
push ecx
push 0x42d680
push edx
push 0x42881c
call ebp
test eax, eax
je 0x405ebb
lea eax, [esp + 0x28]
push 0x4287bc
lea ecx, [esp + 0x3b8]
push eax
push ecx
call fcn.00403670
lea edx, [esp + 0x34]
lea eax, [esp + 0x2bc]
push edx
push eax
call fcn.00403800
lea ecx, [esp + 0x2c4]
push ecx
call fcn.00403cc0
add esp, 0x18
test eax, eax
je 0x405ebb
lea edx, [esp + 0x28]
lea eax, [esp + 0xa8]
push edx
push eax
call fcn.004037a0
lea ecx, [esp + 0xb0]
push ecx
call fcn.00403cc0
add esp, 0xc
test eax, eax
je 0x405e66
lea edx, [esp + 0xa8]
lea eax, [esp + 0x1ac]
push edx
push 0x428a20
push eax
call esi
lea ecx, [esp + 0x1b8]
push ecx
call fcn.00403cc0
add esp, 0x10
test eax, eax
je 0x405e2b
lea edx, [esp + 0x1ac]
push edx
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
lea eax, [esp + 0x1ac]
lea ecx, [esp + 0xa8]
push eax
push ecx
call dword [sym.imp.KERNEL32.dll_MoveFileA]
test eax, eax
je 0x405f73
lea edx, [esp + 0x1ac]
lea eax, [esp + 0xa8]
push edx
push eax
push 0x428a0c
call fcn.00403b30
add esp, 0xc
push ecx
lea edx, [esp + 0xac]
mov ecx, esp
mov dword [esp + 0x28], esp
push edx
push ecx
call fcn.004039d0
add esp, 8
call fcn.00403860
add esp, 4
lea eax, [esp + 0xa8]
lea ecx, [esp + 0x2b0]
push 0
push eax
push ecx
call dword [sym.imp.KERNEL32.dll_CopyFileA]
lea edx, [esp + 0xa8]
test eax, eax
push edx
je 0x405f92
push 0x4289fc
call fcn.00403b30
add esp, 8
mov eax, dword [esp + 0x10]
mov ebx, edi
cmp ebx, eax
jl 0x405d4a
xor edi, edi
test eax, eax
jle 0x405f63
inc edi
lea ecx, [esp + 0x14]
push edi
push 0x4287d4
push ecx
call esi
add esp, 0xc
lea edx, [esp + 0x4b4]
lea eax, [esp + 0x3b4]
lea ecx, [esp + 0x14]
push edx
push 0xff
push eax
push 0x42d680
push ecx
push 0x42881c
call ebp
test eax, eax
je 0x405f59
lea edx, [esp + 0x28]
push 0x4287bc
lea eax, [esp + 0x3b8]
push edx
push eax
call fcn.00403670
lea ecx, [esp + 0x34]
lea edx, [esp + 0x2bc]
push ecx
push edx
call fcn.00403800
lea eax, [esp + 0x2c4]
push eax
call fcn.00403cc0
add esp, 0x18
test eax, eax
je 0x405f59
lea ecx, [esp + 0x2b0]
push ecx
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
cmp edi, dword [esp + 0x10]
jl 0x405ed3
mov eax, 1
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x5a8
ret
lea eax, [esp + 0x1ac]
lea ecx, [esp + 0xa8]
push eax
push ecx
push 0x4289e8
call fcn.00403b30
add esp, 0xc
jmp 0x405f9f
push 0x4289d8
call fcn.00403b30
add esp, 8
push ebx
push 0x4289b4
call fcn.00403b30
add esp, 8
xor edi, edi
test ebx, ebx
jle 0x4060bb
inc edi
lea eax, [esp + 0x14]
push edi
push 0x4287d4
push eax
call esi
add esp, 0xc
lea ecx, [esp + 0x4b4]
lea edx, [esp + 0x3b4]
lea eax, [esp + 0x14]
push ecx
push 0xff
push edx
push 0x42d680
push eax
push 0x42881c
call ebp
lea ecx, [esp + 0x28]
push 0x4287bc
lea edx, [esp + 0x3b8]
push ecx
push edx
call fcn.00403670
lea eax, [esp + 0x34]
lea ecx, [esp + 0x2bc]
push eax
push ecx
call fcn.00403800
lea edx, [esp + 0x2c4]
push edx
call fcn.00403cc0
add esp, 0x18
test eax, eax
je 0x4060b3
lea eax, [esp + 0x28]
lea ecx, [esp + 0x1ac]
push eax
push ecx
call fcn.004037a0
lea edx, [esp + 0x1b4]
lea eax, [esp + 0xb0]
push edx
push 0x428a20
push eax
call esi
lea ecx, [esp + 0xbc]
push ecx
call fcn.00403cc0
add esp, 0x18
test eax, eax
je 0x4060b3
lea edx, [esp + 0x1ac]
push edx
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
lea eax, [esp + 0x1ac]
lea ecx, [esp + 0xa8]
push eax
push ecx
call dword [sym.imp.KERNEL32.dll_MoveFileA]
lea edx, [esp + 0xa8]
push edx
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
lea eax, [esp + 0x1ac]
push eax
push 0x4289ac
call fcn.00403b30
add esp, 8
cmp edi, ebx
jl 0x405fb7
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x5a8
ret