Function at 0x140117de0
Capabilities:
Encode data using xor

Disassembly:
test ecx, ecx
je 0x140117e1c
test edx, edx
je 0x140117e5c
test r8d, r8d
je 0x140117e9c
movzx eax, byte [0x140428ead]
cmp al, 0x24
je 0x140117e14
mov cl, 0x1e
nop
mov al, 0x12
lock cmpxchg byte [0x140428ead], cl
je 0x140117f6c
cmp al, 0x24
jne 0x140117e00
lea rax, [0x140428ea0]
ret
test edx, edx
je 0x140117ecc
test r8d, r8d
je 0x140117f0c
movzx eax, byte [0x140428c29]
cmp al, 0x17
je 0x140117e54
mov cl, 0xba
nop word [rax + rax]
mov al, 0x85
lock cmpxchg byte [0x140428c29], cl
je 0x140117fd9
cmp al, 0x17
jne 0x140117e40
lea rax, [0x140428c20]
ret
test r8d, r8d
je 0x140117f3c
movzx eax, byte [0x140428ce8]
cmp al, 5
je 0x140117e94
mov cl, 0x6f
nop word cs:[rax + rax]
mov al, 0x81
lock cmpxchg byte [0x140428ce8], cl
je 0x140118011
cmp al, 5
jne 0x140117e80
lea rax, [0x140428cd0]
ret
movzx eax, byte [0x140428c15]
cmp al, 0x7b
je 0x140117ec4
mov cl, 0xe3
nop dword [rax]
mov al, 0x59
lock cmpxchg byte [0x140428c15], cl
je 0x140118051
cmp al, 0x7b
jne 0x140117eb0
lea rax, [0x140428c00]
ret
test r8d, r8d
je 0x140117fa1
movzx eax, byte [0x140428e6d]
cmp al, 0x71
je 0x140117f04
mov cl, 0x18
nop word cs:[rax + rax]
mov al, 0xeb
lock cmpxchg byte [0x140428e6d], cl
je 0x140118091
cmp al, 0x71
jne 0x140117ef0
lea rax, [0x140428e60]
ret
movzx eax, byte [0x140428ed2]
cmp al, 0x39
je 0x140117f34
mov cl, 0x1c
nop dword [rax]
mov al, 0xfd
lock cmpxchg byte [0x140428ed2], cl
je 0x1401180d1
cmp al, 0x39
jne 0x140117f20
lea rax, [0x140428ec0]
ret
movzx eax, byte [0x140428e2d]
cmp al, 0x75
je 0x140117f64
mov cl, 0xd7
nop dword [rax]
mov al, 0xce
lock cmpxchg byte [0x140428e2d], cl
je 0x140118111
cmp al, 0x75
jne 0x140117f50
lea rax, [0x140428e20]
ret
xor eax, eax
lea rcx, [0x140428ea0]
lea rdx, [0x140354710]
nop dword [rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x140117f80
mov al, 0x24
xchg byte [0x140428ead], al
lea rax, [0x140428ea0]
ret
movzx eax, byte [0x140428bad]
cmp al, 0xd8
je 0x140118189
mov cl, pe_nt_image_headers64
nop word cs:[rax + rax]
mov al, 0x86
lock cmpxchg byte [0x140428bad], cl
je 0x140118151
cmp al, 0xd8
jne 0x140117fc0
jmp 0x140118189
xor eax, eax
lea rcx, [0x140428c20]
lea rdx, [0x140354480]
nop dword [rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 9
jl 0x140117ff0
mov al, 0x17
xchg byte [0x140428c29], al
lea rax, [0x140428c20]
ret
xor eax, eax
lea rcx, [0x140428cd0]
lea rdx, [0x140354510]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x18
jl 0x140118030
mov al, 5
xchg byte [0x140428ce8], al
lea rax, [0x140428cd0]
ret
xor eax, eax
lea rcx, [0x140428c00]
lea rdx, [0x140354460]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x15
jl 0x140118070
mov al, 0x7b
xchg byte [0x140428c15], al
lea rax, [0x140428c00]
ret
xor eax, eax
lea rcx, [0x140428e60]
lea rdx, [0x1403546d0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x1401180b0
mov al, 0x71
xchg byte [0x140428e6d], al
lea rax, [0x140428e60]
ret
xor eax, eax
lea rcx, [0x140428ec0]
lea rdx, [0x140354730]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x12
jl 0x1401180f0
mov al, 0x39
xchg byte [0x140428ed2], al
lea rax, [0x140428ec0]
ret
xor eax, eax
lea rcx, [0x140428e20]
lea rdx, [0x140354690]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x140118130
mov al, 0x75
xchg byte [0x140428e2d], al
lea rax, [0x140428e20]
ret
xor eax, eax
lea rcx, [0x140428ba0]
lea rdx, [0x140354400]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x140118170
mov al, 0xd8
xchg byte [0x140428bad], al
lea rax, [0x140428ba0]
ret