Function at 0x18006d7d0
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
push rbp
push rsi
push rdi
push r12
push r14
lea rbp, [rax - 0x38]
sub rsp, 0x110
movaps xmmword [rax - 0x38], xmm6
lea r12, [0x1800c70f0]
movaps xmmword [rax - 0x48], xmm7
xor r14d, r14d
cmp byte [0x1800c9768], r14b
mov esi, 0xff
movss xmm7, dword [0x180005f70]
movaps xmmword [rax - 0x58], xmm8
xorps xmm8, xmm8
movaps xmmword [rax - 0x68], xmm9
movss xmm9, dword [0x180005f00]
movaps xmmword [rax - 0x78], xmm10
movaps xmmword [rax - 0x88], xmm11
movaps xmmword [rax - 0x98], xmm12
movaps xmmword [rax - 0xa8], xmm13
movaps xmmword [rax - 0xb8], xmm14
cvttss2si eax, dword [0x1800c713c]
movaps xmmword [rsp + 0x70], xmm15
movd xmm13, eax
cvttss2si eax, dword [0x1800c7140]
cvtdq2ps xmm13, xmm13
movd xmm14, eax
mulss xmm13, dword [0x180005eec]
cvtdq2ps xmm14, xmm14
mulss xmm14, dword [0x180005eec]
je 0x18006d9e1
xor r9d, r9d
mov dword [rsp + 0x20], esi
xor r8d, r8d
lea rcx, [rsp + 0x50]
xor edx, edx
call fcn.1800b23ec
movaps xmm0, xmm13
movss dword [rsp + 0x20], xmm8
subss xmm0, dword [0x180005f78]
mov r9, rax
mov dword [rbp + 0x48], 0x41300000
lea r8, [rbp + 0x48]
mov dword [rbp + 0x4c], 0x40400000
lea rdx, [rbp + 0x50]
mov rcx, r12
movss dword [rbp + 0x50], xmm0
movaps xmm0, xmm14
subss xmm0, xmm9
movss dword [rbp + 0x54], xmm0
call fcn.1800b2f14
xor r9d, r9d
mov dword [rsp + 0x20], esi
xor r8d, r8d
lea rcx, [rsp + 0x50]
xor edx, edx
call fcn.1800b23ec
movaps xmm0, xmm13
movss dword [rsp + 0x20], xmm8
movaps xmm1, xmm14
mov dword [rbp + 0x48], 0x40400000
subss xmm1, dword [0x180005f78]
subss xmm0, xmm9
mov dword [rbp + 0x4c], 0x41300000
mov r9, rax
lea r8, [rbp + 0x48]
lea rdx, [rbp + 0x50]
mov rcx, r12
movss dword [rbp + 0x54], xmm1
movss dword [rbp + 0x50], xmm0
call fcn.1800b2f14
lea rdx, [0x1800c9798]
lea rcx, [rsp + 0x50]
call fcn.1800b23d0
movaps xmm1, xmm13
movss dword [rbp + 0x54], xmm14
subss xmm1, xmm7
movss dword [rsp + 0x20], xmm8
lea r9, [rsp + 0x50]
mov dword [rbp + 0x48], 0x41100000
lea r8, [rbp + 0x48]
mov dword [rbp + 0x4c], 0x3f800000
lea rdx, [rbp + 0x50]
mov rcx, r12
movss dword [rbp + 0x50], xmm1
call fcn.1800b2f14
lea rdx, [0x1800c9798]
lea rcx, [rsp + 0x50]
call fcn.1800b23d0
movaps xmm0, xmm14
movss dword [rbp + 0x50], xmm13
subss xmm0, xmm7
movss dword [rsp + 0x20], xmm8
lea r9, [rsp + 0x50]
mov dword [rbp + 0x48], 0x3f800000
lea r8, [rbp + 0x48]
mov dword [rbp + 0x4c], 0x41100000
lea rdx, [rbp + 0x50]
mov rcx, r12
movss dword [rbp + 0x54], xmm0
call fcn.1800b2f14
cmp byte [0x1800c96d0], r14b
je 0x18006da28
lea rdx, [0x1800c9730]
lea rcx, [rsp + 0x50]
call fcn.1800b23d0
movss xmm2, dword [0x1800c9700]
lea r9, [rsp + 0x50]
lea rdx, [rbp + 0x48]
movss dword [rbp + 0x48], xmm13
mov rcx, r12
movss dword [rbp + 0x4c], xmm14
mov dword [rsp + 0x20], 0x100
call fcn.1800b2940
cmp byte [0x1800c9d88], r14b
je 0x18006db99
mov dword [rsp + 0x50], 0x43465661
lea r9, [rsp + 0x50]
mov dword [rsp + 0x54], 0x4d184553
mov r8d, r14d
mov dword [rsp + 0x58], 0x3d595653
mov eax, 0x1f7047dd
mul r8d
mov eax, r8d
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul ecx, eax, 0x39
mov al, r8b
inc r8d
sub al, cl
add al, 0x32
xor byte [r9], al
inc r9
cmp r8d, 0xc
jl 0x18006da55
mov word [rbp + 0x48], 0x4017
lea r9, [rbp + 0x48]
mov byte [rbp + 0x4a], 0x34
mov r8d, r14d
mov eax, 0x1f7047dd
mul r8d
mov eax, r8d
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul ecx, eax, 0x39
mov al, r8b
inc r8d
sub al, cl
add al, 0x32
xor byte [r9], al
inc r9
cmp r8d, 3
jl 0x18006da96
lea rdx, [rsp + 0x50]
lea rcx, [rbp + 0x48]
call fcn.180045474
mov edi, dword [0x1800c7f30]
lea r9, [rsp + 0x50]
mov esi, dword [0x1800c7f2c]
mov rbx, rax
mov r8d, r14d
mov dword [rsp + 0x50], 0x150e4017
mov dword [rsp + 0x54], 0x5d0a0713
mov dword [rsp + 0x58], 0xf0c1e00
mov word [rsp + 0x5c], 0x3f5a
mov eax, 0x1f7047dd
mul r8d
mov eax, r8d
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul ecx, eax, 0x39
mov al, r8b
inc r8d
sub al, cl
add al, 0x32
xor byte [r9], al
inc r9
cmp r8d, 0xe
jl 0x18006db0a
mov edx, 0xff
lea rcx, [rsp + 0x40]
mov r9d, edx
mov dword [rsp + 0x20], edx
mov r8d, edx
call fcn.1800b23ec
movss xmm2, dword [0x180005f90]
lea rcx, [rsp + 0x50]
mov dword [rsp + 0x38], edi
lea rdx, [rbp + 0x48]
mov dword [rsp + 0x30], esi
mov r9, rax
movd r8d, xmm2
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], rcx
mov rcx, r12
mov dword [rbp + 0x48], 0x41200000
mov dword [rbp + 0x4c], 0x41200000
call fcn.1800b34d8
mov esi, 0xff
cmp byte [0x1800c9370], r14b
lea rbx, [0x1800c71a0]
mov edi, r14d
je 0x18006dc96
cmp byte [0x1800c7f18], r14b
je 0x18006dc96
movsxd rcx, dword [0x1800c93a0]
lea eax, [rcx - 1]
cmp eax, 0xfe
ja 0x18006dc96
cmp byte [rcx + rbx + 0xc], r14b
je 0x18006dc96
mov dword [rsp + 0x50], 0x5c5a527f
lea r9, [rsp + 0x50]
mov dword [rsp + 0x54], 0x58544246
mov r8d, r14d
mov dword [rsp + 0x58], 0x3d585e4e
mov eax, 0x1f7047dd
mul r8d
mov eax, r8d
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul ecx, eax, 0x39
mov al, r8b
inc r8d
sub al, cl
add al, 0x32
xor byte [r9], al
inc r9
cmp r8d, 0xc
jl 0x18006dbfd
movaps xmm3, xmm8
movss dword [rsp + 0x20], xmm9
movaps xmm2, xmm8
lea rcx, [rsp + 0x40]
movaps xmm1, xmm9
call fcn.1800b243c
movss xmm2, dword [0x180005f8c]
lea rax, [rsp + 0x50]
mov qword [rsp + 0x28], rax
lea rdx, [rbp + 0x48]
movaps xmm0, xmm14
movd r8d, xmm2
subss xmm0, xmm8
movss dword [rbp + 0x48], xmm13
lea rax, [rsp + 0x40]
mov r9d, 6
mov rcx, r12
mov qword [rsp + 0x20], rax
movss dword [rbp + 0x4c], xmm0
call fcn.1800b36f8
mov edi, 1
cmp byte [0x1800cc9e0], r14b
movss xmm10, dword [0x180005ecc]
movss xmm11, dword [0x180005fc8]
movss xmm12, dword [0x180005fe8]
je 0x18006ded3
cmp byte [0x1800c7f2b], r14b
jne 0x18006ded3
movss xmm7, dword [0x1800c7f60]
movss xmm6, dword [0x1800c7f64]
movaps xmm0, xmm7
divss xmm0, dword [0x180005f88]
subss xmm7, xmm0
comiss xmm7, xmm6
jb 0x18006ded3
comiss xmm6, xmm8
jbe 0x18006ded3
comiss xmm7, xmm8
movss xmm0, dword [0x1800c7f8c]
jbe 0x18006dd17
comiss xmm9, xmm0
jbe 0x18006dd17
movaps xmm1, xmm9
jmp 0x18006dd21
comiss xmm0, xmm8
jbe 0x18006dd32
movaps xmm1, xmm8
movaps xmm2, xmm10
call fcn.180029640
movss dword [0x1800c7f8c], xmm0
and dword [rbp + 0x48], r14d
lea rax, [rbp + 0x48]
divss xmm6, xmm7
lea rcx, [rbp + 0x50]
mov dword [rbp + 0x58], 0x3f800000
lea rbx, [rbp + 0x58]
mulss xmm6, xmm11
addss xmm6, xmm9
divss xmm6, xmm11
comiss xmm8, xmm6
movaps xmm15, xmm6
movss dword [rbp + 0x50], xmm6
mulss xmm15, xmm12
cmovbe rax, rcx
comiss xmm6, xmm9
cmovbe rbx, rax
ucomiss xmm0, xmm8
jp 0x18006dd86
je 0x18006decc
xor r9d, r9d
mov dword [rsp + 0x20], esi
xor r8d, r8d
lea rcx, [rsp + 0x60]
xor edx, edx
call fcn.1800b23ec
lea ecx, [rdi*8]
movss dword [rsp + 0x20], xmm8
movd xmm7, ecx
lea r8, [rsp + 0x40]
cvtdq2ps xmm7, xmm7
mov dword [rsp + 0x40], 0x42c80000
mov r9, rax
mov dword [rsp + 0x44], 0x40000000
lea rdx, [rsp + 0x50]
mov rcx, r12
movaps xmm6, xmm13
subss xmm6, dword [0x180005fa8]
addss xmm7, xmm14
movss dword [rsp + 0x50], xmm6
movaps xmm0, xmm7
subss xmm0, xmm9
movss dword [rsp + 0x54], xmm0
call fcn.1800b2f14
xor r9d, r9d
mov dword [rsp + 0x20], esi
xor r8d, r8d
lea rcx, [rsp + 0x60]
xor edx, edx
call fcn.1800b23ec
movaps xmm0, xmm7
movss dword [rsp + 0x40], xmm6
addss xmm0, xmm9
movss dword [rsp + 0x20], xmm8
mov r9, rax
mov dword [rsp + 0x50], 0x42c80000
lea r8, [rsp + 0x50]
mov dword [rsp + 0x54], 0x40800000
lea rdx, [rsp + 0x40]
mov rcx, r12
movss dword [rsp + 0x44], xmm0
call fcn.1800b2f14
movss xmm0, dword [0x1800c7f8c]
lea rcx, [rsp + 0x60]
movaps xmm2, xmm12
mulss xmm0, xmm12
subss xmm2, xmm15
movaps xmm3, xmm8
movaps xmm1, xmm15
movss dword [rsp + 0x20], xmm0
call fcn.1800b243c
movss xmm0, dword [rbx]
lea r8, [rsp + 0x50]
mulss xmm0, xmm11
lea rdx, [rsp + 0x40]
mov r9, rax
mov rcx, r12
movss dword [rsp + 0x44], xmm7
movss dword [rsp + 0x20], xmm8
movss dword [rsp + 0x50], xmm0
movaps xmm0, xmm13
subss xmm0, dword [0x180005fa4]
mov dword [rsp + 0x54], 0x40400000
movss dword [rsp + 0x40], xmm0
call fcn.1800b2f14
inc edi
lea rbx, [0x1800c71a0]
cmp byte [0x1800c9370], r14b
je 0x18006e0f9
movsxd rcx, dword [0x1800c93a0]
lea eax, [rcx - 1]
cmp eax, 0xfe
ja 0x18006e0f9
cmp byte [rcx + rbx + 0xc], r14b
je 0x18006e0f9
mov rcx, qword [0x1800c8b98]
call fcn.1800c2414
call rax
mov rcx, qword [0x1800cd360]
movaps xmm6, xmm0
add rcx, qword [0x1800c8868]
call fcn.18002c660
subss xmm6, xmm0
movss xmm0, dword [0x1800c7f8c]
comiss xmm6, xmm8
jbe 0x18006df42
comiss xmm9, xmm0
jbe 0x18006df42
movaps xmm1, xmm9
jmp 0x18006df4c
comiss xmm0, xmm8
jbe 0x18006df5d
movaps xmm1, xmm8
movaps xmm2, xmm10
call fcn.180029640
movss dword [0x1800c7f8c], xmm0
divss xmm6, dword [0x180005ef8]
and dword [rbp + 0x48], r14d
lea rax, [rbp + 0x48]
lea rcx, [rbp + 0x50]
mov dword [rbp + 0x58], 0x3f800000
lea rbx, [rbp + 0x58]
mulss xmm6, xmm11
addss xmm6, xmm9
divss xmm6, xmm11
comiss xmm8, xmm6
movaps xmm15, xmm6
movss dword [rbp + 0x50], xmm6
mulss xmm15, xmm12
cmovbe rax, rcx
comiss xmm6, xmm9
cmovbe rbx, rax
ucomiss xmm0, xmm8
jp 0x18006dfb5
je 0x18006e0f9
xor r9d, r9d
mov dword [rsp + 0x20], esi
xor r8d, r8d
lea rcx, [rsp + 0x60]
xor edx, edx
call fcn.1800b23ec
lea ecx, [rdi*8]
movss dword [rsp + 0x20], xmm8
movd xmm7, ecx
lea r8, [rsp + 0x50]
cvtdq2ps xmm7, xmm7
mov dword [rsp + 0x50], 0x42c80000
mov r9, rax
mov dword [rsp + 0x54], 0x40000000
lea rdx, [rsp + 0x40]
mov rcx, r12
movaps xmm6, xmm13
subss xmm6, dword [0x180005fa8]
addss xmm7, xmm14
movss dword [rsp + 0x40], xmm6
movaps xmm0, xmm7
subss xmm0, xmm9
movss dword [rsp + 0x44], xmm0
call fcn.1800b2f14
xor r9d, r9d
mov dword [rsp + 0x20], esi
xor r8d, r8d
lea rcx, [rsp + 0x60]
xor edx, edx
call fcn.1800b23ec
movaps xmm0, xmm7
movss dword [rsp + 0x40], xmm6
addss xmm0, xmm9
movss dword [rsp + 0x20], xmm8
mov r9, rax
mov dword [rsp + 0x50], 0x42c80000
lea r8, [rsp + 0x50]
mov dword [rsp + 0x54], 0x40800000
lea rdx, [rsp + 0x40]
mov rcx, r12
movss dword [rsp + 0x44], xmm0
call fcn.1800b2f14
movss xmm0, dword [0x1800c7f8c]
lea rcx, [rsp + 0x60]
movaps xmm2, xmm12
mulss xmm0, xmm12
subss xmm2, xmm15
movaps xmm3, xmm8
movaps xmm1, xmm15
movss dword [rsp + 0x20], xmm0
call fcn.1800b243c
movss xmm0, dword [rbx]
lea r8, [rsp + 0x50]
mulss xmm0, xmm11
lea rdx, [rsp + 0x40]
mov r9, rax
mov rcx, r12
movss dword [rsp + 0x44], xmm7
movss dword [rsp + 0x20], xmm8
movss dword [rsp + 0x50], xmm0
movaps xmm0, xmm13
subss xmm0, dword [0x180005fa4]
mov dword [rsp + 0x54], 0x40400000
movss dword [rsp + 0x40], xmm0
call fcn.1800b2f14
cmp byte [0x1800cd0d0], r14b
je 0x18006e40b
movss xmm11, dword [0x1800c7f38]
comiss xmm11, xmm8
movss xmm6, dword [0x1800c7fa4]
jbe 0x18006e129
comiss xmm9, xmm6
jbe 0x18006e129
movaps xmm1, xmm9
jmp 0x18006e133
comiss xmm6, xmm8
jbe 0x18006e14a
movaps xmm1, xmm8
movaps xmm2, xmm10
movaps xmm0, xmm6
call fcn.180029640
movss dword [0x1800c7fa4], xmm0
movaps xmm6, xmm0
movss xmm7, dword [0x1800c7f3c]
comiss xmm7, xmm8
movss xmm3, dword [0x1800c7fa0]
jbe 0x18006e16c
comiss xmm9, xmm3
jbe 0x18006e16c
movaps xmm1, xmm9
jmp 0x18006e176
comiss xmm3, xmm8
jbe 0x18006e18d
movaps xmm1, xmm8
movaps xmm2, xmm10
movaps xmm0, xmm3
call fcn.180029640
movss dword [0x1800c7fa0], xmm0
movaps xmm3, xmm0
divss xmm11, dword [0x1800c7f40]
and dword [rbp + 0x48], r14d
lea rax, [rbp + 0x50]
lea rcx, [rbp + 0x48]
mov dword [rbp + 0x58], 0x3f800000
movss xmm15, dword [0x180005fe0]
comiss xmm8, xmm11
movaps xmm10, xmm11
movss dword [rbp + 0x50], xmm11
mulss xmm10, xmm12
cmovbe rcx, rax
lea rax, [rbp + 0x58]
comiss xmm11, xmm9
cmovbe rax, rcx
ucomiss xmm6, xmm8
movss xmm11, dword [rax]
jp 0x18006e1e6
je 0x18006e2de
mulss xmm6, xmm12
lea rcx, [rsp + 0x60]
movaps xmm3, xmm8
movaps xmm2, xmm8
movaps xmm1, xmm8
movss dword [rsp + 0x20], xmm6
call fcn.1800b243c
movaps xmm0, xmm13
movss dword [rsp + 0x20], xmm8
movaps xmm1, xmm14
mov dword [rbp + 0x48], 0x43c90000
subss xmm1, dword [0x180005ff8]
subss xmm0, xmm15
mov dword [rbp + 0x4c], 0x40c00000
mov r9, rax
lea r8, [rbp + 0x48]
lea rdx, [rbp + 0x50]
mov rcx, r12
movss dword [rbp + 0x54], xmm1
movss dword [rbp + 0x50], xmm0
call fcn.1800b2f14
movss xmm0, dword [0x1800c7fa4]
lea rcx, [rsp + 0x60]
movaps xmm2, xmm12
mulss xmm0, xmm12
subss xmm2, xmm10
movaps xmm3, xmm8
movaps xmm1, xmm10
movss dword [rsp + 0x20], xmm0
call fcn.1800b243c
mulss xmm11, dword [0x180005ff0]
lea r8, [rbp + 0x48]
mov r9, rax
lea rdx, [rbp + 0x50]
movaps xmm0, xmm13
movss dword [rsp + 0x20], xmm8
subss xmm0, dword [0x180005fdc]
movaps xmm1, xmm14
movss dword [rbp + 0x48], xmm11
subss xmm1, dword [0x180005ff4]
mov rcx, r12
mov dword [rbp + 0x4c], 0x40800000
movss dword [rbp + 0x50], xmm0
movss dword [rbp + 0x54], xmm1
call fcn.1800b2f14
movss xmm3, dword [0x1800c7fa0]
movss xmm7, dword [0x1800c7f3c]
divss xmm7, dword [0x1800c7f44]
and dword [rbp + 0x48], r14d
lea rax, [rbp + 0x50]
lea rcx, [rbp + 0x48]
mov dword [rbp + 0x58], 0x3f800000
comiss xmm8, xmm7
movaps xmm6, xmm7
movss dword [rbp + 0x50], xmm7
mulss xmm6, xmm12
cmovbe rcx, rax
lea rax, [rbp + 0x58]
comiss xmm7, xmm9
cmovbe rax, rcx
ucomiss xmm3, xmm8
movss xmm7, dword [rax]
jp 0x18006e32a
je 0x18006e40b
mulss xmm3, xmm12
lea rcx, [rsp + 0x60]
movaps xmm2, xmm8
movaps xmm1, xmm8
movss dword [rsp + 0x20], xmm3
movaps xmm3, xmm8
call fcn.1800b243c
movaps xmm0, xmm13
movss dword [rsp + 0x20], xmm8
movaps xmm1, xmm14
mov dword [rbp + 0x48], 0x43c90000
subss xmm1, dword [0x180006000]
subss xmm0, xmm15
mov dword [rbp + 0x4c], 0x40c00000
mov r9, rax
lea r8, [rbp + 0x48]
lea rdx, [rbp + 0x50]
mov rcx, r12
movss dword [rbp + 0x54], xmm1
movss dword [rbp + 0x50], xmm0
call fcn.1800b2f14
movss xmm0, dword [0x1800c7fa0]
lea rcx, [rsp + 0x60]
mulss xmm0, xmm12
movaps xmm3, xmm8
subss xmm12, xmm6
movaps xmm1, xmm6
movss dword [rsp + 0x20], xmm0
movaps xmm2, xmm12
call fcn.1800b243c
subss xmm13, dword [0x180005fdc]
subss xmm14, dword [0x180005ffc]
mulss xmm7, dword [0x180005ff0]
lea r8, [rbp + 0x48]
mov r9, rax
lea rdx, [rbp + 0x50]
mov rcx, r12
movss dword [rsp + 0x20], xmm8
movss dword [rbp + 0x50], xmm13
movss dword [rbp + 0x54], xmm14
movss dword [rbp + 0x48], xmm7
mov dword [rbp + 0x4c], 0x40800000
call fcn.1800b2f14
movaps xmm15, xmmword [rsp + 0x70]
lea r11, [rsp + 0x110]
mov rbx, qword [r11 + 0x30]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
movaps xmm11, xmmword [r11 - 0x60]
movaps xmm12, xmmword [r11 - 0x70]
movaps xmm13, xmmword [r11 - 0x80]
movaps xmm14, xmmword [r11 - 0x90]
mov rsp, r11
pop r14
pop r12
pop rdi
pop rsi
pop rbp
ret