Function at 0x1401ac740
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0xd8
mov qword [rsp + 0x70], r9
mov qword [rsp + 0x60], r8
mov qword [rsp + 0x80], rdx
mov qword [rsp + 0x48], rcx
mov rax, qword [rsp + 0x100]
mov qword [rsp + 0x50], rax
mov rax, qword [0x1402c6150]
mov ecx, dword [rax]
call fcn.14000eaf8
mov qword [rsp + 0x78], rax
add rax, 0x60
mov qword [rsp + 0x58], rax
movabs rcx, 0x7217dc6a76c47331
movabs rax, 0x7217dc6a76c47309
xor rcx, rax
movabs rdx, 0x98696f10ac64f25b
movabs rax, 0x98696f10ac64f253
xor rdx, rax
call fcn.140025b10
mov r8, qword [rsp + 0x60]
mov rcx, rax
mov qword [rsp + 0x68], rcx
lea rax, [0x1402b21c8]
mov qword [rcx], rax
add rcx, 0x20
mov rax, qword [r8]
mov qword [rsp + 0xc8], rax
mov rax, qword [r8 + 8]
mov qword [rsp + 0xd0], rax
lea rdx, [rsp + 0xc8]
call fcn.140027c30
mov rcx, qword [rsp + 0x60]
call fcn.14001dfcd
mov rcx, qword [rsp + 0x68]
mov rdx, qword [rsp + 0x70]
add rcx, 0x30
call fcn.1400fac10
mov r8, qword [rsp + 0x78]
mov rdx, qword [rsp + 0x80]
mov cl, 1
xor eax, eax
cmp byte [r8 + 0x60], 0
mov byte [rsp + 0x8f], cl
mov qword [rsp + 0x90], rdx
mov dword [rsp + 0x9c], eax
jne 0x1401aca1a
mov eax, dword [0x1402b30d8]
mov ecx, dword [0x1402b30dc]
xor ecx, 0xffffffff
mov edx, 0x5469dcf2
xor edx, 0x5469dcf2
mov r8d, 0x529b2351
xor r8d, 0x529b2350
sub edx, r8d
sub ecx, edx
sub eax, ecx
mov edx, eax
xor edx, 0xffffffff
and edx, 0x540ba940
mov r8d, 0x284f822a
xor r8d, 0x7c442b6a
mov ecx, 0xdfe81606
xor ecx, 0x2017e9f9
xor r8d, ecx
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x540ba940
or eax, 0x540ba940
imul eax, edx
add eax, ecx
add eax, 0x4ba05fec
mov ecx, eax
and ecx, 0xecd05573
mov edx, 0x59c7a2a6
xor edx, 0x59c7a2a4
imul ecx, edx
xor eax, 0xecd05573
add eax, ecx
cmp eax, 0x898c2bff
je 0x1401acb52
mov rcx, qword [rsp + 0x68]
mov eax, dword [0x1402b30e0]
sub eax, dword [0x1402b30e4]
mov edx, 0xe3b22c06
xor edx, 0xe3b22c06
mov r8d, 0x7f01bf80
xor r8d, 0x6c4d9d3
sub edx, r8d
add eax, edx
mov r8d, 0x787e2e9b
xor edx, edx
div r8d
mov edx, eax
mov rax, qword [rsp + 0x50]
add edx, 0x65c4a8a
mov dword [rsp + 0x40], edx
add rcx, 0x10
mov rdx, qword [rax]
mov qword [rsp + 0xb8], rdx
mov rax, qword [rax + 8]
mov qword [rsp + 0xc0], rax
xor eax, eax
mov r8b, al
lea rdx, [rsp + 0xb8]
call fcn.140199fa0
mov rcx, qword [rsp + 0x58]
mov eax, dword [rsp + 0x40]
mov cl, byte [rcx]
mov dl, 0x75
xor dl, 0x75
cmp cl, dl
sete cl
mov byte [rsp + 0x47], cl
cmp eax, 0xb9005bb7
ja 0x1401ac8e3
mov r8b, byte [rsp + 0x47]
mov dl, 1
xor eax, eax
mov ecx, eax
xor eax, eax
test r8b, 1
mov byte [rsp + 0x8f], dl
mov qword [rsp + 0x90], rcx
mov dword [rsp + 0x9c], eax
jne 0x1401ac9b0
jmp 0x1401aca1a
mov rax, qword [0x1402c6150]
mov ecx, dword [rax]
call fcn.14000eaf8
mov rcx, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x80]
mov rax, qword [rsp + 0x68]
movq xmm1, rax
lea rax, [0x1401aac20]
movq xmm0, rax
punpcklqdq xmm0, xmm1
movdqa xmmword [rsp + 0xa0], xmm0
lea r8, [rsp + 0xa0]
call fcn.14019a2c0
mov rcx, qword [rsp + 0x58]
mov dl, byte [rcx]
xor ecx, ecx
mov byte [rsp + 0x8f], dl
mov qword [rsp + 0x90], rcx
mov dword [rsp + 0x9c], eax
mov rax, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x58]
mov dl, byte [rsp + 0x8f]
mov r8, qword [rsp + 0x90]
mov r9d, dword [rsp + 0x9c]
mov dword [rsp + 0x24], r9d
mov qword [rsp + 0x28], r8
mov byte [rsp + 0x37], dl
mov dl, 0xdb
xor dl, 0xdb
mov byte [rcx], dl
mov rax, qword [rax + 8]
mov qword [rsp + 0x38], rax
cmp rax, 0
je 0x1401acb0b
mov rax, qword [rsp + 0x38]
mov rax, qword [rax]
movabs rcx, 0x174bf886250d2603
movabs rdx, 0xe8b40779daf2d9fc
xor rcx, rdx
xor rax, rcx
movabs rdx, 0xe9bc36d9ed1932fa
movabs rcx, 0xa9bc36d9ed1932fa
xor rdx, rcx
movabs rcx, 0x347e34f8b2e66a19
movabs r8, 0xcb81cb074d1995e6
xor rcx, r8
xor rdx, rcx
mov rcx, 0xffffffffffffffff
movabs r8, 0x52f370ac5c72ebfa
xor rcx, r8
or rax, rdx
movabs rdx, 0x52f370ac5c72ebfa
or rcx, rdx
movabs rdx, 0x7dc1c4deefc6a054
movabs r8, 0x823e3b2110395fab
xor rdx, r8
xor rax, rdx
and rax, rcx
cmp rax, 0
jne 0x1401acb0b
mov rcx, qword [rsp + 0x38]
call fcn.14001a7c0
mov rcx, qword [rsp + 0x28]
call fcn.1401981b0
mov rax, qword [rsp + 0x58]
cmp byte [rax], 0
jne 0x1401acb46
mov rcx, qword [rsp + 0x68]
call fcn.1401ac650
mov rax, qword [rsp + 0x58]
cmp byte [rax], 0
jne 0x1401acb46
mov rax, qword [rsp + 0x58]
mov cl, byte [rsp + 0x37]
mov byte [rax], cl
mov eax, dword [rsp + 0x24]
add rsp, 0xd8
ret
xchg ebx, eax
xchg esi, eax
and ecx, ebp
mov ch, bh
invalid