Function at 0x428048
Capabilities:
Copy file
Create process on windows

Disassembly:
push ebp
mov ebp, esp
mov ecx, 7
push 0
push 0
dec ecx
jne 0x428050
push ecx
push ebx
xor eax, eax
push ebp
push 0x4282d5
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, 0x4282ec
call fcn.00427360
lea ecx, [ebp - 0x10]
xor edx, edx
mov eax, 0x428314
call fcn.0040e740
mov eax, dword [ebp - 0x10]
push eax
call sub.kernel32.dll_GetCurrentProcessId
xor edx, edx
push edx
push eax
mov eax, dword [0x42adc4]
call fcn.00405220
mov edx, 0x428324
call fcn.00404a98
pop edx
call fcn.00404a98
call fcn.00403164
mov eax, dword [0x42ae6c]
cmp byte [eax], 0
je 0x4282a3
call fcn.00427c74
test al, al
je 0x4280e5
lea ecx, [ebp - 0x14]
xor edx, edx
mov eax, 0x428314
call fcn.0040e740
mov eax, dword [ebp - 0x14]
mov edx, 0x428344
call fcn.004047c8
jne 0x4282a3
lea edx, [ebp - 0x18]
xor eax, eax
call fcn.00402840
mov eax, dword [ebp - 0x18]
lea edx, [ebp - 0xc]
call fcn.00407a34
lea edx, [ebp - 0x1c]
mov eax, dword [0x42ae00]
mov eax, dword [eax]
call fcn.0041a770
mov edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0xc]
call fcn.0040d49c
test al, al
je 0x4282a3
call sub.kernel32.dll_GetCurrentProcessId
xor edx, edx
push edx
push eax
mov eax, dword [0x42adc4]
call fcn.00405220
mov edx, 0x428350
call fcn.00404a98
call fcn.00403164
push 0
push 0
mov eax, 0x428370
call fcn.0040e860
mov ebx, eax
lea eax, [ebp - 0x20]
push eax
mov dword [ebp - 0x28], ebx
mov byte [ebp - 0x24], 0
lea edx, [ebp - 0x28]
xor ecx, ecx
mov eax, 0x428380
call fcn.00408174
mov eax, dword [ebp - 0x20]
call fcn.00427360
imul eax, ebx, 0x3e8
cdq
push edx
push eax
xor eax, eax
call fcn.0040ce2c
lea edx, [ebp - 0x30]
xor eax, eax
call fcn.00402840
mov eax, dword [ebp - 0x30]
lea edx, [ebp - 0x2c]
call fcn.004079ac
push dword [ebp - 0x2c]
push 0x428394
push dword [ebp - 0xc]
lea eax, [ebp - 0xc]
mov edx, 3
call fcn.0040473c
push 0
mov eax, dword [ebp - 0xc]
call fcn.0040487c
push eax
lea edx, [ebp - 0x34]
xor eax, eax
call fcn.00402840
mov eax, dword [ebp - 0x34]
call fcn.0040487c
push eax
call sub.kernel32.dll_CopyFileA
mov eax, 0x4283a0
call fcn.00427360
lea eax, [ebp - 4]
call fcn.004043d8
lea ecx, [ebp - 8]
xor edx, edx
mov eax, 0x4283b8
call fcn.0040e740
cmp dword [ebp - 8], 0
je 0x428207
lea eax, [ebp - 4]
mov ecx, dword [ebp - 8]
mov edx, 0x4283cc
call fcn.004046c8
lea ecx, [ebp - 8]
xor edx, edx
mov eax, 0x4283e4
call fcn.0040e740
cmp dword [ebp - 8], 0
je 0x42822c
lea eax, [ebp - 4]
mov ecx, dword [ebp - 8]
mov edx, 0x4283f4
call fcn.004046c8
push 0x428408
push dword [ebp - 0xc]
push dword [ebp - 4]
lea eax, [ebp - 0x38]
mov edx, 3
call fcn.0040473c
mov eax, dword [ebp - 0x38]
call fcn.00427360
push 0
lea eax, [ebp - 0x3c]
mov ecx, dword [ebp - 4]
mov edx, dword [ebp - 0xc]
call fcn.004046c8
mov eax, dword [ebp - 0x3c]
call fcn.0040487c
push eax
call sub.kernel32.dll_WinExec
call fcn.004027e0
test eax, eax
jle 0x4282a3
call sub.kernel32.dll_GetTickCount_1
mov ebx, eax
add ebx, 0xbb8
push 0
push 0xc8
xor eax, eax
call fcn.0040ce2c
mov eax, dword [ebp - 0xc]
call fcn.00411fcc
test al, al
jne 0x4282a3
call sub.kernel32.dll_GetTickCount_1
cmp ebx, eax
jae 0x428280
mov eax, 0x42841c
call fcn.00427360
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x4282dc
lea eax, [ebp - 0x3c]
mov edx, 5
call fcn.004043fc
lea eax, [ebp - 0x20]
mov edx, 8
call fcn.004043fc
ret