Function at 0x14010d5d0
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rsi
sub rsp, 0x88
lea rbp, [rsp + 0x80]
mov qword [rbp - 0x18], r9
mov qword [rbp - 0x10], r8
mov qword [rbp - 8], rdx
mov qword [rbp], rcx
mov eax, dword [0x1401dc278]
mov edx, dword [0x1401dc27c]
or eax, eax
xor eax, 0xffffffff
mov r8d, 0xe9d35f49
xor r8d, 0x162ca0b6
mov ecx, edx
xor ecx, r8d
xor edx, 0xffffffff
and ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
mov ecx, 0x32e741e0
xor ecx, 0xadbb78f3
or eax, ecx
and eax, 0xb9297f1b
mov ecx, 0xcac44940
xor ecx, 0x35a62c1d
sub eax, ecx
cmp eax, 0x506bf6c6
jbe 0x14010daa8
mov ecx, dword [0x1401dc280]
mov eax, ecx
xor eax, 0x1b6e7ca
mov edx, dword [0x1401dc284]
mov r8d, edx
xor r8d, 0xcda43d4f
xor ecx, 0xfe491835
and ecx, r8d
xor edx, 0x325bc2b0
and eax, edx
sub eax, ecx
not eax
and eax, 0xfc1e7c98
mov ecx, eax
xor ecx, 0x210a8001
xor eax, 0xd2e57a72
mov edx, eax
and edx, 0x5eb56698
and ecx, 0xa10a9801
imul ecx, edx
mov edx, eax
and edx, 0xa04a1862
or eax, 0xa14a9863
imul eax, edx
add eax, ecx
mov dword [rbp - 0x2c], eax
mov eax, 0x10
mov qword [rbp - 0x48], rax
call fcn.1401d4340
sub rsp, rax
mov rax, qword [rbp - 0x48]
mov rcx, rsp
mov qword [rbp - 0x40], rcx
call fcn.1401d4340
sub rsp, rax
mov rax, rsp
mov qword [rbp - 0x38], rax
sub rsp, 0x20
call fcn.14010c6d1
mov rcx, qword [rbp]
add rsp, 0x20
mov rdx, rax
mov eax, dword [rbp - 0x2c]
mov qword [rbp - 0x28], rdx
mov rcx, qword [rcx]
movabs rdx, 0xa6be2bb5dfa2fe1e
movabs r8, 0x5941d44a205d01e1
xor rdx, r8
cmp rcx, rdx
sete cl
mov byte [rbp - 0x19], cl
cmp eax, 0x261a3f8e
je 0x14010d64b
mov al, byte [rbp - 0x19]
test al, 1
jne 0x14010d89e
jmp 0x14010d739
mov eax, dword [0x1401dc288]
mov ecx, dword [0x1401dc28c]
xor ecx, 0x7eb2ccc9
xor edx, edx
div ecx
mov ecx, eax
xor ecx, 0xffffffff
mov edx, 0x90608eda
xor edx, 0xd3b5058e
mov r8d, 0xaff9f5fc
xor r8d, 0x50060a03
xor edx, r8d
and ecx, edx
mov edx, 0xcba7d2c2
xor edx, 0x34582d3d
xor eax, edx
mov edx, 0x57b6f152
xor edx, 0x14637a06
mov r8d, 0x7065d482
xor r8d, 0x8f9a2b7d
xor edx, r8d
and eax, edx
or ecx, eax
xor ecx, 0xffffffff
mov edx, 0x9e1dd936
xor edx, 0x9e7d91fd
mov eax, ecx
and eax, edx
xor ecx, 0x6048cb
or eax, ecx
mov ecx, 0xf3aa2198
xor ecx, 0x4a8a423f
or eax, ecx
cmp eax, 0xdce6de8d
jbe 0x14010dab1
mov r8, qword [rbp - 8]
mov rdx, qword [rbp - 0x18]
mov r9, qword [rbp]
mov eax, dword [0x1401dc290]
mov r11d, dword [0x1401dc294]
mov esi, r11d
xor esi, 0xffffffff
mov r10d, eax
and r10d, esi
mov ecx, eax
or ecx, esi
xor ecx, 0xffffffff
imul ecx, r10d
mov r10d, eax
and r10d, r11d
or eax, r11d
imul eax, r10d
add eax, ecx
mov r11d, 0xffffffff
xor r11d, 0xbae3a152
mov r10d, eax
and r10d, r11d
mov ecx, eax
or ecx, r11d
xor ecx, 0xffffffff
imul ecx, r10d
mov r10d, eax
and r10d, 0xbae3a152
or eax, 0xbae3a152
imul eax, r10d
add eax, ecx
mov r10d, 0xffffffff
xor r10d, 0xb665f4e3
mov ecx, eax
and ecx, r10d
mov r10d, eax
xor r10d, 0xb665f4e3
add eax, r10d
sub eax, ecx
imul eax, eax, 0x78ded9e0
mov ecx, 0x3977673f
xor ecx, 0xe0aa5672
mov qword [r9 + 8], r8
mov rdx, qword [rdx + 0x10]
cmp qword [rdx + 0x10], r8
setl dl
mov byte [rbp - 0x49], dl
cmp eax, ecx
ja 0x14010d7cf
mov al, byte [rbp - 0x49]
test al, 1
jne 0x14010d9cd
jmp 0x14010daa1
mov rcx, qword [rbp - 0x40]
mov edx, 0x10
sub rsp, 0x20
call fcn.14010c82f
mov rax, qword [rbp - 0x18]
mov rdx, qword [rbp]
mov rcx, qword [rbp - 8]
add rsp, 0x20
cmp rax, 0
sete al
mov byte [rbp - 0x61], al
mov rdx, qword [rdx + 0x10]
mov qword [rbp - 0x60], rdx
xor edx, edx
sub rdx, 1
sub rcx, rdx
mov qword [rbp - 0x58], rcx
test al, 1
jne 0x14010d909
mov r9, qword [rbp - 0x18]
mov r8, qword [rbp - 0x10]
mov rdx, qword [rbp - 0x58]
mov rcx, qword [rbp - 0x60]
sub rsp, 0x20
call fcn.14010d5d0
add rsp, 0x20
jmp 0x14010d927
mov r8, qword [rbp - 0x10]
mov rdx, qword [rbp - 0x58]
mov rcx, qword [rbp - 0x60]
xor eax, eax
mov r9d, eax
sub rsp, 0x20
call fcn.14010d5d0
add rsp, 0x20
mov rax, qword [rbp - 0x28]
cmp byte [rax], 0
je 0x14010d939
jmp 0x14010daa1
mov rcx, qword [rbp - 0x38]
mov edx, 0x10
sub rsp, 0x20
call fcn.14010c82f
mov rdx, qword [rbp]
mov rcx, qword [rbp - 8]
mov al, byte [rbp - 0x61]
add rsp, 0x20
mov rdx, qword [rdx + 0x18]
mov qword [rbp - 0x78], rdx
movabs rdx, 0x2e42df9c1e7f7db9
movabs r8, 0x2e42df9c1e7f7db8
xor rdx, r8
add rcx, rdx
mov qword [rbp - 0x70], rcx
test al, 1
jne 0x14010d9aa
mov r9, qword [rbp - 0x18]
mov r8, qword [rbp - 0x10]
mov rdx, qword [rbp - 0x70]
mov rcx, qword [rbp - 0x78]
sub rsp, 0x20
call fcn.14010d5d0
add rsp, 0x20
jmp 0x14010d9c8
mov r8, qword [rbp - 0x10]
mov rdx, qword [rbp - 0x70]
mov rcx, qword [rbp - 0x78]
xor eax, eax
mov r9d, eax
sub rsp, 0x20
call fcn.14010d5d0
add rsp, 0x20
jmp 0x14010daa1
mov eax, dword [0x1401dc298]
or eax, dword [0x1401dc29c]
xor eax, 0x38968675
mov ecx, 0xb7f6631d
xor ecx, 0xee102b93
imul eax, ecx
mov ecx, 0xbe72f2e8
xor edx, edx
div ecx
cmp eax, 0x70e07771
ja 0x14010daba
mov rdx, qword [rbp - 0x10]
mov eax, dword [0x1401dc2a0]
xor eax, 0x81071efe
xor eax, dword [0x1401dc2a4]
mov ecx, eax
xor ecx, 0x6c1dba68
mov r8d, 0x826d3535
xor r8d, 0xee708f5d
mov r9d, 0xda01a7d4
xor r9d, 0x25fe582b
xor r8d, r9d
and eax, r8d
shl eax, 1
sub eax, ecx
xor eax, 0xb5c9df5a
mov ecx, 0x105269d0
xor ecx, 0x4e9dcd3d
mov r8d, eax
xor r8d, ecx
xor r8d, 0xffffffff
mov ecx, 0x78683c73
xor ecx, 0x26a7989e
and ecx, r8d
shl ecx, 1
mov r8d, 0xdb9ea913
xor r8d, 0x85510dfe
sub ecx, r8d
sub eax, ecx
mov ecx, 0xcd618de4
xor ecx, 0x7bcda7df
mov r8b, 0x8f
xor r8b, 0x8e
mov byte [rdx], r8b
cmp eax, ecx
ja 0x14010da00
jmp 0x14010daa1
lea rsp, [rbp + 8]
pop rsi
pop rbp
ret
jle 0x14010da96
push 0xfffffffffffb9ae9
call qword [rbx + 0x3f]
ret 0xe96a
push rbx
invalid
mov bl, 0x8b
cmp dword [rax - 0xc217], edx
dec dword [rax - 0x7d]
sub rsp, 0x28
mov qword [rsp + 0x20], rcx
call fcn.14010c8e0
test al, 1
jne 0x14010dade
jmp 0x14010dae8
mov rcx, qword [rsp + 0x20]
call fcn.140010050
nop
add rsp, 0x28
ret