Function at 0x14006f6e0
Capabilities:
Hash data using sha1

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x60
mov ebx, dword [rcx]
mov r8d, dword [rcx + 4]
mov r9d, dword [rcx + 8]
mov edi, dword [rcx + 0xc]
mov qword [rsp + 0x58], rcx
mov r10d, edi
xor r10d, r9d
and r10d, r8d
xor r10d, edi
mov r11d, ebx
rol r11d, 5
add r11d, dword [rcx + 0x10]
mov eax, dword [rdx]
mov ebp, dword [rdx + 4]
mov r14, rdx
add r11d, eax
add r10d, r11d
add r10d, 0x5a827999
rol r8d, 0x1e
mov r11d, r8d
xor r11d, r9d
and r11d, ebx
xor r11d, r9d
mov esi, r10d
rol esi, 5
add edi, ebp
add edi, r11d
lea ecx, [rsi + rdi]
add ecx, 0x5a827999
rol ebx, 0x1e
mov r11d, r8d
xor r11d, ebx
and r11d, r10d
xor r11d, r8d
mov r13d, dword [rdx + 8]
mov esi, ecx
rol esi, 5
add r9d, r13d
add r9d, r11d
rol r10d, 0x1e
lea r11d, [rsi + r9]
add r11d, 0x5a827999
mov r9d, r10d
xor r9d, ebx
and r9d, ecx
xor r9d, ebx
mov esi, r11d
rol esi, 5
mov edx, dword [rdx + 0xc]
mov dword [rsp + 0x10], edx
add r8d, edx
add r8d, r9d
add r8d, esi
add r8d, 0x5a827999
rol ecx, 0x1e
mov r9d, ecx
xor r9d, r10d
and r9d, r11d
xor r9d, r10d
mov edx, dword [r14 + 0x10]
mov dword [rsp + 0x18], edx
mov esi, r8d
rol esi, 5
add ebx, edx
add ebx, r9d
lea r9d, [rsi + rbx]
add r9d, 0x5a827999
rol r11d, 0x1e
mov edx, r11d
xor edx, ecx
and edx, r8d
xor edx, ecx
mov edi, dword [r14 + 0x14]
mov dword [rsp + 0xc], edi
mov esi, r9d
rol esi, 5
add r10d, edi
add r10d, edx
lea edx, [rsi + r10]
add edx, 0x5a827999
rol r8d, 0x1e
mov r10d, r8d
xor r10d, r11d
and r10d, r9d
xor r10d, r11d
mov esi, dword [r14 + 0x18]
mov dword [rsp + 0x14], esi
mov rdi, r14
add ecx, esi
add ecx, r10d
mov r10d, edx
rol r10d, 5
rol r9d, 0x1e
add r10d, ecx
add r10d, 0x5a827999
mov ecx, r9d
xor ecx, r8d
and ecx, edx
xor ecx, r8d
mov esi, dword [r14 + 0x1c]
mov dword [rsp + 4], esi
add r11d, esi
add r11d, ecx
mov ecx, r10d
rol ecx, 5
add r11d, ecx
add r11d, 0x5a827999
rol edx, 0x1e
mov ecx, edx
xor ecx, r9d
and ecx, r10d
xor ecx, r9d
mov r15d, dword [r14 + 0x20]
add r8d, r15d
mov dword [rsp + 0x30], r15d
add r8d, ecx
mov ecx, r11d
rol ecx, 5
add r8d, ecx
add r8d, 0x5a827999
rol r10d, 0x1e
mov ecx, r10d
xor ecx, edx
and ecx, r11d
xor ecx, edx
mov esi, r8d
rol esi, 5
mov ebx, dword [r14 + 0x24]
mov dword [rsp + 8], ebx
add r9d, ebx
add r9d, ecx
lea ecx, [rsi + r9]
add ecx, 0x5a827999
rol r11d, 0x1e
mov r9d, r11d
xor r9d, r10d
and r9d, r8d
xor r9d, r10d
mov esi, dword [r14 + 0x28]
mov dword [rsp + 0x24], esi
add edx, esi
add edx, r9d
mov r9d, ecx
rol r9d, 5
rol r8d, 0x1e
lea esi, [r9 + rdx]
add esi, 0x5a827999
mov edx, r8d
xor edx, r11d
and edx, ecx
xor edx, r11d
mov r9d, dword [r14 + 0x2c]
mov dword [rsp + 0x28], r9d
add r10d, r9d
add r10d, edx
mov edx, esi
rol edx, 5
add r10d, edx
add r10d, 0x5a827999
rol ecx, 0x1e
mov edx, ecx
xor edx, r8d
and edx, esi
xor edx, r8d
mov r9d, dword [r14 + 0x30]
mov dword [rsp + 0x2c], r9d
add r11d, r9d
add r11d, edx
mov edx, r10d
rol edx, 5
add edx, r11d
add edx, 0x5a827999
rol esi, 0x1e
mov r9d, esi
xor r9d, ecx
and r9d, r10d
xor r9d, ecx
mov r11d, edx
rol r11d, 5
mov ebx, dword [r14 + 0x34]
add r8d, ebx
mov qword [rsp + 0x38], rbx
add r8d, r9d
add r8d, r11d
add r8d, 0x5a827999
rol r10d, 0x1e
mov r9d, r10d
xor r9d, esi
and r9d, edx
xor r9d, esi
mov qword [rsp + 0x50], r14
mov r11d, dword [r14 + 0x38]
add ecx, r11d
mov r14d, r11d
mov dword [rsp + 0x20], r11d
add ecx, r9d
mov r9d, r8d
rol r9d, 5
rol edx, 0x1e
add r9d, ecx
add r9d, 0x5a827999
mov ecx, edx
xor ecx, r10d
and ecx, r8d
xor ecx, r10d
mov r12d, dword [rdi + 0x3c]
add esi, r12d
mov dword [rsp + 0x1c], r12d
add esi, ecx
mov ecx, r9d
rol ecx, 5
add ecx, esi
add ecx, 0x5a827999
xor eax, r13d
mov esi, r15d
xor esi, ebx
xor esi, eax
rol r8d, 0x1e
mov eax, r8d
xor eax, edx
and eax, r9d
xor eax, edx
rol esi, 1
mov qword [rsp + 0x40], rsi
mov r11d, ecx
rol r11d, 5
add r10d, esi
add r10d, eax
lea eax, [r11 + r10]
add eax, 0x5a827999
mov ebx, dword [rsp + 0x10]
xor ebp, ebx
mov r10d, dword [rsp + 8]
mov r15d, r10d
xor r15d, r14d
xor r15d, ebp
rol r9d, 0x1e
mov r10d, r9d
xor r10d, r8d
and r10d, ecx
xor r10d, r8d
rol r15d, 1
add edx, r15d
add edx, r10d
mov r10d, eax
rol r10d, 5
add edx, r10d
add edx, 0x5a827999
mov edi, dword [rsp + 0x18]
xor r13d, edi
mov esi, dword [rsp + 0x24]
xor esi, r12d
xor esi, r13d
rol ecx, 0x1e
mov r10d, ecx
xor r10d, r9d
and r10d, eax
xor r10d, r9d
rol esi, 1
mov r11d, edx
rol r11d, 5
add r8d, esi
mov r14d, esi
mov dword [rsp + 0x34], esi
add r8d, r10d
add r8d, r11d
add r8d, 0x5a827999
rol eax, 0x1e
mov r10d, eax
xor r10d, ecx
and r10d, edx
mov ebp, ebx
mov esi, dword [rsp + 0xc]
xor ebp, esi
xor ebp, dword [rsp + 0x28]
mov rbx, qword [rsp + 0x40]
xor ebp, ebx
rol ebp, 1
xor r10d, ecx
add r9d, ebp
mov dword [rsp + 0x10], ebp
add r9d, r10d
mov r10d, r8d
rol r10d, 5
rol edx, 0x1e
add r9d, r10d
add r9d, 0x5a827999
mov r10d, edx
xor r10d, eax
mov r12d, edi
mov edi, dword [rsp + 0x14]
xor r12d, edi
xor r12d, dword [rsp + 0x2c]
xor r12d, r15d
rol r12d, 1
xor r10d, r8d
add ecx, r12d
mov dword [rsp + 0x18], r12d
add ecx, r10d
mov r10d, r9d
rol r10d, 5
rol r8d, 0x1e
add ecx, r10d
add ecx, 0x6ed9eba1
mov r10d, r8d
xor r10d, edx
mov r11d, esi
mov esi, dword [rsp + 4]
xor r11d, esi
xor r11d, dword [rsp + 0x38]
xor r11d, r14d
rol r11d, 1
xor r10d, r9d
add eax, r11d
mov r14d, r11d
mov dword [rsp + 0xc], r11d
add eax, r10d
mov r10d, ecx
rol r10d, 5
rol r9d, 0x1e
add eax, r10d
add eax, 0x6ed9eba1
mov r10d, r9d
xor r10d, r8d
mov r13d, dword [rsp + 0x30]
xor edi, r13d
xor edi, dword [rsp + 0x20]
xor edi, ebp
rol edi, 1
xor r10d, ecx
add edx, edi
mov ebp, edi
mov dword [rsp + 0x14], edi
add edx, r10d
mov r10d, eax
rol r10d, 5
rol ecx, 0x1e
add edx, r10d
add edx, 0x6ed9eba1
mov r10d, ecx
xor r10d, r9d
mov r11d, esi
mov esi, dword [rsp + 8]
xor r11d, esi
xor r11d, dword [rsp + 0x1c]
xor r11d, r12d
rol r11d, 1
xor r10d, eax
add r8d, r11d
mov dword [rsp + 4], r11d
add r8d, r10d
mov r10d, edx
rol r10d, 5
rol eax, 0x1e
add r8d, r10d
add r8d, 0x6ed9eba1
mov r10d, eax
xor r10d, ecx
mov r12d, dword [rsp + 0x24]
xor r13d, r12d
xor r13d, ebx
xor r13d, r14d
rol r13d, 1
xor r10d, edx
add r9d, r13d
mov ebx, r13d
mov dword [rsp + 0x30], r13d
add r9d, r10d
mov r10d, r8d
rol r10d, 5
rol edx, 0x1e
add r9d, r10d
add r9d, 0x6ed9eba1
mov r10d, edx
xor r10d, eax
mov r14d, esi
mov edi, dword [rsp + 0x28]
xor r14d, edi
xor r14d, r15d
xor r14d, ebp
rol r14d, 1
xor r10d, r8d
add ecx, r14d
mov dword [rsp + 8], r14d
add ecx, r10d
mov r10d, r9d
rol r10d, 5
rol r8d, 0x1e
add ecx, r10d
add ecx, 0x6ed9eba1
mov r10d, r8d
xor r10d, edx
mov esi, dword [rsp + 0x2c]
mov r13d, r12d
xor r13d, esi
xor r13d, dword [rsp + 0x34]
xor r13d, r11d
rol r13d, 1
xor r10d, r9d
add eax, r13d
mov dword [rsp + 0x24], r13d
add eax, r10d
mov r10d, ecx
rol r10d, 5
rol r9d, 0x1e
add eax, r10d
add eax, 0x6ed9eba1
mov r10d, r9d
xor r10d, r8d
mov r12d, edi
mov rbp, qword [rsp + 0x38]
xor r12d, ebp
xor r12d, dword [rsp + 0x10]
xor r12d, ebx
rol r12d, 1
xor r10d, ecx
add edx, r12d
mov dword [rsp + 0x28], r12d
add edx, r10d
mov r10d, eax
rol r10d, 5
rol ecx, 0x1e
add edx, r10d
add edx, 0x6ed9eba1
mov r10d, ecx
xor r10d, r9d
mov r11d, esi
mov esi, dword [rsp + 0x20]
xor r11d, esi
xor r11d, dword [rsp + 0x18]
xor r11d, r14d
rol r11d, 1
xor r10d, eax
add r8d, r11d
mov dword [rsp + 0x2c], r11d
add r8d, r10d
mov r10d, edx
rol r10d, 5
rol eax, 0x1e
add r8d, r10d
add r8d, 0x6ed9eba1
mov r10d, eax
xor r10d, ecx
mov edi, dword [rsp + 0x1c]
xor ebp, edi
xor ebp, dword [rsp + 0xc]
xor ebp, r13d
rol ebp, 1
xor r10d, edx
add r9d, ebp
mov qword [rsp + 0x38], rbp
add r9d, r10d
mov r10d, r8d
rol r10d, 5
rol edx, 0x1e
add r9d, r10d
add r9d, 0x6ed9eba1
mov r10d, edx
xor r10d, eax
mov rbx, qword [rsp + 0x40]
xor esi, ebx
xor esi, dword [rsp + 0x14]
xor esi, r12d
rol esi, 1
xor r10d, r8d
add ecx, esi
mov dword [rsp + 0x20], esi
add ecx, r10d
mov r10d, r9d
rol r10d, 5
rol r8d, 0x1e
add ecx, r10d
add ecx, 0x6ed9eba1
mov r10d, r8d
xor r10d, edx
xor edi, r15d
xor edi, dword [rsp + 4]
xor edi, r11d
rol edi, 1
xor r10d, r9d
add eax, edi
mov dword [rsp + 0x1c], edi
add eax, r10d
mov r10d, ecx
rol r10d, 5
rol r9d, 0x1e
add eax, r10d
add eax, 0x6ed9eba1
mov r10d, r9d
xor r10d, r8d
mov r11d, dword [rsp + 0x34]
xor ebx, r11d
mov r12d, dword [rsp + 0x30]
xor ebx, r12d
xor ebx, ebp
rol ebx, 1
xor r10d, ecx
add edx, ebx
add edx, r10d
mov r10d, eax
rol r10d, 5
rol ecx, 0x1e
add edx, r10d
add edx, 0x6ed9eba1
mov r10d, ecx
xor r10d, r9d
mov r13d, dword [rsp + 0x10]
xor r15d, r13d
xor r15d, dword [rsp + 8]
xor r15d, esi
rol r15d, 1
xor r10d, eax
add r8d, r15d
add r8d, r10d
mov r10d, edx
rol r10d, 5
rol eax, 0x1e
add r10d, r8d
add r10d, 0x6ed9eba1
mov r8d, eax
xor r8d, ecx
mov ebp, r11d
mov esi, dword [rsp + 0x18]
xor ebp, esi
xor ebp, dword [rsp + 0x24]
xor ebp, edi
rol ebp, 1
xor r8d, edx
add r9d, ebp
mov r14d, ebp
mov dword [rsp + 0x34], ebp
add r9d, r8d
mov r8d, r10d
rol r8d, 5
rol edx, 0x1e
lea r11d, [r8 + r9]
add r11d, 0x6ed9eba1
mov r8d, edx
xor r8d, eax
mov edi, r13d
mov r13d, dword [rsp + 0xc]
xor edi, r13d
xor edi, dword [rsp + 0x28]
xor edi, ebx
mov qword [rsp + 0x40], rbx
rol edi, 1
xor r8d, r10d
add ecx, edi
mov dword [rsp + 0x10], edi
add ecx, r8d
mov r8d, r11d
rol r8d, 5
rol r10d, 0x1e
add ecx, r8d
add ecx, 0x6ed9eba1
mov r8d, r10d
xor r8d, edx
mov ebp, dword [rsp + 0x14]
xor esi, ebp
xor esi, dword [rsp + 0x2c]
xor esi, r15d
rol esi, 1
xor r8d, r11d
add eax, esi
mov dword [rsp + 0x18], esi
add eax, r8d
mov r8d, ecx
rol r8d, 5
rol r11d, 0x1e
lea r9d, [r8 + rax]
add r9d, 0x6ed9eba1
mov eax, r11d
xor eax, r10d
mov r8d, r13d
mov r13d, dword [rsp + 4]
xor r8d, r13d
xor r8d, dword [rsp + 0x38]
xor r8d, r14d
rol r8d, 1
xor eax, ecx
add edx, r8d
mov r14d, r8d
mov dword [rsp + 0xc], r8d
add edx, eax
mov eax, r9d
rol eax, 5
rol ecx, 0x1e
lea r8d, [rax + rdx]
add r8d, 0x6ed9eba1
mov eax, ecx
xor eax, r11d
xor ebp, r12d
xor ebp, dword [rsp + 0x20]
xor ebp, edi
rol ebp, 1
xor eax, r9d
add r10d, ebp
mov dword [rsp + 0x14], ebp
add r10d, eax
mov eax, r8d
rol eax, 5
rol r9d, 0x1e
add eax, r10d
add eax, 0x6ed9eba1
mov edx, r9d
xor edx, ecx
mov r10d, r13d
mov edi, dword [rsp + 8]
xor r10d, edi
xor r10d, dword [rsp + 0x1c]
xor r10d, esi
rol r10d, 1
mov dword [rsp + 4], r10d
xor edx, r8d
add r11d, r10d
add r11d, edx
mov edx, eax
rol edx, 5
rol r8d, 0x1e
add edx, r11d
add edx, 0x6ed9eba1
mov r10d, eax
or r10d, r8d
and r10d, r9d
mov r11d, eax
and r11d, r8d
or r11d, r10d
mov r13d, dword [rsp + 0x24]
xor r12d, r13d
xor r12d, ebx
xor r12d, r14d
rol r12d, 1
mov r10d, edx
rol r10d, 5
add ecx, r12d
mov ebx, r12d
mov dword [rsp + 0x30], r12d
add ecx, r11d
add ecx, r10d
add ecx, 0x8f1bbcdc
rol eax, 0x1e
mov r10d, edx
or r10d, eax
and r10d, r8d
mov r11d, edx
and r11d, eax
or r11d, r10d
mov r12d, edi
mov esi, dword [rsp + 0x28]
xor r12d, esi
xor r12d, r15d
xor r12d, ebp
rol r12d, 1
add r9d, r12d
mov dword [rsp + 8], r12d
add r9d, r11d
mov r10d, ecx
rol r10d, 5
add r9d, r10d
add r9d, 0x8f1bbcdc
rol edx, 0x1e
mov r10d, ecx
or r10d, edx
and r10d, eax
mov r11d, ecx
and r11d, edx
or r11d, r10d
mov r14d, dword [rsp + 0x2c]
xor r13d, r14d
xor r13d, dword [rsp + 0x34]
xor r13d, dword [rsp + 4]
rol r13d, 1
add r8d, r13d
mov dword [rsp + 0x24], r13d
add r8d, r11d
mov r10d, r9d
rol r10d, 5
add r8d, r10d
add r8d, 0x8f1bbcdc
rol ecx, 0x1e
mov r10d, r9d
or r10d, ecx
and r10d, edx
mov r11d, r9d
and r11d, ecx
mov rdi, qword [rsp + 0x38]
xor esi, edi
xor esi, dword [rsp + 0x10]
xor esi, ebx
rol esi, 1
or r11d, r10d
add eax, esi
mov ebp, esi
mov dword [rsp + 0x28], esi
add eax, r11d
mov r10d, r8d
rol r10d, 5
rol r9d, 0x1e
add eax, r10d
add eax, 0x8f1bbcdc
mov r10d, r8d
or r10d, r9d
and r10d, ecx
mov r11d, r8d
and r11d, r9d
or r11d, r10d
mov r10d, r14d
mov r14d, dword [rsp + 0x20]
xor r10d, r14d
xor r10d, dword [rsp + 0x18]
xor r10d, r12d
rol r10d, 1
mov esi, r10d
mov dword [rsp + 0x2c], r10d
mov r10d, eax
rol r10d, 5
add edx, esi
add edx, r11d
add edx, r10d
add edx, 0x8f1bbcdc
rol r8d, 0x1e
mov r10d, eax
or r10d, r8d
and r10d, r9d
mov r11d, eax
and r11d, r8d
or r11d, r10d
mov esi, dword [rsp + 0x1c]
mov r12, rdi
xor r12d, esi
xor r12d, dword [rsp + 0xc]
xor r12d, r13d
rol r12d, 1
add ecx, r12d
mov qword [rsp + 0x38], r12
add ecx, r11d
mov r10d, edx
rol r10d, 5
add r10d, ecx
add r10d, 0x8f1bbcdc
rol eax, 0x1e
mov ecx, edx
or ecx, eax
and ecx, r8d
mov r11d, edx
and r11d, eax
or r11d, ecx
mov ecx, r14d
mov rbx, qword [rsp + 0x40]
xor ecx, ebx
xor ecx, dword [rsp + 0x14]
xor ecx, ebp
rol ecx, 1
add r9d, ecx
mov r14d, ecx
mov dword [rsp + 0x20], ecx
add r9d, r11d
mov ecx, r10d
rol ecx, 5
add r9d, ecx
add r9d, 0x8f1bbcdc
rol edx, 0x1e
mov ecx, r10d
or ecx, edx
and ecx, eax
mov r11d, r10d
and r11d, edx
mov edi, esi
xor edi, r15d
xor edi, dword [rsp + 4]
mov r13d, dword [rsp + 0x2c]
xor edi, r13d
rol edi, 1
or r11d, ecx
add r8d, edi
mov dword [rsp + 0x1c], edi
add r8d, r11d
mov ecx, r9d
rol ecx, 5
rol r10d, 0x1e
add ecx, r8d
add ecx, 0x8f1bbcdc
mov r8d, r9d
or r8d, r10d
and r8d, edx
mov r11d, r9d
and r11d, r10d
or r11d, r8d
mov ebp, dword [rsp + 0x34]
xor ebx, ebp
xor ebx, dword [rsp + 0x30]
xor ebx, r12d
rol ebx, 1
mov r8d, ecx
rol r8d, 5
add eax, ebx
add eax, r11d
add r8d, eax
add r8d, 0x8f1bbcdc
rol r9d, 0x1e
mov eax, ecx
or eax, r9d
and eax, r10d
mov r11d, ecx
and r11d, r9d
or r11d, eax
mov esi, dword [rsp + 0x10]
xor r15d, esi
xor r15d, dword [rsp + 8]
xor r15d, r14d
rol r15d, 1
add edx, r15d
add edx, r11d
mov eax, r8d
rol eax, 5
add edx, eax
add edx, 0x8f1bbcdc
rol ecx, 0x1e
mov eax, r8d
or eax, ecx
and eax, r9d
mov r11d, r8d
and r11d, ecx
or r11d, eax
mov r12d, ebp
mov r14d, dword [rsp + 0x18]
xor r12d, r14d
xor r12d, dword [rsp + 0x24]
xor r12d, edi
rol r12d, 1
add r10d, r12d
add r10d, r11d
mov eax, edx
rol eax, 5
add eax, r10d
add eax, 0x8f1bbcdc
rol r8d, 0x1e
mov r10d, edx
or r10d, r8d
and r10d, ecx
mov r11d, edx
and r11d, r8d
mov edi, esi
mov ebp, dword [rsp + 0xc]
xor edi, ebp
xor edi, dword [rsp + 0x28]
xor edi, ebx
mov qword [rsp + 0x40], rbx
rol edi, 1
or r11d, r10d
add r9d, edi
mov dword [rsp + 0x10], edi
add r9d, r11d
mov r10d, eax
rol r10d, 5
rol edx, 0x1e
add r10d, r9d
add r10d, 0x8f1bbcdc
mov r9d, eax
or r9d, edx
and r9d, r8d
mov r11d, eax
and r11d, edx
or r11d, r9d
mov r9d, r14d
mov r14d, dword [rsp + 0x14]
xor r9d, r14d
xor r9d, r13d
xor r9d, r15d
rol r9d, 1
mov r13d, r9d
mov r9d, r10d
rol r9d, 5
add ecx, r13d
mov dword [rsp + 0x18], r13d
add ecx, r11d
add r9d, ecx
add r9d, 0x8f1bbcdc
rol eax, 0x1e
mov ecx, r10d
or ecx, eax
and ecx, edx
mov r11d, r10d
and r11d, eax
or r11d, ecx
mov esi, dword [rsp + 4]
xor ebp, esi
xor ebp, dword [rsp + 0x38]
mov dword [rsp + 0x34], r12d
xor ebp, r12d
rol ebp, 1
mov dword [rsp + 0xc], ebp
add r8d, ebp
add r8d, r11d
mov ecx, r9d
rol ecx, 5
add r8d, ecx
add r8d, 0x8f1bbcdc
rol r10d, 0x1e
mov ecx, r9d
or ecx, r10d
and ecx, eax
mov r11d, r9d
and r11d, r10d
or r11d, ecx
mov ecx, r14d
mov r12d, dword [rsp + 0x30]
xor ecx, r12d
xor ecx, dword [rsp + 0x20]
xor ecx, edi
rol ecx, 1
add edx, ecx
mov edi, ecx
mov dword [rsp + 0x14], ecx
add edx, r11d
mov ecx, r8d
rol ecx, 5
add ecx, edx
add ecx, 0x8f1bbcdc
rol r9d, 0x1e
mov edx, r8d
or edx, r9d
and edx, r10d
mov r11d, r8d
and r11d, r9d
mov r14d, dword [rsp + 8]
xor esi, r14d
xor esi, dword [rsp + 0x1c]
xor esi, r13d
rol esi, 1
or r11d, edx
add eax, esi
mov r13d, esi
mov dword [rsp + 4], esi
add eax, r11d
mov edx, ecx
rol edx, 5
rol r8d, 0x1e
add eax, edx
add eax, 0x8f1bbcdc
mov edx, ecx
or edx, r8d
and edx, r9d
mov r11d, ecx
and r11d, r8d
or r11d, edx
mov ebp, dword [rsp + 0x24]
xor r12d, ebp
xor r12d, ebx
xor r12d, dword [rsp + 0xc]
rol r12d, 1
mov ebx, r12d
mov edx, eax
rol edx, 5
add r10d, r12d
add r10d, r11d
add edx, r10d
add edx, 0x8f1bbcdc
rol ecx, 0x1e
mov r10d, eax
or r10d, ecx
and r10d, r8d
mov r11d, eax
and r11d, ecx
or r11d, r10d
mov esi, dword [rsp + 0x28]
xor r14d, esi
xor r14d, r15d
xor r14d, edi
rol r14d, 1
add r9d, r14d
mov edi, r14d
mov dword [rsp + 8], r14d
add r9d, r11d
mov r10d, edx
rol r10d, 5
add r9d, r10d
add r9d, 0x8f1bbcdc
rol eax, 0x1e
mov r10d, edx
or r10d, eax
and r10d, ecx
mov r11d, edx
and r11d, eax
or r11d, r10d
mov r12d, ebp
mov r14d, dword [rsp + 0x2c]
xor r12d, r14d
xor r12d, dword [rsp + 0x34]
xor r12d, r13d
rol r12d, 1
add r8d, r12d
mov dword [rsp + 0x24], r12d
add r8d, r11d
mov r10d, r9d
rol r10d, 5
add r8d, r10d
add r8d, 0x8f1bbcdc
rol edx, 0x1e
mov r10d, r9d
or r10d, edx
and r10d, eax
mov r11d, r9d
and r11d, edx
xor esi, dword [rsp + 0x38]
xor esi, dword [rsp + 0x10]
xor esi, ebx
mov r13d, ebx
rol esi, 1
or r11d, r10d
add ecx, esi
mov ebp, esi
mov dword [rsp + 0x28], esi
add ecx, r11d
mov r10d, r8d
rol r10d, 5
rol r9d, 0x1e
add ecx, r10d
add ecx, 0x8f1bbcdc
mov r10d, r9d
xor r10d, edx
mov r11d, dword [rsp + 0x20]
xor r14d, r11d
xor r14d, dword [rsp + 0x18]
xor r14d, edi
rol r14d, 1
xor r10d, r8d
add eax, r14d
mov ebx, r14d
mov dword [rsp + 0x2c], r14d
add eax, r10d
mov r10d, ecx
rol r10d, 5
rol r8d, 0x1e
add eax, r10d
add eax, 0xca62c1d6
mov r10d, r8d
xor r10d, r9d
mov esi, dword [rsp + 0x1c]
mov rdi, qword [rsp + 0x38]
xor edi, esi
xor edi, dword [rsp + 0xc]
xor edi, r12d
rol edi, 1
xor r10d, ecx
add edx, edi
mov r14, rdi
mov qword [rsp + 0x38], rdi
add edx, r10d
mov r10d, eax
rol r10d, 5
rol ecx, 0x1e
add r10d, edx
add r10d, 0xca62c1d6
mov edx, ecx
xor edx, r8d
mov r12d, r11d
mov rdi, qword [rsp + 0x40]
xor r12d, edi
xor r12d, dword [rsp + 0x14]
xor r12d, ebp
rol r12d, 1
xor edx, eax
add r9d, r12d
mov dword [rsp + 0x20], r12d
add r9d, edx
mov edx, r10d
rol edx, 5
rol eax, 0x1e
add r9d, edx
add r9d, 0xca62c1d6
mov edx, eax
xor edx, ecx
mov r11d, esi
xor r11d, r15d
xor r11d, dword [rsp + 4]
xor r11d, ebx
rol r11d, 1
xor edx, r10d
add r8d, r11d
mov ebx, r11d
mov dword [rsp + 0x1c], r11d
add r8d, edx
mov edx, r9d
rol edx, 5
rol r10d, 0x1e
lea r11d, [rdx + r8]
add r11d, 0xca62c1d6
mov edx, r10d
xor edx, eax
mov ebp, dword [rsp + 0x34]
xor edi, ebp
mov dword [rsp + 0x30], r13d
xor edi, r13d
xor edi, r14d
rol edi, 1
xor edx, r9d
add ecx, edi
add ecx, edx
mov edx, r11d
rol edx, 5
rol r9d, 0x1e
add ecx, edx
add ecx, 0xca62c1d6
mov edx, r9d
xor edx, r10d
mov esi, dword [rsp + 0x10]
xor r15d, esi
xor r15d, dword [rsp + 8]
xor r15d, r12d
rol r15d, 1
xor edx, r11d
add eax, r15d
add eax, edx
mov edx, ecx
rol edx, 5
rol r11d, 0x1e
add edx, eax
add edx, 0xca62c1d6
mov eax, r11d
xor eax, r9d
mov r12d, ebp
mov r14d, dword [rsp + 0x18]
xor r12d, r14d
xor r12d, dword [rsp + 0x24]
xor r12d, ebx
rol r12d, 1
xor eax, ecx
add r10d, r12d
mov dword [rsp + 0x34], r12d
add r10d, eax
mov eax, edx
rol eax, 5
rol ecx, 0x1e
lea r8d, [rax + r10]
add r8d, 0xca62c1d6
mov eax, ecx
xor eax, r11d
mov r10d, esi
mov esi, dword [rsp + 0xc]
xor r10d, esi
xor r10d, dword [rsp + 0x28]
xor r10d, edi
rol r10d, 1
xor eax, edx
add r9d, r10d
mov r13d, r10d
mov dword [rsp + 0x10], r10d
add r9d, eax
mov eax, r8d
rol eax, 5
rol edx, 0x1e
add r9d, eax
add r9d, 0xca62c1d6
mov eax, edx
xor eax, ecx
mov r10d, r14d
mov ebp, dword [rsp + 0x14]
xor r10d, ebp
xor r10d, dword [rsp + 0x2c]
xor r10d, r15d
rol r10d, 1
xor eax, r8d
add r11d, r10d
mov ebx, r10d
mov dword [rsp + 0x18], r10d
add r11d, eax
mov eax, r9d
rol eax, 5
rol r8d, 0x1e
add eax, r11d
add eax, 0xca62c1d6
mov r10d, r8d
xor r10d, edx
mov r11d, esi
mov esi, dword [rsp + 4]
xor r11d, esi
xor r11d, dword [rsp + 0x38]
xor r11d, r12d
rol r11d, 1
mov dword [rsp + 0xc], r11d
xor r10d, r9d
add ecx, r11d
add ecx, r10d
mov r10d, eax
rol r10d, 5
rol r9d, 0x1e
add ecx, r10d
add ecx, 0xca62c1d6
mov r10d, r9d
xor r10d, r8d
mov r12d, ebp
mov r14d, dword [rsp + 0x30]
xor r12d, r14d
xor r12d, dword [rsp + 0x20]
xor r12d, r13d
rol r12d, 1
xor r10d, eax
add edx, r12d
add edx, r10d
mov r10d, ecx
rol r10d, 5
rol eax, 0x1e
add edx, r10d
add edx, 0xca62c1d6
mov r10d, eax
xor r10d, r9d
mov r11d, esi
mov ebp, dword [rsp + 8]
xor r11d, ebp
xor r11d, dword [rsp + 0x1c]
xor r11d, ebx
rol r11d, 1
xor r10d, ecx
add r8d, r11d
add r8d, r10d
mov r10d, edx
rol r10d, 5
rol ecx, 0x1e
add r8d, r10d
add r8d, 0xca62c1d6
mov r10d, ecx
xor r10d, eax
mov esi, r14d
mov r13d, dword [rsp + 0x24]
xor esi, r13d
mov rbx, rdi
mov qword [rsp + 0x40], rdi
xor esi, ebx
mov edi, dword [rsp + 0xc]
xor esi, edi
rol esi, 1
mov dword [rsp + 0x30], esi
xor r10d, edx
add r9d, esi
add r9d, r10d
mov r10d, r8d
rol r10d, 5
rol edx, 0x1e
add r10d, r9d
add r10d, 0xca62c1d6
mov r9d, edx
xor r9d, ecx
mov esi, ebp
mov r14d, dword [rsp + 0x28]
xor esi, r14d
mov qword [rsp + 0x48], r15
xor esi, r15d
xor esi, r12d
mov dword [rsp + 0x14], r12d
rol esi, 1
mov dword [rsp + 8], esi
xor r9d, r8d
add eax, esi
add eax, r9d
mov r9d, r10d
rol r9d, 5
add r9d, eax
add r9d, 0xca62c1d6
mov rsi, qword [rsp + 0x50]
mov dword [rsi], ebx
mov dword [rsi + 4], r15d
mov eax, dword [rsp + 0x34]
mov dword [rsi + 8], eax
mov r15d, dword [rsp + 0x2c]
xor r13d, r15d
xor r13d, eax
rol r8d, 0x1e
mov eax, r8d
xor eax, edx
xor eax, r10d
mov ebx, r11d
mov dword [rsp + 4], r11d
xor r13d, r11d
rol r13d, 1
mov r11d, r9d
rol r11d, 5
add ecx, r13d
add ecx, eax
lea ebp, [r11 + rcx]
add ebp, 0xca62c1d6
mov r11, rsi
mov ecx, dword [rsp + 0x10]
mov dword [rsi + 0xc], ecx
mov esi, r14d
mov r14, qword [rsp + 0x38]
xor esi, r14d
xor esi, ecx
mov eax, dword [rsp + 0x18]
mov dword [r11 + 0x10], eax
mov dword [r11 + 0x14], edi
mov dword [r11 + 0x18], r12d
mov dword [r11 + 0x1c], ebx
mov ecx, dword [rsp + 0x30]
mov dword [r11 + 0x20], ecx
rol r10d, 0x1e
xor esi, ecx
mov ecx, r10d
xor ecx, r8d
xor ecx, r9d
rol esi, 1
add edx, esi
add edx, ecx
mov ecx, ebp
rol ecx, 5
add ecx, edx
add ecx, 0xca62c1d6
mov r12d, dword [rsp + 0x20]
xor r15d, r12d
xor r15d, eax
mov eax, dword [rsp + 8]
mov dword [r11 + 0x24], eax
xor r15d, eax
rol r9d, 0x1e
mov edx, r9d
xor edx, r10d
xor edx, ebp
rol r15d, 1
add r8d, r15d
add r8d, edx
mov edx, ecx
rol edx, 5
add edx, r8d
add edx, 0xca62c1d6
mov eax, dword [rsp + 0x1c]
xor r14d, eax
xor r14d, edi
mov dword [r11 + 0x28], r13d
xor r14d, r13d
mov dword [r11 + 0x2c], esi
rol ebp, 0x1e
mov dword [r11 + 0x30], r15d
rol r14d, 1
mov dword [r11 + 0x34], r14d
add r14d, r10d
mov r8d, ebp
xor r8d, r9d
xor r8d, ecx
add r14d, r8d
mov r8d, edx
rol r8d, 5
add r8d, r14d
add r8d, 0xca62c1d6
mov rdi, qword [rsp + 0x40]
xor edi, r12d
rol ecx, 0x1e
xor edi, dword [rsp + 0x14]
xor edi, esi
mov r10d, ecx
xor r10d, ebp
xor r10d, edx
rol edi, 1
mov dword [r11 + 0x38], edi
add edi, r9d
mov r9d, r8d
rol r9d, 5
add edi, r10d
add r9d, edi
add r9d, 0xca62c1d6
mov rsi, qword [rsp + 0x48]
xor esi, eax
xor esi, dword [rsp + 4]
xor esi, r15d
rol esi, 1
mov dword [r11 + 0x3c], esi
rol edx, 0x1e
mov r10, qword [rsp + 0x58]
add esi, dword [r10]
add esi, ebp
movd xmm0, edx
xor edx, ecx
xor edx, r8d
movd xmm1, r9d
rol r9d, 5
add esi, edx
lea eax, [r9 + rsi]
add eax, 0xca62c1d6
rol r8d, 0x1e
mov dword [r10], eax
movd xmm2, r8d
movd xmm3, ecx
punpckldq xmm1, xmm2
movdqu xmm2, xmmword [r10 + 4]
punpckldq xmm0, xmm3
punpcklqdq xmm1, xmm0
paddd xmm1, xmm2
movdqu xmmword [r10 + 4], xmm1
inc qword [r10 + 0x38]
add rsp, 0x60
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret