Function at 0x14002d870
Capabilities:
Read file on windows

Disassembly:
mov qword [rsp + 8], rcx
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r15
sub rsp, 0x30
xor r13d, r13d
mov rbx, r9
mov qword [rsp + 0x70], r13
mov r15, r8
mov rdi, rdx
mov esi, r13d
mov ebp, r13d
lea r12d, [r13 + 0x5a]
test rdx, rdx
jne 0x14002d8b4
xor eax, eax
add rsp, 0x30
pop r15
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
mov qword [rsp + 0x80], r14
test r15, r15
je 0x14002db59
test rbx, rbx
je 0x14002db59
mov r8d, 8
lea rdx, str.sha256__
mov rcx, rdi
call fcn.140066900
test eax, eax
jne 0x14002da4d
mov rax, qword [case.0x140025fe9.2]
cmp qword [rax + 0xb8], rsi
je 0x14002db59
mov ecx, 0x20
call qword [fcn.140064568]
mov rsi, rax
test rax, rax
je 0x14002d99c
mov r8, rax
mov r9d, 0x20
mov rax, qword [case.0x140025fe9.2]
mov rdx, rbx
mov rcx, r15
call qword [rax + 0xb8]
test eax, eax
jne 0x14002db5c
lea rax, [rsp + 0x78]
mov r8d, 0x20
lea r9, [rsp + 0x70]
mov qword [rsp + 0x20], rax
mov rdx, rsi
call fcn.140045d70
mov rcx, rsi
mov ebx, eax
call qword [fcn.140063070]
test ebx, ebx
je 0x14002d96d
mov eax, ebx
jmp 0x14002db5c
mov rbx, 0xffffffffffffffff
cmp byte [rdi + rbx + 1], bpl
lea rbx, [rbx + 1]
jne 0x14002d974
lea rcx, [rbx + 1]
call qword [fcn.140064568]
mov r14, rax
test rax, rax
jne 0x14002d9a6
mov rcx, qword [rsp + 0x70]
call qword [fcn.140063070]
mov eax, 0x1b
jmp 0x14002db5c
lea r8, [rbx + 1]
mov rdx, rdi
mov rcx, r14
call fcn.140058ec0
mov rsi, qword [rsp + 0x78]
mov rdi, r14
mov rbp, qword [rsp + 0x70]
nop dword [rax]
nop word [rax + rax]
lea rdx, str._sha256__
mov rcx, rdi
call fcn.14005a98c
mov rbx, rax
test rax, rax
je 0x14002d9ea
mov byte [rax], r13b
lea rdx, [rdi + 8]
mov rax, 0xffffffffffffffff
inc rax
cmp byte [rdx + rax], r13b
jne 0x14002d9f5
cmp rsi, rax
jne 0x14002da12
mov r8, rsi
mov rcx, rbp
call fcn.14005a4d0
test eax, eax
je 0x14002da33
test rbx, rbx
je 0x14002da36
lea rdx, str.sha256__
mov byte [rbx], 0x3b
mov rcx, rbx
call fcn.14005a98c
mov rdi, rax
test rax, rax
jne 0x14002d9d0
jmp 0x14002da36
mov r12d, r13d
mov rcx, rbp
call qword [fcn.140063070]
mov rcx, r14
call qword [fcn.140063070]
jmp 0x14002db59
lea rdx, [0x1400a572c]
mov rcx, rdi
call fcn.140065c2c
mov r14, rax
test rax, rax
je 0x14002db59
xor edx, edx
mov rcx, rax
lea r8d, [rdx + 2]
call fcn.14005f634
test eax, eax
jne 0x14002db3f
mov rcx, r14
call fcn.14006da24
xor r8d, r8d
movsxd rdi, eax
xor edx, edx
mov rcx, r14
call fcn.14005f634
test eax, eax
jne 0x14002db3f
cmp edi, 0x100000
ja 0x14002db3f
mov rcx, rdi
call fcn.1400225e0
mov rdi, rax
cmp rbx, rax
ja 0x14002db3f
lea rcx, [rax + 1]
call qword [fcn.140064568]
mov rsi, rax
test rax, rax
je 0x14002db3f
mov r9, r14
mov r8d, 1
mov rdx, rdi
mov rcx, rax
call fcn.14005f324
cmp eax, 1
jne 0x14002db3f
cmp rbx, rdi
jne 0x14002db05
mov r8, rbx
mov rdx, rsi
mov rcx, r15
call fcn.14005a4d0
test eax, eax
jne 0x14002db3f
mov r12d, r13d
jmp 0x14002db3f
lea r8, [rsp + 0x78]
mov byte [rdi + rsi], bpl
lea rdx, [rsp + 0x70]
mov rcx, rsi
call fcn.14002d760
mov rbp, qword [rsp + 0x70]
test eax, eax
jne 0x14002db3f
cmp rbx, qword [rsp + 0x78]
jne 0x14002db3f
mov r8, rbx
mov rdx, rbp
mov rcx, r15
call fcn.14005a4d0
test eax, eax
cmove r12d, r13d
mov rcx, rsi
call qword [fcn.140063070]
mov rcx, rbp
call qword [fcn.140063070]
mov rcx, r14
call fcn.14005ea18
mov eax, r12d
mov r14, qword [rsp + 0x80]
add rsp, 0x30
pop r15
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret