Function at 0x1400019b0
Capabilities:
Hash data using sha256

Disassembly:
push rbp
push rbx
push r12
push r13
push r14
push r15
lea rbp, [rcx + 0x28]
mov r8d, dword [rcx]
mov r9d, dword [rcx + 4]
mov r10d, dword [rcx + 8]
mov r11d, dword [rcx + 0xc]
mov r12d, dword [rcx + 0x10]
mov r13d, dword [rcx + 0x14]
mov r14d, dword [rcx + 0x18]
mov r15d, dword [rcx + 0x1c]
mov eax, dword [rbp]
bswap eax
mov dword [rbp], eax
add eax, 0x428a2f98
mov ecx, r12d
mov edx, r12d
add eax, r15d
ror ecx, 6
mov ebx, r14d
ror edx, 0xb
xor ebx, r13d
xor ecx, edx
and ebx, r12d
ror edx, 0xe
xor ebx, r14d
xor ecx, edx
add eax, ebx
add eax, ecx
add r11d, eax
mov r15d, eax
mov eax, r8d
mov ebx, r9d
mov ecx, r8d
mov edx, r8d
ror ecx, 2
xor eax, r9d
ror edx, 0xd
and ebx, r8d
xor ecx, edx
and eax, r10d
ror edx, 9
or eax, ebx
xor ecx, edx
add eax, ecx
add r15d, eax
mov eax, dword [rbp + 4]
bswap eax
mov dword [rbp + 4], eax
add eax, 0x71374491
mov ecx, r11d
mov edx, r11d
add eax, r14d
ror ecx, 6
mov ebx, r13d
ror edx, 0xb
xor ebx, r12d
xor ecx, edx
and ebx, r11d
ror edx, 0xe
xor ebx, r13d
xor ecx, edx
add eax, ebx
add eax, ecx
add r10d, eax
mov r14d, eax
mov eax, r15d
mov ebx, r8d
mov ecx, r15d
mov edx, r15d
ror ecx, 2
xor eax, r8d
ror edx, 0xd
and ebx, r15d
xor ecx, edx
and eax, r9d
ror edx, 9
or eax, ebx
xor ecx, edx
add eax, ecx
add r14d, eax
mov eax, dword [rbp + 8]
bswap eax
mov dword [rbp + 8], eax
add eax, 0xb5c0fbcf
mov ecx, r10d
mov edx, r10d
add eax, r13d
ror ecx, 6
mov ebx, r12d
ror edx, 0xb
xor ebx, r11d
xor ecx, edx
and ebx, r10d
ror edx, 0xe
xor ebx, r12d
xor ecx, edx
add eax, ebx
add eax, ecx
add r9d, eax
mov r13d, eax
mov eax, r14d
mov ebx, r15d
mov ecx, r14d
mov edx, r14d
ror ecx, 2
xor eax, r15d
ror edx, 0xd
and ebx, r14d
xor ecx, edx
and eax, r8d
ror edx, 9
or eax, ebx
xor ecx, edx
add eax, ecx
add r13d, eax
mov eax, dword [rbp + 0xc]
bswap eax
mov dword [rbp + 0xc], eax
add eax, 0xe9b5dba5
mov ecx, r9d
mov edx, r9d
add eax, r12d
ror ecx, 6
mov ebx, r11d
ror edx, 0xb
xor ebx, r10d
xor ecx, edx
and ebx, r9d
ror edx, 0xe
xor ebx, r11d
xor ecx, edx
add eax, ebx
add eax, ecx
add r8d, eax
mov r12d, eax
mov eax, r13d
mov ebx, r14d
mov ecx, r13d
mov edx, r13d
ror ecx, 2
xor eax, r14d
ror edx, 0xd
and ebx, r13d
xor ecx, edx
and eax, r15d
ror edx, 9
or eax, ebx
xor ecx, edx
add eax, ecx
add r12d, eax
mov eax, dword [rbp + 0x10]
bswap eax
mov dword [rbp + 0x10], eax
add eax, 0x3956c25b
mov ecx, r8d
mov edx, r8d
add eax, r11d
ror ecx, 6
mov ebx, r10d
ror edx, 0xb
xor ebx, r9d
xor ecx, edx
and ebx, r8d
ror edx, 0xe
xor ebx, r10d
xor ecx, edx
add eax, ebx
add eax, ecx
add r15d, eax
mov r11d, eax
mov eax, r12d
mov ebx, r13d
mov ecx, r12d
mov edx, r12d
ror ecx, 2
xor eax, r13d
ror edx, 0xd
and ebx, r12d
xor ecx, edx
and eax, r14d
ror edx, 9
or eax, ebx
xor ecx, edx
add eax, ecx
add r11d, eax
mov eax, dword [rbp + 0x14]
bswap eax
mov dword [rbp + 0x14], eax
add eax, 0x59f111f1
mov ecx, r15d
mov edx, r15d
add eax, r10d
ror ecx, 6
mov ebx, r9d
ror edx, 0xb
xor ebx, r8d
xor ecx, edx
and ebx, r15d
ror edx, 0xe
xor ebx, r9d
xor ecx, edx
add eax, ebx
add eax, ecx
add r14d, eax
mov r10d, eax
mov eax, r11d
mov ebx, r12d
mov ecx, r11d
mov edx, r11d
ror ecx, 2
xor eax, r12d
ror edx, 0xd
and ebx, r11d
xor ecx, edx
and eax, r13d
ror edx, 9
or eax, ebx
xor ecx, edx
add eax, ecx
add r10d, eax
mov eax, dword [rbp + 0x18]
bswap eax
mov dword [rbp + 0x18], eax
add eax, 0x923f82a4
mov ecx, r14d
mov edx, r14d
add eax, r9d
ror ecx, 6
mov ebx, r8d
ror edx, 0xb
xor ebx, r15d
xor ecx, edx
and ebx, r14d
ror edx, 0xe
xor ebx, r8d
xor ecx, edx
add eax, ebx
add eax, ecx
add r13d, eax
mov r9d, eax
mov eax, r10d
mov ebx, r11d
mov ecx, r10d
mov edx, r10d
ror ecx, 2
xor eax, r11d
ror edx, 0xd
and ebx, r10d
xor ecx, edx
and eax, r12d
ror edx, 9
or eax, ebx
xor ecx, edx
add eax, ecx
add r9d, eax
mov eax, dword [rbp + 0x1c]
bswap eax
mov dword [rbp + 0x1c], eax
add eax, 0xab1c5ed5
mov ecx, r13d
mov edx, r13d
add eax, r8d
ror ecx, 6
mov ebx, r15d
ror edx, 0xb
xor ebx, r14d
xor ecx, edx
and ebx, r13d
ror edx, 0xe
xor ebx, r15d
xor ecx, edx
add eax, ebx
add eax, ecx
add r12d, eax
mov r8d, eax
mov eax, r9d
mov ebx, r10d
mov ecx, r9d
mov edx, r9d
ror ecx, 2
xor eax, r10d
ror edx, 0xd
and ebx, r9d
xor ecx, edx
and eax, r11d
ror edx, 9
or eax, ebx
xor ecx, edx
add eax, ecx
add r8d, eax
mov eax, dword [rbp + 0x20]
bswap eax
mov dword [rbp + 0x20], eax
add eax, 0xd807aa98
mov ecx, r12d
mov edx, r12d
add eax, r15d
ror ecx, 6
mov ebx, r14d
ror edx, 0xb
xor ebx, r13d
xor ecx, edx
and ebx, r12d
ror edx, 0xe
xor ebx, r14d
xor ecx, edx
add eax, ebx
add eax, ecx
add r11d, eax
mov r15d, eax
mov eax, r8d
mov ebx, r9d
mov ecx, r8d
mov edx, r8d
ror ecx, 2
xor eax, r9d
ror edx, 0xd
and ebx, r8d
xor ecx, edx
and eax, r10d
ror edx, 9
or eax, ebx
xor ecx, edx
add eax, ecx
add r15d, eax
mov eax, dword [rbp + 0x24]
bswap eax
mov dword [rbp + 0x24], eax
add eax, 0x12835b01
mov ecx, r11d
mov edx, r11d
add eax, r14d
ror ecx, 6
mov ebx, r13d
ror edx, 0xb
xor ebx, r12d
xor ecx, edx
and ebx, r11d
ror edx, 0xe
xor ebx, r13d
xor ecx, edx
add eax, ebx
add eax, ecx
add r10d, eax
mov r14d, eax
mov eax, r15d
mov ebx, r8d
mov ecx, r15d
mov edx, r15d
ror ecx, 2
xor eax, r8d
ror edx, 0xd
and ebx, r15d
xor ecx, edx
and eax, r9d
ror edx, 9
or eax, ebx
xor ecx, edx
add eax, ecx
add r14d, eax
mov eax, dword [rbp + 0x28]
bswap eax
mov dword [rbp + 0x28], eax
add eax, 0x243185be
mov ecx, r10d
mov edx, r10d
add eax, r13d
ror ecx, 6
mov ebx, r12d
ror edx, 0xb
xor ebx, r11d
xor ecx, edx
and ebx, r10d
ror edx, 0xe
xor ebx, r12d
xor ecx, edx
add eax, ebx
add eax, ecx
add r9d, eax
mov r13d, eax
mov eax, r14d
mov ebx, r15d
mov ecx, r14d
mov edx, r14d
ror ecx, 2
xor eax, r15d
ror edx, 0xd
and ebx, r14d
xor ecx, edx
and eax, r8d
ror edx, 9
or eax, ebx
xor ecx, edx
add eax, ecx
add r13d, eax
mov eax, dword [rbp + 0x2c]
bswap eax
mov dword [rbp + 0x2c], eax
add eax, 0x550c7dc3
mov ecx, r9d
mov edx, r9d
add eax, r12d
ror ecx, 6
mov ebx, r11d
ror edx, 0xb
xor ebx, r10d
xor ecx, edx
and ebx, r9d
ror edx, 0xe
xor ebx, r11d
xor ecx, edx
add eax, ebx
add eax, ecx
add r8d, eax
mov r12d, eax
mov eax, r13d
mov ebx, r14d
mov ecx, r13d
mov edx, r13d
ror ecx, 2
xor eax, r14d
ror edx, 0xd
and ebx, r13d
xor ecx, edx
and eax, r15d
ror edx, 9
or eax, ebx
xor ecx, edx
add eax, ecx
add r12d, eax
mov eax, dword [rbp + 0x30]
bswap eax
mov dword [rbp + 0x30], eax
add eax, 0x72be5d74
mov ecx, r8d
mov edx, r8d
add eax, r11d
ror ecx, 6
mov ebx, r10d
ror edx, 0xb
xor ebx, r9d
xor ecx, edx
and ebx, r8d
ror edx, 0xe
xor ebx, r10d
xor ecx, edx
add eax, ebx
add eax, ecx
add r15d, eax
mov r11d, eax
mov eax, r12d
mov ebx, r13d
mov ecx, r12d
mov edx, r12d
ror ecx, 2
xor eax, r13d
ror edx, 0xd
and ebx, r12d
xor ecx, edx
and eax, r14d
ror edx, 9
or eax, ebx
xor ecx, edx
add eax, ecx
add r11d, eax
mov eax, dword [rbp + 0x34]
bswap eax
mov dword [rbp + 0x34], eax
add eax, 0x80deb1fe
mov ecx, r15d
mov edx, r15d
add eax, r10d
ror ecx, 6
mov ebx, r9d
ror edx, 0xb
xor ebx, r8d
xor ecx, edx
and ebx, r15d
ror edx, 0xe
xor ebx, r9d
xor ecx, edx
add eax, ebx
add eax, ecx
add r14d, eax
mov r10d, eax
mov eax, r11d
mov ebx, r12d
mov ecx, r11d
mov edx, r11d
ror ecx, 2
xor eax, r12d
ror edx, 0xd
and ebx, r11d
xor ecx, edx
and eax, r13d
ror edx, 9
or eax, ebx
xor ecx, edx
add eax, ecx
add r10d, eax
mov eax, dword [rbp + 0x38]
bswap eax
mov dword [rbp + 0x38], eax
add eax, 0x9bdc06a7
mov ecx, r14d
mov edx, r14d
add eax, r9d
ror ecx, 6
mov ebx, r8d
ror edx, 0xb
xor ebx, r15d
xor ecx, edx
and ebx, r14d
ror edx, 0xe
xor ebx, r8d
xor ecx, edx
add eax, ebx
add eax, ecx
add r13d, eax
mov r9d, eax
mov eax, r10d
mov ebx, r11d
mov ecx, r10d
mov edx, r10d
ror ecx, 2
xor eax, r11d
ror edx, 0xd
and ebx, r10d
xor ecx, edx
and eax, r12d
ror edx, 9
or eax, ebx
xor ecx, edx
add eax, ecx
add r9d, eax
mov eax, dword [rbp + 0x3c]
bswap eax
mov dword [rbp + 0x3c], eax
add eax, 0xc19bf174
mov ecx, r13d
mov edx, r13d
add eax, r8d
ror ecx, 6
mov ebx, r15d
ror edx, 0xb
xor ebx, r14d
xor ecx, edx
and ebx, r13d
ror edx, 0xe
xor ebx, r15d
xor ecx, edx
add eax, ebx
add eax, ecx
add r12d, eax
mov r8d, eax
mov eax, r9d
mov ebx, r10d
mov ecx, r9d
mov edx, r9d
ror ecx, 2
xor eax, r10d
ror edx, 0xd
and ebx, r9d
xor ecx, edx
and eax, r11d
ror edx, 9
or eax, ebx
xor ecx, edx
add eax, ecx
add r8d, eax
mov eax, dword [rbp + 4]
mov ebx, dword [rbp + 0x38]
mov ecx, eax
mov edx, ebx
shr eax, 3
shr ebx, 0xa
ror ecx, 7
ror edx, 0x11
xor eax, ecx
xor ebx, edx
ror ecx, 0xb
ror edx, 2
xor eax, ecx
xor ebx, edx
add eax, dword [rbp]
add ebx, dword [rbp + 0x24]
add eax, ebx
mov dword [rbp], eax
add eax, 0xe49b69c1
mov ecx, r12d
mov edx, r12d
add eax, r15d
ror ecx, 6
mov ebx, r14d
ror edx, 0xb
xor ebx, r13d
xor ecx, edx
and ebx, r12d
ror edx, 0xe
xor ebx, r14d
xor ecx, edx
add eax, ebx
add eax, ecx
add r11d, eax
mov r15d, eax
mov eax, r8d
mov ebx, r9d
mov ecx, r8d
mov edx, r8d
ror ecx, 2
xor eax, r9d
ror edx, 0xd
and ebx, r8d
xor ecx, edx
and eax, r10d
ror edx, 9
or eax, ebx
xor ecx, edx
add eax, ecx
add r15d, eax
mov eax, dword [rbp + 8]
mov ebx, dword [rbp + 0x3c]
mov ecx, eax
mov edx, ebx
shr eax, 3
shr ebx, 0xa
ror ecx, 7
ror edx, 0x11
xor eax, ecx
xor ebx, edx
ror ecx, 0xb
ror edx, 2
xor eax, ecx
xor ebx, edx
add eax, dword [rbp + 4]
add ebx, dword [rbp + 0x28]
add eax, ebx
mov dword [rbp + 4], eax
add eax, 0xefbe4786
mov ecx, r11d
mov edx, r11d
add eax, r14d
ror ecx, 6
mov ebx, r13d
ror edx, 0xb
xor ebx, r12d
xor ecx, edx
and ebx, r11d
ror edx, 0xe
xor ebx, r13d
xor ecx, edx
add eax, ebx
add eax, ecx
add r10d, eax
mov r14d, eax
mov eax, r15d
mov ebx, r8d
mov ecx, r15d
mov edx, r15d
ror ecx, 2
xor eax, r8d
ror edx, 0xd
and ebx, r15d
xor ecx, edx
and eax, r9d
ror edx, 9
or eax, ebx
xor ecx, edx
add eax, ecx
add r14d, eax
mov eax, dword [rbp + 0xc]
mov ebx, dword [rbp]
mov ecx, eax
mov edx, ebx
shr eax, 3
shr ebx, 0xa
ror ecx, 7
ror edx, 0x11
xor eax, ecx
xor ebx, edx
ror ecx, 0xb
ror edx, 2
xor eax, ecx
xor ebx, edx
add eax, dword [rbp + 8]
add ebx, dword [rbp + 0x2c]
add eax, ebx
mov dword [rbp + 8], eax
add eax, 0xfc19dc6
mov ecx, r10d
mov edx, r10d
add eax, r13d
ror ecx, 6
mov ebx, r12d
ror edx, 0xb
xor ebx, r11d
xor ecx, edx
and ebx, r10d
ror edx, 0xe
xor ebx, r12d
xor ecx, edx
add eax, ebx
add eax, ecx
add r9d, eax
mov r13d, eax
mov eax, r14d
mov ebx, r15d
mov ecx, r14d
mov edx, r14d
ror ecx, 2
xor eax, r15d
ror edx, 0xd
and ebx, r14d
xor ecx, edx
and eax, r8d
ror edx, 9
or eax, ebx
xor ecx, edx
add eax, ecx
add r13d, eax
mov eax, dword [rbp + 0x10]
mov ebx, dword [rbp + 4]
mov ecx, eax
mov edx, ebx
shr eax, 3
shr ebx, 0xa
ror ecx, 7
ror edx, 0x11
xor eax, ecx
xor ebx, edx
ror ecx, 0xb
ror edx, 2
xor eax, ecx
xor ebx, edx
add eax, dword [rbp + 0xc]
add ebx, dword [rbp + 0x30]
add eax, ebx
mov dword [rbp + 0xc], eax
add eax, 0x240ca1cc
mov ecx, r9d
mov edx, r9d
add eax, r12d
ror ecx, 6
mov ebx, r11d
ror edx, 0xb
xor ebx, r10d
xor ecx, edx
and ebx, r9d
ror edx, 0xe
xor ebx, r11d
xor ecx, edx
add eax, ebx
add eax, ecx
add r8d, eax
mov r12d, eax
mov eax, r13d
mov ebx, r14d
mov ecx, r13d
mov edx, r13d
ror ecx, 2
xor eax, r14d
ror edx, 0xd
and ebx, r13d
xor ecx, edx
and eax, r15d
ror edx, 9
or eax, ebx
xor ecx, edx
add eax, ecx
add r12d, eax
mov eax, dword [rbp + 0x14]
mov ebx, dword [rbp + 8]
mov ecx, eax
mov edx, ebx
shr eax, 3
shr ebx, 0xa
ror ecx, 7
ror edx, 0x11
xor eax, ecx
xor ebx, edx
ror ecx, 0xb
ror edx, 2
xor eax, ecx
xor ebx, edx
add eax, dword [rbp + 0x10]
add ebx, dword [rbp + 0x34]
add eax, ebx
mov dword [rbp + 0x10], eax
add eax, 0x2de92c6f
mov ecx, r8d
mov edx, r8d
add eax, r11d
ror ecx, 6
mov ebx, r10d
ror edx, 0xb
xor ebx, r9d
xor ecx, edx
and ebx, r8d
ror edx, 0xe
xor ebx, r10d
xor ecx, edx
add eax, ebx
add eax, ecx
add r15d, eax
mov r11d, eax
mov eax, r12d
mov ebx, r13d
mov ecx, r12d
mov edx, r12d
ror ecx, 2
xor eax, r13d
ror edx, 0xd
and ebx, r12d
xor ecx, edx
and eax, r14d
ror edx, 9
or eax, ebx
xor ecx, edx
add eax, ecx
add r11d, eax
mov eax, dword [rbp + 0x18]
mov ebx, dword [rbp + 0xc]
mov ecx, eax
mov edx, ebx
shr eax, 3
shr ebx, 0xa
ror ecx, 7
ror edx, 0x11
xor eax, ecx
xor ebx, edx
ror ecx, 0xb
ror edx, 2
xor eax, ecx
xor ebx, edx
add eax, dword [rbp + 0x14]
add ebx, dword [rbp + 0x38]
add eax, ebx
mov dword [rbp + 0x14], eax
add eax, 0x4a7484aa
mov ecx, r15d
mov edx, r15d
add eax, r10d
ror ecx, 6
mov ebx, r9d
ror edx, 0xb
xor ebx, r8d
xor ecx, edx
and ebx, r15d
ror edx, 0xe
xor ebx, r9d
xor ecx, edx
add eax, ebx
add eax, ecx
add r14d, eax
mov r10d, eax
mov eax, r11d
mov ebx, r12d
mov ecx, r11d
mov edx, r11d
ror ecx, 2
xor eax, r12d
ror edx, 0xd
and ebx, r11d
xor ecx, edx
and eax, r13d
ror edx, 9
or eax, ebx
xor ecx, edx
add eax, ecx
add r10d, eax
mov eax, dword [rbp + 0x1c]
mov ebx, dword [rbp + 0x10]
mov ecx, eax
mov edx, ebx
shr eax, 3
shr ebx, 0xa
ror ecx, 7
ror edx, 0x11
xor eax, ecx
xor ebx, edx
ror ecx, 0xb
ror edx, 2
xor eax, ecx
xor ebx, edx
add eax, dword [rbp + 0x18]
add ebx, dword [rbp + 0x3c]
add eax, ebx
mov dword [rbp + 0x18], eax
add eax, 0x5cb0a9dc
mov ecx, r14d
mov edx, r14d
add eax, r9d
ror ecx, 6
mov ebx, r8d
ror edx, 0xb
xor ebx, r15d
xor ecx, edx
and ebx, r14d
ror edx, 0xe
xor ebx, r8d
xor ecx, edx
add eax, ebx
add eax, ecx
add r13d, eax
mov r9d, eax
mov eax, r10d
mov ebx, r11d
mov ecx, r10d
mov edx, r10d
ror ecx, 2
xor eax, r11d
ror edx, 0xd
and ebx, r10d
xor ecx, edx
and eax, r12d
ror edx, 9
or eax, ebx
xor ecx, edx
add eax, ecx
add r9d, eax
mov eax, dword [rbp + 0x20]
mov ebx, dword [rbp + 0x14]
mov ecx, eax
mov edx, ebx
shr eax, 3
shr ebx, 0xa
ror ecx, 7
ror edx, 0x11
xor eax, ecx
xor ebx, edx
ror ecx, 0xb
ror edx, 2
xor eax, ecx
xor ebx, edx
add eax, dword [rbp + 0x1c]
add ebx, dword [rbp]
add eax, ebx
mov dword [rbp + 0x1c], eax
add eax, 0x76f988da
mov ecx, r13d
mov edx, r13d
add eax, r8d
ror ecx, 6
mov ebx, r15d
ror edx, 0xb
xor ebx, r14d
xor ecx, edx
and ebx, r13d
ror edx, 0xe
xor ebx, r15d
xor ecx, edx
add eax, ebx
add eax, ecx
add r12d, eax
mov r8d, eax
mov eax, r9d
mov ebx, r10d
mov ecx, r9d
mov edx, r9d
ror ecx, 2
xor eax, r10d
ror edx, 0xd
and ebx, r9d
xor ecx, edx
and eax, r11d
ror edx, 9
or eax, ebx
xor ecx, edx
add eax, ecx
add r8d, eax
mov eax, dword [rbp + 0x24]
mov ebx, dword [rbp + 0x18]
mov ecx, eax
mov edx, ebx
shr eax, 3
shr ebx, 0xa
ror ecx, 7
ror edx, 0x11
xor eax, ecx
xor ebx, edx
ror ecx, 0xb
ror edx, 2
xor eax, ecx
xor ebx, edx
add eax, dword [rbp + 0x20]
add ebx, dword [rbp + 4]
add eax, ebx
mov dword [rbp + 0x20], eax
add eax, 0x983e5152
mov ecx, r12d
mov edx, r12d
add eax, r15d
ror ecx, 6
mov ebx, r14d
ror edx, 0xb
xor ebx, r13d
xor ecx, edx
and ebx, r12d
ror edx, 0xe
xor ebx, r14d
xor ecx, edx
add eax, ebx
add eax, ecx
add r11d, eax
mov r15d, eax
mov eax, r8d
mov ebx, r9d
mov ecx, r8d
mov edx, r8d
ror ecx, 2
xor eax, r9d
ror edx, 0xd
and ebx, r8d
xor ecx, edx
and eax, r10d
ror edx, 9
or eax, ebx
xor ecx, edx
add eax, ecx
add r15d, eax
mov eax, dword [rbp + 0x28]
mov ebx, dword [rbp + 0x1c]
mov ecx, eax
mov edx, ebx
shr eax, 3
shr ebx, 0xa
ror ecx, 7
ror edx, 0x11
xor eax, ecx
xor ebx, edx
ror ecx, 0xb
ror edx, 2
xor eax, ecx
xor ebx, edx
add eax, dword [rbp + 0x24]
add ebx, dword [rbp + 8]
add eax, ebx
mov dword [rbp + 0x24], eax
add eax, 0xa831c66d
mov ecx, r11d
mov edx, r11d
add eax, r14d
ror ecx, 6
mov ebx, r13d
ror edx, 0xb
xor ebx, r12d
xor ecx, edx
and ebx, r11d
ror edx, 0xe
xor ebx, r13d
xor ecx, edx
add eax, ebx
add eax, ecx
add r10d, eax
mov r14d, eax
mov eax, r15d
mov ebx, r8d
mov ecx, r15d
mov edx, r15d
ror ecx, 2
xor eax, r8d
ror edx, 0xd
and ebx, r15d
xor ecx, edx
and eax, r9d
ror edx, 9
or eax, ebx
xor ecx, edx
add eax, ecx
add r14d, eax
mov eax, dword [rbp + 0x2c]
mov ebx, dword [rbp + 0x20]
mov ecx, eax
mov edx, ebx
shr eax, 3
shr ebx, 0xa
ror ecx, 7
ror edx, 0x11
xor eax, ecx
xor ebx, edx
ror ecx, 0xb
ror edx, 2
xor eax, ecx
xor ebx, edx
add eax, dword [rbp + 0x28]
add ebx, dword [rbp + 0xc]
add eax, ebx
mov dword [rbp + 0x28], eax
add eax, 0xb00327c8
mov ecx, r10d
mov edx, r10d
add eax, r13d
ror ecx, 6
mov ebx, r12d
ror edx, 0xb
xor ebx, r11d
xor ecx, edx
and ebx, r10d
ror edx, 0xe
xor ebx, r12d
xor ecx, edx
add eax, ebx
add eax, ecx
add r9d, eax
mov r13d, eax
mov eax, r14d
mov ebx, r15d
mov ecx, r14d
mov edx, r14d
ror ecx, 2
xor eax, r15d
ror edx, 0xd
and ebx, r14d
xor ecx, edx
and eax, r8d
ror edx, 9
or eax, ebx
xor ecx, edx
add eax, ecx
add r13d, eax
mov eax, dword [rbp + 0x30]
mov ebx, dword [rbp + 0x24]
mov ecx, eax
mov edx, ebx
shr eax, 3
shr ebx, 0xa
ror ecx, 7
ror edx, 0x11
xor eax, ecx
xor ebx, edx
ror ecx, 0xb
ror edx, 2
xor eax, ecx
xor ebx, edx
add eax, dword [rbp + 0x2c]
add ebx, dword [rbp + 0x10]
add eax, ebx
mov dword [rbp + 0x2c], eax
add eax, 0xbf597fc7
mov ecx, r9d
mov edx, r9d
add eax, r12d
ror ecx, 6
mov ebx, r11d
ror edx, 0xb
xor ebx, r10d
xor ecx, edx
and ebx, r9d
ror edx, 0xe
xor ebx, r11d
xor ecx, edx
add eax, ebx
add eax, ecx
add r8d, eax
mov r12d, eax
mov eax, r13d
mov ebx, r14d
mov ecx, r13d
mov edx, r13d
ror ecx, 2
xor eax, r14d
ror edx, 0xd
and ebx, r13d
xor ecx, edx
and eax, r15d
ror edx, 9
or eax, ebx
xor ecx, edx
add eax, ecx
add r12d, eax
mov eax, dword [rbp + 0x34]
mov ebx, dword [rbp + 0x28]
mov ecx, eax
mov edx, ebx
shr eax, 3
shr ebx, 0xa
ror ecx, 7
ror edx, 0x11
xor eax, ecx
xor ebx, edx
ror ecx, 0xb
ror edx, 2
xor eax, ecx
xor ebx, edx
add eax, dword [rbp + 0x30]
add ebx, dword [rbp + 0x14]
add eax, ebx
mov dword [rbp + 0x30], eax
add eax, 0xc6e00bf3
mov ecx, r8d
mov edx, r8d
add eax, r11d
ror ecx, 6
mov ebx, r10d
ror edx, 0xb
xor ebx, r9d
xor ecx, edx
and ebx, r8d
ror edx, 0xe
xor ebx, r10d
xor ecx, edx
add eax, ebx
add eax, ecx
add r15d, eax
mov r11d, eax
mov eax, r12d
mov ebx, r13d
mov ecx, r12d
mov edx, r12d
ror ecx, 2
xor eax, r13d
ror edx, 0xd
and ebx, r12d
xor ecx, edx
and eax, r14d
ror edx, 9
or eax, ebx
xor ecx, edx
add eax, ecx
add r11d, eax
mov eax, dword [rbp + 0x38]
mov ebx, dword [rbp + 0x2c]
mov ecx, eax
mov edx, ebx
shr eax, 3
shr ebx, 0xa
ror ecx, 7
ror edx, 0x11
xor eax, ecx
xor ebx, edx
ror ecx, 0xb
ror edx, 2
xor eax, ecx
xor ebx, edx
add eax, dword [rbp + 0x34]
add ebx, dword [rbp + 0x18]
add eax, ebx
mov dword [rbp + 0x34], eax
add eax, 0xd5a79147
mov ecx, r15d
mov edx, r15d
add eax, r10d
ror ecx, 6
mov ebx, r9d
ror edx, 0xb
xor ebx, r8d
xor ecx, edx
and ebx, r15d
ror edx, 0xe
xor ebx, r9d
xor ecx, edx
add eax, ebx
add eax, ecx
add r14d, eax
mov r10d, eax
mov eax, r11d
mov ebx, r12d
mov ecx, r11d
mov edx, r11d
ror ecx, 2
xor eax, r12d
ror edx, 0xd
and ebx, r11d
xor ecx, edx
and eax, r13d
ror edx, 9
or eax, ebx
xor ecx, edx
add eax, ecx
add r10d, eax
mov eax, dword [rbp + 0x3c]
mov ebx, dword [rbp + 0x30]
mov ecx, eax
mov edx, ebx
shr eax, 3
shr ebx, 0xa
ror ecx, 7
ror edx, 0x11
xor eax, ecx
xor ebx, edx
ror ecx, 0xb
ror edx, 2
xor eax, ecx
xor ebx, edx
add eax, dword [rbp + 0x38]
add ebx, dword [rbp + 0x1c]
add eax, ebx
mov dword [rbp + 0x38], eax
add eax, 0x6ca6351
mov ecx, r14d
mov edx, r14d
add eax, r9d
ror ecx, 6
mov ebx, r8d
ror edx, 0xb
xor ebx, r15d
xor ecx, edx
and ebx, r14d
ror edx, 0xe
xor ebx, r8d
xor ecx, edx
add eax, ebx
add eax, ecx
add r13d, eax
mov r9d, eax
mov eax, r10d
mov ebx, r11d
mov ecx, r10d
mov edx, r10d
ror ecx, 2
xor eax, r11d
ror edx, 0xd
and ebx, r10d
xor ecx, edx
and eax, r12d
ror edx, 9
or eax, ebx
xor ecx, edx
add eax, ecx
add r9d, eax
mov eax, dword [rbp]
mov ebx, dword [rbp + 0x34]
mov ecx, eax
mov edx, ebx
shr eax, 3
shr ebx, 0xa
ror ecx, 7
ror edx, 0x11
xor eax, ecx
xor ebx, edx
ror ecx, 0xb
ror edx, 2
xor eax, ecx
xor ebx, edx
add eax, dword [rbp + 0x3c]
add ebx, dword [rbp + 0x20]
add eax, ebx
mov dword [rbp + 0x3c], eax
add eax, 0x14292967
mov ecx, r13d
mov edx, r13d
add eax, r8d
ror ecx, 6
mov ebx, r15d
ror edx, 0xb
xor ebx, r14d
xor ecx, edx
and ebx, r13d
ror edx, 0xe
xor ebx, r15d
xor ecx, edx
add eax, ebx
add eax, ecx
add r12d, eax
mov r8d, eax
mov eax, r9d
mov ebx, r10d
mov ecx, r9d
mov edx, r9d
ror ecx, 2
xor eax, r10d
ror edx, 0xd
and ebx, r9d
xor ecx, edx
and eax, r11d
ror edx, 9
or eax, ebx
xor ecx, edx
add eax, ecx
add r8d, eax
mov eax, dword [rbp + 4]
mov ebx, dword [rbp + 0x38]
mov ecx, eax
mov edx, ebx
shr eax, 3
shr ebx, 0xa
ror ecx, 7
ror edx, 0x11
xor eax, ecx
xor ebx, edx
ror ecx, 0xb
ror edx, 2
xor eax, ecx
xor ebx, edx
add eax, dword [rbp]
add ebx, dword [rbp + 0x24]
add eax, ebx
mov dword [rbp], eax
add eax, 0x27b70a85
mov ecx, r12d
mov edx, r12d
add eax, r15d
ror ecx, 6
mov ebx, r14d
ror edx, 0xb
xor ebx, r13d
xor ecx, edx
and ebx, r12d
ror edx, 0xe
xor ebx, r14d
xor ecx, edx
add eax, ebx
add eax, ecx
add r11d, eax
mov r15d, eax
mov eax, r8d
mov ebx, r9d
mov ecx, r8d
mov edx, r8d
ror ecx, 2
xor eax, r9d
ror edx, 0xd
and ebx, r8d
xor ecx, edx
and eax, r10d
ror edx, 9
or eax, ebx
xor ecx, edx
add eax, ecx
add r15d, eax
mov eax, dword [rbp + 8]
mov ebx, dword [rbp + 0x3c]
mov ecx, eax
mov edx, ebx
shr eax, 3
shr ebx, 0xa
ror ecx, 7
ror edx, 0x11
xor eax, ecx
xor ebx, edx
ror ecx, 0xb
ror edx, 2
xor eax, ecx
xor ebx, edx
add eax, dword [rbp + 4]
add ebx, dword [rbp + 0x28]
add eax, ebx
mov dword [rbp + 4], eax
add eax, 0x2e1b2138
mov ecx, r11d
mov edx, r11d
add eax, r14d
ror ecx, 6
mov ebx, r13d
ror edx, 0xb
xor ebx, r12d
xor ecx, edx
and ebx, r11d
ror edx, 0xe
xor ebx, r13d
xor ecx, edx
add eax, ebx
add eax, ecx
add r10d, eax
mov r14d, eax
mov eax, r15d
mov ebx, r8d
mov ecx, r15d
mov edx, r15d
ror ecx, 2
xor eax, r8d
ror edx, 0xd
and ebx, r15d
xor ecx, edx
and eax, r9d
ror edx, 9
or eax, ebx
xor ecx, edx
add eax, ecx
add r14d, eax
mov eax, dword [rbp + 0xc]
mov ebx, dword [rbp]
mov ecx, eax
mov edx, ebx
shr eax, 3
shr ebx, 0xa
ror ecx, 7
ror edx, 0x11
xor eax, ecx
xor ebx, edx
ror ecx, 0xb
ror edx, 2
xor eax, ecx
xor ebx, edx
add eax, dword [rbp + 8]
add ebx, dword [rbp + 0x2c]
add eax, ebx
mov dword [rbp + 8], eax
add eax, 0x4d2c6dfc
mov ecx, r10d
mov edx, r10d
add eax, r13d
ror ecx, 6
mov ebx, r12d
ror edx, 0xb
xor ebx, r11d
xor ecx, edx
and ebx, r10d
ror edx, 0xe
xor ebx, r12d
xor ecx, edx
add eax, ebx
add eax, ecx
add r9d, eax
mov r13d, eax
mov eax, r14d
mov ebx, r15d
mov ecx, r14d
mov edx, r14d
ror ecx, 2
xor eax, r15d
ror edx, 0xd
and ebx, r14d
xor ecx, edx
and eax, r8d
ror edx, 9
or eax, ebx
xor ecx, edx
add eax, ecx
add r13d, eax
mov eax, dword [rbp + 0x10]
mov ebx, dword [rbp + 4]
mov ecx, eax
mov edx, ebx
shr eax, 3
shr ebx, 0xa
ror ecx, 7
ror edx, 0x11
xor eax, ecx
xor ebx, edx
ror ecx, 0xb
ror edx, 2
xor eax, ecx
xor ebx, edx
add eax, dword [rbp + 0xc]
add ebx, dword [rbp + 0x30]
add eax, ebx
mov dword [rbp + 0xc], eax
add eax, 0x53380d13
mov ecx, r9d
mov edx, r9d
add eax, r12d
ror ecx, 6
mov ebx, r11d
ror edx, 0xb
xor ebx, r10d
xor ecx, edx
and ebx, r9d
ror edx, 0xe
xor ebx, r11d
xor ecx, edx
add eax, ebx
add eax, ecx
add r8d, eax
mov r12d, eax
mov eax, r13d
mov ebx, r14d
mov ecx, r13d
mov edx, r13d
ror ecx, 2
xor eax, r14d
ror edx, 0xd
and ebx, r13d
xor ecx, edx
and eax, r15d
ror edx, 9
or eax, ebx
xor ecx, edx
add eax, ecx
add r12d, eax
mov eax, dword [rbp + 0x14]
mov ebx, dword [rbp + 8]
mov ecx, eax
mov edx, ebx
shr eax, 3
shr ebx, 0xa
ror ecx, 7
ror edx, 0x11
xor eax, ecx
xor ebx, edx
ror ecx, 0xb
ror edx, 2
xor eax, ecx
xor ebx, edx
add eax, dword [rbp + 0x10]
add ebx, dword [rbp + 0x34]
add eax, ebx
mov dword [rbp + 0x10], eax
add eax, 0x650a7354
mov ecx, r8d
mov edx, r8d
add eax, r11d
ror ecx, 6
mov ebx, r10d
ror edx, 0xb
xor ebx, r9d
xor ecx, edx
and ebx, r8d
ror edx, 0xe
xor ebx, r10d
xor ecx, edx
add eax, ebx
add eax, ecx
add r15d, eax
mov r11d, eax
mov eax, r12d
mov ebx, r13d
mov ecx, r12d
mov edx, r12d
ror ecx, 2
xor eax, r13d
ror edx, 0xd
and ebx, r12d
xor ecx, edx
and eax, r14d
ror edx, 9
or eax, ebx
xor ecx, edx
add eax, ecx
add r11d, eax
mov eax, dword [rbp + 0x18]
mov ebx, dword [rbp + 0xc]
mov ecx, eax
mov edx, ebx
shr eax, 3
shr ebx, 0xa
ror ecx, 7
ror edx, 0x11
xor eax, ecx
xor ebx, edx
ror ecx, 0xb
ror edx, 2
xor eax, ecx
xor ebx, edx
add eax, dword [rbp + 0x14]
add ebx, dword [rbp + 0x38]
add eax, ebx
mov dword [rbp + 0x14], eax
add eax, 0x766a0abb
mov ecx, r15d
mov edx, r15d
add eax, r10d
ror ecx, 6
mov ebx, r9d
ror edx, 0xb
xor ebx, r8d
xor ecx, edx
and ebx, r15d
ror edx, 0xe
xor ebx, r9d
xor ecx, edx
add eax, ebx
add eax, ecx
add r14d, eax
mov r10d, eax
mov eax, r11d
mov ebx, r12d
mov ecx, r11d
mov edx, r11d
ror ecx, 2
xor eax, r12d
ror edx, 0xd
and ebx, r11d
xor ecx, edx
and eax, r13d
ror edx, 9
or eax, ebx
xor ecx, edx
add eax, ecx
add r10d, eax
mov eax, dword [rbp + 0x1c]
mov ebx, dword [rbp + 0x10]
mov ecx, eax
mov edx, ebx
shr eax, 3
shr ebx, 0xa
ror ecx, 7
ror edx, 0x11
xor eax, ecx
xor ebx, edx
ror ecx, 0xb
ror edx, 2
xor eax, ecx
xor ebx, edx
add eax, dword [rbp + 0x18]
add ebx, dword [rbp + 0x3c]
add eax, ebx
mov dword [rbp + 0x18], eax
add eax, 0x81c2c92e
mov ecx, r14d
mov edx, r14d
add eax, r9d
ror ecx, 6
mov ebx, r8d
ror edx, 0xb
xor ebx, r15d
xor ecx, edx
and ebx, r14d
ror edx, 0xe
xor ebx, r8d
xor ecx, edx
add eax, ebx
add eax, ecx
add r13d, eax
mov r9d, eax
mov eax, r10d
mov ebx, r11d
mov ecx, r10d
mov edx, r10d
ror ecx, 2
xor eax, r11d
ror edx, 0xd
and ebx, r10d
xor ecx, edx
and eax, r12d
ror edx, 9
or eax, ebx
xor ecx, edx
add eax, ecx
add r9d, eax
mov eax, dword [rbp + 0x20]
mov ebx, dword [rbp + 0x14]
mov ecx, eax
mov edx, ebx
shr eax, 3
shr ebx, 0xa
ror ecx, 7
ror edx, 0x11
xor eax, ecx
xor ebx, edx
ror ecx, 0xb
ror edx, 2
xor eax, ecx
xor ebx, edx
add eax, dword [rbp + 0x1c]
add ebx, dword [rbp]
add eax, ebx
mov dword [rbp + 0x1c], eax
add eax, 0x92722c85
mov ecx, r13d
mov edx, r13d
add eax, r8d
ror ecx, 6
mov ebx, r15d
ror edx, 0xb
xor ebx, r14d
xor ecx, edx
and ebx, r13d
ror edx, 0xe
xor ebx, r15d
xor ecx, edx
add eax, ebx
add eax, ecx
add r12d, eax
mov r8d, eax
mov eax, r9d
mov ebx, r10d
mov ecx, r9d
mov edx, r9d
ror ecx, 2
xor eax, r10d
ror edx, 0xd
and ebx, r9d
xor ecx, edx
and eax, r11d
ror edx, 9
or eax, ebx
xor ecx, edx
add eax, ecx
add r8d, eax
mov eax, dword [rbp + 0x24]
mov ebx, dword [rbp + 0x18]
mov ecx, eax
mov edx, ebx
shr eax, 3
shr ebx, 0xa
ror ecx, 7
ror edx, 0x11
xor eax, ecx
xor ebx, edx
ror ecx, 0xb
ror edx, 2
xor eax, ecx
xor ebx, edx
add eax, dword [rbp + 0x20]
add ebx, dword [rbp + 4]
add eax, ebx
mov dword [rbp + 0x20], eax
add eax, 0xa2bfe8a1
mov ecx, r12d
mov edx, r12d
add eax, r15d
ror ecx, 6
mov ebx, r14d
ror edx, 0xb
xor ebx, r13d
xor ecx, edx
and ebx, r12d
ror edx, 0xe
xor ebx, r14d
xor ecx, edx
add eax, ebx
add eax, ecx
add r11d, eax
mov r15d, eax
mov eax, r8d
mov ebx, r9d
mov ecx, r8d
mov edx, r8d
ror ecx, 2
xor eax, r9d
ror edx, 0xd
and ebx, r8d
xor ecx, edx
and eax, r10d
ror edx, 9
or eax, ebx
xor ecx, edx
add eax, ecx
add r15d, eax
mov eax, dword [rbp + 0x28]
mov ebx, dword [rbp + 0x1c]
mov ecx, eax
mov edx, ebx
shr eax, 3
shr ebx, 0xa
ror ecx, 7
ror edx, 0x11
xor eax, ecx
xor ebx, edx
ror ecx, 0xb
ror edx, 2
xor eax, ecx
xor ebx, edx
add eax, dword [rbp + 0x24]
add ebx, dword [rbp + 8]
add eax, ebx
mov dword [rbp + 0x24], eax
add eax, 0xa81a664b
mov ecx, r11d
mov edx, r11d
add eax, r14d
ror ecx, 6
mov ebx, r13d
ror edx, 0xb
xor ebx, r12d
xor ecx, edx
and ebx, r11d
ror edx, 0xe
xor ebx, r13d
xor ecx, edx
add eax, ebx
add eax, ecx
add r10d, eax
mov r14d, eax
mov eax, r15d
mov ebx, r8d
mov ecx, r15d
mov edx, r15d
ror ecx, 2
xor eax, r8d
ror edx, 0xd
and ebx, r15d
xor ecx, edx
and eax, r9d
ror edx, 9
or eax, ebx
xor ecx, edx
add eax, ecx
add r14d, eax
mov eax, dword [rbp + 0x2c]
mov ebx, dword [rbp + 0x20]
mov ecx, eax
mov edx, ebx
shr eax, 3
shr ebx, 0xa
ror ecx, 7
ror edx, 0x11
xor eax, ecx
xor ebx, edx
ror ecx, 0xb
ror edx, 2
xor eax, ecx
xor ebx, edx
add eax, dword [rbp + 0x28]
add ebx, dword [rbp + 0xc]
add eax, ebx
mov dword [rbp + 0x28], eax
add eax, 0xc24b8b70
mov ecx, r10d
mov edx, r10d
add eax, r13d
ror ecx, 6
mov ebx, r12d
ror edx, 0xb
xor ebx, r11d
xor ecx, edx
and ebx, r10d
ror edx, 0xe
xor ebx, r12d
xor ecx, edx
add eax, ebx
add eax, ecx
add r9d, eax
mov r13d, eax
mov eax, r14d
mov ebx, r15d
mov ecx, r14d
mov edx, r14d
ror ecx, 2
xor eax, r15d
ror edx, 0xd
and ebx, r14d
xor ecx, edx
and eax, r8d
ror edx, 9
or eax, ebx
xor ecx, edx
add eax, ecx
add r13d, eax
mov eax, dword [rbp + 0x30]
mov ebx, dword [rbp + 0x24]
mov ecx, eax
mov edx, ebx
shr eax, 3
shr ebx, 0xa
ror ecx, 7
ror edx, 0x11
xor eax, ecx
xor ebx, edx
ror ecx, 0xb
ror edx, 2
xor eax, ecx
xor ebx, edx
add eax, dword [rbp + 0x2c]
add ebx, dword [rbp + 0x10]
add eax, ebx
mov dword [rbp + 0x2c], eax
add eax, 0xc76c51a3
mov ecx, r9d
mov edx, r9d
add eax, r12d
ror ecx, 6
mov ebx, r11d
ror edx, 0xb
xor ebx, r10d
xor ecx, edx
and ebx, r9d
ror edx, 0xe
xor ebx, r11d
xor ecx, edx
add eax, ebx
add eax, ecx
add r8d, eax
mov r12d, eax
mov eax, r13d
mov ebx, r14d
mov ecx, r13d
mov edx, r13d
ror ecx, 2
xor eax, r14d
ror edx, 0xd
and ebx, r13d
xor ecx, edx
and eax, r15d
ror edx, 9
or eax, ebx
xor ecx, edx
add eax, ecx
add r12d, eax
mov eax, dword [rbp + 0x34]
mov ebx, dword [rbp + 0x28]
mov ecx, eax
mov edx, ebx
shr eax, 3
shr ebx, 0xa
ror ecx, 7
ror edx, 0x11
xor eax, ecx
xor ebx, edx
ror ecx, 0xb
ror edx, 2
xor eax, ecx
xor ebx, edx
add eax, dword [rbp + 0x30]
add ebx, dword [rbp + 0x14]
add eax, ebx
mov dword [rbp + 0x30], eax
add eax, 0xd192e819
mov ecx, r8d
mov edx, r8d
add eax, r11d
ror ecx, 6
mov ebx, r10d
ror edx, 0xb
xor ebx, r9d
xor ecx, edx
and ebx, r8d
ror edx, 0xe
xor ebx, r10d
xor ecx, edx
add eax, ebx
add eax, ecx
add r15d, eax
mov r11d, eax
mov eax, r12d
mov ebx, r13d
mov ecx, r12d
mov edx, r12d
ror ecx, 2
xor eax, r13d
ror edx, 0xd
and ebx, r12d
xor ecx, edx
and eax, r14d
ror edx, 9
or eax, ebx
xor ecx, edx
add eax, ecx
add r11d, eax
mov eax, dword [rbp + 0x38]
mov ebx, dword [rbp + 0x2c]
mov ecx, eax
mov edx, ebx
shr eax, 3
shr ebx, 0xa
ror ecx, 7
ror edx, 0x11
xor eax, ecx
xor ebx, edx
ror ecx, 0xb
ror edx, 2
xor eax, ecx
xor ebx, edx
add eax, dword [rbp + 0x34]
add ebx, dword [rbp + 0x18]
add eax, ebx
mov dword [rbp + 0x34], eax
add eax, 0xd6990624
mov ecx, r15d
mov edx, r15d
add eax, r10d
ror ecx, 6
mov ebx, r9d
ror edx, 0xb
xor ebx, r8d
xor ecx, edx
and ebx, r15d
ror edx, 0xe
xor ebx, r9d
xor ecx, edx
add eax, ebx
add eax, ecx
add r14d, eax
mov r10d, eax
mov eax, r11d
mov ebx, r12d
mov ecx, r11d
mov edx, r11d
ror ecx, 2
xor eax, r12d
ror edx, 0xd
and ebx, r11d
xor ecx, edx
and eax, r13d
ror edx, 9
or eax, ebx
xor ecx, edx
add eax, ecx
add r10d, eax
mov eax, dword [rbp + 0x3c]
mov ebx, dword [rbp + 0x30]
mov ecx, eax
mov edx, ebx
shr eax, 3
shr ebx, 0xa
ror ecx, 7
ror edx, 0x11
xor eax, ecx
xor ebx, edx
ror ecx, 0xb
ror edx, 2
xor eax, ecx
xor ebx, edx
add eax, dword [rbp + 0x38]
add ebx, dword [rbp + 0x1c]
add eax, ebx
mov dword [rbp + 0x38], eax
add eax, 0xf40e3585
mov ecx, r14d
mov edx, r14d
add eax, r9d
ror ecx, 6
mov ebx, r8d
ror edx, 0xb
xor ebx, r15d
xor ecx, edx
and ebx, r14d
ror edx, 0xe
xor ebx, r8d
xor ecx, edx
add eax, ebx
add eax, ecx
add r13d, eax
mov r9d, eax
mov eax, r10d
mov ebx, r11d
mov ecx, r10d
mov edx, r10d
ror ecx, 2
xor eax, r11d
ror edx, 0xd
and ebx, r10d
xor ecx, edx
and eax, r12d
ror edx, 9
or eax, ebx
xor ecx, edx
add eax, ecx
add r9d, eax
mov eax, dword [rbp]
mov ebx, dword [rbp + 0x34]
mov ecx, eax
mov edx, ebx
shr eax, 3
shr ebx, 0xa
ror ecx, 7
ror edx, 0x11
xor eax, ecx
xor ebx, edx
ror ecx, 0xb
ror edx, 2
xor eax, ecx
xor ebx, edx
add eax, dword [rbp + 0x3c]
add ebx, dword [rbp + 0x20]
add eax, ebx
mov dword [rbp + 0x3c], eax
add eax, 0x106aa070
mov ecx, r13d
mov edx, r13d
add eax, r8d
ror ecx, 6
mov ebx, r15d
ror edx, 0xb
xor ebx, r14d
xor ecx, edx
and ebx, r13d
ror edx, 0xe
xor ebx, r15d
xor ecx, edx
add eax, ebx
add eax, ecx
add r12d, eax
mov r8d, eax
mov eax, r9d
mov ebx, r10d
mov ecx, r9d
mov edx, r9d
ror ecx, 2
xor eax, r10d
ror edx, 0xd
and ebx, r9d
xor ecx, edx
and eax, r11d
ror edx, 9
or eax, ebx
xor ecx, edx
add eax, ecx
add r8d, eax
mov eax, dword [rbp + 4]
mov ebx, dword [rbp + 0x38]
mov ecx, eax
mov edx, ebx
shr eax, 3
shr ebx, 0xa
ror ecx, 7
ror edx, 0x11
xor eax, ecx
xor ebx, edx
ror ecx, 0xb
ror edx, 2
xor eax, ecx
xor ebx, edx
add eax, dword [rbp]
add ebx, dword [rbp + 0x24]
add eax, ebx
mov dword [rbp], eax
add eax, 0x19a4c116
mov ecx, r12d
mov edx, r12d
add eax, r15d
ror ecx, 6
mov ebx, r14d
ror edx, 0xb
xor ebx, r13d
xor ecx, edx
and ebx, r12d
ror edx, 0xe
xor ebx, r14d
xor ecx, edx
add eax, ebx
add eax, ecx
add r11d, eax
mov r15d, eax
mov eax, r8d
mov ebx, r9d
mov ecx, r8d
mov edx, r8d
ror ecx, 2
xor eax, r9d
ror edx, 0xd
and ebx, r8d
xor ecx, edx
and eax, r10d
ror edx, 9
or eax, ebx
xor ecx, edx
add eax, ecx
add r15d, eax
mov eax, dword [rbp + 8]
mov ebx, dword [rbp + 0x3c]
mov ecx, eax
mov edx, ebx
shr eax, 3
shr ebx, 0xa
ror ecx, 7
ror edx, 0x11
xor eax, ecx
xor ebx, edx
ror ecx, 0xb
ror edx, 2
xor eax, ecx
xor ebx, edx
add eax, dword [rbp + 4]
add ebx, dword [rbp + 0x28]
add eax, ebx
mov dword [rbp + 4], eax
add eax, 0x1e376c08
mov ecx, r11d
mov edx, r11d
add eax, r14d
ror ecx, 6
mov ebx, r13d
ror edx, 0xb
xor ebx, r12d
xor ecx, edx
and ebx, r11d
ror edx, 0xe
xor ebx, r13d
xor ecx, edx
add eax, ebx
add eax, ecx
add r10d, eax
mov r14d, eax
mov eax, r15d
mov ebx, r8d
mov ecx, r15d
mov edx, r15d
ror ecx, 2
xor eax, r8d
ror edx, 0xd
and ebx, r15d
xor ecx, edx
and eax, r9d
ror edx, 9
or eax, ebx
xor ecx, edx
add eax, ecx
add r14d, eax
mov eax, dword [rbp + 0xc]
mov ebx, dword [rbp]
mov ecx, eax
mov edx, ebx
shr eax, 3
shr ebx, 0xa
ror ecx, 7
ror edx, 0x11
xor eax, ecx
xor ebx, edx
ror ecx, 0xb
ror edx, 2
xor eax, ecx
xor ebx, edx
add eax, dword [rbp + 8]
add ebx, dword [rbp + 0x2c]
add eax, ebx
mov dword [rbp + 8], eax
add eax, 0x2748774c
mov ecx, r10d
mov edx, r10d
add eax, r13d
ror ecx, 6
mov ebx, r12d
ror edx, 0xb
xor ebx, r11d
xor ecx, edx
and ebx, r10d
ror edx, 0xe
xor ebx, r12d
xor ecx, edx
add eax, ebx
add eax, ecx
add r9d, eax
mov r13d, eax
mov eax, r14d
mov ebx, r15d
mov ecx, r14d
mov edx, r14d
ror ecx, 2
xor eax, r15d
ror edx, 0xd
and ebx, r14d
xor ecx, edx
and eax, r8d
ror edx, 9
or eax, ebx
xor ecx, edx
add eax, ecx
add r13d, eax
mov eax, dword [rbp + 0x10]
mov ebx, dword [rbp + 4]
mov ecx, eax
mov edx, ebx
shr eax, 3
shr ebx, 0xa
ror ecx, 7
ror edx, 0x11
xor eax, ecx
xor ebx, edx
ror ecx, 0xb
ror edx, 2
xor eax, ecx
xor ebx, edx
add eax, dword [rbp + 0xc]
add ebx, dword [rbp + 0x30]
add eax, ebx
mov dword [rbp + 0xc], eax
add eax, 0x34b0bcb5
mov ecx, r9d
mov edx, r9d
add eax, r12d
ror ecx, 6
mov ebx, r11d
ror edx, 0xb
xor ebx, r10d
xor ecx, edx
and ebx, r9d
ror edx, 0xe
xor ebx, r11d
xor ecx, edx
add eax, ebx
add eax, ecx
add r8d, eax
mov r12d, eax
mov eax, r13d
mov ebx, r14d
mov ecx, r13d
mov edx, r13d
ror ecx, 2
xor eax, r14d
ror edx, 0xd
and ebx, r13d
xor ecx, edx
and eax, r15d
ror edx, 9
or eax, ebx
xor ecx, edx
add eax, ecx
add r12d, eax
mov eax, dword [rbp + 0x14]
mov ebx, dword [rbp + 8]
mov ecx, eax
mov edx, ebx
shr eax, 3
shr ebx, 0xa
ror ecx, 7
ror edx, 0x11
xor eax, ecx
xor ebx, edx
ror ecx, 0xb
ror edx, 2
xor eax, ecx
xor ebx, edx
add eax, dword [rbp + 0x10]
add ebx, dword [rbp + 0x34]
add eax, ebx
mov dword [rbp + 0x10], eax
add eax, 0x391c0cb3
mov ecx, r8d
mov edx, r8d
add eax, r11d
ror ecx, 6
mov ebx, r10d
ror edx, 0xb
xor ebx, r9d
xor ecx, edx
and ebx, r8d
ror edx, 0xe
xor ebx, r10d
xor ecx, edx
add eax, ebx
add eax, ecx
add r15d, eax
mov r11d, eax
mov eax, r12d
mov ebx, r13d
mov ecx, r12d
mov edx, r12d
ror ecx, 2
xor eax, r13d
ror edx, 0xd
and ebx, r12d
xor ecx, edx
and eax, r14d
ror edx, 9
or eax, ebx
xor ecx, edx
add eax, ecx
add r11d, eax
mov eax, dword [rbp + 0x18]
mov ebx, dword [rbp + 0xc]
mov ecx, eax
mov edx, ebx
shr eax, 3
shr ebx, 0xa
ror ecx, 7
ror edx, 0x11
xor eax, ecx
xor ebx, edx
ror ecx, 0xb
ror edx, 2
xor eax, ecx
xor ebx, edx
add eax, dword [rbp + 0x14]
add ebx, dword [rbp + 0x38]
add eax, ebx
mov dword [rbp + 0x14], eax
add eax, 0x4ed8aa4a
mov ecx, r15d
mov edx, r15d
add eax, r10d
ror ecx, 6
mov ebx, r9d
ror edx, 0xb
xor ebx, r8d
xor ecx, edx
and ebx, r15d
ror edx, 0xe
xor ebx, r9d
xor ecx, edx
add eax, ebx
add eax, ecx
add r14d, eax
mov r10d, eax
mov eax, r11d
mov ebx, r12d
mov ecx, r11d
mov edx, r11d
ror ecx, 2
xor eax, r12d
ror edx, 0xd
and ebx, r11d
xor ecx, edx
and eax, r13d
ror edx, 9
or eax, ebx
xor ecx, edx
add eax, ecx
add r10d, eax
mov eax, dword [rbp + 0x1c]
mov ebx, dword [rbp + 0x10]
mov ecx, eax
mov edx, ebx
shr eax, 3
shr ebx, 0xa
ror ecx, 7
ror edx, 0x11
xor eax, ecx
xor ebx, edx
ror ecx, 0xb
ror edx, 2
xor eax, ecx
xor ebx, edx
add eax, dword [rbp + 0x18]
add ebx, dword [rbp + 0x3c]
add eax, ebx
mov dword [rbp + 0x18], eax
add eax, 0x5b9cca4f
mov ecx, r14d
mov edx, r14d
add eax, r9d
ror ecx, 6
mov ebx, r8d
ror edx, 0xb
xor ebx, r15d
xor ecx, edx
and ebx, r14d
ror edx, 0xe
xor ebx, r8d
xor ecx, edx
add eax, ebx
add eax, ecx
add r13d, eax
mov r9d, eax
mov eax, r10d
mov ebx, r11d
mov ecx, r10d
mov edx, r10d
ror ecx, 2
xor eax, r11d
ror edx, 0xd
and ebx, r10d
xor ecx, edx
and eax, r12d
ror edx, 9
or eax, ebx
xor ecx, edx
add eax, ecx
add r9d, eax
mov eax, dword [rbp + 0x20]
mov ebx, dword [rbp + 0x14]
mov ecx, eax
mov edx, ebx
shr eax, 3
shr ebx, 0xa
ror ecx, 7
ror edx, 0x11
xor eax, ecx
xor ebx, edx
ror ecx, 0xb
ror edx, 2
xor eax, ecx
xor ebx, edx
add eax, dword [rbp + 0x1c]
add ebx, dword [rbp]
add eax, ebx
mov dword [rbp + 0x1c], eax
add eax, 0x682e6ff3
mov ecx, r13d
mov edx, r13d
add eax, r8d
ror ecx, 6
mov ebx, r15d
ror edx, 0xb
xor ebx, r14d
xor ecx, edx
and ebx, r13d
ror edx, 0xe
xor ebx, r15d
xor ecx, edx
add eax, ebx
add eax, ecx
add r12d, eax
mov r8d, eax
mov eax, r9d
mov ebx, r10d
mov ecx, r9d
mov edx, r9d
ror ecx, 2
xor eax, r10d
ror edx, 0xd
and ebx, r9d
xor ecx, edx
and eax, r11d
ror edx, 9
or eax, ebx
xor ecx, edx
add eax, ecx
add r8d, eax
mov eax, dword [rbp + 0x24]
mov ebx, dword [rbp + 0x18]
mov ecx, eax
mov edx, ebx
shr eax, 3
shr ebx, 0xa
ror ecx, 7
ror edx, 0x11
xor eax, ecx
xor ebx, edx
ror ecx, 0xb
ror edx, 2
xor eax, ecx
xor ebx, edx
add eax, dword [rbp + 0x20]
add ebx, dword [rbp + 4]
add eax, ebx
mov dword [rbp + 0x20], eax
add eax, 0x748f82ee
mov ecx, r12d
mov edx, r12d
add eax, r15d
ror ecx, 6
mov ebx, r14d
ror edx, 0xb
xor ebx, r13d
xor ecx, edx
and ebx, r12d
ror edx, 0xe
xor ebx, r14d
xor ecx, edx
add eax, ebx
add eax, ecx
add r11d, eax
mov r15d, eax
mov eax, r8d
mov ebx, r9d
mov ecx, r8d
mov edx, r8d
ror ecx, 2
xor eax, r9d
ror edx, 0xd
and ebx, r8d
xor ecx, edx
and eax, r10d
ror edx, 9
or eax, ebx
xor ecx, edx
add eax, ecx
add r15d, eax
mov eax, dword [rbp + 0x28]
mov ebx, dword [rbp + 0x1c]
mov ecx, eax
mov edx, ebx
shr eax, 3
shr ebx, 0xa
ror ecx, 7
ror edx, 0x11
xor eax, ecx
xor ebx, edx
ror ecx, 0xb
ror edx, 2
xor eax, ecx
xor ebx, edx
add eax, dword [rbp + 0x24]
add ebx, dword [rbp + 8]
add eax, ebx
mov dword [rbp + 0x24], eax
add eax, 0x78a5636f
mov ecx, r11d
mov edx, r11d
add eax, r14d
ror ecx, 6
mov ebx, r13d
ror edx, 0xb
xor ebx, r12d
xor ecx, edx
and ebx, r11d
ror edx, 0xe
xor ebx, r13d
xor ecx, edx
add eax, ebx
add eax, ecx
add r10d, eax
mov r14d, eax
mov eax, r15d
mov ebx, r8d
mov ecx, r15d
mov edx, r15d
ror ecx, 2
xor eax, r8d
ror edx, 0xd
and ebx, r15d
xor ecx, edx
and eax, r9d
ror edx, 9
or eax, ebx
xor ecx, edx
add eax, ecx
add r14d, eax
mov eax, dword [rbp + 0x2c]
mov ebx, dword [rbp + 0x20]
mov ecx, eax
mov edx, ebx
shr eax, 3
shr ebx, 0xa
ror ecx, 7
ror edx, 0x11
xor eax, ecx
xor ebx, edx
ror ecx, 0xb
ror edx, 2
xor eax, ecx
xor ebx, edx
add eax, dword [rbp + 0x28]
add ebx, dword [rbp + 0xc]
add eax, ebx
mov dword [rbp + 0x28], eax
add eax, 0x84c87814
mov ecx, r10d
mov edx, r10d
add eax, r13d
ror ecx, 6
mov ebx, r12d
ror edx, 0xb
xor ebx, r11d
xor ecx, edx
and ebx, r10d
ror edx, 0xe
xor ebx, r12d
xor ecx, edx
add eax, ebx
add eax, ecx
add r9d, eax
mov r13d, eax
mov eax, r14d
mov ebx, r15d
mov ecx, r14d
mov edx, r14d
ror ecx, 2
xor eax, r15d
ror edx, 0xd
and ebx, r14d
xor ecx, edx
and eax, r8d
ror edx, 9
or eax, ebx
xor ecx, edx
add eax, ecx
add r13d, eax
mov eax, dword [rbp + 0x30]
mov ebx, dword [rbp + 0x24]
mov ecx, eax
mov edx, ebx
shr eax, 3
shr ebx, 0xa
ror ecx, 7
ror edx, 0x11
xor eax, ecx
xor ebx, edx
ror ecx, 0xb
ror edx, 2
xor eax, ecx
xor ebx, edx
add eax, dword [rbp + 0x2c]
add ebx, dword [rbp + 0x10]
add eax, ebx
mov dword [rbp + 0x2c], eax
add eax, 0x8cc70208
mov ecx, r9d
mov edx, r9d
add eax, r12d
ror ecx, 6
mov ebx, r11d
ror edx, 0xb
xor ebx, r10d
xor ecx, edx
and ebx, r9d
ror edx, 0xe
xor ebx, r11d
xor ecx, edx
add eax, ebx
add eax, ecx
add r8d, eax
mov r12d, eax
mov eax, r13d
mov ebx, r14d
mov ecx, r13d
mov edx, r13d
ror ecx, 2
xor eax, r14d
ror edx, 0xd
and ebx, r13d
xor ecx, edx
and eax, r15d
ror edx, 9
or eax, ebx
xor ecx, edx
add eax, ecx
add r12d, eax
mov eax, dword [rbp + 0x34]
mov ebx, dword [rbp + 0x28]
mov ecx, eax
mov edx, ebx
shr eax, 3
shr ebx, 0xa
ror ecx, 7
ror edx, 0x11
xor eax, ecx
xor ebx, edx
ror ecx, 0xb
ror edx, 2
xor eax, ecx
xor ebx, edx
add eax, dword [rbp + 0x30]
add ebx, dword [rbp + 0x14]
add eax, ebx
mov dword [rbp + 0x30], eax
add eax, 0x90befffa
mov ecx, r8d
mov edx, r8d
add eax, r11d
ror ecx, 6
mov ebx, r10d
ror edx, 0xb
xor ebx, r9d
xor ecx, edx
and ebx, r8d
ror edx, 0xe
xor ebx, r10d
xor ecx, edx
add eax, ebx
add eax, ecx
add r15d, eax
mov r11d, eax
mov eax, r12d
mov ebx, r13d
mov ecx, r12d
mov edx, r12d
ror ecx, 2
xor eax, r13d
ror edx, 0xd
and ebx, r12d
xor ecx, edx
and eax, r14d
ror edx, 9
or eax, ebx
xor ecx, edx
add eax, ecx
add r11d, eax
mov eax, dword [rbp + 0x38]
mov ebx, dword [rbp + 0x2c]
mov ecx, eax
mov edx, ebx
shr eax, 3
shr ebx, 0xa
ror ecx, 7
ror edx, 0x11
xor eax, ecx
xor ebx, edx
ror ecx, 0xb
ror edx, 2
xor eax, ecx
xor ebx, edx
add eax, dword [rbp + 0x34]
add ebx, dword [rbp + 0x18]
add eax, ebx
mov dword [rbp + 0x34], eax
add eax, 0xa4506ceb
mov ecx, r15d
mov edx, r15d
add eax, r10d
ror ecx, 6
mov ebx, r9d
ror edx, 0xb
xor ebx, r8d
xor ecx, edx
and ebx, r15d
ror edx, 0xe
xor ebx, r9d
xor ecx, edx
add eax, ebx
add eax, ecx
add r14d, eax
mov r10d, eax
mov eax, r11d
mov ebx, r12d
mov ecx, r11d
mov edx, r11d
ror ecx, 2
xor eax, r12d
ror edx, 0xd
and ebx, r11d
xor ecx, edx
and eax, r13d
ror edx, 9
or eax, ebx
xor ecx, edx
add eax, ecx
add r10d, eax
mov eax, dword [rbp + 0x3c]
mov ebx, dword [rbp + 0x30]
mov ecx, eax
mov edx, ebx
shr eax, 3
shr ebx, 0xa
ror ecx, 7
ror edx, 0x11
xor eax, ecx
xor ebx, edx
ror ecx, 0xb
ror edx, 2
xor eax, ecx
xor ebx, edx
add eax, dword [rbp + 0x38]
add ebx, dword [rbp + 0x1c]
add eax, ebx
mov dword [rbp + 0x38], eax
add eax, 0xbef9a3f7
mov ecx, r14d
mov edx, r14d
add eax, r9d
ror ecx, 6
mov ebx, r8d
ror edx, 0xb
xor ebx, r15d
xor ecx, edx
and ebx, r14d
ror edx, 0xe
xor ebx, r8d
xor ecx, edx
add eax, ebx
add eax, ecx
add r13d, eax
mov r9d, eax
mov eax, r10d
mov ebx, r11d
mov ecx, r10d
mov edx, r10d
ror ecx, 2
xor eax, r11d
ror edx, 0xd
and ebx, r10d
xor ecx, edx
and eax, r12d
ror edx, 9
or eax, ebx
xor ecx, edx
add eax, ecx
add r9d, eax
mov eax, dword [rbp]
mov ebx, dword [rbp + 0x34]
mov ecx, eax
mov edx, ebx
shr eax, 3
shr ebx, 0xa
ror ecx, 7
ror edx, 0x11
xor eax, ecx
xor ebx, edx
ror ecx, 0xb
ror edx, 2
xor eax, ecx
xor ebx, edx
add eax, dword [rbp + 0x3c]
add ebx, dword [rbp + 0x20]
add eax, ebx
mov dword [rbp + 0x3c], eax
add eax, 0xc67178f2
mov ecx, r13d
mov edx, r13d
add eax, r8d
ror ecx, 6
mov ebx, r15d
ror edx, 0xb
xor ebx, r14d
xor ecx, edx
and ebx, r13d
ror edx, 0xe
xor ebx, r15d
xor ecx, edx
add eax, ebx
add eax, ecx
add r12d, eax
mov r8d, eax
mov eax, r9d
mov ebx, r10d
mov ecx, r9d
mov edx, r9d
ror ecx, 2
xor eax, r10d
ror edx, 0xd
and ebx, r9d
xor ecx, edx
and eax, r11d
ror edx, 9
or eax, ebx
xor ecx, edx
add eax, ecx
add r8d, eax
add dword [rbp - 0x28], r8d
add dword [rbp - 0x24], r9d
add dword [rbp - 0x20], r10d
add dword [rbp - 0x1c], r11d
add dword [rbp - 0x18], r12d
add dword [rbp - 0x14], r13d
add dword [rbp - 0x10], r14d
add dword [rbp - 0xc], r15d
pop r15
pop r14
pop r13
pop r12
pop rbx
pop rbp
ret