Function at 0x14045b407
Capabilities:
Encode data using xor

Disassembly:
push rbp
seta bpl
or ax, 0x7c7d
or al, r8b
push rbx
rcl bpl, cl
adc bp, 0x3968
push rsi
push rdi
cmc
btc di, sp
bswap rbp
push r12
shr al, 0xf
adc di, 0x5597
bsf ax, bp
push r13
push r14
sbb rax, 0x28354568
bsr di, r10w
push r15
sal r14d, cl
mov rbp, rsp
mov al, 0x13
add r13, 0x21877cf3
btr edi, edi
sub rsp, 0x78
add r13b, 0xe7
bswap r13d
or r14b, 0xbf
mov rax, qword [0x1400b7288]
rcr r13w, cl
test di, ax
movzx rdi, cx
xor rax, rsp
movsx r14w, sil
neg r13b
mov qword [rbp - 0x10], rax
mov r13, r9
movzx rdi, bp
ror dil, cl
mov r14, r8
movsx r15d, bp
setp dil
xadd dil, dil
mov qword [rbp - 0x48], rdx
sbb dil, dl
xadd di, di
sal dil, cl
mov rdi, rcx
bsf r15d, r11d
ror r15b, 0x78
bt r15w, dx
mov r15d, 1
test r13d, r13d
sub r8d, r8d
clc
cmp byte [r9], r8b
jmp 0x14045b4d5
je 0x14045b510
mov dl, byte [r9]
mov rcx, r9
bt ax, sp
lea rax, [r14 + 1]
cmp dl, byte [r9]
cmovne rax, r14
not dl
neg r14w
xor r14w, 0x4c90
mov r14, rax
add dl, r14b
lea rcx, [rcx + r15]
mov dl, byte [rcx]
test dl, dl
jne 0x14045b4e5
xorps xmm0, xmm0
movups xmmword [rbp - 0x30], xmm0
mov qword [rbp - 0x20], r8
jmp 0x14045b524
mov qword [rbp - 0x18], r8
dec r8b
sal ch, cl
mov r8, r14
sal ch, cl
or cx, 0x7d5d
sar ecx, cl
xor edx, edx
mov cl, spl
lea rcx, [rbp - 0x30]
jmp 0x14045b547
call fcn.14045c240
nop
mov cl, r15b
jmp 0x14045b555
call fcn.14044dc75
mov rbx, rax
seta cl
mov qword [rbp - 0x38], rax
movzx cx, r11b
movzx ecx, r8w
not ecx
lea rcx, [rbp - 0x40]
jmp 0x14045b578
call fcn.14044f7e0
mov qword [rbp - 0x40], rax
test rbx, rbx
je 0x14045b5e9
mov rcx, qword [rbx]
nop
bswap rax
mov rax, qword [rcx + 0x10]
movsx ecx, r12w
mov rcx, rbx
call qword [case.0x1404cf978.0]
mov r8, rax
test r15b, r11b
test r9b, 0x70
test rax, rax
jmp 0x14045b5b4
je 0x14045b5e9
mov rcx, qword [rax]
bswap eax
cwd
cbw
mov rax, qword [rcx]
bswap dx
movsx rcx, bp
movzx dx, r9b
mov edx, r15d
xchg rcx, rcx
movsxd rcx, ebp
mov rcx, r8
jmp 0x14045b5e3
call qword [case.0x1404cf978.0]
sub cl, cl
movzx r8, di
mov byte [rbp - 0x58], cl
btc bx, 0xd2
ror r8b, 0x22
xor esi, esi
xor r8d, r14d
test r9, r10
bt rbx, rbp
sub r12d, r12d
xchg r8w, r8w
mov dword [rbp - 0x54], 0xfffffffe
rcl bx, 0xdb
sbb r8d, 0x52187f50
shl r8b, 0xee
mov r8, r15
btc ebx, 0x88
and bh, 0x6c
neg bh
mov qword [rbp - 0x50], r15
mov r15, qword [rbp - 0x18]
test r14w, 0x68f2
mov rbx, qword [rbp - 0x30]
cmp r8b, 0x54
test r14, r14
jmp 0x14045b64e
jne 0x14045b738
cmp r15, 0x10
jmp 0x14045b65d
jb 0x14045b6bd
lea rdx, [r15 + 1]
xadd rax, rax
sbb rax, 0x642711c8
xor rax, 0x63cc5f32
mov rax, rbx
cmp rdx, 0x1000
jb 0x14045b6b0
add rdx, 0x27
test r9b, 0xd8
cmp r12b, 0x82
mov rbx, qword [rbx - 8]
sub rax, rbx
cmc
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jmp 0x14045b6aa
ja 0x14045ba91
mov rcx, rbx
jmp 0x14045b6b8
call fcn.14012e38b
mov eax, dword [rbp - 0x54]
movsx rcx, r12w
stc
mov rcx, qword [rbp - 0x10]
stc
test r9b, dl
xor rcx, rsp
call fcn.1404a3d69
add rsp, 0x78
movsx si, r8b
jmp 0x14045b6e7
pop r15
pop r14
movzx rdi, r13w
cmovo di, sp
pop r13
movsx rsi, bp
movzx rbp, si
pop r12
movzx rbp, cx
movsx bx, dl
pop rdi
xchg rbx, rsi
mov bx, 0x6b6
cmovbe bx, r14w
pop rsi
setns bpl
pop rbx
pop rbp
jmp 0x14045b720
ret
cmp al, byte [r13]
jmp 0x14045b72a
je 0x14045b74a
inc rsi
mov al, 0xad
adc al, r15b
mov al, byte [rsi + r13]
clc
test al, al
jmp 0x14045b744
jne 0x14045b721
lea rax, [rbp - 0x30]
cmp r15, 0x10
setae cl
mov byte [rbp - 0x56], cl
cmovae rax, rbx
cmp byte [rax + r12], 0
jmp 0x14045b766
je 0x14045b795
lea rax, [rbp - 0x30]
cmp r10w, r15w
test cl, cl
jmp 0x14045b77b
cmovne rax, rbx
movsx rax, byte [rax + r12]
test ax, 0x2c6d
add rsi, rax
jmp 0x14045b790
jmp 0x14045ba0a
lea rsi, [rsi + r8]
sub al, 0x7b
mov al, byte [rsi + r13]
cmp al, byte [r13]
je 0x14045b9b6
test al, al
je 0x14045b9b6
mov rdx, qword [rbp - 0x48]
mov rcx, rdi
call fcn.1404576a1
test al, al
jne 0x14045b9a4
cmp byte [rbp + 0x68], 1
jmp 0x14045b7ce
jne 0x14045b882
cmp byte [rdi + 8], al
jne 0x14045b867
mov rcx, qword [rdi]
stc
jmp 0x14045b7e9
test rcx, rcx
jmp 0x14045b7f1
je 0x14045b85d
mov rax, qword [rcx + 0x38]
sal dx, 0xff
bts rdx, r9
btr edx, 0x51
mov rdx, qword [rax]
test rdx, rdx
jmp 0x14045b812
je 0x14045b835
mov rax, qword [rcx + 0x50]
cmp r13b, cl
cmp dword [rax], 0
jmp 0x14045b827
jle 0x14045b835
movzx eax, byte [rdx]
jmp 0x14045b847
mov rax, qword [rcx]
jmp 0x14045b83d
mov rax, qword [rax + 0x30]
call qword [case.0x1404cf978.0]
cmp eax, 0xffffffff
jmp 0x14045b84f
je 0x14045b85d
mov byte [rdi + 9], al
jmp 0x14045b863
and qword [rdi], 0
add al, 0x82
mov byte [rdi + 8], 1
mov al, byte [rdi + 9]
xor ecx, ecx
test r12d, 0x17791bb1
stc
jmp 0x14045b879
cmp byte [rsi + r13], al
jmp 0x14045b974
mov rcx, qword [rbp - 0x40]
cmovnp ax, dx
mov rax, qword [rcx]
mov dl, byte [rsi + r13]
jmp 0x14045b896
mov rax, qword [rax + 0x20]
jmp 0x14045b89f
call qword [case.0x1404cf978.0]
mov byte [rbp - 0x57], al
cmp r11b, r11b
jmp 0x14045b8b0
cmp byte [rdi + 8], 0
jmp 0x14045b8b9
jne 0x14045b947
mov rdx, qword [rdi]
stc
test rdx, rdx
jmp 0x14045b8cb
je 0x14045b937
mov rcx, qword [rdx + 0x38]
mov r8, qword [rcx]
stc
test r8, r8
je 0x14045b903
mov rcx, qword [rdx + 0x50]
clc
cmp dword [rcx], 0
jmp 0x14045b8ef
jle 0x14045b903
movzx eax, byte [r8]
jmp 0x14045b8fe
jmp 0x14045b921
mov rax, qword [rdx]
movsx ecx, r15w
movsx cx, r12b
mov rcx, rdx
mov rax, qword [rax + 0x30]
jmp 0x14045b91b
call qword [case.0x1404cf978.0]
cmp eax, 0xffffffff
je 0x14045b937
mov byte [rdi + 9], al
jmp 0x14045b932
jmp 0x14045b943
and qword [rdi], 0
mov ch, 0xc0
jmp 0x14045b943
mov byte [rdi + 8], 1
mov rcx, qword [rbp - 0x40]
bswap eax
lahf
mov rax, qword [rcx]
mov dl, byte [rdi + 9]
jmp 0x14045b959
mov rax, qword [rax + 0x20]
jmp 0x14045b962
call qword [case.0x1404cf978.0]
sub ecx, ecx
cmp byte [rbp - 0x57], al
sete cl
not cl
xchg cl, cl
setne cl
test ecx, ecx
jmp 0x14045b97e
jne 0x14045b9a4
mov cl, 1
bswap r8w
not r8w
mov byte [rbp - 0x58], cl
movsx r8w, bl
mov r8, qword [rbp - 0x50]
jmp 0x14045b99f
jmp 0x14045ba12
cmp byte [rbp - 0x56], 0
mov r8, qword [rbp - 0x50]
jmp 0x14045b9b1
jmp 0x14045b9c8
test cl, cl
movsxd r15, r11d
cdqe
movzx rdx, sp
mov dword [rbp - 0x54], r12d
cdq
cwd
lea rdx, [rbp - 0x30]
movzx ecx, r12w
movzx r15w, r14b
cmovne rdx, rbx
test sil, 0x1b
shl eax, cl
inc bl
mov ecx, 0x7f
cmp r8, rcx
movsx ax, r8b
movzx eax, r8b
cmovb ecx, eax
mov byte [rdx + r12], cl
mov cl, r10b
movsxd r15, r12d
movzx ebx, di
mov rbx, qword [rbp - 0x30]
mov r15, qword [rbp - 0x18]
mov cl, byte [rbp - 0x58]
jmp 0x14045ba12
inc r12
test r8w, r8w
cmp r12, r14
jb 0x14045b738
test cl, cl
jmp 0x14045ba29
je 0x14045b654
mov rdx, qword [rbp - 0x48]
mov rcx, rdi
jmp 0x14045ba3b
call fcn.1404576a1
test al, al
jmp 0x14045ba47
jne 0x14045b654
inc qword [rbp - 0x50]
mov rcx, rdi
jmp 0x14045ba59
call fcn.14045788e
or dword [rbp - 0x54], 0xffffffff
movsx r8w, dl
mov byte [rbp - 0x58], 0
cmp ah, 2
ror r8b, cl
sub esi, esi
and r8b, bpl
test r15b, bpl
ror r8, cl
xor r12d, r12d
movsx r8d, dx
movsx r8w, bl
mov r8, qword [rbp - 0x50]
jmp 0x14045b738
call fcn.1404ba2d1
int3