Function at 0x5efb30
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x48
mov dword [rsp + 0x3c], edx
and edx, 7
mov rbx, rcx
mov qword [rsp + 0x28], r8
mov qword [rsp + 0x30], r9
jne 0x5f06a0
mov eax, dword [rsp + 0x3c]
test eax, eax
je 0x5f068e
lea rdi, [0x007b6b00]
lea rsi, [0x007b6a00]
lea r11, [0x007b6f00]
lea r10, [0x007b6900]
lea r9, [0x007b6800]
lea r8, [0x007b6e00]
lea rcx, [0x007b6d00]
nop word [rax + rax]
mov r15, qword [rsp + 0x30]
movzx edx, byte [r15 + 7]
movzx eax, byte [r15 + 6]
movzx ebp, byte [r15 + 2]
shl edx, 8
or edx, eax
movzx eax, byte [r15 + 5]
shl edx, 8
or edx, eax
movzx eax, byte [r15 + 4]
shl edx, 8
or edx, eax
movzx eax, byte [r15 + 3]
shl eax, 8
or eax, ebp
movzx ebp, byte [r15 + 1]
shl eax, 8
or eax, ebp
movzx ebp, byte [r15]
shl eax, 8
or eax, ebp
mov ebp, edx
shr ebp, 4
xor ebp, eax
and ebp, 0xf0f0f0f
mov r12d, ebp
xor eax, ebp
shl r12d, 4
xor r12d, edx
mov edx, eax
shr edx, 0x10
xor edx, r12d
movzx edx, dx
xor r12d, edx
mov r13d, edx
shl r13d, 0x10
mov edx, r12d
xor r13d, eax
shr edx, 2
xor edx, r13d
and edx, 0x33333333
xor r13d, edx
lea ebp, [rdx*4]
mov eax, r13d
xor ebp, r12d
shr eax, 8
mov r12d, dword [rbx]
xor eax, ebp
and eax, 0xff00ff
mov edx, eax
shl edx, 8
xor edx, r13d
xor eax, ebp
mov ebp, dword [rbx + 4]
ror eax, 1
mov r15d, eax
xor r15d, edx
and r15d, 0x55555555
xor edx, r15d
xor eax, r15d
ror edx, 1
xor r12d, edx
xor ebp, edx
mov r14d, r12d
mov r15d, r12d
ror ebp, 0x1c
and r15d, 0xfc
shr r14d, 8
mov r13d, r12d
xor eax, dword [rdi + r15]
and r14d, 0xfc
shr r13d, 0x10
xor eax, dword [rsi + r14]
mov r14d, ebp
and r13d, 0xfc
and r14d, 0xfc
shr r12d, 0x18
lea r15, [0x007b6c00]
xor eax, dword [r11 + r14]
and r12d, 0xfc
xor eax, dword [r10 + r13]
xor eax, dword [r9 + r12]
mov r12d, ebp
shr r12d, 8
and r12d, 0xfc
xor eax, dword [r8 + r12]
mov r12d, ebp
shr ebp, 0x18
shr r12d, 0x10
and ebp, 0xfc
and r12d, 0xfc
xor eax, dword [rcx + r12]
mov r12d, dword [rbx + 8]
xor eax, dword [r15 + rbp]
mov ebp, dword [rbx + 0xc]
xor r12d, eax
mov r14d, r12d
mov r15d, r12d
mov r13d, r12d
shr r14d, 8
xor ebp, eax
and r15d, 0xfc
ror ebp, 0x1c
xor edx, dword [rdi + r15]
and r14d, 0xfc
xor edx, dword [rsi + r14]
mov r14d, ebp
shr r13d, 0x10
and r14d, 0xfc
and r13d, 0xfc
shr r12d, 0x18
xor edx, dword [r11 + r14]
and r12d, 0xfc
lea r15, [0x007b6c00]
xor edx, dword [r10 + r13]
xor edx, dword [r9 + r12]
mov r12d, ebp
shr r12d, 8
and r12d, 0xfc
xor edx, dword [r8 + r12]
mov r12d, ebp
shr ebp, 0x18
shr r12d, 0x10
and ebp, 0xfc
and r12d, 0xfc
xor edx, dword [rcx + r12]
mov r12d, dword [rbx + 0x10]
xor edx, dword [r15 + rbp]
mov ebp, dword [rbx + 0x14]
xor r12d, edx
xor ebp, edx
mov r14d, r12d
mov r15d, r12d
ror ebp, 0x1c
and r15d, 0xfc
shr r14d, 8
mov r13d, r12d
xor eax, dword [rdi + r15]
and r14d, 0xfc
shr r13d, 0x10
xor eax, dword [rsi + r14]
mov r14d, ebp
lea r15, [0x007b6c00]
and r14d, 0xfc
and r13d, 0xfc
shr r12d, 0x18
xor eax, dword [r11 + r14]
and r12d, 0xfc
xor eax, dword [r10 + r13]
xor eax, dword [r9 + r12]
mov r12d, ebp
shr r12d, 8
and r12d, 0xfc
xor eax, dword [r8 + r12]
mov r12d, ebp
shr ebp, 0x18
shr r12d, 0x10
and ebp, 0xfc
and r12d, 0xfc
xor eax, dword [rcx + r12]
mov r12d, dword [rbx + 0x18]
xor eax, dword [r15 + rbp]
mov ebp, dword [rbx + 0x1c]
xor r12d, eax
xor ebp, eax
mov r14d, r12d
mov r15d, r12d
ror ebp, 0x1c
and r15d, 0xfc
shr r14d, 8
mov r13d, r12d
xor edx, dword [rdi + r15]
and r14d, 0xfc
shr r13d, 0x10
xor edx, dword [rsi + r14]
mov r14d, ebp
and r13d, 0xfc
and r14d, 0xfc
shr r12d, 0x18
lea r15, [0x007b6c00]
xor edx, dword [r11 + r14]
and r12d, 0xfc
xor edx, dword [r10 + r13]
xor edx, dword [r9 + r12]
mov r12d, ebp
shr r12d, 8
and r12d, 0xfc
xor edx, dword [r8 + r12]
mov r12d, ebp
shr ebp, 0x18
shr r12d, 0x10
and ebp, 0xfc
and r12d, 0xfc
xor edx, dword [rcx + r12]
mov r12d, dword [rbx + 0x20]
xor edx, dword [r15 + rbp]
mov ebp, dword [rbx + 0x24]
xor r12d, edx
xor ebp, edx
mov r14d, r12d
mov r15d, r12d
ror ebp, 0x1c
and r15d, 0xfc
shr r14d, 8
mov r13d, r12d
xor eax, dword [rdi + r15]
and r14d, 0xfc
shr r13d, 0x10
xor eax, dword [rsi + r14]
mov r14d, ebp
and r13d, 0xfc
and r14d, 0xfc
shr r12d, 0x18
lea r15, [0x007b6c00]
xor eax, dword [r11 + r14]
and r12d, 0xfc
xor eax, dword [r10 + r13]
xor eax, dword [r9 + r12]
mov r12d, ebp
shr r12d, 8
and r12d, 0xfc
xor eax, dword [r8 + r12]
mov r12d, ebp
shr ebp, 0x18
shr r12d, 0x10
and ebp, 0xfc
and r12d, 0xfc
xor eax, dword [rcx + r12]
mov r12d, dword [rbx + 0x28]
xor eax, dword [r15 + rbp]
mov ebp, dword [rbx + 0x2c]
xor r12d, eax
xor ebp, eax
mov r14d, r12d
mov r15d, r12d
ror ebp, 0x1c
and r15d, 0xfc
shr r14d, 8
mov r13d, r12d
xor edx, dword [rdi + r15]
and r14d, 0xfc
shr r13d, 0x10
xor edx, dword [rsi + r14]
mov r14d, ebp
and r13d, 0xfc
and r14d, 0xfc
shr r12d, 0x18
lea r15, [0x007b6c00]
xor edx, dword [r11 + r14]
and r12d, 0xfc
xor edx, dword [r10 + r13]
xor edx, dword [r9 + r12]
mov r12d, ebp
shr r12d, 8
and r12d, 0xfc
xor edx, dword [r8 + r12]
mov r12d, ebp
shr ebp, 0x18
shr r12d, 0x10
and ebp, 0xfc
and r12d, 0xfc
xor edx, dword [rcx + r12]
mov r12d, dword [rbx + 0x30]
xor edx, dword [r15 + rbp]
mov ebp, dword [rbx + 0x34]
xor r12d, edx
xor ebp, edx
mov r14d, r12d
mov r15d, r12d
ror ebp, 0x1c
and r15d, 0xfc
shr r14d, 8
mov r13d, r12d
xor eax, dword [rdi + r15]
and r14d, 0xfc
shr r13d, 0x10
xor eax, dword [rsi + r14]
mov r14d, ebp
and r13d, 0xfc
and r14d, 0xfc
shr r12d, 0x18
lea r15, [0x007b6c00]
xor eax, dword [r11 + r14]
and r12d, 0xfc
xor eax, dword [r10 + r13]
xor eax, dword [r9 + r12]
mov r12d, ebp
shr r12d, 8
and r12d, 0xfc
xor eax, dword [r8 + r12]
mov r12d, ebp
shr ebp, 0x18
shr r12d, 0x10
and ebp, 0xfc
and r12d, 0xfc
xor eax, dword [rcx + r12]
mov r12d, dword [rbx + 0x38]
xor eax, dword [r15 + rbp]
mov ebp, dword [rbx + 0x3c]
xor r12d, eax
xor ebp, eax
mov r14d, r12d
mov r15d, r12d
ror ebp, 0x1c
and r15d, 0xfc
shr r14d, 8
mov r13d, r12d
xor edx, dword [rdi + r15]
and r14d, 0xfc
shr r13d, 0x10
xor edx, dword [rsi + r14]
mov r14d, ebp
and r13d, 0xfc
and r14d, 0xfc
shr r12d, 0x18
lea r15, [0x007b6c00]
xor edx, dword [r11 + r14]
and r12d, 0xfc
xor edx, dword [r10 + r13]
xor edx, dword [r9 + r12]
mov r12d, ebp
shr r12d, 8
and r12d, 0xfc
xor edx, dword [r8 + r12]
mov r12d, ebp
shr ebp, 0x18
shr r12d, 0x10
and ebp, 0xfc
and r12d, 0xfc
xor edx, dword [rcx + r12]
mov r12d, dword [rbx + 0x40]
xor edx, dword [r15 + rbp]
mov ebp, dword [rbx + 0x44]
xor r12d, edx
xor ebp, edx
mov r14d, r12d
mov r15d, r12d
ror ebp, 0x1c
and r15d, 0xfc
shr r14d, 8
mov r13d, r12d
xor eax, dword [rdi + r15]
and r14d, 0xfc
shr r13d, 0x10
xor eax, dword [rsi + r14]
mov r14d, ebp
and r13d, 0xfc
and r14d, 0xfc
shr r12d, 0x18
lea r15, [0x007b6c00]
xor eax, dword [r11 + r14]
and r12d, 0xfc
xor eax, dword [r10 + r13]
xor eax, dword [r9 + r12]
mov r12d, ebp
shr r12d, 8
and r12d, 0xfc
xor eax, dword [r8 + r12]
mov r12d, ebp
shr ebp, 0x18
shr r12d, 0x10
and ebp, 0xfc
and r12d, 0xfc
xor eax, dword [rcx + r12]
mov r12d, dword [rbx + 0x48]
xor eax, dword [r15 + rbp]
mov ebp, dword [rbx + 0x4c]
xor r12d, eax
xor ebp, eax
mov r14d, r12d
mov r15d, r12d
ror ebp, 0x1c
and r15d, 0xfc
shr r14d, 8
mov r13d, r12d
xor edx, dword [rdi + r15]
and r14d, 0xfc
shr r13d, 0x10
xor edx, dword [rsi + r14]
mov r14d, ebp
and r13d, 0xfc
and r14d, 0xfc
shr r12d, 0x18
lea r15, [0x007b6c00]
xor edx, dword [r11 + r14]
and r12d, 0xfc
xor edx, dword [r10 + r13]
xor edx, dword [r9 + r12]
mov r12d, ebp
shr r12d, 8
and r12d, 0xfc
xor edx, dword [r8 + r12]
mov r12d, ebp
shr ebp, 0x18
shr r12d, 0x10
and ebp, 0xfc
and r12d, 0xfc
xor edx, dword [rcx + r12]
mov r12d, dword [rbx + 0x50]
xor edx, dword [r15 + rbp]
mov ebp, dword [rbx + 0x54]
xor r12d, edx
xor ebp, edx
mov r14d, r12d
mov r15d, r12d
mov r13d, r12d
and r15d, 0xfc
shr r14d, 8
ror ebp, 0x1c
xor eax, dword [rdi + r15]
shr r13d, 0x10
and r14d, 0xfc
xor eax, dword [rsi + r14]
mov r14d, ebp
and r13d, 0xfc
and r14d, 0xfc
shr r12d, 0x18
lea r15, [0x007b6c00]
xor eax, dword [r11 + r14]
and r12d, 0xfc
xor eax, dword [r10 + r13]
xor eax, dword [r9 + r12]
mov r12d, ebp
shr r12d, 8
and r12d, 0xfc
xor eax, dword [r8 + r12]
mov r12d, ebp
shr ebp, 0x18
shr r12d, 0x10
and ebp, 0xfc
and r12d, 0xfc
xor eax, dword [rcx + r12]
mov r12d, dword [rbx + 0x58]
xor eax, dword [r15 + rbp]
mov ebp, dword [rbx + 0x5c]
xor r12d, eax
xor ebp, eax
mov r14d, r12d
mov r15d, r12d
ror ebp, 0x1c
and r15d, 0xfc
shr r14d, 8
mov r13d, r12d
xor edx, dword [rdi + r15]
and r14d, 0xfc
shr r13d, 0x10
xor edx, dword [rsi + r14]
mov r14d, ebp
and r13d, 0xfc
and r14d, 0xfc
shr r12d, 0x18
lea r15, [0x007b6c00]
xor edx, dword [r11 + r14]
and r12d, 0xfc
xor edx, dword [r10 + r13]
xor edx, dword [r9 + r12]
mov r12d, ebp
shr r12d, 8
and r12d, 0xfc
xor edx, dword [r8 + r12]
mov r12d, ebp
shr ebp, 0x18
shr r12d, 0x10
and ebp, 0xfc
and r12d, 0xfc
xor edx, dword [rcx + r12]
mov r12d, dword [rbx + 0x60]
xor edx, dword [r15 + rbp]
mov ebp, dword [rbx + 0x64]
xor r12d, edx
xor ebp, edx
mov r14d, r12d
mov r15d, r12d
ror ebp, 0x1c
and r15d, 0xfc
shr r14d, 8
mov r13d, r12d
xor eax, dword [rdi + r15]
and r14d, 0xfc
shr r13d, 0x10
xor eax, dword [rsi + r14]
mov r14d, ebp
and r13d, 0xfc
and r14d, 0xfc
shr r12d, 0x18
lea r15, [0x007b6c00]
xor eax, dword [r11 + r14]
and r12d, 0xfc
xor eax, dword [r10 + r13]
xor eax, dword [r9 + r12]
mov r12d, ebp
shr r12d, 8
and r12d, 0xfc
xor eax, dword [r8 + r12]
mov r12d, ebp
shr ebp, 0x18
shr r12d, 0x10
and r12d, 0xfc
xor eax, dword [rcx + r12]
and ebp, 0xfc
mov r12d, dword [rbx + 0x68]
xor eax, dword [r15 + rbp]
mov ebp, dword [rbx + 0x6c]
xor r12d, eax
xor ebp, eax
mov r14d, r12d
mov r15d, r12d
ror ebp, 0x1c
and r15d, 0xfc
shr r14d, 8
mov r13d, r12d
xor edx, dword [rdi + r15]
and r14d, 0xfc
shr r13d, 0x10
xor edx, dword [rsi + r14]
mov r14d, ebp
and r13d, 0xfc
and r14d, 0xfc
shr r12d, 0x18
lea r15, [0x007b6c00]
xor edx, dword [r11 + r14]
and r12d, 0xfc
xor edx, dword [r10 + r13]
xor edx, dword [r9 + r12]
mov r12d, ebp
shr r12d, 8
and r12d, 0xfc
xor edx, dword [r8 + r12]
mov r12d, ebp
shr ebp, 0x18
shr r12d, 0x10
and ebp, 0xfc
and r12d, 0xfc
xor edx, dword [rcx + r12]
mov r12d, dword [rbx + 0x70]
xor edx, dword [r15 + rbp]
mov ebp, dword [rbx + 0x74]
xor r12d, edx
xor ebp, edx
mov r14d, r12d
mov r15d, r12d
mov r13d, r12d
shr r14d, 8
and r15d, 0xfc
ror ebp, 0x1c
shr r13d, 0x10
xor eax, dword [rdi + r15]
and r14d, 0xfc
xor eax, dword [rsi + r14]
mov r14d, ebp
and r13d, 0xfc
and r14d, 0xfc
shr r12d, 0x18
lea r15, [0x007b6c00]
xor eax, dword [r11 + r14]
and r12d, 0xfc
xor eax, dword [r10 + r13]
xor eax, dword [r9 + r12]
mov r12d, ebp
shr r12d, 8
and r12d, 0xfc
xor eax, dword [r8 + r12]
mov r12d, ebp
shr ebp, 0x18
shr r12d, 0x10
and ebp, 0xfc
and r12d, 0xfc
xor eax, dword [rcx + r12]
mov r12d, dword [rbx + 0x78]
xor eax, dword [r15 + rbp]
mov ebp, dword [rbx + 0x7c]
xor r12d, eax
xor ebp, eax
mov r14d, r12d
mov r15d, r12d
ror ebp, 0x1c
and r15d, 0xfc
shr r14d, 8
mov r13d, r12d
xor edx, dword [rdi + r15]
and r14d, 0xfc
shr r13d, 0x10
xor edx, dword [rsi + r14]
mov r14d, ebp
and r13d, 0xfc
and r14d, 0xfc
shr r12d, 0x18
lea r15, [0x007b6c00]
xor edx, dword [r11 + r14]
xor edx, dword [r10 + r13]
and r12d, 0xfc
ror eax, 0x1f
xor edx, dword [r9 + r12]
mov r12d, ebp
shr r12d, 8
and r12d, 0xfc
xor edx, dword [r8 + r12]
mov r12d, ebp
shr ebp, 0x18
shr r12d, 0x10
and ebp, 0xfc
and r12d, 0xfc
xor edx, dword [rcx + r12]
xor edx, dword [r15 + rbp]
mov r15, qword [rsp + 0x28]
mov ebp, edx
xor ebp, eax
and ebp, 0x55555555
xor eax, ebp
xor edx, ebp
mov ebp, eax
ror edx, 0x1f
shr ebp, 8
xor ebp, edx
and ebp, 0xff00ff
mov r13d, ebp
xor edx, ebp
shl r13d, 8
xor r13d, eax
mov eax, edx
shr eax, 2
xor eax, r13d
and eax, 0x33333333
lea r12d, [rax*4]
xor eax, r13d
xor r12d, edx
mov edx, eax
shr edx, 0x10
xor edx, r12d
movzx edx, dx
xor r12d, edx
mov ebp, edx
shl ebp, 0x10
mov edx, r12d
xor ebp, eax
shr edx, 4
xor edx, ebp
and edx, 0xf0f0f0f
mov eax, edx
xor edx, ebp
mov ebp, edx
shl eax, 4
mov byte [r15], dl
shr ebp, 8
xor eax, r12d
add qword [rsp + 0x30], 8
mov byte [r15 + 1], bpl
mov ebp, edx
shr edx, 0x18
mov byte [r15 + 3], dl
mov edx, eax
shr ebp, 0x10
shr edx, 8
mov byte [r15 + 4], al
mov byte [r15 + 5], dl
mov edx, eax
shr eax, 0x18
shr edx, 0x10
add qword [rsp + 0x28], 8
sub dword [rsp + 0x3c], 8
mov byte [r15 + 2], bpl
mov byte [r15 + 6], dl
mov byte [r15 + 7], al
jne 0x5efba0
add rsp, 0x48
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
lea rdx, [0x007b6360]
lea rcx, str.__length___DES_BLOCK_SIZE_
mov r8d, 0x10f
call fcn.0064b2d0
jmp 0x5efb66