Function at 0x180014c10
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rdi
push rbp
lea rbp, [rax - 0x5f]
sub rsp, 0xe0
movaps xmmword [rax - 0x18], xmm6
movaps xmmword [rax - 0x28], xmm7
mov rax, qword [0x1802b5380]
xor rax, rsp
mov qword [rbp + 0x2f], rax
lea rax, str.Mouse_Right
xor edx, edx
mov qword [rbp + 7], rax
xor r8d, r8d
lea rax, str.Mouse_Left
mov qword [rbp + 0xf], rax
lea rax, str.Key_Q
mov qword [rbp + 0x17], rax
lea ecx, [rdx + 2]
lea rax, str.Key_E
mov qword [rbp + 0x1f], rax
lea rax, str.Key_Ctrl
mov qword [rbp + 0x27], rax
lea rax, str.Chest
mov qword [rbp - 0x19], rax
lea rax, str.Head
mov qword [rbp - 0x11], rax
lea rax, str.Neck
mov qword [rbp - 9], rax
lea rax, str.Crotch
mov qword [rbp - 1], rax
call fcn.180049200
xor eax, eax
mov dword [rbp - 0x59], 0xd894bad4
xor ebx, ebx
mov word [rbp - 0x55], 0xc5de
mov edx, ebx
mov byte [rbp - 0x53], al
nop dword [rax]
nop word [rax + rax]
movsxd rcx, edx
lea eax, [rdx + 0x3c]
inc edx
xor byte [rbp + rcx - 0x59], al
cmp edx, 6
jb 0x180014cd0
xorps xmm0, xmm0
mov byte [rbp - 0x53], bl
mov rdi, 0xffffffffffffffff
mov qword [rbp - 0x39], rbx
movups xmmword [rbp - 0x49], xmm0
mov r8, rdi
mov qword [rbp - 0x31], rbx
lea rax, [rbp - 0x59]
inc r8
cmp byte [rax + r8], bl
jne 0x180014d01
lea rdx, [rbp - 0x59]
lea rcx, [rbp - 0x49]
call fcn.180002d60
mov rcx, qword [0x1802b5f40]
lea rdx, [rbp - 0x49]
mov r8d, 1
call fcn.1800029b0
movdqa xmm0, xmmword [0x180100090]
xor eax, eax
movdqu xmmword [rbp - 0x49], xmm0
mov byte [rbp - 0x35], al
mov edx, ebx
mov dword [rbp - 0x39], 0x3b212f21
nop dword [rax + rax]
movsxd rcx, edx
lea eax, [rdx + 0x3c]
inc edx
xor byte [rbp + rcx - 0x49], al
cmp edx, 0x14
jb 0x180014d50
lea rdx, [0x1802b42bf]
mov byte [rbp - 0x35], bl
lea rcx, [rbp - 0x49]
call fcn.180045270
movss xmm6, dword [0x1800ffa2c]
xorps xmm1, xmm1
movaps xmm0, xmm6
call fcn.18002ab70
movdqa xmm0, xmmword [0x1801000b0]
xor eax, eax
movdqu xmmword [rbp - 0x49], xmm0
mov byte [rbp - 0x35], al
mov edx, ebx
mov dword [rbp - 0x39], 0x3b212f21
nop dword [rax]
nop word [rax + rax]
movsxd rcx, edx
lea eax, [rdx + 0x3c]
inc edx
xor byte [rbp + rcx - 0x49], al
cmp edx, 0x14
jb 0x180014db0
lea rdx, [0x1802b42c9]
mov byte [rbp - 0x35], bl
lea rcx, [rbp - 0x49]
call fcn.180045270
movdqa xmm0, xmmword [0x1801000a0]
xor eax, eax
movdqu xmmword [rbp - 0x49], xmm0
mov byte [rbp - 0x35], al
mov edx, ebx
mov dword [rbp - 0x39], 0x3b212f21
nop
movsxd rcx, edx
lea eax, [rdx + 0x3c]
inc edx
xor byte [rbp + rcx - 0x49], al
cmp edx, 0x14
jb 0x180014df0
lea rdx, [0x1802b42d2]
mov byte [rbp - 0x35], bl
lea rcx, [rbp - 0x49]
call fcn.180045270
xorps xmm1, xmm1
movaps xmm0, xmm6
call fcn.18002ab70
movdqa xmm0, xmmword [0x180100080]
xor eax, eax
movdqu xmmword [rbp - 0x49], xmm0
mov byte [rbp - 0x35], al
mov edx, ebx
mov dword [rbp - 0x39], 0x3b212f21
nop word [rax + rax]
movsxd rcx, edx
lea eax, [rdx + 0x3c]
inc edx
xor byte [rbp + rcx - 0x49], al
cmp edx, 0x14
jb 0x180014e40
lea rdx, [0x1802b86d6]
mov byte [rbp - 0x35], bl
lea rcx, [rbp - 0x49]
call fcn.180045270
movdqa xmm0, xmmword [0x1801000f0]
xor eax, eax
movdqu xmmword [rbp - 0x49], xmm0
mov byte [rbp - 0x2f], al
mov edx, ebx
mov dword [rbp - 0x39], 0x6c6d2323
mov dword [rbp - 0x35], 0x313f3811
mov word [rbp - 0x31], 0x213b
nop dword [rax]
movsxd rcx, edx
lea eax, [rdx + 0x3c]
inc edx
xor byte [rbp + rcx - 0x49], al
cmp edx, 0x1a
jb 0x180014e90
lea rdx, [0x1802b86dc]
mov byte [rbp - 0x2f], bl
lea rcx, [rbp - 0x49]
call fcn.180045270
xorps xmm1, xmm1
movaps xmm0, xmm6
call fcn.18002ab70
movdqa xmm0, xmmword [0x1801000c0]
xor eax, eax
movdqu xmmword [rbp - 0x49], xmm0
mov byte [rbp - 0x35], al
mov edx, ebx
mov dword [rbp - 0x39], 0x3b212f21
nop word [rax + rax]
movsxd rcx, edx
lea eax, [rdx + 0x3c]
inc edx
xor byte [rbp + rcx - 0x49], al
cmp edx, 0x14
jb 0x180014ee0
lea rdx, [0x1802b42ca]
mov byte [rbp - 0x35], bl
lea rcx, [rbp - 0x49]
call fcn.180045270
movss xmm7, dword [0x1800ffa48]
movaps xmm0, xmm7
call fcn.18002b4e0
xor eax, eax
mov dword [rbp - 0x59], 0xd894bad4
mov byte [rbp - 0x4d], al
mov edx, ebx
mov dword [rbp - 0x55], 0xd7abc5de
mov dword [rbp - 0x51], 0xcafba1ea
movsxd rcx, edx
lea eax, [rdx + 0x3c]
inc edx
xor byte [rbp + rcx - 0x59], al
cmp edx, 0xc
jb 0x180014f30
mov r9d, 5
mov byte [rbp - 0x4d], bl
lea r8, [rbp + 7]
mov dword [rsp + 0x20], edi
lea rdx, [0x1802ba748]
lea rcx, [rbp - 0x59]
call fcn.180049420
movaps xmm0, xmm7
call fcn.18002b4e0
xor eax, eax
mov dword [rbp - 0x59], 0xd894bad4
mov byte [rbp - 0x4d], al
mov edx, ebx
mov dword [rbp - 0x55], 0xc0abc5de
mov dword [rbp - 0x51], 0xcafba1ec
nop word [rax + rax]
movsxd rcx, edx
lea eax, [rdx + 0x3c]
inc edx
xor byte [rbp + rcx - 0x59], al
cmp edx, 0xc
jb 0x180014f90
mov r9d, 4
mov byte [rbp - 0x4d], bl
lea r8, [rbp - 0x19]
mov dword [rsp + 0x20], edi
lea rdx, [0x1802ba74c]
lea rcx, [rbp - 0x59]
call fcn.180049420
call fcn.18004d860
mov edx, ebx
mov dword [rbp - 0x59], 0x4b4a586f
mov dword [rbp - 0x55], 0x252f29
nop word [rax + rax]
movsxd rcx, edx
lea eax, [rdx + 0x3c]
inc edx
xor byte [rbp + rcx - 0x59], al
cmp edx, 7
jb 0x180014fe0
xorps xmm0, xmm0
mov byte [rbp - 0x52], bl
movups xmmword [rbp - 0x49], xmm0
mov qword [rbp - 0x39], rbx
lea rax, [rbp - 0x59]
mov qword [rbp - 0x31], rbx
inc rdi
cmp byte [rax + rdi], bl
jne 0x180015007
mov r8, rdi
lea rdx, [rbp - 0x59]
lea rcx, [rbp - 0x49]
call fcn.180002d60
mov rcx, qword [0x1802b5f40]
lea rdx, [rbp - 0x49]
mov r8d, 2
call fcn.1800029b0
movaps xmm0, xmm7
call fcn.18002b4e0
mov edx, ebx
mov dword [rbp - 0x59], 0xf100c19
mov word [rbp - 0x55], 0x26
nop dword [rax]
movsxd rcx, edx
lea eax, [rdx + 0x3c]
inc edx
xor byte [rbp + rcx - 0x59], al
cmp edx, 5
jb 0x180015050
xor eax, eax
mov byte [rbp - 0x54], bl
mov byte [rbp - 0x3d], al
mov edx, ebx
mov dword [rbp - 0x49], 0xd894bad4
mov dword [rbp - 0x45], 0xcfaac5de
mov dword [rbp - 0x41], 0xf3dda0c7
movsxd rcx, edx
lea eax, [rdx + 0x3c]
inc edx
xor byte [rbp + rcx - 0x49], al
cmp edx, 0xc
jb 0x180015080
movss xmm6, dword [0x18007f874]
lea rax, [rbp - 0x59]
movss xmm3, dword [0x1800ffa60]
lea rdx, [0x1802b42cc]
movss xmm2, dword [0x1800ff9d4]
lea rcx, [rbp - 0x49]
movss dword [rsp + 0x28], xmm6
mov qword [rsp + 0x20], rax
mov byte [rbp - 0x3d], bl
call fcn.18004fcf0
movaps xmm0, xmm7
call fcn.18002b4e0
mov edx, ebx
mov dword [rbp - 0x59], 0xf100c19
mov word [rbp - 0x55], 0x26
nop dword [rax]
nop word [rax + rax]
movsxd rcx, edx
lea eax, [rdx + 0x3c]
inc edx
xor byte [rbp + rcx - 0x59], al
cmp edx, 5
jb 0x1800150f0
xor eax, eax
mov byte [rbp - 0x54], bl
mov byte [rbp - 0x3d], al
mov edx, ebx
mov dword [rbp - 0x49], 0xd7b1bdd5
mov dword [rbp - 0x45], 0xf4aac7e7
mov dword [rbp - 0x41], 0xfce0a2d9
movsxd rcx, edx
lea eax, [rdx + 0x3c]
inc edx
xor byte [rbp + rcx - 0x49], al
cmp edx, 0xc
jb 0x180015120
movss xmm3, dword [0x1800ffa64]
lea rax, [rbp - 0x59]
movss xmm2, dword [0x1800ff9d4]
lea rdx, [0x1802b429c]
movss dword [rsp + 0x28], xmm6
lea rcx, [rbp - 0x49]
mov qword [rsp + 0x20], rax
mov byte [rbp - 0x3d], bl
call fcn.18004fcf0
movaps xmm0, xmm7
call fcn.18002b4e0
mov edx, ebx
mov dword [rbp - 0x59], 0xf100c19
mov word [rbp - 0x55], 0x26
nop word [rax + rax]
movsxd rcx, edx
lea eax, [rdx + 0x3c]
inc edx
xor byte [rbp + rcx - 0x59], al
cmp edx, 5
jb 0x180015180
xor eax, eax
mov byte [rbp - 0x54], bl
mov byte [rbp - 0x3d], al
mov edx, ebx
mov dword [rbp - 0x49], 0xdaad9fda
mov dword [rbp - 0x45], 0xc3abf4d6
mov dword [rbp - 0x41], 0xe1fca0db
movsxd rcx, edx
lea eax, [rdx + 0x3c]
inc edx
xor byte [rbp + rcx - 0x49], al
cmp edx, 0xc
jb 0x1800151b0
movss xmm3, dword [0x1800ffa34]
lea rax, [rbp - 0x59]
movss xmm2, dword [0x1800ff9d4]
lea rdx, [0x1802b42dc]
movss dword [rsp + 0x28], xmm6
lea rcx, [rbp - 0x49]
mov qword [rsp + 0x20], rax
mov byte [rbp - 0x3d], bl
call fcn.18004fcf0
movaps xmm0, xmm7
call fcn.18002b4e0
mov edx, ebx
mov dword [rbp - 0x59], 0xf100c19
mov word [rbp - 0x55], 0x26
nop word [rax + rax]
movsxd rcx, edx
lea eax, [rdx + 0x3c]
inc edx
xor byte [rbp + rcx - 0x59], al
cmp edx, 5
jb 0x180015210
xor eax, eax
mov byte [rbp - 0x54], bl
mov byte [rbp - 0x3d], al
mov edx, ebx
mov dword [rbp - 0x49], 0xd69697d5
mov dword [rbp - 0x45], 0xf1a5fdea
mov dword [rbp - 0x41], 0xc1fda2d3
movsxd rcx, edx
lea eax, [rdx + 0x3c]
inc edx
xor byte [rbp + rcx - 0x49], al
cmp edx, 0xc
jb 0x180015240
movss xmm3, dword [0x1800ff9b0]
lea rax, [rbp - 0x59]
movss dword [rsp + 0x28], xmm6
lea rdx, [0x1802b42f0]
movaps xmm2, xmm6
mov qword [rsp + 0x20], rax
lea rcx, [rbp - 0x49]
mov byte [rbp - 0x3d], bl
call fcn.18004fcf0
movdqa xmm0, xmmword [0x1801006d0]
xor eax, eax
movdqu xmmword [rbp - 0x49], xmm0
mov byte [rbp - 0x33], al
mov edx, ebx
mov dword [rbp - 0x39], 0xaaefe5aa
mov word [rbp - 0x35], 0xdeec
nop
movsxd rcx, edx
lea eax, [rdx + 0x3c]
inc edx
xor byte [rbp + rcx - 0x49], al
cmp edx, 0x16
jb 0x1800152a0
lea rcx, [rbp - 0x49]
mov byte [rbp - 0x33], bl
call fcn.180050240
movdqa xmm0, xmmword [str.tRSZ_]
mov edx, ebx
movdqu xmmword [rbp - 0x49], xmm0
mov dword [rbp - 0x39], 0xd3c1a5c3
mov dword [rbp - 0x35], 0xc7dcb5
nop word [rax + rax]
movsxd rcx, edx
lea eax, [rdx + 0x3c]
inc edx
xor byte [rbp + rcx - 0x49], al
cmp edx, 0x17
jb 0x1800152e0
lea rcx, [rbp - 0x49]
mov byte [rbp - 0x32], bl
call fcn.180050240
movdqa xmm0, xmmword [0x1801006e0]
movdqa xmm1, xmmword [0x1801006a0]
movdqu xmmword [rbp - 0x49], xmm0
mov dword [rbp - 0x29], 0xb9d8fab4
movdqu xmmword [rbp - 0x39], xmm1
mov dword [rbp - 0x25], 0xdb86e8ec
mov dword [rbp - 0x21], 0xecde81e4
mov word [rbp - 0x1d], 0x41
nop dword [rax]
nop word [rax + rax]
movsxd rcx, ebx
lea eax, [rbx + 0x3c]
inc ebx
xor byte [rbp + rcx - 0x49], al
cmp ebx, 0x2d
jb 0x180015340
lea rcx, [rbp - 0x49]
mov byte [rbp - 0x1c], 0
call fcn.180050240
mov rcx, qword [rbp + 0x2f]
xor rcx, rsp
call fcn.1800553d0
lea r11, [rsp + 0xe0]
mov rbx, qword [r11 + 0x10]
mov rdi, qword [r11 + 0x18]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
mov rsp, r11
pop rbp
ret