Function at 0x140091f80
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x28
mov rsi, rdx
mov rdi, rcx
nop word cs:[rax + rax]
mov eax, dword [0x141dd07e0]
or eax, dword [0x141dd07e4]
add eax, 0x6386391
or eax, 0xd520bbff
cmp eax, 0x8f897515
je 0x140091fa0
movzx r15d, word [rsi + 0x10]
mov r13, qword [rsi]
mov r14, qword [rsi + 8]
xor ebp, ebp
mov r11, 0xffffffffffffffff
nop word cs:[rax + rax]
mov r12d, r15d
mov eax, dword [0x141dd07e8]
or eax, dword [0x141dd07ec]
imul rax, rax, 0x676b3329
shr rax, 0x3e
or eax, 0xc674f45a
imul rcx, rax, 0x85d38e3
shr rcx, 0x20
sub eax, ecx
shr eax, 1
add eax, ecx
shr eax, 0x1d
cmp eax, 0xc878bc1f
je 0x140091fe3
test r12w, r12w
je 0x140092030
test bpl, bpl
je 0x1400922d0
jmp 0x1400922f9
mov eax, dword [0x141dd07f0]
and eax, dword [0x141dd07f4]
and eax, 0x6348b98
add eax, 0x7740baf8
and eax, 0x6445c9a0
cmp eax, 0xfe10181
jb 0x140092030
cmp r13, r14
je 0x14009247b
lea r8, [r13 + 1]
mov qword [rsi], r8
movzx r12d, byte [r13]
nop word [rax + rax]
mov eax, dword [0x141dd07f8]
imul eax, dword [0x141dd07fc]
xor eax, 0xbd76442
add eax, 0x1927364b
cmp eax, 0x2d2edeef
ja 0x140092070
test r12b, r12b
js 0x1400920fd
nop word cs:[rax + rax]
mov eax, dword [0x141dd0828]
imul eax, dword [0x141dd082c]
or eax, 0xabf8e81
add eax, 0x2230dc27
or eax, 0xe050ef92
cmp eax, 0xaa109b7c
jb 0x1400920a0
nop word cs:[rax + rax]
mov eax, dword [0x141dd0830]
xor edx, edx
div dword [0x141dd0834]
imul eax, eax, 0x8575853f
add eax, 0x385128a3
and eax, 0x85e90bb4
cmp eax, 0x73906504
ja 0x1400920d0
mov r9, r8
jmp 0x14009227d
mov eax, dword [0x141dd0800]
xor edx, edx
div dword [0x141dd0804]
nop dword [rax + rax]
mov eax, dword [0x141dd0808]
or eax, dword [0x141dd080c]
imul eax, eax, 0x1cd23a0f
xor eax, 0x2088454
or eax, 0xd5f551a9
cmp eax, 0x470ef975
jb 0x140092110
mov ecx, r12d
and ecx, 0x1f
mov eax, dword [0x141dd0810]
and eax, dword [0x141dd0814]
cmp eax, 0xef222e51
je 0x140092139
lea r9, [r13 + 2]
mov eax, dword [0x141dd0818]
imul eax, dword [0x141dd081c]
imul rax, rax, 0x44e26641
shr rax, 0x3e
add eax, 0x2c72890f
cmp eax, 0xc95cf433
ja 0x14009226c
nop dword [rax + rax]
mov eax, dword [0x141dd0820]
imul eax, dword [0x141dd0824]
xor eax, 0x211102
and eax, 0x34a13523
add eax, 0x938f5b92
mov qword [rsi], r9
cmp eax, 0x5721814
jb 0x14009226c
movzx r8d, byte [r8]
and r8d, 0x3f
cmp r12b, 0xdf
jbe 0x140092274
mov eax, dword [0x141dd0838]
xor edx, edx
div dword [0x141dd083c]
lea rdx, [r13 + 3]
add eax, 0x73acb6c0
cmp eax, 0x5e939382
jae 0x1400921e0
mov qword [rsi], rdx
nop dword [rax]
mov eax, dword [0x141dd0840]
mov r10d, dword [0x141dd0844]
add eax, r10d
add eax, 0x3d860c8f
xor eax, 0x9eaab937
mov qword [rsi], rdx
cmp eax, 0xb152ca01
jb 0x1400921e0
movzx eax, byte [r9]
shl r8d, 6
and eax, 0x3f
nop
mov r9d, dword [0x141dd0848]
and r9d, dword [0x141dd084c]
or r9d, 0x184a2000
and r9d, 0x18fa2865
cmp r9d, 0x9d65aab0
je 0x140092210
or r8d, eax
cmp r12b, 0xf0
jb 0x140092288
lea rdx, [r13 + 4]
mov qword [rsi], rdx
movzx r12d, byte [r13 + 3]
and ecx, 7
shl ecx, 0x12
shl r8d, 6
and r12d, 0x3f
or r12d, r8d
or r12d, ecx
cmp r12d, 0xffff
ja 0x14009229a
mov r9, rdx
jmp 0x14009227d
mov qword [rsi], r9
jmp 0x140092180
shl ecx, 6
or ecx, r8d
mov r12d, ecx
xor r15d, r15d
mov r13, r9
jmp 0x14009233d
shl ecx, 0xc
or r8d, ecx
mov r12d, r8d
cmp r12d, 0xffff
jbe 0x140092267
lea eax, [r12 + 0xff0000]
shr eax, 0xa
or eax, 0xd800
and r12d, 0x3ff
or r12d, 0xdc00
mov word [rsi + 0x10], r12w
mov r13, rdx
mov r15d, r12d
mov r12d, eax
jmp 0x14009233d
mov eax, dword [0x141dd0850]
and eax, dword [0x141dd0854]
or eax, 0xbd8b76f6
imul eax, eax, 0xbf2b3e60
xor eax, 0xe2aa0025
mov word [rsi + 0x10], 0
cmp eax, 0x67f6f6bf
jbe 0x140092310
mov word [rsi + 0x10], 0
jmp 0x1400922d0
mov eax, dword [0x141dd0858]
or eax, dword [0x141dd085c]
xor eax, 0x4020052
or eax, 0x7935cfac
shr eax, 1
imul rax, rax, 0x1526719d
shr rax, 0x38
cmp eax, 0x3a653323
je 0x140092310
xor r15d, r15d
mov rbx, qword [rdi + 0x10]
cmp rbx, qword [rdi]
je 0x140092370
mov ecx, dword [0x141dd0860]
sub ecx, dword [0x141dd0864]
mov rax, qword [rdi + 8]
and ecx, 0xc1205420
xor ecx, 0x3109f27a
cmp ecx, 0x9d6646c4
jae 0x1400923e0
jmp 0x14009240a
mov ecx, dword [0x141dd0880]
or ecx, dword [0x141dd0884]
xor ecx, 0x48049110
and ecx, 0x5d2dd351
xor ecx, 0x1e530a4
mov r8, r14
sub r8, r13
add r8, 3
cmovb r8, r11
cmp r15w, 1
mov eax, 2
sbb rax, 0
cmp ecx, 0x460fc997
ja 0x140092370
shr r8, 2
add r8, rax
mov qword [rsp + 0x20], 2
mov r9d, 2
mov rcx, rdi
mov rdx, rbx
call fcn.1400fe550
mov r11, 0xffffffffffffffff
jmp 0x140092346
mov ecx, dword [0x141dd0868]
add ecx, dword [0x141dd086c]
xor ecx, 0x89a8f6a
imul rcx, rcx, 0x1c75e22d
shr rcx, 0x3b
mov word [rax + rbx*2], r12w
cmp ecx, 0x13278843
jne 0x140092420
mov word [rax + rbx*2], r12w
jmp 0x1400923e0
inc rbx
mov eax, dword [0x141dd0870]
sub eax, dword [0x141dd0874]
xor eax, 0x20014080
or eax, 0x1cee3d4e
and eax, 0x7eeffdde
cmp eax, 0x35454e65
jb 0x140092475
nop word cs:[rax + rax]
mov eax, dword [0x141dd0878]
add eax, dword [0x141dd087c]
or eax, 0x2000800
and eax, 0xa000808
mov qword [rdi + 0x10], rbx
cmp eax, 0x5ad29a14
jbe 0x140091fe0
mov qword [rdi + 0x10], rbx
jmp 0x140092450
add rsp, 0x28
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret