Function at 0x140056410
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x78
mov qword [rsp + 0x50], r9
mov qword [rsp + 0x58], r8
mov qword [rsp + 0x60], rdx
mov rax, qword [rsp + 0xa8]
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0x70], rax
mov ecx, dword [0x1401f5790]
xor ecx, 0xa164d295
or ecx, dword [0x1401f5794]
mov edx, 0xffffffff
xor edx, 0x87ad52ee
mov eax, ecx
xor eax, edx
and eax, ecx
or eax, 0xf7bd90ce
mov ecx, 0xd0562001
xor ecx, 0x2c7d7169
sub eax, ecx
mov ecx, 0xd0ba2342
xor ecx, 0x4839411d
cmp eax, ecx
je 0x1400566de
mov eax, dword [0x1401f5798]
xor eax, 0x95966dd5
mov ecx, dword [0x1401f579c]
sub eax, ecx
mov ecx, eax
not ecx
mov edx, eax
or edx, 0x3cfdaa8e
mov r8d, edx
and r8d, 0x90de6046
and ecx, 0x43001531
imul ecx, r8d
and edx, 0x6f219fb9
or eax, 0x7ffdbfbf
imul eax, edx
add eax, ecx
imul eax, eax, 0x2665d9c4
mov dword [rsp + 0x34], eax
mov eax, 0x35f37193
mov dword [rsp + 0x30], eax
call fcn.140045cde
mov r8, qword [rsp + 0x60]
mov r9, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x30]
mov rdx, rax
mov eax, dword [rsp + 0x34]
mov qword [rsp + 0x38], rdx
test r9, r9
setns dl
mov r8, qword [r8]
mov qword [rsp + 0x40], r8
sub r8, r9
setg r8b
and dl, r8b
mov byte [rsp + 0x4f], dl
cmp eax, ecx
je 0x140056485
mov al, byte [rsp + 0x4f]
test al, 1
jne 0x140056567
jmp 0x14005652f
mov rcx, qword [rsp + 0x68]
mov rax, qword [rsp + 0x40]
mov rdx, rax
and rdx, 0xffffffffffffffff
movabs r8, 0x8ad49815d7d9be3
movabs r9, 0xf752b67ea282641c
xor r8, r9
or rax, r8
add rdx, rax
call fcn.140013c92
jmp 0x1400566d9
mov rdx, qword [rsp + 0x50]
mov rax, qword [rsp + 0x68]
mov r9, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x60]
mov r8, rcx
add r8, 8
mov qword [rsp + 0x28], r8
mov rcx, qword [rcx + 8]
mov r8, rcx
add r8, 8
imul r10, rax, 0x18
add r8, r10
add r8, 8
mov qword [r8], r9
add rcx, 8
imul rax, rax, 0x18
add rcx, rax
add rcx, 0x10
call fcn.140056180
mov rax, qword [rsp + 0x38]
cmp byte [rax], 0
jne 0x1400566d9
mov rcx, qword [rsp + 0x68]
mov rax, qword [rsp + 0x60]
mov rax, qword [rax]
mov qword [rsp + 0x20], rax
cmp rax, rcx
jg 0x140056619
mov rcx, qword [rsp + 0x68]
mov rdx, qword [rsp + 0x20]
movabs r8, 0x2d1d22c814f87b7f
movabs rax, 0xd2e2dd37eb078480
xor r8, rax
mov rax, rdx
and rax, r8
shl rax, 1
xor rdx, 0xffffffffffffffff
add rdx, rax
call fcn.140013c92
jmp 0x1400566d9
mov eax, dword [0x1401f57a0]
xor eax, 0xc9f27f30
mov edx, dword [0x1401f57a4]
mov ecx, eax
and ecx, edx
shl ecx, 1
add eax, edx
sub eax, ecx
imul eax, eax, 0x361a2963
xor ecx, ecx
sub ecx, eax
mov eax, 0x8c2269a
xor eax, 0x8c2269a
mov edx, 0xd0b25064
xor edx, 0xd6903a83
sub eax, edx
add ecx, eax
xor eax, eax
sub eax, ecx
mov ecx, 0x190b757a
xor ecx, 0x5ef10c92
and eax, ecx
mov ecx, 0x302d0b37
xor ecx, 0xe900843
cmp eax, ecx
ja 0x1400566e7
mov r8, qword [rsp + 0x68]
mov rcx, qword [rsp + 0x28]
mov eax, dword [0x1401f57a8]
imul eax, dword [0x1401f57ac]
mov r9d, 0x579bcdb1
xor edx, edx
div r9d
mov rdx, qword [rsp + 0x70]
or eax, 0x82e99d2e
mov r9d, 0x883961f
xor r9d, 0xea0313f5
sub eax, r9d
mov rcx, qword [rcx]
add rcx, 8
imul r8, r8, 0x18
add rcx, r8
mov qword [rcx], rdx
cmp eax, 0x72e9b1fb
jbe 0x1400566e7
jmp 0x1400566d9
add rsp, 0x78
ret
cmp edi, edx
invalid
cmp al, 0xc9
invalid