Function at 0x1802254a0
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
mov eax, 0x10a8
call fcn.18045a590
sub rsp, rax
lea rbp, [rsp + 0x80]
mov rbx, rdx
mov rsi, rcx
mov eax, 0x20
call fcn.18045a590
sub rsp, rax
mov rdi, rsp
mov eax, 0x10
call fcn.18045a590
sub rsp, rax
mov r15, rsp
sub rsp, 0x20
mov rcx, rsi
call fcn.18040c800
add rsp, 0x20
mov r8, rax
mov rcx, rdx
mov eax, dword [0x18051d418]
and eax, dword [0x18051d41c]
add eax, 0x21cc815
sub eax, 0xe7f5465b
or eax, 0x2b29558c
cmp eax, 0x808d3cc4
jae 0x1802258aa
jmp 0x180225525
mov eax, dword [0x18051d420]
add eax, dword [0x18051d424]
xor eax, 0x28d17e19
mov r9d, 0x6c98d9df
xor edx, edx
div r9d
add eax, 0xf226aad9
cmp r8, 0
sete r14b
cmp eax, 0x3e996c3a
jb 0x180225525
test r14b, 1
jne 0x1802255a8
jmp 0x18022555d
mov qword [rbp + 0x1018], rsi
mov qword [r15], r8
mov r12, r15
add r12, 8
mov qword [r15 + 8], rcx
mov qword [rdi], r15
mov qword [rdi + 8], r15
mov qword [rdi + 0x10], 0
lea rcx, [rbp - 0x80]
sub rsp, 0x20
mov rdx, rbx
mov r8d, 0x1098
call fcn.180468b10
add rsp, 0x20
lea r13, [rbp + 0x1026]
add r13, 1
jmp 0x1802255bd
sub rsp, 0x20
mov rcx, rbx
call fcn.1802214d0
add rsp, 0x20
jmp 0x180225844
sub rsp, 0x20
call fcn.180408a50
add rsp, 0x20
mov rsi, rax
mov eax, dword [0x18051d428]
add eax, dword [0x18051d42c]
and eax, 0x2e072e8c
and eax, 0x35c39450
imul eax, eax, 0x57212e59
cmp eax, 0x1d9e1386
jbe 0x1802258b7
jmp 0x1802255f6
mov eax, dword [0x18051d430]
sub eax, dword [0x18051d434]
or eax, 0x3252616b
and eax, 0x4c7ed0e6
and eax, 0x9618681a
mov rbx, rsi
add rbx, 0x50
mov cl, byte [rsi + 0x50]
cmp eax, 0x10655346
je 0x1802255f6
jmp 0x180225624
movzx edx, cl
mov al, 2
test cl, cl
je 0x18022563c
jmp 0x18022562f
sub rdx, 1
je 0x1802256a7
jmp 0x180225637
jmp 0x180225718
lea rdx, [0x18029e120]
sub rsp, 0x20
mov rcx, rsi
call fcn.180428e50
add rsp, 0x20
mov byte [rbx], 1
mov eax, dword [0x18051d438]
and eax, dword [0x18051d43c]
and eax, 0x1488c009
sub eax, 0xbc70fd39
imul eax, eax, 0x51aad7ed
cmp eax, 0x6f971bd
jbe 0x1802258c4
mov eax, dword [0x18051d440]
xor edx, edx
div dword [0x18051d444]
or eax, 0xe025c1de
or eax, 0x185b4127
and eax, 0x41a80f92
cmp eax, 0xdc6fd280
je 0x1802258c4
jmp 0x1802256a7
mov rdx, rsi
add rdx, 0x4c
mov al, byte [rsi + 0x4c]
mov r8, rsi
add r8, 0x4d
mov cl, byte [rsi + 0x4d]
mov byte [rdx], 1
mov byte [r8], 0x80
mov edx, dword [str.___p]
and edx, dword [0x18051d44c]
or edx, 0xa23163b4
or edx, 0x628fdfc7
add edx, 0xd7ba6043
cmp edx, 0x5e9d89eb
je 0x1802258d5
mov edx, dword [0x18051d450]
sub edx, dword [0x18051d454]
add edx, 0x8de4dbc
xor edx, 0x90761c09
imul edx, edx, 0x1656ece4
cmp edx, 0x39972006
jb 0x1802258d5
jmp 0x180225718
mov byte [rbp + 0x1026], al
mov byte [r13], cl
lea rcx, [rbp - 0x80]
sub rsp, 0x20
mov rdx, rdi
call fcn.180225e10
add rsp, 0x20
mov bl, al
cmp byte [rbp + 0x1026], 2
je 0x180225757
lea rcx, [rbp + 0x1026]
sub rsp, 0x20
call fcn.18040d540
add rsp, 0x20
jmp 0x180225757
test bl, 1
jne 0x18022582b
jmp 0x180225762
lea rcx, [rbp - 0x80]
sub rsp, 0x20
call fcn.1802214d0
add rsp, 0x20
mov rdi, qword [r15]
mov rsi, qword [r12]
mov eax, dword [0x18051d458]
or eax, dword [0x18051d45c]
mov ecx, 0xa7b87fe0
xor edx, edx
div ecx
and eax, 0xba447596
add eax, 0x37948ef3
cmp eax, 0x98fa507f
je 0x1802258e2
jmp 0x1802257a6
mov eax, dword [0x18051d460]
sub eax, dword [0x18051d464]
or eax, 0x9d85cedd
imul ebx, eax, 0xa354ffa9
or ebx, 0x48399c92
sub rsp, 0x20
mov rcx, rsi
call qword [rdi + 0x18]
add rsp, 0x20
cmp ebx, 0x151a1da6
jbe 0x1802257a6
jmp 0x1802257db
mov eax, dword [0x18051d468]
xor eax, dword [0x18051d46c]
imul eax, eax, 0x7ae82bab
or eax, 0x6ef16835
and eax, 0xd30f5c46
cmp eax, 0x6e2e5458
je 0x180225901
mov eax, dword [0x18051d470]
sub eax, dword [0x18051d474]
or eax, 0x2bf39d13
sub eax, 0x3b341685
imul eax, eax, 0xb073535d
cmp eax, 0x38eb05a4
jbe 0x180225901
jmp 0x180225844
sub rsp, 0x20
mov rcx, qword [rbp + 0x1018]
call fcn.18040c870
add rsp, 0x20
jmp 0x1802255bd
mov eax, dword [0x18051d478]
and eax, dword [0x18051d47c]
or eax, 0x4f9d549b
and eax, 0xc1ffddab
and eax, 0xb1bc2b3b
cmp eax, 0x1e208b6e
je 0x180225912
jmp 0x18022586c
mov eax, dword [0x18051d480]
add eax, dword [0x18051d484]
xor eax, 0x9960b5c2
sub eax, 0x989878b2
xor eax, 0x4adf7192
cmp eax, 0xee93e520
ja 0x18022586c
and r14b, 1
movzx eax, r14b
lea rsp, [rbp + 0x1028]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
scasb al, byte [rdi]
retf 0xa613
mov ecx, 0xaa83caf7
loop 0x1802258f2
fucompp
xor ch, bh
invalid
mov ah, 0xae
or bl, byte [rdi - 0x4924d62a]
xor byte cs:[rax + rbp], ch
jmp 0x18022567d
sub byte [rcx], dl
mov word [rdx + 0x7c], ss
mov ebx, 0xae9806f
invalid
and al, 0xea
invalid
mov rcx, rsi
call qword [rdi + 0x18]
add rsp, 0x20
jmp 0x1802257a4
lodsd eax, dword [rsi]
invalid
jmp 0x18022589d