Function at 0x14004063c
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], r12
push rbp
push r14
push r15
lea rbp, [rax - 0x278]
sub rsp, 0x360
movaps xmmword [rax - 0x28], xmm6
movaps xmmword [rax - 0x38], xmm7
movaps xmmword [rax - 0x48], xmm8
movaps xmmword [rax - 0x58], xmm10
movaps xmmword [rax - 0x68], xmm11
movaps xmmword [rax - 0x78], xmm12
mov rax, qword [0x140093040]
xor rax, rsp
mov qword [rbp + 0x1f0], rax
xor r14d, r14d
mov rsi, qword [0x140093ff0]
mov rdi, qword [0x140093fe8]
mov rcx, rsi
sub rcx, rdi
movabs rax, 0x6806806806806807
imul rcx
sar rdx, 7
mov rax, rdx
shr rax, 0x3f
add rdx, rax
je 0x140040d3b
cmp rdi, rsi
je 0x140040d3b
lea r15d, [r14 + 0xf]
mov r12d, 0x1000
movdqa xmm12, xmmword [0x14008d3a0]
mov rdx, rdi
lea rcx, [rbp - 0x20]
call fcn.140040398
nop
cmp byte [rbp + 0xb0], r14b
je 0x140040d22
cmp byte [rbp + 0xb2], r14b
je 0x140040d22
movss xmm0, dword [0x1400934fa]
comiss xmm0, dword [0x14008ce4c]
jbe 0x140040d22
lea rdx, [rbp - 0x50]
call fcn.140034218
movss xmm6, dword [rax + 8]
lea rdx, [rbp - 0x44]
call fcn.140034218
movss xmm7, dword [rax + 4]
lea rdx, [rbp - 0x38]
call fcn.140034218
movss xmm8, dword [rbp + 0xcf]
movaps xmm2, xmm8
subss xmm2, xmm6
movss xmm6, dword [rbp + 0xcb]
movaps xmm1, xmm6
subss xmm1, xmm7
movss xmm7, dword [rbp + 0xc7]
movaps xmm0, xmm7
subss xmm0, dword [rax]
mulss xmm0, xmm0
mulss xmm1, xmm1
addss xmm0, xmm1
mulss xmm2, xmm2
addss xmm0, xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
movaps xmm11, xmm0
and dword [rsp + 0x58], 0
and dword [rsp + 0x5c], 0
movss xmm10, dword [0x140093db4]
movaps xmm2, xmm6
addss xmm2, dword [0x14008cf40]
movaps xmm1, xmm7
unpcklps xmm1, xmm2
movsd qword [rsp + 0x70], xmm1
movss dword [rsp + 0x78], xmm8
movss xmm0, dword [0x140093e08]
unpcklps xmm0, xmm10
movq r9, xmm0
lea r8, [rsp + 0x58]
lea rdx, [rsp + 0x70]
call fcn.1400342a0
test al, al
je 0x140040d22
subss xmm6, dword [0x14008cf2c]
movaps xmm0, xmm7
unpcklps xmm0, xmm6
movsd qword [rbp - 0x80], xmm0
movss dword [rbp - 0x78], xmm8
movss xmm0, dword [0x140093e08]
unpcklps xmm0, xmm10
movq r9, xmm0
lea r8, [rsp + 0x48]
lea rdx, [rbp - 0x80]
call fcn.1400342a0
test al, al
je 0x140040d22
movzx eax, word [0x14008cbf8]
mov word [rsp + 0x40], ax
cmp byte [0x14008cbf9], r14b
je 0x14004086d
mov r8d, r14d
lea r9, [rsp + 0x40]
mov eax, 0x51eb851f
mul r8d
shr edx, 4
movsx eax, dl
imul ecx, eax, 0x32
mov al, r8b
sub al, cl
add al, 0x37
xor byte [r9], al
inc r8d
inc r9
cmp r8d, 2
jl 0x140040846
mov r8, qword [rbp - 0x18]
mov rdx, qword [rbp + 0x50]
lea rcx, [rbp + 0x1d0]
call fcn.140037664
mov rbx, rax
movsd xmm0, qword [str.lpHT]
movsd qword [rbp + 0x120], xmm0
cmp qword [rax + 0x18], r15
jbe 0x14004089d
mov rbx, qword [rax]
mov al, byte [0x14008ce18]
mov byte [rbp + 0x128], al
mov r8d, r14d
lea r9, [rbp + 0x120]
mov eax, 0x51eb851f
mul r8d
shr edx, 4
movsx eax, dl
imul ecx, eax, 0x32
mov al, r8b
sub al, cl
add al, 0x37
xor byte [r9], al
inc r8d
inc r9
cmp r8d, 9
jl 0x1400408b3
mov eax, dword [0x14008cb88]
mov dword [rsp + 0x48], eax
cmp byte [0x14008cb8b], r14b
je 0x14004091c
mov r8d, r14d
lea r9, [rsp + 0x48]
mov eax, 0x51eb851f
mul r8d
shr edx, 4
movsx eax, dl
imul ecx, eax, 0x32
mov al, r8b
sub al, cl
add al, 0x37
xor byte [r9], al
inc r8d
inc r9
cmp r8d, 4
jl 0x1400408f5
cvttss2si edx, xmm11
lea rcx, [rbp + 0x1b0]
call fcn.140033c08
mov r10, rax
movzx ecx, word [0x14008cd54]
mov word [rsp + 0x44], cx
cmp byte [0x14008cd55], r14b
je 0x140040974
mov r8d, r14d
lea r9, [rsp + 0x44]
mov eax, 0x51eb851f
mul r8d
shr edx, 4
movsx eax, dl
imul ecx, eax, 0x32
mov al, r8b
sub al, cl
add al, 0x37
xor byte [r9], al
inc r8d
inc r9
cmp r8d, 2
jl 0x14004094d
mov r8, r10
lea rdx, [rsp + 0x44]
lea rcx, [rbp + 0x190]
call fcn.140050cf0
nop
lea rcx, [rsp + 0x48]
or r8, 0xffffffffffffffff
inc r8
cmp byte [rcx + r8], r14b
jne 0x140040992
lea rdx, [rsp + 0x48]
mov rcx, rax
call fcn.14005015c
xorps xmm0, xmm0
movups xmmword [rbp + 0x170], xmm0
mov qword [rbp + 0x180], r14
mov qword [rbp + 0x188], r14
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x170], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x180], xmm1
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], r15
mov byte [rax], r14b
lea rax, [rbp + 0x120]
or r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], r14b
jne 0x1400409eb
lea rdx, [rbp + 0x120]
lea rcx, [rbp + 0x170]
call fcn.14005015c
xorps xmm0, xmm0
movups xmmword [rbp + 0x150], xmm0
mov qword [rbp + 0x160], r14
mov qword [rbp + 0x168], r14
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x150], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x160], xmm1
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], r15
mov byte [rax], r14b
or r8, 0xffffffffffffffff
inc r8
cmp byte [rbx + r8], r14b
jne 0x140040a43
mov rdx, rbx
lea rcx, [rbp + 0x150]
call fcn.14005015c
xorps xmm0, xmm0
movups xmmword [rbp + 0x130], xmm0
mov qword [rbp + 0x140], r14
mov qword [rbp + 0x148], r14
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x130], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x140], xmm1
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], r15
mov byte [rax], r14b
lea rax, [rsp + 0x40]
or r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], r14b
jne 0x140040a9c
lea rdx, [rsp + 0x40]
lea rcx, [rbp + 0x130]
call fcn.14005015c
xorps xmm0, xmm0
movups xmmword [rbp - 0x70], xmm0
mov qword [rbp - 0x60], r14
mov qword [rbp - 0x58], r14
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x70], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x60], xmm1
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], r15
mov byte [rax], r14b
mov rax, qword [0x140093ce0]
movups xmmword [rsp + 0x48], xmm12
movss xmm0, dword [rax + 0x3778]
movss dword [rsp + 0x54], xmm0
lea rcx, [rsp + 0x48]
call fcn.140003144
movss xmm5, dword [rsp + 0x58]
movss dword [rsp + 0x60], xmm5
movss xmm0, dword [rsp + 0x5c]
movss dword [rsp + 0x64], xmm0
movss xmm1, dword [rbp + 0x8e]
movss dword [rsp + 0x30], xmm1
movss xmm0, dword [rbp + 0x8a]
movss dword [rsp + 0x28], xmm0
movss dword [rsp + 0x20], xmm11
lea r9, [rbp - 0x70]
mov edx, eax
lea rcx, [rsp + 0x60]
call fcn.1400347c8
nop
mov rdx, qword [rbp + 0x148]
cmp rdx, r15
jbe 0x140040b8c
inc rdx
mov rcx, qword [rbp + 0x130]
mov rax, rcx
cmp rdx, r12
jb 0x140040b87
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140040d89
call fcn.140052d10
mov qword [rbp + 0x140], r14
mov qword [rbp + 0x148], r15
mov byte [rbp + 0x130], r14b
mov rdx, qword [rbp + 0x168]
cmp rdx, r15
jbe 0x140040bdd
inc rdx
mov rcx, qword [rbp + 0x150]
mov rax, rcx
cmp rdx, r12
jb 0x140040bd8
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140040d90
call fcn.140052d10
mov qword [rbp + 0x160], r14
mov qword [rbp + 0x168], r15
mov byte [rbp + 0x150], r14b
mov rdx, qword [rbp + 0x188]
cmp rdx, r15
jbe 0x140040c2e
inc rdx
mov rcx, qword [rbp + 0x170]
mov rax, rcx
cmp rdx, r12
jb 0x140040c29
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140040d97
call fcn.140052d10
mov qword [rbp + 0x180], r14
mov qword [rbp + 0x188], r15
mov byte [rbp + 0x170], r14b
mov rdx, qword [rbp + 0x1a8]
cmp rdx, r15
jbe 0x140040c7f
inc rdx
mov rcx, qword [rbp + 0x190]
mov rax, rcx
cmp rdx, r12
jb 0x140040c7a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140040d9e
call fcn.140052d10
mov qword [rbp + 0x1a0], r14
mov qword [rbp + 0x1a8], r15
mov byte [rbp + 0x190], r14b
mov rdx, qword [rbp + 0x1c8]
cmp rdx, r15
jbe 0x140040cd0
inc rdx
mov rcx, qword [rbp + 0x1b0]
mov rax, rcx
cmp rdx, r12
jb 0x140040ccb
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140040da5
call fcn.140052d10
mov qword [rbp + 0x1c0], r14
mov qword [rbp + 0x1c8], r15
mov byte [rbp + 0x1b0], r14b
mov rdx, qword [rbp + 0x1e8]
cmp rdx, r15
jbe 0x140040d22
inc rdx
mov rcx, qword [rbp + 0x1d0]
mov rax, rcx
cmp rdx, r12
jb 0x140040d1c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140040dac
call fcn.140052d10
nop
lea rcx, [rbp - 0x20]
call fcn.1400374c0
add rdi, 0x13b
cmp rdi, rsi
jne 0x1400406e3
mov rcx, qword [rbp + 0x1f0]
xor rcx, rsp
call fcn.140052c20
lea r11, [rsp + 0x360]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x30]
mov r12, qword [r11 + 0x38]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm10, xmmword [r11 - 0x40]
movaps xmm11, xmmword [r11 - 0x50]
movaps xmm12, xmmword [r11 - 0x60]
mov rsp, r11
pop r15
pop r14
pop rbp
ret
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3