Function at 0x1400147d0
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
push rbp
lea rbp, [rax - 0x1c8]
sub rsp, 0x2c0
cmp byte [0x1400cdd21], 0
je 0x140015241
mov qword [rax - 0x10], rbx
mov qword [rax - 0x20], rdi
mov qword [rax - 0x28], r14
xor r14d, r14d
cmp byte [0x1400cdd30], r14b
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
movaps xmmword [rax - 0x58], xmm8
xorps xmm8, xmm8
movaps xmmword [rax - 0x68], xmm9
movss xmm9, dword [0x1400bd3d4]
je 0x1400148e5
mov rax, qword [0x140125820]
movss xmm7, dword [rax + 0x10]
movss xmm6, dword [rax + 0x14]
mulss xmm7, xmm9
mulss xmm6, xmm9
call fcn.14001df80
movaps xmm0, xmmword [0x1400bdcb0]
lea rcx, [rbp - 0x70]
movups xmmword [rbp - 0x70], xmm0
mov rbx, rax
call fcn.14001bb30
movss dword [rbp + 0x1d0], xmm7
mov edi, eax
movss dword [rbp + 0x1d4], xmm6
test eax, 0xff000000
je 0x1400148e5
movss xmm2, dword [0x1400cdd28]
comiss xmm8, xmm2
jae 0x1400148e5
movss xmm0, dword [0x1400bd49c]
subss xmm2, xmm9
mov dword [rsp + 0x28], 0x17
lea rdx, [rbp + 0x1d0]
xorps xmm3, xmm3
movss dword [rsp + 0x20], xmm0
mov rcx, rbx
call fcn.14003b020
movss xmm0, dword [0x1400bd440]
mov r9d, edi
mov r8d, dword [rbx + 0x78]
mov rcx, rbx
mov rdx, qword [rbx + 0x80]
movss dword [rsp + 0x28], xmm0
mov dword [rsp + 0x20], 1
call fcn.1400396a0
mov dword [rbx + 0x78], r14d
cmp byte [0x1400cdd4c], r14b
je 0x140015207
mov rax, qword [0x140125810]
test rax, rax
jne 0x14001491e
mov ecx, 0x4f0
call fcn.14007a014
mov rcx, rax
mov qword [rbp + 0x1d0], rax
call fcn.1400152b0
mov qword [0x140125810], rax
mov rdi, qword [rax + 0x40]
mov qword [rbp + 0x1d0], r14
call fcn.140019950
mov ebx, dword [0x140125a94]
cmp byte [rax], r14b
jne 0x140014940
mov rbx, qword [0x140125aa0]
call fcn.140019950
mov r9d, 8
lea r8, [rbp + 0x1d0]
mov rdx, rdi
cmp byte [rax], r14b
je 0x140014963
mov ecx, ebx
call fcn.140077290
jmp 0x140014975
mov rcx, qword [0x140125aa0]
mov qword [rsp + 0x20], r14
call qword [sym.imp.ntdll.dll_NtReadVirtualMemory]
mov rax, qword [rbp + 0x1d0]
test rax, rax
je 0x140015207
mov qword [rsp + 0x2b0], rsi
lea rdi, [rax + 8]
mov qword [rbp + 0x1d8], r14
call fcn.140019950
mov ebx, dword [0x140125a94]
cmp byte [rax], r14b
jne 0x1400149af
mov rbx, qword [0x140125aa0]
call fcn.140019950
mov r9d, 8
lea r8, [rbp + 0x1d8]
mov rdx, rdi
cmp byte [rax], r14b
je 0x1400149d2
mov ecx, ebx
call fcn.140077290
jmp 0x1400149e4
mov rcx, qword [0x140125aa0]
mov qword [rsp + 0x20], r14
call qword [sym.imp.ntdll.dll_NtReadVirtualMemory]
mov rsi, qword [rbp + 0x1d8]
test rsi, rsi
je 0x1400151ff
mov rax, qword [0x140125810]
test rax, rax
jne 0x140014a20
mov ecx, 0x4f0
call fcn.14007a014
mov rcx, rax
mov qword [rbp + 0x1d0], rax
call fcn.1400152b0
mov qword [0x140125810], rax
mov rdi, qword [rax + 0x98]
add rdi, rsi
call fcn.140019950
mov ebx, dword [0x140125a94]
cmp byte [rax], r14b
jne 0x140014a41
mov rbx, qword [0x140125aa0]
call fcn.140019950
mov r9d, 0xc
lea r8, [rbp - 0x60]
mov rdx, rdi
cmp byte [rax], r14b
je 0x140014a61
mov ecx, ebx
call fcn.140077290
jmp 0x140014a73
mov rcx, qword [0x140125aa0]
mov qword [rsp + 0x20], r14
call qword [sym.imp.ntdll.dll_NtReadVirtualMemory]
movaps xmmword [rsp + 0x250], xmm10
mov edi, r14d
movaps xmmword [rsp + 0x240], xmm11
movaps xmmword [rsp + 0x230], xmm12
movaps xmmword [rsp + 0x220], xmm13
movaps xmmword [rsp + 0x210], xmm14
movaps xmmword [rsp + 0x200], xmm15
nop dword [rax]
mov ecx, edi
call fcn.140014080
cmp qword [rax], rsi
je 0x1400151bb
mov ecx, edi
call fcn.140014080
mov ecx, edi
movsd xmm0, qword [rax + 0x28]
mov eax, dword [rax + 0x30]
movsd qword [rbp - 0x50], xmm0
mov dword [rbp - 0x48], eax
call fcn.140014080
movss xmm0, dword [rax + 0x30]
subss xmm0, dword [rbp - 0x58]
movss xmm1, dword [rax + 0x2c]
movss xmm2, dword [rax + 0x28]
subss xmm2, dword [rbp - 0x60]
subss xmm1, dword [rbp - 0x5c]
mulss xmm0, xmm0
mulss xmm2, xmm2
mulss xmm1, xmm1
addss xmm2, xmm1
addss xmm2, xmm0
xorps xmm0, xmm0
ucomiss xmm0, xmm2
ja 0x140014b23
xorps xmm12, xmm12
sqrtss xmm12, xmm2
jmp 0x140014b2f
movaps xmm0, xmm2
call fcn.1400a8ec8
movaps xmm12, xmm0
comiss xmm12, dword [0x1400cddb8]
ja 0x1400151bb
movss xmm10, dword [rbp - 0x50]
ucomiss xmm10, xmm8
jp 0x140014b4f
je 0x1400151bb
movss xmm9, dword [rbp - 0x4c]
ucomiss xmm9, xmm8
jp 0x140014b61
je 0x1400151bb
movss xmm7, dword [rbp - 0x48]
ucomiss xmm7, xmm8
jp 0x140014b72
je 0x1400151bb
mov ecx, edi
call fcn.140014080
mov ecx, edi
movss xmm6, dword [rax + 0x34]
call fcn.140014080
movss xmm14, dword [0x1400bd520]
movss xmm0, dword [rax + 0x38]
movss dword [rbp + 0x1d8], xmm0
movaps xmm0, xmm8
maxss xmm0, xmm6
minss xmm14, xmm0
ucomiss xmm14, xmm8
jp 0x140014bb4
je 0x1400151bb
mov ecx, edi
call fcn.140014080
movss xmm13, dword [0x1400bd4fc]
lea rdx, [rsp + 0x70]
movaps xmm0, xmm8
movss dword [rbp - 0x40], xmm10
lea rcx, [rbp + 0x60]
movss dword [rbp - 0x3c], xmm9
maxss xmm0, dword [rax + 0x3c]
mov qword [rsp + 0x70], r14
mov dword [rsp + 0x78], r14d
minss xmm13, xmm0
movaps xmm0, xmm7
subss xmm0, dword [0x1400bd428]
addss xmm7, dword [0x1400bd418]
movss dword [rbp + 0x1d0], xmm13
movss dword [rbp + 0x88], xmm0
movaps xmm0, xmm10
mov eax, dword [rbp + 0x88]
unpcklps xmm0, xmm9
movsd qword [rbp + 0x60], xmm0
movss dword [rbp - 0x38], xmm7
mov dword [rbp + 0x68], eax
call fcn.140014470
test al, al
jne 0x140014c43
movaps xmm7, xmm8
movaps xmm10, xmm8
jmp 0x140014c50
movss xmm7, dword [rsp + 0x70]
movss xmm10, dword [rsp + 0x74]
movsd xmm0, qword [rbp - 0x40]
lea rdx, [rbp - 0x80]
mov eax, dword [rbp - 0x38]
lea rcx, [rbp + 0x70]
movsd qword [rbp + 0x70], xmm0
mov qword [rbp - 0x80], r14
mov dword [rbp - 0x78], r14d
mov dword [rbp + 0x78], eax
call fcn.140014470
test al, al
jne 0x140014c83
movaps xmm0, xmm8
movaps xmm11, xmm8
jmp 0x140014c8e
movss xmm0, dword [rbp - 0x80]
movss xmm11, dword [rbp - 0x7c]
comiss xmm7, xmm8
jbe 0x1400151bb
comiss xmm0, xmm8
jbe 0x1400151bb
cmp byte [0x1400cdd4f], r14b
movaps xmm9, xmm10
subss xmm9, xmm11
movaps xmm15, xmm11
subss xmm15, xmm10
divss xmm9, dword [0x1400bd47c]
je 0x140014dc3
lea rcx, [0x1400cdd78]
call fcn.14001bb30
xorps xmm2, xmm2
lea rdx, str._.1f
cvtss2sd xmm2, xmm12
lea rcx, [rbp + 0x90]
mov ebx, eax
movq r8, xmm2
call fcn.140015250
call fcn.14001df80
movss xmm2, dword [0x1400bd460]
movaps xmm1, xmm9
movss xmm3, dword [0x1400bd4c0]
movaps xmm0, xmm7
mov rdx, rax
divss xmm1, xmm2
subss xmm0, xmm1
movaps xmm1, xmm11
subss xmm1, xmm3
movss dword [rbp + 0x1e0], xmm0
movss dword [rbp + 0x1e4], xmm1
test ebx, 0xff000000
je 0x140014dd3
lea rcx, [rbp + 0x90]
mov rax, 0xffffffffffffffff
inc rax
cmp byte [rcx + rax], r14b
jne 0x140014d51
lea rcx, [rbp + 0x90]
add rcx, rax
lea rax, [rbp + 0x90]
cmp rax, rcx
je 0x140014dd3
mov rax, qword [rdx + 0x38]
lea r9, [rbp + 0x1e0]
movups xmm0, xmmword [rdx + 0x88]
mov byte [rsp + 0x48], r14b
movss xmm2, dword [0x1400bd4b8]
movss dword [rsp + 0x40], xmm8
mov qword [rsp + 0x38], rcx
lea rcx, [rbp + 0x90]
mov qword [rsp + 0x30], rcx
lea rcx, [rsp + 0x60]
mov qword [rsp + 0x28], rcx
mov rcx, qword [rax + 8]
movups xmmword [rsp + 0x60], xmm0
mov dword [rsp + 0x20], ebx
call fcn.14003fee0
movss xmm3, dword [0x1400bd4c0]
movss xmm2, dword [0x1400bd460]
cmp byte [0x1400cdd52], r14b
je 0x140014f05
mov rax, qword [0x140125820]
movaps xmm0, xmm9
divss xmm0, xmm2
mov dword [rsp + 0x50], 0x8da9c9ca
mov edx, r14d
mov dword [rsp + 0x54], 0x8288858e
mov r8, r14
mov dword [rsp + 0x58], 0x909d879e
movss xmm12, dword [rax + 0x10]
movaps xmm6, xmm7
movss xmm13, dword [rax + 0x14]
subss xmm6, xmm0
mov rax, qword [rax + 0x40b0]
subss xmm13, xmm3
movups xmm0, xmmword [0x1400cdd88]
mulss xmm12, dword [0x1400bd3d4]
mov rcx, qword [rax]
xor eax, eax
movdqa xmmword [rsp + 0x60], xmm0
mov byte [rsp + 0x5c], al
nop dword [rax + rax]
lea eax, [rdx - 0x17]
inc edx
xor byte [rsp + r8 + 0x50], al
movsxd r8, edx
cmp r8, 0xc
jb 0x140014e50
lea r8, [rsp + 0x50]
mov byte [rsp + 0x5c], r14b
xor edx, edx
call fcn.14001ddb0
movss xmm1, dword [rsp + 0x64]
mov r10, rax
movss xmm0, dword [rsp + 0x60]
mov rcx, qword [0x140125820]
movss dword [rbp - 0x6c], xmm1
movss xmm1, dword [rsp + 0x6c]
movss dword [rbp - 0x70], xmm0
mulss xmm1, dword [rcx + 0x37f8]
lea rcx, [rbp - 0x70]
movss xmm0, dword [rsp + 0x68]
movss dword [rbp - 0x68], xmm0
movss dword [rbp - 0x64], xmm1
movss dword [rbp + 0x1e8], xmm6
movss dword [rbp + 0x1ec], xmm10
movss dword [rbp - 0x30], xmm12
movss dword [rbp - 0x2c], xmm13
call fcn.14001bb30
movss xmm0, dword [0x1400bd428]
lea r8, [rbp + 0x1e8]
mov r9d, eax
movss dword [rsp + 0x20], xmm0
lea rdx, [rbp - 0x30]
mov rcx, r10
call fcn.14003b9d0
movss xmm13, dword [rbp + 0x1d0]
cmp byte [0x1400cdd4d], r14b
je 0x14001500c
lea rcx, [0x1400cdd58]
call fcn.14001bb30
mov ebx, eax
call fcn.14001df80
movaps xmm6, xmm7
movss dword [rbp - 0x24], xmm11
addss xmm6, xmm9
movss dword [rbp - 0x1c], xmm11
subss xmm7, xmm9
mov r9d, ebx
movss xmm9, dword [0x1400bd440]
lea r8, [rbp - 0x28]
lea rdx, [rbp - 0x20]
movss dword [rsp + 0x20], xmm9
mov rcx, rax
movss dword [rbp - 0x28], xmm6
movss dword [rbp - 0x20], xmm7
call fcn.14003b9d0
call fcn.14001df80
mov r9d, ebx
movss dword [rbp - 0x18], xmm7
lea r8, [rbp - 0x18]
movss dword [rbp - 0x14], xmm11
lea rdx, [rbp - 0x10]
movss dword [rbp - 0x10], xmm7
mov rcx, rax
movss dword [rbp - 0xc], xmm10
movss dword [rsp + 0x20], xmm9
call fcn.14003b9d0
call fcn.14001df80
mov r9d, ebx
movss dword [rbp - 8], xmm6
lea r8, [rbp - 8]
movss dword [rbp - 4], xmm11
lea rdx, [rbp]
movss dword [rbp], xmm6
mov rcx, rax
movss dword [rbp + 4], xmm10
movss dword [rsp + 0x20], xmm9
call fcn.14003b9d0
call fcn.14001df80
mov r9d, ebx
movss dword [rbp + 8], xmm6
lea r8, [rbp + 8]
movss dword [rbp + 0xc], xmm10
lea rdx, [rbp + 0x10]
movss dword [rbp + 0x10], xmm7
mov rcx, rax
movss dword [rbp + 0x14], xmm10
movss dword [rsp + 0x20], xmm9
call fcn.14003b9d0
jmp 0x140015011
subss xmm7, xmm9
cmp byte [0x1400cdd51], r14b
je 0x1400151bb
movaps xmm9, xmm15
divss xmm9, dword [0x1400bd4fc]
call fcn.14001df80
lea rcx, [rsp + 0x60]
mov r10, rax
movaps xmm0, xmmword [0x1400bda70]
movaps xmm6, xmm7
subss xmm6, dword [0x1400bd498]
movss dword [rbp + 0x1c], xmm11
movss dword [rbp + 0x24], xmm10
movups xmmword [rsp + 0x60], xmm0
movss dword [rbp + 0x18], xmm6
movss dword [rbp + 0x20], xmm6
call fcn.14001bb30
movss xmm0, dword [0x1400bd450]
lea r8, [rbp + 0x18]
mov r9d, eax
movss dword [rsp + 0x20], xmm0
lea rdx, [rbp + 0x20]
mov rcx, r10
call fcn.14003b9d0
call fcn.14001df80
mulss xmm14, dword [0x1400bd4fc]
lea rcx, [rsp + 0x60]
mov r10, rax
movaps xmm0, xmmword [0x1400bdab0]
movaps xmm12, xmm11
subss xmm12, xmm15
movss dword [rbp + 0x28], xmm6
divss xmm14, dword [rbp + 0x1d8]
movss dword [rbp + 0x30], xmm6
mulss xmm14, xmm9
movss dword [rbp + 0x34], xmm10
movups xmmword [rsp + 0x60], xmm0
addss xmm14, xmm12
movss dword [rbp + 0x2c], xmm14
call fcn.14001bb30
movss xmm6, dword [0x1400bd450]
lea rdx, [rbp + 0x30]
mov r9d, eax
movss dword [rsp + 0x20], xmm6
lea r8, [rbp + 0x28]
mov rcx, r10
call fcn.14003b9d0
comiss xmm13, xmm8
jbe 0x1400151bb
call fcn.14001df80
subss xmm7, dword [0x1400bd4a8]
movaps xmm0, xmmword [0x1400bda70]
lea rcx, [rsp + 0x60]
movss dword [rbp + 0x3c], xmm11
mov r10, rax
movss dword [rbp + 0x44], xmm10
movups xmmword [rsp + 0x60], xmm0
movss dword [rbp + 0x38], xmm7
movss dword [rbp + 0x40], xmm7
call fcn.14001bb30
mov r9d, eax
movss dword [rsp + 0x20], xmm6
lea rdx, [rbp + 0x40]
mov rcx, r10
lea r8, [rbp + 0x38]
call fcn.14003b9d0
call fcn.14001df80
movaps xmm0, xmmword [0x1400bdc80]
lea rcx, [rsp + 0x60]
mulss xmm9, xmm13
mov r10, rax
movss dword [rbp + 0x48], xmm7
movss dword [rbp + 0x50], xmm7
addss xmm9, xmm12
movss dword [rbp + 0x54], xmm10
movups xmmword [rsp + 0x60], xmm0
movss dword [rbp + 0x4c], xmm9
call fcn.14001bb30
mov r9d, eax
movss dword [rsp + 0x20], xmm6
lea rdx, [rbp + 0x50]
mov rcx, r10
lea r8, [rbp + 0x48]
call fcn.14003b9d0
inc edi
cmp edi, 0x400
jl 0x140014ab0
movaps xmm15, xmmword [rsp + 0x200]
movaps xmm14, xmmword [rsp + 0x210]
movaps xmm13, xmmword [rsp + 0x220]
movaps xmm12, xmmword [rsp + 0x230]
movaps xmm11, xmmword [rsp + 0x240]
movaps xmm10, xmmword [rsp + 0x250]
mov rsi, qword [rsp + 0x2b0]
movaps xmm7, xmmword [rsp + 0x280]
movaps xmm6, xmmword [rsp + 0x290]
mov r14, qword [rsp + 0x2a0]
mov rdi, qword [rsp + 0x2a8]
movaps xmm8, xmmword [rsp + 0x270]
mov rbx, qword [rsp + 0x2b8]
movaps xmm9, xmmword [rsp + 0x260]
add rsp, 0x2c0
pop rbp
ret