Function at 0x1400f4720
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rsi
push rdi
push rbx
push rax
mov rbp, rsp
mov r9, r8
mov rsi, rcx
mov eax, dword [0x141dc5ec8]
and eax, dword [0x141dc5ecc]
imul eax, eax, 0xef95872f
or eax, 0xd44fc1f5
xor eax, 0x19fc7f5
cmp eax, 0x51546a8c
jb 0x1400f4799
mov r10d, dword [0x141dc5ed0]
imul r10d, dword [0x141dc5ed4]
and r10d, 0x40001c00
mov eax, 0x20
call fcn.1400f07c0
sub rsp, rax
mov r8, rsp
mov eax, 0x20
call fcn.1400f07c0
sub rsp, rax
mov rdi, rsp
mov rcx, rdx
add rcx, r9
setb al
cmp r10d, 0x72f342d8
jbe 0x1400f47b5
mov eax, 0x20
call fcn.1400f07c0
sub rsp, rax
mov eax, 0x20
call fcn.1400f07c0
sub rsp, rax
jmp 0x1400f4751
test al, al
jne 0x1400f4a29
nop dword [rax]
mov eax, dword [0x141dc5ed8]
or eax, dword [0x141dc5edc]
imul eax, eax, 0x3bcc37e2
xor eax, 0x5e36514b
add eax, 0x940ff49f
cmp eax, 0x14c7be27
jb 0x1400f47c0
nop word cs:[rax + rax]
mov eax, dword [0x141dc5ee0]
imul eax, dword [0x141dc5ee4]
add eax, 0x9be923a7
or eax, 0x801cef86
cmp eax, 0x7f643c56
je 0x1400f47f0
mov rax, qword [rsi]
lea rdx, [rax + rax]
cmp rdx, rcx
cmova rcx, rdx
cmp rcx, 9
mov ebx, 8
cmovae rbx, rcx
test rbx, rbx
js 0x1400f4a29
xor ecx, ecx
nop word cs:[rax + rax]
test cl, cl
jne 0x1400f4840
nop word cs:[rax + rax]
mov ecx, dword [0x141dc5ee8]
xor ecx, dword [0x141dc5eec]
or ecx, 0xbb60eb30
shr ecx, 4
imul rcx, rcx, 0x11a41869
shr rcx, 0x38
imul ecx, ecx, 0xd338e7a2
cmp ecx, 0xbe4902f8
je 0x1400f4850
test rax, rax
je 0x1400f48a5
mov ecx, dword [0x141dc5ef0]
or ecx, dword [0x141dc5ef4]
add ecx, 0xdfeed5f6
xor ecx, 0xc075db01
cmp ecx, 0xc5ea8c65
jbe 0x1400f48ac
jmp 0x1400f48de
xor eax, eax
jmp 0x1400f4944
mov rcx, qword [rsi + 8]
mov qword [r8], rcx
mov ecx, dword [0x141dc5ef8]
sub ecx, dword [0x141dc5efc]
and ecx, 0x74bd341b
add ecx, 0x3ff6630a
imul rcx, rcx, 0x389d9d99
shr rcx, 0x3d
cmp ecx, 0xc23dd9c6
jbe 0x1400f48e7
mov rcx, qword [rsi + 8]
mov qword [r8], rcx
jmp 0x1400f48ac
mov ecx, dword [0x141dc5f00]
and ecx, dword [0x141dc5f04]
or ecx, 0x459ced2a
add ecx, 0x6b5d6ebe
imul rdx, rcx, 0x44a0cecd
shr rdx, 0x20
sub ecx, edx
shr ecx, 1
add ecx, edx
shr ecx, 0x1f
cmp ecx, 0xcc613a3
ja 0x1400f4939
mov ecx, dword [0x141dc5f08]
and ecx, dword [0x141dc5f0c]
and ecx, 0x98b40362
mov qword [r8 + 0x10], rax
cmp ecx, 0xc01f5daa
jne 0x1400f493f
mov qword [r8 + 0x10], rax
jmp 0x1400f491b
mov eax, 1
mov qword [r8 + 8], rax
sub rsp, 0x20
mov rcx, rdi
mov rdx, rbx
call fcn.140039d10
add rsp, 0x20
cmp qword [rdi], 0
jne 0x1400f49bd
nop word cs:[rax + rax]
mov eax, dword [0x141dc5f38]
and eax, dword [0x141dc5f3c]
and eax, 0x7164c82b
add eax, 0xd35d99eb
or eax, 0xb146873
cmp eax, 0xb376aae2
ja 0x1400f4970
mov eax, dword [0x141dc5f40]
and eax, dword [0x141dc5f44]
xor eax, 0x808a1b4
or eax, 0xe0f31648
and eax, 0xfafbf7fc
cmp eax, 0x310c84f5
jae 0x1400f4a9c
jmp 0x1400f4aca
mov eax, 0xd512580f
nop word cs:[rax + rax]
mov ecx, dword [0x141dc5f10]
or ecx, dword [0x141dc5f14]
imul ecx, ecx, 0x7219bb87
imul rcx, rax
shr rcx, 0x3e
or ecx, 0x30a0eaa8
cmp ecx, 0x200c7fb
jb 0x1400f49d0
mov eax, 0x8e7ac713
nop dword [rax]
mov ecx, dword [0x141dc5f18]
imul ecx, dword [0x141dc5f1c]
add ecx, 0x636e3496
xor ecx, 0x75f615a8
imul rcx, rax
shr rcx, 0x3f
cmp ecx, 0x14644b7
ja 0x1400f4a00
mov eax, dword [0x141dc5f20]
xor eax, dword [0x141dc5f24]
imul rax, rax, 0x463dac0f
shr rax, 0x3d
add eax, 0xcb22a1da
cmp eax, 0x72bb88d0
jb 0x1400f4a6b
mov eax, dword [0x141dc5f28]
or eax, dword [0x141dc5f2c]
and eax, 0x64142fdc
add eax, 0xbce97e8b
ud2
ud2
mov rax, qword [rdi + 8]
mov qword [rsi + 8], rax
mov eax, dword [0x141dc5f48]
xor eax, dword [0x141dc5f4c]
xor eax, 0x1035eb25
imul eax, eax, 0xcbfe03d2
add eax, 0xf7b76d23
mov qword [rsi], rbx
cmp eax, 0xe7edf02d
jbe 0x1400f4ad7
mov rax, qword [rdi + 8]
mov qword [rsi + 8], rax
mov qword [rsi], rbx
jmp 0x1400f4a9c
lea rsp, [rbp + 8]
pop rbx
pop rdi
pop rsi
pop rbp
ret