Function at 0x1400c1320
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x28
mov rax, qword [r9 + 8]
mov rsi, r8
mov rdi, rdx
mov rbx, rcx
nop dword [rax]
mov ecx, dword [0x141dd53a0]
or ecx, dword [0x141dd53a4]
imul ecx, ecx, 0x2845c176
xor ecx, 0x5100e121
or ecx, 0xa47c008e
cmp ecx, 0xfd767aa9
jb 0x1400c1340
test rax, rax
je 0x1400c14a8
mov r8, qword [r9]
mov rax, qword [r9 + 0x10]
xor ecx, ecx
nop dword [rax + rax]
test cl, cl
jne 0x1400c1380
test rax, rax
je 0x1400c1400
mov eax, dword [0x141dd53f0]
add eax, dword [0x141dd53f4]
xor eax, 0x415a8691
imul rax, rax, 0x5724b41d
shr rax, 0x3d
xor eax, 0xf2c5d099
cmp eax, 0x3929f405
jae 0x1400c13c0
mov rax, qword [0x141ddb260]
nop dword [rax + rax]
mov eax, dword [0x141dd53f8]
add eax, dword [0x141dd53fc]
imul eax, eax, 0x56683efc
add eax, 0xf2791178
or eax, 0x40c10fd1
mov rcx, qword [0x141ddb260]
cmp eax, 0x6ec019fe
jb 0x1400c13c0
xor edx, edx
mov r9, rsi
call qword [sym.imp.KERNEL32.dll_HeapReAlloc]
mov r14, rax
jmp 0x1400c17f2
mov eax, dword [0x141dd53a8]
sub eax, dword [0x141dd53ac]
xor eax, 0x798f08e9
imul eax, eax, 0xba3545ec
cmp eax, 0x50762d81
jb 0x1400c1400
test rsi, rsi
je 0x1400c1480
movzx eax, byte [0x141ddb278]
mov eax, dword [0x141dd53b8]
xor edx, edx
div dword [0x141dd53bc]
nop dword [rax + rax]
mov eax, dword [0x141dd53c0]
imul eax, dword [0x141dd53c4]
and eax, 0x2b800a05
xor eax, 0xe2e6ac1
cmp eax, 0x861db25b
ja 0x1400c1440
cmp rdi, 0x11
jae 0x1400c1626
xor eax, eax
test al, al
jne 0x1400c174d
jmp 0x1400c1706
mov eax, dword [0x141dd53b0]
sub eax, dword [0x141dd53b4]
imul rax, rax, 0x404de5cd
shr rax, 0x3e
add eax, 0x1b5dd567
cmp eax, 0xcd56b5ef
jae 0x1400c1480
jmp 0x1400c1574
mov eax, dword [0x141dd5400]
xor edx, edx
div dword [0x141dd5404]
nop word cs:[rax + rax]
mov eax, dword [0x141dd5408]
sub eax, dword [0x141dd540c]
imul eax, eax, 0x48204e82
cmp eax, 0x3e15e04a
je 0x1400c14c0
nop dword [rax]
mov eax, dword [0x141dd5410]
imul eax, dword [0x141dd5414]
imul eax, eax, 0x70226c4b
xor eax, 0x225c5420
and eax, 0x63fdf5e8
cmp eax, 0xb7c22554
je 0x1400c14e0
test rsi, rsi
je 0x1400c156d
movzx eax, byte [0x141ddb278]
mov eax, dword [0x141dd5418]
add eax, dword [0x141dd541c]
and eax, 0xcec91703
xor eax, 0x373ad0a6
add eax, 0x51204f92
cmp eax, 0x1f140e39
jb 0x1400c1510
cmp rdi, 0x11
jae 0x1400c157c
mov eax, dword [0x141dd5430]
sub eax, dword [0x141dd5434]
add eax, 0xda8af8b9
mov ecx, 0x9fe308df
imul rcx, rax
shr rcx, 0x3f
or ecx, 0x5c414bd8
cmp ecx, 0x966df447
ja 0x1400c1791
jmp 0x1400c1761
xor eax, eax
nop
test al, al
jne 0x1400c1570
mov r14, rdi
jmp 0x1400c17f2
mov eax, dword [0x141dd5420]
xor edx, edx
div dword [0x141dd5424]
mov eax, 0xdd262a25
lea rdx, [rdi + rsi]
nop word cs:[rax + rax]
mov ecx, dword [0x141dd5428]
imul ecx, dword [0x141dd542c]
imul rcx, rax
shr rcx, 0x3c
xor ecx, 0xbd03ea86
imul ecx, ecx, 0x46729b6c
cmp ecx, 0x74833ce0
ja 0x1400c15a0
xor r14d, r14d
xor ecx, ecx
call fcn.1400c0180
test rax, rax
je 0x1400c17f2
mov rcx, rax
lea rax, [rdi - 1]
and rax, rcx
mov r14, rdi
sub r14, rax
mov eax, dword [0x141dd5448]
xor edx, edx
div dword [0x141dd544c]
add r14, rcx
imul eax, eax, 0x540abf54
mov edx, 0xa20030ff
imul rdx, rax
shr rdx, 0x3e
imul eax, edx, 0x47675dc9
cmp eax, 0x6627bfa6
je 0x1400c17ec
jmp 0x1400c17c5
lea rdx, [rdi + rsi]
xor ecx, ecx
call fcn.1400c0180
mov r14, rax
nop word cs:[rax + rax]
mov ecx, dword [0x141dd53c8]
imul ecx, dword [0x141dd53cc]
imul ecx, ecx, 0xff0c949
add ecx, 0x5b485ecf
cmp ecx, 0xb513e6eb
ja 0x1400c1640
nop word cs:[rax + rax]
mov ecx, dword [0x141dd53d0]
sub ecx, dword [0x141dd53d4]
add ecx, 0x803845fd
or ecx, 0x4888e8e2
xor ecx, 0x42e36f6d
cmp ecx, 0x8410f71f
jb 0x1400c1670
test r14, r14
je 0x1400c16fe
lea rcx, [rdi - 1]
and rcx, r14
mov edx, dword [0x141dd53e0]
imul edx, dword [0x141dd53e4]
add edx, 0x10dd1886
or edx, 0x44042d4
and edx, 0x4505ad4
cmp edx, 0xebff0c6
jne 0x1400c16d4
mov rdx, rdi
sub rdx, rcx
mov qword [rax + rdx - 8], rax
mov rdx, rdi
sub rdx, rcx
add r14, rdx
nop dword [rax]
mov ecx, dword [0x141dd53e8]
add ecx, dword [0x141dd53ec]
mov qword [rax + rdx - 8], rax
cmp ecx, 0x72e476b3
je 0x1400c16e0
jmp 0x1400c17f2
xor r14d, r14d
jmp 0x1400c17f2
mov r15d, dword [0x141dd53d8]
sub r15d, dword [0x141dd53dc]
and r15d, 0x2538eaa5
xor r15d, 0xe7e2fed9
imul rax, r15, 0x1c370baf
shr rax, 0x20
sub r15d, eax
shr r15d, 1
add r15d, eax
shr r15d, 0x1e
xor ecx, ecx
mov rdx, rsi
call fcn.1400c0180
cmp r15d, 0x68c779a7
jb 0x1400c1759
xor ecx, ecx
mov rdx, rsi
call fcn.1400c0180
jmp 0x1400c1706
mov r14, rax
jmp 0x1400c17f2
mov eax, dword [0x141dd5438]
xor edx, edx
div dword [0x141dd543c]
and eax, 0x30c926d0
or eax, 0x4f309027
imul ebp, eax, 0xb710a60e
xor ecx, ecx
mov rdx, rsi
call fcn.1400c0180
cmp ebp, 0x663bcdcb
jne 0x1400c179d
xor ecx, ecx
mov rdx, rsi
call fcn.1400c0180
jmp 0x1400c1761
mov r14, rax
mov eax, dword [0x141dd5440]
or eax, dword [0x141dd5444]
or eax, 0x61ac94b
imul eax, eax, 0xec7eb179
and eax, 0x67dd2565
cmp eax, 0xed4ae9fa
je 0x1400c17a0
jmp 0x1400c17f2
mov eax, dword [0x141dd5450]
and eax, dword [0x141dd5454]
add eax, 0x91d1e49
or eax, 0x37031c6
imul eax, eax, 0x7a727ab4
mov qword [r14 - 8], rcx
cmp eax, 0xcd92d998
jne 0x1400c17f2
mov qword [r14 - 8], rcx
jmp 0x1400c17c5
mov eax, dword [0x141dd5458]
imul eax, dword [0x141dd545c]
imul eax, eax, 0x1dd26a20
cmp eax, 0xd117834
je 0x1400c1844
mov eax, dword [0x141dd5460]
imul eax, dword [0x141dd5464]
and eax, 0x814d0708
add eax, 0xff855c62
xor ecx, ecx
test r14, r14
sete cl
mov rdx, r14
cmove rdx, rdi
mov qword [rbx + 8], rdx
mov qword [rbx + 0x10], rsi
mov qword [rbx], rcx
cmp eax, 0x1205baa
jae 0x1400c1860
xor eax, eax
test r14, r14
mov rcx, r14
cmove rcx, rdi
sete al
mov qword [rbx + 8], rcx
mov qword [rbx + 0x10], rsi
mov qword [rbx], rax
jmp 0x1400c180c
add rsp, 0x28
pop rbx
pop rbp
pop rdi
pop rsi
pop r14
pop r15
ret