Function at 0x1400650a0
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x140
mov rsi, rcx
movq rcx, xmm1
mov r11, rcx
shr r11, 0x34
and r11d, 0x7ff
lea rax, [rcx + rcx]
movabs rdx, 0x1ffffffffffffe
and rdx, rax
movabs rdi, 0x10000000000000
lea rbx, [rdi - 1]
and rbx, rcx
retf
lea r9, [rbx + rdi]
test r11d, r11d
cmove r9, rdx
mov r10d, r11d
add r10d, 0xfffffbcd
nop
mov eax, dword [0x141dc8f78]
add eax, dword [0x141dc8f7c]
and eax, 0x22d8a152
add eax, 0x6e20e6c0
xor eax, 0x3bfcb2c9
cmp edi, dword [0x1198c2ed5]
ja 0x140065100
ucomisd xmm1, xmm1
jp 0x1400652da
movabs r14, 0x7ff0000000000000
mov eax, dword [0x141dc8f80]
xor edx, edx
div dword [0x141dc8f84]
mov rax, rcx
and rax, r14
nop word [rax + rax]
mov edx, dword [0x141dc8f88]
or edx, dword [0x141dc8f8c]
add edx, 0x996d8b09
cdq
imul rdx, rdx, 0xafb4039
shr rdx, 0x3a
or edx, 0x4af468f9
cmp edx, 0x7809b6ec
je 0x140065150
nop dword [rax + rax]
mov edx, dword [0x141dc8f90]
add edx, dword [0x141dc8f94]
imul r15d, edx, 0xbc190c60
add r15d, 0xd77e8e48
xlatb
or r15d, 0x643b5e7d
xor edx, edx
test rax, rax
setne bpl
cmp r15d, 0xf42c260e
ja 0x140065180
mov dl, bpl
lea rdx, [rdx*2 + 2]
cmp rax, r14
mov r14d, 1
cmovne r14, rdx
cmp rax, 1
mov eax, 4
sbb rax, 0
test rbx, rbx
cmove rax, r14
dec rax
cmp rax, 3
ja case.default.0x1400651f6
lea rdx, [0x141db93cc]
movsxd rax, dword [rdx + rax*4]
add rax, rdx
jmp rax
mov al, 3
jmp 0x1400652ab
mov eax, dword [0x141dc8f98]
mov ecx, dword [0x141dc8f9c]
add eax, ecx
add eax, 0x920c707b
or eax, 0x2ba7c773
imul eax, eax, 0xef5b3329
cmp eax, 0xb4223cc9
ja case.default.0x1400651f6
jmp 0x1400656e3
test r9b, 1
sete al
nop word cs:[rax + rax]
mov edx, dword [0x141dc8fa0]
mov r11d, dword [0x141dc8fa4]
add edx, r11d
add edx, 0x3db6d9b6
and edx, 0x7024eb6
imul edx, edx, 0x1e4af025
cmp edx, 0xb4c87a3
jb 0x140065240
mov edx, 1
jmp 0x1400652ab
lea rax, [r9 + r9]
xor ebx, ebx
cmp r9, rdi
movabs rdi, 0x40000000000000
cmovne rdi, rax
sete bl
lea rdx, [rbx + 1]
test r9b, 1
sete al
movzx r10d, r11w
sub r10d, ebx
add r10d, 0xfffffbcc
mov r9, rdi
jmp 0x1400652ab
mov al, 4
mov r11d, dword [0x141dc8fa8]
imul r11d, dword [0x141dc8fac]
imul r11d, r11d, 0x3ef8e30b
add r11d, 0xa006e7a5
or r11d, 0x55823373
cmp r11d, 0xf6ba6cb5
je 0x140065338
jmp 0x1400652de
mov al, 2
jmp 0x1400652ab
mov r11d, dword [0x141dc8fb0]
and r11d, dword [0x141dc8fb4]
imul r11, r11, 0x4a0e1b27
shr r11, 0x3a
imul edi, r11d, 0x16e534d7
lea r11d, [rax - 2]
movzx ebx, r11b
cmp bl, 3
mov r11d, 3
cmovb r11d, ebx
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x28], 1
mov qword [rsp + 0x30], rdx
mov word [rsp + 0x38], r10w
mov byte [rsp + 0x3a], al
cmp edi, 0xb6ed24d7
jne 0x140065357
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x28], 1
mov qword [rsp + 0x30], rdx
mov word [rsp + 0x38], r10w
mov byte [rsp + 0x3a], al
jmp 0x1400652de
test r11b, r11b
je 0x1400653d7
mov r15, rcx
shr r15, 0x3f
test rcx, rcx
lea rax, [0x141db4efd]
mov ecx, 1
cmovs rcx, rax
lea r12, [0x141db4efe]
cmovs r12, rax
mov eax, 1
test r8b, r8b
cmovne r15, rax
cmove r12, rcx
cmp r11b, 1
je 0x14006541b
movzx eax, r11b
cmp eax, 2
jne 0x140065447
mov word [rsp + 0x80], 2
lea rax, [0x141db4f06]
mov qword [rsp + 0x88], rax
mov qword [rsp + 0x90], 3
mov edi, 1
jmp 0x140065add
mov word [rsp + 0x80], 2
lea rax, [0x141db4eff]
mov qword [rsp + 0x88], rax
mov eax, dword [0x141dc8fb8]
or eax, dword [0x141dc8fbc]
or eax, 0x60022012
and eax, 0xec23a832
add eax, 0x1184732b
cmp eax, 0x7e7892ac
jb 0x1400659be
jmp 0x140065985
mov eax, dword [0x141dc8fd0]
or eax, dword [0x141dc8fd4]
xor eax, 0x1cb59f4
imul eax, eax, 0x60719fbc
or eax, 0xf382d9c6
cmp eax, 0x18f169dd
jb 0x140065a17
jmp 0x1400659dc
cmp eax, 3
jne 0x140065530
mov eax, dword [0x141dc8ff0]
and eax, dword [0x141dc8ff4]
or eax, 0x5f9ecf7f
xor eax, 0xf9c9c50a
cmp eax, 0xf7d0a9cc
jbe 0x140065487
lea rcx, [rsp + 0x110]
lea rdx, [rsp + 0x20]
lea r8, [rsp + 0x12f]
call fcn.1400501a0
lea rdi, [rsp + 0x110]
lea rbx, [rsp + 0x20]
lea r14, [rsp + 0x12f]
nop dword [rax]
mov ebp, dword [0x141dc8ff8]
xor ebp, dword [0x141dc8ffc]
or ebp, 0x7fcf7fff
and ebp, 0x7fdfffff
mov rcx, rdi
mov rdx, rbx
mov r8, r14
call fcn.1400501a0
cmp ebp, 0x3ca474e7
jb 0x1400654a0
mov rax, qword [rsp + 0x110]
nop word cs:[rax + rax]
mov ecx, dword [0x141dc9000]
and ecx, dword [0x141dc9004]
add ecx, 0x1f5defe7
or ecx, 0x8a7ddcf
imul ecx, ecx, 0x5d0fff2c
cmp ecx, 0x9b8849eb
jb 0x1400654e0
test rax, rax
je 0x140065557
mov rax, qword [rsp + 0x120]
mov qword [rsp + 0x70], rax
movups xmm0, xmmword [rsp + 0x110]
movaps xmmword [rsp + 0x60], xmm0
jmp 0x140065570
mov eax, dword [0x141dc8fc8]
sub eax, dword [0x141dc8fcc]
or eax, 0x110054c8
xor eax, 0x31203240
or eax, 0xc2cb0137
cmp eax, 0x2ff495c2
jb 0x140065530
jmp 0x1400656e3
lea rcx, [rsp + 0x60]
lea rdx, [rsp + 0x20]
lea r8, [rsp + 0x12f]
call fcn.140048470
nop
mov eax, dword [0x141dc9008]
xor edx, edx
div dword [0x141dc900c]
add eax, 0xb0406e5f
or eax, 0x12a40168
cmp eax, 0xdbe1746d
je 0x140065570
mov r8, qword [rsp + 0x68]
test r8, r8
je 0x1400656e3
mov r9, qword [rsp + 0x60]
cmp byte [r9], 0x30
jbe 0x140065681
movzx ecx, word [rsp + 0x70]
mov word [rsp + 0x80], 2
mov qword [rsp + 0x88], r9
mov eax, dword [0x141dc9028]
or eax, dword [0x141dc902c]
or eax, 0x151a59d8
add eax, 0xc604aa45
and eax, 0x3ab2a860
cmp eax, 0x2aff0ae1
jne 0x140065600
mov qword [rsp + 0x90], 1
nop word cs:[rax + rax]
mov eax, dword [0x141dc9030]
imul eax, dword [0x141dc9034]
add eax, 0xe00eab03
xor eax, 0x67e28503
mov qword [rsp + 0x90], 1
cmp eax, 0x906bd555
jb 0x140065600
nop word [rax + rax]
mov eax, dword [0x141dc9038]
imul eax, dword [0x141dc903c]
or eax, 0x4bcca6b2
xor eax, 0x5e0d0f64
add eax, 0x92284c3d
cmp eax, 0x16e6491e
jb 0x140065630
mov edi, 1
cmp r8, 2
jb 0x1400657e2
mov eax, dword [0x141dc9040]
or eax, dword [0x141dc9044]
imul eax, eax, 0x7178455a
cmp eax, 0xd18f9f6e
je 0x14006572d
jmp 0x1400656e5
mov eax, dword [0x141dc9010]
add eax, dword [0x141dc9014]
imul eax, eax, 0xd41bdcec
or eax, 0x8ff5d358
cmp eax, 0x7aba1340
jne 0x1400656b0
ud2
mov eax, dword [0x141dc9018]
or eax, dword [0x141dc901c]
or eax, 0xf890d5bc
imul eax, eax, 0x94c052b7
ud2
ud2
mov word [rsp + 0x98], 2
lea rax, [0x141db84db]
mov qword [rsp + 0xa0], rax
mov eax, dword [0x141dc9048]
add eax, dword [0x141dc904c]
imul rax, rax, 0x4d96a99d
shr rax, 0x3d
or eax, 0x402660a4
mov qword [rsp + 0xa8], 1
cmp eax, 0xfbab5719
jne 0x140065754
mov word [rsp + 0x98], 2
lea rax, [0x141db84db]
mov qword [rsp + 0xa0], rax
mov qword [rsp + 0xa8], 1
jmp 0x1400656e5
inc r9
mov word [rsp + 0xb0], 2
mov eax, dword [0x141dc9050]
xor edx, edx
div dword [0x141dc9054]
dec r8
add eax, 0x53ccc2ec
or eax, 0x798d030e
mov edx, 0xcadaa969
imul rdx, rax
shr rdx, 0x3f
cmp edx, 0x51ce354d
jne 0x1400657b0
mov qword [rsp + 0xb8], r9
mov qword [rsp + 0xc0], r8
nop word cs:[rax + rax]
mov eax, dword [0x141dc9058]
sub eax, dword [0x141dc905c]
or eax, 0xbcb0a64b
and eax, 0xfcb5a64b
mov qword [rsp + 0xb8], r9
mov qword [rsp + 0xc0], r8
cmp eax, 0xbf55e171
ja 0x1400657b0
mov edi, 3
mov eax, dword [0x141dc9060]
xor edx, edx
div dword [0x141dc9064]
mov eax, dword [0x141dc9068]
sub eax, dword [0x141dc906c]
add eax, 0xf0845f10
and eax, 0x4fd405b2
cmp eax, 0x621ed7a1
je 0x1400657f0
test cx, cx
jle 0x1400658a6
dec ecx
lea rax, [rdi + rdi*2]
lea rax, [rsp + rax*8]
add rax, 0x80
nop word cs:[rax + rax]
mov edx, dword [0x141dc9070]
imul edx, dword [0x141dc9074]
add edx, 0xd0ad083d
imul r8, rdx, 0x745499d
shr r8, 0x20
sub edx, r8d
shr edx, 1
add edx, r8d
shr edx, 0x1b
or edx, 0xbc9627e0
cmp edx, 0x2ddb4458
jb 0x140065830
mov word [rax], 2
lea rdx, [0x141db4efa]
mov qword [rax + 8], rdx
mov edx, dword [0x141dc9078]
imul edx, dword [0x141dc907c]
add edx, 0x75ca5743
imul rdx, rdx, 0x5deb7f71
shr rdx, 0x3d
cmp edx, 0xc4da38ee
ja 0x140065ab9
jmp 0x140065aab
lea rax, [rdi + rdi*2]
lea r8, [rsp + rax*8]
add r8, 0x80
mov word [rsp + rax*8 + 0x80], 2
mov eax, dword [0x141dc9080]
or eax, dword [0x141dc9084]
xor eax, 0x1bad8de2
add eax, 0x7c0f2639
or eax, 0xe6807ee7
cmp eax, 0xae6fd12c
jae 0x1400658ec
lea rax, [0x141db4efb]
mov qword [r8 + 8], rax
mov eax, 0x8f1628a9
lea rdx, [0x141db4efb]
nop dword [rax + rax]
mov r9d, dword [0x141dc9088]
xor r9d, dword [0x141dc908c]
imul r9d, r9d, 0x967a3f1d
shr r9d, 1
imul r9, rax
shr r9, 0x3c
mov qword [r8 + 8], rdx
cmp r9d, 0x43b6bfb7
je 0x140065900
mov eax, dword [0x141dc9090]
and eax, dword [0x141dc9094]
imul eax, eax, 0xadf863ce
add eax, 0x4c7e4ccd
cmp eax, 0x37c65cd6
jae 0x140065953
mov qword [r8 + 0x10], 2
mov r9d, 1
sub r9d, ecx
nop dword [rax]
mov eax, dword [0x141dc9098]
xor edx, edx
div dword [0x141dc909c]
mov qword [r8 + 0x10], 2
cmp eax, 0x6835d515
je 0x140065960
mov ecx, r9d
jmp 0x140065ac3
mov eax, dword [0x141dc8fc0]
xor edx, edx
div dword [0x141dc8fc4]
xor r15d, r15d
imul rax, rax, 0x6a7748e9
shr rax, 0x3c
xor eax, 0xc02ea0f7
add eax, 0xf8223c7c
mov qword [rsp + 0x90], 3
cmp eax, 0xa15e290c
ja 0x1400659cc
mov qword [rsp + 0x90], 3
jmp 0x140065985
mov r12d, 1
mov edi, 1
jmp 0x140065add
mov word [rsp + 0x80], 2
lea rax, [0x141db4f02]
mov qword [rsp + 0x88], rax
mov eax, dword [0x141dc8fd8]
xor eax, dword [0x141dc8fdc]
add eax, 0xfd781859
or eax, 0xeeb414b3
add eax, 0xfcdbee00
cmp eax, 0x98a9e71b
jae 0x140065a32
mov word [rsp + 0x80], 2
lea rax, [0x141db4f02]
mov qword [rsp + 0x88], rax
jmp 0x1400659dc
mov eax, dword [0x141dc8fe0]
add eax, dword [0x141dc8fe4]
xor eax, 0x20204
or eax, 0xbf4da4fb
imul rax, rax, 0x13d9c2a5
shr rax, 0x3c
cmp eax, 0x18305072
je 0x140065a8a
mov eax, dword [0x141dc8fe8]
xor edx, edx
div dword [0x141dc8fec]
and eax, 0x87448118
xor eax, 0xa754910e
or eax, 0x50a36ae0
mov qword [rsp + 0x90], 3
cmp eax, 0x8d1085c9
jne 0x140065a98
mov qword [rsp + 0x90], 3
jmp 0x140065a5a
xor eax, eax
nop word [rax + rax]
test al, al
jne 0x140065aa0
mov edi, 1
jmp 0x140065add
mov qword [rax + 0x10], 1
mov dl, 1
test dl, dl
jne 0x140065ac3
mov qword [rax + 0x10], 1
jmp 0x140065aab
lea rax, [rdi + rdi*2]
mov word [rsp + rax*8 + 0x98], 1
mov word [rsp + rax*8 + 0x9a], cx
add rdi, 2
mov eax, dword [0x141dc90a0]
or eax, dword [0x141dc90a4]
xor eax, 0xba12a7b5
mov ecx, 0x869ca011
imul rcx, rax
shr rcx, 0x3f
cmp ecx, 0xeabb0e8a
ja 0x140065b53
mov ebx, dword [0x141dc90a8]
imul ebx, dword [0x141dc90ac]
add ebx, 0xa0a634c6
xor ebx, 0xa42502d
and ebx, 0xeaf2732d
mov qword [rsp + 0x40], r12
mov qword [rsp + 0x48], r15
lea rax, [rsp + 0x80]
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x58], rdi
lea rdx, [rsp + 0x40]
mov rcx, rsi
call fcn.140062340
cmp ebx, 0xc2d37faa
jae 0x140065b7e
mov qword [rsp + 0x40], r12
mov qword [rsp + 0x48], r15
lea rax, [rsp + 0x80]
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x58], rdi
lea rdx, [rsp + 0x40]
mov rcx, rsi
call fcn.140062340
jmp 0x140065b03
add rsp, 0x140
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r14
pop r15
ret