Function at 0x14011bf20
Capabilities:
Read file on windows

Disassembly:
push rbp
push rbx
push rsi
push r13
push r14
push r15
lea rbp, [rsp - 0x3a8]
sub rsp, 0x4a8
mov rax, qword [0x14021b540]
xor rax, rsp
mov qword [rbp + 0x380], rax
mov r14, r9
mov r13, r8
mov rsi, rdx
mov r15, rcx
mov ebx, 0x5a
test rdx, rdx
jne 0x14011bf67
xor eax, eax
jmp 0x14011c338
mov qword [rsp + 0x4a0], rdi
mov qword [rsp + 0x498], r12
test r13, r13
je 0x14011c326
test r14, r14
je 0x14011c326
mov r8d, 8
lea rdx, str.sha256__
mov rcx, rsi
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncmp]
xor r12d, r12d
mov qword [rsp + 0x28], r12
test eax, eax
jne 0x14011c103
mov rax, qword [0x14021a6d8]
mov qword [rsp + 0x20], r12
cmp qword [rax + 0xb0], r12
je 0x14011c326
mov ecx, 0x20
call qword [0x14021a550]
mov rdi, rax
test rax, rax
je 0x14011c057
mov r8, rax
mov r9d, 0x20
mov rax, qword [0x14021a6d8]
mov rdx, r14
mov rcx, r13
call qword [rax + 0xb0]
mov ebx, eax
test eax, eax
jne 0x14011c016
lea r9, [rsp + 0x28]
mov edx, 0x20
lea r8, [rsp + 0x20]
mov rcx, rdi
call fcn.14014aa40
mov ebx, eax
mov rcx, rdi
call qword [0x14021a558]
test ebx, ebx
jne 0x14011c326
mov r8, qword [rsp + 0x20]
lea rdx, str._public_key_hash:_sha256___s
mov rcx, r15
call fcn.140124a10
mov rcx, rsi
call qword [case.0x14011e4bc.1]
mov rsi, rax
test rax, rax
jne 0x14011c061
mov rcx, qword [rsp + 0x20]
call qword [0x14021a558]
mov eax, 0x1b
jmp 0x14011c328
mov rdi, rsi
nop dword [rax]
nop dword [rax + rax]
lea rdx, str._sha256__
mov rcx, rdi
call sub.VCRUNTIME140.dll_strstr
mov rbx, rax
test rax, rax
je 0x14011c08a
mov byte [rax], r12b
lea rdx, [rdi + 8]
mov rax, 0xffffffffffffffff
inc rax
cmp byte [rdx + rax], r12b
jne 0x14011c095
mov r8, qword [rsp + 0x28]
mov rdi, qword [rsp + 0x20]
cmp r8, rax
jne 0x14011c0b9
mov rcx, rdi
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x14011c0fe
test rbx, rbx
je 0x14011c0dd
lea rdx, str.sha256__
mov byte [rbx], 0x3b
mov rcx, rbx
call sub.VCRUNTIME140.dll_strstr
mov rdi, rax
test rax, rax
jne 0x14011c070
mov rdi, qword [rsp + 0x20]
mov ebx, 0x5a
mov rcx, rdi
call qword [0x14021a558]
mov rcx, rsi
mov qword [rsp + 0x20], r12
call qword [0x14021a558]
jmp 0x14011c326
mov ebx, r12d
jmp 0x14011c0e2
lea rdx, [0x140195868]
mov rcx, rsi
call sub.api_ms_win_crt_stdio_l1_1_0.dll_fopen
mov r15, rax
test rax, rax
je 0x14011c326
mov edx, 0x100000
lea rcx, [rsp + 0x38]
call fcn.140114430
xor edx, edx
mov r8d, 2
mov rcx, r15
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fseek]
test eax, eax
jne 0x14011c303
mov rcx, r15
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_ftell]
xor r8d, r8d
xor edx, edx
mov rcx, r15
movsxd rbx, eax
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fseek]
test eax, eax
jne 0x14011c2fe
cmp ebx, 0x100000
ja 0x14011c2fe
mov rcx, rbx
call fcn.140128aa0
mov rsi, rax
cmp r14, rax
ja 0x14011c2fe
mov rdi, rax
mov eax, 0x400
cmp rdi, rax
lea rcx, [rbp - 0x80]
mov rbx, rdi
mov r9, r15
cmova rbx, rax
mov edx, 1
mov r8, rbx
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fread]
cmp rbx, rax
jne 0x14011c2fe
mov r8, rbx
lea rdx, [rbp - 0x80]
lea rcx, [rsp + 0x38]
call fcn.1401143f0
test eax, eax
jne 0x14011c2fe
mov eax, 0x400
sub rdi, rbx
jne 0x14011c190
lea rcx, [rsp + 0x38]
call fcn.140046bc0
cmp r14, rsi
jne 0x14011c208
mov rdx, rax
mov r8, r14
mov rcx, r13
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x14011c2fe
mov ebx, r12d
jmp 0x14011c303
mov rsi, rax
test rax, rax
je 0x14011c2fe
mov edx, 0x100000
lea rcx, [rsp + 0x58]
call fcn.140114430
lea rdx, str._____BEGIN_PUBLIC_KEY_____
mov rcx, rsi
call sub.VCRUNTIME140.dll_strstr
test rax, rax
je 0x14011c2fe
mov rbx, rax
sub rbx, rsi
je 0x14011c24d
cmp byte [rax - 1], 0xa
jne 0x14011c2fe
add rbx, 0x1a
lea rdx, str._n_____END_PUBLIC_KEY_____
lea rcx, [rbx + rsi]
call sub.VCRUNTIME140.dll_strstr
mov rdi, rax
test rax, rax
je 0x14011c2fe
sub rdi, rsi
cmp rbx, rdi
jae 0x14011c2ae
nop word [rax + rax]
movzx ecx, byte [rbx + rsi]
lea rdx, [rbx + rsi]
cmp cl, 0xa
je 0x14011c2a6
cmp cl, 0xd
je 0x14011c2a6
mov r8d, 1
lea rcx, [rsp + 0x58]
call fcn.1401143f0
test eax, eax
jne 0x14011c2fe
inc rbx
cmp rbx, rdi
jb 0x14011c280
lea rcx, [rsp + 0x58]
call fcn.140046bc0
mov rcx, rax
lea r8, [rsp + 0x30]
lea rdx, [rsp + 0x28]
call fcn.14014a7b0
lea rcx, [rsp + 0x58]
mov ebx, eax
call fcn.140114400
test ebx, ebx
jne 0x14011c2fe
cmp r14, qword [rsp + 0x30]
jne 0x14011c2fe
mov rdx, qword [rsp + 0x28]
mov r8, r14
mov rcx, r13
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
mov ebx, 0x5a
cmove ebx, r12d
jmp 0x14011c303
mov ebx, 0x5a
lea rcx, [rsp + 0x38]
call fcn.140114400
mov rcx, qword [rsp + 0x28]
call qword [0x14021a558]
mov rcx, r15
mov qword [rsp + 0x28], r12
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
mov eax, ebx
mov rdi, qword [rsp + 0x4a0]
mov r12, qword [rsp + 0x498]
mov rcx, qword [rbp + 0x380]
xor rcx, rsp
call fcn.1401767c0
add rsp, 0x4a8
pop r15
pop r14
pop r13
pop rsi
pop rbx
pop rbp
ret