Function at 0x140091a50
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r12
push rsi
push rdi
push rbp
push rbx
mov r8, rdx
movzx r11d, byte [rdx + 0x38]
movzx eax, byte [rdx + 0x3a]
test al, al
setne r9b
cmp r11b, 1
ja 0x140091ab7
nop word cs:[rax + rax]
mov edx, dword [0x141dd2940]
xor edx, dword [0x141dd2944]
imul edx, edx, 0x234c8da9
imul rdx, rdx, 0x4cd9e1a5
shr rdx, 0x3e
imul edx, edx, 0x10f05b93
cmp edx, 0xc9dbad92
je 0x140091a80
test al, al
je 0x140091ac2
xor r10d, r10d
jmp 0x140091be0
xor r9d, r9d
xor r10d, r10d
jmp case.default.0x140092065
xor eax, eax
nop word cs:[rax + rax]
test al, al
jne 0x140091ad0
movzx eax, byte [r8 + 0x10]
lea edx, [rax - 5]
cmp dl, 1
ja 0x140091bd8
mov rsi, qword [r8]
nop dword [rax + rax]
mov edx, dword [0x141dd2948]
xor edx, dword [0x141dd294c]
imul edx, edx, 0xfa3104ab
xor edx, 0xe96585b6
cmp edx, 0x88ba7d7
ja 0x140091af0
mov rdi, qword [r8 + 8]
nop word cs:[rax + rax]
test r11b, r11b
setne dl
cmp al, 6
sete r10b
mov ebx, dword [0x141dd2950]
and ebx, dword [0x141dd2954]
imul ebx, ebx, 0xa364ad8c
add ebx, 0x96ae5e45
cmp ebx, 0xdf1e8fd2
jb 0x140091b20
or dl, r10b
je 0x140091b60
xor ebx, ebx
jmp 0x140091b8d
mov eax, dword [0x141dd2958]
add eax, dword [0x141dd295c]
and eax, 0x47451381
imul eax, eax, 0xe5714e1e
cmp eax, 0x9dd7dbac
je 0x140091b60
mov ebx, 2
cmp rdi, 1
jbe 0x140092440
mov r10d, 0x950e2bf1
nop word cs:[rax + rax]
mov eax, dword [0x141dd2968]
xor edx, edx
div dword [0x141dd296c]
and eax, 0x9056612c
imul eax, eax, 0x92fb0e56
shr eax, 1
imul rax, r10
shr rax, 0x3e
cmp eax, 0x300df1af
ja 0x140091ba0
cmp rbx, rdi
jne 0x1400921ed
xor r10d, r10d
jmp 0x140091be0
xor r10d, r10d
nop dword [rax + rax]
mov eax, dword [0x141dd2998]
add eax, dword [0x141dd299c]
xor eax, 0x2d0ebac
imul eax, eax, 0xcc9bcef5
and eax, 0x6f932ec
cmp eax, 0xb4394be0
ja 0x140091be0
test r11b, r11b
jne case.default.0x140092065
nop dword [rax + rax]
add rdi, rsi
lea r14, [rsi + rbx]
inc r14
nop word [rax + rax]
mov eax, dword [0x141dd2970]
xor edx, edx
div dword [0x141dd2974]
or eax, 0xb7deedca
fidiv word [rdi - 0x792076fb]
invalid
cmp r14, rdi
sete r10b
cmp eax, 0xced949ff
ja 0x140092200
movzx eax, byte [rsi + rbx]
cmp al, 0x2e
setne dl
or dl, r10b
nop word cs:[rax + rax]
mov esi, dword [0x141dd2978]
imul esi, dword [0x141dd297c]
or esi, 0x41811009
and esi, 0x51c75f09
add esi, 0xb30e3322
cmp esi, 0x173b2b39
jb 0x140092240
test dl, 1
je 0x1400922ae
cmp al, 0x2e
sete al
and r10b, al
nop word cs:[rax + rax]
mov eax, dword [0x141dd2990]
sub eax, dword [0x141dd2994]
imul eax, eax, 0x5e3da846
imul rax, rax, 0x1b6a9167
shr rax, 0x3c
or eax, 0x33b4526e
cmp eax, 0xc64b937a
ja 0x140092280
jmp 0x140091be0
movzx eax, byte [r14]
nop word cs:[rax + rax]
mov edx, dword [0x141dd2980]
imul edx, dword [0x141dd2984]
imul esi, edx, 0x22da8b91
add esi, 0xff63ceb5
cmp al, 0x5c
sete r10b
cmp al, 0x2f
sete dl
cmp esi, 0xadbdded8
ja 0x1400922c0
or r10b, dl
nop
mov eax, dword [0x141dd2988]
and eax, dword [0x141dd298c]
add eax, 0x5562c261
and eax, 0x60a0b35f
add eax, 0x3f664d6c
cmp eax, 0x8ef4b559
jbe 0x1400922f0
jmp 0x140091be0
xor eax, eax
test al, al
jne 0x14009246d
mov eax, dword [0x141dd2960]
xor edx, edx
div dword [0x141dd2964]
xor eax, 0x8dee5202
imul eax, eax, 0x8f277a9e
xor eax, 0xd21de3a8
ud2
ud2