Function at 0x46cce0
Capabilities:
Copy file

Disassembly:
push ebp
mov ebp, esp
mov ecx, 0xa
push 0
push 0
dec ecx
jne 0x46cce8
push ebx
push esi
push edi
mov eax, 0x46cb30
call fcn.00406838
xor eax, eax
push ebp
push 0x46cfa2
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [0x46f8dc]
mov eax, dword [eax]
call fcn.00455924
mov dl, 1
mov eax, dword [0x41968c]
call fcn.0040369c
mov esi, eax
lea edx, [ebp - 0x18]
mov eax, dword [0x46f6ec]
mov eax, dword [eax]
mov eax, dword [eax + 4]
call fcn.0046bd20
mov eax, dword [ebp - 0x18]
call fcn.0040905c
push 0x3f
lea edx, [ebp - 0x1c]
mov eax, dword [0x46f6ec]
mov eax, dword [eax]
mov eax, dword [eax + 4]
call fcn.0046bd20
lea eax, [ebp - 0x1c]
mov edx, 0x46cfbc
call fcn.00404718
mov edx, dword [ebp - 0x1c]
mov eax, dword [0x46f6ec]
mov eax, dword [eax]
mov eax, dword [eax + 0x10]
mov ecx, esi
call fcn.0046bf74
mov eax, esi
mov edx, dword [eax]
call dword [edx + 0x14]
dec eax
test eax, eax
jl 0x46cdeb
inc eax
mov dword [ebp - 0x14], eax
xor ebx, ebx
push 1
push 0x46cfcc
lea edx, [ebp - 0x24]
mov eax, dword [0x46f6ec]
mov eax, dword [eax]
mov eax, dword [eax + 4]
call fcn.0046bd20
push dword [ebp - 0x24]
push 0x46cfdc
lea ecx, [ebp - 0x28]
mov edx, ebx
mov eax, esi
mov edi, dword [eax]
call dword [edi + 0xc]
push dword [ebp - 0x28]
push 0x46cfec
lea eax, [ebp - 0x20]
mov edx, 5
call fcn.004047d0
mov ecx, dword [ebp - 0x20]
mov eax, dword [0x46f6ec]
mov eax, dword [eax]
mov eax, dword [eax + 0x28]
mov edx, 0x46cff8
call fcn.0046c7a4
push 0xa
call sub.kernel32.dll_Sleep_1
inc ebx
dec dword [ebp - 0x14]
jne 0x46cd85
push 0x3f
push 0
mov al, byte [0x46d008]
push eax
push 0
push 0
lea edx, [ebp - 0x2c]
mov eax, dword [0x46f6ec]
mov eax, dword [eax]
mov eax, dword [eax + 4]
call fcn.0046bd20
lea eax, [ebp - 0x2c]
mov edx, 0x46d014
call fcn.00404718
mov edx, dword [ebp - 0x2c]
mov eax, dword [0x46f6ec]
mov eax, dword [eax]
mov eax, dword [eax + 0x10]
mov ecx, esi
call fcn.0046c4d8
mov eax, esi
mov edx, dword [eax]
call dword [edx + 0x14]
dec eax
test eax, eax
jl 0x46cee2
inc eax
mov dword [ebp - 0x14], eax
xor ebx, ebx
lea eax, [ebp - 0x30]
push eax
lea ecx, [ebp - 0x34]
mov edx, ebx
mov eax, esi
mov edi, dword [eax]
call dword [edi + 0xc]
mov edx, dword [ebp - 0x34]
mov eax, dword [0x46f6ec]
mov eax, dword [eax]
mov eax, dword [eax + 4]
mov ecx, 5
call fcn.0046bbe0
mov eax, dword [ebp - 0x30]
mov edx, 0x46d024
call fcn.00408508
test al, al
je 0x46ced8
push 0x470c9c
lea ecx, [ebp - 0x38]
mov edx, ebx
mov eax, esi
mov edi, dword [eax]
call dword [edi + 0xc]
mov eax, dword [ebp - 0x38]
call fcn.00404710
sub eax, 5
push eax
lea ecx, [ebp - 0x3c]
mov edx, ebx
mov eax, esi
mov edi, dword [eax]
call dword [edi + 0xc]
mov eax, dword [ebp - 0x3c]
mov edx, 1
pop ecx
call fcn.00404968
push 0
mov eax, dword [0x470c9c]
call fcn.00404908
push eax
lea ecx, [ebp - 0x40]
mov edx, ebx
mov eax, esi
mov edi, dword [eax]
call dword [edi + 0xc]
mov eax, dword [ebp - 0x40]
call fcn.00404908
push eax
call sub.kernel32.dll_CopyFileA
inc ebx
dec dword [ebp - 0x14]
jne 0x46ce42
mov eax, esi
call fcn.004036cc
call fcn.0046c8b8
lea edx, [ebp - 0x44]
mov eax, dword [0x46f6ec]
mov eax, dword [eax]
mov eax, dword [eax + 4]
call fcn.0046bd20
mov edx, dword [ebp - 0x44]
mov eax, 0x470c9c
mov ecx, 0x46d034
call fcn.0040475c
mov eax, dword [0x470c9c]
call fcn.00408d50
test al, al
jne 0x46cf44
lea edx, [ebp - 0x48]
mov eax, dword [0x46f6ec]
mov eax, dword [eax]
mov eax, dword [eax + 4]
call fcn.0046bd20
mov edx, dword [ebp - 0x48]
mov eax, 0x470c9c
mov ecx, 0x46d04c
call fcn.0040475c
push 1
lea edx, [ebp - 0x4c]
mov eax, 1
call fcn.00402a30
mov eax, dword [ebp - 0x4c]
push eax
push 0x46cfec
push dword [0x470c9c]
push 0x46cfec
lea eax, [ebp - 0x50]
mov edx, 3
call fcn.004047d0
mov edx, dword [ebp - 0x50]
mov eax, dword [0x46f6ec]
mov eax, dword [eax]
mov eax, dword [eax + 0x28]
pop ecx
call fcn.0046c7a4
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x46cfa9
lea eax, [ebp - 0x50]
mov edx, 0xf
call fcn.0040447c
ret