Function at 0x4ab660
Capabilities:
Check if file exists
Copy file
Create directory
Get file attributes
Read .ini file

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x58c
lea eax, [ebp - 0x104]
push eax
call fcn.00529440
add esp, 4
push 0x5c2f3c
lea ecx, [ebp - 0x104]
push ecx
call fcn.0054bea0
add esp, 8
lea edx, [ebp - 0x104]
push edx
push 0x104
lea eax, [ebp - 0x30c]
push eax
push str.D:Summary
push str.FINISHREPORTFOLDER
push 0x5c2f70
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
cmp dword [0x5e91cc], 0
jne 0x4ab6c2
jmp 0x4ab97d
lea ecx, [ebp - 0x30c]
push ecx
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
cmp eax, 0xffffffff
jne 0x4ab6e3
push 0
lea edx, [ebp - 0x30c]
push edx
call dword [sym.imp.KERNEL32.dll_CreateDirectoryA]
push 0x5c2f78
lea eax, [ebp - 0x30c]
push eax
call fcn.0054bea0
add esp, 8
push 0x104
push 0
lea ecx, [ebp - 0x208]
push ecx
call fcn.0054bf90
add esp, 0xc
cmp dword [0x5e91cc], 2
jne 0x4ab7b1
push 0x5ebfb8
lea edx, [ebp - 0x30c]
push edx
call fcn.0054bea0
add esp, 8
push 0x5c2f7c
lea eax, [ebp - 0x30c]
push eax
call fcn.0054bea0
add esp, 8
push 0x5ec0b8
lea ecx, [ebp - 0x208]
push ecx
call fcn.0054be90
add esp, 8
push 0x5c2f84
lea edx, [ebp - 0x208]
push edx
call fcn.0054bea0
add esp, 8
push 0x5ebfb8
lea eax, [ebp - 0x208]
push eax
call fcn.0054bea0
add esp, 8
cmp dword [0x5edfa0], 0
je 0x4ab79d
push 0x5c2f88
lea ecx, [ebp - 0x208]
push ecx
call fcn.0054bea0
add esp, 8
jmp 0x4ab7b1
push 0x5c2f90
lea edx, [ebp - 0x208]
push edx
call fcn.0054bea0
add esp, 8
lea eax, [ebp - 0x208]
push eax
call fcn.0054ce70
add esp, 4
test eax, eax
ja 0x4ab8e1
lea ecx, [ebp - 0x208]
push ecx
call fcn.00529440
add esp, 4
cmp dword [0x5edfa4], 0
je 0x4ab8b9
push 0
lea edx, [ebp - 0x38c]
push edx
call fcn.0052b368
add esp, 8
test eax, eax
je 0x4ab88f
push 0x5c2f98
lea eax, [ebp - 0x208]
push eax
call fcn.0054bea0
add esp, 8
lea ecx, [ebp - 0x38c]
push ecx
lea edx, [ebp - 0x208]
push edx
call fcn.0054bea0
add esp, 8
push 0x5c2fac
lea eax, [ebp - 0x208]
push eax
call fcn.0054bea0
add esp, 8
push 0x5ec0b8
lea ecx, [ebp - 0x30c]
push ecx
call fcn.0054bea0
add esp, 8
push 0x5c2fb4
lea edx, [ebp - 0x30c]
push edx
call fcn.0054bea0
add esp, 8
lea eax, [ebp - 0x38c]
push eax
lea ecx, [ebp - 0x30c]
push ecx
call fcn.0054bea0
add esp, 8
push 0x5c2fb8
lea edx, [ebp - 0x30c]
push edx
call fcn.0054bea0
add esp, 8
jmp 0x4ab8b7
push 0x5c2fc0
lea eax, [ebp - 0x208]
push eax
call fcn.0054bea0
add esp, 8
push 0x5c2fd4
lea ecx, [ebp - 0x30c]
push ecx
call fcn.0054bea0
add esp, 8
jmp 0x4ab8e1
push 0x5c2fe4
lea edx, [ebp - 0x208]
push edx
call fcn.0054bea0
add esp, 8
push str.TestLog.Log
lea eax, [ebp - 0x30c]
push eax
call fcn.0054bea0
add esp, 8
lea ecx, [ebp - 0x208]
push ecx
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
cmp eax, 0xffffffff
je 0x4ab944
push 0
lea edx, [ebp - 0x30c]
push edx
lea eax, [ebp - 0x208]
push eax
call dword [sym.imp.KERNEL32.dll_CopyFileA]
push 0
push 0x5c3008
mov ecx, 0x5ea158
call fcn.0041a877
cmp dword [0x5edf54], 0
jne 0x4ab92c
cmp dword [0x5edf44], 0
je 0x4ab942
lea ecx, [ebp - 0x48c]
push ecx
push 8
push str.FINISHOK
call fcn.004b79fe
add esp, 0xc
jmp 0x4ab97d
push 0
push 0x5c3020
mov ecx, 0x5ea158
call fcn.0041a877
cmp dword [0x5edf54], 0
jne 0x4ab967
cmp dword [0x5edf44], 0
je 0x4ab97d
lea edx, [ebp - 0x58c]
push edx
push 0xa
push str.FINISHFAIL
call fcn.004b79fe
add esp, 0xc
mov esp, ebp
pop ebp
ret