Function at 0x14001f610
Capabilities:
Hash data using sha1
Read file on windows

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0xb0]
sub rsp, 0x1b0
mov rax, qword [0x1400690b8]
xor rax, rsp
mov qword [rbp + 0xa0], rax
mov rdi, rdx
mov r15, rcx
mov qword [rsp + 0x70], rcx
xor esi, esi
mov ebx, esi
mov qword [rsp + 0x30], rsi
mov dword [rsp + 0x28], 0x80
mov dword [rsp + 0x20], 3
xor r9d, r9d
mov edx, 0x80000000
lea r8d, [rsi + 7]
mov rcx, rdi
call qword [0x140069020]
mov r14, rax
cmp rax, 0xffffffffffffffff
jne 0x14001f6e7
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x20
je 0x14001f692
cmp eax, 2
jne 0x14001f6e1
test ebx, ebx
jle 0x14001f6e1
mov ecx, 0xc8
cmp ebx, ecx
cmovl ecx, ebx
call qword [sym.imp.KERNEL32.dll_Sleep]
sub ebx, 0xc8
mov qword [rsp + 0x30], rsi
mov dword [rsp + 0x28], 0x80
mov dword [rsp + 0x20], 3
xor r9d, r9d
mov edx, 0x80000000
lea r8d, [r9 + 7]
mov rcx, rdi
call qword [0x140069020]
mov r14, rax
cmp rax, 0xffffffffffffffff
je 0x14001f682
jmp 0x14001f6e7
cmp r14, 0xffffffffffffffff
je 0x14001f6ec
test r14, r14
jne 0x14001f705
mov qword [r15], rsi
mov qword [r15 + 0x10], rsi
mov r14d, reloc.WS2_32.dll_ntohs
mov qword [r15 + 0x18], r14
mov byte [r15], sil
jmp 0x14001fac9
mov ecx, 0x2000
call fcn.140028ffc
mov r12, rax
mov qword [rbp - 0x78], rax
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp - 0x50], xmm0
movups xmmword [rbp - 0x40], xmm0
movups xmmword [rbp - 0x30], xmm0
movups xmmword [rbp - 0x20], xmm0
movups xmmword [rbp - 0x10], xmm0
movups xmmword [rbp], xmm0
mov qword [rbp + 0x10], rax
mov dword [rbp - 0x50], 0x67452301
mov dword [rbp - 0x4c], 0xefcdab89
mov dword [rbp - 0x48], 0x98badcfe
mov dword [rbp - 0x44], 0x10325476
mov dword [rbp - 0x40], 0xc3d2e1f0
mov qword [rbp - 0x38], rsi
mov qword [rbp - 0x30], rsi
cmp qword [0x14006b6c8], rax
jne 0x14001f79a
xor ecx, ecx
cpuid
cmp eax, 7
jl 0x14001f78c
mov eax, 7
xor ecx, ecx
cpuid
shr ebx, 0x1d
and bl, 1
lea rax, [0x1400051e0]
jne 0x14001f793
lea rax, [0x140003fb0]
mov qword [0x14006b6c8], rax
mov r13d, 0x40
mov qword [rsp + 0x20], rsi
lea r9, [rsp + 0x50]
mov r8d, 0x2000
mov rdx, r12
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
jne 0x14001f7c9
mov rbx, 0xffffffffffffffff
jmp 0x14001f7d6
mov ebx, dword [rsp + 0x50]
test rbx, rbx
je 0x14001f897
mov qword [rsp + 0x58], rbx
mov rdi, qword [rbp - 0x38]
mov rax, r13
sub rax, rdi
mov rsi, rbx
cmp rax, rbx
cmovbe rsi, rax
lea rcx, [rbp - 0x28]
add rcx, rdi
mov r8, rsi
mov rdx, r12
call fcn.14002e920
add rdi, rsi
sub rbx, rsi
mov qword [rsp + 0x58], rbx
cmp rdi, r13
jae 0x14001f819
mov qword [rbp - 0x38], rdi
xor esi, esi
jmp 0x14001f7a0
mov qword [rsp + 0x78], r13
lea rax, [rbp - 0x28]
mov qword [rsp + 0x48], rax
lea r8, [rsp + 0x78]
lea rdx, [rsp + 0x48]
lea rcx, [rbp - 0x50]
mov rax, qword [0x14006b6c8]
call qword [0x1400533a8]
lea rax, [rsi + r12]
mov qword [rsp + 0x48], rax
lea r8, [rsp + 0x58]
lea rdx, [rsp + 0x48]
lea rcx, [rbp - 0x50]
mov rax, qword [0x14006b6c8]
call qword [0x1400533a8]
mov rbx, qword [rsp + 0x58]
test rbx, rbx
je 0x14001f88c
mov r8, rbx
mov rdx, qword [rsp + 0x48]
lea rcx, [rbp - 0x28]
call fcn.14002e920
mov qword [rbp - 0x38], rbx
xor esi, esi
jmp 0x14001f7a0
xor esi, esi
mov qword [rbp - 0x38], rsi
jmp 0x14001f7a0
mov rcx, r14
call qword [0x140069018]
mov rdi, qword [rbp - 0x30]
shl rdi, 6
mov rbx, qword [rbp - 0x38]
add rdi, rbx
shl rdi, 3
mov r8, rbx
lea rdx, [rbp - 0x28]
lea rcx, [rbp + 0x20]
call fcn.14002e920
mov eax, ebx
add eax, 9
sub r13d, eax
lea esi, [r13 + 0x40]
cmovns esi, r13d
lea rbx, [rbp + rbx + 0x20]
mov byte [rbx], 0x80
inc rbx
test esi, esi
jle 0x14001f8ef
movsxd r8, esi
xor edx, edx
mov rcx, rbx
call fcn.14002b060
movsxd rax, esi
add rbx, rax
mov rax, rdi
shr rax, 0x38
mov byte [rbx], al
mov rax, rdi
shr rax, 0x30
mov byte [rbx + 1], al
mov rax, rdi
shr rax, 0x28
mov byte [rbx + 2], al
mov rax, rdi
shr rax, 0x20
mov byte [rbx + 3], al
mov rax, rdi
shr rax, 0x18
mov byte [rbx + 4], al
mov rax, rdi
shr rax, 0x10
mov byte [rbx + 5], al
mov rax, rdi
shr rax, 8
mov byte [rbx + 6], al
mov byte [rbx + 7], dil
movsxd rax, r13d
sar rax, 0x3f
and eax, 0x40
add rax, 0x40
mov qword [rbp - 0x80], rax
lea rax, [rbp + 0x20]
mov qword [rsp + 0x70], rax
lea r8, [rbp - 0x80]
lea rdx, [rsp + 0x70]
lea rcx, [rbp - 0x50]
mov rax, qword [0x14006b6c8]
call qword [0x1400533a8]
mov ecx, dword [rbp - 0x50]
mov eax, ecx
shr eax, 0x18
mov byte [rbp - 0x28], al
mov eax, ecx
shr eax, 0x10
mov byte [rbp - 0x27], al
shr ecx, 8
mov byte [rbp - 0x26], cl
movzx eax, byte [rbp - 0x50]
mov byte [rbp - 0x25], al
mov ecx, dword [rbp - 0x4c]
mov eax, ecx
shr eax, 0x18
mov byte [rbp - 0x24], al
mov eax, ecx
shr eax, 0x10
mov byte [rbp - 0x23], al
shr ecx, 8
mov byte [rbp - 0x22], cl
movzx eax, byte [rbp - 0x4c]
mov byte [rbp - 0x21], al
mov ecx, dword [rbp - 0x48]
mov eax, ecx
shr eax, 0x18
mov byte [rbp - 0x20], al
mov eax, ecx
shr eax, 0x10
mov byte [rbp - 0x1f], al
shr ecx, 8
mov byte [rbp - 0x1e], cl
movzx eax, byte [rbp - 0x48]
mov byte [rbp - 0x1d], al
mov ecx, dword [rbp - 0x44]
mov eax, ecx
shr eax, 0x18
mov byte [rbp - 0x1c], al
mov eax, ecx
shr eax, 0x10
mov byte [rbp - 0x1b], al
shr ecx, 8
mov byte [rbp - 0x1a], cl
movzx eax, byte [rbp - 0x44]
mov byte [rbp - 0x19], al
mov ecx, dword [rbp - 0x40]
mov eax, ecx
shr eax, 0x18
mov byte [rbp - 0x18], al
mov eax, ecx
shr eax, 0x10
mov byte [rbp - 0x17], al
shr ecx, 8
mov byte [rbp - 0x16], cl
movzx eax, byte [rbp - 0x40]
mov byte [rbp - 0x15], al
lea rdi, [rbp - 0x28]
xor r13d, r13d
mov qword [rbp - 0x70], r13
mov r14d, reloc.WS2_32.dll_ntohs
mov qword [rbp - 0x58], r14
mov ecx, 5
mov qword [rbp - 0x60], rcx
mov eax, dword [str.SHA1:]
mov dword [rbp - 0x70], eax
movzx eax, byte [0x1400622b0]
mov byte [rbp - 0x6c], al
mov byte [rbp - 0x6b], r13b
lea rsi, [rcx + 0x29]
sub rsi, rcx
lfence
mov r9, rsi
mov rdx, rsi
lea rcx, [rbp - 0x70]
call fcn.140003970
lea rbx, [rbp - 0x70]
cmp qword [rbp - 0x58], 0x10
cmovae rbx, qword [rbp - 0x70]
add rbx, 5
lea rsi, [rdi + 0x14]
cmp rdi, rsi
je 0x14001faa4
nop dword [rax]
movzx r9d, byte [rdi]
lea r8, str._02x
mov edx, 3
mov rcx, rbx
call fcn.14000ccd0
add rbx, 2
inc rdi
cmp rdi, rsi
jne 0x14001fa80
movups xmm0, xmmword [rbp - 0x70]
movups xmmword [r15], xmm0
movups xmm1, xmmword [rbp - 0x60]
movups xmmword [r15 + 0x10], xmm1
mov qword [rbp - 0x60], r13
mov qword [rbp - 0x58], r14
mov byte [rbp - 0x70], 0
mov rcx, r12
call fcn.140028ff4
mov rax, r15
mov rcx, qword [rbp + 0xa0]
xor rcx, rsp
call fcn.140028cd0
mov rbx, qword [rsp + 0x200]
add rsp, 0x1b0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret