Function at 0x140423554
Capabilities:
Encode data using xor

Disassembly:
push rsi
sar dx, 0x3e
xadd r9w, dx
mov rdx, qword [rcx]
adc r9b, 0xc0
setg sil
mov r9, qword [rcx + 0x18]
setno sil
test r14b, r14b
mov esi, dword [rdx + 4]
imul esi, dword [rdx]
jmp 0x14042357f
cmp dword [rdx + 0xc], 3
jmp 0x140423588
jne 0x1404236c5
test esi, esi
jmp 0x140423595
je 0x140423991
lea ecx, [rsi - 1]
jmp 0x1404235a3
cmp ecx, 3
jmp 0x1404235ab
jb 0x14042364c
mov ecx, esi
btr eax, 0x64
sal al, 0x76
and ecx, 0xfffffffc
nop dword [rax]
movzx edx, byte [r9]
cwde
inc eax
movzx eax, byte [r9 + 2]
cmc
mov byte [r9], al
cmova eax, eax
shr ah, 0xe0
mov byte [r9 + 2], dl
movzx eax, byte [r9 + 3]
movzx edx, byte [r9 + 5]
mov byte [r9 + 3], dl
xadd dx, dx
movsx rdx, r9w
or dh, bl
mov byte [r9 + 5], al
bsr dx, ax
movzx eax, byte [r9 + 6]
shr dx, 0xc2
sal edx, 0xdf
movzx edx, byte [r9 + 8]
clc
jmp 0x140423618
mov byte [r9 + 6], dl
sbb dh, al
clc
sub dl, ah
mov byte [r9 + 8], al
test r14b, bpl
movzx eax, byte [r9 + 9]
clc
movzx edx, byte [r9 + 0xb]
mov byte [r9 + 9], dl
cmp ax, 0x1eb7
mov byte [r9 + 0xb], al
add r9, 0xc
add ecx, 0xfffffffc
jne 0x1404235c0
test sil, 3
je 0x140423991
and esi, 3
mov dh, 0x66
lea rsi, [rsi + rsi*2]
btc edx, r12d
mov al, r10b
xor ecx, ecx
neg dh
nop word cs:[rax + rax]
movzx edx, byte [r9 + rcx]
btr ax, bp
movzx rax, dx
movzx eax, byte [r9 + rcx + 2]
test r15b, r11b
mov byte [r9 + rcx], al
clc
cmp r9, 0x2c305745
mov byte [r9 + rcx + 2], dl
jmp 0x1404236a5
add rcx, 3
stc
test r14w, si
jmp 0x1404236b3
cmp esi, ecx
jmp 0x1404236ba
jne 0x140423679
jmp 0x140423991
mov eax, dword [0x1400b9350]
shr ch, cl
mov rcx, qword gs:[0x58]
movzx dx, sil
movsx edx, r11w
shrd dx, bp, 0xc9
mov rax, qword [rcx + rax*8]
cwd
adc ch, 0x51
mov ecx, r11d
lea rcx, [rax + 0x18]
lea rdx, [0x1400b925c]
test r14w, 0xb49
jmp 0x14042370f
cmp byte [rax + 0x1c], 0
jmp 0x14042371b
cmovne rdx, rcx
cmp si, r10w
stc
cmp dword [rdx], 0
jmp 0x14042372c
je 0x14042386a
test esi, esi
jmp 0x140423739
je 0x140423991
mov r8d, esi
sub ecx, ecx
jmp 0x140423749
jmp 0x14042377b
movzx edx, byte [r9 + rcx*4 + 2]
jmp 0x140423759
mov byte [r9 + rcx*4], dl
mov byte [r9 + rcx*4 + 2], al
jmp 0x140423767
inc rcx
cmp bpl, bpl
jmp 0x140423772
cmp r8d, ecx
je 0x140423991
movzx r10d, byte [r9 + rcx*4 + 3]
rcl ah, cl
shl al, 0xe2
rol al, 0xc5
movzx eax, byte [r9 + rcx*4]
clc
cmp r11w, 0x7dec
test r10d, r10d
je 0x14042374e
movzx esi, al
mov r11d, r10d
rcr dl, 0x9d
shr r11d, 1
shr dl, 0x54
movzx edx, byte [r9 + rcx*4 + 2]
mov eax, edx
cmp r14w, 0x4da3
test r11b, 0x87
test r10w, r14w
shl eax, 8
sub eax, edx
add eax, r11d
xor edx, edx
div r10w
btr rdx, 0xe2
mov byte [r9 + rcx*4], al
or edx, 0x6675a2
xor ax, si
bsf ax, bx
movzx edx, byte [r9 + rcx*4 + 1]
xor rax, r14
adc ax, 0x56ce
shrd eax, r12d, 0xa2
mov eax, edx
cmp r9w, bx
cmc
shl eax, 8
jmp 0x14042380d
sub eax, edx
add eax, r11d
cmp r11b, dil
xor edx, edx
test bpl, 0x8d
test ebx, r8d
div r10w
jmp 0x14042382b
mov byte [r9 + rcx*4 + 1], al
test r8b, r10b
test dil, 0xa6
mov eax, esi
test rsi, 0x76aa6993
shl eax, 8
stc
sub eax, esi
test sil, dl
add eax, r11d
clc
test dil, r13b
xor edx, edx
div r10w
jmp 0x14042385b
mov byte [r9 + rcx*4 + 2], al
jmp 0x140423865
jmp 0x140423767
test esi, esi
je 0x140423991
lea eax, [rsi - 1]
clc
test spl, spl
cmp eax, 3
jb 0x140423922
mov ecx, esi
rol dx, cl
and ecx, 0xfffffffc
rcl ah, 0xc6
nop word cs:[rax + rax]
shld rdx, rdx, 0x74
shr ah, 7
btr rdx, 0xe4
movzx eax, byte [r9]
mov dx, bp
shl dh, 0x1e
and edx, eax
movzx edx, byte [r9 + 2]
mov byte [r9], dl
neg dx
mov byte [r9 + 2], al
cwde
clc
movzx eax, byte [r9 + 4]
cmc
movsx edx, dx
sub rdx, rdi
movzx edx, byte [r9 + 6]
cmp rsi, 0x9127741
mov byte [r9 + 4], dl
mov byte [r9 + 6], al
bt eax, r11d
xor ax, 0x73af
movzx eax, byte [r9 + 8]
movzx edx, byte [r9 + 0xa]
mov byte [r9 + 8], dl
bts rdx, r14
mov byte [r9 + 0xa], al
movzx eax, byte [r9 + 0xc]
and edx, r12d
movzx edx, byte [r9 + 0xe]
mov byte [r9 + 0xc], dl
mov byte [r9 + 0xe], al
add r9, 0x10
add ecx, 0xfffffffc
jne 0x1404238a5
test sil, 3
jmp 0x14042392b
je 0x140423991
and esi, 3
test rbx, 0x2a4f293a
cwd
xor ecx, ecx
movsx dx, r14b
not dl
rdtsc
nop word [rax + rax]
movzx edx, cx
movzx eax, byte [r9 + rcx*4]
movzx edx, r8w
movsx edx, r11w
movzx edx, byte [r9 + rcx*4 + 2]
jmp 0x140423969
mov byte [r9 + rcx*4], dl
jmp 0x140423972
mov byte [r9 + rcx*4 + 2], al
jmp 0x14042397c
inc rcx
jmp 0x140423984
cmp esi, ecx
jmp 0x14042398b
jne 0x140423951
pop rsi
jmp 0x140423997
ret