Function at 0x140147db0
Capabilities:
Encode data using xor

Disassembly:
push rbp
sub rsp, 0x210
lea rbp, [rsp + 0x80]
mov qword [rbp - 0x20], r8
mov qword [rbp + 0x58], rdx
mov eax, 0x10
mov qword [rbp + 0x28], rax
call fcn.1401c7680
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x60], rax
mov eax, 0x20
mov qword [rbp + 0x18], rax
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x28]
mov rcx, rsp
mov qword [rbp + 0x40], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x28]
mov rcx, rsp
mov qword [rbp - 0x18], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x28]
mov rcx, rsp
mov qword [rbp - 0x10], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x28]
mov rcx, rsp
mov qword [rbp - 8], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x28]
mov rcx, rsp
mov qword [rbp], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x18]
mov rcx, rsp
mov qword [rbp + 8], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x28]
mov rcx, rsp
mov qword [rbp + 0x10], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x18]
mov rcx, rsp
mov qword [rbp + 0x20], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x28]
mov rcx, rsp
mov qword [rbp + 0x30], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x38], rax
sub rsp, 0x20
call fcn.140153418
mov rcx, qword [rbp + 0x40]
add rsp, 0x20
mov rdx, rax
mov rax, qword [rbp + 0x60]
mov qword [rbp + 0x68], rdx
add rdx, 0x60
mov qword [rbp + 0x48], rdx
movabs rdx, 0xed285533b154bd24
movabs r8, 0xed285533b154bd24
xor rdx, r8
mov qword [rax], rdx
mov rdx, rax
add rdx, 8
mov qword [rbp + 0x50], rdx
mov qword [rax + 8], 0
mov edx, 0x18
sub rsp, 0x20
call fcn.140145990
mov rdx, qword [rbp + 0x58]
mov rcx, qword [rbp + 0x60]
add rsp, 0x20
mov rax, qword [rdx]
mov qword [rbp + 0x178], rax
mov rax, qword [rdx + 8]
mov qword [rbp + 0x180], rax
lea rdx, [rbp + 0x178]
sub rsp, 0x20
call fcn.14008e9e0
mov rcx, qword [rbp + 0x68]
add rsp, 0x20
mov al, 1
cmp byte [rcx + 0x60], 0
mov byte [rbp + 0x77], al
jne 0x140148770
movabs rcx, 0x3cbc1cdd8b4a50ea
movabs rax, 0x3cbc1cdd8b4a506a
xor rcx, rax
movabs rdx, 0x65415b5f681a2803
movabs rax, 0x65415b5f681a280b
xor rdx, rax
sub rsp, 0x20
call fcn.14001be40
mov rcx, qword [rbp - 8]
add rsp, 0x20
mov rdx, rax
mov rax, qword [rbp + 0x58]
mov qword [rbp - 0x30], rdx
mov rdx, qword [rax]
mov qword [rbp + 0x168], rdx
mov rax, qword [rax + 8]
mov qword [rbp + 0x170], rax
lea rdx, [rbp + 0x168]
sub rsp, 0x20
call fcn.14001c072
mov r8, qword [rbp - 8]
mov rcx, qword [rbp + 0x60]
mov rax, qword [rbp - 0x18]
mov rdx, qword [rbp - 0x30]
add rsp, 0x20
mov r9, qword [r8]
mov r8, qword [r8 + 8]
mov qword [rdx], r9
mov qword [rdx + 8], r8
mov rdx, qword [rcx]
mov qword [rax], rdx
mov rdx, qword [rcx + 8]
mov qword [rax + 8], rdx
sub rsp, 0x20
call fcn.14000f979
mov rdx, qword [rbp - 0x18]
mov rax, qword [rbp - 0x30]
mov rcx, qword [rbp - 0x10]
add rsp, 0x20
mov r8, qword [rdx]
mov qword [rax + 0x10], r8
mov rdx, qword [rdx + 8]
mov qword [rax + 0x18], rdx
mov ax, 0x71a5
xor ax, 0x7047
mov word [rcx], ax
sub rsp, 0x20
call fcn.140062840
mov rcx, qword [rbp + 0x48]
add rsp, 0x20
mov qword [rbp - 0x28], rax
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0x77], al
jne 0x140148770
mov eax, dword [0x1401d06b0]
add eax, dword [0x1401d06b4]
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0x8154d5a1
mov edx, 0x7e82397c
xor edx, 0xffd6ecdd
mov r8d, 0x7637e11d
xor r8d, 0x89c81ee2
xor edx, r8d
and eax, edx
sub eax, ecx
mov ecx, 0xb42b28b1
xor ecx, 0x17ab2429
xor edx, edx
div ecx
mov ecx, 0x66e2f07c
xor ecx, 0xc142850c
and ecx, eax
xor ecx, 0xffffffff
add eax, 0xa7a07570
mov edx, 0x1b7b6fb1
xor edx, 0x1b7b6fb0
add eax, edx
add eax, ecx
mov ecx, 0x964d9d4c
xor ecx, 0xcd310897
cmp eax, ecx
jb 0x14014883d
mov rax, qword [rbp - 0x28]
mov rcx, qword [rbp + 0x58]
mov edx, dword [0x1401d06b8]
mov r10d, dword [0x1401d06bc]
mov r8d, edx
xor r8d, 0xffffffff
mov r9d, r10d
and r9d, r8d
mov r11d, r10d
xor r11d, 0xffffffff
mov r8d, edx
and r8d, r11d
imul r8d, r9d
mov r9d, edx
and r9d, r10d
or edx, r10d
imul edx, r9d
add edx, r8d
or edx, 0xb0f7971b
xor edx, 0x3d786f71
and edx, 0x8469c9b5
mov dword [rbp - 0x38], edx
mov rdx, qword [rcx]
mov qword [rbp + 0x140], rdx
mov rcx, qword [rcx + 8]
mov qword [rbp + 0x148], rcx
mov rcx, qword [rax]
mov qword [rbp + 0x130], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x138], rax
lea rcx, [rbp + 0x150]
lea rdx, [rbp + 0x140]
lea r8, [rbp + 0x130]
sub rsp, 0x20
call fcn.14012feb0
mov rdx, qword [rbp - 0x30]
mov rcx, qword [rbp + 0x48]
mov eax, dword [rbp - 0x38]
add rsp, 0x20
mov r8, qword [rbp + 0x150]
mov qword [rdx + 0x20], r8
mov r8, qword [rbp + 0x158]
mov qword [rdx + 0x28], r8
mov r8, qword [rbp + 0x160]
mov qword [rdx + 0x30], r8
mov cl, byte [rcx]
mov dl, 0x6c
xor dl, 0x6c
cmp cl, dl
sete cl
mov byte [rbp - 0x31], cl
cmp eax, 0x27d3b71a
jbe 0x1401480bb
mov cl, byte [rbp - 0x31]
mov al, 1
test cl, 1
mov byte [rbp + 0x77], al
jne 0x1401481bb
jmp 0x140148770
mov eax, dword [0x1401d06c0]
xor eax, 0x657122b8
mov ecx, dword [0x1401d06c4]
xor ecx, 0x7accb2e3
sub eax, ecx
mov ecx, 0xffffffff
xor ecx, 0xdf41a07a
xor edx, edx
sub edx, 1
sub ecx, edx
sub eax, ecx
and eax, 0xa1b4b631
add eax, 0x22e06d39
cmp eax, 0x12c8943f
je 0x140148846
mov eax, dword [0x1401d06c8]
or eax, dword [0x1401d06cc]
mov ecx, eax
xor ecx, 0x397a72f4
xor ecx, 0xffffffff
mov edx, 0xc53ba49b
xor edx, 0xfc41d66f
and edx, ecx
mov ecx, 0xc2f8113e
xor ecx, 0xc2f8113c
imul ecx, edx
sub ecx, 0x397a72f4
sub eax, ecx
imul eax, eax, 0xb6e0653b
sub eax, 0x7a0f33de
mov dword [rbp - 0x4c], eax
lea rcx, [rbp + 0x118]
mov edx, 0x18
sub rsp, 0x20
call fcn.140145990
mov rcx, qword [rbp]
add rsp, 0x20
mov ax, 0x7bd4
xor ax, 0x727a
mov word [rcx], ax
sub rsp, 0x20
call fcn.140062840
mov rcx, qword [rbp + 0x48]
add rsp, 0x20
mov rdx, rax
mov eax, dword [rbp - 0x4c]
mov qword [rbp - 0x48], rdx
mov cl, byte [rcx]
mov dl, 0x9e
xor dl, 0x9e
cmp cl, dl
sete cl
mov byte [rbp - 0x39], cl
cmp eax, 0x28d976f5
je 0x1401481fd
mov cl, byte [rbp - 0x39]
mov al, 1
test cl, 1
mov byte [rbp - 0x4d], al
jne 0x1401482b8
jmp 0x140148592
mov rax, qword [rbp - 0x48]
mov rcx, qword [rbp + 0x58]
mov rdx, qword [rcx]
mov qword [rbp + 0xf0], rdx
mov rcx, qword [rcx + 8]
mov qword [rbp + 0xf8], rcx
mov rcx, qword [rax]
mov qword [rbp + 0xe0], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0xe8], rax
lea rcx, [rbp + 0x118]
lea rdx, [rbp + 0xf0]
lea r8, [rbp + 0xe0]
sub rsp, 0x20
call fcn.14012feb0
mov rcx, qword [rbp + 0x48]
add rsp, 0x20
mov al, 1
cmp byte [rcx], 0
mov byte [rbp - 0x4d], al
jne 0x140148592
mov eax, dword [0x1401d06d0]
xor edx, edx
div dword [0x1401d06d4]
mov ecx, eax
mov eax, ecx
or eax, eax
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x65ac15ee
mov r8d, 0xffffffff
xor r8d, 0x65ac15ee
and edx, r8d
or eax, edx
xor eax, 0xffffffff
mov edx, 0xb5078815
xor edx, 0xd0ab9dfb
or ecx, edx
xor ecx, 0xffffffff
xor eax, 0xffffffff
mov edx, 0xccad10e2
xor edx, 0x3352ef1d
xor ecx, edx
and eax, ecx
sub eax, 0x7e7a475
add eax, 0xbab58f8b
add eax, 0x7e7a475
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xb8f7a624
mov ecx, 0xffffffff
xor ecx, 0x64d63e99
or eax, edx
or ecx, 0x64d63e99
xor eax, 0xffffffff
and eax, ecx
mov ecx, 0x246b5f5e
xor ecx, 0x626b2f63
cmp eax, ecx
je 0x14014884f
mov eax, dword [0x1401d06d8]
mov edx, dword [0x1401d06dc]
mov ecx, eax
xor ecx, edx
xor edx, 0xffffffff
and eax, edx
shl eax, 1
sub eax, ecx
or eax, 0x2f7f8a28
sub eax, 0xeebc3f55
mov ecx, 0x4e1650fb
xor ecx, 0x705bd25a
and eax, ecx
cmp byte [rbp + 0x128], 0
sete cl
mov byte [rbp - 0x4e], cl
cmp eax, 0x1a2be03c
ja 0x1401483bf
mov al, byte [rbp - 0x4e]
test al, 1
jne 0x140148418
jmp 0x1401484fb
mov word [rbp + 0xde], 0x6a2
lea rcx, [rbp + 0xde]
sub rsp, 0x20
call fcn.140062840
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x48]
mov qword [rbp - 0x58], rcx
mov al, byte [rax]
mov cl, 0x4a
xor cl, 0x4a
cmp al, cl
jne 0x1401484f1
mov r8, qword [rbp + 8]
mov rax, qword [rbp - 0x58]
mov rcx, qword [rbp + 0x58]
mov rdx, qword [rcx]
mov qword [rbp + 0xb0], rdx
mov rcx, qword [rcx + 8]
mov qword [rbp + 0xb8], rcx
mov rcx, qword [rax]
mov qword [r8], rcx
mov rax, qword [rax + 8]
mov qword [r8 + 8], rax
lea rcx, [rbp + 0xc0]
lea rdx, [rbp + 0xb0]
sub rsp, 0x20
call fcn.14012feb0
mov rax, qword [rbp + 0x48]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0x6c
xor cl, 0x6c
cmp al, cl
jne 0x1401484f1
mov rdx, qword [rbp + 0x10]
mov rax, qword [rbp + 0xc0]
mov qword [rdx], rax
mov rax, qword [rbp + 0xc8]
mov qword [rdx + 8], rax
mov rax, qword [rbp + 0xd0]
mov qword [rdx + 0x10], rax
lea rcx, [rbp + 0x118]
sub rsp, 0x20
call fcn.14005dc23
mov rax, qword [rbp + 0x48]
add rsp, 0x20
cmp byte [rax], 0
je 0x1401484fb
mov al, 1
mov byte [rbp - 0x4d], al
jmp 0x140148592
mov rax, qword [rbp + 0x40]
mov rcx, qword [rbp + 0x118]
mov qword [rax], rcx
mov rcx, qword [rbp + 0x120]
mov qword [rax + 8], rcx
mov rcx, qword [rbp + 0x128]
mov qword [rax + 0x10], rcx
lea rcx, [rbp + 0x118]
sub rsp, 0x20
call fcn.14005da3b
mov rcx, qword [rbp + 0x40]
add rsp, 0x20
mov rax, qword [rcx]
mov qword [rbp + 0x100], rax
mov rax, qword [rcx + 8]
mov qword [rbp + 0x108], rax
mov rax, qword [rcx + 0x10]
mov qword [rbp + 0x110], rax
sub rsp, 0x20
call fcn.14005da3b
mov rcx, qword [rbp - 0x30]
mov rax, qword [rbp + 0x48]
add rsp, 0x20
mov rdx, qword [rbp + 0x100]
mov qword [rcx + 0x38], rdx
mov rdx, qword [rbp + 0x108]
mov qword [rcx + 0x40], rdx
mov rdx, qword [rbp + 0x110]
mov qword [rcx + 0x48], rdx
mov al, byte [rax]
mov byte [rbp - 0x4d], al
mov rax, qword [rbp + 0x48]
mov cl, byte [rbp - 0x4d]
mov byte [rbp - 0x5a], cl
mov byte [rax], 0
lea rcx, [rbp + 0x118]
sub rsp, 0x20
call fcn.14005da50
mov rcx, qword [rbp + 0x48]
add rsp, 0x20
mov al, 1
cmp byte [rcx], 0
mov byte [rbp - 0x59], al
jne 0x1401485d9
mov al, byte [rbp - 0x5a]
mov rcx, qword [rbp + 0x48]
mov byte [rcx], al
cmp al, 0
mov byte [rbp - 0x59], al
je 0x1401485e4
mov al, byte [rbp - 0x59]
mov byte [rbp + 0x77], al
jmp 0x140148770
mov ax, 0xa197
xor ax, 0xa78f
mov word [rbp + 0x18e], ax
lea rcx, [rbp + 0x18e]
sub rsp, 0x20
call fcn.140062840
mov rcx, qword [rbp + 0x48]
add rsp, 0x20
mov qword [rbp - 0x68], rax
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0x77], al
jne 0x140148770
mov rdx, qword [rbp + 0x20]
mov rax, qword [rbp - 0x68]
mov rcx, qword [rbp + 0x58]
mov r8, qword [rcx]
mov qword [rdx], r8
mov rcx, qword [rcx + 8]
mov qword [rdx + 8], rcx
mov rcx, qword [rax]
mov qword [rbp + 0x88], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x90], rax
lea rcx, [rbp + 0x98]
lea r8, [rbp + 0x88]
sub rsp, 0x20
call fcn.14012feb0
mov rax, qword [rbp - 0x30]
mov rcx, qword [rbp + 0x48]
add rsp, 0x20
mov rdx, qword [rbp + 0x98]
mov qword [rax + 0x50], rdx
mov rdx, qword [rbp + 0xa0]
mov qword [rax + 0x58], rdx
mov rdx, qword [rbp + 0xa8]
mov qword [rax + 0x60], rdx
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0x77], al
jne 0x140148770
mov word [rbp + 0x18c], 0x60
lea rcx, [rbp + 0x18c]
sub rsp, 0x20
call fcn.140062840
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x48]
mov qword [rbp - 0x70], rcx
mov cl, byte [rax]
mov dl, 0x84
xor dl, 0x84
mov al, 1
cmp cl, dl
mov byte [rbp + 0x77], al
jne 0x140148770
mov rcx, qword [rbp + 0x30]
mov r8, qword [rbp + 0x38]
mov rax, qword [rbp - 0x70]
mov rdx, qword [rbp + 0x58]
mov r9, qword [rdx]
mov qword [rbp + 0x78], r9
mov rdx, qword [rdx + 8]
mov qword [rbp + 0x80], rdx
mov rdx, qword [rax]
mov qword [r8], rdx
mov rax, qword [rax + 8]
mov qword [r8 + 8], rax
lea rdx, [rbp + 0x78]
sub rsp, 0x20
call fcn.14012feb0
mov rdx, qword [rbp + 0x30]
mov rcx, qword [rbp - 0x30]
mov rax, qword [rbp + 0x48]
add rsp, 0x20
mov r8, qword [rdx]
mov qword [rcx + 0x68], r8
mov r8, qword [rdx + 8]
mov qword [rcx + 0x70], r8
mov rdx, qword [rdx + 0x10]
mov qword [rcx + 0x78], rdx
mov cl, byte [rax]
mov dl, 0xb2
xor dl, 0xb2
mov al, 1
cmp cl, dl
mov byte [rbp + 0x77], al
jne 0x140148770
mov rdx, qword [rbp - 0x30]
mov rcx, qword [rbp - 0x20]
sub rsp, 0x20
call fcn.140028280
mov rax, qword [rbp + 0x48]
add rsp, 0x20
mov al, byte [rax]
mov byte [rbp + 0x77], al
mov rax, qword [rbp + 0x48]
mov rcx, qword [rbp + 0x40]
mov dl, byte [rbp + 0x77]
mov byte [rbp - 0x71], dl
mov byte [rax], 0
sub rsp, 0x20
call fcn.14005da50
mov rax, qword [rbp + 0x48]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0xc6
xor cl, 0xc6
cmp al, cl
jne 0x140148834
mov rax, qword [rbp + 0x50]
mov rax, qword [rax]
mov qword [rbp - 0x80], rax
cmp rax, 0
je 0x14014882b
mov rax, qword [rbp - 0x80]
mov rcx, qword [rax]
movabs rdx, 0x4000000000000000
mov rax, rcx
and rax, rdx
xor rax, 0xffffffffffffffff
xor rcx, 0xffffffffffffffff
movabs rdx, 0x26a44610abd53c3a
movabs r8, 0x66a44610abd53c3a
xor rdx, r8
movabs r8, 0x72165ef1b8c4a35d
movabs r9, 0x8de9a10e473b5ca2
xor r8, r9
xor rdx, r8
or rcx, rdx
and rax, rcx
xor rax, 0xffffffffffffffff
cmp rax, 0
jne 0x14014882b
mov rcx, qword [rbp - 0x80]
sub rsp, 0x20
call fcn.14000e572
add rsp, 0x20
mov rax, qword [rbp + 0x48]
mov cl, byte [rbp - 0x71]
mov byte [rax], cl
lea rsp, [rbp + 0x190]
pop rbp
ret
invalid
imul edx, esi, 0xffffffa1
invalid
imul eax, dword [rbx + 0x67e9128c], 0xfffffffb
invalid