Function at 0x1401d6f90
Capabilities:
Encode data using xor

Disassembly:
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x1f0
mov rax, qword [0x140276168]
xor rax, rsp
mov qword [rsp + 0x1e0], rax
mov r14, r9
mov esi, r8d
mov dword [rsp + 0x34], r8d
movsxd rbx, edx
mov dword [rsp + 0x38], ebx
mov r15, rcx
mov qword [rsp + 0x78], rcx
mov dword [rsp + 0x40], ebx
mov dword [rsp + 0x48], r8d
mov qword [rsp + 0x80], r9
lea rax, [rcx + 0xd8]
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x68], rax
mov byte [rsp + 0x70], 0
test rax, rax
je 0x1401d736f
mov rcx, rax
call fcn.14001dcc0
mov byte [rsp + 0x70], 1
xor r12b, r12b
mov byte [rsp + 0x30], r12b
mov rcx, r15
call fcn.1401d6c30
test al, al
je 0x1401d72b3
mov edi, 0xffffffff
mov dword [rsp + 0x3c], edi
xor r13d, r13d
mov edx, r13d
cmp edx, 4
jl 0x1401d7315
test edi, edi
js 0x1401d72b3
movzx edx, word [r15 + rbx*4 + 0xf8]
mov r8d, 0xa
mov rcx, qword [r15 + 0xf0]
call qword [case.0x1400c272e.46]
mov rbx, rax
test rax, rax
je 0x1401d72b3
mov rdx, rax
mov rcx, qword [r15 + 0xf0]
call qword [case.0x1400c272e.47]
test rax, rax
je 0x1401d72b3
mov rcx, rax
call qword [case.0x1400c272e.48]
mov r12, rax
mov rdx, rbx
mov rcx, qword [r15 + 0xf0]
call qword [case.0x1400c272e.50]
movsxd rsi, eax
mov dword [rsp + 0x50], esi
mov qword [rsp + 0x58], r13
lea ecx, [rsi + 1]
movsxd rcx, ecx
call fcn.1400c4378
mov rbx, rax
mov qword [rsp + 0x58], rax
mov ecx, r13d
lea rax, [rsp + 0xe0]
nop dword [rax + rax]
mov byte [rax], cl
inc ecx
lea rax, [rax + 1]
cmp ecx, 0x100
jl 0x1401d70d0
mov r10d, r13d
mov r8d, r13d
lea r9, [rsp + 0xe0]
lea r11, [0x1402316e0]
nop word [rax + rax]
movzx edx, byte [r9]
mov eax, r8d
and eax, 0xf
movzx ecx, dl
add cl, byte [rax + r11]
add cl, r10b
movzx r10d, cl
lea rcx, [rsp + 0xe0]
movzx eax, byte [rcx + r10]
mov byte [r9], al
mov byte [rcx + r10], dl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x100
jl 0x1401d7100
mov r10d, r13d
mov qword [rsp + 0x88], rsi
test rsi, rsi
jle 0x1401d71b1
mov r9, rbx
sub r12, rbx
mov r11, rsi
nop word [rax + rax]
inc r13b
movzx r13d, r13b
lea r8, [rsp + 0xe0]
movzx edx, byte [r8 + r13]
lea eax, [r10 + rdx]
movzx r10d, al
lea rcx, [rsp + 0xe0]
movzx eax, byte [rcx + r10]
mov byte [r8 + r13], al
mov byte [rcx + r10], dl
add dl, byte [r8 + r13]
movzx eax, dl
movzx ecx, byte [rsp + rax + 0xe0]
xor cl, byte [r12 + r9]
mov byte [r9], cl
lea r9, [r9 + 1]
sub r11, 1
jne 0x1401d7160
mov byte [rsi + rbx], 0
cmp edi, 3
jbe 0x1401d71cc
mov edx, SetWindowSubclass
lea rcx, str.WIN32WzOpenCL.c
call fcn.140015ac0
nop
jmp 0x1401d7206
movsxd rax, edi
lea rdx, [rax + rax*4]
lea rdi, [r15 + rdx*8]
lea r13, [rdi + 0x160]
movsxd r9, dword [rsp + 0x34]
add r9, r9
mov qword [rsp + 0x20], r13
mov r9, qword [r15 + r9*8 + 0x108]
mov r8, rsi
mov rdx, rbx
mov rcx, r15
call fcn.1401d6720
movzx r12d, al
mov byte [rsp + 0x30], al
test al, al
je 0x1401d727c
mov byte [rdi + 0x150], 1
mov eax, dword [rsp + 0x38]
mov dword [rdi + 0x154], eax
mov eax, dword [rsp + 0x34]
mov dword [rdi + 0x158], eax
test r14, r14
je 0x1401d727c
movups xmm0, xmmword [r13]
movups xmmword [r14], xmm0
movsd xmm1, qword [r13 + 0x10]
movsd qword [r14 + 0x10], xmm1
jmp 0x1401d7298
test rbx, rbx
je 0x1401d72b3
mov r8, rsi
xor edx, edx
mov rcx, rbx
call fcn.1400c7cf0
mov rcx, rbx
call fcn.1400c3d50
nop
mov eax, 0x80000000
mov rcx, qword [rsp + 0x60]
lock xadd dword [rcx], eax
bt eax, 0x1e
jb 0x1401d72ee
cmp eax, 0x80000000
jle 0x1401d72ee
mov rcx, qword [rsp + 0x68]
lock bts dword [rcx], 0x1e
jb 0x1401d72ee
mov rcx, qword [rsp + 0x68]
call fcn.140005a40
mov rcx, rax
call qword [case.0x1400c272e.60]
nop
movzx eax, r12b
mov rcx, qword [rsp + 0x1e0]
xor rcx, rsp
call fcn.1400c3d30
add rsp, 0x1f0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
ret
movsxd rax, edx
lea rcx, [rax + rax*4]
lea rax, [r15 + rcx*8]
cmp byte [rax + 0x150], r12b
je 0x1401d735f
cmp dword [rax + 0x154], ebx
jne 0x1401d7368
cmp dword [rax + 0x158], esi
jne 0x1401d7368
test r14, r14
je 0x1401d7357
movups xmm0, xmmword [rax + 0x160]
movups xmmword [r14], xmm0
movsd xmm1, qword [rax + 0x170]
movsd qword [r14 + 0x10], xmm1
mov r12b, 1
jmp 0x1401d72b3
test edi, edi
cmovs edi, edx
mov dword [rsp + 0x3c], edi
inc edx
jmp 0x1401d7033
lea r8, [0x1401f1630]
lea edx, [rax + 1]
lea rcx, [rsp + 0x90]
call fcn.1400192a0
nop
mov rcx, rax
call fcn.1400188c0
int3