Function at 0x40eae5
Capabilities:
Read file on windows

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
mov ebx, eax
sub esp, 0x8c
mov esi, dword [eax + 0x18]
mov dword [esp], 1
call fcn.0041efaa
mov edx, eax
mov al, byte [ebx + 0x30]
and edx, 1
and eax, 0xfffffffe
or eax, edx
mov byte [ebx + 0x30], al
test al, 1
jne 0x40ef14
cmp dword [0x4311e8], 0
je 0x40eee6
call fcn.0041df46
test eax, eax
jne 0x40eeef
fld qword [0x428e38]
fldz
fcompi st(1)
fstp st(0)
ja 0x40eee6
cmp dword [0x4288d8], 0xfffffffe
jne 0x40ebea
xor eax, eax
mov dword [esp], str._proc_loadavg
mov dword [esp + 4], eax
call sub.msvcrt.dll__open
mov dword [0x4288d8], eax
inc eax
je 0x40eb80
mov eax, dword [0x43154c]
and eax, 4
cmp dword [0x4288d8], 0
jns 0x40ebb8
jmp 0x40eb8d
call dword [sym.imp.msvcrt.dll__errno]
cmp dword [eax], 4
je 0x40eb53
jmp 0x40eb6d
test eax, eax
je 0x40eda4
mov dword [esp], str.Using_system_load_detection_method._n
call fcn.0040c6f6
mov dword [esp], 1
call dword [0x428f14]
mov dword [esp], eax
call sub.msvcrt.dll_fflush
jmp 0x40ebea
test eax, eax
je 0x40ebdd
mov dword [esp], str.Using__proc_loadavg_load_detection_method._n
call fcn.0040c6f6
mov dword [esp], 1
call dword [0x428f14]
mov dword [esp], eax
call sub.msvcrt.dll_fflush
mov eax, dword [0x4288d8]
mov dword [esp], eax
call fcn.0041d8cc
cmp dword [0x4288d8], 0
js 0x40eda4
mov eax, dword [0x4288d8]
xor edi, edi
mov dword [esp + 0xc], edi
mov dword [esp + 4], edi
mov dword [esp + 8], edi
mov dword [esp], eax
call fcn.004219b0
cmp eax, 0xffffffff
je 0x40ec20
test eax, eax
jns 0x40ec3f
jmp 0x40ed4f
call dword [sym.imp.msvcrt.dll__errno]
cmp dword [eax], 4
je 0x40ebf7
jmp 0x40ed4f
call dword [sym.imp.msvcrt.dll__errno]
cmp dword [eax], 4
jne 0x40ed4f
mov eax, dword [0x4288d8]
lea edi, [ebp - 0x60]
mov dword [esp + 8], 0x40
mov dword [esp + 4], edi
mov dword [esp], eax
call sub.msvcrt.dll__read
cmp eax, 0xffffffff
je 0x40ec30
test eax, eax
js 0x40ed4f
mov dword [esp + 4], 0x20
mov dword [esp], edi
mov byte [ebp + eax - 0x60], 0
call sub.msvcrt.dll_strchr
test eax, eax
je 0x40ed39
inc eax
mov dword [esp + 4], 0x20
mov dword [esp], eax
call sub.msvcrt.dll_strchr
test eax, eax
je 0x40ed39
inc eax
mov dword [esp + 4], 0x20
mov dword [esp], eax
call sub.msvcrt.dll_strchr
test eax, eax
je 0x40ed39
movsx edx, byte [eax + 1]
sub edx, 0x30
cmp edx, 9
ja 0x40ed39
xor ecx, ecx
inc eax
mov dword [esp + 4], ecx
mov dword [esp], eax
call fcn.004110e1
mov edi, eax
test byte [0x43154c], 4
je 0x40ed19
mov eax, dword [0x4311e8]
mov dword [esp + 4], edi
movsd xmm1, qword [0x428e38]
mov dword [esp], str.Running:_system___u___make___u__max_requested___f__n
mov dword [esp + 8], eax
movsd qword [esp + 0xc], xmm1
call fcn.0040c6f6
mov dword [esp], 1
call dword [0x428f14]
mov dword [esp], eax
call sub.msvcrt.dll_fflush
movd xmm0, edi
movq qword [ebp - 0x70], xmm0
fild qword [ebp - 0x70]
fld qword [0x428e38]
fxch st(1)
fcompi st(1)
fstp st(0)
seta al
jmp 0x40eedf
test byte [0x43154c], 4
je 0x40ed8d
mov dword [esp + 4], edi
mov dword [esp], str.Failed_to_parse__proc_loadavg:__s_n
jmp 0x40ed73
test byte [0x43154c], 4
je 0x40ed8d
call dword [sym.imp.msvcrt.dll__errno]
mov eax, dword [eax]
mov dword [esp], eax
call sub.msvcrt.dll_strerror
mov dword [esp], str.Failed_to_read__proc_loadavg:__s_n
mov dword [esp + 4], eax
call fcn.0040c6f6
mov dword [esp], 1
call dword [0x428f14]
mov dword [esp], eax
call sub.msvcrt.dll_fflush
mov eax, dword [0x4288d8]
mov dword [esp], eax
call sub.msvcrt.dll__close
mov dword [0x4288d8], 0xffffffff
mov edi, dword [sym.imp.msvcrt.dll__errno]
call edi
xor edx, edx
mov dword [eax], edx
lea eax, [ebp - 0x60]
mov dword [esp + 4], 1
mov dword [esp], eax
call fcn.0041efd0
dec eax
je 0x40ee1e
cmp dword [0x4288d4], 0xffffffff
jne 0x40edee
call edi
cmp dword [eax], 0
jne 0x40edfc
xor eax, eax
mov dword [esp + 8], str.cannot_enforce_load_limits_on_this_operating_system
mov dword [esp + 4], eax
mov dword [esp], eax
call fcn.00412148
jmp 0x40ee10
call edi
mov ecx, dword [0x4288d4]
cmp dword [eax], ecx
jne 0x40edcf
jmp 0x40ee10
mov dword [esp + 4], str.getloadavg
mov dword [esp], str.cannot_enforce_load_limit:
call fcn.00411e30
call edi
mov eax, dword [eax]
fldz
fstp qword [ebp - 0x60]
mov dword [0x4288d4], eax
xor ecx, ecx
mov dword [esp], ecx
call dword [sym.imp.msvcrt.dll_time]
mov edx, dword [0x431208]
fld dword [0x42bf4c]
cmp eax, edx
jle 0x40ee69
lea ecx, [eax - 1]
fldz
cmp edx, ecx
jne 0x40ee56
fstp st(0)
movd xmm0, dword [0x4311e4]
movq qword [ebp - 0x70], xmm0
fild qword [ebp - 0x70]
fmul st(1)
xor edx, edx
mov dword [0x431208], eax
mov dword [0x4311e4], edx
fstp qword [0x431200]
movd xmm0, dword [0x4311e4]
fld qword [ebp - 0x60]
movq qword [ebp - 0x70], xmm0
fild qword [ebp - 0x70]
fadd qword [0x431200]
fmulp st(2)
fadd st(1), st(0)
test byte [0x43154c], 4
je 0x40eece
movsd xmm2, qword [0x428e38]
mov dword [esp], str.Estimated_system_load___f__actual___f___max_requested___f__n
fstp qword [esp + 0xc]
movsd qword [esp + 0x14], xmm2
fst qword [esp + 4]
fstp qword [ebp - 0x78]
call fcn.0040c6f6
mov dword [esp], 1
call dword [0x428f14]
mov dword [esp], eax
call sub.msvcrt.dll_fflush
fld qword [ebp - 0x78]
jmp 0x40eed0
fstp st(0)
fld qword [0x428e38]
fxch st(1)
fcompi st(1)
fstp st(0)
setae al
movzx eax, al
test eax, eax
jne 0x40eeef
call fcn.0041df46
test eax, eax
je 0x40ef14
mov dword [esp + 4], 2
mov dword [esp], esi
call fcn.00405c22
mov eax, dword [0x43128c]
mov dword [0x43128c], ebx
mov dword [ebx + 0x14], eax
xor eax, eax
jmp 0x40efe8
mov eax, ebx
call fcn.0040df80
mov dl, byte [esi + 0x50]
mov eax, edx
shr al, 2
and eax, 3
cmp al, 2
je 0x40ef3f
cmp al, 3
je 0x40efd7
test al, al
je 0x40efd1
jmp 0x40efca
mov eax, dword [0x4311ec]
mov dword [ebx + 0x14], eax
mov eax, dword [ebx + 0x2c]
test eax, eax
jle 0x40efc4
test byte [0x43154c], 4
je 0x40efba
test byte [ebx + 0x30], 1
mov edx, str.__remote_
mov dword [esp + 8], eax
mov esi, 0x42b6b8
mov dword [esp + 4], 0x42b91d
cmovne esi, edx
mov dword [esp], 0x431220
call fcn.0040c726
mov dword [esp + 0x10], esi
mov dword [esp + 0xc], 0x431220
mov eax, dword [ebx + 0x18]
mov eax, dword [eax]
mov dword [esp + 4], ebx
mov dword [esp], str.Putting_child__p___s__PID__s_s_on_the_chain._n
mov dword [esp + 8], eax
call fcn.0040c6f6
mov dword [esp], 1
call dword [0x428f14]
mov dword [esp], eax
call sub.msvcrt.dll_fflush
inc dword [0x4311e8]
or byte [ebx + 0x30], 0x20
mov dword [0x4311ec], ebx
mov eax, 1
jmp 0x40efe8
and edx, 0xfffffffc
mov byte [esi + 0x50], dl
mov dword [esp], esi
call fcn.00417443
mov eax, ebx
call fcn.0040dbcb
jmp 0x40efca
add esp, 0x8c
pop ebx
pop esi
pop edi
pop ebp
ret