Function at 0x1400c8160
Capabilities:
Hash data using sha1

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push r12
push r14
push r15
mov r11d, dword [rdx + 8]
mov r12, rdx
mov edi, dword [rdx]
mov r15, rcx
mov r10d, dword [rdx + 0xc]
mov ebx, dword [rdx + 4]
mov r9d, dword [rdx + 0x10]
movups xmm0, xmmword [r8]
mov rax, qword [rcx + 0xc0]
add r9d, 0x5a827999
movups xmmword [rax], xmm0
movups xmm1, xmmword [r8 + 0x10]
movups xmmword [rax + 0x10], xmm1
movups xmm0, xmmword [r8 + 0x20]
movups xmmword [rax + 0x20], xmm0
movups xmm1, xmmword [r8 + 0x30]
mov r8d, r10d
xor r8d, r11d
movups xmmword [rax + 0x30], xmm1
mov rcx, qword [rcx + 0xc0]
and r8d, ebx
xor r8d, r10d
rol ebx, 0x1e
add r10d, 0x5a827999
mov eax, dword [rcx]
mov edx, eax
rol eax, 8
and eax, 0xff00ff
rol edx, 0x18
and edx, 0xff00ff00
or edx, eax
mov eax, edi
mov dword [rcx], edx
mov rcx, qword [r15 + 0xc0]
rol eax, 5
add eax, edx
add r8d, eax
mov eax, dword [rcx + 4]
add r8d, r9d
mov edx, eax
mov r9d, r11d
rol eax, 8
xor r9d, ebx
and eax, 0xff00ff
rol edx, 0x18
and edx, 0xff00ff00
and r9d, edi
or edx, eax
rol edi, 0x1e
mov dword [rcx + 4], edx
xor r9d, r11d
mov rcx, qword [r15 + 0xc0]
mov eax, r8d
rol eax, 5
add r11d, 0x5a827999
add eax, edx
add r9d, eax
mov eax, dword [rcx + 8]
add r9d, r10d
mov edx, eax
mov r10d, ebx
rol eax, 8
xor r10d, edi
and eax, 0xff00ff
rol edx, 0x18
and r10d, r8d
and edx, 0xff00ff00
or edx, eax
rol r8d, 0x1e
mov dword [rcx + 8], edx
xor r10d, ebx
mov rcx, qword [r15 + 0xc0]
mov eax, r9d
rol eax, 5
add eax, edx
add r10d, eax
mov eax, dword [rcx + 0xc]
add r10d, r11d
mov edx, eax
rol edx, 0x18
and edx, 0xff00ff00
rol eax, 8
add ebx, 0x5a827999
and eax, 0xff00ff
mov r11d, r8d
or edx, eax
xor r11d, edi
mov dword [rcx + 0xc], edx
and r11d, r9d
mov rcx, qword [r15 + 0xc0]
xor r11d, edi
rol r9d, 0x1e
mov eax, r10d
rol eax, 5
add eax, edx
add r11d, eax
mov eax, dword [rcx + 0x10]
mov edx, eax
add r11d, ebx
rol eax, 8
mov ebx, r8d
and eax, 0xff00ff
rol edx, 0x18
and edx, 0xff00ff00
xor ebx, r9d
or edx, eax
and ebx, r10d
mov dword [rcx + 0x10], edx
xor ebx, r8d
mov rcx, qword [r15 + 0xc0]
add edx, 0x5a827999
rol r10d, 0x1e
mov eax, r11d
rol eax, 5
add eax, edx
add ebx, eax
mov eax, dword [rcx + 0x14]
mov edx, eax
add ebx, edi
rol edx, 0x18
rol eax, 8
and edx, 0xff00ff00
and eax, 0xff00ff
or edx, eax
mov eax, ebx
mov dword [rcx + 0x14], edx
mov ecx, r9d
xor ecx, r10d
rol eax, 5
and ecx, r11d
add edx, 0x5a827999
add eax, edx
rol r11d, 0x1e
xor ecx, r9d
add ecx, eax
add r8d, ecx
mov rcx, qword [r15 + 0xc0]
mov eax, dword [rcx + 0x18]
mov edx, eax
rol edx, 0x18
rol eax, 8
and edx, 0xff00ff00
and eax, 0xff00ff
or edx, eax
mov eax, r8d
mov dword [rcx + 0x18], edx
mov ecx, r10d
xor ecx, r11d
rol eax, 5
and ecx, ebx
add edx, 0x5a827999
add eax, edx
rol ebx, 0x1e
xor ecx, r10d
add ecx, eax
add r9d, ecx
mov rcx, qword [r15 + 0xc0]
mov eax, dword [rcx + 0x1c]
mov edx, eax
rol edx, 0x18
and edx, 0xff00ff00
rol eax, 8
and eax, 0xff00ff
mov edi, r11d
or edx, eax
xor edi, ebx
mov dword [rcx + 0x1c], edx
and edi, r8d
mov rcx, qword [r15 + 0xc0]
add edx, 0x5a827999
rol r8d, 0x1e
xor edi, r11d
mov eax, r9d
mov esi, r8d
rol eax, 5
xor esi, ebx
add eax, edx
and esi, r9d
add edi, eax
rol r9d, 0x1e
mov eax, dword [rcx + 0x20]
add edi, r10d
mov edx, eax
xor esi, ebx
rol eax, 8
mov ebp, r8d
and eax, 0xff00ff
rol edx, 0x18
and edx, 0xff00ff00
xor ebp, r9d
or edx, eax
and ebp, edi
mov dword [rcx + 0x20], edx
xor ebp, r8d
mov rcx, qword [r15 + 0xc0]
add edx, 0x5a827999
mov eax, edi
mov r14d, r9d
rol eax, 5
add eax, edx
rol edi, 0x1e
add esi, eax
xor r14d, edi
mov eax, dword [rcx + 0x24]
add esi, r11d
mov edx, eax
and r14d, esi
rol eax, 8
xor r14d, r9d
and eax, 0xff00ff
rol edx, 0x18
and edx, 0xff00ff00
or edx, eax
mov eax, esi
mov dword [rcx + 0x24], edx
add edx, 0x5a827999
mov rcx, qword [r15 + 0xc0]
rol eax, 5
add eax, edx
rol esi, 0x1e
add ebp, eax
mov eax, dword [rcx + 0x28]
add ebp, ebx
mov edx, eax
rol eax, 8
rol edx, 0x18
and eax, 0xff00ff
and edx, 0xff00ff00
or edx, eax
mov eax, ebp
mov dword [rcx + 0x28], edx
add edx, 0x5a827999
mov rcx, qword [r15 + 0xc0]
rol eax, 5
add eax, edx
add r14d, eax
mov eax, dword [rcx + 0x2c]
add r14d, r8d
mov edx, eax
rol eax, 8
rol edx, 0x18
and edx, 0xff00ff00
and eax, 0xff00ff
or edx, eax
mov r10d, edi
mov dword [rcx + 0x2c], edx
xor r10d, esi
mov rcx, qword [r15 + 0xc0]
add edx, 0x5a827999
and r10d, ebp
mov eax, r14d
rol eax, 5
xor r10d, edi
add eax, edx
rol ebp, 0x1e
add r10d, eax
mov r11d, esi
mov eax, dword [rcx + 0x30]
xor r11d, ebp
mov edx, eax
and r11d, r14d
rol eax, 8
add r10d, r9d
and eax, 0xff00ff
rol edx, 0x18
and edx, 0xff00ff00
rol r14d, 0x1e
or edx, eax
xor r11d, esi
mov dword [rcx + 0x30], edx
mov eax, r10d
mov rcx, qword [r15 + 0xc0]
add edx, 0x5a827999
rol eax, 5
mov ebx, r14d
add eax, edx
xor ebx, ebp
add r11d, eax
and ebx, r10d
mov eax, dword [rcx + 0x34]
add r11d, edi
mov edx, eax
rol r10d, 0x1e
rol eax, 8
xor ebx, ebp
and eax, 0xff00ff
rol edx, 0x18
and edx, 0xff00ff00
mov r8d, r14d
or edx, eax
xor r8d, r10d
mov dword [rcx + 0x34], edx
and r8d, r11d
mov rcx, qword [r15 + 0xc0]
add edx, 0x5a827999
xor r8d, r14d
mov eax, r11d
rol eax, 5
add eax, edx
rol r11d, 0x1e
add ebx, eax
mov eax, dword [rcx + 0x38]
mov edx, eax
add ebx, esi
rol eax, 8
and eax, 0xff00ff
rol edx, 0x18
and edx, 0xff00ff00
or edx, eax
mov eax, ebx
mov dword [rcx + 0x38], edx
add edx, 0x5a827999
mov rcx, qword [r15 + 0xc0]
rol eax, 5
add eax, edx
add r8d, eax
mov eax, dword [rcx + 0x3c]
add r8d, ebp
mov edx, eax
rol eax, 8
rol edx, 0x18
and eax, 0xff00ff
and edx, 0xff00ff00
or edx, eax
mov dword [rcx + 0x3c], edx
mov r9d, r10d
add edx, 0x5a827999
xor r9d, r11d
and r9d, ebx
mov eax, r8d
rol eax, 5
xor r9d, r10d
add eax, edx
rol ebx, 0x1e
add r9d, eax
mov ecx, r11d
mov rax, qword [r15 + 0xc0]
xor ecx, ebx
and ecx, r8d
add r9d, r14d
xor ecx, r11d
rol r8d, 0x1e
mov edx, dword [rax + 0x34]
xor edx, dword [rax + 0x20]
xor edx, dword [rax + 8]
xor edx, dword [rax]
rol edx, 1
mov dword [rax], edx
add edx, 0x5a827999
mov eax, r9d
rol eax, 5
add eax, edx
add ecx, eax
mov rax, qword [r15 + 0xc0]
add r10d, ecx
mov ecx, ebx
xor ecx, r8d
and ecx, r9d
rol r9d, 0x1e
mov edx, dword [rax + 0x38]
xor ecx, ebx
xor edx, dword [rax + 0x24]
xor edx, dword [rax + 0xc]
xor edx, dword [rax + 4]
rol edx, 1
mov dword [rax + 4], edx
add edx, 0x5a827999
mov eax, r10d
rol eax, 5
add eax, edx
add ecx, eax
mov rax, qword [r15 + 0xc0]
add r11d, ecx
mov ecx, r9d
xor ecx, r8d
and ecx, r10d
rol r10d, 0x1e
mov edx, dword [rax + 0x3c]
xor ecx, r8d
xor edx, dword [rax + 0x28]
xor edx, dword [rax + 0x10]
xor edx, dword [rax + 8]
rol edx, 1
mov dword [rax + 8], edx
add edx, 0x5a827999
mov eax, r11d
rol eax, 5
add eax, edx
add ecx, eax
mov rax, qword [r15 + 0xc0]
add ebx, ecx
mov ecx, r9d
xor ecx, r10d
and ecx, r11d
mov edx, dword [rax + 0x2c]
xor ecx, r9d
xor edx, dword [rax + 0x14]
xor edx, dword [rax]
xor edx, dword [rax + 0xc]
rol edx, 1
mov dword [rax + 0xc], edx
mov eax, ebx
rol eax, 5
add edx, 0x5a827999
add eax, edx
add ecx, eax
rol r11d, 0x1e
mov rax, qword [r15 + 0xc0]
add r8d, ecx
mov ecx, r10d
xor ecx, r11d
xor ecx, ebx
rol ebx, 0x1e
mov edx, dword [rax + 0x30]
xor edx, dword [rax + 0x18]
xor edx, dword [rax + 4]
xor edx, dword [rax + 0x10]
rol edx, 1
mov dword [rax + 0x10], edx
add edx, 0x6ed9eba1
mov eax, r8d
rol eax, 5
add eax, edx
add ecx, eax
mov rax, qword [r15 + 0xc0]
add r9d, ecx
mov ecx, r11d
xor ecx, ebx
xor ecx, r8d
rol r8d, 0x1e
mov edx, dword [rax + 0x34]
xor edx, dword [rax + 0x1c]
xor edx, dword [rax + 8]
xor edx, dword [rax + 0x14]
rol edx, 1
mov dword [rax + 0x14], edx
add edx, 0x6ed9eba1
mov eax, r9d
rol eax, 5
add eax, edx
add ecx, eax
mov rax, qword [r15 + 0xc0]
add r10d, ecx
mov ecx, r9d
xor ecx, ebx
rol r9d, 0x1e
xor ecx, r8d
add ebx, 0x6ed9eba1
mov edx, dword [rax + 0x38]
mov edi, r9d
xor edx, dword [rax + 0x20]
xor edx, dword [rax + 0xc]
xor edx, dword [rax + 0x18]
rol edx, 1
mov dword [rax + 0x18], edx
add edx, 0x6ed9eba1
mov eax, r10d
rol eax, 5
add eax, edx
add ecx, eax
mov rax, qword [r15 + 0xc0]
add r11d, ecx
mov ecx, r9d
xor ecx, r10d
rol r10d, 0x1e
xor ecx, r8d
mov edx, dword [rax + 0x3c]
xor edx, dword [rax + 0x24]
xor edx, dword [rax + 0x10]
xor edx, dword [rax + 0x1c]
rol edx, 1
mov dword [rax + 0x1c], edx
mov eax, r11d
rol eax, 5
add eax, edx
add ecx, eax
mov rax, qword [r15 + 0xc0]
add ebx, ecx
mov edx, dword [rax + 0x28]
xor edx, dword [rax + 0x14]
xor edx, dword [rax + 0x20]
xor edx, dword [rax]
rol edx, 1
mov dword [rax + 0x20], edx
mov eax, ebx
rol eax, 5
add edx, 0x6ed9eba1
xor edi, r10d
add eax, edx
xor edi, r11d
add edi, eax
rol r11d, 0x1e
mov rax, qword [r15 + 0xc0]
add edi, r8d
mov esi, r10d
mov ebp, r11d
xor esi, r11d
xor esi, ebx
rol ebx, 0x1e
mov edx, dword [rax + 0x2c]
xor ebp, ebx
xor edx, dword [rax + 0x18]
xor ebp, edi
xor edx, dword [rax + 4]
xor edx, dword [rax + 0x24]
rol edx, 1
mov dword [rax + 0x24], edx
add edx, 0x6ed9eba1
mov eax, edi
rol edi, 0x1e
rol eax, 5
add eax, edx
add esi, eax
mov rax, qword [r15 + 0xc0]
add esi, r9d
mov r8d, esi
xor r8d, ebx
mov edx, dword [rax + 0x30]
xor r8d, edi
xor edx, dword [rax + 0x1c]
xor edx, dword [rax + 8]
xor edx, dword [rax + 0x28]
rol edx, 1
mov dword [rax + 0x28], edx
add edx, 0x6ed9eba1
mov eax, esi
rol esi, 0x1e
rol eax, 5
mov r9d, esi
add eax, edx
add ebp, eax
mov rax, qword [r15 + 0xc0]
add ebp, r10d
xor r9d, ebp
xor r9d, edi
mov edx, dword [rax + 0x34]
xor edx, dword [rax + 0x20]
xor edx, dword [rax + 0xc]
xor edx, dword [rax + 0x2c]
rol edx, 1
mov dword [rax + 0x2c], edx
add edx, 0x6ed9eba1
mov eax, ebp
rol ebp, 0x1e
rol eax, 5
add eax, edx
add r8d, eax
mov rax, qword [r15 + 0xc0]
add r8d, r11d
mov edx, dword [rax + 0x38]
xor edx, dword [rax + 0x24]
xor edx, dword [rax + 0x10]
xor edx, dword [rax + 0x30]
rol edx, 1
mov dword [rax + 0x30], edx
add edx, 0x6ed9eba1
mov eax, r8d
rol eax, 5
add eax, edx
add r9d, eax
mov rax, qword [r15 + 0xc0]
add r9d, ebx
mov edx, dword [rax + 0x3c]
xor edx, dword [rax + 0x28]
xor edx, dword [rax + 0x14]
xor edx, dword [rax + 0x34]
rol edx, 1
mov dword [rax + 0x34], edx
mov r10d, esi
add edx, 0x6ed9eba1
xor r10d, ebp
xor r10d, r8d
mov eax, r9d
rol eax, 5
mov r11d, ebp
add eax, edx
rol r8d, 0x1e
add r10d, eax
xor r11d, r8d
mov rax, qword [r15 + 0xc0]
xor r11d, r9d
add r10d, edi
rol r9d, 0x1e
mov ebx, r8d
xor ebx, r9d
mov edx, dword [rax + 0x2c]
xor ebx, r10d
xor edx, dword [rax + 0x18]
xor edx, dword [rax]
xor edx, dword [rax + 0x38]
rol edx, 1
mov dword [rax + 0x38], edx
add edx, 0x6ed9eba1
mov eax, r10d
rol r10d, 0x1e
rol eax, 5
add eax, edx
add r11d, eax
mov rax, qword [r15 + 0xc0]
add r11d, esi
mov ecx, r11d
xor ecx, r9d
mov edx, dword [rax + 0x30]
xor ecx, r10d
xor edx, dword [rax + 0x1c]
xor edx, dword [rax + 4]
xor edx, dword [rax + 0x3c]
rol edx, 1
mov dword [rax + 0x3c], edx
add edx, 0x6ed9eba1
mov eax, r11d
rol r11d, 0x1e
rol eax, 5
add eax, edx
add ebx, eax
mov rax, qword [r15 + 0xc0]
add ebx, ebp
mov edx, dword [rax + 0x34]
xor edx, dword [rax + 0x20]
xor edx, dword [rax + 8]
xor edx, dword [rax]
rol edx, 1
mov dword [rax], edx
add edx, 0x6ed9eba1
mov eax, ebx
rol eax, 5
add eax, edx
add ecx, eax
mov rax, qword [r15 + 0xc0]
add r8d, ecx
mov ecx, r11d
xor ecx, ebx
xor ecx, r10d
mov edx, dword [rax + 0x38]
xor edx, dword [rax + 0x24]
xor edx, dword [rax + 0xc]
xor edx, dword [rax + 4]
rol edx, 1
mov dword [rax + 4], edx
add edx, 0x6ed9eba1
mov eax, r8d
rol eax, 5
add eax, edx
add ecx, eax
mov rax, qword [r15 + 0xc0]
add r9d, ecx
rol ebx, 0x1e
mov edx, dword [rax + 0x3c]
xor edx, dword [rax + 0x28]
mov ecx, r11d
xor edx, dword [rax + 0x10]
xor ecx, ebx
xor edx, dword [rax + 8]
xor ecx, r8d
rol edx, 1
mov dword [rax + 8], edx
mov eax, r9d
add edx, 0x6ed9eba1
rol eax, 5
add eax, edx
rol r8d, 0x1e
add ecx, eax
mov rax, qword [r15 + 0xc0]
add r10d, ecx
mov ecx, ebx
xor ecx, r8d
xor ecx, r9d
rol r9d, 0x1e
mov edx, dword [rax + 0x2c]
xor edx, dword [rax + 0x14]
xor edx, dword [rax + 0xc]
xor edx, dword [rax]
rol edx, 1
mov dword [rax + 0xc], edx
add edx, 0x6ed9eba1
mov eax, r10d
rol eax, 5
add eax, edx
add ecx, eax
mov rax, qword [r15 + 0xc0]
add r11d, ecx
mov ecx, r8d
xor ecx, r9d
mov edi, r11d
xor ecx, r10d
xor edi, r9d
mov edx, dword [rax + 0x30]
xor edx, dword [rax + 0x18]
xor edx, dword [rax + 4]
xor edx, dword [rax + 0x10]
rol edx, 1
mov dword [rax + 0x10], edx
mov eax, r11d
add edx, 0x6ed9eba1
rol eax, 5
add eax, edx
rol r10d, 0x1e
add ecx, eax
rol r11d, 0x1e
mov rax, qword [r15 + 0xc0]
add ebx, ecx
xor edi, r10d
mov ecx, r11d
xor ecx, ebx
xor ecx, r10d
mov edx, dword [rax + 0x34]
xor edx, dword [rax + 0x1c]
xor edx, dword [rax + 8]
xor edx, dword [rax + 0x14]
rol edx, 1
mov dword [rax + 0x14], edx
add edx, 0x6ed9eba1
mov eax, ebx
rol eax, 5
add eax, edx
add edi, eax
mov rax, qword [r15 + 0xc0]
add edi, r8d
mov edx, dword [rax + 0x38]
xor edx, dword [rax + 0x20]
xor edx, dword [rax + 0xc]
xor edx, dword [rax + 0x18]
rol edx, 1
mov dword [rax + 0x18], edx
add edx, 0x6ed9eba1
mov eax, edi
rol eax, 5
add eax, edx
add ecx, eax
mov rax, qword [r15 + 0xc0]
add r9d, ecx
rol ebx, 0x1e
mov ecx, r11d
xor ecx, ebx
xor ecx, edi
rol edi, 0x1e
mov edx, dword [rax + 0x3c]
xor edx, dword [rax + 0x24]
xor edx, dword [rax + 0x10]
xor edx, dword [rax + 0x1c]
rol edx, 1
mov dword [rax + 0x1c], edx
add edx, 0x6ed9eba1
mov eax, r9d
rol eax, 5
add eax, edx
add ecx, eax
mov rax, qword [r15 + 0xc0]
add r10d, ecx
mov ecx, edi
or ecx, r9d
mov edx, r10d
and ecx, ebx
rol edx, 5
mov r8d, dword [rax + 0x28]
xor r8d, dword [rax + 0x14]
xor r8d, dword [rax + 0x20]
xor r8d, dword [rax]
rol r8d, 1
mov dword [rax + 0x20], r8d
mov eax, edi
and eax, r9d
rol r9d, 0x1e
or ecx, eax
mov rax, qword [r15 + 0xc0]
add ecx, r8d
add ecx, r11d
lea r11d, [rdx - 0x70e44324]
add r11d, ecx
mov ecx, r9d
mov r8d, dword [rax + 0x2c]
or ecx, r10d
xor r8d, dword [rax + 0x18]
and ecx, edi
xor r8d, dword [rax + 4]
mov edx, r11d
xor r8d, dword [rax + 0x24]
rol r8d, 1
mov dword [rax + 0x24], r8d
mov eax, r9d
and eax, r10d
rol edx, 5
or ecx, eax
rol r10d, 0x1e
mov rax, qword [r15 + 0xc0]
add ecx, r8d
add ecx, ebx
lea ebx, [rdx - 0x70e44324]
add ebx, ecx
mov ecx, r11d
mov r8d, dword [rax + 0x30]
or ecx, r10d
xor r8d, dword [rax + 0x1c]
and ecx, r9d
xor r8d, dword [rax + 8]
mov edx, ebx
xor r8d, dword [rax + 0x28]
rol r8d, 1
mov dword [rax + 0x28], r8d
mov eax, r11d
and eax, r10d
rol edx, 5
or ecx, eax
mov rax, qword [r15 + 0xc0]
add ecx, r8d
add ecx, edi
lea edi, [rdx - 0x70e44324]
mov r8d, dword [rax + 0x34]
add edi, ecx
rol r11d, 0x1e
xor r8d, dword [rax + 0x20]
mov ecx, r11d
xor r8d, dword [rax + 0xc]
or ecx, ebx
xor r8d, dword [rax + 0x2c]
and ecx, r10d
rol r8d, 1
mov edx, edi
mov dword [rax + 0x2c], r8d
mov eax, r11d
and eax, ebx
rol edx, 5
or ecx, eax
rol ebx, 0x1e
mov rax, qword [r15 + 0xc0]
add ecx, r8d
add ecx, r9d
lea r9d, [rdx - 0x70e44324]
add r9d, ecx
mov ecx, ebx
mov r8d, dword [rax + 0x38]
or ecx, edi
xor r8d, dword [rax + 0x24]
and ecx, r11d
xor r8d, dword [rax + 0x10]
mov edx, r9d
xor r8d, dword [rax + 0x30]
rol r8d, 1
mov dword [rax + 0x30], r8d
mov eax, ebx
and eax, edi
rol edx, 5
or ecx, eax
rol edi, 0x1e
mov rax, qword [r15 + 0xc0]
add ecx, r8d
add ecx, r10d
lea r10d, [rdx - 0x70e44324]
add r10d, ecx
mov ecx, edi
mov r8d, dword [rax + 0x3c]
or ecx, r9d
xor r8d, dword [rax + 0x28]
and ecx, ebx
xor r8d, dword [rax + 0x14]
mov edx, r10d
xor r8d, dword [rax + 0x34]
rol r8d, 1
mov dword [rax + 0x34], r8d
mov eax, edi
and eax, r9d
rol edx, 5
or ecx, eax
rol r9d, 0x1e
mov rax, qword [r15 + 0xc0]
add ecx, r8d
add ecx, r11d
lea r11d, [rdx - 0x70e44324]
add r11d, ecx
mov ecx, r9d
mov r8d, dword [rax + 0x2c]
or ecx, r10d
xor r8d, dword [rax + 0x18]
and ecx, edi
xor r8d, dword [rax + 0x38]
mov edx, r11d
xor r8d, dword [rax]
rol r8d, 1
mov dword [rax + 0x38], r8d
mov eax, r9d
and eax, r10d
rol edx, 5
or ecx, eax
rol r10d, 0x1e
mov rax, qword [r15 + 0xc0]
add ecx, r8d
add ecx, ebx
lea ebx, [rdx - 0x70e44324]
add ebx, ecx
mov r8d, dword [rax + 0x30]
xor r8d, dword [rax + 0x1c]
xor r8d, dword [rax + 4]
mov ecx, r11d
xor r8d, dword [rax + 0x3c]
or ecx, r10d
and ecx, r9d
rol r8d, 1
mov dword [rax + 0x3c], r8d
mov edx, ebx
rol edx, 5
mov eax, r11d
and eax, r10d
rol r11d, 0x1e
or ecx, eax
mov rax, qword [r15 + 0xc0]
add ecx, r8d
add ecx, edi
lea edi, [rdx - 0x70e44324]
add edi, ecx
mov ecx, r11d
mov r8d, dword [rax + 0x34]
or ecx, ebx
xor r8d, dword [rax + 0x20]
and ecx, r10d
xor r8d, dword [rax + 8]
mov edx, edi
xor r8d, dword [rax]
rol r8d, 1
mov dword [rax], r8d
mov eax, r11d
and eax, ebx
rol edx, 5
or ecx, eax
rol ebx, 0x1e
mov rax, qword [r15 + 0xc0]
add ecx, r8d
add ecx, r9d
lea r9d, [rdx - 0x70e44324]
add r9d, ecx
mov ecx, ebx
mov r8d, dword [rax + 0x38]
or ecx, edi
xor r8d, dword [rax + 0x24]
and ecx, r11d
xor r8d, dword [rax + 0xc]
mov edx, r9d
xor r8d, dword [rax + 4]
rol r8d, 1
mov dword [rax + 4], r8d
mov eax, ebx
and eax, edi
rol edx, 5
or ecx, eax
rol edi, 0x1e
mov rax, qword [r15 + 0xc0]
add ecx, r8d
add ecx, r10d
lea r10d, [rdx - 0x70e44324]
add r10d, ecx
mov ecx, edi
mov r8d, dword [rax + 0x3c]
or ecx, r9d
xor r8d, dword [rax + 0x28]
and ecx, ebx
xor r8d, dword [rax + 0x10]
mov edx, r10d
xor r8d, dword [rax + 8]
rol r8d, 1
mov dword [rax + 8], r8d
mov eax, edi
and eax, r9d
rol edx, 5
or ecx, eax
rol r9d, 0x1e
mov rax, qword [r15 + 0xc0]
add ecx, r8d
add ecx, r11d
lea r11d, [rdx - 0x70e44324]
add r11d, ecx
mov r8d, dword [rax + 0x2c]
xor r8d, dword [rax + 0x14]
xor r8d, dword [rax]
xor r8d, dword [rax + 0xc]
mov ecx, r9d
or ecx, r10d
rol r8d, 1
mov dword [rax + 0xc], r8d
and ecx, edi
mov eax, r9d
mov edx, r11d
and eax, r10d
rol edx, 5
or ecx, eax
rol r10d, 0x1e
mov rax, qword [r15 + 0xc0]
add ecx, r8d
add ecx, ebx
lea ebx, [rdx - 0x70e44324]
add ebx, ecx
mov ecx, r11d
mov r8d, dword [rax + 0x30]
or ecx, r10d
xor r8d, dword [rax + 0x18]
and ecx, r9d
xor r8d, dword [rax + 4]
mov edx, ebx
xor r8d, dword [rax + 0x10]
add r9d, 0x8f1bbcdc
rol r8d, 1
mov dword [rax + 0x10], r8d
mov eax, r11d
add r8d, 0x8f1bbcdc
rol r11d, 0x1e
and eax, r10d
rol edx, 5
or ecx, eax
mov rax, qword [r15 + 0xc0]
add ecx, r8d
add edi, ecx
mov ecx, r11d
or ecx, ebx
add edi, edx
mov r8d, dword [rax + 0x34]
and ecx, r10d
xor r8d, dword [rax + 0x1c]
mov esi, edi
xor r8d, dword [rax + 8]
add r10d, 0x8f1bbcdc
xor r8d, dword [rax + 0x14]
rol r8d, 1
mov dword [rax + 0x14], r8d
mov eax, r11d
and eax, ebx
rol esi, 5
or ecx, eax
rol ebx, 0x1e
mov rax, qword [r15 + 0xc0]
add ecx, r8d
add ecx, r9d
add esi, ecx
mov ecx, ebx
or ecx, edi
mov ebp, esi
mov r8d, dword [rax + 0x38]
and ecx, r11d
xor r8d, dword [rax + 0x20]
xor r8d, dword [rax + 0xc]
xor r8d, dword [rax + 0x18]
rol r8d, 1
mov dword [rax + 0x18], r8d
mov eax, ebx
and eax, edi
rol ebp, 5
or ecx, eax
rol edi, 0x1e
mov rax, qword [r15 + 0xc0]
add ecx, r8d
add ecx, r10d
add ebp, ecx
mov r8d, dword [rax + 0x3c]
xor r8d, dword [rax + 0x24]
xor r8d, dword [rax + 0x10]
xor r8d, dword [rax + 0x1c]
rol r8d, 1
add r11d, 0x8f1bbcdc
mov dword [rax + 0x1c], r8d
mov r9d, ebp
rol r9d, 5
mov eax, edi
and eax, esi
mov ecx, edi
or ecx, esi
rol esi, 0x1e
and ecx, ebx
add ebx, 0x8f1bbcdc
or ecx, eax
mov rax, qword [r15 + 0xc0]
add ecx, r8d
add ecx, r11d
add r9d, ecx
mov ecx, esi
mov r8d, dword [rax + 0x28]
or ecx, ebp
xor r8d, dword [rax + 0x14]
and ecx, edi
xor r8d, dword [rax + 0x20]
mov r10d, r9d
xor r8d, dword [rax]
rol r8d, 1
mov dword [rax + 0x20], r8d
mov eax, esi
and eax, ebp
rol r10d, 5
or ecx, eax
rol ebp, 0x1e
mov rax, qword [r15 + 0xc0]
add ecx, r8d
add ecx, ebx
add r10d, ecx
mov ecx, r9d
or ecx, ebp
mov r11d, r10d
mov r8d, dword [rax + 0x2c]
and ecx, esi
xor r8d, dword [rax + 0x18]
xor r8d, dword [rax + 4]
xor r8d, dword [rax + 0x24]
rol r8d, 1
mov dword [rax + 0x24], r8d
mov eax, r9d
add r8d, 0x8f1bbcdc
rol r9d, 0x1e
and eax, ebp
rol r11d, 5
or ecx, eax
mov rax, qword [r15 + 0xc0]
add ecx, r8d
add ecx, edi
add r11d, ecx
mov ecx, r9d
mov r8d, dword [rax + 0x30]
or ecx, r10d
xor r8d, dword [rax + 0x1c]
and ecx, ebp
xor r8d, dword [rax + 8]
mov ebx, r11d
xor r8d, dword [rax + 0x28]
rol r8d, 1
mov dword [rax + 0x28], r8d
mov eax, r9d
add r8d, 0x8f1bbcdc
rol ebx, 5
and eax, r10d
rol r10d, 0x1e
or ecx, eax
mov rax, qword [r15 + 0xc0]
add ecx, r8d
add ecx, esi
add ebx, ecx
mov r8d, dword [rax + 0x34]
xor r8d, dword [rax + 0x20]
xor r8d, dword [rax + 0xc]
xor r8d, dword [rax + 0x2c]
rol r8d, 1
mov dword [rax + 0x2c], r8d
mov edx, ebx
rol edx, 5
mov eax, r10d
and eax, r11d
mov ecx, r10d
or ecx, r11d
rol r11d, 0x1e
and ecx, r9d
or ecx, eax
mov rax, qword [r15 + 0xc0]
add ecx, r8d
lea r8d, [rdx - 0x70e44324]
add ecx, ebp
add r8d, ecx
mov edx, dword [rax + 0x38]
mov ecx, r8d
xor edx, dword [rax + 0x24]
xor edx, dword [rax + 0x10]
xor edx, dword [rax + 0x30]
rol edx, 1
mov dword [rax + 0x30], edx
mov eax, r10d
xor eax, r11d
rol ecx, 5
xor eax, ebx
rol ebx, 0x1e
add eax, edx
add eax, r9d
lea r9d, [rcx - 0x359d3e2a]
add r9d, eax
mov rax, qword [r15 + 0xc0]
mov ecx, r9d
rol ecx, 5
mov edx, dword [rax + 0x3c]
xor edx, dword [rax + 0x28]
xor edx, dword [rax + 0x14]
xor edx, dword [rax + 0x34]
rol edx, 1
mov dword [rax + 0x34], edx
mov eax, r11d
xor eax, ebx
xor eax, r8d
rol r8d, 0x1e
add eax, edx
add eax, r10d
lea r10d, [rcx - 0x359d3e2a]
add r10d, eax
mov rax, qword [r15 + 0xc0]
mov ecx, r10d
rol ecx, 5
mov edx, dword [rax + 0x2c]
xor edx, dword [rax + 0x18]
xor edx, dword [rax + 0x38]
xor edx, dword [rax]
rol edx, 1
mov dword [rax + 0x38], edx
mov eax, r9d
xor eax, ebx
rol r9d, 0x1e
xor eax, r8d
add eax, edx
add eax, r11d
lea r11d, [rcx - 0x359d3e2a]
add r11d, eax
mov rax, qword [r15 + 0xc0]
mov ecx, r11d
rol ecx, 5
mov edx, dword [rax + 0x30]
xor edx, dword [rax + 0x1c]
xor edx, dword [rax + 4]
xor edx, dword [rax + 0x3c]
rol edx, 1
mov dword [rax + 0x3c], edx
mov eax, r9d
xor eax, r10d
xor eax, r8d
add eax, edx
add eax, ebx
lea ebx, [rcx - 0x359d3e2a]
add ebx, eax
mov rax, qword [r15 + 0xc0]
mov ecx, ebx
rol ecx, 5
rol r10d, 0x1e
mov edx, dword [rax + 0x34]
xor edx, dword [rax + 0x20]
xor edx, dword [rax + 8]
xor edx, dword [rax]
rol edx, 1
mov dword [rax], edx
mov eax, r9d
xor eax, r10d
xor eax, r11d
rol r11d, 0x1e
add eax, edx
add eax, r8d
lea r8d, [rcx - 0x359d3e2a]
add r8d, eax
mov rax, qword [r15 + 0xc0]
mov ecx, r8d
rol ecx, 5
mov edx, dword [rax + 0x38]
xor edx, dword [rax + 0x24]
xor edx, dword [rax + 0xc]
xor edx, dword [rax + 4]
rol edx, 1
mov dword [rax + 4], edx
mov eax, r10d
xor eax, r11d
xor eax, ebx
rol ebx, 0x1e
add eax, edx
add eax, r9d
lea r9d, [rcx - 0x359d3e2a]
add r9d, eax
mov rax, qword [r15 + 0xc0]
mov ecx, r9d
rol ecx, 5
mov edx, dword [rax + 0x3c]
xor edx, dword [rax + 0x28]
xor edx, dword [rax + 0x10]
xor edx, dword [rax + 8]
rol edx, 1
mov dword [rax + 8], edx
mov eax, r11d
xor eax, ebx
xor eax, r8d
rol r8d, 0x1e
add eax, edx
add eax, r10d
lea r10d, [rcx - 0x359d3e2a]
add r10d, eax
mov rax, qword [r15 + 0xc0]
mov ecx, r10d
rol ecx, 5
mov edx, dword [rax + 0x2c]
xor edx, dword [rax + 0x14]
xor edx, dword [rax]
xor edx, dword [rax + 0xc]
rol edx, 1
mov dword [rax + 0xc], edx
mov eax, r9d
xor eax, ebx
rol r9d, 0x1e
xor eax, r8d
add eax, edx
add eax, r11d
lea r11d, [rcx - 0x359d3e2a]
add r11d, eax
mov rax, qword [r15 + 0xc0]
mov ecx, r11d
rol ecx, 5
mov edx, dword [rax + 0x30]
xor edx, dword [rax + 0x18]
xor edx, dword [rax + 4]
xor edx, dword [rax + 0x10]
rol edx, 1
mov dword [rax + 0x10], edx
mov eax, r9d
xor eax, r10d
xor eax, r8d
add eax, edx
rol r10d, 0x1e
add eax, ebx
lea ebx, [rcx - 0x359d3e2a]
add ebx, eax
mov rax, qword [r15 + 0xc0]
mov ecx, ebx
rol ecx, 5
mov edx, dword [rax + 0x34]
xor edx, dword [rax + 0x1c]
xor edx, dword [rax + 8]
xor edx, dword [rax + 0x14]
rol edx, 1
mov dword [rax + 0x14], edx
mov eax, r9d
xor eax, r10d
xor eax, r11d
rol r11d, 0x1e
add eax, edx
add eax, r8d
lea r8d, [rcx - 0x359d3e2a]
add r8d, eax
mov rax, qword [r15 + 0xc0]
mov ecx, r8d
rol ecx, 5
mov edx, dword [rax + 0x38]
xor edx, dword [rax + 0x20]
xor edx, dword [rax + 0xc]
xor edx, dword [rax + 0x18]
rol edx, 1
mov dword [rax + 0x18], edx
mov eax, r10d
xor eax, r11d
xor eax, ebx
rol ebx, 0x1e
add eax, edx
add eax, r9d
lea r9d, [rcx - 0x359d3e2a]
add r9d, eax
mov rax, qword [r15 + 0xc0]
mov ecx, r9d
rol ecx, 5
mov edx, dword [rax + 0x3c]
xor edx, dword [rax + 0x24]
xor edx, dword [rax + 0x10]
xor edx, dword [rax + 0x1c]
rol edx, 1
mov dword [rax + 0x1c], edx
mov eax, r11d
xor eax, ebx
xor eax, r8d
rol r8d, 0x1e
add eax, edx
add eax, r10d
lea r10d, [rcx - 0x359d3e2a]
add r10d, eax
mov rax, qword [r15 + 0xc0]
mov edi, r10d
rol edi, 5
mov edx, dword [rax + 0x28]
xor edx, dword [rax + 0x14]
xor edx, dword [rax + 0x20]
xor edx, dword [rax]
rol edx, 1
mov dword [rax + 0x20], edx
add edx, 0xca62c1d6
mov eax, r9d
rol r9d, 0x1e
xor eax, ebx
xor eax, r8d
add eax, edx
add eax, r11d
add edi, eax
mov rax, qword [r15 + 0xc0]
mov ecx, edi
mov edx, dword [rax + 0x2c]
xor edx, dword [rax + 0x18]
xor edx, dword [rax + 4]
xor edx, dword [rax + 0x24]
rol edx, 1
mov dword [rax + 0x24], edx
add edx, 0xca62c1d6
rol ecx, 5
mov eax, r9d
xor eax, r10d
rol r10d, 0x1e
xor eax, r8d
add eax, edx
add ebx, eax
mov rax, qword [r15 + 0xc0]
add ebx, ecx
mov esi, ebx
rol esi, 5
mov edx, dword [rax + 0x30]
xor edx, dword [rax + 0x1c]
xor edx, dword [rax + 8]
xor edx, dword [rax + 0x28]
rol edx, 1
mov dword [rax + 0x28], edx
add edx, 0xca62c1d6
mov eax, r9d
add r9d, 0xca62c1d6
xor eax, r10d
xor eax, edi
rol edi, 0x1e
add eax, edx
add eax, r8d
add esi, eax
mov rax, qword [r15 + 0xc0]
mov r11d, esi
rol r11d, 5
mov edx, dword [rax + 0x34]
xor edx, dword [rax + 0x20]
xor edx, dword [rax + 0xc]
xor edx, dword [rax + 0x2c]
rol edx, 1
mov dword [rax + 0x2c], edx
mov eax, r10d
xor eax, edi
xor eax, ebx
rol ebx, 0x1e
add eax, edx
add eax, r9d
add r11d, eax
mov rax, qword [r15 + 0xc0]
mov ecx, r11d
rol ecx, 5
mov edx, dword [rax + 0x38]
xor edx, dword [rax + 0x24]
xor edx, dword [rax + 0x10]
xor edx, dword [rax + 0x30]
rol edx, 1
mov dword [rax + 0x30], edx
add edx, 0xca62c1d6
mov eax, edi
xor eax, ebx
xor eax, esi
rol esi, 0x1e
add eax, edx
add r10d, eax
mov rax, qword [r15 + 0xc0]
add r10d, ecx
mov r9d, r10d
rol r9d, 5
mov edx, dword [rax + 0x3c]
xor edx, dword [rax + 0x28]
xor edx, dword [rax + 0x14]
xor edx, dword [rax + 0x34]
rol edx, 1
mov dword [rax + 0x34], edx
add edx, 0xca62c1d6
mov eax, r11d
rol r11d, 0x1e
xor eax, ebx
xor eax, esi
add eax, edx
add eax, edi
add r9d, eax
mov rax, qword [r15 + 0xc0]
mov edx, dword [rax + 0x2c]
xor edx, dword [rax + 0x18]
xor edx, dword [rax + 0x38]
xor edx, dword [rax]
add ebx, 0xca62c1d6
mov rbp, qword [rsp + 0x28]
mov r8d, r9d
mov rdi, qword [rsp + 0x38]
rol edx, 1
mov dword [rax + 0x38], edx
mov eax, r11d
xor eax, r10d
rol r8d, 5
xor eax, esi
rol r10d, 0x1e
add eax, edx
add eax, ebx
mov rbx, qword [rsp + 0x20]
add r8d, eax
mov rax, qword [r15 + 0xc0]
mov ecx, r8d
rol ecx, 5
add ecx, esi
mov rsi, qword [rsp + 0x30]
mov edx, dword [rax + 0x30]
xor edx, dword [rax + 0x1c]
xor edx, dword [rax + 4]
xor edx, dword [rax + 0x3c]
rol edx, 1
mov dword [rax + 0x3c], edx
mov eax, r11d
add dword [r12 + 4], r8d
xor eax, r10d
add dword [r12 + 0xc], r10d
xor eax, r9d
add eax, 0xca62c1d6
rol r9d, 0x1e
add dword [r12 + 8], r9d
add eax, edx
add eax, ecx
add dword [r12], eax
add dword [r12 + 0x10], r11d
pop r15
pop r14
pop r12
ret