Function at 0x4bc980
Capabilities:
Create pipe
Read file on windows

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x670cb7
mov eax, dword fs:[0]
push eax
mov eax, 0x12e8
call fcn.004cba10
mov eax, dword [0x718924]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, dword [ebp + 8]
lea eax, [ebp - 0x12f0]
push 0
push eax
lea eax, [ebp - 0x128c]
mov dword [ebp - 0x12f0], 0xc
push eax
lea eax, [ebp - 0x1290]
mov dword [ebp - 0x12e8], 1
push eax
mov dword [ebp - 0x12ec], 0
call dword [sym.imp.KERNEL32.dll_CreatePipe]
test eax, eax
je 0x4bcfd3
lea eax, [ebp - 0x12e4]
mov dword [ebp - 0x12e0], 0
push eax
mov dword [ebp - 0x12dc], 0
mov dword [ebp - 0x12d8], 0
mov dword [ebp - 0x12d4], 0
mov dword [ebp - 0x12d0], 0
mov dword [ebp - 0x12cc], 0
mov dword [ebp - 0x12c8], 0
mov dword [ebp - 0x12c4], 0
mov dword [ebp - 0x12c0], 0
mov dword [ebp - 0x12bc], 0
mov dword [ebp - 0x12b8], 0
mov dword [ebp - 0x12b4], 0
mov dword [ebp - 0x12b0], 0
mov dword [ebp - 0x12ac], 0
mov dword [ebp - 0x12a8], 0
mov dword [ebp - 0x12a4], 0
mov dword [ebp - 0x12e4], 0x44
call dword [sym.imp.KERNEL32.dll_GetStartupInfoW]
mov eax, dword [ebp - 0x128c]
mov dword [ebp - 0x12a4], eax
mov dword [ebp - 0x12a8], eax
xor eax, eax
mov word [ebp - 0x12b4], ax
mov dword [ebp - 0x12a0], eax
mov dword [ebp - 0x129c], eax
mov dword [ebp - 0x1298], eax
mov dword [ebp - 0x1294], eax
lea eax, [ebp - 0x1230]
push eax
mov dword [ebp - 0x12b8], 0x101
call fcn.004bd7e0
push str.__ipconfig.exe
push eax
lea eax, [ebp - 0x1278]
mov dword [ebp - 4], 0
push eax
call fcn.004481e0
add esp, 0x10
lea ecx, [ebp - 0x1230]
mov byte [ebp - 4], 2
call fcn.00448fb0
cmp dword [ebp - 0x1264], 8
lea eax, [ebp - 0x1278]
cmovae eax, dword [ebp - 0x1278]
push eax
call fcn.004b3c60
add esp, 4
test eax, eax
je 0x4bcfc8
push str.__all
lea eax, [ebp - 0x1278]
push eax
lea eax, [ebp - 0x1260]
push eax
call fcn.0044f530
cmp dword [ebp - 0x124c], 8
lea eax, [ebp - 0x1260]
mov byte [ebp - 4], 3
cmovae eax, dword [ebp - 0x1260]
push eax
lea eax, [ebp - 0x218]
push 0x104
push eax
call fcn.004f2eab
cmp dword [ebp - 0x1264], 8
lea ecx, [ebp - 0x12a0]
push ecx
lea ecx, [ebp - 0x12e4]
push ecx
push 0
push 0
push 0
push 1
push 0
push 0
lea ecx, [ebp - 0x218]
lea eax, [ebp - 0x1278]
cmovae eax, dword [ebp - 0x1278]
push ecx
push eax
call fcn.004b2e90
mov esi, dword [sym.imp.KERNEL32.dll_CloseHandle]
add esp, 0x40
test eax, eax
je 0x4bcf5f
push 0xffffffffffffffff
push dword [ebp - 0x12a0]
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
push dword [ebp - 0x12a0]
call esi
push dword [ebp - 0x129c]
call esi
push 0x1000
lea eax, [ebp - 0x1218]
push 0
push eax
call fcn.004e30c0
add esp, 0xc
lea eax, [ebp - 0x12f4]
push 0
push eax
push 0x1000
lea eax, [ebp - 0x1218]
push eax
push dword [ebp - 0x1290]
call dword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
je 0x4bcf5f
lea ecx, [ebp - 0x1218]
mov dword [ebp - 0x1238], 0
mov dword [ebp - 0x1234], 0xf
lea edx, [ecx + 1]
mov byte [ebp - 0x1248], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4bcc57
sub ecx, edx
lea eax, [ebp - 0x1218]
push ecx
push eax
lea ecx, [ebp - 0x1248]
call fcn.0045d850
lea eax, [ebp - 0x1248]
mov byte [ebp - 4], 4
push 0
push eax
call fcn.004bc2c0
mov edx, eax
add esp, 8
mov dword [ebp - 0x127c], edx
cmp edx, 0xffffffff
je 0x4bcf25
mov ecx, 0x16
mov edi, edi
mov esi, dword [ebx + 0x10]
test esi, esi
je 0x4bcdac
mov ecx, dword [ebx + 0x14]
mov dword [ebp - 0x1288], ecx
cmp esi, ecx
jae 0x4bccd2
lea eax, [esi + 1]
mov dword [ebx + 0x10], eax
mov eax, ebx
cmp ecx, 0x10
jb 0x4bccc7
mov eax, dword [ebx]
mov word [eax + esi], 0x2b
jmp 0x4bcda7
mov eax, 0x7fffffff
sub eax, esi
cmp eax, 1
jb 0x4bcff6
lea edi, [esi + 1]
or edi, 0xf
cmp edi, 0x7fffffff
jbe 0x4bccf7
mov edi, 0x7fffffff
jmp 0x4bcd15
mov edx, ecx
mov eax, 0x7fffffff
shr edx, 1
sub eax, edx
cmp ecx, eax
jbe 0x4bcd0d
mov edi, 0x7fffffff
jmp 0x4bcd15
lea eax, [ecx + edx]
cmp edi, eax
cmovb edi, eax
lea eax, [edi + 1]
mov ecx, ebx
push eax
call fcn.0045d590
cmp dword [ebp - 0x1288], 0x10
lea ecx, [esi + 1]
mov dword [ebx + 0x14], edi
mov dword [ebp - 0x1280], eax
lea edi, [eax + esi]
mov dword [ebx + 0x10], ecx
mov dword [ebp - 0x1284], edi
push esi
jb 0x4bcd8a
mov edi, dword [ebx]
push edi
push eax
call fcn.004e25c0
mov eax, dword [ebp - 0x1284]
add esp, 0xc
mov ecx, dword [ebp - 0x1288]
inc ecx
mov word [eax], 0x2b
cmp ecx, 0x1000
jb 0x4bcd7e
mov edx, dword [edi - 4]
add ecx, 0x23
sub edi, edx
lea eax, [edi - 4]
cmp eax, 0x1f
ja 0x4bcff1
mov edi, edx
push ecx
push edi
call fcn.004cb4db
add esp, 8
jmp 0x4bcd99
push ebx
push eax
call fcn.004e25c0
add esp, 0xc
mov word [edi], 0x2b
mov eax, dword [ebp - 0x1280]
mov edx, dword [ebp - 0x127c]
mov dword [ebx], eax
mov ecx, 0x16
mov eax, dword [ebp - 0x1238]
mov dword [ebp - 0x1220], 0
mov dword [ebp - 0x121c], 0xf
mov byte [ebp - 0x1230], 0
cmp eax, edx
jb 0x4bcffb
sub eax, edx
mov edi, 0x11
cmp eax, edi
cmovb edi, eax
cmp dword [ebp - 0x1234], 0x10
lea eax, [ebp - 0x1248]
cmovae eax, dword [ebp - 0x1248]
add eax, edx
mov dword [ebp - 0x1284], eax
cmp edi, 0xf
ja 0x4bce32
push edi
push eax
lea eax, [ebp - 0x1230]
mov dword [ebp - 0x1220], edi
push eax
call fcn.004e2b40
mov byte [ebp + edi - 0x1230], 0
mov esi, dword [ebp - 0x121c]
mov edi, dword [ebp - 0x1220]
mov ecx, dword [ebp - 0x1230]
jmp 0x4bce96
cmp edi, 0x7fffffff
ja 0x4bcff6
mov esi, edi
or esi, 0xf
cmp esi, 0x7fffffff
jbe 0x4bce52
mov esi, 0x7fffffff
jmp 0x4bce58
cmp esi, 0x16
cmovb esi, ecx
lea eax, [esi + 1]
push eax
lea ecx, [ebp - 0x1230]
call fcn.0045d590
push edi
push dword [ebp - 0x1284]
mov dword [ebp - 0x1280], eax
push eax
mov dword [ebp - 0x1220], edi
mov dword [ebp - 0x121c], esi
call fcn.004e25c0
mov ecx, dword [ebp - 0x1280]
mov dword [ebp - 0x1230], ecx
mov byte [ecx + edi], 0
add esp, 0xc
cmp esi, 0x10
mov byte [ebp - 4], 5
lea eax, [ebp - 0x1230]
cmovae eax, ecx
mov ecx, ebx
push edi
push eax
call fcn.0045d5f0
mov edx, dword [ebp - 0x121c]
mov byte [ebp - 4], 4
cmp edx, 0x10
jb 0x4bcef0
mov ecx, dword [ebp - 0x1230]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4bcee6
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4bcff1
push edx
push ecx
call fcn.004cb4db
add esp, 8
mov eax, dword [ebp - 0x127c]
add eax, 0xf
push eax
lea eax, [ebp - 0x1248]
push eax
call fcn.004bc2c0
mov edx, eax
mov dword [ebp - 0x127c], eax
add esp, 8
mov ecx, 0x16
cmp edx, 0xffffffff
jne 0x4bcca0
mov esi, dword [sym.imp.KERNEL32.dll_CloseHandle]
mov edx, dword [ebp - 0x1234]
cmp edx, 0x10
jb 0x4bcf5f
mov ecx, dword [ebp - 0x1248]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4bcf55
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4bcff1
push edx
push ecx
call fcn.004cb4db
add esp, 8
push dword [ebp - 0x128c]
call esi
push dword [ebp - 0x1290]
call esi
mov edx, dword [ebp - 0x124c]
cmp edx, 8
jb 0x4bcfab
mov ecx, dword [ebp - 0x1260]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x4bcfa1
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4bd000
push edx
push ecx
call fcn.004cb4db
add esp, 8
xor eax, eax
mov dword [ebp - 0x1250], 0
mov dword [ebp - 0x124c], 7
mov word [ebp - 0x1260], ax
lea ecx, [ebp - 0x1278]
call fcn.00448fb0
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.004cb998
mov esp, ebp
pop ebp
ret
call fcn.004e6589
call fcn.0044e270
call fcn.0044e290
call fcn.004e6589
int3