Function at 0x1400400f0
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x88
mov qword [rsp + 0x70], rdx
mov qword [rsp + 0x78], rcx
mov rax, qword [rcx]
mov qword [rsp + 0x80], rax
cmp rax, 0
je 0x1400404f1
mov rcx, qword [rsp + 0x78]
mov rax, qword [rsp + 0x80]
movabs rdx, 0x547ccfd5756c1c4a
movabs r8, 0xab83302a8a93e3b5
xor rdx, r8
movabs r8, 0xd3d8e788ebb192e1
movabs r9, 0x2c271877144e6d1e
xor r8, r9
xor rdx, r8
xor r8d, r8d
sub r8, 1
sub rdx, r8
sub rax, rdx
mov qword [rsp + 0x50], rax
add rcx, 8
mov qword [rsp + 0x58], rcx
mov rcx, rax
sub rcx, 0xffffffffffffffff
mov rcx, 0xffffffffffffffff
cmovl rcx, rax
mov qword [rsp + 0x60], rcx
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x68]
mov qword [rsp + 0x40], rcx
movabs rdx, 0xc572ece151b4a434
movabs r8, 0x3a8d131eae4b5bcb
xor rdx, r8
cmp rcx, rdx
mov qword [rsp + 0x48], rax
jle 0x1400402b9
mov rax, qword [rsp + 0x40]
mov rcx, qword [rsp + 0x80]
cmp rax, rcx
jl 0x1400401e9
mov rdx, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x40]
call fcn.140014583
jmp 0x1400404f1
mov rax, qword [rsp + 0x40]
mov rcx, qword [rsp + 0x58]
mov rcx, qword [rcx]
mov r8b, byte [rcx + rax + 8]
mov cl, 0x9e
xor cl, 0x9d
mov dl, r8b
shr dl, cl
mov rcx, qword [rsp + 0x70]
movzx edx, dl
movzx edx, byte [rcx + rdx]
mov r9b, 0x66
xor r9b, 0x99
mov cl, r8b
xor cl, r9b
xor r8b, 0xff
and cl, r8b
mov r8b, 0xff
xor r8b, 7
mov r9b, 0xc8
xor r9b, 0xcf
mov r10b, 0x3a
xor r10b, 0xc5
xor r9b, r10b
and r8b, r9b
or cl, r8b
xor cl, 0xff
movzx ecx, cl
mov r8d, 0xfab3555c
xor r8d, 0xfab3555d
shl r8d, cl
mov ecx, r8d
and ecx, edx
cmp ecx, 0
mov qword [rsp + 0x48], rax
je 0x1400402b9
mov rcx, qword [rsp + 0x40]
mov rax, rcx
dec rax
mov r8, rax
and r8, rcx
add r8, r8
lea rdx, [rcx + rcx - 1]
sub rdx, r8
sets r8b
test rcx, rcx
setg cl
setle dl
or dl, r8b
add cl, dl
inc cl
test cl, 1
mov qword [rsp + 0x68], rax
jne 0x1400402af
jmp 0x14004018b
call fcn.140007f57
jmp 0x1400404f1
mov r9, qword [rsp + 0x48]
mov qword [rsp + 0x30], r9
mov rcx, r9
add rcx, 1
mov qword [rsp + 0x38], rcx
movabs rdx, 0x6dc05b19961aff3b
movabs rax, 0x923fa4e669e500c4
xor rdx, rax
mov rax, r9
xor rax, rdx
movabs rdx, 0x6d0b5ab937664aec
movabs r8, 0x5e5e32d645257c4
xor rdx, r8
and rdx, rax
mov r10, 0xffffffffffffffff
movabs rax, 0x68eeb99453341d28
xor r10, rax
and r9, r10
mov rax, 0xffffffffffffffff
xor rax, 0xffffffffffffffff
movabs r8, 0x68eeb99453341d28
and rax, r8
movabs r8, 0xbcdc62b4d5850ff
movabs r11, 0xf43239d4b2a7af00
xor r8, r11
and r8, r10
or rdx, r9
or rax, r8
xor rdx, rax
movabs r8, 0xe2477cf7a1c73a45
movabs rax, 0x1db883085e38c5ba
xor r8, rax
mov rax, rcx
xor rax, r8
mov r8, rdx
xor r8, 0xffffffffffffffff
or rax, r8
and rcx, rdx
xor rcx, 0xffffffffffffffff
and rax, rcx
movabs rcx, 0xe6f4c292477c0a7e
movabs rdx, 0x190b3d6db883f581
xor rcx, rdx
xor rax, rcx
cmp rax, 0
jge 0x1400403b7
call fcn.140007f57
jmp 0x1400404f1
mov rax, qword [rsp + 0x30]
cmp rax, 0xffffffffffffffff
jge 0x140040403
mov rcx, qword [rsp + 0x38]
movabs rdx, 0xbf6bbba00cdbcea5
movabs rax, 0xbf6bbba00cdbcea5
xor rdx, rax
movabs r8, 0xb1626fc8323ea514
movabs rax, 0xce9d9037cdc15aeb
xor r8, rax
call fcn.14000dc65
jmp 0x1400404f1
mov eax, dword [0x1402020c0]
mov r8d, dword [0x1402020c4]
mov r9d, r8d
xor r9d, 0xffffffff
mov edx, eax
and edx, r9d
mov ecx, eax
or ecx, r9d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, r8d
or eax, r8d
imul eax, edx
add eax, ecx
mov ecx, 0x574bba6f
xor ecx, 0xbb5f75a
sub eax, ecx
mov ecx, eax
xor ecx, 0x1edab31d
xor ecx, 0xffffffff
or eax, 0x1edab31d
and eax, ecx
mov ecx, 0xb21b01d
xor ecx, 0xc84711b3
sub eax, ecx
mov ecx, 0x137b54ef
xor ecx, 0xa9856ef3
cmp eax, ecx
ja 0x1400405bb
mov rcx, qword [rsp + 0x78]
mov eax, dword [0x1402020c8]
mov edx, dword [0x1402020cc]
mov r8d, 0x684bdcb
xor r8d, 0x41dbc479
xor edx, r8d
xor eax, edx
mov edx, 0x85b51d4a
xor edx, 0x6791bd4c
xor eax, edx
mov r8d, 0x4d1da8a7
xor r8d, 0xcc27143d
xor edx, edx
div r8d
mov r8d, 0xd6d1c3f0
xor edx, edx
div r8d
mov rdx, qword [rsp + 0x38]
mov dword [rsp + 0x2c], eax
mov eax, 0x1c8cc8b9
xor eax, 0x16178dac
mov dword [rsp + 0x28], eax
call fcn.140016100
mov ecx, dword [rsp + 0x28]
mov eax, dword [rsp + 0x2c]
cmp eax, ecx
ja 0x140040473
jmp 0x1400404f1
mov eax, dword [0x1402020d0]
mov ecx, 0x7bbae64c
xor ecx, 0x83dcf1eb
xor eax, ecx
xor eax, dword [0x1402020d4]
mov ecx, 0xd69f6ee3
xor ecx, 0x64e233fd
or eax, ecx
mov ecx, 0x9b326fce
xor edx, edx
div ecx
mov ecx, eax
mov edx, ecx
xor edx, 0xffffffff
mov eax, 0x8e19d39e
xor eax, 0xb4054320
and eax, edx
mov edx, 0x40d9adb9
xor edx, 0x7ac53d07
mov r8d, 0xc276fd09
xor r8d, 0x3d8902f6
xor edx, r8d
and ecx, edx
or eax, ecx
cmp eax, 0x4c8c9c96
jae 0x1400405c4
mov ecx, dword [0x1402020d8]
mov eax, dword [0x1402020dc]
mov edx, 0xd0bdbe54
xor edx, 0x26959568
xor eax, edx
sub ecx, eax
mov eax, 0x918c434f
xor eax, 0x1e9aaa14
add ecx, eax
mov eax, ecx
and eax, 0x197999a4
mov edx, 0x926ca2ef
xor edx, 0x8b153b4b
xor ecx, edx
or eax, ecx
imul eax, eax, 0x7bc76a1b
mov ecx, 0x7b52983d
xor ecx, 0x98d9c814
cmp eax, ecx
jb 0x14004055d
add rsp, 0x88
ret
call 0x129ef0f0a
scasd eax, dword [rdi]
invalid
rcl ebp, 1
mov bl, 0xac
jmp 0x14004055d