Function at 0x1400655d0
Capabilities:
Read file on windows

Disassembly:
mov dword [rsp + 0x10], edx
mov qword [rsp + 8], rcx
push rbx
push rsi
push rdi
push r14
push r15
sub rsp, 0xa0
mov qword [rsp + 0x60], 0xfffffffffffffffe
mov rbx, rcx
mov rax, qword [rcx + 0x128]
mov qword [rsp + 0x30], rax
mov rax, qword [rcx + 0x30]
mov qword [rsp + 0x38], rax
mov rax, qword [rcx + 0x98]
mov qword [rsp + 0x40], rax
xor r14d, r14d
or r15, 0xffffffffffffffff
nop dword [rax + rax]
mov rcx, rbx
call fcn.140065530
test al, al
je 0x140065879
cmp byte [rbx + 0x10], r14b
je 0x140065646
mov rcx, rbx
call fcn.1400658d0
test al, al
je 0x14006574e
mov dword [rsp + 0xd8], r14d
lea rax, [rbx + 0x18]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0xd8]
mov r8d, 0x1000
mov rdx, qword [rbx + 0x60]
mov rcx, qword [rbx + 0x40]
call qword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
jne 0x140065706
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x6d
je 0x1400656d2
cmp eax, 0x3e5
je 0x1400656cc
lea rax, str.Channel_read_failure
mov qword [rsp + 0xe0], rax
lea rdx, [rsp + 0xe0]
lea rcx, [rsp + 0x68]
call fcn.1400d6c68
nop
lea rax, vtable.CRSimpleIPCException.0
mov qword [rsp + 0x68], rax
lea rdx, [0x140198428]
lea rcx, [rsp + 0x68]
call fcn.1400db6b8
mov byte [rbx + 0x10], 1
jmp 0x140065706
lea rcx, [rsp + 0x48]
call fcn.1400d6ce0
nop
lea rax, vtable.CRSimpleIPCException.0
mov qword [rsp + 0x48], rax
lea rax, vtable.CRSimpleIPCExceptionDisconnected.0
mov qword [rsp + 0x48], rax
lea rdx, [0x1401983e0]
lea rcx, [rsp + 0x48]
call fcn.1400db6b8
cmp byte [rbx + 0x10], r14b
jne 0x14006574e
mov rsi, qword [rbx + 0x50]
sub rsi, qword [rbx + 0x48]
mov edx, dword [rsp + 0xd8]
add rdx, rsi
lea rcx, [rbx + 0x48]
call fcn.1400359b0
mov rcx, qword [rbx + 0x48]
mov r8d, dword [rsp + 0xd8]
add rcx, rsi
mov rdx, qword [rbx + 0x60]
call fcn.1400d3810
mov rcx, qword [rbx + 0x38]
call qword [sym.imp.KERNEL32.dll_ResetEvent]
mov sil, 1
jmp 0x140065751
xor sil, sil
mov rcx, rbx
call fcn.140065b40
movzx edi, al
mov rcx, rbx
call fcn.140066040
or dil, sil
je 0x14006576e
jmp 0x140065620
mov r9d, 0x7530
xor r8d, r8d
lea rdx, [rsp + 0x30]
lea ecx, [r8 + 3]
call qword [sym.imp.KERNEL32.dll_WaitForMultipleObjects]
test eax, eax
jne 0x14006579c
mov rcx, qword [rbx + 0x128]
call qword [sym.imp.KERNEL32.dll_ResetEvent]
jmp 0x140065620
cmp eax, 3
jae 0x1400657b6
mov rcx, rbx
call fcn.1400658d0
mov rcx, rbx
call fcn.140065e80
jmp 0x14006583a
cmp eax, 0x102
jne 0x140065847
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x1400657d0
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov r8d, dword [0x1401d5d60]
lea ecx, [r8 + 1]
imul ecx, r8d
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 3
mov eax, edx
shr eax, 0x1f
add edx, eax
imul edx, edx, 0xe
sub ecx, edx
cmp ecx, 0xb
jne 0x14006583a
mov eax, 0x51eb851f
imul r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
imul edx, edx, 0x64
sub r8d, edx
add r8d, 0x2f4
movsxd rcx, r8d
mov eax, 4
mul rcx
cmovo rax, r15
mov rcx, rax
call fcn.1400d2e28
mov rcx, rax
call fcn.1400d3f08
mov rcx, rbx
call fcn.140066040
jmp 0x140065620
lea rcx, [rsp + 0x80]
call fcn.1400d6ce0
nop
lea rax, vtable.CRSimpleIPCException.0
mov qword [rsp + 0x80], rax
lea rdx, [0x140198428]
lea rcx, [rsp + 0x80]
call fcn.1400db6b8
nop
add rsp, 0xa0
pop r15
pop r14
pop rdi
pop rsi
pop rbx
ret