Function at 0x140189a30
Capabilities:
Hash data using sha256

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
sub rsp, 0x2b0
lea rbp, [rsp + 0x40]
and rbp, 0xffffffffffffffc0
mov rax, qword [0x140264330]
xor rax, rsp
mov qword [rbp + 0x260], rax
movaps xmm2, xmmword [0x1401c2a70]
movaps xmm3, xmmword [0x1401c2a60]
mov r9, rdx
mov qword [rbp + 0x110], rdx
mov qword [rbp + 0x210], rcx
mov r8d, 0x6b08c647
lea rax, [0x1401c2a84]
mov r10d, 0x510e523f
movaps xmmword [rbp + 0x180], xmm3
movaps xmmword [rbp + 0x190], xmm2
movaps xmmword [rbp + 0x1a0], xmm3
mov ecx, dword [rbp + 0x19c]
mov edx, dword [rbp + 0x194]
mov r12d, dword [rbp + 0x1ac]
movaps xmmword [rbp + 0x1b0], xmm2
movaps xmmword [rbp + 0x250], xmm2
mov r14d, dword [rbp + 0x1bc]
mov r11d, dword [rbp + 0x1b8]
mov r15d, dword [rbp + 0x1b4]
mov edi, dword [rbp + 0x1a8]
mov r13d, dword [rbp + 0x1a4]
mov ebx, dword [rbp + 0x1a0]
mov esi, dword [rbp + 0x190]
mov dword [rbp + 0xc0], ecx
mov ecx, dword [rbp + 0x198]
mov dword [rbp + 0x100], edx
mov edx, dword [rbp + 0x188]
mov dword [rbp + 0xe0], ecx
mov ecx, dword [rbp + 0x18c]
mov dword [rbp + 0x180], r8d
mov dword [rbp + 8], edx
movaps xmm0, xmmword [rbp + 0x180]
movaps xmmword [rbp + 0x240], xmm0
mov edx, dword [rbp + 0x184]
mov qword [rbp + 0x130], rax
mov dword [rbp], ecx
mov dword [rbp + 0x40], edx
jmp 0x140189b65
mov r8d, dword [rbp + 0x80]
mov r10d, dword [rbp + 0xd0]
mov r9, qword [rbp + 0x110]
mov eax, dword [rax - 4]
mov ecx, dword [r9 + rax*4]
add ecx, esi
add r8d, ecx
xor r10d, r8d
rol r10d, 0x10
add ebx, r10d
mov edx, ebx
xor edx, esi
mov rsi, qword [rbp + 0x130]
mov eax, dword [rsi]
mov ecx, dword [r9 + rax*4]
mov eax, dword [rsi + 4]
ror edx, 0xc
add ecx, edx
add r8d, ecx
mov ecx, dword [r9 + rax*4]
mov eax, dword [rsi + 8]
add ecx, dword [rbp + 0x100]
xor r10d, r8d
mov dword [rbp + 0x80], r8d
mov r8d, dword [rbp + 0x40]
add r8d, ecx
mov ecx, dword [r9 + rax*4]
ror r10d, 8
mov eax, dword [rsi + 0xc]
xor r15d, r8d
add ebx, r10d
mov dword [rbp + 0xd0], r10d
mov r10d, ebx
xor r10d, edx
rol r15d, 0x10
add r13d, r15d
mov edx, r13d
ror r10d, 7
xor edx, dword [rbp + 0x100]
ror edx, 0xc
add ecx, edx
add r8d, ecx
mov ecx, dword [r9 + rax*4]
mov eax, dword [rbp + 8]
add ecx, dword [rbp + 0xe0]
xor r15d, r8d
mov dword [rbp + 0x40], r8d
add eax, ecx
xor r11d, eax
mov dword [rbp + 8], eax
ror r15d, 8
mov eax, dword [rsi + 0x10]
add r13d, r15d
rol r11d, 0x10
mov ecx, dword [r9 + rax*4]
mov eax, dword [rbp + 8]
add edi, r11d
mov r8d, r13d
xor r8d, edx
mov edx, edi
xor edx, dword [rbp + 0xe0]
ror edx, 0xc
add ecx, edx
add eax, ecx
ror r8d, 7
mov rcx, qword [rbp + 0x110]
xor r11d, eax
mov dword [rbp + 8], eax
mov eax, dword [rsi + 0x14]
mov ecx, dword [rcx + rax*4]
add ecx, dword [rbp + 0xc0]
ror r11d, 8
add edi, r11d
mov r9d, edi
xor r9d, edx
mov edx, dword [rbp]
add edx, ecx
xor r14d, edx
mov dword [rbp], edx
rol r14d, 0x10
add r12d, r14d
mov edx, r12d
ror r9d, 7
xor edx, dword [rbp + 0xc0]
ror edx, 0xc
mov eax, dword [rsi + 0x18]
mov rcx, qword [rbp + 0x110]
mov ecx, dword [rcx + rax*4]
mov eax, dword [rbp]
add ecx, edx
add eax, ecx
mov rcx, qword [rbp + 0x110]
xor r14d, eax
mov dword [rbp], eax
ror r14d, 8
add r12d, r14d
mov eax, r12d
xor eax, edx
ror eax, 7
mov dword [rbp + 0xc0], eax
mov eax, dword [rsi + 0x1c]
mov ecx, dword [rcx + rax*4]
mov eax, dword [rbp + 0x80]
add ecx, r8d
add eax, ecx
xor r14d, eax
mov dword [rbp + 0x80], eax
mov eax, dword [rsi + 0x20]
rol r14d, 0x10
add edi, r14d
mov edx, edi
xor edx, r8d
mov r8, qword [rbp + 0x110]
mov ecx, dword [r8 + rax*4]
mov eax, dword [rbp + 0x80]
ror edx, 0xc
add ecx, edx
add eax, ecx
xor r14d, eax
mov dword [rbp + 0x80], eax
ror r14d, 8
add edi, r14d
mov eax, edi
xor eax, edx
mov edx, dword [rbp + 0x40]
ror eax, 7
mov dword [rbp + 0x100], eax
mov eax, dword [rsi + 0x24]
mov ecx, dword [r8 + rax*4]
mov eax, dword [rsi + 0x28]
add ecx, r9d
add edx, ecx
mov rcx, qword [rbp + 0x110]
mov ecx, dword [rcx + rax*4]
mov dword [rbp + 0x40], edx
xor edx, dword [rbp + 0xd0]
rol edx, 0x10
mov eax, dword [rbp + 0x40]
add r12d, edx
mov r8d, r12d
xor r8d, r9d
mov r9d, dword [rbp + 0xc0]
ror r8d, 0xc
add ecx, r8d
add eax, ecx
mov dword [rbp + 0x40], eax
xor eax, edx
ror eax, 8
add r12d, eax
mov dword [rbp + 0xd0], eax
mov eax, r12d
xor eax, r8d
mov r8, qword [rbp + 0x110]
ror eax, 7
mov dword [rbp + 0xe0], eax
mov eax, dword [rsi + 0x2c]
mov ecx, dword [r8 + rax*4]
mov eax, dword [rbp + 8]
add ecx, r9d
add eax, ecx
mov edx, eax
mov dword [rbp + 8], eax
xor edx, r15d
rol edx, 0x10
add ebx, edx
mov eax, dword [rsi + 0x30]
xor r9d, ebx
mov ecx, dword [r8 + rax*4]
mov eax, dword [rbp + 8]
ror r9d, 0xc
add ecx, r9d
add eax, ecx
mov r15d, eax
mov dword [rbp + 8], eax
mov eax, dword [rsi + 0x34]
mov ecx, dword [r8 + rax*4]
mov eax, dword [rbp]
xor r15d, edx
add ecx, r10d
add eax, ecx
ror r15d, 8
mov rcx, qword [rbp + 0x110]
mov dword [rbp], eax
mov edx, eax
mov eax, dword [rsi + 0x38]
mov ecx, dword [rcx + rax*4]
mov rax, qword [rbp + 0x130]
xor edx, r11d
add ebx, r15d
add rax, 0x40
xor r9d, ebx
rol edx, 0x10
mov qword [rbp + 0x130], rax
add r13d, edx
ror r9d, 7
mov r8d, r13d
mov dword [rbp + 0xc0], r9d
xor r8d, r10d
mov r10d, dword [rbp]
ror r8d, 0xc
add ecx, r8d
add r10d, ecx
lea rcx, [0x1401c2d04]
mov r11d, r10d
mov dword [rbp], r10d
xor r11d, edx
ror r11d, 8
add r13d, r11d
mov esi, r13d
xor esi, r8d
ror esi, 7
cmp rax, rcx
jl 0x140189b50
xor r15d, dword [rbp + 0x100]
xor ebx, dword [rbp + 0x80]
xor r13d, dword [rbp + 0x40]
movaps xmmword [rbp + 0x1a0], xmm3
movaps xmmword [rbp + 0x1b0], xmm2
xor edi, dword [rbp + 8]
xor esi, dword [rbp + 0xd0]
xor r11d, dword [rbp + 0xe0]
mov r8d, dword [rbp + 0x1a4]
xor r12d, r10d
mov r10d, dword [rbp + 0x1a0]
xor r14d, r9d
mov r9d, dword [rbp + 0x1a8]
mov dword [rbp + 0x144], r13d
mov dword [rbp + 0x154], r15d
mov dword [rbp + 0x14c], r12d
mov dword [rbp + 0x15c], r14d
mov dword [rbp + 0x140], ebx
xor ebx, dword [rbp + 0x240]
mov r14, qword [rbp + 0x140]
shr r14, 0x20
mov dword [rbp + 0x148], edi
xor edi, dword [rbp + 0x248]
xor r14d, dword [rbp + 0x244]
mov r15, qword [rbp + 0x148]
mov dword [rbp + 0x150], esi
xor esi, dword [rbp + 0x250]
mov r12, qword [rbp + 0x150]
shr r15, 0x20
xor r15d, dword [rbp + 0x24c]
shr r12, 0x20
mov dword [rbp + 0x158], r11d
xor r12d, dword [rbp + 0x254]
xor r11d, dword [rbp + 0x258]
mov r13, qword [rbp + 0x158]
shr r13, 0x20
mov dword [rbp + 0x160], ebx
mov dword [rbp + 0x170], esi
xor r13d, dword [rbp + 0x25c]
mov dword [rbp + 0x174], r12d
mov dword [rbp + 0x178], r11d
mov dword [rbp + 0x17c], r13d
mov dword [rbp + 0x164], r14d
mov dword [rbp + 0x168], edi
movaps xmm1, xmmword [rbp + 0x170]
movaps xmmword [rbp + 0x190], xmm1
mov eax, dword [rbp + 0x198]
mov ecx, dword [rbp + 0x190]
mov dword [rbp + 0x16c], r15d
movaps xmm0, xmmword [rbp + 0x160]
movaps xmmword [rbp + 0x180], xmm0
mov edx, dword [rbp + 0x184]
mov dword [rbp + 0x100], eax
mov eax, dword [rbp + 0x194]
mov dword [rbp + 0x1e0], ebx
mov ebx, dword [rbp + 0x1b8]
mov dword [rbp + 0xd0], eax
mov eax, dword [rbp + 0x18c]
mov dword [rbp + 0x120], ecx
mov ecx, dword [rbp + 0x188]
mov qword [rbp + 0x228], r14
mov r14d, dword [rbp + 0x1bc]
mov dword [rbp + 0x1c0], edi
mov rdi, qword [rbp + 0x210]
mov qword [rbp + 0x220], r15
mov dword [rbp + 0x200], esi
mov esi, dword [rbp + 0x19c]
mov qword [rbp + 0x230], r12
mov dword [rbp + 0x130], r11d
mov r11d, dword [rbp + 0x1b4]
mov qword [rbp + 0x218], r13
mov r13d, dword [rbp + 0x1ac]
mov dword [rbp + 8], edx
mov edx, dword [rbp + 0x180]
mov dword [rbp], eax
mov r12d, 0x510e52ff
not ebx
mov dword [rbp + 0x80], ecx
lea r15, [0x1401c2a84]
jmp 0x14018a058
mov r9d, dword [rbp + 0xc0]
mov r8d, dword [rbp + 0x108]
mov r10d, dword [rbp + 0xe0]
mov edx, dword [rbp + 0x40]
mov eax, dword [r15 - 4]
mov ecx, dword [rdi + rax*4]
mov eax, dword [r15]
add ecx, dword [rbp + 0x120]
add edx, ecx
mov ecx, dword [rdi + rax*4]
xor r12d, edx
mov dword [rbp + 0x40], edx
mov eax, dword [rbp + 0x40]
rol r12d, 0x10
add r10d, r12d
mov edx, r10d
xor edx, dword [rbp + 0x120]
ror edx, 0xc
add ecx, edx
add eax, ecx
xor r12d, eax
mov dword [rbp + 0x40], eax
mov eax, dword [r15 + 4]
mov ecx, dword [rdi + rax*4]
ror r12d, 8
mov eax, dword [rbp + 8]
add ecx, dword [rbp + 0xd0]
add r10d, r12d
add eax, ecx
mov dword [rbp + 0xe0], r10d
xor r10d, edx
xor r11d, eax
mov dword [rbp + 8], eax
mov eax, dword [r15 + 8]
mov ecx, dword [rdi + rax*4]
rol r11d, 0x10
mov eax, dword [rbp + 8]
add r8d, r11d
ror r10d, 7
mov edx, r8d
xor edx, dword [rbp + 0xd0]
ror edx, 0xc
add ecx, edx
add eax, ecx
xor r11d, eax
mov dword [rbp + 8], eax
mov eax, dword [r15 + 0xc]
mov ecx, dword [rdi + rax*4]
ror r11d, 8
mov eax, dword [rbp + 0x80]
add ecx, dword [rbp + 0x100]
add r8d, r11d
add eax, ecx
mov dword [rbp + 0x108], r8d
xor r8d, edx
xor ebx, eax
mov dword [rbp + 0x80], eax
mov eax, dword [r15 + 0x10]
mov ecx, dword [rdi + rax*4]
rol ebx, 0x10
mov eax, dword [rbp + 0x80]
add r9d, ebx
ror r8d, 7
mov edx, r9d
xor edx, dword [rbp + 0x100]
ror edx, 0xc
add ecx, edx
add eax, ecx
xor ebx, eax
mov dword [rbp + 0x80], eax
mov eax, dword [r15 + 0x14]
mov ecx, dword [rdi + rax*4]
ror ebx, 8
mov eax, dword [rbp]
add r9d, ebx
add ecx, esi
add eax, ecx
mov dword [rbp + 0xc0], r9d
xor r9d, edx
xor r14d, eax
mov dword [rbp], eax
rol r14d, 0x10
ror r9d, 7
add r13d, r14d
mov edx, r13d
mov eax, dword [r15 + 0x18]
xor edx, esi
mov ecx, dword [rdi + rax*4]
mov eax, dword [rbp]
ror edx, 0xc
add ecx, edx
add eax, ecx
xor r14d, eax
mov dword [rbp], eax
mov eax, dword [r15 + 0x1c]
mov ecx, dword [rdi + rax*4]
ror r14d, 8
mov eax, dword [rbp + 0x40]
add ecx, r8d
add r13d, r14d
add eax, ecx
mov esi, r13d
xor r14d, eax
mov dword [rbp + 0x40], eax
mov eax, dword [rbp + 0xc0]
xor esi, edx
rol r14d, 0x10
add eax, r14d
mov dword [rbp + 0xc0], eax
ror esi, 7
mov edx, eax
mov eax, dword [r15 + 0x20]
xor edx, r8d
mov ecx, dword [rdi + rax*4]
mov eax, dword [rbp + 0x40]
ror edx, 0xc
add ecx, edx
add eax, ecx
xor r14d, eax
mov dword [rbp + 0x40], eax
mov eax, dword [rbp + 0xc0]
ror r14d, 8
add eax, r14d
mov dword [rbp + 0xc0], eax
xor eax, edx
ror eax, 7
mov dword [rbp + 0xd0], eax
mov eax, dword [r15 + 0x24]
mov ecx, dword [rdi + rax*4]
mov eax, dword [rbp + 8]
add ecx, r9d
add eax, ecx
mov edx, eax
mov dword [rbp + 8], eax
mov eax, dword [r15 + 0x28]
mov ecx, dword [rdi + rax*4]
mov eax, dword [rbp + 8]
xor edx, r12d
rol edx, 0x10
add r13d, edx
mov r8d, r13d
xor r8d, r9d
mov r9d, dword [rbp + 0x80]
ror r8d, 0xc
add ecx, r8d
add eax, ecx
mov r12d, eax
mov dword [rbp + 8], eax
xor r12d, edx
ror r12d, 8
add r13d, r12d
mov eax, r13d
xor eax, r8d
mov r8d, dword [rbp + 0xe0]
ror eax, 7
mov dword [rbp + 0x100], eax
mov eax, dword [r15 + 0x2c]
mov ecx, dword [rdi + rax*4]
add ecx, esi
add r9d, ecx
mov edx, r9d
xor edx, r11d
rol edx, 0x10
add r8d, edx
xor esi, r8d
ror esi, 0xc
mov eax, dword [r15 + 0x30]
add r15, 0x40
mov ecx, dword [rdi + rax*4]
mov eax, dword [r15 - 0xc]
add ecx, esi
add r9d, ecx
mov ecx, dword [rdi + rax*4]
mov eax, dword [rbp]
add ecx, r10d
mov r11d, r9d
mov dword [rbp + 0x80], r9d
mov r9d, dword [rbp + 0x108]
add eax, ecx
xor r11d, edx
mov dword [rbp], eax
mov edx, eax
mov eax, dword [r15 - 8]
mov ecx, dword [rdi + rax*4]
xor edx, ebx
ror r11d, 8
add r8d, r11d
xor esi, r8d
rol edx, 0x10
mov dword [rbp + 0xe0], r8d
add r9d, edx
ror esi, 7
mov r8d, r9d
xor r8d, r10d
mov r10d, dword [rbp]
ror r8d, 0xc
add ecx, r8d
add r10d, ecx
mov ebx, r10d
mov dword [rbp], r10d
xor ebx, edx
ror ebx, 8
add r9d, ebx
mov eax, r9d
mov dword [rbp + 0x108], r9d
xor eax, r8d
ror eax, 7
mov dword [rbp + 0x120], eax
lea rax, [0x1401c2d04]
cmp r15, rax
jl 0x14018a040
mov edi, dword [rbp + 0x1c0]
mov r15, qword [rbp + 0x220]
mov rcx, qword [rbp + 0x210]
xor edi, dword [rbp + 0xc0]
mov dword [rbp + 0x108], ebx
mov ebx, dword [rbp + 0x1e0]
xor ebx, dword [rbp + 0xe0]
mov dword [rbp + 0x110], esi
mov esi, dword [rbp + 0x200]
xor esi, r12d
mov r12, qword [rbp + 0x230]
xor r15d, r13d
mov r13, qword [rbp + 0x218]
xor r12d, r11d
mov r11d, dword [rbp + 0x130]
xor r11d, dword [rbp + 0x108]
mov dword [rbp], r14d
mov r14, qword [rbp + 0x228]
xor r13d, dword [rbp]
xor r14d, r9d
mov dword [rbp + 0x140], ebx
xor ebx, dword [rbp + 0x40]
mov dword [rbp + 0x148], edi
xor edi, dword [rbp + 0x80]
mov dword [rbp + 0x150], esi
xor esi, dword [rbp + 0x120]
mov dword [rbp + 0x144], r14d
mov rax, qword [rbp + 0x140]
mov dword [rbp + 0x158], r11d
xor r11d, dword [rbp + 0x100]
shr rax, 0x20
mov dword [rbp + 0x14c], r15d
mov dword [rbp + 0x154], r12d
xor eax, dword [rbp + 8]
mov dword [rbp + 0x15c], r13d
mov dword [rbp + 0x160], ebx
mov dword [rbp + 0x164], eax
mov rax, qword [rbp + 0x148]
mov dword [rbp + 0x168], edi
shr rax, 0x20
mov dword [rbp + 0x170], esi
mov dword [rbp + 0x178], r11d
xor eax, r10d
mov dword [rbp + 0x16c], eax
mov rax, qword [rbp + 0x150]
movaps xmm0, xmmword [rbp + 0x160]
shr rax, 0x20
movaps xmmword [rcx], xmm0
xor eax, dword [rbp + 0xd0]
mov dword [rbp + 0x174], eax
mov rax, qword [rbp + 0x158]
shr rax, 0x20
xor eax, dword [rbp + 0x110]
mov dword [rbp + 0x17c], eax
movaps xmm1, xmmword [rbp + 0x170]
movaps xmmword [rcx + 0x10], xmm1
mov rcx, qword [rbp + 0x260]
xor rcx, rsp
call fcn.1401bb2c0
lea r11, [rsp + 0x2b0]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret