Function at 0x14014e650
Capabilities:
Encode data using xor

Disassembly:
push rbp
sub rsp, 0x1c0
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x28], rdx
mov qword [rbp + 0x38], rcx
mov eax, 0x10
mov qword [rbp + 0x10], rax
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x10]
mov rcx, rsp
mov qword [rbp - 0x10], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x10]
mov rcx, rsp
mov qword [rbp - 8], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x10]
mov rcx, rsp
mov qword [rbp + 0x48], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x10]
mov rcx, rsp
mov qword [rbp], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x10]
mov rcx, rsp
mov qword [rbp + 8], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x10]
mov rcx, rsp
mov qword [rbp + 0x18], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x20], rax
sub rsp, 0x20
call fcn.14014be98
mov rcx, qword [rbp + 0x28]
add rsp, 0x20
mov qword [rbp + 0x50], rax
mov qword [rbp + 0x30], rax
sub rsp, 0x20
mov edx, 8
call fcn.14014db90
mov rax, qword [rbp + 0x38]
mov rcx, qword [rbp + 0x48]
add rsp, 0x20
mov qword [rbp + 0x130], 0
lea rdx, [rbp + 0x138]
mov qword [rbp + 0x40], rdx
mov qword [rbp + 0x138], 0
movups xmm0, xmmword [rax]
movaps xmmword [rbp + 0x110], xmm0
sub rsp, 0x20
lea rdx, [rbp + 0x110]
call fcn.14001ba7e
mov rax, qword [rbp + 0x48]
add rsp, 0x20
mov rcx, qword [rax]
mov rax, qword [rax + 8]
mov qword [rbp + 0x100], rcx
mov qword [rbp + 0x108], rax
sub rsp, 0x20
lea rcx, [rbp + 0x100]
call fcn.1400cd2a0
add rsp, 0x20
mov cl, al
mov rax, qword [rbp + 0x50]
mov al, byte [rax]
test al, al
setne al
mov byte [rbp + 0x5f], al
or al, cl
test al, 1
jne 0x14014e968
mov eax, dword [0x1402541d8]
xor edx, edx
div dword [0x1402541dc]
mov ecx, eax
mov edx, 0x604883dc
xor edx, 0x9fb77c23
mov eax, ecx
xor eax, edx
mov edx, ecx
xor edx, 0xffffffff
or eax, edx
and eax, 0x98dd0533
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x98dd0533
mov r8d, 0xffffffff
xor r8d, 0x98dd0533
or edx, r8d
mov r8d, 0x36b10536
xor r8d, 0xc94efac9
xor ecx, r8d
xor edx, 0xffffffff
or ecx, edx
xor eax, 0xffffffff
mov edx, 0x1a01918c
xor edx, 0xe5fe6e73
xor ecx, edx
or eax, ecx
mov ecx, 0x8ac041b5
xor ecx, 0x98da19cf
xor edx, edx
div ecx
mov ecx, eax
mov eax, ecx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
mov ecx, 0xffffffff
xor ecx, 0x6a583bce
mov edx, 0x1075fb80
xor edx, 0x7a2dc04e
mov r8d, 0x7285c099
xor r8d, 0x8d7a3f66
xor edx, r8d
and ecx, edx
or eax, ecx
xor eax, 0xffffffff
cmp eax, 0x6d734587
jae 0x14014efbd
mov rcx, qword [rbp + 0x28]
mov eax, dword [0x1402541e0]
mov r8d, dword [0x1402541e4]
mov edx, 0xd019d6b4
xor edx, 0x883496cb
xor r8d, edx
xor edx, edx
div r8d
mov edx, 0x57126d5f
xor edx, 0x82ef226e
xor eax, edx
mov edx, eax
and edx, 0x4d19c854
shl edx, 1
xor eax, 0x4d19c854
add eax, edx
mov edx, eax
add edx, 1
mov r8d, 0x45796c00
xor r8d, 0xba8693ff
xor eax, r8d
mov r8d, 0xa947d403
xor r8d, 0xee9def45
or eax, r8d
add eax, edx
mov dword [rbp - 0x18], eax
mov eax, 0xf7cf48e5
xor eax, 0x1c7d8144
mov dword [rbp - 0x1c], eax
mov edx, 8
sub rsp, 0x20
call fcn.14014db90
mov rdx, qword [rbp + 0x30]
mov ecx, dword [rbp - 0x1c]
mov eax, dword [rbp - 0x18]
add rsp, 0x20
mov dl, byte [rdx]
mov r8b, 0xb9
xor r8b, 0xb9
cmp dl, r8b
sete dl
mov byte [rbp - 0x11], dl
cmp eax, ecx
ja 0x14014e86e
mov al, byte [rbp - 0x11]
test al, 1
jne 0x14014e92e
jmp 0x14014ed9f
mov rax, qword [rbp + 0x38]
mov rax, qword [rax + 8]
mov qword [rbp - 0x28], rax
cmp rax, 0
je 0x14014efb4
mov rax, qword [rbp - 0x28]
movabs rcx, 0x4000000000000000
and rcx, qword [rax]
cmp rcx, 0
mov qword [rbp - 0x30], rax
je 0x14014efa3
jmp 0x14014efb4
mov al, byte [rbp + 0x5f]
test al, 1
jne 0x14014ed9f
jmp 0x14014e978
mov rax, qword [rbp + 0x38]
mov rcx, qword [rax]
mov qword [rbp + 0xf0], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0xf8], rax
lea rcx, [rbp + 0x130]
lea rdx, [rbp + 0xf0]
xor eax, eax
mov r8d, eax
sub rsp, 0x20
call fcn.1400c82d0
mov rax, qword [rbp + 0x30]
add rsp, 0x20
cmp byte [rax], 0
jne 0x14014ed9f
movabs rcx, 0x1bf1bb701b013f0a
movabs rax, 0x1bf1bb701b013f3a
xor rcx, rax
movabs rdx, 0x667a9ef74a414a9a
movabs rax, 0x667a9ef74a414a92
xor rdx, rax
sub rsp, 0x20
call fcn.14001b860
mov rcx, qword [rbp]
add rsp, 0x20
mov qword [rbp - 0x50], rax
mov rax, qword [rbp + 0x130]
mov qword [rbp + 0xe0], rax
mov rax, qword [rbp + 0x138]
mov qword [rbp + 0xe8], rax
lea rdx, [rbp + 0xe0]
sub rsp, 0x20
call fcn.14001ba7e
mov rax, qword [rbp]
add rsp, 0x20
mov rcx, qword [rax]
mov qword [rbp - 0x48], rcx
mov rax, qword [rax + 8]
mov qword [rbp - 0x40], rax
mov word [rbp + 0x12e], 0x1f0
lea rcx, [rbp + 0x12e]
sub rsp, 0x20
call fcn.140061b50
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x30]
mov qword [rbp - 0x38], rcx
mov al, byte [rax]
mov cl, 0x11
xor cl, 0x11
cmp al, cl
jne 0x14014ed9f
mov eax, dword [0x1402541e8]
imul eax, dword [0x1402541ec]
mov edx, eax
xor edx, 0xffffffff
and edx, 0xc36894d2
mov r8d, 0xffffffff
xor r8d, 0xc36894d2
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0xc36894d2
mov r8d, 0xe16bc22b
xor r8d, 0x220356f9
or eax, r8d
imul eax, edx
add eax, ecx
and eax, 0xf308bcaf
mov ecx, eax
and ecx, 0x90194e04
shl ecx, 1
add eax, 0x90194e04
sub eax, ecx
cmp eax, 0xef629c19
je 0x14014efc6
mov rdx, qword [rbp + 8]
mov rax, qword [rbp - 0x38]
mov r8d, dword [0x1402541f0]
xor r8d, 0x76928a37
mov ecx, dword [0x1402541f4]
mov r9d, 0x57d67507
xor r9d, 0x11493370
xor ecx, r9d
add r8d, ecx
add r8d, 0x8266ea83
add r8d, 0x974046e
sub r8d, 0x8266ea83
mov ecx, r8d
xor ecx, 0xd0e43e13
xor ecx, 0xffffffff
and ecx, 0xd0e43e13
shl ecx, 1
mov r9d, 0x695ea285
xor r9d, 0xb9ba9c96
sub ecx, r9d
sub r8d, ecx
mov ecx, r8d
xor ecx, 0xffffffff
mov r9d, 0xffffffff
xor r9d, 0x13cffa4c
or ecx, r9d
mov r9d, 0xb2c71a1b
xor r9d, 0xa108e057
and r8d, r9d
xor r8d, 0xffffffff
xor ecx, 0xffffffff
mov r9d, 0xacbd47c8
xor r9d, 0x5342b837
xor r8d, r9d
or ecx, r8d
mov dword [rbp - 0x58], ecx
mov ecx, 0xedbda585
xor ecx, 0xd6e92c03
mov dword [rbp - 0x5c], ecx
mov rcx, qword [rax]
mov qword [rdx], rcx
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
lea rcx, [rbp + 0xd0]
sub rsp, 0x20
call fcn.14001ba7e
mov r9, qword [rbp - 0x48]
mov r8, qword [rbp - 0x40]
mov rdx, qword [rbp + 0x18]
add rsp, 0x20
mov rcx, qword [rbp + 0xd0]
mov rax, qword [rbp + 0xd8]
mov qword [rdx], r9
mov qword [rdx + 8], r8
mov qword [rbp + 0xa8], rcx
mov qword [rbp + 0xb0], rax
lea rcx, [rbp + 0xb8]
lea r8, [rbp + 0xa8]
sub rsp, 0x20
call fcn.14014c5b0
mov r8, qword [rbp - 0x50]
mov rdx, qword [rbp + 0x30]
mov ecx, dword [rbp - 0x5c]
mov eax, dword [rbp - 0x58]
add rsp, 0x20
mov r9, qword [rbp + 0xb8]
mov qword [r8], r9
mov r9, qword [rbp + 0xc0]
mov qword [r8 + 8], r9
mov r9, qword [rbp + 0xc8]
mov qword [r8 + 0x10], r9
cmp byte [rdx], 0
sete dl
mov byte [rbp - 0x51], dl
cmp eax, ecx
je 0x14014efc6
mov al, byte [rbp - 0x51]
test al, 1
jne 0x14014ec5f
jmp 0x14014ed9f
mov rax, qword [rbp - 0x10]
mov rcx, qword [rbp + 0x130]
mov qword [rax], rcx
mov rcx, qword [rbp + 0x138]
mov qword [rax + 8], rcx
lea rcx, [rbp + 0x130]
sub rsp, 0x20
call fcn.140010107
mov rcx, qword [rbp - 8]
add rsp, 0x20
mov word [rcx], 0xad3
sub rsp, 0x20
call fcn.140061b50
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x30]
mov qword [rbp - 0x68], rcx
mov al, byte [rax]
mov cl, 0xc7
xor cl, 0xc7
cmp al, cl
jne 0x14014ed9f
mov rdx, qword [rbp + 0x20]
mov rax, qword [rbp - 0x68]
mov rcx, qword [rax]
mov qword [rdx], rcx
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
lea rcx, [rbp + 0x98]
sub rsp, 0x20
call fcn.14001ba7e
mov rdx, qword [rbp - 0x10]
add rsp, 0x20
mov rcx, qword [rbp + 0x98]
mov rax, qword [rbp + 0xa0]
mov r8, qword [rdx]
mov qword [rbp + 0x70], r8
mov rdx, qword [rdx + 8]
mov qword [rbp + 0x78], rdx
mov qword [rbp + 0x60], rcx
mov qword [rbp + 0x68], rax
lea rcx, [rbp + 0x80]
lea rdx, [rbp + 0x70]
lea r8, [rbp + 0x60]
sub rsp, 0x20
call fcn.14014c5b0
mov rcx, qword [rbp - 0x50]
mov rax, qword [rbp + 0x30]
add rsp, 0x20
mov rdx, qword [rbp + 0x80]
mov qword [rcx + 0x18], rdx
mov rdx, qword [rbp + 0x88]
mov qword [rcx + 0x20], rdx
mov rdx, qword [rbp + 0x90]
mov qword [rcx + 0x28], rdx
cmp byte [rax], 0
jne 0x14014ed9f
sub rsp, 0x20
call fcn.14014be98
mov rcx, qword [rbp + 0x28]
add rsp, 0x20
movabs rdx, 0x5ba19b94bc48fb9
movabs rax, 0x5ba19b94bc48fb1
xor rdx, rax
sub rsp, 0x20
call fcn.14014db90
mov rcx, qword [rbp + 0x28]
mov rdx, qword [rbp - 0x50]
call fcn.14014c190
add rsp, 0x20
mov rax, qword [rbp + 0x38]
mov rax, qword [rax + 8]
mov qword [rbp - 0x70], rax
cmp rax, 0
je 0x14014ee08
mov rax, qword [rbp - 0x70]
mov rax, qword [rax]
mov rcx, rax
add rcx, 1
movabs rdx, 0x681c8b42c00b1263
movabs r8, 0x97e374bd3ff4ed9c
xor rdx, r8
xor rax, rdx
movabs rdx, 0x4000000000000000
or rax, rdx
add rax, rcx
cmp rax, 0
jne 0x14014ee08
mov rcx, qword [rbp - 0x70]
sub rsp, 0x20
call fcn.14000eec9
add rsp, 0x20
mov eax, dword [0x1402541f8]
xor edx, edx
div dword [0x1402541fc]
mov ecx, 0x5dfd0b8d
xor edx, edx
div ecx
mov ecx, eax
mov r8d, 0xffffffff
xor r8d, 0x7a06c71
mov edx, ecx
and edx, r8d
mov eax, ecx
or eax, r8d
xor eax, 0xffffffff
imul eax, edx
mov r8d, 0x188bf4e6
xor r8d, 0x1f2b9897
mov edx, ecx
and edx, r8d
or ecx, 0x7a06c71
imul ecx, edx
add ecx, eax
mov eax, ecx
and eax, 0x2cf7faa9
xor eax, 0xffffffff
and ecx, 0x2cf7faa9
xor ecx, 0xffffffff
and eax, ecx
mov ecx, 0xc7ddfa1a
xor ecx, 0x382205e5
xor eax, ecx
cmp eax, 0x252585bb
je 0x14014efcf
mov rcx, qword [rbp + 0x40]
mov eax, dword [0x140254200]
and eax, dword [0x140254204]
or eax, 0xc4852a20
mov r8d, eax
xor r8d, 0xffffffff
and r8d, 0x236c232
mov r9d, 0xa8f8e194
xor r9d, 0xaace23a6
mov edx, 0xb70ce5d
xor edx, 0xf48f31a2
xor r9d, edx
mov edx, eax
and edx, r9d
imul edx, r8d
mov r8d, eax
and r8d, 0x236c232
mov r9d, 0xa5b2aea
xor r9d, 0x86de8d8
or eax, r9d
imul eax, r8d
add eax, edx
imul eax, eax, 0x186c70ab
mov rcx, qword [rcx]
mov qword [rbp - 0x80], rcx
cmp rcx, 0
sete cl
mov byte [rbp - 0x71], cl
cmp eax, 0x571e2d3
jb 0x14014ee88
mov al, byte [rbp - 0x71]
test al, 1
jne 0x14014efb4
jmp 0x14014ef21
mov rax, qword [rbp - 0x80]
mov rcx, qword [rax]
xor rcx, 0xffffffffffffffff
mov rdx, 0xffffffffffffffff
movabs r8, 0x4000000000000000
xor rdx, r8
movabs r8, 0xfbcbf9d9a3f4a281
movabs r9, 0xcbd67f25aae82eea
xor r8, r9
movabs r9, 0xa9cf37193ca13bec
movabs r10, 0x5630c8e6c35ec413
xor r9, r10
xor r8, r9
or rcx, rdx
movabs rdx, 0x8e0baf6a63026784
movabs r9, 0xbe1629966a1eebef
xor rdx, r9
or rdx, r8
xor rcx, 0xffffffffffffffff
and rcx, rdx
cmp rcx, 0
mov qword [rbp - 0x30], rax
jne 0x14014efb4
mov rcx, qword [rbp - 0x30]
sub rsp, 0x20
call fcn.14000eec9
add rsp, 0x20
lea rsp, [rbp + 0x140]
pop rbp
ret
retf
std
sbb al, byte [rsi - 0x1f]
jmp 0x14014eae7
shl dword [rdi - 0x4f16f78b], 0xfe
invalid