Function at 0x1400034d0
Capabilities:
Encode data using xor

Disassembly:
push rsi
push rbx
sub rsp, 0xc8
mov word [rsp + 0xae], 0x3f9e
mov al, byte [rsp + 0x9f]
mov r8b, al
add r8b, 0xc0
mov byte [rsp + 0x9f], r8b
mov r9w, word [rsp + 0xae]
mov qword [rsp + 0x50], rdx
mov qword [rsp + 0x48], rcx
mov byte [rsp + 0x47], al
mov word [rsp + 0x44], r9w
call fcn.140001340
mov rcx, qword [rsp + 0x90]
mov rdx, rcx
add rdx, 0x5f34d374
mov rax, qword [rax + 0x18]
mov qword [rsp + 0x90], rdx
mov r10d, dword [rsp + 0x70]
mov r9w, word [rsp + 0x44]
cmp r9w, 0xf420
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x30], rcx
mov dword [rsp + 0x2c], r10d
jb 0x140003795
mov dword [rsp + 0x5c], 0
jmp 0x1400035f1
mov eax, dword [rsp + 0x2c]
imul ecx, eax, 0x632e97ab
mov rdx, qword [rsp + 0x50]
cmp rdx, 0
setne r8b
mov dword [rsp + 0x70], ecx
and r8b, 1
mov byte [rsp + 0x6f], r8b
mov r9w, word [rsp + 0x44]
mov word [rsp + 0x76], r9w
mov r10, qword [rsp + 0x60]
mov qword [rsp + 0xc0], r10
jmp 0x14000367f
mov al, byte [rsp + 0x47]
or al, al
mov byte [rsp + 0x9f], al
mov rcx, qword [rsp + 0x78]
add rcx, 0xfffffffffffffff0
mov qword [rsp + 0xb8], rcx
jmp sym.SYSDM.CPL_EnableExecuteProtectionSupportW
mov eax, dword [rsp + 0x5c]
mov ecx, eax
mov edx, ecx
mov r8, qword [rsp + 0x80]
mov r9w, word [r8 + rdx*2]
mov r10w, r9w
add r10w, 0xffbf
mov r11w, r9w
add r11w, 0x20
cmp r10w, 0x1a
cmovb r9w, r11w
mov r8, qword [rsp + 0x48]
cmp word [r8 + rdx*2], r9w
sete bl
and bl, 1
mov byte [rsp + 0x8f], bl
mov r10w, word [rsp + 0x44]
xor r10w, 0xffff
mov bl, byte [rsp + 0x8f]
add eax, 1
mov ecx, dword [rsp + 0x58]
cmp r9w, 0
setne sil
and bl, sil
mov word [rsp + 0x76], r10w
cmp eax, ecx
setb sil
and bl, sil
mov dword [rsp + 0x5c], eax
test bl, 1
jne 0x1400035f1
jmp 0x140003773
movabs rax, 0x1a1e114c715c1fa2
mov rcx, qword [rsp + 0xc0]
mov qword [rsp + 0x78], rcx
mov dx, word [rsp + 0x44]
add dx, 0x4aa2
mov word [rsp + 0x76], dx
mov rcx, qword [rsp + 0x78]
mov r8d, dword [rsp + 0x2c]
xor r8d, 0x282cadb6
mov dword [rsp + 0x70], r8d
mov rcx, qword [rcx + 0x50]
mov qword [rsp + 0x90], 0x4355b145
mov qword [rsp + 0x80], rcx
mov rcx, qword [rsp + 0x78]
mov qword [rsp + 0x90], rax
mov rax, qword [rcx + 0x20]
mov byte [rsp + 0x9f], 0xe0
mov qword [rsp + 0xa0], rax
mov rax, qword [rsp + 0x30]
xor rax, 0xffffffffffffffff
mov rcx, qword [rsp + 0xa0]
mov qword [rsp + 0x90], rax
mov rax, qword [rsp + 0x50]
cmp rcx, rax
sete r9b
mov r10b, byte [rsp + 0x6f]
mov byte [rsp + 0x9f], 0xea
mov r11b, byte [rsp + 0x47]
sub r11b, 0xaa
and r10b, r9b
mov byte [rsp + 0x9f], r11b
test r10b, 1
jne 0x1400035ce
mov qword [rsp + 0x90], 0x1975387b
mov rax, qword [rsp + 0x78]
mov cx, word [rax + 0x48]
shr cx, 1
movzx edx, cx
mov dword [rsp + 0x58], edx
cmp cx, 0
je 0x1400037f9
jmp 0x14000355f
mov rax, qword [rsp + 0xa0]
mov cl, byte [rsp + 0x8f]
mov qword [rsp + 0xb8], rax
test cl, 1
jne sym.SYSDM.CPL_EnableExecuteProtectionSupportW
jmp 0x1400037f9
mov ax, word [rsp + 0x44]
add ax, 0x31c7
mov rcx, qword [rsp + 0x38]
add rcx, 0x20
mov word [rsp + 0x76], ax
mov qword [rsp + 0xb0], rcx
mov rcx, qword [rsp + 0xb0]
mov dl, byte [rsp + 0x47]
and dl, 0x20
mov rcx, qword [rcx]
mov byte [rsp + 0x9f], dl
mov qword [rsp + 0x60], rcx
mov rcx, qword [rsp + 0x60]
mov r8, qword [rsp + 0xb0]
mov qword [rsp + 0xb8], 0
cmp rcx, r8
je sym.SYSDM.CPL_EnableExecuteProtectionSupportW
jmp 0x14000358c
mov rax, qword [rsp + 0x78]
mov rcx, qword [rsp + 0xb0]
mov rax, qword [rax]
mov qword [rsp + 0xc0], rax
add byte [rax - 0x39], cl
test byte [rax + rdi*4], ah
add byte [rax], al
add byte [rax], al
add byte [rax], al
add byte [rax + 0x39], cl
enter 0xffffffffffff840f, 0x46
std
invalid
invalid
jmp 0x14000367f