Function at 0x140010c60
Capabilities:
Encode data using xor
Generate random numbers via rtlgenrandom
Generate random numbers via winapi

Disassembly:
push r14
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xa0
mov rsi, rdx
mov rdi, rcx
xorps xmm0, xmm0
movaps xmmword [rsp + 0x30], xmm0
movaps xmmword [rsp + 0x20], xmm0
lea rdx, [rsp + 0x20]
xor ecx, ecx
mov r8d, 0x20
mov r9d, 2
call qword [sym.imp.bcrypt.dll_BCryptGenRandom]
mov ebx, eax
nop dword [rax + rax]
mov eax, dword [0x141dc1e30]
xor eax, dword [str.T3__]
or eax, 0xc372a0fd
imul eax, eax, 0x8ebd02f3
cmp eax, 0xac3e90ab
je 0x140010ca0
cmp ebx, 0xc0000000
jb 0x140010d6e
mov eax, dword [0x141dc1e38]
and eax, dword [0x141dc1e3c]
xor eax, 0xadb9a571
add eax, 0x4e59a736
imul rcx, rax, 0x14e3ebbf
shr rcx, 0x20
sub eax, ecx
shr eax, 1
add eax, ecx
shr eax, 0x1f
cmp eax, 0x2f632e2e
ja 0x140010d25
mov ebp, dword [0x141dc1e40]
and ebp, dword [0x141dc1e44]
add ebp, 0xf0858684
lea rcx, [rsp + 0x20]
mov edx, 0x20
call qword [sym.imp.ADVAPI32.dll_SystemFunction036]
cmp ebp, 0x6a264e2a
jae 0x140010d40
lea rcx, [rsp + 0x20]
mov edx, 0x20
call qword [sym.imp.ADVAPI32.dll_SystemFunction036]
jmp 0x140010cfb
mov ecx, dword [0x141dc1e48]
sub ecx, dword [0x141dc1e4c]
xor ecx, 0x60602082
and ecx, 0x706cba86
xor ecx, 0xe378d7f1
cmp ecx, 0x9724064b
jb 0x140010d40
test al, al
je 0x140010eab
movaps xmm0, xmmword [rsp + 0x20]
movaps xmm1, xmmword [rsp + 0x30]
movaps xmmword [rsp + 0x50], xmm1
movaps xmmword [rsp + 0x40], xmm0
mov eax, dword [0x141dc1e98]
xor edx, edx
div dword [0x141dc1e9c]
lea rbx, [rsp + 0x70]
nop word cs:[rax + rax]
mov eax, dword [0x141dc1ea0]
and eax, dword [0x141dc1ea4]
add eax, 0x9d4a0da8
or eax, 0xa2f00ad4
and eax, 0xbbff8bf4
cmp eax, 0xd7e1d7f5
ja 0x140010da0
mov rax, qword [0x141ddc4e8]
test rax, rax
je 0x140011057
nop word cs:[rax + rax]
mov ecx, dword [0x141dc1eb8]
add ecx, dword [0x141dc1ebc]
xor ecx, 0x59f4676a
add ecx, 0xcf3fc15
xor ecx, 0xb047f190
cmp ecx, 0xad8343a5
ja 0x140010de0
and eax, 0x4000
xor ecx, ecx
or rax, rcx
je 0x140010e30
lea r8, [0x141dba480]
lea rdx, [rsp + 0x40]
mov rcx, rbx
call fcn.140072930
jmp 0x140010e74
mov eax, dword [0x141dc1ec0]
xor eax, dword [0x141dc1ec4]
or eax, 0xec928a23
and eax, 0xecd3ca67
xor eax, 0x97160f56
cmp eax, 0x5ceaeb82
jb 0x140010e30
movaps xmm0, xmmword [rsp + 0x40]
movaps xmm1, xmmword [rsp + 0x50]
movaps xmmword [rsp + 0x70], xmm0
movaps xmmword [rsp + 0x80], xmm1
xorps xmm0, xmm0
movaps xmmword [rsp + 0x90], xmm0
mov eax, dword [0x141dc1ec8]
imul eax, dword [0x141dc1ecc]
imul eax, eax, 0x104bd68a
mov ecx, 0x8b90c68d
imul rcx, rax
shr rcx, 0x3b
add ecx, 0x530e
cmp ecx, 0xffbb60d7
jbe 0x1400110fb
jmp 0x140011139
add ebx, 0x80000000
nop word cs:[rax + rax]
mov eax, dword [0x141dc1e50]
xor edx, edx
div dword [0x141dc1e54]
cmp eax, 0x973bc20c
je 0x140010ec0
nop word cs:[rax + rax]
mov eax, dword [0x141dc1e58]
xor edx, edx
div dword [0x141dc1e5c]
and eax, 0x8d1fd62d
imul eax, eax, 0x261e8079
add eax, 0x1c76f7a6
cmp eax, 0x1992793b
jb 0x140010ee0
test ebx, ebx
je 0x140010d6e
mov eax, dword [0x141dc1e60]
sub eax, dword [0x141dc1e64]
imul eax, eax, 0xf7c27b1c
and eax, 0x2c4498e0
imul eax, eax, 0x870ca499
cmp eax, 0x256cae8f
jae 0x140010f40
movzx eax, byte [0x141ddc4f8]
nop dword [rax + rax]
mov eax, dword [0x141dc1e68]
and eax, dword [0x141dc1e6c]
imul eax, eax, 0x2e7b5cee
xor eax, 0xf090d8ca
add eax, 0x20851ad2
movzx ecx, byte [0x141ddc4f8]
cmp eax, 0x98ffcc68
jb 0x140010f40
mov eax, dword [0x141dc1e70]
or eax, dword [0x141dc1e74]
add eax, 0xcfa7bacc
imul rax, rax, 0x26310b27
shr rax, 0x3d
cmp eax, 0xfd7f3484
jbe 0x140010fa0
mov edx, 4
xor ecx, ecx
call fcn.1400c0a10
nop dword [rax]
mov eax, dword [0x141dc1e78]
add eax, dword [0x141dc1e7c]
imul ebp, eax, 0x4b35e732
or ebp, 0x11240010
and ebp, 0x31a48c5a
mov edx, 4
xor ecx, ecx
call fcn.1400c0a10
cmp ebp, 0xfc9c44b0
ja 0x140010fa0
mov r8, rax
mov eax, dword [0x141dc1e80]
xor edx, edx
div dword [0x141dc1e84]
nop word cs:[rax + rax]
mov eax, dword [0x141dc1e88]
add eax, dword [0x141dc1e8c]
or eax, 0xfd1e16cd
add eax, 0x947f8fb7
and eax, 0x81ff6b16
cmp eax, 0x29852135
jb 0x140010ff0
test r8, r8
je 0x1400110cb
mov dword [r8], ebx
mov rcx, qword [0x141ddc4e0]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax]
mov eax, dword [0x141dc1ee0]
and eax, dword [0x141dc1ee4]
or eax, 0x40000008
xor eax, 0x2021220
and eax, 0x42821228
cmp eax, 0xf80b7181
ja 0x140011030
jmp 0x140011182
call fcn.1400fd3e0
and eax, 0x4000
xor ecx, ecx
nop word cs:[rax + rax]
mov edx, dword [0x141dc1ea8]
xor edx, dword [0x141dc1eac]
and edx, 0x204ea585
imul edx, edx, 0xd666cbb0
add edx, 0x2f016570
cmp edx, 0xd7626ea3
ja 0x140011070
nop word cs:[rax + rax]
mov edx, dword [0x141dc1eb0]
add edx, dword [0x141dc1eb4]
imul edx, edx, 0x16c63071
add edx, 0x56a4d301
and edx, 0xe273fe01
cmp edx, 0xd823d504
jae 0x1400110a0
jmp 0x140010e0d
xor eax, eax
test al, al
je 0x1400110d3
ud2
mov eax, dword [0x141dc1e90]
mov ecx, dword [0x141dc1e94]
add eax, ecx
add eax, 0xabbf63d5
and eax, 0x40060aef
add eax, 0x6fb304c9
ud2
mov eax, dword [0x141dc1ed0]
sub eax, dword [0x141dc1ed4]
xor eax, 0xb734abb2
imul rax, rax, 0x27bc1ac3
shr rax, 0x3c
or eax, 0x4ffd8798
movaps xmm0, xmmword [rbx]
movaps xmm1, xmmword [rbx + 0x10]
movaps xmm2, xmmword [rbx + 0x20]
movaps xmmword [rdi + 0x20], xmm2
movaps xmmword [rdi + 0x10], xmm1
movaps xmmword [rdi], xmm0
cmp eax, 0xb9b6108d
jbe 0x140011151
movaps xmm0, xmmword [rbx]
movaps xmm1, xmmword [rbx + 0x10]
movaps xmm2, xmmword [rbx + 0x20]
movaps xmmword [rdi + 0x20], xmm2
movaps xmmword [rdi + 0x10], xmm1
movaps xmmword [rdi], xmm0
jmp 0x1400110fb
mov eax, 0xc999d9b9
nop word cs:[rax + rax]
mov ecx, dword [0x141dc1ed8]
and ecx, dword [0x141dc1edc]
or ecx, 0x6f1fabd1
imul rcx, rax
shr rcx, 0x3d
cmp ecx, 0x4145c57a
je 0x140011160
xor eax, eax
test al, al
je 0x140011190
mov qword [rdi + 0x40], 0
xor eax, eax
nop word cs:[rax + rax]
mov qword [rdi + 0x40], 0
test al, al
jne 0x1400111a0
mov r14, qword [rdi + 0x30]
mov eax, dword [0x141dc1ee8]
or eax, dword [0x141dc1eec]
add r14, 0xffffffffffffff00
add eax, 0x4989f9f2
and eax, 0x3fcaaec5
cmp eax, 0x109a85a9
ja 0x14001121b
mov eax, dword [0x141dc1ef0]
xor edx, edx
div dword [0x141dc1ef4]
mov ebx, eax
add ebx, 0x6491ee05
or ebx, 0x8aaa9452
imul rax, rbx, 0x2dd17f61
shr rax, 0x20
sub ebx, eax
shr ebx, 1
add ebx, eax
shr ebx, 0x1c
mov qword [rdi + 0x38], r14
mov rcx, rdi
mov rdx, rsi
call fcn.140072a00
cmp ebx, 0xcdd0cf6e
jbe 0x14001122c
mov qword [rdi + 0x38], r14
mov rcx, rdi
mov rdx, rsi
call fcn.140072a00
jmp 0x1400111d4
add rsp, 0xa0
pop rbx
pop rbp
pop rdi
pop rsi
pop r14
ret