Function at 0x513b40
Capabilities:
Hash data using sha256
Resolve function by parsing pe exports

Disassembly:
lea r12, [rsp - 0x30]
cmp r12, qword [r14 + 0x10]
jbe 0x51427f
push rbp
mov rbp, rsp
sub rsp, 0xa8
mov qword [rsp + 0xb8], rax
mov qword [rsp + 0xc0], rbx
mov dword [rsp + 0xc8], ecx
mov qword [rsp + 0xd8], rsi
mov qword [rsp + 0xd0], rdi
movups xmmword [rsp + 0x44], xmm15
movups xmmword [rsp + 0x54], xmm15
movups xmmword [rsp + 0x64], xmm15
movups xmmword [rsp + 0x74], xmm15
mov edx, dword [rbx]
mov r8d, dword [rbx + 4]
xor r9d, r9d
jmp 0x513c33
mov dword [rsp + 0x34], r12d
mov edi, r13d
mov r13d, dword [rsp + 0x14]
xor r15d, r13d
mov r13, qword [rsp + 0xb8]
xor dword [r13], r15d
mov r15d, dword [rsp + 0x40]
mov r12d, dword [rsp + 0x10]
xor r15d, r12d
xor dword [r13 + 4], r15d
mov r12d, dword [rsp + 0x28]
mov r15d, dword [rsp + 0x3c]
xor r12d, r15d
xor dword [r13 + 8], r12d
mov r12d, dword [rsp + 0x24]
xor r12d, r10d
xor dword [r13 + 0xc], r12d
mov r10d, dword [rsp + 0x20]
xor r10d, r11d
xor dword [r13 + 0x10], r10d
mov r10d, dword [rsp + 0x1c]
mov r11d, dword [rsp + 0x34]
xor r10d, r11d
xor dword [r13 + 0x14], r10d
xor ebx, edi
xor dword [r13 + 0x18], ebx
mov r10d, dword [rsp + 0x18]
xor r10d, eax
xor dword [r13 + 0x1c], r10d
mov rdi, qword [rsp + 0xd0]
mov rax, r13
mov rbx, qword [rsp + 0xc0]
cmp rsi, r9
jle 0x513d05
add edx, 0x40
lea r10d, [r8 + 1]
mov r11d, dword [0x006dd5d0]
mov r12d, dword [0x006dd5d4]
mov r13d, dword [0x006dd5d8]
mov r15d, dword [rax]
mov ebx, dword [rax + 4]
mov dword [rsp + 0x40], ebx
mov ebx, dword [rax + 8]
mov dword [rsp + 0x28], ebx
mov ebx, dword [rax + 0xc]
mov dword [rsp + 0x24], ebx
mov ebx, dword [rax + 0x10]
mov dword [rsp + 0x20], ebx
mov ebx, dword [rax + 0x14]
mov dword [rsp + 0x1c], ebx
mov ebx, dword [rax + 0x18]
mov eax, dword [rax + 0x1c]
mov dword [rsp + 0x18], eax
mov eax, dword [0x006dd5c0]
mov dword [rsp + 0x14], eax
mov eax, dword [0x006dd5c4]
mov dword [rsp + 0x10], eax
mov eax, dword [0x006dd5c8]
mov dword [rsp + 0x3c], eax
mov eax, dword [0x006dd5cc]
mov dword [rsp + 0x38], eax
mov eax, dword [0x006dd5dc]
xor r11d, edx
xor r13d, ecx
cmp edx, 0x40
cmovb r8d, r10d
xor r12d, r8d
xor r10d, r10d
jmp 0x513d2b
mov dword [rsp + 0x88], edx
mov dword [rsp + 0x84], r8d
mov qword [rsp + 0x98], r9
mov r10d, dword [rsp + 0x38]
mov dword [rsp + 0xa0], eax
xor eax, eax
mov qword [rsp + 0x90], rax
mov eax, dword [rsp + 0xa0]
nop
jmp 0x513e15
mov dword [rbx], edx
mov dword [rbx + 4], r8d
add rsp, 0xa8
pop rbp
ret
mov ecx, dword [rdi + r9]
mov dword [rsp + r10*4 + 0x44], ecx
inc r10
add r9, 4
mov ecx, dword [rsp + 0xc8]
cmp r10, 0x10
jge 0x513ccb
cmp rsi, r9
jbe 0x514273
lea rcx, [r9 + 1]
nop
cmp rsi, rcx
jbe 0x514268
lea rcx, [r9 + 2]
cmp rsi, rcx
jbe 0x51425d
lea rcx, [r9 + 3]
cmp rsi, rcx
ja 0x513d14
nop
jmp 0x514252
mov dword [rsp + 0x8c], eax
rol r9d, 0x14
mov edi, dword [rsp + rdi*4 + 0x44]
mov esi, dword [rsp + 0x24]
add esi, edi
add esi, r9d
mov edi, dword [rsp + 0x30]
xor edi, esi
rol edi, 0x18
add r10d, edi
xor r9d, r10d
mov rax, qword [rsp + 0x90]
inc rax
rol r8d, 0x19
rol ebx, 0x19
rol r13d, 0x19
rol r9d, 0x19
mov qword [rsp + 0x90], rax
mov dword [rsp + 0x20], r9d
mov dword [rsp + 0x14], edx
mov dword [rsp + 0x1c], r8d
mov dword [rsp + 0x10], r10d
mov dword [rsp + 0x3c], r15d
mov dword [rsp + 0x24], esi
mov dword [rsp + 0x18], r13d
mov eax, dword [rsp + 0x2c]
mov r10d, dword [rsp + 0x8c]
mov edx, dword [rsp + 0x88]
mov rsi, qword [rsp + 0xd8]
mov r8d, dword [rsp + 0x84]
mov r9, qword [rsp + 0x98]
mov r15d, r12d
mov r12d, r11d
mov r13d, edi
mov rdi, qword [rsp + 0xd0]
mov r11d, ecx
mov ecx, dword [rsp + 0xc8]
mov rdi, qword [rsp + 0x90]
nop dword [rax]
cmp rdi, 0xa
jge 0x513ba7
shl rdi, 4
lea rsi, [0x006de2a0]
movzx ecx, byte [rsi + rdi]
nop dword [rax]
cmp rcx, 0x10
jae 0x514245
mov ecx, dword [rsp + rcx*4 + 0x44]
add r15d, ecx
mov edx, dword [rsp + 0x20]
add r15d, edx
xor r11d, r15d
rol r11d, 0x10
mov r8d, dword [rsp + 0x14]
add r8d, r11d
movzx ecx, byte [rsi + rdi + 1]
xor edx, r8d
cmp rcx, 0x10
jae 0x514236
mov ecx, dword [rsp + rcx*4 + 0x44]
mov r9d, dword [rsp + 0x40]
add r9d, ecx
mov ecx, r8d
mov r8d, dword [rsp + 0x1c]
add r9d, r8d
mov dword [rsp + 0x40], r9d
xor r12d, r9d
rol r12d, 0x10
mov dword [rsp + 0x34], r12d
mov r9d, dword [rsp + 0x10]
add r9d, r12d
movzx r12d, byte [rsi + rdi + 2]
xor r8d, r9d
cmp r12, 0x10
jae 0x514229
mov dword [rsp + 0x10], r9d
mov r12d, dword [rsp + r12*4 + 0x44]
mov r9d, dword [rsp + 0x28]
add r9d, r12d
add r9d, ebx
xor r13d, r9d
rol r13d, 0x10
mov dword [rsp + 0x30], r13d
mov r12d, dword [rsp + 0x3c]
add r12d, r13d
movzx r13d, byte [rsi + rdi + 3]
xor ebx, r12d
cmp r13, 0x10
jae 0x51421c
mov dword [rsp + 0x3c], r12d
mov r13d, dword [rsp + r13*4 + 0x44]
mov r12d, dword [rsp + 0x24]
add r12d, r13d
mov r13d, dword [rsp + 0x18]
add r12d, r13d
xor eax, r12d
rol eax, 0x10
mov dword [rsp + 0x2c], eax
add r10d, eax
movzx eax, byte [rsi + rdi + 4]
xor r13d, r10d
cmp rax, 0x10
jae 0x514212
rol edx, 0x14
mov eax, dword [rsp + rax*4 + 0x44]
add r15d, eax
add r15d, edx
xor r11d, r15d
rol r11d, 0x18
lea eax, [r11 + rcx]
movzx ecx, byte [rsi + rdi + 5]
xor edx, eax
cmp rcx, 0x10
jae 0x514205
mov dword [rsp + 0x14], eax
mov dword [rsp + 0x20], edx
rol r8d, 0x14
mov ecx, dword [rsp + rcx*4 + 0x44]
mov edx, dword [rsp + 0x40]
add edx, ecx
add edx, r8d
mov dword [rsp + 0x40], edx
mov ecx, r11d
mov r11d, dword [rsp + 0x34]
xor r11d, edx
rol r11d, 0x18
mov edx, dword [rsp + 0x10]
add edx, r11d
movzx eax, byte [rsi + rdi + 6]
xor r8d, edx
cmp rax, 0x10
jae 0x5141f9
mov dword [rsp + 0x34], r11d
mov dword [rsp + 0x10], edx
rol ebx, 0x14
mov eax, dword [rsp + rax*4 + 0x44]
add r9d, eax
add r9d, ebx
mov edx, dword [rsp + 0x30]
xor edx, r9d
rol edx, 0x18
mov r11d, dword [rsp + 0x3c]
add r11d, edx
movzx eax, byte [rsi + rdi + 7]
xor ebx, r11d
cmp rax, 0x10
jae 0x5141ef
mov dword [rsp + 0x30], edx
rol r13d, 0x14
mov eax, dword [rsp + rax*4 + 0x44]
add r12d, eax
add r12d, r13d
mov edx, dword [rsp + 0x2c]
xor edx, r12d
rol edx, 0x18
add r10d, edx
movzx eax, byte [rsi + rdi + 8]
xor r13d, r10d
cmp rax, 0x10
jae 0x5141e5
rol r8d, 0x19
mov eax, dword [rsp + rax*4 + 0x44]
add r15d, eax
add r15d, r8d
xor edx, r15d
rol edx, 0x10
add r11d, edx
movzx eax, byte [rsi + rdi + 9]
xor r8d, r11d
cmp rax, 0x10
jae 0x5141d6
mov dword [rsp + 0x3c], r11d
rol ebx, 0x19
mov eax, dword [rsp + rax*4 + 0x44]
mov r11d, dword [rsp + 0x40]
add r11d, eax
add r11d, ebx
xor ecx, r11d
rol ecx, 0x10
add r10d, ecx
movzx eax, byte [rsi + rdi + 0xa]
xor ebx, r10d
nop dword [rax + rax]
cmp rax, 0x10
jae 0x5141cc
rol r13d, 0x19
mov eax, dword [rsp + rax*4 + 0x44]
add r9d, eax
add r9d, r13d
mov dword [rsp + 0x28], r9d
mov eax, r10d
mov r10d, dword [rsp + 0x34]
xor r10d, r9d
rol r10d, 0x10
mov dword [rsp + 0x34], r10d
mov r9d, dword [rsp + 0x14]
add r9d, r10d
movzx r10d, byte [rsi + rdi + 0xb]
xor r13d, r9d
cmp r10, 0x10
jae 0x5141bf
mov dword [rsp + 0x14], r9d
mov r9d, dword [rsp + 0x20]
rol r9d, 0x19
mov r10d, dword [rsp + r10*4 + 0x44]
add r10d, r12d
add r10d, r9d
mov dword [rsp + 0x24], r10d
mov r12d, dword [rsp + 0x30]
xor r12d, r10d
rol r12d, 0x10
mov dword [rsp + 0x30], r12d
mov r10d, dword [rsp + 0x10]
add r10d, r12d
movzx r12d, byte [rsi + rdi + 0xc]
xor r9d, r10d
cmp r12, 0x10
jae 0x5141b2
rol r8d, 0x14
mov r12d, dword [rsp + r12*4 + 0x44]
add r12d, r15d
add r12d, r8d
xor edx, r12d
rol edx, 0x18
mov dword [rsp + 0x2c], edx
mov r15d, dword [rsp + 0x3c]
add r15d, edx
movzx edx, byte [rsi + rdi + 0xd]
xor r8d, r15d
nop
cmp rdx, 0x10
jae 0x5141a5
rol ebx, 0x14
mov edx, dword [rsp + rdx*4 + 0x44]
add edx, r11d
add edx, ebx
xor ecx, edx
rol ecx, 0x18
lea r11d, [rax + rcx]
movzx eax, byte [rsi + rdi + 0xe]
xor ebx, r11d
cmp rax, 0x10
jae 0x514197
mov dword [rsp + 0x40], edx
rol r13d, 0x14
mov eax, dword [rsp + rax*4 + 0x44]
mov edx, dword [rsp + 0x28]
add edx, eax
add edx, r13d
mov dword [rsp + 0x28], edx
mov eax, r11d
mov r11d, dword [rsp + 0x34]
xor r11d, edx
rol r11d, 0x18
mov edx, dword [rsp + 0x14]
add edx, r11d
movzx edi, byte [rsi + rdi + 0xf]
xor r13d, edx
cmp rdi, 0x10
jb 0x513d65
mov rax, rdi
mov ecx, 0x10
call sym.runtime.panicIndex
mov ecx, 0x10
nop dword [rax]
call sym.runtime.panicIndex
mov rax, rdx
mov ecx, 0x10
call sym.runtime.panicIndex
mov rax, r12
mov ecx, 0x10
call sym.runtime.panicIndex
mov rax, r10
mov ecx, 0x10
call sym.runtime.panicIndex
mov ecx, 0x10
call sym.runtime.panicIndex
mov ecx, 0x10
nop dword [rax + rax]
call sym.runtime.panicIndex
mov ecx, 0x10
call sym.runtime.panicIndex
mov ecx, 0x10
call sym.runtime.panicIndex
mov ecx, 0x10
nop
call sym.runtime.panicIndex
mov rax, rcx
mov ecx, 0x10
call sym.runtime.panicIndex
mov ecx, 0x10
call sym.runtime.panicIndex
mov rax, r13
mov ecx, 0x10
call sym.runtime.panicIndex
mov rax, r12
mov ecx, 0x10
call sym.runtime.panicIndex
mov rax, rcx
mov ecx, 0x10
nop
call sym.runtime.panicIndex
mov rax, rcx
mov ecx, 0x10
call sym.runtime.panicIndex
mov rax, rcx
mov rcx, rsi
call sym.runtime.panicIndex
mov rax, rcx
mov rcx, rsi
call sym.runtime.panicIndex
mov rax, rcx
mov rcx, rsi
call sym.runtime.panicIndex
mov rax, r9
mov rcx, rsi
call sym.runtime.panicIndex
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov dword [rsp + 0x18], ecx
mov qword [rsp + 0x20], rdi
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x30], r8
nop dword [rax]
call sym.runtime.morestack_noctxt.abi0
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov ecx, dword [rsp + 0x18]
mov rdi, qword [rsp + 0x20]
mov rsi, qword [rsp + 0x28]
mov r8, qword [rsp + 0x30]
jmp sym.golang.org_x_crypto_blake2s.hashBlocksGeneric