Function at 0x18002f840
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
push rbp
lea rbp, [rax - 0x5f]
sub rsp, 0xc0
cmp byte [0x1800e1984], 0
jne 0x18002fd2e
mov qword [rax + 8], rbx
mov rbx, qword [0x1800e15b8]
mov qword [rax + 0x18], rsi
mov rsi, qword [0x1800e15c0]
mov qword [rax - 0x10], r12
movabs r12, 0x7d4787a632d3a6d7
mov qword [rax - 0x18], r13
movabs r13, 0xa654d5b76b435db0
mov qword [rax + 0x20], rdi
mov qword [rax - 0x20], r14
mov qword [rax - 0x28], r15
cmp rbx, rsi
je 0x18002fb49
mov r8, qword [0x1800df378]
lea r10, [0x1800bbad0]
movabs r14, 0x7ffffffdfffe
xor r15d, r15d
nop
mov rdx, qword [rbx]
cmp rdx, r8
jbe 0x18002f8d7
mov rcx, qword [0x1800df380]
add rcx, r8
cmp rdx, rcx
jb 0x18002f8e7
lea rax, [rdx - 0x10000]
cmp rax, r14
ja 0x18002fb3c
mov r9, qword [rbx + 0x30]
cmp r9, r8
jbe 0x18002f8ff
mov rcx, qword [0x1800df380]
add rcx, r8
cmp r9, rcx
jb 0x18002f90f
lea rax, [r9 - 0x10000]
cmp rax, r14
ja 0x18002fb3c
mov eax, dword [rbx + 0x20]
test eax, eax
jne 0x18002f922
cmp byte [0x1800bc044], r15b
jmp 0x18002f9bd
cmp eax, 8
jne 0x18002f933
cmp byte [0x1800e1986], r15b
jmp 0x18002f9bd
cmp eax, 4
jne 0x18002f941
cmp byte [0x1800e1987], r15b
jmp 0x18002f9bd
cmp eax, 0xc
jne 0x18002f94f
cmp byte [0x1800e1988], r15b
jmp 0x18002f9bd
cmp eax, 7
jne 0x18002f95d
cmp byte [0x1800e1989], r15b
jmp 0x18002f9bd
cmp eax, 2
jne 0x18002f96b
cmp byte [0x1800e198a], r15b
jmp 0x18002f9bd
cmp eax, 6
jne 0x18002f979
cmp byte [0x1800e198b], r15b
jmp 0x18002f9bd
cmp eax, 0xa
jne 0x18002f987
cmp byte [0x1800e198c], r15b
jmp 0x18002f9bd
cmp eax, 3
jne 0x18002f995
cmp byte [0x1800e198d], r15b
jmp 0x18002f9bd
cmp eax, 5
jne 0x18002f9a3
cmp byte [0x1800e198e], r15b
jmp 0x18002f9bd
cmp eax, 9
jne 0x18002f9b1
cmp byte [0x1800e198f], r15b
jmp 0x18002f9bd
cmp eax, 0xd
jne 0x18002f9c3
cmp byte [0x1800e1990], r15b
je 0x18002fb3c
mov edi, dword [rbx + 0x24]
lea rdx, [rbp - 0x19]
mov rcx, r9
cmp edi, 1
jle 0x18002fab4
call fcn.18000dbd0
mov r8, rax
cmp qword [rax + 0x18], 0xf
jbe 0x18002f9e8
mov r8, qword [rax]
movabs rax, 0x543fe3831af3d5f2
lea rdx, [rbp - 0x49]
mov qword [rbp + 0x6f], rax
lea rcx, [rbp + 7]
mov rax, qword [rbp + 0x6f]
mov r9d, edi
mov qword [rbp - 0x49], rax
mov qword [rbp + 0x6f], r13
mov rax, qword [rbp + 0x6f]
mov qword [rbp - 0x41], rax
mov qword [rbp + 0x6f], r12
mov rax, qword [rbp + 0x6f]
mov qword [rbp - 0x39], rax
mov qword [rbp + 0x6f], r13
mov rax, qword [rbp + 0x6f]
movdqa xmm0, xmmword [rbp - 0x49]
mov qword [rbp - 0x31], rax
xorps xmm0, xmmword [rbp - 0x39]
movdqa xmmword [rbp - 0x49], xmm0
call fcn.180026700
mov rdx, qword [rbp - 1]
cmp rdx, 0xf
jbe 0x18002fa7b
mov rcx, qword [rbp - 0x19]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18002fa76
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18002fd3d
call main
cmp dword [rbx + 0x20], r15d
lea rax, [0x1800bbad0]
lea r8, [0x1800bbabc]
mov qword [rbp - 9], r15
cmovne r8, rax
mov qword [rbp - 1], 0xf
lea r9, [rbx + 0x18]
mov byte [rbp - 0x19], r15b
lea rdx, [rbx + 0xc]
lea rcx, [rbp + 7]
call fcn.180029570
jmp 0x18002fb2e
test eax, eax
lea rdi, [0x1800bbabc]
cmovne rdi, r10
call fcn.18000dbd0
cmp qword [rax + 0x18], 0xf
jbe 0x18002fad0
mov rax, qword [rax]
lea r9, [rbx + 0x18]
mov r8, rdi
lea rdx, [rbx + 0xc]
mov rcx, rax
call fcn.180029570
mov rdx, qword [rbp - 1]
cmp rdx, 0xf
jbe 0x18002fb1e
mov rcx, qword [rbp - 0x19]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18002fb19
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18002fd37
call main
mov qword [rbp - 9], r15
mov qword [rbp - 1], 0xf
mov byte [rbp - 0x19], r15b
mov r8, qword [0x1800df378]
lea r10, [0x1800bbad0]
add rbx, 0x38
cmp rbx, rsi
jne 0x18002f8c0
mov rbx, qword [0x1800e15d0]
mov rdi, qword [0x1800e15d8]
cmp rbx, rdi
je 0x18002fbcf
movabs rsi, 0x1624e6d659b0c795
nop word [rax + rax]
mov qword [rbp + 0x6f], rsi
lea r9, [rbx + 0x18]
mov rax, qword [rbp + 0x6f]
lea rdx, [rbx + 0xc]
mov qword [rbp - 0x49], rax
lea r8, [0x1800bbae8]
mov qword [rbp + 0x6f], r13
lea rcx, [rbp - 0x49]
mov rax, qword [rbp + 0x6f]
mov qword [rbp - 0x41], rax
mov qword [rbp + 0x6f], r12
mov rax, qword [rbp + 0x6f]
mov qword [rbp - 0x39], rax
mov qword [rbp + 0x6f], r13
mov rax, qword [rbp + 0x6f]
movdqa xmm0, xmmword [rbp - 0x49]
mov qword [rbp - 0x31], rax
xorps xmm0, xmmword [rbp - 0x39]
movdqa xmmword [rbp - 0x49], xmm0
call fcn.180029570
add rbx, 0x20
cmp rbx, rdi
jne 0x18002fb70
mov rbx, qword [0x1800e15e8]
mov rsi, qword [0x1800e15f0]
cmp rbx, rsi
je 0x18002fcf6
lea rdi, [rbx + 0xc]
movabs r15, 0x5867e2d542a1c994
movabs r12, 0xa654d5b76b435dc3
movabs r14, 0x7d47e2d542a1c994
nop dword [rax + rax]
cmp byte [0x1800bbb14], 0
je 0x18002fc86
mov rdx, qword [rbx]
lea rcx, [0x1800e14f0]
call fcn.180009f80
mov qword [rbp + 0x6f], r15
lea rdx, [rbp - 0x49]
mov rcx, qword [rbp + 0x6f]
mov r8, rax
mov qword [rbp - 0x49], rcx
movabs rax, 0x7d4787a632d3a6d7
mov qword [rbp + 0x6f], r12
mov rcx, qword [rbp + 0x6f]
mov qword [rbp - 0x41], rcx
mov qword [rbp + 0x6f], rax
mov rcx, qword [rbp + 0x6f]
mov qword [rbp - 0x29], rcx
lea rcx, [rbp + 7]
mov qword [rbp + 0x6f], r13
mov rax, qword [rbp + 0x6f]
movdqa xmm0, xmmword [rbp - 0x49]
mov qword [rbp - 0x21], rax
xorps xmm0, xmmword [rbp - 0x29]
movdqa xmmword [rbp - 0x49], xmm0
call fcn.180026700
lea rcx, [rbp + 7]
jmp 0x18002fcd2
mov qword [rbp + 0x6f], r14
lea rcx, [rbp - 0x39]
mov rax, qword [rbp + 0x6f]
mov qword [rbp - 0x39], rax
mov qword [rbp + 0x6f], r13
mov rax, qword [rbp + 0x6f]
mov qword [rbp - 0x31], rax
movabs rax, 0x7d4787a632d3a6d7
mov qword [rbp + 0x6f], rax
mov rax, qword [rbp + 0x6f]
mov qword [rbp - 0x19], rax
mov qword [rbp + 0x6f], r13
mov rax, qword [rbp + 0x6f]
movdqa xmm0, xmmword [rbp - 0x39]
mov qword [rbp - 0x11], rax
xorps xmm0, xmmword [rbp - 0x19]
movdqa xmmword [rbp - 0x39], xmm0
lea r9, [rdi + 0xc]
mov rdx, rdi
lea r8, [0x1800bbb00]
call fcn.180029570
add rbx, 0x20
add rdi, 0x20
cmp rbx, rsi
jne 0x18002fc10
mov r14, qword [rsp + 0xa8]
mov rdi, qword [rsp + 0xe8]
mov r15, qword [rsp + 0xa0]
mov r12, qword [rsp + 0xb8]
mov rsi, qword [rsp + 0xe0]
mov rbx, qword [rsp + 0xd0]
mov r13, qword [rsp + 0xb0]
add rsp, 0xc0
pop rbp
ret
call fcn.18000d6f0
int3
call fcn.18000d6f0
int3