Function at 0x4b8650
Capabilities:
Connect pipe
Read file on windows

Disassembly:
cmp byte [ecx + 0x88], 0
je 0x4b8670
push dword [ecx + 0x9c]
mov dword [ecx + 0x84], 1
call dword [sym.imp.KERNEL32.dll_ResetEvent]
ret
mov eax, dword [ecx + 0x84]
dec eax
cmp eax, 9
ja case.default.0x4b867c
jmp dword [eax*4 + 0x4b86c0]
jmp 0x4b8840
jmp 0x4b88a0
jmp fcn.004b85e0
jmp fcn.004b8550
jmp fcn.004b8af0
jmp 0x4b8930
jmp fcn.004b8bf0
jmp fcn.004b8b60
jmp fcn.004b8a60
jmp 0x4b86f0
mov dword [ecx + 0x84], 1
ret
push esi
mov esi, ecx
push dword [esi + 0x9c]
mov dword [esi + 0xcc], 0
mov dword [esi + 0x8c], 0
mov dword [esi + 0x90], 0
mov dword [esi + 0x98], 0
mov dword [esi + 0x94], 0
call dword [sym.imp.KERNEL32.dll_ResetEvent]
test eax, eax
jne 0x4b874d
push dword [esi + 0x9c]
call dword [sym.imp.KERNEL32.dll_SetEvent]
mov dword [esi + 0x84], 1
pop esi
ret
push dword [esi + 0x3c]
call dword [sym.imp.KERNEL32.dll_DisconnectNamedPipe]
test eax, eax
je 0x4b8735
cmp byte [esi + 0x88], 0
jne 0x4b8787
push dword [esi + 0x9c]
mov dword [esi + 0x84], 2
call dword [sym.imp.KERNEL32.dll_SetEvent]
test eax, eax
jne 0x4b8787
mov dword [esi + 0x84], 1
pop esi
ret
push esi
mov esi, ecx
cmp byte [esi + 0x88], 0
jne 0x4b8891
mov eax, dword [esi + 0x40]
test eax, eax
je 0x4b8861
push eax
call dword [sym.imp.KERNEL32.dll_UnregisterWait]
mov dword [esi + 0x40], 0
mov eax, dword [esi + 0x3c]
test eax, eax
je 0x4b8876
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [esi + 0x3c], 0
mov eax, dword [esi + 0x9c]
test eax, eax
je 0x4b8891
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [esi + 0x9c], 0
pop esi
ret
push esi
mov esi, ecx
push dword [esi + 0x9c]
call dword [sym.imp.KERNEL32.dll_ResetEvent]
test eax, eax
je 0x4b890d
lea eax, [esi + 0x8c]
push eax
push dword [esi + 0x3c]
call dword [sym.imp.KERNEL32.dll_ConnectNamedPipe]
test eax, eax
jne 0x4b890d
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x217
je 0x4b88e7
cmp eax, 0x3e5
jne 0x4b890d
mov dword [esi + 0x84], 3
pop esi
ret
push dword [esi + 0x9c]
mov dword [esi + 0x84], 4
call dword [sym.imp.KERNEL32.dll_SetEvent]
test eax, eax
jne 0x4b8923
mov dword [esi + 0x84], 1
pop esi
ret
push dword [esi + 0x9c]
call dword [sym.imp.KERNEL32.dll_SetEvent]
mov dword [esi + 0x84], 1
pop esi
ret
push esi
mov esi, ecx
mov eax, dword [esi + 0xa0]
cmp eax, 4
je 0x4b896c
cmp eax, 1
jne 0x4b8981
cmp dword [esi + 0xa4], 0
je 0x4b8981
cmp dword [esi + 0xac], 0
je 0x4b8981
cmp dword [esi + 0xb0], 0
je 0x4b8981
cmp dword [esi + 0xb4], 0
je 0x4b8981
cmp eax, 4
jne 0x4b89ab
mov eax, dword [esi + 0x60]
test eax, eax
je 0x4b8981
push dword [esi + 0xa4]
push dword [esi + 0x64]
call eax
add esp, 8
push dword [esi + 0x9c]
mov dword [esi + 0x84], 0xa
call dword [sym.imp.KERNEL32.dll_SetEvent]
test eax, eax
jne 0x4b8a50
mov dword [esi + 0x84], 1
pop esi
ret
push edi
push 0x44
call fcn.00492cd0
add esp, 4
test eax, eax
je 0x4b89eb
lea ecx, [esi + 0xb8]
push ecx
push dword [esi + 0xb4]
mov ecx, eax
push dword [esi + 0xb0]
push dword [esi + 0xac]
push dword [esi + 0xa8]
push dword [esi + 0xa4]
push esi
call fcn.004b8f20
mov edi, eax
jmp 0x4b89ed
xor edi, edi
mov ecx, edi
call fcn.004b90b0
test al, al
je 0x4b8a04
push edi
mov ecx, esi
call fcn.004b8d50
test al, al
jne 0x4b8a3f
push dword [esi + 0x9c]
mov dword [esi + 0x84], 0xa
call dword [sym.imp.KERNEL32.dll_SetEvent]
test eax, eax
jne 0x4b8a28
mov dword [esi + 0x84], 1
test edi, edi
je 0x4b8a4f
mov ecx, edi
call fcn.004b8fa0
push edi
call fcn.00492cb0
add esp, 4
pop edi
pop esi
ret
mov dword [esi + 0xcc], edi
mov dword [esi + 0x84], 7
pop edi
pop esi
ret