Function at 0x4120dc
Capabilities:
Copy file
Timestomp file

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc8
mov dword [ebp - 0xc8], edx
mov dword [ebp - 0xc4], ecx
and dword [ebp - 0x18], 0
and dword [ebp - 0x14], 0
and dword [ebp - 0x10], 0
and dword [ebp - 0xc], 0
and dword [ebp - 4], 0
mov byte [ebp - 0x19], 0
cmp dword [ebp + 8], 0
jne 0x412116
xor eax, eax
jmp 0x412445
cmp dword [ebp - 0xc8], 0
jne 0x41223e
push 2
lea edx, [ebp - 0xa0]
mov ecx, dword [ebp - 0xc4]
call fcn.00413bfd
push dword [ebp + 0xc]
lea eax, [ebp - 0xa0]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcatW]
lea edx, [ebp - 0xa0]
mov ecx, dword [ebp - 0xc4]
call fcn.00411ef6
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0
je 0x412194
push 1
mov edx, dword [ebp - 4]
mov ecx, dword [ebp - 0xc4]
call fcn.00411ff4
push 0
push dword [ebp - 4]
push dword [ebp + 8]
call dword [sym.imp.KERNEL32.dll_CopyFileW]
test eax, eax
jne 0x412194
mov edx, dword [ebp - 4]
mov ecx, dword [ebp - 0xc4]
call fcn.00417232
and dword [ebp - 4], 0
cmp dword [ebp - 4], 0
jne 0x4121e8
lea edx, [ebp - 0xa0]
mov ecx, dword [ebp - 0xc4]
call fcn.00411e2c
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0
je 0x4121e8
push 1
mov edx, dword [ebp - 4]
mov ecx, dword [ebp - 0xc4]
call fcn.00411ff4
push 0
push dword [ebp - 4]
push dword [ebp + 8]
call dword [sym.imp.KERNEL32.dll_CopyFileW]
test eax, eax
jne 0x4121e8
mov edx, dword [ebp - 4]
mov ecx, dword [ebp - 0xc4]
call fcn.00417232
and dword [ebp - 4], 0
cmp dword [ebp - 4], 0
jne 0x41223c
lea edx, [ebp - 0xa0]
mov ecx, dword [ebp - 0xc4]
call fcn.00411c67
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0
je 0x41223c
push 1
mov edx, dword [ebp - 4]
mov ecx, dword [ebp - 0xc4]
call fcn.00411ff4
push 0
push dword [ebp - 4]
push dword [ebp + 8]
call dword [sym.imp.KERNEL32.dll_CopyFileW]
test eax, eax
jne 0x41223c
mov edx, dword [ebp - 4]
mov ecx, dword [ebp - 0xc4]
call fcn.00417232
and dword [ebp - 4], 0
jmp 0x41228e
push 0
mov edx, dword [ebp - 0xc8]
mov ecx, dword [ebp - 0xc4]
call fcn.00413434
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0
je 0x41228e
push 1
mov edx, dword [ebp - 4]
mov ecx, dword [ebp - 0xc4]
call fcn.00411ff4
push 0
push dword [ebp - 4]
push dword [ebp + 8]
call dword [sym.imp.KERNEL32.dll_CopyFileW]
test eax, eax
jne 0x41228e
mov edx, dword [ebp - 4]
mov ecx, dword [ebp - 0xc4]
call fcn.00417232
and dword [ebp - 4], 0
cmp dword [ebp - 4], 0
je 0x412442
mov edx, 0x1d608e
mov ecx, dword [ebp - 0xc4]
call fcn.00413729
add eax, 0x9cada
xor ecx, ecx
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xc], ecx
push 2
mov edx, dword [ebp - 4]
mov ecx, dword [ebp - 0xc4]
call fcn.00411abb
mov dword [ebp - 0xa4], eax
cmp dword [ebp - 0xa4], 0
je 0x412430
movzx eax, byte [ebp + 0x10]
test eax, eax
je 0x41230d
push 0
push dword [ebp - 0x10]
mov edx, dword [ebp - 0xa4]
mov ecx, dword [ebp - 0xc4]
call fcn.00411a49
push 1
lea eax, [ebp - 0x19]
push eax
mov edx, dword [ebp - 0xa4]
mov ecx, dword [ebp - 0xc4]
call fcn.004119b9
lea eax, [ebp - 0xbc]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemTime]
push 5
pop edx
mov ecx, dword [ebp - 0xc4]
call fcn.00413729
dec eax
movsx eax, ax
movzx ecx, word [ebp - 0xbc]
sub ecx, eax
mov word [ebp - 0xbc], cx
push 6
pop edx
mov ecx, dword [ebp - 0xc4]
call fcn.00413729
dec eax
mov dword [ebp - 0xc0], eax
movzx eax, word [ebp - 0xba]
sub eax, dword [ebp - 0xc0]
jns 0x41237b
push 0xc
pop eax
sub eax, dword [ebp - 0xc0]
movzx ecx, word [ebp - 0xba]
add ecx, eax
mov word [ebp - 0xba], cx
jmp 0x41238f
movzx eax, word [ebp - 0xba]
sub eax, dword [ebp - 0xc0]
mov word [ebp - 0xba], ax
push 0xf
pop edx
mov ecx, dword [ebp - 0xc4]
call fcn.00413729
dec eax
mov dword [ebp - 0xc0], eax
movzx eax, word [ebp - 0xb6]
sub eax, dword [ebp - 0xc0]
jns 0x4123ce
push 0x1e
pop eax
sub eax, dword [ebp - 0xc0]
movzx ecx, word [ebp - 0xb6]
add ecx, eax
mov word [ebp - 0xb6], cx
jmp 0x4123e2
movzx eax, word [ebp - 0xb6]
sub eax, dword [ebp - 0xc0]
mov word [ebp - 0xb6], ax
lea eax, [ebp - 0xac]
push eax
lea eax, [ebp - 0xbc]
push eax
call dword [sym.imp.KERNEL32.dll_SystemTimeToFileTime]
lea eax, [ebp - 0xac]
push eax
lea eax, [ebp - 0xac]
push eax
lea eax, [ebp - 0xac]
push eax
push dword [ebp - 0xa4]
call dword [sym.imp.KERNEL32.dll_SetFileTime]
mov dword [ebp - 0xc0], eax
mov edx, dword [ebp - 0xa4]
mov ecx, dword [ebp - 0xc4]
call fcn.00411aa5
jmp 0x412442
mov edx, dword [ebp - 4]
mov ecx, dword [ebp - 0xc4]
call fcn.00417232
and dword [ebp - 4], 0
mov eax, dword [ebp - 4]
leave
ret 0xc