Function at 0x140144ea0
Capabilities:
Encode data using xor

Disassembly:
push rbp
sub rsp, 0x190
lea rbp, [rsp + 0x80]
mov qword [rbp], rdx
mov qword [rbp + 0x28], rcx
mov qword [rbp + 8], rcx
mov eax, 0x10
mov qword [rbp + 0x10], rax
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x10]
mov rcx, rsp
mov qword [rbp + 0x18], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x20], rax
sub rsp, 0x20
call fcn.140153418
mov rcx, qword [rbp + 0x28]
add rsp, 0x20
mov qword [rbp + 0x40], rax
add rax, 0x60
mov qword [rbp + 0x30], rax
movabs rdx, 0x516a922d1a9296b4
movabs rax, 0x516a922d1a9296ac
xor rdx, rax
sub rsp, 0x20
call fcn.140145990
add rsp, 0x20
mov qword [rbp + 0x100], 0
lea rax, [rbp + 0x100]
add rax, 8
mov qword [rbp + 0x38], rax
mov qword [rbp + 0x108], 0
mov ax, 0xaff6
xor ax, 0xa496
mov word [rbp + 0xfe], ax
lea rcx, [rbp + 0xfe]
sub rsp, 0x20
call fcn.140062840
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x40]
mov qword [rbp + 0x48], rcx
cmp byte [rax + 0x60], 0
jne 0x1401456b9
mov eax, dword [0x1401d0560]
xor edx, edx
div dword [0x1401d0564]
mov ecx, 0x69a756c6
xor edx, edx
div ecx
mov ecx, 0x8a1cd8c
xor edx, edx
div ecx
mov ecx, 0x540aff4b
xor ecx, 0xc0adde18
imul eax, ecx
cmp eax, 0x671f8a4f
je 0x140145959
mov rcx, qword [rbp + 0x18]
mov eax, dword [0x1401d0568]
xor edx, edx
div dword [0x1401d056c]
mov rdx, qword [rbp]
mov r8d, eax
mov rax, qword [rbp + 0x48]
mov r9d, 0xa6ff32b2
xor r9d, 0xe217fe54
or r8d, r9d
mov r9d, 0xb34e4daf
xor r9d, 0x387e22fb
imul r8d, r9d
mov r11d, 0x684ce792
xor r11d, 0xfd25c004
mov r9d, 0x71aa0771
xor r9d, 0x8e55f88e
xor r11d, r9d
mov r10d, r8d
and r10d, r11d
mov r9d, r8d
or r9d, r11d
xor r9d, 0xffffffff
imul r9d, r10d
mov r10d, r8d
and r10d, 0x95692796
or r8d, 0x95692796
imul r8d, r10d
add r8d, r9d
mov dword [rbp - 0x1c], r8d
mov r8, qword [rdx]
mov qword [rbp + 0xe8], r8
mov rdx, qword [rdx + 8]
mov qword [rbp + 0xf0], rdx
mov rdx, qword [rax]
mov qword [rbp + 0xd8], rdx
mov rax, qword [rax + 8]
mov qword [rbp + 0xe0], rax
lea rdx, [rbp + 0xe8]
lea r8, [rbp + 0xd8]
sub rsp, 0x20
call fcn.140145ad9
mov rdx, qword [rbp + 0x18]
mov rcx, qword [rbp + 0x30]
mov eax, dword [rbp - 0x1c]
add rsp, 0x20
mov r8, qword [rdx]
mov qword [rbp - 0x18], r8
mov rdx, qword [rdx + 8]
mov qword [rbp - 0x10], rdx
mov cl, byte [rcx]
mov dl, 0xf1
xor dl, 0xf1
cmp cl, dl
sete cl
mov byte [rbp - 1], cl
cmp eax, 0x5c56783b
jbe 0x140144fbe
mov al, byte [rbp - 1]
test al, 1
jne 0x1401450d2
jmp 0x1401456b9
mov rax, qword [rbp - 0x10]
mov rcx, qword [rbp - 0x18]
mov qword [rbp + 0xc8], rcx
mov qword [rbp + 0xd0], rax
sub rsp, 0x20
lea rcx, [rbp + 0xc8]
call fcn.1400b514a
add rsp, 0x20
mov cl, al
mov rax, qword [rbp + 0x30]
mov al, byte [rax]
test al, al
setne al
mov byte [rbp - 0x1d], al
or al, cl
test al, 1
jne 0x1401456be
mov ecx, 0x6c6
sub rsp, 0x20
call fcn.140062510
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x30]
mov qword [rbp - 0x38], rcx
mov cl, byte [rax]
mov dl, 0x73
xor dl, 0x73
xor eax, eax
cmp cl, dl
mov rcx, rax
mov qword [rbp - 0x30], rcx
mov qword [rbp - 0x28], rax
jne 0x140145683
mov ax, 0x7d33
xor ax, 0x7d81
mov word [rbp + 0xfc], ax
lea rcx, [rbp + 0xfc]
sub rsp, 0x20
call fcn.140062840
mov rcx, qword [rbp + 0x30]
add rsp, 0x20
mov qword [rbp - 0x40], rax
xor eax, eax
cmp byte [rcx], 0
mov rcx, rax
mov qword [rbp - 0x30], rcx
mov qword [rbp - 0x28], rax
jne 0x140145683
mov eax, dword [0x1401d0570]
xor edx, edx
div dword [0x1401d0574]
mov ecx, eax
mov eax, ecx
and eax, eax
xor eax, 0xffffffff
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xde34cbbb
or eax, edx
mov edx, 0xffffffff
xor edx, 0xde34cbbb
mov r8d, 0x70972ea0
xor r8d, 0xaea3e51b
mov r9d, 0xae667e84
xor r9d, 0x5199817b
xor r8d, r9d
or edx, r8d
xor ecx, 0xffffffff
xor edx, 0xffffffff
or ecx, edx
mov edx, 0x45d4909a
xor edx, 0xba2b6f65
xor eax, edx
xor ecx, 0xffffffff
or eax, ecx
xor ecx, ecx
sub ecx, 0x3fbc9d2b
sub eax, ecx
mov ecx, 0xb6dce324
xor ecx, 0x9acfc928
add eax, ecx
mov ecx, 0xb2f09aec
xor ecx, 0x1b275469
sub eax, ecx
sub eax, 0x2c132a0c
cmp eax, 0xe1e997b8
je 0x140145962
mov r8, qword [rbp - 0x38]
mov rcx, qword [rbp]
mov eax, dword [0x1401d0578]
xor edx, edx
div dword [0x1401d057c]
mov r9d, 0x4c61b26e
xor r9d, 0x2c221f18
xor edx, edx
div r9d
mov edx, eax
mov rax, qword [rbp - 0x40]
xor edx, 0x7131415a
mov r10d, edx
xor r10d, 0xffffffff
and r10d, 0x10bd7bbd
mov r11d, 0xffffffff
xor r11d, 0x10bd7bbd
mov r9d, edx
and r9d, r11d
imul r9d, r10d
mov r10d, edx
and r10d, 0x10bd7bbd
or edx, 0x10bd7bbd
imul edx, r10d
add edx, r9d
mov dword [rbp - 0x5c], edx
mov rdx, qword [rcx]
mov qword [rbp + 0xa8], rdx
mov rcx, qword [rcx + 8]
mov qword [rbp + 0xb0], rcx
mov rcx, qword [rax]
mov qword [rbp + 0x98], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0xa0], rax
lea rcx, [rbp + 0xb8]
lea rdx, [rbp + 0xa8]
lea r9, [rbp + 0x98]
sub rsp, 0x20
call fcn.14012f780
mov rcx, qword [rbp + 0x30]
mov eax, dword [rbp - 0x5c]
add rsp, 0x20
mov rdx, qword [rbp + 0xb8]
mov qword [rbp - 0x58], rdx
mov rdx, qword [rbp + 0xc0]
mov qword [rbp - 0x50], rdx
cmp byte [rcx], 0
sete cl
mov byte [rbp - 0x41], cl
cmp eax, 0x9b4e3d7c
jae 0x140145962
mov rax, qword [rbp - 0x58]
mov rcx, qword [rbp - 0x50]
mov dl, byte [rbp - 0x41]
test dl, 1
mov qword [rbp - 0x30], rcx
mov qword [rbp - 0x28], rax
jne 0x140145341
jmp 0x140145683
mov ecx, 0x461
sub rsp, 0x20
call fcn.140062510
mov rdx, qword [rbp + 0x30]
mov rcx, qword [rbp - 0x50]
add rsp, 0x20
mov r8, rax
mov rax, qword [rbp - 0x58]
mov qword [rbp - 0x68], r8
cmp byte [rdx], 0
mov qword [rbp - 0x30], rcx
mov qword [rbp - 0x28], rax
jne 0x140145683
mov ecx, dword [0x1401d0580]
imul ecx, dword [0x1401d0584]
mov eax, ecx
xor eax, 0xffffffff
mov edx, ecx
xor edx, 0xffffffff
and eax, edx
mov edx, 0x70715a27
or edx, 0x70715a27
xor edx, 0xffffffff
mov r8d, 0x506dee67
xor r8d, 0xaf921198
xor eax, r8d
mov r8d, 0x1c994ec3
xor r8d, 0xe366b13c
xor edx, r8d
and eax, edx
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x70715a27
and ecx, edx
or eax, ecx
xor eax, 0xffffffff
add eax, 0xeadafe15
mov ecx, eax
xor ecx, 0xffffffff
mov edx, 0x140df933
xor edx, 0x710c66e6
and ecx, edx
mov edx, 0xffffffff
xor edx, 0x65019fd5
and eax, edx
sub eax, ecx
cmp eax, 0x26969fc
jbe 0x14014596b
mov rcx, qword [rbp - 0x68]
mov eax, dword [0x1401d0588]
xor eax, 0x2fa17840
xor edx, edx
div dword [0x1401d058c]
mov rdx, qword [rbp - 0x58]
mov r9d, eax
xor r9d, 0xffffffff
and r9d, 0xe888350a
mov r10d, 0x70cc9708
xor r10d, 0x9844a202
mov r8d, 0xf024ca84
xor r8d, 0xfdb357b
xor r10d, r8d
mov r8d, eax
and r8d, r10d
imul r8d, r9d
mov r9d, eax
and r9d, 0xe888350a
or eax, 0xe888350a
imul eax, r9d
add eax, r8d
mov r8d, eax
xor r8d, 0xffffffff
and r8d, 0x97e0de6
mov r9d, 0xffffffff
xor r9d, 0x97e0de6
and eax, r9d
sub eax, r8d
add eax, 0xc5a919aa
cmp rcx, rdx
setl cl
mov byte [rbp - 0x69], cl
cmp eax, 0x103c5adb
jb 0x14014596b
mov al, byte [rbp - 0x69]
test al, 1
jne 0x1401454b6
jmp 0x1401454ff
mov rax, qword [rbp]
mov rcx, qword [rax]
mov qword [rbp + 0x88], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x90], rax
lea rcx, [rbp + 0x100]
lea rdx, [rbp + 0x88]
sub rsp, 0x20
call fcn.140018d5d
mov rcx, qword [rbp - 0x50]
mov rax, qword [rbp - 0x58]
add rsp, 0x20
mov qword [rbp - 0x30], rcx
mov qword [rbp - 0x28], rax
jmp 0x140145683
mov ecx, dword [0x1401d0590]
mov edx, dword [0x1401d0594]
xor edx, 0x9a40a79d
mov eax, ecx
and eax, eax
xor eax, 0xffffffff
and eax, edx
xor eax, 0xffffffff
and edx, edx
xor edx, 0xffffffff
mov r8d, 0x6bb63afd
xor r8d, 0x9449c502
xor ecx, r8d
xor edx, 0xffffffff
or ecx, edx
and eax, ecx
xor eax, 0xffffffff
or eax, 0x5df0c06b
mov ecx, 0x23e4898c
xor ecx, 0x6ffead01
or eax, ecx
mov ecx, 0xdfbe3c7a
xor ecx, 0x25d1ad6e
xor edx, edx
div ecx
mov ecx, 0x86376937
xor ecx, 0xa8fac1a2
cmp eax, ecx
jae 0x140145974
mov eax, dword [0x1401d0598]
mov edx, dword [0x1401d059c]
mov r8d, 0x26ff58c2
xor r8d, 0xd900a73d
mov ecx, eax
xor ecx, r8d
mov r8d, eax
xor r8d, 0xffffffff
or ecx, r8d
xor ecx, 0xffffffff
mov r8d, edx
xor r8d, 0xffffffff
or ecx, r8d
and edx, edx
mov r8d, 0x33e6058e
xor r8d, 0xcc19fa71
xor edx, r8d
and eax, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
xor eax, 0xffffffff
or ecx, eax
xor ecx, 0x8ebf1bc9
mov eax, ecx
and eax, eax
mov edx, 0xd4e4849a
xor edx, 0x2b1b7b65
xor eax, edx
mov edx, 0x80f08002
xor edx, 0x7f0f7ffd
xor eax, edx
mov edx, 0xdbba4de0
xor edx, 0x94af3a7
mov r8d, 0xf2595c02
xor r8d, 0xda6a3fd
xor edx, r8d
or eax, edx
mov edx, 0xffffffff
xor edx, 0xd2f0be47
mov r8d, 0xffffffff
xor r8d, 0xd2f0be47
or edx, r8d
xor ecx, 0xffffffff
xor edx, 0xffffffff
or ecx, edx
xor eax, 0xffffffff
mov edx, 0x448b8926
xor edx, 0xbb7476d9
xor ecx, edx
or eax, ecx
mov ecx, 0x8bdd6e4a
xor ecx, 0xbbca230a
add eax, ecx
mov rcx, qword [0x1401dd000]
mov qword [rbp + 0x100], rcx
mov rcx, qword [0x1401dd008]
mov qword [rbp + 0x108], rcx
cmp eax, 0x60c6c601
jbe 0x140145974
mov rax, qword [rbp - 0x58]
mov rcx, qword [rbp - 0x50]
mov qword [rbp - 0x30], rcx
mov qword [rbp - 0x28], rax
jmp 0x140145683
mov rax, qword [rbp - 0x30]
mov rcx, qword [rbp - 0x28]
mov qword [rbp + 0x78], rcx
mov qword [rbp + 0x80], rax
lea rcx, [rbp + 0x78]
sub rsp, 0x20
call fcn.140017fc0
mov rax, qword [rbp + 0x30]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401456b9
jmp 0x140145753
jmp 0x1401457b6
mov al, byte [rbp - 0x1d]
test al, 1
jne 0x1401457b6
mov ax, 0x87b1
xor ax, 0x844a
mov word [rbp + 0x76], ax
lea rcx, [rbp + 0x76]
sub rsp, 0x20
call fcn.140062840
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x30]
mov qword [rbp - 0x78], rcx
cmp byte [rax], 0
jne 0x14014574e
mov r8, qword [rbp + 0x20]
mov rax, qword [rbp - 0x78]
mov rcx, qword [rbp]
mov rdx, qword [rcx]
mov qword [rbp + 0x60], rdx
mov rcx, qword [rcx + 8]
mov qword [rbp + 0x68], rcx
mov rcx, qword [rax]
mov qword [r8], rcx
mov rax, qword [rax + 8]
mov qword [r8 + 8], rax
lea rcx, [rbp + 0x100]
lea rdx, [rbp + 0x60]
sub rsp, 0x20
call fcn.140145ad9
mov rax, qword [rbp + 0x30]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0xa3
xor cl, 0xa3
cmp al, cl
je 0x140145753
jmp 0x1401457b6
cmp qword [rbp + 0x100], 0
jne 0x140145777
mov rcx, qword [rbp + 0x28]
sub rsp, 0x20
call fcn.140145b55
add rsp, 0x20
jmp 0x1401457b6
mov rax, qword [rbp + 0x100]
mov qword [rbp + 0x50], rax
mov rax, qword [rbp + 0x108]
mov qword [rbp + 0x58], rax
lea rcx, [rbp + 0x100]
sub rsp, 0x20
call fcn.14000f979
mov rcx, qword [rbp + 0x28]
add rsp, 0x20
lea rdx, [rbp + 0x50]
sub rsp, 0x20
call fcn.140145b75
add rsp, 0x20
mov rax, qword [rbp + 0x38]
mov rax, qword [rax]
mov qword [rbp - 0x80], rax
cmp rax, 0
je 0x140145808
mov rax, qword [rbp - 0x80]
mov rax, qword [rax]
mov rcx, rax
add rcx, 1
xor rax, 0xffffffffffffffff
movabs rdx, 0x4000000000000000
or rax, rdx
add rax, rcx
cmp rax, 0
jne 0x140145808
mov rcx, qword [rbp - 0x80]
sub rsp, 0x20
call fcn.14000e572
add rsp, 0x20
mov eax, dword [0x1401d05a0]
mov edx, dword [0x1401d05a4]
mov ecx, 0x4e70cf33
xor ecx, 0x4e70cf33
sub ecx, edx
add eax, ecx
mov r11d, eax
xor r11d, 0xffffffff
mov edx, 0xb2f900e5
xor edx, 0x4d06ff1a
mov ecx, eax
xor ecx, edx
or r11d, ecx
xor r11d, 0xffffffff
mov ecx, 0xffffffff
xor ecx, 0x2572ebeb
or r11d, ecx
mov ecx, 0xffffffff
xor ecx, 0x2572ebeb
mov edx, 0xffffffff
xor edx, 0x2572ebeb
or ecx, edx
mov edx, 0x6e0fc53f
xor edx, 0x91f03ac0
xor eax, edx
xor ecx, 0xffffffff
or eax, ecx
xor r11d, 0xffffffff
mov ecx, 0x6831ded1
xor ecx, 0x97ce212e
xor eax, ecx
or r11d, eax
mov ecx, r11d
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xf018ebd8
mov r8d, 0xffffffff
xor r8d, 0xe66105a1
mov eax, ecx
and eax, 0xe66105a1
and r11d, r8d
mov r9d, edx
and r9d, 0xe66105a1
mov r10d, r8d
and r10d, 0xf018ebd8
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, edx
xor ecx, 0xffffffff
mov edx, 0x399f922c
xor edx, 0xdffe978d
or edx, r8d
and ecx, edx
or eax, ecx
mov ecx, eax
xor ecx, 0xca8f50e9
xor ecx, 0xffffffff
mov edx, 0x69a11df
xor edx, 0xcc154136
or eax, edx
and eax, ecx
cmp eax, 0xddc20fc2
ja 0x14014597d
mov eax, dword [str.JS:_t]
and eax, dword [0x1401d05ac]
add eax, 0x4347356
mov ecx, 0xfc48a0dd
xor ecx, 0xfc48a0dd
mov edx, 0xfa45425d
xor edx, 0x1bc9da3a
sub ecx, edx
sub eax, ecx
mov ecx, 0x105da5f3
xor edx, edx
div ecx
cmp eax, 0xfb233075
ja 0x14014590d
mov rax, qword [rbp + 8]
lea rsp, [rbp + 0x110]
pop rbp
ret
jo 0x14014599a
and dword [rbx - 0x17], ecx
pop rsp
idiv bh
call qword [rdx - 0x164626c3]
invalid
xchg edx, eax
cmp eax, 0xc5e9b9d9
clc
invalid
invalid
jle 0x14014595e
std
jmp 0x140145570
xor al, byte [rbx - 0x78160b14]
invalid
mov dword [rsp + 0x50], ecx