Function at 0x521f70
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov rcx, qword gs:[0x28]
mov rcx, qword [rcx]
lea rax, [rsp - 0x508]
cmp rax, qword [rcx + 0x10]
jbe 0x523c99
sub rsp, 0x588
mov qword [rsp + 0x580], rbp
lea rbp, [rsp + 0x580]
mov rdi, qword [rsp + 0x590]
mov rsi, qword [rsp + 0x598]
mov rdx, qword [rsp + 0x5a0]
shr rdx, 6
shl rdx, 6
lea r8, [0x006d9cc0]
mov r9, rdi
mov r10, rsi
lea r13, [rsi + 0x40]
add rdx, rsi
add rdx, 0x40
mov r11, rdx
cmp r13, r11
cmovae r13, r8
vmovdqu ymm10, ymmword [0x006d33c0]
mov ecx, dword [r9]
mov esi, dword [r9 + 4]
mov edi, dword [r9 + 8]
mov eax, dword [r9 + 0xc]
mov edx, dword [r9 + 0x10]
mov r14, rsp
lea r15, [rsp + 0x2a0]
vmovdqu xmm0, xmmword [r10]
vinserti128 ymm0, ymm0, xmmword [r13], 1
vpshufb ymm15, ymm0, ymm10
vpaddd ymm0, ymm15, ymmword [r8]
vmovdqu ymmword [r14], ymm0
vmovdqu xmm0, xmmword [r10 + 0x10]
vinserti128 ymm0, ymm0, xmmword [r13 + 0x10], 1
vpshufb ymm14, ymm0, ymm10
vpaddd ymm0, ymm14, ymmword [r8]
vmovdqu ymmword [r14 + 0x20], ymm0
vmovdqu xmm0, xmmword [r10 + 0x20]
vinserti128 ymm0, ymm0, xmmword [r13 + 0x20], 1
vpshufb ymm13, ymm0, ymm10
vpaddd ymm0, ymm13, ymmword [r8]
vmovdqu ymmword [r14 + 0x40], ymm0
vmovdqu xmm0, xmmword [r10 + 0x30]
vinserti128 ymm0, ymm0, xmmword [r13 + 0x30], 1
vpshufb ymm12, ymm0, ymm10
vpaddd ymm0, ymm12, ymmword [r8]
vmovdqu ymmword [r14 + 0x60], ymm0
vpalignr ymm8, ymm14, ymm15, 8
vpsrldq ymm0, ymm12, 4
vpxor ymm8, ymm8, ymm13
vpxor ymm0, ymm0, ymm15
vpxor ymm8, ymm8, ymm0
vpslldq ymm9, ymm8, 0xc
vpslld ymm0, ymm8, 1
vpsrld ymm8, ymm8, 0x1f
vpor ymm0, ymm0, ymm8
vpslld ymm8, ymm9, 2
vpsrld ymm9, ymm9, 0x1e
vpxor ymm0, ymm0, ymm8
vpxor ymm8, ymm0, ymm9
vpaddd ymm0, ymm8, ymmword [r8]
vmovdqu ymmword [r14 + 0x80], ymm0
vpalignr ymm7, ymm13, ymm14, 8
vpsrldq ymm0, ymm8, 4
vpxor ymm7, ymm7, ymm12
vpxor ymm0, ymm0, ymm14
vpxor ymm7, ymm7, ymm0
vpslldq ymm9, ymm7, 0xc
vpslld ymm0, ymm7, 1
vpsrld ymm7, ymm7, 0x1f
vpor ymm0, ymm0, ymm7
vpslld ymm7, ymm9, 2
vpsrld ymm9, ymm9, 0x1e
vpxor ymm0, ymm0, ymm7
vpxor ymm7, ymm0, ymm9
vpaddd ymm0, ymm7, ymmword [r8 + 0x20]
vmovdqu ymmword [r14 + 0xa0], ymm0
vpalignr ymm5, ymm12, ymm13, 8
vpsrldq ymm0, ymm7, 4
vpxor ymm5, ymm5, ymm8
vpxor ymm0, ymm0, ymm13
vpxor ymm5, ymm5, ymm0
vpslldq ymm9, ymm5, 0xc
vpslld ymm0, ymm5, 1
vpsrld ymm5, ymm5, 0x1f
vpor ymm0, ymm0, ymm5
vpslld ymm5, ymm9, 2
vpsrld ymm9, ymm9, 0x1e
vpxor ymm0, ymm0, ymm5
vpxor ymm5, ymm0, ymm9
vpaddd ymm0, ymm5, ymmword [r8 + 0x20]
vmovdqu ymmword [r14 + 0xc0], ymm0
vpalignr ymm3, ymm8, ymm12, 8
vpsrldq ymm0, ymm5, 4
vpxor ymm3, ymm3, ymm7
vpxor ymm0, ymm0, ymm12
vpxor ymm3, ymm3, ymm0
vpslldq ymm9, ymm3, 0xc
vpslld ymm0, ymm3, 1
vpsrld ymm3, ymm3, 0x1f
vpor ymm0, ymm0, ymm3
vpslld ymm3, ymm9, 2
vpsrld ymm9, ymm9, 0x1e
vpxor ymm0, ymm0, ymm3
vpxor ymm3, ymm0, ymm9
vpaddd ymm0, ymm3, ymmword [r8 + 0x20]
vmovdqu ymmword [r14 + 0xe0], ymm0
vpalignr ymm0, ymm3, ymm5, 8
vpxor ymm15, ymm15, ymm14
vpxor ymm0, ymm0, ymm8
vpxor ymm15, ymm15, ymm0
vpslld ymm0, ymm15, 2
vpsrld ymm15, ymm15, 0x1e
vpor ymm15, ymm0, ymm15
vpaddd ymm0, ymm15, ymmword [r8 + 0x20]
vmovdqu ymmword [r14 + 0x100], ymm0
vpalignr ymm0, ymm15, ymm3, 8
vpxor ymm14, ymm14, ymm13
vpxor ymm0, ymm0, ymm7
vpxor ymm14, ymm14, ymm0
vpslld ymm0, ymm14, 2
vpsrld ymm14, ymm14, 0x1e
vpor ymm14, ymm0, ymm14
vpaddd ymm0, ymm14, ymmword [r8 + 0x20]
vmovdqu ymmword [r14 + 0x120], ymm0
vpalignr ymm0, ymm14, ymm15, 8
vpxor ymm13, ymm13, ymm12
vpxor ymm0, ymm0, ymm5
vpxor ymm13, ymm13, ymm0
vpslld ymm0, ymm13, 2
vpsrld ymm13, ymm13, 0x1e
vpor ymm13, ymm0, ymm13
vpaddd ymm0, ymm13, ymmword [r8 + 0x40]
vmovdqu ymmword [r14 + 0x140], ymm0
vpalignr ymm0, ymm13, ymm14, 8
vpxor ymm12, ymm12, ymm8
vpxor ymm0, ymm0, ymm3
vpxor ymm12, ymm12, ymm0
vpslld ymm0, ymm12, 2
vpsrld ymm12, ymm12, 0x1e
vpor ymm12, ymm0, ymm12
vpaddd ymm0, ymm12, ymmword [r8 + 0x40]
vmovdqu ymmword [r14 + 0x160], ymm0
vpalignr ymm0, ymm12, ymm13, 8
vpxor ymm8, ymm8, ymm7
vpxor ymm0, ymm0, ymm15
vpxor ymm8, ymm8, ymm0
vpslld ymm0, ymm8, 2
vpsrld ymm8, ymm8, 0x1e
vpor ymm8, ymm0, ymm8
vpaddd ymm0, ymm8, ymmword [r8 + 0x40]
vmovdqu ymmword [r14 + 0x180], ymm0
vpalignr ymm0, ymm8, ymm12, 8
vpxor ymm7, ymm7, ymm5
vpxor ymm0, ymm0, ymm14
vpxor ymm7, ymm7, ymm0
vpslld ymm0, ymm7, 2
vpsrld ymm7, ymm7, 0x1e
vpor ymm7, ymm0, ymm7
vpaddd ymm0, ymm7, ymmword [r8 + 0x40]
vmovdqu ymmword [r14 + 0x1a0], ymm0
vpalignr ymm0, ymm7, ymm8, 8
vpxor ymm5, ymm5, ymm3
vpxor ymm0, ymm0, ymm13
vpxor ymm5, ymm5, ymm0
vpslld ymm0, ymm5, 2
vpsrld ymm5, ymm5, 0x1e
vpor ymm5, ymm0, ymm5
vpaddd ymm0, ymm5, ymmword [r8 + 0x40]
vmovdqu ymmword [r14 + 0x1c0], ymm0
vpalignr ymm0, ymm5, ymm7, 8
vpxor ymm3, ymm3, ymm15
vpxor ymm0, ymm0, ymm12
vpxor ymm3, ymm3, ymm0
vpslld ymm0, ymm3, 2
vpsrld ymm3, ymm3, 0x1e
vpor ymm3, ymm0, ymm3
vpaddd ymm0, ymm3, ymmword [r8 + 0x60]
vmovdqu ymmword [r14 + 0x1e0], ymm0
vpalignr ymm0, ymm3, ymm5, 8
vpxor ymm15, ymm15, ymm14
vpxor ymm0, ymm0, ymm8
vpxor ymm15, ymm15, ymm0
vpslld ymm0, ymm15, 2
vpsrld ymm15, ymm15, 0x1e
vpor ymm15, ymm0, ymm15
vpaddd ymm0, ymm15, ymmword [r8 + 0x60]
vmovdqu ymmword [r14 + 0x200], ymm0
vpalignr ymm0, ymm15, ymm3, 8
vpxor ymm14, ymm14, ymm13
vpxor ymm0, ymm0, ymm7
vpxor ymm14, ymm14, ymm0
vpslld ymm0, ymm14, 2
vpsrld ymm14, ymm14, 0x1e
vpor ymm14, ymm0, ymm14
vpaddd ymm0, ymm14, ymmword [r8 + 0x60]
vmovdqu ymmword [r14 + 0x220], ymm0
vpalignr ymm0, ymm14, ymm15, 8
vpxor ymm13, ymm13, ymm12
vpxor ymm0, ymm0, ymm5
vpxor ymm13, ymm13, ymm0
vpslld ymm0, ymm13, 2
vpsrld ymm13, ymm13, 0x1e
vpor ymm13, ymm0, ymm13
vpaddd ymm0, ymm13, ymmword [r8 + 0x60]
vmovdqu ymmword [r14 + 0x240], ymm0
vpalignr ymm0, ymm13, ymm14, 8
vpxor ymm12, ymm12, ymm8
vpxor ymm0, ymm0, ymm3
vpxor ymm12, ymm12, ymm0
vpslld ymm0, ymm12, 2
vpsrld ymm12, ymm12, 0x1e
vpor ymm12, ymm0, ymm12
vpaddd ymm0, ymm12, ymmword [r8 + 0x60]
vmovdqu ymmword [r14 + 0x260], ymm0
xchg r14, r15
cmp r10, r8
jne 0x522441
vzeroupper
mov rbp, qword [rsp + 0x580]
add rsp, 0x588
ret
mov ebx, esi
rorx esi, esi, 2
andn ebp, ebx, eax
and ebx, edi
xor ebx, ebp
add edx, dword [r15]
andn ebp, ecx, edi
lea edx, [rdx + rbx]
rorx r12d, ecx, 0x1b
rorx ebx, ecx, 2
vmovdqu xmm0, xmmword [r10 + 0x80]
and ecx, esi
xor ecx, ebp
lea edx, [rdx + r12]
add eax, dword [r15 + 4]
andn ebp, edx, esi
lea eax, [rax + rcx]
rorx r12d, edx, 0x1b
rorx ecx, edx, 2
vinserti128 ymm0, ymm0, xmmword [r13 + 0x80], 1
and edx, ebx
xor edx, ebp
lea eax, [rax + r12]
add edi, dword [r15 + 8]
andn ebp, eax, ebx
lea edi, [rdi + rdx]
rorx r12d, eax, 0x1b
rorx edx, eax, 2
vpshufb ymm15, ymm0, ymm10
and eax, ecx
xor eax, ebp
lea edi, [rdi + r12]
add esi, dword [r15 + 0xc]
andn ebp, edi, ecx
lea esi, [rsi + rax]
rorx r12d, edi, 0x1b
rorx eax, edi, 2
and edi, edx
xor edi, ebp
lea esi, [rsi + r12]
add ebx, dword [r15 + 0x20]
andn ebp, esi, edx
lea ebx, [rbx + rdi]
rorx r12d, esi, 0x1b
rorx edi, esi, 2
vpaddd ymm0, ymm15, ymmword [r8]
and esi, eax
xor esi, ebp
lea ebx, [rbx + r12]
add ecx, dword [r15 + 0x24]
andn ebp, ebx, eax
lea ecx, [rcx + rsi]
rorx r12d, ebx, 0x1b
rorx esi, ebx, 2
and ebx, edi
xor ebx, ebp
lea ecx, [rcx + r12]
add edx, dword [r15 + 0x28]
andn ebp, ecx, edi
lea edx, [rdx + rbx]
rorx r12d, ecx, 0x1b
rorx ebx, ecx, 2
and ecx, esi
xor ecx, ebp
lea edx, [rdx + r12]
add eax, dword [r15 + 0x2c]
andn ebp, edx, esi
lea eax, [rax + rcx]
rorx r12d, edx, 0x1b
rorx ecx, edx, 2
vmovdqu ymmword [r14], ymm0
and edx, ebx
xor edx, ebp
lea eax, [rax + r12]
add edi, dword [r15 + 0x40]
andn ebp, eax, ebx
lea edi, [rdi + rdx]
rorx r12d, eax, 0x1b
rorx edx, eax, 2
vmovdqu xmm0, xmmword [r10 + 0x90]
and eax, ecx
xor eax, ebp
lea edi, [rdi + r12]
add esi, dword [r15 + 0x44]
andn ebp, edi, ecx
lea esi, [rsi + rax]
rorx r12d, edi, 0x1b
rorx eax, edi, 2
vinserti128 ymm0, ymm0, xmmword [r13 + 0x90], 1
and edi, edx
xor edi, ebp
lea esi, [rsi + r12]
add ebx, dword [r15 + 0x48]
andn ebp, esi, edx
lea ebx, [rbx + rdi]
rorx r12d, esi, 0x1b
rorx edi, esi, 2
vpshufb ymm14, ymm0, ymm10
and esi, eax
xor esi, ebp
lea ebx, [rbx + r12]
add ecx, dword [r15 + 0x4c]
andn ebp, ebx, eax
lea ecx, [rcx + rsi]
rorx r12d, ebx, 0x1b
rorx esi, ebx, 2
and ebx, edi
xor ebx, ebp
lea ecx, [rcx + r12]
add edx, dword [r15 + 0x60]
andn ebp, ecx, edi
lea edx, [rdx + rbx]
rorx r12d, ecx, 0x1b
rorx ebx, ecx, 2
vpaddd ymm0, ymm14, ymmword [r8]
and ecx, esi
xor ecx, ebp
lea edx, [rdx + r12]
add eax, dword [r15 + 0x64]
andn ebp, edx, esi
lea eax, [rax + rcx]
rorx r12d, edx, 0x1b
rorx ecx, edx, 2
and edx, ebx
xor edx, ebp
lea eax, [rax + r12]
add edi, dword [r15 + 0x68]
andn ebp, eax, ebx
lea edi, [rdi + rdx]
rorx r12d, eax, 0x1b
rorx edx, eax, 2
and eax, ecx
xor eax, ebp
lea edi, [rdi + r12]
add esi, dword [r15 + 0x6c]
andn ebp, edi, ecx
lea esi, [rsi + rax]
rorx r12d, edi, 0x1b
rorx eax, edi, 2
vmovdqu ymmword [r14 + 0x20], ymm0
and edi, edx
xor edi, ebp
lea esi, [rsi + r12]
add ebx, dword [r15 + 0x80]
andn ebp, esi, edx
lea ebx, [rbx + rdi]
rorx r12d, esi, 0x1b
rorx edi, esi, 2
vmovdqu xmm0, xmmword [r10 + 0xa0]
and esi, eax
xor esi, ebp
lea ebx, [rbx + r12]
add ecx, dword [r15 + 0x84]
andn ebp, ebx, eax
lea ecx, [rcx + rsi]
rorx r12d, ebx, 0x1b
rorx esi, ebx, 2
vinserti128 ymm0, ymm0, xmmword [r13 + 0xa0], 1
and ebx, edi
xor ebx, ebp
lea ecx, [rcx + r12]
add edx, dword [r15 + 0x88]
andn ebp, ecx, edi
lea edx, [rdx + rbx]
rorx r12d, ecx, 0x1b
rorx ebx, ecx, 2
vpshufb ymm13, ymm0, ymm10
and ecx, esi
xor ecx, ebp
lea edx, [rdx + r12]
add eax, dword [r15 + 0x8c]
lea eax, [rax + rcx]
rorx r12d, edx, 0x1b
rorx ecx, edx, 2
xor edx, ebx
add eax, r12d
xor edx, esi
add edi, dword [r15 + 0xa0]
lea edi, [rdi + rdx]
rorx r12d, eax, 0x1b
rorx edx, eax, 2
vpaddd ymm0, ymm13, ymmword [r8]
xor eax, ecx
add edi, r12d
xor eax, ebx
add esi, dword [r15 + 0xa4]
lea esi, [rsi + rax]
rorx r12d, edi, 0x1b
rorx eax, edi, 2
xor edi, edx
add esi, r12d
xor edi, ecx
add ebx, dword [r15 + 0xa8]
lea ebx, [rbx + rdi]
rorx r12d, esi, 0x1b
rorx edi, esi, 2
xor esi, eax
add ebx, r12d
xor esi, edx
add ecx, dword [r15 + 0xac]
lea ecx, [rcx + rsi]
rorx r12d, ebx, 0x1b
rorx esi, ebx, 2
vmovdqu ymmword [r14 + 0x40], ymm0
xor ebx, edi
add ecx, r12d
xor ebx, eax
add edx, dword [r15 + 0xc0]
lea edx, [rdx + rbx]
rorx r12d, ecx, 0x1b
rorx ebx, ecx, 2
vmovdqu xmm0, xmmword [r10 + 0xb0]
xor ecx, esi
add edx, r12d
xor ecx, edi
add eax, dword [r15 + 0xc4]
lea eax, [rax + rcx]
rorx r12d, edx, 0x1b
rorx ecx, edx, 2
vinserti128 ymm0, ymm0, xmmword [r13 + 0xb0], 1
xor edx, ebx
add eax, r12d
xor edx, esi
add edi, dword [r15 + 0xc8]
lea edi, [rdi + rdx]
rorx r12d, eax, 0x1b
rorx edx, eax, 2
vpshufb ymm12, ymm0, ymm10
xor eax, ecx
add edi, r12d
xor eax, ebx
add esi, dword [r15 + 0xcc]
lea esi, [rsi + rax]
rorx r12d, edi, 0x1b
rorx eax, edi, 2
xor edi, edx
add esi, r12d
xor edi, ecx
add ebx, dword [r15 + 0xe0]
lea ebx, [rbx + rdi]
rorx r12d, esi, 0x1b
rorx edi, esi, 2
vpaddd ymm0, ymm12, ymmword [r8]
xor esi, eax
add ebx, r12d
xor esi, edx
add ecx, dword [r15 + 0xe4]
lea ecx, [rcx + rsi]
rorx r12d, ebx, 0x1b
rorx esi, ebx, 2
xor ebx, edi
add ecx, r12d
xor ebx, eax
add edx, dword [r15 + 0xe8]
lea edx, [rdx + rbx]
rorx r12d, ecx, 0x1b
rorx ebx, ecx, 2
xor ecx, esi
add edx, r12d
xor ecx, edi
add eax, dword [r15 + 0xec]
lea eax, [rax + rcx]
rorx r12d, edx, 0x1b
rorx ecx, edx, 2
vmovdqu ymmword [r14 + 0x60], ymm0
xor edx, ebx
add eax, r12d
xor edx, esi
add edi, dword [r15 + 0x100]
lea edi, [rdi + rdx]
rorx r12d, eax, 0x1b
rorx edx, eax, 2
vpalignr ymm8, ymm14, ymm15, 8
vpsrldq ymm0, ymm12, 4
xor eax, ecx
add edi, r12d
xor eax, ebx
add esi, dword [r15 + 0x104]
lea esi, [rsi + rax]
rorx r12d, edi, 0x1b
rorx eax, edi, 2
vpxor ymm8, ymm8, ymm13
vpxor ymm0, ymm0, ymm15
xor edi, edx
add esi, r12d
xor edi, ecx
add ebx, dword [r15 + 0x108]
lea ebx, [rbx + rdi]
rorx r12d, esi, 0x1b
rorx edi, esi, 2
vpxor ymm8, ymm8, ymm0
vpslldq ymm9, ymm8, 0xc
xor esi, eax
add ebx, r12d
xor esi, edx
add ecx, dword [r15 + 0x10c]
lea ecx, [rcx + rsi]
rorx r12d, ebx, 0x1b
rorx esi, ebx, 2
vpslld ymm0, ymm8, 1
vpsrld ymm8, ymm8, 0x1f
xor ebx, edi
add ecx, r12d
xor ebx, eax
add edx, dword [r15 + 0x120]
lea edx, [rdx + rbx]
rorx r12d, ecx, 0x1b
rorx ebx, ecx, 2
vpor ymm0, ymm0, ymm8
vpslld ymm8, ymm9, 2
xor ecx, esi
add edx, r12d
xor ecx, edi
add eax, dword [r15 + 0x124]
lea eax, [rax + rcx]
rorx r12d, edx, 0x1b
rorx ecx, edx, 2
vpsrld ymm9, ymm9, 0x1e
vpxor ymm0, ymm0, ymm8
xor edx, ebx
add eax, r12d
xor edx, esi
add edi, dword [r15 + 0x128]
lea edi, [rdi + rdx]
rorx r12d, eax, 0x1b
rorx edx, eax, 2
xor eax, ecx
add edi, r12d
xor eax, ebx
add esi, dword [r15 + 0x12c]
vpxor ymm8, ymm0, ymm9
vpaddd ymm0, ymm8, ymmword [r8]
vmovdqu ymmword [r14 + 0x80], ymm0
lea esi, [rsi + rax]
mov ebp, edx
or ebp, edi
rorx r12d, edi, 0x1b
rorx eax, edi, 2
and ebp, ecx
and edi, edx
or edi, ebp
add esi, r12d
add ebx, dword [r15 + 0x140]
vpalignr ymm7, ymm13, ymm14, 8
vpsrldq ymm0, ymm8, 4
lea ebx, [rbx + rdi]
mov ebp, eax
or ebp, esi
rorx r12d, esi, 0x1b
rorx edi, esi, 2
and ebp, edx
and esi, eax
or esi, ebp
add ebx, r12d
add ecx, dword [r15 + 0x144]
vpxor ymm7, ymm7, ymm12
vpxor ymm0, ymm0, ymm14
lea ecx, [rcx + rsi]
mov ebp, edi
or ebp, ebx
rorx r12d, ebx, 0x1b
rorx esi, ebx, 2
and ebp, eax
and ebx, edi
or ebx, ebp
add ecx, r12d
add edx, dword [r15 + 0x148]
vpxor ymm7, ymm7, ymm0
vpslldq ymm9, ymm7, 0xc
lea edx, [rdx + rbx]
mov ebp, esi
or ebp, ecx
rorx r12d, ecx, 0x1b
rorx ebx, ecx, 2
and ebp, edi
and ecx, esi
or ecx, ebp
add edx, r12d
add eax, dword [r15 + 0x14c]
vpslld ymm0, ymm7, 1
vpsrld ymm7, ymm7, 0x1f
lea eax, [rax + rcx]
mov ebp, ebx
or ebp, edx
rorx r12d, edx, 0x1b
rorx ecx, edx, 2
and ebp, esi
and edx, ebx
or edx, ebp
add eax, r12d
add edi, dword [r15 + 0x160]
vpor ymm0, ymm0, ymm7
vpslld ymm7, ymm9, 2
lea edi, [rdi + rdx]
mov ebp, ecx
or ebp, eax
rorx r12d, eax, 0x1b
rorx edx, eax, 2
and ebp, ebx
and eax, ecx
or eax, ebp
add edi, r12d
add esi, dword [r15 + 0x164]
vpsrld ymm9, ymm9, 0x1e
vpxor ymm0, ymm0, ymm7
lea esi, [rsi + rax]
mov ebp, edx
or ebp, edi
rorx r12d, edi, 0x1b
rorx eax, edi, 2
and ebp, ecx
and edi, edx
or edi, ebp
add esi, r12d
add ebx, dword [r15 + 0x168]
lea ebx, [rbx + rdi]
mov ebp, eax
or ebp, esi
rorx r12d, esi, 0x1b
rorx edi, esi, 2
and ebp, edx
and esi, eax
or esi, ebp
add ebx, r12d
add ecx, dword [r15 + 0x16c]
vpxor ymm7, ymm0, ymm9
vpaddd ymm0, ymm7, ymmword [r8 + 0x20]
vmovdqu ymmword [r14 + 0xa0], ymm0
lea ecx, [rcx + rsi]
mov ebp, edi
or ebp, ebx
rorx r12d, ebx, 0x1b
rorx esi, ebx, 2
and ebp, eax
and ebx, edi
or ebx, ebp
add ecx, r12d
add edx, dword [r15 + 0x180]
vpalignr ymm5, ymm12, ymm13, 8
vpsrldq ymm0, ymm7, 4
lea edx, [rdx + rbx]
mov ebp, esi
or ebp, ecx
rorx r12d, ecx, 0x1b
rorx ebx, ecx, 2
and ebp, edi
and ecx, esi
or ecx, ebp
add edx, r12d
add eax, dword [r15 + 0x184]
vpxor ymm5, ymm5, ymm8
vpxor ymm0, ymm0, ymm13
lea eax, [rax + rcx]
mov ebp, ebx
or ebp, edx
rorx r12d, edx, 0x1b
rorx ecx, edx, 2
and ebp, esi
and edx, ebx
or edx, ebp
add eax, r12d
add edi, dword [r15 + 0x188]
vpxor ymm5, ymm5, ymm0
vpslldq ymm9, ymm5, 0xc
lea edi, [rdi + rdx]
mov ebp, ecx
or ebp, eax
rorx r12d, eax, 0x1b
rorx edx, eax, 2
and ebp, ebx
and eax, ecx
or eax, ebp
add edi, r12d
add esi, dword [r15 + 0x18c]
vpslld ymm0, ymm5, 1
vpsrld ymm5, ymm5, 0x1f
lea esi, [rsi + rax]
mov ebp, edx
or ebp, edi
rorx r12d, edi, 0x1b
rorx eax, edi, 2
and ebp, ecx
and edi, edx
or edi, ebp
add esi, r12d
add ebx, dword [r15 + 0x1a0]
vpor ymm0, ymm0, ymm5
vpslld ymm5, ymm9, 2
lea ebx, [rbx + rdi]
mov ebp, eax
or ebp, esi
rorx r12d, esi, 0x1b
rorx edi, esi, 2
and ebp, edx
and esi, eax
or esi, ebp
add ebx, r12d
add ecx, dword [r15 + 0x1a4]
vpsrld ymm9, ymm9, 0x1e
vpxor ymm0, ymm0, ymm5
lea ecx, [rcx + rsi]
mov ebp, edi
or ebp, ebx
rorx r12d, ebx, 0x1b
rorx esi, ebx, 2
and ebp, eax
and ebx, edi
or ebx, ebp
add ecx, r12d
add edx, dword [r15 + 0x1a8]
lea edx, [rdx + rbx]
mov ebp, esi
or ebp, ecx
rorx r12d, ecx, 0x1b
rorx ebx, ecx, 2
and ebp, edi
and ecx, esi
or ecx, ebp
add edx, r12d
add eax, dword [r15 + 0x1ac]
vpxor ymm5, ymm0, ymm9
vpaddd ymm0, ymm5, ymmword [r8 + 0x20]
vmovdqu ymmword [r14 + 0xc0], ymm0
lea eax, [rax + rcx]
mov ebp, ebx
or ebp, edx
rorx r12d, edx, 0x1b
rorx ecx, edx, 2
and ebp, esi
and edx, ebx
or edx, ebp
add eax, r12d
add edi, dword [r15 + 0x1c0]
vpalignr ymm3, ymm8, ymm12, 8
vpsrldq ymm0, ymm5, 4
lea edi, [rdi + rdx]
mov ebp, ecx
or ebp, eax
rorx r12d, eax, 0x1b
rorx edx, eax, 2
and ebp, ebx
and eax, ecx
or eax, ebp
add edi, r12d
add esi, dword [r15 + 0x1c4]
vpxor ymm3, ymm3, ymm7
vpxor ymm0, ymm0, ymm12
lea esi, [rsi + rax]
mov ebp, edx
or ebp, edi
rorx r12d, edi, 0x1b
rorx eax, edi, 2
and ebp, ecx
and edi, edx
or edi, ebp
add esi, r12d
add ebx, dword [r15 + 0x1c8]
vpxor ymm3, ymm3, ymm0
vpslldq ymm9, ymm3, 0xc
lea ebx, [rbx + rdi]
mov ebp, eax
or ebp, esi
rorx r12d, esi, 0x1b
rorx edi, esi, 2
and ebp, edx
and esi, eax
or esi, ebp
add ebx, r12d
add ecx, dword [r15 + 0x1cc]
lea ecx, [rcx + rsi]
rorx r12d, ebx, 0x1b
rorx esi, ebx, 2
vpslld ymm0, ymm3, 1
vpsrld ymm3, ymm3, 0x1f
xor ebx, edi
add ecx, r12d
xor ebx, eax
add r10, 0x80
cmp r10, r11
cmovae r10, r8
add edx, dword [r15 + 0x1e0]
lea edx, [rdx + rbx]
rorx r12d, ecx, 0x1b
rorx ebx, ecx, 2
vpor ymm0, ymm0, ymm3
vpslld ymm3, ymm9, 2
xor ecx, esi
add edx, r12d
xor ecx, edi
add eax, dword [r15 + 0x1e4]
lea eax, [rax + rcx]
rorx r12d, edx, 0x1b
rorx ecx, edx, 2
vpsrld ymm9, ymm9, 0x1e
vpxor ymm0, ymm0, ymm3
xor edx, ebx
add eax, r12d
xor edx, esi
add edi, dword [r15 + 0x1e8]
lea edi, [rdi + rdx]
rorx r12d, eax, 0x1b
rorx edx, eax, 2
xor eax, ecx
add edi, r12d
xor eax, ebx
add esi, dword [r15 + 0x1ec]
lea esi, [rsi + rax]
rorx r12d, edi, 0x1b
rorx eax, edi, 2
vpxor ymm3, ymm0, ymm9
vpaddd ymm0, ymm3, ymmword [r8 + 0x20]
vmovdqu ymmword [r14 + 0xe0], ymm0
xor edi, edx
add esi, r12d
xor edi, ecx
add ebx, dword [r15 + 0x200]
lea ebx, [rbx + rdi]
rorx r12d, esi, 0x1b
rorx edi, esi, 2
vpalignr ymm0, ymm3, ymm5, 8
xor esi, eax
add ebx, r12d
xor esi, edx
add ecx, dword [r15 + 0x204]
lea ecx, [rcx + rsi]
rorx r12d, ebx, 0x1b
rorx esi, ebx, 2
vpxor ymm15, ymm15, ymm14
xor ebx, edi
add ecx, r12d
xor ebx, eax
add edx, dword [r15 + 0x208]
lea edx, [rdx + rbx]
rorx r12d, ecx, 0x1b
rorx ebx, ecx, 2
vpxor ymm0, ymm0, ymm8
xor ecx, esi
add edx, r12d
xor ecx, edi
add eax, dword [r15 + 0x20c]
lea eax, [rax + rcx]
rorx r12d, edx, 0x1b
rorx ecx, edx, 2
vpxor ymm15, ymm15, ymm0
xor edx, ebx
add eax, r12d
xor edx, esi
add edi, dword [r15 + 0x220]
lea edi, [rdi + rdx]
rorx r12d, eax, 0x1b
rorx edx, eax, 2
vpslld ymm0, ymm15, 2
xor eax, ecx
add edi, r12d
xor eax, ebx
add esi, dword [r15 + 0x224]
lea esi, [rsi + rax]
rorx r12d, edi, 0x1b
rorx eax, edi, 2
vpsrld ymm15, ymm15, 0x1e
vpor ymm15, ymm0, ymm15
xor edi, edx
add esi, r12d
xor edi, ecx
add ebx, dword [r15 + 0x228]
lea ebx, [rbx + rdi]
rorx r12d, esi, 0x1b
rorx edi, esi, 2
xor esi, eax
add ebx, r12d
xor esi, edx
add ecx, dword [r15 + 0x22c]
lea ecx, [rcx + rsi]
rorx r12d, ebx, 0x1b
rorx esi, ebx, 2
vpaddd ymm0, ymm15, ymmword [r8 + 0x20]
vmovdqu ymmword [r14 + 0x100], ymm0
xor ebx, edi
add ecx, r12d
xor ebx, eax
add edx, dword [r15 + 0x240]
lea edx, [rdx + rbx]
rorx r12d, ecx, 0x1b
rorx ebx, ecx, 2
vpalignr ymm0, ymm15, ymm3, 8
xor ecx, esi
add edx, r12d
xor ecx, edi
add eax, dword [r15 + 0x244]
lea eax, [rax + rcx]
rorx r12d, edx, 0x1b
rorx ecx, edx, 2
vpxor ymm14, ymm14, ymm13
xor edx, ebx
add eax, r12d
xor edx, esi
add edi, dword [r15 + 0x248]
lea edi, [rdi + rdx]
rorx r12d, eax, 0x1b
rorx edx, eax, 2
vpxor ymm0, ymm0, ymm7
xor eax, ecx
add edi, r12d
xor eax, ebx
add esi, dword [r15 + 0x24c]
lea esi, [rsi + rax]
rorx r12d, edi, 0x1b
rorx eax, edi, 2
vpxor ymm14, ymm14, ymm0
xor edi, edx
add esi, r12d
xor edi, ecx
add ebx, dword [r15 + 0x260]
lea ebx, [rbx + rdi]
rorx r12d, esi, 0x1b
rorx edi, esi, 2
vpslld ymm0, ymm14, 2
xor esi, eax
add ebx, r12d
xor esi, edx
add ecx, dword [r15 + 0x264]
lea ecx, [rcx + rsi]
rorx r12d, ebx, 0x1b
rorx esi, ebx, 2
vpsrld ymm14, ymm14, 0x1e
vpor ymm14, ymm0, ymm14
xor ebx, edi
add ecx, r12d
xor ebx, eax
add edx, dword [r15 + 0x268]
lea edx, [rdx + rbx]
rorx r12d, ecx, 0x1b
rorx ebx, ecx, 2
xor ecx, esi
add edx, r12d
xor ecx, edi
add eax, dword [r15 + 0x26c]
lea eax, [rax + rcx]
rorx r12d, edx, 0x1b
vpaddd ymm0, ymm14, ymmword [r8 + 0x20]
vmovdqu ymmword [r14 + 0x120], ymm0
add eax, r12d
add eax, dword [r9]
mov dword [r9], eax
add edx, dword [r9 + 4]
mov dword [r9 + 4], edx
add ebx, dword [r9 + 8]
mov dword [r9 + 8], ebx
add esi, dword [r9 + 0xc]
mov dword [r9 + 0xc], esi
add edi, dword [r9 + 0x10]
mov dword [r9 + 0x10], edi
cmp r10, r8
je 0x522429
mov ecx, edx
mov edx, ecx
rorx ecx, ecx, 2
andn ebp, edx, esi
and edx, ebx
xor edx, ebp
add edi, dword [r15 + 0x10]
andn ebp, eax, ebx
lea edi, [rdi + rdx]
rorx r12d, eax, 0x1b
rorx edx, eax, 2
vpalignr ymm0, ymm14, ymm15, 8
and eax, ecx
xor eax, ebp
lea edi, [rdi + r12]
add esi, dword [r15 + 0x14]
andn ebp, edi, ecx
lea esi, [rsi + rax]
rorx r12d, edi, 0x1b
rorx eax, edi, 2
vpxor ymm13, ymm13, ymm12
and edi, edx
xor edi, ebp
lea esi, [rsi + r12]
add ebx, dword [r15 + 0x18]
andn ebp, esi, edx
lea ebx, [rbx + rdi]
rorx r12d, esi, 0x1b
rorx edi, esi, 2
vpxor ymm0, ymm0, ymm5
and esi, eax
xor esi, ebp
lea ebx, [rbx + r12]
add ecx, dword [r15 + 0x1c]
andn ebp, ebx, eax
lea ecx, [rcx + rsi]
rorx r12d, ebx, 0x1b
rorx esi, ebx, 2
vpxor ymm13, ymm13, ymm0
and ebx, edi
xor ebx, ebp
lea ecx, [rcx + r12]
add edx, dword [r15 + 0x30]
andn ebp, ecx, edi
lea edx, [rdx + rbx]
rorx r12d, ecx, 0x1b
rorx ebx, ecx, 2
vpslld ymm0, ymm13, 2
and ecx, esi
xor ecx, ebp
lea edx, [rdx + r12]
add eax, dword [r15 + 0x34]
andn ebp, edx, esi
lea eax, [rax + rcx]
rorx r12d, edx, 0x1b
rorx ecx, edx, 2
vpsrld ymm13, ymm13, 0x1e
vpor ymm13, ymm0, ymm13
and edx, ebx
xor edx, ebp
lea eax, [rax + r12]
add edi, dword [r15 + 0x38]
andn ebp, eax, ebx
lea edi, [rdi + rdx]
rorx r12d, eax, 0x1b
rorx edx, eax, 2
and eax, ecx
xor eax, ebp
lea edi, [rdi + r12]
add esi, dword [r15 + 0x3c]
andn ebp, edi, ecx
lea esi, [rsi + rax]
rorx r12d, edi, 0x1b
rorx eax, edi, 2
vpaddd ymm0, ymm13, ymmword [r8 + 0x40]
vmovdqu ymmword [r14 + 0x140], ymm0
and edi, edx
xor edi, ebp
lea esi, [rsi + r12]
add ebx, dword [r15 + 0x50]
andn ebp, esi, edx
lea ebx, [rbx + rdi]
rorx r12d, esi, 0x1b
rorx edi, esi, 2
vpalignr ymm0, ymm13, ymm14, 8
and esi, eax
xor esi, ebp
lea ebx, [rbx + r12]
add ecx, dword [r15 + 0x54]
andn ebp, ebx, eax
lea ecx, [rcx + rsi]
rorx r12d, ebx, 0x1b
rorx esi, ebx, 2
vpxor ymm12, ymm12, ymm8
and ebx, edi
xor ebx, ebp
lea ecx, [rcx + r12]
add edx, dword [r15 + 0x58]
andn ebp, ecx, edi
lea edx, [rdx + rbx]
rorx r12d, ecx, 0x1b
rorx ebx, ecx, 2
vpxor ymm0, ymm0, ymm3
and ecx, esi
xor ecx, ebp
lea edx, [rdx + r12]
add eax, dword [r15 + 0x5c]
andn ebp, edx, esi
lea eax, [rax + rcx]
rorx r12d, edx, 0x1b
rorx ecx, edx, 2
vpxor ymm12, ymm12, ymm0
and edx, ebx
xor edx, ebp
lea eax, [rax + r12]
add edi, dword [r15 + 0x70]
andn ebp, eax, ebx
lea edi, [rdi + rdx]
rorx r12d, eax, 0x1b
rorx edx, eax, 2
vpslld ymm0, ymm12, 2
and eax, ecx
xor eax, ebp
lea edi, [rdi + r12]
add esi, dword [r15 + 0x74]
andn ebp, edi, ecx
lea esi, [rsi + rax]
rorx r12d, edi, 0x1b
rorx eax, edi, 2
vpsrld ymm12, ymm12, 0x1e
vpor ymm12, ymm0, ymm12
and edi, edx
xor edi, ebp
lea esi, [rsi + r12]
add ebx, dword [r15 + 0x78]
andn ebp, esi, edx
lea ebx, [rbx + rdi]
rorx r12d, esi, 0x1b
rorx edi, esi, 2
and esi, eax
xor esi, ebp
lea ebx, [rbx + r12]
add ecx, dword [r15 + 0x7c]
andn ebp, ebx, eax
lea ecx, [rcx + rsi]
rorx r12d, ebx, 0x1b
rorx esi, ebx, 2
vpaddd ymm0, ymm12, ymmword [r8 + 0x40]
vmovdqu ymmword [r14 + 0x160], ymm0
and ebx, edi
xor ebx, ebp
lea ecx, [rcx + r12]
add edx, dword [r15 + 0x90]
andn ebp, ecx, edi
lea edx, [rdx + rbx]
rorx r12d, ecx, 0x1b
rorx ebx, ecx, 2
vpalignr ymm0, ymm12, ymm13, 8
and ecx, esi
xor ecx, ebp
lea edx, [rdx + r12]
add eax, dword [r15 + 0x94]
andn ebp, edx, esi
lea eax, [rax + rcx]
rorx r12d, edx, 0x1b
rorx ecx, edx, 2
vpxor ymm8, ymm8, ymm7
and edx, ebx
xor edx, ebp
lea eax, [rax + r12]
add edi, dword [r15 + 0x98]
andn ebp, eax, ebx
lea edi, [rdi + rdx]
rorx r12d, eax, 0x1b
rorx edx, eax, 2
vpxor ymm0, ymm0, ymm15
and eax, ecx
xor eax, ebp
lea edi, [rdi + r12]
add esi, dword [r15 + 0x9c]
lea esi, [rsi + rax]
rorx r12d, edi, 0x1b
rorx eax, edi, 2
vpxor ymm8, ymm8, ymm0
xor edi, edx
add esi, r12d
xor edi, ecx
add ebx, dword [r15 + 0xb0]
lea ebx, [rbx + rdi]
rorx r12d, esi, 0x1b
rorx edi, esi, 2
vpslld ymm0, ymm8, 2
xor esi, eax
add ebx, r12d
xor esi, edx
add ecx, dword [r15 + 0xb4]
lea ecx, [rcx + rsi]
rorx r12d, ebx, 0x1b
rorx esi, ebx, 2
vpsrld ymm8, ymm8, 0x1e
vpor ymm8, ymm0, ymm8
xor ebx, edi
add ecx, r12d
xor ebx, eax
add edx, dword [r15 + 0xb8]
lea edx, [rdx + rbx]
rorx r12d, ecx, 0x1b
rorx ebx, ecx, 2
xor ecx, esi
add edx, r12d
xor ecx, edi
add eax, dword [r15 + 0xbc]
lea eax, [rax + rcx]
rorx r12d, edx, 0x1b
rorx ecx, edx, 2
vpaddd ymm0, ymm8, ymmword [r8 + 0x40]
vmovdqu ymmword [r14 + 0x180], ymm0
xor edx, ebx
add eax, r12d
xor edx, esi
add edi, dword [r15 + 0xd0]
lea edi, [rdi + rdx]
rorx r12d, eax, 0x1b
rorx edx, eax, 2
vpalignr ymm0, ymm8, ymm12, 8
xor eax, ecx
add edi, r12d
xor eax, ebx
add esi, dword [r15 + 0xd4]
lea esi, [rsi + rax]
rorx r12d, edi, 0x1b
rorx eax, edi, 2
vpxor ymm7, ymm7, ymm5
xor edi, edx
add esi, r12d
xor edi, ecx
add ebx, dword [r15 + 0xd8]
lea ebx, [rbx + rdi]
rorx r12d, esi, 0x1b
rorx edi, esi, 2
vpxor ymm0, ymm0, ymm14
xor esi, eax
add ebx, r12d
xor esi, edx
add ecx, dword [r15 + 0xdc]
lea ecx, [rcx + rsi]
rorx r12d, ebx, 0x1b
rorx esi, ebx, 2
vpxor ymm7, ymm7, ymm0
xor ebx, edi
add ecx, r12d
xor ebx, eax
add edx, dword [r15 + 0xf0]
lea edx, [rdx + rbx]
rorx r12d, ecx, 0x1b
rorx ebx, ecx, 2
vpslld ymm0, ymm7, 2
xor ecx, esi
add edx, r12d
xor ecx, edi
add eax, dword [r15 + 0xf4]
lea eax, [rax + rcx]
rorx r12d, edx, 0x1b
rorx ecx, edx, 2
vpsrld ymm7, ymm7, 0x1e
vpor ymm7, ymm0, ymm7
xor edx, ebx
add eax, r12d
xor edx, esi
add edi, dword [r15 + 0xf8]
lea edi, [rdi + rdx]
rorx r12d, eax, 0x1b
rorx edx, eax, 2
xor eax, ecx
add edi, r12d
xor eax, ebx
add esi, dword [r15 + 0xfc]
lea esi, [rsi + rax]
rorx r12d, edi, 0x1b
rorx eax, edi, 2
vpaddd ymm0, ymm7, ymmword [r8 + 0x40]
vmovdqu ymmword [r14 + 0x1a0], ymm0
xor edi, edx
add esi, r12d
xor edi, ecx
add ebx, dword [r15 + 0x110]
lea ebx, [rbx + rdi]
rorx r12d, esi, 0x1b
rorx edi, esi, 2
vpalignr ymm0, ymm7, ymm8, 8
xor esi, eax
add ebx, r12d
xor esi, edx
add ecx, dword [r15 + 0x114]
lea ecx, [rcx + rsi]
rorx r12d, ebx, 0x1b
rorx esi, ebx, 2
vpxor ymm5, ymm5, ymm3
xor ebx, edi
add ecx, r12d
xor ebx, eax
add edx, dword [r15 + 0x118]
lea edx, [rdx + rbx]
rorx r12d, ecx, 0x1b
rorx ebx, ecx, 2
vpxor ymm0, ymm0, ymm13
xor ecx, esi
add edx, r12d
xor ecx, edi
add eax, dword [r15 + 0x11c]
lea eax, [rax + rcx]
rorx r12d, edx, 0x1b
rorx ecx, edx, 2
vpxor ymm5, ymm5, ymm0
xor edx, ebx
add eax, r12d
xor edx, esi
add edi, dword [r15 + 0x130]
lea edi, [rdi + rdx]
rorx r12d, eax, 0x1b
rorx edx, eax, 2
vpslld ymm0, ymm5, 2
xor eax, ecx
add edi, r12d
xor eax, ebx
add esi, dword [r15 + 0x134]
lea esi, [rsi + rax]
rorx r12d, edi, 0x1b
rorx eax, edi, 2
vpsrld ymm5, ymm5, 0x1e
vpor ymm5, ymm0, ymm5
xor edi, edx
add esi, r12d
xor edi, ecx
add ebx, dword [r15 + 0x138]
lea ebx, [rbx + rdi]
rorx r12d, esi, 0x1b
rorx edi, esi, 2
xor esi, eax
add ebx, r12d
xor esi, edx
add ecx, dword [r15 + 0x13c]
vpaddd ymm0, ymm5, ymmword [r8 + 0x40]
vmovdqu ymmword [r14 + 0x1c0], ymm0
lea ecx, [rcx + rsi]
mov ebp, edi
or ebp, ebx
rorx r12d, ebx, 0x1b
rorx esi, ebx, 2
and ebp, eax
and ebx, edi
or ebx, ebp
add ecx, r12d
add edx, dword [r15 + 0x150]
vpalignr ymm0, ymm5, ymm7, 8
lea edx, [rdx + rbx]
mov ebp, esi
or ebp, ecx
rorx r12d, ecx, 0x1b
rorx ebx, ecx, 2
and ebp, edi
and ecx, esi
or ecx, ebp
add edx, r12d
add eax, dword [r15 + 0x154]
vpxor ymm3, ymm3, ymm15
lea eax, [rax + rcx]
mov ebp, ebx
or ebp, edx
rorx r12d, edx, 0x1b
rorx ecx, edx, 2
and ebp, esi
and edx, ebx
or edx, ebp
add eax, r12d
add edi, dword [r15 + 0x158]
vpxor ymm0, ymm0, ymm12
lea edi, [rdi + rdx]
mov ebp, ecx
or ebp, eax
rorx r12d, eax, 0x1b
rorx edx, eax, 2
and ebp, ebx
and eax, ecx
or eax, ebp
add edi, r12d
add esi, dword [r15 + 0x15c]
vpxor ymm3, ymm3, ymm0
lea esi, [rsi + rax]
mov ebp, edx
or ebp, edi
rorx r12d, edi, 0x1b
rorx eax, edi, 2
and ebp, ecx
and edi, edx
or edi, ebp
add esi, r12d
add ebx, dword [r15 + 0x170]
vpslld ymm0, ymm3, 2
lea ebx, [rbx + rdi]
mov ebp, eax
or ebp, esi
rorx r12d, esi, 0x1b
rorx edi, esi, 2
and ebp, edx
and esi, eax
or esi, ebp
add ebx, r12d
add ecx, dword [r15 + 0x174]
vpsrld ymm3, ymm3, 0x1e
vpor ymm3, ymm0, ymm3
lea ecx, [rcx + rsi]
mov ebp, edi
or ebp, ebx
rorx r12d, ebx, 0x1b
rorx esi, ebx, 2
and ebp, eax
and ebx, edi
or ebx, ebp
add ecx, r12d
add edx, dword [r15 + 0x178]
lea edx, [rdx + rbx]
mov ebp, esi
or ebp, ecx
rorx r12d, ecx, 0x1b
rorx ebx, ecx, 2
and ebp, edi
and ecx, esi
or ecx, ebp
add edx, r12d
add eax, dword [r15 + 0x17c]
vpaddd ymm0, ymm3, ymmword [r8 + 0x60]
vmovdqu ymmword [r14 + 0x1e0], ymm0
lea eax, [rax + rcx]
mov ebp, ebx
or ebp, edx
rorx r12d, edx, 0x1b
rorx ecx, edx, 2
and ebp, esi
and edx, ebx
or edx, ebp
add eax, r12d
add edi, dword [r15 + 0x190]
vpalignr ymm0, ymm3, ymm5, 8
lea edi, [rdi + rdx]
mov ebp, ecx
or ebp, eax
rorx r12d, eax, 0x1b
rorx edx, eax, 2
and ebp, ebx
and eax, ecx
or eax, ebp
add edi, r12d
add esi, dword [r15 + 0x194]
vpxor ymm15, ymm15, ymm14
lea esi, [rsi + rax]
mov ebp, edx
or ebp, edi
rorx r12d, edi, 0x1b
rorx eax, edi, 2
and ebp, ecx
and edi, edx
or edi, ebp
add esi, r12d
add ebx, dword [r15 + 0x198]
vpxor ymm0, ymm0, ymm8
lea ebx, [rbx + rdi]
mov ebp, eax
or ebp, esi
rorx r12d, esi, 0x1b
rorx edi, esi, 2
and ebp, edx
and esi, eax
or esi, ebp
add ebx, r12d
add ecx, dword [r15 + 0x19c]
vpxor ymm15, ymm15, ymm0
lea ecx, [rcx + rsi]
mov ebp, edi
or ebp, ebx
rorx r12d, ebx, 0x1b
rorx esi, ebx, 2
and ebp, eax
and ebx, edi
or ebx, ebp
add ecx, r12d
add edx, dword [r15 + 0x1b0]
vpslld ymm0, ymm15, 2
lea edx, [rdx + rbx]
mov ebp, esi
or ebp, ecx
rorx r12d, ecx, 0x1b
rorx ebx, ecx, 2
and ebp, edi
and ecx, esi
or ecx, ebp
add edx, r12d
add eax, dword [r15 + 0x1b4]
vpsrld ymm15, ymm15, 0x1e
vpor ymm15, ymm0, ymm15
lea eax, [rax + rcx]
mov ebp, ebx
or ebp, edx
rorx r12d, edx, 0x1b
rorx ecx, edx, 2
and ebp, esi
and edx, ebx
or edx, ebp
add eax, r12d
add edi, dword [r15 + 0x1b8]
lea edi, [rdi + rdx]
mov ebp, ecx
or ebp, eax
rorx r12d, eax, 0x1b
rorx edx, eax, 2
and ebp, ebx
and eax, ecx
or eax, ebp
add edi, r12d
add esi, dword [r15 + 0x1bc]
vpaddd ymm0, ymm15, ymmword [r8 + 0x60]
vmovdqu ymmword [r14 + 0x200], ymm0
lea esi, [rsi + rax]
mov ebp, edx
or ebp, edi
rorx r12d, edi, 0x1b
rorx eax, edi, 2
and ebp, ecx
and edi, edx
or edi, ebp
add esi, r12d
add ebx, dword [r15 + 0x1d0]
vpalignr ymm0, ymm15, ymm3, 8
lea ebx, [rbx + rdi]
mov ebp, eax
or ebp, esi
rorx r12d, esi, 0x1b
rorx edi, esi, 2
and ebp, edx
and esi, eax
or esi, ebp
add ebx, r12d
add ecx, dword [r15 + 0x1d4]
vpxor ymm14, ymm14, ymm13
lea ecx, [rcx + rsi]
mov ebp, edi
or ebp, ebx
rorx r12d, ebx, 0x1b
rorx esi, ebx, 2
and ebp, eax
and ebx, edi
or ebx, ebp
add ecx, r12d
add edx, dword [r15 + 0x1d8]
vpxor ymm0, ymm0, ymm7
lea edx, [rdx + rbx]
mov ebp, esi
or ebp, ecx
rorx r12d, ecx, 0x1b
rorx ebx, ecx, 2
and ebp, edi
and ecx, esi
or ecx, ebp
add edx, r12d
add eax, dword [r15 + 0x1dc]
lea eax, [rax + rcx]
rorx r12d, edx, 0x1b
rorx ecx, edx, 2
vpxor ymm14, ymm14, ymm0
xor edx, ebx
add eax, r12d
xor edx, esi
add r13, 0x80
cmp r13, r11
cmovae r10, r8
add edi, dword [r15 + 0x1f0]
lea edi, [rdi + rdx]
rorx r12d, eax, 0x1b
rorx edx, eax, 2
vpslld ymm0, ymm14, 2
xor eax, ecx
add edi, r12d
xor eax, ebx
add esi, dword [r15 + 0x1f4]
lea esi, [rsi + rax]
rorx r12d, edi, 0x1b
rorx eax, edi, 2
vpsrld ymm14, ymm14, 0x1e
vpor ymm14, ymm0, ymm14
xor edi, edx
add esi, r12d
xor edi, ecx
add ebx, dword [r15 + 0x1f8]
lea ebx, [rbx + rdi]
rorx r12d, esi, 0x1b
rorx edi, esi, 2
xor esi, eax
add ebx, r12d
xor esi, edx
add ecx, dword [r15 + 0x1fc]
lea ecx, [rcx + rsi]
rorx r12d, ebx, 0x1b
rorx esi, ebx, 2
vpaddd ymm0, ymm14, ymmword [r8 + 0x60]
vmovdqu ymmword [r14 + 0x220], ymm0
xor ebx, edi
add ecx, r12d
xor ebx, eax
add edx, dword [r15 + 0x210]
lea edx, [rdx + rbx]
rorx r12d, ecx, 0x1b
rorx ebx, ecx, 2
vpalignr ymm0, ymm14, ymm15, 8
xor ecx, esi
add edx, r12d
xor ecx, edi
add eax, dword [r15 + 0x214]
lea eax, [rax + rcx]
rorx r12d, edx, 0x1b
rorx ecx, edx, 2
vpxor ymm13, ymm13, ymm12
xor edx, ebx
add eax, r12d
xor edx, esi
add edi, dword [r15 + 0x218]
lea edi, [rdi + rdx]
rorx r12d, eax, 0x1b
rorx edx, eax, 2
vpxor ymm0, ymm0, ymm5
xor eax, ecx
add edi, r12d
xor eax, ebx
add esi, dword [r15 + 0x21c]
lea esi, [rsi + rax]
rorx r12d, edi, 0x1b
rorx eax, edi, 2
vpxor ymm13, ymm13, ymm0
xor edi, edx
add esi, r12d
xor edi, ecx
add ebx, dword [r15 + 0x230]
lea ebx, [rbx + rdi]
rorx r12d, esi, 0x1b
rorx edi, esi, 2
vpslld ymm0, ymm13, 2
xor esi, eax
add ebx, r12d
xor esi, edx
add ecx, dword [r15 + 0x234]
lea ecx, [rcx + rsi]
rorx r12d, ebx, 0x1b
rorx esi, ebx, 2
vpsrld ymm13, ymm13, 0x1e
vpor ymm13, ymm0, ymm13
xor ebx, edi
add ecx, r12d
xor ebx, eax
add edx, dword [r15 + 0x238]
lea edx, [rdx + rbx]
rorx r12d, ecx, 0x1b
rorx ebx, ecx, 2
xor ecx, esi
add edx, r12d
xor ecx, edi
add eax, dword [r15 + 0x23c]
lea eax, [rax + rcx]
rorx r12d, edx, 0x1b
rorx ecx, edx, 2
vpaddd ymm0, ymm13, ymmword [r8 + 0x60]
vmovdqu ymmword [r14 + 0x240], ymm0
xor edx, ebx
add eax, r12d
xor edx, esi
add edi, dword [r15 + 0x250]
lea edi, [rdi + rdx]
rorx r12d, eax, 0x1b
rorx edx, eax, 2
vpalignr ymm0, ymm13, ymm14, 8
xor eax, ecx
add edi, r12d
xor eax, ebx
add esi, dword [r15 + 0x254]
lea esi, [rsi + rax]
rorx r12d, edi, 0x1b
rorx eax, edi, 2
vpxor ymm12, ymm12, ymm8
xor edi, edx
add esi, r12d
xor edi, ecx
add ebx, dword [r15 + 0x258]
lea ebx, [rbx + rdi]
rorx r12d, esi, 0x1b
rorx edi, esi, 2
vpxor ymm0, ymm0, ymm3
xor esi, eax
add ebx, r12d
xor esi, edx
add ecx, dword [r15 + 0x25c]
lea ecx, [rcx + rsi]
rorx r12d, ebx, 0x1b
rorx esi, ebx, 2
vpxor ymm12, ymm12, ymm0
xor ebx, edi
add ecx, r12d
xor ebx, eax
add edx, dword [r15 + 0x270]
lea edx, [rdx + rbx]
rorx r12d, ecx, 0x1b
rorx ebx, ecx, 2
vpslld ymm0, ymm12, 2
xor ecx, esi
add edx, r12d
xor ecx, edi
add eax, dword [r15 + 0x274]
lea eax, [rax + rcx]
rorx r12d, edx, 0x1b
rorx ecx, edx, 2
vpsrld ymm12, ymm12, 0x1e
vpor ymm12, ymm0, ymm12
xor edx, ebx
add eax, r12d
xor edx, esi
add edi, dword [r15 + 0x278]
lea edi, [rdi + rdx]
rorx r12d, eax, 0x1b
rorx edx, eax, 2
xor eax, ecx
add edi, r12d
xor eax, ebx
add esi, dword [r15 + 0x27c]
lea esi, [rsi + rax]
rorx r12d, edi, 0x1b
vpaddd ymm0, ymm12, ymmword [r8 + 0x60]
vmovdqu ymmword [r14 + 0x260], ymm0
add esi, r12d
add esi, dword [r9]
mov dword [r9], esi
add edi, dword [r9 + 4]
mov dword [r9 + 4], edi
add edx, dword [r9 + 8]
mov dword [r9 + 8], edx
add ecx, dword [r9 + 0xc]
mov dword [r9 + 0xc], ecx
add ebx, dword [r9 + 0x10]
mov dword [r9 + 0x10], ebx
mov r12d, esi
mov esi, edi
mov edi, edx
mov edx, ebx
mov eax, ecx
mov ecx, r12d
xchg r14, r15
jmp 0x522429
call fcn.004555d0
jmp fcn.00521f70