Function at 0x1400dbc70
Capabilities:
Encode data using xor
Get memory capacity

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x98
lea rbp, [rsp + 0x80]
movaps xmmword [rbp], xmm6
mov rdi, rcx
mov eax, dword [0x141dd9cf8]
sub eax, dword [0x141dd9cfc]
imul eax, eax, 0xa7d61d4c
and eax, 0x88f0314c
add eax, 0xe8d0710e
cmp eax, 0x169b94e3
jae 0x1400dbcf0
mov eax, 0x40
call fcn.1400f07c0
sub rsp, rax
mov eax, 0x10
call fcn.1400f07c0
sub rsp, rax
mov eax, 0x10
call fcn.1400f07c0
sub rsp, rax
mov eax, 0xd0
call fcn.1400f07c0
sub rsp, rax
nop dword [rax]
mov ecx, dword [0x141dd9d00]
and ecx, dword [0x141dd9d04]
add ecx, 0x71a8fb07
and ecx, 0x96df935e
mov eax, 0x40
call fcn.1400f07c0
sub rsp, rax
mov r14, rsp
mov eax, 0x10
call fcn.1400f07c0
sub rsp, rax
mov rdx, rsp
mov eax, 0x10
call fcn.1400f07c0
sub rsp, rax
mov r15, rsp
mov eax, 0xd0
call fcn.1400f07c0
sub rsp, rax
mov r13, rsp
cmp ecx, 0x94542d2b
je 0x1400dbcf0
mov rbx, r13
xor eax, eax
nop word cs:[rax + rax]
test al, al
jne 0x1400dbd60
mov eax, dword [0x141ddc4fc]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
test byte [rax + 0x70], 1
mov qword [rbp - 0x18], rdx
je 0x1400dbe1b
nop dword [rax + rax]
mov eax, dword [0x141dd9d20]
imul eax, dword [0x141dd9d24]
add eax, 0xf51cfce1
or eax, 0x5b4e6721
cmp eax, 0xe075e92b
je 0x1400dbd90
mov eax, dword [0x141ddc4fc]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov rsi, qword [rax + 0x78]
mov eax, dword [0x141ddc4fc]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov rcx, qword [rax + 0x80]
nop word cs:[rax + rax]
mov eax, dword [0x141dd9d28]
xor eax, dword [0x141dd9d2c]
add eax, 0xdd89faff
or eax, 0xe04f6d32
xor eax, 0xcba75962
cmp eax, 0x635300e0
ja 0x1400dbdf0
mov qword [rbp - 8], rcx
jmp 0x1400dbeef
xorps xmm0, xmm0
movups xmmword [r15], xmm0
sub rsp, 0x20
mov edx, 0x10
mov rcx, r15
call qword [sym.imp.bcryptprimitives.dll_ProcessPrng]
add rsp, 0x20
mov eax, dword [0x141dd9d08]
imul eax, dword [0x141dd9d0c]
mov rsi, qword [r15]
imul eax, eax, 0xaa03df25
add eax, 0x82606bec
cmp eax, 0x5133fea8
jb 0x1400dbe9c
mov eax, dword [0x141dd9d10]
and eax, dword [0x141dd9d14]
add eax, 0xbe368f20
and eax, 0xa754025
mov ecx, dword [0x141ddc4fc]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
mov r8, qword [r15 + 8]
mov byte [rcx + 0x70], 1
mov qword [rcx + 0x80], r8
cmp eax, 0x90d3291e
jbe 0x1400dbed0
mov rax, qword [r15 + 8]
mov ecx, dword [0x141ddc4fc]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
mov byte [rcx + 0x70], 1
mov qword [rcx + 0x80], rax
jmp 0x1400dbe5a
mov eax, dword [0x141dd9d18]
xor edx, edx
div dword [0x141dd9d1c]
imul eax, eax, 0x2c2c98d9
cmp eax, 0xa2ad2c1b
je 0x1400dbed0
mov qword [rbp - 8], r8
mov eax, dword [0x141dd9d30]
or eax, dword [0x141dd9d34]
imul rax, rax, 0x779475dd
shr rax, 0x3d
xor eax, 0x496a15f2
add eax, 0xb56de3f8
cmp eax, 0xa09899f9
jb 0x1400dbf83
mov eax, dword [0x141dd9d38]
xor edx, edx
div dword [0x141dd9d3c]
shr eax, 3
imul r12, rax, 0x21a227ad
shr r12, 0x39
add r12d, 0x319378d1
and r12d, 0x110100c4
lea rax, [rsi + 1]
mov ecx, dword [0x141ddc4fc]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
mov qword [rcx + 0x78], rax
movzx eax, byte [0x141ddc4f8]
sub rsp, 0x20
mov edx, 0x58410
xor ecx, ecx
call fcn.1400c0a10
add rsp, 0x20
cmp r12d, 0xebed04d5
jbe 0x1400dbfc1
lea rax, [rsi + 1]
mov ecx, dword [0x141ddc4fc]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
mov qword [rcx + 0x78], rax
movzx eax, byte [0x141ddc4f8]
sub rsp, 0x20
mov edx, 0x58410
xor ecx, ecx
call fcn.1400c0a10
add rsp, 0x20
jmp 0x1400dbf17
mov r15, rax
test rax, rax
je 0x1400dbff5
mov qword [rbp - 0x10], rdi
mov eax, dword [0x141dd9d40]
and eax, dword [0x141dd9d44]
xor eax, 0x53ee228f
imul eax, eax, 0xcb74e468
and eax, 0x5def48c0
cmp eax, 0x606432cf
jbe 0x1400dc026
jmp 0x1400dc08a
ud2
mov eax, dword [0x141dd9d48]
xor edx, edx
div dword [0x141dd9d4c]
imul edi, eax, 0x5727916c
xor edi, 0x7042020
or edi, 0x60da951b
lea r12, [r15 + 0x58000]
sub rsp, 0x20
mov r8d, 0x410
mov rcx, r12
mov dl, 0xff
call sub.VCRUNTIME140.dll_memset
add rsp, 0x20
xorps xmm0, xmm0
movups xmmword [rbx + 0x70], xmm0
movups xmmword [rbx + 0x80], xmm0
mov qword [rbx], 0
mov qword [rbx + 8], 8
cmp edi, 0x5e05a810
jae 0x1400dc0c8
lea rcx, [r15 + 0x58000]
sub rsp, 0x20
mov r8d, 0x410
mov dl, 0xff
call sub.VCRUNTIME140.dll_memset
add rsp, 0x20
xorps xmm0, xmm0
movups xmmword [rbx + 0x70], xmm0
movups xmmword [rbx + 0x80], xmm0
mov qword [rbx], 0
mov qword [rbx + 8], 8
jmp 0x1400dc026
movabs rax, 0x8000000000000000
mov ecx, dword [0x141dd9d50]
xor ecx, dword [0x141dd9d54]
or ecx, 0x29a4f06c
add ecx, 0x37c8ad89
imul rcx, rcx, 0x4297b53
shr rcx, 0x37
cmp ecx, 0x6bba0911
jbe 0x1400dc120
mov qword [rbx + 0x10], 0
mov qword [rbx + 0x18], rax
mov dword [rbx + 0x30], 0
mov byte [rbx + 0x38], 0
mov qword [rbx + 0x40], r12
mov qword [rbx + 0x48], 0x3ff
add r13, 0x70
nop word cs:[rax + rax]
mov ecx, dword [0x141dd9d58]
imul ecx, dword [0x141dd9d5c]
imul ecx, ecx, 0x3933e303
mov qword [rbx + 0x10], 0
mov qword [rbx + 0x18], rax
mov dword [rbx + 0x30], 0
mov byte [rbx + 0x38], 0
mov qword [rbx + 0x40], r12
mov qword [rbx + 0x48], 0x3ff
cmp ecx, 0x759383fc
je 0x1400dc130
mov eax, dword [0x141dd9d60]
mov ecx, dword [0x141dd9d64]
add eax, ecx
add eax, 0x7af755ec
xor eax, 0xe62189e7
cmp eax, 0xa6805a68
mov r12, qword [rbp - 8]
jae 0x1400dc1e2
mov qword [rbx + 0x50], 0x380
mov qword [rbx + 0x58], 0
mov qword [rbx + 0x60], rsi
mov qword [rbx + 0x68], r12
mov qword [rbx + 0x90], 0
xorps xmm0, xmm0
movups xmmword [r14], xmm0
movups xmmword [r14 + 0x30], xmm0
movups xmmword [r14 + 0x20], xmm0
movups xmmword [r14 + 0x10], xmm0
mov dword [r14], 0x40
sub rsp, 0x20
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_GlobalMemoryStatusEx]
add rsp, 0x20
xorps xmm6, xmm6
mov r15, qword [sym.imp.KERNEL32.dll_GlobalMemoryStatusEx]
nop dword [rax]
mov edi, dword [0x141dd9d68]
imul edi, dword [0x141dd9d6c]
add edi, 0xe0117eb3
mov qword [rbx + 0x50], 0x380
mov qword [rbx + 0x58], 0
mov qword [rbx + 0x60], rsi
mov qword [rbx + 0x68], r12
mov qword [rbx + 0x90], 0
movups xmmword [r14], xmm6
movups xmmword [r14 + 0x30], xmm6
movups xmmword [r14 + 0x20], xmm6
movups xmmword [r14 + 0x10], xmm6
mov dword [r14], 0x40
sub rsp, 0x20
mov rcx, r14
call r15
add rsp, 0x20
cmp edi, 0xb293412b
jb 0x1400dc1f0
test eax, eax
jne 0x1400dc2e7
mov eax, dword [0x141dd9d78]
xor eax, dword [0x141dd9d7c]
imul rcx, rax, 0x23b1f2a9
shr rcx, 0x20
sub eax, ecx
shr eax, 1
add eax, ecx
shr eax, 0x1b
or eax, 0xf0508660
xor eax, 0x63fdc415
cmp eax, 0xd03a325a
jbe 0x1400dc29d
sub rsp, 0x20
call qword [sym.imp.KERNEL32.dll_GetLastError]
add rsp, 0x20
mov esi, 0xbbb983f1
mov rdi, qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax]
mov eax, dword [0x141dd9d80]
xor edx, edx
div dword [0x141dd9d84]
imul r15d, eax, 0x5d67a8f1
add r15d, 0x9a8269d2
imul r15, rsi
shr r15, 0x3f
sub rsp, 0x20
call rdi
add rsp, 0x20
cmp r15d, 0x3b447e42
ja 0x1400dc2b0
movups xmm0, xmmword [r14 + 8]
movups xmmword [r13], xmm0
xorps xmm0, xmm0
movaps xmmword [rbp - 0x30], xmm0
movaps xmmword [rbp - 0x40], xmm0
movaps xmmword [rbp - 0x50], xmm0
movaps xmmword [rbp - 0x60], xmm0
movaps xmmword [rbp - 0x70], xmm0
movaps xmmword [rbp - 0x80], xmm0
mov qword [rbp - 0x20], 0
sub rsp, 0x20
lea rcx, [rbp - 0x80]
mov edx, 0x68
call qword [sym.imp.KERNEL32.dll_K32GetPerformanceInfo]
add rsp, 0x20
nop dword [rax + rax]
mov ecx, dword [0x141dd9d88]
imul ecx, dword [0x141dd9d8c]
and ecx, 0x4e084400
cmp ecx, 0xb2851a74
je 0x1400dc330
test eax, eax
mov rsi, qword [rbp - 0x10]
je 0x1400dc410
mov eax, dword [0x141dd9d90]
xor edx, edx
div dword [0x141dd9d94]
nop word cs:[rax + rax]
mov eax, dword [0x141dd9d98]
and eax, dword [0x141dd9d9c]
add eax, 0xed78a49c
and eax, 0x2296eb2b
cmp eax, 0x37e2189d
ja 0x1400dc370
mov rcx, qword [rbp - 0x30]
mov r8d, 0xadfa5901
xor r9d, r9d
nop word [rax + rax]
mov r11d, dword [0x141dd9da0]
or r11d, dword [0x141dd9da4]
imul r11, r8
shr r11, 0x3d
or r11d, 0x108801c0
mov r10, qword [rbp - 0x60]
mov rdx, qword [rbp - 0x70]
sub rdx, r10
cmovb rdx, r9
mov rax, rcx
mul rdx
seto dl
cmp r11d, 0xcf79fc22
je 0x1400dc3a0
mov r8, qword [rbp - 0x78]
test dl, dl
mov r9, 0xffffffffffffffff
cmovne rax, r9
xor edx, edx
sub r8, r10
cmovae rdx, r8
mov qword [rbx + 0x80], rax
mov rax, rcx
mul rdx
cmovo rax, r9
mov qword [rbx + 0x88], rax
sub rsp, 0x20
mov rcx, rbx
mov dl, 1
call fcn.1400c2190
add rsp, 0x20
mov rdx, qword [rbp - 0x18]
mov byte [rdx], 1
movabs rax, 0x202020202020101
mov qword [rdx + 1], rax
sub rsp, 0x20
mov rcx, rbx
call fcn.1400c3500
mov r8d, 0xd0
mov rcx, rsi
mov rdx, rbx
call sub.VCRUNTIME140.dll_memcpy
add rsp, 0x20
movaps xmm6, xmmword [rbp]
lea rsp, [rbp + 0x18]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret