Function at 0x1804a2420
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x38
lea rbp, [rsp + 0x30]
mov rsi, r8
mov rbx, rdx
mov r15, rcx
mov eax, 0x10
call fcn.180698e80
sub rsp, rax
mov rdx, rsp
mov eax, 0x20
call fcn.180698e80
sub rsp, rax
mov r14, rsp
mov rdi, qword [rbx + 0x10]
mov qword [rdx], rdi
sub rsp, 0x20
mov rcx, r14
mov r8, rsi
call fcn.1803edb60
add rsp, 0x20
cmp qword [r14], 8
sete al
test al, 1
jne 0x1804a2488
jmp 0x1804a2563
mov eax, dword [0x1807aa3d0]
or eax, dword [0x1807aa3d4]
imul eax, eax, 0xa8d8a94e
mov ecx, 0x254819b
xor edx, edx
div ecx
add eax, 0xcf84b407
cmp eax, 0xc9fd402
je 0x1804a276e
jmp 0x1804a24b5
mov eax, dword [0x1807aa3d8]
or eax, dword [0x1807aa3dc]
xor eax, 0x12e63121
xor eax, 0xc1ef5a9c
imul ecx, eax, 0x47a9535c
mov r12, qword [rbx + 8]
imul rax, rdi, 0x18
mov r13, r12
add r13, rax
cmp rdi, 0
sete al
cmp ecx, 0xf56b9837
jae 0x1804a24b5
jmp 0x1804a24f0
test al, 1
jne 0x1804a25db
jmp 0x1804a24fa
mov rax, rsi
add rax, 0x10
mov qword [rbp], rax
mov eax, dword [0x1807aa3e0]
xor edx, edx
div dword [0x1807aa3e4]
and eax, 0xa02e10ea
or eax, 0x53169050
and eax, 0x4717da56
cmp eax, 0xfb58f72e
ja 0x1804a277b
jmp 0x1804a252f
mov eax, dword [0x1807aa3e8]
and eax, dword [0x1807aa3ec]
mov ecx, 0xdd5b447e
xor edx, edx
div ecx
and eax, 0x7fcd5f54
add eax, 0x36ecf220
mov rdi, rsi
add rdi, 8
cmp eax, 0x943bc60c
jae 0x1804a252f
jmp 0x1804a255e
jmp 0x1804a2637
mov rax, qword [r14]
mov qword [r15], rax
mov rax, qword [r14 + 8]
mov qword [r15 + 8], rax
mov rax, qword [r14 + 0x10]
mov qword [r15 + 0x10], rax
mov rax, qword [r14 + 0x18]
mov qword [r15 + 0x18], rax
mov eax, dword [0x1807aa3f0]
imul eax, dword [0x1807aa3f4]
add eax, 0xe1e9fdf1
or eax, 0x2d7cde66
sub eax, 0x179243bf
cmp eax, 0x780c7077
jbe 0x1804a2788
mov eax, dword [0x1807aa3f8]
and eax, dword [0x1807aa3fc]
mov ecx, 0x698d0f7e
xor edx, edx
div ecx
or eax, 0xa84115f7
xor eax, 0x7dd78c06
cmp eax, 0xd959f7ac
jae 0x1804a2788
jmp 0x1804a25d4
jmp 0x1804a26b1
jmp 0x1804a25db
mov qword [r15], 8
mov eax, dword [str.vP5]
sub eax, dword [0x1807aa404]
or eax, 0x8b8df851
mov ecx, 0xee0bbd45
xor edx, edx
div ecx
or eax, 0xfd458afd
cmp eax, 0x2874844d
jb 0x1804a2795
jmp 0x1804a260e
mov eax, dword [0x1807aa408]
and eax, dword [0x1807aa40c]
mov ecx, 0xe4615c2b
xor edx, edx
div ecx
imul eax, eax, 0x933e5458
add eax, 0xbef2f1b2
cmp eax, 0x7a21fc04
jb 0x1804a260e
jmp 0x1804a26b1
mov r14, qword [r12 + 8]
mov rbx, qword [r12 + 0x10]
mov qword [rbp - 0x10], rbx
lea rcx, [rbp - 0x30]
lea rdx, [rbp - 0x10]
sub rsp, 0x20
mov r8, rsi
call fcn.1803edb60
add rsp, 0x20
mov rax, qword [rbp - 0x30]
cmp rax, 8
jne 0x1804a26fe
mov qword [rbp - 8], r15
mov rax, qword [rbp]
mov r15, qword [rax]
mov rax, qword [rsi]
sub rax, r15
cmp rax, rbx
jb 0x1804a2683
jmp 0x1804a26c5
sub rsp, 0x30
mov rcx, rsi
mov rdx, r15
mov r8, rbx
mov r9d, 1
mov qword [rsp + 0x20], 1
call fcn.18045c010
add rsp, 0x30
mov rax, qword [rbp]
mov r15, qword [rax]
jmp 0x1804a26c5
mov rax, r15
lea rsp, [rbp + 8]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
mov rcx, r15
add rcx, qword [rdi]
sub rsp, 0x20
mov rdx, r14
mov r8, rbx
call fcn.1806a7400
add rsp, 0x20
add r15, rbx
mov rax, qword [rbp]
mov qword [rax], r15
add r12, 0x18
cmp r12, r13
mov r15, qword [rbp - 8]
je 0x1804a25d9
jmp 0x1804a2637
lea rcx, [rbp - 0x30]
add rcx, 8
mov rdx, qword [rcx]
mov qword [r15 + 8], rdx
mov rdx, qword [rcx + 8]
mov qword [r15 + 0x10], rdx
mov rcx, qword [rcx + 0x10]
mov qword [r15 + 0x18], rcx
mov qword [r15], rax
mov eax, dword [0x1807aa410]
imul eax, dword [0x1807aa414]
sub eax, 0x420ce206
imul eax, eax, 0x7ed03eb2
or eax, 0x64203b41
cmp eax, 0x9d6d995a
jb 0x1804a27a2
jmp 0x1804a2746
mov eax, dword [0x1807aa418]
and eax, dword [0x1807aa41c]
imul eax, eax, 0x63ca328b
xor eax, 0xc4faf5d
xor eax, 0x8eee3310
cmp eax, 0x89f5f0a4
je 0x1804a2746
jmp 0x1804a26b1
test eax, 0x9ea505dd
or al, 0x3e
shr ecx, cl
cmp ch, bh
invalid
invalid
out dx, eax
test al, 0x1c
sbb edx, dword [rdi]
xchg dword [rdx - 0x1ec1693], ebx
invalid
out 0x3e, eax
mov esi, 0x983c3df6
mov esi, 0x983c3df6
or ebp, ecx
push 0xfffffffffffffffe
invalid
adc byte [rsi], bh
jbe 0x1804a2797
mul dword [rax]
jne 0x1804a2796
cwde
int3