Function at 0x100058a0
Capabilities:
Copy file
Move file

Disassembly:
sub esp, 0x528
push ebx
push ebp
push esi
mov esi, ecx
push edi
mov ecx, 0x40
xor eax, eax
lea edi, [esp + 0x331]
mov byte [esp + 0x330], 0
mov byte [esp + 0x128], 0
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov ecx, 0x40
xor eax, eax
lea edi, [esp + 0x129]
mov byte [esp + 0x434], 0
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov ecx, 0x40
xor eax, eax
lea edi, [esp + 0x435]
mov byte [esp + 0x22c], 0
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov ecx, 0x40
xor eax, eax
lea edi, [esp + 0x22d]
mov byte [esp + 0x24], 0
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov ecx, 0x40
xor eax, eax
lea edi, [esp + 0x25]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
lea eax, [esp + 0x10]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemTime]
mov eax, dword [esp + 0x53c]
push 0x103
test eax, eax
je 0x10005a07
lea ecx, [esi + 0xc808]
lea edx, [esp + 0x28]
push ecx
push edx
call dword [sym.imp.MSVCRT.dll_strncpy]
lea eax, [esi + 0x9c08]
lea ecx, [esp + 0x33c]
push eax
push 0x100c3620
push 0x100bcc50
push 0x104
push ecx
mov byte [esp + 0x147], 0
call fcn.1000f0c0
mov edx, dword [esp + 0x3e]
mov eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0x3a]
lea edi, [esi + 0xa808]
and edx, 0xffff
push edi
and eax, 0xffff
push edx
mov edx, dword [esp + 0x40]
push eax
mov eax, dword [esp + 0x42]
and ecx, 0xffff
and edx, 0xffff
push ecx
and eax, 0xffff
lea ebx, [esi + 0xa408]
push edx
lea ebp, [esi + 0xb408]
push eax
push ebx
push ebp
push 0x100bcc58
lea ecx, [esp + 0x16c]
push 0x104
push ecx
call fcn.1000f0c0
add esp, 0x4c
lea edx, [esp + 0x434]
push edi
push ebx
push ebp
push 0x100bcc6c
push 0x104
push edx
jmp 0x10005abe
lea eax, [esi + 0xc408]
lea ecx, [esp + 0x28]
push eax
push ecx
call dword [sym.imp.MSVCRT.dll_strncpy]
lea edx, [esi + 0x9808]
lea eax, [esp + 0x33c]
push edx
push 0x100c3620
push 0x100bcc78
push 0x104
push eax
mov byte [esp + 0x147], 0
call fcn.1000f0c0
mov ecx, dword [esp + 0x3e]
mov edx, dword [esp + 0x3c]
mov eax, dword [esp + 0x3a]
lea edi, [esi + 0xa808]
and ecx, 0xffff
push edi
and edx, 0xffff
push ecx
mov ecx, dword [esp + 0x40]
push edx
mov edx, dword [esp + 0x42]
and eax, 0xffff
and ecx, 0xffff
push eax
and edx, 0xffff
lea ebp, [esi + 0xa408]
push ecx
lea ebx, [esi + 0xb008]
push edx
push ebp
push ebx
push str._s_s__x_x_x_x_x._s
lea eax, [esp + 0x16c]
push 0x104
push eax
call fcn.1000f0c0
add esp, 0x4c
lea ecx, [esp + 0x434]
push edi
push ebp
push ebx
push 0x100bcc94
push 0x104
push ecx
call fcn.1000f0c0
add esp, 0x18
lea edx, [esp + 0x22c]
lea eax, [esp + 0x24]
push 0
push edx
push eax
call fcn.10014240
add esp, 0xc
test eax, eax
je 0x10005b3e
lea ecx, [esp + 0x22c]
push ecx
call fcn.10011270
add esp, 4
test eax, eax
je 0x10005b1a
add esi, 0xb808
lea edx, [esp + 0x22c]
push esi
push edx
call fcn.10011500
add esp, 8
test eax, eax
jne 0x10005b1a
push 2
call fcn.1000bbc0
add esp, 4
mov eax, dword [esp + 0x53c]
lea ecx, [esp + 0x24]
push eax
push ecx
call fcn.100142d0
lea edx, [esp + 0x234]
push 0
push edx
call fcn.10011120
add esp, 0x10
lea eax, [esp + 0x128]
push 3
lea ecx, [esp + 0x334]
push eax
push ecx
call dword [sym.imp.KERNEL32.dll_MoveFileExA]
lea edx, [esp + 0x128]
push edx
call fcn.10010d90
mov eax, dword [esp + 0x540]
mov esi, dword [esp + 0x544]
add esp, 4
test eax, eax
push esi
je 0x10005b8d
lea eax, [esp + 0x28]
lea ecx, [esp + 0x12c]
push eax
push ecx
call fcn.10013f80
jmp 0x10005b9f
lea edx, [esp + 0x28]
lea eax, [esp + 0x12c]
push edx
push eax
call fcn.10013d70
add esp, 0xc
mov edi, eax
test esi, esi
je 0x10005bc0
lea ecx, [esp + 0x434]
push 0
lea edx, [esp + 0x12c]
push ecx
push edx
call dword [sym.imp.KERNEL32.dll_CopyFileA]
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x528
ret 8