Function at 0x180246f60
Capabilities:
Encode data using xor

Disassembly:
push rsi
push rdi
push rbx
sub rsp, 0x20
mov rsi, rcx
mov eax, dword [0x18051f1e0]
imul eax, dword [0x18051f1e4]
and eax, 0x68f1b29d
add eax, 0x7b96e68f
or eax, 0x6b2808ae
cmp eax, 0xf1aaa75d
je 0x1802473b2
jmp 0x180246f93
mov eax, dword [0x18051f1e8]
sub eax, dword [0x18051f1ec]
mov ecx, 0x459f4e83
xor edx, edx
div ecx
or eax, 0x52a73b8
sub eax, 0xc67739a9
mov cl, byte [rsi + 0x18]
cmp eax, 0xcfcf3ab6
jae 0x180246f93
jmp 0x180246fbe
movzx eax, cl
test eax, eax
je 0x180246fe3
jmp 0x180246fc7
mov ecx, eax
sub ecx, 3
je 0x180247000
jmp 0x180246fd0
sub eax, 4
je 0x180247093
jmp 0x180246fdb
add rsp, 0x20
pop rbx
pop rdi
pop rsi
ret
mov rdx, qword [rsi]
cmp rdx, 0
je 0x180246fdb
add rsi, 8
mov rcx, qword [rsi]
mov r8d, 1
call fcn.1802cbf20
jmp 0x180246fdb
mov rax, rsi
add rax, 0x20
mov cx, word [rax]
mov eax, dword [0x18051f1f0]
add eax, dword [0x18051f1f4]
and eax, 0xf57c43b5
and eax, 0x561df2f1
mov r8d, 0x8208efde
xor edx, edx
div r8d
cmp eax, 0xa11630ef
jae 0x1802473bf
jmp 0x180247038
mov edx, dword [0x18051f1f8]
add edx, dword [0x18051f1fc]
xor edx, 0x8aa871dc
and edx, 0x167ea94e
sub edx, 0x53d8d1c8
cmp cx, 3
sete al
cmp edx, 0x6b8e6ffc
jbe 0x180247038
test al, 1
jne 0x18024706e
jmp 0x180246fdb
add rsi, 0x28
mov rsi, qword [rsi]
mov rcx, rsi
call fcn.180405e10
test al, 1
jne 0x180247086
jmp 0x180246fdb
mov rcx, rsi
call fcn.180407050
jmp 0x180246fdb
mov rax, rsi
add rax, 0xb8
cmp byte [rax], 3
sete al
test al, 1
jne 0x1802470a8
jmp 0x1802470b6
mov rcx, rsi
add rcx, 0x70
call fcn.180248ec0
jmp 0x1802470b6
mov rax, rsi
add rax, 0x28
cmp dword [rax], 0
sete cl
mov eax, dword [0x18051f200]
and eax, dword [0x18051f204]
mov r8d, 0xf87a5eb1
xor edx, edx
div r8d
add eax, 0x2df4090e
add eax, 0x2e29a431
cmp eax, 0xe566f4a7
je 0x1802473d0
jmp 0x1802470f1
mov eax, dword [0x18051f208]
imul eax, dword [0x18051f20c]
imul eax, eax, 0x6b42c123
mov r8d, 0x6cf4cb28
xor edx, edx
div r8d
or eax, 0xefe0b2c9
cmp eax, 0xe7f1e432
je 0x1802470f1
test cl, 1
jne 0x180247257
jmp 0x180247126
mov r8, qword [rsi + 0x40]
cmp r8, 0
sete al
mov ecx, dword [0x18051f210]
imul ecx, dword [0x18051f214]
and ecx, 0xf5a457c9
add ecx, 0x2734164b
or ecx, 0xbd9900d8
cmp ecx, 0x6af26ffe
jbe 0x1802473dd
mov ecx, dword [0x18051f218]
sub ecx, dword [0x18051f21c]
or ecx, 0x339c7bcf
and ecx, 0x72f181ef
add ecx, 0xac7e3a74
cmp ecx, 0xd330ff61
jae 0x1802473dd
test al, 1
jne 0x180247257
jmp 0x180247190
mov eax, dword [0x18051f220]
and eax, dword [0x18051f224]
xor eax, 0xef911d2
mov ecx, 0x2572aefe
xor edx, edx
div ecx
imul eax, eax, 0x678b1c1f
cmp eax, 0xfee2823c
je 0x1802473ee
mov eax, dword [0x18051f228]
xor eax, dword [0x18051f22c]
sub eax, 0xf0118c18
or eax, 0x324d3868
and eax, 0xe9511d12
mov rcx, qword [rsi + 0x30]
cmp eax, 0x5d315dd3
ja 0x1802473ee
jmp 0x1802471e7
mov eax, dword [0x18051f230]
and eax, dword [0x18051f234]
and eax, 0x2de73860
mov r9d, 0xeae095da
xor edx, edx
div r9d
xor eax, 0x1110326b
cmp eax, 0x7b50f884
jae 0x1802473fb
jmp 0x180247215
mov eax, dword [0x18051f238]
sub eax, dword [0x18051f23c]
mov r9d, 0x4a57db8d
xor edx, edx
div r9d
add eax, 0x81abaf4d
mov r9d, 0x5c73d6a0
xor edx, edx
div r9d
mov rdx, r8
shl rdx, 5
cmp eax, 0x7414c698
je 0x180247215
jmp 0x18024724c
mov r8d, 4
call fcn.1802cbf20
mov rax, qword [rsi + 0x20]
cmp rax, 0
sete cl
test cl, 1
jne 0x180246fdb
jmp 0x18024726d
mov rcx, rax
and rcx, 3
lea rdx, [0x1804869b0]
movsxd rcx, dword [rdx + rcx*4]
add rcx, rdx
jmp rcx
popfq
shrd dword [rdi], eax, cl
mov ah, 0xa7
je 0x1802473d4
jmp 0x180246f91
ja 0x1802473c9
mov r9d, 0xfd98f455
movabs dword [0xfffffc66e94ca471], eax
movsb byte [rdi], byte [rsi]
jmp 0x180247036
xor byte [rax + rax*8 + 0x70], dh
sbb ecx, dword [rbp - 5]
cmp eax, 0xfffd12e9
jmp [rbx - 0x4f22cbd]
stosd dword [rdi], eax
ror dword [0x13e3934e0], cl
adc al, 0xbe
shr byte [rax], 0xe4
insb byte [rdi], dx
jmp 0x18024715c
invalid
js 0x1802473e3
scasd eax, dword [rdi]
mov ebp, 0x698cdb8b
ficomp word [rbp + 0x7e9cabc]
invalid