Function at 0x14016c410
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x68
mov qword [rsp + 0x48], r8
mov qword [rsp + 0x50], rdx
mov rax, rcx
mov qword [rsp + 0x58], rax
mov rcx, qword [rax + 8]
mov rax, qword [rax]
cmp rcx, rax
mov qword [rsp + 0x60], rax
jg 0x14016c511
mov eax, dword [0x1401fce88]
xor eax, dword [0x1401fce8c]
imul eax, eax, 0x3d40e76f
or eax, 0x4c043134
mov ecx, eax
and ecx, 0x5c9d048
mov edx, 0x50a6a6e6
xor edx, 0xaf595919
xor ecx, edx
add eax, 0x5c9d048
add eax, 1
add eax, ecx
mov ecx, 0x485eb660
xor ecx, 0x542fc3ef
cmp eax, ecx
jb 0x14016c7cf
mov rcx, qword [rsp + 0x58]
mov edx, dword [0x1401fce90]
mov eax, dword [0x1401fce94]
mov r8d, 0x1eafccae
xor r8d, 0xc9f6f89f
xor eax, r8d
or edx, eax
mov eax, edx
xor eax, 0xffffffff
and eax, 0x1cd2fe20
mov r8d, 0xffffffff
xor r8d, 0x1cd2fe20
and edx, r8d
or eax, edx
xor eax, 0x4f71c2bc
mov edx, eax
and edx, 0xa457cf11
xor edx, 0xffffffff
add eax, 0xa457cf11
add eax, 1
add eax, edx
mov dword [rsp + 0x3c], eax
call fcn.140011170
mov rcx, qword [rsp + 0x58]
mov eax, dword [rsp + 0x3c]
mov rcx, qword [rcx]
mov qword [rsp + 0x40], rcx
cmp eax, 0xf703dd97
jae 0x14016c7cf
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0x60], rax
jmp 0x14016c511
mov rdx, qword [rsp + 0x48]
mov r9, qword [rsp + 0x50]
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x60]
mov rax, qword [rax + 0x10]
mov r10, rcx
shl r10, 4
mov r8, rax
add r8, r10
mov qword [r8], r9
mov r8, rcx
shl r8, 4
add rax, r8
add rax, 8
mov qword [rax], rdx
mov rax, rcx
add rax, 1
mov qword [rsp + 0x30], rax
mov rdx, rcx
xor rdx, 0xffffffffffffffff
movabs r8, 0xd527ab13418a51c2
movabs r9, 0x2ad854ecbe75ae3d
xor r8, r9
xor rdx, r8
and rdx, 0xffffffffffffffff
shl rdx, 1
sub rdx, 0xffffffffffffffff
sub rcx, rdx
and rax, rcx
movabs rcx, 0x96127ac0ddd571d3
movabs rdx, 0x96127ac0ddd571d3
xor rcx, rdx
cmp rax, rcx
jge 0x14016c67f
mov edx, dword [0x1401fce98]
mov ecx, dword [0x1401fce9c]
xor ecx, 0x99db880b
mov eax, edx
xor eax, 0xffffffff
xor edx, 0xffffffff
and eax, edx
or ecx, ecx
mov edx, 0x2e0f5dd5
xor edx, 0xd1f0a22a
xor ecx, edx
or eax, ecx
xor eax, 0xffffffff
mov ecx, 0x84cad92f
xor ecx, 0x5d709a1a
or eax, ecx
and eax, 0xa8ed139b
imul eax, eax, 0xdb673ac7
mov ecx, 0xb07c17d7
xor ecx, 0xb903519f
cmp eax, ecx
jbe 0x14016c7d8
mov ecx, dword [0x1401fcea0]
mov edx, dword [0x1401fcea4]
mov eax, ecx
add eax, 1
xor ecx, 0xffffffff
or ecx, edx
add ecx, eax
mov edx, 0xd32d220f
xor edx, 0xeb758b81
mov eax, ecx
and eax, edx
mov edx, 0xe9dce24d
xor edx, 0x16231db2
xor eax, edx
and ecx, 0x3858a98e
xor ecx, 0xffffffff
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
sub eax, 0x709b7d39
sub eax, 0xcb082c8a
mov dword [rsp + 0x2c], eax
mov eax, 0xba6110d6
xor eax, 0x5d930ea5
mov dword [rsp + 0x28], eax
call fcn.140009cc0
mov ecx, dword [rsp + 0x28]
mov eax, dword [rsp + 0x2c]
cmp eax, ecx
jae 0x14016c604
jmp 0x14016c730
mov eax, dword [0x1401fcea8]
sub eax, dword [0x1401fceac]
mov ecx, 0xac9df16f
xor ecx, 0x29daa800
xor edx, edx
div ecx
sub eax, 0xc3eb515b
add eax, 0x46575795
add eax, 0xc3eb515b
sub eax, 0xcf62e9df
cmp eax, 0x4dc9bf72
je 0x14016c7e1
mov rcx, qword [rsp + 0x58]
mov eax, dword [0x1401fceb0]
add eax, dword [0x1401fceb4]
mov r8d, 0xd4a5b113
xor edx, edx
div r8d
mov edx, eax
mov r8d, edx
xor r8d, 0xffffffff
mov eax, 0x1e4c4902
xor eax, 0x82c8bc9b
and eax, r8d
mov r8d, 0x6a642e95
xor r8d, 0xf6e0db0c
mov r9d, 0xd8494f26
xor r9d, 0x27b6b0d9
xor r8d, r9d
and edx, r8d
or eax, edx
mov r8d, 0x17704032
xor edx, edx
div r8d
mov rdx, qword [rsp + 0x30]
mov qword [rcx], rdx
cmp eax, 0x5fa7b69e
ja 0x14016c6b9
jmp 0x14016c730
mov eax, dword [str.3SP]
mov ecx, dword [0x1401fcebc]
mov edx, 0x39765ac5
xor edx, 0x249b39c5
xor ecx, edx
xor eax, ecx
and eax, 0x2d42af40
mov ecx, 0x16be4557
xor ecx, 0x6853f9ff
and eax, ecx
and eax, 0xecd0071e
cmp eax, 0x7af946a7
jae 0x14016c7ea
mov eax, dword [0x1401fcec0]
and eax, dword [0x1401fcec4]
mov ecx, 0x72f43c36
xor edx, edx
div ecx
mov ecx, 0xf2c2f4d9
xor ecx, 0x74e862a1
mov edx, eax
xor edx, ecx
mov ecx, 0x36703335
xor ecx, 0xc98fccca
xor edx, ecx
and edx, 0x862a9678
mov ecx, 0x5582f0d7
xor ecx, 0x5582f0d5
imul ecx, edx
sub ecx, 0x862a9678
sub eax, ecx
and eax, 0x2a1ed1b0
cmp eax, 0x68a7eccb
ja 0x14016c76d
add rsp, 0x68
ret
xchg esi, eax
invalid
cmp dl, byte [rsi - 0x1dc1676]
invalid
invalid
pop rcx
test byte [rdx], bh
shr cl, cl
jp 0x14016c7f0
invalid
invalid