Function at 0x140350170
Capabilities:
Encode data using xor

Disassembly:
mov eax, 0x27f7a550
add eax, dword [0x1404df1c0]
lea r8, [fcn.140350170]
add r8d, r8d
add r8d, 0x4420
test r8d, eax
jne 0x1403501a0
mov al, 1
test al, al
jne 0x1403501ad
nop word [rax + rax]
mov eax, dword [0x1404f34c4]
cmp eax, 0x27
jge 0x1403501a0
jmp 0x140350191
test ecx, ecx
je 0x1403501e9
test edx, edx
je 0x14035021c
movzx eax, byte [0x1404de62d]
movzx ecx, byte [0x1404df1c4]
add cl, 0x25
cmp al, cl
je 0x1403504fe
mov cl, 0x97
mov al, 0xf8
lock cmpxchg byte [0x1404de62d], cl
je 0x1403502ac
cmp al, 0xfa
jne 0x1403501d0
jmp 0x1403504fe
test edx, edx
je 0x140350278
movzx eax, byte [0x1404de4ed]
cmp al, 0xd3
je 0x140350214
mov cl, 0x2e
nop
mov al, 0x92
lock cmpxchg byte [0x1404de4ed], cl
je 0x14035031d
cmp al, 0xd3
jne 0x140350200
lea rax, [0x1404de4e0]
ret
movzx eax, byte [0x1404de3fc]
cmp al, 0xdd
je 0x1403503e0
mov cl, 0xd2
xor edx, edx
mov r8b, 1
jmp 0x140350248
cmp al, 0xdd
je 0x1403503e0
mov al, 0x31
lock cmpxchg byte [0x1404de3fc], cl
je 0x14035039b
nop dword [rax + rax]
test dl, dl
jne 0x140350271
mov r9d, dword [0x1404f34c4]
cmp r9d, 0x2f
jle 0x140350240
test r8b, r8b
je 0x140350260
jmp 0x140350264
movzx eax, byte [0x1404de26c]
cmp al, 1
je 0x1403502a4
mov cl, 0x87
nop word cs:[rax + rax]
mov al, 0x2c
lock cmpxchg byte [0x1404de26c], cl
je 0x1403503e8
cmp al, 1
jne 0x140350290
lea rax, [0x1404de260]
ret
mov eax, dword [0x1404f34c4]
nop word cs:[rax + rax]
mov eax, dword [0x1404f34c4]
cmp eax, 0xe
jg 0x1403502c0
xor eax, eax
lea rcx, [0x1404de620]
lea rdx, [0x1403ed990]
nop dword [rax + rax]
movzx r8d, byte [rax + rdx]
mov r9d, r8d
xor r9b, r8b
not r9b
and r9b, byte [rax + rcx]
xor r9b, r8b
mov byte [rax + rcx], r9b
lea r8d, [rax + 1]
cmp r8d, 0xc
jg 0x140350308
inc rax
jmp 0x1403502e0
cmp dword [0x1404df1c0], 0xd8085ab1
jne 0x1403504c0
jmp 0x140350491
xor edx, edx
lea rax, [0x1404de4e0]
lea rcx, [0x1403ed850]
nop dword [rax]
movsxd rdx, edx
movzx r8d, byte [rdx + rax]
movzx r9d, byte [rdx + rcx]
mov r10d, r8d
xor r10b, r9b
and r8b, r9b
add r8b, r8b
add r8b, r10b
mov byte [rdx + rax], r8b
mov r8d, dword [0x1404df1c0]
add edx, r8d
add edx, 0x27f7a550
add r8d, 0x27f7a55c
cmp edx, r8d
jl 0x140350330
mov eax, dword [0x1404f34c4]
nop word cs:[rax + rax]
mov eax, dword [0x1404f34c4]
cmp eax, 0x43
jg 0x140350380
mov al, 0xd3
xchg byte [0x1404de4ed], al
lea rax, [0x1404de4e0]
ret
xor eax, eax
lea rcx, [0x1404de3f0]
lea rdx, [0x1403ed760]
nop dword [rax + rax]
movzx r8d, byte [rax + rdx]
mov r9d, r8d
xor r9b, r8b
not r9b
and r9b, byte [rax + rcx]
xor r9b, r8b
mov byte [rax + rcx], r9b
lea r8d, [rax + 1]
cmp r8d, 0xb
jg 0x1403503d8
inc rax
jmp 0x1403503b0
mov al, 0xdd
xchg byte [0x1404de3fc], al
lea rax, [0x1404de3f0]
ret
xor eax, eax
lea rcx, [0x1404de260]
lea rdx, [0x1403ed5d0]
nop dword [rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
lea r8d, [rax + 1]
cmp r8d, 0xb
jg 0x140350418
inc rax
jmp 0x140350400
mov eax, dword [0x1404f34c4]
nop
mov eax, dword [0x1404f34c0]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
jne 0x140350420
xor eax, eax
nop word cs:[rax + rax]
test al, al
jne 0x140350469
movzx ecx, byte [0x1404df1c4]
add cl, 0x2c
xchg byte [0x1404de26c], cl
mov ecx, dword [0x1404f34c0]
lea edx, [rcx - 1]
imul edx, ecx
test dl, 1
je 0x1403502a4
mov cl, 1
xchg byte [0x1404de26c], cl
mov ecx, dword [0x1404f34c0]
mov edx, dword [0x1404df1c0]
neg edx
add edx, ecx
add edx, 0xd8085ab0
imul edx, ecx
test dl, 1
jne 0x140350440
jmp 0x140350444
mov eax, dword [0x1404f34c4]
mov ecx, dword [0x1404df1c0]
mov edx, ecx
xor edx, 0x27f7a56d
and ecx, 0x27f7a56d
lea ecx, [rdx + rcx*2]
cmp eax, ecx
jl 0x1403504d3
nop word cs:[rax + rax]
mov eax, dword [0x1404f34c0]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
jne 0x1403504c0
jmp 0x140350491
mov al, 0xfa
xchg byte [0x1404de62d], al
jmp 0x1403504fe
mov eax, dword [0x1404f34c0]
mov ecx, dword [0x1404df1c0]
neg ecx
add ecx, eax
add ecx, 0xd8085ab0
imul ecx, eax
test cl, 1
je 0x14035050a
cmp dword [0x1404df1c0], 0xd8085ab1
jne 0x1403504e0
mov eax, dword [0x1404f34c4]
cmp eax, 0x40
jg 0x1403504e0
lea rax, [0x1404de620]
ret