Function at 0x1802c8f20
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x30
mov rdi, r9
mov rbx, r8
mov r14, rdx
mov rsi, rcx
mov r15, rsi
add r15, 8
cmp qword [r15], 0
je 0x1802c8f55
lea rcx, [0x18048a7c8]
call fcn.180407090
ud2
mov qword [r15], 0xffffffffffffffff
add rsi, 0x10
mov rcx, rsi
call fcn.1802c2580
mov qword [rsi], r14
mov rax, qword [r15]
add rax, 1
mov qword [r15], rax
mov r14, qword [rbx]
mov eax, dword [0x180528238]
add eax, dword [0x18052823c]
xor eax, 0x86b3d456
mov ecx, 0x1ec5c4e0
xor edx, edx
div ecx
and eax, 0xb5ef7545
cmp eax, 0x4b2bc806
je 0x1802c9243
jmp 0x1802c8fa4
mov ebp, dword [0x180528240]
imul ebp, dword [0x180528244]
or ebp, 0x7f70c9af
xor ebp, 0xfdf0c964
and ebp, 0xbafd404
call fcn.180408a50
mov rbx, rax
mov r12, rbx
add r12, 0x50
movzx eax, byte [rbx + 0x50]
cmp ebp, 0xeccccd69
ja 0x1802c8fa4
mov bpl, 2
test rax, rax
je 0x1802c8ff5
jmp 0x1802c8fe8
sub rax, 1
je 0x1802c9062
jmp 0x1802c8ff0
jmp 0x1802c90ce
mov eax, dword [0x180528248]
and eax, dword [0x18052824c]
imul eax, eax, 0x1acc9553
mov ecx, 0xff926bee
xor edx, edx
div ecx
and eax, 0xba394408
cmp eax, 0xeb21634e
ja 0x1802c9259
mov ebp, dword [0x180528250]
xor ebp, dword [0x180528254]
xor ebp, 0x8e0eae3a
xor ebp, 0x4789819f
xor ebp, 0x84549cca
lea rdx, [0x18029e120]
mov rcx, rbx
call fcn.180428e50
cmp ebp, 0x99f78fd2
je 0x1802c9259
jmp 0x1802c905b
mov byte [r12], 1
jmp 0x1802c9062
mov rax, rbx
add rax, 0x4c
mov bpl, byte [rax]
add rbx, 0x4d
mov ecx, dword [0x180528258]
or ecx, dword [0x18052825c]
imul ecx, ecx, 0x77b497fd
imul ecx, ecx, 0x7b979b49
imul ecx, ecx, 0x63c8400c
cmp ecx, 0x3a7d70b2
jb 0x1802c9279
mov ecx, dword [0x180528260]
sub ecx, dword [0x180528264]
and ecx, 0x60c85e06
and ecx, 0xdff5f574
imul edx, ecx, 0x6255b5c8
mov cl, byte [rbx]
mov byte [rax], 1
mov byte [rbx], 0x80
cmp edx, 0x452d4b2c
je 0x1802c9279
jmp 0x1802c90ce
mov byte [rsp + 0x2e], bpl
mov byte [rsp + 0x2f], cl
mov rcx, qword [r14]
mov rdx, rdi
call fcn.18024afb0
mov bl, al
cmp bpl, 2
je 0x1802c90f6
lea rcx, [rsp + 0x2e]
call fcn.18040d540
jmp 0x1802c90f6
mov rax, qword [r15]
mov ecx, dword [0x180528268]
xor ecx, dword [0x18052826c]
xor ecx, 0x90ec39c8
or ecx, 0xe10081e6
xor ecx, 0x3ba303a6
cmp ecx, 0xb3a9e728
jbe 0x1802c928c
mov edx, dword [0x180528270]
add edx, dword [0x180528274]
xor edx, 0xb9678754
or edx, 0xdd6d8d41
and edx, 0xfc535b85
cmp rax, 0
sete cl
cmp edx, 0x4865ff21
jbe 0x1802c928c
test cl, 1
jne 0x1802c9169
jmp 0x1802c915b
lea rcx, [0x18048a7e0]
call fcn.180407090
ud2
mov qword [r15], 0xffffffffffffffff
mov rcx, qword [rsi]
mov qword [rsi], 0
cmp rcx, 0
jne 0x1802c91d0
ud2
mov qword [r15], 0
mov eax, dword [0x180528288]
or eax, dword [0x18052828c]
or eax, 0x34ce19a9
add eax, 0xdc386da4
sub eax, 0xad40faab
cmp eax, 0x41632926
jb 0x1802c92ae
jmp 0x1802c91ff
mov eax, dword [0x180528290]
mov r8d, dword [0x180528294]
xor edx, edx
div r8d
add eax, 0x5dcdbbf6
mov edx, 0x8d2967dd
imul rax, rdx
shr rax, 0x3d
and eax, 3
cmp eax, 0xe31b2051
je 0x1802c91ff
jmp 0x1802c922f
mov rax, rcx
mov dl, bl
add rsp, 0x30
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r14
pop r15
ret
in al, 0x3d
push rbp
sub edx, dword [rcx - 0x32]
push rax
invalid
invalid
xchg r14d, eax
fistp dword [rdx + 0x2164f60e]
push 0x485ac12d
lea edx, [0x18029e120]
mov rcx, rbx
call fcn.180428e50
jmp 0x1802c9020
movsd dword [rdi], dword [rsi]
stc
xchg ebx, eax
push rdi
mov ah, byte [rdx + 0x73]
loope 0x1802c9248
add byte [rcx], al
mov byte [rbx], 0x80
jmp 0x1802c909a
loopne 0x1802c9308
invalid
mov edx, 0x3173b2ef
sbb byte [rbp - 0xbd1624], cl
invalid
lea ecx, [rsp + 0x30]
mov r8d, 4
mov rcx, rax
call fcn.18044e1c0
nop
add rsp, 0x38
ret