Function at 0x180247a10
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r14
mov rbp, rsp
sub rsp, 0x80
xor ebx, ebx
mov dword [rcx + 0x10], r8d
lea rax, [0x18027a778]
mov edi, ebx
mov qword [rcx], rax
mov rsi, rcx
cmp byte [rdx + 1], 0x5e
mov eax, ebx
movabs r14, 0xaaaaaaaaaaaaaaab
sete dil
inc rdi
add rdi, rdx
cmp byte [rdx + 1], 0x5e
setne al
mov dword [rcx + 0x14], eax
mov dword [rbp + 0x30], 0xdd0baf6d
mov dword [rbp + 0x34], 0xac412c
mov qword [rbp - 0x60], rbx
mov rax, qword [rbp - 0x60]
mov rcx, qword [rbp - 0x60]
mov rax, qword [rbp - 0x60]
movzx r8d, byte [rbp + rax + 0x31]
mov rax, r14
mul rcx
shr rdx, 4
movzx eax, dl
add al, al
add dl, al
mov rax, qword [rbp - 0x60]
shl dl, 3
sub cl, dl
mov edx, 0x30332ce
sar edx, cl
xor dl, r8b
mov byte [rbp + rax + 0x31], dl
mov rax, qword [rbp - 0x60]
inc rax
mov qword [rbp - 0x60], rax
mov rax, qword [rbp - 0x60]
cmp rax, 6
jb 0x180247a70
mov r8d, 6
mov byte [rbp + 0x37], bl
lea rdx, [rbp + 0x31]
mov rcx, rdi
call fcn.180252470
test eax, eax
jne 0x180247ae0
lea rbx, [0x180250640]
jmp 0x18024810d
mov dword [rbp + 0x38], 0x23cb2e57
mov dword [rbp + 0x3c], 0x9035c1
mov qword [rbp - 0x60], rbx
mov rax, qword [rbp - 0x60]
nop word [rax + rax]
mov rcx, qword [rbp - 0x60]
mov rax, qword [rbp - 0x60]
movzx r8d, byte [rbp + rax + 0x39]
mov rax, r14
mul rcx
shr rdx, 4
movzx eax, dl
add al, al
add dl, al
mov rax, qword [rbp - 0x60]
shl dl, 3
sub cl, dl
mov edx, 0x2f54154f
sar edx, cl
xor dl, r8b
mov byte [rbp + rax + 0x39], dl
mov rax, qword [rbp - 0x60]
inc rax
mov qword [rbp - 0x60], rax
mov rax, qword [rbp - 0x60]
cmp rax, 6
jb 0x180247b00
mov r8d, 6
mov byte [rbp + 0x3f], bl
lea rdx, [rbp + 0x39]
mov rcx, rdi
call fcn.180252470
test eax, eax
jne 0x180247b70
lea rbx, [0x1802506f0]
jmp 0x18024810d
mov dword [rbp + 0x48], 0xcb109e55
mov dword [rbp + 0x4c], 0x8d03ad
mov qword [rbp - 0x60], rbx
mov rax, qword [rbp - 0x60]
nop word [rax + rax]
mov rcx, qword [rbp - 0x60]
mov rax, qword [rbp - 0x60]
movzx r8d, byte [rbp + rax + 0x49]
mov rax, r14
mul rcx
shr rdx, 4
movzx eax, dl
add al, al
add dl, al
mov rax, qword [rbp - 0x60]
shl dl, 3
sub cl, dl
mov edx, 0x47efb6fd
sar edx, cl
xor dl, r8b
mov byte [rbp + rax + 0x49], dl
mov rax, qword [rbp - 0x60]
inc rax
mov qword [rbp - 0x60], rax
mov rax, qword [rbp - 0x60]
cmp rax, 6
jb 0x180247b90
mov r8d, 6
mov byte [rbp + 0x4f], bl
lea rdx, [rbp + 0x49]
mov rcx, rdi
call fcn.180252470
test eax, eax
jne 0x180247c00
lea rbx, [0x1802507a0]
jmp 0x18024810d
mov dword [rbp - 0x58], 0x948fa8f4
mov dword [rbp - 0x54], 0x840890
mov qword [rbp - 0x60], rbx
mov rax, qword [rbp - 0x60]
nop word [rax + rax]
mov rcx, qword [rbp - 0x60]
mov rax, qword [rbp - 0x60]
movzx r8d, byte [rbp + rax - 0x57]
mov rax, r14
mul rcx
shr rdx, 4
movzx eax, dl
add al, al
add dl, al
mov rax, qword [rbp - 0x60]
shl dl, 3
sub cl, dl
mov edx, 0x9e4d7cc
sar edx, cl
xor dl, r8b
mov byte [rbp + rax - 0x57], dl
mov rax, qword [rbp - 0x60]
inc rax
mov qword [rbp - 0x60], rax
mov rax, qword [rbp - 0x60]
cmp rax, 6
jb 0x180247c20
mov r8d, 6
mov byte [rbp - 0x51], bl
lea rdx, [rbp - 0x57]
mov rcx, rdi
call fcn.180252470
test eax, eax
jne 0x180247c90
lea rbx, [0x180250850]
jmp 0x18024810d
mov dword [rbp - 0x50], 0x27ff7cd1
mov dword [rbp - 0x4c], 0xb27953
mov qword [rbp - 0x60], rbx
mov rax, qword [rbp - 0x60]
nop word [rax + rax]
mov rcx, qword [rbp - 0x60]
mov rax, qword [rbp - 0x60]
movzx r8d, byte [rbp + rax - 0x4f]
mov rax, r14
mul rcx
shr rdx, 4
movzx eax, dl
add al, al
add dl, al
mov rax, qword [rbp - 0x60]
shl dl, 3
sub cl, dl
mov edx, 0x593eb11b
sar edx, cl
xor dl, r8b
mov byte [rbp + rax - 0x4f], dl
mov rax, qword [rbp - 0x60]
inc rax
mov qword [rbp - 0x60], rax
mov rax, qword [rbp - 0x60]
cmp rax, 6
jb 0x180247cb0
mov r8d, 6
mov byte [rbp - 0x49], bl
lea rdx, [rbp - 0x4f]
mov rcx, rdi
call fcn.180252470
test eax, eax
jne 0x180247d20
lea rbx, [0x180250900]
jmp 0x18024810d
mov dword [rbp - 0x48], 0x1bb7dd10
mov dword [rbp - 0x44], 0x9729d3
mov qword [rbp - 0x60], rbx
mov rax, qword [rbp - 0x60]
nop word [rax + rax]
mov rcx, qword [rbp - 0x60]
mov rax, qword [rbp - 0x60]
movzx r8d, byte [rbp + rax - 0x47]
mov rax, r14
mul rcx
shr rdx, 4
movzx eax, dl
add al, al
add dl, al
mov rax, qword [rbp - 0x60]
shl dl, 3
sub cl, dl
mov edx, 0x11e695b1
sar edx, cl
xor dl, r8b
mov byte [rbp + rax - 0x47], dl
mov rax, qword [rbp - 0x60]
inc rax
mov qword [rbp - 0x60], rax
mov rax, qword [rbp - 0x60]
cmp rax, 6
jb 0x180247d40
mov r8d, 6
mov byte [rbp - 0x41], bl
lea rdx, [rbp - 0x47]
mov rcx, rdi
call fcn.180252470
test eax, eax
jne 0x180247db0
lea rbx, [fcn.1802509b0]
jmp 0x18024810d
mov dword [rbp - 0x40], 0x9890b481
mov dword [rbp - 0x3c], 0xa44816
mov qword [rbp - 0x60], rbx
mov rax, qword [rbp - 0x60]
nop word [rax + rax]
mov rcx, qword [rbp - 0x60]
mov rax, qword [rbp - 0x60]
movzx r8d, byte [rbp + rax - 0x3f]
mov rax, r14
mul rcx
shr rdx, 4
movzx eax, dl
add al, al
add dl, al
mov rax, qword [rbp - 0x60]
shl dl, 3
sub cl, dl
mov edx, 0x343d73c4
sar edx, cl
xor dl, r8b
mov byte [rbp + rax - 0x3f], dl
mov rax, qword [rbp - 0x60]
inc rax
mov qword [rbp - 0x60], rax
mov rax, qword [rbp - 0x60]
cmp rax, 6
jb 0x180247dd0
mov r8d, 6
mov byte [rbp - 0x39], bl
lea rdx, [rbp - 0x3f]
mov rcx, rdi
call fcn.180252470
test eax, eax
jne 0x180247e40
lea rbx, [0x180250a60]
jmp 0x18024810d
mov dword [rbp - 0x38], 0xea7c62a7
mov dword [rbp - 0x34], 0xaa5521
mov qword [rbp - 0x60], rbx
mov rax, qword [rbp - 0x60]
nop word [rax + rax]
mov rcx, qword [rbp - 0x60]
mov rax, qword [rbp - 0x60]
movzx r8d, byte [rbp + rax - 0x37]
mov rax, r14
mul rcx
shr rdx, 4
movzx eax, dl
add al, al
add dl, al
mov rax, qword [rbp - 0x60]
shl dl, 3
sub cl, dl
mov edx, 0x364c5212
sar edx, cl
xor dl, r8b
mov byte [rbp + rax - 0x37], dl
mov rax, qword [rbp - 0x60]
inc rax
mov qword [rbp - 0x60], rax
mov rax, qword [rbp - 0x60]
cmp rax, 6
jb 0x180247e60
mov r8d, 6
mov byte [rbp - 0x31], bl
lea rdx, [rbp - 0x37]
mov rcx, rdi
call fcn.180252470
test eax, eax
jne 0x180247ed0
lea rbx, [0x180250b10]
jmp 0x18024810d
mov dword [rbp - 0x30], 0x1599a152
mov dword [rbp - 0x2c], 0x74f859
mov qword [rbp - 0x60], rbx
mov rax, qword [rbp - 0x60]
nop word [rax + rax]
mov rcx, qword [rbp - 0x60]
mov rax, qword [rbp - 0x60]
movzx r8d, byte [rbp + rax - 0x2f]
mov rax, r14
mul rcx
shr rdx, 4
movzx eax, dl
add al, al
add dl, al
mov rax, qword [rbp - 0x60]
shl dl, 3
sub cl, dl
mov edx, 0x6abe49d2
sar edx, cl
xor dl, r8b
mov byte [rbp + rax - 0x2f], dl
mov rax, qword [rbp - 0x60]
inc rax
mov qword [rbp - 0x60], rax
mov rax, qword [rbp - 0x60]
cmp rax, 6
jb 0x180247ef0
mov r8d, 6
mov byte [rbp - 0x29], bl
lea rdx, [rbp - 0x2f]
mov rcx, rdi
call fcn.180252470
test eax, eax
jne 0x180247f60
lea rbx, [0x180250bc0]
jmp 0x18024810d
mov dword [rbp - 0x28], 0x4d0b82f1
mov dword [rbp - 0x24], 0x7dfd7b
mov qword [rbp - 0x60], rbx
mov rax, qword [rbp - 0x60]
nop word [rax + rax]
mov rcx, qword [rbp - 0x60]
mov rax, qword [rbp - 0x60]
movzx r8d, byte [rbp + rax - 0x27]
mov rax, r14
mul rcx
shr rdx, 4
movzx eax, dl
add al, al
add dl, al
mov rax, qword [rbp - 0x60]
shl dl, 3
sub cl, dl
mov edx, 0x267868f7
sar edx, cl
xor dl, r8b
mov byte [rbp + rax - 0x27], dl
mov rax, qword [rbp - 0x60]
inc rax
mov qword [rbp - 0x60], rax
mov rax, qword [rbp - 0x60]
cmp rax, 6
jb 0x180247f80
mov r8d, 6
mov byte [rbp - 0x21], bl
lea rdx, [rbp - 0x27]
mov rcx, rdi
call fcn.180252470
test eax, eax
jne 0x180247ff0
lea rbx, [fcn.180250c70]
jmp 0x18024810d
xor eax, eax
mov dword [rbp - 0x18], 0xd2139769
mov byte [rbp - 0x10], al
mov dword [rbp - 0x14], 0x51a3c73a
mov qword [rbp - 0x60], rbx
mov rax, qword [rbp - 0x60]
nop dword [rax + rax]
mov rcx, qword [rbp - 0x60]
mov rax, qword [rbp - 0x60]
movzx r8d, byte [rbp + rax - 0x17]
mov rax, r14
mul rcx
shr rdx, 4
movzx eax, dl
add al, al
add dl, al
mov rax, qword [rbp - 0x60]
shl dl, 3
sub cl, dl
mov edx, 0x6c63daef
sar edx, cl
xor dl, r8b
mov byte [rbp + rax - 0x17], dl
mov rax, qword [rbp - 0x60]
inc rax
mov qword [rbp - 0x60], rax
mov rax, qword [rbp - 0x60]
cmp rax, 7
jb 0x180248010
mov r8d, 7
mov byte [rbp - 0x10], bl
lea rdx, [rbp - 0x17]
mov rcx, rdi
call fcn.180252470
test eax, eax
jne 0x180248080
lea rbx, [0x180250d20]
jmp 0x18024810d
mov dword [rbp - 0x20], 0x704e267f
mov dword [rbp - 0x1c], 0x182fe6
mov qword [rbp - 0x60], rbx
mov rax, qword [rbp - 0x60]
nop word [rax + rax]
mov rcx, qword [rbp - 0x60]
mov rax, qword [rbp - 0x60]
movzx r9d, byte [rbp + rax - 0x1f]
mov rax, r14
mul rcx
shr rdx, 4
movzx eax, dl
add al, al
add dl, al
mov rax, qword [rbp - 0x60]
shl dl, 3
sub cl, dl
mov edx, 0xc456444
sar edx, cl
xor dl, r9b
mov byte [rbp + rax - 0x1f], dl
mov rax, qword [rbp - 0x60]
inc rax
mov qword [rbp - 0x60], rax
mov rax, qword [rbp - 0x60]
cmp rax, 6
jb 0x1802480a0
mov r8d, 6
mov byte [rbp - 0x19], bl
lea rdx, [rbp - 0x1f]
mov rcx, rdi
call fcn.180252470
test eax, eax
lea rcx, [0x1800355e0]
cmove rbx, rcx
mov qword [rsi + 8], rbx
mov rax, rsi
add rsp, 0x80
pop r14
pop rdi
pop rsi
pop rbx
pop rbp
ret