Function at 0x1400e1140
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x27]
sub rsp, 0x100
mov rax, qword [0x1403285e8]
xor rax, rsp
mov qword [rbp + 0x17], rax
mov rbx, rdx
mov rsi, rcx
lea rcx, str.drvmap::MapDriverNoBS
call qword [sym.imp.VMProtectSDK64.dll_VMProtectBeginUltra]
mov edx, 0x18
lea rcx, [rbp - 0x69]
call fcn.1400ae670
mov rcx, rbx
call fcn.1400e0e00
mov rdx, rax
lea rcx, [rbp - 0x69]
call fcn.1400ddcc0
nop
lea rcx, [rbp - 0x69]
call fcn.1400d0d80
test al, al
jne 0x1400e15e0
lea rcx, [rbp - 0x69]
call fcn.1400cf0a0
mov rcx, rax
call fcn.1400e0e10
mov r14, rax
test rax, rax
je 0x1400e15e0
mov eax, 0x20b
cmp word [r14 + 0x18], ax
jne 0x1400e15e0
mov edx, dword [r14 + 0x50]
mov dword [rsp + 0x30], edx
mov rcx, rsi
call fcn.1400d4c50
mov ebx, edx
mov qword [rsp + 0x28], rdx
mov rcx, rax
call fcn.1400e36a0
mov r12, rax
xor r15d, r15d
test rax, rax
je 0x1400e14e7
mov rcx, rsi
call fcn.1400d4c50
mov r9d, ebx
mov rdx, r12
mov rcx, rax
call fcn.1400e3380
mov eax, dword [r14 + 0x28]
add rax, r12
mov qword [rsp + 0x48], rax
lea rcx, [rbp - 0x69]
call fcn.1400cf0a0
mov rdx, rax
mov r8, r14
mov rcx, r12
call fcn.1400e0e80
lea rcx, [rbp - 0x69]
call fcn.1400cf0a0
mov rdx, rax
mov r8, r14
mov rcx, rsi
call fcn.1400e0fb0
test al, al
je 0x1400e14e7
lea rcx, [rbp - 0x51]
call fcn.1400d1540
lea rcx, [rbp - 0x51]
call fcn.1400bfe20
nop
movzx r13d, word [r14 + 0x14]
add r13, 0x18
add r13, r14
mov edi, r15d
cmp r15w, word [r14 + 6]
jae 0x1400e135a
lea rbx, [r13 + 0x24]
nop word [rax + rax]
test dword [rbx], 0xe0000000
je 0x1400e1347
cmp dword [rbx - 0x14], 0
je 0x1400e1347
lea rcx, [rsp + 0x50]
call fcn.1400e1720
mov rcx, rax
call fcn.1400bd760
mov rdx, rax
movsxd rax, edi
lea rcx, [rax + rax*4]
lea rcx, [rcx*8]
add rcx, r13
call fcn.1400acb10
test rax, rax
jne 0x1400e1347
mov eax, dword [rbx - 0x18]
mov dword [rsp + 0x38], eax
mov eax, dword [rbx - 0x1c]
mov dword [rsp + 0x3c], eax
mov edx, dword [rbx]
mov ecx, edx
call fcn.1400e0e40
mov dword [rsp + 0x40], eax
shr edx, 0x19
and dl, 1
mov byte [rsp + 0x44], dl
lea rdx, [rsp + 0x38]
lea rcx, [rbp - 0x51]
call fcn.1400e1d90
mov rcx, rsi
call fcn.1400d4c50
mov r10, rax
mov r9d, dword [rbx - 0x14]
lea rcx, [rbp - 0x69]
call fcn.1400cf0a0
mov r8d, dword [rbx - 0x10]
add r8, rax
mov edx, dword [rbx - 0x18]
add rdx, r12
mov rcx, r10
call fcn.1400e3470
inc edi
add rbx, 0x28
movzx eax, word [r14 + 6]
cmp edi, eax
jl 0x1400e12a0
lea rcx, [rbp - 0x69]
call fcn.1400e1e60
vpxor xmm0, xmm0, xmm0
vmovups ymmword [rbp - 0x39], ymm0
vmovups ymmword [rbp - 0x19], ymm0
vmovups xmmword [rbp + 7], xmm0
vzeroupper
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, eax
call fcn.1402490d0
mov ebx, r15d
lea rdi, [rbp - 0x39]
nop dword [rax]
call fcn.1402490a4
mov r8d, eax
mov eax, 0x80808081
imul r8d
add edx, r8d
sar edx, 7
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
imul ecx, edx, 0xff
sub r8d, ecx
mov byte [rdi], r8b
inc ebx
lea rdi, [rdi + 1]
cmp ebx, 8
jb 0x1400e1390
mov ebx, r15d
lea rdi, [rbp - 0x21]
nop dword [rax + rax]
call fcn.1402490a4
mov r8d, eax
mov eax, 0x80808081
imul r8d
add edx, r8d
sar edx, 7
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
imul ecx, edx, 0xff
sub r8d, ecx
mov byte [rdi], r8b
inc ebx
lea rdi, [rdi + 1]
cmp ebx, 8
jb 0x1400e13d0
mov ebx, r15d
lea rdi, [rbp - 0x11]
nop dword [rax + rax]
call fcn.1402490a4
mov r8d, eax
mov eax, 0x80808081
imul r8d
add edx, r8d
sar edx, 7
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
imul ecx, edx, 0xff
sub r8d, ecx
mov byte [rdi], r8b
inc ebx
lea rdi, [rdi + 1]
cmp ebx, 8
jb 0x1400e1410
mov dword [rsp + 0x20], r15d
lea rdx, [rsp + 0x20]
call fcn.1400e1620
mov qword [rbp - 0x31], r12
mov eax, dword [rsp + 0x30]
mov dword [rbp - 9], eax
mov eax, dword [rsp + 0x20]
mov dword [rbp - 0x29], eax
mov byte [rbp - 0x19], 1
mov byte [rbp - 4], 1
mov rcx, rsi
call fcn.1400d4c50
mov edx, 0x1000
mov rcx, rax
call fcn.1400e3790
mov rbx, rax
test rax, rax
je 0x1400e14d9
mov rcx, r15
nop dword [rax]
movzx eax, cl
and al, 3
add al, 0x22
xor byte [rbp + rcx - 0x39], al
inc rcx
cmp rcx, 0x50
jb 0x1400e1490
mov rcx, rsi
call fcn.1400d4c50
mov r9d, 0x50
lea r8, [rbp - 0x39]
mov rdx, rbx
mov rcx, rax
call fcn.1400e3470
mov rcx, rsi
test al, al
jne 0x1400e1523
call fcn.1400d4c50
mov rdx, rbx
mov rcx, rax
call fcn.1400e3870
nop
lea rcx, [rbp - 0x51]
call fcn.1400e1db0
mov rbx, qword [rsp + 0x28]
lea rcx, [rbp - 0x69]
call fcn.1400d0d80
test al, al
jne 0x1400e14fd
lea rcx, [rbp - 0x69]
call fcn.1400e1e60
test r12, r12
je 0x1400e1518
mov rcx, rsi
call fcn.1400d4c50
mov r8, rbx
mov rdx, r12
mov rcx, rax
call fcn.1400e3940
call qword [sym.imp.VMProtectSDK64.dll_VMProtectEnd]
jmp 0x1400e15e3
mov dword [rsp + 0x20], r15d
call fcn.1400d4c50
mov r9, rbx
mov r8, qword [rsp + 0x48]
lea rdx, [rsp + 0x20]
mov rcx, rax
call fcn.1400e34d0
test al, al
jne 0x1400e154e
mov rcx, rsi
jmp 0x1400e14c8
lea rcx, [rbp - 0x51]
call fcn.1400ad2a0
mov rdi, rax
lea rcx, [rbp - 0x51]
call fcn.1400af080
mov rbx, rax
cmp rax, rdi
je 0x1400e15a3
nop dword [rax + rax]
mov rcx, rsi
call fcn.1400d4c50
mov r8d, dword [rbx + 4]
mov edx, dword [rbx]
mov rcx, rax
add rdx, r12
cmp byte [rbx + 0xc], 0
jne 0x1400e1595
mov r9d, dword [rbx + 8]
call fcn.1400e35b0
jmp 0x1400e159a
call fcn.1400e3940
add rbx, 0x10
cmp rbx, rdi
jne 0x1400e1570
mov r10d, dword [rsp + 0x20]
test r10d, r10d
jns 0x1400e15cf
lea rcx, [rsp + 0x50]
call fcn.1400e1740
mov rcx, rax
call fcn.1400bd7c0
mov edx, r10d
mov rcx, rax
call fcn.1400ef8d0
jmp 0x1400e14d9
lea rcx, [rbp - 0x51]
call fcn.1400e1db0
mov r15d, 1
jmp 0x1400e15e3
xor r15d, r15d
lea rcx, [rbp - 0x69]
call fcn.1400c67b0
mov eax, r15d
mov rcx, qword [rbp + 0x17]
xor rcx, rsp
call fcn.140239380
mov rbx, qword [rsp + 0x150]
add rsp, 0x100
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret