Function at 0x1400ad060
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x318]
sub rsp, 0x3f0
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
mov rax, qword [0x14018e080]
xor rax, rsp
mov qword [rbp + 0x2c0], rax
mov rsi, rcx
mov qword [rsp + 0x40], rcx
xor edi, edi
mov dword [rbp - 0x40], edi
xor edx, edx
mov r8d, 0xe8
lea rcx, [rbp + 0x150]
call fcn.140149da4
lea rbx, [0x140000000]
lea rax, [rbx + 0x170058]
mov qword [rbp + 0x150], rax
lea rcx, [rbp + 0x1d8]
call qword [0x1401517e8]
nop
mov dword [rbp - 0x40], 2
xor r9d, r9d
xor r8d, r8d
lea rdx, [rbp + 0x158]
lea rcx, [rbp + 0x150]
call qword [0x140151620]
nop
mov rax, qword [rbp + 0x150]
movsxd rcx, dword [rax + 4]
lea r15, [0x140173808]
mov qword [rbp + rcx + 0x150], r15
mov rax, qword [rbp + 0x150]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x88]
mov dword [rbp + rcx + 0x14c], edx
lea rcx, [rbp + 0x158]
call qword [0x1401517b0]
lea rax, [0x1401700c8]
mov qword [rbp + 0x158], rax
mov qword [rbp + 0x1c0], rdi
mov dword [rbp + 0x1c8], 4
mov eax, dword [0x140172958]
mov dword [rsp + 0x40], eax
lea rdx, [rbp + 0x10]
lea rcx, [rbx + 0x173810]
movups xmm0, xmmword [rcx]
movups xmm1, xmmword [rcx + 0x10]
movups xmmword [rdx], xmm0
movups xmmword [rdx + 0x10], xmm1
movups xmm0, xmmword [rcx + 0x20]
movups xmm1, xmmword [rcx + 0x30]
movups xmmword [rdx + 0x20], xmm0
movups xmmword [rdx + 0x30], xmm1
movups xmm0, xmmword [rcx + 0x40]
movups xmm1, xmmword [rcx + 0x50]
movups xmmword [rdx + 0x40], xmm0
movups xmmword [rdx + 0x50], xmm1
movups xmm0, xmmword [rcx + 0x60]
movups xmmword [rdx + 0x60], xmm0
lea rdx, [rdx + 0x80]
movups xmm0, xmmword [rcx + 0x70]
movups xmmword [rdx - 0x10], xmm0
lea rcx, [rcx + 0x80]
movups xmm1, xmmword [rcx]
movups xmm0, xmmword [rcx + 0x10]
movups xmmword [rdx], xmm1
movups xmmword [rdx + 0x10], xmm0
movups xmm1, xmmword [rcx + 0x20]
movups xmm0, xmmword [rcx + 0x30]
movups xmmword [rdx + 0x20], xmm1
movups xmmword [rdx + 0x30], xmm0
movups xmm1, xmmword [rcx + 0x40]
movups xmm0, xmmword [rcx + 0x50]
movups xmmword [rdx + 0x40], xmm1
movups xmmword [rdx + 0x50], xmm0
movups xmm1, xmmword [rcx + 0x60]
movups xmmword [rdx + 0x60], xmm1
cmp word [0x14017295a], di
je 0x1400ad213
mov eax, 0x72
mov word [rsp + 0x40], ax
xor word [rsp + 0x42], 0x31
mov rax, qword [rcx + 0x70]
mov qword [rdx + 0x70], rax
mov eax, dword [rcx + 0x78]
mov dword [rdx + 0x78], eax
mov r8d, edi
mov r14d, dword [0x14018e0d8]
cmp r14d, 2
jl 0x1400ad34f
movdqa xmm5, xmmword [0x1401781d0]
movdqa xmm4, xmmword [0x140178350]
movdqa xmm6, xmmword [0x140178260]
movdqa xmm7, xmmword [0x140178300]
lea rcx, [rbp + 0x10]
nop dword [rax]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
movq xmm2, xmm7
paddw xmm3, xmm2
movq xmm0, qword [rcx]
xorps xmm3, xmm0
movq qword [rcx], xmm3
lea eax, [r8 + 4]
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
movq xmm2, xmm7
paddw xmm3, xmm2
movq xmm0, qword [rcx + 8]
xorps xmm3, xmm0
movq qword [rcx + 8], xmm3
add r8d, 8
lea rcx, [rcx + 0x10]
cmp r8d, 0x78
jl 0x1400ad260
cmp r8d, 0x7e
jge 0x1400ad393
movsxd rax, r8d
lea r9, [rbp + 0x10]
lea r9, [r9 + rax*2]
nop word [rax + rax]
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul ecx, eax, 0x37
movzx eax, r8w
sub ax, cx
add ax, 0x30
xor word [r9], ax
inc r8d
lea r9, [r9 + 2]
cmp r8d, 0x7e
jl 0x1400ad360
lea rdx, [rsp + 0x40]
lea rcx, [rbp + 0x10]
call qword [0x140151f48]
mov rbx, rax
test rax, rax
jne 0x1400ad56c
mov rax, qword [0x1401737f0]
mov qword [rsp + 0x40], rax
cmp byte [0x1401737f7], bl
je 0x1400ad4ff
cmp r14d, 2
jl 0x1400ad4c6
movdqa xmm4, xmmword [0x140178350]
movdqa xmm2, xmmword [0x1401781d0]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x140178260]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140178340]
packuswb xmm2, xmm2
paddb xmm2, xmmword [0x140178360]
movd xmm0, dword [rsp + 0x40]
xorps xmm2, xmm0
movd dword [rsp + 0x40], xmm2
movdqa xmm3, xmmword [0x1401781f0]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x140178260]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140178340]
packuswb xmm2, xmm2
paddb xmm2, xmmword [0x140178360]
movd xmm0, dword [rsp + 0x44]
xorps xmm2, xmm0
movd dword [rsp + 0x44], xmm2
jmp 0x1400ad4ff
lea r9, [rsp + 0x40]
mov r8d, edi
nop
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x37
movzx eax, r8b
sub al, cl
add al, 0x30
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 8
jl 0x1400ad4d0
xorps xmm0, xmm0
movups xmmword [rsi], xmm0
mov qword [rsi + 0x10], rdi
mov qword [rsi + 0x18], rdi
lea rax, [rsp + 0x40]
mov rdi, 0xffffffffffffffff
nop dword [rax]
inc rdi
cmp byte [rax + rdi], 0
jne 0x1400ad520
mov r8, rdi
lea rdx, [rsp + 0x40]
mov rcx, rsi
call fcn.140059090
nop
mov rcx, qword [rbp + 0x150]
movsxd rdx, dword [rcx + 4]
mov qword [rbp + rdx + 0x150], r15
mov rcx, qword [rbp + 0x150]
movsxd rdx, dword [rcx + 4]
lea r8d, [rdx - 0x88]
mov dword [rbp + rdx + 0x14c], r8d
jmp 0x1400af4b8
mov r8, rbx
mov edx, 0x80
lea rcx, [rbp + 0x240]
call qword [0x140151f30]
test rax, rax
je 0x1400ad5bd
nop word [rax + rax]
lea rdx, [rbp + 0x240]
lea rcx, [rbp + 0x150]
call fcn.14008a2b0
mov r8, rbx
mov edx, 0x80
lea rcx, [rbp + 0x240]
call qword [0x140151f30]
test rax, rax
jne 0x1400ad590
mov rcx, rbx
call qword [0x140151ee0]
lea rdx, [rbp + 0x130]
lea rcx, [rbp + 0x158]
call fcn.14005f0d0
nop
mov r15d, edi
mov rax, qword [0x1401737d0]
mov qword [rsp + 0x40], rax
cmp byte [0x1401737d7], dil
je 0x1400ad73f
cmp r14d, 2
jl 0x1400ad6fc
movdqa xmm4, xmmword [0x140178350]
movdqa xmm2, xmmword [0x1401781d0]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x140178260]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140178340]
packuswb xmm2, xmm2
mov eax, dword [0x140178360]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x40]
xorps xmm2, xmm1
movd dword [rsp + 0x40], xmm2
movdqa xmm3, xmmword [0x1401781f0]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x140178260]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140178340]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x44]
xorps xmm2, xmm1
movd dword [rsp + 0x44], xmm2
jmp 0x1400ad73f
lea r9, [rsp + 0x40]
mov r8d, edi
nop dword [rax]
nop dword [rax + rax]
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x37
movzx eax, r8b
sub al, cl
add al, 0x30
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 8
jl 0x1400ad710
lea rcx, [rsp + 0x40]
mov rdi, 0xffffffffffffffff
mov rax, rdi
nop
inc rax
cmp byte [rcx + rax], r15b
jne 0x1400ad750
lea rcx, [rbp + 0x130]
mov r12, qword [rbp + 0x130]
mov r13, qword [rbp + 0x148]
cmp r13, 0xf
cmova rcx, r12
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x40]
xor r8d, r8d
mov rdx, qword [rbp + 0x140]
call fcn.14005faf0
mov r10, rax
cmp rax, rdi
je 0x1400ad955
mov rbx, qword [0x1401737d0]
nop dword [rax]
nop word [rax + rax]
inc r15d
mov qword [rsp + 0x40], rbx
cmp byte [0x1401737d7], 0
je 0x1400ad90f
cmp r14d, 2
jl 0x1400ad8cb
movdqa xmm4, xmmword [0x140178350]
movdqa xmm2, xmmword [0x1401781d0]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x140178260]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140178340]
packuswb xmm2, xmm2
mov eax, dword [0x140178360]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x40]
xorps xmm2, xmm1
movd dword [rsp + 0x40], xmm2
movdqa xmm3, xmmword [0x1401781f0]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x140178260]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140178340]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x44]
xorps xmm2, xmm1
movd dword [rsp + 0x44], xmm2
jmp 0x1400ad90f
lea r9, [rsp + 0x40]
xor r8d, r8d
nop dword [rax]
nop word [rax + rax]
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x37
movzx eax, r8b
sub al, cl
add al, 0x30
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 8
jl 0x1400ad8e0
lea rcx, [rsp + 0x40]
mov rax, rdi
inc rax
cmp byte [rcx + rax], 0
jne 0x1400ad917
lea rcx, [rbp + 0x130]
cmp r13, 0xf
cmova rcx, r12
lea r8, [r10 + 1]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x40]
mov rdx, qword [rbp + 0x140]
call fcn.14005faf0
mov r10, rax
cmp rax, rdi
jne 0x1400ad7b0
movups xmm0, xmmword [0x140173a08]
movups xmmword [rbp - 0x18], xmm0
movups xmm1, xmmword [0x140173a18]
movups xmmword [rbp - 8], xmm1
movzx eax, word [0x140173a28]
mov word [rbp + 8], ax
movzx eax, byte [0x140173a2a]
mov byte [rbp + 0xa], al
xor r13d, r13d
mov r8d, r13d
cmp r14d, 2
jl 0x1400adac5
movdqa xmm5, xmmword [0x1401781d0]
movdqa xmm4, xmmword [0x140178350]
movdqa xmm6, xmmword [0x140178260]
movdqa xmm0, xmmword [0x140178360]
movdqa xmmword [rbp - 0x60], xmm0
lea rcx, [rbp - 0x14]
mov edx, dword [rbp - 0x60]
nop dword [rax]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140178340]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [r8 + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140178340]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x20
jl 0x1400ad9c0
cmp r8d, 0x23
jge 0x1400adaff
movsxd rax, r8d
lea r9, [rbp - 0x18]
add r9, rax
nop
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x37
movzx eax, r8b
sub al, cl
add al, 0x30
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x23
jl 0x1400adad0
xorps xmm0, xmm0
movups xmmword [rbp + 0x110], xmm0
mov qword [rbp + 0x120], r13
mov qword [rbp + 0x128], r13
lea rax, [rbp - 0x18]
mov r8, rdi
nop
inc r8
cmp byte [rax + r8], r13b
jne 0x1400adb20
lea rdx, [rbp - 0x18]
lea rcx, [rbp + 0x110]
call fcn.140059090
nop
cmp r15d, 2
jl 0x1400ae0a3
lea rcx, [rbp - 0x38]
call fcn.1400aa800
mov r15, rax
movups xmm0, xmmword [0x1401739e0]
movups xmmword [rsp + 0x40], xmm0
movsd xmm0, qword [0x1401739f0]
movsd qword [rsp + 0x50], xmm0
mov ecx, dword [0x1401739f8]
mov dword [rsp + 0x58], ecx
movzx ecx, word [0x1401739fc]
mov word [rsp + 0x5c], cx
movzx eax, byte [0x1401739fe]
mov byte [rsp + 0x5e], al
mov r8d, r13d
cmp r14d, 2
jl 0x1400adcd5
movdqa xmm5, xmmword [0x1401781d0]
movdqa xmm4, xmmword [0x140178350]
movdqa xmm6, xmmword [0x140178260]
movdqa xmm0, xmmword [0x140178360]
movdqa xmmword [rbp - 0x60], xmm0
lea rcx, [rsp + 0x44]
mov edx, dword [rbp - 0x60]
nop word [rax + rax]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140178340]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [r8 + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140178340]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x18
jl 0x1400adbd0
cmp r8d, 0x1f
jge 0x1400add0f
movsxd rax, r8d
lea r9, [rsp + 0x40]
add r9, rax
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x37
movzx eax, r8b
sub al, cl
add al, 0x30
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x1f
jl 0x1400adce0
lea rax, [rsp + 0x40]
mov rcx, rdi
inc rcx
cmp byte [rax + rcx], 0
jne 0x1400add17
movabs rbx, 0x7fffffffffffffff
mov rax, rbx
mov rdx, qword [rbp + 0x120]
sub rax, rdx
cmp rax, rcx
jb 0x1400af521
lea r9, [rbp + 0x110]
cmp qword [rbp + 0x128], 0xf
cmova r9, qword [rbp + 0x110]
mov qword [rsp + 0x30], rcx
lea rax, [rsp + 0x40]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdx
lea rcx, [rbp - 0x80]
call fcn.140060dd0
nop
mov r9, r15
lea r8, [rbp - 0x80]
lea rcx, [rsp + 0x60]
call fcn.140060be0
lea rcx, [rsp + 0x60]
cmp qword [rsp + 0x78], 0xf
cmova rcx, qword [rsp + 0x60]
call qword [0x140151e70]
lea rcx, [rsp + 0x60]
call fcn.14003d650
nop
lea rcx, [rbp - 0x80]
call fcn.14003d650
nop
lea rcx, [rbp - 0x38]
call fcn.14003d650
lea rcx, [rbp - 0x38]
call fcn.1400aa800
mov r15, rax
movups xmm0, xmmword [0x140173940]
movups xmmword [rsp + 0x40], xmm0
movsd xmm0, qword [0x140173950]
movsd qword [rsp + 0x50], xmm0
mov ecx, dword [0x140173958]
mov dword [rsp + 0x58], ecx
movzx ecx, word [0x14017395c]
mov word [rsp + 0x5c], cx
movzx eax, byte [0x14017395e]
mov byte [rsp + 0x5e], al
mov r8d, r13d
cmp r14d, 2
jl 0x1400adf45
movdqa xmm5, xmmword [0x1401781d0]
movdqa xmm4, xmmword [0x140178350]
movdqa xmm6, xmmword [0x140178260]
movdqa xmm0, xmmword [0x140178360]
movdqa xmmword [rbp - 0x60], xmm0
lea rcx, [rsp + 0x44]
mov edx, dword [rbp - 0x60]
nop dword [rax]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140178340]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [r8 + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140178340]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x18
jl 0x1400ade40
cmp r8d, 0x1f
jge 0x1400adf7f
movsxd rax, r8d
lea r9, [rsp + 0x40]
add r9, rax
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x37
movzx eax, r8b
sub al, cl
add al, 0x30
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x1f
jl 0x1400adf50
lea rcx, [rsp + 0x40]
mov rax, rdi
inc rax
cmp byte [rcx + rax], 0
jne 0x1400adf87
mov rcx, qword [rbp + 0x120]
sub rbx, rcx
cmp rbx, rax
jb 0x1400af527
lea r9, [rbp + 0x110]
cmp qword [rbp + 0x128], 0xf
cmova r9, qword [rbp + 0x110]
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x40]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea rcx, [rbp - 0x80]
call fcn.140060dd0
nop
mov r9, r15
lea r8, [rbp - 0x80]
lea rcx, [rsp + 0x60]
call fcn.140060be0
lea rcx, [rsp + 0x60]
cmp qword [rsp + 0x78], 0xf
cmova rcx, qword [rsp + 0x60]
call qword [0x140151e70]
lea rcx, [rsp + 0x60]
call fcn.14003d650
nop
lea rcx, [rbp - 0x80]
call fcn.14003d650
nop
lea rcx, [rbp - 0x38]
call fcn.14003d650
movsd xmm0, qword [0x140173910]
movsd qword [rsp + 0x40], xmm0
movzx ecx, word [0x140173918]
mov word [rsp + 0x48], cx
movzx eax, byte [0x14017391a]
mov byte [rsp + 0x40], 0x32
xor byte [rsp + 0x41], 0x31
xor byte [rsp + 0x42], 0x32
xor byte [rsp + 0x43], 0x33
xor byte [rsp + 0x44], 0x34
xor byte [rsp + 0x45], 0x35
xor byte [rsp + 0x46], 0x36
xor byte [rsp + 0x47], 0x37
xor cl, 0x38
mov byte [rsp + 0x48], cl
xor byte [rsp + 0x49], 0x39
xor al, 0x3a
mov byte [rsp + 0x4a], al
xorps xmm0, xmm0
movups xmmword [rsi], xmm0
mov qword [rsi + 0x10], r13
mov qword [rsi + 0x18], r13
lea rax, [rsp + 0x40]
nop dword [rax]
inc rdi
cmp byte [rax + rdi], 0
jne 0x1400ae090
lea rdx, [rsp + 0x40]
jmp 0x1400af460
lea rcx, [rsp + 0x40]
cmp r15d, 1
jne 0x1400aeba0
mov eax, dword [0x140173974]
mov dword [rsp + 0x40], eax
movzx eax, word [0x140173978]
mov word [rsp + 0x44], ax
mov byte [rsp + 0x40], 0x49
xor byte [rsp + 0x41], 0x31
xor byte [rsp + 0x42], 0x32
xor byte [rsp + 0x43], 0x33
xor al, 0x34
mov byte [rsp + 0x44], al
xor byte [rsp + 0x45], 0x35
mov rax, rdi
nop word [rax + rax]
inc rax
cmp byte [rcx + rax], 0
jne 0x1400ae0f0
lea rcx, [rbp + 0x130]
cmp qword [rbp + 0x148], 0xf
cmova rcx, qword [rbp + 0x130]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x40]
xor r8d, r8d
mov rdx, qword [rbp + 0x140]
call fcn.14005faf0
lea rcx, [rbp - 0x38]
cmp rax, 0xffffffffffffffff
je 0x1400ae7b5
call fcn.1400aa800
mov r15, rax
movups xmm0, xmmword [0x140173920]
movups xmmword [rsp + 0x40], xmm0
movsd xmm0, qword [0x140173930]
movsd qword [rsp + 0x50], xmm0
movzx ecx, word [0x140173938]
mov word [rsp + 0x58], cx
movzx ecx, byte [0x14017393a]
mov byte [rsp + 0x5a], cl
mov r8d, r13d
cmp r14d, 2
jl 0x1400ae2b5
movdqa xmm5, xmmword [0x1401781d0]
movdqa xmm4, xmmword [0x140178350]
movdqa xmm6, xmmword [0x140178260]
movdqa xmm0, xmmword [0x140178360]
movdqa xmmword [rbp - 0x60], xmm0
lea rcx, [rsp + 0x44]
mov edx, dword [rbp - 0x60]
nop word [rax + rax]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140178340]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [r8 + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140178340]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x18
jl 0x1400ae1b0
cmp r8d, 0x1b
jge 0x1400ae2ef
movsxd rax, r8d
lea r9, [rsp + 0x40]
add r9, rax
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x37
movzx eax, r8b
sub al, cl
add al, 0x30
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x1b
jl 0x1400ae2c0
lea rax, [rsp + 0x40]
mov rcx, rdi
inc rcx
cmp byte [rax + rcx], 0
jne 0x1400ae2f7
movabs rbx, 0x7fffffffffffffff
mov rax, rbx
mov rdx, qword [rbp + 0x120]
sub rax, rdx
cmp rax, rcx
jb 0x1400af52d
lea r9, [rbp + 0x110]
cmp qword [rbp + 0x128], 0xf
cmova r9, qword [rbp + 0x110]
mov qword [rsp + 0x30], rcx
lea rax, [rsp + 0x40]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdx
lea rcx, [rbp - 0x80]
call fcn.140060dd0
nop
mov r9, r15
lea r8, [rbp - 0x80]
lea rcx, [rsp + 0x60]
call fcn.140060be0
lea rcx, [rsp + 0x60]
cmp qword [rsp + 0x78], 0xf
cmova rcx, qword [rsp + 0x60]
call qword [0x140151e70]
lea rcx, [rsp + 0x60]
call fcn.14003d650
nop
lea rcx, [rbp - 0x80]
call fcn.14003d650
nop
lea rcx, [rbp - 0x38]
call fcn.14003d650
lea rcx, [rbp - 0x38]
call fcn.1400aa800
mov r15, rax
movups xmm0, xmmword [0x140173998]
movups xmmword [rsp + 0x40], xmm0
movsd xmm0, qword [0x1401739a8]
movsd qword [rsp + 0x50], xmm0
cmp byte [0x1401739af], 0
je 0x1400ae54f
cmp r14d, 2
jl 0x1400ae50f
movdqa xmm5, xmmword [0x1401781d0]
mov edx, r13d
movdqa xmm4, xmmword [0x140178350]
movdqa xmm6, xmmword [0x140178260]
movdqa xmm0, xmmword [0x140178360]
movdqa xmmword [rbp - 0x60], xmm0
lea rcx, [rsp + 0x44]
mov r8d, dword [rbp - 0x60]
nop dword [rax]
movd xmm2, edx
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140178340]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [rdx + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140178340]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add edx, 8
lea rcx, [rcx + 8]
cmp edx, 0x18
jl 0x1400ae410
jmp 0x1400ae54f
lea r9, [rsp + 0x40]
mov r8d, r13d
nop word [rax + rax]
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x37
movzx eax, r8b
sub al, cl
add al, 0x30
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x18
jl 0x1400ae520
lea rcx, [rsp + 0x40]
mov rax, rdi
inc rax
cmp byte [rcx + rax], 0
jne 0x1400ae557
mov rcx, qword [rbp + 0x120]
sub rbx, rcx
cmp rbx, rax
jb 0x1400af533
lea r9, [rbp + 0x110]
cmp qword [rbp + 0x128], 0xf
cmova r9, qword [rbp + 0x110]
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x40]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea rcx, [rbp - 0x80]
call fcn.140060dd0
nop
mov r9, r15
lea r8, [rbp - 0x80]
lea rcx, [rsp + 0x60]
call fcn.140060be0
lea rcx, [rsp + 0x60]
cmp qword [rsp + 0x78], 0xf
cmova rcx, qword [rsp + 0x60]
call qword [0x140151e70]
lea rcx, [rsp + 0x60]
call fcn.14003d650
nop
lea rcx, [rbp - 0x80]
call fcn.14003d650
nop
lea rcx, [rbp - 0x38]
call fcn.14003d650
movups xmm0, xmmword [0x140173ae8]
movups xmmword [rsp + 0x40], xmm0
psrldq xmm0, 0xf
movd eax, xmm0
test al, al
je 0x1400ae78f
cmp r14d, 2
jl 0x1400ae74f
movdqa xmm5, xmmword [0x1401781d0]
mov edx, r13d
movdqa xmm4, xmmword [0x140178350]
movdqa xmm6, xmmword [0x140178260]
movdqa xmm0, xmmword [0x140178360]
movdqa xmmword [rbp - 0x60], xmm0
lea rcx, [rsp + 0x44]
mov r8d, dword [rbp - 0x60]
nop word [rax + rax]
movd xmm2, edx
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140178340]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [rdx + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140178340]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add edx, 8
lea rcx, [rcx + 8]
cmp edx, 0x10
jl 0x1400ae650
jmp 0x1400ae78f
lea r9, [rsp + 0x40]
mov r8d, r13d
nop word [rax + rax]
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x37
movzx eax, r8b
sub al, cl
add al, 0x30
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x10
jl 0x1400ae760
xorps xmm0, xmm0
movups xmmword [rsi], xmm0
mov qword [rsi + 0x10], r13
mov qword [rsi + 0x18], r13
lea rax, [rsp + 0x40]
inc rdi
cmp byte [rax + rdi], 0
jne 0x1400ae7a2
lea rdx, [rsp + 0x40]
jmp 0x1400af460
call fcn.1400aa800
mov r15, rax
movups xmm0, xmmword [0x1401739e0]
movups xmmword [rsp + 0x40], xmm0
movsd xmm0, qword [0x1401739f0]
movsd qword [rsp + 0x50], xmm0
mov ecx, dword [0x1401739f8]
mov dword [rsp + 0x58], ecx
movzx ecx, word [0x1401739fc]
mov word [rsp + 0x5c], cx
movzx eax, byte [0x1401739fe]
mov byte [rsp + 0x5e], al
mov r8d, r13d
cmp r14d, 2
jl 0x1400ae937
movdqa xmm5, xmmword [0x1401781d0]
movdqa xmm4, xmmword [0x140178350]
movdqa xmm6, xmmword [0x140178260]
movdqa xmm0, xmmword [0x140178360]
movdqa xmmword [rbp - 0x60], xmm0
lea rcx, [rsp + 0x44]
mov edx, dword [rbp - 0x60]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140178340]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [r8 + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140178340]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x18
jl 0x1400ae832
cmp r8d, 0x1f
jge 0x1400ae97f
movsxd rax, r8d
lea r9, [rsp + 0x40]
add r9, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x37
movzx eax, r8b
sub al, cl
add al, 0x30
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x1f
jl 0x1400ae950
lea rcx, [rsp + 0x40]
mov rax, rdi
inc rax
cmp byte [rcx + rax], 0
jne 0x1400ae987
movabs rbx, 0x7fffffffffffffff
mov rcx, qword [rbp + 0x120]
sub rbx, rcx
cmp rbx, rax
jb 0x1400af539
lea r9, [rbp + 0x110]
cmp qword [rbp + 0x128], 0xf
cmova r9, qword [rbp + 0x110]
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x40]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea rcx, [rbp - 0x80]
call fcn.140060dd0
nop
mov r9, r15
lea r8, [rbp - 0x80]
lea rcx, [rsp + 0x60]
call fcn.140060be0
lea rcx, [rsp + 0x60]
cmp qword [rsp + 0x78], 0xf
cmova rcx, qword [rsp + 0x60]
call qword [0x140151e70]
lea rcx, [rsp + 0x60]
call fcn.14003d650
nop
lea rcx, [rbp - 0x80]
call fcn.14003d650
nop
lea rcx, [rbp - 0x38]
call fcn.14003d650
mov rax, qword [0x1401737d0]
mov qword [rsp + 0x40], rax
cmp byte [0x1401737d7], 0
je 0x1400aeb7f
cmp r14d, 2
jl 0x1400aeb47
movdqa xmm4, xmmword [0x140178350]
movdqa xmm2, xmmword [0x1401781d0]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x140178260]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140178340]
packuswb xmm2, xmm2
mov eax, dword [0x140178360]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x40]
xorps xmm2, xmm1
movd dword [rsp + 0x40], xmm2
movdqa xmm3, xmmword [0x1401781f0]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x140178260]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140178340]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x44]
xorps xmm2, xmm1
movd dword [rsp + 0x44], xmm2
jmp 0x1400aeb7f
lea r9, [rsp + 0x40]
mov r8d, r13d
nop
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x37
movzx eax, r8b
sub al, cl
add al, 0x30
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 8
jl 0x1400aeb50
xorps xmm0, xmm0
movups xmmword [rsi], xmm0
mov qword [rsi + 0x10], r13
mov qword [rsi + 0x18], r13
lea rax, [rsp + 0x40]
inc rdi
cmp byte [rax + rdi], 0
jne 0x1400aeb92
jmp 0x1400af45b
mov eax, dword [0x140173974]
mov dword [rsp + 0x40], eax
movzx eax, word [0x140173978]
mov word [rsp + 0x44], ax
mov byte [rsp + 0x40], 0x49
xor byte [rsp + 0x41], 0x31
xor byte [rsp + 0x42], 0x32
xor byte [rsp + 0x43], 0x33
xor al, 0x34
mov byte [rsp + 0x44], al
xor byte [rsp + 0x45], 0x35
mov rax, rdi
nop dword [rax + rax]
inc rax
cmp byte [rcx + rax], 0
jne 0x1400aebe0
lea rcx, [rbp + 0x130]
mov rbx, qword [rbp + 0x130]
mov r15, qword [rbp + 0x148]
cmp r15, 0xf
cmova rcx, rbx
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x40]
xor r8d, r8d
mov r12, qword [rbp + 0x140]
mov rdx, r12
call fcn.14005faf0
cmp rax, 0xffffffffffffffff
je 0x1400aeee3
lea rcx, [rbp - 0x38]
call fcn.1400aa800
mov r15, rax
movups xmm0, xmmword [0x140173960]
movups xmmword [rsp + 0x40], xmm0
mov ecx, dword [0x140173970]
mov dword [rsp + 0x50], ecx
cmp byte [0x140173973], 0
je 0x1400aeddf
mov r8d, r13d
cmp r14d, 2
jl 0x1400aeda5
movdqa xmm5, xmmword [0x1401781d0]
movdqa xmm4, xmmword [0x140178350]
movdqa xmm6, xmmword [0x140178260]
movdqa xmm0, xmmword [0x140178360]
movdqa xmmword [rbp - 0x60], xmm0
lea rcx, [rsp + 0x44]
mov edx, dword [rbp - 0x60]
nop word [rax + rax]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140178340]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [r8 + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140178340]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x10
jl 0x1400aeca0
cmp r8d, 0x14
jge 0x1400aeddf
movsxd rax, r8d
lea r9, [rsp + 0x40]
add r9, rax
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x37
movzx eax, r8b
sub al, cl
add al, 0x30
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x14
jl 0x1400aedb0
lea rcx, [rsp + 0x40]
mov rax, rdi
inc rax
cmp byte [rcx + rax], 0
jne 0x1400aede7
movabs rbx, 0x7fffffffffffffff
mov rcx, qword [rbp + 0x120]
sub rbx, rcx
cmp rbx, rax
jb 0x1400af53f
lea r9, [rbp + 0x110]
cmp qword [rbp + 0x128], 0xf
cmova r9, qword [rbp + 0x110]
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x40]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea rcx, [rbp - 0x80]
call fcn.140060dd0
nop
mov r9, r15
lea r8, [rbp - 0x80]
lea rcx, [rsp + 0x60]
call fcn.140060be0
lea rcx, [rsp + 0x60]
cmp qword [rsp + 0x78], 0xf
cmova rcx, qword [rsp + 0x60]
call qword [0x140151e70]
lea rcx, [rsp + 0x60]
call fcn.14003d650
nop
lea rcx, [rbp - 0x80]
call fcn.14003d650
nop
lea rcx, [rbp - 0x38]
call fcn.14003d650
mov eax, dword [0x140173974]
mov dword [rsp + 0x40], eax
movzx eax, word [0x140173978]
mov word [rsp + 0x44], ax
mov byte [rsp + 0x40], 0x49
xor byte [rsp + 0x41], 0x31
xor byte [rsp + 0x42], 0x32
xor byte [rsp + 0x43], 0x33
xor al, 0x34
mov byte [rsp + 0x44], al
xor byte [rsp + 0x45], 0x35
xorps xmm0, xmm0
movups xmmword [rsi], xmm0
mov qword [rsi + 0x10], r13
mov qword [rsi + 0x18], r13
lea rax, [rsp + 0x40]
inc rdi
cmp byte [rax + rdi], 0
jne 0x1400aeed0
lea rdx, [rsp + 0x40]
jmp 0x1400af460
mov eax, dword [0x1401737f8]
mov dword [rsp + 0x40], eax
movzx ecx, word [0x1401737fc]
mov word [rsp + 0x44], cx
movzx eax, byte [0x1401737fe]
mov byte [rsp + 0x40], 0x4b
xor byte [rsp + 0x41], 0x31
xor byte [rsp + 0x42], 0x32
xor byte [rsp + 0x43], 0x33
xor cl, 0x34
mov byte [rsp + 0x44], cl
xor byte [rsp + 0x45], 0x35
xor al, 0x36
mov byte [rsp + 0x46], al
lea rcx, [rsp + 0x40]
mov rax, rdi
nop
inc rax
cmp byte [rcx + rax], 0
jne 0x1400aef30
lea rcx, [rbp + 0x130]
cmp r15, 0xf
cmova rcx, rbx
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x40]
xor r8d, r8d
mov rdx, r12
call fcn.14005faf0
cmp rax, 0xffffffffffffffff
je 0x1400af2e3
mov eax, dword [0x140173ac4]
mov dword [rsp + 0x40], eax
movzx ecx, word [0x140173ac8]
mov word [rsp + 0x44], cx
movzx eax, byte [0x140173aca]
mov byte [rsp + 0x40], 0x2f
xor byte [rsp + 0x41], 0x31
xor byte [rsp + 0x42], 0x32
xor byte [rsp + 0x43], 0x33
xor cl, 0x34
mov byte [rsp + 0x44], cl
xor byte [rsp + 0x45], 0x35
xor al, 0x36
mov byte [rsp + 0x46], al
lea rcx, [rbp - 0x18]
call fcn.1400aa800
mov r15, rax
movups xmm0, xmmword [0x1401739e0]
movups xmmword [rbp - 0x80], xmm0
movsd xmm0, qword [0x1401739f0]
movsd qword [rbp - 0x70], xmm0
mov ecx, dword [0x1401739f8]
mov dword [rbp - 0x68], ecx
movzx ecx, word [0x1401739fc]
mov word [rbp - 0x64], cx
movzx eax, byte [0x1401739fe]
mov byte [rbp - 0x62], al
mov r8d, r13d
cmp r14d, 2
jl 0x1400af135
movdqa xmm5, xmmword [0x1401781d0]
movdqa xmm4, xmmword [0x140178350]
movdqa xmm6, xmmword [0x140178260]
movdqa xmm0, xmmword [0x140178360]
movdqa xmmword [rbp - 0x60], xmm0
lea rcx, [rbp - 0x7c]
mov edx, dword [rbp - 0x60]
nop word [rax + rax]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140178340]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [r8 + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140178340]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x18
jl 0x1400af030
cmp r8d, 0x1f
jge 0x1400af16f
movsxd rax, r8d
lea r9, [rbp - 0x80]
add r9, rax
nop
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x37
movzx eax, r8b
sub al, cl
add al, 0x30
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x1f
jl 0x1400af140
lea rcx, [rbp - 0x80]
mov rax, rdi
inc rax
cmp byte [rcx + rax], 0
jne 0x1400af176
movabs rbx, 0x7fffffffffffffff
mov rcx, qword [rbp + 0x120]
sub rbx, rcx
cmp rbx, rax
jb 0x1400af51b
lea r9, [rbp + 0x110]
cmp qword [rbp + 0x128], 0xf
cmova r9, qword [rbp + 0x110]
mov qword [rsp + 0x30], rax
lea rax, [rbp - 0x80]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea rcx, [rbp - 0x60]
call fcn.140060dd0
nop
mov r9, r15
lea r8, [rbp - 0x60]
lea rcx, [rbp - 0x38]
call fcn.140060be0
nop
lea rax, [rsp + 0x40]
mov r8, rdi
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x1400af1f0
lea rdx, [rsp + 0x40]
lea rcx, [rbp - 0x38]
call fcn.140058c10
xorps xmm0, xmm0
movups xmmword [rsp + 0x60], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x70], xmm1
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x60], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x70], xmm1
mov qword [rax + 0x10], r13
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
lea rcx, [rsp + 0x60]
cmp qword [rsp + 0x78], 0xf
cmova rcx, qword [rsp + 0x60]
call qword [0x140151e70]
lea rcx, [rsp + 0x60]
call fcn.14003d650
nop
lea rcx, [rbp - 0x38]
call fcn.14003d650
nop
lea rcx, [rbp - 0x60]
call fcn.14003d650
nop
lea rcx, [rbp - 0x18]
call fcn.14003d650
mov eax, dword [0x1401737f8]
mov dword [rsp + 0x40], eax
movzx ecx, word [0x1401737fc]
mov word [rsp + 0x44], cx
movzx eax, byte [0x1401737fe]
mov byte [rsp + 0x40], 0x4b
xor byte [rsp + 0x41], 0x31
xor byte [rsp + 0x42], 0x32
xor byte [rsp + 0x43], 0x33
xor cl, 0x34
mov byte [rsp + 0x44], cl
xor byte [rsp + 0x45], 0x35
xor al, 0x36
mov byte [rsp + 0x46], al
xorps xmm0, xmm0
movups xmmword [rsi], xmm0
mov qword [rsi + 0x10], r13
mov qword [rsi + 0x18], r13
lea rax, [rsp + 0x40]
nop
inc rdi
cmp byte [rax + rdi], 0
jne 0x1400af2d0
lea rdx, [rsp + 0x40]
jmp 0x1400af460
mov rax, qword [0x1401737f0]
mov qword [rsp + 0x40], rax
cmp byte [0x1401737f7], 0
je 0x1400af43f
cmp r14d, 2
jl 0x1400af402
movdqa xmm4, xmmword [0x140178350]
movdqa xmm2, xmmword [0x1401781d0]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x140178260]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140178340]
packuswb xmm2, xmm2
mov eax, dword [0x140178360]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x40]
xorps xmm2, xmm1
movd dword [rsp + 0x40], xmm2
movdqa xmm3, xmmword [0x1401781f0]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x140178260]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140178340]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x44]
xorps xmm2, xmm1
movd dword [rsp + 0x44], xmm2
jmp 0x1400af43f
lea r9, [rsp + 0x40]
mov r8d, r13d
nop word [rax + rax]
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x37
movzx eax, r8b
sub al, cl
add al, 0x30
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 8
jl 0x1400af410
xorps xmm0, xmm0
movups xmmword [rsi], xmm0
mov qword [rsi + 0x10], r13
mov qword [rsi + 0x18], r13
lea rax, [rsp + 0x40]
inc rdi
cmp byte [rax + rdi], 0
jne 0x1400af452
lea rdx, [rsp + 0x40]
mov r8, rdi
mov rcx, rsi
call fcn.140059090
nop
lea rcx, [rbp + 0x110]
call fcn.14003d650
nop
lea rcx, [rbp + 0x130]
call fcn.14003d650
nop
mov rax, qword [rbp + 0x150]
movsxd rcx, dword [rax + 4]
lea rax, [0x140173808]
mov qword [rbp + rcx + 0x150], rax
mov rax, qword [rbp + 0x150]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x88]
mov dword [rbp + rcx + 0x14c], edx
lea rcx, [rbp + 0x158]
call fcn.14005e9a0
lea rcx, [rbp + 0x160]
call qword [0x140151630]
lea rcx, [rbp + 0x1d8]
call qword [0x140151520]
mov rax, rsi
mov rcx, qword [rbp + 0x2c0]
xor rcx, rsp
call fcn.140148480
lea r11, [rsp + 0x3f0]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.140050950
nop
call fcn.140050950
nop
call fcn.140050950
nop
call fcn.140050950
nop
call fcn.140050950
nop
call fcn.140050950
nop
call fcn.140050950
int3