Function at 0x1800e2660
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x570
movaps xmmword [rax - 0x48], xmm6
movaps xmmword [rax - 0x58], xmm7
movaps xmmword [rax - 0x68], xmm8
movaps xmmword [rax - 0x78], xmm9
movaps xmmword [rax - 0x88], xmm10
movaps xmmword [rax - 0x98], xmm11
movaps xmmword [rax - 0xa8], xmm12
movaps xmmword [rax - 0xb8], xmm13
movaps xmmword [rax - 0xc8], xmm14
movaps xmmword [rax - 0xd8], xmm15
lea rbp, [rsp + 0x40]
and rbp, 0xffffffffffffffe0
mov rax, qword [0x1803a5f20]
xor rax, rsp
mov qword [rbp + 0x480], rax
mov qword [rbp + 0x40], rcx
mov r15, r9
mov r11, rdx
mov rbx, rcx
test r9, r9
je 0x1800e423a
cmp r9, 0x200
jb 0x1800e30a3
vbroadcastss ymm0, dword [rcx + 0x24]
vbroadcastss ymm4, dword [rcx]
vbroadcastss ymm6, dword [rcx + 0x14]
vbroadcastss ymm7, dword [rcx + 0x28]
vbroadcastss ymm5, dword [rcx + 0x3c]
vbroadcastss ymm12, dword [rcx + 0x30]
vbroadcastss ymm8, dword [rcx + 4]
vbroadcastss ymm9, dword [rcx + 0x18]
vbroadcastss ymm13, dword [rcx + 0x2c]
vbroadcastss ymm11, dword [rcx + 8]
vbroadcastss ymm14, dword [rcx + 0x1c]
vbroadcastss ymm15, dword [rcx + 0x10]
vmovdqu ymm10, ymmword [0x180115080]
vmovdqu ymm2, ymmword [0x180115040]
vmovdqu ymm3, ymmword [0x180115060]
lea rax, [r8 + 0x1c0]
mov qword [rbp], rax
lea r12, [rdx + 0x1c0]
lea rax, [r8 + 0x180]
mov qword [rbp + 0x30], rax
lea r14, [rdx + 0x180]
lea rax, [r8 + 0x140]
mov qword [rbp + 0x20], rax
lea rsi, [rdx + 0x140]
lea rax, [r8 + 0x100]
mov qword [rbp + 0x60], rax
lea rdi, [rdx + 0x100]
lea rax, [r8 + 0xc0]
mov qword [rbp + 0x50], rax
lea r10, [rdx + 0xc0]
lea rax, [r8 + 0x80]
mov qword [rbp + 0x80], rax
lea r9, [rdx + 0x80]
mov rax, r15
lea r13, [r8 + 0x40]
shr rax, 9
add rdx, 0x40
vmovdqu ymmword [rbp + 0x1a0], ymm0
vbroadcastss ymm0, dword [rcx + 0x38]
mov qword [rbp + 0x70], rax
imul rax, rax, 0xfffffffffffffe00
vmovdqu ymmword [rbp + 0x180], ymm0
vbroadcastss ymm0, dword [rcx + 0xc]
add r15, rax
mov qword [rbp + 0x10], r15
mov r15, qword [rbp + 0x80]
vmovdqu ymmword [rbp + 0x140], ymm4
vmovdqu ymmword [rbp + 0x120], ymm6
vmovdqu ymmword [rbp + 0x100], ymm7
vmovdqu ymmword [rbp + 0x2e0], ymm5
vmovdqu ymmword [rbp + 0x220], ymm12
vmovdqu ymmword [rbp + 0x300], ymm8
vmovdqu ymmword [rbp + 0x320], ymm9
vmovdqu ymmword [rbp + 0x340], ymm13
vmovdqu ymmword [rbp + 0x360], ymm11
vmovdqu ymmword [rbp + 0x380], ymm14
vmovdqu ymmword [rbp + 0x3a0], ymm15
vmovdqu ymmword [rbp + 0x160], ymm0
nop word [rax + rax]
mov eax, dword [rbx + 0x20]
mov ecx, dword [rbx + 0x34]
shl rcx, 0x20
or rcx, rax
mov eax, 0xa
vmovdqu ymmword [rbp + 0x280], ymm5
vmovdqu ymm5, ymm14
vmovdqu ymmword [rbp + 0x260], ymm13
vmovq xmm0, rcx
add rcx, 8
vpbroadcastq ymm1, xmm0
vpaddq ymm0, ymm3, ymm1
vpaddq ymm2, ymm2, ymm1
vpunpckldq ymm3, ymm2, ymm0
vpunpckhdq ymm1, ymm2, ymm0
vpunpckldq ymm0, ymm3, ymm1
vpermd ymm2, ymm10, ymm0
vmovdqu ymm0, ymmword [rbp + 0x180]
vpunpckhdq ymm1, ymm3, ymm1
vpermd ymm3, ymm10, ymm1
vmovdqu ymm1, ymmword [rbp + 0x160]
mov dword [rbx + 0x20], ecx
shr rcx, 0x20
vmovdqu ymm10, ymm8
vmovdqu ymmword [rbp + 0x2a0], ymm1
vmovdqu ymm8, ymm9
vmovdqu ymm9, ymmword [rbp + 0x1a0]
vmovdqu ymmword [rbp + 0xe0], ymm7
vmovdqu ymm1, ymm12
vmovdqu ymmword [rbp + 0x3c0], ymm2
vmovdqu ymmword [rbp + 0x400], ymm3
mov dword [rbx + 0x34], ecx
vmovdqu ymmword [rbp + 0xc0], ymm0
vmovdqu ymmword [rbp + 0x240], ymm5
vmovdqu ymm14, ymm4
vmovdqu ymm7, ymm15
vmovdqu ymm13, ymm2
jmp 0x1800e2950
vmovdqu ymm6, ymmword [rbp + 0x2c0]
vmovdqu ymm14, ymmword [rbp + 0x200]
vpaddd ymm0, ymm7, ymm14
vpsrld ymm2, ymm0, 0x19
vpslld ymm0, ymm0, 7
vpxor ymm1, ymm0, ymm1
vpxor ymm12, ymm1, ymm2
vpaddd ymm0, ymm6, ymm10
vpsrld ymm2, ymm0, 0x19
vpslld ymm0, ymm0, 7
vpxor ymm1, ymm0, ymm3
vpxor ymm4, ymm1, ymm2
vpaddd ymm0, ymm12, ymm14
vpsrld ymm2, ymm0, 0x17
vpslld ymm0, ymm0, 9
vpxor ymm1, ymm0, ymm13
vpxor ymm15, ymm1, ymm2
vpaddd ymm0, ymm4, ymm10
vpsrld ymm2, ymm0, 0x17
vpslld ymm0, ymm0, 9
vpxor ymm1, ymm0, ymm9
vpxor ymm3, ymm1, ymm2
vpaddd ymm0, ymm15, ymm12
vpsrld ymm2, ymm0, 0x13
vpslld ymm0, ymm0, 0xd
vpxor ymm1, ymm0, ymm7
vpxor ymm13, ymm1, ymm2
vpaddd ymm0, ymm4, ymm3
vpsrld ymm2, ymm0, 0x13
vpslld ymm0, ymm0, 0xd
vpxor ymm1, ymm0, ymm6
vpxor ymm6, ymm1, ymm2
vpaddd ymm0, ymm15, ymm13
vpsrld ymm2, ymm0, 0xe
vpslld ymm0, ymm0, 0x12
vpxor ymm1, ymm0, ymm14
vpxor ymm9, ymm1, ymm2
vpaddd ymm0, ymm3, ymm6
vpsrld ymm2, ymm0, 0xe
vpslld ymm0, ymm0, 0x12
vpxor ymm1, ymm0, ymm10
vpxor ymm10, ymm1, ymm2
vpaddd ymm0, ymm8, ymm11
vpsrld ymm2, ymm0, 0x19
vpslld ymm0, ymm0, 7
vpxor ymm1, ymm0, ymmword [rbp + 0xc0]
vpaddd ymm0, ymm5, ymmword [rbp + 0x2a0]
vpxor ymm14, ymm1, ymm2
vpsrld ymm2, ymm0, 0x19
vpslld ymm0, ymm0, 7
vpxor ymm1, ymm0, ymmword [rbp + 0x280]
vpxor ymm7, ymm1, ymm2
vpaddd ymm0, ymm14, ymm11
vpsrld ymm2, ymm0, 0x17
vpslld ymm0, ymm0, 9
vpxor ymm1, ymm0, ymmword [rbp + 0xe0]
vpaddd ymm0, ymm7, ymmword [rbp + 0x2a0]
vmovdqu ymmword [rbp + 0xa0], ymm4
vpxor ymm4, ymm1, ymm2
vpsrld ymm2, ymm0, 0x17
vpslld ymm0, ymm0, 9
vpxor ymm1, ymm0, ymmword [rbp + 0x260]
vpxor ymm5, ymm1, ymm2
vpaddd ymm0, ymm14, ymm4
vpsrld ymm2, ymm0, 0x13
vpslld ymm0, ymm0, 0xd
vpxor ymm1, ymm0, ymm8
vpaddd ymm0, ymm7, ymm5
vmovdqu ymmword [rbp + 0x80], ymm3
vpxor ymm3, ymm1, ymm2
vpsrld ymm2, ymm0, 0x13
vpslld ymm0, ymm0, 0xd
vpxor ymm1, ymm0, ymmword [rbp + 0x240]
vpxor ymm8, ymm1, ymm2
vpaddd ymm0, ymm4, ymm3
vpsrld ymm2, ymm0, 0xe
vpslld ymm0, ymm0, 0x12
vpxor ymm1, ymm0, ymm11
vpaddd ymm0, ymm7, ymm9
vpxor ymm11, ymm1, ymm2
vpsrld ymm2, ymm0, 0x19
vpslld ymm0, ymm0, 7
vpxor ymm1, ymm0, ymm6
vpxor ymm0, ymm1, ymm2
vmovdqu ymmword [rbp + 0x2c0], ymm0
vpaddd ymm0, ymm5, ymm8
vpsrld ymm2, ymm0, 0xe
vpslld ymm0, ymm0, 0x12
vpxor ymm1, ymm0, ymmword [rbp + 0x2a0]
vpxor ymm6, ymm1, ymm2
vpaddd ymm0, ymm12, ymm10
vpsrld ymm2, ymm0, 0x19
vpslld ymm0, ymm0, 7
vpxor ymm1, ymm0, ymm3
vpaddd ymm0, ymm9, ymmword [rbp + 0x2c0]
vpxor ymm3, ymm1, ymm2
vpsrld ymm2, ymm0, 0x17
vpslld ymm0, ymm0, 9
vpxor ymm1, ymm0, ymm4
vmovdqu ymm4, ymmword [rbp + 0x2c0]
vpxor ymm0, ymm1, ymm2
vmovdqu ymmword [rbp + 0xe0], ymm0
vpaddd ymm0, ymm3, ymm10
vpsrld ymm2, ymm0, 0x17
vpslld ymm0, ymm0, 9
vpxor ymm1, ymm0, ymm5
vpaddd ymm0, ymm4, ymmword [rbp + 0xe0]
vpxor ymm5, ymm1, ymm2
vpsrld ymm2, ymm0, 0x13
vpslld ymm0, ymm0, 0xd
vpxor ymm1, ymm0, ymm7
vpxor ymm7, ymm1, ymm2
vpaddd ymm0, ymm5, ymm3
vpsrld ymm2, ymm0, 0x13
vpslld ymm0, ymm0, 0xd
vpxor ymm1, ymm0, ymm12
vmovdqu ymm12, ymmword [rbp + 0xe0]
vpaddd ymm0, ymm7, ymm12
vmovdqu ymmword [rbp + 0x1c0], ymm3
vpxor ymm3, ymm1, ymm2
vpsrld ymm2, ymm0, 0xe
vpslld ymm0, ymm0, 0x12
vpxor ymm1, ymm0, ymm9
vpxor ymm0, ymm1, ymm2
vmovdqu ymmword [rbp + 0x200], ymm0
vpaddd ymm0, ymm3, ymm5
vpsrld ymm2, ymm0, 0xe
vpslld ymm0, ymm0, 0x12
vpxor ymm1, ymm0, ymm10
vpaddd ymm0, ymm11, ymmword [rbp + 0xa0]
vpxor ymm10, ymm1, ymm2
vpsrld ymm2, ymm0, 0x19
vpslld ymm0, ymm0, 7
vpxor ymm1, ymm0, ymm8
vpaddd ymm0, ymm14, ymm6
vmovdqu ymmword [rbp + 0x260], ymm5
vpxor ymm5, ymm1, ymm2
vpsrld ymm2, ymm0, 0x19
vpslld ymm0, ymm0, 7
vpxor ymm1, ymm0, ymm13
vpaddd ymm0, ymm5, ymm11
vmovdqu ymmword [rbp + 0x280], ymm7
vpxor ymm7, ymm1, ymm2
vpsrld ymm2, ymm0, 0x17
vpslld ymm0, ymm0, 9
vpxor ymm1, ymm0, ymm15
vpxor ymm13, ymm1, ymm2
vpaddd ymm0, ymm7, ymm6
vpsrld ymm2, ymm0, 0x17
vpslld ymm0, ymm0, 9
vpxor ymm1, ymm0, ymmword [rbp + 0x80]
vpxor ymm9, ymm1, ymm2
vpaddd ymm0, ymm13, ymm5
vpsrld ymm2, ymm0, 0x13
vpslld ymm0, ymm0, 0xd
vpxor ymm1, ymm0, ymmword [rbp + 0xa0]
vpxor ymm8, ymm1, ymm2
vmovdqu ymmword [rbp + 0xa0], ymm8
vmovdqu ymmword [rbp + 0x1e0], ymm3
vmovdqu ymmword [rbp + 0x240], ymm5
vmovdqu ymmword [rbp + 0x420], ymm7
vmovdqu ymmword [rbp + 0x3e0], ymm13
vmovdqu ymmword [rbp + 0x440], ymm9
vpaddd ymm0, ymm9, ymm7
vpsrld ymm2, ymm0, 0x13
vpslld ymm0, ymm0, 0xd
vpxor ymm1, ymm0, ymm14
vpxor ymm3, ymm1, ymm2
vpaddd ymm0, ymm8, ymm13
vmovdqu ymm8, ymmword [rbp + 0x1c0]
vpsrld ymm2, ymm0, 0xe
vpslld ymm0, ymm0, 0x12
vpxor ymm1, ymm0, ymm11
vpxor ymm11, ymm1, ymm2
vpaddd ymm0, ymm3, ymm9
vpsrld ymm2, ymm0, 0xe
vpslld ymm0, ymm0, 0x12
vpxor ymm1, ymm0, ymm6
vpxor ymm15, ymm1, ymm2
vmovdqu ymm1, ymmword [rbp + 0x1e0]
vmovdqu ymmword [rbp + 0xc0], ymm3
vmovdqu ymm3, ymmword [rbp + 0xa0]
vmovdqu ymmword [rbp + 0x2a0], ymm15
vmovdqu ymmword [rbp + 0x80], ymm11
sub rax, 1
jne 0x1800e2940
vpaddd ymm2, ymm4, ymmword [rbp + 0x120]
vpaddd ymm3, ymm12, ymmword [rbp + 0x100]
vmovdqu ymm0, ymmword [rbp + 0x140]
vpaddd ymm5, ymm0, ymmword [rbp + 0x200]
vmovdqu ymm1, ymmword [rbp + 0x2e0]
vpaddd ymm0, ymm1, ymmword [rbp + 0x280]
mov rbx, qword [rbp + 0x20]
mov rax, qword [rbp + 0x50]
mov rcx, qword [rbp + 0x60]
add qword [rbp + 0x20], 0x20
vpunpckldq ymm1, ymm3, ymm0
vpunpckldq ymm4, ymm5, ymm2
vpunpckhdq ymm5, ymm5, ymm2
vpunpckhdq ymm2, ymm3, ymm0
vpaddd ymm3, ymm8, ymmword [rbp + 0x320]
vpunpcklqdq ymm12, ymm5, ymm2
vpunpckhqdq ymm13, ymm5, ymm2
vpaddd ymm2, ymm10, ymmword [rbp + 0x300]
vpunpcklqdq ymm14, ymm4, ymm1
vpunpckhqdq ymm11, ymm4, ymm1
vmovdqu ymm1, ymmword [rbp + 0x1e0]
vpaddd ymm5, ymm1, ymmword [rbp + 0x220]
vmovdqu ymm1, ymmword [rbp + 0x340]
vpaddd ymm0, ymm1, ymmword [rbp + 0x260]
vpunpckldq ymm1, ymm3, ymm0
vpunpckldq ymm4, ymm5, ymm2
vpunpckhdq ymm5, ymm5, ymm2
vpunpckhdq ymm2, ymm3, ymm0
vpunpckhqdq ymm3, ymm4, ymm1
vpunpcklqdq ymm10, ymm4, ymm1
vmovdqu ymm1, ymmword [rbp + 0x380]
vpunpcklqdq ymm4, ymm5, ymm2
vpunpckhqdq ymm2, ymm5, ymm2
vperm2i128 ymm0, ymm11, ymm3, 0x20
vpxor ymm9, ymm0, ymmword [rdx]
vperm2i128 ymm0, ymm12, ymm4, 0x20
vpxor ymm8, ymm0, ymmword [r9]
vperm2i128 ymm0, ymm13, ymm2, 0x20
vpxor ymm7, ymm0, ymmword [r10]
vperm2i128 ymm0, ymm14, ymm10, 0x31
vpxor ymm6, ymm0, ymmword [rdi]
vperm2i128 ymm0, ymm11, ymm3, 0x31
vpxor ymm5, ymm0, ymmword [rsi]
vperm2i128 ymm0, ymm12, ymm4, 0x31
vpxor ymm4, ymm0, ymmword [r14]
vperm2i128 ymm0, ymm13, ymm2, 0x31
vpxor ymm3, ymm0, ymmword [r12]
vperm2i128 ymm0, ymm14, ymm10, 0x20
vpxor ymm2, ymm0, ymmword [r11]
vmovdqu ymm0, ymmword [rbp + 0x3c0]
vmovdqu ymmword [r8], ymm2
vmovdqu ymmword [r13], ymm9
vmovdqu ymmword [r15], ymm8
vmovdqu ymmword [rax], ymm7
vmovdqu ymmword [rcx], ymm6
vmovdqu ymmword [rbx], ymm5
vpaddd ymm5, ymm0, ymmword [rbp + 0x3e0]
mov rbx, qword [rbp + 0x30]
vmovdqu ymm0, ymmword [rbp + 0x360]
add qword [rbp + 0x30], 0x20
vmovdqu ymmword [rbx], ymm4
mov rbx, qword [rbp]
add qword [rbp], 0x20
vmovdqu ymmword [rbx], ymm3
vmovdqu ymm3, ymmword [rbp + 0xa0]
vpaddd ymm2, ymm3, ymmword [rbp + 0x400]
vpaddd ymm3, ymm0, ymmword [rbp + 0x80]
vpaddd ymm0, ymm1, ymmword [rbp + 0x240]
vpunpckldq ymm4, ymm5, ymm2
vpunpckhdq ymm5, ymm5, ymm2
vpunpckhdq ymm2, ymm3, ymm0
vpunpckldq ymm1, ymm3, ymm0
vmovdqu ymm0, ymmword [rbp + 0x3a0]
vpunpcklqdq ymm12, ymm5, ymm2
vpunpckhqdq ymm13, ymm5, ymm2
vpaddd ymm5, ymm0, ymmword [rbp + 0x420]
vmovdqu ymm0, ymmword [rbp + 0x1a0]
vpaddd ymm2, ymm0, ymmword [rbp + 0x440]
vmovdqu ymm0, ymmword [rbp + 0x180]
vpunpcklqdq ymm14, ymm4, ymm1
vpunpckhqdq ymm11, ymm4, ymm1
vpaddd ymm3, ymm0, ymmword [rbp + 0xc0]
vpaddd ymm0, ymm15, ymmword [rbp + 0x160]
mov rbx, qword [rbp + 0x20]
add qword [rbp + 0x20], 0x1e0
vmovdqu ymm15, ymmword [rbp + 0x3a0]
vpunpckldq ymm1, ymm3, ymm0
vpunpckldq ymm4, ymm5, ymm2
vpunpckhdq ymm5, ymm5, ymm2
vpunpckhdq ymm2, ymm3, ymm0
vpunpckhqdq ymm3, ymm4, ymm1
vpunpcklqdq ymm10, ymm4, ymm1
vpunpcklqdq ymm4, ymm5, ymm2
vpunpckhqdq ymm2, ymm5, ymm2
vperm2i128 ymm0, ymm11, ymm3, 0x20
vpxor ymm9, ymm0, ymmword [rdx + 0x20]
vperm2i128 ymm0, ymm12, ymm4, 0x20
vpxor ymm8, ymm0, ymmword [r9 + 0x20]
vperm2i128 ymm0, ymm13, ymm2, 0x20
vpxor ymm7, ymm0, ymmword [r10 + 0x20]
vperm2i128 ymm0, ymm14, ymm10, 0x31
vpxor ymm6, ymm0, ymmword [rdi + 0x20]
vperm2i128 ymm0, ymm11, ymm3, 0x31
vpxor ymm5, ymm0, ymmword [rsi + 0x20]
vmovdqu ymm11, ymmword [rbp + 0x360]
vperm2i128 ymm0, ymm12, ymm4, 0x31
vpxor ymm4, ymm0, ymmword [r14 + 0x20]
vmovdqu ymm12, ymmword [rbp + 0x220]
vperm2i128 ymm0, ymm13, ymm2, 0x31
vpxor ymm3, ymm0, ymmword [r12 + 0x20]
vmovdqu ymm13, ymmword [rbp + 0x340]
vperm2i128 ymm0, ymm14, ymm10, 0x20
vpxor ymm2, ymm0, ymmword [r11 + 0x20]
vmovdqu ymm14, ymmword [rbp + 0x380]
vmovdqu ymm10, ymmword [0x180115080]
vmovdqu ymmword [r8 + 0x20], ymm2
vmovdqu ymm2, ymmword [0x180115040]
vmovdqu ymmword [r13 + 0x20], ymm9
vmovdqu ymm9, ymmword [rbp + 0x320]
vmovdqu ymmword [r15 + 0x20], ymm8
vmovdqu ymm8, ymmword [rbp + 0x300]
vmovdqu ymmword [rax + 0x20], ymm7
vmovdqu ymm7, ymmword [rbp + 0x100]
vmovdqu ymmword [rcx + 0x20], ymm6
vmovdqu ymm6, ymmword [rbp + 0x120]
vmovdqu ymmword [rbx], ymm5
mov rbx, qword [rbp + 0x30]
add rax, 0x200
add qword [rbp + 0x30], 0x1e0
add rcx, 0x200
vmovdqu ymm5, ymmword [rbp + 0x2e0]
add r8, 0x200
mov qword [rbp + 0x50], rax
vmovdqu ymmword [rbx], ymm4
mov rbx, qword [rbp]
add r13, 0x200
add qword [rbp], 0x1e0
add r15, 0x200
vmovdqu ymm4, ymmword [rbp + 0x140]
add r11, 0x200
mov qword [rbp + 0x60], rcx
vmovdqu ymmword [rbx], ymm3
vmovdqu ymm3, ymmword [0x180115060]
mov rbx, qword [rbp + 0x40]
add rdx, 0x200
add r9, 0x200
add r10, 0x200
add rdi, 0x200
add rsi, 0x200
add r14, 0x200
add r12, 0x200
sub qword [rbp + 0x70], 1
jne 0x1800e2870
vzeroupper
mov r15, qword [rbp + 0x10]
cmp r15, 0x100
jb 0x1800e3a93
movdqu xmm3, xmmword [rbx]
mov r12, r15
lea rsi, [r11 + 0xc0]
movdqu xmm2, xmmword [rbx + 0x10]
shr r12, 8
lea r14, [r8 + 0xc0]
movdqu xmm0, xmmword [rbx + 0x30]
lea r10, [r11 + 0x80]
movdqu xmm1, xmmword [rbx + 0x20]
lea rdi, [r8 + 0x80]
pshufd xmm8, xmm0, 0xff
lea rdx, [r11 + 0x40]
pshufd xmm11, xmm0, 0
lea r9, [r8 + 0x40]
pshufd xmm0, xmm0, 0xaa
pshufd xmm6, xmm1, 0xaa
pshufd xmm13, xmm1, 0xff
imul rax, r12, 0xffffffffffffff00
movdqa xmmword [rbp + 0x120], xmm0
pshufd xmm4, xmm3, 0
pshufd xmm5, xmm2, 0x55
pshufd xmm7, xmm3, 0x55
pshufd xmm10, xmm2, 0xaa
pshufd xmm9, xmm3, 0xaa
add r15, rax
pshufd xmm14, xmm2, 0xff
pshufd xmm15, xmm2, 0
pshufd xmm1, xmm1, 0x55
pshufd xmm0, xmm3, 0xff
movdqa xmmword [rbp + 0x160], xmm4
movdqa xmmword [rbp + 0x180], xmm5
movdqa xmmword [rbp + 0x1a0], xmm6
movdqa xmmword [rbp + 0xa0], xmm8
movdqa xmmword [rbp + 0x1c0], xmm11
movdqa xmmword [rbp + 0x1e0], xmm7
movdqa xmmword [rbp + 0x260], xmm10
movdqa xmmword [rbp + 0x200], xmm13
movdqa xmmword [rbp + 0xc0], xmm9
movdqa xmmword [rbp + 0x2c0], xmm14
movdqa xmmword [rbp + 0xe0], xmm15
movdqa xmmword [rbp + 0x100], xmm1
movdqa xmmword [rbp + 0x140], xmm0
nop dword [rax]
mov eax, dword [rbx + 0x20]
movdqa xmm12, xmm9
mov ecx, dword [rbx + 0x34]
movdqa xmm1, xmmword [0x180115010]
shl rcx, 0x20
or rcx, rax
movdqa xmmword [rbp + 0x10], xmm6
movdqa xmmword [rbp + 0x220], xmm9
movdqa xmm6, xmm15
movdqa xmm9, xmmword [rbp + 0x140]
mov eax, 0xa
movdqa xmmword [rbp + 0x70], xmm4
movq xmm0, rcx
movdqa xmmword [rbp + 0x60], xmm8
movdqa xmm8, xmmword [rbp + 0x100]
add rcx, 4
punpcklqdq xmm0, xmm0
paddq xmm1, xmm0
mov dword [rbx + 0x20], ecx
movdqa xmm2, xmm0
shr rcx, 0x20
paddq xmm2, xmmword [0x180115000]
movdqa xmm3, xmm2
mov dword [rbx + 0x34], ecx
punpckldq xmm3, xmm1
punpckhdq xmm2, xmm1
movdqa xmm0, xmm3
movdqa xmm1, xmmword [rbp + 0x120]
punpckhdq xmm3, xmm2
punpckldq xmm0, xmm2
movdqa xmm2, xmm14
movdqa xmmword [rbp + 0x20], xmm1
movdqa xmm14, xmm3
movdqa xmm1, xmm10
movdqa xmmword [rbp + 0x2a0], xmm3
movdqa xmm3, xmmword [rbp + 0x10]
movdqa xmm10, xmm4
movdqa xmm4, xmm11
movdqa xmmword [rbp], xmm2
movdqa xmm11, xmm0
movdqa xmmword [rbp + 0x280], xmm0
movdqa xmmword [rbp + 0x30], xmm7
movdqa xmmword [rbp + 0x2e0], xmm9
movdqa xmmword [rbp + 0x40], xmm1
movdqa xmmword [rbp + 0x50], xmm13
jmp 0x1800e32b8
movdqa xmm5, xmmword [rbp + 0x80]
movdqa xmm0, xmm6
paddd xmm0, xmm10
movdqa xmm10, xmm0
psrld xmm0, 0x19
pslld xmm10, 7
pxor xmm10, xmm4
pxor xmm10, xmm0
movdqa xmm0, xmm5
paddd xmm0, xmm7
movdqa xmm15, xmm0
psrld xmm0, 0x19
pslld xmm15, 7
pxor xmm15, xmm14
pxor xmm15, xmm0
movdqa xmm0, xmm10
paddd xmm0, xmmword [rbp + 0x70]
movdqa xmm13, xmm0
psrld xmm0, 0x17
pslld xmm13, 9
pxor xmm13, xmm11
pxor xmm13, xmm0
movdqa xmm0, xmm15
paddd xmm0, xmm7
movdqa xmmword [rbp + 0x240], xmm13
movdqa xmm14, xmm0
psrld xmm0, 0x17
pslld xmm14, 9
pxor xmm14, xmm8
pxor xmm14, xmm0
movdqa xmm0, xmm13
paddd xmm0, xmm10
movdqa xmm11, xmm0
psrld xmm0, 0x13
pslld xmm11, 0xd
pxor xmm11, xmm6
pxor xmm11, xmm0
movdqa xmm0, xmm15
paddd xmm0, xmm14
movdqa xmm4, xmm0
psrld xmm0, 0x13
pslld xmm4, 0xd
pxor xmm4, xmm5
pxor xmm4, xmm0
movdqa xmm0, xmm13
paddd xmm0, xmm11
movdqa xmm7, xmm0
psrld xmm0, 0xe
pslld xmm7, 0x12
pxor xmm7, xmmword [rbp + 0x70]
pxor xmm7, xmm0
movdqa xmm0, xmm14
paddd xmm0, xmm4
movdqa xmm8, xmm0
psrld xmm0, 0xe
pslld xmm8, 0x12
pxor xmm8, xmmword [rbp + 0x30]
pxor xmm8, xmm0
movdqa xmm0, xmm1
paddd xmm0, xmm12
movdqa xmm12, xmm0
psrld xmm0, 0x19
pslld xmm12, 7
pxor xmm12, xmmword [rbp + 0x20]
pxor xmm12, xmm0
movdqa xmm0, xmm2
paddd xmm0, xmm9
movdqa xmm5, xmm0
psrld xmm0, 0x19
pslld xmm5, 7
pxor xmm5, xmmword [rbp + 0x60]
pxor xmm5, xmm0
movdqa xmm0, xmm12
paddd xmm0, xmmword [rbp + 0x220]
movdqa xmm2, xmm0
psrld xmm0, 0x17
pslld xmm2, 9
pxor xmm2, xmm3
pxor xmm2, xmm0
movdqa xmm0, xmm5
paddd xmm0, xmm9
movdqa xmm3, xmm0
psrld xmm0, 0x17
pslld xmm3, 9
pxor xmm3, xmmword [rbp + 0x50]
pxor xmm3, xmm0
movdqa xmm0, xmm12
paddd xmm0, xmm2
movdqa xmm1, xmm0
psrld xmm0, 0x13
pslld xmm1, 0xd
pxor xmm1, xmmword [rbp + 0x40]
pxor xmm1, xmm0
movdqa xmm0, xmm5
paddd xmm0, xmm3
movdqa xmm6, xmm0
psrld xmm0, 0x13
pslld xmm6, 0xd
pxor xmm6, xmmword [rbp]
pxor xmm6, xmm0
movdqa xmm0, xmm2
paddd xmm0, xmm1
movdqa xmm9, xmm0
psrld xmm0, 0xe
pslld xmm9, 0x12
pxor xmm9, xmmword [rbp + 0x220]
pxor xmm9, xmm0
movdqa xmm0, xmm5
paddd xmm0, xmm7
movdqa xmm13, xmm0
psrld xmm0, 0x19
pslld xmm13, 7
pxor xmm13, xmm4
pxor xmm13, xmm0
movdqa xmm0, xmm3
paddd xmm0, xmm6
movdqa xmmword [rbp + 0x80], xmm13
movdqa xmm4, xmm0
psrld xmm0, 0xe
pslld xmm4, 0x12
pxor xmm4, xmmword [rbp + 0x2e0]
pxor xmm4, xmm0
movdqa xmm0, xmm10
paddd xmm0, xmm8
movdqa xmm13, xmm0
psrld xmm0, 0x19
pslld xmm13, 7
pxor xmm13, xmm1
movdqa xmm1, xmm13
movdqa xmmword [rbp + 0x40], xmm13
pxor xmm1, xmm0
movdqa xmm0, xmmword [rbp + 0x80]
paddd xmm0, xmm7
movdqa xmmword [rbp + 0x40], xmm1
movdqa xmm13, xmm0
psrld xmm0, 0x17
pslld xmm13, 9
pxor xmm13, xmm2
movdqa xmm2, xmm13
movdqa xmmword [rbp + 0x10], xmm13
pxor xmm2, xmm0
movdqa xmm0, xmm1
paddd xmm0, xmm8
movdqa xmmword [rbp + 0x10], xmm2
movdqa xmm2, xmm0
psrld xmm0, 0x17
pslld xmm2, 9
pxor xmm2, xmm3
movdqa xmm3, xmmword [rbp + 0x10]
pxor xmm2, xmm0
movdqa xmm0, xmm3
paddd xmm0, xmmword [rbp + 0x80]
movdqa xmm13, xmm0
movdqa xmmword [rbp + 0x50], xmm2
psrld xmm0, 0x13
pslld xmm13, 0xd
pxor xmm13, xmm5
pxor xmm13, xmm0
movdqa xmm0, xmm2
paddd xmm0, xmm1
movdqa xmmword [rbp + 0x60], xmm13
movdqa xmm5, xmm0
pslld xmm5, 0xd
psrld xmm0, 0x13
pxor xmm5, xmm10
pxor xmm5, xmm0
sub rax, 1
movdqa xmm0, xmm13
movdqa xmmword [rbp + 0x10], xmm5
paddd xmm0, xmm3
movdqa xmm10, xmm0
psrld xmm0, 0xe
pslld xmm10, 0x12
pxor xmm10, xmm7
pxor xmm10, xmm0
movdqa xmm0, xmm5
paddd xmm0, xmm2
movdqa xmmword [rbp + 0x70], xmm10
movdqa xmm7, xmm0
psrld xmm0, 0xe
pslld xmm7, 0x12
pxor xmm7, xmm8
pxor xmm7, xmm0
movdqa xmm0, xmm15
paddd xmm0, xmm9
movdqa xmmword [rbp + 0x30], xmm7
movdqa xmm2, xmm0
psrld xmm0, 0x19
pslld xmm2, 7
pxor xmm2, xmm6
pxor xmm2, xmm0
movdqa xmm0, xmm12
paddd xmm0, xmm4
movdqa xmmword [rbp], xmm2
movdqa xmm6, xmm0
psrld xmm0, 0x19
pslld xmm6, 7
pxor xmm6, xmm11
pxor xmm6, xmm0
movdqa xmm0, xmm2
paddd xmm0, xmm9
movdqa xmm11, xmm0
psrld xmm0, 0x17
pslld xmm11, 9
pxor xmm11, xmmword [rbp + 0x240]
pxor xmm11, xmm0
movdqa xmm0, xmm6
paddd xmm0, xmm4
movdqa xmm8, xmm0
psrld xmm0, 0x17
pslld xmm8, 9
pxor xmm8, xmm14
pxor xmm8, xmm0
movdqa xmm0, xmm11
paddd xmm0, xmm2
movdqa xmm14, xmm0
psrld xmm0, 0x13
pslld xmm14, 0xd
pxor xmm14, xmm15
pxor xmm14, xmm0
movdqa xmm0, xmm8
paddd xmm0, xmm6
movdqa xmm13, xmm0
psrld xmm0, 0x13
pslld xmm13, 0xd
pxor xmm13, xmm12
pxor xmm13, xmm0
movdqa xmm0, xmm14
paddd xmm0, xmm11
movdqa xmmword [rbp + 0x20], xmm13
movdqa xmm12, xmm0
psrld xmm0, 0xe
pslld xmm12, 0x12
pxor xmm12, xmm9
pxor xmm12, xmm0
movdqa xmm0, xmm13
paddd xmm0, xmm8
movdqa xmmword [rbp + 0x220], xmm12
movdqa xmm9, xmm0
psrld xmm0, 0xe
pslld xmm9, 0x12
pxor xmm9, xmm4
pxor xmm9, xmm0
movdqa xmmword [rbp + 0x2e0], xmm9
movdqa xmm4, xmm5
jne 0x1800e32b0
movdqa xmm5, xmmword [rbp + 0x160]
movdqa xmm4, xmmword [rbp + 0x1a0]
paddd xmm5, xmm10
movdqa xmm1, xmmword [rbp + 0x180]
paddd xmm4, xmm3
paddd xmm1, xmmword [rbp + 0x80]
movdqa xmm3, xmm5
movdqa xmm0, xmmword [rbp + 0xa0]
movdqa xmm2, xmm4
paddd xmm0, xmmword [rbp + 0x60]
movdqa xmm10, xmmword [rbp + 0x260]
punpckhdq xmm5, xmm1
punpckldq xmm3, xmm1
punpckhdq xmm4, xmm0
movdqa xmm1, xmm3
punpckldq xmm2, xmm0
movdqu xmm0, xmmword [r11]
punpcklqdq xmm1, xmm2
pxor xmm1, xmm0
punpckhqdq xmm3, xmm2
movdqu xmmword [r8], xmm1
movdqu xmm0, xmmword [rdx]
movdqa xmm1, xmm5
punpckhqdq xmm5, xmm4
punpcklqdq xmm1, xmm4
pxor xmm3, xmm0
movdqu xmmword [r9], xmm3
movdqu xmm0, xmmword [r10]
movdqa xmm4, xmm10
paddd xmm4, xmmword [rbp + 0x40]
pxor xmm1, xmm0
movdqu xmmword [rdi], xmm1
movdqu xmm0, xmmword [rsi]
movdqa xmm1, xmmword [rbp + 0x1e0]
movdqa xmm2, xmm4
pxor xmm5, xmm0
paddd xmm1, xmm7
movdqa xmm0, xmmword [rbp + 0x200]
paddd xmm0, xmmword [rbp + 0x50]
movdqu xmmword [r14], xmm5
movdqa xmm5, xmmword [rbp + 0x1c0]
paddd xmm5, xmmword [rbp + 0x10]
punpckhdq xmm4, xmm0
movdqa xmm3, xmm5
punpckhdq xmm5, xmm1
punpckldq xmm3, xmm1
punpckldq xmm2, xmm0
movdqa xmm1, xmm3
movdqu xmm0, xmmword [r11 + 0x10]
punpcklqdq xmm1, xmm2
pxor xmm1, xmm0
punpckhqdq xmm3, xmm2
movdqu xmmword [r8 + 0x10], xmm1
movdqu xmm0, xmmword [rdx + 0x10]
movdqa xmm1, xmm5
punpckhqdq xmm5, xmm4
pxor xmm3, xmm0
punpcklqdq xmm1, xmm4
movdqa xmm4, xmmword [rbp + 0xc0]
movdqu xmmword [r9 + 0x10], xmm3
movdqu xmm0, xmmword [r10 + 0x10]
paddd xmm4, xmm12
pxor xmm1, xmm0
movdqa xmm2, xmm4
movdqu xmmword [rdi + 0x10], xmm1
movdqu xmm0, xmmword [rsi + 0x10]
movdqa xmm1, xmmword [rbp + 0x2a0]
pxor xmm5, xmm0
paddd xmm1, xmm14
movdqa xmm14, xmmword [rbp + 0x2c0]
movdqu xmmword [r14 + 0x10], xmm5
movdqa xmm5, xmmword [rbp + 0x280]
movdqa xmm0, xmm14
paddd xmm0, xmmword [rbp]
paddd xmm5, xmm11
movdqa xmm3, xmm5
punpckldq xmm2, xmm0
punpckldq xmm3, xmm1
punpckhdq xmm5, xmm1
movdqa xmm1, xmm3
punpckhdq xmm4, xmm0
movdqu xmm0, xmmword [r11 + 0x20]
movdqa xmm15, xmmword [rbp + 0xe0]
movdqa xmm11, xmmword [rbp + 0x1c0]
movdqa xmm7, xmmword [rbp + 0x1e0]
punpcklqdq xmm1, xmm2
pxor xmm1, xmm0
punpckhqdq xmm3, xmm2
movdqu xmmword [r8 + 0x20], xmm1
movdqu xmm0, xmmword [rdx + 0x20]
movdqa xmm1, xmm5
punpckhqdq xmm5, xmm4
pxor xmm3, xmm0
punpcklqdq xmm1, xmm4
movdqa xmm4, xmmword [rbp + 0x120]
movdqu xmmword [r9 + 0x20], xmm3
movdqu xmm0, xmmword [r10 + 0x20]
paddd xmm4, xmm13
movdqa xmm13, xmmword [rbp + 0x200]
pxor xmm1, xmm0
movdqa xmm2, xmm4
movdqu xmmword [rdi + 0x20], xmm1
movdqu xmm0, xmmword [rsi + 0x20]
movdqa xmm1, xmmword [rbp + 0x100]
pxor xmm5, xmm0
paddd xmm1, xmm8
movdqa xmm0, xmmword [rbp + 0x140]
movdqa xmm8, xmmword [rbp + 0xa0]
paddd xmm0, xmm9
movdqa xmm9, xmmword [rbp + 0xc0]
movdqu xmmword [r14 + 0x20], xmm5
punpckhdq xmm4, xmm0
movdqa xmm5, xmm15
paddd xmm5, xmm6
punpckldq xmm2, xmm0
movdqu xmm0, xmmword [r11 + 0x30]
add r11, 0x100
movdqa xmm6, xmmword [rbp + 0x1a0]
movdqa xmm3, xmm5
punpckhdq xmm5, xmm1
punpckldq xmm3, xmm1
movdqa xmm1, xmm3
punpckhqdq xmm3, xmm2
punpcklqdq xmm1, xmm2
pxor xmm1, xmm0
movdqu xmmword [r8 + 0x30], xmm1
add r8, 0x100
movdqu xmm0, xmmword [rdx + 0x30]
add rdx, 0x100
movdqa xmm1, xmm5
punpckhqdq xmm5, xmm4
pxor xmm3, xmm0
punpcklqdq xmm1, xmm4
movdqa xmm4, xmmword [rbp + 0x160]
movdqu xmmword [r9 + 0x30], xmm3
add r9, 0x100
movdqu xmm0, xmmword [r10 + 0x30]
add r10, 0x100
pxor xmm1, xmm0
movdqu xmmword [rdi + 0x30], xmm1
add rdi, 0x100
movdqu xmm0, xmmword [rsi + 0x30]
add rsi, 0x100
pxor xmm5, xmm0
movdqu xmmword [r14 + 0x30], xmm5
add r14, 0x100
movdqa xmm5, xmmword [rbp + 0x180]
sub r12, 1
jne 0x1800e31c0
mov esi, 5
cmp r15, 0x40
jb 0x1800e3e4e
mov rdi, r15
shr rdi, 6
imul rax, rdi, 0xffffffffffffffc0
add r15, rax
movdqu xmm10, xmmword [rbx]
mov rax, rsi
movdqu xmm11, xmmword [rbx + 0x10]
movdqu xmm12, xmmword [rbx + 0x20]
movdqu xmm13, xmmword [rbx + 0x30]
movdqa xmm3, xmm10
movdqa xmm8, xmm11
movdqa xmm9, xmm12
movdqa xmm4, xmm13
nop
movdqa xmm0, xmm8
paddd xmm0, xmm3
movdqa xmm1, xmm0
psrld xmm0, 0x19
pslld xmm1, 7
pxor xmm1, xmm4
pxor xmm1, xmm0
pshufd xmm7, xmm1, 0x93
movdqa xmm0, xmm1
paddd xmm0, xmm3
movdqa xmm4, xmm0
psrld xmm0, 0x17
pslld xmm4, 9
pxor xmm4, xmm9
pxor xmm4, xmm0
movdqa xmm0, xmm4
pshufd xmm5, xmm4, 0x4e
paddd xmm0, xmm1
movdqa xmm1, xmm7
movdqa xmm2, xmm0
psrld xmm0, 0x13
pslld xmm2, 0xd
pxor xmm2, xmm8
pxor xmm2, xmm0
movdqa xmm0, xmm4
paddd xmm0, xmm2
movdqa xmm6, xmm0
psrld xmm0, 0xe
pslld xmm6, 0x12
pxor xmm6, xmm3
pshufd xmm3, xmm2, 0x39
pxor xmm6, xmm0
paddd xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm1, 0x19
pslld xmm0, 7
pxor xmm3, xmm0
pxor xmm3, xmm1
movdqa xmm1, xmm3
pshufd xmm8, xmm3, 0x93
paddd xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm1, 0x17
pslld xmm0, 9
pxor xmm5, xmm0
pxor xmm5, xmm1
movdqa xmm1, xmm8
movdqa xmm0, xmm5
pshufd xmm4, xmm5, 0x4e
paddd xmm0, xmm3
movdqa xmm2, xmm0
psrld xmm0, 0x13
pslld xmm2, 0xd
pxor xmm2, xmm7
pxor xmm2, xmm0
movdqa xmm0, xmm2
pshufd xmm3, xmm2, 0x39
paddd xmm0, xmm5
movdqa xmm7, xmm0
psrld xmm0, 0xe
pslld xmm7, 0x12
pxor xmm7, xmm6
pxor xmm7, xmm0
paddd xmm1, xmm7
movdqa xmm0, xmm1
psrld xmm1, 0x19
pslld xmm0, 7
pxor xmm3, xmm0
pxor xmm3, xmm1
movdqa xmm1, xmm3
pshufd xmm6, xmm3, 0x93
paddd xmm1, xmm7
movdqa xmm0, xmm1
psrld xmm1, 0x17
pslld xmm0, 9
pxor xmm4, xmm0
pxor xmm4, xmm1
movdqa xmm0, xmm4
paddd xmm0, xmm3
movdqa xmm2, xmm0
pslld xmm2, 0xd
psrld xmm0, 0x13
pxor xmm2, xmm8
pxor xmm2, xmm0
movdqa xmm0, xmm4
pshufd xmm3, xmm2, 0x39
paddd xmm0, xmm2
pshufd xmm2, xmm4, 0x4e
movdqa xmm5, xmm0
psrld xmm0, 0xe
movdqa xmm1, xmm6
pslld xmm5, 0x12
pxor xmm5, xmm7
pxor xmm5, xmm0
paddd xmm1, xmm5
movdqa xmm0, xmm1
psrld xmm1, 0x19
pslld xmm0, 7
pxor xmm3, xmm0
pxor xmm3, xmm1
pshufd xmm8, xmm3, 0x93
movdqa xmm1, xmm3
paddd xmm1, xmm5
movdqa xmm0, xmm1
psrld xmm1, 0x17
pslld xmm0, 9
pxor xmm2, xmm0
pxor xmm2, xmm1
pshufd xmm9, xmm2, 0x4e
movdqa xmm0, xmm2
paddd xmm0, xmm3
movdqa xmm1, xmm0
psrld xmm0, 0x13
pslld xmm1, 0xd
pxor xmm1, xmm6
pxor xmm1, xmm0
pshufd xmm4, xmm1, 0x39
movdqa xmm0, xmm1
paddd xmm0, xmm2
movdqa xmm3, xmm0
psrld xmm0, 0xe
pslld xmm3, 0x12
pxor xmm3, xmm5
pxor xmm3, xmm0
sub rax, 1
jne 0x1800e3ae0
mov eax, dword [r11]
paddd xmm4, xmm13
paddd xmm3, xmm10
movd r10d, xmm4
pshufd xmm0, xmm3, 0x39
paddd xmm9, xmm12
pshufd xmm6, xmm0, 0x39
paddd xmm8, xmm11
xor r10d, dword [r11 + 0x10]
movd ecx, xmm3
pshufd xmm1, xmm8, 0x39
pshufd xmm3, xmm4, 0x39
xor eax, ecx
pshufd xmm4, xmm1, 0x39
movd ecx, xmm0
pshufd xmm2, xmm9, 0x39
pshufd xmm5, xmm2, 0x39
pshufd xmm0, xmm4, 0x39
movd r9d, xmm9
movd edx, xmm8
xor r9d, dword [r11 + 0x20]
xor edx, dword [r11 + 0x30]
mov dword [r8 + 0x20], r9d
mov dword [r8 + 0x30], edx
mov dword [r8], eax
mov dword [r8 + 0x10], r10d
mov eax, dword [r11 + 0x14]
xor eax, ecx
movd edx, xmm1
pshufd xmm1, xmm3, 0x39
movd r9d, xmm2
xor edx, dword [r11 + 4]
movd r10d, xmm3
xor r9d, dword [r11 + 0x34]
movd ecx, xmm1
xor r10d, dword [r11 + 0x24]
mov dword [r8 + 0x34], r9d
mov dword [r8 + 0x14], eax
mov dword [r8 + 4], edx
mov dword [r8 + 0x24], r10d
xor ecx, dword [r11 + 0x38]
movd r9d, xmm4
movd edx, xmm5
movd eax, xmm6
xor r9d, dword [r11 + 0x18]
xor edx, dword [r11 + 8]
xor eax, dword [r11 + 0x28]
mov dword [r8 + 0x38], ecx
mov dword [r8 + 0x18], r9d
mov dword [r8 + 8], edx
mov dword [r8 + 0x28], eax
movd r9d, xmm0
pshufd xmm0, xmm5, 0x39
movd edx, xmm0
xor r9d, dword [r11 + 0x2c]
pshufd xmm0, xmm1, 0x39
xor edx, dword [r11 + 0x1c]
movd ecx, xmm0
pshufd xmm0, xmm6, 0x39
movd eax, xmm0
xor ecx, dword [r11 + 0xc]
xor eax, dword [r11 + 0x3c]
mov dword [r8 + 0xc], ecx
mov dword [r8 + 0x3c], eax
mov dword [r8 + 0x2c], r9d
mov dword [r8 + 0x1c], edx
mov ecx, dword [rbx + 0x20]
mov eax, dword [rbx + 0x34]
add ecx, 1
jne 0x1800e3e36
inc eax
add r8, 0x40
mov dword [rbx + 0x20], ecx
add r11, 0x40
mov dword [rbx + 0x34], eax
sub rdi, 1
jne 0x1800e3ab0
test r15, r15
je 0x1800e423a
movdqu xmm10, xmmword [rbx]
movdqu xmm11, xmmword [rbx + 0x10]
movdqu xmm12, xmmword [rbx + 0x20]
movdqu xmm13, xmmword [rbx + 0x30]
movdqa xmm3, xmm10
movdqa xmm8, xmm11
movdqa xmm9, xmm12
movdqa xmm5, xmm13
movdqa xmm0, xmm8
paddd xmm0, xmm3
movdqa xmm1, xmm0
psrld xmm0, 0x19
pslld xmm1, 7
pxor xmm1, xmm5
pxor xmm1, xmm0
pshufd xmm7, xmm1, 0x93
movdqa xmm0, xmm1
paddd xmm0, xmm3
movdqa xmm5, xmm0
psrld xmm0, 0x17
pslld xmm5, 9
pxor xmm5, xmm9
pxor xmm5, xmm0
paddd xmm1, xmm5
movdqa xmm0, xmm5
movdqa xmm2, xmm1
psrld xmm1, 0x13
pslld xmm2, 0xd
pxor xmm2, xmm8
pxor xmm2, xmm1
movdqa xmm1, xmm7
paddd xmm0, xmm2
movdqa xmm6, xmm0
psrld xmm0, 0xe
pslld xmm6, 0x12
pxor xmm6, xmm3
pxor xmm6, xmm0
pshufd xmm0, xmm2, 0x39
paddd xmm1, xmm6
movdqa xmm3, xmm1
psrld xmm1, 0x19
pslld xmm3, 7
pxor xmm3, xmm0
pshufd xmm0, xmm5, 0x4e
pxor xmm3, xmm1
pshufd xmm8, xmm3, 0x93
movdqa xmm1, xmm3
paddd xmm1, xmm6
movdqa xmm4, xmm1
psrld xmm1, 0x17
pslld xmm4, 9
pxor xmm4, xmm0
pxor xmm4, xmm1
movdqa xmm1, xmm8
paddd xmm3, xmm4
pshufd xmm5, xmm4, 0x4e
movdqa xmm2, xmm3
psrld xmm3, 0x13
pslld xmm2, 0xd
pxor xmm2, xmm7
pxor xmm2, xmm3
movdqa xmm0, xmm2
pshufd xmm3, xmm2, 0x39
paddd xmm0, xmm4
movdqa xmm7, xmm0
psrld xmm0, 0xe
pslld xmm7, 0x12
pxor xmm7, xmm6
pxor xmm7, xmm0
paddd xmm1, xmm7
movdqa xmm0, xmm1
psrld xmm1, 0x19
pslld xmm0, 7
pxor xmm3, xmm0
pxor xmm3, xmm1
movdqa xmm1, xmm3
pshufd xmm6, xmm3, 0x93
paddd xmm1, xmm7
movdqa xmm0, xmm1
psrld xmm1, 0x17
pslld xmm0, 9
pxor xmm5, xmm0
pxor xmm5, xmm1
paddd xmm3, xmm5
movdqa xmm2, xmm3
psrld xmm3, 0x13
pslld xmm2, 0xd
pxor xmm2, xmm8
pxor xmm2, xmm3
movdqa xmm0, xmm5
movdqa xmm1, xmm6
paddd xmm0, xmm2
movdqa xmm4, xmm0
psrld xmm0, 0xe
pslld xmm4, 0x12
pxor xmm4, xmm7
pxor xmm4, xmm0
pshufd xmm0, xmm2, 0x39
paddd xmm1, xmm4
movdqa xmm3, xmm1
psrld xmm1, 0x19
pslld xmm3, 7
pxor xmm3, xmm0
pshufd xmm0, xmm5, 0x4e
pxor xmm3, xmm1
pshufd xmm8, xmm3, 0x93
movdqa xmm1, xmm3
paddd xmm1, xmm4
movdqa xmm2, xmm1
psrld xmm1, 0x17
pslld xmm2, 9
pxor xmm2, xmm0
pxor xmm2, xmm1
pshufd xmm9, xmm2, 0x4e
paddd xmm3, xmm2
movdqa xmm0, xmm3
psrld xmm3, 0x13
pslld xmm0, 0xd
pxor xmm0, xmm6
pxor xmm0, xmm3
pshufd xmm5, xmm0, 0x39
paddd xmm2, xmm0
movdqa xmm3, xmm2
psrld xmm2, 0xe
pslld xmm3, 0x12
pxor xmm3, xmm4
pxor xmm3, xmm2
sub rsi, 1
jne 0x1800e3e82
paddd xmm10, xmm3
paddd xmm13, xmm5
pshufd xmm0, xmm10, 0x39
paddd xmm11, xmm8
pshufd xmm1, xmm11, 0x39
paddd xmm12, xmm9
pshufd xmm4, xmm0, 0x39
xor ecx, ecx
pshufd xmm5, xmm1, 0x39
pshufd xmm2, xmm12, 0x39
movd edx, xmm2
pshufd xmm3, xmm13, 0x39
movd dword [rbp + 0x454], xmm0
movd dword [rbp + 0x444], xmm1
pshufd xmm0, xmm4, 0x39
pshufd xmm1, xmm5, 0x39
movd r9d, xmm3
pshufd xmm2, xmm2, 0x39
pshufd xmm3, xmm3, 0x39
movd dword [rbp + 0x47c], xmm0
movd dword [rbp + 0x46c], xmm1
pshufd xmm0, xmm2, 0x39
pshufd xmm1, xmm3, 0x39
mov dword [rbp + 0x474], edx
mov edx, ecx
movd dword [rbp + 0x45c], xmm0
movd dword [rbp + 0x44c], xmm1
movd dword [rbp + 0x440], xmm10
movd dword [rbp + 0x470], xmm11
movd dword [rbp + 0x460], xmm12
movd dword [rbp + 0x450], xmm13
mov dword [rbp + 0x464], r9d
movd dword [rbp + 0x468], xmm4
movd dword [rbp + 0x458], xmm5
movd dword [rbp + 0x448], xmm2
movd dword [rbp + 0x478], xmm3
cmp r15, 0x20
jb 0x1800e4201
lea eax, [r15 - 1]
mov r9d, eax
lea r10, [rax + r8]
add rax, r11
cmp r8, rax
ja 0x1800e41a0
cmp r10, r11
jae 0x1800e4201
lea rax, [rbp + 0x440]
add rax, r9
cmp r8, rax
ja 0x1800e41bb
lea rax, [rbp + 0x440]
cmp r10, rax
jae 0x1800e4201
mov r9, r15
and r9, 0xffffffffffffffe0
movdqu xmm1, xmmword [rcx + r11]
lea eax, [rdx + 0x10]
add edx, 0x20
movdqu xmm0, xmmword [rbp + rcx + 0x440]
pxor xmm1, xmm0
movdqu xmm0, xmmword [rbp + rax + 0x440]
movdqu xmmword [rcx + r8], xmm1
mov ecx, edx
movdqu xmm1, xmmword [rax + r11]
pxor xmm1, xmm0
movdqu xmmword [rax + r8], xmm1
cmp rcx, r9
jb 0x1800e41c2
mov ecx, edx
cmp rcx, r15
jae 0x1800e4229
nop dword [rax + rax]
movzx eax, byte [rcx + r11]
inc edx
xor al, byte [rbp + rcx + 0x440]
mov byte [rcx + r8], al
mov ecx, edx
cmp rcx, r15
jb 0x1800e4210
mov edx, 0x40
lea rcx, [rbp + 0x440]
call fcn.1800d6740
mov rcx, qword [rbp + 0x480]
xor rcx, rsp
call fcn.1800f1430
lea r11, [rsp + 0x570]
mov rbx, qword [r11 + 0x58]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
movaps xmm11, xmmword [r11 - 0x60]
movaps xmm12, xmmword [r11 - 0x70]
movaps xmm13, xmmword [r11 - 0x80]
movaps xmm14, xmmword [r11 - 0x90]
movaps xmm15, xmmword [r11 - 0xa0]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret