Function at 0x100099f8
Capabilities:
Copy file
Set file attributes

Disassembly:
push ebp
mov ebp, esp
push ecx
mov ecx, 0x2be
push 0
push 0
dec ecx
jne 0x10009a01
push ecx
xchg dword [ebp - 4], ecx
push ebx
push esi
push edi
mov esi, edx
lea edi, [ebp - 0x1398]
push ecx
mov ecx, 0x4e4
rep movsd dword es:[edi], dword [esi]
pop ecx
mov ebx, ecx
mov dword [ebp - 4], eax
lea eax, [ebp - 4]
call fcn.10003c28
xor eax, eax
push ebp
push 0x10009e5e
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, ebx
mov edx, dword [ebp - 4]
call fcn.100037ac
cmp byte [ebp - 0x8c4], 0
je 0x10009df2
mov eax, dword [ebp - 0x7cc]
test eax, eax
jne 0x10009a69
lea eax, [ebp - 8]
call fcn.10005350
jmp 0x10009b4a
cmp eax, 1
jne 0x10009a7b
lea eax, [ebp - 8]
call fcn.100053d8
jmp 0x10009b4a
cmp eax, 2
jne 0x10009a8d
lea eax, [ebp - 8]
call fcn.10005460
jmp 0x10009b4a
cmp eax, 3
jne 0x10009b02
lea eax, [ebp - 0x139c]
call fcn.10005638
mov eax, dword [ebp - 0x139c]
xor edx, edx
call fcn.10003a34
je 0x10009acc
lea eax, [ebp - 0x13a0]
call fcn.10005638
mov edx, dword [ebp - 0x13a0]
lea eax, [ebp - 8]
mov ecx, 0x10009e70
call fcn.10003988
jmp 0x10009b4a
lea eax, [ebp - 0x15b0]
call fcn.10005664
lea edx, [ebp - 0x15b0]
lea eax, [ebp - 0x13a4]
mov ecx, 0x105
call fcn.100038e0
mov edx, dword [ebp - 0x13a4]
lea eax, [ebp - 8]
mov ecx, 0x10009e70
call fcn.10003988
jmp 0x10009b4a
cmp eax, 4
jne 0x10009b3d
lea eax, [ebp - 0x15b0]
call fcn.10005664
lea edx, [ebp - 0x15b0]
lea eax, [ebp - 0x15b4]
mov ecx, 0x105
call fcn.100038e0
mov edx, dword [ebp - 0x15b4]
lea eax, [ebp - 8]
mov ecx, 0x10009e70
call fcn.10003988
jmp 0x10009b4a
cmp eax, 5
jne 0x10009b4a
lea eax, [ebp - 8]
call fcn.10005324
lea eax, [ebp - 0x15b8]
lea edx, [ebp - 0x848]
mov ecx, 0x3d
call fcn.100034b0
cmp dword [ebp - 0x15b8], 0
je 0x10009b9a
push dword [ebp - 8]
lea eax, [ebp - 0x15bc]
lea edx, [ebp - 0x848]
mov ecx, 0x3d
call fcn.100038e0
push dword [ebp - 0x15bc]
push 0x10009e70
lea eax, [ebp - 8]
mov edx, 3
call fcn.100039ec
lea eax, [ebp - 0x15c4]
lea edx, [ebp - 0x8c2]
mov ecx, 0x3d
call fcn.100038e0
mov ecx, dword [ebp - 0x15c4]
lea eax, [ebp - 0x15c0]
mov edx, dword [ebp - 8]
call fcn.10003988
mov edx, dword [ebp - 0x15c0]
mov eax, dword [ebp - 4]
call fcn.10003a34
je 0x10009df2
mov eax, dword [ebp - 8]
call fcn.1000390c
call fcn.10005690
test al, al
je 0x10009df2
push 0x80
lea eax, [ebp - 0x15cc]
lea edx, [ebp - 0x8c2]
mov ecx, 0x3d
call fcn.100038e0
mov ecx, dword [ebp - 0x15cc]
lea eax, [ebp - 0x15c8]
mov edx, dword [ebp - 8]
call fcn.10003988
mov eax, dword [ebp - 0x15c8]
call fcn.1000390c
push eax
call sub.kernel32.dll_SetFileAttributesW
push 0
lea eax, [ebp - 0x15d4]
lea edx, [ebp - 0x8c2]
mov ecx, 0x3d
call fcn.100038e0
mov ecx, dword [ebp - 0x15d4]
lea eax, [ebp - 0x15d0]
mov edx, dword [ebp - 8]
call fcn.10003988
mov eax, dword [ebp - 0x15d0]
call fcn.1000390c
push eax
mov eax, dword [ebp - 4]
call fcn.1000390c
mov esi, eax
push esi
call sub.kernel32.dll_CopyFileW
cmp eax, 1
sbb eax, eax
inc eax
test al, al
jne 0x10009dcc
lea eax, [ebp - 0x15b0]
call fcn.10005664
lea edx, [ebp - 0x15b0]
lea eax, [ebp - 0x15d8]
mov ecx, 0x105
call fcn.100038e0
mov edx, dword [ebp - 0x15d8]
lea eax, [ebp - 8]
mov ecx, 0x10009e70
call fcn.10003988
lea eax, [ebp - 0x15dc]
lea edx, [ebp - 0x848]
mov ecx, 0x3d
call fcn.100034b0
cmp dword [ebp - 0x15dc], 0
je 0x10009d07
push dword [ebp - 8]
lea eax, [ebp - 0x15e0]
lea edx, [ebp - 0x848]
mov ecx, 0x3d
call fcn.100038e0
push dword [ebp - 0x15e0]
push 0x10009e70
lea eax, [ebp - 8]
mov edx, 3
call fcn.100039ec
mov eax, dword [ebp - 8]
call fcn.1000390c
call fcn.10005690
test al, al
je 0x10009df2
push 0x80
lea eax, [ebp - 0x15e8]
lea edx, [ebp - 0x8c2]
mov ecx, 0x3d
call fcn.100038e0
mov ecx, dword [ebp - 0x15e8]
lea eax, [ebp - 0x15e4]
mov edx, dword [ebp - 8]
call fcn.10003988
mov eax, dword [ebp - 0x15e4]
call fcn.1000390c
push eax
call sub.kernel32.dll_SetFileAttributesW
push 0
lea eax, [ebp - 0x15f0]
lea edx, [ebp - 0x8c2]
mov ecx, 0x3d
call fcn.100038e0
mov ecx, dword [ebp - 0x15f0]
lea eax, [ebp - 0x15ec]
mov edx, dword [ebp - 8]
call fcn.10003988
mov eax, dword [ebp - 0x15ec]
call fcn.1000390c
push eax
push esi
call sub.kernel32.dll_CopyFileW
cmp eax, 1
sbb eax, eax
inc eax
test al, al
je 0x10009df2
lea eax, [ebp - 0x15f4]
lea edx, [ebp - 0x8c2]
mov ecx, 0x3d
call fcn.100038e0
mov ecx, dword [ebp - 0x15f4]
mov eax, ebx
mov edx, dword [ebp - 8]
call fcn.10003988
jmp 0x10009df2
lea eax, [ebp - 0x15f8]
lea edx, [ebp - 0x8c2]
mov ecx, 0x3d
call fcn.100038e0
mov ecx, dword [ebp - 0x15f8]
mov eax, ebx
mov edx, dword [ebp - 8]
call fcn.10003988
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x10009e65
lea eax, [ebp - 0x15f8]
mov edx, 7
call fcn.10003788
lea eax, [ebp - 0x15dc]
call fcn.100032cc
lea eax, [ebp - 0x15d8]
mov edx, 8
call fcn.10003788
lea eax, [ebp - 0x15b8]
call fcn.100032cc
lea eax, [ebp - 0x15b4]
call fcn.10003770
lea eax, [ebp - 0x13a4]
mov edx, 3
call fcn.10003788
lea eax, [ebp - 8]
mov edx, 2
call fcn.10003788
ret