Function at 0x14010f9d8
Capabilities:
Encode data using xor

Disassembly:
xchg rbx, rax
mov rbx, rsp
xchg rbx, rax
xchg rbx, rcx
mov qword [rax + 8], rcx
xchg rbx, rcx
xchg rsi, r8
mov qword [rax + 0x10], r8
xchg rsi, r8
mov qword [rax + 0x18], rdi
xchg r12, r12
xchg r14, rdx
mov qword [rax + 0x20], rdx
xchg r14, rdx
push rbp
mov dword [rsp - 0x14], 0x1f352b17
lea rbp, [rax - 0x368]
add rsp, 0x638621ba
sub rsp, 0x6386261a
mov eax, edx
mov dil, r8b
mov dword [rsp - 0x34], 0x3e2f2f47
xchg rcx, rbp
mov rsi, rbp
xchg rcx, rbp
lea rdx, [rbp + 0x150]
xchg r12, r12
mov ecx, eax
mov r8d, 0x75fedb3
add r8d, 0x3befb39a
xor r8d, 0x6602c2ac
sub r8d, 0x254d62dd
call fcn.140089390
mov dword [rsp - 0x30], 0xe08d2b9
xor ebx, ebx
test al, al
je 0x14010fd6a
test dil, dil
mov rbx, rbx
jne 0x14010fc18
lea edx, [rbx + 0x5c]
lea rcx, [rbp + 0x150]
call fcn.1400997b0
mov rdi, rdi
test rax, rax
je 0x14010faac
neg rax
add rax, 0xfffffffffffffffe
neg rax
jmp 0x14010fab3
lea rax, [rbp + 0x150]
or r14, 0xffffffffffffffff
lea rcx, [rsp + 0x30]
xchg r12, r12
xchg rcx, r14
mov r8, rcx
xchg rcx, r14
mov rdx, rax
call fcn.14009bfec
mov dword [rsp - 0x24], edi
xorps xmm0, xmm0
lea rdi, [rbp + 0x150]
xor eax, eax
mov rbp, rbp
mov ecx, 0x6f1c6d71
sub ecx, 0x65fb0934
add ecx, 0x34cb04b1
add ecx, 0x1806f614
sub ecx, 0x55f35cfa
rep stosb byte [rdi], al
xchg rcx, rdi
mov rcx, qword [rsp + 0x30]
xchg rcx, rdi
lea rax, [rsi + 8]
mov qword [rsi], rax
movups xmmword [rax], xmm0
mov r11, r11
xchg r8, rax
movups xmmword [r8 + 0x10], xmm0
xchg r8, rax
movups xmmword [rax + 0x20], xmm0
inc r14
mov dword [rsp - 0x28], 0x2d32455d
cmp word [rdi + r14*2], bx
jne 0x14010fb27
mov rdx, r14
xchg r13, r13
xchg r14, r15
mov qword [rsi + 0x38], r15
xchg r14, r15
mov rcx, rsi
mov r15, r15
call fcn.140017a38
xchg rdx, rax
mov rax, rdx
xchg rdx, rax
mov ecx, 0x6a756530
sub ecx, 0x3f7c5bea
add ecx, 0x2b1b5035
xor ecx, 0xeca1219
cmp qword [rsi + 0x38], rbx
mov dword [rsp - 0xc], esp
jbe 0x14010fbd4
sub rdi, rax
mov r8d, 0x4a0ab461
sub r8d, 0x10ba65f9
add r8d, 0xb2a3778
xor r8d, 0x447a851f
movzx eax, cx
inc rbx
mov rcx, rcx
and ax, r8w
ror ecx, 5
ror ecx, 2
ror ecx, 1
xor ax, word [rdi + rdx]
mov word [rdx], ax
lea rdx, [rdx + 2]
mov dword [rsp - 0x20], 0x2efeb72
cmp rbx, qword [rsi + 0x38]
jb 0x14010fba2
xchg r9, rcx
mov r9, qword [rsp + 0x30]
xchg r9, rcx
lea rax, [rsp + 0x38]
mov r12, r12
cmp rcx, rax
jne 0x14010fd60
lea rdi, [rsp + 0x38]
xor eax, eax
mov r12, r12
mov ecx, 0x4833e142
sub ecx, 0x26c2e7bb
add ecx, 0x44aab720
sub ecx, 0x661bafa7
rep stosb byte [rdi], al
jmp 0x14010fe82
or r14, 0xffffffffffffffff
lea rdx, [rbp + 0x150]
xchg r8, r14
mov r14, r8
xchg r8, r14
lea rcx, [rbp + 0x40]
call fcn.14009bfec
mov r8, r8
xorps xmm0, xmm0
lea rdi, [rbp + 0x150]
xor eax, eax
mov ecx, 0x7970717c
sub ecx, 0x7548dfa0
add ecx, 0x11aa9507
xor ecx, 0x4cc192a0
xor ecx, 0x5913b64b
rep stosb byte [rdi], al
mov dword [rsp - 0x14], ecx
mov rdi, qword [rbp + 0x40]
lea rax, [rsi + 8]
mov qword [rsi], rax
xchg rbx, rax
movups xmmword [rbx], xmm0
xchg rbx, rax
movups xmmword [rax + 0x10], xmm0
xchg rbx, rax
movups xmmword [rbx + 0x20], xmm0
xchg rbx, rax
inc r14
cmp word [rdi + r14*2], bx
xchg r15, r15
jne 0x14010fc85
xchg r12, rdx
mov r12, r14
xchg rdx, r12
xchg r14, r10
mov qword [rsi + 0x38], r10
xchg r14, r10
mov rcx, rsi
call fcn.140017a38
xchg rdx, rax
mov rax, rdx
xchg rdx, rax
mov ecx, 0x7749fcd5
xor ecx, 0x1e3e9deb
xor ecx, 0x7b4047f6
xor ecx, 0x4ae96daa
cmp qword [rsi + 0x38], rbx
jbe 0x14010fd38
sub rdi, rax
mov dword [rsp - 0x10], 0x27610b1c
mov r8d, 0x38f73629
add r8d, 0x23814ce2
sub r8d, 0x2931a8d4
xor r8d, 0x308d7d9c
sub r8d, 0x3cba6ac
movzx eax, cx
inc rbx
mov dword [rsp - 0xc], 0x49eecc98
and ax, r8w
ror ecx, 7
ror ecx, 1
xor ax, word [rdi + rdx]
xchg rsp, rsp
mov word [rdx], ax
lea rdx, [rdx + 2]
cmp rbx, qword [rsi + 0x38]
xchg r10, r10
jb 0x14010fd06
xchg r15, rcx
mov r15, qword [rbp + 0x40]
xchg r15, rcx
lea rax, [rbp + 0x48]
cmp rcx, rax
mov dword [rsp - 0xc], 0x44e428fd
jne 0x14010fd60
lea rdi, [rbp + 0x48]
jmp 0x14010fbf5
call fcn.1400984b0
jmp 0x14010fe82
lea rdi, [rsi + 8]
mov dword [rsp + 0x20], 0x2ae55bc6
xor dword [rsp + 0x20], 0x67b936d
sub dword [rsp + 0x20], 0x1f602dfe
add dword [rsp + 0x20], 0x6c7b2c71
sub dword [rsp + 0x20], 0x460988c0
mov qword [rsi], rdi
xorps xmm0, xmm0
xchg rdi, r8
movups xmmword [r8], xmm0
xchg rdi, r8
mov dword [rsp + 0x24], 0x284960ff
sub dword [rsp + 0x24], 0x1bc252b6
add dword [rsp + 0x24], 0xfc9c46b
add dword [rsp + 0x24], 0x1a585158
xchg r10, rdi
movups xmmword [r10 + 0x10], xmm0
xchg r10, rdi
mov byte [rsp + 0x28], 0x24
add byte [rsp + 0x28], 0x45
xor byte [rsp + 0x28], 0x14
xor byte [rsp + 0x28], 0x47
add byte [rsp + 0x28], 0x22
xchg rdi, rbp
movups xmmword [rbp + 0x20], xmm0
xchg rdi, rbp
mov qword [rsi + 0x38], 0x6c66be4d
sub qword [rsi + 0x38], 0x501bd4d5
add qword [rsi + 0x38], 0xa126759
sub qword [rsi + 0x38], 0x265d50c8
cmp qword [rsi], rdi
mov dword [rsp - 0x44], esi
je 0x14010fe2f
xchg rcx, r10
mov r10, qword [rsi]
xchg r10, rcx
call fcn.1400984b0
mov qword [rsi], rdi
mov dword [rsp - 0xc], 0x1e113bb3
xorps xmm0, xmm0
xchg rsp, rdi
movups xmmword [rsp], xmm0
xchg rsp, rdi
xchg rsp, rdi
movups xmmword [rsp + 0x10], xmm0
xchg rdi, rsp
movups xmmword [rdi + 0x20], xmm0
mov r11, r11
mov rcx, qword [rsi]
cmp qword [rsi + 0x38], rbx
jbe 0x14010fe82
xchg r11, r11
movzx eax, byte [rsp + rbx + 0x20]
mov word [rcx + rbx*2], ax
inc rbx
cmp rbx, qword [rsi + 0x38]
mov rcx, rcx
jb 0x14010fe69
lea r11, [rsp + 0x460]
xchg r13, rax
mov r13, rsi
xchg r13, rax
mov rbx, qword [r11 + 0x10]
xchg rdi, rsi
mov rdi, qword [r11 + 0x18]
xchg rdi, rsi
mov rdi, qword [r11 + 0x20]
xchg r8, r8
mov r14, qword [r11 + 0x28]
mov rsp, r11
pop rbp
mov dword [rsp - 0x14], 0x218e69ce
ret