Function at 0x1400498dd
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rbx
push rsi
push r15
lea rbp, [rsp - 0x3f]
sub rsp, 0x6f026244
add rsp, 0x6f02615c
xor r15d, r15d
mov rbx, rcx
mov dword [rbp + 0x67], r15d
call fcn.140038270
mov rcx, rax
mov rdx, qword [rax]
call qword [rdx + 0xb8]
mov rcx, qword [0x140489f20]
mov rdx, rax
call fcn.14003f3a4
mov rcx, rax
call fcn.140037df8
mov ecx, dword [rbx + 0xb5c]
mov rsi, rax
neg ecx
add ecx, 0xfffffffc
neg ecx
cmp dword [rbx + 0xb58], ecx
je 0x140049a6b
mov rcx, qword [rax + 0x50]
test rcx, rcx
je 0x140049a6b
cmp byte [rcx + 0x310], r15b
je 0x140049a6b
mov qword [rsp + 0x118], rdi
lea rdx, [rbp - 0x49]
mov qword [rsp + 0x120], r12
mov rcx, rbx
mov qword [rsp + 0xe0], r14
call fcn.14004a200
mov r9, qword [rbx + 0xb48]
lea rdx, [rbp - 9]
mov rdi, qword [rsi + 0x50]
lea rcx, [rbp - 0x49]
xor r8d, r8d
call fcn.1400589f0
mov rdx, rax
mov rcx, rdi
call fcn.140032d10
mov rcx, qword [rbp - 9]
mov r12d, eax
lea rax, [rbp - 1]
cmp rcx, rax
jne 0x140049833
lea rdi, [rbp - 1]
xor eax, eax
mov ecx, 0x53ed04b8
xor ecx, 0x2c63fd08
sub ecx, 0x729f63b7
sub ecx, 0xcef95c9
rep stosb byte [rdi], al
jmp 0x140049838
call fcn.1400bb730
mov r14, qword [rbp - 0x11]
cmp qword [rbx + 0xb48], r14
je 0x14004992a
xorps xmm0, xmm0
mov qword [rsp + 0x128], r13
mov r13, qword [rsi + 0x50]
lea rax, [rsp + 0x28]
mov rsi, qword [rbp - 0x49]
lea rdx, [r14 + 1]
lea rcx, [rsp + 0x20]
mov qword [rsp + 0x20], rax
movups xmmword [rsp + 0x28], xmm0
movups xmmword [rbp - 0x71], xmm0
movups xmmword [rbp - 0x61], xmm0
call fcn.140016fb8
mov edx, 0x3dcf363e
xor edx, 0x7d6502f
add edx, 0x949fb31
test r14, r14
je 0x1400498e3
mov rdi, rax
sub rsi, rax
mov r8, r14
mov r9d, 0x1a14639
add r9d, 0x386706a2
xor r9d, 0x3a084c24
nop word [rax + rax]
movzx ecx, dx
lea rdi, [rdi + 2]
and cx, r9w
ror edx, 8
xor cx, word [rsi + rdi - 2]
mov word [rdi - 2], cx
sub r8, 1
jne 0x1400498c2
mov word [rax + r14*2], r15w
mov rcx, r13
mov rdx, qword [rbx + 0xb48]
mov rax, qword [rsp + 0x20]
lea rdx, [rax + rdx*2]
call fcn.140032f90
mov r13, qword [rsp + 0x128]
mov esi, eax
mov r15d, 0x2a2975fe
xor r15d, 0x7f6e23ed
xor r15d, 0x75d0833c
xor r15d, 0x2097d52e
jmp 0x14004992d
mov esi, r15d
mov r14, qword [rsp + 0xe0]
test r15b, 1
je 0x14004997c
mov rcx, qword [rsp + 0x20]
lea rax, [rsp + 0x28]
cmp rcx, rax
jne 0x140049977
lea rdi, [rsp + 0x28]
xor eax, eax
mov ecx, 0x40e8ed18
add ecx, 0x3a885b55
sub ecx, 0x64eeeb53
xor ecx, 0x16825d2a
rep stosb byte [rdi], al
jmp 0x14004997c
call fcn.1400bb730
lea rdx, [rbp + 0x67]
mov rcx, rbx
call fcn.14004eb60
lea rdx, [rbp + 0x67]
mov rcx, rbx
mov edi, dword [rax]
sub edi, r12d
sub edi, dword [rbx + 0xb58]
call fcn.14004eb60
cmp esi, edi
cmovle edi, esi
mov ecx, dword [rax]
mov eax, dword [rbx + 0xb5c]
sub ecx, edi
sub ecx, r12d
nop
sub eax, 0x74d8d361
add eax, 0x74d8d365
mov dword [rbx + 0xb58], ecx
cmp ecx, eax
jle 0x1400499d5
mov dword [rbx + 0xb58], eax
jmp 0x140049a21
lea rdx, [rbp + 0x67]
mov rcx, rbx
call fcn.14004eb60
mov ecx, dword [rbx + 0xb58]
add ecx, r12d
mov edx, dword [rax]
sub edx, dword [rbx + 0xb60]
neg edx
sub edx, 0xfffffffc
neg edx
cmp ecx, edx
jle 0x140049a21
lea rdx, [rbp + 0x67]
mov rcx, rbx
call fcn.14004eb60
mov edx, dword [rax]
sub edx, dword [rbx + 0xb60]
sub edx, r12d
add edx, 0xfffffffc
mov dword [rbx + 0xb58], edx
mov rcx, qword [rbp - 0x49]
lea rax, [rbp - 0x41]
mov r12, qword [rsp + 0x120]
cmp rcx, rax
jne 0x140049a5e
lea rdi, [rbp - 0x41]
xor eax, eax
mov ecx, 0x4e166516
sub ecx, 0x4be4ea5c
xor ecx, 0x24db5a88
sub ecx, 0x26ea2002
rep stosb byte [rdi], al
jmp 0x140049a63
call fcn.1400bb730
mov rdi, qword [rsp + 0x118]
sub rsp, 0x1341aac2
add rsp, 0x1341abaa
pop r15
pop rsi
pop rbx
pop rbp
ret