Function at 0x14006d7c0
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x138
lea rbp, [rsp + 0x80]
vmovdqa xmmword [rbp + 0xa0], xmm15
vmovdqa xmmword [rbp + 0x90], xmm14
vmovdqa xmmword [rbp + 0x80], xmm13
vmovaps xmmword [rbp + 0x70], xmm12
vmovdqa xmmword [rbp + 0x60], xmm11
vmovdqa xmmword [rbp + 0x50], xmm10
vmovdqa xmmword [rbp + 0x40], xmm9
vmovdqa xmmword [rbp + 0x30], xmm8
vmovaps xmmword [rbp + 0x20], xmm7
vmovdqa xmmword [rbp + 0x10], xmm6
and rsp, 0xffffffffffffffe0
mov rbx, rsp
mov rdi, rdx
mov eax, dword [0x141dcaed0]
and eax, dword [0x141dcaed4]
imul eax, eax, 0x86dc06d3
cmp eax, 0x2b89645b
je 0x14006d8a3
mov eax, dword [0x141dcaed8]
and eax, dword [0x141dcaedc]
imul rax, rax, 0x4f955d63
shr rax, 0x3d
imul edx, eax, 0x475a6a86
mov eax, 0x20
call fcn.1400ef3b0
sub rsp, rax
mov r14, rsp
and r14, 0xffffffffffffffe0
mov rsp, r14
mov eax, 0x20
call fcn.1400ef3b0
sub rsp, rax
mov r15, rsp
and r15, 0xffffffffffffffe0
mov rsp, r15
mov eax, 0x20
call fcn.1400ef3b0
sub rsp, rax
mov r12, rsp
and r12, 0xffffffffffffffe0
mov rsp, r12
cmp edx, 0xe0588290
jne 0x14006d8ed
mov eax, 0x20
call fcn.1400ef3b0
sub rsp, rax
mov rax, rsp
and rax, 0xffffffffffffffe0
mov rsp, rax
mov eax, 0x20
call fcn.1400ef3b0
sub rsp, rax
mov rax, rsp
and rax, 0xffffffffffffffe0
mov rsp, rax
mov eax, 0x20
call fcn.1400ef3b0
sub rsp, rax
mov rax, rsp
and rax, 0xffffffffffffffe0
mov rsp, rax
jmp 0x14006d839
mov eax, 0x20
call fcn.1400ef3b0
sub rsp, rax
mov r13, rsp
and r13, 0xffffffffffffffe0
mov rsp, r13
mov rax, qword [rdi + 0x220]
cmp rax, 4
jae 0x14006e52c
nop word cs:[rax + rax]
mov edx, dword [0x141dcaee8]
xor edx, dword [0x141dcaeec]
add edx, 0x5c715cc8
xor edx, 0x30041c0
and edx, 0xbf1d47d2
cmp edx, 0x869af4df
jb 0x14006d920
movzx r10d, byte [rdi]
vmovdqa ymm7, ymmword [rdi + 0x20]
vmovdqa ymm1, ymmword [rdi + 0x60]
vmovdqa ymm2, ymmword [rdi + 0x80]
vmovdqa ymm4, ymmword [rdi + 0xe0]
vmovdqa ymm3, ymmword [rdi + 0x100]
vmovdqa ymm0, ymmword [rdi + 0x120]
mov byte [rdi], 0
test r10b, r10b
je 0x14006dc0b
vpunpckldq ymm6, ymm1, ymm2
vpunpckhdq ymm2, ymm1, ymm2
vmovdqa ymm5, ymmword [0x140102920]
vpermd ymm5, ymm5, ymm6
vmovdqa ymm8, ymmword [0x140102940]
vpermd ymm10, ymm8, ymm2
vpshufd ymm1, ymm1, 0xff
vpbroadcastq ymm2, qword [0x140102960]
vpermd ymm2, ymm2, ymm7
vpblendd ymm1, ymm1, ymm2, 0xc0
vmovdqa ymm2, ymmword [0x140102980]
vpermd ymm2, ymm2, ymm6
vpblendd ymm1, ymm2, ymm1, 0xd0
vpmuludq ymm9, ymm1, ymm4
vpshufd ymm6, ymm4, 0xf5
vpslld ymm2, ymm1, 2
vpaddd ymm2, ymm1, ymm2
vpmuludq ymm12, ymm2, ymm3
vpmuludq ymm11, ymm2, ymm6
vpmuludq ymm1, ymm2, ymm0
vmovdqa ymmword [rbx + 0x20], ymm1
vpshufd ymm1, ymm3, 0xb1
nop word cs:[rax + rax]
mov edx, dword [0x141dcaef0]
xor edx, dword [0x141dcaef4]
and edx, 0x7a14fa68
xor edx, 0x9e1cdf69
imul edx, edx, 0x8a926f46
cmp edx, 0xef516e30
jb 0x14006da00
vpbroadcastq ymm13, xmm7
vpblendd ymm5, ymm5, ymm13, 0xc0
vinserti128 ymm7, ymm0, xmm7, 1
vpblendd ymm13, ymm10, ymm7, 0xc0
vpmuludq ymm7, ymm5, ymm4
vpaddq ymm14, ymm12, ymm7
vpmuludq ymm10, ymm5, ymm3
vpmuludq ymm12, ymm13, ymm4
vpmuludq ymm15, ymm13, ymm3
vpshufd ymm7, ymm5, 0xb1
vpmuludq ymm8, ymm7, ymm4
vpaddq ymm8, ymm8, ymm10
vpshufd ymm10, ymm13, 0xb1
vpaddq ymm8, ymm8, ymm11
vpmuludq ymm11, ymm7, ymm3
vpmuludq ymm4, ymm10, ymm4
vpaddq ymm4, ymm15, ymm4
vpmuludq ymm3, ymm10, ymm3
vpmuludq ymm15, ymm5, ymm0
vpaddq ymm15, ymm15, ymm9
vpmuludq ymm9, ymm5, ymm6
vpaddq ymm9, ymm9, ymm12
vpaddq ymm11, ymm9, ymm11
vpmuludq ymm9, ymm7, ymm6
vpaddq ymm4, ymm9, ymm4
vpaddq ymm9, ymm4, ymmword [rbx + 0x20]
vpmuludq ymm4, ymm13, ymm6
vpaddq ymm4, ymm15, ymm4
vpaddq ymm12, ymm4, ymm3
vpslld ymm3, ymm10, 2
vpaddd ymm3, ymm10, ymm3
vpmuludq ymm4, ymm3, ymm6
vpaddq ymm4, ymm14, ymm4
vpmuludq ymm15, ymm3, ymm0
vpshufd ymm6, ymm2, 0xf5
vpshufd ymm13, ymm3, 0xf5
vpmuludq ymm6, ymm6, ymm0
vpaddq ymm14, ymm4, ymm6
vmovdqa ymm10, ymmword [0x1401029a0]
vmovdqa ymm6, ymmword [0x1401029c0]
vmovdqa ymm4, ymmword [0x140102a00]
nop word [rax + rax]
mov edx, dword [0x141dcaef8]
and edx, dword [0x141dcaefc]
imul edx, edx, 0x7e62b325
cmp edx, 0x61bc6272
je 0x14006daf0
vpmuludq ymm3, ymm3, ymm1
vpaddq ymm3, ymm8, ymm3
vpmuludq ymm2, ymm2, ymm1
vpaddq ymm2, ymm11, ymm2
vpaddq ymm2, ymm15, ymm2
vpmuludq ymm5, ymm1, ymm5
vpaddq ymm5, ymm9, ymm5
vpmuludq ymm7, ymm7, ymm1
vpaddq ymm7, ymm12, ymm7
vpmuludq ymm1, ymm13, ymm1
vpaddq ymm1, ymm14, ymm1
vpmuludq ymm0, ymm13, ymm0
vpaddq ymm0, ymm3, ymm0
vpunpckhqdq ymm3, ymm1, ymm0
vpunpcklqdq ymm0, ymm1, ymm0
vpaddq ymm0, ymm0, ymm3
vpunpckhqdq ymm1, ymm2, ymm5
vpunpcklqdq ymm2, ymm2, ymm5
vpaddq ymm1, ymm2, ymm1
vinserti128 ymm2, ymm0, xmm1, 1
vperm2i128 ymm0, ymm0, ymm1, 0x31
vpaddq ymm0, ymm0, ymm2
vpermq ymm1, ymm7, 0x4e
vpaddq ymm1, ymm1, ymm7
vpermq ymm2, ymm1, 1
vpaddq ymm1, ymm2, ymm1
vpand ymm2, ymm10, ymm0
vpermq ymm0, ymm0, 0x93
vpsrlvq ymm0, ymm0, ymm6
vpaddq ymm0, ymm0, ymm2
vpsrlq ymm2, ymm0, 0x1a
vpermq ymm2, ymm2, 0x93
vpaddq ymm1, ymm1, ymm2
vpand ymm0, ymm0, ymmword [0x1401029e0]
vpsrlvq ymm2, ymm1, ymm4
vpaddq ymm0, ymm2, ymm0
vpsllq ymm2, ymm2, 2
vpaddq ymm0, ymm2, ymm0
vpand ymm2, ymm0, ymmword [0x1401029a0]
vpermq ymm0, ymm0, 0x93
vpsrlvq ymm0, ymm0, ymmword [0x1401029c0]
vpaddq ymm0, ymm2, ymm0
vpsrlq ymm2, ymm0, 0x1a
vpermq ymm2, ymm2, 0xff
vpand xmm1, xmm1, xmmword [0x140102a20]
vpaddq xmm1, xmm2, xmm1
vpshufd ymm0, ymm0, 0x28
vpand ymm0, ymm0, ymmword [0x140102a40]
vpbroadcastd ymm1, xmm1
vpermq ymm0, ymm0, 0xf8
vpblendd ymm12, ymm0, ymm1, 0x90
mov r8b, 1
jmp 0x14006dc10
xor r8d, r8d
nop
mov edx, dword [0x141dcaf00]
and edx, dword [0x141dcaf04]
cmp edx, 0xa229572e
je 0x14006dc10
cmp rax, 1
mov qword [rbx + 0x18], rcx
jbe 0x14006dcd8
vmovdqa ymm1, ymmword [0x140102820]
vmovdqa ymm2, ymmword [0x140102a60]
vmovdqa ymm9, ymmword [0x140102a80]
vmovdqa ymm0, ymmword [0x140102aa0]
vmovdqa ymm7, ymmword [0x140102ac0]
vmovdqa ymm10, ymmword [0x140102ae0]
vmovdqa ymm8, ymmword [0x140102b00]
vmovdqa ymm5, ymmword [0x140102b20]
vpxor xmm6, xmm6, xmm6
vmovdqa ymm4, ymmword [0x140102b20]
jmp 0x14006dcaa
mov edx, dword [0x141dcaf08]
or edx, dword [0x141dcaf0c]
or edx, 0xf00c1c09
imul edx, edx, 0xd3b34012
and edx, 0xe0da5cb2
cmp edx, 0x28c5377
jne 0x14006dd60
vmovdqa xmm3, xmmword [rdi + 0x1e0]
vpor ymm3, ymm3, ymm1
vpsllvd ymm11, ymm3, ymm2
vpsrlvd ymm3, ymm3, ymm9
vpermd ymm3, ymm0, ymm3
vpor ymm3, ymm11, ymm3
vpand ymm3, ymm3, ymm7
test r10b, r10b
je 0x14006dc80
vpaddd ymm3, ymm12, ymm3
jmp 0x14006dc80
jne 0x14006e21f
vmovdqa xmm0, xmmword [rdi + 0x1e0]
xor eax, eax
nop dword [rax + rax]
test al, al
jne 0x14006dcf0
vmovdqa xmm0, xmm0
vpor ymm0, ymm0, ymmword [0x140102820]
vpsllvd ymm1, ymm0, ymmword [0x140102a60]
vpsrlvd ymm0, ymm0, ymmword [0x140102a80]
vmovdqa ymm2, ymmword [0x140102aa0]
vpermd ymm0, ymm2, ymm0
vpor ymm0, ymm0, ymm1
vpand ymm0, ymm0, ymmword [0x140102ac0]
nop dword [rax + rax]
mov eax, dword [0x141dcaf10]
xor eax, dword [0x141dcaf14]
or eax, 0x40000001
xor eax, 0x1380004
and eax, 0x49780105
cmp eax, 0xc04cce72
ja 0x14006dd30
test r10b, r10b
jne 0x14006e014
jmp 0x14006e03c
vmovdqa xmm11, xmmword [rdi + 0x1f0]
vpor ymm1, ymm11, ymm1
vpsllvd ymm2, ymm1, ymm2
vpsrlvd ymm1, ymm1, ymm9
vpermd ymm1, ymm10, ymm1
vpor ymm10, ymm1, ymm2
vmovdqa ymm1, ymmword [rdi + 0x160]
vmovdqa ymm2, ymmword [rdi + 0x1a0]
vpermd ymm9, ymm8, ymm3
vpbroadcastd ymm11, dword [rdi + 0x1bc]
vpmuludq ymm9, ymm9, ymm11
vpand ymm7, ymm10, ymm7
vpermd ymm8, ymm8, ymm7
vpbroadcastd ymm11, dword [rdi + 0x17c]
vpmuludq ymm8, ymm8, ymm11
vpermd ymm5, ymm5, ymm2
vpblendd ymm6, ymm6, ymm3, 0x15
vpermq ymm11, ymm3, 0x29
vpmuludq ymm5, ymm11, ymm5
vpermd ymm11, ymm4, ymm1
vpbroadcastq ymm4, qword [0x140102b40]
vpand ymm4, ymm10, ymm4
vpermq ymm10, ymm4, 0x29
vpmuludq ymm10, ymm11, ymm10
vpaddq ymm8, ymm8, ymm10
vpshufd xmm10, xmm3, 0xd7
vpermq ymm10, ymm10, 0x50
vpshufd ymm11, ymm2, 0xe5
vpermq ymm11, ymm11, 0x4e
vpmuludq ymm10, ymm10, ymm11
vpshufd xmm11, xmm7, 0xd7
vpermq ymm11, ymm11, 0x50
vpshufd ymm12, ymm1, 0xe5
vpermq ymm12, ymm12, 0x4e
vpmuludq ymm11, ymm11, ymm12
vpaddq ymm8, ymm8, ymm11
vpmovzxdq ymm3, xmm3
vpbroadcastd ymm11, xmm2
vpmuludq ymm11, ymm11, ymm3
vpmovzxdq ymm7, xmm7
vpbroadcastd ymm12, xmm1
vpshufd xmm13, xmm2, 0xe5
vpermq ymm13, ymm13, 0x10
vpblendd ymm13, ymm13, ymmword [rdi + 0x1c0], 3
vpmuludq ymm12, ymm12, ymm7
vpermq ymm6, ymm6, 0x42
vpmuludq ymm13, ymm13, ymm6
vpaddq ymm9, ymm13, ymm9
vpshufd xmm13, xmm1, 0xe5
vpermq ymm13, ymm13, 0x10
vpblendd ymm13, ymm13, ymmword [rdi + 0x180], 3
vpaddq ymm9, ymm9, ymm10
vpermq ymm4, ymm4, 0x42
vpmuludq ymm10, ymm13, ymm4
vpaddq ymm10, ymm12, ymm10
vpaddq ymm5, ymm10, ymm5
vpaddq ymm5, ymm8, ymm5
vpaddq ymm5, ymm9, ymm5
vpaddq ymm5, ymm11, ymm5
vpmuludq ymm6, ymm6, ymm2
vpmuludq ymm4, ymm4, ymm1
vpaddq ymm4, ymm6, ymm4
vmovdqa ymm6, ymmword [0x140102b60]
vpermd ymm2, ymm6, ymm2
vpmuludq ymm2, ymm3, ymm2
vpermd ymm1, ymm6, ymm1
vpmuludq ymm1, ymm7, ymm1
vpaddq ymm1, ymm2, ymm1
vpermq ymm2, ymm1, 0x4e
vpaddq ymm1, ymm2, ymm1
vpshufd ymm2, ymm1, 0x4e
vmovdqa ymm3, ymmword [0x1401029a0]
vpand ymm6, ymm5, ymm3
vmovdqa ymm7, ymmword [0x140102b80]
vpsrlvq ymm5, ymm5, ymm7
vpermq ymm5, ymm5, 0x93
vpaddq ymm5, ymm6, ymm5
vpsrlq ymm6, ymm5, 0x1a
vpermq ymm6, ymm6, 0x93
vpaddq ymm1, ymm4, ymm1
vpaddq ymm1, ymm1, ymm2
vpand ymm2, ymm5, ymmword [0x1401029e0]
vpaddq ymm1, ymm1, ymm6
vpsrlvq ymm4, ymm1, ymmword [0x140102a00]
vpsllq ymm5, ymm4, 2
vpaddq ymm2, ymm4, ymm2
vpaddq ymm2, ymm5, ymm2
vpand ymm3, ymm2, ymm3
vpsrlvq ymm2, ymm2, ymm7
vpermq ymm2, ymm2, 0x93
vpaddq ymm2, ymm3, ymm2
vpsrlq ymm3, ymm2, 0x1a
vpermq ymm3, ymm3, 0xff
vpand xmm1, xmm1, xmmword [0x140102a20]
vpaddq xmm1, xmm3, xmm1
vpbroadcastd ymm1, xmm1
vpshufd ymm2, ymm2, 0x28
vpermq ymm2, ymm2, 0xf8
vpand ymm2, ymm2, ymmword [0x140102ba0]
vpblendd ymm12, ymm2, ymm1, 0x90
add rax, 0xfffffffffffffffe
mov qword [rdi + 0x220], rax
cmp rax, 1
jne 0x14006e338
nop word cs:[rax + rax]
mov eax, dword [0x141dcaf48]
xor eax, dword [0x141dcaf4c]
imul rax, rax, 0x4ac4854b
shr rax, 0x3e
or eax, 0x7f89f554
imul eax, eax, 0xa27221bc
cmp eax, 0xd95c0295
ja 0x14006dfa0
vmovdqa xmm1, xmmword [rdi + 0x200]
vpor ymm2, ymm1, ymmword [0x140102820]
vpsllvd ymm1, ymm2, ymmword [0x140102a60]
vpsrlvd ymm2, ymm2, ymmword [0x140102a80]
xor eax, eax
nop dword [rax]
test al, al
jne 0x14006dff0
vpermd ymm0, ymm0, ymm2
vpor ymm0, ymm0, ymm1
vpand ymm0, ymm0, ymmword [0x140102ac0]
xor eax, eax
nop word [rax + rax]
test al, al
jne 0x14006e010
vpaddd ymm0, ymm12, ymm0
mov eax, 0xad8f1b1d
nop dword [rax]
mov edx, dword [0x141dcaf40]
add edx, dword [0x141dcaf44]
imul rdx, rax
shr rdx, 0x3e
cmp edx, 0x16be394e
je 0x14006e020
vmovdqa ymm1, ymmword [rdi + 0x160]
vmovdqa ymm2, ymmword [0x140102b00]
vpermd ymm2, ymm2, ymm0
vpbroadcastd ymm3, dword [rdi + 0x17c]
vpmuludq ymm2, ymm3, ymm2
vpmovzxdq ymm3, xmm0
vpbroadcastd ymm4, dword [rdi + 0x160]
vpmuludq ymm4, ymm4, ymm3
vpshufd xmm5, xmm0, 0xd7
vpermq ymm5, ymm5, 0x50
vpshufd ymm6, ymm1, 0xe5
vpermq ymm6, ymm6, 0x4e
vpmuludq ymm5, ymm6, ymm5
vpshufd xmm6, xmmword [rdi + 0x160], 0xe5
vpermq ymm6, ymm6, 0x10
vpblendd ymm6, ymm6, ymmword [rdi + 0x180], 3
vpermq ymm7, ymm0, 0x42
vpmuludq ymm6, ymm6, ymm7
vmovdqa ymm7, ymmword [0x140102b20]
vpermd ymm7, ymm7, ymm1
vpermq ymm8, ymm0, 0x29
vpmuludq ymm7, ymm8, ymm7
vpaddq ymm2, ymm2, ymm7
vpaddq ymm2, ymm5, ymm2
vpaddq ymm2, ymm2, ymm4
vpaddq ymm2, ymm2, ymm6
vmovdqa ymm4, ymmword [0x140102b60]
vpermd ymm4, ymm4, ymm1
vpmuludq ymm3, ymm4, ymm3
vpermq ymm4, ymm3, 0x4e
vpaddq ymm3, ymm4, ymm3
vpermq ymm4, ymm3, 1
vpermq ymm0, ymm0, 2
vpmuludq ymm0, ymm1, ymm0
vmovdqa ymm1, ymmword [0x1401029a0]
vpand ymm5, ymm2, ymm1
vmovdqa ymm6, ymmword [0x140102b80]
vpsrlvq ymm2, ymm2, ymm6
vpermq ymm2, ymm2, 0x93
vpaddq ymm2, ymm5, ymm2
vpsrlq ymm5, ymm2, 0x1a
vpermq ymm5, ymm5, 0x93
vpaddq ymm0, ymm3, ymm0
vpaddq ymm0, ymm0, ymm4
vpaddq ymm0, ymm0, ymm5
vpand ymm2, ymm2, ymmword [0x1401029e0]
vpsrlvq ymm3, ymm0, ymmword [0x140102a00]
vpsllq ymm4, ymm3, 2
vpaddq ymm2, ymm3, ymm2
vpaddq ymm2, ymm4, ymm2
vpand ymm1, ymm2, ymm1
vpsrlvq ymm2, ymm2, ymm6
vpermq ymm2, ymm2, 0x93
vpaddq ymm1, ymm1, ymm2
vpsrlq ymm2, ymm1, 0x1a
vpermq ymm2, ymm2, 0xff
vpand xmm0, xmm0, xmmword [0x140102a20]
vpshufd ymm1, ymm1, 0x28
vpermq ymm1, ymm1, 0xf8
vpand ymm1, ymm1, ymmword [0x140102ba0]
vpaddq xmm0, xmm2, xmm0
dec qword [rdi + 0x220]
vpbroadcastd ymm0, xmm0
vpblendd ymm12, ymm1, ymm0, 0x90
cmp byte [rdi + 0x228], 0
je 0x14006e50a
nop word cs:[rax + rax]
mov eax, dword [0x141dcaf50]
imul eax, dword [0x141dcaf54]
or eax, 0x92241302
and eax, 0xbb265f96
add eax, 0x7dc1571f
cmp eax, 0x686f6508
ja 0x14006e1c0
vmovdqu xmm0, xmmword [rdi + 0x229]
vmovdqa xmm0, xmm0
vpsllvd ymm1, ymm0, ymmword [0x140102a60]
vpsrlvd ymm0, ymm0, ymmword [0x140102a80]
vmovdqa ymm2, ymmword [0x140102aa0]
vpermd ymm0, ymm2, ymm0
vpor ymm0, ymm0, ymm1
vpand ymm0, ymm0, ymmword [0x140102ac0]
jmp 0x14006e3a3
mov eax, dword [0x141dcaf18]
xor edx, edx
div dword [0x141dcaf1c]
nop dword [rax]
mov eax, dword [0x141dcaf20]
and eax, dword [0x141dcaf24]
or eax, 0xa4914a7f
add eax, 0xbcc0a990
cmp eax, 0x508057de
jb 0x14006e230
mov eax, 0xd5c1bd5b
nop word cs:[rax + rax]
mov edx, dword [0x141dcaf28]
and edx, dword [0x141dcaf2c]
imul edx, edx, 0xd50832d8
imul rdx, rax
shr rdx, 0x3f
xor edx, 0x1537c5a9
cmp edx, 0xa3c0604a
ja 0x14006e260
movzx r9d, byte [rdi + 0x228]
mov eax, dword [0x141dcaf30]
xor edx, edx
div dword [0x141dcaf34]
xor eax, 0xc0755cf2
imul rax, rax, 0x2d71c831
shr rax, 0x3d
cmp eax, 0x788463cb
je 0x14006e290
test r9b, r9b
jne 0x14006e36b
test r10b, r10b
jne 0x14006e50a
nop word [rax + rax]
mov eax, dword [0x141dcaf68]
xor eax, dword [0x141dcaf6c]
imul eax, eax, 0x2295ba0e
add eax, 0xd4af55b1
cmp eax, 0x410fd7fa
ja 0x14006e2d0
vmovaps xmm0, xmmword [rdi + 0x140]
vshufps xmm0, xmm0, xmmword [rdi + 0x150], 0x88
mov rcx, qword [rbx + 0x18]
nop word cs:[rax + rax]
mov eax, dword [0x141dcaf70]
and eax, dword [0x141dcaf74]
or eax, 0xed063689
imul eax, eax, 0x8ea9e2a7
or eax, 0x1c75f808
cmp eax, 0x8e6fab88
je 0x14006e310
jmp 0x14006e8c0
movzx eax, byte [rdi + 0x228]
nop
mov ecx, dword [0x141dcaf38]
sub ecx, dword [0x141dcaf3c]
and ecx, 0x2fa076dc
add ecx, 0x54b82e9c
cmp ecx, 0x8d7a43cc
ja 0x14006e340
mov r8b, 1
test al, al
je 0x14006e50a
vmovdqu xmm0, xmmword [rdi + 0x229]
vpsllvd ymm1, ymm0, ymmword [0x140102a60]
vpsrlvd ymm0, ymm0, ymmword [0x140102a80]
vmovdqa ymm2, ymmword [0x140102aa0]
vpermd ymm0, ymm2, ymm0
vpor ymm0, ymm0, ymm1
vpand ymm0, ymm0, ymmword [0x140102ac0]
test r8b, r8b
je 0x14006e3a7
vpaddd ymm0, ymm12, ymm0
vmovdqa ymm1, ymmword [rdi + 0x160]
vmovdqa ymm2, ymmword [0x140102b00]
vpermd ymm2, ymm2, ymm0
vpbroadcastd ymm3, dword [rdi + 0x17c]
vpmuludq ymm2, ymm3, ymm2
vpmovzxdq ymm3, xmm0
vpbroadcastd ymm4, dword [rdi + 0x160]
vpmuludq ymm4, ymm4, ymm3
vpshufd xmm5, xmm0, 0xd7
vpermq ymm5, ymm5, 0x50
vpshufd ymm6, ymm1, 0xe5
vpshufd xmm7, xmmword [rdi + 0x160], 0xe5
vpermq ymm6, ymm6, 0x4e
vpermq ymm7, ymm7, 0x10
vpblendd ymm7, ymm7, ymmword [rdi + 0x180], 3
vpmuludq ymm5, ymm6, ymm5
vpermq ymm6, ymm0, 0x42
vpmuludq ymm6, ymm7, ymm6
vpaddq ymm4, ymm4, ymm6
vmovdqa ymm6, ymmword [0x140102b20]
vpermd ymm6, ymm6, ymm1
vpermq ymm7, ymm0, 0x29
vpmuludq ymm6, ymm6, ymm7
vpaddq ymm2, ymm2, ymm6
vpaddq ymm2, ymm5, ymm2
vpaddq ymm2, ymm2, ymm4
vmovdqa ymm4, ymmword [0x140102b60]
vpermd ymm4, ymm4, ymm1
vpmuludq ymm3, ymm4, ymm3
vpermq ymm4, ymm3, 0x4e
vpaddq ymm3, ymm4, ymm3
vpermq ymm4, ymm3, 1
vpermq ymm0, ymm0, 2
vpmuludq ymm0, ymm1, ymm0
vmovdqa ymm1, ymmword [0x1401029a0]
vpand ymm5, ymm2, ymm1
vmovdqa ymm6, ymmword [0x140102b80]
vpsrlvq ymm2, ymm2, ymm6
vpermq ymm2, ymm2, 0x93
vpaddq ymm2, ymm5, ymm2
vpsrlq ymm5, ymm2, 0x1a
vpermq ymm5, ymm5, 0x93
vpaddq ymm0, ymm3, ymm0
vpaddq ymm0, ymm0, ymm4
vpaddq ymm0, ymm0, ymm5
vpand ymm2, ymm2, ymmword [0x1401029e0]
vpsrlvq ymm3, ymm0, ymmword [0x140102a00]
vpsllq ymm4, ymm3, 2
vpaddq ymm2, ymm3, ymm2
vpaddq ymm2, ymm4, ymm2
vpand ymm1, ymm2, ymm1
vpsrlvq ymm2, ymm2, ymm6
vpermq ymm2, ymm2, 0x93
vpaddq ymm1, ymm1, ymm2
vpsrlq ymm2, ymm1, 0x1a
vpand xmm0, xmm0, xmmword [0x140102a20]
vpermq ymm2, ymm2, 0xff
vpaddq xmm0, xmm2, xmm0
vpbroadcastd ymm0, xmm0
vpshufd ymm1, ymm1, 0x28
vpermq ymm1, ymm1, 0xf8
vpand ymm1, ymm1, ymmword [0x140102ba0]
vpblendd ymm12, ymm1, ymm0, 0x90
mov eax, dword [0x141dcaf58]
sub eax, dword [0x141dcaf5c]
and eax, 0xc027200
cmp eax, 0x12192d9b
vmovdqa ymmword [rbx + 0x20], ymm12
jbe 0x14006e555
jmp 0x14006e6c8
ud2
mov esi, dword [0x141dcaf60]
xor esi, dword [0x141dcaf64]
and esi, 0xf5289146
add esi, 0x383f133f
vmovdqa ymm0, ymmword [rdi + 0x140]
vmovdqa ymmword [rbx + 0x60], ymm0
vpxor xmm0, xmm0, xmm0
vpblendd ymm0, ymm12, ymm0, 0xe0
vmovdqa ymmword [r14], ymm0
sub rsp, 0x20
mov rcx, r15
mov rdx, r14
vzeroupper
call fcn.14006d380
add rsp, 0x20
vmovaps ymm0, ymmword [r15]
vmovaps ymmword [r14], ymm0
sub rsp, 0x20
mov rcx, r15
mov rdx, r14
vzeroupper
call fcn.14006d380
add rsp, 0x20
vmovaps ymm0, ymmword [r15]
vmovaps ymmword [r14], ymm0
sub rsp, 0x20
mov rcx, r15
mov rdx, r14
vzeroupper
call fcn.14006d380
add rsp, 0x20
vmovaps ymm0, ymmword [r15]
vmovaps ymmword [r14], ymm0
sub rsp, 0x20
mov rcx, r15
mov rdx, r14
vzeroupper
call fcn.14006d380
add rsp, 0x20
vmovaps ymm0, ymmword [r15]
vmovaps ymmword [r14], ymm0
sub rsp, 0x20
mov rcx, r15
mov rdx, r14
vzeroupper
call fcn.14006d380
add rsp, 0x20
vmovdqa ymm1, ymmword [r15]
vmovdqa xmm0, xmmword [0x140102bc0]
vmovdqa ymmword [rbx + 0x40], ymm1
vpaddd ymm0, ymm1, ymm0
vmovdqa ymmword [r12], ymm0
sub rsp, 0x20
mov rcx, r13
mov rdx, r12
vzeroupper
call fcn.14006d380
add rsp, 0x20
vmovaps ymm0, ymmword [r13]
vmovaps ymmword [r12], ymm0
sub rsp, 0x20
mov rcx, r13
mov rdx, r12
vzeroupper
call fcn.14006d380
add rsp, 0x20
vmovaps ymm0, ymmword [r13]
vmovaps ymmword [r12], ymm0
sub rsp, 0x20
mov rcx, r13
mov rdx, r12
vzeroupper
call fcn.14006d380
add rsp, 0x20
vmovdqa ymm0, ymmword [r13]
vmovdqa ymmword [r12], ymm0
sub rsp, 0x20
mov rcx, r13
mov rdx, r12
vzeroupper
call fcn.14006d380
vmovdqa ymm12, ymmword [rbx + 0x20]
add rsp, 0x20
cmp esi, 0x85512f5c
ja 0x14006e806
vpxor xmm0, xmm0, xmm0
vpblendd ymm0, ymm12, ymm0, 0xe0
vmovdqa ymmword [r14], ymm0
sub rsp, 0x20
mov rcx, r15
mov rdx, r14
vzeroupper
call fcn.14006d380
add rsp, 0x20
vmovaps ymm0, ymmword [r15]
vmovaps ymmword [r14], ymm0
sub rsp, 0x20
mov rcx, r15
mov rdx, r14
vzeroupper
call fcn.14006d380
add rsp, 0x20
vmovaps ymm0, ymmword [r15]
vmovaps ymmword [r14], ymm0
sub rsp, 0x20
mov rcx, r15
mov rdx, r14
vzeroupper
call fcn.14006d380
add rsp, 0x20
vmovaps ymm0, ymmword [r15]
vmovaps ymmword [r14], ymm0
sub rsp, 0x20
mov rcx, r15
mov rdx, r14
vzeroupper
call fcn.14006d380
add rsp, 0x20
vmovaps ymm0, ymmword [r15]
vmovaps ymmword [r14], ymm0
sub rsp, 0x20
mov rcx, r15
mov rdx, r14
vzeroupper
call fcn.14006d380
add rsp, 0x20
vmovdqa xmm0, xmmword [0x140102bc0]
vpaddd ymm0, ymm0, ymmword [r15]
vmovdqa ymmword [r12], ymm0
sub rsp, 0x20
mov rcx, r13
mov rdx, r12
vzeroupper
call fcn.14006d380
add rsp, 0x20
vmovaps ymm0, ymmword [r13]
vmovaps ymmword [r12], ymm0
sub rsp, 0x20
mov rcx, r13
mov rdx, r12
vzeroupper
call fcn.14006d380
add rsp, 0x20
vmovaps ymm0, ymmword [r13]
vmovaps ymmword [r12], ymm0
sub rsp, 0x20
mov rcx, r13
mov rdx, r12
vzeroupper
call fcn.14006d380
add rsp, 0x20
vmovdqa ymm0, ymmword [r13]
vmovdqa ymmword [r12], ymm0
sub rsp, 0x20
mov rcx, r13
mov rdx, r12
vzeroupper
call fcn.14006d380
vmovdqa ymm12, ymmword [rbx + 0x20]
add rsp, 0x20
jmp 0x14006e555
vmovdqa ymm0, ymmword [r13]
vpaddd ymm0, ymm0, ymmword [0x140102be0]
vpsrld ymm1, ymm0, 0x1f
vextracti128 xmm1, ymm1, 1
vpcmpeqd xmm2, xmm2, xmm2
vpaddd xmm1, xmm1, xmm2
vpbroadcastd ymm1, xmm1
vpandn ymm2, ymm1, ymmword [rbx + 0x40]
vpand ymm0, ymm1, ymm0
vpor ymm0, ymm0, ymm2
vpsrlvd ymm1, ymm0, ymmword [0x140102c00]
vpsllvd ymm0, ymm0, ymmword [0x140102c20]
vmovdqa ymm2, ymmword [0x140102c40]
vpermd ymm1, ymm2, ymm1
vmovdqa ymm2, ymmword [0x140102c60]
vpermd ymm0, ymm2, ymm0
vpor ymm0, ymm0, ymm1
vpaddq ymm0, ymm0, ymmword [rbx + 0x60]
vpxor xmm2, xmm2, xmm2
vpblendd ymm1, ymm0, ymm2, 0xaa
vpsrlq ymm0, ymm0, 0x20
vpermq ymm0, ymm0, 0x90
vpblendd ymm0, ymm0, ymm2, 3
vpaddq ymm0, ymm0, ymm1
vpblendd ymm1, ymm0, ymm2, 0xaa
vpsrlq ymm0, ymm0, 0x20
vpermq ymm0, ymm0, 0x90
vpaddq ymm0, ymm0, ymm1
vpsrlq ymm1, ymm0, 0x20
vpermq ymm1, ymm1, 0x90
vpaddq ymm0, ymm1, ymm0
vextracti128 xmm1, ymm0, 1
vshufps xmm0, xmm0, xmm1, 0x88
mov rcx, qword [rbx + 0x18]
vmovups xmmword [rcx], xmm0
vmovaps xmm6, xmmword [rbp + 0x10]
vmovaps xmm7, xmmword [rbp + 0x20]
vmovaps xmm8, xmmword [rbp + 0x30]
vmovaps xmm9, xmmword [rbp + 0x40]
vmovaps xmm10, xmmword [rbp + 0x50]
vmovaps xmm11, xmmword [rbp + 0x60]
vmovaps xmm12, xmmword [rbp + 0x70]
vmovaps xmm13, xmmword [rbp + 0x80]
vmovaps xmm14, xmmword [rbp + 0x90]
vmovaps xmm15, xmmword [rbp + 0xa0]
lea rsp, [rbp + 0xb8]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
vzeroupper
ret