Function at 0x1400154e0
Capabilities:
Read file on windows

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x31fe0]
mov eax, 0x320e0
call fcn.14001e620
sub rsp, rax
mov rax, qword [0x1400643c8]
xor rax, rsp
mov qword [rbp + 0x31fd0], rax
mov r13, r8
mov rbx, rdx
mov r14, rcx
mov qword [rsp + 0x50], rdx
cmp qword [rdx + 0x18], 0x10
jb 0x14001552e
mov rdx, qword [rdx]
xor edi, edi
mov qword [rsp + 0x78], rdi
mov qword [rbp - 0x78], rdi
mov qword [rbp - 0x70], 0xf
mov byte [rsp + 0x78], dil
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [rdx + r8], dil
jne 0x140015550
lea rcx, [rsp + 0x78]
call fcn.140005480
nop
mov qword [rsp + 0x58], rdi
mov qword [rsp + 0x68], rdi
mov qword [rsp + 0x70], 0xf
mov byte [rsp + 0x58], 0
mov edx, 0x98967f
mov ecx, 0xf4240
call fcn.140003420
mov r12d, eax
mov qword [rsp + 0x20], rdi
mov qword [rsp + 0x38], 0xf
mov qword [rsp + 0x30], 4
mov dword [rsp + 0x20], eax
mov byte [rsp + 0x24], 0
lea rax, [rsp + 0x20]
mov qword [rsp + 0x40], rax
mov r9d, 4
lea r8, [rsp + 0x20]
xor edx, edx
lea rcx, [rsp + 0x58]
call fcn.140018db0
movsxd rsi, dword [rsp + 0x30]
mov rdx, qword [rsp + 0x38]
cmp rdx, 0x10
jb 0x140015611
inc rdx
mov rcx, qword [rsp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001560c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140015b96
call fcn.14001df5c
lea rcx, [rsp + 0x78]
cmp qword [rbp - 0x70], 0x10
cmovae rcx, qword [rsp + 0x78]
lea rdx, [rbp - 0x68]
call fcn.14002aa10
mov qword [rsp + 0x20], rdi
mov qword [rsp + 0x38], 0xf
mov qword [rsp + 0x30], 4
mov eax, dword [rbp - 0x54]
mov dword [rsp + 0x20], eax
mov byte [rsp + 0x24], 0
lea rax, [rsp + 0x20]
mov qword [rsp + 0x40], rax
lea rdx, [rsp + 0x24]
lea rcx, [rsp + 0x20]
call fcn.14001cf40
mov rdx, rsi
lea r8, [rsp + 0x20]
cmp qword [rsp + 0x38], 0x10
cmovae r8, qword [rsp + 0x20]
mov r9, qword [rsp + 0x30]
lea rcx, [rsp + 0x58]
call fcn.140018db0
add esi, dword [rsp + 0x30]
mov rdx, qword [rsp + 0x38]
cmp rdx, 0x10
jb 0x1400156ca
inc rdx
mov rcx, qword [rsp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400156c5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140015b9c
call fcn.14001df5c
lea rdx, [rsp + 0x78]
lea rcx, [rsp + 0x20]
call fcn.140003bf0
mov rdi, rax
mov qword [rsp + 0x40], rax
movsxd rdx, esi
mov r8, rax
cmp qword [rax + 0x18], 0x10
jb 0x1400156f1
mov r8, qword [rax]
mov r9, qword [rax + 0x10]
lea rcx, [rsp + 0x58]
call fcn.140018db0
nop
mov rdx, qword [rdi + 0x18]
cmp rdx, 0x10
jb 0x14001573a
mov rcx, qword [rdi]
inc rdx
cmp rdx, 0x1000
jb 0x140015735
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x140015ba2
mov rcx, r8
call fcn.14001df5c
xor esi, esi
mov qword [rdi + 0x10], rsi
mov qword [rdi + 0x18], 0xf
mov byte [rdi], sil
mov rax, qword [r14]
lea r8, [rsp + 0x58]
lea edx, [rsi + 2]
mov rcx, r14
call qword [rax + 0x10]
lea rcx, [rsp + 0x78]
cmp qword [rbp - 0x70], 0x10
cmovae rcx, qword [rsp + 0x78]
mov edx, 0x8000
call fcn.14003405c
mov r15d, eax
cmp eax, 0xffffffff
jne 0x140015863
mov rdx, qword [rsp + 0x70]
cmp rdx, 0x10
jb 0x1400157bf
inc rdx
mov rcx, qword [rsp + 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400157ba
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140015ba8
call fcn.14001df5c
mov qword [rsp + 0x68], rsi
mov qword [rsp + 0x70], 0xf
mov byte [rsp + 0x58], 0
mov rdx, qword [rbp - 0x70]
cmp rdx, 0x10
jb 0x14001580e
inc rdx
mov rcx, qword [rsp + 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140015809
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140015b8a
call fcn.14001df5c
mov qword [rbp - 0x78], rsi
mov qword [rbp - 0x70], 0xf
mov byte [rsp + 0x78], 0
mov rdx, qword [rbx + 0x18]
cmp rdx, 0x10
jb 0x140015859
inc rdx
mov rcx, qword [rbx]
cmp rdx, 0x1000
jb 0x140015854
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x140015b90
mov rcx, r8
call fcn.14001df5c
mov eax, 1
jmp 0x140015b51
mov r8d, 0x32000
lea rdx, [rbp - 0x30]
mov ecx, r15d
call fcn.140034a38
mov edi, eax
test eax, eax
je 0x1400159e5
lea rax, [rsp + 0x20]
mov qword [rsp + 0x40], rax
nop dword [rax]
mov qword [rsp + 0x68], rsi
lea rcx, [rsp + 0x58]
cmp qword [rsp + 0x70], 0x10
cmovae rcx, qword [rsp + 0x58]
mov byte [rcx], 0
mov qword [rsp + 0x20], rsi
mov qword [rsp + 0x38], 0xf
mov qword [rsp + 0x30], 4
mov dword [rsp + 0x20], r12d
mov byte [rsp + 0x24], 0
mov r9d, 4
lea r8, [rsp + 0x20]
xor edx, edx
lea rcx, [rsp + 0x58]
call fcn.140018db0
movsxd rsi, dword [rsp + 0x30]
mov rdx, qword [rsp + 0x38]
cmp rdx, 0x10
jb 0x140015923
inc rdx
mov rcx, qword [rsp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001591e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140015bae
call fcn.14001df5c
xor eax, eax
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x38], 0xf
movsxd r8, edi
lea rdx, [rbp - 0x30]
lea rcx, [rsp + 0x20]
call fcn.140005480
lea rax, [rsp + 0x20]
mov qword [rsp + 0x48], rax
mov rdx, rsi
lea r8, [rsp + 0x20]
cmp qword [rsp + 0x38], 0x10
cmovae r8, qword [rsp + 0x20]
mov r9, qword [rsp + 0x30]
lea rcx, [rsp + 0x58]
call fcn.140018db0
nop
mov rdx, qword [rsp + 0x38]
cmp rdx, 0x10
jb 0x1400159b4
inc rdx
mov rcx, qword [rsp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400159af
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140015bb4
call fcn.14001df5c
mov rax, qword [r14]
lea r8, [rsp + 0x58]
mov edx, 8
mov rcx, r14
call qword [rax + 0x10]
mov r8d, 0x32000
lea rdx, [rbp - 0x30]
mov ecx, r15d
call fcn.140034a38
mov edi, eax
xor esi, esi
test eax, eax
jne 0x140015890
mov ecx, r15d
call fcn.1400337a0
mov qword [rsp + 0x68], rsi
lea rax, [rsp + 0x58]
cmp qword [rsp + 0x70], 0x10
cmovae rax, qword [rsp + 0x58]
mov byte [rax], 0
mov qword [rsp + 0x20], rsi
mov qword [rsp + 0x38], 0xf
mov qword [rsp + 0x30], 4
mov dword [rsp + 0x20], r12d
mov byte [rsp + 0x24], 0
lea rax, [rsp + 0x20]
mov qword [rsp + 0x48], rax
mov r9d, 4
lea r8, [rsp + 0x20]
xor edx, edx
lea rcx, [rsp + 0x58]
call fcn.140018db0
nop
lea rcx, [rsp + 0x20]
call fcn.140002c80
lea rax, [rsp + 0x58]
cmp r13, rax
je 0x140015a7c
lea rdx, [rsp + 0x58]
cmp qword [rsp + 0x70], 0x10
cmovae rdx, qword [rsp + 0x58]
mov r8, qword [rsp + 0x68]
mov rcx, r13
call fcn.140005480
nop
mov rdx, qword [rsp + 0x70]
cmp rdx, 0x10
jb 0x140015ab9
inc rdx
mov rcx, qword [rsp + 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140015ab4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140015ba8
call fcn.14001df5c
mov qword [rsp + 0x68], rsi
mov qword [rsp + 0x70], 0xf
mov byte [rsp + 0x58], 0
mov rdx, qword [rbp - 0x70]
cmp rdx, 0x10
jb 0x140015b08
inc rdx
mov rcx, qword [rsp + 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140015b03
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140015b8a
call fcn.14001df5c
mov qword [rbp - 0x78], rsi
mov qword [rbp - 0x70], 0xf
mov byte [rsp + 0x78], 0
mov rdx, qword [rbx + 0x18]
cmp rdx, 0x10
jb 0x140015b4f
inc rdx
mov rcx, qword [rbx]
cmp rdx, 0x1000
jb 0x140015b4a
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x140015b90
mov rcx, r8
call fcn.14001df5c
xor eax, eax
mov qword [rbx + 0x10], rsi
mov qword [rbx + 0x18], 0xf
mov byte [rbx], 0
mov rcx, qword [rbp + 0x31fd0]
xor rcx, rsp
call fcn.14001df00
mov rbx, qword [rsp + 0x32138]
add rsp, 0x320e0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.140024798
nop
call fcn.140024798
nop
call fcn.140024798
int3
call fcn.140024798
int3
call fcn.140024798
nop
call fcn.140024798
nop
call fcn.140024798
int3
call fcn.140024798
int3