Function at 0x18023c5d0
Capabilities:
Read file on windows

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x18], r8
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x40
xor r14d, r14d
mov r13d, 0x5a
mov qword [rsp + 0x30], r14
mov r12, r9
mov dword [rsp + 0x88], r13d
mov rbx, r8
mov rdi, rdx
mov rbp, rcx
mov esi, r14d
mov r15d, r14d
test rdx, rdx
jne 0x18023c61d
xor eax, eax
jmp 0x18023c9b1
test rbx, rbx
je 0x18023c9ae
test r12, r12
je 0x18023c9ae
mov r8d, 8
lea rdx, str.sha256__
mov rcx, rdi
call fcn.180298c90
test eax, eax
jne 0x18023c7cf
mov rax, qword [0x180718360]
mov qword [rsp + 0x88], r14
mov qword [rsp + 0x30], r14
cmp qword [rax + 0xb8], rsi
je 0x18023c9ae
mov ecx, 0x20
call qword [fcn.180297cd0]
mov rsi, rax
test rax, rax
je 0x18023c726
mov r8, rax
mov r9d, 0x20
mov rax, qword [0x180718360]
mov rdx, r12
mov rcx, rbx
call qword [rax + 0xb8]
mov ebx, eax
test eax, eax
jne 0x18023c6d5
lea rax, [rsp + 0x88]
mov r8d, 0x20
lea r9, [rsp + 0x30]
mov qword [rsp + 0x20], rax
mov rdx, rsi
call fcn.18024e430
mov r15, qword [rsp + 0x88]
mov ebx, eax
mov r14, qword [rsp + 0x30]
mov rcx, rsi
call qword [fcn.18028d8d8]
test ebx, ebx
jne 0x18023c9a4
mov r8, r14
lea rdx, str._public_key_hash:_sha256___s
mov rcx, rbp
call fcn.180243220
mov rbx, 0xffffffffffffffff
nop
cmp byte [rdi + rbx + 1], 0
lea rbx, [rbx + 1]
jne 0x18023c700
lea rcx, [rbx + 1]
call qword [fcn.180297cd0]
mov rsi, rax
test rax, rax
jne 0x18023c730
mov rcx, r14
call qword [fcn.18028d8d8]
mov eax, 0x1b
jmp 0x18023c9b1
lea r8, [rbx + 1]
mov rdx, rdi
mov rcx, rsi
call fcn.1802bfb00
mov rdi, rsi
nop dword [rax]
nop word [rax + rax]
lea rdx, str._sha256__
mov rcx, rdi
call fcn.1802817d0
mov rbx, rax
test rax, rax
je 0x18023c76a
mov byte [rax], 0
lea rdx, [rdi + 8]
mov rax, 0xffffffffffffffff
inc rax
cmp byte [rdx + rax], 0
jne 0x18023c775
cmp r15, rax
jne 0x18023c792
mov r8, r15
mov rcx, r14
call fcn.1802c0540
test eax, eax
je 0x18023c7b3
test rbx, rbx
je 0x18023c7b8
lea rdx, str.sha256__
mov byte [rbx], 0x3b
mov rcx, rbx
call fcn.1802817d0
mov rdi, rax
test rax, rax
jne 0x18023c750
jmp 0x18023c7b8
xor eax, eax
mov r13d, eax
mov rcx, r14
call qword [fcn.18028d8d8]
mov rcx, rsi
call qword [fcn.18028d8d8]
jmp 0x18023c9ae
lea rdx, [0x1803215dc]
mov rcx, rdi
call fcn.18029855c
mov r13, rax
test rax, rax
je 0x18023c9a8
xor edx, edx
mov r8d, 2
mov rcx, rax
call fcn.18029551c
test eax, eax
jne 0x18023c985
mov rcx, r13
call fcn.180298be8
xor r8d, r8d
movsxd rbx, eax
xor edx, edx
mov rcx, r13
call fcn.18029551c
test eax, eax
jne 0x18023c985
cmp ebx, 0x100000
ja 0x18023c985
cmp r12, rbx
ja 0x18023c985
lea rcx, [rbx + 1]
call qword [fcn.180297cd0]
mov rsi, rax
test rax, rax
je 0x18023c985
mov r9, r13
mov r8d, 1
mov rdx, rbx
mov rcx, rax
call fcn.180295c78
cmp eax, 1
jne 0x18023c985
cmp r12, rbx
jne 0x18023c892
mov rcx, qword [rsp + 0x90]
mov r8, r12
mov rdx, rsi
call fcn.1802c0540
test eax, eax
jne 0x18023c985
mov ebx, r14d
jmp 0x18023c98a
lea rdx, str._____BEGIN_PUBLIC_KEY_____
mov byte [rbx + rsi], r14b
mov rcx, rsi
mov rdi, r14
call fcn.1802817d0
test rax, rax
je 0x18023c985
mov rbx, rax
sub rbx, rsi
je 0x18023c8c3
cmp byte [rax - 1], 0xa
jne 0x18023c985
add rbx, 0x1a
lea rdx, str._n_____END_PUBLIC_KEY_____
lea rcx, [rbx + rsi]
call fcn.1802817d0
mov rbp, rax
test rax, rax
je 0x18023c985
sub rbp, rsi
mov rcx, rbp
sub rcx, rbx
inc rcx
call qword [fcn.180297cd0]
mov r14, rax
test rax, rax
je 0x18023c985
cmp rbx, rbp
jae 0x18023c922
movzx ecx, byte [rsi + rbx]
cmp cl, 0xa
je 0x18023c91a
cmp cl, 0xd
je 0x18023c91a
mov byte [rax + rdi], cl
inc rdi
inc rbx
cmp rbx, rbp
jb 0x18023c906
lea r8, [rsp + 0x38]
mov byte [rax + rdi], r15b
lea rdx, [rsp + 0x30]
mov rcx, r14
call fcn.18024e1a0
mov rcx, r14
mov ebx, eax
call qword [fcn.18028d8d8]
mov r15, qword [rsp + 0x30]
test ebx, ebx
jne 0x18023c985
cmp r12, qword [rsp + 0x38]
jne 0x18023c97c
mov rcx, qword [rsp + 0x90]
mov r8, r12
mov rdx, r15
call fcn.1802c0540
test eax, eax
mov ecx, 0x5a
mov eax, 0
cmove ecx, eax
mov dword [rsp + 0x88], ecx
mov ebx, dword [rsp + 0x88]
jmp 0x18023c98a
mov ebx, 0x5a
mov rcx, rsi
call qword [fcn.18028d8d8]
mov rcx, r15
call qword [fcn.18028d8d8]
mov rcx, r13
call fcn.180296544
mov eax, ebx
jmp 0x18023c9b1
mov r13d, 0x5a
mov eax, r13d
mov rbx, qword [rsp + 0x80]
add rsp, 0x40
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret