Function at 0x41e580
Capabilities:
Create a process with modified i/o handles and window
Create pipe
Create process on windows
Read file on windows

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x478494
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
mov eax, 0x281c
call fcn.0044b340
push ebx
push esi
push edi
lea edi, [ebp - 0x2828]
mov ecx, 0xa07
mov eax, 0xcccccccc
rep stosd dword es:[edi], eax
mov dword [ebp - 0x1c], 0xc
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 1
mov esi, esp
push 0
lea eax, [ebp - 0x1c]
push eax
lea ecx, [ebp - 0x24]
push ecx
lea edx, [ebp - 0x20]
push edx
call dword [sym.imp.KERNEL32.dll_CreatePipe]
cmp esi, esp
call fcn.0044a950
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0
jne 0x41e5f9
xor al, al
jmp 0x41e9b8
mov dword [ebp - 0x68], 0x44
mov esi, esp
lea eax, [ebp - 0x68]
push eax
call dword [sym.imp.KERNEL32.dll_GetStartupInfoA]
cmp esi, esp
call fcn.0044a950
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x28], ecx
mov edx, dword [ebp - 0x24]
mov dword [ebp - 0x2c], edx
mov word [ebp - 0x38], 0
mov dword [ebp - 0x3c], 0x101
mov esi, esp
lea eax, [ebp - 0x78]
push eax
lea ecx, [ebp - 0x68]
push ecx
push 0
push 0
push 0
push 1
push 0
push 0
push str.ipconfig__all
push 0
call dword [sym.imp.KERNEL32.dll_CreateProcessA]
cmp esi, esp
call fcn.0044a950
mov dword [ebp - 0x10], eax
lea edx, [ebp - 0x27b0]
push edx
lea ecx, [ebp - 0x279c]
call fcn.00421200
mov dword [ebp - 4], 0
cmp dword [ebp - 0x10], 0
je 0x41e852
mov esi, esp
push 0xffffffffffffffff
mov eax, dword [ebp - 0x78]
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
cmp esi, esp
call fcn.0044a950
mov esi, esp
mov ecx, dword [ebp - 0x24]
push ecx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp esi, esp
call fcn.0044a950
push 0x2711
push 0
lea edx, [ebp - 0x278c]
push edx
call fcn.0044a990
add esp, 0xc
mov esi, esp
push 0
lea eax, [ebp - 0x27a0]
push eax
push 0x2710
lea ecx, [ebp - 0x278c]
push ecx
mov edx, dword [ebp - 0x20]
push edx
call dword [sym.imp.KERNEL32.dll_ReadFile]
cmp esi, esp
call fcn.0044a950
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0
jne 0x41e75b
mov esi, esp
mov eax, dword [ebp - 0x24]
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp esi, esp
call fcn.0044a950
mov esi, esp
mov ecx, dword [ebp - 0x78]
push ecx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp esi, esp
call fcn.0044a950
mov esi, esp
mov edx, dword [ebp - 0x74]
push edx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp esi, esp
call fcn.0044a950
mov esi, esp
mov eax, dword [ebp - 0x20]
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp esi, esp
call fcn.0044a950
mov byte [ebp - 0x27b4], 0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x279c]
call fcn.004212b0
mov al, byte [ebp - 0x27b4]
jmp 0x41e9b8
lea ecx, [ebp - 0x278c]
push ecx
lea ecx, [ebp - 0x279c]
call fcn.00421330
push 0
push 0x736f80
lea ecx, [ebp - 0x279c]
call fcn.004213f0
mov dword [ebp - 0x27a4], eax
mov edx, dword [0x5066c8]
push edx
mov ecx, 0x736f80
call fcn.004213c0
mov ecx, dword [ebp - 0x27a4]
add ecx, eax
push ecx
lea edx, [ebp - 0x27c4]
push edx
lea ecx, [ebp - 0x279c]
call fcn.00421500
mov dword [ebp - 0x27dc], eax
mov eax, dword [ebp - 0x27dc]
mov dword [ebp - 0x27e0], eax
mov byte [ebp - 4], 1
mov ecx, dword [ebp - 0x27e0]
push ecx
lea ecx, [ebp - 0x279c]
call fcn.004212f0
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x27c4]
call fcn.004212b0
push 0
push 0x5061f0
lea ecx, [ebp - 0x279c]
call fcn.00421470
mov dword [ebp - 0x27a4], eax
mov edx, dword [ebp - 0x27a4]
push edx
push 0
lea eax, [ebp - 0x27d4]
push eax
lea ecx, [ebp - 0x279c]
call fcn.00421500
mov dword [ebp - 0x27e4], eax
mov ecx, dword [ebp - 0x27e4]
mov dword [ebp - 0x27e8], ecx
mov byte [ebp - 4], 2
mov edx, dword [ebp - 0x27e8]
push edx
lea ecx, [ebp - 0x279c]
call fcn.004212f0
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x27d4]
call fcn.004212b0
push 0x2711
push 0
lea eax, [ebp - 0x278c]
push eax
call fcn.0044a990
add esp, 0xc
lea ecx, [ebp - 0x279c]
call fcn.00421370
push eax
lea ecx, [ebp - 0x278c]
push ecx
call fcn.0044b370
add esp, 8
mov dword [ebp - 0x27a8], 0
mov dword [ebp - 0x27ac], 0
jmp 0x41e8a8
mov edx, dword [ebp - 0x27ac]
add edx, 1
mov dword [ebp - 0x27ac], edx
lea eax, [ebp - 0x278c]
push eax
call fcn.0044b760
add esp, 4
cmp dword [ebp - 0x27ac], eax
jae 0x41e94e
mov ecx, dword [ebp - 0x27ac]
movsx edx, byte [ebp + ecx - 0x278c]
cmp edx, 0x2d
je 0x41e949
mov eax, dword [ebp - 0x27ac]
movsx ecx, byte [ebp + eax - 0x278c]
cmp ecx, 0x30
jl 0x41e8fc
mov edx, dword [ebp - 0x27ac]
movsx eax, byte [ebp + edx - 0x278c]
cmp eax, 0x39
jle 0x41e922
mov ecx, dword [ebp - 0x27ac]
movsx edx, byte [ebp + ecx - 0x278c]
cmp edx, 0x41
jl 0x41e949
mov eax, dword [ebp - 0x27ac]
movsx ecx, byte [ebp + eax - 0x278c]
cmp ecx, 0x46
jg 0x41e949
mov edx, dword [ebp + 8]
add edx, dword [ebp - 0x27a8]
mov eax, dword [ebp - 0x27ac]
mov cl, byte [ebp + eax - 0x278c]
mov byte [edx], cl
mov edx, dword [ebp - 0x27a8]
add edx, 1
mov dword [ebp - 0x27a8], edx
jmp 0x41e899
cmp dword [ebp - 0x78], 0
je 0x41e967
mov esi, esp
mov eax, dword [ebp - 0x78]
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp esi, esp
call fcn.0044a950
cmp dword [ebp - 0x74], 0
je 0x41e980
mov esi, esp
mov ecx, dword [ebp - 0x74]
push ecx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp esi, esp
call fcn.0044a950
cmp dword [ebp - 0x20], 0
je 0x41e999
mov esi, esp
mov edx, dword [ebp - 0x20]
push edx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp esi, esp
call fcn.0044a950
mov byte [ebp - 0x27d8], 1
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x279c]
call fcn.004212b0
mov al, byte [ebp - 0x27d8]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
add esp, 0x2828
cmp ebp, esp
call fcn.0044a950
mov esp, ebp
pop ebp
ret