Function at 0x1800ae8c0
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0xf8]
sub rsp, 0x1d0
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
mov rax, qword [0x180121040]
xor rax, rsp
mov qword [rbp + 0xa0], rax
xor r15d, r15d
movsd xmm7, qword [0x180122c90]
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x88], xmm0
mov qword [rbp + 0x98], rax
lea rcx, [rbp + 0x88]
call fcn.1800acd60
nop
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x70], xmm0
mov qword [rbp + 0x80], rax
lea rcx, [rbp + 0x70]
call fcn.1800acef0
nop
xorps xmm0, xmm0
movups xmmword [rbp + 0x50], xmm0
mov qword [rbp + 0x60], r15
mov qword [rbp + 0x68], r15
xor r8d, r8d
lea rdx, [0x1800f78e6]
lea rcx, [rbp + 0x50]
call fcn.18001ae00
nop
mov esi, r15d
mov rdi, qword [rbp + 0x70]
mov r12, qword [rbp + 0x78]
lea r13, [0x180124210]
cmp rdi, r12
je 0x1800aea23
mov r9, rdi
mov rbx, qword [rdi + 0x18]
cmp rbx, 0xf
jbe 0x1800ae992
mov r9, qword [rdi]
mov r14, qword [rdi + 0x10]
mov rcx, r13
cmp qword [0x180124228], 0xf
cmova rcx, qword [0x180124210]
mov qword [rsp + 0x20], r14
xor r8d, r8d
mov rdx, qword [0x180124220]
call fcn.18001a520
cmp rax, 0xffffffffffffffff
je 0x1800af3a1
lea rax, [rbp + 0x50]
cmp rax, rdi
je 0x1800aea16
mov r9, rdi
cmp rbx, 0xf
jbe 0x1800ae9dc
mov r9, qword [rdi]
mov rax, qword [rbp + 0x68]
cmp r14, rax
ja 0x1800aea0a
lea rbx, [rbp + 0x50]
cmp rax, 0xf
cmova rbx, qword [rbp + 0x50]
mov qword [rbp + 0x60], r14
mov r8, r14
mov rdx, r9
mov rcx, rbx
call sub.VCRUNTIME140.dll_memmove
mov byte [r14 + rbx], sil
jmp 0x1800aea16
mov rdx, r14
lea rcx, [rbp + 0x50]
call fcn.18000cb70
add rdi, 0x20
cmp rdi, r12
jne 0x1800ae982
mov rbx, qword [rbp + 0x88]
mov rdi, qword [rbp + 0x90]
cmp rbx, rdi
je 0x1800aeb11
nop word [rax + rax]
mov rcx, rbx
call fcn.1800b19c0
mov rsi, rax
test rax, rax
je 0x1800af3a1
cmp qword [rax + 0x10], 0
je 0x1800af3a1
mov r8d, dword [0x180122c98]
lea ecx, [r8 - 5]
mov r9, qword [0x180122ca0]
mov r10, qword [0x180122ca8]
cmp ecx, 1
jbe 0x1800aeb02
movsxd rax, dword [rax + 0xc]
cmp r8d, 5
jge 0x1800aeaab
cmp eax, 0xffffffff
jne 0x1800aea94
xor eax, eax
jmp 0x1800aeafa
cmp eax, dword [r9 + 0xc]
jge 0x1800aeaf8
test eax, eax
js 0x1800aeaf8
lea rcx, [rax + rax*2]
mov rax, qword [r9]
lea rax, [rax + rcx*8]
jmp 0x1800aeae3
cmp eax, 0xffffffff
je 0x1800aeaf8
cmp eax, dword [r10 + 0x14]
jge 0x1800aeaf8
test eax, eax
js 0x1800aeaf8
cdq
movzx edx, dx
add eax, edx
mov ecx, eax
movzx eax, ax
sub eax, edx
sar ecx, 0x10
movsxd rdx, ecx
mov rcx, qword [r10]
mov r11, qword [rcx + rdx*8]
test r11, r11
je 0x1800aeaf8
cdqe
lea rcx, [rax + rax*2]
lea rax, [r11 + rcx*8]
test rax, rax
je 0x1800aeaf8
mov rax, qword [rax]
test rax, rax
je 0x1800aeaf8
cmp rax, rsi
sete al
jmp 0x1800aeafa
xor al, al
test al, al
je 0x1800af3a1
add rbx, 0x20
cmp rbx, rdi
jne 0x1800aea40
jmp 0x1800aeb26
mov r8d, dword [0x180122c98]
mov r9, qword [0x180122ca0]
mov r10, qword [0x180122ca8]
mov r11, qword [rbp + 0x60]
test r11, r11
je 0x1800af3a1
test rsi, rsi
je 0x1800af3a1
cmp qword [rsi + 0x10], 0
je 0x1800af3a1
lea eax, [r8 - 5]
cmp eax, 1
jbe 0x1800aebd5
movsxd rax, dword [rsi + 0xc]
cmp r8d, 5
jge 0x1800aeb7e
cmp eax, 0xffffffff
jne 0x1800aeb67
xor eax, eax
jmp 0x1800aebcd
cmp eax, dword [r9 + 0xc]
jge 0x1800aebcb
test eax, eax
js 0x1800aebcb
lea rcx, [rax + rax*2]
mov rax, qword [r9]
lea rax, [rax + rcx*8]
jmp 0x1800aebb6
cmp eax, 0xffffffff
je 0x1800aebcb
cmp eax, dword [r10 + 0x14]
jge 0x1800aebcb
test eax, eax
js 0x1800aebcb
cdq
movzx edx, dx
add eax, edx
mov ecx, eax
movzx eax, ax
sub eax, edx
sar ecx, 0x10
movsxd rdx, ecx
mov rcx, qword [r10]
mov r8, qword [rcx + rdx*8]
test r8, r8
je 0x1800aebcb
cdqe
lea rcx, [rax + rax*2]
lea rax, [r8 + rcx*8]
test rax, rax
je 0x1800aebcb
mov rax, qword [rax]
test rax, rax
je 0x1800aebcb
cmp rax, rsi
sete al
jmp 0x1800aebcd
xor al, al
test al, al
je 0x1800af3a1
mov rbx, 0xffffffffffffffff
movsd xmm6, qword [0x18010aa38]
comisd xmm7, xmmword [0x18010a998]
jb 0x1800aedd2
mov cl, 3
call fcn.180033fe0
call fcn.1800b4950
mov rdx, rax
lea rcx, [rsp + 0x50]
call fcn.1800bc9a0
mov rcx, qword [rax]
cmp qword [rcx], 0
je 0x1800aec19
call fcn.1800b4950
mov rcx, qword [0x180122c88]
test rcx, rcx
je 0x1800aec4a
cmp qword [0x180123628], 0
je 0x1800aec38
mov rax, qword [0x1801235c8]
jmp 0x1800aec42
movsxd rax, dword [0x180122c34]
add rax, rcx
mov rcx, qword [rax]
test rcx, rcx
jne 0x1800aec4d
mov rcx, r15
mov qword [rbp + 0x10], rcx
xor eax, eax
mov qword [rbp + 0x18], rax
mov rdi, qword [0x1801237b0]
test rdi, rdi
jne 0x1800aec87
call fcn.1800b39c0
mov rdi, rax
test rax, rax
jne 0x1800aec75
mov rdi, r15
jmp 0x1800aec80
movsxd rax, dword [0x1801213bc]
mov rdi, qword [rax + rdi]
mov qword [0x1801237b0], rdi
xorps xmm0, xmm0
movups xmmword [rbp + 0x30], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x40], xmm1
mov r8d, socket
lea rdx, str.GetSpecialEventScript
lea rcx, [rbp + 0x30]
call fcn.18001ae00
nop
lea r8, [rbp + 0x10]
lea rdx, [rbp + 0x30]
mov rcx, rdi
call fcn.180097b80
nop
lea rcx, [rbp + 0x30]
call fcn.18001ce20
mov rdi, qword [rbp + 0x18]
test rdi, rdi
je 0x1800aed0a
call fcn.1800b4660
test rax, rax
je 0x1800aed0a
mov rcx, qword [rdi + 0x10]
cmp rcx, rax
je 0x1800aed03
movsxd r8, dword [0x1801213d0]
nop word [rax + rax]
test rcx, rcx
je 0x1800aed0a
mov rcx, qword [r8 + rcx]
test rcx, rcx
je 0x1800aed0a
cmp rcx, rax
jne 0x1800aecf0
mov qword [0x180124758], rdi
movsd xmm0, qword [0x180122c90]
ucomisd xmm0, xmm6
jp 0x1800aed29
jne 0x1800aed29
mov r8d, 6
lea rdx, str.Durian
jmp 0x1800aed33
xor r8d, r8d
lea rdx, [0x1800f78e8]
xorps xmm0, xmm0
xorps xmm1, xmm1
movups xmmword [rsp + 0x50], xmm0
movdqu xmmword [rsp + 0x60], xmm1
lea rcx, [rsp + 0x50]
call fcn.18001d060
mov rdx, qword [rsp + 0x50]
lea rax, [rsp + 0x50]
cmp qword [rsp + 0x68], 7
cmovbe rdx, rax
cmp word [rdx], 0
je 0x1800aed7f
mov rcx, rbx
nop dword [rax + rax]
inc rcx
cmp word [rdx + rcx*2], 0
jne 0x1800aed70
inc rcx
jmp 0x1800aed82
mov rcx, r15
mov rax, r15
test ecx, ecx
cmovne rax, rdx
mov qword [rbp + 0x10], rax
mov dword [rbp + 0x18], ecx
mov dword [rbp + 0x1c], ecx
lea rdx, [rbp + 0x10]
lea rcx, [rsp + 0x40]
call fcn.1800be340
mov r9b, 1
xor r8d, r8d
mov rdx, qword [rsp + 0x40]
mov rcx, qword [0x180124208]
call fcn.180036190
nop
lea rcx, [rsp + 0x50]
call fcn.18001ce90
mov word [0x180123f7b], 0x101
mov r11, qword [rbp + 0x60]
lea r9, [rbp + 0x50]
cmp qword [rbp + 0x68], 0xf
cmova r9, qword [rbp + 0x50]
cmp qword [0x180124228], 0xf
cmova r13, qword [0x180124210]
mov qword [rsp + 0x20], r11
xor r8d, r8d
mov rdx, qword [0x180124220]
mov rcx, r13
call fcn.18001a520
cmp rax, 0xffffffffffffffff
je 0x1800af398
ucomisd xmm7, xmm6
jp 0x1800af38e
jne 0x1800af38e
mov byte [0x180123f7e], 1
lea rax, [rsp + 0x50]
mov qword [rsp + 0x40], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x50], xmm0
mov qword [rsp + 0x60], r15
mov qword [rsp + 0x68], r15
mov r8d, 0x19
lea rdx, str.4KBGQ0CCL99I5HVTOJJZDTKHJ
lea rcx, [rsp + 0x50]
call fcn.18001ae00
nop
call fcn.1800c4cd0
nop
lea rdx, [rsp + 0x50]
mov rcx, rax
call fcn.180036800
test rax, rax
je 0x1800aef27
movsxd rcx, dword [0x180122c1c]
mov rdx, qword [rcx + rax]
movsxd rax, dword [0x180122c14]
cmp dword [0x180122c98], 0x14
jl 0x1800aeeba
movsd xmm1, qword [rax + rdx + 0x10]
cvtpd2ps xmm1, xmm1
movsd xmm2, qword [rax + rdx + 8]
cvtpd2ps xmm2, xmm2
movsd xmm0, qword [rax + rdx]
cvtpd2ps xmm3, xmm0
movd r8d, xmm1
unpcklps xmm3, xmm2
jmp 0x1800aeec4
movsd xmm3, qword [rax + rdx]
mov r8d, dword [rax + rdx + 8]
movsxd rax, dword [0x180122c18]
jl 0x1800aeef6
movsd xmm1, qword [rax + rdx + 0x10]
cvtpd2ps xmm1, xmm1
movsd xmm2, qword [rax + rdx + 8]
cvtpd2ps xmm2, xmm2
movsd xmm0, qword [rax + rdx]
cvtpd2ps xmm0, xmm0
movd eax, xmm1
movaps xmm1, xmm0
unpcklps xmm1, xmm2
jmp 0x1800aeeff
movsd xmm1, qword [rax + rdx]
mov eax, dword [rax + rdx + 8]
movsd qword [rsp + 0x40], xmm3
mov dword [rsp + 0x48], r8d
movsd qword [rbp + 0x10], xmm1
mov dword [rbp + 0x18], eax
lea r8, [rsp + 0x40]
lea rdx, [rbp + 0x10]
mov rcx, qword [0x180122cc0]
call fcn.1800bb6f0
xorps xmm0, xmm0
movups xmmword [rbp + 0x10], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x20], xmm1
mov r8d, 0x50
lea rdx, str._DurianPlaylist_Blueprints_BP_Durian_PreEventManager.BP_Durian_PreEventManager_C
lea rcx, [rbp + 0x10]
call fcn.18001ae00
nop
xorps xmm0, xmm0
movups xmmword [rbp + 0x30], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x40], xmm1
xor r8d, r8d
lea rdx, [0x1800f78e6]
lea rcx, [rbp + 0x30]
call fcn.18001ae00
nop
cmp byte [0x180122cb8], 0
jne 0x1800aef91
lea rdx, [rbp + 0x10]
lea rcx, [rsp + 0x70]
call fcn.18001be10
mov rcx, rax
call fcn.18001d1a0
jmp 0x1800aef9a
lea rcx, [rbp + 0x10]
call fcn.18000cfa0
mov rdi, rax
lea rcx, [rbp + 0x30]
call fcn.18001ce20
mov rdx, rdi
lea rcx, [rsp + 0x50]
call fcn.1800bc9a0
mov rcx, qword [rax]
xor edx, edx
mov rcx, qword [rcx]
call fcn.18000a500
nop
lea rcx, [rbp + 0x10]
call fcn.18001ce20
mov rcx, qword [0x180122c88]
test rcx, rcx
je 0x1800af00b
cmp qword [0x180123628], 0
je 0x1800aefe9
mov rax, qword [0x1801235c8]
jmp 0x1800aeff3
movsxd rax, dword [0x180122c34]
add rax, rcx
mov rdi, qword [rax]
test rdi, rdi
je 0x1800af00b
movsxd rax, dword [0x180122c28]
mov rdi, qword [rax + rdi]
test rdi, rdi
jne 0x1800af00e
mov rdi, r15
movups xmm0, xmmword [0x180107410]
movups xmmword [rbp - 0x70], xmm0
movups xmm1, xmmword [0x180107420]
movups xmmword [rbp - 0x60], xmm1
movups xmm0, xmmword [str.2_22s]
movups xmmword [rbp - 0x50], xmm0
movups xmm1, xmmword [0x180107440]
movups xmmword [rbp - 0x40], xmm1
movups xmm0, xmmword [0x180107450]
movups xmmword [rbp - 0x30], xmm0
movups xmm1, xmmword [0x180107460]
movups xmmword [rbp - 0x20], xmm1
movups xmm0, xmmword [0x180107470]
movups xmmword [rbp - 0x10], xmm0
movsd xmm0, qword [0x180107480]
movsd qword [rbp], xmm0
mov eax, dword [0x180107488]
mov dword [rbp + 8], eax
movzx eax, byte [0x18010748c]
mov byte [rbp + 0xc], al
mov r8d, r15d
cmp dword [0x180121018], 2
jl 0x1800af1c5
movdqa xmm5, xmmword [0x18010ac80]
movdqa xmm4, xmmword [0x18010ae50]
movdqa xmm6, xmmword [0x18010acc0]
movdqa xmm0, xmmword [str.7777777777777777]
movdqa xmmword [rbp + 0x10], xmm0
lea rcx, [rbp - 0x6c]
mov edx, dword [rbp + 0x10]
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, 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, 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, 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, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x78
jl 0x1800af0c0
cmp r8d, 0x7d
jge 0x1800af200
movsxd rax, r8d
lea r9, [rbp - 0x70]
add r9, rax
nop
mov eax, 0x4ec4ec4f
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x34
movzx eax, r8b
sub al, cl
add al, 0x37
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x7d
jl 0x1800af1d0
xorps xmm0, xmm0
movups xmmword [rsp + 0x50], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x60], xmm1
lea rax, [rbp - 0x70]
inc rbx
cmp byte [rax + rbx], 0
jne 0x1800af215
mov r8, rbx
lea rdx, [rbp - 0x70]
lea rcx, [rsp + 0x50]
call fcn.18001ae00
nop
xorps xmm0, xmm0
movups xmmword [rbp + 0x30], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x40], xmm1
xor r8d, r8d
lea rdx, [0x1800f78e6]
lea rcx, [rbp + 0x30]
call fcn.18001ae00
nop
cmp byte [0x180122cb8], 0
jne 0x1800af275
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x70]
call fcn.18001be10
mov rcx, rax
call fcn.18001d1a0
jmp 0x1800af27f
lea rcx, [rsp + 0x50]
call fcn.18000cfa0
mov rsi, rax
lea rcx, [rbp + 0x30]
call fcn.18001ce20
nop
lea rcx, [rsp + 0x50]
call fcn.18001ce20
xorps xmm0, xmm0
movups xmmword [rbp + 0x30], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x40], xmm1
mov r8d, 0xf
lea rdx, str.FocalPointActor
lea rcx, [rbp + 0x30]
call fcn.18001ae00
nop
test rdi, rdi
je 0x1800af2d9
lea rdx, [rbp + 0x30]
mov rcx, rdi
call fcn.18004d020
test eax, eax
jle 0x1800af2d9
movsxd rbx, eax
add rbx, rdi
jmp 0x1800af2dc
mov rbx, r15
lea rcx, [rbp + 0x30]
call fcn.18001ce20
mov qword [rbx], rsi
xorps xmm0, xmm0
movups xmmword [rbp + 0x30], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x40], xmm1
mov r8d, 0xd
lea rdx, str.FocalPointFOV
lea rcx, [rbp + 0x30]
call fcn.18001ae00
nop
test rdi, rdi
je 0x1800af32b
lea rdx, [rbp + 0x30]
mov rcx, rdi
call fcn.18004d020
test eax, eax
jle 0x1800af32b
movsxd rbx, eax
add rbx, rdi
jmp 0x1800af32e
mov rbx, r15
lea rcx, [rbp + 0x30]
call fcn.18001ce20
mov dword [rbx], 0x42b40000
xorps xmm0, xmm0
movups xmmword [rbp + 0x30], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x40], xmm1
mov r8d, 0x1d
lea rdx, str.FocalPointRotationInterpSpeed
lea rcx, [rbp + 0x30]
call fcn.18001ae00
nop
test rdi, rdi
je 0x1800af37e
lea rdx, [rbp + 0x30]
mov rcx, rdi
call fcn.18004d020
test eax, eax
jle 0x1800af37e
movsxd r15, eax
add r15, rdi
lea rcx, [rbp + 0x30]
call fcn.18001ce20
mov dword [r15], 0x3f59999a
mov bl, 1
mov byte [0x180123f70], bl
jmp 0x1800af3a3
movzx ebx, byte [0x180123f70]
jmp 0x1800af3a3
xor bl, bl
lea rcx, [rbp + 0x50]
call fcn.18001ce20
nop
lea rcx, [rbp + 0x70]
call fcn.18001c990
nop
lea rcx, [rbp + 0x88]
call fcn.18001c990
movzx eax, bl
mov rcx, qword [rbp + 0xa0]
xor rcx, rsp
call fcn.1800cc550
lea r11, [rsp + 0x1d0]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret