Function at 0x517dc0
Capabilities:
Encode data using xor
Hash data using murmur3

Disassembly:
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x120
test r8d, r8d
je 0x519d80
vmovdqu xmm0, xmmword [0x0062ff00]
vmovdqu xmm4, xmmword [rdx]
vmovdqu xmm5, xmmword [rdx + 0x10]
vpshufb xmm1, xmm4, xmm0
vmovdqu xmm4, xmmword [rdx + 0x20]
vmovups xmmword [rsp + 0x20], xmm1
vpshufb xmm1, xmm5, xmm0
vmovups xmmword [rsp + 0x30], xmm1
vpshufb xmm1, xmm4, xmm0
vmovups xmmword [rsp + 0x40], xmm1
vmovdqu xmm1, xmmword [rdx + 0x30]
vpshufb xmm0, xmm1, xmm0
vmovups xmmword [rsp + 0x50], xmm0
mov r8d, dword [rsp + 0x5c]
lea rdx, [rsp + 0x20]
mov esi, 0x18
mov edi, dword [rsp + 0x48]
mov ebx, dword [rsp + 0x50]
mov r11d, dword [rsp + 0x58]
mov r10d, dword [rsp + 0x20]
mov ebp, r11d
mov eax, r11d
mov r13d, dword [rdx + 4]
mov r9d, r8d
add r10d, dword [rdx + 0x24]
rol eax, 0xd
rol ebp, 0xf
xor ebp, eax
mov eax, r11d
mov r14d, dword [rdx + 0xc]
shr eax, 0xa
rol r9d, 0xf
mov r12d, dword [rdx + 8]
xor ebp, eax
mov eax, r13d
add r10d, ebp
mov ebp, r13d
ror eax, 7
rol ebp, 0xe
xor eax, ebp
mov ebp, r13d
shr ebp, 3
xor eax, ebp
lea ebp, [r10 + rax]
mov r10d, r8d
shr r8d, 0xa
rol r10d, 0xd
mov eax, r12d
mov dword [rdx + 0x40], ebp
xor r9d, r10d
rol eax, 0xe
xor r8d, r9d
lea r9d, [r8 + rdi]
mov edi, r14d
mov r8d, r14d
ror r8d, 7
rol edi, 0xe
lea r10d, [r9 + r13]
xor edi, r8d
mov r8d, r14d
mov r13d, dword [rdx + 0x10]
shr r8d, 3
mov r9d, r12d
xor edi, r8d
mov r8d, dword [rdx + 0x2c]
ror r9d, 7
xor r9d, eax
mov eax, r12d
shr eax, 3
xor r9d, eax
mov eax, r13d
add r8d, r12d
add r9d, r10d
mov r10d, ebp
mov r12d, dword [rdx + 0x14]
add r8d, edi
mov edi, ebp
rol r10d, 0xf
mov dword [rdx + 0x44], r9d
rol edi, 0xd
xor edi, r10d
mov r10d, ebp
ror eax, 7
shr r10d, 0xa
add ebx, r14d
xor edi, r10d
mov r10d, r13d
rol r10d, 0xe
add edi, r8d
mov r8d, r9d
xor eax, r10d
mov r10d, r13d
rol r8d, 0xf
mov dword [rdx + 0x48], edi
shr r10d, 3
xor eax, r10d
lea r10d, [rax + rbx]
mov eax, r9d
mov ebx, r12d
rol eax, 0xd
ror ebx, 7
xor eax, r8d
mov r8d, r12d
shr r9d, 0xa
rol r8d, 0xe
xor r9d, eax
lea eax, [r10 + r9]
xor ebx, r8d
mov r8d, r12d
shr r8d, 3
mov r9d, edi
mov dword [rdx + 0x4c], eax
xor ebx, r8d
mov r8d, dword [rdx + 0x34]
rol r9d, 0xd
add r8d, r13d
mov r13d, dword [rdx + 0x18]
add r8d, ebx
mov ebx, edi
rol ebx, 0xf
xor ebx, r9d
mov r9d, edi
shr r9d, 0xa
mov r10d, r13d
xor ebx, r9d
mov r9d, r13d
rol r10d, 0xe
ror r9d, 7
add ebx, r8d
mov r8d, eax
xor r9d, r10d
mov r10d, r13d
mov dword [rdx + 0x50], ebx
shr r10d, 3
xor r9d, r10d
add r11d, r12d
mov r12d, dword [rdx + 0x1c]
rol r8d, 0xd
lea r10d, [r9 + r11]
mov r9d, eax
shr eax, 0xa
rol r9d, 0xf
xor r9d, r8d
mov r11d, r12d
mov r8d, r12d
xor eax, r9d
rol r8d, 0xe
ror r11d, 7
lea r9d, [r10 + rax]
xor r11d, r8d
mov r8d, r12d
mov r10d, dword [rdx + 0x20]
shr r8d, 3
mov eax, ebx
mov dword [rdx + 0x54], r9d
xor r11d, r8d
mov r8d, dword [rdx + 0x3c]
rol eax, 0xd
add r8d, r13d
add r8d, r11d
mov r11d, ebx
rol r11d, 0xf
xor r11d, eax
mov eax, ebx
shr eax, 0xa
xor r11d, eax
mov eax, r10d
add r11d, r8d
mov r8d, r10d
ror eax, 7
rol r8d, 0xe
mov dword [rdx + 0x58], r11d
xor eax, r8d
mov r8d, r10d
shr r8d, 3
xor eax, r8d
mov r8d, r9d
add eax, r12d
rol r8d, 0xf
add eax, ebp
mov ebp, r9d
shr r9d, 0xa
rol ebp, 0xd
xor r8d, ebp
xor r9d, r8d
lea r8d, [rax + r9]
mov eax, esi
neg eax
sub esi, 4
mov dword [rdx + 0x5c], r8d
add rdx, 0x20
add eax, eax
lea r9d, [rax + 0x48]
cmp esi, 4
jne 0x517e42
lea ebx, [rax + 0x46]
movsxd r9, r9d
lea r11d, [rax + 0x39]
movsxd rbx, ebx
mov edx, dword [rsp + rbx*4 + 0x20]
lea ebp, [rax + 0x3a]
movsxd r11, r11d
mov r10d, dword [rsp + r11*4 + 0x20]
lea edi, [rax + 0x49]
movsxd rbp, ebp
movsxd rdi, edi
mov r8d, edx
mov esi, edx
shr edx, 0xa
rol esi, 0xd
rol r8d, 0xf
xor r8d, esi
lea esi, [rax + 0x41]
xor r8d, edx
lea edx, [rax + 0x38]
movsxd rsi, esi
movsxd rdx, edx
mov edx, dword [rsp + rdx*4 + 0x20]
add edx, dword [rsp + rsi*4 + 0x20]
mov esi, r10d
rol esi, 0xe
add r8d, edx
mov edx, r10d
shr r10d, 3
ror edx, 7
xor edx, esi
xor edx, r10d
lea r10d, [rax + 0x47]
add edx, r8d
movsxd r10, r10d
mov dword [rsp + r9*4 + 0x20], edx
mov esi, dword [rsp + rbp*4 + 0x20]
mov edx, dword [rsp + r10*4 + 0x20]
mov r8d, edx
mov r12d, edx
shr edx, 0xa
rol r12d, 0xd
rol r8d, 0xf
xor r8d, r12d
lea r12d, [rax + 0x42]
xor r8d, edx
mov edx, dword [rsp + r11*4 + 0x20]
mov r11d, esi
movsxd r12, r12d
rol r11d, 0xe
add edx, dword [rsp + r12*4 + 0x20]
add r8d, edx
mov edx, esi
shr esi, 3
ror edx, 7
xor edx, r11d
lea r11d, [rax + 0x4a]
xor edx, esi
lea esi, [rax + 0x3b]
add edx, r8d
movsxd r11, r11d
mov dword [rsp + rdi*4 + 0x20], edx
mov edx, dword [rsp + r9*4 + 0x20]
movsxd rsi, esi
mov r12d, dword [rsp + rsi*4 + 0x20]
mov r8d, edx
mov r13d, edx
shr edx, 0xa
rol r13d, 0xd
rol r8d, 0xf
xor r8d, r13d
lea r13d, [rax + 0x43]
xor r8d, edx
mov edx, dword [rsp + rbp*4 + 0x20]
mov ebp, r12d
movsxd r13, r13d
add edx, dword [rsp + r13*4 + 0x20]
add r8d, edx
mov edx, r12d
rol ebp, 0xe
ror edx, 7
shr r12d, 3
xor edx, ebp
lea ebp, [rax + 0x3c]
xor edx, r12d
add edx, r8d
movsxd rbp, ebp
mov dword [rsp + r11*4 + 0x20], edx
mov edx, dword [rsp + rdi*4 + 0x20]
lea edi, [rax + 0x4b]
mov r12d, dword [rsp + rbp*4 + 0x20]
movsxd rdi, edi
mov r8d, edx
mov r13d, edx
shr edx, 0xa
rol r13d, 0xd
rol r8d, 0xf
xor r8d, r13d
lea r13d, [rax + 0x44]
xor r8d, edx
mov edx, dword [rsp + rsi*4 + 0x20]
mov esi, r12d
movsxd r13, r13d
rol esi, 0xe
add edx, dword [rsp + r13*4 + 0x20]
add r8d, edx
mov edx, r12d
shr r12d, 3
ror edx, 7
xor edx, esi
lea esi, [rax + 0x3d]
xor edx, r12d
add edx, r8d
movsxd rsi, esi
mov dword [rsp + rdi*4 + 0x20], edx
mov edx, dword [rsp + r11*4 + 0x20]
lea r11d, [rax + 0x4c]
mov r12d, dword [rsp + rsi*4 + 0x20]
movsxd r11, r11d
mov r8d, edx
mov r13d, edx
shr edx, 0xa
rol r13d, 0xd
rol r8d, 0xf
xor r8d, r13d
lea r13d, [rax + 0x45]
xor r8d, edx
mov edx, dword [rsp + rbp*4 + 0x20]
mov ebp, r12d
movsxd r13, r13d
rol ebp, 0xe
add edx, dword [rsp + r13*4 + 0x20]
add r8d, edx
mov edx, r12d
shr r12d, 3
ror edx, 7
xor edx, ebp
lea ebp, [rax + 0x3e]
xor edx, r12d
add edx, r8d
movsxd rbp, ebp
mov dword [rsp + r11*4 + 0x20], edx
mov edx, dword [rsp + rdi*4 + 0x20]
lea edi, [rax + 0x4d]
mov r12d, dword [rsp + rbp*4 + 0x20]
movsxd rdi, edi
mov r8d, edx
mov r13d, edx
shr edx, 0xa
rol r13d, 0xd
rol r8d, 0xf
xor r8d, r13d
xor r8d, edx
mov edx, dword [rsp + rsi*4 + 0x20]
add edx, dword [rsp + rbx*4 + 0x20]
mov ebx, r12d
rol ebx, 0xe
add r8d, edx
mov edx, r12d
shr r12d, 3
ror edx, 7
xor edx, ebx
lea ebx, [rax + 0x4e]
xor edx, r12d
add edx, r8d
movsxd rbx, ebx
mov dword [rsp + rdi*4 + 0x20], edx
mov r8d, dword [rsp + r11*4 + 0x20]
lea r11d, [rax + 0x3f]
movsxd r11, r11d
mov esi, dword [rsp + r11*4 + 0x20]
mov r10d, dword [rsp + r10*4 + 0x20]
mov edx, r8d
add r10d, dword [rsp + rbp*4 + 0x20]
mov ebp, r8d
shr r8d, 0xa
rol ebp, 0xd
rol edx, 0xf
xor edx, ebp
xor edx, r8d
lea r8d, [r10 + rdx]
mov edx, esi
mov r10d, esi
rol r10d, 0xe
ror edx, 7
xor edx, r10d
shr esi, 3
xor edx, esi
add edx, r8d
mov dword [rsp + rbx*4 + 0x20], edx
mov edx, dword [rsp + rdi*4 + 0x20]
lea r8d, [rax + 0x40]
add eax, 0x4f
movsxd r8, r8d
cdqe
mov r10d, dword [rsp + r8*4 + 0x20]
mov ebx, edx
mov r8d, edx
shr edx, 0xa
rol ebx, 0xd
rol r8d, 0xf
xor r8d, ebx
xor r8d, edx
mov edx, dword [rsp + r11*4 + 0x20]
add edx, dword [rsp + r9*4 + 0x20]
mov r9d, r10d
rol r9d, 0xe
add r8d, edx
mov edx, r10d
shr r10d, 3
ror edx, 7
xor edx, r9d
mov r9, qword [rcx + 0x18]
xor edx, r10d
add edx, r8d
mov r8, qword [rcx + 8]
mov dword [rsp + rax*4 + 0x20], edx
mov rdx, qword [rcx]
mov qword [rsp + 0x18], r9
mov r9d, dword [rsp + 0x18]
mov qword [rsp + 8], r8
mov r8, qword [rcx + 0x10]
mov eax, edx
mov qword [rsp], rdx
mov ebp, dword [rsp + 4]
mov edi, dword [rsp + 8]
mov ebx, dword [rsp + 0xc]
mov edx, r8d
mov qword [rsp + 0x10], r8
ror r8d, 6
mov r11d, dword [rsp + 0x14]
mov r10d, edx
mov r12d, ebp
ror r10d, 0xb
and r12d, edi
xor r8d, r10d
mov r10d, edx
rol r10d, 7
xor r8d, r10d
mov r10d, dword [rsp + 0x20]
add r10d, dword [rsp + 0x1c]
lea esi, [r8 + r10 + 0x428a2f98]
mov r10d, r11d
mov r8d, eax
xor r10d, r9d
ror r8d, 0xd
and r10d, edx
xor r10d, r9d
add esi, r10d
mov r10d, eax
ror r10d, 2
add ebx, esi
xor r10d, r8d
mov r8d, eax
rol r8d, 0xa
xor r8d, r10d
mov r10d, ebp
or r10d, edi
and r10d, eax
or r10d, r12d
mov r12d, eax
add r10d, r8d
mov r8d, edx
xor r8d, r11d
add r10d, esi
mov esi, ebx
and r8d, ebx
xor r8d, r11d
add r9d, dword [rsp + 0x24]
ror esi, 0xb
and r12d, ebp
add r11d, dword [rsp + 0x28]
lea r8d, [r8 + r9 + 0x71374491]
mov r9d, ebx
ror r9d, 6
xor r9d, esi
mov esi, ebx
rol esi, 7
xor r9d, esi
lea esi, [r8 + r9]
mov r9d, r10d
mov r8d, r10d
ror r8d, 0xd
ror r9d, 2
add edi, esi
xor r9d, r8d
mov r8d, r10d
rol r8d, 0xa
xor r8d, r9d
mov r9d, eax
or r9d, ebp
and r9d, r10d
or r9d, r12d
mov r12d, eax
add r9d, r8d
mov r8d, edx
xor r8d, ebx
add r9d, esi
mov esi, edi
and r8d, edi
ror esi, 0xb
xor r8d, edx
lea r11d, [r8 + r11 - 0x4a3f0431]
mov r8d, edi
ror r8d, 6
xor r8d, esi
mov esi, edi
rol esi, 7
xor r8d, esi
lea esi, [r11 + r8]
mov r8d, r9d
mov r11d, r9d
ror r11d, 0xd
ror r8d, 2
add ebp, esi
xor r8d, r11d
mov r11d, r9d
rol r11d, 0xa
and r12d, r10d
add edx, dword [rsp + 0x2c]
xor r11d, r8d
mov r8d, eax
or r8d, r10d
and r8d, r9d
or r8d, r12d
mov r12d, r10d
add r8d, r11d
mov r11d, ebx
and r12d, r9d
xor r11d, edi
add r8d, esi
mov esi, ebp
and r11d, ebp
ror esi, 0xb
xor r11d, ebx
lea r11d, [r11 + rdx - 0x164a245b]
mov edx, ebp
ror edx, 6
xor edx, esi
mov esi, ebp
rol esi, 7
xor edx, esi
lea esi, [r11 + rdx]
mov edx, r8d
mov r11d, r8d
ror r11d, 0xd
ror edx, 2
add eax, esi
xor edx, r11d
mov r11d, r8d
rol r11d, 0xa
xor r11d, edx
mov edx, r10d
or edx, r9d
and edx, r8d
or edx, r12d
mov r12d, r9d
add edx, r11d
mov r11d, edi
add edx, esi
mov esi, dword [rsp + 0x30]
xor r11d, ebp
and r11d, eax
xor r11d, edi
lea ebx, [rbx + rsi + 0x3956c25b]
mov esi, eax
add ebx, r11d
mov r11d, eax
ror esi, 6
ror r11d, 0xb
and r12d, r8d
xor esi, r11d
mov r11d, eax
rol r11d, 7
xor esi, r11d
lea r11d, [rbx + rsi]
mov esi, edx
mov ebx, edx
ror ebx, 0xd
ror esi, 2
add r10d, r11d
xor esi, ebx
mov ebx, edx
rol ebx, 0xa
xor ebx, esi
mov esi, r9d
or esi, r8d
and esi, edx
or esi, r12d
mov r12d, r8d
add esi, ebx
mov ebx, dword [rsp + 0x34]
add esi, r11d
mov r11d, ebp
xor r11d, eax
and r11d, r10d
lea edi, [rdi + rbx + 0x59f111f1]
xor r11d, ebp
mov ebx, r10d
add edi, r11d
mov r11d, r10d
ror ebx, 6
ror r11d, 0xb
xor ebx, r11d
mov r11d, r10d
rol r11d, 7
xor ebx, r11d
lea r11d, [rdi + rbx]
mov ebx, esi
mov edi, esi
ror edi, 0xd
ror ebx, 2
add r9d, r11d
xor ebx, edi
mov edi, esi
rol edi, 0xa
xor edi, ebx
mov ebx, r8d
and r12d, edx
or ebx, edx
and ebx, esi
or ebx, r12d
mov r12d, edx
add ebx, edi
mov edi, eax
and r12d, esi
add ebx, r11d
mov r11d, dword [rsp + 0x38]
xor edi, r10d
and edi, r9d
xor edi, eax
lea ebp, [rbp + r11 - 0x6dc07d5c]
mov r11d, r9d
add ebp, edi
mov edi, r9d
ror r11d, 6
ror edi, 0xb
xor r11d, edi
mov edi, r9d
rol edi, 7
xor r11d, edi
lea edi, [rbp + r11]
mov r11d, ebx
mov ebp, ebx
ror ebp, 0xd
ror r11d, 2
add r8d, edi
xor r11d, ebp
mov ebp, ebx
rol ebp, 0xa
xor ebp, r11d
mov r11d, edx
or r11d, esi
and r11d, ebx
or r11d, r12d
mov r12d, esi
add r11d, ebp
mov ebp, r10d
add r11d, edi
mov edi, dword [rsp + 0x3c]
xor ebp, r9d
and ebp, r8d
xor ebp, r10d
lea eax, [rax + rdi - 0x54e3a12b]
mov edi, r8d
add ebp, eax
mov eax, r8d
ror edi, 6
ror eax, 0xb
and r12d, ebx
xor edi, eax
mov eax, r8d
rol eax, 7
xor edi, eax
lea eax, [rbp + rdi]
mov edi, r11d
mov ebp, r11d
ror ebp, 0xd
ror edi, 2
add edx, eax
xor edi, ebp
mov ebp, r11d
rol ebp, 0xa
xor ebp, edi
mov edi, esi
or edi, ebx
and edi, r11d
or edi, r12d
mov r12d, ebx
add edi, ebp
mov ebp, dword [rsp + 0x40]
add edi, eax
mov eax, r9d
xor eax, r8d
and eax, edx
lea ebp, [r10 + rbp - 0x27f85568]
xor eax, r9d
mov r10d, edx
add ebp, eax
mov eax, edx
ror r10d, 6
ror eax, 0xb
xor r10d, eax
mov eax, edx
rol eax, 7
xor r10d, eax
lea eax, [rbp + r10]
mov r10d, edi
mov ebp, edi
ror ebp, 0xd
ror r10d, 2
add esi, eax
xor r10d, ebp
mov ebp, edi
rol ebp, 0xa
xor ebp, r10d
mov r10d, ebx
or r10d, r11d
and r12d, r11d
and r10d, edi
or r10d, r12d
mov r12d, r11d
add r10d, ebp
mov ebp, r8d
and r12d, edi
add r10d, eax
mov eax, dword [rsp + 0x44]
xor ebp, edx
and ebp, esi
xor ebp, r8d
lea r9d, [r9 + rax + 0x12835b01]
mov eax, esi
add ebp, r9d
mov r9d, esi
ror eax, 6
ror r9d, 0xb
xor eax, r9d
mov r9d, esi
rol r9d, 7
xor eax, r9d
lea r9d, [rbp + rax]
mov eax, r10d
mov ebp, r10d
ror ebp, 0xd
ror eax, 2
add ebx, r9d
xor eax, ebp
mov ebp, r10d
rol ebp, 0xa
xor ebp, eax
mov eax, r11d
or eax, edi
and eax, r10d
or eax, r12d
mov r12d, edi
add eax, ebp
mov ebp, edx
add eax, r9d
mov r9d, dword [rsp + 0x48]
xor ebp, esi
and ebp, ebx
xor ebp, edx
lea r8d, [r8 + r9 + 0x243185be]
mov r9d, ebx
add ebp, r8d
mov r8d, ebx
ror r9d, 6
ror r8d, 0xb
and r12d, r10d
xor r9d, r8d
mov r8d, ebx
rol r8d, 7
xor r9d, r8d
lea r8d, [rbp + r9]
mov r9d, eax
mov ebp, eax
ror ebp, 0xd
ror r9d, 2
add r11d, r8d
xor r9d, ebp
mov ebp, eax
rol ebp, 0xa
xor ebp, r9d
mov r9d, edi
or r9d, r10d
and r9d, eax
or r9d, r12d
mov r12d, r10d
add r9d, ebp
mov ebp, esi
add r9d, r8d
mov r8d, dword [rsp + 0x4c]
xor ebp, ebx
and ebp, r11d
xor ebp, esi
lea edx, [rdx + r8 + 0x550c7dc3]
mov r8d, r11d
add ebp, edx
mov edx, r11d
ror r8d, 6
ror edx, 0xb
xor r8d, edx
mov edx, r11d
rol edx, 7
xor r8d, edx
lea edx, [rbp + r8]
mov r8d, r9d
mov ebp, r9d
ror ebp, 0xd
ror r8d, 2
add edi, edx
xor r8d, ebp
mov ebp, r9d
rol ebp, 0xa
xor ebp, r8d
mov r8d, r10d
or r8d, eax
and r8d, r9d
and r12d, eax
or r8d, r12d
mov r12d, eax
add r8d, ebp
mov ebp, ebx
and r12d, r9d
add r8d, edx
mov edx, dword [rsp + 0x50]
xor ebp, r11d
and ebp, edi
xor ebp, ebx
lea esi, [rsi + rdx + 0x72be5d74]
mov edx, edi
add ebp, esi
mov esi, edi
ror edx, 6
ror esi, 0xb
xor edx, esi
mov esi, edi
rol esi, 7
xor edx, esi
lea esi, [rbp + rdx]
mov edx, r8d
mov ebp, r8d
ror ebp, 0xd
ror edx, 2
add r10d, esi
xor edx, ebp
mov ebp, r8d
rol ebp, 0xa
xor ebp, edx
mov edx, eax
or edx, r9d
and edx, r8d
or edx, r12d
mov r12d, r9d
add edx, ebp
mov ebp, r11d
add edx, esi
mov esi, dword [rsp + 0x54]
xor ebp, edi
and ebp, r10d
xor ebp, r11d
lea ebx, [rbx + rsi - 0x7f214e02]
mov esi, r10d
add ebp, ebx
mov ebx, r10d
ror esi, 6
ror ebx, 0xb
xor esi, ebx
mov ebx, r10d
and r12d, r8d
rol ebx, 7
xor esi, ebx
lea ebx, [rbp + rsi]
mov esi, edx
mov ebp, edx
ror ebp, 0xd
ror esi, 2
add eax, ebx
xor esi, ebp
mov ebp, edx
rol ebp, 0xa
xor ebp, esi
mov esi, r9d
or esi, r8d
and esi, edx
or esi, r12d
mov r12d, r8d
add esi, ebp
mov ebp, edi
add esi, ebx
mov ebx, dword [rsp + 0x58]
xor ebp, r10d
and ebp, eax
xor ebp, edi
lea r11d, [r11 + rbx - 0x6423f959]
mov ebx, eax
add ebp, r11d
mov r11d, eax
ror ebx, 6
ror r11d, 0xb
xor ebx, r11d
mov r11d, eax
rol r11d, 7
xor ebx, r11d
lea r11d, [rbp + rbx]
mov ebx, esi
mov ebp, esi
ror ebp, 0xd
ror ebx, 2
add r9d, r11d
xor ebx, ebp
mov ebp, esi
rol ebp, 0xa
xor ebp, ebx
mov ebx, r8d
or ebx, edx
and ebx, esi
and r12d, edx
or ebx, r12d
mov r12d, edx
add ebx, ebp
mov ebp, r10d
and r12d, esi
add ebx, r11d
mov r11d, dword [rsp + 0x5c]
xor ebp, eax
and ebp, r9d
xor ebp, r10d
lea edi, [rdi + r11 - 0x3e640e8c]
mov r11d, r9d
add ebp, edi
mov edi, r9d
ror r11d, 6
ror edi, 0xb
xor r11d, edi
mov edi, r9d
rol edi, 7
xor r11d, edi
lea edi, [rbp + r11]
mov r11d, ebx
mov ebp, ebx
ror ebp, 0xd
ror r11d, 2
add r8d, edi
xor r11d, ebp
mov ebp, ebx
rol ebp, 0xa
xor ebp, r11d
mov r11d, edx
or r11d, esi
and r11d, ebx
or r11d, r12d
mov r12d, esi
add r11d, ebp
mov ebp, eax
add r11d, edi
mov edi, dword [rsp + 0x60]
xor ebp, r9d
and ebp, r8d
xor ebp, eax
lea r10d, [r10 + rdi - 0x1b64963f]
mov edi, r8d
add ebp, r10d
mov r10d, r8d
ror edi, 6
ror r10d, 0xb
xor edi, r10d
mov r10d, r8d
rol r10d, 7
and r12d, ebx
xor edi, r10d
lea r10d, [rbp + rdi]
mov edi, r11d
mov ebp, r11d
ror ebp, 0xd
ror edi, 2
add edx, r10d
xor edi, ebp
mov ebp, r11d
rol ebp, 0xa
xor ebp, edi
mov edi, esi
or edi, ebx
and edi, r11d
or edi, r12d
mov r12d, ebx
add edi, ebp
mov ebp, r9d
and r12d, r11d
add edi, r10d
mov r10d, dword [rsp + 0x64]
xor ebp, r8d
and ebp, edx
xor ebp, r9d
lea eax, [rax + r10 - 0x1041b87a]
mov r10d, edx
add ebp, eax
mov eax, edx
ror r10d, 6
ror eax, 0xb
xor r10d, eax
mov eax, edx
rol eax, 7
xor r10d, eax
lea eax, [rbp + r10]
mov r10d, edi
mov ebp, edi
ror ebp, 0xd
ror r10d, 2
add esi, eax
xor r10d, ebp
mov ebp, edi
rol ebp, 0xa
xor ebp, r10d
mov r10d, ebx
or r10d, r11d
and r10d, edi
or r10d, r12d
mov r12d, r11d
add r10d, ebp
mov ebp, r8d
and r12d, edi
add r10d, eax
mov eax, dword [rsp + 0x68]
xor ebp, edx
and ebp, esi
xor ebp, r8d
lea r9d, [r9 + rax + 0xfc19dc6]
mov eax, esi
add ebp, r9d
mov r9d, esi
ror eax, 6
ror r9d, 0xb
xor eax, r9d
mov r9d, esi
rol r9d, 7
xor eax, r9d
lea r9d, [rbp + rax]
mov eax, r10d
mov ebp, r10d
ror ebp, 0xd
ror eax, 2
add ebx, r9d
xor eax, ebp
mov ebp, r10d
rol ebp, 0xa
xor ebp, eax
mov eax, r11d
or eax, edi
and eax, r10d
or eax, r12d
mov r12d, edi
add eax, ebp
mov ebp, edx
add eax, r9d
mov r9d, dword [rsp + 0x6c]
xor ebp, esi
and ebp, ebx
xor ebp, edx
lea r8d, [r8 + r9 + 0x240ca1cc]
mov r9d, ebx
add ebp, r8d
mov r8d, ebx
ror r9d, 6
ror r8d, 0xb
xor r9d, r8d
mov r8d, ebx
rol r8d, 7
xor r9d, r8d
and r12d, r10d
lea r8d, [rbp + r9]
mov r9d, eax
mov ebp, eax
ror ebp, 0xd
ror r9d, 2
add r11d, r8d
xor r9d, ebp
mov ebp, eax
rol ebp, 0xa
xor ebp, r9d
mov r9d, edi
or r9d, r10d
and r9d, eax
or r9d, r12d
mov r12d, r10d
add r9d, ebp
mov ebp, esi
and r12d, eax
add r9d, r8d
mov r8d, dword [rsp + 0x70]
xor ebp, ebx
and ebp, r11d
xor ebp, esi
lea edx, [rdx + r8 + 0x2de92c6f]
mov r8d, r11d
add ebp, edx
mov edx, r11d
ror r8d, 6
ror edx, 0xb
xor r8d, edx
mov edx, r11d
rol edx, 7
xor r8d, edx
lea edx, [rbp + r8]
mov r8d, r9d
mov ebp, r9d
ror ebp, 0xd
ror r8d, 2
add edi, edx
xor r8d, ebp
mov ebp, r9d
rol ebp, 0xa
xor ebp, r8d
mov r8d, r10d
or r8d, eax
and r8d, r9d
or r8d, r12d
mov r12d, eax
add r8d, ebp
mov ebp, ebx
and r12d, r9d
add r8d, edx
mov edx, dword [rsp + 0x74]
xor ebp, r11d
and ebp, edi
xor ebp, ebx
lea esi, [rsi + rdx + 0x4a7484aa]
mov edx, edi
add ebp, esi
mov esi, edi
ror edx, 6
ror esi, 0xb
xor edx, esi
mov esi, edi
rol esi, 7
xor edx, esi
lea esi, [rbp + rdx]
mov edx, r8d
mov ebp, r8d
ror ebp, 0xd
ror edx, 2
add r10d, esi
xor edx, ebp
mov ebp, r8d
rol ebp, 0xa
xor ebp, edx
mov edx, eax
or edx, r9d
and edx, r8d
or edx, r12d
mov r12d, r9d
add edx, ebp
mov ebp, r11d
add edx, esi
mov esi, dword [rsp + 0x78]
xor ebp, edi
and ebp, r10d
xor ebp, r11d
lea ebx, [rbx + rsi + 0x5cb0a9dc]
mov esi, r10d
add ebp, ebx
mov ebx, r10d
ror esi, 6
ror ebx, 0xb
xor esi, ebx
mov ebx, r10d
rol ebx, 7
xor esi, ebx
lea ebx, [rbp + rsi]
mov esi, edx
mov ebp, edx
add eax, ebx
ror ebp, 0xd
and r12d, r8d
ror esi, 2
xor esi, ebp
mov ebp, edx
rol ebp, 0xa
xor ebp, esi
mov esi, r9d
or esi, r8d
and esi, edx
or esi, r12d
mov r12d, r8d
add esi, ebp
mov ebp, edi
and r12d, edx
add esi, ebx
mov ebx, dword [rsp + 0x7c]
xor ebp, r10d
and ebp, eax
xor ebp, edi
lea r11d, [r11 + rbx + 0x76f988da]
mov ebx, eax
add ebp, r11d
mov r11d, eax
ror ebx, 6
ror r11d, 0xb
xor ebx, r11d
mov r11d, eax
rol r11d, 7
xor ebx, r11d
lea r11d, [rbp + rbx]
mov ebx, esi
mov ebp, esi
ror ebp, 0xd
ror ebx, 2
add r9d, r11d
xor ebx, ebp
mov ebp, esi
rol ebp, 0xa
xor ebp, ebx
mov ebx, r8d
or ebx, edx
and ebx, esi
or ebx, r12d
mov r12d, edx
add ebx, ebp
mov ebp, r10d
add ebx, r11d
mov r11d, dword [rsp + 0x80]
xor ebp, eax
and r12d, esi
and ebp, r9d
xor ebp, r10d
lea edi, [rdi + r11 - 0x67c1aeae]
mov r11d, r9d
add ebp, edi
mov edi, r9d
ror r11d, 6
ror edi, 0xb
xor r11d, edi
mov edi, r9d
rol edi, 7
xor r11d, edi
lea edi, [rbp + r11]
mov r11d, ebx
mov ebp, ebx
ror ebp, 0xd
ror r11d, 2
add r8d, edi
xor r11d, ebp
mov ebp, ebx
rol ebp, 0xa
xor ebp, r11d
mov r11d, edx
or r11d, esi
and r11d, ebx
or r11d, r12d
mov r12d, esi
add r11d, ebp
mov ebp, eax
add r11d, edi
mov edi, dword [rsp + 0x84]
xor ebp, r9d
and ebp, r8d
xor ebp, eax
lea r10d, [r10 + rdi - 0x57ce3993]
mov edi, r8d
add ebp, r10d
mov r10d, r8d
ror edi, 6
ror r10d, 0xb
xor edi, r10d
mov r10d, r8d
rol r10d, 7
xor edi, r10d
lea r10d, [rbp + rdi]
mov edi, r11d
mov ebp, r11d
add edx, r10d
ror edi, 2
and r12d, ebx
ror ebp, 0xd
xor edi, ebp
mov ebp, r11d
rol ebp, 0xa
xor ebp, edi
mov edi, esi
or edi, ebx
and edi, r11d
or edi, r12d
mov r12d, ebx
add edi, ebp
mov ebp, r9d
and r12d, r11d
add edi, r10d
mov r10d, dword [rsp + 0x88]
xor ebp, r8d
and ebp, edx
xor ebp, r9d
lea eax, [rax + r10 - 0x4ffcd838]
mov r10d, edx
add ebp, eax
mov eax, edx
ror r10d, 6
ror eax, 0xb
xor r10d, eax
mov eax, edx
rol eax, 7
xor r10d, eax
lea eax, [rbp + r10]
mov r10d, edi
mov ebp, edi
ror ebp, 0xd
ror r10d, 2
add esi, eax
xor r10d, ebp
mov ebp, edi
rol ebp, 0xa
xor ebp, r10d
mov r10d, ebx
or r10d, r11d
and r10d, edi
or r10d, r12d
mov r12d, r11d
add r10d, ebp
mov ebp, r8d
add r10d, eax
mov eax, dword [rsp + 0x8c]
xor ebp, edx
and r12d, edi
and ebp, esi
xor ebp, r8d
lea r9d, [r9 + rax - 0x40a68039]
mov eax, esi
add ebp, r9d
mov r9d, esi
ror eax, 6
ror r9d, 0xb
xor eax, r9d
mov r9d, esi
rol r9d, 7
xor eax, r9d
lea r9d, [rbp + rax]
mov eax, r10d
mov ebp, r10d
ror ebp, 0xd
ror eax, 2
add ebx, r9d
xor eax, ebp
mov ebp, r10d
rol ebp, 0xa
xor ebp, eax
mov eax, r11d
or eax, edi
and eax, r10d
or eax, r12d
mov r12d, edi
add eax, ebp
mov ebp, edx
add eax, r9d
mov r9d, dword [rsp + 0x90]
xor ebp, esi
and ebp, ebx
xor ebp, edx
lea r8d, [r8 + r9 - 0x391ff40d]
mov r9d, ebx
add ebp, r8d
mov r8d, ebx
ror r9d, 6
ror r8d, 0xb
xor r9d, r8d
mov r8d, ebx
rol r8d, 7
xor r9d, r8d
lea r8d, [rbp + r9]
mov r9d, eax
mov ebp, eax
add r11d, r8d
ror r9d, 2
ror ebp, 0xd
and r12d, r10d
xor r9d, ebp
mov ebp, eax
rol ebp, 0xa
xor ebp, r9d
mov r9d, edi
or r9d, r10d
and r9d, eax
or r9d, r12d
mov r12d, r10d
add r9d, ebp
mov ebp, esi
and r12d, eax
add r9d, r8d
mov r8d, dword [rsp + 0x94]
xor ebp, ebx
and ebp, r11d
xor ebp, esi
lea edx, [rdx + r8 - 0x2a586eb9]
mov r8d, r11d
add ebp, edx
mov edx, r11d
ror r8d, 6
ror edx, 0xb
xor r8d, edx
mov edx, r11d
rol edx, 7
xor r8d, edx
lea edx, [rbp + r8]
mov r8d, r9d
mov ebp, r9d
ror ebp, 0xd
ror r8d, 2
add edi, edx
xor r8d, ebp
mov ebp, r9d
rol ebp, 0xa
xor ebp, r8d
mov r8d, r10d
or r8d, eax
and r8d, r9d
or r8d, r12d
mov r12d, eax
add r8d, ebp
mov ebp, ebx
add r8d, edx
mov edx, dword [rsp + 0x98]
xor ebp, r11d
and ebp, edi
and r12d, r9d
xor ebp, ebx
lea esi, [rsi + rdx + 0x6ca6351]
mov edx, edi
add ebp, esi
mov esi, edi
ror edx, 6
ror esi, 0xb
xor edx, esi
mov esi, edi
rol esi, 7
xor edx, esi
lea esi, [rbp + rdx]
mov edx, r8d
mov ebp, r8d
ror ebp, 0xd
ror edx, 2
add r10d, esi
xor edx, ebp
mov ebp, r8d
rol ebp, 0xa
xor ebp, edx
mov edx, eax
or edx, r9d
and edx, r8d
or edx, r12d
mov r12d, r9d
add edx, ebp
mov ebp, r11d
add edx, esi
mov esi, dword [rsp + 0x9c]
xor ebp, edi
and ebp, r10d
xor ebp, r11d
lea ebx, [rbx + rsi + 0x14292967]
mov esi, r10d
add ebp, ebx
mov ebx, r10d
ror esi, 6
ror ebx, 0xb
xor esi, ebx
mov ebx, r10d
rol ebx, 7
xor esi, ebx
lea ebx, [rbp + rsi]
mov esi, edx
mov ebp, edx
ror ebp, 0xd
ror esi, 2
add eax, ebx
xor esi, ebp
mov ebp, edx
and r12d, r8d
rol ebp, 0xa
xor ebp, esi
mov esi, r9d
or esi, r8d
and esi, edx
or esi, r12d
mov r12d, r8d
add esi, ebp
mov ebp, edi
and r12d, edx
add esi, ebx
mov ebx, dword [rsp + 0xa0]
xor ebp, r10d
and ebp, eax
xor ebp, edi
lea r11d, [r11 + rbx + 0x27b70a85]
mov ebx, eax
add ebp, r11d
mov r11d, eax
ror ebx, 6
ror r11d, 0xb
xor ebx, r11d
mov r11d, eax
rol r11d, 7
xor ebx, r11d
lea r11d, [rbp + rbx]
mov ebx, esi
mov ebp, esi
ror ebp, 0xd
ror ebx, 2
add r9d, r11d
xor ebx, ebp
mov ebp, esi
rol ebp, 0xa
xor ebp, ebx
mov ebx, r8d
or ebx, edx
and ebx, esi
or ebx, r12d
mov r12d, edx
add ebx, ebp
mov ebp, r10d
add ebx, r11d
mov r11d, dword [rsp + 0xa4]
xor ebp, eax
and ebp, r9d
xor ebp, r10d
and r12d, esi
lea edi, [rdi + r11 + 0x2e1b2138]
mov r11d, r9d
add ebp, edi
mov edi, r9d
ror r11d, 6
ror edi, 0xb
xor r11d, edi
mov edi, r9d
rol edi, 7
xor r11d, edi
lea edi, [rbp + r11]
mov r11d, ebx
mov ebp, ebx
ror ebp, 0xd
ror r11d, 2
add r8d, edi
xor r11d, ebp
mov ebp, ebx
rol ebp, 0xa
xor ebp, r11d
mov r11d, edx
or r11d, esi
and r11d, ebx
or r11d, r12d
mov r12d, esi
add r11d, ebp
mov ebp, eax
add r11d, edi
mov edi, dword [rsp + 0xa8]
xor ebp, r9d
and ebp, r8d
xor ebp, eax
lea r10d, [r10 + rdi + 0x4d2c6dfc]
mov edi, r8d
add ebp, r10d
mov r10d, r8d
ror edi, 6
ror r10d, 0xb
xor edi, r10d
mov r10d, r8d
rol r10d, 7
xor edi, r10d
lea r10d, [rbp + rdi]
mov edi, r11d
mov ebp, r11d
ror ebp, 0xd
ror edi, 2
add edx, r10d
xor edi, ebp
mov ebp, r11d
rol ebp, 0xa
and r12d, ebx
xor ebp, edi
mov edi, esi
or edi, ebx
and edi, r11d
or edi, r12d
mov r12d, ebx
add edi, ebp
mov ebp, r9d
and r12d, r11d
add edi, r10d
mov r10d, dword [rsp + 0xac]
xor ebp, r8d
and ebp, edx
xor ebp, r9d
lea eax, [rax + r10 + 0x53380d13]
mov r10d, edx
add ebp, eax
mov eax, edx
ror r10d, 6
ror eax, 0xb
xor r10d, eax
mov eax, edx
rol eax, 7
xor r10d, eax
lea eax, [rbp + r10]
mov r10d, edi
mov ebp, edi
ror ebp, 0xd
ror r10d, 2
add esi, eax
xor r10d, ebp
mov ebp, edi
rol ebp, 0xa
xor ebp, r10d
mov r10d, ebx
or r10d, r11d
and r10d, edi
or r10d, r12d
mov r12d, r11d
add r10d, ebp
mov ebp, r8d
add r10d, eax
mov eax, dword [rsp + 0xb0]
xor ebp, edx
and ebp, esi
xor ebp, r8d
lea r9d, [r9 + rax + 0x650a7354]
mov eax, esi
add ebp, r9d
mov r9d, esi
ror eax, 6
ror r9d, 0xb
and r12d, edi
xor eax, r9d
mov r9d, esi
rol r9d, 7
xor eax, r9d
lea r9d, [rbp + rax]
mov eax, r10d
mov ebp, r10d
ror ebp, 0xd
ror eax, 2
add ebx, r9d
xor eax, ebp
mov ebp, r10d
rol ebp, 0xa
xor ebp, eax
mov eax, r11d
or eax, edi
and eax, r10d
or eax, r12d
mov r12d, edi
add eax, ebp
mov ebp, edx
add eax, r9d
mov r9d, dword [rsp + 0xb4]
xor ebp, esi
and ebp, ebx
xor ebp, edx
lea r8d, [r8 + r9 + 0x766a0abb]
mov r9d, ebx
add ebp, r8d
mov r8d, ebx
ror r9d, 6
ror r8d, 0xb
xor r9d, r8d
mov r8d, ebx
rol r8d, 7
xor r9d, r8d
lea r8d, [rbp + r9]
mov r9d, eax
mov ebp, eax
ror ebp, 0xd
ror r9d, 2
add r11d, r8d
xor r9d, ebp
mov ebp, eax
rol ebp, 0xa
xor ebp, r9d
mov r9d, edi
and r12d, r10d
or r9d, r10d
and r9d, eax
or r9d, r12d
mov r12d, r10d
add r9d, ebp
mov ebp, esi
and r12d, eax
add r9d, r8d
mov r8d, dword [rsp + 0xb8]
xor ebp, ebx
and ebp, r11d
xor ebp, esi
lea edx, [rdx + r8 - 0x7e3d36d2]
mov r8d, r11d
add ebp, edx
mov edx, r11d
ror r8d, 6
ror edx, 0xb
xor r8d, edx
mov edx, r11d
rol edx, 7
xor r8d, edx
lea edx, [rbp + r8]
mov r8d, r9d
mov ebp, r9d
ror ebp, 0xd
ror r8d, 2
add edi, edx
xor r8d, ebp
mov ebp, r9d
rol ebp, 0xa
xor ebp, r8d
mov r8d, r10d
or r8d, eax
and r8d, r9d
or r8d, r12d
mov r12d, eax
add r8d, ebp
mov ebp, ebx
add r8d, edx
mov edx, dword [rsp + 0xbc]
xor ebp, r11d
and ebp, edi
xor ebp, ebx
lea esi, [rsi + rdx - 0x6d8dd37b]
mov edx, edi
add ebp, esi
mov esi, edi
ror edx, 6
ror esi, 0xb
and r12d, r9d
xor edx, esi
mov esi, edi
rol esi, 7
xor edx, esi
lea esi, [rbp + rdx]
mov edx, r8d
mov ebp, r8d
ror ebp, 0xd
ror edx, 2
add r10d, esi
xor edx, ebp
mov ebp, r8d
rol ebp, 0xa
xor ebp, edx
mov edx, eax
or edx, r9d
and edx, r8d
or edx, r12d
mov r12d, r9d
add edx, ebp
mov ebp, r11d
add edx, esi
mov esi, dword [rsp + 0xc0]
xor ebp, edi
and ebp, r10d
xor ebp, r11d
lea ebx, [rbx + rsi - 0x5d40175f]
mov esi, r10d
add ebp, ebx
mov ebx, r10d
ror esi, 6
ror ebx, 0xb
xor esi, ebx
mov ebx, r10d
rol ebx, 7
xor esi, ebx
lea ebx, [rbp + rsi]
mov esi, edx
mov ebp, edx
ror ebp, 0xd
ror esi, 2
add eax, ebx
xor esi, ebp
mov ebp, edx
rol ebp, 0xa
xor ebp, esi
mov esi, r9d
or esi, r8d
and r12d, r8d
and esi, edx
or esi, r12d
mov r12d, r8d
add esi, ebp
mov ebp, edi
and r12d, edx
add esi, ebx
mov ebx, dword [rsp + 0xc4]
xor ebp, r10d
and ebp, eax
xor ebp, edi
lea r11d, [r11 + rbx - 0x57e599b5]
mov ebx, eax
add ebp, r11d
mov r11d, eax
ror ebx, 6
ror r11d, 0xb
xor ebx, r11d
mov r11d, eax
rol r11d, 7
xor ebx, r11d
lea r11d, [rbp + rbx]
mov ebx, esi
mov ebp, esi
ror ebp, 0xd
ror ebx, 2
add r9d, r11d
xor ebx, ebp
mov ebp, esi
rol ebp, 0xa
xor ebp, ebx
mov ebx, r8d
or ebx, edx
and ebx, esi
or ebx, r12d
mov r12d, edx
add ebx, ebp
mov ebp, r10d
add ebx, r11d
mov r11d, dword [rsp + 0xc8]
xor ebp, eax
and ebp, r9d
vmovdqu xmm2, xmmword [rcx]
xor ebp, r10d
lea edi, [rdi + r11 - 0x3db47490]
mov r11d, r9d
add ebp, edi
mov edi, r9d
ror r11d, 6
ror edi, 0xb
and r12d, esi
xor r11d, edi
mov edi, r9d
rol edi, 7
xor r11d, edi
lea edi, [rbp + r11]
mov r11d, ebx
mov ebp, ebx
ror ebp, 0xd
ror r11d, 2
add r8d, edi
xor r11d, ebp
mov ebp, ebx
rol ebp, 0xa
xor ebp, r11d
mov r11d, edx
or r11d, esi
and r11d, ebx
or r11d, r12d
mov r12d, esi
add r11d, ebp
mov ebp, eax
add r11d, edi
mov edi, dword [rsp + 0xcc]
xor ebp, r9d
and ebp, r8d
xor ebp, eax
lea r10d, [r10 + rdi - 0x3893ae5d]
mov edi, r8d
add ebp, r10d
mov r10d, r8d
ror edi, 6
ror r10d, 0xb
xor edi, r10d
mov r10d, r8d
rol r10d, 7
xor edi, r10d
lea r10d, [rbp + rdi]
mov edi, r11d
mov ebp, r11d
ror ebp, 0xd
ror edi, 2
add edx, r10d
xor edi, ebp
mov ebp, r11d
rol ebp, 0xa
xor ebp, edi
mov edi, esi
or edi, ebx
and edi, r11d
and r12d, ebx
or edi, r12d
mov r12d, ebx
add edi, ebp
mov ebp, r9d
and r12d, r11d
add edi, r10d
mov r10d, dword [rsp + 0xd0]
xor ebp, r8d
and ebp, edx
xor ebp, r9d
lea eax, [rax + r10 - 0x2e6d17e7]
mov r10d, edx
add ebp, eax
mov eax, edx
ror r10d, 6
ror eax, 0xb
xor r10d, eax
mov eax, edx
rol eax, 7
xor r10d, eax
lea eax, [rbp + r10]
mov r10d, edi
mov ebp, edi
ror ebp, 0xd
ror r10d, 2
add esi, eax
xor r10d, ebp
mov ebp, edi
rol ebp, 0xa
xor ebp, r10d
mov r10d, ebx
or r10d, r11d
and r10d, edi
or r10d, r12d
mov r12d, r11d
add r10d, ebp
mov ebp, r8d
add r10d, eax
mov eax, dword [rsp + 0xd4]
xor ebp, edx
and ebp, esi
xor ebp, r8d
lea r9d, [r9 + rax - 0x2966f9dc]
mov eax, esi
add ebp, r9d
mov r9d, esi
ror eax, 6
ror r9d, 0xb
xor eax, r9d
mov r9d, esi
and r12d, edi
rol r9d, 7
xor eax, r9d
lea r9d, [rbp + rax]
mov eax, r10d
mov ebp, r10d
ror ebp, 0xd
ror eax, 2
add ebx, r9d
xor eax, ebp
mov ebp, r10d
rol ebp, 0xa
xor ebp, eax
mov eax, r11d
or eax, edi
and eax, r10d
or eax, r12d
mov r12d, edi
add eax, ebp
mov ebp, edx
add eax, r9d
mov r9d, dword [rsp + 0xd8]
xor ebp, esi
and ebp, ebx
xor ebp, edx
lea r8d, [r8 + r9 - 0xbf1ca7b]
mov r9d, ebx
add ebp, r8d
mov r8d, ebx
ror r9d, 6
ror r8d, 0xb
xor r9d, r8d
mov r8d, ebx
rol r8d, 7
xor r9d, r8d
lea r8d, [rbp + r9]
mov r9d, eax
mov ebp, eax
ror ebp, 0xd
ror r9d, 2
add r11d, r8d
xor r9d, ebp
mov ebp, eax
rol ebp, 0xa
xor ebp, r9d
mov r9d, edi
or r9d, r10d
and r9d, eax
and r12d, r10d
or r9d, r12d
mov r12d, r10d
add r9d, ebp
mov ebp, esi
and r12d, eax
add r9d, r8d
mov r8d, dword [rsp + 0xdc]
xor ebp, ebx
and ebp, r11d
xor ebp, esi
lea edx, [rdx + r8 + 0x106aa070]
mov r8d, r11d
add ebp, edx
mov edx, r11d
ror r8d, 6
ror edx, 0xb
xor r8d, edx
mov edx, r11d
rol edx, 7
xor r8d, edx
lea edx, [rbp + r8]
mov r8d, r9d
mov ebp, r9d
ror ebp, 0xd
ror r8d, 2
add edi, edx
xor r8d, ebp
mov ebp, r9d
rol ebp, 0xa
xor ebp, r8d
mov r8d, r10d
or r8d, eax
and r8d, r9d
or r8d, r12d
mov r12d, eax
add r8d, ebp
mov ebp, ebx
add r8d, edx
mov edx, dword [rsp + 0xe0]
xor ebp, r11d
and ebp, edi
xor ebp, ebx
lea esi, [rsi + rdx + 0x19a4c116]
mov edx, edi
add ebp, esi
mov esi, edi
ror edx, 6
ror esi, 0xb
xor edx, esi
mov esi, edi
rol esi, 7
and r12d, r9d
xor edx, esi
lea esi, [rbp + rdx]
mov edx, r8d
mov ebp, r8d
ror ebp, 0xd
ror edx, 2
add r10d, esi
xor edx, ebp
mov ebp, r8d
rol ebp, 0xa
xor ebp, edx
mov edx, eax
or edx, r9d
and edx, r8d
or edx, r12d
mov r12d, r9d
add edx, ebp
mov ebp, r11d
and r12d, r8d
add edx, esi
mov esi, dword [rsp + 0xe4]
xor ebp, edi
and ebp, r10d
xor ebp, r11d
lea ebx, [rbx + rsi + 0x1e376c08]
mov esi, r10d
add ebp, ebx
mov ebx, r10d
ror esi, 6
ror ebx, 0xb
xor esi, ebx
mov ebx, r10d
rol ebx, 7
xor esi, ebx
lea ebx, [rbp + rsi]
mov esi, edx
mov ebp, edx
ror ebp, 0xd
ror esi, 2
add eax, ebx
xor esi, ebp
mov ebp, edx
rol ebp, 0xa
xor ebp, esi
mov esi, r9d
or esi, r8d
and esi, edx
or esi, r12d
mov r12d, r8d
add esi, ebp
mov ebp, edi
and r12d, edx
add esi, ebx
mov ebx, dword [rsp + 0xe8]
xor ebp, r10d
and ebp, eax
xor ebp, edi
lea r11d, [r11 + rbx + 0x2748774c]
mov ebx, eax
add ebp, r11d
mov r11d, eax
ror ebx, 6
ror r11d, 0xb
xor ebx, r11d
mov r11d, eax
rol r11d, 7
xor ebx, r11d
lea r11d, [rbp + rbx]
mov ebx, esi
mov ebp, esi
ror ebp, 0xd
ror ebx, 2
add r9d, r11d
xor ebx, ebp
mov ebp, esi
rol ebp, 0xa
xor ebp, ebx
mov ebx, r8d
or ebx, edx
and ebx, esi
or ebx, r12d
mov r12d, edx
add ebx, ebp
mov ebp, r10d
add ebx, r11d
mov r11d, dword [rsp + 0xec]
xor ebp, eax
and ebp, r9d
xor ebp, r10d
lea edi, [rdi + r11 + 0x34b0bcb5]
mov r11d, r9d
add ebp, edi
mov edi, r9d
ror r11d, 6
ror edi, 0xb
xor r11d, edi
mov edi, r9d
rol edi, 7
xor r11d, edi
and r12d, esi
lea edi, [rbp + r11]
mov r11d, ebx
mov ebp, ebx
ror ebp, 0xd
ror r11d, 2
add r8d, edi
xor r11d, ebp
mov ebp, ebx
rol ebp, 0xa
xor ebp, r11d
mov r11d, edx
or r11d, esi
and r11d, ebx
or r11d, r12d
mov r12d, esi
add r11d, ebp
mov ebp, eax
and r12d, ebx
add r11d, edi
mov edi, dword [rsp + 0xf0]
xor ebp, r9d
and ebp, r8d
xor ebp, eax
lea r10d, [r10 + rdi + 0x391c0cb3]
mov edi, r8d
add ebp, r10d
mov r10d, r8d
ror edi, 6
ror r10d, 0xb
xor edi, r10d
mov r10d, r8d
rol r10d, 7
xor edi, r10d
lea r10d, [rbp + rdi]
mov edi, r11d
mov ebp, r11d
ror ebp, 0xd
ror edi, 2
add edx, r10d
xor edi, ebp
mov ebp, r11d
rol ebp, 0xa
xor ebp, edi
mov edi, esi
or edi, ebx
and edi, r11d
or edi, r12d
mov r12d, ebx
add edi, ebp
mov ebp, r9d
and r12d, r11d
add edi, r10d
mov r10d, dword [rsp + 0xf4]
xor ebp, r8d
and ebp, edx
xor ebp, r9d
lea eax, [rax + r10 + 0x4ed8aa4a]
mov r10d, edx
add ebp, eax
mov eax, edx
ror r10d, 6
ror eax, 0xb
xor r10d, eax
mov eax, edx
rol eax, 7
xor r10d, eax
lea eax, [rbp + r10]
mov r10d, edi
mov ebp, edi
ror ebp, 0xd
ror r10d, 2
add esi, eax
xor r10d, ebp
mov ebp, edi
rol ebp, 0xa
xor ebp, r10d
mov r10d, ebx
or r10d, r11d
and r10d, edi
or r10d, r12d
mov r12d, r11d
add r10d, ebp
mov ebp, dword [rsp + 0xf8]
add r10d, eax
mov eax, r8d
xor eax, edx
and eax, esi
lea ebp, [r9 + rbp + 0x5b9cca4f]
xor eax, r8d
mov r9d, esi
add ebp, eax
mov eax, esi
ror r9d, 6
ror eax, 0xb
xor r9d, eax
mov eax, esi
rol eax, 7
xor r9d, eax
lea eax, [rbp + r9]
mov r9d, r10d
mov ebp, r10d
add ebx, eax
ror ebp, 0xd
and r12d, edi
ror r9d, 2
xor r9d, ebp
mov ebp, r10d
rol ebp, 0xa
xor ebp, r9d
mov r9d, r11d
or r9d, edi
and r9d, r10d
or r9d, r12d
mov r12d, edi
add r9d, ebp
mov ebp, dword [rsp + 0xfc]
and r12d, r10d
add r9d, eax
mov eax, edx
xor eax, esi
and eax, ebx
lea r8d, [r8 + rbp + 0x682e6ff3]
xor eax, edx
mov ebp, ebx
add r8d, eax
mov eax, ebx
ror ebp, 6
ror eax, 0xb
xor ebp, eax
mov eax, ebx
rol eax, 7
xor ebp, eax
lea eax, [r8 + rbp]
mov ebp, r9d
mov r8d, r9d
ror r8d, 0xd
ror ebp, 2
add r11d, eax
xor ebp, r8d
mov r8d, r9d
rol r8d, 0xa
xor r8d, ebp
mov ebp, edi
or ebp, r10d
and ebp, r9d
or ebp, r12d
mov r12d, r10d
add ebp, r8d
mov r8d, dword [rsp + 0x100]
add ebp, eax
mov eax, esi
and r12d, r9d
xor eax, ebx
and eax, r11d
lea r8d, [rdx + r8 + 0x748f82ee]
xor eax, esi
mov edx, r11d
add r8d, eax
mov eax, r11d
ror edx, 6
ror eax, 0xb
xor edx, eax
mov eax, r11d
rol eax, 7
xor edx, eax
lea eax, [r8 + rdx]
mov edx, ebp
mov r8d, ebp
ror r8d, 0xd
ror edx, 2
add edi, eax
xor edx, r8d
mov r8d, ebp
rol r8d, 0xa
xor r8d, edx
mov edx, r10d
or edx, r9d
and edx, ebp
or edx, r12d
mov r12d, r9d
add edx, r8d
mov r8d, ebx
add edx, eax
mov eax, dword [rsp + 0x104]
xor r8d, r11d
and r8d, edi
xor r8d, ebx
lea esi, [rsi + rax + 0x78a5636f]
mov eax, edi
add esi, r8d
mov r8d, edi
ror eax, 6
ror r8d, 0xb
xor eax, r8d
mov r8d, edi
rol r8d, 7
xor eax, r8d
lea r8d, [rsi + rax]
mov eax, edx
mov esi, edx
add r10d, r8d
ror eax, 2
and r12d, ebp
ror esi, 0xd
xor eax, esi
mov esi, edx
rol esi, 0xa
xor esi, eax
mov eax, r9d
or eax, ebp
and eax, edx
or eax, r12d
mov r12d, ebp
add eax, esi
mov esi, r11d
and r12d, edx
add eax, r8d
mov r8d, dword [rsp + 0x108]
xor esi, edi
and esi, r10d
xor esi, r11d
lea ebx, [rbx + r8 - 0x7b3787ec]
mov r8d, r10d
add esi, ebx
mov ebx, r10d
ror r8d, 6
ror ebx, 0xb
xor r8d, ebx
mov ebx, r10d
rol ebx, 7
xor r8d, ebx
lea ebx, [rsi + r8]
mov r8d, eax
mov esi, eax
ror esi, 0xd
ror r8d, 2
add r9d, ebx
xor r8d, esi
mov esi, eax
rol esi, 0xa
xor esi, r8d
mov r8d, ebp
or r8d, edx
and r8d, eax
or r8d, r12d
mov r12d, edx
add r8d, esi
mov esi, dword [rsp + 0x10c]
add r8d, ebx
mov ebx, edi
xor ebx, r10d
and r12d, eax
and ebx, r9d
lea esi, [r11 + rsi - 0x7338fdf8]
xor ebx, edi
mov r11d, r9d
add esi, ebx
mov ebx, r9d
ror r11d, 6
ror ebx, 0xb
xor r11d, ebx
mov ebx, r9d
rol ebx, 7
xor r11d, ebx
lea ebx, [rsi + r11]
mov r11d, r8d
mov esi, r8d
ror esi, 0xd
ror r11d, 2
add ebp, ebx
xor r11d, esi
mov esi, r8d
rol esi, 0xa
xor esi, r11d
mov r11d, edx
or r11d, eax
and r11d, r8d
or r11d, r12d
mov r12d, eax
add r11d, esi
mov esi, r10d
add r11d, ebx
mov ebx, dword [rsp + 0x110]
xor esi, r9d
and esi, ebp
xor esi, r10d
lea edi, [rdi + rbx - 0x6f410006]
mov ebx, ebp
add edi, esi
mov esi, ebp
ror ebx, 6
ror esi, 0xb
xor ebx, esi
mov esi, ebp
rol esi, 7
xor ebx, esi
lea esi, [rdi + rbx]
mov ebx, r11d
mov edi, r11d
add edx, esi
ror ebx, 2
ror edi, 0xd
and r12d, r8d
mov dword [rsp + 0x1c], edx
xor ebx, edi
mov edi, r11d
rol edi, 0xa
xor edi, ebx
mov ebx, eax
or ebx, r8d
and ebx, r11d
or ebx, r12d
mov r12d, r8d
add ebx, edi
mov edi, dword [rsp + 0x114]
and r12d, r11d
add ebx, esi
mov esi, r9d
xor esi, ebp
mov dword [rsp + 0xc], ebx
and esi, edx
lea edi, [r10 + rdi - 0x5baf9315]
xor esi, r9d
mov r10d, edx
add edi, esi
mov esi, edx
ror r10d, 6
ror esi, 0xb
xor r10d, esi
mov esi, edx
rol esi, 7
xor r10d, esi
lea esi, [rdi + r10]
mov r10d, ebx
mov edi, ebx
ror edi, 0xd
ror r10d, 2
add eax, esi
xor r10d, edi
mov edi, ebx
mov dword [rsp + 0x18], eax
rol edi, 0xa
xor edi, r10d
mov r10d, r8d
or r10d, r11d
and r10d, ebx
or r10d, r12d
mov r12d, r11d
add r10d, edi
mov edi, dword [rsp + 0x118]
add r10d, esi
mov esi, ebp
xor esi, edx
mov dword [rsp + 8], r10d
and esi, eax
and r12d, ebx
lea edi, [r9 + rdi - 0x41065c09]
xor esi, ebp
mov r9d, eax
add edi, esi
mov esi, eax
ror r9d, 6
ror esi, 0xb
xor r9d, esi
mov esi, eax
xor eax, edx
rol esi, 7
xor r9d, esi
lea esi, [rdi + r9]
mov r9d, r10d
mov edi, r10d
ror edi, 0xd
ror r9d, 2
add r8d, esi
xor r9d, edi
mov edi, r10d
and eax, r8d
mov dword [rsp + 0x14], r8d
rol edi, 0xa
xor eax, edx
mov edx, dword [rsp + 0x11c]
xor edi, r9d
mov r9d, r11d
or r9d, ebx
and r9d, r10d
lea edx, [rbp + rdx - 0x398e870e]
or r9d, r12d
add r9d, edi
add edx, eax
mov eax, r8d
add r9d, esi
mov esi, r8d
ror eax, 6
ror esi, 0xb
rol r8d, 7
mov dword [rsp + 4], r9d
xor eax, esi
xor r8d, eax
lea eax, [rdx + r8]
mov edx, r9d
mov r8d, r9d
ror r8d, 0xd
ror edx, 2
add r11d, eax
xor edx, r8d
mov r8d, r9d
mov dword [rsp + 0x10], r11d
rol r8d, 0xa
xor edx, r8d
mov r8d, ebx
and ebx, r10d
or r8d, r10d
and r9d, r8d
or ebx, r9d
add ebx, edx
add eax, ebx
mov dword [rsp], eax
vpaddd xmm0, xmm2, xmmword [rsp]
vmovups xmmword [rcx], xmm0
vmovdqu xmm3, xmmword [rcx + 0x10]
vpaddd xmm0, xmm3, xmmword [rsp + 0x10]
vmovups xmmword [rcx + 0x10], xmm0
add rsp, 0x120
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
ret
vmovdqu xmm5, xmmword [rdx]
vmovdqu xmm2, xmmword [rdx + 0x20]
vmovdqu xmm3, xmmword [rdx + 0x30]
vmovups xmmword [rsp + 0x20], xmm5
vmovdqu xmm5, xmmword [rdx + 0x10]
vmovups xmmword [rsp + 0x40], xmm2
vmovups xmmword [rsp + 0x50], xmm3
vmovups xmmword [rsp + 0x30], xmm5
jmp 0x517e21