Function at 0x14010b590
Capabilities:
Encode data using xor

Disassembly:
push r12
push rbp
push rdi
push rsi
push rbx
add rsp, 0xffffffffffffff80
call fcn.14001a2b0
lea rsi, [rsp + 0x20]
mov ecx, 0x39
mov rax, qword [str.IHT_PQQnXOOSOKQ3cannot_create_std::vector_larger_than_max_size__]
mov dword [rsp + 0x28], 0x44263a24
lea r8, [rsp + 0x2c]
sub ecx, esi
mov qword [rsp + 0x20], rax
mov rax, rsi
nop word [rax + rax]
lea edx, [rcx + rax]
xor byte [rax], dl
add rax, 1
cmp r8, rax
jne 0x14010b5d0
lea rbx, [rsp + 0x50]
mov rcx, rsi
mov qword [rsp + 0x40], rbx
call sub.msvcrt.dll_strlen
cmp rax, 1
je 0x14010bba7
test rax, rax
jne 0x14010bb8d
mov qword [rsp + 0x48], rax
lea rsi, [rsp + 0x30]
mov ecx, 0x39
lea r8, [rsp + 0x3d]
mov byte [rsp + rax + 0x50], 0
mov rax, qword [0x140111238]
sub ecx, esi
mov dword [rsp + 0x38], 0x213b276f
mov byte [rsp + 0x3c], 0x45
mov qword [rsp + 0x30], rax
mov rax, rsi
nop word [rax + rax]
lea edx, [rcx + rax]
xor byte [rax], dl
add rax, 1
cmp r8, rax
jne 0x14010b640
lea rbx, [rsp + 0x70]
mov rcx, rsi
mov qword [rsp + 0x60], rbx
call sub.msvcrt.dll_strlen
cmp rax, 1
je 0x14010bb99
test rax, rax
jne 0x14010bb81
mov qword [rsp + 0x68], rax
mov ecx, 0x2710
lea rbx, [rsp + 0x40]
mov rdi, qword [sym.imp.KERNEL32.dll_Sleep]
mov byte [rsp + rax + 0x70], 0
call rdi
call fcn.140002900
call fcn.140001d10
call fcn.140004350
test al, al
je 0x14010b6b0
call fcn.140004480
test al, al
jne 0x14010bbb5
lea rbx, [rsp + 0x40]
call fcn.140001ad0
lea rbx, [rsp + 0x40]
mov rsi, rbx
call sub.msvcrt.dll_rand
movsxd rbp, eax
cdq
imul rbp, rbp, 0x51eb851f
sar rbp, 0x25
sub ebp, edx
imul edx, ebp, 0x64
sub eax, edx
mov ebp, eax
test eax, eax
jle 0x14010b720
xor r12d, r12d
nop word cs:[rax + rax]
call sub.msvcrt.dll_rand
movsxd rdx, eax
mov ecx, eax
imul rdx, rdx, 0x66666667
sar ecx, 0x1f
sar rdx, 0x22
sub edx, ecx
lea edx, [rdx + rdx*4]
add edx, edx
sub eax, edx
imul eax, r12d
add r12d, 1
add ebp, eax
cmp ebp, r12d
jg 0x14010b6f0
call fcn.140001ad0
call fcn.1400015a0
call fcn.140001ad0
call fcn.140001ad0
call fcn.140001ad0
call sub.msvcrt.dll_rand
movsxd rbp, eax
cdq
imul rbp, rbp, 0x51eb851f
sar rbp, 0x25
sub ebp, edx
imul edx, ebp, 0x64
sub eax, edx
mov ebp, eax
test eax, eax
jle 0x14010b790
xor r12d, r12d
nop dword [rax]
call sub.msvcrt.dll_rand
movsxd rdx, eax
mov ecx, eax
imul rdx, rdx, 0x66666667
sar ecx, 0x1f
sar rdx, 0x22
sub edx, ecx
lea edx, [rdx + rdx*4]
add edx, edx
sub eax, edx
imul eax, r12d
add r12d, 1
add ebp, eax
cmp ebp, r12d
jg 0x14010b760
call fcn.140001ad0
call fcn.1400015a0
call fcn.140001ad0
call fcn.140001ad0
call sub.msvcrt.dll_rand
movsxd rbp, eax
cdq
imul rbp, rbp, 0x51eb851f
sar rbp, 0x25
sub ebp, edx
imul edx, ebp, 0x64
sub eax, edx
mov ebp, eax
test eax, eax
jle 0x14010b800
xor r12d, r12d
nop dword [rax + rax]
call sub.msvcrt.dll_rand
movsxd rdx, eax
mov ecx, eax
imul rdx, rdx, 0x66666667
sar ecx, 0x1f
sar rdx, 0x22
sub edx, ecx
lea edx, [rdx + rdx*4]
add edx, edx
sub eax, edx
imul eax, r12d
add r12d, 1
add ebp, eax
cmp ebp, r12d
jg 0x14010b7d0
call fcn.140001ad0
call fcn.1400015a0
call fcn.140001ad0
call fcn.140001ad0
call fcn.140001d10
call fcn.140001ad0
call sub.msvcrt.dll_rand
movsxd rbp, eax
cdq
imul rbp, rbp, 0x51eb851f
sar rbp, 0x25
sub ebp, edx
imul edx, ebp, 0x64
sub eax, edx
mov ebp, eax
test eax, eax
jle 0x14010b878
xor r12d, r12d
nop word [rax + rax]
call sub.msvcrt.dll_rand
movsxd rdx, eax
mov ecx, eax
imul rdx, rdx, 0x66666667
sar ecx, 0x1f
sar rdx, 0x22
sub edx, ecx
lea edx, [rdx + rdx*4]
add edx, edx
sub eax, edx
imul eax, r12d
add r12d, 1
add ebp, eax
cmp ebp, r12d
jg 0x14010b848
call fcn.140001ad0
call fcn.1400015a0
call fcn.140001ad0
call fcn.140001ad0
call fcn.140001ad0
call fcn.140001d10
call fcn.140001ad0
call sub.msvcrt.dll_rand
movsxd rbp, eax
cdq
imul rbp, rbp, 0x51eb851f
sar rbp, 0x25
sub ebp, edx
imul edx, ebp, 0x64
sub eax, edx
mov ebp, eax
test eax, eax
jle 0x14010b8f0
xor r12d, r12d
nop
call sub.msvcrt.dll_rand
movsxd rdx, eax
mov ecx, eax
imul rdx, rdx, 0x66666667
sar ecx, 0x1f
sar rdx, 0x22
sub edx, ecx
lea edx, [rdx + rdx*4]
add edx, edx
sub eax, edx
imul eax, r12d
add r12d, 1
add ebp, eax
cmp ebp, r12d
jg 0x14010b8c0
call fcn.140001ad0
call fcn.1400015a0
call fcn.140001ad0
call fcn.140001ad0
call fcn.140001ad0
call sub.msvcrt.dll_rand
movsxd rbp, eax
cdq
imul rbp, rbp, 0x51eb851f
sar rbp, 0x25
sub ebp, edx
imul edx, ebp, 0x64
sub eax, edx
mov ebp, eax
test eax, eax
jle 0x14010b960
xor r12d, r12d
nop dword [rax]
call sub.msvcrt.dll_rand
movsxd rdx, eax
mov ecx, eax
imul rdx, rdx, 0x66666667
sar ecx, 0x1f
sar rdx, 0x22
sub edx, ecx
lea edx, [rdx + rdx*4]
add edx, edx
sub eax, edx
imul eax, r12d
add r12d, 1
add ebp, eax
cmp ebp, r12d
jg 0x14010b930
call fcn.140001ad0
call fcn.1400015a0
call fcn.140001ad0
call fcn.140001ad0
call fcn.140001ad0
call fcn.140001ad0
call fcn.140001d10
call sub.msvcrt.dll_rand
movsxd rbp, eax
cdq
imul rbp, rbp, 0x51eb851f
sar rbp, 0x25
sub ebp, edx
imul edx, ebp, 0x64
sub eax, edx
mov ebp, eax
test eax, eax
jle 0x14010b9e0
xor r12d, r12d
nop word [rax + rax]
call sub.msvcrt.dll_rand
movsxd rdx, eax
mov ecx, eax
imul rdx, rdx, 0x66666667
sar ecx, 0x1f
sar rdx, 0x22
sub edx, ecx
lea edx, [rdx + rdx*4]
add edx, edx
sub eax, edx
imul eax, r12d
add r12d, 1
add ebp, eax
cmp ebp, r12d
jg 0x14010b9b0
call fcn.140001ad0
call fcn.1400015a0
call fcn.140001ad0
call fcn.140001ad0
call fcn.140001ad0
call sub.msvcrt.dll_rand
movsxd rbp, eax
cdq
imul rbp, rbp, 0x51eb851f
sar rbp, 0x25
sub ebp, edx
imul edx, ebp, 0x64
sub eax, edx
mov ebp, eax
test eax, eax
jle 0x14010ba50
xor r12d, r12d
nop dword [rax]
call sub.msvcrt.dll_rand
movsxd rdx, eax
mov ecx, eax
imul rdx, rdx, 0x66666667
sar ecx, 0x1f
sar rdx, 0x22
sub edx, ecx
lea edx, [rdx + rdx*4]
add edx, edx
sub eax, edx
imul eax, r12d
add r12d, 1
add ebp, eax
cmp ebp, r12d
jg 0x14010ba20
call fcn.140001ad0
call fcn.1400015a0
call fcn.140001ad0
call fcn.140001ad0
call fcn.140001ad0
call sub.msvcrt.dll_rand
movsxd rbp, eax
cdq
imul rbp, rbp, 0x51eb851f
sar rbp, 0x25
sub ebp, edx
imul edx, ebp, 0x64
sub eax, edx
mov ebp, eax
test eax, eax
jle 0x14010bac0
xor r12d, r12d
nop dword [rax]
call sub.msvcrt.dll_rand
movsxd rdx, eax
mov ecx, eax
imul rdx, rdx, 0x66666667
sar ecx, 0x1f
sar rdx, 0x22
sub edx, ecx
lea edx, [rdx + rdx*4]
add edx, edx
sub eax, edx
imul eax, r12d
add r12d, 1
add ebp, eax
cmp ebp, r12d
jg 0x14010ba90
call fcn.140001ad0
call fcn.1400015a0
call fcn.140001ad0
call fcn.140001ad0
mov rcx, rsi
call fcn.1400046c0
test al, al
jne 0x14010bbd5
add rsi, 0x20
lea rax, [rsp + 0x80]
cmp rsi, rax
jne 0x14010b6c2
mov ecx, 0x2710
call rdi
call fcn.140003c70
xor ecx, ecx
call qword [sym.imp.msvcrt.dll__time64]
mov ecx, eax
call sub.msvcrt.dll_srand
mov rcx, qword [0x1402758a0]
lea rdx, str.Starting_memory_waste..._n
call fcn.1401061e0
mov ecx, 5
call fcn.140027fb0
mov ecx, 5
call fcn.140027d80
mov ecx, 5
call fcn.140027a30
call fcn.140002260
lea rsi, [rsp + 0x80]
sub rsi, 0x20
mov rcx, qword [rsi]
lea rax, [rsi + 0x10]
cmp rcx, rax
je 0x14010bb6f
mov rax, qword [rsi + 0x10]
lea rdx, [rax + 1]
call fcn.14010ab40
cmp rsi, rbx
jne 0x14010bb52
xor eax, eax
sub rsp, 0xffffffffffffff80
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
ret
mov ecx, eax
mov rdi, rbx
rep movsb byte [rdi], byte [rsi]
jmp 0x14010b673
mov ecx, eax
mov rdi, rbx
rep movsb byte [rdi], byte [rsi]
jmp 0x14010b603
movzx edx, byte [rsp + 0x30]
mov byte [rsp + 0x70], dl
jmp 0x14010b673
movzx edx, byte [rsp + 0x20]
mov byte [rsp + 0x50], dl
jmp 0x14010b603
mov ecx, 0x2710
call rdi
lea rbx, [rsp + 0x40]
call fcn.140001d10
call fcn.140001ad0
call fcn.140001d10
jmp 0x14010bb4a
xor ecx, ecx
call qword [sym.imp.msvcrt.dll__time64]
mov ecx, eax
call sub.msvcrt.dll_srand
call fcn.140001d10
mov rcx, qword [0x1402758a0]
lea rdx, str.Starting_memory_waste..._n
call fcn.1401061e0
mov ecx, 0x37
call fcn.140027fb0
mov ecx, 0x37
call fcn.140027d80
mov ecx, 0x37
call fcn.140027a30
jmp 0x14010bb4a