Function at 0x1403b4150
Capabilities:
Encode data using xor

Disassembly:
mov eax, 0xe9612b80
add eax, dword [0x14057aae8]
cmp ecx, eax
jne 0x1403b4199
test edx, edx
je 0x1403b41b0
movzx eax, byte [0x14057a633]
cmp al, 0x2a
je 0x1403b43ec
mov cl, 0xd3
nop word cs:[rax + rax]
mov al, 0xbf
lock cmpxchg byte [0x14057a633], cl
je 0x1403b42b9
cmp al, 0x2a
jne 0x1403b4180
jmp 0x1403b43ec
test edx, edx
je 0x1403b424b
xor eax, eax
test al, al
jne 0x1403b44b0
jmp 0x1403b449e
movzx eax, byte [0x14057a66d]
cmp al, 0xf3
je 0x1403b43e4
mov cl, 0x15
mov edx, 0xe9612b80
nop word cs:[rax + rax]
mov eax, dword [0x1405926fc]
cmp eax, 0x42
jg 0x1403b4230
nop dword [rax + rax]
mov al, 0xc4
lock cmpxchg byte [0x14057a66d], cl
sete r8b
mov r9d, dword [0x1405926f8]
lea r10d, [r9 - 1]
imul r10d, r9d
and r10d, 1
mov r9d, dword [0x14057aae8]
add r9d, edx
cmp r10d, r9d
jne 0x1403b4230
test r8b, r8b
jne 0x1403b433f
cmp al, 0xf3
jne 0x1403b41d0
jmp 0x1403b43e4
movzx r8d, byte [0x14057aaf8]
lea eax, [r8 + 0x3d]
add r8b, 0x8e
lock cmpxchg byte [0x14057a66d], r8b
jmp 0x1403b41e0
mov al, 1
nop dword [rax]
mov ecx, dword [0x1405926f8]
mov edx, dword [0x14057aae8]
neg edx
add edx, ecx
inc edx
imul edx, ecx
test dl, 1
jne 0x1403b427c
movzx ecx, byte [0x14057a69d]
mov edx, dword [0x1405926fc]
cmp edx, 0xf
jle 0x1403b4289
movzx ecx, byte [0x14057a69d]
test al, al
je 0x1403b4250
jmp 0x1403b426a
cmp cl, 0xf1
je 0x1403b43c2
mov cl, 0xb4
nop word cs:[rax + rax]
mov al, 0xff
lock cmpxchg byte [0x14057a69d], cl
je 0x1403b4368
cmp al, 0xf1
jne 0x1403b42a0
jmp 0x1403b43c2
xor edx, edx
lea rax, [0x14057a610]
lea rcx, [0x140471870]
nop dword [rax]
mov r8d, dword [0x14057aae8]
lea r9d, [r8 - 0x169ed480]
mov dword [0x1405926f8], r9d
movsxd rdx, edx
movzx r9d, byte [rdx + rcx]
add byte [rdx + rax], r9b
add edx, r8d
add edx, 0xe9612b81
cmp edx, 0x23
jl 0x1403b42d0
mov eax, dword [0x1405926fc]
nop word cs:[rax + rax]
mov eax, dword [0x1405926f8]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
jne 0x1403b4310
mov eax, dword [0x1405926fc]
mov ecx, 0xe9612bbc
add ecx, dword [0x14057aae8]
cmp eax, ecx
jl 0x1403b4415
jmp 0x1403b442e
xor eax, eax
lea rcx, [0x14057a660]
lea rdx, [0x1404718c0]
nop
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
lea r8d, [rax + 1]
cmp r8d, 0xc
jg 0x1403b43dc
inc rax
jmp 0x1403b4350
xor r8d, r8d
lea rax, [0x14057a690]
lea rcx, [0x1404718f0]
mov edx, 0xe9612b8d
nop
movsxd r8, r8d
movzx r9d, byte [r8 + rcx]
xor byte [r8 + rax], r9b
mov r9d, r8d
xor r9d, 1
and r8d, 1
lea r8d, [r9 + r8*2]
mov r9d, dword [0x14057aae8]
add r9d, edx
cmp r8d, r9d
jl 0x1403b4380
movzx eax, byte [0x14057aaf8]
mov ecx, eax
xor cl, 0x6a
and al, 0x6a
add al, al
add al, cl
xchg byte [0x14057a69d], al
mov eax, dword [0x1405926f8]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
jne 0x1403b448c
jmp 0x1403b447b
mov al, 0xf3
xchg byte [0x14057a66d], al
lea rax, [0x14057a660]
ret
mov eax, dword [0x1405926fc]
cmp eax, 0x51
jg 0x1403b4400
mov al, 1
test al, al
jne 0x1403b440d
nop dword [rax]
mov eax, dword [0x1405926fc]
cmp eax, 0x58
jge 0x1403b4400
jmp 0x1403b43f7
lea rax, [0x14057a610]
ret
mov al, 0x2a
xchg byte [0x14057a633], al
mov eax, dword [0x1405926f8]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
je 0x1403b43ec
mov eax, 0xe9612b81
lea rcx, [fcn.1403b4150]
add ecx, ecx
add ecx, 0x1880
mov edx, ecx
not edx
nop word cs:[rax + rax]
mov r8b, 0x2a
xchg byte [0x14057a633], r8b
mov r8d, dword [0x14057aae8]
add r8d, eax
mov r9d, ecx
xor r9d, r8d
not r8d
and r8d, edx
or r8d, r9d
cmp r8d, 0xffffffff
jne 0x1403b4450
jmp 0x1403b4415
mov eax, dword [0x1405926f8]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
je 0x1403b4496
mov al, 1
nop
test al, al
je 0x1403b4490
jmp 0x1403b447b
lea rax, [0x14057a690]
ret
movzx eax, byte [0x14057a6b9]
mov ecx, dword [0x1405926fc]
cmp ecx, 0x16
jl 0x1403b44d3
movzx eax, byte [0x14057a6b9]
mov eax, dword [0x1405926f8]
mov ecx, dword [0x14057aae8]
neg ecx
add ecx, eax
inc ecx
imul ecx, eax
test cl, 1
jne 0x1403b44b0
jmp 0x1403b449e
cmp al, 0x96
je 0x1403b4570
mov cl, 0xd5
nop dword [rax]
mov al, 0x61
lock cmpxchg byte [0x14057a6b9], cl
je 0x1403b44f2
cmp al, 0x96
jne 0x1403b44e0
jmp 0x1403b4570
xor edx, edx
lea rax, [0x14057a6a0]
lea rcx, [0x140471900]
nop word cs:[rax + rax]
movsxd rdx, edx
movzx r8d, byte [rdx + rcx]
add byte [rdx + rax], r8b
mov r8d, dword [0x14057aae8]
add edx, r8d
add edx, 0xe9612b81
cmp edx, 0x18
jle 0x1403b4510
mov al, 1
nop word cs:[rax + rax]
mov ecx, dword [0x1405926fc]
cmp ecx, 0xf
jle 0x1403b4557
mov cl, 0x96
xchg byte [0x14057a6b9], cl
test al, al
je 0x1403b4540
mov cl, 0x96
xchg byte [0x14057a6b9], cl
mov ecx, dword [0x1405926f8]
lea edx, [rcx - 1]
imul edx, ecx
test dl, 1
jne 0x1403b454b
lea rax, [0x14057a6a0]
ret