Function at 0x1400f8270
Capabilities:
Encode data using xor

Disassembly:
push rsi
sub rsp, 0xc0
mov qword [rsp + 0xa0], r8
mov qword [rsp + 0xa8], rdx
mov qword [rsp + 0xb0], rcx
mov al, byte [rdx + 0x10]
mov byte [rsp + 0xbf], al
sub al, 1
je 0x1400f82bb
jmp 0x1400f82a7
mov al, byte [rsp + 0xbf]
sub al, 3
je 0x1400f8a3a
jmp 0x1400f89bf
mov eax, dword [0x14021d640]
mov ecx, dword [0x14021d644]
xor ecx, 0xfa575236
imul eax, ecx
mov ecx, eax
xor ecx, 0x472499ca
mov edx, 0x3b42d70d
xor edx, 0xc4bd28f2
xor ecx, edx
and ecx, 0x472499ca
shl ecx, 1
mov edx, 0xf4228fc3
xor edx, 0xb3061609
sub ecx, edx
sub eax, ecx
mov ecx, 0xaf91702b
xor ecx, 0xfd247739
and eax, ecx
add eax, 0x4413d573
cmp eax, 0x4db89e9b
je 0x1400f8a44
mov rcx, qword [rsp + 0xa8]
mov edx, dword [0x14021d648]
mov r8d, dword [0x14021d64c]
mov eax, edx
or eax, r8d
mov r9d, 0xe4458a02
xor r9d, 0x1bba75fd
xor eax, r9d
mov r9d, 0x1fce7b1c
xor r9d, 0xe03184e3
xor edx, r9d
xor r8d, 0xffffffff
and edx, r8d
mov r8d, 0x27470719
xor r8d, 0xd8b8f8e6
xor eax, r8d
xor edx, 0xffffffff
and eax, edx
mov r8d, 0x983a21f0
xor edx, edx
div r8d
mov rdx, qword [rsp + 0xa0]
sub eax, 0x33199e4
mov r8d, 0x6e6e83b6
xor r8d, 0x88d777bd
add eax, r8d
mov r8, qword [rcx]
mov rdx, qword [rdx + 8]
mov qword [rsp + 0x78], rdx
mov r10b, byte [rdx + r8 + 8]
cmp r10b, 0x2d
sete dl
mov byte [rsp + 0x87], dl
and dl, 1
movzx edx, dl
mov r9d, edx
mov rdx, r8
add rdx, r9
mov qword [rsp + 0x88], rdx
mov edx, 0xffffffff
mov r9d, 1
cmp r10b, 0x2d
cmove edx, r9d
mov dword [rsp + 0x94], edx
mov rcx, qword [rcx + 8]
mov rdx, rcx
and rdx, r8
shl rdx, 1
xor rcx, r8
add rcx, rdx
mov qword [rsp + 0x98], rcx
cmp eax, 0x28240ab
je 0x1400f8a44
mov rax, qword [rsp + 0x88]
mov qword [rsp + 0x70], rax
jmp 0x1400f8421
mov rcx, qword [rsp + 0x98]
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x68], rax
cmp rax, rcx
jge 0x1400f8618
mov rax, qword [rsp + 0x78]
mov rcx, qword [rsp + 0x68]
mov al, byte [rax + rcx + 8]
mov byte [rsp + 0x67], al
mov cl, 0x82
xor cl, 0x52
mov dl, 0x30
xor dl, 0xcf
xor cl, dl
xor edx, edx
sub dl, 1
sub cl, dl
sub al, cl
cmp al, 0xa
jb 0x1400f84fc
movabs rcx, 0x25c3a3cb71659f98
movabs rax, 0x25c3a3cb71659fd8
xor rcx, rax
movabs rdx, 0xb7adf2761e57fbf6
movabs rax, 0xb7adf2761e57fbfe
xor rdx, rax
call fcn.140015160
mov rcx, rax
mov rax, qword [str.pf__]
mov qword [rcx], rax
lea rax, [0x14022c3e0]
mov qword [rcx + 0x10], rax
mov rax, qword [0x14022c468]
mov qword [rcx + 0x18], rax
mov rax, qword [0x14022c470]
mov qword [rcx + 0x20], rax
mov qword [rcx + 8], 0
lea rdx, [0x14022c3e0]
lea r8, [0x14022c435]
lea r9, [0x14022c3fb]
mov qword [rsp + 0x20], 0x752d6f3e
call fcn.140014c00
jmp 0x1400f8a3a
mov al, byte [rsp + 0x67]
movzx ecx, al
mov dword [rsp + 0x5c], ecx
mov eax, 0x80000030
sub eax, ecx
mov ecx, 0xa
xor edx, edx
div ecx
mov edx, eax
mov rax, qword [rsp + 0xb0]
mov ecx, 0xed2cb823
add ecx, 0
sub ecx, edx
sub ecx, 0xed2cb823
mov eax, dword [rax]
mov dword [rsp + 0x60], eax
cmp eax, ecx
jge 0x1400f85e3
movabs rcx, 0x4ff4f928d4954cb0
movabs rax, 0x4ff4f928d4954cf0
xor rcx, rax
movabs rdx, 0xae14dce6ef9c3455
movabs rax, 0xae14dce6ef9c345d
xor rdx, rax
call fcn.140015160
mov rcx, rax
mov rax, qword [str.pf__]
mov qword [rcx], rax
lea rax, [0x14022c3e0]
mov qword [rcx + 0x10], rax
mov rax, qword [0x14022c468]
mov qword [rcx + 0x18], rax
mov rax, qword [0x14022c470]
mov qword [rcx + 0x20], rax
mov qword [rcx + 8], 0
movabs rax, 0xf502082a251a807a
movabs rdx, 0xf502082a1046b6f7
xor rax, rdx
lea rdx, [0x14022c3e0]
lea r8, [0x14022c435]
lea r9, [0x14022c3fb]
mov qword [rsp + 0x20], rax
call fcn.140014c00
jmp 0x1400f8a3a
mov rax, qword [rsp + 0x68]
mov rcx, qword [rsp + 0xb0]
mov r9d, dword [rsp + 0x5c]
mov edx, dword [rsp + 0x60]
imul r8d, edx, 0xa
mov edx, 0x30
sub edx, r9d
add edx, r8d
mov dword [rcx], edx
add rax, 1
mov qword [rsp + 0x70], rax
jmp 0x1400f8421
mov al, byte [rsp + 0x87]
mov rcx, qword [rsp + 0xb0]
mov ecx, dword [rcx]
mov dword [rsp + 0x58], ecx
sub ecx, 0x80000000
setne cl
or al, cl
test al, 1
jne 0x1400f86c0
mov ecx, 0x40
mov edx, 8
call fcn.140015160
mov rcx, rax
mov rax, qword [str.pf__]
mov qword [rcx], rax
lea rax, [0x14022c3e0]
mov qword [rcx + 0x10], rax
mov rax, qword [0x14022c468]
mov qword [rcx + 0x18], rax
mov rax, qword [0x14022c470]
mov qword [rcx + 0x20], rax
mov qword [rcx + 8], 0
movabs rax, 0x56fd0995d8c35bea
movabs rdx, 0xa902f66a20591ae4
xor rax, rdx
lea rdx, [0x14022c3e0]
lea r8, [0x14022c435]
lea r9, [0x14022c3fb]
mov qword [rsp + 0x20], rax
call fcn.140014c00
jmp 0x1400f8a3a
mov eax, dword [0x14021d650]
xor edx, edx
div dword [0x14021d654]
mov r8d, 0xe7283678
xor r8d, 0x1e3a277c
mov ecx, 0xff4cce2d
xor ecx, 0xb331d2
xor r8d, ecx
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov r8d, 0x994d47f1
xor r8d, 0x605f56f5
mov edx, eax
and edx, r8d
or eax, 0xf9121104
imul eax, edx
add eax, ecx
mov ecx, eax
xor ecx, 0xdd29554e
xor ecx, 0xffffffff
mov edx, 0xa379c39
xor edx, 0xd71ec977
and edx, ecx
mov ecx, 0x77a0f610
xor ecx, 0x77a0f612
imul ecx, edx
sub ecx, 0xdd29554e
sub eax, ecx
and eax, 0xe773f10e
cmp eax, 0x9b5d0c1e
ja 0x1400f8a4d
mov edx, dword [rsp + 0x94]
mov r8d, dword [rsp + 0x58]
mov ecx, dword [0x14021d658]
mov eax, dword [0x14021d65c]
or ecx, ecx
xor ecx, 0xffffffff
or eax, eax
xor eax, 0xffffffff
xor ecx, 0xffffffff
xor eax, 0xffffffff
and ecx, eax
mov eax, 0xa1a3ac8a
xor eax, 0xd2984dbf
mov r9d, ecx
xor r9d, eax
xor r9d, 0xffffffff
mov eax, 0x95cff36b
xor eax, 0xe6f4125e
and eax, r9d
shl eax, 1
mov r9d, 0x30a6d364
xor r9d, 0x439d3251
sub eax, r9d
sub ecx, eax
and ecx, 0xd20db520
mov eax, ecx
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0xffffffff
xor ecx, 0xdb72e669
mov r9d, 0xffffffff
xor r9d, 0xdb72e669
or ecx, r9d
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
movsxd rcx, r8d
movsxd r11, edx
mov r9, rcx
xor r9, 0xffffffffffffffff
mov r10, r11
and r10, r9
movabs r9, 0xb6dccb9fba5186d6
movabs rsi, 0x4923346045ae7929
xor r9, rsi
mov rsi, r11
xor rsi, r9
mov r9, rcx
and r9, rsi
imul r9, r10
mov r10, rcx
and r10, r11
or rcx, r11
imul rcx, r10
add rcx, r9
mov qword [rsp + 0x38], rcx
cvtsi2sd xmm1, r8d
cvtsi2sd xmm0, edx
mulsd xmm0, xmm1
movsd qword [rsp + 0x40], xmm0
cvtsi2sd xmm1, rcx
movsd qword [rsp + 0x48], xmm1
ucomisd xmm0, xmm1
sete cl
setnp dl
and cl, dl
mov byte [rsp + 0x57], cl
cmp eax, 0xfeff04c9
jae 0x1400f8a4d
mov al, byte [rsp + 0x57]
test al, 1
jne 0x1400f88ce
jmp 0x1400f887f
movsd xmm1, qword [rsp + 0x40]
movsd xmm0, qword [rsp + 0x48]
subsd xmm0, xmm1
call fcn.1402158d0
movaps xmm1, xmm0
movsd xmm0, qword [rsp + 0x40]
movsd qword [rsp + 0x30], xmm1
call fcn.1402158d0
movsd xmm1, qword [rsp + 0x30]
movsd xmm2, qword [0x14022c3d8]
mulsd xmm1, xmm2
ucomisd xmm0, xmm1
jae 0x1400f88ce
call fcn.140008bc6
jmp 0x1400f8a3a
mov ecx, dword [0x14021d660]
or ecx, dword [0x14021d664]
mov eax, ecx
or eax, 0x2c7697f
xor eax, 0xffffffff
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x2c7697f
and ecx, edx
or eax, ecx
xor eax, 0xffffffff
and eax, 0x79bd9e45
mov ecx, 0xfb9a48d1
xor ecx, 0xab117296
xor edx, edx
div ecx
cmp eax, 0x4825d9bd
je 0x1400f8a56
mov rcx, qword [rsp + 0x38]
mov eax, dword [0x14021d668]
or eax, dword [0x14021d66c]
xor edx, edx
sub edx, 0xe0fb9ea2
sub eax, edx
and eax, 0xc573133
xor eax, 0xda75bb85
movabs rdx, 0x4775b56408a9e00b
add rcx, rdx
movabs rdx, 0x152214aaa0dba496
movabs r8, 0xeaddeb5520dba496
xor rdx, r8
add rcx, rdx
movabs rdx, 0x4775b56408a9e00b
sub rcx, rdx
movabs rdx, 0xffffffff00000000
cmp rcx, rdx
setb cl
mov byte [rsp + 0x2f], cl
cmp eax, 0x23af7f6e
jbe 0x1400f8918
mov al, byte [rsp + 0x2f]
test al, 1
jne 0x1400f89a1
jmp 0x1400f89ab
call fcn.140008bc6
jmp 0x1400f8a3a
mov rax, qword [rsp + 0xb0]
mov rcx, qword [rsp + 0x38]
mov dword [rax], ecx
jmp 0x1400f8a3a
mov ecx, 0x40
mov edx, 8
call fcn.140015160
mov rcx, rax
mov rax, qword [str.pf__]
mov qword [rcx], rax
lea rax, [0x14022c3e0]
mov qword [rcx + 0x10], rax
mov rax, qword [0x14022c468]
mov qword [rcx + 0x18], rax
mov rax, qword [0x14022c470]
mov qword [rcx + 0x20], rax
mov qword [rcx + 8], 0
movabs rax, 0x7500d78dbf1bf1ec
movabs rdx, 0x8aff287237050a99
xor rax, rdx
lea rdx, [0x14022c3e0]
lea r8, [0x14022c435]
lea r9, [0x14022c3fb]
mov qword [rsp + 0x20], rax
call fcn.140014c00
nop
add rsp, 0xc0
pop rsi
ret
xchg ecx, eax
xor edi, dword [rbx]
scasd eax, dword [rdi]
jmp 0x1400f831a
mov dh, 0x17
mov eax, 0xfcfde914
invalid
mov dword [rdx - 0x46160965], edi
invalid