Function at 0x408abf
Capabilities:
Check for time delay via gettickcount
Read file on windows
Read pipe

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc
push ebx
xor ebx, ebx
cmp dword [0x43903c], 2
push edi
mov dword [ebp - 4], ebx
mov dword [ebp - 8], ebx
mov dword [ebp - 0xc], ebx
mov edi, 0x10000
je 0x408b14
mov ecx, dword [0x43bd74]
mov eax, dword [0x43a828]
mov edx, ecx
sub edx, dword [0x43bd70]
cmp edx, eax
jae 0x408afe
mov eax, edx
mov dword [0x43a828], eax
cmp word [0x43b8b8], 0x23
jne 0x408b8e
cmp eax, edi
jbe 0x408b8e
mov eax, edi
jmp 0x408b89
cmp dword [0x43bd70], ebx
jne 0x408b27
mov ecx, dword [0x43bd74]
push 0x64
pop eax
jmp 0x408b89
push ebx
push 0x43a828
push ebx
push ebx
push ebx
push dword [0x439038]
call dword [sym.imp.KERNEL32.dll_PeekNamedPipe]
test eax, eax
jne 0x408bcb
mov dword [0x43a828], eax
mov ecx, dword [0x43bd70]
lea edx, [eax + ecx]
mov ecx, dword [0x43bd74]
cmp edx, ecx
jbe 0x408b8e
push edx
call fcn.00406d3f
mov ecx, dword [0x43bd70]
mov eax, dword [0x43a828]
lea edx, [eax + ecx]
mov ecx, dword [0x43bd74]
cmp edx, ecx
jbe 0x408b8e
mov eax, ecx
sub eax, dword [0x43bd70]
mov dword [ebp - 0xc], 1
mov dword [0x43a828], eax
push esi
mov esi, eax
cmp esi, ebx
je 0x408c50
mov eax, esi
cmp esi, edi
jbe 0x408ba2
shr eax, 4
push ebx
lea ecx, [ebp - 8]
push ecx
mov ecx, dword [0x43bd70]
push eax
mov eax, dword [0x43bd68]
add eax, ecx
push eax
push dword [0x439038]
call dword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
jne 0x408bdf
mov dword [ebp - 8], ebx
jmp 0x408c29
mov eax, dword [0x43a828]
cmp eax, ebx
jne 0x408b49
xor eax, eax
jmp 0x408d7b
mov eax, dword [ebp - 8]
add dword [0x43bd70], eax
call fcn.00407862
test eax, eax
je 0x408c03
push str.BRAKJob_breaked
push 0x20000000
mov dword [ebp - 8], ebx
call fcn.00417cf8
mov ecx, dword [0x43bd74]
cmp dword [0x43bd68], ebx
je 0x408cd0
cmp ecx, ebx
je 0x408cd0
cmp ecx, dword [0x43bd70]
jb 0x408cd0
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 4], eax
cmp dword [ebp - 8], ebx
je 0x408c4a
sub eax, dword [ebp + 8]
sub esi, dword [ebp - 8]
cmp eax, 0x1f
jae 0x408c4a
cmp esi, ebx
jne 0x408b99
mov ecx, dword [0x43bd74]
mov edx, dword [0x43bd68]
mov eax, dword [0x43bd70]
lea esi, [edx + eax]
cmp dword [ebp - 0xc], ebx
jne 0x408c68
cmp dword [ebp - 8], ebx
jne 0x408ca2
cmp ecx, ebx
je 0x408c81
cmp ecx, eax
jbe 0x408c81
sub ecx, eax
push ecx
push 0xaa
push esi
call fcn.004229f0
add esp, 0xc
push dword [0x439038]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [0x439038], ebx
mov dword [0x43903c], ebx
mov dword [ebp - 0xc], 1
xor esi, esi
cmp esi, ebx
je 0x408d77
mov edi, 0x400
push edi
push esi
mov dword [0x43ca44], 1
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
je 0x408cde
push dword [ebp - 0xc]
push esi
call fcn.00406ddf
jmp 0x408ce9
mov dword [0x43bd70], ecx
mov dword [ebp - 8], ebx
jmp 0x408c50
push edi
push ebx
push esi
call fcn.004229f0
add esp, 0xc
cmp dword [0x43903c], 2
je 0x408d77
mov eax, dword [ebp + 8]
cmp dword [ebp - 4], eax
jb 0x408d03
sub dword [ebp - 4], eax
jmp 0x408d09
sub eax, dword [ebp - 4]
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0x1f
jae 0x408d3a
mov eax, dword [0x43a828]
cmp eax, 0xa00000
jae 0x408d77
cmp dword [ebp - 4], 0xa
jae 0x408d25
add eax, eax
jmp 0x408d72
mov ecx, 0x20000
cmp eax, ecx
sbb edx, edx
and edx, 0xfffe1000
add edx, ecx
add eax, edx
jmp 0x408d72
cmp dword [ebp - 4], 0x3e
jbe 0x408d48
shr dword [0x43a828], 1
jmp 0x408d65
mov eax, 0x20000
cmp eax, dword [0x43a828]
sbb eax, eax
and eax, 0x1f000
add eax, 0x1000
sub dword [0x43a828], eax
mov eax, 0x4000
cmp dword [0x43a828], eax
jae 0x408d77
mov dword [0x43a828], eax
mov eax, dword [ebp - 0xc]
pop esi
pop edi
pop ebx
leave
ret 4