Function at 0x1804a04c0
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xa8
mov rax, qword [rcx + 8]
mov qword [rsp + 0x58], rax
add rcx, 0x10
mov rbx, qword [rcx]
cmp rbx, 0
sete al
mov ecx, dword [0x1807aa078]
sub ecx, dword [0x1807aa07c]
imul ecx, ecx, 0x23410e07
and ecx, 0xe2a710d4
sub ecx, 0x1fa6db35
cmp ecx, 0x31134c77
je 0x1804a09e4
jmp 0x1804a0516
mov ecx, dword [0x1807aa080]
add ecx, dword [0x1807aa084]
and ecx, 0x9a5bafb
add ecx, 0xa69fa2f1
add ecx, 0xe5ec6817
cmp ecx, 0x683a5497
jbe 0x1804a0516
test al, 1
jne 0x1804a09d0
jmp 0x1804a0546
lea rax, [rsp + 0x60]
add rax, 8
mov qword [rsp + 0x50], rax
lea rax, [rsp + 0x60]
add rax, 0x10
mov qword [rsp + 0x48], rax
lea rax, [rsp + 0x60]
add rax, 0x18
mov qword [rsp + 0x40], rax
lea rax, [rsp + 0x60]
add rax, 0x28
mov qword [rsp + 0x38], rax
lea rax, [rsp + 0x60]
add rax, 0x30
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x60]
add rax, 0x38
mov qword [rsp + 0x28], rax
lea r14, [rsp + 0x60]
add r14, 0x20
lea r15, [rsp + 0x60]
add r15, 0x40
xor r12d, r12d
imul rax, r12, 0x98
mov r13, qword [rsp + 0x58]
add r13, rax
add r12, 1
mov r8, qword [r13]
movabs rax, 0x8000000000000000
cmp r8, rax
je 0x1804a069e
mov eax, dword [0x1807aa088]
imul eax, dword [0x1807aa08c]
add eax, 0xd05cc2ed
or eax, 0x609a043e
sub eax, 0x14d0816e
cmp eax, 0xdabf5ee5
jb 0x1804a09f5
jmp 0x1804a0602
mov eax, dword [0x1807aa090]
sub eax, dword [0x1807aa094]
xor eax, 0xd0c4a7c7
sub eax, 0x3abd3e73
mov ecx, 0xb34f5bc8
xor edx, edx
div ecx
cmp eax, 0x16759c5a
jae 0x1804a0602
jmp 0x1804a062a
cmp r8, 0
sete al
mov ecx, dword [0x1807aa098]
imul ecx, dword [0x1807aa09c]
and ecx, 0xe47563f2
and ecx, 0x740d740e
or ecx, 0x8b9e34a6
cmp ecx, 0x9d29d19a
jbe 0x1804a0a02
jmp 0x1804a065e
mov ecx, dword [0x1807aa0a0]
xor ecx, dword [0x1807aa0a4]
imul ecx, ecx, 0xc4766020
or ecx, 0x66294d5e
add ecx, 0xf9177106
cmp ecx, 0x9dd9dff7
jb 0x1804a065e
test al, 1
jne 0x1804a069e
jmp 0x1804a068a
mov rcx, qword [r13 + 8]
mov rdx, r8
mov r8d, 1
call fcn.1804cafa0
jmp 0x1804a069e
mov rcx, r13
add rcx, 0x18
mov eax, dword [0x1807aa0a8]
add eax, dword [0x1807aa0ac]
mov r8d, 0xa44de4e7
xor edx, edx
div r8d
sub eax, 0xde562da
sub eax, 0x2b2dece4
cmp eax, 0xd837aed5
jae 0x1804a0a0f
mov eax, dword [0x1807aa0b0]
sub eax, dword [0x1807aa0b4]
add eax, 0xdcd1d8c6
or eax, 0x4defe79d
xor eax, 0x492195a4
mov r8, qword [rcx]
cmp eax, 0xcf43e5a8
jae 0x1804a0a0f
jmp 0x1804a06fc
movabs rax, 0x8000000000000000
cmp r8, rax
je 0x1804a07e6
mov eax, dword [0x1807aa0b8]
xor eax, dword [0x1807aa0bc]
mov ecx, 0x481fb80e
xor edx, edx
div ecx
xor eax, 0xac530473
mov ecx, 0xd23a40fb
xor edx, edx
div ecx
cmp eax, 0xc849835f
jae 0x1804a0a1c
mov eax, dword [0x1807aa0c0]
imul eax, dword [0x1807aa0c4]
add eax, 0x454d89c8
xor eax, 0xf51eb10
mov ecx, 0xa50b405d
xor edx, edx
div ecx
cmp eax, 0x6363050c
ja 0x1804a0a1c
jmp 0x1804a076a
cmp r8, 0
sete al
test al, 1
jne 0x1804a07e6
jmp 0x1804a0777
mov eax, dword [0x1807aa0c8]
imul eax, dword [0x1807aa0cc]
and eax, 0xa0ff8b3c
or eax, 0x850aabac
xor eax, 0xf5781509
cmp eax, 0xcc05596d
jae 0x1804a0a2d
mov eax, dword [0x1807aa0d0]
xor edx, edx
div dword [0x1807aa0d4]
xor eax, 0x9a74cabe
mov ecx, 0xf0d362ec
xor edx, edx
div ecx
and eax, 0x5298a840
mov rcx, r13
add rcx, 0x20
cmp eax, 0x2d70605
ja 0x1804a0a2d
jmp 0x1804a07d3
mov rcx, qword [rcx]
mov rdx, r8
mov r8d, 1
call fcn.1804cafa0
jmp 0x1804a07e6
mov eax, dword [0x1807aa0d8]
xor eax, dword [0x1807aa0dc]
mov ecx, 0x2e6ab52
xor edx, edx
div ecx
and eax, 0x8fcf2b9e
add eax, 0xe67671d3
cmp eax, 0x3e94e3bf
jbe 0x1804a0a3a
mov eax, dword [0x1807aa0e0]
xor edx, edx
div dword [0x1807aa0e4]
mov esi, eax
sub esi, 0x99add99b
or esi, 0x4c427882
xor esi, 0x6e64dfbf
mov rcx, r13
add rcx, 0x50
call fcn.180460e70
cmp esi, 0x9cdc4010
ja 0x1804a0a3a
jmp 0x1804a084c
mov eax, dword [0x1807aa0e8]
or eax, dword [0x1807aa0ec]
sub eax, 0x80b665c5
add eax, 0x8a710f90
and eax, 0x4f10303f
cmp eax, 0xb8d80430
ja 0x1804a0a57
mov eax, dword [0x1807aa0f0]
xor edx, edx
div dword [0x1807aa0f4]
or eax, 0xb43072d9
imul eax, eax, 0x6554d8e
and eax, 0xf6e1cf52
mov rcx, qword [r13 + 0x68]
cmp eax, 0xa81d7db4
jbe 0x1804a0a57
jmp 0x1804a08a1
xor edi, edi
cmp rcx, 0
mov ebp, 0
je 0x1804a0954
mov eax, dword [0x1807aa0f8]
xor eax, dword [0x1807aa0fc]
add eax, 0x48bd6fba
mov r8d, 0x121e5d31
xor edx, edx
div r8d
or eax, 0xbea7c65c
cmp eax, 0x97a3f475
je 0x1804a0a64
jmp 0x1804a08e0
mov edx, dword [0x1807aa100]
imul edx, dword [0x1807aa104]
and edx, 0x8d133eb0
and edx, 0x1556216e
or edx, 0x5b3151e7
mov rax, r13
add rax, 0x78
cmp edx, 0xe5961aad
je 0x1804a08e0
jmp 0x1804a0910
mov rbp, qword [rax]
mov rax, qword [r13 + 0x70]
mov rdx, qword [rsp + 0x50]
mov qword [rdx], 0
mov rdx, qword [rsp + 0x48]
mov qword [rdx], rcx
mov rdx, qword [rsp + 0x40]
mov qword [rdx], rax
mov rdx, qword [rsp + 0x38]
mov qword [rdx], 0
mov rdx, qword [rsp + 0x30]
mov qword [rdx], rcx
mov rcx, qword [rsp + 0x28]
mov qword [rcx], rax
mov edi, 1
mov eax, dword [0x1807aa108]
imul eax, dword [0x1807aa10c]
imul eax, eax, 0x4088ec90
and eax, 0x26576583
sub eax, 0x92976bf6
cmp eax, 0xc6d01b53
jae 0x1804a0a71
mov eax, dword [0x1807aa110]
xor edx, edx
div dword [0x1807aa114]
mov esi, eax
add esi, 0xd4f7623f
or esi, 0xb196a0af
and esi, 0x8e6aaa68
mov qword [rsp + 0x60], rdi
mov qword [r14], rdi
mov qword [r15], rbp
lea rcx, [rsp + 0x60]
call fcn.180456470
cmp r12, rbx
sete al
cmp esi, 0x15e71d72
jb 0x1804a0a71
test al, 1
jne 0x1804a09ce
jmp 0x1804a05af
jmp 0x1804a09d0
add rsp, 0xa8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov eax, 0x8b7dc672
ret
xchg edx, eax
cld
sub ebp, esp
mov ebp, 0xe9beedb5
invalid
xchg ebp, eax
sbb dword [rdi - 0x17], esi
invalid
xor dl, byte [rbx]
adc byte [rbx], bh
int 0xa1
shr byte [rbx - 0x17], 0xb5
cld
invalid
or eax, 0x76a45bc9
mov ebp, 0x1381bc04
invalid
cmp dword [rax + 0x71], esi
jno 0x1804a0a4e
mov edi, 0x64e9245d
std
invalid
pop rdi
invalid
invalid
std
pop rbx
sbb ecx, esp
invalid
enter 0xffffffffffffb857, 0xfffffffffffffffa
adc al, 0x4b
call fcn.180487859
invalid
mov eax, 0x84f7a1b0
add dh, byte [rdi + 0x7c8948ef]
and al, 0x60
mov qword [r14], rdi
mov qword [r15], rbp
lea rcx, [rsp + 0x60]
call fcn.180456470
jmp 0x1804a097c