Function at 0x18035ec40
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
mov rbp, rsp
sub rsp, 0x80
xor ebx, ebx
mov dword [rcx + 0x10], r8d
lea rax, [0x18038eb18]
mov edi, ebx
mov qword [rcx], rax
mov rsi, rcx
cmp byte [rdx + 1], 0x5e
mov eax, ebx
sete dil
inc rdi
add rdi, rdx
cmp byte [rdx + 1], 0x5e
setne al
mov dword [rcx + 0x14], eax
mov dword [rbp + 0x20], 0x444549b8
mov dword [rbp + 0x24], 0x17415e
mov qword [rbp - 0x60], rbx
mov rax, qword [rbp - 0x60]
nop word [rax + rax]
mov rcx, qword [rbp - 0x60]
mov rax, qword [rbp - 0x60]
add cl, 0x28
xor cl, byte [rbp + rax + 0x21]
mov rax, qword [rbp - 0x60]
mov byte [rbp + rax + 0x21], cl
mov rax, qword [rbp - 0x60]
inc rax
mov qword [rbp - 0x60], rax
mov rax, qword [rbp - 0x60]
cmp rax, 6
jb 0x18035eca0
mov r8d, 6
mov byte [rbp + 0x27], bl
lea rdx, [rbp + 0x21]
mov rcx, rdi
call fcn.180366ee0
test eax, eax
jne 0x18035ecf1
lea rbx, [0x1803658b8]
jmp 0x18035f1be
mov dword [rbp + 0x28], 0x40434f01
mov dword [rbp + 0x2c], 0x95359
mov qword [rbp - 0x60], rbx
mov rax, qword [rbp - 0x60]
nop word [rax + rax]
mov rcx, qword [rbp - 0x60]
mov rax, qword [rbp - 0x60]
add cl, 0x2e
xor cl, byte [rbp + rax + 0x29]
mov rax, qword [rbp - 0x60]
mov byte [rbp + rax + 0x29], cl
mov rax, qword [rbp - 0x60]
inc rax
mov qword [rbp - 0x60], rax
mov rax, qword [rbp - 0x60]
cmp rax, 6
jb 0x18035ed10
mov r8d, 6
mov byte [rbp + 0x2f], bl
lea rdx, [rbp + 0x29]
mov rcx, rdi
call fcn.180366ee0
test eax, eax
jne 0x18035ed61
lea rbx, [0x180365934]
jmp 0x18035f1be
mov dword [rbp + 0x38], 0x3f242abb
mov dword [rbp + 0x3c], 0x74213e
mov qword [rbp - 0x60], rbx
mov rax, qword [rbp - 0x60]
nop word [rax + rax]
mov rcx, qword [rbp - 0x60]
mov rax, qword [rbp - 0x60]
add cl, 0x49
xor cl, byte [rbp + rax + 0x39]
mov rax, qword [rbp - 0x60]
mov byte [rbp + rax + 0x39], cl
mov rax, qword [rbp - 0x60]
inc rax
mov qword [rbp - 0x60], rax
mov rax, qword [rbp - 0x60]
cmp rax, 6
jb 0x18035ed80
mov r8d, 6
mov byte [rbp + 0x3f], bl
lea rdx, [rbp + 0x39]
mov rcx, rdi
call fcn.180366ee0
test eax, eax
jne 0x18035edd1
lea rbx, [0x1803659b0]
jmp 0x18035f1be
mov dword [rbp - 0x58], 0xa1aca087
mov dword [rbp - 0x54], 0xf3bcae
mov qword [rbp - 0x60], rbx
mov rax, qword [rbp - 0x60]
nop word [rax + rax]
mov rcx, qword [rbp - 0x60]
mov rax, qword [rbp - 0x60]
sub cl, 0x3c
xor cl, byte [rbp + rax - 0x57]
mov rax, qword [rbp - 0x60]
mov byte [rbp + rax - 0x57], cl
mov rax, qword [rbp - 0x60]
inc rax
mov qword [rbp - 0x60], rax
mov rax, qword [rbp - 0x60]
cmp rax, 6
jb 0x18035edf0
mov r8d, 6
mov byte [rbp - 0x51], bl
lea rdx, [rbp - 0x57]
mov rcx, rdi
call fcn.180366ee0
test eax, eax
jne 0x18035ee41
lea rbx, [0x180365a24]
jmp 0x18035f1be
mov dword [rbp - 0x50], 0x29352174
mov dword [rbp - 0x4c], 0x712239
mov qword [rbp - 0x60], rbx
mov rax, qword [rbp - 0x60]
nop word [rax + rax]
mov rcx, qword [rbp - 0x60]
mov rax, qword [rbp - 0x60]
add cl, 0x46
xor cl, byte [rbp + rax - 0x4f]
mov rax, qword [rbp - 0x60]
mov byte [rbp + rax - 0x4f], cl
mov rax, qword [rbp - 0x60]
inc rax
mov qword [rbp - 0x60], rax
mov rax, qword [rbp - 0x60]
cmp rax, 6
jb 0x18035ee60
mov r8d, 6
mov byte [rbp - 0x49], bl
lea rdx, [rbp - 0x4f]
mov rcx, rdi
call fcn.180366ee0
test eax, eax
jne 0x18035eeb1
lea rbx, [0x180365a98]
jmp 0x18035f1be
mov dword [rbp - 0x48], 0xf5eeec67
mov dword [rbp - 0x44], 0xbff6e6
mov qword [rbp - 0x60], rbx
mov rax, qword [rbp - 0x60]
nop word [rax + rax]
mov rcx, qword [rbp - 0x60]
mov rax, qword [rbp - 0x60]
add cl, 0x80
xor cl, byte [rbp + rax - 0x47]
mov rax, qword [rbp - 0x60]
mov byte [rbp + rax - 0x47], cl
mov rax, qword [rbp - 0x60]
inc rax
mov qword [rbp - 0x60], rax
mov rax, qword [rbp - 0x60]
cmp rax, 6
jb 0x18035eed0
mov r8d, 6
mov byte [rbp - 0x41], bl
lea rdx, [rbp - 0x47]
mov rcx, rdi
call fcn.180366ee0
test eax, eax
jne 0x18035ef21
lea rbx, [fcn.180365b14]
jmp 0x18035f1be
mov dword [rbp - 0x40], 0x4258592b
mov dword [rbp - 0x3c], 0x145942
mov qword [rbp - 0x60], rbx
mov rax, qword [rbp - 0x60]
nop word [rax + rax]
mov rcx, qword [rbp - 0x60]
mov rax, qword [rbp - 0x60]
add cl, 0x29
xor cl, byte [rbp + rax - 0x3f]
mov rax, qword [rbp - 0x60]
mov byte [rbp + rax - 0x3f], cl
mov rax, qword [rbp - 0x60]
inc rax
mov qword [rbp - 0x60], rax
mov rax, qword [rbp - 0x60]
cmp rax, 6
jb 0x18035ef40
mov r8d, 6
mov byte [rbp - 0x39], bl
lea rdx, [rbp - 0x3f]
mov rcx, rdi
call fcn.180366ee0
test eax, eax
jne 0x18035ef91
lea rbx, [0x180365b88]
jmp 0x18035f1be
mov dword [rbp - 0x17], 0x594345f9
mov dword [rbp - 0x13], 0x4d5b
mov qword [rbp - 0x60], rbx
mov rax, qword [rbp - 0x60]
nop word [rax + rax]
mov rcx, qword [rbp - 0x60]
mov rax, qword [rbp - 0x60]
add cl, 0x35
xor cl, byte [rbp + rax - 0x16]
mov rax, qword [rbp - 0x60]
mov byte [rbp + rax - 0x16], cl
mov rax, qword [rbp - 0x60]
inc rax
mov qword [rbp - 0x60], rax
mov rax, qword [rbp - 0x60]
cmp rax, 6
jb 0x18035efb0
mov r8d, 6
mov byte [rbp - 0x10], bl
lea rdx, [rbp - 0x16]
mov rcx, rdi
call fcn.180366ee0
test eax, eax
jne 0x18035f001
lea rbx, [0x180365c04]
jmp 0x18035f1be
mov dword [rbp - 0x38], 0x54444029
mov dword [rbp - 0x34], 0x25255
mov qword [rbp - 0x60], rbx
mov rax, qword [rbp - 0x60]
nop word [rax + rax]
mov rcx, qword [rbp - 0x60]
mov rax, qword [rbp - 0x60]
add cl, 0x33
xor cl, byte [rbp + rax - 0x37]
mov rax, qword [rbp - 0x60]
mov byte [rbp + rax - 0x37], cl
mov rax, qword [rbp - 0x60]
inc rax
mov qword [rbp - 0x60], rax
mov rax, qword [rbp - 0x60]
cmp rax, 6
jb 0x18035f020
mov r8d, 6
mov byte [rbp - 0x31], bl
lea rdx, [rbp - 0x37]
mov rcx, rdi
call fcn.180366ee0
test eax, eax
jne 0x18035f071
lea rbx, [0x180365c78]
jmp 0x18035f1be
mov dword [rbp - 0x30], 0x29282286
mov dword [rbp - 0x2c], 0x66293f
mov qword [rbp - 0x60], rbx
mov rax, qword [rbp - 0x60]
nop word [rax + rax]
mov rcx, qword [rbp - 0x60]
mov rax, qword [rbp - 0x60]
add cl, 0x57
xor cl, byte [rbp + rax - 0x2f]
mov rax, qword [rbp - 0x60]
mov byte [rbp + rax - 0x2f], cl
mov rax, qword [rbp - 0x60]
inc rax
mov qword [rbp - 0x60], rax
mov rax, qword [rbp - 0x60]
cmp rax, 6
jb 0x18035f090
mov r8d, 6
mov byte [rbp - 0x29], bl
lea rdx, [rbp - 0x2f]
mov rcx, rdi
call fcn.180366ee0
test eax, eax
jne 0x18035f0e1
lea rbx, [fcn.180365cec]
jmp 0x18035f1be
xor eax, eax
mov dword [rbp - 0x20], 0xe2eef131
mov byte [rbp - 0x18], al
mov dword [rbp - 0x1c], 0xb5fae4eb
mov qword [rbp - 0x60], rbx
mov rax, qword [rbp - 0x60]
nop dword [rax]
mov rcx, qword [rbp - 0x60]
mov rax, qword [rbp - 0x60]
sub cl, 0x77
xor cl, byte [rbp + rax - 0x1f]
mov rax, qword [rbp - 0x60]
mov byte [rbp + rax - 0x1f], cl
mov rax, qword [rbp - 0x60]
inc rax
mov qword [rbp - 0x60], rax
mov rax, qword [rbp - 0x60]
cmp rax, 7
jb 0x18035f100
mov r8d, 7
mov byte [rbp - 0x18], bl
lea rdx, [rbp - 0x1f]
mov rcx, rdi
call fcn.180366ee0
test eax, eax
jne 0x18035f14e
lea rbx, [0x180365d60]
jmp 0x18035f1be
mov dword [rbp - 0x28], 0xc2cec321
mov dword [rbp - 0x24], 0x9cceca
mov qword [rbp - 0x60], rbx
mov rax, qword [rbp - 0x60]
nop dword [rax]
nop dword [rax + rax]
mov rdx, qword [rbp - 0x60]
mov rax, qword [rbp - 0x60]
sub dl, 0x5f
xor dl, byte [rbp + rax - 0x27]
mov rax, qword [rbp - 0x60]
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 0x18035f170
mov r8d, 6
mov byte [rbp - 0x21], bl
lea rdx, [rbp - 0x27]
mov rcx, rdi
call fcn.180366ee0
test eax, eax
lea rcx, [0x180039340]
cmove rbx, rcx
mov qword [rsi + 8], rbx
mov rax, rsi
mov rbx, qword [rsp + 0xb0]
add rsp, 0x80
pop rdi
pop rsi
pop rbp
ret