Function at 0x180009710
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x10]
sub rsp, 0x110
mov rax, qword [0x180074020]
xor rax, rsp
mov qword [rbp], rax
mov r12, rdx
mov qword [rsp + 0x70], rdx
mov r15, rcx
mov qword [rsp + 0x68], rcx
mov qword [rbp - 0x60], rcx
mov qword [rbp - 0x58], rdx
xor r13d, r13d
mov edi, r13d
mov dword [rsp + 0x40], r13d
cmp qword [rcx + 0x18], 8
jb 0x180009767
mov rcx, qword [rcx]
mov qword [rsp + 0x30], r13
mov dword [rsp + 0x28], 0x80
mov dword [rsp + 0x20], 3
xor r9d, r9d
mov edx, 0x80000000
lea r8d, [r9 + 1]
call qword [0x180076888]
mov r14, rax
mov qword [rsp + 0x60], rax
cmp rax, 0xffffffffffffffff
je 0x180009b58
mov dword [rbp - 0x50], r13d
mov qword [rbp - 0x30], r13
mov qword [rbp - 0x28], 7
mov word [rbp - 0x40], r13w
mov r8d, 0x42
lea rdx, str.c7c982f08c0bc68dd02dd07d75816a88e27bbd0baa9078c23c3fdb86c362678d20
lea rcx, [rbp - 0x40]
call fcn.1800081a0
nop
lea rdx, [rbp - 0x80]
lea rcx, [rbp - 0x40]
call fcn.18001b330
nop
lea rdx, [rbp - 0x20]
mov rcx, rax
call fcn.18001b580
nop
mov rdx, qword [rbp - 0x68]
cmp rdx, 8
jb 0x180009827
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180009822
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180009c2c
call fcn.1800295b0
mov qword [rbp - 0x70], r13
mov qword [rbp - 0x68], 7
mov word [rbp - 0x80], r13w
mov rdx, qword [rbp - 0x28]
cmp rdx, 8
jb 0x180009878
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180009873
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180009c32
call fcn.1800295b0
movsxd rdi, dword [rbp - 0x10]
lea eax, [rdi + 1]
movsxd rbx, eax
mov rcx, rbx
call fcn.1800295b8
mov rsi, rax
mov qword [rsp + 0x78], rax
mov r8, rbx
xor edx, edx
mov rcx, rax
call fcn.18002b450
mov qword [rsp + 0x20], r13
lea r9, [rbp - 0x50]
mov r8d, edi
mov rdx, rsi
mov rcx, r14
call qword [0x180076840]
lea rdx, [rbp - 0x20]
cmp qword [rbp - 8], 0x10
cmovae rdx, qword [rbp - 0x20]
mov r8, rdi
mov rcx, rsi
call fcn.18002b5f0
test eax, eax
jne 0x180009b06
mov rcx, r12
cmp qword [r12 + 0x18], 8
jb 0x1800098e7
mov rcx, qword [r12]
mov qword [rsp + 0x30], r13
mov dword [rsp + 0x28], 0x80
mov dword [rsp + 0x20], 2
xor r9d, r9d
xor r8d, r8d
mov edx, 0x40000000
call qword [0x180076888]
mov qword [rsp + 0x58], rax
cmp rax, 0xffffffffffffffff
je 0x180009b06
mov ecx, 0x1000
call fcn.1800295b8
mov rsi, rax
mov ecx, 0x1000
call fcn.1800295b8
mov qword [rsp + 0x50], rax
mov ecx, 0x10
call fcn.1800295b8
mov rdi, rax
mov qword [rsp + 0x48], rax
mov dword [rbp - 0x48], r13d
xorps xmm0, xmm0
movups xmmword [rbp - 0x40], xmm0
lea rcx, [rbp - 0x40]
call fcn.180008320
nop
mov ebx, 0xffffffff
mov dword [rbp - 0x38], ebx
mov dword [rbp - 0x4c], r13d
mov qword [rsp + 0x20], r13
lea r9, [rbp - 0x50]
mov r8d, 4
lea rdx, [rbp - 0x4c]
mov rcx, r14
call qword [0x180076840]
mov qword [rsp + 0x20], r13
lea r9, [rbp - 0x50]
mov r8d, 0x10
mov rdx, rdi
mov rcx, r14
call qword [0x180076840]
mov r14, qword [rbp - 0x40]
test r14, r14
je 0x180009c38
mov rdx, r13
movsxd r8, dword [rbp - 0x50]
test r8, r8
jle 0x1800099e1
nop dword [rax + rax]
movzx ecx, byte [rbp - 0x38]
movzx eax, byte [rdx + rdi]
xor rcx, rax
mov eax, ebx
shr eax, 8
mov ebx, dword [r14 + rcx*4]
xor ebx, eax
mov dword [rbp - 0x38], ebx
inc rdx
cmp rdx, r8
jl 0x1800099c0
mov edi, r13d
mov r15, qword [rsp + 0x50]
mov r12, qword [rsp + 0x60]
nop
mov qword [rsp + 0x20], 0
lea r9, [rbp - 0x50]
mov r8d, 0x1000
mov rdx, rsi
mov rcx, r12
call qword [0x180076840]
xor edx, edx
movsxd r8, dword [rbp - 0x50]
test r8d, r8d
jle 0x180009a41
nop word [rax + rax]
movzx ecx, byte [rbp - 0x38]
movzx eax, byte [rdx + rsi]
xor rcx, rax
mov eax, ebx
shr eax, 8
mov ebx, dword [r14 + rcx*4]
xor ebx, eax
mov dword [rbp - 0x38], ebx
inc rdx
cmp rdx, r8
jl 0x180009a20
xor r9d, r9d
test r8d, r8d
je 0x180009a89
mov r14, qword [rsp + 0x48]
nop
mov edx, edi
lea r8, [r13 - 0x10]
cmp edi, 0x10
cmovb r8, r13
movzx eax, byte [r8 + r14]
xor al, byte [r9 + rsi]
mov byte [r9 + r15], al
add edi, 0xfffffff0
cmp edx, 0x10
cmovb edi, edx
inc edi
lea r13, [r8 + 1]
inc r9d
mov r8d, dword [rbp - 0x50]
cmp r9d, r8d
jb 0x180009a50
mov r14, qword [rbp - 0x40]
mov qword [rsp + 0x20], 0
lea r9, [rbp - 0x48]
mov rdx, r15
mov rcx, qword [rsp + 0x58]
call qword [0x180076880]
cmp dword [rbp - 0x50], 0
ja 0x1800099f0
not ebx
mov edi, dword [rsp + 0x40]
cmp dword [rbp - 0x4c], ebx
mov eax, 1
cmove edi, eax
mov rcx, qword [rsp + 0x48]
call fcn.1800295b0
mov rcx, rsi
call fcn.1800295b0
mov rcx, r15
call fcn.1800295b0
mov rcx, qword [rsp + 0x58]
call qword [0x180076878]
nop
mov rcx, r14
call fcn.1800295b0
mov r15, qword [rsp + 0x68]
mov r12, qword [rsp + 0x70]
mov r14, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x78]
xor r13d, r13d
jmp 0x180009b0a
mov edi, dword [rsp + 0x40]
mov rcx, rsi
call fcn.1800295b0
mov rcx, r14
call qword [0x180076878]
nop
mov rdx, qword [rbp - 8]
cmp rdx, 0x10
jb 0x180009b58
inc rdx
mov rcx, qword [rbp - 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180009b52
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180009c4f
call fcn.1800295b0
nop
mov rdx, qword [r15 + 0x18]
cmp rdx, 8
jb 0x180009b97
mov rcx, qword [r15]
lea rdx, [rdx*2 + 2]
cmp rdx, 0x1000
jb 0x180009b92
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x180009c20
mov rcx, r8
call fcn.1800295b0
mov qword [r15 + 0x10], r13
mov qword [r15 + 0x18], 7
mov word [r15], r13w
mov rdx, qword [r12 + 0x18]
cmp rdx, 8
jb 0x180009be4
lea rdx, [rdx*2 + 2]
mov rcx, qword [r12]
cmp rdx, 0x1000
jb 0x180009bdf
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x180009c26
mov rcx, r8
call fcn.1800295b0
mov qword [r12 + 0x10], r13
mov qword [r12 + 0x18], 7
mov word [r12], r13w
mov eax, edi
mov rcx, qword [rbp]
xor rcx, rsp
call fcn.1800292f0
mov rbx, qword [rsp + 0x160]
add rsp, 0x110
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.18002e0ec
nop
call fcn.18002e0ec
nop
call fcn.18002e0ec
nop
call fcn.18002e0ec
nop
mov dword [rsp + 0x40], r13d
lea rdx, [0x180072588]
lea rcx, [rsp + 0x40]
call fcn.18002aee4
nop
call fcn.18002e0ec
int3