Function at 0x140181bd0
Capabilities:
Encode data using xor

Disassembly:
push rsi
push rdi
push rbx
test ecx, ecx
je 0x140181ced
test edx, edx
je 0x140181d01
movzx eax, byte [0x1405070bd]
movzx ecx, byte [0x140507ae8]
mov edx, ecx
xor dl, 0x6b
and cl, 0x6b
add cl, cl
add cl, dl
cmp al, cl
je 0x140181e21
xor ecx, ecx
mov edx, 0x1fa1a892
lea r8, [fcn.140181bd0]
lea r9d, [r8 + r8]
add r9d, 0x4bc0
mov r10d, r9d
not r10d
mov r11b, 0xaa
jmp 0x140181c38
cmp al, 0x13
je 0x140181e21
test cl, cl
jne 0x140181c70
nop dword [rax]
movzx esi, byte [0x140507ae8]
lea eax, [rsi - 0x4f]
add sil, 2
lock cmpxchg byte [0x1405070bd], sil
sete bl
mov esi, dword [0x14055c0e0]
lea edi, [rsi - 1]
imul edi, esi
test dil, 1
je 0x140181c90
nop dword [rax]
mov al, 0x59
lock cmpxchg byte [0x1405070bd], r11b
cmp dword [0x140507ad8], 0xe05e576f
jne 0x140181c70
jmp 0x140181c40
test bl, bl
jne 0x140181d79
mov esi, dword [0x140507ad8]
add esi, edx
mov edi, r9d
xor edi, esi
not esi
and esi, r10d
or esi, edi
cmp esi, 0xffffffff
jne 0x140181ce0
nop word cs:[rax + rax]
mov esi, dword [0x140507ad8]
add esi, edx
lea edi, [r8 + r8]
add edi, 0x2a20
test edi, esi
je 0x140181c30
nop word [rax + rax]
mov esi, dword [0x14055c0e4]
cmp esi, 0x5a
jge 0x140181ce0
jmp 0x140181cc0
mov eax, dword [0x14055c0e4]
cmp eax, 0x26
jle 0x140181ef0
jmp 0x140181efd
lea rax, [fcn.140181bd0]
add eax, eax
add eax, 0x60
mov cl, 1
nop
mov edx, dword [0x14055c0e0]
lea r8d, [rdx - 1]
imul r8d, edx
test r8b, 1
jne 0x140181d48
movzx edx, byte [0x1405070a3]
mov r8d, dword [0x140507ad8]
lea r9d, [r8 + 0x1fa1a892]
and r9d, eax
add r8d, 0x1fa1a891
cmp r9d, r8d
je 0x140181d55
movzx edx, byte [0x1405070a3]
test cl, cl
je 0x140181d10
jmp 0x140181d24
cmp dl, 0x60
je 0x140181ff5
mov cl, 1
mov al, 0x37
lock cmpxchg byte [0x1405070a3], cl
je 0x140181e4f
cmp al, 0x60
jne 0x140181d60
jmp 0x140181ff5
xor eax, eax
lea rcx, [0x1405070b0]
lea rdx, [0x14042d070]
nop dword [rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
lea r8d, [rax + 1]
mov r9d, dword [0x140507ad8]
mov r10d, r9d
xor r10d, 0x1fa1a89e
and r9d, 0x1fa1a89e
lea r9d, [r10 + r9*2]
cmp r8d, r9d
jge 0x140181dc3
inc rax
jmp 0x140181d90
xor eax, eax
nop word cs:[rax + rax]
mov ecx, dword [0x14055c0e0]
lea edx, [rcx - 1]
imul edx, ecx
test dl, 1
je 0x140181dfa
mov cl, 0x13
xchg byte [0x1405070bd], cl
mov ecx, dword [0x14055c0e0]
lea edx, [rcx - 1]
imul edx, ecx
test dl, 1
jne 0x140181dd0
mov cl, 0x13
xchg byte [0x1405070bd], cl
test al, al
jne 0x140181de1
jmp 0x140181e21
mov eax, dword [0x14055c0e0]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
je 0x140181e32
mov eax, dword [0x14055c0e0]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
jne 0x140181e10
mov eax, dword [0x14055c0e0]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
jne 0x140181e10
lea rax, [0x1405070b0]
jmp 0x140181fb8
mov eax, 0x1fa1a892
lea rcx, [fcn.140181bd0]
add ecx, ecx
add ecx, 0x44a0
nop word cs:[rax + rax]
mov edx, dword [0x140507ad8]
add edx, eax
test ecx, edx
jne 0x140181e87
mov edx, dword [0x14055c0e4]
cmp edx, 0x54
jle 0x140181e94
mov edx, dword [0x14055c0e4]
cmp edx, 0x2a
jge 0x140181e70
jmp 0x140181e7c
xor edx, edx
lea rax, [0x140507090]
lea rcx, [0x14042d050]
nop word cs:[rax + rax]
movsxd rdx, edx
movzx r8d, byte [rdx + rcx]
add byte [rdx + rax], r8b
mov r8d, dword [0x140507ad8]
add edx, r8d
add edx, 0x1fa1a892
cmp edx, 0x13
jl 0x140181eb0
lea rax, [fcn.140181bd0]
add eax, eax
add eax, 0x45e0
mov ecx, eax
not ecx
test ecx, eax
jne 0x140181fe0
jmp 0x140181fbc
movzx eax, byte [0x140507049]
xor ecx, ecx
test cl, cl
je 0x140181f06
movzx eax, byte [0x140507049]
jmp 0x140181ef0
cmp al, 0x5c
je 0x140181f92
mov cl, 0x23
mov al, 0x35
lock cmpxchg byte [0x140507049], cl
je 0x140181f22
cmp al, 0x5c
jne 0x140181f10
jmp 0x140181f92
xor edx, edx
lea rax, [0x140507040]
lea rcx, [0x14042d000]
nop word cs:[rax + rax]
movsxd rdx, edx
movzx r8d, byte [rdx + rcx]
mov r9d, r8d
xor r9b, r8b
not r9b
and r9b, byte [rdx + rax]
xor r9b, r8b
mov byte [rdx + rax], r9b
mov r8d, dword [0x140507ad8]
lea r9d, [r8 + 0x1fa1a892]
mov r10d, edx
xor r10d, r9d
and edx, r9d
lea edx, [r10 + rdx*2]
add r8d, 0x1fa1a89a
cmp edx, r8d
jl 0x140181f40
movzx eax, byte [0x140507ae8]
add al, 0xb4
xchg byte [0x140507049], al
mov eax, dword [0x14055c0e4]
nop dword [rax + rax]
mov eax, dword [0x14055c0e0]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
jne 0x140181fa0
lea rax, [0x140507040]
pop rbx
pop rdi
pop rsi
ret
lea rax, [fcn.140181bd0]
add eax, eax
add eax, 0x4280
mov ecx, eax
not ecx
test ecx, eax
je 0x140181fed
nop word cs:[rax + rax]
mov eax, dword [0x14055c0e4]
cmp eax, 0xd
jge 0x140181fe0
jmp 0x140181fbc
mov al, 0x60
xchg byte [0x1405070a3], al
lea rax, [0x140507090]
jmp 0x140181fb8