Function at 0x1401f2470
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x68
mov qword [rsp + 0x50], rcx
mov rax, qword [0x14022dd30]
mov ecx, dword [rax]
call fcn.140008650
mov rcx, qword [rsp + 0x50]
add rax, 0x50
mov qword [rsp + 0x58], rax
mov rax, qword [rcx]
mov qword [rsp + 0x60], rax
cmp rax, 0
je 0x1401f27c5
mov eax, dword [0x140223ad0]
xor edx, edx
div dword [0x140223ad4]
mov r8d, eax
sub r8d, 0xc33534ed
mov eax, 0xb05bc73f
xor eax, 0x998bf21f
sub r8d, eax
mov eax, r8d
xor eax, 0xffffffff
and eax, 0xae9f7fed
mov edx, 0xffffffff
xor edx, 0xae9f7fed
and r8d, edx
mov ecx, 0xffffffff
xor ecx, 0x6ffd479b
mov r9d, 0xbe2fc9c2
xor r9d, 0x10b0b62f
and ecx, r9d
and edx, 0x6ffd479b
or eax, r8d
or ecx, edx
xor eax, ecx
cmp eax, 0x43895403
je 0x1401f27ca
mov rcx, qword [rsp + 0x60]
mov eax, dword [0x140223ad8]
xor eax, dword [0x140223adc]
imul eax, eax, 0xab6f3f2f
mov edx, eax
add edx, 1
xor eax, 0xffffffff
or eax, 0x8c91038e
add eax, edx
add eax, 0xdeafd10d
mov rdx, rcx
add rdx, 0xfffffffffffffff0
mov qword [rsp + 0x38], rdx
mov rcx, qword [rcx - 0x10]
mov qword [rsp + 0x40], rcx
cmp rcx, 0x10
setb cl
mov byte [rsp + 0x4f], cl
cmp eax, 0x6bb921fc
ja 0x1401f27ca
mov al, byte [rsp + 0x4f]
test al, 1
jne 0x1401f270c
jmp 0x1401f257f
mov eax, dword [0x140223ae0]
mov ecx, dword [0x140223ae4]
xor ecx, 0xa5ac9e09
imul eax, ecx
mov ecx, 0x29c07d0
xor ecx, 0xea87b3b
xor eax, ecx
mov r8d, 0x9e04ea08
xor r8d, 0xf53a1a53
mov ecx, 0x6683d660
xor ecx, 0x997c299f
xor r8d, ecx
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
mov r8d, 0xc05443b0
xor r8d, 0x3fabbc4f
xor ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x6b3ef05b
or eax, 0x6b3ef05b
imul eax, edx
add eax, ecx
mov ecx, 0x171e43be
xor edx, edx
div ecx
cmp eax, 0xefbd92b0
je 0x1401f27d3
mov r8, qword [rsp + 0x40]
mov eax, dword [0x140223ae8]
mov edx, dword [0x140223aec]
mov ecx, 0x8c41304e
xor ecx, 0x8c41304e
sub ecx, edx
add eax, ecx
imul ecx, eax, 0x36a7c62a
mov eax, ecx
and eax, 0xf13cb6e4
mov edx, 0x8f852774
xor edx, 0x7eb99190
or ecx, edx
add eax, ecx
mov ecx, 0xebdb3e04
xor ecx, 0x81754596
sub eax, ecx
movabs rdx, 0x1e0c23e07ff864cd
movabs rcx, 0xdbbaa0ef20777124
xor rdx, rcx
mov rcx, r8
add rcx, rdx
add rcx, 0xfffffffffffffff0
movabs rdx, 0xc5b6830f5f8f15e9
sub rcx, rdx
mov qword [rsp + 0x28], rcx
mov rdx, rcx
xor rdx, r8
movabs r8, 0xa767bd4a4b7cf4aa
movabs r9, 0xa767bd4a4b7cf4aa
xor r8, r9
cmp rdx, r8
setl r8b
movabs rdx, 0x9dee03c902f1bc09
movabs r9, 0x6211fc36fd0e43f6
xor rdx, r9
cmp rcx, rdx
setg cl
mov dl, cl
xor dl, r8b
xor r9d, r9d
xor r9b, 1
xor dl, r9b
or cl, r8b
and cl, dl
mov byte [rsp + 0x37], cl
cmp eax, 0xafb0f393
jae 0x1401f25ff
mov al, byte [rsp + 0x37]
test al, 1
jne 0x1401f26f0
jmp 0x1401f26fa
call fcn.140008bc6
jmp 0x1401f27c5
mov rax, qword [rsp + 0x38]
mov rcx, qword [rsp + 0x28]
mov qword [rax], rcx
jmp 0x1401f27c5
mov rcx, qword [rsp + 0x60]
call fcn.14008fbef
mov rax, qword [rsp + 0x58]
mov al, byte [rax]
mov cl, 6
xor cl, 6
cmp al, cl
jne 0x1401f27c5
mov eax, dword [0x140223af0]
mov ecx, dword [0x140223af4]
mov edx, 0xe0b9ef3f
xor edx, 0x8164b92d
xor ecx, edx
and eax, ecx
imul eax, eax, 0xd8386ee5
mov ecx, eax
xor ecx, 0xffffffff
mov edx, 0x6c89a69b
xor edx, 0x8eefba03
and ecx, edx
mov edx, 0xffffffff
xor edx, 0xe2661c98
and eax, edx
sub eax, ecx
or eax, 0xb58d7296
cmp eax, 0xcd223dc8
ja 0x1401f27dc
mov rax, qword [rsp + 0x50]
mov ecx, dword [0x140223af8]
imul ecx, dword [0x140223afc]
xor ecx, 0xdda7b7af
imul ecx, ecx, 0xc00569f4
xor ecx, 0x9879b125
mov dword [rsp + 0x24], ecx
mov rcx, qword [rax]
mov edx, 8
call fcn.14001096f
mov eax, dword [rsp + 0x24]
cmp eax, 0xa8741f3b
ja 0x1401f27dc
jmp 0x1401f27c5
add rsp, 0x68
ret
lodsd eax, dword [rsi]
xchg edx, eax
jmp 0x1401f2518
add ecx, 0x77
cmp cl, ch
and edi, esi
invalid
jmp 0x1401f2847
retf 0x2144
or eax, r8d
xor eax, 0xffffffff
imul eax, edx
mov edx, ecx
and edx, 0xe5ea7059
or ecx, 0xe5ea7059
imul ecx, edx
add ecx, eax
sub ecx, 0x2ac9d99f
mov edx, 0x4914843e
xor edx, 0xb6eb7bc1
mov eax, ecx
xor eax, edx
mov edx, 0x3ba3702b
xor edx, 0xc45c8fd4
xor ecx, edx
or eax, ecx
mov ecx, 0xeba4a670
xor ecx, 0xcdf1b7d6
mov edx, 0x63ea742
xor edx, 0xf9c158bd
xor ecx, edx
mov edx, 0xffffffff
xor edx, 0x265511a6
or ecx, edx
and eax, ecx
mov ecx, 0x44ffe8b0
xor ecx, 0xbb00174f
xor eax, ecx
mov ecx, 0x975c8993
xor ecx, 0x2e89a425
cmp eax, ecx
jb 0x1401f2b04
jo 0x1401f2833
in eax, 0x81
leave
pop rcx
jo 0x1401f2839
in eax, 0xf
scasd eax, dword [rdi]
retf 0xc101
mov ecx, dword [0x140223b40]
mov eax, dword [0x140223b44]
xor eax, 0xa290ccd
sub ecx, eax
mov edx, ecx
xor edx, 0x98c44761
xor edx, 0xffffffff
and edx, 0x98c44761
mov eax, 0x2ab14a4e
xor eax, 0x2ab14a4c
imul eax, edx
sub eax, 0x98c44761
sub ecx, eax
mov edx, 0x744fef58
xor edx, 0x8bb010a7
mov eax, ecx
xor eax, edx
mov edx, 0xffffffff
xor edx, 0xcbc0582e
and eax, edx
xor ecx, 0xffffffff
mov edx, 0xe398b9da
xor edx, 0x2858e1f4
mov r8d, 0x1096a511
xor r8d, 0xef695aee
xor edx, r8d
and ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
mov ecx, 0x5e94981d
xor edx, edx
div ecx
mov dword [rsp + 0x48], eax
call fcn.1401f2b16
mov rcx, rax
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x38], rcx
mov rcx, rax
add rcx, 0x10
mov qword [rsp + 0x40], rcx
mov rcx, qword [rax + 0x10]
call fcn.1401f2b40
mov cl, al
mov eax, dword [rsp + 0x48]
mov byte [rsp + 0x4f], cl
cmp eax, 0x9c145234
je 0x1401f2b04
mov al, byte [rsp + 0x4f]
test al, 1
jne 0x1401f2996
jmp 0x1401f29b5
mov rax, qword [rsp + 0x40]
mov rcx, qword [rax]
call fcn.140166c00
mov rax, qword [rsp + 0x40]
mov rcx, qword [rax]
mov edx, 4
call fcn.14001096f
mov rax, qword [rsp + 0x50]
mov rcx, rax
add rcx, 0x18
mov qword [rsp + 0x30], rcx
mov rcx, qword [rax + 0x18]
call fcn.1401f2b40
test al, 1
jne 0x1401f29dc
jmp 0x1401f2a09
mov rax, qword [rsp + 0x30]
mov rcx, qword [rax]
call fcn.1401420c0
mov rax, qword [rsp + 0x38]
cmp byte [rax], 0
jne 0x1401f2a5d
mov rax, qword [rsp + 0x30]
mov rcx, qword [rax]
mov edx, 8
call fcn.14001096f
mov rax, qword [rsp + 0x50]
mov rcx, rax
add rcx, 0x20
mov qword [rsp + 0x28], rcx
mov rcx, qword [rax + 0x20]
call fcn.1401f2b40
test al, 1
jne 0x1401f2a30
jmp 0x1401f2a5d
mov rax, qword [rsp + 0x28]
mov rcx, qword [rax]
call fcn.1401f2470
mov rax, qword [rsp + 0x38]
cmp byte [rax], 0
jne 0x1401f2a5d
mov rax, qword [rsp + 0x28]
mov rcx, qword [rax]
mov edx, 8
call fcn.14001096f
mov eax, dword [0x140223b48]
mov ecx, dword [0x140223b4c]
xor ecx, 0xd7d7717f
imul eax, ecx
add eax, 0xce292fbf
and eax, 0x9947a250
add eax, 0xc0c57cdc
cmp eax, 0xa66ceec9
ja 0x1401f2b0d
mov eax, dword [0x140223b50]
sub eax, dword [0x140223b54]
mov ecx, 0xffffffff
xor ecx, 0x3d76c819
add eax, ecx
mov ecx, 0x853a514e
xor ecx, 0x853a514f
add eax, ecx
mov ecx, 0x356fce66
xor ecx, 0xf050a56e
xor edx, edx
div ecx
xor eax, 0xffffffff
mov edx, 0xbb882f33
xor edx, 0xbe9a782a
mov ecx, 0x8ca9cc07
xor ecx, 0x735633f8
xor edx, ecx
mov ecx, 0xffffffff
xor ecx, 0xae9f7fed
or eax, edx
or ecx, 0xae9f7fed
xor eax, 0xffffffff
and eax, ecx
cmp eax, 0x5f60fb73
je 0x1401f2b0d
add rsp, 0x58
ret
lodsd eax, dword [rsi]
xchg edx, eax
jmp 0x1401f28c0
jmp 0x1401f2b78
rol dword [rcx + riz - 0x37], 0xf
scasd eax, dword [rdi]
retf 0xc289