Function at 0x10028792
Capabilities:
Create pipe
Create two anonymous pipes

Disassembly:
push 0x4f0
mov eax, 0x1008a2e6
call fcn.1007568c
mov eax, dword [ebp + 8]
xor ebx, ebx
mov dword [ebp - 0x478], eax
mov eax, dword [ebp + 0xc]
mov edi, 0x2000
push edi
mov dword [ebp - 0x474], eax
mov dword [ebp - 0x45c], ebx
mov dword [ebp - 0x464], ebx
mov dword [ebp - 0x44c], ebx
mov dword [ebp - 0x468], ebx
mov dword [ebp - 0x46c], ebx
mov dword [ebp - 0x47c], ebx
mov dword [ebp - 0x480], ebx
mov dword [ebp - 0x444], ebx
mov dword [ebp - 4], ebx
call fcn.10073b8b
pop ecx
push edi
mov dword [ebp - 0x448], eax
mov dword [ebp - 0x444], eax
call fcn.10073b8b
or dword [ebp - 4], 0xffffffff
pop ecx
push str.ipconfig__all
mov dword [ebp - 0x454], eax
lea eax, [ebp - 0x114]
push 0x80
push eax
call fcn.10077973
add esp, 0xc
push 0x100a5eb4
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
mov dword [ebp - 0x450], eax
test eax, eax
je 0x10028863
push 0x100a5ec8
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov esi, eax
test esi, esi
je 0x10028877
lea eax, [ebp - 0x46c]
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
push eax
call esi
jmp 0x10028877
push str.GetIPConfigResult_:_GetModuleHandle_error.
push 0x100a5f04
push 2
call fcn.10009c3c
add esp, 0xc
mov esi, dword [sym.imp.KERNEL32.dll_CreatePipe]
push edi
lea eax, [ebp - 0x48c]
push eax
lea eax, [ebp - 0x464]
push eax
lea eax, [ebp - 0x45c]
push eax
mov dword [ebp - 0x48c], 0xc
mov dword [ebp - 0x488], ebx
mov dword [ebp - 0x484], 1
call esi
push edi
lea eax, [ebp - 0x48c]
push eax
lea eax, [ebp - 0x468]
push eax
lea eax, [ebp - 0x44c]
push eax
call esi
push 0x44
pop esi
push esi
lea eax, [ebp - 0x4fc]
push ebx
push eax
call fcn.10074510
xor eax, eax
mov word [ebp - 0x4cc], ax
mov eax, dword [ebp - 0x464]
add esp, 0xc
mov dword [ebp - 0x4c0], eax
mov eax, dword [ebp - 0x468]
push 0x104
mov dword [ebp - 0x4bc], eax
lea eax, [ebp - 0x31c]
push eax
push ebx
mov dword [ebp - 0x4fc], esi
push ebx
sub esp, 0x10
mov esi, 0x100d32cc
mov edi, esp
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov dword [ebp - 0x4d0], 0x101
movsd dword es:[edi], dword [esi]
call fcn.1004343e
add esp, 0x20
test eax, eax
je 0x10028954
push dword [ebp - 0x448]
call fcn.10074fff
push dword [ebp - 0x454]
call fcn.10074fff
pop ecx
pop ecx
call fcn.100755de
ret 0xc
lea eax, [ebp - 0x31c]
push eax
push str.szWinPath:_1_s_
push 0x100a5f34
push 4
call fcn.10009c3c
add esp, 0x10
cmp dword [ebp - 0x46c], 0
je 0x100289a1
mov eax, dword [ebp - 0x450]
test eax, eax
je 0x100289a1
push str.Wow64EnableWow64FsRedirection
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x480], eax
test eax, eax
je 0x100289a1
push ebx
call eax
mov dword [ebp - 0x47c], eax
lea eax, [ebp - 0x49c]
push eax
lea eax, [ebp - 0x4fc]
push eax
lea eax, [ebp - 0x31c]
push eax
push ebx
push 8
push 1
push ebx
lea eax, [ebp - 0x48c]
push eax
lea eax, [ebp - 0x114]
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_CreateProcessW]
test eax, eax
je 0x10028d22
push 0x3e8
push dword [ebp - 0x49c]
mov dword [ebp - 0x440], ebx
mov dword [ebp - 0x460], ebx
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov edi, eax
mov dword [ebp - 0x450], edi
cmp edi, 0x80
je 0x10028d0a
mov esi, dword [ebp - 0x448]
mov edi, 0x2000
push edi
push ebx
push esi
mov dword [ebp - 0x440], ebx
mov dword [ebp - 0x460], ebx
call fcn.10074510
push edi
push ebx
push dword [ebp - 0x454]
call fcn.10074510
add esp, 0x18
lea eax, [ebp - 0x440]
push ebx
push eax
push ebx
push ebx
push ebx
push dword [ebp - 0x45c]
call dword [sym.imp.KERNEL32.dll_PeekNamedPipe]
cmp dword [ebp - 0x440], 0
jbe 0x10028c56
push ebx
lea eax, [ebp - 0x440]
push eax
push 0x1fff
push esi
push dword [ebp - 0x45c]
mov dword [ebp - 0x440], ebx
call dword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
je 0x10028c56
call dword [sym.imp.KERNEL32.dll_GetUserDefaultUILanguage]
push 0x11c
movzx esi, ax
lea eax, [ebp - 0x438]
push ebx
push eax
mov dword [ebp - 0x43c], 1
call fcn.10074510
add esp, 0xc
lea eax, [ebp - 0x438]
push eax
mov dword [ebp - 0x438], 0x114
call dword [sym.imp.KERNEL32.dll_GetVersionExW]
push 2
pop edi
test eax, eax
je 0x10028afa
cmp dword [ebp - 0x428], edi
jne 0x10028afa
cmp dword [ebp - 0x434], 6
jae 0x10028afa
and esi, 0x3ff
cmp si, 0x1b
je 0x10028af4
cmp si, 5
je 0x10028af4
cmp si, 0xa
jne 0x10028afa
mov dword [ebp - 0x43c], ebx
call dword [sym.imp.KERNEL32.dll_GetOEMCP]
push eax
push str._NetworkInfo__OEMCP___1_d_
push 0x100a606c
push 4
call fcn.10009c3c
mov esi, dword [ebp - 0x448]
add esp, 0x10
push ebx
push ebx
push dword [ebp - 0x440]
push esi
push ebx
push dword [ebp - 0x43c]
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
mov dword [ebp - 0x444], eax
inc eax
xor ecx, ecx
mov dword [ebp - 0x470], eax
mul edi
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.10073b8b
mov ecx, dword [ebp - 0x470]
add ecx, ecx
push ecx
push ebx
push eax
mov dword [ebp - 0x458], eax
call fcn.10074510
mov eax, dword [ebp - 0x458]
add esp, 0x10
test eax, eax
je 0x10028c59
push dword [ebp - 0x470]
push eax
push dword [ebp - 0x440]
push esi
push ebx
push dword [ebp - 0x43c]
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
test eax, eax
je 0x10028c48
mov eax, dword [ebp - 0x444]
mov ecx, ebx
mov dword [ebp - 0x43c], ecx
test eax, eax
jle 0x10028c0c
mov esi, dword [ebp - 0x458]
push 0xd
pop edx
cmp word [esi], dx
jne 0x10028bff
push 0xd
lea edx, [esi + 2]
pop ecx
cmp word [edx], cx
mov ecx, dword [ebp - 0x43c]
jne 0x10028bfc
sub eax, ecx
lea eax, [eax*2 - 2]
push eax
mov eax, dword [ebp - 0x470]
sub eax, ecx
push edx
add eax, eax
push eax
push esi
call fcn.10074484
mov eax, dword [ebp - 0x444]
mov ecx, dword [ebp - 0x43c]
add esp, 0x10
dec eax
mov dword [ebp - 0x444], eax
push 0xd
pop edx
inc ecx
add esi, edi
mov dword [ebp - 0x43c], ecx
cmp ecx, eax
jl 0x10028bb4
mov ecx, dword [ebp - 0x474]
lea esi, [eax + eax]
mov ecx, dword [ecx]
mov eax, dword [ebp + 0x10]
sub eax, ecx
push esi
push dword [ebp - 0x458]
add eax, edi
push eax
mov eax, dword [ebp - 0x478]
add eax, 0xfffffffe
add eax, ecx
push eax
call fcn.10074484
mov eax, dword [ebp - 0x474]
add esp, 0x10
add dword [eax], esi
mov esi, dword [ebp - 0x448]
push dword [ebp - 0x458]
call fcn.10074fff
pop ecx
jmp 0x10028c59
push 2
pop edi
push ebx
lea eax, [ebp - 0x460]
push eax
push ebx
push ebx
push ebx
push dword [ebp - 0x44c]
call dword [sym.imp.KERNEL32.dll_PeekNamedPipe]
cmp dword [ebp - 0x460], 0
jbe 0x10028caf
push ebx
lea eax, [ebp - 0x460]
push eax
push 0x1fff
push dword [ebp - 0x454]
push dword [ebp - 0x44c]
call dword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
jne 0x10028caf
push str.ReadFile_:_read_bufErrOut_error.
push str.CIPConfigDlg::GetIPConfigResult
push edi
call fcn.10009c3c
add esp, 0xc
push 1
push ebx
push ebx
push ebx
lea eax, [ebp - 0x4b8]
push eax
call dword [sym.imp.USER32.dll_PeekMessageW]
test eax, eax
je 0x10028cdf
lea eax, [ebp - 0x4b8]
push eax
call dword [sym.imp.USER32.dll_TranslateMessage]
lea eax, [ebp - 0x4b8]
push eax
call dword [sym.imp.USER32.dll_DispatchMessageW]
cmp dword [ebp - 0x450], 0
je 0x10028d0a
push 0x3e8
push dword [ebp - 0x49c]
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov dword [ebp - 0x450], eax
cmp eax, 0x80
jne 0x10028a10
push dword [ebp - 0x498]
mov esi, dword [sym.imp.KERNEL32.dll_CloseHandle]
call esi
push dword [ebp - 0x49c]
call esi
jmp 0x10028d28
mov esi, dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp dword [ebp - 0x46c], 0
je 0x10028d48
cmp dword [ebp - 0x47c], 0
je 0x10028d48
mov eax, dword [ebp - 0x480]
test eax, eax
je 0x10028d48
push 1
call eax
push dword [ebp - 0x448]
call fcn.10074fff
push dword [ebp - 0x454]
call fcn.10074fff
mov edi, dword [ebp - 0x474]
pop ecx
mov eax, dword [edi]
pop ecx
mov ecx, dword [ebp - 0x478]
xor edx, edx
mov word [eax + ecx - 2], dx
test ecx, ecx
je 0x10028d89
mov eax, dword [ebp + 0x10]
shr eax, 1
push eax
push ecx
call fcn.100779cf
pop ecx
pop ecx
mov ebx, eax
push dword [ebp - 0x464]
lea eax, [ebx*2 + 2]
mov dword [edi], eax
call esi
push dword [ebp - 0x45c]
call esi
push dword [ebp - 0x468]
call esi
push dword [ebp - 0x44c]
call esi
jmp 0x1002894c