Function at 0x1800b6cf0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
push rbp
lea rbp, [rsp - 0x57]
sub rsp, 0xe0
movaps xmmword [rsp + 0xd0], xmm6
mov rax, qword [0x180121040]
xor rax, rsp
mov qword [rbp + 0x3f], rax
dec ecx
cmp ecx, 5
ja case.default.0x1800b6d37
movsxd rax, ecx
lea rdx, [0x180000000]
mov ecx, dword [rdx + rax*4 + 0xb7ad8]
add rcx, rdx
jmp rcx
movups xmm0, xmmword [0x180108418]
movups xmmword [rbp - 0x19], xmm0
movups xmm1, xmmword [0x180108428]
movups xmmword [rbp - 9], xmm1
movups xmm0, xmmword [0x180108438]
movups xmmword [rbp + 7], xmm0
movsd xmm0, qword [0x180108448]
movsd qword [rbp + 0x17], xmm0
xor ecx, ecx
cmp dword [0x180121018], 2
jl 0x1800b6ea2
movdqa xmm5, xmmword [0x18010ac80]
movdqa xmm4, xmmword [0x18010ae30]
movdqa xmm6, xmmword [0x18010ace0]
movdqa xmm0, xmmword [str.7777777777777777]
movdqa xmmword [rbp - 0x49], xmm0
lea rdx, [rbp - 0x15]
mov r8d, dword [rbp - 0x49]
movd xmm2, ecx
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, 4
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 [0x18010ad80]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rdx - 4]
xorps xmm2, xmm0
movd dword [rdx - 4], xmm2
lea eax, [rcx + 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, 4
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 [0x18010ad80]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rdx]
xorps xmm2, xmm0
movd dword [rdx], xmm2
add ecx, 8
lea rdx, [rdx + 8]
cmp ecx, 0x38
jl 0x1800b6da3
jmp 0x1800b6edc
lea r8, [rbp - 0x19]
nop word [rax + rax]
mov eax, 0x4bda12f7
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul edx, eax, 0x36
movzx eax, cl
sub al, dl
add al, 0x37
xor byte [r8], al
inc ecx
lea r8, [r8 + 1]
cmp ecx, 0x38
jl 0x1800b6eb0
xorps xmm0, xmm0
movups xmmword [rbp - 0x39], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x29], xmm1
lea rax, [rbp - 0x19]
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], 0
jne 0x1800b6ef6
lea rdx, [rbp - 0x19]
lea rcx, [rbp - 0x39]
call fcn.18001ae00
nop
xorps xmm0, xmm0
movups xmmword [rbp + 0x1f], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x2f], xmm1
xor r8d, r8d
lea rdx, [0x1800f78e6]
lea rcx, [rbp + 0x1f]
call fcn.18001ae00
nop
cmp byte [0x180122cb8], 0
jne 0x1800b6f51
lea rdx, [rbp - 0x39]
lea rcx, [rbp - 0x19]
call fcn.18001be10
mov rcx, rax
call fcn.18001d1a0
jmp 0x1800b6f5a
lea rcx, [rbp - 0x39]
call fcn.18000cfa0
mov rbx, rax
lea rcx, [rbp + 0x1f]
call fcn.18001ce20
nop
jmp 0x1800b7aa7
movups xmm0, xmmword [0x1801083e0]
movups xmmword [rbp - 0x19], xmm0
movups xmm1, xmmword [0x1801083f0]
movups xmmword [rbp - 9], xmm1
movups xmm0, xmmword [0x180108400]
movups xmmword [rbp + 7], xmm0
movsd xmm0, qword [0x180108410]
movsd qword [rbp + 0x17], xmm0
xor ecx, ecx
cmp dword [0x180121018], 2
jl 0x1800b70df
movdqa xmm5, xmmword [0x18010ac80]
movdqa xmm4, xmmword [0x18010ae30]
movdqa xmm6, xmmword [0x18010ace0]
movdqa xmm0, xmmword [str.7777777777777777]
movdqa xmmword [rbp - 0x49], xmm0
lea rdx, [rbp - 0x15]
mov r8d, dword [rbp - 0x49]
nop word [rax + rax]
movd xmm2, ecx
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, 4
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 [0x18010ad80]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rdx - 4]
xorps xmm2, xmm0
movd dword [rdx - 4], xmm2
lea eax, [rcx + 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, 4
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 [0x18010ad80]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rdx]
xorps xmm2, xmm0
movd dword [rdx], xmm2
add ecx, 8
lea rdx, [rdx + 8]
cmp ecx, 0x38
jl 0x1800b6fe0
jmp 0x1800b711c
lea r8, [rbp - 0x19]
nop dword [rax]
nop word [rax + rax]
mov eax, 0x4bda12f7
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul edx, eax, 0x36
movzx eax, cl
sub al, dl
add al, 0x37
xor byte [r8], al
inc ecx
lea r8, [r8 + 1]
cmp ecx, 0x38
jl 0x1800b70f0
xorps xmm0, xmm0
movups xmmword [rbp - 0x39], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x29], xmm1
lea rax, [rbp - 0x19]
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], 0
jne 0x1800b7136
lea rdx, [rbp - 0x19]
lea rcx, [rbp - 0x39]
call fcn.18001ae00
nop
xorps xmm0, xmm0
movups xmmword [rbp + 0x1f], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x2f], xmm1
xor r8d, r8d
lea rdx, [0x1800f78e6]
lea rcx, [rbp + 0x1f]
call fcn.18001ae00
nop
cmp byte [0x180122cb8], 0
jne 0x1800b7191
lea rdx, [rbp - 0x39]
lea rcx, [rbp - 0x19]
call fcn.18001be10
mov rcx, rax
call fcn.18001d1a0
jmp 0x1800b719a
lea rcx, [rbp - 0x39]
call fcn.18000cfa0
mov rbx, rax
lea rcx, [rbp + 0x1f]
call fcn.18001ce20
nop
jmp 0x1800b7aa7
movups xmm0, xmmword [0x1801083a8]
movups xmmword [rbp - 0x19], xmm0
movups xmm1, xmmword [0x1801083b8]
movups xmmword [rbp - 9], xmm1
movups xmm0, xmmword [0x1801083c8]
movups xmmword [rbp + 7], xmm0
movsd xmm0, qword [0x1801083d8]
movsd qword [rbp + 0x17], xmm0
xor ecx, ecx
cmp dword [0x180121018], 2
jl 0x1800b731f
movdqa xmm5, xmmword [0x18010ac80]
movdqa xmm4, xmmword [0x18010ae30]
movdqa xmm6, xmmword [0x18010ace0]
movdqa xmm0, xmmword [str.7777777777777777]
movdqa xmmword [rbp - 0x49], xmm0
lea rdx, [rbp - 0x15]
mov r8d, dword [rbp - 0x49]
nop word [rax + rax]
movd xmm2, ecx
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, 4
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 [0x18010ad80]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rdx - 4]
xorps xmm2, xmm0
movd dword [rdx - 4], xmm2
lea eax, [rcx + 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, 4
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 [0x18010ad80]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rdx]
xorps xmm2, xmm0
movd dword [rdx], xmm2
add ecx, 8
lea rdx, [rdx + 8]
cmp ecx, 0x38
jl 0x1800b7220
jmp 0x1800b735c
lea r8, [rbp - 0x19]
nop dword [rax]
nop word [rax + rax]
mov eax, 0x4bda12f7
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul edx, eax, 0x36
movzx eax, cl
sub al, dl
add al, 0x37
xor byte [r8], al
inc ecx
lea r8, [r8 + 1]
cmp ecx, 0x38
jl 0x1800b7330
xorps xmm0, xmm0
movups xmmword [rbp - 0x39], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x29], xmm1
lea rax, [rbp - 0x19]
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], 0
jne 0x1800b7376
lea rdx, [rbp - 0x19]
lea rcx, [rbp - 0x39]
call fcn.18001ae00
nop
xorps xmm0, xmm0
movups xmmword [rbp + 0x1f], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x2f], xmm1
xor r8d, r8d
lea rdx, [0x1800f78e6]
lea rcx, [rbp + 0x1f]
call fcn.18001ae00
nop
cmp byte [0x180122cb8], 0
jne 0x1800b73d1
lea rdx, [rbp - 0x39]
lea rcx, [rbp - 0x19]
call fcn.18001be10
mov rcx, rax
call fcn.18001d1a0
jmp 0x1800b73da
lea rcx, [rbp - 0x39]
call fcn.18000cfa0
mov rbx, rax
lea rcx, [rbp + 0x1f]
call fcn.18001ce20
nop
jmp 0x1800b7aa7
movups xmm0, xmmword [0x180108370]
movups xmmword [rbp - 0x19], xmm0
movups xmm1, xmmword [0x180108380]
movups xmmword [rbp - 9], xmm1
movups xmm0, xmmword [0x180108390]
movups xmmword [rbp + 7], xmm0
movsd xmm0, qword [0x1801083a0]
movsd qword [rbp + 0x17], xmm0
xor ecx, ecx
cmp dword [0x180121018], 2
jl 0x1800b755f
movdqa xmm5, xmmword [0x18010ac80]
movdqa xmm4, xmmword [0x18010ae30]
movdqa xmm6, xmmword [0x18010ace0]
movdqa xmm0, xmmword [str.7777777777777777]
movdqa xmmword [rbp - 0x49], xmm0
lea rdx, [rbp - 0x15]
mov r8d, dword [rbp - 0x49]
nop word [rax + rax]
movd xmm2, ecx
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, 4
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 [0x18010ad80]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rdx - 4]
xorps xmm2, xmm0
movd dword [rdx - 4], xmm2
lea eax, [rcx + 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, 4
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 [0x18010ad80]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rdx]
xorps xmm2, xmm0
movd dword [rdx], xmm2
add ecx, 8
lea rdx, [rdx + 8]
cmp ecx, 0x38
jl 0x1800b7460
jmp 0x1800b759c
lea r8, [rbp - 0x19]
nop dword [rax]
nop word [rax + rax]
mov eax, 0x4bda12f7
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul edx, eax, 0x36
movzx eax, cl
sub al, dl
add al, 0x37
xor byte [r8], al
inc ecx
lea r8, [r8 + 1]
cmp ecx, 0x38
jl 0x1800b7570
xorps xmm0, xmm0
movups xmmword [rbp - 0x39], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x29], xmm1
lea rax, [rbp - 0x19]
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], 0
jne 0x1800b75b6
lea rdx, [rbp - 0x19]
lea rcx, [rbp - 0x39]
call fcn.18001ae00
nop
xorps xmm0, xmm0
movups xmmword [rbp + 0x1f], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x2f], xmm1
xor r8d, r8d
lea rdx, [0x1800f78e6]
lea rcx, [rbp + 0x1f]
call fcn.18001ae00
nop
cmp byte [0x180122cb8], 0
jne 0x1800b7611
lea rdx, [rbp - 0x39]
lea rcx, [rbp - 0x19]
call fcn.18001be10
mov rcx, rax
call fcn.18001d1a0
jmp 0x1800b761a
lea rcx, [rbp - 0x39]
call fcn.18000cfa0
mov rbx, rax
lea rcx, [rbp + 0x1f]
call fcn.18001ce20
nop
jmp 0x1800b7aa7
movups xmm0, xmmword [0x180108338]
movups xmmword [rbp - 0x19], xmm0
movups xmm1, xmmword [0x180108348]
movups xmmword [rbp - 9], xmm1
movups xmm0, xmmword [0x180108358]
movups xmmword [rbp + 7], xmm0
movsd xmm0, qword [0x180108368]
movsd qword [rbp + 0x17], xmm0
xor ecx, ecx
cmp dword [0x180121018], 2
jl 0x1800b779f
movdqa xmm5, xmmword [0x18010ac80]
movdqa xmm4, xmmword [0x18010ae30]
movdqa xmm6, xmmword [0x18010ace0]
movdqa xmm0, xmmword [str.7777777777777777]
movdqa xmmword [rbp - 0x49], xmm0
lea rdx, [rbp - 0x15]
mov r8d, dword [rbp - 0x49]
nop word [rax + rax]
movd xmm2, ecx
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, 4
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 [0x18010ad80]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rdx - 4]
xorps xmm2, xmm0
movd dword [rdx - 4], xmm2
lea eax, [rcx + 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, 4
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 [0x18010ad80]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rdx]
xorps xmm2, xmm0
movd dword [rdx], xmm2
add ecx, 8
lea rdx, [rdx + 8]
cmp ecx, 0x38
jl 0x1800b76a0
jmp 0x1800b77dc
lea r8, [rbp - 0x19]
nop dword [rax]
nop word [rax + rax]
mov eax, 0x4bda12f7
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul edx, eax, 0x36
movzx eax, cl
sub al, dl
add al, 0x37
xor byte [r8], al
inc ecx
lea r8, [r8 + 1]
cmp ecx, 0x38
jl 0x1800b77b0
xorps xmm0, xmm0
movups xmmword [rbp - 0x39], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x29], xmm1
lea rax, [rbp - 0x19]
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], 0
jne 0x1800b77f6
lea rdx, [rbp - 0x19]
lea rcx, [rbp - 0x39]
call fcn.18001ae00
nop
xorps xmm0, xmm0
movups xmmword [rbp + 0x1f], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x2f], xmm1
xor r8d, r8d
lea rdx, [0x1800f78e6]
lea rcx, [rbp + 0x1f]
call fcn.18001ae00
nop
cmp byte [0x180122cb8], 0
jne 0x1800b7851
lea rdx, [rbp - 0x39]
lea rcx, [rbp - 0x19]
call fcn.18001be10
mov rcx, rax
call fcn.18001d1a0
jmp 0x1800b785a
lea rcx, [rbp - 0x39]
call fcn.18000cfa0
mov rbx, rax
lea rcx, [rbp + 0x1f]
call fcn.18001ce20
nop
jmp 0x1800b7aa7
movups xmm0, xmmword [0x180108300]
movups xmmword [rbp - 0x19], xmm0
movups xmm1, xmmword [0x180108310]
movups xmmword [rbp - 9], xmm1
movups xmm0, xmmword [0x180108320]
movups xmmword [rbp + 7], xmm0
movsd xmm0, qword [0x180108330]
movsd qword [rbp + 0x17], xmm0
xor ecx, ecx
cmp dword [0x180121018], 2
jl 0x1800b79df
movdqa xmm5, xmmword [0x18010ac80]
movdqa xmm4, xmmword [0x18010ae30]
movdqa xmm6, xmmword [0x18010ace0]
movdqa xmm0, xmmword [str.7777777777777777]
movdqa xmmword [rbp - 0x49], xmm0
lea rdx, [rbp - 0x15]
mov r8d, dword [rbp - 0x49]
nop word [rax + rax]
movd xmm2, ecx
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, 4
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 [0x18010ad80]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rdx - 4]
xorps xmm2, xmm0
movd dword [rdx - 4], xmm2
lea eax, [rcx + 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, 4
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 [0x18010ad80]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rdx]
xorps xmm2, xmm0
movd dword [rdx], xmm2
add ecx, 8
lea rdx, [rdx + 8]
cmp ecx, 0x38
jl 0x1800b78e0
jmp 0x1800b7a1c
lea r8, [rbp - 0x19]
nop dword [rax]
nop word [rax + rax]
mov eax, 0x4bda12f7
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul edx, eax, 0x36
movzx eax, cl
sub al, dl
add al, 0x37
xor byte [r8], al
inc ecx
lea r8, [r8 + 1]
cmp ecx, 0x38
jl 0x1800b79f0
xorps xmm0, xmm0
movups xmmword [rbp - 0x39], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x29], xmm1
lea rax, [rbp - 0x19]
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], 0
jne 0x1800b7a36
lea rdx, [rbp - 0x19]
lea rcx, [rbp - 0x39]
call fcn.18001ae00
nop
xorps xmm0, xmm0
movups xmmword [rbp + 0x1f], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x2f], xmm1
xor r8d, r8d
lea rdx, [0x1800f78e6]
lea rcx, [rbp + 0x1f]
call fcn.18001ae00
nop
cmp byte [0x180122cb8], 0
jne 0x1800b7a91
lea rdx, [rbp - 0x39]
lea rcx, [rbp - 0x19]
call fcn.18001be10
mov rcx, rax
call fcn.18001d1a0
jmp 0x1800b7a9a
lea rcx, [rbp - 0x39]
call fcn.18000cfa0
mov rbx, rax
lea rcx, [rbp + 0x1f]
call fcn.18001ce20
nop
lea rcx, [rbp - 0x39]
call fcn.18001ce20
mov rax, rbx
mov rcx, qword [rbp + 0x3f]
xor rcx, rsp
call fcn.1800cc550
mov rbx, qword [rsp + 0xf0]
movaps xmm6, xmmword [rsp + 0xd0]
add rsp, 0xe0
pop rbp
ret