Function at 0x4bba78
Capabilities:
Copy file
Set file attributes

Disassembly:
push ebp
mov ebp, esp
mov ecx, 0x14
push 0
push 0
dec ecx
jne 0x4bba80
push ebx
push esi
push edi
xor eax, eax
push ebp
push 0x4bc279
push dword fs:[eax]
mov dword fs:[eax], esp
mov byte [ebp - 1], 1
mov eax, dword [0x4d7078]
call fcn.00404290
mov eax, dword [0x4d6f14]
push dword [eax]
mov eax, dword [0x4d688c]
push dword [eax]
push 0x4bc294
lea eax, [ebp - 0xc]
mov edx, 3
call fcn.00404620
mov eax, dword [ebp - 0xc]
call fcn.004b9054
test al, al
jne 0x4bbbcc
mov eax, dword [0x4d6f14]
push dword [eax]
mov eax, dword [0x4d6b00]
push dword [eax]
push 0x4bc294
lea eax, [ebp - 0x10]
mov edx, 3
call fcn.00404620
mov eax, dword [ebp - 0x10]
call fcn.004b9054
test al, al
je 0x4bbb94
push 0x80
mov eax, dword [0x4d6f14]
push dword [eax]
mov eax, dword [0x4d688c]
push dword [eax]
push 0x4bc294
lea eax, [ebp - 0x14]
mov edx, 3
call fcn.00404620
mov eax, dword [ebp - 0x14]
call fcn.00404760
push eax
call sub.kernel32.dll_SetFileAttributesA
push 0
mov eax, dword [0x4d6f14]
push dword [eax]
mov eax, dword [0x4d688c]
push dword [eax]
push 0x4bc294
lea eax, [ebp - 0x18]
mov edx, 3
call fcn.00404620
mov eax, dword [ebp - 0x18]
call fcn.00404760
push eax
mov eax, dword [0x4d6f14]
push dword [eax]
mov eax, dword [0x4d6b00]
push dword [eax]
push 0x4bc294
lea eax, [ebp - 0x1c]
mov edx, 3
call fcn.00404620
mov eax, dword [ebp - 0x1c]
call fcn.00404760
push eax
call sub.kernel32.dll_CopyFileA
jmp 0x4bbbcc
mov edx, dword [0x4d67a4]
mov edx, dword [edx]
lea eax, [ebp - 0x20]
mov ecx, 0x4bc2a4
call fcn.004045ac
mov eax, dword [ebp - 0x20]
call fcn.004b9054
test al, al
je 0x4bbbc4
call fcn.004baf1c
call fcn.004bb46c
jmp 0x4bc25b
mov eax, dword [0x4d6bd4]
mov byte [eax], 1
mov eax, dword [0x4d6f14]
push dword [eax]
mov eax, dword [0x4d688c]
push dword [eax]
push 0x4bc294
lea eax, [ebp - 0x24]
mov edx, 3
call fcn.00404620
mov ecx, dword [ebp - 0x24]
mov dl, 1
mov eax, dword [0x4383f4]
call fcn.004384a4
mov dword [ebp - 8], eax
xor eax, eax
push ebp
push 0x4bbe80
push dword fs:[eax]
mov dword fs:[eax], esp
push 0x4bc2b8
lea eax, [ebp - 0x28]
push eax
mov ecx, 0x4bc2c8
mov edx, 0x4bc2d4
mov eax, dword [ebp - 8]
mov ebx, dword [eax]
call dword [ebx]
mov edx, dword [ebp - 0x28]
mov eax, 0x4da294
call fcn.004042e4
mov eax, dword [0x4da294]
call fcn.00404560
cmp eax, 3
jge 0x4bbc54
mov eax, 0x4da294
mov edx, dword [0x4d6670]
mov edx, dword [edx]
call fcn.004042e4
push 0
lea eax, [ebp - 0x2c]
push eax
mov ecx, 0x4bc2e0
mov edx, 0x4bc2d4
mov eax, dword [ebp - 8]
mov ebx, dword [eax]
call dword [ebx]
mov edx, dword [ebp - 0x2c]
mov eax, 0x4da298
call fcn.004042e4
push 0
lea eax, [ebp - 0x30]
push eax
mov ecx, 0x4bc2ec
mov edx, 0x4bc2d4
mov eax, dword [ebp - 8]
mov ebx, dword [eax]
call dword [ebx]
mov edx, dword [ebp - 0x30]
mov eax, 0x4da2ac
call fcn.004042e4
push 0
lea eax, [ebp - 0x38]
push eax
mov ecx, 0x4bc2f8
mov edx, 0x4bc2d4
mov eax, dword [ebp - 8]
mov ebx, dword [eax]
call dword [ebx]
mov eax, dword [ebp - 0x38]
lea edx, [ebp - 0x34]
call fcn.004b2cec
mov edx, dword [ebp - 0x34]
mov eax, dword [0x4d7078]
call fcn.004042e4
push 0x4bc304
lea eax, [ebp - 0x40]
push eax
mov ecx, 0x4bc314
mov edx, 0x4bc2d4
mov eax, dword [ebp - 8]
mov ebx, dword [eax]
call dword [ebx]
mov eax, dword [ebp - 0x40]
lea edx, [ebp - 0x3c]
call fcn.004089f8
mov edx, dword [ebp - 0x3c]
mov eax, 0x4da2a4
call fcn.004042e4
mov eax, dword [0x4da2a4]
call fcn.00404560
cmp eax, 3
jge 0x4bbd1b
mov eax, 0x4da2a4
mov edx, 0x4bc304
call fcn.004042e4
push 0
mov ecx, 0x4bc320
mov edx, 0x4bc2d4
mov eax, dword [ebp - 8]
mov ebx, dword [eax]
call dword [ebx + 0x10]
mov byte [0x4da29d], al
push 0
mov ecx, 0x4bc32c
mov edx, 0x4bc2d4
mov eax, dword [ebp - 8]
mov ebx, dword [eax]
call dword [ebx + 0x10]
mov byte [0x4da29e], al
push 0
mov ecx, 0x4bc338
mov edx, 0x4bc2d4
mov eax, dword [ebp - 8]
mov ebx, dword [eax]
call dword [ebx + 0x10]
mov byte [0x4da29f], al
push 0x4bc344
lea eax, [ebp - 0x44]
push eax
mov ecx, 0x4bc364
mov edx, 0x4bc2d4
mov eax, dword [ebp - 8]
mov ebx, dword [eax]
call dword [ebx]
mov edx, dword [ebp - 0x44]
mov eax, 0x4da2b8
call fcn.004042e4
push 0x1f90
mov ecx, 0x4bc370
mov edx, 0x4bc2d4
mov eax, dword [ebp - 8]
mov ebx, dword [eax]
call dword [ebx + 8]
mov dword [0x4da2bc], eax
push 0
mov ecx, 0x4bc37c
mov edx, 0x4bc2d4
mov eax, dword [ebp - 8]
mov ebx, dword [eax]
call dword [ebx + 0x10]
mov byte [0x4da29c], al
cmp byte [0x4da29c], 0
jne 0x4bbdd9
mov eax, dword [0x4d679c]
cmp byte [eax], 0
je 0x4bbe5d
push 0x4bc388
lea eax, [ebp - 0x4c]
push eax
mov ecx, 0x4bc39c
mov edx, 0x4bc2d4
mov eax, dword [ebp - 8]
mov ebx, dword [eax]
call dword [ebx]
mov eax, dword [ebp - 0x4c]
lea edx, [ebp - 0x48]
call fcn.004b7ff0
mov edx, dword [ebp - 0x48]
mov eax, 0x4da2a8
call fcn.004042e4
mov dl, 1
mov eax, dword [0x4a56f4]
call fcn.004a5788
mov ebx, eax
lea eax, [ebp - 0x54]
push eax
lea ecx, [ebp - 0x58]
mov edx, dword [0x4da2a8]
mov eax, ebx
call fcn.004a5470
mov eax, dword [ebp - 0x58]
mov ecx, 0xa
xor edx, edx
call fcn.004047c0
mov eax, dword [ebp - 0x54]
lea edx, [ebp - 0x50]
call fcn.004089f8
mov edx, dword [ebp - 0x50]
mov eax, 0x4da2b0
call fcn.004042e4
mov eax, ebx
call fcn.00403440
jmp 0x4bbe76
mov eax, 0x4da2a8
call fcn.00404290
mov eax, 0x4da2b0
mov edx, 0x4bc3a8
call fcn.004042e4
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4bbe8a
cmp dword [ebp - 8], 0
je 0x4bbe98
mov eax, dword [ebp - 8]
call fcn.00403440
mov eax, dword [0x4da2a4]
mov edx, 0x4bc304
call fcn.004046ac
jne 0x4bc22c
mov eax, dword [0x4d6f14]
push dword [eax]
mov eax, dword [0x4d688c]
push dword [eax]
push 0x4bc3bc
lea eax, [ebp - 0x5c]
mov edx, 3
call fcn.00404620
mov eax, dword [ebp - 0x5c]
call fcn.004b9054
test al, al
je 0x4bc22c
push 0
mov eax, dword [0x4d6f14]
push dword [eax]
mov eax, dword [0x4d688c]
push dword [eax]
push 0x4bc294
lea eax, [ebp - 0x60]
mov edx, 3
call fcn.00404620
mov eax, dword [ebp - 0x60]
call fcn.00404760
push eax
mov eax, dword [0x4d6f14]
push dword [eax]
mov eax, dword [0x4d688c]
push dword [eax]
push 0x4bc3bc
lea eax, [ebp - 0x64]
mov edx, 3
call fcn.00404620
mov eax, dword [ebp - 0x64]
call fcn.00404760
push eax
call sub.kernel32.dll_CopyFileA
mov eax, dword [0x4d6f14]
push dword [eax]
mov eax, dword [0x4d688c]
push dword [eax]
push 0x4bc294
lea eax, [ebp - 0x68]
mov edx, 3
call fcn.00404620
mov ecx, dword [ebp - 0x68]
mov dl, 1
mov eax, dword [0x4383f4]
call fcn.004384a4
mov dword [ebp - 8], eax
xor eax, eax
push ebp
push 0x4bc214
push dword fs:[eax]
mov dword fs:[eax], esp
push 0x4bc2b8
lea eax, [ebp - 0x6c]
push eax
mov ecx, 0x4bc2c8
mov edx, 0x4bc2d4
mov eax, dword [ebp - 8]
mov ebx, dword [eax]
call dword [ebx]
mov edx, dword [ebp - 0x6c]
mov eax, 0x4da294
call fcn.004042e4
mov eax, dword [0x4da294]
call fcn.00404560
cmp eax, 3
jge 0x4bbfbe
mov eax, 0x4da294
mov edx, dword [0x4d6670]
mov edx, dword [edx]
call fcn.004042e4
push 0
lea eax, [ebp - 0x70]
push eax
mov ecx, 0x4bc2e0
mov edx, 0x4bc2d4
mov eax, dword [ebp - 8]
mov ebx, dword [eax]
call dword [ebx]
mov edx, dword [ebp - 0x70]
mov eax, 0x4da298
call fcn.004042e4
push 0
lea eax, [ebp - 0x74]
push eax
mov ecx, 0x4bc2ec
mov edx, 0x4bc2d4
mov eax, dword [ebp - 8]
mov ebx, dword [eax]
call dword [ebx]
mov edx, dword [ebp - 0x74]
mov eax, 0x4da2ac
call fcn.004042e4
push 0
lea eax, [ebp - 0x7c]
push eax
mov ecx, 0x4bc2f8
mov edx, 0x4bc2d4
mov eax, dword [ebp - 8]
mov ebx, dword [eax]
call dword [ebx]
mov eax, dword [ebp - 0x7c]
lea edx, [ebp - 0x78]
call fcn.004b2cec
mov edx, dword [ebp - 0x78]
mov eax, dword [0x4d7078]
call fcn.004042e4
push 0x4bc304
lea eax, [ebp - 0x84]
push eax
mov ecx, 0x4bc314
mov edx, 0x4bc2d4
mov eax, dword [ebp - 8]
mov ebx, dword [eax]
call dword [ebx]
mov eax, dword [ebp - 0x84]
lea edx, [ebp - 0x80]
call fcn.004089f8
mov edx, dword [ebp - 0x80]
mov eax, 0x4da2a4
call fcn.004042e4
mov eax, dword [0x4da2a4]
call fcn.00404560
cmp eax, 3
jge 0x4bc08b
mov eax, 0x4da2a4
mov edx, 0x4bc304
call fcn.004042e4
push 0
mov ecx, 0x4bc320
mov edx, 0x4bc2d4
mov eax, dword [ebp - 8]
mov ebx, dword [eax]
call dword [ebx + 0x10]
mov byte [0x4da29d], al
push 0
mov ecx, 0x4bc32c
mov edx, 0x4bc2d4
mov eax, dword [ebp - 8]
mov ebx, dword [eax]
call dword [ebx + 0x10]
mov byte [0x4da29e], al
push 0
mov ecx, 0x4bc338
mov edx, 0x4bc2d4
mov eax, dword [ebp - 8]
mov ebx, dword [eax]
call dword [ebx + 0x10]
mov byte [0x4da29f], al
push 0x4bc344
lea eax, [ebp - 0x88]
push eax
mov ecx, 0x4bc364
mov edx, 0x4bc2d4
mov eax, dword [ebp - 8]
mov ebx, dword [eax]
call dword [ebx]
mov edx, dword [ebp - 0x88]
mov eax, 0x4da2b8
call fcn.004042e4
push 0x1f90
mov ecx, 0x4bc370
mov edx, 0x4bc2d4
mov eax, dword [ebp - 8]
mov ebx, dword [eax]
call dword [ebx + 8]
mov dword [0x4da2bc], eax
push 0
mov ecx, 0x4bc37c
mov edx, 0x4bc2d4
mov eax, dword [ebp - 8]
mov ebx, dword [eax]
call dword [ebx + 0x10]
mov byte [0x4da29c], al
cmp byte [0x4da29c], 0
jne 0x4bc14f
mov eax, dword [0x4d679c]
cmp byte [eax], 0
je 0x4bc1f1
push 0x4bc388
lea eax, [ebp - 0x90]
push eax
mov ecx, 0x4bc39c
mov edx, 0x4bc2d4
mov eax, dword [ebp - 8]
mov ebx, dword [eax]
call dword [ebx]
mov eax, dword [ebp - 0x90]
lea edx, [ebp - 0x8c]
call fcn.004b7ff0
mov edx, dword [ebp - 0x8c]
mov eax, 0x4da2a8
call fcn.004042e4
mov dl, 1
mov eax, dword [0x4a56f4]
call fcn.004a5788
mov ebx, eax
lea eax, [ebp - 0x98]
push eax
lea ecx, [ebp - 0x9c]
mov edx, dword [0x4da2a8]
mov eax, ebx
call fcn.004a5470
mov eax, dword [ebp - 0x9c]
mov ecx, 0xa
xor edx, edx
call fcn.004047c0
mov eax, dword [ebp - 0x98]
lea edx, [ebp - 0x94]
call fcn.004089f8
mov edx, dword [ebp - 0x94]
mov eax, 0x4da2b0
call fcn.004042e4
mov eax, ebx
call fcn.00403440
jmp 0x4bc20a
mov eax, 0x4da2a8
call fcn.00404290
mov eax, 0x4da2b0
mov edx, 0x4bc3a8
call fcn.004042e4
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4bc21e
cmp dword [ebp - 8], 0
je 0x4bc22c
mov eax, dword [ebp - 8]
call fcn.00403440
mov eax, dword [0x4da2ac]
call fcn.00404560
cmp eax, 0x14
je 0x4bc25b
lea edx, [ebp - 0xa0]
mov eax, 0x14
call fcn.004b6fcc
mov edx, dword [ebp - 0xa0]
mov eax, 0x4da2ac
call fcn.004042e4
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x4bc280
lea eax, [ebp - 0xa0]
mov edx, 0x26
call fcn.004042b4
ret