Function at 0x140055e50
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
push rdi
mov dword [rsp - 0x30], edx
sub rsp, 0x20
mov rdi, rcx
mov rsi, rdx
mov dword [rsp - 0x18], ebp
mov ecx, 0x2f8419e9
sub ecx, 0x1ef90dd9
xor ecx, 0x2a70d481
mov r13, r13
xor ecx, 0x19e71326
sub ecx, 0x231ccb6f
call fcn.14007afa0
mov dword [rsp - 0x3c], 0x19969bd2
mov rbx, rax
test rax, rax
je 0x140055f8b
mov rcx, rax
mov rsp, rsp
call fcn.1400388c0
lea rax, [0x140002370]
mov qword [rbx + 0x20], rdi
mov dword [rsp - 0xc], ebp
mov qword [rbx], rax
lea rdx, [rsp + 0x30]
mov rcx, rdi
mov dword [rbx + 0x30], 0x3b3b5323
mov rbx, rbx
add dword [rbx + 0x30], 0x4140872b
sub dword [rbx + 0x30], 0x75574143
add dword [rbx + 0x30], 0x2acae8e1
mov dword [rsp - 0x24], 0x1012a2c
xor dword [rbx + 0x30], 0x3b06fe6a
mov dword [rbx + 0x34], 0x56e61762
sub dword [rbx + 0x34], 0x493793ea
add dword [rbx + 0x34], 0xd076c7d
mov r15, r15
add dword [rbx + 0x34], 0x39399e56
sub dword [rbx + 0x34], 0x322ee9c1
xor dword [rbx + 0x34], 0x2b29db0c
mov dword [rsp - 0x1c], esp
mov qword [rbx + 0x28], rsi
call fcn.140054880
mov ecx, dword [rax + 4]
xchg r10, r10
xor ecx, 0xae97f86
mov dword [rbx + 0x38], 0x62e53e7c
sub dword [rbx + 0x38], 0x2eb1371
mov r15, r15
xor dword [rbx + 0x38], 0x5ea5d97c
add dword [rbx + 0x38], 0x13a3aa33
xor dword [rbx + 0x38], 0x68bd9b22
mov rsp, rsp
sub dword [rbx + 0x38], 0x72d48862
mov dword [rbx + 0x3c], ecx
mov byte [rbx + 0x40], 0x7c
sub byte [rbx + 0x40], 0x34
mov r9, r9
sub byte [rbx + 0x40], 0x24
add byte [rbx + 0x40], 0x12
xor byte [rbx + 0x40], 0x36
jmp 0x140055f8d
xor ebx, ebx
mov rdx, qword [rdi + 0x160]
mov rcx, rbx
mov rsp, rsp
mov qword [rsp + 0x30], rbx
call fcn.140038e70
lea rcx, [rdi + 0x158]
mov dword [rsp - 0x24], 0x776554cf
lea rdx, [rsp + 0x30]
call fcn.140055ce0
mov rcx, rdi
xchg rdx, rdx
mov rbx, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x40]
add rsp, 0x20
pop rdi
mov dword [rsp - 0x38], 0x7e7392cf
jmp 0x140056280
push rbx
sub rsp, 0x20
cmp qword [rcx + 0x160], 0
xchg rsp, rsp
mov rbx, rcx
je 0x1400563ac
lea rdx, [rsp + 0x30]
call fcn.140054880
mov dword [rsp - 0x30], esp
mov eax, dword [rsp + 0x30]
cdq
idiv dword [rbx + 0x160]
mov edx, 0x35041e55
mov dword [rsp - 0x40], 0x48de9216
xor edx, 0x168550db
xor edx, 0x995ce35
xor edx, 0x5452a44a
sub edx, 0x5084d62b
mov r12, r12
xor edx, 0x2dc14e66
cmp eax, edx
cmovl edx, eax
xor r8d, r8d
mov rbp, rbp
mov dword [rsp + 0x30], edx
mov rdx, qword [rbx + 0x160]
test rdx, rdx
mov dword [rsp - 0xc], 0x77df09cb
je 0x1400563a4
mov rax, qword [rbx + 0x158]
lea r9, [rax + rdx*8]
cmp rax, r9
mov r15, r15
je 0x1400563a4
nop dword [rax]
mov rdx, qword [rax]
mov ecx, r8d
xchg rdx, rdx
xor ecx, 0xae97f86
add rax, 8
mov dword [rdx + 0x30], ecx
mov dword [rsp - 0x40], edi
mov dword [rdx + 0x34], 0x5419641c
xor dword [rdx + 0x34], 0x6fccf3f
add dword [rdx + 0x34], 0x9888926
xchg r13, r13
add dword [rdx + 0x34], 0xe7c18b
xor dword [rdx + 0x34], 0x739f8c7a
sub dword [rdx + 0x34], 0x23e0fa28
mov ecx, dword [rsp + 0x30]
xchg rsi, rsi
xor ecx, 0xae97f86
mov dword [rdx + 0x38], ecx
mov ecx, dword [rsp + 0x34]
xor ecx, 0xae97f86
mov dword [rsp - 0x20], 0x723595a5
mov dword [rdx + 0x3c], ecx
add r8d, dword [rsp + 0x30]
cmp rax, r9
jne 0x140056326
mov dword [rsp - 0x34], 0x6471b6de
mov rcx, rbx
call fcn.1400386f0
add rsp, 0x20
mov dword [rsp - 0x30], ebp
pop rbx
ret