Function at 0x1800029d0
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, 0x550
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 + 0x20]
and rbp, 0xffffffffffffffe0
mov rax, qword [0x180035040]
xor rax, rsp
mov qword [rbp + 0x480], rax
mov qword [rbp + 0x40], rcx
mov r10, rdx
mov r11, rcx
test r9, r9
je 0x180004609
cmp r9, 0x200
jb 0x180003417
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 [0x180031ca0]
vmovdqu ymm2, ymmword [0x180031c60]
vmovdqu ymm3, ymmword [0x180031c80]
lea rax, [r8 + 0x1c0]
mov qword [rbp + 0x10], rax
lea r12, [rdx + 0x1c0]
lea rax, [r8 + 0x180]
mov qword [rbp], rax
lea r15, [rdx + 0x180]
lea rax, [r8 + 0x140]
mov qword [rbp + 0x20], rax
lea r14, [rdx + 0x140]
lea rax, [r8 + 0x100]
mov qword [rbp + 0x60], rax
lea rsi, [rdx + 0x100]
lea rax, [r8 + 0xc0]
mov qword [rbp + 0x50], rax
lea rbx, [rdx + 0xc0]
lea rax, [r8 + 0x80]
mov qword [rbp + 0x80], rax
lea rdi, [rdx + 0x80]
mov rax, r9
lea r13, [r8 + 0x40]
shr rax, 9
add rdx, 0x40
vmovdqu ymmword [rbp + 0x1c0], ymm0
vbroadcastss ymm0, dword [rcx + 0x38]
mov qword [rbp + 0x70], rax
imul rax, rax, 0xfffffffffffffe00
vmovdqu ymmword [rbp + 0x1a0], ymm0
vbroadcastss ymm0, dword [rcx + 0xc]
add r9, rax
mov qword [rbp + 0x30], r9
mov r9, qword [rbp + 0x80]
vmovdqu ymmword [rbp + 0x160], ymm4
vmovdqu ymmword [rbp + 0x140], ymm6
vmovdqu ymmword [rbp + 0x120], ymm7
vmovdqu ymmword [rbp + 0x100], ymm5
vmovdqu ymmword [rbp + 0xe0], 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 + 0x180], ymm0
nop word [rax + rax]
mov eax, dword [r11 + 0x20]
mov ecx, dword [r11 + 0x34]
shl rcx, 0x20
or rcx, rax
mov eax, 0xa
vmovdqu ymmword [rbp + 0x2a0], ymm5
vmovdqu ymm5, ymm14
vmovdqu ymmword [rbp + 0x280], 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 + 0x1a0]
vpunpckhdq ymm1, ymm3, ymm1
vpermd ymm3, ymm10, ymm1
vmovdqu ymm1, ymmword [rbp + 0x180]
mov dword [r11 + 0x20], ecx
shr rcx, 0x20
vmovdqu ymm10, ymm8
vmovdqu ymmword [rbp + 0x2c0], ymm1
vmovdqu ymm8, ymm9
vmovdqu ymm9, ymmword [rbp + 0x1c0]
vmovdqu ymmword [rbp + 0xc0], ymm7
vmovdqu ymm1, ymm12
vmovdqu ymmword [rbp + 0x3c0], ymm2
vmovdqu ymmword [rbp + 0x400], ymm3
mov dword [r11 + 0x34], ecx
vmovdqu ymmword [rbp + 0x240], ymm0
vmovdqu ymmword [rbp + 0x260], ymm5
vmovdqu ymm14, ymm4
vmovdqu ymm7, ymm15
vmovdqu ymm13, ymm2
jmp 0x180002cc0
vmovdqu ymm6, ymmword [rbp + 0x2e0]
vmovdqu ymm14, ymmword [rbp + 0x220]
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 + 0x240]
vpaddd ymm0, ymm5, ymmword [rbp + 0x2c0]
vpxor ymm14, ymm1, ymm2
vpsrld ymm2, ymm0, 0x19
vpslld ymm0, ymm0, 7
vpxor ymm1, ymm0, ymmword [rbp + 0x2a0]
vpxor ymm7, ymm1, ymm2
vpaddd ymm0, ymm14, ymm11
vpsrld ymm2, ymm0, 0x17
vpslld ymm0, ymm0, 9
vpxor ymm1, ymm0, ymmword [rbp + 0xc0]
vpaddd ymm0, ymm7, ymmword [rbp + 0x2c0]
vmovdqu ymmword [rbp + 0xa0], ymm4
vpxor ymm4, ymm1, ymm2
vpsrld ymm2, ymm0, 0x17
vpslld ymm0, ymm0, 9
vpxor ymm1, ymm0, ymmword [rbp + 0x280]
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 + 0x260]
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 + 0x2e0], ymm0
vpaddd ymm0, ymm5, ymm8
vpsrld ymm2, ymm0, 0xe
vpslld ymm0, ymm0, 0x12
vpxor ymm1, ymm0, ymmword [rbp + 0x2c0]
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 + 0x2e0]
vpxor ymm3, ymm1, ymm2
vpsrld ymm2, ymm0, 0x17
vpslld ymm0, ymm0, 9
vpxor ymm1, ymm0, ymm4
vmovdqu ymm4, ymmword [rbp + 0x2e0]
vpxor ymm0, ymm1, ymm2
vmovdqu ymmword [rbp + 0xc0], ymm0
vpaddd ymm0, ymm3, ymm10
vpsrld ymm2, ymm0, 0x17
vpslld ymm0, ymm0, 9
vpxor ymm1, ymm0, ymm5
vpaddd ymm0, ymm4, ymmword [rbp + 0xc0]
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 + 0xc0]
vpaddd ymm0, ymm7, ymm12
vmovdqu ymmword [rbp + 0x1e0], ymm3
vpxor ymm3, ymm1, ymm2
vpsrld ymm2, ymm0, 0xe
vpslld ymm0, ymm0, 0x12
vpxor ymm1, ymm0, ymm9
vpxor ymm0, ymm1, ymm2
vmovdqu ymmword [rbp + 0x220], 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 + 0x280], ymm5
vpxor ymm5, ymm1, ymm2
vpsrld ymm2, ymm0, 0x19
vpslld ymm0, ymm0, 7
vpxor ymm1, ymm0, ymm13
vpaddd ymm0, ymm5, ymm11
vmovdqu ymmword [rbp + 0x2a0], 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 + 0x200], ymm3
vmovdqu ymmword [rbp + 0x260], 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 + 0x1e0]
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 + 0x200]
vmovdqu ymmword [rbp + 0x240], ymm3
vmovdqu ymm3, ymmword [rbp + 0xa0]
vmovdqu ymmword [rbp + 0x2c0], ymm15
vmovdqu ymmword [rbp + 0x80], ymm11
sub rax, 1
jne 0x180002cb0
vpaddd ymm2, ymm4, ymmword [rbp + 0x140]
vpaddd ymm3, ymm12, ymmword [rbp + 0x120]
vmovdqu ymm0, ymmword [rbp + 0x160]
vpaddd ymm5, ymm0, ymmword [rbp + 0x220]
vmovdqu ymm1, ymmword [rbp + 0x100]
vpaddd ymm0, ymm1, ymmword [rbp + 0x2a0]
mov r11, 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 + 0x200]
vpaddd ymm5, ymm1, ymmword [rbp + 0xe0]
vmovdqu ymm1, ymmword [rbp + 0x340]
vpaddd ymm0, ymm1, ymmword [rbp + 0x280]
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 [rdi]
vperm2i128 ymm0, ymm13, ymm2, 0x20
vpxor ymm7, ymm0, ymmword [rbx]
vperm2i128 ymm0, ymm14, ymm10, 0x31
vpxor ymm6, ymm0, ymmword [rsi]
vperm2i128 ymm0, ymm11, ymm3, 0x31
vpxor ymm5, ymm0, ymmword [r14]
vperm2i128 ymm0, ymm12, ymm4, 0x31
vpxor ymm4, ymm0, ymmword [r15]
vperm2i128 ymm0, ymm13, ymm2, 0x31
vpxor ymm3, ymm0, ymmword [r12]
vperm2i128 ymm0, ymm14, ymm10, 0x20
vpxor ymm2, ymm0, ymmword [r10]
vmovdqu ymm0, ymmword [rbp + 0x3c0]
vmovdqu ymmword [r8], ymm2
vmovdqu ymmword [r13], ymm9
vmovdqu ymmword [r9], ymm8
vmovdqu ymmword [rax], ymm7
vmovdqu ymmword [rcx], ymm6
vmovdqu ymmword [r11], ymm5
vpaddd ymm5, ymm0, ymmword [rbp + 0x3e0]
mov r11, qword [rbp]
vmovdqu ymm0, ymmword [rbp + 0x360]
add qword [rbp], 0x20
vmovdqu ymmword [r11], ymm4
mov r11, qword [rbp + 0x10]
add qword [rbp + 0x10], 0x20
vmovdqu ymmword [r11], ymm3
vmovdqu ymm3, ymmword [rbp + 0xa0]
vpaddd ymm2, ymm3, ymmword [rbp + 0x400]
vpaddd ymm3, ymm0, ymmword [rbp + 0x80]
vpaddd ymm0, ymm1, ymmword [rbp + 0x260]
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 + 0x1c0]
vpaddd ymm2, ymm0, ymmword [rbp + 0x440]
vmovdqu ymm0, ymmword [rbp + 0x1a0]
vpunpcklqdq ymm14, ymm4, ymm1
vpunpckhqdq ymm11, ymm4, ymm1
vpaddd ymm3, ymm0, ymmword [rbp + 0x240]
vpaddd ymm0, ymm15, ymmword [rbp + 0x180]
mov r11, 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 [rdi + 0x20]
vperm2i128 ymm0, ymm13, ymm2, 0x20
vpxor ymm7, ymm0, ymmword [rbx + 0x20]
vperm2i128 ymm0, ymm14, ymm10, 0x31
vpxor ymm6, ymm0, ymmword [rsi + 0x20]
vperm2i128 ymm0, ymm11, ymm3, 0x31
vpxor ymm5, ymm0, ymmword [r14 + 0x20]
vmovdqu ymm11, ymmword [rbp + 0x360]
vperm2i128 ymm0, ymm12, ymm4, 0x31
vpxor ymm4, ymm0, ymmword [r15 + 0x20]
vmovdqu ymm12, ymmword [rbp + 0xe0]
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 [r10 + 0x20]
vmovdqu ymm14, ymmword [rbp + 0x380]
vmovdqu ymm10, ymmword [0x180031ca0]
vmovdqu ymmword [r8 + 0x20], ymm2
vmovdqu ymm2, ymmword [0x180031c60]
vmovdqu ymmword [r13 + 0x20], ymm9
vmovdqu ymm9, ymmword [rbp + 0x320]
vmovdqu ymmword [r9 + 0x20], ymm8
vmovdqu ymm8, ymmword [rbp + 0x300]
vmovdqu ymmword [rax + 0x20], ymm7
vmovdqu ymm7, ymmword [rbp + 0x120]
vmovdqu ymmword [rcx + 0x20], ymm6
vmovdqu ymm6, ymmword [rbp + 0x140]
vmovdqu ymmword [r11], ymm5
mov r11, qword [rbp]
add rax, 0x200
add qword [rbp], 0x1e0
add rcx, 0x200
vmovdqu ymm5, ymmword [rbp + 0x100]
add r8, 0x200
mov qword [rbp + 0x50], rax
vmovdqu ymmword [r11], ymm4
mov r11, qword [rbp + 0x10]
add r13, 0x200
add qword [rbp + 0x10], 0x1e0
add r9, 0x200
vmovdqu ymm4, ymmword [rbp + 0x160]
add r10, 0x200
mov qword [rbp + 0x60], rcx
vmovdqu ymmword [r11], ymm3
vmovdqu ymm3, ymmword [0x180031c80]
mov r11, qword [rbp + 0x40]
add rdx, 0x200
add rdi, 0x200
add rbx, 0x200
add rsi, 0x200
add r14, 0x200
add r15, 0x200
add r12, 0x200
sub qword [rbp + 0x70], 1
jne 0x180002be0
vzeroupper
mov r9, qword [rbp + 0x30]
cmp r9, 0x100
jb 0x180003dfd
movdqu xmm3, xmmword [r11]
mov rdx, r9
movdqu xmm2, xmmword [r11 + 0x10]
shr rdx, 8
movdqu xmm0, xmmword [r11 + 0x30]
movdqu xmm1, xmmword [r11 + 0x20]
pshufd xmm8, xmm0, 0xff
pshufd xmm11, xmm0, 0
pshufd xmm0, xmm0, 0xaa
imul rax, rdx, 0xffffffffffffff00
movdqa xmmword [rbp + 0x120], xmm0
pshufd xmm4, xmm3, 0
pshufd xmm5, xmm2, 0x55
pshufd xmm7, xmm1, 0xaa
pshufd xmm6, xmm3, 0x55
pshufd xmm10, xmm2, 0xaa
add r9, rax
pshufd xmm12, xmm1, 0xff
pshufd xmm9, xmm3, 0xaa
pshufd xmm13, xmm2, 0xff
pshufd xmm15, xmm2, 0
pshufd xmm14, xmm1, 0x55
pshufd xmm0, xmm3, 0xff
movdqa xmmword [rbp + 0x160], xmm4
movdqa xmmword [rbp + 0x180], xmm5
movdqa xmmword [rbp + 0x1a0], xmm7
movdqa xmmword [rbp + 0x1c0], xmm8
movdqa xmmword [rbp + 0xa0], xmm11
movdqa xmmword [rbp + 0x1e0], xmm6
movdqa xmmword [rbp + 0x260], xmm10
movdqa xmmword [rbp + 0x280], xmm12
movdqa xmmword [rbp + 0x200], xmm9
movdqa xmmword [rbp + 0x220], xmm13
movdqa xmmword [rbp + 0x2e0], xmm15
movdqa xmmword [rbp + 0xc0], xmm14
movdqa xmmword [rbp + 0x140], xmm0
mov eax, dword [r11 + 0x20]
movdqa xmm3, xmm13
mov ecx, dword [r11 + 0x34]
shl rcx, 0x20
or rcx, rax
movdqa xmmword [rbp + 0x60], xmm6
movdqa xmm6, xmm9
movdqa xmmword [rbp + 0x70], xmm8
movdqa xmm9, xmmword [rbp + 0x140]
movdqa xmm8, xmm14
movdqa xmmword [rbp + 0x20], xmm4
mov eax, 0xa
movq xmm0, rcx
movdqa xmmword [rbp + 0x30], xmm7
punpcklqdq xmm0, xmm0
add rcx, 4
movdqa xmm1, xmm0
mov dword [r11 + 0x20], ecx
paddq xmm1, xmmword [0x180031c20]
movdqa xmm7, xmm15
paddq xmm0, xmmword [0x180031c30]
movdqa xmm2, xmm1
punpckhdq xmm1, xmm0
punpckldq xmm2, xmm0
movdqa xmm0, xmm2
shr rcx, 0x20
punpckhdq xmm2, xmm1
punpckldq xmm0, xmm1
movdqa xmm14, xmm2
movdqa xmm1, xmmword [rbp + 0x120]
movdqa xmmword [rbp + 0x300], xmm1
movdqa xmm1, xmm10
movdqa xmm10, xmm4
movdqa xmmword [rbp + 0x2c0], xmm2
movdqa xmm2, xmmword [rbp + 0x60]
movdqa xmm4, xmm11
movdqa xmm11, xmm0
movdqa xmmword [rbp + 0x2a0], xmm0
mov dword [r11 + 0x34], ecx
movdqa xmmword [rbp + 0x10], xmm6
movdqa xmmword [rbp + 0xe0], xmm9
movdqa xmmword [rbp + 0x40], xmm1
movdqa xmmword [rbp], xmm3
movdqa xmmword [rbp + 0x50], xmm12
jmp 0x180003608
movdqa xmm5, xmmword [rbp + 0x80]
movdqa xmm0, xmm7
paddd xmm0, xmm10
movdqa xmm10, xmm0
psrld xmm0, 0x19
pslld xmm10, 7
pxor xmm10, xmm4
pxor xmm10, xmm0
movdqa xmm0, xmm5
paddd xmm0, xmm2
movdqa xmm15, xmm0
psrld xmm0, 0x19
pslld xmm15, 7
pxor xmm15, xmm14
pxor xmm15, xmm0
movdqa xmm0, xmm10
paddd xmm0, xmmword [rbp + 0x20]
movdqa xmm13, xmm0
psrld xmm0, 0x17
pslld xmm13, 9
pxor xmm13, xmm11
pxor xmm13, xmm0
movdqa xmm0, xmm15
paddd xmm0, xmm2
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, xmm7
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 + 0x20]
pxor xmm7, xmm0
movdqa xmm0, xmm14
paddd xmm0, xmm4
movdqa xmm8, xmm0
psrld xmm0, 0xe
pslld xmm8, 0x12
pxor xmm8, xmm2
pxor xmm8, xmm0
movdqa xmm0, xmm1
paddd xmm0, xmm6
movdqa xmm12, xmm0
psrld xmm0, 0x19
pslld xmm12, 7
pxor xmm12, xmmword [rbp + 0x300]
pxor xmm12, xmm0
movdqa xmm0, xmm3
paddd xmm0, xmm9
movdqa xmm5, xmm0
psrld xmm0, 0x19
pslld xmm5, 7
pxor xmm5, xmmword [rbp + 0x70]
pxor xmm5, xmm0
movdqa xmm0, xmm12
paddd xmm0, xmm6
movdqa xmm2, xmm0
psrld xmm0, 0x17
pslld xmm2, 9
pxor xmm2, xmmword [rbp + 0x30]
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 + 0x10]
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 + 0xe0]
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 + 0x30], xmm13
pxor xmm2, xmm0
movdqa xmm0, xmm1
paddd xmm0, xmm8
movdqa xmmword [rbp + 0x30], xmm2
movdqa xmm2, xmm0
psrld xmm0, 0x17
pslld xmm2, 9
pxor xmm2, xmm3
pxor xmm2, xmm0
movdqa xmm0, xmmword [rbp + 0x30]
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 + 0x70], xmm13
movdqa xmm5, xmm0
pslld xmm5, 0xd
pxor xmm5, xmm10
psrld xmm0, 0x13
sub rax, 1
pxor xmm5, xmm0
movdqa xmm0, xmm13
paddd xmm0, xmmword [rbp + 0x30]
movdqa xmm10, xmm0
movdqa xmmword [rbp + 0x100], xmm5
psrld xmm0, 0xe
pslld xmm10, 0x12
pxor xmm10, xmm7
pxor xmm10, xmm0
movdqa xmm0, xmm5
paddd xmm0, xmm2
movdqa xmmword [rbp + 0x20], xmm10
movdqa xmm2, xmm0
psrld xmm0, 0xe
pslld xmm2, 0x12
pxor xmm2, xmm8
pxor xmm2, xmm0
movdqa xmm0, xmm15
paddd xmm0, xmm9
movdqa xmmword [rbp + 0x60], xmm2
movdqa xmm3, xmm0
psrld xmm0, 0x19
pslld xmm3, 7
pxor xmm3, xmm6
pxor xmm3, xmm0
movdqa xmm0, xmm12
paddd xmm0, xmm4
movdqa xmmword [rbp], xmm3
movdqa xmm7, xmm0
psrld xmm0, 0x19
pslld xmm7, 7
pxor xmm7, xmm11
pxor xmm7, xmm0
movdqa xmm0, xmm3
paddd xmm0, xmm9
movdqa xmm11, xmm0
psrld xmm0, 0x17
pslld xmm11, 9
pxor xmm11, xmmword [rbp + 0x240]
pxor xmm11, xmm0
movdqa xmm0, xmm7
paddd xmm0, xmm4
movdqa xmm8, xmm0
psrld xmm0, 0x17
pslld xmm8, 9
pxor xmm8, xmm14
pxor xmm8, xmm0
movdqa xmm0, xmm11
paddd xmm0, xmm3
movdqa xmm14, xmm0
psrld xmm0, 0x13
pslld xmm14, 0xd
pxor xmm14, xmm15
pxor xmm14, xmm0
movdqa xmm0, xmm8
paddd xmm0, xmm7
movdqa xmm13, xmm0
psrld xmm0, 0x13
pslld xmm13, 0xd
pxor xmm13, xmm12
pxor xmm13, xmm0
movdqa xmm0, xmm14
paddd xmm0, xmm11
movdqa xmmword [rbp + 0x300], xmm13
movdqa xmm6, xmm0
psrld xmm0, 0xe
pslld xmm6, 0x12
pxor xmm6, xmm9
pxor xmm6, xmm0
movdqa xmm0, xmm13
paddd xmm0, xmm8
movdqa xmmword [rbp + 0x10], xmm6
movdqa xmm9, xmm0
psrld xmm0, 0xe
pslld xmm9, 0x12
pxor xmm9, xmm4
movdqa xmm4, xmm5
pxor xmm9, xmm0
movdqa xmmword [rbp + 0xe0], xmm9
jne 0x180003600
movdqa xmm6, xmmword [rbp + 0x160]
movdqa xmm5, xmmword [rbp + 0x1a0]
paddd xmm6, xmm10
paddd xmm5, xmmword [rbp + 0x30]
movdqa xmm3, xmm6
movdqa xmm1, xmmword [rbp + 0x180]
movdqa xmm2, xmm5
paddd xmm1, xmmword [rbp + 0x80]
movdqa xmm0, xmmword [rbp + 0x1c0]
paddd xmm0, xmmword [rbp + 0x70]
movdqa xmm10, xmmword [rbp + 0x260]
movdqa xmm12, xmmword [rbp + 0x280]
punpckhdq xmm5, xmm0
punpckldq xmm2, xmm0
movdqu xmm0, xmmword [r10]
punpckhdq xmm6, xmm1
punpckldq xmm3, xmm1
movdqa xmm4, xmm6
punpcklqdq xmm6, xmm5
movdqa xmm1, xmm3
punpcklqdq xmm3, xmm2
pxor xmm3, xmm0
punpckhqdq xmm1, xmm2
movdqu xmmword [r8], xmm3
movdqu xmm0, xmmword [r10 + 0x40]
punpckhqdq xmm4, xmm5
movdqa xmm5, xmm10
paddd xmm5, xmmword [rbp + 0x40]
pxor xmm0, xmm1
movdqa xmm1, xmmword [rbp + 0x1e0]
movdqa xmm2, xmm5
paddd xmm1, xmmword [rbp + 0x60]
movdqu xmmword [r8 + 0x40], xmm0
movdqu xmm0, xmmword [r10 + 0x80]
pxor xmm6, xmm0
movdqu xmmword [r8 + 0x80], xmm6
movdqu xmm0, xmmword [r10 + 0xc0]
movdqa xmm6, xmmword [rbp + 0xa0]
paddd xmm6, xmmword [rbp + 0x100]
pxor xmm0, xmm4
movdqu xmmword [r8 + 0xc0], xmm0
movdqa xmm3, xmm6
movdqa xmm0, xmm12
paddd xmm0, xmmword [rbp + 0x50]
punpckldq xmm2, xmm0
punpckhdq xmm5, xmm0
movdqu xmm0, xmmword [r10 + 0x10]
punpckhdq xmm6, xmm1
punpckldq xmm3, xmm1
movdqa xmm4, xmm6
punpcklqdq xmm6, xmm5
movdqa xmm1, xmm3
punpcklqdq xmm3, xmm2
pxor xmm3, xmm0
punpckhqdq xmm1, xmm2
movdqa xmm2, xmmword [rbp + 0x2c0]
movdqu xmmword [r8 + 0x10], xmm3
movdqu xmm0, xmmword [r10 + 0x50]
punpckhqdq xmm4, xmm5
paddd xmm2, xmm14
movdqa xmm5, xmmword [rbp + 0x200]
pxor xmm0, xmm1
paddd xmm5, xmmword [rbp + 0x10]
movdqu xmmword [r8 + 0x50], xmm0
movdqu xmm0, xmmword [r10 + 0x90]
movdqa xmm1, xmm5
pxor xmm6, xmm0
movdqu xmmword [r8 + 0x90], xmm6
movdqu xmm0, xmmword [r10 + 0xd0]
movdqa xmm6, xmmword [rbp + 0x2a0]
pxor xmm0, xmm4
paddd xmm6, xmm11
movdqu xmmword [r8 + 0xd0], xmm0
movdqa xmm0, xmmword [rbp + 0x220]
movdqa xmm3, xmm6
paddd xmm0, xmmword [rbp]
punpckldq xmm3, xmm2
punpckhdq xmm6, xmm2
movdqa xmm2, xmm3
punpckldq xmm1, xmm0
punpckhdq xmm5, xmm0
movdqu xmm0, xmmword [r10 + 0x20]
movdqa xmm15, xmmword [rbp + 0x2e0]
movdqa xmm4, xmm6
movdqa xmm14, xmmword [rbp + 0xc0]
movdqa xmm11, xmmword [rbp + 0xa0]
punpcklqdq xmm6, xmm5
punpcklqdq xmm3, xmm1
pxor xmm3, xmm0
punpckhqdq xmm4, xmm5
movdqa xmm5, xmmword [rbp + 0x120]
movdqu xmmword [r8 + 0x20], xmm3
movdqu xmm0, xmmword [r10 + 0x60]
punpckhqdq xmm2, xmm1
paddd xmm5, xmm13
movdqa xmm13, xmmword [rbp + 0x220]
pxor xmm0, xmm2
movdqu xmmword [r8 + 0x60], xmm0
movdqu xmm0, xmmword [r10 + 0xa0]
movdqa xmm2, xmm5
movdqa xmm1, xmm14
pxor xmm6, xmm0
paddd xmm1, xmm8
movdqa xmm8, xmmword [rbp + 0x1c0]
movdqu xmmword [r8 + 0xa0], xmm6
movdqu xmm0, xmmword [r10 + 0xe0]
movdqa xmm6, xmm15
pxor xmm0, xmm4
paddd xmm6, xmm7
movdqa xmm7, xmmword [rbp + 0x1a0]
movdqa xmm3, xmm6
movdqu xmmword [r8 + 0xe0], xmm0
movdqa xmm0, xmmword [rbp + 0x140]
paddd xmm0, xmm9
punpckhdq xmm6, xmm1
movdqa xmm9, xmmword [rbp + 0x200]
movdqa xmm4, xmm6
punpckhdq xmm5, xmm0
punpckldq xmm2, xmm0
movdqu xmm0, xmmword [r10 + 0x30]
punpckldq xmm3, xmm1
movdqa xmm1, xmm3
punpcklqdq xmm6, xmm5
punpckhqdq xmm4, xmm5
movdqa xmm5, xmmword [rbp + 0x180]
punpcklqdq xmm3, xmm2
pxor xmm3, xmm0
punpckhqdq xmm1, xmm2
movdqu xmmword [r8 + 0x30], xmm3
movdqu xmm0, xmmword [r10 + 0x70]
pxor xmm0, xmm1
movdqu xmmword [r8 + 0x70], xmm0
movdqu xmm0, xmmword [r10 + 0xb0]
pxor xmm6, xmm0
movdqu xmmword [r8 + 0xb0], xmm6
movdqu xmm0, xmmword [r10 + 0xf0]
add r10, 0x100
movdqa xmm6, xmmword [rbp + 0x1e0]
pxor xmm0, xmm4
movdqa xmm4, xmmword [rbp + 0x160]
movdqu xmmword [r8 + 0xf0], xmm0
add r8, 0x100
sub rdx, 1
jne 0x180003512
mov esi, 5
cmp r9, 0x40
jb 0x1800041c1
mov rbx, r9
shr rbx, 6
imul rax, rbx, 0xffffffffffffffc0
add r9, rax
nop word [rax + rax]
movdqu xmm10, xmmword [r11]
mov rax, rsi
movdqu xmm11, xmmword [r11 + 0x10]
movdqu xmm12, xmmword [r11 + 0x20]
movdqu xmm13, xmmword [r11 + 0x30]
movdqa xmm3, xmm10
movdqa xmm8, xmm11
movdqa xmm9, xmm12
movdqa xmm2, xmm13
nop
movdqa xmm0, xmm8
paddd xmm0, xmm3
movdqa xmm1, xmm0
psrld xmm0, 0x19
pslld xmm1, 7
pxor xmm1, xmm2
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
movdqa xmm0, xmm1
paddd xmm0, xmm2
pshufd xmm2, xmm1, 0x39
movdqa xmm3, xmm0
psrld xmm0, 0xe
pslld xmm3, 0x12
pxor xmm3, xmm5
pxor xmm3, xmm0
sub rax, 1
jne 0x180003e50
paddd xmm13, xmm2
paddd xmm10, xmm3
paddd xmm11, xmm8
pshufd xmm0, xmm10, 0x39
paddd xmm12, xmm9
pshufd xmm1, xmm11, 0x39
movd edi, xmm13
movd eax, xmm10
movd ecx, xmm11
xor edi, dword [r10 + 0x10]
xor eax, dword [r10]
xor ecx, dword [r10 + 0x30]
movd edx, xmm12
pshufd xmm3, xmm13, 0x39
pshufd xmm2, xmm12, 0x39
xor edx, dword [r10 + 0x20]
mov dword [r8], eax
mov dword [r8 + 0x10], edi
mov dword [r8 + 0x30], ecx
mov dword [r8 + 0x20], edx
movd eax, xmm0
movd ecx, xmm1
pshufd xmm0, xmm11, 0x93
xor eax, dword [r10 + 0x14]
xor ecx, dword [r10 + 4]
movd edi, xmm3
movd edx, xmm2
pshufd xmm4, xmm11, 0x4e
xor edi, dword [r10 + 0x24]
xor edx, dword [r10 + 0x34]
mov dword [r8 + 0x14], eax
mov dword [r8 + 0x24], edi
mov dword [r8 + 4], ecx
mov dword [r8 + 0x34], edx
pshufd xmm6, xmm10, 0x4e
pshufd xmm5, xmm12, 0x4e
pshufd xmm1, xmm13, 0x4e
movd edi, xmm4
movd edx, xmm5
movd ecx, xmm1
xor edi, dword [r10 + 0x18]
xor edx, dword [r10 + 8]
xor ecx, dword [r10 + 0x38]
movd eax, xmm6
xor eax, dword [r10 + 0x28]
mov dword [r8 + 0x28], eax
mov dword [r8 + 0x18], edi
mov dword [r8 + 8], edx
mov dword [r8 + 0x38], ecx
movd edi, xmm0
pshufd xmm0, xmm12, 0x93
movd edx, xmm0
xor edi, dword [r10 + 0x2c]
pshufd xmm0, xmm13, 0x93
xor edx, dword [r10 + 0x1c]
movd ecx, xmm0
pshufd xmm0, xmm10, 0x93
movd eax, xmm0
xor ecx, dword [r10 + 0xc]
xor eax, dword [r10 + 0x3c]
mov dword [r8 + 0x3c], eax
mov dword [r8 + 0x2c], edi
mov dword [r8 + 0x1c], edx
mov dword [r8 + 0xc], ecx
mov edx, dword [r11 + 0x34]
add dword [r11 + 0x20], 1
lea eax, [rdx + 1]
cmovne eax, edx
add r8, 0x40
add r10, 0x40
mov dword [r11 + 0x34], eax
sub rbx, 1
jne 0x180003e20
test r9, r9
je 0x180004609
movdqu xmm10, xmmword [r11]
movdqu xmm11, xmmword [r11 + 0x10]
movdqu xmm12, xmmword [r11 + 0x20]
movdqu xmm13, xmmword [r11 + 0x30]
movdqa xmm3, xmm10
movdqa xmm8, xmm11
movdqa xmm9, xmm12
movdqa xmm4, xmm13
nop word [rax + rax]
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
paddd xmm1, xmm4
movdqa xmm0, xmm4
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, xmm4, 0x4e
pxor xmm3, xmm1
pshufd xmm8, xmm3, 0x93
movdqa xmm1, xmm3
paddd xmm1, xmm6
movdqa xmm5, xmm1
psrld xmm1, 0x17
pslld xmm5, 9
pxor xmm5, xmm0
pxor xmm5, xmm1
movdqa xmm1, xmm8
paddd xmm3, xmm5
movdqa xmm2, xmm3
psrld xmm3, 0x13
pslld xmm2, 0xd
pxor xmm2, xmm7
pxor xmm2, xmm3
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
pshufd xmm0, xmm5, 0x4e
pxor xmm3, xmm1
movdqa xmm1, xmm3
pshufd xmm6, xmm3, 0x93
paddd xmm1, xmm7
movdqa xmm4, xmm1
psrld xmm1, 0x17
pslld xmm4, 9
pxor xmm4, xmm0
pxor xmm4, xmm1
paddd xmm3, xmm4
movdqa xmm2, xmm3
psrld xmm3, 0x13
pslld xmm2, 0xd
pxor xmm2, xmm8
pxor xmm2, xmm3
movdqa xmm0, xmm4
movdqa xmm1, xmm6
paddd xmm0, xmm2
movdqa xmm5, xmm0
psrld xmm0, 0xe
pslld xmm5, 0x12
pxor xmm5, xmm7
pxor xmm5, xmm0
pshufd xmm0, xmm2, 0x39
paddd xmm1, xmm5
movdqa xmm3, xmm1
psrld xmm1, 0x19
pslld xmm3, 7
pxor xmm3, xmm0
pshufd xmm0, xmm4, 0x4e
pxor xmm3, xmm1
pshufd xmm8, xmm3, 0x93
movdqa xmm1, xmm3
paddd xmm1, xmm5
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 xmm4, xmm0, 0x39
paddd xmm2, xmm0
movdqa xmm3, xmm2
psrld xmm2, 0xe
pslld xmm3, 0x12
pxor xmm3, xmm5
pxor xmm3, xmm2
sub rsi, 1
jne 0x180004200
paddd xmm10, xmm3
paddd xmm13, xmm4
paddd xmm11, xmm8
pshufd xmm0, xmm10, 0x39
paddd xmm12, xmm9
pshufd xmm1, xmm11, 0x39
pshufd xmm2, xmm12, 0x39
xor ecx, ecx
movd edx, xmm2
movd dword [rbp + 0x454], xmm0
movd dword [rbp + 0x444], xmm1
pshufd xmm3, xmm13, 0x39
pshufd xmm0, xmm10, 0x93
pshufd xmm1, xmm11, 0x93
movd edi, xmm3
movd dword [rbp + 0x47c], xmm0
movd dword [rbp + 0x46c], xmm1
pshufd xmm0, xmm12, 0x93
pshufd xmm1, xmm13, 0x93
pshufd xmm4, xmm10, 0x4e
pshufd xmm5, xmm11, 0x4e
pshufd xmm2, xmm12, 0x4e
pshufd xmm3, xmm13, 0x4e
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], edi
movd dword [rbp + 0x468], xmm4
movd dword [rbp + 0x458], xmm5
movd dword [rbp + 0x448], xmm2
movd dword [rbp + 0x478], xmm3
cmp r9, 0x40
jb 0x1800045d9
lea eax, [r9 - 1]
mov edi, eax
lea r11, [r8 + rax]
add rax, r10
cmp r8, rax
ja 0x180004527
cmp r11, r10
jae 0x1800045d9
lea rax, [rbp + 0x440]
add rax, rdi
cmp r8, rax
ja 0x180004546
lea rax, [rbp + 0x440]
cmp r11, rax
jae 0x1800045d9
mov r11, r9
and r11, 0xffffffffffffffc0
mov edi, 0x20
nop dword [rax]
nop word [rax + rax]
movdqu xmm0, xmmword [rbp + rcx + 0x440]
lea eax, [rdi - 0x10]
add edx, 0x40
movdqu xmm1, xmmword [r10 + rcx]
pxor xmm1, xmm0
movdqu xmm0, xmmword [rax + r10]
movdqu xmmword [r8 + rcx], xmm1
mov ecx, edx
movdqu xmm1, xmmword [rbp + rax + 0x440]
pxor xmm1, xmm0
movdqu xmmword [rax + r8], xmm1
mov eax, edi
movdqu xmm0, xmmword [rax + r10]
movdqu xmm1, xmmword [rbp + rax + 0x440]
pxor xmm1, xmm0
movdqu xmmword [rax + r8], xmm1
lea eax, [rdi + 0x10]
add edi, 0x40
movdqu xmm1, xmmword [rbp + rax + 0x440]
movdqu xmm0, xmmword [rax + r10]
pxor xmm1, xmm0
movdqu xmmword [rax + r8], xmm1
cmp rcx, r11
jb 0x180004560
mov ecx, edx
cmp rcx, r9
jae 0x1800045f9
movzx eax, byte [r10 + rcx]
inc edx
xor al, byte [rbp + rcx + 0x440]
mov byte [r8 + rcx], al
mov ecx, edx
cmp rcx, r9
jb 0x1800045e0
lea rdi, [rbp + 0x440]
xor eax, eax
mov ecx, 0x40
rep stosb byte [rdi], al
mov rcx, qword [rbp + 0x480]
xor rcx, rsp
call fcn.180011720
lea r11, [rsp + 0x550]
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