Function at 0x40b7b0
Capabilities:
Encode data using xor
Resolve function by parsing pe exports

Disassembly:
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x120
test r8d, r8d
je 0x40d4e0
mov eax, dword [rdx]
bswap eax
mov dword [rsp + 0x20], eax
mov eax, dword [rdx + 4]
bswap eax
mov dword [rsp + 0x24], eax
mov eax, dword [rdx + 8]
bswap eax
mov dword [rsp + 0x28], eax
mov eax, dword [rdx + 0xc]
bswap eax
mov dword [rsp + 0x2c], eax
mov eax, dword [rdx + 0x10]
bswap eax
mov dword [rsp + 0x30], eax
mov eax, dword [rdx + 0x14]
bswap eax
mov dword [rsp + 0x34], eax
mov eax, dword [rdx + 0x18]
bswap eax
mov dword [rsp + 0x38], eax
mov eax, dword [rdx + 0x1c]
bswap eax
mov dword [rsp + 0x3c], eax
mov eax, dword [rdx + 0x20]
bswap eax
mov dword [rsp + 0x40], eax
mov eax, dword [rdx + 0x24]
bswap eax
mov dword [rsp + 0x44], eax
mov eax, dword [rdx + 0x28]
bswap eax
mov dword [rsp + 0x48], eax
mov eax, dword [rdx + 0x2c]
bswap eax
mov dword [rsp + 0x4c], eax
mov eax, dword [rdx + 0x30]
bswap eax
mov dword [rsp + 0x50], eax
mov eax, dword [rdx + 0x34]
bswap eax
mov dword [rsp + 0x54], eax
mov eax, dword [rdx + 0x38]
bswap eax
mov dword [rsp + 0x58], eax
mov eax, dword [rdx + 0x3c]
bswap eax
mov dword [rsp + 0x5c], eax
lea rdx, [rsp + 0x20]
mov ebp, dword [rsp + 0x20]
mov r9d, dword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
mov ebx, dword [rsp + 0x48]
mov edi, 0x18
jmp 0x40b876
mov eax, r8d
mov r11d, r9d
mov r8d, r9d
add ebp, dword [rdx + 0x24]
ror r8d, 0x11
ror r11d, 0x13
mov r12d, dword [rdx + 4]
xor r11d, r8d
mov r8d, r9d
shr r8d, 0xa
xor r11d, r8d
mov esi, r12d
lea r8d, [rbp + r11]
mov r11d, r12d
ror esi, 7
ror r11d, 0x12
mov ebp, dword [rdx + 8]
xor r11d, esi
mov esi, r12d
shr esi, 3
xor r11d, esi
mov esi, eax
add r8d, r11d
mov r11d, eax
ror esi, 0x13
ror r11d, 0x11
shr eax, 0xa
mov dword [rdx + 0x40], r8d
xor esi, r11d
mov r11d, ebp
xor esi, eax
ror r11d, 7
add ebx, esi
mov esi, ebp
ror esi, 0x12
lea eax, [r12 + rbx]
xor esi, r11d
mov r11d, ebp
add ebp, dword [rdx + 0x2c]
shr r11d, 3
xor esi, r11d
mov r11d, dword [rdx + 0xc]
add eax, esi
mov dword [rdx + 0x44], eax
mov ebx, r11d
mov esi, r11d
shr esi, 3
ror ebx, 0x12
xor ebx, esi
mov esi, r11d
ror esi, 7
xor ebx, esi
mov esi, r8d
add ebx, ebp
mov ebp, r8d
ror esi, 0x13
shr ebp, 0xa
xor esi, ebp
mov ebp, r8d
add r10d, r11d
ror ebp, 0x11
xor esi, ebp
mov ebp, dword [rdx + 0x10]
add ebx, esi
mov dword [rdx + 0x48], ebx
mov r11d, ebp
mov esi, ebp
shr esi, 3
ror r11d, 0x12
xor r11d, esi
mov esi, ebp
add ebp, dword [rdx + 0x34]
ror esi, 7
xor r11d, esi
mov esi, eax
add r10d, r11d
mov r11d, eax
ror esi, 0x11
ror r11d, 0x13
shr eax, 0xa
xor r11d, esi
xor r11d, eax
mov eax, dword [rdx + 0x14]
add r11d, r10d
mov dword [rdx + 0x4c], r11d
mov r10d, eax
mov esi, eax
ror esi, 7
ror r10d, 0x12
xor r10d, esi
mov esi, eax
shr esi, 3
xor r10d, esi
mov esi, ebx
add ebp, r10d
mov r10d, ebx
ror esi, 0x11
ror r10d, 0x13
xor r10d, esi
mov esi, ebx
shr esi, 0xa
xor r10d, esi
lea esi, [r9 + rax]
add r10d, ebp
mov ebp, dword [rdx + 0x18]
mov dword [rdx + 0x50], r10d
mov eax, ebp
mov r9d, ebp
ror r9d, 7
ror eax, 0x12
xor eax, r9d
mov r9d, ebp
shr r9d, 3
add ebp, dword [rdx + 0x3c]
xor eax, r9d
mov r9d, r11d
add esi, eax
mov eax, r11d
ror r9d, 0x11
ror eax, 0x13
shr r11d, 0xa
xor eax, r9d
xor eax, r11d
mov r11d, dword [rdx + 0x1c]
add esi, eax
mov dword [rdx + 0x54], esi
mov r9d, r11d
mov eax, r11d
ror eax, 7
ror r9d, 0x12
xor r9d, eax
mov eax, r11d
shr eax, 3
xor r9d, eax
mov eax, r10d
add ebp, r9d
mov r9d, r10d
ror eax, 0x11
ror r9d, 0x13
xor r9d, eax
mov eax, r10d
shr eax, 0xa
xor r9d, eax
add r9d, ebp
mov ebp, dword [rdx + 0x20]
mov dword [rdx + 0x58], r9d
mov eax, ebp
mov r12d, ebp
ror r12d, 7
ror eax, 0x12
xor eax, r12d
mov r12d, ebp
shr r12d, 3
xor eax, r12d
add eax, r11d
mov r11d, esi
add r8d, eax
mov eax, esi
ror r11d, 0x11
ror eax, 0x13
shr esi, 0xa
xor eax, r11d
xor eax, esi
mov esi, edi
sub edi, 4
add r8d, eax
neg esi
add rdx, 0x20
mov dword [rdx + 0x3c], r8d
add esi, esi
cmp edi, 4
lea eax, [rsi + 0x48]
jne 0x40b873
add esi, 0x50
nop word cs:[rax + rax]
lea edx, [rax - 2]
lea r11d, [rax - 0xf]
lea r9d, [rax - 7]
movsxd rbx, eax
movsxd r11, r11d
movsxd rdx, edx
movsxd r9, r9d
mov r8d, dword [rsp + rdx*4 + 0x20]
mov r10d, dword [rsp + r11*4 + 0x20]
lea edx, [rax - 0x10]
mov r9d, dword [rsp + r9*4 + 0x20]
movsxd rdx, edx
add r9d, dword [rsp + rdx*4 + 0x20]
mov edi, r10d
mov edx, r10d
ror edx, 0x12
shr edi, 3
ror r10d, 7
xor edx, edi
xor edx, r10d
mov r10d, r8d
add r9d, edx
mov edx, r8d
ror r10d, 0x11
ror edx, 0x13
shr r8d, 0xa
xor edx, r10d
xor edx, r8d
add edx, r9d
mov dword [rsp + rbx*4 + 0x20], edx
lea edx, [rax - 1]
lea ebx, [rax + 1]
movsxd rdx, edx
movsxd rbx, ebx
mov r8d, dword [rsp + rdx*4 + 0x20]
lea edx, [rax - 0xe]
movsxd rdx, edx
mov r10d, dword [rsp + rdx*4 + 0x20]
lea edx, [rax - 6]
add eax, 2
movsxd rdx, edx
mov r9d, dword [rsp + rdx*4 + 0x20]
mov edx, r10d
add r9d, dword [rsp + r11*4 + 0x20]
mov r11d, r10d
ror edx, 0x12
ror r10d, 7
shr r11d, 3
xor edx, r11d
xor edx, r10d
mov r10d, r8d
add r9d, edx
mov edx, r8d
shr r10d, 0xa
ror edx, 0x13
ror r8d, 0x11
xor edx, r10d
xor edx, r8d
add edx, r9d
cmp eax, esi
mov dword [rsp + rbx*4 + 0x20], edx
jne 0x40ba90
mov rax, qword [rcx + 0x18]
mov rbp, qword [rcx + 0x10]
mov rdi, qword [rcx + 8]
mov rbx, qword [rcx]
mov r11d, eax
shr rax, 0x20
add eax, dword [rsp + 0x20]
mov r8d, ebp
shr rbp, 0x20
mov esi, edi
mov r9d, r8d
mov r10d, esi
shr rdi, 0x20
ror r9d, 6
mov edx, eax
mov eax, r8d
ror eax, 0xb
xor eax, r9d
mov r9d, r8d
ror r9d, 0x19
xor eax, r9d
mov r9d, esi
lea edx, [rdx + rax + 0x428a2f98]
mov eax, r11d
xor eax, ebp
and eax, r8d
xor eax, r11d
add r11d, dword [rsp + 0x24]
add eax, edx
mov edx, ebx
shr rbx, 0x20
or r10d, ebx
and r9d, ebx
mov r12d, edx
and r10d, edx
ror r12d, 2
add edi, eax
or r10d, r9d
mov r9d, edx
ror r9d, 0xd
xor r9d, r12d
mov r12d, edx
ror r12d, 0x16
xor r9d, r12d
mov r12d, ebx
add r9d, r10d
add eax, r9d
mov r9d, ebp
xor r9d, r8d
and r9d, edi
xor r9d, ebp
lea r10d, [r11 + r9 + 0x71374491]
mov r9d, edi
mov r11d, edi
ror r11d, 6
ror r9d, 0xb
xor r9d, r11d
mov r11d, edi
ror r11d, 0x19
and r12d, edx
add ebp, dword [rsp + 0x28]
xor r9d, r11d
mov r11d, eax
add r10d, r9d
mov r9d, eax
ror r11d, 0xd
ror r9d, 2
add esi, r10d
xor r11d, r9d
mov r9d, eax
ror r9d, 0x16
xor r11d, r9d
mov r9d, ebx
or r9d, edx
and r9d, eax
or r9d, r12d
mov r12d, eax
add r9d, r11d
add r10d, r9d
mov r9d, edi
xor r9d, r8d
and r9d, esi
xor r9d, r8d
lea r11d, [rbp + r9 - 0x4a3f0431]
mov r9d, esi
mov ebp, esi
ror ebp, 6
ror r9d, 0xb
xor r9d, ebp
mov ebp, esi
ror ebp, 0x19
xor r9d, ebp
mov ebp, r10d
add r9d, r11d
mov r11d, r10d
ror ebp, 0xd
ror r11d, 2
add ebx, r9d
xor ebp, r11d
mov r11d, r10d
ror r11d, 0x16
xor ebp, r11d
mov r11d, eax
or r11d, edx
and r11d, r10d
and r12d, edx
add r8d, dword [rsp + 0x2c]
or r11d, r12d
mov r12d, r10d
add r11d, ebp
mov ebp, ebx
and r12d, eax
add r9d, r11d
mov r11d, esi
ror ebp, 6
xor r11d, edi
and r11d, ebx
xor r11d, edi
add edi, dword [rsp + 0x30]
lea r11d, [r8 + r11 - 0x164a245b]
mov r8d, ebx
ror r8d, 0xb
xor r8d, ebp
mov ebp, ebx
ror ebp, 0x19
xor r8d, ebp
mov ebp, r9d
add r8d, r11d
ror ebp, 0xd
lea r11d, [r8 + rdx]
mov edx, r9d
ror edx, 2
xor ebp, edx
mov edx, r9d
ror edx, 0x16
xor ebp, edx
mov edx, r10d
or edx, eax
and edx, r9d
or edx, r12d
mov r12d, r9d
add edx, ebp
mov ebp, r11d
add r8d, edx
mov edx, ebx
ror ebp, 6
xor edx, esi
and edx, r11d
xor edx, esi
lea edi, [rdi + rdx + 0x3956c25b]
mov edx, r11d
ror edx, 0xb
xor edx, ebp
mov ebp, r11d
ror ebp, 0x19
xor edx, ebp
mov ebp, r8d
and r12d, r10d
add edx, edi
ror ebp, 0xd
add esi, dword [rsp + 0x34]
lea edi, [rdx + rax]
mov eax, r8d
ror eax, 2
xor ebp, eax
mov eax, r8d
ror eax, 0x16
xor ebp, eax
mov eax, r9d
or eax, r10d
and eax, r8d
or eax, r12d
mov r12d, r8d
add eax, ebp
mov ebp, edi
and r12d, r9d
add edx, eax
mov eax, r11d
ror ebp, 6
xor eax, ebx
and eax, edi
xor eax, ebx
lea esi, [rsi + rax + 0x59f111f1]
mov eax, edi
ror eax, 0xb
xor eax, ebp
mov ebp, edi
ror ebp, 0x19
xor eax, ebp
mov ebp, edx
add eax, esi
ror ebp, 0xd
lea esi, [rax + r10]
mov r10d, edx
ror r10d, 2
xor ebp, r10d
mov r10d, edx
ror r10d, 0x16
xor ebp, r10d
mov r10d, r8d
or r10d, r9d
and r10d, edx
or r10d, r12d
mov r12d, edx
add r10d, ebp
mov ebp, esi
add eax, r10d
add ebx, dword [rsp + 0x38]
mov r10d, edi
xor r10d, r11d
ror ebp, 6
and r12d, r8d
and r10d, esi
xor r10d, r11d
add r11d, dword [rsp + 0x3c]
lea ebx, [rbx + r10 - 0x6dc07d5c]
mov r10d, esi
ror r10d, 0xb
xor r10d, ebp
mov ebp, esi
ror ebp, 0x19
xor r10d, ebp
mov ebp, eax
add r10d, ebx
ror ebp, 0xd
lea ebx, [r10 + r9]
mov r9d, eax
ror r9d, 2
xor ebp, r9d
mov r9d, eax
ror r9d, 0x16
xor ebp, r9d
mov r9d, edx
or r9d, r8d
and r9d, eax
or r9d, r12d
mov r12d, eax
add r9d, ebp
mov ebp, ebx
add r10d, r9d
mov r9d, esi
ror ebp, 6
xor r9d, edi
and r9d, ebx
xor r9d, edi
lea r11d, [r11 + r9 - 0x54e3a12b]
mov r9d, ebx
ror r9d, 0xb
xor r9d, ebp
mov ebp, ebx
ror ebp, 0x19
xor r9d, ebp
mov ebp, r10d
add r9d, r11d
ror ebp, 0xd
lea r11d, [r9 + r8]
mov r8d, r10d
ror r8d, 2
and r12d, edx
add edi, dword [rsp + 0x40]
xor ebp, r8d
mov r8d, r10d
ror r8d, 0x16
xor ebp, r8d
mov r8d, eax
or r8d, edx
and r8d, r10d
or r8d, r12d
mov r12d, r10d
add r8d, ebp
mov ebp, r11d
and r12d, eax
add r9d, r8d
mov r8d, ebx
ror ebp, 6
xor r8d, esi
and r8d, r11d
xor r8d, esi
add esi, dword [rsp + 0x44]
lea edi, [rdi + r8 - 0x27f85568]
mov r8d, r11d
ror r8d, 0xb
xor r8d, ebp
mov ebp, r11d
ror ebp, 0x19
xor r8d, ebp
mov ebp, r9d
add r8d, edi
ror ebp, 0xd
lea edi, [r8 + rdx]
mov edx, r9d
ror edx, 2
xor ebp, edx
mov edx, r9d
ror edx, 0x16
xor ebp, edx
mov edx, r10d
or edx, eax
and edx, r9d
or edx, r12d
mov r12d, r9d
add edx, ebp
mov ebp, edi
add r8d, edx
mov edx, r11d
xor edx, ebx
and edx, edi
ror ebp, 6
and r12d, r10d
xor edx, ebx
add ebx, dword [rsp + 0x48]
lea esi, [rsi + rdx + 0x12835b01]
mov edx, edi
ror edx, 0xb
xor edx, ebp
mov ebp, edi
ror ebp, 0x19
xor edx, ebp
mov ebp, r8d
add edx, esi
ror ebp, 0xd
lea esi, [rdx + rax]
mov eax, r8d
ror eax, 2
xor ebp, eax
mov eax, r8d
ror eax, 0x16
xor ebp, eax
mov eax, r9d
or eax, r10d
and eax, r8d
or eax, r12d
mov r12d, r8d
add eax, ebp
mov ebp, esi
add edx, eax
mov eax, edi
ror ebp, 6
xor eax, r11d
and eax, esi
xor eax, r11d
lea ebx, [rbx + rax + 0x243185be]
mov eax, esi
ror eax, 0xb
xor eax, ebp
mov ebp, esi
ror ebp, 0x19
xor eax, ebp
mov ebp, edx
add eax, ebx
ror ebp, 0xd
lea ebx, [rax + r10]
mov r10d, edx
ror r10d, 2
xor ebp, r10d
mov r10d, edx
ror r10d, 0x16
xor ebp, r10d
mov r10d, r8d
and r12d, r9d
or r10d, r9d
add r11d, dword [rsp + 0x4c]
and r10d, edx
or r10d, r12d
mov r12d, edx
add r10d, ebp
mov ebp, ebx
and r12d, r8d
add eax, r10d
mov r10d, esi
ror ebp, 6
xor r10d, edi
and r10d, ebx
xor r10d, edi
add edi, dword [rsp + 0x50]
lea r11d, [r11 + r10 + 0x550c7dc3]
mov r10d, ebx
ror r10d, 0xb
xor r10d, ebp
mov ebp, ebx
ror ebp, 0x19
xor r10d, ebp
mov ebp, eax
add r10d, r11d
ror ebp, 0xd
lea r11d, [r10 + r9]
mov r9d, eax
ror r9d, 2
xor ebp, r9d
mov r9d, eax
ror r9d, 0x16
xor ebp, r9d
mov r9d, edx
or r9d, r8d
and r9d, eax
or r9d, r12d
mov r12d, eax
add r9d, ebp
mov ebp, r11d
add r10d, r9d
mov r9d, ebx
xor r9d, esi
and r9d, r11d
xor r9d, esi
lea edi, [rdi + r9 + 0x72be5d74]
mov r9d, r11d
ror r9d, 0xb
ror ebp, 6
and r12d, edx
xor r9d, ebp
mov ebp, r11d
add esi, dword [rsp + 0x54]
ror ebp, 0x19
xor r9d, ebp
mov ebp, r10d
add r9d, edi
ror ebp, 0xd
lea edi, [r9 + r8]
mov r8d, r10d
ror r8d, 2
xor ebp, r8d
mov r8d, r10d
ror r8d, 0x16
xor ebp, r8d
mov r8d, eax
or r8d, edx
and r8d, r10d
or r8d, r12d
mov r12d, r10d
add r8d, ebp
mov ebp, edi
add r9d, r8d
mov r8d, r11d
ror ebp, 6
xor r8d, ebx
and r8d, edi
xor r8d, ebx
lea esi, [rsi + r8 - 0x7f214e02]
mov r8d, edi
ror r8d, 0xb
xor r8d, ebp
mov ebp, edi
ror ebp, 0x19
xor r8d, ebp
mov ebp, r9d
add r8d, esi
ror ebp, 0xd
lea esi, [r8 + rdx]
mov edx, r9d
ror edx, 2
xor ebp, edx
mov edx, r9d
ror edx, 0x16
xor ebp, edx
mov edx, r10d
or edx, eax
and edx, r9d
and r12d, eax
add ebx, dword [rsp + 0x58]
or edx, r12d
mov r12d, r9d
add edx, ebp
mov ebp, esi
and r12d, r10d
add r8d, edx
mov edx, edi
ror ebp, 6
xor edx, r11d
and edx, esi
xor edx, r11d
add r11d, dword [rsp + 0x5c]
lea ebx, [rbx + rdx - 0x6423f959]
mov edx, esi
ror edx, 0xb
xor edx, ebp
mov ebp, esi
ror ebp, 0x19
xor edx, ebp
mov ebp, r8d
add edx, ebx
ror ebp, 0xd
lea ebx, [rdx + rax]
mov eax, r8d
ror eax, 2
xor ebp, eax
mov eax, r8d
ror eax, 0x16
xor ebp, eax
mov eax, r9d
or eax, r10d
and eax, r8d
or eax, r12d
mov r12d, r8d
add eax, ebp
mov ebp, ebx
add edx, eax
mov eax, esi
ror ebp, 6
xor eax, edi
and eax, ebx
xor eax, edi
lea r11d, [r11 + rax - 0x3e640e8c]
mov eax, ebx
ror eax, 0xb
xor eax, ebp
mov ebp, ebx
ror ebp, 0x19
xor eax, ebp
mov ebp, edx
and r12d, r9d
add eax, r11d
ror ebp, 0xd
add edi, dword [rsp + 0x60]
lea r11d, [rax + r10]
mov r10d, edx
ror r10d, 2
xor ebp, r10d
mov r10d, edx
ror r10d, 0x16
xor ebp, r10d
mov r10d, r8d
or r10d, r9d
and r10d, edx
or r10d, r12d
mov r12d, edx
add r10d, ebp
mov ebp, r11d
and r12d, r8d
add eax, r10d
mov r10d, ebx
ror ebp, 6
xor r10d, esi
and r10d, r11d
xor r10d, esi
lea edi, [rdi + r10 - 0x1b64963f]
mov r10d, r11d
ror r10d, 0xb
xor r10d, ebp
mov ebp, r11d
ror ebp, 0x19
xor r10d, ebp
mov ebp, eax
add r10d, edi
ror ebp, 0xd
lea edi, [r10 + r9]
mov r9d, eax
ror r9d, 2
xor ebp, r9d
mov r9d, eax
ror r9d, 0x16
xor ebp, r9d
mov r9d, edx
or r9d, r8d
and r9d, eax
or r9d, r12d
mov r12d, eax
add r9d, ebp
mov ebp, edi
add r10d, r9d
add esi, dword [rsp + 0x64]
mov r9d, r11d
xor r9d, ebx
ror ebp, 6
and r12d, edx
and r9d, edi
xor r9d, ebx
add ebx, dword [rsp + 0x68]
lea esi, [rsi + r9 - 0x1041b87a]
mov r9d, edi
ror r9d, 0xb
xor r9d, ebp
mov ebp, edi
ror ebp, 0x19
xor r9d, ebp
mov ebp, r10d
add r9d, esi
ror ebp, 0xd
lea esi, [r9 + r8]
mov r8d, r10d
ror r8d, 2
xor ebp, r8d
mov r8d, r10d
ror r8d, 0x16
xor ebp, r8d
mov r8d, eax
or r8d, edx
and r8d, r10d
or r8d, r12d
mov r12d, r10d
add r8d, ebp
mov ebp, esi
add r9d, r8d
mov r8d, edi
ror ebp, 6
xor r8d, r11d
and r8d, esi
xor r8d, r11d
lea ebx, [rbx + r8 + 0xfc19dc6]
mov r8d, esi
ror r8d, 0xb
xor r8d, ebp
mov ebp, esi
ror ebp, 0x19
xor r8d, ebp
mov ebp, r9d
add r8d, ebx
ror ebp, 0xd
lea ebx, [r8 + rdx]
mov edx, r9d
ror edx, 2
and r12d, eax
add r11d, dword [rsp + 0x6c]
xor ebp, edx
mov edx, r9d
ror edx, 0x16
xor ebp, edx
mov edx, r10d
or edx, eax
and edx, r9d
or edx, r12d
mov r12d, r9d
add edx, ebp
mov ebp, ebx
and r12d, r10d
add r8d, edx
mov edx, esi
ror ebp, 6
xor edx, edi
and edx, ebx
xor edx, edi
add edi, dword [rsp + 0x70]
lea r11d, [r11 + rdx + 0x240ca1cc]
mov edx, ebx
ror edx, 0xb
xor edx, ebp
mov ebp, ebx
ror ebp, 0x19
xor edx, ebp
mov ebp, r8d
add edx, r11d
ror ebp, 0xd
lea r11d, [rdx + rax]
mov eax, r8d
ror eax, 2
xor ebp, eax
mov eax, r8d
ror eax, 0x16
xor ebp, eax
mov eax, r9d
or eax, r10d
and eax, r8d
or eax, r12d
mov r12d, r8d
add eax, ebp
mov ebp, r11d
add edx, eax
mov eax, ebx
xor eax, esi
and eax, r11d
ror ebp, 6
and r12d, r9d
xor eax, esi
add esi, dword [rsp + 0x74]
lea edi, [rdi + rax + 0x2de92c6f]
mov eax, r11d
ror eax, 0xb
xor eax, ebp
mov ebp, r11d
ror ebp, 0x19
xor eax, ebp
mov ebp, edx
add eax, edi
ror ebp, 0xd
lea edi, [rax + r10]
mov r10d, edx
ror r10d, 2
xor ebp, r10d
mov r10d, edx
ror r10d, 0x16
xor ebp, r10d
mov r10d, r8d
or r10d, r9d
and r10d, edx
or r10d, r12d
mov r12d, edx
add r10d, ebp
mov ebp, edi
add eax, r10d
mov r10d, r11d
ror ebp, 6
xor r10d, ebx
and r10d, edi
xor r10d, ebx
lea esi, [rsi + r10 + 0x4a7484aa]
mov r10d, edi
ror r10d, 0xb
xor r10d, ebp
mov ebp, edi
ror ebp, 0x19
xor r10d, ebp
mov ebp, eax
add r10d, esi
ror ebp, 0xd
lea esi, [r10 + r9]
mov r9d, eax
ror r9d, 2
xor ebp, r9d
mov r9d, eax
ror r9d, 0x16
xor ebp, r9d
mov r9d, edx
and r12d, r8d
or r9d, r8d
add ebx, dword [rsp + 0x78]
and r9d, eax
or r9d, r12d
mov r12d, eax
add r9d, ebp
mov ebp, esi
and r12d, edx
add r10d, r9d
mov r9d, edi
ror ebp, 6
xor r9d, r11d
and r9d, esi
xor r9d, r11d
add r11d, dword [rsp + 0x7c]
lea ebx, [rbx + r9 + 0x5cb0a9dc]
mov r9d, esi
ror r9d, 0xb
xor r9d, ebp
mov ebp, esi
ror ebp, 0x19
xor r9d, ebp
mov ebp, r10d
add r9d, ebx
ror ebp, 0xd
lea ebx, [r9 + r8]
mov r8d, r10d
ror r8d, 2
xor ebp, r8d
mov r8d, r10d
ror r8d, 0x16
xor ebp, r8d
mov r8d, eax
or r8d, edx
and r8d, r10d
or r8d, r12d
mov r12d, r10d
add r8d, ebp
mov ebp, ebx
add r9d, r8d
mov r8d, esi
xor r8d, edi
and r8d, ebx
xor r8d, edi
lea r11d, [r11 + r8 + 0x76f988da]
mov r8d, ebx
ror r8d, 0xb
ror ebp, 6
and r12d, eax
xor r8d, ebp
mov ebp, ebx
add edi, dword [rsp + 0x80]
ror ebp, 0x19
xor r8d, ebp
mov ebp, r9d
add r8d, r11d
ror ebp, 0xd
lea r11d, [r8 + rdx]
mov edx, r9d
ror edx, 2
xor ebp, edx
mov edx, r9d
ror edx, 0x16
xor ebp, edx
mov edx, r10d
or edx, eax
and edx, r9d
or edx, r12d
mov r12d, r9d
add edx, ebp
mov ebp, r11d
add r8d, edx
mov edx, ebx
ror ebp, 6
xor edx, esi
and edx, r11d
xor edx, esi
lea edi, [rdi + rdx - 0x67c1aeae]
mov edx, r11d
ror edx, 0xb
xor edx, ebp
mov ebp, r11d
ror ebp, 0x19
xor edx, ebp
mov ebp, r8d
add edx, edi
ror ebp, 0xd
lea edi, [rdx + rax]
mov eax, r8d
ror eax, 2
xor ebp, eax
mov eax, r8d
ror eax, 0x16
xor ebp, eax
mov eax, r9d
or eax, r10d
and eax, r8d
and r12d, r10d
add esi, dword [rsp + 0x84]
or eax, r12d
mov r12d, r8d
add eax, ebp
mov ebp, edi
and r12d, r9d
add edx, eax
mov eax, r11d
ror ebp, 6
xor eax, ebx
and eax, edi
xor eax, ebx
add ebx, dword [rsp + 0x88]
lea esi, [rsi + rax - 0x57ce3993]
mov eax, edi
ror eax, 0xb
xor eax, ebp
mov ebp, edi
ror ebp, 0x19
xor eax, ebp
mov ebp, edx
add eax, esi
ror ebp, 0xd
lea esi, [rax + r10]
mov r10d, edx
ror r10d, 2
xor ebp, r10d
mov r10d, edx
ror r10d, 0x16
xor ebp, r10d
mov r10d, r8d
or r10d, r9d
and r10d, edx
or r10d, r12d
mov r12d, edx
add r10d, ebp
mov ebp, esi
add eax, r10d
mov r10d, edi
ror ebp, 6
xor r10d, r11d
and r10d, esi
xor r10d, r11d
lea ebx, [rbx + r10 - 0x4ffcd838]
mov r10d, esi
ror r10d, 0xb
xor r10d, ebp
mov ebp, esi
ror ebp, 0x19
xor r10d, ebp
mov ebp, eax
and r12d, r8d
add r10d, ebx
ror ebp, 0xd
add r11d, dword [rsp + 0x8c]
lea ebx, [r10 + r9]
mov r9d, eax
ror r9d, 2
xor ebp, r9d
mov r9d, eax
ror r9d, 0x16
xor ebp, r9d
mov r9d, edx
or r9d, r8d
and r9d, eax
or r9d, r12d
mov r12d, eax
add r9d, ebp
mov ebp, ebx
and r12d, edx
add r10d, r9d
mov r9d, esi
ror ebp, 6
xor r9d, edi
and r9d, ebx
xor r9d, edi
lea r11d, [r11 + r9 - 0x40a68039]
mov r9d, ebx
ror r9d, 0xb
xor r9d, ebp
mov ebp, ebx
ror ebp, 0x19
xor r9d, ebp
mov ebp, r10d
add r9d, r11d
ror ebp, 0xd
lea r11d, [r9 + r8]
mov r8d, r10d
ror r8d, 2
xor ebp, r8d
mov r8d, r10d
ror r8d, 0x16
xor ebp, r8d
mov r8d, eax
or r8d, edx
and r8d, r10d
or r8d, r12d
mov r12d, r10d
add r8d, ebp
mov ebp, r11d
add r9d, r8d
add edi, dword [rsp + 0x90]
mov r8d, ebx
xor r8d, esi
ror ebp, 6
and r12d, eax
and r8d, r11d
xor r8d, esi
add esi, dword [rsp + 0x94]
lea edi, [rdi + r8 - 0x391ff40d]
mov r8d, r11d
ror r8d, 0xb
xor r8d, ebp
mov ebp, r11d
ror ebp, 0x19
xor r8d, ebp
mov ebp, r9d
add r8d, edi
ror ebp, 0xd
lea edi, [r8 + rdx]
mov edx, r9d
ror edx, 2
xor ebp, edx
mov edx, r9d
ror edx, 0x16
xor ebp, edx
mov edx, r10d
or edx, eax
and edx, r9d
or edx, r12d
mov r12d, r9d
add edx, ebp
mov ebp, edi
add r8d, edx
mov edx, r11d
ror ebp, 6
xor edx, ebx
and edx, edi
xor edx, ebx
lea esi, [rsi + rdx - 0x2a586eb9]
mov edx, edi
ror edx, 0xb
xor edx, ebp
mov ebp, edi
ror ebp, 0x19
xor edx, ebp
mov ebp, r8d
add edx, esi
ror ebp, 0xd
lea esi, [rdx + rax]
mov eax, r8d
ror eax, 2
and r12d, r10d
add ebx, dword [rsp + 0x98]
xor ebp, eax
mov eax, r8d
ror eax, 0x16
xor ebp, eax
mov eax, r9d
or eax, r10d
and eax, r8d
or eax, r12d
mov r12d, r8d
add eax, ebp
mov ebp, esi
and r12d, r9d
add edx, eax
mov eax, edi
ror ebp, 6
xor eax, r11d
and eax, esi
xor eax, r11d
add r11d, dword [rsp + 0x9c]
lea ebx, [rbx + rax + 0x6ca6351]
mov eax, esi
ror eax, 0xb
xor eax, ebp
mov ebp, esi
ror ebp, 0x19
xor eax, ebp
mov ebp, edx
add eax, ebx
ror ebp, 0xd
lea ebx, [rax + r10]
mov r10d, edx
ror r10d, 2
xor ebp, r10d
mov r10d, edx
ror r10d, 0x16
xor ebp, r10d
mov r10d, r8d
or r10d, r9d
and r10d, edx
or r10d, r12d
mov r12d, edx
add r10d, ebp
mov ebp, ebx
add eax, r10d
mov r10d, esi
xor r10d, edi
and r10d, ebx
ror ebp, 6
and r12d, r8d
xor r10d, edi
add edi, dword [rsp + 0xa0]
lea r11d, [r11 + r10 + 0x14292967]
mov r10d, ebx
ror r10d, 0xb
xor r10d, ebp
mov ebp, ebx
ror ebp, 0x19
xor r10d, ebp
mov ebp, eax
add r10d, r11d
ror ebp, 0xd
lea r11d, [r10 + r9]
mov r9d, eax
ror r9d, 2
xor ebp, r9d
mov r9d, eax
ror r9d, 0x16
xor ebp, r9d
mov r9d, edx
or r9d, r8d
and r9d, eax
or r9d, r12d
mov r12d, eax
add r9d, ebp
mov ebp, r11d
add r10d, r9d
mov r9d, ebx
ror ebp, 6
xor r9d, esi
and r9d, r11d
xor r9d, esi
lea edi, [rdi + r9 + 0x27b70a85]
mov r9d, r11d
ror r9d, 0xb
xor r9d, ebp
mov ebp, r11d
ror ebp, 0x19
xor r9d, ebp
mov ebp, r10d
add r9d, edi
ror ebp, 0xd
lea edi, [r9 + r8]
mov r8d, r10d
ror r8d, 2
xor ebp, r8d
mov r8d, r10d
ror r8d, 0x16
xor ebp, r8d
mov r8d, eax
and r12d, edx
or r8d, edx
add esi, dword [rsp + 0xa4]
and r8d, r10d
or r8d, r12d
mov r12d, r10d
add r8d, ebp
mov ebp, edi
and r12d, eax
add r9d, r8d
mov r8d, r11d
ror ebp, 6
xor r8d, ebx
and r8d, edi
xor r8d, ebx
add ebx, dword [rsp + 0xa8]
lea esi, [rsi + r8 + 0x2e1b2138]
mov r8d, edi
ror r8d, 0xb
xor r8d, ebp
mov ebp, edi
ror ebp, 0x19
xor r8d, ebp
mov ebp, r9d
add r8d, esi
ror ebp, 0xd
lea esi, [r8 + rdx]
mov edx, r9d
ror edx, 2
xor ebp, edx
mov edx, r9d
ror edx, 0x16
xor ebp, edx
mov edx, r10d
or edx, eax
and edx, r9d
or edx, r12d
mov r12d, r9d
add edx, ebp
mov ebp, esi
add r8d, edx
mov edx, edi
xor edx, r11d
and edx, esi
xor edx, r11d
lea ebx, [rbx + rdx + 0x4d2c6dfc]
mov edx, esi
ror edx, 0xb
ror ebp, 6
and r12d, r10d
xor edx, ebp
mov ebp, esi
add r11d, dword [rsp + 0xac]
ror ebp, 0x19
xor edx, ebp
mov ebp, r8d
add edx, ebx
ror ebp, 0xd
lea ebx, [rdx + rax]
mov eax, r8d
ror eax, 2
xor ebp, eax
mov eax, r8d
ror eax, 0x16
xor ebp, eax
mov eax, r9d
or eax, r10d
and eax, r8d
or eax, r12d
mov r12d, r8d
add eax, ebp
mov ebp, ebx
add edx, eax
mov eax, esi
ror ebp, 6
xor eax, edi
and eax, ebx
xor eax, edi
lea r11d, [r11 + rax + 0x53380d13]
mov eax, ebx
ror eax, 0xb
xor eax, ebp
mov ebp, ebx
ror ebp, 0x19
xor eax, ebp
mov ebp, edx
add eax, r11d
ror ebp, 0xd
lea r11d, [rax + r10]
mov r10d, edx
ror r10d, 2
xor ebp, r10d
mov r10d, edx
ror r10d, 0x16
xor ebp, r10d
mov r10d, r8d
or r10d, r9d
and r10d, edx
and r12d, r9d
add edi, dword [rsp + 0xb0]
or r10d, r12d
mov r12d, edx
add r10d, ebp
mov ebp, r11d
and r12d, r8d
add eax, r10d
mov r10d, ebx
ror ebp, 6
xor r10d, esi
and r10d, r11d
xor r10d, esi
add esi, dword [rsp + 0xb4]
lea edi, [rdi + r10 + 0x650a7354]
mov r10d, r11d
ror r10d, 0xb
xor r10d, ebp
mov ebp, r11d
ror ebp, 0x19
xor r10d, ebp
mov ebp, eax
add r10d, edi
ror ebp, 0xd
lea edi, [r10 + r9]
mov r9d, eax
ror r9d, 2
xor ebp, r9d
mov r9d, eax
ror r9d, 0x16
xor ebp, r9d
mov r9d, edx
or r9d, r8d
and r9d, eax
or r9d, r12d
mov r12d, eax
add r9d, ebp
mov ebp, edi
add r10d, r9d
mov r9d, r11d
ror ebp, 6
xor r9d, ebx
and r9d, edi
xor r9d, ebx
lea esi, [rsi + r9 + 0x766a0abb]
mov r9d, edi
ror r9d, 0xb
xor r9d, ebp
mov ebp, edi
ror ebp, 0x19
xor r9d, ebp
mov ebp, r10d
and r12d, edx
add r9d, esi
ror ebp, 0xd
add ebx, dword [rsp + 0xb8]
lea esi, [r9 + r8]
mov r8d, r10d
ror r8d, 2
xor ebp, r8d
mov r8d, r10d
ror r8d, 0x16
xor ebp, r8d
mov r8d, eax
or r8d, edx
and r8d, r10d
or r8d, r12d
mov r12d, r10d
add r8d, ebp
mov ebp, esi
and r12d, eax
add r9d, r8d
mov r8d, edi
ror ebp, 6
xor r8d, r11d
and r8d, esi
xor r8d, r11d
lea ebx, [rbx + r8 - 0x7e3d36d2]
mov r8d, esi
ror r8d, 0xb
xor r8d, ebp
mov ebp, esi
ror ebp, 0x19
xor r8d, ebp
mov ebp, r9d
add r8d, ebx
ror ebp, 0xd
lea ebx, [r8 + rdx]
mov edx, r9d
ror edx, 2
xor ebp, edx
mov edx, r9d
ror edx, 0x16
xor ebp, edx
mov edx, r10d
or edx, eax
and edx, r9d
or edx, r12d
mov r12d, r9d
add edx, ebp
mov ebp, ebx
add r8d, edx
add r11d, dword [rsp + 0xbc]
mov edx, esi
xor edx, edi
ror ebp, 6
and r12d, r10d
and edx, ebx
xor edx, edi
add edi, dword [rsp + 0xc0]
lea r11d, [r11 + rdx - 0x6d8dd37b]
mov edx, ebx
ror edx, 0xb
xor edx, ebp
mov ebp, ebx
ror ebp, 0x19
xor edx, ebp
mov ebp, r8d
add edx, r11d
ror ebp, 0xd
lea r11d, [rdx + rax]
mov eax, r8d
ror eax, 2
xor ebp, eax
mov eax, r8d
ror eax, 0x16
xor ebp, eax
mov eax, r9d
or eax, r10d
and eax, r8d
or eax, r12d
mov r12d, r8d
add eax, ebp
mov ebp, r11d
add edx, eax
mov eax, ebx
ror ebp, 6
xor eax, esi
and eax, r11d
xor eax, esi
lea edi, [rdi + rax - 0x5d40175f]
mov eax, r11d
ror eax, 0xb
xor eax, ebp
mov ebp, r11d
ror ebp, 0x19
xor eax, ebp
mov ebp, edx
add eax, edi
ror ebp, 0xd
lea edi, [rax + r10]
mov r10d, edx
ror r10d, 2
and r12d, r9d
add esi, dword [rsp + 0xc4]
xor ebp, r10d
mov r10d, edx
ror r10d, 0x16
xor ebp, r10d
mov r10d, r8d
or r10d, r9d
and r10d, edx
or r10d, r12d
mov r12d, edx
add r10d, ebp
mov ebp, edi
and r12d, r8d
add eax, r10d
mov r10d, r11d
ror ebp, 6
xor r10d, ebx
and r10d, edi
xor r10d, ebx
add ebx, dword [rsp + 0xc8]
lea esi, [rsi + r10 - 0x57e599b5]
mov r10d, edi
ror r10d, 0xb
xor r10d, ebp
mov ebp, edi
ror ebp, 0x19
xor r10d, ebp
mov ebp, eax
add r10d, esi
ror ebp, 0xd
lea esi, [r10 + r9]
mov r9d, eax
ror r9d, 2
xor ebp, r9d
mov r9d, eax
ror r9d, 0x16
xor ebp, r9d
mov r9d, edx
or r9d, r8d
and r9d, eax
or r9d, r12d
mov r12d, eax
add r9d, ebp
mov ebp, esi
add r10d, r9d
mov r9d, edi
xor r9d, r11d
and r9d, esi
ror ebp, 6
and r12d, edx
xor r9d, r11d
add r11d, dword [rsp + 0xcc]
lea ebx, [rbx + r9 - 0x3db47490]
mov r9d, esi
ror r9d, 0xb
xor r9d, ebp
mov ebp, esi
ror ebp, 0x19
xor r9d, ebp
mov ebp, r10d
add r9d, ebx
ror ebp, 0xd
lea ebx, [r9 + r8]
mov r8d, r10d
ror r8d, 2
xor ebp, r8d
mov r8d, r10d
ror r8d, 0x16
xor ebp, r8d
mov r8d, eax
or r8d, edx
and r8d, r10d
or r8d, r12d
mov r12d, r10d
add r8d, ebp
mov ebp, ebx
add r9d, r8d
mov r8d, esi
ror ebp, 6
xor r8d, edi
and r8d, ebx
xor r8d, edi
lea r11d, [r11 + r8 - 0x3893ae5d]
mov r8d, ebx
ror r8d, 0xb
xor r8d, ebp
mov ebp, ebx
ror ebp, 0x19
xor r8d, ebp
mov ebp, r9d
add r8d, r11d
ror ebp, 0xd
lea r11d, [r8 + rdx]
mov edx, r9d
ror edx, 2
xor ebp, edx
mov edx, r9d
ror edx, 0x16
xor ebp, edx
mov edx, r10d
and r12d, eax
or edx, eax
add edi, dword [rsp + 0xd0]
and edx, r9d
or edx, r12d
mov r12d, r9d
add edx, ebp
mov ebp, r11d
and r12d, r10d
add r8d, edx
mov edx, ebx
ror ebp, 6
xor edx, esi
and edx, r11d
xor edx, esi
add esi, dword [rsp + 0xd4]
lea edi, [rdi + rdx - 0x2e6d17e7]
mov edx, r11d
ror edx, 0xb
xor edx, ebp
mov ebp, r11d
ror ebp, 0x19
xor edx, ebp
mov ebp, r8d
add edx, edi
ror ebp, 0xd
lea edi, [rdx + rax]
mov eax, r8d
ror eax, 2
xor ebp, eax
mov eax, r8d
ror eax, 0x16
xor ebp, eax
mov eax, r9d
or eax, r10d
and eax, r8d
or eax, r12d
mov r12d, r8d
add eax, ebp
mov ebp, edi
add edx, eax
mov eax, r11d
xor eax, ebx
and eax, edi
xor eax, ebx
lea esi, [rsi + rax - 0x2966f9dc]
mov eax, edi
ror eax, 0xb
ror ebp, 6
and r12d, r9d
xor eax, ebp
mov ebp, edi
add ebx, dword [rsp + 0xd8]
ror ebp, 0x19
xor eax, ebp
mov ebp, edx
add eax, esi
ror ebp, 0xd
lea esi, [rax + r10]
mov r10d, edx
ror r10d, 2
xor ebp, r10d
mov r10d, edx
ror r10d, 0x16
xor ebp, r10d
mov r10d, r8d
or r10d, r9d
and r10d, edx
or r10d, r12d
mov r12d, edx
add r10d, ebp
mov ebp, esi
add eax, r10d
mov r10d, edi
ror ebp, 6
xor r10d, r11d
and r10d, esi
xor r10d, r11d
lea ebx, [rbx + r10 - 0xbf1ca7b]
mov r10d, esi
ror r10d, 0xb
xor r10d, ebp
mov ebp, esi
ror ebp, 0x19
xor r10d, ebp
mov ebp, eax
add r10d, ebx
ror ebp, 0xd
lea ebx, [r10 + r9]
mov r9d, eax
ror r9d, 2
xor ebp, r9d
mov r9d, eax
ror r9d, 0x16
xor ebp, r9d
mov r9d, edx
or r9d, r8d
and r9d, eax
and r12d, r8d
add r11d, dword [rsp + 0xdc]
or r9d, r12d
mov r12d, eax
add r9d, ebp
mov ebp, ebx
and r12d, edx
add r10d, r9d
mov r9d, esi
ror ebp, 6
xor r9d, edi
and r9d, ebx
xor r9d, edi
add edi, dword [rsp + 0xe0]
lea r11d, [r11 + r9 + 0x106aa070]
mov r9d, ebx
ror r9d, 0xb
xor r9d, ebp
mov ebp, ebx
ror ebp, 0x19
xor r9d, ebp
mov ebp, r10d
add r9d, r11d
ror ebp, 0xd
lea r11d, [r9 + r8]
mov r8d, r10d
ror r8d, 2
xor ebp, r8d
mov r8d, r10d
ror r8d, 0x16
xor ebp, r8d
mov r8d, eax
or r8d, edx
and r8d, r10d
or r8d, r12d
mov r12d, r10d
add r8d, ebp
mov ebp, r11d
add r9d, r8d
mov r8d, ebx
ror ebp, 6
xor r8d, esi
and r8d, r11d
xor r8d, esi
lea edi, [rdi + r8 + 0x19a4c116]
mov r8d, r11d
ror r8d, 0xb
xor r8d, ebp
mov ebp, r11d
ror ebp, 0x19
xor r8d, ebp
mov ebp, r9d
and r12d, eax
add r8d, edi
ror ebp, 0xd
add esi, dword [rsp + 0xe4]
lea edi, [r8 + rdx]
mov edx, r9d
ror edx, 2
xor ebp, edx
mov edx, r9d
ror edx, 0x16
xor ebp, edx
mov edx, r10d
or edx, eax
and edx, r9d
or edx, r12d
mov r12d, r9d
add edx, ebp
mov ebp, edi
and r12d, r10d
add r8d, edx
mov edx, r11d
ror ebp, 6
xor edx, ebx
and edx, edi
xor edx, ebx
lea esi, [rsi + rdx + 0x1e376c08]
mov edx, edi
ror edx, 0xb
xor edx, ebp
mov ebp, edi
ror ebp, 0x19
xor edx, ebp
mov ebp, r8d
add edx, esi
ror ebp, 0xd
lea esi, [rdx + rax]
mov eax, r8d
ror eax, 2
xor ebp, eax
mov eax, r8d
ror eax, 0x16
xor ebp, eax
mov eax, r9d
or eax, r10d
and eax, r8d
or eax, r12d
mov r12d, r8d
add eax, ebp
mov ebp, esi
add edx, eax
add ebx, dword [rsp + 0xe8]
mov eax, edi
xor eax, r11d
ror ebp, 6
and r12d, r9d
and eax, esi
xor eax, r11d
add r11d, dword [rsp + 0xec]
lea ebx, [rbx + rax + 0x2748774c]
mov eax, esi
ror eax, 0xb
xor eax, ebp
mov ebp, esi
ror ebp, 0x19
xor eax, ebp
mov ebp, edx
add eax, ebx
ror ebp, 0xd
lea ebx, [rax + r10]
mov r10d, edx
ror r10d, 2
xor ebp, r10d
mov r10d, edx
ror r10d, 0x16
xor ebp, r10d
mov r10d, r8d
or r10d, r9d
and r10d, edx
or r10d, r12d
mov r12d, edx
add r10d, ebp
mov ebp, ebx
add eax, r10d
mov r10d, esi
ror ebp, 6
xor r10d, edi
and r10d, ebx
xor r10d, edi
lea r11d, [r11 + r10 + 0x34b0bcb5]
mov r10d, ebx
ror r10d, 0xb
xor r10d, ebp
mov ebp, ebx
ror ebp, 0x19
xor r10d, ebp
mov ebp, eax
add r10d, r11d
ror ebp, 0xd
lea r11d, [r10 + r9]
mov r9d, eax
ror r9d, 2
and r12d, r8d
add edi, dword [rsp + 0xf0]
xor ebp, r9d
mov r9d, eax
ror r9d, 0x16
xor ebp, r9d
mov r9d, edx
or r9d, r8d
and r9d, eax
or r9d, r12d
mov r12d, eax
add r9d, ebp
mov ebp, r11d
and r12d, edx
add r10d, r9d
mov r9d, ebx
ror ebp, 6
xor r9d, esi
and r9d, r11d
xor r9d, esi
add esi, dword [rsp + 0xf4]
lea edi, [rdi + r9 + 0x391c0cb3]
mov r9d, r11d
ror r9d, 0xb
xor r9d, ebp
mov ebp, r11d
ror ebp, 0x19
xor r9d, ebp
mov ebp, r10d
add r9d, edi
ror ebp, 0xd
lea edi, [r9 + r8]
mov r8d, r10d
ror r8d, 2
xor ebp, r8d
mov r8d, r10d
ror r8d, 0x16
xor ebp, r8d
mov r8d, eax
or r8d, edx
and r8d, r10d
or r8d, r12d
mov r12d, r10d
add r8d, ebp
mov ebp, edi
add r9d, r8d
mov r8d, r11d
xor r8d, ebx
and r8d, edi
ror ebp, 6
and r12d, eax
xor r8d, ebx
add ebx, dword [rsp + 0xf8]
lea esi, [rsi + r8 + 0x4ed8aa4a]
mov r8d, edi
ror r8d, 0xb
xor r8d, ebp
mov ebp, edi
ror ebp, 0x19
xor r8d, ebp
mov ebp, r9d
add r8d, esi
ror ebp, 0xd
lea esi, [r8 + rdx]
mov edx, r9d
ror edx, 2
xor ebp, edx
mov edx, r9d
ror edx, 0x16
xor ebp, edx
mov edx, r10d
or edx, eax
and edx, r9d
or edx, r12d
mov r12d, r9d
add edx, ebp
mov ebp, esi
add r8d, edx
mov edx, edi
ror ebp, 6
xor edx, r11d
and edx, esi
xor edx, r11d
lea ebx, [rbx + rdx + 0x5b9cca4f]
mov edx, esi
ror edx, 0xb
xor edx, ebp
mov ebp, esi
ror ebp, 0x19
xor edx, ebp
mov ebp, r8d
add edx, ebx
ror ebp, 0xd
lea ebx, [rdx + rax]
mov eax, r8d
ror eax, 2
xor ebp, eax
mov eax, r8d
ror eax, 0x16
xor ebp, eax
mov eax, r9d
and r12d, r10d
or eax, r10d
add r11d, dword [rsp + 0xfc]
and eax, r8d
or eax, r12d
mov r12d, r8d
add eax, ebp
mov ebp, ebx
and r12d, r9d
add edx, eax
mov eax, esi
ror ebp, 6
xor eax, edi
and eax, ebx
xor eax, edi
add edi, dword [rsp + 0x100]
lea r11d, [r11 + rax + 0x682e6ff3]
mov eax, ebx
ror eax, 0xb
xor eax, ebp
mov ebp, ebx
ror ebp, 0x19
xor eax, ebp
mov ebp, edx
add eax, r11d
ror ebp, 0xd
lea r11d, [rax + r10]
mov r10d, edx
ror r10d, 2
xor ebp, r10d
mov r10d, edx
ror r10d, 0x16
xor ebp, r10d
mov r10d, r8d
or r10d, r9d
and r10d, edx
or r10d, r12d
mov r12d, edx
add r10d, ebp
mov ebp, r11d
add eax, r10d
mov r10d, ebx
xor r10d, esi
and r10d, r11d
xor r10d, esi
lea edi, [rdi + r10 + 0x748f82ee]
mov r10d, r11d
ror r10d, 0xb
ror ebp, 6
and r12d, r8d
xor r10d, ebp
mov ebp, r11d
add esi, dword [rsp + 0x104]
ror ebp, 0x19
xor r10d, ebp
mov ebp, eax
add r10d, edi
ror ebp, 0xd
lea edi, [r10 + r9]
mov r9d, eax
ror r9d, 2
xor ebp, r9d
mov r9d, eax
ror r9d, 0x16
xor ebp, r9d
mov r9d, edx
or r9d, r8d
and r9d, eax
or r9d, r12d
mov r12d, eax
add r9d, ebp
mov ebp, edi
add r10d, r9d
mov r9d, r11d
ror ebp, 6
xor r9d, ebx
and r9d, edi
xor r9d, ebx
lea esi, [rsi + r9 + 0x78a5636f]
mov r9d, edi
ror r9d, 0xb
xor r9d, ebp
mov ebp, edi
ror ebp, 0x19
xor r9d, ebp
mov ebp, r10d
add r9d, esi
ror ebp, 0xd
lea esi, [r9 + r8]
mov r8d, r10d
ror r8d, 2
xor ebp, r8d
mov r8d, r10d
ror r8d, 0x16
xor ebp, r8d
mov r8d, eax
or r8d, edx
and r8d, r10d
and r12d, edx
add ebx, dword [rsp + 0x108]
or r8d, r12d
mov r12d, r10d
add r8d, ebp
mov ebp, esi
and r12d, eax
add r9d, r8d
mov r8d, edi
ror ebp, 6
xor r8d, r11d
and r8d, esi
xor r8d, r11d
add r11d, dword [rsp + 0x10c]
lea ebx, [rbx + r8 - 0x7b3787ec]
mov r8d, esi
ror r8d, 0xb
xor r8d, ebp
mov ebp, esi
ror ebp, 0x19
xor r8d, ebp
mov ebp, r9d
add r8d, ebx
ror ebp, 0xd
lea ebx, [r8 + rdx]
mov edx, r9d
ror edx, 2
xor ebp, edx
mov edx, r9d
ror edx, 0x16
xor ebp, edx
mov edx, r10d
or edx, eax
and edx, r9d
or edx, r12d
mov r12d, r9d
add edx, ebp
mov ebp, ebx
add r8d, edx
mov edx, esi
ror ebp, 6
xor edx, edi
and edx, ebx
xor edx, edi
lea r11d, [r11 + rdx - 0x7338fdf8]
mov edx, ebx
ror edx, 0xb
xor edx, ebp
mov ebp, ebx
ror ebp, 0x19
xor edx, ebp
mov ebp, r8d
and r12d, r10d
add edx, r11d
ror ebp, 0xd
add edi, dword [rsp + 0x110]
lea r11d, [rdx + rax]
mov eax, r8d
ror eax, 2
xor ebp, eax
mov eax, r8d
ror eax, 0x16
xor ebp, eax
mov eax, r9d
or eax, r10d
and eax, r8d
or eax, r12d
mov r12d, r8d
add eax, ebp
mov ebp, r11d
and r12d, r9d
add edx, eax
mov eax, ebx
ror ebp, 6
xor eax, esi
and eax, r11d
xor eax, esi
lea edi, [rdi + rax - 0x6f410006]
mov eax, r11d
ror eax, 0xb
xor eax, ebp
mov ebp, r11d
ror ebp, 0x19
xor eax, ebp
mov ebp, edx
add eax, edi
mov edi, edx
ror ebp, 0xd
ror edi, 2
add r10d, eax
xor ebp, edi
mov edi, edx
mov dword [rsp + 0x1c], r10d
ror edi, 0x16
movdqu xmm0, xmmword [rcx]
xor ebp, edi
mov edi, r8d
or edi, r9d
and edi, edx
or edi, r12d
mov r12d, edx
add edi, ebp
add esi, dword [rsp + 0x114]
mov ebp, r10d
add eax, edi
mov edi, r11d
ror ebp, 6
xor edi, ebx
and r12d, r8d
mov dword [rsp + 0xc], eax
and edi, r10d
xor edi, ebx
add ebx, dword [rsp + 0x118]
lea edi, [rsi + rdi - 0x5baf9315]
mov esi, r10d
ror esi, 0xb
xor esi, ebp
mov ebp, r10d
ror ebp, 0x19
xor esi, ebp
mov ebp, eax
add esi, edi
mov edi, eax
ror ebp, 0xd
ror edi, 2
add r9d, esi
xor ebp, edi
mov edi, eax
mov dword [rsp + 0x18], r9d
ror edi, 0x16
xor ebp, edi
mov edi, edx
or edi, r8d
and edi, eax
or edi, r12d
mov r12d, eax
add edi, ebp
mov ebp, r9d
add esi, edi
mov edi, r10d
ror ebp, 6
xor edi, r11d
mov dword [rsp + 8], esi
and edi, r9d
xor edi, r11d
lea edi, [rbx + rdi - 0x41065c09]
mov ebx, r9d
ror ebx, 0xb
xor ebx, ebp
mov ebp, r9d
ror ebp, 0x19
xor ebx, ebp
mov ebp, esi
add ebx, edi
add r11d, dword [rsp + 0x11c]
mov edi, esi
add r8d, ebx
ror edi, 2
xor r9d, r10d
ror ebp, 0xd
and r9d, r8d
and r12d, edx
xor ebp, edi
mov edi, esi
xor r9d, r10d
ror edi, 0x16
lea r10d, [r11 + r9 - 0x398e870e]
mov r9d, r8d
xor ebp, edi
mov r11d, r8d
mov edi, eax
or edi, edx
ror r11d, 6
ror r9d, 0xb
mov dword [rsp + 0x14], r8d
and edi, esi
xor r9d, r11d
ror r8d, 0x19
or edi, r12d
xor r9d, r8d
add edi, ebp
add r9d, r10d
add ebx, edi
add edx, r9d
mov r8d, ebx
mov dword [rsp + 4], ebx
mov dword [rsp + 0x10], edx
mov edx, ebx
ror r8d, 0xd
ror edx, 2
xor r8d, edx
mov edx, ebx
ror edx, 0x16
xor r8d, edx
mov edx, esi
or edx, eax
and eax, esi
and edx, ebx
or edx, eax
add edx, r8d
add r9d, edx
mov dword [rsp], r9d
paddd xmm0, xmmword [rsp]
movdqu xmmword [rcx], xmm0
movdqu xmm0, xmmword [rcx + 0x10]
paddd xmm0, xmmword [rsp + 0x10]
movdqu xmmword [rcx + 0x10], xmm0
add rsp, 0x120
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
ret
mov rax, qword [rdx]
mov qword [rsp + 0x20], rax
mov rax, qword [rdx + 8]
mov qword [rsp + 0x28], rax
mov rax, qword [rdx + 0x10]
mov qword [rsp + 0x30], rax
mov rax, qword [rdx + 0x18]
mov qword [rsp + 0x38], rax
mov rax, qword [rdx + 0x20]
mov qword [rsp + 0x40], rax
mov rax, qword [rdx + 0x28]
mov qword [rsp + 0x48], rax
mov rax, qword [rdx + 0x30]
mov qword [rsp + 0x50], rax
mov rax, qword [rdx + 0x38]
mov qword [rsp + 0x58], rax
mov eax, dword [rsp + 0x5c]
jmp 0x40b855