Function at 0x140087690
Capabilities:
Encode data using xor

Disassembly:
push rbp
sub rsp, 0x80
lea rbp, [rsp + 0x80]
mov qword [rbp - 0x68], rdx
mov qword [rbp - 0x40], rcx
mov eax, 0x10
mov qword [rbp - 0x58], rax
call fcn.14023fff0
sub rsp, rax
mov rax, qword [rbp - 0x58]
mov rcx, rsp
mov qword [rbp - 0x60], rcx
call fcn.14023fff0
sub rsp, rax
mov rax, qword [rbp - 0x58]
mov rcx, rsp
mov qword [rbp - 0x50], rcx
call fcn.14023fff0
sub rsp, rax
mov rax, rsp
mov qword [rbp - 0x48], rax
sub rsp, 0x20
call fcn.14006bc70
mov rcx, qword [rbp - 0x40]
add rsp, 0x20
mov qword [rbp - 0x38], rax
mov edx, 0xb
sub rsp, 0x20
call fcn.14006c623
mov rax, qword [rbp - 0x38]
add rsp, 0x20
cmp byte [rax], 0
jne 0x140087b20
mov rcx, qword [rbp - 0x40]
mov rax, qword [rbp - 0x68]
mov rdx, qword [rax]
sub rsp, 0x20
call fcn.14007a3e6
mov rax, qword [rbp - 0x38]
add rsp, 0x20
cmp byte [rax], 0
jne 0x140087b20
mov rdx, qword [rbp - 0x60]
mov rcx, qword [rbp - 0x40]
mov rax, qword [rbp - 0x68]
mov r8, qword [rax + 8]
mov qword [rdx], r8
mov rax, qword [rax + 0x10]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.14006df90
mov rax, qword [rbp - 0x38]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0x1a
xor cl, 0x1a
cmp al, cl
jne 0x140087b20
mov rcx, qword [rbp - 0x40]
mov rax, qword [rbp - 0x68]
mov rdx, qword [rax + 0x18]
mov qword [rbp - 0x10], rdx
mov rax, qword [rax + 0x20]
mov qword [rbp - 8], rax
lea rdx, [rbp - 0x10]
sub rsp, 0x20
call fcn.14006df90
mov rax, qword [rbp - 0x38]
add rsp, 0x20
cmp byte [rax], 0
jne 0x140087b20
mov rcx, qword [rbp - 0x40]
mov rax, qword [rbp - 0x68]
mov rdx, qword [rax + 0x28]
sub rsp, 0x20
call fcn.140086b12
mov rax, qword [rbp - 0x38]
add rsp, 0x20
cmp byte [rax], 0
jne 0x140087b20
mov rdx, qword [rbp - 0x50]
mov rcx, qword [rbp - 0x40]
mov rax, qword [rbp - 0x68]
mov r8, qword [rax + 0x30]
mov qword [rdx], r8
mov rax, qword [rax + 0x38]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.140086cfa
mov rax, qword [rbp - 0x38]
add rsp, 0x20
cmp byte [rax], 0
jne 0x140087b20
mov rcx, qword [rbp - 0x40]
mov rax, qword [rbp - 0x68]
mov rdx, qword [rax + 0x40]
sub rsp, 0x20
call fcn.14006e9c8
mov rax, qword [rbp - 0x38]
add rsp, 0x20
cmp byte [rax], 0
jne 0x140087b20
mov rcx, qword [rbp - 0x40]
mov rax, qword [rbp - 0x68]
mov rdx, qword [rax + 0x48]
mov qword [rbp - 0x20], rdx
mov rax, qword [rax + 0x50]
mov qword [rbp - 0x18], rax
lea rdx, [rbp - 0x20]
sub rsp, 0x20
call fcn.14006df90
mov rax, qword [rbp - 0x38]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0xcb
xor cl, 0xcb
cmp al, cl
jne 0x140087b20
mov rcx, qword [rbp - 0x40]
mov rax, qword [rbp - 0x68]
mov rdx, qword [rax + 0x58]
mov qword [rbp - 0x30], rdx
mov rax, qword [rax + 0x60]
mov qword [rbp - 0x28], rax
lea rdx, [rbp - 0x30]
sub rsp, 0x20
call fcn.140086e60
mov rax, qword [rbp - 0x38]
add rsp, 0x20
cmp byte [rax], 0
jne 0x140087b20
mov eax, dword [0x1402452b8]
mov r8d, dword [0x1402452bc]
xor r8d, 0xc6a5b4e
mov edx, 0x41eb6fe
xor edx, 0xfbe14901
mov ecx, eax
xor ecx, edx
mov edx, r8d
and edx, ecx
mov r9d, r8d
xor r9d, 0xffffffff
mov ecx, eax
and ecx, r9d
imul ecx, edx
mov edx, eax
and edx, r8d
or eax, r8d
imul eax, edx
add eax, ecx
xor eax, 0x135bff5f
and eax, 0x6afcba1f
mov ecx, 0x1a54d97b
xor ecx, 0x3fe9f577
and eax, ecx
cmp eax, 0x92c217b9
jae 0x140087beb
mov rcx, qword [rbp - 0x40]
mov rax, qword [rbp - 0x68]
mov r8d, dword [0x1402452c0]
mov edx, dword [0x1402452c4]
xor edx, 0xffffffff
add r8d, edx
add r8d, 1
mov r10d, 0xffffffff
xor r10d, 0xb12820e8
mov r9d, r8d
and r9d, r10d
mov edx, r8d
or edx, r10d
mov r10d, 0x60ed655b
xor r10d, 0x9f129aa4
xor edx, r10d
imul edx, r9d
mov r9d, r8d
and r9d, 0xb12820e8
or r8d, 0xb12820e8
imul r8d, r9d
add r8d, edx
mov r9d, 0xffffffff
xor r9d, 0xe9acf67
mov edx, r8d
xor edx, r9d
and edx, r8d
xor edx, 0x73f8aef7
mov dword [rbp - 0x70], edx
mov rdx, qword [rax + 0x68]
sub rsp, 0x20
call fcn.140087460
mov rcx, qword [rbp - 0x38]
mov eax, dword [rbp - 0x70]
add rsp, 0x20
mov cl, byte [rcx]
mov dl, 0x24
xor dl, 0x24
cmp cl, dl
sete cl
mov byte [rbp - 0x69], cl
cmp eax, 0xc3e1d0dd
jae 0x140087beb
mov al, byte [rbp - 0x69]
test al, 1
jne 0x1400879ce
jmp 0x140087b20
mov eax, dword [0x1402452c8]
mov edx, dword [0x1402452cc]
xor edx, 0x58432f91
mov r8d, 0x689b4396
xor r8d, 0x9764bc69
mov ecx, eax
xor ecx, r8d
mov r8d, edx
xor r8d, 0xffffffff
or ecx, r8d
xor eax, 0xffffffff
mov r8d, 0x89f0b07f
xor r8d, 0x760f4f80
xor edx, r8d
or eax, edx
and ecx, eax
xor ecx, 0xffffffff
mov edx, 0x66ce3765
xor edx, 0x9931c89a
mov eax, ecx
xor eax, edx
mov edx, 0xffffffff
xor edx, 0x7f84c1a4
and eax, edx
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x7f84c1a4
and ecx, edx
or eax, ecx
xor eax, 0xffffffff
mov ecx, 0xffffffff
xor ecx, 0xd18f3758
add eax, ecx
add eax, 1
mov ecx, 0xcceb20be
xor ecx, 0x2ef6f691
add eax, ecx
mov ecx, 0x36fb0e28
xor ecx, 0x45288c5d
cmp eax, ecx
je 0x140087bf4
mov rcx, qword [rbp - 0x40]
mov eax, dword [0x1402452d0]
add eax, dword [0x1402452d4]
and eax, 0x5f325a9d
mov r8d, 0x3052bc03
xor r8d, 0x256a6332
xor edx, edx
div r8d
mov edx, eax
mov rax, qword [rbp - 0x68]
sub edx, 0x62434bfe
mov dword [rbp - 0x78], edx
cmp byte [rax + 0x70], 0
setne dl
and dl, 1
sub rsp, 0x20
call fcn.1400813fd
mov rcx, qword [rbp - 0x38]
mov eax, dword [rbp - 0x78]
add rsp, 0x20
mov cl, byte [rcx]
mov dl, 0x31
xor dl, 0x31
cmp cl, dl
sete cl
mov byte [rbp - 0x71], cl
cmp eax, 0xb271f517
je 0x140087a77
mov al, byte [rbp - 0x71]
test al, 1
jne 0x140087af5
jmp 0x140087b20
mov rdx, qword [rbp - 0x48]
mov rcx, qword [rbp - 0x40]
mov rax, qword [rbp - 0x68]
mov r8, qword [rax + 0x78]
mov qword [rdx], r8
mov rax, qword [rax + 0x80]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.140086e60
add rsp, 0x20
mov eax, dword [0x1402452d8]
mov r8d, dword [0x1402452dc]
mov edx, 0x3e1f39d5
xor edx, 0xc1e0c62a
mov ecx, eax
xor ecx, edx
mov edx, r8d
and edx, ecx
mov r9d, r8d
xor r9d, 0xffffffff
mov ecx, eax
and ecx, r9d
imul ecx, edx
mov edx, eax
and edx, r8d
or eax, r8d
imul eax, edx
add eax, ecx
xor eax, 0xd34c6a84
mov ecx, 0x9aaae4d9
xor ecx, 0x15ddde56
and eax, ecx
xor eax, 0x9a6490ad
mov ecx, 0x4f9578c1
xor ecx, 0xee467e01
cmp eax, ecx
jae 0x140087bfd
mov eax, dword [0x1402452e0]
xor eax, 0xe7e5b490
mov ecx, dword [0x1402452e4]
xor ecx, 0xcb4fb198
xor edx, edx
div ecx
mov ecx, eax
and ecx, 0xd05bdf3e
xor ecx, 0xffffffff
add eax, 0xd05bdf3e
add eax, 1
add eax, ecx
add eax, 0xf6963fd4
add eax, 0xae7556f7
mov ecx, 0x7c898b1
xor ecx, 0xf15ea765
sub eax, ecx
mov ecx, 0xd8e14023
xor ecx, 0xe3aa8bee
or eax, ecx
cmp eax, 0x40b3485d
jbe 0x140087b87
mov rsp, rbp
pop rbp
ret
invalid
scasd eax, dword [rdi]
mov esi, 0x7ae9165f
invalid
sbb dword [rbx], esp
mov ebp, 0xff81e9b3
invalid