Function at 0x1402031d0
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x48
mov qword [rsp + 0x38], rcx
call fcn.140202c21
mov rcx, qword [rsp + 0x38]
mov qword [rsp + 0x40], rax
mov rcx, qword [rcx]
call fcn.140202c40
test al, 1
jne 0x1402031fd
jmp 0x140203230
mov rax, qword [rsp + 0x38]
mov rcx, qword [rax]
call fcn.14008f099
mov rax, qword [rsp + 0x40]
mov al, byte [rax]
mov cl, 0x8f
xor cl, 0x8f
cmp al, cl
jne 0x1402034b0
mov rax, qword [rsp + 0x38]
mov rcx, qword [rax]
mov edx, 8
call fcn.14000ea9a
mov ecx, dword [0x14025e240]
mov eax, dword [0x14025e244]
mov edx, 0xbc4cca83
xor edx, 0x54dfc589
xor eax, edx
and ecx, ecx
mov edx, 0x3a5afa91
xor edx, 0xc5a5056e
xor ecx, edx
and eax, eax
xor eax, 0xffffffff
xor ecx, 0xffffffff
xor eax, 0xffffffff
or ecx, eax
mov edx, 0x5a0accf7
xor edx, 0x330eb8cc
mov eax, 0xb44e8686
xor eax, 0x4bb17979
xor edx, eax
mov eax, ecx
xor eax, edx
and eax, ecx
mov ecx, 0x5090a12b
xor ecx, 0xf88c41d
add eax, ecx
mov ecx, eax
xor ecx, 0xffffffff
mov edx, 0xeda24d07
xor edx, 0xfaa3572c
and edx, ecx
mov r8d, 0xffffffff
xor r8d, 0x17011a2b
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov r8d, 0xb56f84
xor r8d, 0x17b475af
mov edx, eax
and edx, r8d
mov r8d, 0xd7275813
xor r8d, 0xc0264238
or eax, r8d
imul eax, edx
add eax, ecx
mov ecx, 0x8e5dec00
xor ecx, 0x5d79bdce
cmp eax, ecx
ja 0x1402034b5
mov rcx, qword [rsp + 0x38]
mov eax, dword [0x14025e248]
xor edx, edx
div dword [0x14025e24c]
or eax, 0xb7e5f424
mov r8d, 0x8e7fa3fc
xor r8d, 0xc0420c30
xor edx, edx
div r8d
mov r8d, 0x88fcef21
xor edx, edx
div r8d
mov rcx, qword [rcx + 0x10]
mov qword [rsp + 0x28], rcx
cmp rcx, 0
sete cl
mov byte [rsp + 0x37], cl
cmp eax, 0x634219cd
jae 0x1402032f0
mov al, byte [rsp + 0x37]
test al, 1
jne 0x1402034b0
jmp 0x140203355
mov rcx, qword [rsp + 0x28]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
cmp rax, 0
jne 0x1402034b0
mov ecx, dword [0x14025e250]
mov edx, dword [0x14025e254]
mov eax, 0x877f7ed8
xor eax, 0xf235bb35
xor edx, eax
mov eax, ecx
and eax, edx
or ecx, edx
add eax, ecx
mov ecx, eax
xor ecx, 0xffffffff
xor eax, 0xffffffff
or ecx, eax
mov eax, 0xffffffff
xor eax, 0xd8cc2e
mov edx, 0xffffffff
xor edx, 0xd8cc2e
or eax, edx
and ecx, eax
xor ecx, 0xffffffff
xor ecx, 0xfabb84e5
mov eax, ecx
and eax, 0xfa2c3c66
xor eax, 0xffffffff
mov edx, 0x9b6e9f1d
xor edx, 0x649160e2
xor ecx, edx
mov edx, 0xffffffff
xor edx, 0xfa2c3c66
or ecx, edx
mov edx, 0x9c77bdee
xor edx, 0x63884211
xor eax, edx
xor ecx, 0xffffffff
or eax, ecx
cmp eax, 0x5f10cac3
je 0x1402034be
mov rcx, qword [rsp + 0x28]
mov r9d, dword [0x14025e258]
mov r8d, dword [0x14025e25c]
mov eax, r9d
xor eax, 0xffffffff
and eax, 0x314c42b3
mov r10d, 0xffffffff
xor r10d, 0x314c42b3
and r9d, r10d
mov edx, r8d
xor edx, 0xffffffff
and edx, 0x314c42b3
and r8d, r10d
or eax, r9d
or edx, r8d
xor eax, edx
add eax, 0x3c2c3cf9
add eax, 0x2fb48948
sub eax, 0x3c2c3cf9
mov edx, eax
or edx, edx
xor edx, 0xffffffff
mov r8d, 0xc6b4c48b
or r8d, 0xc6b4c48b
xor r8d, 0xffffffff
xor edx, 0xffffffff
xor r8d, 0xffffffff
and edx, r8d
or eax, 0xc6b4c48b
xor eax, 0xffffffff
xor edx, 0xffffffff
xor eax, 0xffffffff
and edx, eax
mov eax, edx
and eax, 0xa017a840
xor edx, 0xa017a840
or eax, edx
mov dword [rsp + 0x24], eax
call fcn.14000e9f6
mov eax, dword [rsp + 0x24]
cmp eax, 0x3917b7d6
je 0x1402034be
jmp 0x1402034b0
add rsp, 0x48
ret
movsq qword [rdi], qword [rsi]
or edi, dword [rax - 0x1cd17]
jmp qword [rbp - 0x16388343]
movsd dword [rdi], dword [rsi]
mov ebp, 0x37e9c77c
invalid