Function at 0x446400
Capabilities:
Copy file
Get file attributes
Set file attributes

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x11c
mov eax, dword [0x6fb448]
xor eax, ebp
mov dword [ebp - 0x10], eax
mov eax, dword [ebp + 8]
push eax
call fcn.00401389
add esp, 4
test eax, eax
jne 0x446433
mov ecx, dword [ebp + 0xc]
push ecx
call fcn.00401389
add esp, 4
test eax, eax
je 0x44643a
xor eax, eax
jmp 0x44663e
mov edx, dword [ebp + 8]
push edx
call fcn.005b4690
add esp, 4
cmp eax, 0x104
jae 0x446464
mov eax, dword [ebp + 0xc]
push eax
call fcn.005b4690
add esp, 4
cmp eax, 0x104
jb 0x44650b
mov dword [ebp - 0xc], 0
mov dword [ebp - 4], 0
mov dword [ebp - 8], 0
mov ecx, dword [ebp + 8]
push ecx
call fcn.00401aaa
add esp, 4
mov dword [ebp - 0xc], eax
mov edx, dword [ebp + 0xc]
push edx
call fcn.00401aaa
add esp, 4
mov dword [ebp - 4], eax
cmp dword [ebp - 0xc], 0
je 0x4464a3
cmp dword [ebp - 4], 0
jne 0x4464d2
cmp dword [ebp - 0xc], 0
je 0x4464b7
push 1
mov eax, dword [ebp - 0xc]
push eax
call fcn.005b16b0
add esp, 8
cmp dword [ebp - 4], 0
je 0x4464cb
push 1
mov ecx, dword [ebp - 4]
push ecx
call fcn.005b16b0
add esp, 8
xor eax, eax
jmp 0x44663e
mov edx, dword [ebp + 0x10]
push edx
mov eax, dword [ebp - 4]
push eax
mov ecx, dword [ebp - 0xc]
push ecx
call dword [sym.imp.KERNEL32.dll_CopyFileW]
mov dword [ebp - 8], eax
push 1
mov edx, dword [ebp - 0xc]
push edx
call fcn.005b16b0
add esp, 8
push 1
mov eax, dword [ebp - 4]
push eax
call fcn.005b16b0
add esp, 8
mov eax, dword [ebp - 8]
jmp 0x44663e
mov ecx, dword [ebp + 0x10]
push ecx
mov edx, dword [ebp + 0xc]
push edx
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.KERNEL32.dll_CopyFileA]
test eax, eax
jne 0x446639
mov ecx, dword [ebp + 0xc]
push ecx
call fcn.00401b77
add esp, 4
test eax, eax
je 0x4465bf
mov byte [ebp - 0x118], 0
push 0x103
push 0
lea edx, [ebp - 0x117]
push edx
call fcn.005b02a0
add esp, 0xc
push 0x104
mov eax, dword [ebp + 8]
push eax
lea ecx, [ebp - 0x118]
push ecx
call fcn.00402725
add esp, 0xc
lea edx, [ebp - 0x118]
push edx
call fcn.00402608
add esp, 4
lea eax, [ebp - 0x118]
push eax
call fcn.00401389
add esp, 4
test eax, eax
jne 0x4465bd
mov ecx, dword [ebp + 0xc]
push ecx
lea edx, [ebp - 0x118]
push edx
call fcn.00402293
add esp, 8
mov eax, dword [ebp + 0x10]
push eax
lea ecx, [ebp - 0x118]
push ecx
mov edx, dword [ebp + 8]
push edx
call dword [sym.imp.KERNEL32.dll_CopyFileA]
jmp 0x44663e
jmp 0x446635
cmp dword [ebp + 0x10], 0
jne 0x446635
mov eax, dword [ebp + 0xc]
push eax
call fcn.004028ab
add esp, 4
test eax, eax
je 0x446635
mov dword [ebp - 0x11c], 0
mov ecx, dword [ebp + 0xc]
push ecx
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
mov dword [ebp - 0x11c], eax
mov edx, dword [ebp - 0x11c]
and edx, 1
jne 0x446605
mov eax, dword [ebp - 0x11c]
and eax, 2
je 0x446635
mov ecx, dword [ebp - 0x11c]
and ecx, 0xfffffffc
push ecx
mov edx, dword [ebp + 0xc]
push edx
call dword [sym.imp.KERNEL32.dll_SetFileAttributesA]
push 1
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [ebp + 0x10]
push eax
mov ecx, dword [ebp + 0xc]
push ecx
mov edx, dword [ebp + 8]
push edx
call dword [sym.imp.KERNEL32.dll_CopyFileA]
jmp 0x44663e
xor eax, eax
jmp 0x44663e
mov eax, 1
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.005b0290
mov esp, ebp
pop ebp
ret