Function at 0x140300e50
Capabilities:
Encode data using xor

Disassembly:
test ecx, ecx
je 0x140300e9c
test edx, edx
je 0x140300eec
test r8d, r8d
je 0x140300f2c
movzx eax, byte [0x1404d3786]
cmp al, 0x88
je 0x140300e94
mov cl, 7
nop word cs:[rax + rax]
mov al, 0xbd
lock cmpxchg byte [0x1404d3786], cl
je 0x140301016
cmp al, 0x88
jne 0x140300e80
lea rax, [0x1404d3760]
ret
test edx, edx
je 0x140300f5c
test r8d, r8d
je 0x140300f99
test r9d, r9d
je 0x140301051
movzx eax, byte [0x1404d3703]
cmp al, 0x53
je 0x140300ee4
mov cl, 0xd1
nop word cs:[rax + rax]
mov al, 0x3a
lock cmpxchg byte [0x1404d3703], cl
je 0x1403011a9
cmp al, 0x53
jne 0x140300ed0
lea rax, [0x1404d3700]
ret
test r8d, r8d
je 0x140300fd9
movzx eax, byte [0x1404d36a5]
cmp al, 0xa5
je 0x140300f24
mov cl, 0x2a
nop word cs:[rax + rax]
mov al, 0xb9
lock cmpxchg byte [0x1404d36a5], cl
je 0x1403010c9
cmp al, 0xa5
jne 0x140300f10
lea rax, [0x1404d3690]
ret
movzx eax, byte [0x1404d3792]
cmp al, 3
je 0x140300f54
mov cl, 0xa6
nop dword [rax]
mov al, 0xf4
lock cmpxchg byte [0x1404d3792], cl
je 0x140301101
cmp al, 3
jne 0x140300f40
lea rax, [0x1404d3790]
ret
test r8d, r8d
je 0x140301089
test r9d, r9d
je 0x140301141
movzx eax, byte [0x1404d3642]
cmp al, 0x7c
je 0x140301279
mov cl, 0x31
nop
mov al, 0xb9
lock cmpxchg byte [0x1404d3642], cl
je 0x14030124b
cmp al, 0x7c
jne 0x140300f80
jmp 0x140301279
test r9d, r9d
je 0x140301179
movzx eax, byte [0x1404d374b]
cmp al, 0x86
je 0x1403012b9
mov cl, 0x29
nop word cs:[rax + rax]
mov al, 0x99
lock cmpxchg byte [0x1404d374b], cl
je 0x140301281
cmp al, 0x86
jne 0x140300fc0
jmp 0x1403012b9
movzx eax, byte [0x1404d37a2]
cmp al, 0x97
je 0x14030100e
mov cl, 0xe2
nop word cs:[rax + rax]
mov al, 0x60
lock cmpxchg byte [0x1404d37a2], cl
mov dword [0x1404f1b5c], 0
je 0x1403011e1
cmp al, 0x97
jne 0x140300ff0
lea rax, [0x1404d37a0]
ret
xor eax, eax
lea rcx, [0x1404d3760]
lea rdx, [0x1403e3bb0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x26
jl 0x140301030
mov al, 0x88
xchg byte [0x1404d3786], al
lea rax, [0x1404d3760]
ret
movzx eax, byte [0x1404d37bb]
cmp al, 0xe0
je 0x1403012f9
mov cl, 0x87
nop word cs:[rax + rax]
mov al, 0xc1
lock cmpxchg byte [0x1404d37bb], cl
je 0x1403012c1
cmp al, 0xe0
jne 0x140301070
jmp 0x1403012f9
test r9d, r9d
je 0x140301221
movzx eax, byte [0x1404d375f]
cmp al, 0xa4
je 0x140301339
mov cl, 0x6e
nop word cs:[rax + rax]
mov al, 0x9d
lock cmpxchg byte [0x1404d375f], cl
je 0x140301301
cmp al, 0xa4
jne 0x1403010b0
jmp 0x140301339
xor eax, eax
lea rcx, [0x1404d3690]
lea rdx, [0x1403e3ae0]
nop dword [rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x15
jl 0x1403010e0
mov al, 0xa5
xchg byte [0x1404d36a5], al
lea rax, [0x1404d3690]
ret
xor eax, eax
lea rcx, [0x1404d3790]
lea rdx, [0x1403e3be0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 2
jl 0x140301120
mov al, 3
xchg byte [0x1404d3792], al
lea rax, [0x1404d3790]
ret
movzx eax, byte [0x1404d3733]
cmp al, 0xd1
je 0x140301379
mov cl, 0x2a
nop word cs:[rax + rax]
mov al, 7
lock cmpxchg byte [0x1404d3733], cl
je 0x140301341
cmp al, 0xd1
jne 0x140301160
jmp 0x140301379
movzx eax, byte [0x1404d36ec]
cmp al, 0xa9
je 0x1403013b9
mov cl, 0xf2
nop word [rax + rax]
mov al, 0xe7
lock cmpxchg byte [0x1404d36ec], cl
je 0x140301381
cmp al, 0xa9
jne 0x140301190
jmp 0x1403013b9
xor eax, eax
lea rcx, [0x1404d3700]
lea rdx, [0x1403e3b50]
nop dword [rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 3
jl 0x1403011c0
mov al, 0x53
xchg byte [0x1404d3703], al
lea rax, [0x1404d3700]
ret
xor eax, eax
lea rcx, [0x1404d37a0]
lea rdx, [0x1403e3bf0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 2
jl 0x140301200
mov al, 0x97
xchg byte [0x1404d37a2], al
lea rax, [0x1404d37a0]
ret
movzx eax, byte [0x1404d3612]
cmp al, 0x5c
je 0x1403013ea
mov cl, 0xc8
mov al, 0xa9
lock cmpxchg byte [0x1404d3612], cl
je 0x1403013c1
cmp al, 0x5c
jne 0x140301232
jmp 0x1403013ea
xor eax, eax
lea rcx, [0x1404d3620]
lea rdx, [0x1403e3a80]
nop dword [rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x22
jl 0x140301260
mov al, 0x7c
xchg byte [0x1404d3642], al
lea rax, [0x1404d3620]
ret
xor eax, eax
lea rcx, [0x1404d3740]
lea rdx, [0x1403e3b90]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xb
jl 0x1403012a0
mov al, 0x86
xchg byte [0x1404d374b], al
lea rax, [0x1404d3740]
ret
xor eax, eax
lea rcx, [0x1404d37b0]
lea rdx, [0x1403e3c00]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xb
jl 0x1403012e0
mov al, 0xe0
xchg byte [0x1404d37bb], al
lea rax, [0x1404d37b0]
ret
xor eax, eax
lea rcx, [0x1404d3750]
lea rdx, [0x1403e3ba0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xf
jl 0x140301320
mov al, 0xa4
xchg byte [0x1404d375f], al
lea rax, [0x1404d3750]
ret
xor eax, eax
lea rcx, [0x1404d3710]
lea rdx, [0x1403e3b60]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x23
jl 0x140301360
mov al, 0xd1
xchg byte [0x1404d3733], al
lea rax, [0x1404d3710]
ret
xor eax, eax
lea rcx, [0x1404d36d0]
lea rdx, [0x1403e3b20]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x1c
jl 0x1403013a0
mov al, 0xa9
xchg byte [0x1404d36ec], al
lea rax, [0x1404d36d0]
ret
xor eax, eax
lea rcx, [0x1404d3610]
lea rdx, [0x1403e3a70]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 2
jl 0x1403013d1
mov al, 0x5c
xchg byte [0x1404d3612], al
lea rax, [0x1404d3610]
ret