Function at 0x180161ab0
Capabilities:
Hash data using sha256

Disassembly:
mov qword [rsp + 0x18], r8
mov qword [rsp + 8], rcx
push rbx
push rsi
push rdi
sub rsp, 0xc0
mov rbx, r8
mov rdi, rdx
mov rsi, rcx
call fcn.1800ff8a0
movups xmm0, xmmword [rdi]
movaps xmmword [rsp + 0x80], xmm0
test al, al
je 0x180161aff
mov r8, rbx
lea rdx, [rsp + 0x80]
mov rcx, rsi
call fcn.1801fa070
add rsp, 0xc0
pop rdi
pop rsi
pop rbx
ret
mov rax, qword [rsi]
mov qword [rsp + 0x70], 0
mov ecx, dword [rax + 4]
mov r10d, dword [rax]
mov dword [rsp + 0x60], ecx
mov ecx, dword [rax + 8]
mov dword [rsp + 0x54], ecx
mov ecx, dword [rax + 0xc]
mov dword [rsp + 0x20], ecx
mov ecx, dword [rax + 0x10]
mov dword [rsp + 0x38], ecx
mov ecx, dword [rax + 0x14]
mov dword [rsp + 0x68], ecx
mov ecx, dword [rax + 0x18]
mov eax, dword [rax + 0x1c]
mov dword [rsp + 0x5c], eax
mov dword [rsp + 0x64], r10d
mov dword [rsp + 0x58], ecx
test rbx, rbx
je 0x180163f6d
mov qword [rsp + 0xe8], rbp
mov qword [rsp + 0xb8], r12
mov qword [rsp + 0xb0], r13
mov qword [rsp + 0xa8], r14
mov qword [rsp + 0xa0], r15
nop word [rax + rax]
psrldq xmm0, 8
movq rdx, xmm0
cmp rdx, 0x40
jb 0x180163f78
mov rcx, qword [rsp + 0x80]
mov r9d, dword [rcx]
lea rax, [rcx + 0x40]
mov r13d, dword [rcx + 4]
mov r12d, dword [rcx + 8]
mov r14d, dword [rcx + 0xc]
mov r15d, dword [rcx + 0x10]
mov ebp, dword [rcx + 0x14]
mov r8d, dword [rcx + 0x24]
mov ebx, dword [rcx + 0x28]
mov edi, dword [rcx + 0x2c]
mov esi, dword [rcx + 0x30]
mov r11d, dword [rcx + 0x38]
mov qword [rsp + 0x90], rax
lea rax, [rdx - 0x40]
mov qword [rsp + 0x98], rax
mov eax, dword [rcx + 0x18]
movaps xmm0, xmmword [rsp + 0x90]
bswap eax
mov dword [rsp + 0x2c], eax
mov eax, dword [rcx + 0x1c]
bswap eax
mov dword [rsp + 0x24], eax
mov eax, dword [rcx + 0x20]
bswap eax
mov dword [rsp + 0xf8], eax
mov eax, dword [rcx + 0x34]
bswap eax
mov dword [rsp + 0x28], eax
mov eax, dword [rcx + 0x3c]
mov ecx, dword [rsp + 0x38]
mov edx, ecx
bswap eax
mov dword [rsp + 0x34], eax
mov eax, ecx
ror eax, 0xb
ror edx, 0x19
xor edx, eax
movaps xmmword [rsp + 0x80], xmm0
mov eax, ecx
mov ecx, dword [rsp + 0x58]
xor ecx, dword [rsp + 0x68]
and ecx, dword [rsp + 0x38]
xor ecx, dword [rsp + 0x58]
ror eax, 6
xor edx, eax
mov eax, dword [rsp + 0x5c]
add eax, 0x428a2f98
bswap r9d
add edx, r9d
mov dword [rsp + 0x30], r9d
mov r9d, dword [rsp + 0x60]
add edx, ecx
add edx, eax
mov ecx, r10d
add dword [rsp + 0x20], edx
mov eax, r10d
ror eax, 0xd
xor r9d, r10d
ror ecx, 0x16
xor ecx, eax
mov eax, r10d
ror eax, 2
bswap ebp
bswap r8d
bswap ebx
bswap edi
bswap esi
bswap r11d
xor ecx, eax
mov dword [rsp + 0x48], ebp
mov eax, dword [rsp + 0x54]
bswap r13d
bswap r12d
bswap r14d
bswap r15d
mov dword [rsp + 0x50], r8d
mov dword [rsp + 0x4c], ebx
mov dword [rsp + 0x3c], edi
mov dword [rsp + 0x40], esi
mov dword [rsp + 0x44], r11d
mov r10d, dword [rsp + 0x60]
xor eax, r10d
and eax, r9d
xor r10d, eax
mov eax, r13d
ror eax, 7
add r10d, edx
add r10d, ecx
mov edx, r13d
ror edx, 0x12
mov ecx, r11d
xor edx, eax
ror ecx, 0x13
mov eax, r13d
shr eax, 3
xor edx, eax
mov eax, r11d
ror eax, 0x11
xor ecx, eax
mov eax, r11d
mov r11d, dword [rsp + 0x64]
shr eax, 0xa
xor ecx, eax
lea eax, [r8 + rdx]
add ecx, eax
mov r8d, dword [rsp + 0x20]
add dword [rsp + 0x30], ecx
mov eax, r8d
mov ecx, dword [rsp + 0x68]
mov edx, r8d
xor ecx, dword [rsp + 0x38]
ror eax, 0xb
and ecx, r8d
xor ecx, dword [rsp + 0x68]
ror edx, 0x19
xor edx, eax
mov eax, r8d
ror eax, 6
mov r8d, r10d
xor edx, eax
xor r8d, r11d
mov eax, dword [rsp + 0x58]
add edx, r13d
add eax, 0x71374491
add edx, ecx
add edx, eax
mov ecx, r10d
add dword [rsp + 0x54], edx
mov eax, r10d
ror eax, 0xd
ror ecx, 0x16
xor ecx, eax
mov eax, r10d
ror eax, 2
xor ecx, eax
mov eax, r8d
and eax, r9d
mov r9d, dword [rsp + 0x54]
xor r11d, eax
add r11d, edx
add r11d, ecx
mov ecx, dword [rsp + 0x34]
mov edx, ecx
mov eax, ecx
ror eax, 0x11
ror edx, 0x13
xor edx, eax
mov eax, ecx
shr eax, 0xa
mov ecx, r12d
xor edx, eax
ror ecx, 0x12
mov eax, r12d
ror eax, 7
xor ecx, eax
mov eax, r12d
shr eax, 3
xor ecx, eax
lea eax, [rbx + rdx]
add ecx, eax
add r13d, ecx
mov ecx, dword [rsp + 0x38]
mov edx, r9d
xor ecx, dword [rsp + 0x20]
mov eax, r9d
ror eax, 0xb
and ecx, r9d
xor ecx, dword [rsp + 0x38]
ror edx, 0x19
xor edx, eax
mov eax, r9d
ror eax, 6
mov r9d, r10d
xor edx, eax
xor r9d, r11d
mov eax, dword [rsp + 0x68]
add edx, r12d
add edx, ecx
add eax, 0xb5c0fbcf
add edx, eax
mov ecx, r11d
add dword [rsp + 0x60], edx
mov eax, r11d
ror eax, 0xd
mov ebx, r9d
ror ecx, 0x16
and ebx, r8d
mov r8d, dword [rsp + 0x30]
xor ecx, eax
xor ebx, r10d
mov eax, r11d
ror eax, 2
add ebx, edx
xor ecx, eax
mov edx, r14d
add ebx, ecx
ror edx, 0x12
mov ecx, r8d
mov eax, r14d
ror eax, 7
xor edx, eax
ror ecx, 0x13
mov eax, r14d
shr eax, 3
xor edx, eax
mov eax, r8d
ror eax, 0x11
xor ecx, eax
mov eax, r8d
mov r8d, dword [rsp + 0x60]
shr eax, 0xa
xor ecx, eax
lea eax, [rdi + rdx]
add ecx, eax
mov edx, r8d
add r12d, ecx
ror edx, 0x19
mov ecx, dword [rsp + 0x20]
mov eax, r8d
xor ecx, dword [rsp + 0x54]
ror eax, 0xb
and ecx, r8d
xor ecx, dword [rsp + 0x20]
xor edx, eax
mov eax, r8d
mov r8d, r11d
ror eax, 6
xor r8d, ebx
xor edx, eax
mov eax, dword [rsp + 0x38]
add eax, 0xe9b5dba5
add edx, r14d
add edx, ecx
mov ecx, ebx
add edx, eax
ror ecx, 0x16
add dword [rsp + 0x64], edx
mov eax, ebx
ror eax, 0xd
xor ecx, eax
mov eax, ebx
ror eax, 2
xor ecx, eax
and r9d, r8d
xor r9d, r11d
mov eax, r15d
ror eax, 7
lea edi, [rdx + r9]
mov r9d, dword [rsp + 0x64]
add edi, ecx
mov edx, r15d
ror edx, 0x12
mov ecx, r13d
xor edx, eax
ror ecx, 0x13
mov eax, r15d
shr eax, 3
xor edx, eax
mov eax, r13d
ror eax, 0x11
xor ecx, eax
mov eax, r13d
shr eax, 0xa
xor ecx, eax
lea eax, [rsi + rdx]
add ecx, eax
mov edx, r9d
add r14d, ecx
ror edx, 0x19
mov ecx, dword [rsp + 0x54]
mov eax, r9d
xor ecx, dword [rsp + 0x60]
ror eax, 0xb
and ecx, r9d
xor ecx, dword [rsp + 0x54]
xor edx, eax
mov eax, r9d
mov dword [rsp + 0x38], r14d
ror eax, 6
mov r9d, ebx
xor edx, eax
xor r9d, edi
mov eax, dword [rsp + 0x20]
add edx, r15d
add edx, ecx
add eax, 0x3956c25b
add edx, eax
mov ecx, edi
ror ecx, 0x16
add r10d, edx
mov eax, edi
mov esi, r9d
ror eax, 0xd
and esi, r8d
xor ecx, eax
xor esi, ebx
add esi, edx
mov eax, edi
ror eax, 2
mov edx, ebp
xor ecx, eax
ror edx, 0x12
add esi, ecx
mov eax, ebp
ror eax, 7
mov ecx, r12d
xor edx, eax
ror ecx, 0x13
mov eax, ebp
shr eax, 3
xor edx, eax
mov eax, r12d
ror eax, 0x11
xor ecx, eax
mov eax, r12d
shr eax, 0xa
xor ecx, eax
mov eax, dword [rsp + 0x28]
add eax, edx
mov edx, r10d
add ecx, eax
add r15d, ecx
mov dword [rsp + 0x20], r15d
mov ecx, dword [rsp + 0x60]
mov eax, r10d
xor ecx, dword [rsp + 0x64]
mov r8d, edi
ror eax, 0xb
and ecx, r10d
xor ecx, dword [rsp + 0x60]
xor r8d, esi
ror edx, 0x19
xor edx, eax
mov eax, r10d
ror eax, 6
xor edx, eax
mov eax, dword [rsp + 0x54]
add eax, 0x59f111f1
add edx, ebp
add edx, ecx
mov ebp, r8d
add edx, eax
and ebp, r9d
mov r9d, dword [rsp + 0x2c]
add r11d, edx
xor ebp, edi
mov eax, esi
ror eax, 0xd
add ebp, edx
mov edx, r9d
mov ecx, esi
ror ecx, 0x16
xor ecx, eax
ror edx, 0x12
mov eax, esi
ror eax, 2
xor ecx, eax
mov eax, r9d
ror eax, 7
add ebp, ecx
xor edx, eax
mov ecx, r14d
ror ecx, 0x13
mov eax, r9d
shr eax, 3
xor edx, eax
mov eax, r14d
ror eax, 0x11
xor ecx, eax
mov eax, r14d
shr eax, 0xa
xor ecx, eax
mov eax, dword [rsp + 0x44]
add eax, edx
mov edx, r11d
add ecx, eax
ror edx, 0x19
add dword [rsp + 0x48], ecx
mov eax, r11d
ror eax, 0xb
mov ecx, r10d
xor ecx, dword [rsp + 0x64]
xor edx, eax
and ecx, r11d
mov eax, r11d
xor ecx, dword [rsp + 0x64]
ror eax, 6
xor edx, eax
mov eax, dword [rsp + 0x60]
add eax, 0x923f82a4
add edx, r9d
add edx, ecx
mov r9d, esi
add edx, eax
mov ecx, ebp
ror ecx, 0x16
mov eax, ebp
ror eax, 0xd
add ebx, edx
xor ecx, eax
xor r9d, ebp
mov eax, ebp
ror eax, 2
xor ecx, eax
mov r14d, r9d
and r14d, r8d
mov r8d, dword [rsp + 0x24]
xor r14d, esi
mov eax, r8d
ror eax, 7
add r14d, edx
add r14d, ecx
mov edx, r8d
ror edx, 0x12
mov ecx, r15d
xor edx, eax
ror ecx, 0x13
mov eax, r8d
shr eax, 3
xor edx, eax
mov eax, r15d
ror eax, 0x11
xor ecx, eax
mov eax, r15d
shr eax, 0xa
xor ecx, eax
mov eax, dword [rsp + 0x34]
add eax, edx
mov edx, ebx
add ecx, eax
ror edx, 0x19
add dword [rsp + 0x2c], ecx
mov eax, ebx
ror eax, 0xb
mov ecx, r10d
xor edx, eax
xor ecx, r11d
and ecx, ebx
mov eax, ebx
ror eax, 6
xor ecx, r10d
xor edx, eax
mov eax, dword [rsp + 0x64]
add eax, 0xab1c5ed5
add edx, r8d
add edx, ecx
mov r8d, ebp
add edx, eax
xor r8d, r14d
add edi, edx
and r9d, r8d
xor r9d, ebp
mov eax, r14d
ror eax, 0xd
mov ecx, r14d
ror ecx, 0x16
xor ecx, eax
mov eax, r14d
ror eax, 2
lea r15d, [rdx + r9]
mov r9d, dword [rsp + 0x48]
xor ecx, eax
add r15d, ecx
mov ecx, dword [rsp + 0xf8]
mov edx, ecx
mov eax, ecx
ror eax, 7
ror edx, 0x12
xor edx, eax
mov eax, ecx
shr eax, 3
mov ecx, r9d
xor edx, eax
ror ecx, 0x13
mov eax, r9d
ror eax, 0x11
xor ecx, eax
mov eax, r9d
shr eax, 0xa
xor ecx, eax
mov eax, dword [rsp + 0x30]
add eax, edx
mov edx, edi
add ecx, eax
add dword [rsp + 0x24], ecx
ror edx, 0x19
add r10d, 0xd807aa98
mov ecx, r11d
mov eax, edi
ror eax, 0xb
xor ecx, ebx
xor edx, eax
and ecx, edi
xor ecx, r11d
mov eax, edi
ror eax, 6
add r11d, 0x12835b01
xor edx, eax
mov r9d, r14d
add edx, dword [rsp + 0xf8]
xor r9d, r15d
add edx, ecx
mov eax, r15d
ror eax, 0xd
add edx, r10d
add esi, edx
mov ecx, r15d
ror ecx, 0x16
mov r10d, r9d
xor ecx, eax
and r10d, r8d
mov r8d, dword [rsp + 0x2c]
xor r10d, r14d
add r10d, edx
mov eax, r15d
ror eax, 2
xor ecx, eax
add r10d, ecx
mov ecx, dword [rsp + 0x50]
mov edx, ecx
mov eax, ecx
ror eax, 7
ror edx, 0x12
xor edx, eax
mov eax, ecx
shr eax, 3
mov ecx, r8d
xor edx, eax
ror ecx, 0x13
mov eax, r8d
ror eax, 0x11
xor ecx, eax
mov eax, r8d
shr eax, 0xa
mov r8d, r10d
xor ecx, eax
xor r8d, r15d
lea eax, [rdx + r13]
mov edx, esi
add ecx, eax
ror edx, 0x19
add dword [rsp + 0xf8], ecx
mov eax, esi
ror eax, 0xb
mov ecx, ebx
xor edx, eax
xor ecx, edi
and ecx, esi
mov eax, esi
ror eax, 6
xor ecx, ebx
xor edx, eax
mov eax, r10d
add edx, dword [rsp + 0x50]
add edx, ecx
ror eax, 0xd
add edx, r11d
mov ecx, r10d
ror ecx, 0x16
add ebp, edx
xor ecx, eax
mov r11d, r8d
mov eax, r10d
ror eax, 2
xor ecx, eax
and r11d, r9d
mov r9d, dword [rsp + 0x4c]
add ebx, 0x243185be
xor r11d, r15d
mov eax, r9d
ror eax, 7
add r11d, edx
add r11d, ecx
mov edx, r9d
ror edx, 0x12
xor edx, eax
mov eax, r9d
shr eax, 3
xor edx, eax
mov eax, dword [rsp + 0x24]
mov ecx, eax
ror eax, 0x11
ror ecx, 0x13
xor ecx, eax
mov eax, dword [rsp + 0x24]
shr eax, 0xa
xor ecx, eax
lea eax, [r12 + rdx]
add ecx, eax
mov edx, ebp
add dword [rsp + 0x50], ecx
mov eax, ebp
ror eax, 0xb
mov ecx, edi
ror edx, 0x19
xor ecx, esi
xor edx, eax
and ecx, ebp
xor ecx, edi
mov eax, ebp
ror eax, 6
xor edx, eax
mov eax, r11d
ror eax, 0xd
add edx, r9d
add edx, ecx
mov r9d, r10d
add edx, ebx
xor r9d, r11d
add r14d, edx
mov ecx, r11d
ror ecx, 0x16
mov ebx, r9d
xor ecx, eax
and ebx, r8d
mov r8d, dword [rsp + 0x3c]
xor ebx, r10d
add ebx, edx
mov eax, r11d
ror eax, 2
mov edx, r8d
xor ecx, eax
ror edx, 0x12
add ebx, ecx
mov eax, r8d
ror eax, 7
xor edx, eax
mov eax, r8d
shr eax, 3
xor edx, eax
mov eax, dword [rsp + 0xf8]
mov ecx, eax
ror eax, 0x11
ror ecx, 0x13
xor ecx, eax
mov eax, dword [rsp + 0xf8]
shr eax, 0xa
xor ecx, eax
mov eax, dword [rsp + 0x38]
add eax, edx
mov edx, r14d
add ecx, eax
ror edx, 0x19
add dword [rsp + 0x4c], ecx
mov eax, r14d
ror eax, 0xb
xor edx, eax
mov ecx, esi
add edi, 0x550c7dc3
xor ecx, ebp
mov eax, r14d
ror eax, 6
and ecx, r14d
xor edx, eax
xor ecx, esi
add edx, r8d
add esi, 0x72be5d74
add edx, ecx
mov r8d, r11d
add edx, edi
xor r8d, ebx
add r15d, edx
and r9d, r8d
xor r9d, r11d
mov ecx, ebx
ror ecx, 0x16
mov eax, ebx
ror eax, 0xd
xor ecx, eax
mov eax, ebx
ror eax, 2
lea edi, [rdx + r9]
mov r9d, dword [rsp + 0x50]
xor ecx, eax
add edi, ecx
mov ecx, dword [rsp + 0x40]
mov edx, ecx
mov eax, ecx
ror eax, 7
ror edx, 0x12
xor edx, eax
mov eax, ecx
shr eax, 3
mov ecx, r9d
xor edx, eax
ror ecx, 0x13
mov eax, r9d
ror eax, 0x11
xor ecx, eax
mov eax, r9d
shr eax, 0xa
mov r9d, ebx
xor ecx, eax
xor r9d, edi
mov eax, dword [rsp + 0x20]
add eax, edx
mov edx, r15d
add ecx, eax
ror edx, 0x19
add dword [rsp + 0x3c], ecx
mov eax, r15d
ror eax, 0xb
mov ecx, ebp
xor edx, eax
xor ecx, r14d
and ecx, r15d
mov eax, r15d
xor ecx, ebp
ror eax, 6
xor edx, eax
mov eax, edi
add edx, dword [rsp + 0x40]
add edx, ecx
ror eax, 0xd
add edx, esi
mov ecx, edi
ror ecx, 0x16
mov esi, r9d
xor ecx, eax
and esi, r8d
xor esi, ebx
mov eax, edi
ror eax, 2
add r10d, edx
xor ecx, eax
add esi, edx
add esi, ecx
mov ecx, dword [rsp + 0x28]
mov r8d, dword [rsp + 0x4c]
mov edx, ecx
mov eax, ecx
ror edx, 0x12
ror eax, 7
add ebp, 0x80deb1fe
xor edx, eax
mov eax, ecx
shr eax, 3
mov ecx, r8d
xor edx, eax
ror ecx, 0x13
mov eax, r8d
ror eax, 0x11
xor ecx, eax
mov eax, r8d
shr eax, 0xa
mov r8d, edi
xor ecx, eax
xor r8d, esi
mov eax, dword [rsp + 0x48]
add eax, edx
mov edx, r10d
add ecx, eax
ror edx, 0x19
add dword [rsp + 0x40], ecx
mov eax, r10d
ror eax, 0xb
mov ecx, r14d
xor edx, eax
xor ecx, r15d
and ecx, r10d
mov eax, r10d
ror eax, 6
xor ecx, r14d
xor edx, eax
mov eax, esi
add edx, dword [rsp + 0x28]
add edx, ecx
ror eax, 0xd
add edx, ebp
mov ecx, esi
ror ecx, 0x16
add r11d, edx
xor ecx, eax
mov ebp, r8d
and ebp, r9d
mov eax, esi
mov r9d, dword [rsp + 0x3c]
xor ebp, edi
ror eax, 2
add ebp, edx
xor ecx, eax
add ebp, ecx
mov ecx, dword [rsp + 0x44]
mov edx, ecx
mov eax, ecx
ror eax, 7
ror edx, 0x12
xor edx, eax
mov eax, ecx
shr eax, 3
mov ecx, r9d
xor edx, eax
ror ecx, 0x13
mov eax, r9d
ror eax, 0x11
xor ecx, eax
mov eax, r9d
shr eax, 0xa
xor ecx, eax
mov eax, dword [rsp + 0x2c]
add eax, edx
mov edx, r11d
add ecx, eax
ror edx, 0x19
add dword [rsp + 0x28], ecx
mov eax, r11d
ror eax, 0xb
xor edx, eax
mov eax, r11d
ror eax, 6
add r14d, 0x9bdc06a7
xor edx, eax
mov r9d, esi
add edx, dword [rsp + 0x44]
xor r9d, ebp
mov ecx, r10d
mov eax, ebp
xor ecx, r15d
ror eax, 0xd
and ecx, r11d
xor ecx, r15d
add r15d, 0xc19bf174
add edx, ecx
mov ecx, ebp
add edx, r14d
ror ecx, 0x16
xor ecx, eax
add ebx, edx
mov r14d, r9d
mov eax, ebp
ror eax, 2
and r14d, r8d
mov r8d, dword [rsp + 0x40]
xor ecx, eax
xor r14d, esi
add r14d, edx
add r14d, ecx
mov ecx, dword [rsp + 0x34]
mov edx, ecx
mov eax, ecx
ror eax, 7
ror edx, 0x12
xor edx, eax
mov eax, ecx
shr eax, 3
mov ecx, r8d
xor edx, eax
ror ecx, 0x13
mov eax, r8d
ror eax, 0x11
xor ecx, eax
mov eax, r8d
shr eax, 0xa
mov r8d, ebp
xor ecx, eax
xor r8d, r14d
mov eax, dword [rsp + 0x24]
and r9d, r8d
add eax, edx
xor r9d, ebp
add ecx, eax
mov edx, ebx
add dword [rsp + 0x44], ecx
mov eax, ebx
ror eax, 0xb
mov ecx, r10d
ror edx, 0x19
xor ecx, r11d
xor edx, eax
and ecx, ebx
xor ecx, r10d
mov eax, ebx
ror eax, 6
xor edx, eax
mov eax, r14d
add edx, dword [rsp + 0x34]
add edx, ecx
ror eax, 0xd
add edx, r15d
mov ecx, r14d
ror ecx, 0x16
add edi, edx
xor ecx, eax
mov eax, r14d
ror eax, 2
xor ecx, eax
lea r15d, [rdx + r9]
add r15d, ecx
mov ecx, dword [rsp + 0x28]
mov edx, ecx
mov r9d, dword [rsp + 0x30]
mov eax, ecx
ror eax, 0x11
add r10d, 0xe49b69c1
ror edx, 0x13
xor edx, eax
mov eax, ecx
shr eax, 0xa
mov ecx, r9d
xor edx, eax
ror ecx, 0x12
mov eax, r9d
ror eax, 7
xor ecx, eax
mov eax, r9d
shr eax, 3
xor ecx, eax
mov eax, dword [rsp + 0xf8]
add eax, edx
mov edx, edi
add ecx, eax
ror edx, 0x19
add dword [rsp + 0x34], ecx
mov eax, edi
ror eax, 0xb
mov ecx, r11d
xor edx, eax
xor ecx, ebx
and ecx, edi
mov eax, edi
ror eax, 6
xor ecx, r11d
xor edx, eax
mov eax, r15d
ror eax, 0xd
add edx, r9d
add edx, ecx
mov r9d, r14d
add edx, r10d
xor r9d, r15d
add esi, edx
mov ecx, r15d
ror ecx, 0x16
mov r10d, r9d
xor ecx, eax
and r10d, r8d
xor r10d, r14d
mov eax, r15d
ror eax, 2
add r10d, edx
xor ecx, eax
add r10d, ecx
mov ecx, dword [rsp + 0x44]
mov edx, ecx
mov eax, ecx
ror eax, 0x11
ror edx, 0x13
xor edx, eax
mov eax, ecx
shr eax, 0xa
mov ecx, r13d
xor edx, eax
ror ecx, 0x12
mov eax, r13d
ror eax, 7
xor ecx, eax
mov eax, r13d
shr eax, 3
xor ecx, eax
mov eax, dword [rsp + 0x50]
add eax, edx
mov edx, esi
add ecx, eax
ror edx, 0x19
add dword [rsp + 0x30], ecx
mov eax, esi
ror eax, 0xb
xor edx, eax
mov eax, esi
ror eax, 6
xor edx, eax
add edx, r13d
mov ecx, ebx
xor ecx, edi
add r11d, 0xefbe4786
and ecx, esi
mov r8d, r10d
xor ecx, ebx
xor r8d, r15d
add edx, ecx
add ebx, 0xfc19dc6
add edx, r11d
mov ecx, r10d
ror ecx, 0x16
add ebp, edx
mov r11d, r8d
mov eax, r10d
ror eax, 0xd
and r11d, r9d
xor ecx, eax
xor r11d, r15d
add r11d, edx
mov eax, r10d
ror eax, 2
mov r9d, r10d
xor ecx, eax
add r11d, ecx
mov ecx, dword [rsp + 0x34]
mov edx, ecx
mov eax, ecx
ror eax, 0x11
xor r9d, r11d
ror edx, 0x13
xor edx, eax
mov eax, ecx
shr eax, 0xa
mov ecx, r12d
xor edx, eax
ror ecx, 0x12
mov eax, r12d
ror eax, 7
xor ecx, eax
mov eax, r12d
shr eax, 3
xor ecx, eax
mov eax, dword [rsp + 0x4c]
add eax, edx
mov edx, ebp
add ecx, eax
ror edx, 0x19
add r13d, ecx
mov eax, ebp
ror eax, 0xb
mov ecx, edi
xor edx, eax
xor ecx, esi
and ecx, ebp
mov eax, ebp
ror eax, 6
xor ecx, edi
xor edx, eax
mov eax, r11d
ror eax, 0xd
add edx, r12d
add edx, ecx
mov ecx, r11d
add edx, ebx
ror ecx, 0x16
xor ecx, eax
add r14d, edx
mov ebx, r9d
mov eax, r11d
and ebx, r8d
ror eax, 2
mov r8d, dword [rsp + 0x38]
xor ebx, r10d
xor ecx, eax
add ebx, edx
add ebx, ecx
mov edx, r8d
ror edx, 0x12
mov eax, r8d
ror eax, 7
add edi, 0x240ca1cc
xor edx, eax
mov eax, r8d
shr eax, 3
xor edx, eax
mov eax, dword [rsp + 0x30]
mov ecx, eax
ror eax, 0x11
ror ecx, 0x13
xor ecx, eax
mov eax, dword [rsp + 0x30]
shr eax, 0xa
xor ecx, eax
mov eax, dword [rsp + 0x3c]
add eax, edx
mov edx, r14d
add ecx, eax
ror edx, 0x19
add r12d, ecx
mov eax, r14d
ror eax, 0xb
mov ecx, esi
xor edx, eax
mov dword [rsp + 0x54], r12d
xor ecx, ebp
mov eax, r14d
ror eax, 6
and ecx, r14d
xor edx, eax
xor ecx, esi
add edx, r8d
mov eax, ebx
add edx, ecx
ror eax, 0xd
add edx, edi
mov r8d, r11d
add r15d, edx
xor r8d, ebx
and r9d, r8d
mov ecx, ebx
ror ecx, 0x16
xor r9d, r11d
xor ecx, eax
mov eax, ebx
ror eax, 2
xor ecx, eax
lea edi, [rdx + r9]
mov r9d, dword [rsp + 0x20]
add edi, ecx
mov edx, r9d
ror edx, 0x12
mov eax, r9d
ror eax, 7
mov ecx, r13d
xor edx, eax
ror ecx, 0x13
mov eax, r9d
shr eax, 3
xor edx, eax
mov eax, r13d
ror eax, 0x11
xor ecx, eax
mov eax, r13d
shr eax, 0xa
xor ecx, eax
mov eax, dword [rsp + 0x40]
add eax, edx
mov edx, r15d
add ecx, eax
ror edx, 0x19
add dword [rsp + 0x38], ecx
mov eax, r15d
ror eax, 0xb
mov ecx, ebp
xor edx, eax
xor ecx, r14d
mov eax, r15d
ror eax, 6
xor edx, eax
and ecx, r15d
xor ecx, ebp
add edx, r9d
add edx, ecx
add esi, 0x2de92c6f
add edx, esi
add ebp, 0x4a7484aa
add r10d, edx
mov r9d, ebx
xor r9d, edi
mov ecx, edi
ror ecx, 0x16
mov eax, edi
ror eax, 0xd
mov esi, r9d
xor ecx, eax
and esi, r8d
mov r8d, dword [rsp + 0x48]
xor esi, ebx
add esi, edx
mov eax, edi
ror eax, 2
mov edx, r8d
xor ecx, eax
ror edx, 0x12
add esi, ecx
mov eax, r8d
ror eax, 7
mov ecx, r12d
xor edx, eax
ror ecx, 0x13
mov eax, r8d
shr eax, 3
xor edx, eax
mov eax, r12d
ror eax, 0x11
xor ecx, eax
mov eax, r12d
shr eax, 0xa
xor ecx, eax
mov eax, dword [rsp + 0x28]
add eax, edx
mov edx, r10d
add ecx, eax
ror edx, 0x19
add dword [rsp + 0x20], ecx
mov eax, r10d
ror eax, 0xb
mov ecx, r14d
xor edx, eax
xor ecx, r15d
and ecx, r10d
mov eax, r10d
ror eax, 6
xor ecx, r14d
xor edx, eax
mov eax, esi
add edx, r8d
ror eax, 0xd
add edx, ecx
mov r8d, edi
add edx, ebp
xor r8d, esi
add r11d, edx
mov ecx, esi
ror ecx, 0x16
mov ebp, r8d
xor ecx, eax
and ebp, r9d
xor ebp, edi
mov eax, esi
ror eax, 2
add ebp, edx
xor ecx, eax
add ebp, ecx
mov ecx, dword [rsp + 0x2c]
mov edx, ecx
mov eax, ecx
ror eax, 7
ror edx, 0x12
xor edx, eax
mov eax, ecx
mov r9d, dword [rsp + 0x38]
add r14d, 0x5cb0a9dc
shr eax, 3
mov ecx, r9d
xor edx, eax
ror ecx, 0x13
mov eax, r9d
ror eax, 0x11
xor ecx, eax
mov eax, r9d
shr eax, 0xa
mov r9d, esi
xor ecx, eax
xor r9d, ebp
mov eax, dword [rsp + 0x44]
add eax, edx
mov edx, r11d
add ecx, eax
ror edx, 0x19
add dword [rsp + 0x48], ecx
mov eax, r11d
ror eax, 0xb
mov ecx, r10d
xor edx, eax
xor ecx, r15d
and ecx, r11d
mov eax, r11d
ror eax, 6
xor ecx, r15d
xor edx, eax
mov eax, ebp
add edx, dword [rsp + 0x2c]
add edx, ecx
ror eax, 0xd
add edx, r14d
mov ecx, ebp
ror ecx, 0x16
add ebx, edx
xor ecx, eax
mov r14d, r9d
and r14d, r8d
mov eax, ebp
mov r8d, dword [rsp + 0x20]
xor r14d, esi
ror eax, 2
add r14d, edx
xor ecx, eax
add r14d, ecx
mov ecx, dword [rsp + 0x24]
mov edx, ecx
mov eax, ecx
ror eax, 7
ror edx, 0x12
xor edx, eax
mov eax, ecx
shr eax, 3
mov ecx, r8d
xor edx, eax
ror ecx, 0x13
mov eax, r8d
ror eax, 0x11
xor ecx, eax
mov eax, r8d
shr eax, 0xa
xor ecx, eax
mov eax, dword [rsp + 0x34]
add eax, edx
mov edx, ebx
add ecx, eax
ror edx, 0x19
add dword [rsp + 0x2c], ecx
mov eax, ebx
ror eax, 0xb
mov ecx, r10d
xor edx, eax
xor ecx, r11d
mov eax, ebx
and ecx, ebx
ror eax, 6
xor edx, eax
xor ecx, r10d
add edx, dword [rsp + 0x24]
add r10d, 0x983e5152
add edx, ecx
add r15d, 0x76f988da
add edx, r15d
mov r8d, ebp
add edi, edx
xor r8d, r14d
and r9d, r8d
mov ecx, r14d
ror ecx, 0x16
xor r9d, ebp
mov eax, r14d
ror eax, 0xd
xor ecx, eax
mov eax, r14d
ror eax, 2
lea r15d, [rdx + r9]
xor ecx, eax
mov r9d, dword [rsp + 0x48]
add r15d, ecx
mov ecx, dword [rsp + 0xf8]
mov edx, ecx
mov eax, ecx
ror eax, 7
ror edx, 0x12
xor edx, eax
mov eax, ecx
shr eax, 3
mov ecx, r9d
xor edx, eax
ror ecx, 0x13
mov eax, r9d
ror eax, 0x11
xor ecx, eax
mov eax, r9d
shr eax, 0xa
mov r9d, r14d
xor ecx, eax
xor r9d, r15d
mov eax, dword [rsp + 0x30]
add eax, edx
mov edx, edi
add ecx, eax
ror edx, 0x19
add dword [rsp + 0x24], ecx
mov eax, edi
ror eax, 0xb
mov ecx, r11d
xor edx, eax
xor ecx, ebx
and ecx, edi
mov eax, edi
ror eax, 6
xor ecx, r11d
xor edx, eax
mov eax, r15d
add edx, dword [rsp + 0xf8]
add edx, ecx
ror eax, 0xd
add edx, r10d
mov ecx, r15d
ror ecx, 0x16
add esi, edx
xor ecx, eax
mov r10d, r9d
and r10d, r8d
mov eax, r15d
ror eax, 2
xor r10d, r14d
xor ecx, eax
add r10d, edx
add r10d, ecx
mov ecx, dword [rsp + 0x50]
mov edx, ecx
mov eax, ecx
ror eax, 7
ror edx, 0x12
xor edx, eax
mov eax, ecx
shr eax, 3
xor edx, eax
mov r8d, dword [rsp + 0x2c]
add r11d, 0xa831c66d
mov ecx, r8d
ror ecx, 0x13
mov eax, r8d
ror eax, 0x11
xor ecx, eax
mov eax, r8d
shr eax, 0xa
mov r8d, r10d
xor ecx, eax
xor r8d, r15d
lea eax, [rdx + r13]
mov edx, esi
add ecx, eax
ror edx, 0x19
add dword [rsp + 0xf8], ecx
mov eax, esi
ror eax, 0xb
mov ecx, ebx
xor edx, eax
xor ecx, edi
and ecx, esi
mov eax, esi
ror eax, 6
xor ecx, ebx
xor edx, eax
mov eax, r10d
add edx, dword [rsp + 0x50]
add edx, ecx
ror eax, 0xd
add edx, r11d
mov ecx, r10d
add ebp, edx
ror ecx, 0x16
xor ecx, eax
mov r11d, r8d
and r11d, r9d
mov eax, r10d
mov r9d, dword [rsp + 0x4c]
xor r11d, r15d
ror eax, 2
add r11d, edx
xor ecx, eax
mov edx, r9d
add r11d, ecx
ror edx, 0x12
mov eax, r9d
ror eax, 7
xor edx, eax
mov eax, r9d
shr eax, 3
xor edx, eax
mov eax, dword [rsp + 0x24]
mov ecx, eax
ror eax, 0x11
ror ecx, 0x13
xor ecx, eax
mov eax, dword [rsp + 0x24]
shr eax, 0xa
xor ecx, eax
lea eax, [r12 + rdx]
mov r12d, dword [rsp + 0x50]
add ecx, eax
add r12d, ecx
mov eax, ebp
ror eax, 0xb
mov edx, ebp
ror edx, 0x19
mov ecx, edi
xor edx, eax
mov dword [rsp + 0x50], r12d
xor ecx, esi
mov eax, ebp
ror eax, 6
and ecx, ebp
xor edx, eax
xor ecx, edi
add edx, r9d
add edx, ecx
add ebx, 0xb00327c8
add edi, 0xbf597fc7
add edx, ebx
mov r9d, r10d
add r14d, edx
xor r9d, r11d
mov ebx, r9d
mov ecx, r11d
ror ecx, 0x16
and ebx, r8d
mov r8d, dword [rsp + 0x3c]
xor ebx, r10d
add ebx, edx
mov eax, r11d
ror eax, 0xd
mov edx, r8d
xor ecx, eax
ror edx, 0x12
mov eax, r11d
ror eax, 2
xor ecx, eax
mov eax, r8d
ror eax, 7
add ebx, ecx
xor edx, eax
mov eax, r8d
shr eax, 3
xor edx, eax
mov eax, dword [rsp + 0xf8]
mov ecx, eax
ror eax, 0x11
ror ecx, 0x13
xor ecx, eax
mov eax, dword [rsp + 0xf8]
shr eax, 0xa
xor ecx, eax
mov eax, dword [rsp + 0x38]
add eax, edx
mov edx, r14d
add ecx, eax
ror edx, 0x19
add dword [rsp + 0x4c], ecx
mov eax, r14d
ror eax, 0xb
mov ecx, esi
xor edx, eax
xor ecx, ebp
and ecx, r14d
mov eax, r14d
ror eax, 6
xor ecx, esi
xor edx, eax
mov eax, ebx
add edx, r8d
ror eax, 0xd
add edx, ecx
mov r8d, r11d
add edx, edi
xor r8d, ebx
add r15d, edx
and r9d, r8d
xor r9d, r11d
mov ecx, ebx
ror ecx, 0x16
xor ecx, eax
mov eax, ebx
ror eax, 2
xor ecx, eax
lea edi, [rdx + r9]
mov r9d, dword [rsp + 0x40]
add edi, ecx
mov edx, r9d
mov eax, r9d
ror eax, 7
mov ecx, r12d
ror edx, 0x12
xor edx, eax
mov eax, r9d
shr eax, 3
xor edx, eax
ror ecx, 0x13
add esi, 0xc6e00bf3
mov eax, r12d
ror eax, 0x11
xor ecx, eax
mov eax, r12d
shr eax, 0xa
xor ecx, eax
mov eax, dword [rsp + 0x20]
add eax, edx
mov edx, r15d
add ecx, eax
ror edx, 0x19
add dword [rsp + 0x3c], ecx
mov eax, r15d
ror eax, 0xb
mov ecx, ebp
xor edx, eax
xor ecx, r14d
and ecx, r15d
mov eax, r15d
ror eax, 6
xor ecx, ebp
xor edx, eax
add ebp, 0xd5a79147
add edx, r9d
mov eax, edi
add edx, ecx
ror eax, 0xd
add edx, esi
mov r9d, ebx
add r10d, edx
xor r9d, edi
mov ecx, edi
mov esi, r9d
ror ecx, 0x16
and esi, r8d
mov r8d, dword [rsp + 0x4c]
xor ecx, eax
xor esi, ebx
mov eax, edi
ror eax, 2
add esi, edx
xor ecx, eax
add esi, ecx
mov ecx, dword [rsp + 0x28]
mov edx, ecx
mov eax, ecx
ror eax, 7
ror edx, 0x12
xor edx, eax
mov eax, ecx
shr eax, 3
mov ecx, r8d
xor edx, eax
ror ecx, 0x13
mov eax, r8d
ror eax, 0x11
xor ecx, eax
mov eax, r8d
shr eax, 0xa
xor ecx, eax
mov eax, dword [rsp + 0x48]
add eax, edx
mov edx, r10d
add ecx, eax
ror edx, 0x19
add dword [rsp + 0x40], ecx
mov eax, r10d
ror eax, 0xb
mov ecx, r14d
xor edx, eax
xor ecx, r15d
and ecx, r10d
mov eax, r10d
ror eax, 6
xor ecx, r14d
xor edx, eax
add edx, dword [rsp + 0x28]
add edx, ecx
add edx, ebp
add r11d, edx
add r14d, 0x6ca6351
mov r8d, edi
xor r8d, esi
mov ecx, esi
ror ecx, 0x16
mov ebp, r8d
and ebp, r9d
mov eax, esi
mov r9d, dword [rsp + 0x3c]
xor ebp, edi
ror eax, 0xd
add ebp, edx
xor ecx, eax
mov eax, esi
ror eax, 2
xor ecx, eax
add ebp, ecx
mov ecx, dword [rsp + 0x44]
mov edx, ecx
mov eax, ecx
ror eax, 7
ror edx, 0x12
xor edx, eax
mov eax, ecx
shr eax, 3
mov ecx, r9d
xor edx, eax
ror ecx, 0x13
mov eax, r9d
ror eax, 0x11
xor ecx, eax
mov eax, r9d
shr eax, 0xa
mov r9d, esi
xor ecx, eax
xor r9d, ebp
mov eax, dword [rsp + 0x2c]
add eax, edx
mov edx, r11d
add ecx, eax
ror edx, 0x19
add dword [rsp + 0x28], ecx
mov eax, r11d
ror eax, 0xb
mov ecx, r10d
xor edx, eax
xor ecx, r15d
and ecx, r11d
mov eax, r11d
ror eax, 6
xor ecx, r15d
xor edx, eax
mov eax, ebp
add edx, dword [rsp + 0x44]
add edx, ecx
ror eax, 0xd
add edx, r14d
mov ecx, ebp
ror ecx, 0x16
add ebx, edx
xor ecx, eax
mov r14d, r9d
and r14d, r8d
mov eax, ebp
mov r8d, dword [rsp + 0x40]
xor r14d, esi
ror eax, 2
add r14d, edx
xor ecx, eax
add r14d, ecx
mov ecx, dword [rsp + 0x34]
mov edx, ecx
mov eax, ecx
ror eax, 7
ror edx, 0x12
xor edx, eax
mov eax, ecx
shr eax, 3
mov ecx, r8d
xor edx, eax
ror ecx, 0x13
add r15d, 0x14292967
mov eax, r8d
ror eax, 0x11
xor ecx, eax
mov eax, r8d
shr eax, 0xa
mov r8d, ebp
xor ecx, eax
xor r8d, r14d
mov eax, dword [rsp + 0x24]
and r9d, r8d
add eax, edx
xor r9d, ebp
add ecx, eax
mov edx, ebx
add dword [rsp + 0x44], ecx
mov eax, ebx
ror eax, 0xb
mov ecx, r10d
ror edx, 0x19
xor ecx, r11d
xor edx, eax
and ecx, ebx
xor ecx, r10d
mov eax, ebx
ror eax, 6
add r10d, 0x27b70a85
xor edx, eax
mov eax, r14d
add edx, dword [rsp + 0x34]
add edx, ecx
ror eax, 0xd
add edx, r15d
mov ecx, r14d
add edi, edx
ror ecx, 0x16
xor ecx, eax
mov eax, r14d
ror eax, 2
xor ecx, eax
lea r15d, [rdx + r9]
mov r9d, dword [rsp + 0x30]
add r15d, ecx
mov ecx, dword [rsp + 0x28]
mov edx, ecx
mov eax, ecx
ror edx, 0x13
ror eax, 0x11
xor edx, eax
mov eax, ecx
shr eax, 0xa
mov ecx, r9d
xor edx, eax
ror ecx, 0x12
mov eax, r9d
ror eax, 7
xor ecx, eax
mov eax, r9d
shr eax, 3
xor ecx, eax
mov eax, dword [rsp + 0xf8]
add eax, edx
mov edx, edi
add ecx, eax
ror edx, 0x19
add dword [rsp + 0x34], ecx
mov eax, edi
ror eax, 0xb
mov ecx, r11d
xor edx, eax
xor ecx, ebx
and ecx, edi
mov eax, edi
ror eax, 6
xor ecx, r11d
xor edx, eax
add edx, r9d
mov r9d, r14d
add edx, ecx
add edx, r10d
add esi, edx
xor r9d, r15d
add r11d, 0x2e1b2138
mov ecx, r15d
mov eax, r15d
ror eax, 0xd
mov r10d, r9d
ror ecx, 0x16
and r10d, r8d
xor ecx, eax
xor r10d, r14d
add r10d, edx
mov eax, r15d
ror eax, 2
xor ecx, eax
add r10d, ecx
mov ecx, dword [rsp + 0x44]
mov edx, ecx
mov eax, ecx
ror eax, 0x11
mov r8d, r10d
ror edx, 0x13
xor r8d, r15d
xor edx, eax
mov eax, ecx
shr eax, 0xa
mov ecx, r13d
xor edx, eax
ror ecx, 0x12
mov eax, r13d
ror eax, 7
xor ecx, eax
mov eax, r13d
shr eax, 3
xor ecx, eax
lea eax, [r12 + rdx]
add ecx, eax
mov edx, esi
add dword [rsp + 0x30], ecx
mov eax, esi
ror eax, 0xb
mov ecx, ebx
ror edx, 0x19
xor ecx, edi
xor edx, eax
and ecx, esi
xor ecx, ebx
mov eax, esi
ror eax, 6
mov r12d, r8d
xor edx, eax
and r12d, r9d
add edx, r13d
xor r12d, r15d
add edx, ecx
mov eax, r10d
ror eax, 0xd
add edx, r11d
mov r11d, dword [rsp + 0x54]
add r12d, edx
add ebp, edx
mov ecx, r10d
ror ecx, 0x16
xor ecx, eax
mov eax, r10d
ror eax, 2
xor ecx, eax
add r12d, ecx
mov ecx, dword [rsp + 0x34]
mov edx, ecx
mov eax, ecx
ror eax, 0x11
ror edx, 0x13
xor edx, eax
mov eax, ecx
shr eax, 0xa
mov ecx, r11d
xor edx, eax
ror ecx, 0x12
mov eax, r11d
ror eax, 7
xor ecx, eax
add ebx, 0x4d2c6dfc
mov eax, r11d
shr eax, 3
mov r9d, r10d
xor ecx, eax
xor r9d, r12d
mov eax, dword [rsp + 0x4c]
add eax, edx
mov edx, ebp
add ecx, eax
ror edx, 0x19
add r13d, ecx
mov eax, ebp
ror eax, 0xb
mov ecx, edi
xor edx, eax
mov dword [rsp + 0x58], r13d
xor ecx, esi
mov eax, ebp
ror eax, 6
and ecx, ebp
xor edx, eax
xor ecx, edi
add edx, r11d
mov eax, r12d
add edx, ecx
ror eax, 0xd
add edx, ebx
mov ecx, r12d
mov ebx, dword [rsp + 0x38]
add r14d, edx
ror ecx, 0x16
mov r13d, r9d
xor ecx, eax
and r13d, r8d
mov r8d, dword [rsp + 0x30]
xor r13d, r10d
add r13d, edx
mov eax, r12d
ror eax, 2
mov edx, ebx
xor ecx, eax
ror edx, 0x12
add r13d, ecx
mov eax, ebx
ror eax, 7
mov ecx, r8d
xor edx, eax
ror ecx, 0x13
mov eax, ebx
add edi, 0x53380d13
shr eax, 3
xor edx, eax
mov eax, r8d
ror eax, 0x11
xor ecx, eax
mov eax, r8d
shr eax, 0xa
mov r8d, r12d
xor ecx, eax
mov eax, dword [rsp + 0x3c]
add eax, edx
mov edx, r14d
add ecx, eax
ror edx, 0x19
add r11d, ecx
mov eax, r14d
ror eax, 0xb
mov ecx, esi
xor edx, eax
mov dword [rsp + 0x54], r11d
xor ecx, ebp
mov eax, r14d
ror eax, 6
and ecx, r14d
xor edx, eax
xor ecx, esi
add edx, ebx
add edx, ecx
add edx, edi
add r15d, edx
xor r8d, r13d
mov ecx, r13d
ror ecx, 0x16
and r9d, r8d
xor r9d, r12d
mov eax, r13d
ror eax, 0xd
xor ecx, eax
mov eax, r13d
ror eax, 2
xor ecx, eax
lea edi, [rdx + r9]
mov r9d, dword [rsp + 0x58]
add edi, ecx
mov ecx, dword [rsp + 0x20]
mov edx, ecx
mov eax, ecx
ror edx, 0x12
ror eax, 7
xor edx, eax
mov eax, ecx
shr eax, 3
mov ecx, r9d
xor edx, eax
ror ecx, 0x13
mov eax, r9d
ror eax, 0x11
xor ecx, eax
mov eax, r9d
shr eax, 0xa
mov r9d, r13d
xor ecx, eax
xor r9d, edi
mov eax, dword [rsp + 0x40]
add eax, edx
mov edx, r15d
add ecx, eax
ror edx, 0x19
add ebx, ecx
mov eax, r15d
ror eax, 0xb
mov ecx, ebp
xor edx, eax
mov dword [rsp + 0x38], ebx
xor ecx, r14d
mov eax, r15d
ror eax, 6
and ecx, r15d
xor edx, eax
xor ecx, ebp
add edx, dword [rsp + 0x20]
add ecx, 0x650a7354
add edx, ecx
mov eax, edi
ror eax, 0xd
add edx, esi
add r10d, edx
mov ecx, edi
ror ecx, 0x16
xor ecx, eax
mov eax, edi
ror eax, 2
xor ecx, eax
mov eax, r9d
and eax, r8d
mov r8d, dword [rsp + 0x48]
xor eax, r13d
add edx, eax
mov eax, r8d
add edx, ecx
ror eax, 7
mov dword [rsp + 0x5c], edx
mov ecx, r11d
mov edx, r8d
ror edx, 0x12
xor edx, eax
mov eax, r8d
shr eax, 3
xor edx, eax
mov eax, r11d
ror ecx, 0x13
ror eax, 0x11
add ebp, 0x766a0abb
xor ecx, eax
mov eax, r11d
mov r11d, dword [rsp + 0x20]
shr eax, 0xa
xor ecx, eax
mov eax, dword [rsp + 0x28]
add eax, edx
mov edx, r10d
add ecx, eax
ror edx, 0x19
add r11d, ecx
mov eax, r10d
ror eax, 0xb
mov ecx, r14d
xor edx, eax
mov dword [rsp + 0x20], r11d
xor ecx, r15d
mov eax, r10d
ror eax, 6
and ecx, r10d
xor edx, eax
xor ecx, r14d
add edx, r8d
mov r8d, edi
add edx, ecx
add edx, ebp
mov ebp, dword [rsp + 0x5c]
add r12d, edx
xor r8d, ebp
mov ecx, ebp
mov eax, ebp
ror eax, 0xd
mov esi, r8d
ror ecx, 0x16
and esi, r9d
mov r9d, dword [rsp + 0x2c]
xor ecx, eax
xor esi, edi
mov eax, ebp
ror eax, 2
add esi, edx
xor ecx, eax
mov edx, r9d
add esi, ecx
ror edx, 0x12
mov ecx, ebx
mov eax, r9d
ror eax, 7
xor edx, eax
ror ecx, 0x13
mov eax, r9d
shr eax, 3
xor edx, eax
mov eax, ebx
ror eax, 0x11
xor ecx, eax
mov eax, ebx
mov ebx, dword [rsp + 0x48]
shr eax, 0xa
xor ecx, eax
mov eax, dword [rsp + 0x44]
add eax, edx
mov edx, r12d
add ecx, eax
ror edx, 0x19
add ebx, ecx
mov eax, r12d
ror eax, 0xb
mov ecx, r10d
xor edx, eax
mov dword [rsp + 0x48], ebx
xor ecx, r15d
mov eax, r12d
ror eax, 6
and ecx, r12d
xor edx, eax
xor ecx, r15d
add edx, r9d
add edx, ecx
add r14d, 0x81c2c92e
mov r9d, ebp
add edx, r14d
xor r9d, esi
add r13d, edx
mov r14d, r9d
and r14d, r8d
mov ecx, esi
mov r8d, dword [rsp + 0x24]
xor r14d, ebp
ror ecx, 0x16
add r14d, edx
mov edx, r8d
mov eax, esi
ror eax, 0xd
xor ecx, eax
ror edx, 0x12
mov eax, esi
ror eax, 2
xor ecx, eax
mov eax, r8d
ror eax, 7
add r14d, ecx
xor edx, eax
mov ecx, r11d
ror ecx, 0x13
mov eax, r8d
shr eax, 3
xor edx, eax
mov eax, r11d
ror eax, 0x11
xor ecx, eax
mov eax, r11d
shr eax, 0xa
xor ecx, eax
mov eax, dword [rsp + 0x34]
add eax, edx
mov edx, r13d
add ecx, eax
ror edx, 0x19
add dword [rsp + 0x2c], ecx
mov eax, r13d
ror eax, 0xb
mov ecx, r10d
xor edx, eax
xor ecx, r12d
and ecx, r13d
mov eax, r13d
ror eax, 6
xor ecx, r10d
xor edx, eax
add ecx, 0x92722c85
add edx, r8d
mov eax, r14d
add edx, ecx
ror eax, 0xd
add edx, r15d
mov r8d, esi
add edi, edx
xor r8d, r14d
and r9d, r8d
mov dword [rsp + 0x5c], edi
xor r9d, esi
mov ecx, r14d
ror ecx, 0x16
xor ecx, eax
mov eax, r14d
ror eax, 2
xor ecx, eax
lea r11d, [rdx + r9]
mov r9d, dword [rsp + 0xf8]
add r11d, ecx
mov edx, r9d
mov eax, r9d
ror eax, 7
mov ecx, ebx
ror edx, 0x12
xor edx, eax
mov eax, r9d
shr eax, 3
xor edx, eax
mov r15d, dword [rsp + 0x50]
mov eax, ebx
ror eax, 0x11
ror ecx, 0x13
xor ecx, eax
mov eax, ebx
shr eax, 0xa
xor ecx, eax
mov eax, dword [rsp + 0x30]
add eax, edx
mov edx, edi
add ecx, eax
ror edx, 0x19
add dword [rsp + 0x24], ecx
mov eax, edi
ror eax, 0xb
mov ecx, r12d
xor edx, eax
xor ecx, r13d
and ecx, edi
mov eax, edi
ror eax, 6
xor ecx, r12d
xor edx, eax
add ecx, 0xa2bfe8a1
add edx, r9d
mov eax, r11d
add edx, ecx
ror eax, 0xd
add edx, r10d
mov r9d, r14d
add ebp, edx
xor r9d, r11d
mov ecx, r11d
mov ebx, r9d
ror ecx, 0x16
and ebx, r8d
mov r8d, dword [rsp + 0x2c]
xor ecx, eax
xor ebx, r14d
mov eax, r11d
ror eax, 2
add ebx, edx
xor ecx, eax
mov edx, r15d
add ebx, ecx
ror edx, 0x12
mov eax, r15d
mov ecx, r8d
ror eax, 7
add r12d, 0xa81a664b
xor edx, eax
ror ecx, 0x13
mov eax, r15d
shr eax, 3
xor edx, eax
mov eax, r8d
ror eax, 0x11
xor ecx, eax
mov eax, r8d
shr eax, 0xa
xor ecx, eax
mov eax, dword [rsp + 0x58]
add eax, edx
mov edx, ebp
add ecx, eax
ror edx, 0x19
add dword [rsp + 0xf8], ecx
mov eax, ebp
ror eax, 0xb
mov ecx, r13d
xor edx, eax
xor ecx, edi
and ecx, ebp
mov eax, ebp
ror eax, 6
xor ecx, r13d
xor edx, eax
add edx, r15d
add edx, ecx
add edx, r12d
mov r12d, dword [rsp + 0x4c]
add esi, edx
mov r10d, dword [rsp + 0x5c]
mov r8d, ebx
xor r8d, r11d
mov dword [rsp + 0x68], esi
mov edi, r8d
mov ecx, ebx
ror ecx, 0x16
and edi, r9d
mov r9d, dword [rsp + 0x24]
xor edi, r11d
add edi, edx
mov eax, ebx
ror eax, 0xd
mov edx, r12d
xor ecx, eax
ror edx, 0x12
mov eax, ebx
add r13d, 0xc24b8b70
ror eax, 2
xor ecx, eax
mov eax, r12d
ror eax, 7
add edi, ecx
xor edx, eax
mov ecx, r9d
ror ecx, 0x13
mov eax, r12d
shr eax, 3
xor edx, eax
mov eax, r9d
ror eax, 0x11
xor ecx, eax
mov eax, r9d
shr eax, 0xa
mov r9d, ebx
xor ecx, eax
xor r9d, edi
mov eax, dword [rsp + 0x54]
add eax, edx
mov edx, esi
add ecx, eax
ror edx, 0x19
add r15d, ecx
mov eax, esi
ror eax, 0xb
mov ecx, r10d
xor edx, eax
mov dword [rsp + 0x50], r15d
xor ecx, ebp
mov eax, esi
and ecx, esi
ror eax, 6
xor edx, eax
xor ecx, r10d
add edx, r12d
mov eax, edi
add edx, ecx
ror eax, 0xd
add edx, r13d
mov ecx, edi
add r14d, edx
ror ecx, 0x16
xor ecx, eax
mov dword [rsp + 0x5c], r14d
mov esi, r9d
mov eax, edi
and esi, r8d
ror eax, 2
mov r8d, dword [rsp + 0x3c]
xor ecx, eax
xor esi, ebx
mov eax, r8d
add esi, edx
ror eax, 7
mov edx, r8d
add esi, ecx
ror edx, 0x12
xor edx, eax
mov eax, r8d
mov r13d, dword [rsp + 0xf8]
mov ecx, r13d
shr eax, 3
xor edx, eax
ror ecx, 0x13
mov eax, r13d
ror eax, 0x11
xor ecx, eax
mov eax, r13d
mov r13d, dword [rsp + 0x38]
shr eax, 0xa
xor ecx, eax
lea eax, [rdx + r13]
mov edx, r14d
add ecx, eax
ror edx, 0x19
add r12d, ecx
mov eax, r14d
ror eax, 0xb
mov ecx, ebp
xor edx, eax
mov dword [rsp + 0x4c], r12d
mov r12d, dword [rsp + 0x68]
mov eax, r14d
ror eax, 6
xor ecx, r12d
xor edx, eax
and ecx, r14d
add edx, r8d
xor ecx, ebp
add ecx, 0xc76c51a3
mov r8d, edi
add edx, ecx
xor r8d, esi
add edx, r10d
and r9d, r8d
mov r10d, dword [rsp + 0x5c]
add r11d, edx
xor r9d, edi
mov ecx, esi
ror ecx, 0x16
mov eax, esi
ror eax, 0xd
xor ecx, eax
mov eax, esi
ror eax, 2
lea r14d, [rdx + r9]
mov r9d, dword [rsp + 0x40]
xor ecx, eax
add r14d, ecx
mov edx, r9d
ror edx, 0x12
mov eax, r9d
ror eax, 7
mov ecx, r15d
xor edx, eax
ror ecx, 0x13
mov eax, r9d
shr eax, 3
xor edx, eax
mov eax, r15d
ror eax, 0x11
xor ecx, eax
mov eax, r15d
shr eax, 0xa
xor ecx, eax
mov eax, dword [rsp + 0x20]
add eax, edx
mov edx, r11d
add ecx, eax
ror edx, 0x19
add dword [rsp + 0x3c], ecx
mov eax, r11d
ror eax, 0xb
mov ecx, r12d
xor edx, eax
xor ecx, r10d
mov eax, r11d
ror eax, 6
xor edx, eax
and ecx, r11d
xor ecx, r12d
add edx, r9d
add edx, ecx
add ebp, 0xd192e819
add edx, ebp
add r12d, 0xd6990624
mov ebp, dword [rsp + 0x28]
add ebx, edx
mov r9d, esi
mov ecx, r14d
ror ecx, 0x16
xor r9d, r14d
mov eax, r14d
mov r15d, r9d
ror eax, 0xd
and r15d, r8d
xor ecx, eax
mov r8d, dword [rsp + 0x4c]
xor r15d, esi
mov eax, r14d
ror eax, 2
add r15d, edx
xor ecx, eax
mov edx, ebp
add r15d, ecx
ror edx, 0x12
mov eax, ebp
mov ecx, r8d
ror eax, 7
xor edx, eax
ror ecx, 0x13
mov eax, ebp
shr eax, 3
xor edx, eax
mov eax, r8d
ror eax, 0x11
xor ecx, eax
mov eax, r8d
shr eax, 0xa
mov r8d, r14d
xor ecx, eax
xor r8d, r15d
mov eax, dword [rsp + 0x48]
add eax, edx
mov edx, ebx
add ecx, eax
ror edx, 0x19
add dword [rsp + 0x40], ecx
mov eax, ebx
ror eax, 0xb
mov ecx, r10d
xor edx, eax
xor ecx, r11d
and ecx, ebx
mov eax, ebx
ror eax, 6
xor ecx, r10d
xor edx, eax
mov eax, r15d
add edx, ebp
ror eax, 0xd
add edx, ecx
mov ebp, r8d
add edx, r12d
and ebp, r9d
mov r12d, dword [rsp + 0x44]
xor ebp, r14d
add ebp, edx
add edi, edx
mov ecx, r15d
mov edx, r12d
ror ecx, 0x16
xor ecx, eax
ror edx, 0x12
mov eax, r15d
ror eax, 2
xor ecx, eax
mov eax, r12d
ror eax, 7
add ebp, ecx
xor edx, eax
mov r9d, dword [rsp + 0x3c]
add r10d, 0xf40e3585
mov ecx, r9d
mov eax, r12d
shr eax, 3
xor edx, eax
ror ecx, 0x13
mov eax, r9d
ror eax, 0x11
xor ecx, eax
mov eax, r9d
shr eax, 0xa
mov r9d, r15d
xor ecx, eax
xor r9d, ebp
mov eax, dword [rsp + 0x2c]
add eax, edx
mov edx, edi
add ecx, eax
ror edx, 0x19
add dword [rsp + 0x28], ecx
mov eax, edi
ror eax, 0xb
mov ecx, ebx
xor edx, eax
xor ecx, r11d
and ecx, edi
mov eax, edi
xor ecx, r11d
ror eax, 6
xor edx, eax
add r11d, 0x106aa070
add edx, r12d
mov eax, ebp
add edx, ecx
ror eax, 0xd
add edx, r10d
mov ecx, ebp
add esi, edx
ror ecx, 0x16
xor ecx, eax
mov r10d, r9d
and r10d, r8d
mov eax, ebp
ror eax, 2
xor r10d, r15d
xor ecx, eax
add r10d, edx
add r10d, ecx
mov edx, esi
ror edx, 0x19
mov eax, esi
ror eax, 0xb
mov ecx, ebx
xor edx, eax
xor ecx, edi
and ecx, esi
mov eax, esi
ror eax, 6
xor ecx, ebx
xor edx, eax
mov r8d, ebp
add edx, dword [rsp + 0x34]
xor r8d, r10d
add edx, ecx
and r9d, r8d
add edx, r11d
xor r9d, ebp
add r14d, edx
mov ecx, r10d
ror ecx, 0x16
mov eax, r10d
ror eax, 0xd
xor ecx, eax
lea r11d, [rdx + r9]
mov eax, r10d
mov edx, r14d
ror eax, 2
xor ecx, eax
add r11d, ecx
ror edx, 0x19
mov ecx, edi
add ebx, 0x19a4c116
xor ecx, esi
mov r9d, r10d
and ecx, r14d
xor r9d, r11d
xor ecx, edi
mov eax, r14d
ror eax, 0xb
add edi, 0x1e376c08
xor edx, eax
mov eax, r14d
ror eax, 6
xor edx, eax
mov eax, r11d
add edx, dword [rsp + 0x30]
add edx, ecx
ror eax, 0xd
add edx, ebx
mov ecx, r11d
add r15d, edx
ror ecx, 0x16
xor ecx, eax
mov ebx, r9d
and ebx, r8d
mov eax, r11d
ror eax, 2
xor ebx, r10d
xor ecx, eax
add ebx, edx
add ebx, ecx
mov eax, r15d
ror eax, 0xb
mov ecx, esi
xor ecx, r14d
mov edx, r15d
ror edx, 0x19
and ecx, r15d
xor edx, eax
xor ecx, esi
mov eax, r15d
add esi, 0x2748774c
ror eax, 6
mov r8d, ebx
xor edx, eax
xor r8d, r11d
add edx, dword [rsp + 0x58]
mov eax, ebx
add edx, ecx
ror eax, 0xd
add edx, edi
mov ecx, ebx
add ebp, edx
ror ecx, 0x16
xor ecx, eax
mov edi, r8d
and edi, r9d
mov eax, ebx
ror eax, 2
xor edi, r11d
xor ecx, eax
add edi, edx
add edi, ecx
mov eax, ebp
ror eax, 0xb
mov edx, ebp
ror edx, 0x19
mov ecx, r14d
xor edx, eax
xor ecx, r15d
and ecx, ebp
mov eax, ebp
ror eax, 6
xor ecx, r14d
xor edx, eax
mov r9d, ebx
add edx, dword [rsp + 0x54]
add edx, ecx
add edx, esi
add r10d, edx
xor r9d, edi
mov esi, r9d
add r14d, 0x34b0bcb5
and esi, r8d
mov ecx, edi
ror ecx, 0x16
xor esi, ebx
add esi, edx
mov eax, edi
ror eax, 0xd
mov edx, r10d
xor ecx, eax
ror edx, 0x19
mov eax, edi
mov r8d, edi
ror eax, 2
xor ecx, eax
mov eax, r10d
add esi, ecx
ror eax, 0xb
xor edx, eax
mov ecx, r15d
xor ecx, ebp
xor r8d, esi
and ecx, r10d
and r9d, r8d
xor ecx, r15d
xor r9d, edi
add r15d, 0x391c0cb3
mov eax, r10d
ror eax, 6
xor edx, eax
mov eax, esi
ror eax, 0xd
add edx, r13d
add edx, ecx
mov ecx, esi
add edx, r14d
ror ecx, 0x16
xor ecx, eax
add r11d, edx
mov eax, esi
ror eax, 2
xor ecx, eax
lea r14d, [rdx + r9]
add r14d, ecx
mov eax, r11d
ror eax, 0xb
mov edx, r11d
ror edx, 0x19
mov ecx, ebp
xor edx, eax
xor ecx, r10d
and ecx, r11d
mov eax, r11d
ror eax, 6
xor ecx, ebp
xor edx, eax
mov r9d, esi
add edx, dword [rsp + 0x20]
xor r9d, r14d
add edx, ecx
mov eax, r14d
add edx, r15d
ror eax, 0xd
add ebx, edx
mov ecx, r14d
ror ecx, 0x16
mov r15d, r9d
xor ecx, eax
and r15d, r8d
xor r15d, esi
mov eax, r14d
ror eax, 2
add r15d, edx
xor ecx, eax
mov edx, ebx
mov eax, ebx
ror edx, 0x19
ror eax, 0xb
add r15d, ecx
xor edx, eax
mov ecx, r10d
mov r8d, r14d
xor ecx, r11d
xor r8d, r15d
and ecx, ebx
mov r12d, r8d
xor ecx, r10d
and r12d, r9d
add ecx, 0x4ed8aa4a
xor r12d, r14d
add r10d, 0x5b9cca4f
mov eax, ebx
ror eax, 6
xor edx, eax
mov eax, r15d
add edx, dword [rsp + 0x48]
add edx, ecx
ror eax, 0xd
add edx, ebp
mov ecx, r15d
add edi, edx
ror ecx, 0x16
xor ecx, eax
add r12d, edx
mov eax, r15d
mov edx, edi
ror eax, 2
xor ecx, eax
ror edx, 0x19
add r12d, ecx
mov eax, edi
ror eax, 0xb
mov ecx, ebx
xor edx, eax
xor ecx, r11d
and ecx, edi
mov eax, edi
xor ecx, r11d
ror eax, 6
xor edx, eax
add r11d, 0x682e6ff3
add edx, dword [rsp + 0x2c]
mov eax, r12d
add edx, ecx
ror eax, 0xd
add edx, r10d
mov ecx, r12d
add esi, edx
ror ecx, 0x16
xor ecx, eax
mov r10d, r15d
xor r10d, r12d
mov eax, r12d
ror eax, 2
and r8d, r10d
xor ecx, eax
xor r8d, r15d
add r8d, edx
mov eax, esi
add r8d, ecx
ror eax, 0xb
mov edx, esi
mov ecx, ebx
ror edx, 0x19
xor ecx, edi
xor edx, eax
and ecx, esi
xor ecx, ebx
mov eax, esi
ror eax, 6
mov r9d, r12d
xor edx, eax
xor r9d, r8d
add edx, dword [rsp + 0x24]
mov eax, r8d
add edx, ecx
mov ecx, r8d
add edx, r11d
ror ecx, 0x16
add r14d, edx
ror eax, 0xd
xor ecx, eax
and r10d, r9d
xor r10d, r12d
add ebx, 0x748f82ee
mov eax, r8d
ror eax, 2
xor ecx, eax
mov eax, r14d
ror eax, 0xb
lea r11d, [rdx + r10]
add r11d, ecx
mov edx, r14d
ror edx, 0x19
mov ecx, edi
xor edx, eax
xor ecx, esi
and ecx, r14d
mov eax, r14d
ror eax, 6
xor ecx, edi
xor edx, eax
mov eax, r11d
add edx, dword [rsp + 0xf8]
add edx, ecx
ror eax, 0xd
add edx, ebx
mov ecx, r11d
add r15d, edx
ror ecx, 0x16
xor ecx, eax
mov ebx, r8d
xor r8d, r11d
mov eax, r11d
ror eax, 2
mov ebp, r8d
xor ecx, eax
and ebp, r9d
xor ebp, ebx
mov eax, r15d
add ebp, edx
ror eax, 0xb
add ebp, ecx
mov edx, r15d
ror edx, 0x19
mov ecx, esi
xor edx, eax
mov dword [rsp + 0x5c], ebp
xor ecx, r14d
mov eax, r15d
ror eax, 6
and ecx, r15d
xor edx, eax
xor ecx, esi
add edx, dword [rsp + 0x50]
add ecx, 0x78a5636f
add edx, ecx
mov r9d, ebp
add edx, edi
xor r9d, r11d
add r12d, edx
mov ecx, ebp
ror ecx, 0x16
mov eax, ebp
ror eax, 0xd
mov r13d, r9d
xor ecx, eax
and r13d, r8d
xor r13d, r11d
mov eax, ebp
ror eax, 2
add r13d, edx
xor ecx, eax
mov edx, r12d
ror edx, 0x19
mov eax, r12d
ror eax, 0xb
add r13d, ecx
xor edx, eax
mov eax, r12d
ror eax, 6
xor edx, eax
add edx, dword [rsp + 0x4c]
mov ecx, r14d
xor ecx, r15d
mov r10d, ebp
and ecx, r12d
xor r10d, r13d
xor ecx, r14d
mov eax, r13d
ror eax, 0xd
add ecx, 0x84c87814
add edx, ecx
mov r8d, r13d
add edx, esi
mov ecx, r13d
add ebx, edx
ror ecx, 0x16
xor ecx, eax
mov dword [rsp + 0x58], ebx
mov eax, r13d
lea esi, [r11 - 0x7338fdf8]
ror eax, 2
xor ecx, eax
mov eax, r10d
and eax, r9d
xor ebp, eax
mov eax, ebx
add ebp, edx
ror eax, 0xb
add ebp, ecx
mov edx, r15d
xor edx, r12d
xor r8d, ebp
and edx, ebx
and r10d, r8d
xor edx, r15d
xor r10d, r13d
add r15d, 0x90befffa
add r10d, 0x8cc70208
mov ecx, ebx
ror ecx, 0x19
xor ecx, eax
mov eax, ebx
ror eax, 6
xor ecx, eax
mov eax, dword [rsp + 0x3c]
add eax, ecx
mov ecx, r12d
add edx, eax
xor ecx, ebx
add edx, r14d
mov eax, ebp
add esi, edx
ror eax, 0xd
and ecx, esi
mov r14d, ebp
ror r14d, 0x16
xor ecx, r12d
xor r14d, eax
mov eax, ebp
ror eax, 2
xor r14d, eax
mov eax, esi
add r14d, edx
ror eax, 0xb
add r14d, r10d
mov edx, esi
mov r10d, dword [rsp + 0x40]
mov r9d, r14d
ror edx, 0x19
xor r9d, ebp
xor edx, eax
mov eax, esi
ror eax, 6
xor edx, eax
add edx, r10d
add edx, ecx
mov ecx, r14d
add edx, r15d
mov r15d, dword [rsp + 0x5c]
add r15d, edx
ror ecx, 0x16
mov edi, r9d
mov eax, r14d
ror eax, 0xd
and edi, r8d
xor ecx, eax
xor edi, ebp
add edi, edx
mov eax, r14d
ror eax, 2
mov edx, r15d
xor ecx, eax
ror edx, 0x19
add edi, ecx
mov eax, r15d
ror eax, 0xb
mov ecx, esi
xor edx, eax
xor ecx, ebx
and ecx, r15d
mov eax, r15d
xor ecx, ebx
ror eax, 6
xor edx, eax
add ecx, 0xa4506ceb
add edx, dword [rsp + 0x28]
mov r8d, r14d
add edx, ecx
xor r8d, edi
add edx, r12d
mov ecx, edi
ror ecx, 0x16
add r13d, edx
mov eax, edi
mov ebx, r8d
ror eax, 0xd
and ebx, r9d
mov r9d, dword [rsp + 0x34]
xor ecx, eax
xor ebx, r14d
mov eax, edi
ror eax, 2
add ebx, edx
xor ecx, eax
mov edx, r13d
add ebx, ecx
ror edx, 0x19
mov eax, r13d
mov ecx, r9d
ror eax, 0xb
mov r11d, edi
xor edx, eax
ror ecx, 0x12
mov eax, r13d
ror eax, 6
xor edx, eax
mov eax, r9d
ror eax, 7
xor ecx, eax
mov eax, r9d
shr eax, 3
xor ecx, eax
mov eax, r10d
add edx, ecx
ror eax, 0x11
mov ecx, r10d
shr r10d, 0xa
ror ecx, 0x13
xor ecx, eax
mov eax, esi
xor ecx, r10d
xor eax, r15d
add ecx, dword [rsp + 0x44]
and eax, r13d
add edx, ecx
xor eax, esi
mov ecx, dword [rsp + 0x58]
add edx, eax
add edx, dword [rsp + 0x24]
add ecx, 0xbef9a3f7
add edx, ecx
add ebp, edx
xor r11d, ebx
mov eax, ebx
ror eax, 0xd
mov ecx, ebx
ror ecx, 0x16
mov r10d, r11d
xor ecx, eax
and r10d, r8d
mov r8d, dword [rsp + 0x28]
xor r10d, edi
add r10d, edx
mov eax, ebx
ror eax, 2
mov edx, ebp
xor ecx, eax
ror edx, 0x19
add r10d, ecx
mov eax, ebp
ror eax, 0xb
mov ecx, r8d
xor edx, eax
ror ecx, 0x13
mov eax, ebp
ror eax, 6
xor edx, eax
mov eax, r8d
ror eax, 0x11
xor ecx, eax
shr r8d, 0xa
xor ecx, r8d
mov r8d, dword [rsp + 0x30]
add edx, ecx
mov eax, r8d
ror eax, 7
mov ecx, r8d
ror ecx, 0x12
xor ecx, eax
shr r8d, 3
xor ecx, r8d
mov eax, r15d
xor eax, r13d
add ecx, esi
mov rsi, qword [rsp + 0xe0]
and eax, ebp
xor eax, r15d
add ecx, edx
add eax, ecx
mov edx, r10d
add eax, r9d
ror edx, 0x16
mov r8, qword [rsi]
mov ecx, ebx
mov r9d, dword [rsp + 0xf8]
xor ecx, r10d
add r9d, eax
and ecx, r11d
mov eax, r10d
xor ecx, ebx
ror eax, 0xd
xor edx, eax
mov eax, r10d
ror eax, 2
xor eax, edx
add eax, 0xc67178f2
add eax, r9d
add ecx, eax
add dword [r8], ecx
mov eax, dword [r8]
mov dword [rsp + 0x64], eax
mov rax, qword [rsi]
add dword [rax + 4], r10d
mov r8d, dword [rax + 4]
mov rax, qword [rsi]
mov dword [rsp + 0x60], r8d
add dword [rax + 8], ebx
mov r8d, dword [rax + 8]
mov rax, qword [rsi]
mov dword [rsp + 0x54], r8d
add dword [rax + 0xc], edi
mov r8d, dword [rax + 0xc]
mov dword [rsp + 0x20], r8d
mov rdx, qword [rsi]
mov r10d, dword [rsp + 0x64]
mov ecx, dword [rdx + 0x10]
add ecx, 0xc67178f2
add ecx, r14d
add ecx, r9d
mov dword [rdx + 0x10], ecx
mov rax, qword [rsi]
mov dword [rsp + 0x38], ecx
add dword [rax + 0x14], ebp
mov ecx, dword [rax + 0x14]
mov rax, qword [rsi]
mov dword [rsp + 0x68], ecx
add dword [rax + 0x18], r13d
mov ecx, dword [rax + 0x18]
mov rax, qword [rsi]
mov dword [rsp + 0x58], ecx
add dword [rax + 0x1c], r15d
mov ecx, dword [rax + 0x1c]
mov rax, qword [rsp + 0x70]
inc rax
mov dword [rsp + 0x5c], ecx
mov qword [rsp + 0x70], rax
cmp rax, qword [rsp + 0xf0]
jne 0x180161b80
mov r14, qword [rsp + 0xa8]
mov r13, qword [rsp + 0xb0]
mov r12, qword [rsp + 0xb8]
mov rbp, qword [rsp + 0xe8]
mov r15, qword [rsp + 0xa0]
add rsp, 0xc0
pop rdi
pop rsi
pop rbx
ret
lea r8, [0x1803e4d70]
lea rdx, str.take
lea rcx, str.remaining_____count
call fcn.1800d2170
int3