Function at 0x47e2c4
Capabilities:
Copy file

Disassembly:
push ebp
mov ebp, esp
mov ecx, 0x38
push 0
push 0
dec ecx
jne 0x47e2cc
mov dword [ebp - 8], edx
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
call fcn.00404848
mov eax, dword [ebp - 8]
call fcn.00404848
lea eax, [ebp - 0x170]
mov edx, dword [0x407c8c]
call fcn.00404d7c
xor eax, eax
push ebp
push 0x47e5ed
push dword fs:[eax]
mov dword fs:[eax], esp
mov byte [ebp - 0x11], 0
lea edx, [ebp - 0x174]
mov eax, dword [ebp - 4]
call fcn.0040d780
mov edx, dword [ebp - 0x174]
lea eax, [ebp - 4]
call fcn.00404430
lea edx, [ebp - 0x178]
mov eax, dword [ebp - 8]
call fcn.0040d780
mov edx, dword [ebp - 0x178]
lea eax, [ebp - 8]
call fcn.00404430
lea eax, [ebp - 0x17c]
mov ecx, 0x47e604
mov edx, dword [ebp - 4]
call fcn.004046a4
mov eax, dword [ebp - 0x17c]
lea ecx, [ebp - 0x170]
mov edx, 0x3f
call fcn.004094ec
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0
jne 0x47e586
mov eax, dword [ebp - 0x164]
mov edx, 0x47e610
call fcn.004047a4
je 0x47e56e
mov eax, dword [ebp - 0x164]
mov edx, 0x47e61c
call fcn.004047a4
je 0x47e56e
mov eax, dword [ebp - 0x168]
and eax, 0x10
cmp eax, 0x10
jne 0x47e41f
lea eax, [ebp - 0x180]
mov ecx, dword [ebp - 0x164]
mov edx, dword [ebp - 8]
call fcn.004046a4
mov eax, dword [ebp - 0x180]
call fcn.0040931c
lea eax, [ebp - 0x184]
mov ecx, dword [ebp - 0x164]
mov edx, dword [ebp - 8]
call fcn.004046a4
mov eax, dword [ebp - 0x184]
push eax
lea eax, [ebp - 0x188]
mov ecx, dword [ebp - 0x164]
mov edx, dword [ebp - 4]
call fcn.004046a4
mov eax, dword [ebp - 0x188]
pop edx
call fcn.0047e2c4
test al, al
jne 0x47e56e
mov byte [ebp - 0x11], 1
jmp 0x47e56e
lea eax, [ebp - 0x18c]
mov ecx, dword [ebp - 0x164]
mov edx, dword [ebp - 8]
call fcn.004046a4
mov eax, dword [ebp - 0x18c]
mov dl, 1
call fcn.0047e0ec
push 0
lea eax, [ebp - 0x190]
mov ecx, dword [ebp - 0x164]
mov edx, dword [ebp - 8]
call fcn.004046a4
mov eax, dword [ebp - 0x190]
call fcn.00404858
push eax
lea eax, [ebp - 0x194]
mov ecx, dword [ebp - 0x164]
mov edx, dword [ebp - 4]
call fcn.004046a4
mov eax, dword [ebp - 0x194]
call fcn.00404858
push eax
call sub.kernel32.dll_CopyFileA
test eax, eax
jne 0x47e56e
mov byte [ebp - 0x11], 1
call sub.kernel32.dll_GetLastError
lea edx, [ebp - 0x18]
call fcn.0040c284
push 0x47e628
push 0
push 1
lea eax, [ebp - 0x198]
push eax
lea eax, [ebp - 0x19c]
call fcn.00475e48
mov eax, dword [ebp - 0x19c]
lea edx, [ebp - 0x19c]
or ecx, 0xffffffff
call fcn.00475c38
mov eax, dword [ebp - 0x198]
call fcn.004092e8
test al, al
je 0x47e56e
lea eax, [ebp - 0x1a0]
push eax
lea eax, [ebp - 0x1bc]
mov ecx, dword [ebp - 0x164]
mov edx, dword [ebp - 4]
call fcn.004046a4
mov eax, dword [ebp - 0x1bc]
mov dword [ebp - 0x1b8], eax
mov byte [ebp - 0x1b4], 0xb
lea eax, [ebp - 0x1c0]
mov ecx, dword [ebp - 0x164]
mov edx, dword [ebp - 8]
call fcn.004046a4
mov eax, dword [ebp - 0x1c0]
mov dword [ebp - 0x1b0], eax
mov byte [ebp - 0x1ac], 0xb
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x1a8], eax
mov byte [ebp - 0x1a4], 0xb
lea edx, [ebp - 0x1b8]
mov ecx, 2
mov eax, 0x47e640
call fcn.00409ffc
mov ecx, dword [ebp - 0x1a0]
xor edx, edx
mov eax, 0x47e670
call fcn.0047e7fc
lea eax, [ebp - 0x170]
call fcn.0040953c
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0
je 0x47e37a
lea eax, [ebp - 0x170]
call fcn.00409560
cmp byte [ebp - 0x11], 0
sete byte [ebp - 9]
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x47e5f4
lea eax, [ebp - 0x1c0]
mov edx, 2
call fcn.004043bc
lea eax, [ebp - 0x1a0]
mov edx, 0xc
call fcn.004043bc
lea eax, [ebp - 0x170]
mov edx, dword [0x407c8c]
call fcn.00404e4c
lea eax, [ebp - 0x18]
call fcn.00404398
lea eax, [ebp - 8]
mov edx, 2
call fcn.004043bc
ret