Function at 0x140017c00
Capabilities:
Read file on windows

Disassembly:
push rbx
push rsi
push rdi
push r12
push r13
sub rsp, 0x80
mov qword [rsp + 0x60], 0xfffffffffffffffe
mov r12, rcx
xor r13d, r13d
mov qword [rsp + 0x50], r13
mov qword [rsp + 0x48], r13
lea rcx, [0x140072cb0]
call fcn.140018510
mov rdx, qword [0x140072cd8]
mov rdx, qword [rdx + 8]
lea rcx, [0x140072cd0]
call fcn.140003a60
mov r11, qword [0x140072cd8]
mov qword [r11 + 8], r11
mov rax, qword [0x140072cd8]
mov qword [rax], rax
mov rax, qword [0x140072cd8]
mov qword [rax + 0x10], rax
mov qword [0x140072ce0], r13
or r8, 0xffffffffffffffff
xor edx, edx
lea rcx, [0x140072c60]
call fcn.140002cb0
or r8, 0xffffffffffffffff
xor edx, edx
lea rcx, [0x140072c88]
call fcn.140002cb0
nop
cmp qword [r12 + 0x18], 8
jb 0x140017ca5
mov rcx, qword [r12]
jmp 0x140017ca8
mov rcx, r12
mov qword [rsp + 0x30], r13
mov dword [rsp + 0x28], 0x80
mov dword [rsp + 0x20], 3
xor r9d, r9d
mov edx, 0x80000000
lea r8d, [r9 + 3]
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov rbx, rax
mov qword [rsp + 0x58], rax
cmp rax, 0xffffffffffffffff
jne 0x140017ce4
xor al, al
jmp 0x14001806c
mov r9d, 2
xor r8d, r8d
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_SetFilePointer]
test eax, eax
jns 0x140017d0c
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
xor al, al
jmp 0x14001806c
jne 0x140017d26
mov rcx, r12
call fcn.140017990
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov al, 1
jmp 0x14001806c
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_SetFilePointer]
mov qword [rsp + 0x20], r13
lea r9, [rsp + 0xb8]
mov r8d, 4
lea rdx, [rsp + 0xc8]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
je 0x14001805d
cmp dword [rsp + 0xb8], 4
jne 0x14001805d
mov eax, dword [rsp + 0xc8]
mov rcx, rbx
cmp eax, dword [str.PS]
je 0x140017d90
call qword [sym.imp.KERNEL32.dll_CloseHandle]
xor al, al
jmp 0x14001806c
mov qword [rsp + 0x20], r13
lea r9, [rsp + 0xb8]
mov r8d, 8
lea rdx, [rsp + 0x68]
call qword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
je 0x140018050
cmp dword [rsp + 0xb8], 8
jne 0x140018050
mov qword [rsp + 0x20], r13
lea r9, [rsp + 0xb8]
mov r8d, 2
lea rdx, [rsp + 0xb0]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
je 0x140018043
cmp dword [rsp + 0xb8], 2
jne 0x140018043
movzx eax, word [rsp + 0xb0]
test ax, ax
jle 0x140018043
movsx rcx, ax
call fcn.140026dfc
mov rdi, rax
mov qword [rsp + 0x50], rax
movsx r8d, word [rsp + 0xb0]
mov qword [rsp + 0x20], r13
lea r9, [rsp + 0xb8]
mov rdx, rax
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
je 0x14001802e
movsx eax, word [rsp + 0xb0]
cmp eax, dword [rsp + 0xb8]
jne 0x14001802e
mov qword [rsp + 0x20], r13
lea r9, [rsp + 0xb8]
mov r8d, 4
lea rdx, [rsp + 0x40]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
je 0x140018019
cmp dword [rsp + 0xb8], 4
jne 0x140018019
cmp dword [rsp + 0x40], 1
jne 0x140018019
mov qword [rsp + 0x20], r13
lea r9, [rsp + 0xb8]
mov r8d, 4
lea rdx, [rsp + 0xc0]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
je 0x140018004
cmp dword [rsp + 0xb8], 4
jne 0x140018004
mov eax, dword [rsp + 0xc0]
test eax, eax
je 0x140017fe6
mov ecx, eax
call fcn.140026dfc
mov rsi, rax
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x20], r13
lea r9, [rsp + 0xb8]
mov r8d, dword [rsp + 0xc0]
mov rdx, rax
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
je 0x140017fc6
mov edx, dword [rsp + 0xc0]
cmp dword [rsp + 0xb8], edx
jne 0x140017fc6
lea rax, vtable.piy::CDesEnc.0
mov qword [rsp + 0x70], rax
movsx eax, word [rsp + 0xb0]
mov r8d, edx
and r8d, 0xfffffff8
je 0x140017f96
mov byte [rsp + 0x28], 1
mov dword [rsp + 0x20], eax
mov r9, rdi
mov rdx, rsi
mov rcx, rsi
call fcn.140019ce0
test al, al
jne 0x140017f8f
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, rdi
call fcn.140027b08
mov rcx, rsi
call fcn.140027b08
nop
xor al, al
jmp 0x14001806c
mov edx, dword [rsp + 0xc0]
mov rcx, rsi
call fcn.140017150
mov rcx, rsi
test al, al
jne 0x140017fba
call fcn.140027b08
mov rcx, rdi
call fcn.140027b08
nop
xor al, al
jmp 0x14001806c
call fcn.140027b08
mov qword [rsp + 0x48], r13
jmp 0x140017fe6
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, rdi
call fcn.140027b08
mov rcx, rsi
call fcn.140027b08
xor al, al
jmp 0x14001806c
mov rcx, rdi
call fcn.140027b08
nop
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, r12
call fcn.140017990
mov al, 1
jmp 0x14001806c
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, rdi
call fcn.140027b08
xor al, al
jmp 0x14001806c
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, rdi
call fcn.140027b08
xor al, al
jmp 0x14001806c
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, rdi
call fcn.140027b08
xor al, al
jmp 0x14001806c
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
xor al, al
jmp 0x14001806c
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
xor al, al
jmp 0x14001806c
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
xor al, al
jmp 0x14001806c
add rsp, 0x80
pop r13
pop r12
pop rdi
pop rsi
pop rbx
ret