Function at 0x1800649e0
Capabilities:
Hash data using sha512

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0xa0
mov r14, qword [rcx]
mov r11, rcx
mov r10, qword [rcx + 8]
mov r15, rdx
mov rbp, qword [rcx + 0x20]
mov r9, qword [rcx + 0x10]
mov rax, rbp
mov rbx, qword [rcx + 0x30]
mov rsi, qword [rcx + 0x28]
mov r12, qword [rdx]
mov rdx, rbp
mov r8, qword [r11 + 0x18]
mov r13, qword [r15 + 8]
ror rax, 0x12
mov qword [rsp + 0x98], rcx
mov rcx, rbx
xor rcx, rsi
rol rdx, 0x17
xor rdx, rax
and rcx, rbp
xor rcx, rbx
mov rax, rbp
ror rax, 0xe
xor rax, rdx
movabs rdx, 0x428a2f98d728ae22
bswap r12
add rax, r12
add rcx, rax
mov rax, r14
add rdx, rcx
ror rax, 0x1c
add rdx, qword [r11 + 0x38]
mov rcx, r14
rol rcx, 0x1e
add r8, rdx
xor rcx, rax
mov r11, r9
or r11, r10
mov rax, r14
rol rax, 0x19
and r11, r14
xor rcx, rax
mov rax, r9
and rax, r10
or r11, rax
bswap r13
lea rax, [rdx + rcx]
mov rdx, r8
add r11, rax
rol rdx, 0x17
mov rax, r8
mov rcx, rsi
ror rax, 0x12
xor rcx, rbp
xor rdx, rax
and rcx, r8
xor rcx, rsi
mov rax, r8
ror rax, 0xe
xor rax, rdx
movabs rdx, 0x7137449123ef65cd
add rax, r13
add rcx, rax
mov rax, r11
ror rax, 0x1c
add rdx, rcx
add rdx, rbx
mov rcx, r11
rol rcx, 0x1e
mov rbx, r10
xor rcx, rax
or rbx, r14
mov rax, r11
add r9, rdx
rol rax, 0x19
and rbx, r11
xor rcx, rax
mov rax, r10
and rax, r14
or rbx, rax
lea rax, [rdx + rcx]
mov rdi, qword [r15 + 0x10]
add rbx, rax
bswap rdi
mov qword [rsp + 0x90], rdi
mov rcx, rbp
xor rcx, r8
mov rax, r9
ror rax, 0x12
and rcx, r9
xor rcx, rbp
mov rdx, r9
rol rdx, 0x17
xor rdx, rax
mov rax, r9
ror rax, 0xe
xor rax, rdx
movabs rdx, 0xb5c0fbcfec4d3b2f
add rax, rdi
mov rdi, r11
add rcx, rax
or rdi, r14
add rdx, rcx
and rdi, rbx
add rdx, rsi
mov rcx, rbx
mov rsi, qword [r15 + 0x18]
add r10, rdx
rol rcx, 0x1e
mov rax, rbx
ror rax, 0x1c
xor rcx, rax
mov rax, rbx
rol rax, 0x19
xor rcx, rax
mov rax, r11
and rax, r14
or rdi, rax
bswap rsi
lea rax, [rdx + rcx]
mov qword [rsp + 0x70], rsi
add rdi, rax
mov rdx, r10
rol rdx, 0x17
mov rax, r10
ror rax, 0x12
mov rcx, r8
xor rdx, rax
xor rcx, r9
and rcx, r10
mov rax, r10
ror rax, 0xe
xor rcx, r8
xor rax, rdx
movabs rdx, 0xe9b5dba58189dbbc
add rax, rsi
mov rsi, r11
add rcx, rax
or rsi, rbx
add rdx, rcx
and rsi, rdi
add rdx, rbp
mov rcx, rdi
mov rbp, qword [r15 + 0x20]
add r14, rdx
rol rcx, 0x1e
mov rax, rdi
ror rax, 0x1c
xor rcx, rax
mov rax, rdi
rol rax, 0x19
xor rcx, rax
mov rax, r11
and rax, rbx
or rsi, rax
bswap rbp
lea rax, [rdx + rcx]
mov qword [rsp + 0x58], rbp
add rsi, rax
mov rdx, r14
rol rdx, 0x17
mov rax, r14
ror rax, 0x12
mov rcx, r9
xor rdx, rax
xor rcx, r10
and rcx, r14
mov rax, r14
ror rax, 0xe
xor rcx, r9
xor rax, rdx
movabs rdx, 0x3956c25bf348b538
add rax, r8
mov r8, rbx
add rcx, rax
or r8, rdi
add rdx, rcx
and r8, rsi
add rdx, rbp
mov rcx, rsi
mov rbp, qword [r15 + 0x28]
add r11, rdx
rol rcx, 0x1e
mov rax, rsi
ror rax, 0x1c
xor rcx, rax
mov rax, rsi
rol rax, 0x19
xor rcx, rax
mov rax, rbx
and rax, rdi
or r8, rax
bswap rbp
lea rax, [rdx + rcx]
mov qword [rsp + 0x30], rbp
add r8, rax
mov rdx, r11
rol rdx, 0x17
mov rax, r11
ror rax, 0x12
mov rcx, r10
xor rdx, rax
xor rcx, r14
and rcx, r11
mov rax, r11
ror rax, 0xe
xor rcx, r10
xor rax, rdx
movabs rdx, 0x59f111f1b605d019
add rax, rbp
mov rbp, qword [r15 + 0x30]
add rcx, rax
mov rax, r8
ror rax, 0x1c
add rdx, rcx
add rdx, r9
mov rcx, r8
add rbx, rdx
rol rcx, 0x1e
xor rcx, rax
mov r9, rdi
or r9, rsi
mov rax, r8
rol rax, 0x19
and r9, r8
xor rcx, rax
mov rax, rdi
and rax, rsi
or r9, rax
bswap rbp
lea rax, [rdx + rcx]
mov qword [rsp], rbp
add r9, rax
mov rdx, rbx
rol rdx, 0x17
mov rax, rbx
ror rax, 0x12
mov rcx, r11
xor rdx, rax
mov rax, rbx
ror rax, 0xe
xor rax, rdx
xor rcx, r14
add rax, rbp
and rcx, rbx
mov rbp, qword [r15 + 0x38]
xor rcx, r14
add rcx, rax
movabs rdx, 0x923f82a4af194f9b
add rdx, rcx
mov rax, r9
ror rax, 0x1c
add rdx, r10
add rdi, rdx
mov r10, rsi
bswap rbp
mov qword [rsp + 0x10], rbp
or r10, r8
and r10, r9
mov rcx, r9
rol rcx, 0x1e
xor rcx, rax
mov rax, r9
rol rax, 0x19
xor rcx, rax
mov rax, rsi
and rax, r8
or r10, rax
lea rax, [rdx + rcx]
mov rdx, rdi
add r10, rax
rol rdx, 0x17
mov rax, rdi
mov rcx, r11
ror rax, 0x12
xor rcx, rbx
xor rdx, rax
and rcx, rdi
xor rcx, r11
mov rax, rdi
ror rax, 0xe
xor rax, rdx
movabs rdx, 0xab1c5ed5da6d8118
add rax, r14
mov r14, qword [r15 + 0x40]
add rcx, rax
mov rax, r10
add rdx, rcx
ror rax, 0x1c
add rdx, rbp
mov rcx, r10
add rsi, rdx
rol rcx, 0x1e
xor rcx, rax
mov rbp, r8
or rbp, r9
mov rax, r10
rol rax, 0x19
and rbp, r10
xor rcx, rax
mov rax, r8
and rax, r9
or rbp, rax
bswap r14
lea rax, [rdx + rcx]
mov qword [rsp + 0x18], r14
add rbp, rax
mov rdx, rsi
rol rdx, 0x17
mov rax, rsi
ror rax, 0x12
mov rcx, rbx
xor rdx, rax
xor rcx, rdi
and rcx, rsi
mov rax, rsi
ror rax, 0xe
xor rcx, rbx
xor rax, rdx
movabs rdx, 0xd807aa98a3030242
add rax, r11
add rcx, rax
add rdx, rcx
add rdx, r14
mov r14, qword [r15 + 0x48]
add r8, rdx
bswap r14
mov r11, r9
mov qword [rsp + 0x88], r14
or r11, r10
mov rcx, rbp
rol rcx, 0x1e
and r11, rbp
mov rax, rbp
ror rax, 0x1c
xor rcx, rax
mov rax, rbp
rol rax, 0x19
xor rcx, rax
mov rax, r9
and rax, r10
or r11, rax
lea rax, [rdx + rcx]
mov rdx, r8
add r11, rax
rol rdx, 0x17
mov rax, r8
mov rcx, rdi
ror rax, 0x12
xor rcx, rsi
xor rdx, rax
and rcx, r8
xor rcx, rdi
mov rax, r8
ror rax, 0xe
xor rax, rdx
movabs rdx, 0x12835b0145706fbe
add rax, rbx
mov rbx, r10
add rcx, rax
or rbx, rbp
add rdx, rcx
and rbx, r11
add rdx, r14
mov rcx, r11
mov r14, qword [r15 + 0x50]
add r9, rdx
rol rcx, 0x1e
mov rax, r11
ror rax, 0x1c
xor rcx, rax
mov rax, r11
rol rax, 0x19
xor rcx, rax
mov rax, r10
and rax, rbp
or rbx, rax
bswap r14
lea rax, [rdx + rcx]
mov qword [rsp + 0x48], r14
add rbx, rax
mov rdx, r9
rol rdx, 0x17
mov rax, r9
ror rax, 0x12
mov rcx, rsi
xor rdx, rax
xor rcx, r8
and rcx, r9
mov rax, r9
ror rax, 0xe
xor rcx, rsi
xor rax, rdx
movabs rdx, 0x243185be4ee4b28c
add rax, rdi
add rcx, rax
mov rax, rbx
add rdx, rcx
ror rax, 0x1c
add rdx, r14
mov rcx, rbx
add r10, rdx
rol rcx, 0x1e
xor rcx, rax
mov rax, rbx
mov r14, qword [r15 + 0x58]
mov rdi, r11
rol rax, 0x19
or rdi, rbp
xor rcx, rax
and rdi, rbx
bswap r14
mov rax, r11
mov qword [rsp + 0x80], r14
and rax, rbp
or rdi, rax
lea rax, [rdx + rcx]
add rdi, rax
mov rcx, r8
xor rcx, r9
mov rax, r10
ror rax, 0x12
and rcx, r10
xor rcx, r8
mov rdx, r10
rol rdx, 0x17
xor rdx, rax
mov rax, r10
ror rax, 0xe
xor rax, rdx
movabs rdx, 0x550c7dc3d5ffb4e2
add rax, rsi
mov rsi, r11
add rcx, rax
or rsi, rbx
add rdx, rcx
and rsi, rdi
add rdx, r14
mov rcx, rdi
mov r14, qword [r15 + 0x60]
add rbp, rdx
rol rcx, 0x1e
mov rax, rdi
ror rax, 0x1c
xor rcx, rax
mov rax, rdi
rol rax, 0x19
xor rcx, rax
mov rax, r11
and rax, rbx
or rsi, rax
bswap r14
lea rax, [rdx + rcx]
mov qword [rsp + 0x78], r14
add rsi, rax
mov rdx, rbp
rol rdx, 0x17
mov rax, rbp
ror rax, 0x12
mov rcx, r9
xor rdx, rax
xor rcx, r10
and rcx, rbp
mov rax, rbp
ror rax, 0xe
xor rcx, r9
xor rax, rdx
movabs rdx, 0x72be5d74f27b896f
add rax, r8
mov r8, rbx
add rcx, rax
or r8, rdi
add rdx, rcx
mov rax, rsi
ror rax, 0x1c
add rdx, r14
mov rcx, rsi
add r11, rdx
rol rcx, 0x1e
and r8, rsi
xor rcx, rax
mov rax, rsi
rol rax, 0x19
xor rcx, rax
mov rax, rbx
and rax, rdi
mov r14, qword [r15 + 0x68]
or r8, rax
lea rax, [rdx + rcx]
mov rdx, r11
add r8, rax
rol rdx, 0x17
mov rcx, r10
mov rax, r11
ror rax, 0x12
xor rcx, rbp
xor rdx, rax
and rcx, r11
xor rcx, r10
mov rax, r11
ror rax, 0xe
xor rax, rdx
movabs rdx, 0x80deb1fe3b1696b1
add rax, r9
mov r9, rdi
add rcx, rax
or r9, rsi
add rdx, rcx
and r9, r8
bswap r14
add rdx, r14
mov qword [rsp + 0x40], r14
mov r14, qword [r15 + 0x70]
add rbx, rdx
mov r15, qword [r15 + 0x78]
mov rcx, r8
rol rcx, 0x1e
mov rax, r8
ror rax, 0x1c
xor rcx, rax
mov rax, r8
rol rax, 0x19
xor rcx, rax
mov rax, rdi
and rax, rsi
or r9, rax
bswap r14
lea rax, [rdx + rcx]
mov qword [rsp + 0x38], r14
add r9, rax
mov rdx, rbx
rol rdx, 0x17
mov rax, rbx
ror rax, 0x12
mov rcx, r11
xor rdx, rax
xor rcx, rbp
and rcx, rbx
mov rax, rbx
ror rax, 0xe
xor rcx, rbp
xor rax, rdx
movabs rdx, 0x9bdc06a725c71235
add rax, r14
add rcx, rax
mov rax, r9
add rdx, rcx
ror rax, 0x1c
add rdx, r10
mov rcx, r9
rol rcx, 0x1e
add rdi, rdx
xor rcx, rax
mov r10, rsi
or r10, r8
mov rax, r9
rol rax, 0x19
and r10, r9
xor rcx, rax
mov rax, rsi
and rax, r8
or r10, rax
bswap r15
lea rax, [rdx + rcx]
mov qword [rsp + 0x50], r15
add r10, rax
mov rdx, rdi
rol rdx, 0x17
mov rcx, r11
xor rcx, rbx
mov r14, r8
and rcx, rdi
or r14, r9
xor rcx, r11
and r14, r10
mov rax, rdi
ror rax, 0x12
xor rdx, rax
mov rax, rdi
ror rax, 0xe
xor rax, rdx
movabs rdx, 0xc19bf174cf692694
add rax, r15
add rcx, rax
mov rax, r10
ror rax, 0x1c
add rdx, rcx
add rdx, rbp
mov rcx, r10
rol rcx, 0x1e
add rsi, rdx
xor rcx, rax
mov rax, r10
rol rax, 0x19
xor rcx, rax
mov rax, r8
and rax, r9
or r14, rax
lea rax, [rdx + rcx]
mov rdx, qword [rsp + 0x38]
add r14, rax
mov rbp, rdx
ror rbp, 0x13
mov rax, r13
ror rax, 1
mov rcx, r13
ror rcx, 8
xor rcx, rax
mov rax, r13
shr rax, 7
xor rcx, rax
mov rax, rdx
rol rax, 3
xor rbp, rax
mov rax, rdx
shr rax, 6
mov rdx, rsi
xor rbp, rax
rol rdx, 0x17
lea rax, [r12 + rcx]
mov rcx, rbx
add rbp, rax
xor rcx, rdi
add rbp, qword [rsp + 0x88]
and rcx, rsi
xor rcx, rbx
mov qword [rsp + 0x60], rbp
mov rax, rsi
ror rax, 0x12
xor rdx, rax
mov rax, rsi
ror rax, 0xe
xor rax, rdx
movabs rdx, 0xe49b69c19ef14ad2
add rax, rbp
add rcx, rax
mov rax, r14
add rdx, rcx
ror rax, 0x1c
add rdx, r11
mov rcx, r14
rol rcx, 0x1e
add r8, rdx
xor rcx, rax
mov r11, r9
mov rax, r14
rol rax, 0x19
xor rcx, rax
or r11, r10
mov rax, r9
and rax, r10
and r11, r14
or r11, rax
lea rax, [rdx + rcx]
add r11, rax
mov rcx, r15
ror rcx, 0x13
mov rax, r15
rol rax, 3
mov rdx, r8
xor rcx, rax
rol rdx, 0x17
mov rax, r15
mov r15, qword [rsp + 0x90]
shr rax, 6
mov r12, r15
xor rcx, rax
ror r12, 8
mov rax, r15
ror rax, 1
xor r12, rax
mov rax, r15
shr rax, 7
xor r12, rax
lea rax, [rcx + r13]
mov r13, qword [rsp + 0x48]
add r12, rax
add r12, r13
mov rax, r8
ror rax, 0x12
mov rcx, rdi
xor rdx, rax
mov qword [rsp + 0x68], r12
xor rcx, rsi
mov rax, r8
ror rax, 0xe
and rcx, r8
xor rax, rdx
xor rcx, rdi
add rax, r12
movabs rdx, 0xefbe4786384f25e3
mov r12, qword [rsp + 0x70]
add rcx, rax
add rdx, rcx
mov rax, r11
ror rax, 0x1c
add rdx, rbx
add r9, rdx
mov rcx, r11
rol rcx, 0x1e
mov rbx, r10
xor rcx, rax
or rbx, r14
and rbx, r11
mov rax, r11
rol rax, 0x19
xor rcx, rax
mov rax, r10
and rax, r14
or rbx, rax
lea rax, [rdx + rcx]
mov rcx, r12
add rbx, rax
ror rcx, 8
mov rax, r12
mov rdx, rbp
ror rax, 1
xor rcx, rax
ror rdx, 0x13
mov rax, r12
shr rax, 7
xor rcx, rax
mov rax, rbp
rol rax, 3
xor rdx, rax
mov rax, rbp
shr rax, 6
xor rdx, rax
lea rax, [r15 + rcx]
add rdx, rax
mov rbp, qword [rsp + 0x58]
add rdx, qword [rsp + 0x80]
mov rax, r9
ror rax, 0x12
mov rcx, rsi
xor rcx, r8
mov qword [rsp + 0x20], rdx
and rcx, r9
mov rdx, r9
xor rcx, rsi
rol rdx, 0x17
xor rdx, rax
mov r15, rbp
ror r15, 8
mov rax, r9
ror rax, 0xe
xor rax, rdx
mov rdx, qword [rsp + 0x20]
add rax, rdi
mov rdi, r11
add rcx, rax
or rdi, r14
and rdi, rbx
movabs rax, 0xfc19dc68b8cd5b5
add rax, rcx
mov rcx, rbx
add rdx, rax
rol rcx, 0x1e
add r10, rdx
mov rax, rbx
ror rax, 0x1c
xor rcx, rax
mov rax, rbx
rol rax, 0x19
xor rcx, rax
mov rax, r11
and rax, r14
or rdi, rax
lea rax, [rdx + rcx]
mov rdx, qword [rsp + 0x68]
add rdi, rax
mov rcx, rdx
ror rcx, 0x13
mov rax, rdx
rol rax, 3
xor rcx, rax
mov rax, rdx
shr rax, 6
mov rdx, r10
xor rcx, rax
rol rdx, 0x17
mov rax, rbp
ror rax, 1
xor r15, rax
mov rax, rbp
shr rax, 7
xor r15, rax
lea rax, [r12 + rcx]
add r15, rax
mov rcx, r8
add r15, qword [rsp + 0x78]
xor rcx, r9
and rcx, r10
mov qword [rsp + 0x28], r15
xor rcx, r8
mov rax, r10
ror rax, 0x12
xor rdx, rax
mov rax, r10
ror rax, 0xe
xor rax, rdx
movabs rdx, 0x240ca1cc77ac9c65
add rax, rsi
add rcx, rax
mov rax, rdi
add rdx, rcx
mov rcx, rdi
add rdx, r15
add r14, rdx
rol rcx, 0x1e
mov r15, qword [rsp + 0x30]
mov rsi, r11
ror rax, 0x1c
or rsi, rbx
xor rcx, rax
and rsi, rdi
mov rax, rdi
mov r12, r15
rol rax, 0x19
xor rcx, rax
ror r12, 8
mov rax, r11
and rax, rbx
or rsi, rax
lea rax, [rdx + rcx]
mov rdx, qword [rsp + 0x20]
add rsi, rax
mov rcx, rdx
ror rcx, 0x13
mov rax, rdx
rol rax, 3
xor rcx, rax
mov rax, rdx
shr rax, 6
mov rdx, r14
xor rcx, rax
rol rdx, 0x17
mov rax, r15
ror rax, 1
xor r12, rax
mov rax, r15
shr rax, 7
xor r12, rax
mov rax, qword [rsp + 0x40]
add rax, rcx
mov rcx, r9
add r12, rax
xor rcx, r10
and rcx, r14
add r12, rbp
xor rcx, r9
mov qword [rsp + 0x58], r12
mov rax, r14
ror rax, 0x12
xor rdx, rax
mov rax, r14
ror rax, 0xe
xor rax, rdx
movabs rdx, 0x2de92c6f592b0275
add rax, r8
mov r8, rbx
add rcx, rax
or r8, rdi
add rdx, rcx
and r8, rsi
add rdx, r12
mov rcx, rsi
mov r12, qword [rsp]
add r11, rdx
rol rcx, 0x1e
mov rax, rsi
ror rax, 0x1c
mov rbp, r12
xor rcx, rax
mov rax, rsi
rol rax, 0x19
xor rcx, rax
mov rax, rbx
and rax, rdi
or r8, rax
lea rax, [rdx + rcx]
mov rdx, qword [rsp + 0x28]
add r8, rax
mov rcx, rdx
ror rcx, 0x13
mov rax, rdx
rol rax, 3
xor rcx, rax
mov rax, rdx
shr rax, 6
xor rcx, rax
ror rbp, 8
mov rax, r12
ror rax, 1
mov rdx, r11
xor rbp, rax
rol rdx, 0x17
mov rax, r12
shr rax, 7
xor rbp, rax
mov rax, qword [rsp + 0x38]
add rax, rcx
mov rcx, r10
add rbp, rax
xor rcx, r14
and rcx, r11
add rbp, r15
xor rcx, r10
mov qword [rsp + 0x30], rbp
mov rax, r11
ror rax, 0x12
xor rdx, rax
mov rax, r11
ror rax, 0xe
xor rax, rdx
movabs rdx, 0x4a7484aa6ea6e483
add rax, r9
mov r9, rdi
add rcx, rax
or r9, rsi
add rdx, rcx
and r9, r8
add rdx, rbp
mov rcx, r8
mov rbp, qword [rsp + 0x10]
add rbx, rdx
rol rcx, 0x1e
mov rax, r8
ror rax, 0x1c
xor rcx, rax
mov rax, r8
rol rax, 0x19
xor rcx, rax
mov rax, rdi
and rax, rsi
or r9, rax
lea rax, [rdx + rcx]
mov rdx, qword [rsp + 0x58]
add r9, rax
mov r15, rdx
ror r15, 0x13
mov rax, rbp
ror rax, 1
mov rcx, rbp
ror rcx, 8
xor rcx, rax
mov rax, rbp
shr rax, 7
xor rcx, rax
mov rax, rdx
rol rax, 3
xor r15, rax
mov rax, rdx
shr rax, 6
mov rdx, rbx
xor r15, rax
rol rdx, 0x17
mov rax, qword [rsp + 0x50]
add rax, rcx
mov rcx, r11
add r15, rax
xor rcx, r14
add r15, r12
mov rax, rbx
ror rax, 0x12
and rcx, rbx
xor rdx, rax
mov qword [rsp + 0x70], r15
mov rax, rbx
ror rax, 0xe
xor rax, rdx
xor rcx, r14
add rax, r15
movabs rdx, 0x5cb0a9dcbd41fbd4
add rcx, rax
mov r15, qword [rsp + 0x18]
add rdx, rcx
mov rax, r9
ror rax, 0x1c
add rdx, r10
add rdi, rdx
mov r10, rsi
or r10, r8
mov rcx, r9
rol rcx, 0x1e
and r10, r9
xor rcx, rax
mov r12, r15
ror r12, 8
mov rax, r9
rol rax, 0x19
xor rcx, rax
mov rax, rsi
and rax, r8
or r10, rax
lea rax, [rdx + rcx]
mov rdx, qword [rsp + 0x30]
add r10, rax
mov rcx, rdx
ror rcx, 0x13
mov rax, rdx
rol rax, 3
xor rcx, rax
mov rax, rdx
shr rax, 6
mov rdx, rdi
xor rcx, rax
rol rdx, 0x17
mov rax, r15
ror rax, 1
xor r12, rax
mov rax, r15
shr rax, 7
xor r12, rax
mov rax, qword [rsp + 0x60]
add rax, rcx
mov rcx, r11
add r12, rax
xor rcx, rbx
and rcx, rdi
add r12, rbp
mov rbp, qword [rsp + 0x88]
xor rcx, r11
mov rax, rdi
mov qword [rsp + 0x48], r12
ror rax, 0x12
xor rdx, rax
mov rax, rdi
ror rax, 0xe
xor rax, rdx
movabs rdx, 0x76f988da831153b5
add rax, r14
mov r14, r8
add rcx, rax
or r14, r9
add rdx, rcx
and r14, r10
add rdx, r12
mov rcx, r10
rol rcx, 0x1e
mov rax, r10
ror rax, 0x1c
add rsi, rdx
xor rcx, rax
mov rax, r10
rol rax, 0x19
xor rcx, rax
mov rax, r8
and rax, r9
or r14, rax
lea rax, [rdx + rcx]
mov rcx, rbp
add r14, rax
mov rdx, qword [rsp + 0x70]
mov rax, rbp
ror rax, 1
ror rcx, 8
xor rcx, rax
mov rax, rbp
shr rax, 7
xor rcx, rax
mov rax, rdx
ror rax, 0x13
mov qword [rsp + 0x10], rax
mov rax, rdx
rol rax, 3
xor qword [rsp + 0x10], rax
mov rax, rdx
mov rdx, qword [rsp + 0x10]
shr rax, 6
xor rdx, rax
mov rax, qword [rsp + 0x68]
add rax, rcx
mov rcx, rbx
add rdx, rax
xor rcx, rdi
add rdx, r15
and rcx, rsi
xor rcx, rbx
mov qword [rsp + 0x10], rdx
mov rdx, rsi
mov rax, rsi
ror rax, 0x12
mov r15, r12
rol rdx, 0x17
xor rdx, rax
ror r15, 0x13
mov rax, rsi
ror rax, 0xe
xor rax, rdx
movabs rdx, 0x983e5152ee66dfab
add rax, r11
mov r11, r9
add rcx, rax
or r11, r10
add rdx, rcx
and r11, r14
add rdx, qword [rsp + 0x10]
mov rcx, r14
rol rcx, 0x1e
add r8, rdx
mov rax, r14
ror rax, 0x1c
xor rcx, rax
mov rax, r14
rol rax, 0x19
xor rcx, rax
mov rax, r9
and rax, r10
or r11, rax
lea rax, [rdx + rcx]
mov rcx, r13
add r11, rax
ror rcx, 8
mov rax, r13
mov rdx, r8
ror rax, 1
xor rcx, rax
mov rax, r13
shr rax, 7
xor rcx, rax
mov rax, r12
rol rax, 3
xor r15, rax
mov rax, r12
shr rax, 6
xor r15, rax
mov rax, qword [rsp + 0x20]
add rax, rcx
add r15, rax
mov rax, r8
add r15, rbp
mov qword [rsp + 0x88], r15
rol rdx, 0x17
mov rbp, qword [rsp + 0x80]
mov rcx, rdi
ror rax, 0x12
xor rcx, rsi
xor rdx, rax
and rcx, r8
xor rcx, rdi
mov rax, r8
ror rax, 0xe
mov r12, rbp
xor rax, rdx
ror r12, 8
add rax, rbx
movabs rdx, 0xa831c66d2db43210
add rcx, rax
mov rbx, r10
add rdx, rcx
or rbx, r14
add rdx, r15
and rbx, r11
add r9, rdx
mov rcx, r11
rol rcx, 0x1e
mov rax, r11
ror rax, 0x1c
xor rcx, rax
mov rax, r11
rol rax, 0x19
xor rcx, rax
mov rax, r10
and rax, r14
or rbx, rax
lea rax, [rdx + rcx]
mov rdx, qword [rsp + 0x10]
add rbx, rax
mov rcx, rdx
ror rcx, 0x13
mov rax, rdx
rol rax, 3
xor rcx, rax
mov rax, rdx
shr rax, 6
mov rdx, r9
xor rcx, rax
rol rdx, 0x17
mov rax, rbp
ror rax, 1
xor r12, rax
mov rax, rbp
shr rax, 7
xor r12, rax
mov rax, qword [rsp + 0x28]
add rax, rcx
mov rcx, rsi
add r12, rax
xor rcx, r8
and rcx, r9
add r12, r13
xor rcx, rsi
mov qword [rsp + 0x90], r12
mov rax, r9
ror rax, 0x12
xor rdx, rax
mov rax, r9
ror rax, 0xe
xor rax, rdx
movabs rdx, 0xb00327c898fb213f
add rax, rdi
mov rdi, r11
add rcx, rax
mov rax, rbx
add rdx, rcx
ror rax, 0x1c
add rdx, r12
mov rcx, rbx
rol rcx, 0x1e
add r10, rdx
xor rcx, rax
mov rax, rbx
rol rax, 0x19
xor rcx, rax
mov r13, qword [rsp + 0x58]
or rdi, r14
and rdi, rbx
mov rax, r11
and rax, r14
or rdi, rax
lea rax, [rdx + rcx]
add rdi, rax
mov rcx, r15
ror rcx, 0x13
mov rax, r15
rol rax, 3
xor rcx, rax
mov rax, r15
mov r15, qword [rsp + 0x78]
shr rax, 6
mov rdx, r15
xor rcx, rax
ror rdx, 8
mov rax, r15
ror rax, 1
xor rdx, rax
mov rax, r15
shr rax, 7
xor rdx, rax
lea rax, [rcx + r13]
add rdx, rax
mov rcx, r8
add rdx, rbp
xor rcx, r9
mov qword [rsp + 0x80], rdx
and rcx, r10
mov rbp, qword [rsp + 0x80]
xor rcx, r8
mov rdx, r10
mov rax, r10
ror rax, 0x12
rol rdx, 0x17
xor rdx, rax
mov rax, r10
ror rax, 0xe
xor rax, rdx
movabs rdx, 0xbf597fc7beef0ee4
add rax, rsi
mov rsi, r11
add rcx, rax
or rsi, rbx
add rdx, rcx
and rsi, rdi
add rdx, rbp
mov rcx, rdi
rol rcx, 0x1e
add r14, rdx
mov rax, rdi
ror rax, 0x1c
xor rcx, rax
mov rax, rdi
rol rax, 0x19
xor rcx, rax
mov rax, r11
and rax, rbx
or rsi, rax
lea rax, [rdx + rcx]
mov rcx, r12
add rsi, rax
ror rcx, 0x13
mov rax, r12
rol rax, 3
xor rcx, rax
mov rax, r12
mov r12, qword [rsp + 0x40]
shr rax, 6
mov rdx, r12
xor rcx, rax
ror rdx, 8
mov rax, r12
ror rax, 1
xor rdx, rax
mov rax, r12
shr rax, 7
xor rdx, rax
lea rax, [r15 + rcx]
mov r15, qword [rsp + 0x38]
add rdx, rax
mov rcx, r9
add rdx, qword [rsp + 0x30]
xor rcx, r10
mov qword [rsp + 0x40], rdx
and rcx, r14
xor rcx, r9
mov rdx, r14
rol rdx, 0x17
mov rax, r14
ror rax, 0x12
xor rdx, rax
mov rax, r14
ror rax, 0xe
xor rax, rdx
movabs rdx, 0xc6e00bf33da88fc2
add rax, r8
mov r8, rbx
add rcx, rax
or r8, rdi
add rdx, rcx
and r8, rsi
add rdx, qword [rsp + 0x40]
mov rcx, rsi
add r11, rdx
rol rcx, 0x1e
mov rax, rsi
ror rax, 0x1c
xor rcx, rax
mov rax, rsi
rol rax, 0x19
xor rcx, rax
mov rax, rbx
and rax, rdi
or r8, rax
lea rax, [rdx + rcx]
mov rcx, rbp
add r8, rax
ror rcx, 0x13
mov rax, rbp
mov rdx, r15
rol rax, 3
xor rcx, rax
ror rdx, 8
mov rax, rbp
shr rax, 6
xor rcx, rax
mov rax, r15
ror rax, 1
xor rdx, rax
mov rax, r15
shr rax, 7
xor rdx, rax
mov rax, qword [rsp + 0x70]
add rax, rcx
mov rcx, r10
add rdx, rax
xor rcx, r14
add rdx, r12
and rcx, r11
mov qword [rsp + 0x38], rdx
xor rcx, r10
mov rdx, r11
mov rax, r11
ror rax, 0x12
rol rdx, 0x17
xor rdx, rax
mov rax, r11
ror rax, 0xe
xor rax, rdx
movabs rdx, 0xd5a79147930aa725
add rax, r9
add rcx, rax
mov rax, r8
add rdx, rcx
mov rcx, r8
add rdx, qword [rsp + 0x38]
add rbx, rdx
rol rcx, 0x1e
ror rax, 0x1c
mov r9, rdi
xor rcx, rax
mov r12, qword [rsp + 0x50]
or r9, rsi
mov rax, r8
rol rax, 0x19
and r9, r8
xor rcx, rax
mov rax, rdi
and rax, rsi
or r9, rax
lea rax, [rdx + rcx]
mov rdx, qword [rsp + 0x40]
add r9, rax
mov rcx, r12
ror rcx, 8
mov rax, r12
ror rax, 1
xor rcx, rax
mov rax, r12
shr rax, 7
xor rcx, rax
mov rax, rdx
ror rax, 0x13
mov qword [rsp + 8], rax
mov rax, rdx
rol rax, 3
xor qword [rsp + 8], rax
mov rax, rdx
mov rdx, qword [rsp + 8]
shr rax, 6
xor rdx, rax
lea rax, [r15 + rcx]
mov r15, qword [rsp + 0x60]
add rdx, rax
add rdx, qword [rsp + 0x48]
mov rax, rbx
ror rax, 0x12
mov rcx, r11
xor rcx, r14
mov qword [rsp + 8], rdx
and rcx, rbx
mov rdx, rbx
xor rcx, r14
rol rdx, 0x17
xor rdx, rax
mov rax, rbx
ror rax, 0xe
xor rax, rdx
movabs rdx, 0x6ca6351e003826f
add rax, r10
mov r10, rsi
add rcx, rax
or r10, r8
add rdx, rcx
and r10, r9
add rdx, qword [rsp + 8]
mov rcx, r9
rol rcx, 0x1e
add rdi, rdx
mov rax, r9
ror rax, 0x1c
xor rcx, rax
mov rax, r9
rol rax, 0x19
xor rcx, rax
mov rax, rsi
and rax, r8
or r10, rax
lea rax, [rdx + rcx]
mov rdx, qword [rsp + 0x38]
add r10, rax
mov rcx, rdx
ror rcx, 0x13
mov rax, rdx
rol rax, 3
xor rcx, rax
mov rax, rdx
shr rax, 6
xor rcx, rax
mov rdx, r15
mov rax, r15
ror rax, 1
ror rdx, 8
xor rdx, rax
mov rax, r15
shr rax, 7
xor rdx, rax
lea rax, [r12 + rcx]
add rdx, rax
mov r12, qword [rsp + 0x68]
add rdx, qword [rsp + 0x10]
mov rax, rdi
ror rax, 0x12
mov rcx, r11
xor rcx, rbx
mov qword [rsp + 0x60], rdx
and rcx, rdi
mov rdx, rdi
rol rdx, 0x17
xor rcx, r11
xor rdx, rax
mov rax, rdi
ror rax, 0xe
xor rax, rdx
movabs rdx, 0x142929670a0e6e70
add rax, r14
mov r14, r8
add rcx, rax
or r14, r9
add rdx, rcx
and r14, r10
add rdx, qword [rsp + 0x60]
mov rcx, r10
add rsi, rdx
rol rcx, 0x1e
mov rax, r10
ror rax, 0x1c
xor rcx, rax
mov rax, r10
rol rax, 0x19
xor rcx, rax
mov rax, r8
and rax, r9
or r14, rax
lea rax, [rdx + rcx]
mov rcx, r12
add r14, rax
ror rcx, 8
mov rax, r12
ror rax, 1
xor rcx, rax
mov rax, r12
shr rax, 7
xor rcx, rax
mov rax, qword [rsp + 8]
mov rdx, rax
rol rax, 3
ror rdx, 0x13
xor rdx, rax
mov rax, qword [rsp + 8]
shr rax, 6
xor rdx, rax
lea rax, [r15 + rcx]
add rdx, rax
mov rcx, rbx
add rdx, qword [rsp + 0x88]
xor rcx, rdi
mov qword [rsp + 0x58], rdx
and rcx, rsi
mov rdx, rsi
mov rax, rsi
ror rax, 0x12
xor rcx, rbx
rol rdx, 0x17
xor rdx, rax
mov rax, rsi
ror rax, 0xe
xor rax, rdx
add rax, r11
add rcx, rax
mov rdx, qword [rsp + 0x58]
mov r11, r9
or r11, r10
movabs rax, 0x27b70a8546d22ffc
add rax, rcx
and r11, r14
add rdx, rax
mov rcx, r14
rol rcx, 0x1e
add r8, rdx
mov rax, r14
ror rax, 0x1c
xor rcx, rax
mov rax, r14
rol rax, 0x19
xor rcx, rax
mov rax, r9
and rax, r10
or r11, rax
lea rax, [rdx + rcx]
mov rdx, qword [rsp + 0x60]
add r11, rax
mov rcx, rdx
ror rcx, 0x13
mov rax, rdx
rol rax, 3
xor rcx, rax
mov rax, rdx
mov rdx, qword [rsp + 0x20]
shr rax, 6
mov r15, rdx
xor rcx, rax
ror r15, 8
mov rax, rdx
ror rax, 1
xor r15, rax
mov rax, rdx
shr rax, 7
mov rdx, r8
xor r15, rax
rol rdx, 0x17
lea rax, [r12 + rcx]
mov r12, qword [rsp + 0x90]
add r15, rax
mov rcx, rdi
xor rcx, rsi
add r15, r12
and rcx, r8
mov qword [rsp + 0x78], r15
xor rcx, rdi
mov rax, r8
ror rax, 0x12
xor rdx, rax
mov rax, r8
ror rax, 0xe
xor rax, rdx
movabs rdx, 0x2e1b21385c26c926
add rax, rbx
mov rbx, r10
add rcx, rax
or rbx, r14
add rdx, rcx
and rbx, r11
add rdx, r15
mov rcx, r11
mov r15, qword [rsp + 0x28]
mov rax, r11
ror rax, 0x1c
add r9, rdx
rol rcx, 0x1e
xor rcx, rax
mov rax, r11
rol rax, 0x19
xor rcx, rax
mov rax, r10
and rax, r14
or rbx, rax
lea rax, [rdx + rcx]
mov rcx, r15
add rbx, rax
ror rcx, 8
mov rdx, qword [rsp + 0x58]
mov rax, r15
ror rax, 1
xor rcx, rax
mov rax, r15
shr rax, 7
xor rcx, rax
mov rax, rdx
ror rax, 0x13
mov qword [rsp + 0x18], rax
mov rax, rdx
rol rax, 3
xor qword [rsp + 0x18], rax
mov rax, rdx
shr rax, 6
mov rdx, r9
xor qword [rsp + 0x18], rax
lea rax, [rcx + rbp]
mov rbp, qword [rsp + 0x18]
mov rcx, rsi
add rbp, rax
rol rdx, 0x17
add rbp, qword [rsp + 0x20]
xor rcx, r8
and rcx, r9
mov qword [rsp + 0x18], rbp
xor rcx, rsi
mov rax, r9
ror rax, 0x12
xor rdx, rax
mov rax, r9
ror rax, 0xe
xor rax, rdx
movabs rdx, 0x4d2c6dfc5ac42aed
add rax, rdi
mov rdi, r11
add rcx, rax
or rdi, r14
add rdx, rcx
and rdi, rbx
add rdx, rbp
mov rcx, rbx
add r10, rdx
rol rcx, 0x1e
mov rax, rbx
ror rax, 0x1c
xor rcx, rax
mov rax, rbx
rol rax, 0x19
xor rcx, rax
mov rax, r11
and rax, r14
or rdi, rax
lea rax, [rdx + rcx]
mov rdx, qword [rsp + 0x78]
add rdi, rax
mov rcx, r13
ror rcx, 8
mov rax, r13
ror rax, 1
xor rcx, rax
mov rax, r13
shr rax, 7
xor rcx, rax
mov rax, rdx
ror rax, 0x13
mov qword [rsp], rax
mov rax, rdx
rol rax, 3
xor qword [rsp], rax
mov rax, rdx
mov rdx, qword [rsp]
shr rax, 6
xor rdx, rax
lea rax, [r15 + rcx]
add rdx, rax
mov rax, r10
add rdx, qword [rsp + 0x40]
mov qword [rsp], rdx
mov rdx, r10
rol rdx, 0x17
mov r15, qword [rsp + 0x30]
mov rcx, r8
ror rax, 0x12
xor rcx, r9
xor rdx, rax
and rcx, r10
xor rcx, r8
mov rax, r10
ror rax, 0xe
xor rax, rdx
movabs rdx, 0x53380d139d95b3df
add rax, rsi
mov rsi, r11
add rcx, rax
or rsi, rbx
add rdx, rcx
and rsi, rdi
add rdx, qword [rsp]
mov rcx, rdi
rol rcx, 0x1e
add r14, rdx
mov rax, rdi
ror rax, 0x1c
xor rcx, rax
mov rax, rdi
rol rax, 0x19
xor rcx, rax
mov rax, r11
and rax, rbx
or rsi, rax
lea rax, [rdx + rcx]
mov rdx, rbp
add rsi, rax
ror rdx, 0x13
mov rax, r15
mov rcx, r15
ror rax, 1
ror rcx, 8
xor rcx, rax
mov rax, r15
shr rax, 7
xor rcx, rax
mov rax, rbp
rol rax, 3
xor rdx, rax
mov rax, rbp
shr rax, 6
mov rbp, rbx
xor rdx, rax
lea rax, [rcx + r13]
mov r13, qword [rsp + 0x38]
add rdx, rax
add rdx, r13
mov rax, r14
ror rax, 0x12
mov rcx, r9
xor rcx, r10
mov qword [rsp + 0x50], rdx
and rcx, r14
mov rdx, r14
xor rcx, r9
rol rdx, 0x17
xor rdx, rax
mov rax, r14
ror rax, 0xe
xor rax, rdx
movabs rdx, 0x650a73548baf63de
add rax, r8
add rcx, rax
mov rax, rsi
add rdx, rcx
ror rax, 0x1c
add rdx, qword [rsp + 0x50]
mov rcx, rsi
rol rcx, 0x1e
add r11, rdx
xor rcx, rax
mov rax, rsi
rol rax, 0x19
xor rcx, rax
or rbp, rdi
mov r8, qword [rsp + 0x70]
and rbp, rsi
mov rax, rbx
and rax, rdi
or rbp, rax
lea rax, [rdx + rcx]
mov rdx, qword [rsp]
add rbp, rax
mov rcx, rdx
mov rax, rdx
rol rax, 3
ror rcx, 0x13
xor rcx, rax
mov rax, rdx
shr rax, 6
mov rdx, r8
xor rcx, rax
ror rdx, 8
mov rax, r8
ror rax, 1
xor rdx, rax
mov rax, r8
shr rax, 7
xor rdx, rax
mov rax, qword [rsp + 8]
add rax, rcx
mov rcx, r10
add rdx, rax
xor rcx, r14
add rdx, r15
and rcx, r11
mov qword [rsp + 0x30], rdx
xor rcx, r10
mov rdx, r11
mov rax, r11
ror rax, 0x12
mov r15, rdi
rol rdx, 0x17
or r15, rsi
xor rdx, rax
and r15, rbp
mov rax, r11
ror rax, 0xe
xor rax, rdx
movabs rdx, 0x766a0abb3c77b2a8
add rax, r9
mov r9, qword [rsp + 0x48]
add rcx, rax
mov rax, rbp
ror rax, 0x1c
add rdx, rcx
add rdx, qword [rsp + 0x30]
mov rcx, rbp
rol rcx, 0x1e
add rbx, rdx
xor rcx, rax
mov rax, rbp
rol rax, 0x19
xor rcx, rax
mov rax, rdi
and rax, rsi
or r15, rax
lea rax, [rdx + rcx]
mov rdx, qword [rsp + 0x50]
add r15, rax
mov rcx, rdx
mov rax, rdx
ror rcx, 0x13
rol rax, 3
xor rcx, rax
mov rax, rdx
shr rax, 6
mov rdx, r9
xor rcx, rax
ror rdx, 8
mov rax, r9
ror rax, 1
xor rdx, rax
mov rax, r9
shr rax, 7
xor rdx, rax
lea rax, [r8 + rcx]
mov r8, rsi
add rdx, rax
or r8, rbp
add rdx, qword [rsp + 0x60]
and r8, r15
mov qword [rsp + 0x28], rdx
mov rax, rbx
ror rax, 0x12
mov rdx, rbx
rol rdx, 0x17
mov rcx, r11
xor rdx, rax
xor rcx, r14
and rcx, rbx
mov rax, rbx
ror rax, 0xe
xor rcx, r14
xor rax, rdx
movabs rdx, 0x81c2c92e47edaee6
add rax, r10
add rcx, rax
mov rax, r15
add rdx, rcx
ror rax, 0x1c
add rdx, qword [rsp + 0x28]
mov rcx, r15
rol rcx, 0x1e
add rdi, rdx
xor rcx, rax
mov rax, r15
rol rax, 0x19
xor rcx, rax
mov rax, rsi
and rax, rbp
or r8, rax
lea rax, [rdx + rcx]
mov rdx, qword [rsp + 0x10]
add r8, rax
mov rcx, rdx
ror rcx, 8
mov rax, rdx
ror rax, 1
xor rcx, rax
mov rax, rdx
mov rdx, qword [rsp + 0x30]
shr rax, 7
mov r10, rdx
xor rcx, rax
ror r10, 0x13
mov rax, rdx
rol rax, 3
xor r10, rax
mov rax, rdx
shr rax, 6
mov rdx, rdi
xor r10, rax
rol rdx, 0x17
mov rax, qword [rsp + 0x58]
add rax, rcx
mov rcx, r11
add r10, rax
xor rcx, rbx
and rcx, rdi
add r10, r9
xor rcx, r11
mov qword [rsp + 0x68], r10
mov rax, rdi
ror rax, 0x12
xor rdx, rax
mov rax, rdi
ror rax, 0xe
xor rax, rdx
movabs rdx, 0x92722c851482353b
add rax, r14
add rcx, rax
add rdx, rcx
mov rcx, r8
add rdx, r10
add rsi, rdx
rol rcx, 0x1e
mov r10, qword [rsp + 0x88]
mov r9, rbp
or r9, r15
mov rax, r8
ror rax, 0x1c
and r9, r8
xor rcx, rax
mov rax, r8
rol rax, 0x19
xor rcx, rax
mov rax, rbp
and rax, r15
or r9, rax
lea rax, [rdx + rcx]
mov rdx, qword [rsp + 0x28]
add r9, rax
mov r14, rdx
ror r14, 0x13
mov rax, r10
ror rax, 1
mov rcx, r10
ror rcx, 8
xor rcx, rax
mov rax, r10
shr rax, 7
xor rcx, rax
mov rax, rdx
rol rax, 3
xor r14, rax
mov rax, rdx
shr rax, 6
mov rdx, rsi
xor r14, rax
rol rdx, 0x17
mov rax, qword [rsp + 0x78]
add rax, rcx
mov rcx, rbx
add r14, rax
xor rcx, rdi
add r14, qword [rsp + 0x10]
and rcx, rsi
xor rcx, rbx
mov qword [rsp + 0x48], r14
mov rax, rsi
ror rax, 0x12
xor rdx, rax
mov rax, rsi
ror rax, 0xe
xor rax, rdx
movabs rdx, 0xa2bfe8a14cf10364
add rax, r11
mov r11, r12
add rcx, rax
mov rax, r9
ror rax, 0x1c
add rdx, rcx
add rdx, r14
mov rcx, r9
rol rcx, 0x1e
add rbp, rdx
xor rcx, rax
mov r14, r15
or r14, r8
mov rax, r9
rol rax, 0x19
and r14, r9
xor rcx, rax
mov rax, r15
and rax, r8
or r14, rax
lea rax, [rdx + rcx]
mov rdx, qword [rsp + 0x68]
add r14, rax
mov rcx, rdx
ror rcx, 0x13
mov rax, rdx
rol rax, 3
xor rcx, rax
mov rax, rdx
shr rax, 6
xor rcx, rax
ror r11, 8
mov rax, r12
ror rax, 1
mov rdx, rbp
xor r11, rax
rol rdx, 0x17
mov rax, r12
shr rax, 7
xor r11, rax
lea rax, [r10 + rcx]
add r11, rax
mov rcx, rdi
add r11, qword [rsp + 0x18]
xor rcx, rsi
and rcx, rbp
mov qword [rsp + 0x38], r11
xor rcx, rdi
mov rax, rbp
ror rax, 0x12
mov r10, r8
xor rdx, rax
or r10, r9
and r10, r14
mov rax, rbp
ror rax, 0xe
xor rax, rdx
movabs rdx, 0xa81a664bbc423001
add rax, rbx
add rcx, rax
mov rax, r14
ror rax, 0x1c
add rdx, rcx
add rdx, r11
mov rcx, r14
mov r11, qword [rsp + 0x80]
add r15, rdx
rol rcx, 0x1e
mov rbx, r11
xor rcx, rax
ror rbx, 8
mov rax, r14
rol rax, 0x19
xor rcx, rax
mov rax, r8
and rax, r9
or r10, rax
lea rax, [rdx + rcx]
mov rdx, qword [rsp + 0x48]
add r10, rax
mov rcx, rdx
ror rcx, 0x13
mov rax, rdx
rol rax, 3
xor rcx, rax
mov rax, rdx
shr rax, 6
mov rdx, r15
xor rcx, rax
rol rdx, 0x17
mov rax, r11
ror rax, 1
xor rbx, rax
mov rax, r11
shr rax, 7
xor rbx, rax
lea rax, [r12 + rcx]
add rbx, rax
mov rcx, rsi
add rbx, qword [rsp]
xor rcx, rbp
and rcx, r15
mov qword [rsp + 0x88], rbx
mov rax, r15
xor rcx, rsi
ror rax, 0x12
xor rdx, rax
mov rax, r15
ror rax, 0xe
xor rax, rdx
add rax, rdi
add rcx, rax
movabs rdx, 0xc24b8b70d0f89791
mov rax, r10
ror rax, 0x1c
add rdx, rcx
add rdx, rbx
mov rcx, r10
mov rbx, qword [rsp + 0x40]
add r8, rdx
rol rcx, 0x1e
mov r12, r14
xor rcx, rax
or r12, r9
and r12, r10
mov rax, r10
rol rax, 0x19
mov rdi, rbx
xor rcx, rax
ror rdi, 8
mov rax, r14
and rax, r9
or r12, rax
lea rax, [rdx + rcx]
mov rdx, qword [rsp + 0x38]
add r12, rax
mov rcx, rdx
ror rcx, 0x13
mov rax, rdx
rol rax, 3
xor rcx, rax
mov rax, rdx
shr rax, 6
mov rdx, r8
xor rcx, rax
rol rdx, 0x17
mov rax, rbx
ror rax, 1
xor rdi, rax
mov rax, rbx
shr rax, 7
xor rdi, rax
lea rax, [r11 + rcx]
add rdi, rax
mov rcx, rbp
add rdi, qword [rsp + 0x50]
xor rcx, r15
and rcx, r8
mov qword [rsp + 0x90], rdi
xor rcx, rbp
mov rax, r8
ror rax, 0x12
mov r11, r14
xor rdx, rax
or r11, r10
and r11, r12
mov rax, r8
ror rax, 0xe
xor rax, rdx
movabs rdx, 0xc76c51a30654be30
add rax, rdi
add rcx, rax
mov rax, r12
ror rax, 0x1c
add rdx, rcx
add rdx, rsi
mov rcx, r12
rol rcx, 0x1e
add r9, rdx
xor rcx, rax
mov rax, r12
rol rax, 0x19
xor rcx, rax
mov rax, r14
and rax, r10
or r11, rax
lea rax, [rdx + rcx]
mov rcx, r13
add r11, rax
ror rcx, 8
mov rax, r13
ror rax, 1
xor rcx, rax
mov rdx, qword [rsp + 0x88]
mov rax, r13
shr rax, 7
mov rsi, rdx
xor rcx, rax
ror rsi, 0x13
mov rax, rdx
rol rax, 3
xor rsi, rax
mov rax, rdx
shr rax, 6
mov rdx, r9
xor rsi, rax
rol rdx, 0x17
lea rax, [rbx + rcx]
mov rcx, r15
add rsi, rax
xor rcx, r8
add rsi, qword [rsp + 0x30]
and rcx, r9
xor rcx, r15
mov qword [rsp + 0x10], rsi
mov rax, r9
mov rbx, r10
ror rax, 0x12
or rbx, r12
xor rdx, rax
and rbx, r11
mov rax, r9
ror rax, 0xe
xor rax, rdx
movabs rdx, 0xd192e819d6ef5218
add rax, rsi
add rcx, rax
mov rax, r11
ror rax, 0x1c
add rdx, rcx
add rdx, rbp
mov rcx, r11
rol rcx, 0x1e
add r14, rdx
xor rcx, rax
mov rax, r11
rol rax, 0x19
xor rcx, rax
mov rax, r10
and rax, r12
or rbx, rax
lea rax, [rdx + rcx]
mov rdx, qword [rsp + 8]
add rbx, rax
mov rbp, rdx
ror rbp, 8
mov rax, rdi
rol rax, 3
mov rcx, rdi
ror rcx, 0x13
xor rcx, rax
mov rax, rdi
shr rax, 6
xor rcx, rax
mov rax, rdx
ror rax, 1
xor rbp, rax
mov rax, rdx
shr rax, 7
mov rdx, r14
xor rbp, rax
rol rdx, 0x17
lea rax, [rcx + r13]
mov rcx, r8
add rbp, rax
mov rax, r14
add rbp, qword [rsp + 0x28]
ror rax, 0x12
xor rdx, rax
mov qword [rsp + 0x80], rbp
mov rax, r14
ror rax, 0xe
xor rax, rdx
xor rcx, r9
add rax, rbp
and rcx, r14
xor rcx, r8
mov rdi, r12
add rcx, rax
or rdi, r11
and rdi, rbx
movabs rdx, 0xd69906245565a910
add rdx, rcx
mov rax, rbx
ror rax, 0x1c
add rdx, r15
add r10, rdx
mov rcx, rbx
rol rcx, 0x1e
mov r13, rsi
xor rcx, rax
ror r13, 0x13
mov rax, rbx
rol rax, 0x19
xor rcx, rax
mov rax, r12
and rax, r11
or rdi, rax
lea rax, [rdx + rcx]
mov rdx, qword [rsp + 0x60]
add rdi, rax
mov rcx, rdx
ror rcx, 8
mov rax, rdx
ror rax, 1
xor rcx, rax
mov rax, rdx
shr rax, 7
mov rdx, r10
xor rcx, rax
rol rdx, 0x17
mov rax, rsi
rol rax, 3
xor r13, rax
mov rax, rsi
shr rax, 6
xor r13, rax
mov rax, qword [rsp + 0x68]
add rax, rcx
mov rcx, r14
add r13, rax
xor rcx, r9
add r13, qword [rsp + 8]
and rcx, r10
xor rcx, r9
mov qword [rsp + 0x40], r13
mov rax, r10
ror rax, 0x12
xor rdx, rax
mov rax, r10
ror rax, 0xe
xor rax, rdx
movabs rdx, 0xf40e35855771202a
add rax, r8
mov r8, r11
add rcx, rax
or r8, rbx
add rdx, rcx
and r8, rdi
add rdx, r13
mov rcx, rdi
rol rcx, 0x1e
mov rax, rdi
ror rax, 0x1c
add r12, rdx
xor rcx, rax
mov rax, rdi
rol rax, 0x19
xor rcx, rax
mov rax, r11
and rax, rbx
or r8, rax
lea rax, [rdx + rcx]
mov rcx, rbp
add r8, rax
mov rsi, qword [rsp + 0x58]
mov rax, rbp
mov r15, qword [rsp + 0x48]
mov rdx, r12
rol rax, 3
ror rcx, 0x13
xor rcx, rax
rol rdx, 0x17
mov rax, rbp
mov rbp, rsi
shr rax, 6
xor rcx, rax
ror rbp, 8
mov rax, rsi
ror rax, 1
xor rbp, rax
mov rax, rsi
shr rax, 7
xor rbp, rax
lea rax, [r15 + rcx]
add rbp, rax
mov rcx, r14
add rbp, qword [rsp + 0x60]
xor rcx, r10
and rcx, r12
mov qword [rsp + 0x48], rbp
xor rcx, r14
mov rax, r12
ror rax, 0x12
xor rdx, rax
mov rax, r12
ror rax, 0xe
xor rax, rdx
movabs rdx, 0x106aa07032bbd1b8
add rax, r9
mov r9, rbx
add rcx, rax
or r9, rdi
add rdx, rcx
and r9, r8
add rdx, rbp
mov rcx, r8
rol rcx, 0x1e
add r11, rdx
mov rax, r8
ror rax, 0x1c
xor rcx, rax
mov rax, r8
rol rax, 0x19
xor rcx, rax
mov rax, rbx
and rax, rdi
or r9, rax
lea rax, [rdx + rcx]
mov rdx, qword [rsp + 0x78]
add r9, rax
mov rcx, r13
mov rax, r13
ror rcx, 0x13
rol rax, 3
xor rcx, rax
mov rax, r13
shr rax, 6
mov r13, rdx
xor rcx, rax
ror r13, 8
mov rax, rdx
ror rax, 1
xor r13, rax
mov rax, rdx
shr rax, 7
mov rdx, r11
xor r13, rax
rol rdx, 0x17
lea rax, [rsi + rcx]
add r13, rax
mov rax, r11
add r13, qword [rsp + 0x38]
ror rax, 0x12
xor rdx, rax
mov qword [rsp + 8], r13
mov rcx, r10
mov rsi, rdi
xor rcx, r12
or rsi, r8
and rcx, r11
and rsi, r9
xor rcx, r10
mov rax, r11
ror rax, 0xe
xor rax, rdx
movabs rdx, 0x19a4c116b8d2d0c8
add rax, r13
add rcx, rax
mov rax, r9
ror rax, 0x1c
add rdx, rcx
add rdx, r14
mov rcx, r9
rol rcx, 0x1e
add rbx, rdx
xor rcx, rax
mov r14, rbp
ror r14, 0x13
mov rax, r9
rol rax, 0x19
xor rcx, rax
mov rax, rdi
and rax, r8
or rsi, rax
lea rax, [rdx + rcx]
mov rdx, qword [rsp + 0x18]
add rsi, rax
mov rcx, rdx
ror rcx, 8
mov rax, rdx
ror rax, 1
xor rcx, rax
mov rax, rdx
shr rax, 7
mov rdx, rbx
xor rcx, rax
rol rdx, 0x17
mov rax, rbp
rol rax, 3
xor r14, rax
mov rax, rbp
mov rbp, qword [rsp + 0x88]
shr rax, 6
xor r14, rax
lea rax, [rcx + rbp]
mov rcx, r12
add r14, rax
xor rcx, r11
add r14, qword [rsp + 0x78]
and rcx, rbx
xor rcx, r12
mov qword [rsp + 0x70], r14
mov rax, rbx
ror rax, 0x12
xor rdx, rax
mov rax, rbx
ror rax, 0xe
xor rax, rdx
movabs rdx, 0x1e376c085141ab53
add rax, r10
mov r10, r8
add rcx, rax
or r10, r9
add rdx, rcx
mov rax, rsi
ror rax, 0x1c
add rdx, r14
mov rcx, rsi
add rdi, rdx
rol rcx, 0x1e
xor rcx, rax
mov rax, rsi
rol rax, 0x19
xor rcx, rax
mov rax, r8
and r10, rsi
and rax, r9
or r10, rax
lea rax, [rdx + rcx]
mov rdx, qword [rsp]
add r10, rax
mov r14, rdx
mov rax, r13
rol rax, 3
mov rcx, r13
ror rcx, 0x13
xor rcx, rax
ror r14, 8
mov rax, r13
mov r13, qword [rsp + 0x90]
shr rax, 6
xor rcx, rax
mov rax, rdx
ror rax, 1
xor r14, rax
mov rax, rdx
shr rax, 7
mov rdx, rdi
xor r14, rax
rol rdx, 0x17
lea rax, [rcx + r13]
mov rcx, r11
add r14, rax
xor rcx, rbx
add r14, qword [rsp + 0x18]
and rcx, rdi
xor rcx, r11
mov qword [rsp + 0x78], r14
mov rax, rdi
ror rax, 0x12
xor rdx, rax
mov rax, rdi
ror rax, 0xe
xor rax, rdx
movabs rdx, 0x2748774cdf8eeb99
add rax, r14
mov r14, rsi
add rcx, rax
or r14, r9
add rdx, rcx
and r14, r10
add rdx, r12
mov rcx, r10
rol rcx, 0x1e
add r8, rdx
mov rax, r10
ror rax, 0x1c
xor rcx, rax
mov rax, r10
rol rax, 0x19
xor rcx, rax
mov rax, rsi
and rax, r9
or r14, rax
lea rax, [rdx + rcx]
mov rdx, qword [rsp + 0x50]
add r14, rax
mov rcx, rdx
ror rcx, 8
mov rax, rdx
ror rax, 1
xor rcx, rax
mov rax, rdx
mov rdx, qword [rsp + 0x70]
shr rax, 7
mov r12, rdx
xor rcx, rax
ror r12, 0x13
mov rax, rdx
rol rax, 3
xor r12, rax
mov rax, rdx
shr rax, 6
xor r12, rax
mov qword [rsp + 0x20], r12
mov r12, qword [rsp + 0x10]
lea rax, [r12 + rcx]
mov rcx, qword [rsp + 0x20]
mov rdx, r8
add rcx, rax
rol rdx, 0x17
add rcx, qword [rsp]
mov rax, r8
ror rax, 0x12
xor rdx, rax
mov qword [rsp + 0x20], rcx
mov rax, r8
mov rcx, rbx
ror rax, 0xe
xor rcx, rdi
xor rax, rdx
and rcx, r8
add rax, r11
xor rcx, rbx
add rcx, rax
mov r11, rsi
or r11, r10
movabs rdx, 0x34b0bcb5e19b48a8
add rdx, rcx
and r11, r14
add rdx, qword [rsp + 0x20]
mov rcx, r14
add r9, rdx
rol rcx, 0x1e
mov rax, r14
ror rax, 0x1c
xor rcx, rax
mov rax, r14
rol rax, 0x19
xor rcx, rax
mov rax, rsi
and rax, r10
or r11, rax
lea rax, [rdx + rcx]
mov rdx, qword [rsp + 0x78]
add r11, rax
mov rcx, rdx
mov rax, rdx
ror rcx, 0x13
rol rax, 3
xor rcx, rax
mov rax, rdx
mov rdx, qword [rsp + 0x30]
shr rax, 6
xor rcx, rax
mov rax, rdx
ror rax, 8
mov qword [rsp], rax
mov rax, rdx
ror rax, 1
xor qword [rsp], rax
mov rax, rdx
mov rdx, qword [rsp]
shr rax, 7
xor rdx, rax
mov rax, qword [rsp + 0x80]
add rax, rcx
mov rcx, rdi
add rdx, rax
xor rcx, r8
add rdx, qword [rsp + 0x50]
and rcx, r9
mov qword [rsp], rdx
xor rcx, rdi
mov rdx, r9
mov rax, r9
ror rax, 0x12
rol rdx, 0x17
xor rdx, rax
mov rax, r9
ror rax, 0xe
xor rax, rdx
movabs rdx, 0x391c0cb3c5c95a63
add rax, rbx
add rcx, rax
add rdx, rcx
add rdx, qword [rsp]
add rsi, rdx
mov rbx, r10
mov rcx, r11
rol rcx, 0x1e
or rbx, r14
and rbx, r11
mov rax, r11
ror rax, 0x1c
xor rcx, rax
mov rax, r11
rol rax, 0x19
xor rcx, rax
mov rax, r10
and rax, r14
or rbx, rax
lea rax, [rdx + rcx]
mov rdx, qword [rsp + 0x20]
add rbx, rax
mov rcx, rdx
ror rcx, 0x13
mov rax, rdx
rol rax, 3
xor rcx, rax
mov rax, rdx
mov rdx, qword [rsp + 0x28]
shr rax, 6
xor rcx, rax
mov rax, rdx
ror rax, 8
mov qword [rsp + 0x18], rax
mov rax, rdx
ror rax, 1
xor qword [rsp + 0x18], rax
mov rax, rdx
mov rdx, qword [rsp + 0x18]
shr rax, 7
xor rdx, rax
mov rax, qword [rsp + 0x40]
add rax, rcx
mov rcx, r8
add rdx, rax
xor rcx, r9
add rdx, qword [rsp + 0x30]
and rcx, rsi
xor rcx, r8
mov qword [rsp + 0x18], rdx
mov rdx, rsi
mov rax, rsi
ror rax, 0x12
rol rdx, 0x17
xor rdx, rax
mov rax, rsi
ror rax, 0xe
xor rax, rdx
movabs rdx, 0x4ed8aa4ae3418acb
add rax, rdi
mov rdi, r14
add rcx, rax
or rdi, r11
add rdx, rcx
and rdi, rbx
add rdx, qword [rsp + 0x18]
mov rcx, rbx
rol rcx, 0x1e
add r10, rdx
mov rax, rbx
ror rax, 0x1c
xor rcx, rax
mov rax, rbx
rol rax, 0x19
xor rcx, rax
mov rax, r14
and rax, r11
or rdi, rax
lea rax, [rdx + rcx]
mov rdx, qword [rsp + 0x68]
add rdi, rax
mov rcx, rdx
mov rax, rdx
ror rcx, 8
ror rax, 1
xor rcx, rax
mov rax, rdx
mov rdx, qword [rsp]
shr rax, 7
xor rcx, rax
mov rax, rdx
ror rax, 0x13
mov qword [rsp + 0x10], rax
mov rax, rdx
rol rax, 3
xor qword [rsp + 0x10], rax
mov rax, rdx
mov rdx, qword [rsp + 0x10]
shr rax, 6
xor rdx, rax
mov rax, qword [rsp + 0x48]
add rax, rcx
mov rcx, rsi
add rdx, rax
xor rcx, r9
add rdx, qword [rsp + 0x28]
and rcx, r10
mov qword [rsp + 0x10], rdx
xor rcx, r9
mov rdx, r10
mov rax, r10
ror rax, 0x12
rol rdx, 0x17
xor rdx, rax
mov rax, r10
ror rax, 0xe
xor rax, rdx
movabs rdx, 0x5b9cca4f7763e373
add rax, r8
mov r8, r11
add rcx, rax
or r8, rbx
add rdx, rcx
and r8, rdi
add rdx, qword [rsp + 0x10]
mov rcx, rdi
add r14, rdx
rol rcx, 0x1e
mov rax, rdi
ror rax, 0x1c
xor rcx, rax
mov rax, rdi
rol rax, 0x19
xor rcx, rax
mov rax, r11
and rax, rbx
or r8, rax
lea rax, [rdx + rcx]
mov rcx, r15
add r8, rax
ror rcx, 8
mov rax, r15
ror rax, 1
xor rcx, rax
mov rax, r15
shr rax, 7
xor rcx, rax
mov rax, qword [rsp + 0x18]
mov rdx, rax
rol rax, 3
ror rdx, 0x13
xor rdx, rax
mov rax, qword [rsp + 0x18]
shr rax, 6
xor rdx, rax
mov rax, qword [rsp + 8]
add rax, rcx
add rdx, rax
mov rax, r14
add rdx, qword [rsp + 0x68]
mov qword [rsp + 0x28], rdx
mov rdx, r14
ror rax, 0x12
rol rdx, 0x17
xor rdx, rax
mov rax, r14
ror rax, 0xe
xor rax, rdx
mov rcx, rsi
add rax, r9
mov rdx, qword [rsp + 0x28]
xor rcx, r10
mov r9, rbx
and rcx, r14
or r9, rdi
xor rcx, rsi
and r9, r8
add rcx, rax
movabs rax, 0x682e6ff3d6b2b8a3
add rax, rcx
mov rcx, r8
add rdx, rax
rol rcx, 0x1e
add r11, rdx
mov rax, r8
ror rax, 0x1c
xor rcx, rax
mov rax, r8
rol rax, 0x19
xor rcx, rax
mov rax, rbx
and rax, rdi
or r9, rax
lea rax, [rdx + rcx]
mov rdx, qword [rsp + 0x38]
add r9, rax
mov rcx, rdx
mov rax, rdx
ror rcx, 8
ror rax, 1
xor rcx, rax
mov rax, rdx
shr rax, 7
xor rcx, rax
mov rax, qword [rsp + 0x10]
mov rdx, rax
rol rax, 3
ror rdx, 0x13
xor rdx, rax
mov rax, qword [rsp + 0x10]
shr rax, 6
xor rdx, rax
lea rax, [r15 + rcx]
add rdx, rax
mov rcx, r10
add rdx, qword [rsp + 0x70]
xor rcx, r14
mov qword [rsp + 0x68], rdx
and rcx, r11
mov r15, qword [rsp + 0x68]
xor rcx, r10
mov rdx, r11
mov rax, r11
ror rax, 0x12
rol rdx, 0x17
xor rdx, rax
mov rax, r11
ror rax, 0xe
xor rax, rdx
movabs rdx, 0x748f82ee5defb2fc
add rax, rsi
mov rsi, rdi
add rcx, rax
or rsi, r8
add rdx, rcx
mov rax, r9
ror rax, 0x1c
add rdx, r15
mov rcx, r9
add rbx, rdx
rol rcx, 0x1e
and rsi, r9
xor rcx, rax
mov rax, r9
rol rax, 0x19
xor rcx, rax
mov rax, rdi
and rax, r8
or rsi, rax
lea rax, [rdx + rcx]
mov rdx, qword [rsp + 0x28]
add rsi, rax
mov rcx, rdx
mov rax, rdx
rol rax, 3
ror rcx, 0x13
xor rcx, rax
mov rax, rdx
shr rax, 6
mov rdx, rbp
xor rcx, rax
ror rdx, 8
mov rax, rbp
ror rax, 1
xor rdx, rax
mov rax, rbp
shr rax, 7
xor rdx, rax
mov rax, qword [rsp + 0x78]
add rax, rcx
mov rcx, r14
add rdx, rax
xor rcx, r11
add rdx, qword [rsp + 0x38]
and rcx, rbx
mov qword [rsp + 0x30], rdx
xor rcx, r14
mov rdx, rbx
mov rax, rbx
ror rax, 0x12
rol rdx, 0x17
xor rdx, rax
mov rax, rbx
ror rax, 0xe
xor rax, rdx
movabs rdx, 0x78a5636f43172f60
add rax, r10
mov r10, r8
add rcx, rax
or r10, r9
add rdx, rcx
and r10, rsi
add rdx, qword [rsp + 0x30]
mov rcx, rsi
add rdi, rdx
rol rcx, 0x1e
mov rax, rsi
ror rax, 0x1c
xor rcx, rax
mov rax, rsi
rol rax, 0x19
xor rcx, rax
mov rax, r8
and rax, r9
or r10, rax
lea rax, [rdx + rcx]
mov rcx, r13
add r10, rax
ror rcx, 8
mov rax, r13
mov rdx, r15
ror rax, 1
xor rcx, rax
ror rdx, 0x13
mov rax, r13
shr rax, 7
xor rcx, rax
mov rax, r15
rol rax, 3
xor rdx, rax
mov rax, r15
shr rax, 6
xor rdx, rax
lea rax, [rcx + rbp]
add rdx, rax
add rdx, qword [rsp + 0x20]
mov qword [rsp + 0x50], rdx
mov rdx, rdi
rol rdx, 0x17
mov rax, rdi
mov rcx, r11
ror rax, 0x12
xor rcx, rbx
xor rdx, rax
and rcx, rdi
xor rcx, r11
mov rax, rdi
ror rax, 0xe
mov rbp, r12
xor rax, rdx
ror rbp, 8
add rax, r14
movabs rdx, 0x84c87814a1f0ab72
add rcx, rax
mov r14, rsi
add rdx, rcx
or r14, r9
add rdx, qword [rsp + 0x50]
and r14, r10
add r8, rdx
mov rcx, r10
rol rcx, 0x1e
mov rax, r10
ror rax, 0x1c
mov r15, rsi
xor rcx, rax
mov rax, r10
rol rax, 0x19
xor rcx, rax
mov rax, rsi
and rax, r9
or r14, rax
lea rax, [rdx + rcx]
mov rdx, qword [rsp + 0x30]
add r14, rax
mov rcx, rdx
ror rcx, 0x13
mov rax, rdx
rol rax, 3
xor rcx, rax
mov rax, rdx
shr rax, 6
mov rdx, r8
xor rcx, rax
rol rdx, 0x17
mov rax, r12
ror rax, 1
xor rbp, rax
mov rax, r12
shr rax, 7
xor rbp, rax
lea rax, [rcx + r13]
add rbp, rax
mov rcx, rbx
add rbp, qword [rsp]
xor rcx, rdi
and rcx, r8
mov qword [rsp + 0x58], rbp
xor rcx, rbx
mov rax, r8
ror rax, 0x12
xor rdx, rax
mov rax, r8
ror rax, 0xe
xor rax, rdx
movabs rdx, 0x8cc702081a6439ec
add rax, r11
add rcx, rax
mov rax, r14
add rdx, rcx
ror rax, 0x1c
add rdx, rbp
mov rcx, r14
rol rcx, 0x1e
add r9, rdx
xor rcx, rax
mov rax, r14
rol rax, 0x19
xor rcx, rax
or r15, r10
mov r11, qword [rsp + 0x80]
and r15, r14
mov rax, rsi
and rax, r10
or r15, rax
lea rax, [rdx + rcx]
mov rdx, qword [rsp + 0x50]
add r15, rax
mov rbp, rdx
mov rax, r11
ror rax, 1
mov rcx, r11
ror rcx, 8
xor rcx, rax
ror rbp, 0x13
mov rax, r11
shr rax, 7
xor rcx, rax
mov rax, rdx
rol rax, 3
xor rbp, rax
mov rax, rdx
shr rax, 6
mov rdx, r9
xor rbp, rax
rol rdx, 0x17
lea rax, [r12 + rcx]
mov rcx, rdi
add rbp, rax
xor rcx, r8
add rbp, qword [rsp + 0x18]
and rcx, r9
xor rcx, rdi
mov qword [rsp + 0x80], rbp
mov rax, r9
mov r12, r10
ror rax, 0x12
or r12, r14
xor rdx, rax
and r12, r15
mov rax, r9
ror rax, 0xe
xor rax, rdx
movabs rdx, 0x90befffa23631e28
add rax, rbx
mov rbx, qword [rsp + 0x40]
add rcx, rax
mov rax, r15
ror rax, 0x1c
add rdx, rcx
add rdx, rbp
mov rcx, r15
rol rcx, 0x1e
add rsi, rdx
xor rcx, rax
mov rax, r15
rol rax, 0x19
xor rcx, rax
mov rax, r10
and rax, r14
or r12, rax
lea rax, [rdx + rcx]
mov rdx, qword [rsp + 0x58]
add r12, rax
mov rcx, rbx
ror rcx, 8
mov rax, rbx
ror rax, 1
mov r13, rdx
xor rcx, rax
ror r13, 0x13
mov rax, rbx
shr rax, 7
xor rcx, rax
mov rax, rdx
rol rax, 3
xor r13, rax
mov rax, rdx
shr rax, 6
xor r13, rax
lea rax, [r11 + rcx]
mov r11, qword [rsp + 0x48]
add r13, rax
add r13, qword [rsp + 0x10]
mov rax, rsi
ror rax, 0x12
mov rdx, rsi
rol rdx, 0x17
mov rcx, r8
xor rdx, rax
mov qword [rsp + 0x40], r13
xor rcx, r9
mov rax, rsi
ror rax, 0xe
and rcx, rsi
xor rax, rdx
xor rcx, r8
add rax, rdi
movabs rdx, 0xa4506cebde82bde9
add rcx, rax
mov rdi, r14
add rdx, rcx
or rdi, r15
add rdx, r13
and rdi, r12
add r10, rdx
mov rcx, r12
rol rcx, 0x1e
mov rax, r12
ror rax, 0x1c
xor rcx, rax
mov rax, r12
rol rax, 0x19
xor rcx, rax
mov rax, r14
and rax, r15
or rdi, rax
lea rax, [rdx + rcx]
mov rcx, rbp
add rdi, rax
ror rcx, 0x13
mov rax, rbp
mov rdx, r10
rol rax, 3
xor rcx, rax
rol rdx, 0x17
mov rax, rbp
mov rbp, r11
shr rax, 6
xor rcx, rax
ror rbp, 8
mov rax, r11
ror rax, 1
xor rbp, rax
mov rax, r11
shr rax, 7
xor rbp, rax
lea rax, [rbx + rcx]
add rbp, rax
mov rcx, rsi
add rbp, qword [rsp + 0x28]
xor rcx, r9
and rcx, r10
mov qword [rsp + 0x60], rbp
xor rcx, r9
mov rax, r10
ror rax, 0x12
xor rdx, rax
mov rax, r10
ror rax, 0xe
xor rax, rdx
movabs rdx, 0xbef9a3f7b2c67915
add rax, r8
add rcx, rax
mov rax, rdi
add rdx, rcx
ror rax, 0x1c
add rdx, rbp
mov rcx, rdi
add r14, rdx
rol rcx, 0x1e
xor rcx, rax
mov r8, qword [rsp + 8]
mov r13, r15
or r13, r12
mov rax, rdi
rol rax, 0x19
and r13, rdi
xor rcx, rax
mov rbx, r8
ror rbx, 8
mov rax, r15
and rax, r12
mov rbp, r12
or r13, rax
or rbp, rdi
lea rax, [rdx + rcx]
mov rdx, qword [rsp + 0x40]
add r13, rax
mov rcx, rdx
ror rcx, 0x13
mov rax, rdx
rol rax, 3
and rbp, r13
xor rcx, rax
mov rax, rdx
shr rax, 6
mov rdx, r14
xor rcx, rax
rol rdx, 0x17
mov rax, r8
ror rax, 1
xor rbx, rax
mov rax, r8
shr rax, 7
xor rbx, rax
lea rax, [r11 + rcx]
add rbx, rax
mov rcx, rsi
add rbx, qword [rsp + 0x68]
xor rcx, r10
and rcx, r14
mov qword [rsp + 0x88], rbx
xor rcx, rsi
mov rax, r14
ror rax, 0x12
xor rdx, rax
mov rax, r14
ror rax, 0xe
xor rax, rdx
movabs rdx, 0xc67178f2e372532b
add rax, r9
add rcx, rax
mov rax, r13
ror rax, 0x1c
add rdx, rcx
add rdx, rbx
mov rcx, r13
mov rbx, qword [rsp + 0x70]
add r15, rdx
rol rcx, 0x1e
mov r11, rbx
xor rcx, rax
ror r11, 8
mov rax, r13
rol rax, 0x19
xor rcx, rax
mov rax, r12
and rax, rdi
or rbp, rax
lea rax, [rdx + rcx]
mov rdx, qword [rsp + 0x60]
add rbp, rax
mov rcx, rdx
ror rcx, 0x13
mov rax, rdx
rol rax, 3
xor rcx, rax
mov rax, rdx
shr rax, 6
xor rcx, rax
mov rax, rbx
ror rax, 1
xor r11, rax
mov rdx, r15
rol rdx, 0x17
mov rax, rbx
shr rax, 7
xor r11, rax
lea rax, [r8 + rcx]
add r11, rax
mov rcx, r10
add r11, qword [rsp + 0x30]
xor rcx, r14
and rcx, r15
mov qword [rsp + 0x90], r11
xor rcx, r10
mov rax, r15
ror rax, 0x12
xor rdx, rax
mov rax, r15
ror rax, 0xe
xor rax, rdx
movabs rdx, 0xca273eceea26619c
add rax, rsi
mov rsi, rdi
add rcx, rax
or rsi, r13
add rdx, rcx
and rsi, rbp
add rdx, r11
mov rcx, rbp
rol rcx, 0x1e
add r12, rdx
mov rax, rbp
ror rax, 0x1c
xor rcx, rax
mov rax, rbp
rol rax, 0x19
xor rcx, rax
mov rax, rdi
and rax, r13
or rsi, rax
lea rax, [rdx + rcx]
mov rdx, qword [rsp + 0x88]
add rsi, rax
mov rcx, rdx
mov rax, rdx
ror rcx, 0x13
rol rax, 3
xor rcx, rax
mov rax, rdx
mov rdx, qword [rsp + 0x78]
shr rax, 6
mov r9, rdx
xor rcx, rax
ror r9, 8
mov rax, rdx
ror rax, 1
xor r9, rax
mov rax, rdx
shr rax, 7
mov rdx, r12
xor r9, rax
rol rdx, 0x17
lea rax, [rbx + rcx]
mov rcx, r14
add r9, rax
xor rcx, r15
add r9, qword [rsp + 0x50]
and rcx, r12
xor rcx, r14
mov rax, r12
ror rax, 0x12
xor rdx, rax
mov rax, r12
ror rax, 0xe
xor rax, rdx
movabs rdx, 0xd186b8c721c0c207
add rax, r10
add rcx, rax
add rdx, rcx
add rdx, r9
add rdi, rdx
mov rbx, qword [rsp + 0x20]
mov r10, r13
or r10, rbp
mov rcx, rsi
rol rcx, 0x1e
and r10, rsi
mov rax, rsi
mov r8, r11
ror rax, 0x1c
xor rcx, rax
ror r8, 0x13
mov rax, rsi
rol rax, 0x19
xor rcx, rax
mov rax, r13
and rax, rbp
or r10, rax
lea rax, [rdx + rcx]
mov rcx, rbx
add r10, rax
ror rcx, 8
mov rax, rbx
mov qword [rsp + 0x70], r10
ror rax, 1
mov rdx, rdi
xor rcx, rax
rol rdx, 0x17
mov rax, rbx
shr rax, 7
xor rcx, rax
mov rax, r11
rol rax, 3
xor r8, rax
mov rax, r11
shr rax, 6
xor r8, rax
mov rax, qword [rsp + 0x78]
add rax, rcx
mov rcx, r15
add r8, rax
xor rcx, r12
add r8, qword [rsp + 0x58]
and rcx, rdi
xor rcx, r15
mov rax, rdi
ror rax, 0x12
xor rdx, rax
mov rax, rdi
ror rax, 0xe
xor rax, rdx
movabs rdx, 0xeada7dd6cde0eb1e
add rax, r14
mov r14, rsi
add rcx, rax
or r14, rbp
add rdx, rcx
and r14, r10
add rdx, r8
mov rcx, r10
rol rcx, 0x1e
add r13, rdx
mov rax, r10
ror rax, 0x1c
xor rcx, rax
mov rax, r10
rol rax, 0x19
xor rcx, rax
mov rax, rsi
and rax, rbp
or r14, rax
lea rax, [rdx + rcx]
mov rdx, qword [rsp]
add r14, rax
mov rcx, rdx
ror rcx, 8
mov rax, rdx
ror rax, 1
xor rcx, rax
mov qword [rsp + 0x38], r14
mov rax, rdx
shr rax, 7
xor rcx, rax
mov r11, r9
ror r11, 0x13
mov rax, r9
rol rax, 3
mov rdx, r13
xor r11, rax
rol rdx, 0x17
mov rax, r9
shr rax, 6
xor r11, rax
mov rax, qword [rsp + 0x80]
add rax, rcx
mov rcx, r12
add r11, rax
xor rcx, rdi
and rcx, r13
add r11, rbx
xor rcx, r12
mov rax, r13
ror rax, 0x12
xor rdx, rax
mov rax, r13
ror rax, 0xe
xor rax, rdx
movabs rdx, 0xf57d4f7fee6ed178
add rax, r15
mov r15, rsi
add rcx, rax
or r15, r10
add rdx, rcx
and r15, r14
add rdx, r11
mov rcx, r14
rol rcx, 0x1e
add rbp, rdx
mov rax, r14
mov qword [rsp + 0x48], rbp
ror rax, 0x1c
xor rcx, rax
mov rax, r14
rol rax, 0x19
xor rcx, rax
mov rax, rsi
and rax, r10
or r15, rax
lea rax, [rdx + rcx]
mov rdx, qword [rsp + 0x18]
add r15, rax
mov rbx, rdx
ror rbx, 8
mov rax, r8
rol rax, 3
mov rcx, r8
ror rcx, 0x13
xor rcx, rax
mov qword [rsp + 0x20], r15
mov rax, r8
shr rax, 6
xor rcx, rax
mov rax, rdx
ror rax, 1
xor rbx, rax
mov rax, rdx
shr rax, 7
mov rdx, rbp
xor rbx, rax
rol rdx, 0x17
mov rax, qword [rsp + 0x40]
add rax, rcx
mov rcx, rdi
add rbx, rax
xor rcx, r13
add rbx, qword [rsp]
mov rax, rbp
ror rax, 0x12
xor rdx, rax
mov rax, rbp
ror rax, 0xe
xor rax, rdx
and rcx, rbp
add rax, r12
xor rcx, rdi
add rcx, rax
mov r12, r10
or r12, r14
mov rax, r15
ror rax, 0x1c
and r12, r15
movabs rdx, 0x6f067aa72176fba
add rdx, rcx
mov rcx, r15
rol rcx, 0x1e
add rdx, rbx
xor rcx, rax
add rsi, rdx
mov rax, r15
mov r15, qword [rsp + 0x70]
rol rax, 0x19
xor rcx, rax
mov rax, r10
mov r10, qword [rsp + 0x48]
and rax, r14
or r12, rax
lea rax, [rdx + rcx]
mov rdx, qword [rsp + 0x10]
add r12, rax
mov rbp, rdx
ror rbp, 8
mov rax, r11
rol rax, 3
mov rcx, r11
ror rcx, 0x13
xor rcx, rax
mov qword [rsp + 8], r12
mov rax, r11
shr rax, 6
xor rcx, rax
mov rax, rdx
ror rax, 1
xor rbp, rax
mov rax, rdx
shr rax, 7
mov rdx, rsi
xor rbp, rax
rol rdx, 0x17
mov rax, qword [rsp + 0x60]
add rax, rcx
mov rcx, r13
add rbp, rax
xor rcx, r10
add rbp, qword [rsp + 0x18]
and rcx, rsi
xor rcx, r13
mov rax, rsi
ror rax, 0x12
xor rdx, rax
mov rax, rsi
ror rax, 0xe
xor rax, rdx
movabs rdx, 0xa637dc5a2c898a6
add rax, rdi
mov rdi, qword [rsp + 0x20]
add rcx, rax
mov rax, r12
add rdx, rcx
ror rax, 0x1c
mov rcx, r12
add rdx, rbp
rol rcx, 0x1e
add r15, rdx
xor rcx, rax
mov qword [rsp + 0x70], r15
mov rax, r12
mov r12, r14
rol rax, 0x19
or r12, rdi
and r12, qword [rsp + 8]
xor rcx, rax
mov rax, r14
and rax, rdi
or r12, rax
or rdi, qword [rsp + 8]
lea rax, [rdx + rcx]
add r12, rax
mov rdx, qword [rsp + 0x28]
mov r14, rdx
mov qword [rsp], r12
and rdi, r12
ror r14, 8
mov rax, rbx
mov rcx, rbx
rol rax, 3
ror rcx, 0x13
xor rcx, rax
mov rax, rbx
shr rax, 6
xor rcx, rax
mov rax, rdx
ror rax, 1
xor r14, rax
mov rax, rdx
shr rax, 7
mov rdx, r15
xor r14, rax
rol rdx, 0x17
mov rax, qword [rsp + 0x88]
add rax, rcx
mov rcx, rsi
add r14, rax
xor rcx, r10
add r14, qword [rsp + 0x10]
and rcx, r15
xor rcx, r10
mov rax, r15
ror rax, 0x12
xor rdx, rax
mov rax, r15
ror rax, 0xe
xor rax, rdx
movabs rdx, 0x113f9804bef90dae
add rax, r13
mov r13, qword [rsp + 0x38]
add rcx, rax
mov rax, r12
ror rax, 0x1c
add rdx, rcx
mov rcx, r12
add rdx, r14
rol rcx, 0x1e
add r13, rdx
xor rcx, rax
mov qword [rsp + 0x38], r13
mov rax, r12
rol rax, 0x19
xor rcx, rax
mov rax, qword [rsp + 0x20]
and rax, qword [rsp + 8]
or rdi, rax
lea rax, [rdx + rcx]
mov rdx, qword [rsp + 0x68]
add rdi, rax
mov r12, rdx
ror r12, 8
mov rax, rbp
rol rax, 3
mov rcx, rbp
ror rcx, 0x13
xor rcx, rax
mov rax, rbp
shr rax, 6
xor rcx, rax
mov rax, rdx
ror rax, 1
xor r12, rax
mov rax, rdx
shr rax, 7
mov rdx, r13
xor r12, rax
mov rax, qword [rsp + 0x28]
add rax, rcx
add r12, rax
add r12, qword [rsp + 0x90]
rol rdx, 0x17
mov rax, r13
ror rax, 0x12
mov rcx, rsi
xor rdx, rax
xor rcx, r15
and rcx, r13
mov rax, r13
ror rax, 0xe
xor rcx, rsi
xor rax, rdx
movabs rdx, 0x1b710b35131c471b
add rax, r10
add rcx, rax
mov rax, rdi
ror rax, 0x1c
add rdx, rcx
add rdx, r12
mov rcx, rdi
add qword [rsp + 0x20], rdx
rol rcx, 0x1e
xor rcx, rax
mov rax, rdi
rol rax, 0x19
xor rcx, rax
mov rax, qword [rsp + 8]
mov r10, rax
and rax, qword [rsp]
or r10, qword [rsp]
and r10, rdi
or r10, rax
lea rax, [rdx + rcx]
mov rdx, qword [rsp + 0x30]
add r10, rax
mov r13, rdx
mov qword [rsp + 0x28], r10
ror r13, 8
mov rax, r14
rol rax, 3
mov rcx, r14
ror rcx, 0x13
xor rcx, rax
mov rax, r14
shr rax, 6
xor rcx, rax
mov rax, rdx
ror rax, 1
xor r13, rax
mov rax, rdx
shr rax, 7
xor r13, rax
mov rax, qword [rsp + 0x68]
add rax, rcx
mov rcx, r15
xor rcx, qword [rsp + 0x38]
add r13, rax
add r13, r9
mov r9, qword [rsp + 0x20]
and rcx, r9
mov rdx, r9
rol rdx, 0x17
xor rcx, r15
mov rax, r9
ror rax, 0x12
xor rdx, rax
mov rax, r9
ror rax, 0xe
xor rax, rdx
movabs rdx, 0x28db77f523047d84
add rax, rsi
add rcx, rax
mov rax, r10
add rdx, rcx
ror rax, 0x1c
add rdx, r13
mov rcx, r10
add qword [rsp + 8], rdx
rol rcx, 0x1e
xor rcx, rax
mov rax, r10
rol rax, 0x19
xor rcx, rax
mov rsi, qword [rsp]
mov r15, rsi
mov rax, rsi
and rax, rdi
or r15, rdi
and r15, r10
mov r9, r12
or r15, rax
ror r9, 0x13
lea rax, [rdx + rcx]
mov rdx, qword [rsp + 0x50]
add r15, rax
mov rcx, rdx
ror rcx, 8
mov rax, rdx
ror rax, 1
xor rcx, rax
mov rax, rdx
shr rax, 7
xor rcx, rax
mov rax, r12
rol rax, 3
xor r9, rax
mov rax, r12
shr rax, 6
xor r9, rax
lea rax, [r8 + rcx]
mov rcx, qword [rsp + 8]
add r9, rax
mov r8, qword [rsp + 0x38]
mov rdx, rcx
add r9, qword [rsp + 0x30]
mov rax, rcx
ror rax, 0x12
rol rdx, 0x17
xor rdx, rax
mov rax, rcx
ror rax, 0xe
mov rcx, r8
xor rcx, qword [rsp + 0x20]
xor rdx, rax
and rcx, qword [rsp + 8]
mov rax, qword [rsp + 0x70]
xor rcx, r8
add rax, rdx
movabs rdx, 0x32caab7b40c72493
add rcx, rax
mov rax, r15
ror rax, 0x1c
add rdx, rcx
add rdx, r9
mov rcx, r15
add rsi, rdx
rol rcx, 0x1e
xor rcx, rax
mov qword [rsp], rsi
mov rax, r15
mov rsi, rdi
rol rax, 0x19
or rsi, r10
xor rcx, rax
and rsi, r15
mov rax, rdi
and rax, r10
or rsi, rax
lea rax, [rdx + rcx]
mov rdx, qword [rsp + 0x58]
add rsi, rax
mov rcx, r13
ror rcx, 0x13
mov rax, r13
rol rax, 3
mov r10, rdx
xor rcx, rax
ror r10, 8
mov rax, r13
shr rax, 6
xor rcx, rax
mov rax, rdx
ror rax, 1
xor r10, rax
mov rax, rdx
shr rax, 7
xor r10, rax
lea rax, [r11 + rcx]
mov r11, qword [rsp]
add r10, rax
add r10, qword [rsp + 0x50]
mov rdx, r11
mov rcx, qword [rsp + 0x20]
mov rax, r11
xor rcx, qword [rsp + 8]
ror rax, 0x12
and rcx, r11
xor rcx, qword [rsp + 0x20]
rol rdx, 0x17
xor rdx, rax
mov rax, r11
ror rax, 0xe
xor rax, rdx
movabs rdx, 0x3c9ebe0a15c9bebc
add rax, r8
mov r8, r9
add rcx, rax
ror r8, 0x13
add rdx, rcx
mov rax, rsi
ror rax, 0x1c
add rdx, r10
add rdi, rdx
mov rcx, rsi
rol rcx, 0x1e
xor rcx, rax
mov qword [rsp + 0x48], rdi
mov r11, qword [rsp + 0x48]
mov rax, rsi
rol rax, 0x19
mov rdi, r15
or rdi, qword [rsp + 0x28]
xor rcx, rax
and rdi, rsi
mov rax, r15
and rax, qword [rsp + 0x28]
or rdi, rax
lea rax, [rdx + rcx]
mov rdx, qword [rsp + 0x80]
add rdi, rax
mov rcx, rdx
ror rcx, 8
mov rax, rdx
ror rax, 1
xor rcx, rax
mov rax, rdx
shr rax, 7
mov rdx, r11
xor rcx, rax
rol rdx, 0x17
mov rax, r9
shr r9, 6
rol rax, 3
xor r8, rax
lea rax, [rbx + rcx]
xor r8, r9
mov rcx, qword [rsp + 8]
add r8, rax
xor rcx, qword [rsp]
mov rax, r11
add r8, qword [rsp + 0x58]
and rcx, r11
xor rcx, qword [rsp + 8]
ror rax, 0x12
xor rdx, rax
mov rax, r11
ror rax, 0xe
xor rax, rdx
movabs rdx, 0x431d67c49c100d4c
add rax, r8
add rcx, rax
add rdx, rcx
add rdx, qword [rsp + 0x20]
add qword [rsp + 0x28], rdx
mov r9, r10
mov rbx, r15
ror r9, 0x13
or rbx, rsi
and rbx, rdi
mov rcx, rdi
rol rcx, 0x1e
mov rax, rdi
ror rax, 0x1c
xor rcx, rax
mov rax, rdi
rol rax, 0x19
xor rcx, rax
mov rax, r15
and rax, rsi
or rbx, rax
lea rax, [rdx + rcx]
mov rdx, qword [rsp + 0x40]
add rbx, rax
mov rcx, rdx
ror rcx, 8
mov rax, rdx
ror rax, 1
xor rcx, rax
mov rax, rdx
shr rax, 7
xor rcx, rax
mov rax, r10
rol rax, 3
xor r9, rax
shr r10, 6
mov rax, qword [rsp + 0x80]
xor r9, r10
mov r10, qword [rsp + 0x28]
add rax, rcx
mov rcx, qword [rsp]
add r9, rax
xor rcx, r11
add r9, rbp
and rcx, r10
mov rax, r10
xor rcx, qword [rsp]
mov rdx, r10
ror rax, 0x12
mov r11, rsi
rol rdx, 0x17
or r11, rdi
xor rdx, rax
and r11, rbx
mov rax, r10
ror rax, 0xe
xor rax, rdx
movabs rdx, 0x4cc5d4becb3e42b6
add rax, r9
add rcx, rax
mov rax, rbx
add rdx, rcx
ror rax, 0x1c
add rdx, qword [rsp + 8]
mov rcx, rbx
rol rcx, 0x1e
add r15, rdx
xor rcx, rax
mov rax, rbx
rol rax, 0x19
xor rcx, rax
mov rax, rsi
and rax, rdi
or r11, rax
lea rax, [rdx + rcx]
mov rdx, qword [rsp + 0x60]
mov rcx, r8
add r11, rax
mov rax, r8
ror rcx, 0x13
shr r8, 6
rol rax, 3
xor rcx, rax
xor rcx, r8
mov r8, rdx
ror r8, 8
mov rbp, qword [rsp + 0x48]
mov rax, rdx
ror rax, 1
xor r8, rax
mov rax, rdx
shr rax, 7
mov rdx, r15
xor r8, rax
rol rdx, 0x17
lea rax, [r14 + rcx]
mov r14, qword [rsp + 0x88]
add r8, rax
mov rcx, rbp
add r8, qword [rsp + 0x40]
xor rcx, r10
and rcx, r15
mov rax, r15
ror rax, 0x12
xor rcx, rbp
xor rdx, rax
mov r10, rdi
or r10, rbx
mov rax, r15
ror rax, 0xe
and r10, r11
xor rax, rdx
movabs rdx, 0x597f299cfc657e2a
add rax, r8
add rcx, rax
mov rax, r11
add rdx, rcx
ror rax, 0x1c
add rdx, qword [rsp]
mov rcx, r11
rol rcx, 0x1e
add rsi, rdx
xor rcx, rax
mov rax, r11
rol rax, 0x19
xor rcx, rax
mov rax, rdi
and rax, rbx
or r10, rax
lea rax, [rdx + rcx]
mov rcx, r9
add r10, rax
ror rcx, 0x13
mov rax, rsi
mov rdx, rsi
ror rax, 0x12
rol rdx, 0x17
xor rdx, rax
mov rax, rsi
ror rax, 0xe
xor rdx, rax
mov rax, r9
rol rax, 3
xor rcx, rax
shr r9, 6
xor rcx, r9
mov rax, r14
ror rax, 1
add rdx, rcx
mov rcx, r14
ror rcx, 8
xor rcx, rax
mov rax, r14
shr rax, 7
xor rcx, rax
mov rax, r15
add rcx, rbp
mov rbp, qword [rsp + 0x28]
xor rax, rbp
add rcx, rdx
mov rdx, qword [rsp + 0x60]
and rax, rsi
xor rax, rbp
add rax, rcx
movabs rcx, 0x5fcb6fab3ad6faec
add rax, r12
add rax, rcx
add rdx, rax
mov rcx, r10
rol rcx, 0x1e
add rdi, rdx
mov rax, r10
mov r9, rbx
ror rax, 0x1c
or r9, r11
xor rcx, rax
and r9, r10
mov rax, r10
rol rax, 0x19
xor rcx, rax
mov rax, rbx
and rax, r11
or r9, rax
lea rax, [rdx + rcx]
mov rcx, r8
add r9, rax
ror rcx, 0x13
mov rax, rdi
mov rdx, rdi
ror rax, 0x12
rol rdx, 0x17
xor rdx, rax
mov rax, rdi
ror rax, 0xe
xor rdx, rax
mov rax, r8
rol rax, 3
xor rcx, rax
shr r8, 6
xor rcx, r8
mov r8, qword [rsp + 0x90]
add rdx, rcx
mov rax, r8
ror rax, 1
mov rcx, r8
ror rcx, 8
xor rcx, rax
shr r8, 7
xor rcx, r8
mov rax, r9
ror rax, 0x1c
add rcx, rbp
add rcx, rdx
mov r8, r15
xor r8, rsi
mov rdx, r9
and r8, rdi
rol rdx, 0x1e
xor rdx, rax
xor r8, r15
add r8, rcx
mov rax, r9
rol rax, 0x19
add r8, r14
mov r14, qword [rsp + 0x98]
xor rdx, rax
movabs rcx, 0x6c44198c4a475817
mov rax, r11
add r8, rcx
and rax, r10
add r8, r13
mov rcx, r11
add qword [r14 + 8], r9
or rcx, r10
add qword [r14 + 0x10], r10
and rcx, r9
add qword [r14 + 0x18], r11
or rcx, rax
mov rax, qword [r14]
add rax, rdx
add rcx, rax
mov rax, qword [r14 + 0x20]
add rax, r8
add rcx, r8
add rax, rbx
mov qword [r14], rcx
add qword [r14 + 0x28], rdi
mov qword [r14 + 0x20], rax
add qword [r14 + 0x30], rsi
lea r11, [rsp + 0xa0]
add qword [r14 + 0x38], r15
mov rbx, qword [r11 + 0x38]
mov rbp, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret