Function at 0x1800bbc70
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
mov qword [rax + 0x20], r14
push rbp
lea rbp, [rax - 0x98]
sub rsp, 0x190
movaps xmmword [rax - 0x18], xmm6
mov rax, qword [0x18012c040]
xor rax, rsp
mov qword [rbp + 0x70], rax
mov edx, 4
call fcn.1800bb1e0
mov dl, 3
mov rcx, qword [0x18012f7c0]
call fcn.1800ba5a0
call fcn.1800bf9e0
mov rdx, rax
lea rcx, [rbp + 0x30]
call fcn.1800c3100
mov rcx, qword [rax]
mov rcx, qword [rcx]
mov qword [0x18012f7b8], rcx
mov dl, 2
call fcn.1800ba5a0
mov ecx, 6
call fcn.1800bd4e0
mov rcx, rax
call fcn.1800c2cc0
mov rcx, rax
mov dl, 2
call fcn.1800c2ac0
xorps xmm0, xmm0
movups xmmword [rbp + 0x30], xmm0
lea rcx, [rbp + 0x30]
call fcn.1800bca30
movsxd rax, dword [rbp + 0x38]
mov rbx, qword [rbp + 0x30]
lea rdi, [rbx + rax*8]
cmp rbx, rdi
je 0x1800bbd3b
nop
mov rcx, qword [rbx]
call fcn.1800c2cc0
mov rcx, rax
xor edx, edx
call fcn.1800c2ac0
add rbx, 8
cmp rbx, rdi
jne 0x1800bbd20
xorps xmm0, xmm0
movups xmmword [rbp + 0x30], xmm0
lea rcx, [rbp + 0x30]
call fcn.1800bc740
movsxd rax, dword [rbp + 0x38]
mov rbx, qword [rbp + 0x30]
lea rdi, [rbx + rax*8]
cmp rbx, rdi
je 0x1800bbd7b
nop dword [rax]
mov rcx, qword [rbx]
call fcn.1800c2cc0
mov rcx, rax
mov dl, 2
call fcn.1800c2ac0
add rbx, 8
cmp rbx, rdi
jne 0x1800bbd60
xor edi, edi
mov rcx, qword [0x18012dd60]
test rcx, rcx
je 0x1800bbdbd
cmp qword [0x18012e710], rdi
je 0x1800bbd9b
mov rax, qword [0x18012e6b0]
jmp 0x1800bbda5
movsxd rax, dword [0x18012c4d0]
add rax, rcx
mov rbx, qword [rax]
test rbx, rbx
je 0x1800bbdbd
movsxd rax, dword [0x18012c4dc]
mov rbx, qword [rax + rbx]
test rbx, rbx
jne 0x1800bbdc0
mov rbx, rdi
lea rcx, [rsp + 0x60]
lea rax, [0x180111710]
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
movups xmm0, xmmword [rax + 0x70]
movups xmmword [rcx + 0x70], xmm0
movups xmm1, xmmword [rax + 0x80]
movups xmmword [rcx + 0x80], xmm1
movups xmm0, xmmword [rax + 0x90]
movups xmmword [rcx + 0x90], xmm0
mov eax, dword [rax + 0xa0]
mov dword [rcx + 0xa0], eax
mov r8d, edi
cmp dword [0x18012c090], 2
jl 0x1800bbf6d
movdqa xmm4, xmmword [0x1801148f0]
movdqa xmm3, xmmword [0x180114d90]
movdqa xmm5, xmmword [0x180114920]
movdqa xmm0, xmmword [0x1801149e0]
movdqa xmmword [rbp + 0x30], xmm0
lea rcx, [rsp + 0x64]
movdqa xmm6, xmmword [0x180114990]
mov edx, dword [rbp + 0x30]
nop word [rax + rax]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm4
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm3
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
andps xmm2, xmm6
packuswb xmm2, xmm2
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 xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm4
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm3
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
andps xmm2, xmm6
packuswb xmm2, xmm2
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, 0xa0
jl 0x1800bbe80
cmp r8d, 0xa4
jge 0x1800bbfb3
movsxd rax, r8d
lea r9, [rsp + 0x60]
add r9, rax
nop dword [rax + rax]
mov eax, 0x51eb851f
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x32
movzx eax, r8b
sub al, cl
add al, 0x38
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xa4
jl 0x1800bbf80
xorps xmm0, xmm0
movups xmmword [rsp + 0x40], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x50], xmm1
lea rax, [rsp + 0x60]
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], dil
jne 0x1800bbfd0
lea rdx, [rsp + 0x60]
lea rcx, [rsp + 0x40]
call fcn.180013310
nop
xorps xmm0, xmm0
movups xmmword [rbp + 0x10], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x20], xmm1
xor r8d, r8d
lea rdx, [0x180100ff1]
lea rcx, [rbp + 0x10]
call fcn.180013310
nop
cmp byte [0x18012dd90], 0
jne 0x1800bc02d
lea rdx, [rsp + 0x40]
lea rcx, [rbp + 0x50]
call fcn.180026f50
mov rcx, rax
call fcn.180027cc0
jmp 0x1800bc037
lea rcx, [rsp + 0x40]
call fcn.18000d920
mov r14, rax
lea rcx, [rbp + 0x10]
call fcn.180027960
nop
lea rcx, [rsp + 0x40]
call fcn.180027960
xorps xmm0, xmm0
movups xmmword [rbp + 0x10], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x20], xmm1
mov r8d, 0xf
lea rdx, str.FocalPointActor
lea rcx, [rbp + 0x10]
call fcn.180013310
nop
test rbx, rbx
je 0x1800bc091
lea rdx, [rbp + 0x10]
mov rcx, rbx
call fcn.180052b90
test eax, eax
jle 0x1800bc091
movsxd rsi, eax
add rsi, rbx
jmp 0x1800bc094
mov rsi, rdi
lea rcx, [rbp + 0x10]
call fcn.180027960
mov qword [rsi], r14
xorps xmm0, xmm0
movups xmmword [rbp + 0x10], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x20], xmm1
mov r8d, 0xd
lea rdx, str.FocalPointFOV
lea rcx, [rbp + 0x10]
call fcn.180013310
nop
test rbx, rbx
je 0x1800bc0e3
lea rdx, [rbp + 0x10]
mov rcx, rbx
call fcn.180052b90
test eax, eax
jle 0x1800bc0e3
movsxd rsi, eax
add rsi, rbx
jmp 0x1800bc0e6
mov rsi, rdi
lea rcx, [rbp + 0x10]
call fcn.180027960
mov dword [rsi], 0x42b40000
xorps xmm0, xmm0
movups xmmword [rbp + 0x10], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x20], xmm1
mov r8d, 0x1d
lea rdx, str.FocalPointRotationInterpSpeed
lea rcx, [rbp + 0x10]
call fcn.180013310
nop
test rbx, rbx
je 0x1800bc136
lea rdx, [rbp + 0x10]
mov rcx, rbx
call fcn.180052b90
test eax, eax
jle 0x1800bc136
movsxd rdi, eax
add rdi, rbx
lea rcx, [rbp + 0x10]
call fcn.180027960
mov dword [rdi], 0x3f59999a
xorps xmm0, xmm0
movups xmmword [rbp + 0x10], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x20], xmm1
mov r8d, 0x46
lea rdx, str._Durian_Sequences_VerseMasters_Rep_Durian_Phase_5.Rep_Durian_Phase_5_C
lea rcx, [rbp + 0x10]
call fcn.180013310
nop
xorps xmm0, xmm0
movups xmmword [rbp + 0x50], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x60], xmm1
xor r8d, r8d
lea rdx, [0x180100ff1]
lea rcx, [rbp + 0x50]
call fcn.180013310
nop
cmp byte [0x18012dd90], 0
jne 0x1800bc1ae
lea rdx, [rbp + 0x10]
lea rcx, [rbp + 0x30]
call fcn.180026f50
mov rcx, rax
call fcn.180027cc0
jmp 0x1800bc1b7
lea rcx, [rbp + 0x10]
call fcn.18000d920
mov rbx, rax
lea rcx, [rbp + 0x50]
call fcn.180027960
mov rdx, rbx
lea rcx, [rsp + 0x40]
call fcn.1800c3100
mov rcx, qword [rax]
xor edx, edx
mov rcx, qword [rcx]
call fcn.18000b0f0
mov qword [0x18012f7e8], rax
lea rcx, [rbp + 0x10]
call fcn.180027960
mov rcx, qword [0x18012f7e8]
call fcn.1800ce740
mov qword [0x18012ef88], rax
mov dl, 1
mov rcx, rax
call fcn.1800ce320
mov byte [rsp + 0x20], 1
lea rcx, [0x18012dda0]
call fcn.18002bf30
mov rcx, qword [rbp + 0x70]
xor rcx, rsp
call fcn.1800d4da0
lea r11, [rsp + 0x190]
mov rbx, qword [r11 + 0x10]
mov rsi, qword [r11 + 0x18]
mov rdi, qword [r11 + 0x20]
mov r14, qword [r11 + 0x28]
movaps xmm6, xmmword [r11 - 0x10]
mov rsp, r11
pop rbp
ret