Function at 0x140256380
Capabilities:
Encode data using xor

Disassembly:
push rsi
push rdi
sub rsp, 0x28
test ecx, ecx
je 0x1402563c9
test edx, edx
je 0x140256419
test r8d, r8d
je 0x140256459
movzx eax, byte [0x1404b6cac]
cmp al, 0xe9
je 0x140256579
mov cl, 0x75
nop dword [rax]
mov al, 0xe0
lock cmpxchg byte [0x1404b6cac], cl
je 0x140256549
cmp al, 0xe9
jne 0x1402563b0
jmp 0x140256579
test edx, edx
je 0x140256489
test r8d, r8d
je 0x1402564c9
test r9d, r9d
je 0x140256585
movzx eax, byte [0x1404b6d0b]
cmp al, 0x37
je 0x140256729
mov cl, 0xef
nop word cs:[rax + rax]
mov al, 0x93
lock cmpxchg byte [0x1404b6d0b], cl
je 0x1402566f9
cmp al, 0x37
jne 0x140256400
jmp 0x140256729
test r8d, r8d
je 0x140256509
test r9d, r9d
je 0x1402565b9
movzx eax, byte [0x1404b6bc5]
cmp al, 0x7d
je 0x140256769
mov cl, 0x18
nop dword [rax]
mov al, 0x96
lock cmpxchg byte [0x1404b6bc5], cl
je 0x140256735
cmp al, 0x7d
jne 0x140256440
jmp 0x140256769
movzx eax, byte [0x1404b6cc3]
cmp al, 0xa8
je 0x140256659
mov cl, 0x20
nop word [rax + rax]
mov al, 0xbd
lock cmpxchg byte [0x1404b6cc3], cl
je 0x140256629
cmp al, 0xa8
jne 0x140256470
jmp 0x140256659
test r8d, r8d
je 0x1402565e9
test r9d, r9d
je 0x140256665
movzx eax, byte [0x1404b6d9c]
cmp al, 0x4a
je 0x1402567d9
mov cl, 0xae
nop dword [rax]
mov al, 0x77
lock cmpxchg byte [0x1404b6d9c], cl
je 0x1402567a3
cmp al, 0x4a
jne 0x1402564b0
jmp 0x1402567d9
test r9d, r9d
je 0x140256699
movzx eax, byte [0x1404b6d7b]
cmp al, 0x4e
je 0x140256819
mov cl, 0xc5
nop word cs:[rax + rax]
mov al, 0xb
lock cmpxchg byte [0x1404b6d7b], cl
je 0x1402567e5
cmp al, 0x4e
jne 0x1402564f0
jmp 0x140256819
test r9d, r9d
je 0x1402566c9
movzx eax, byte [0x1404b6d52]
cmp al, 0xaa
je 0x140256859
mov cl, 0xe9
nop word cs:[rax + rax]
mov al, 0xa5
lock cmpxchg byte [0x1404b6d52], cl
je 0x140256825
cmp al, 0xaa
jne 0x140256530
jmp 0x140256859
xor eax, eax
lea rcx, [0x1404b6c90]
lea rdx, [0x1403ca240]
nop dword [rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x1c
jl 0x140256560
mov al, 0xe9
xchg byte [0x1404b6cac], al
lea rax, [0x1404b6c90]
jmp 0x140256a74
movzx eax, byte [0x1404b6b42]
cmp al, 0x31
je 0x140256899
mov cl, 0xd1
nop word cs:[rax + rax]
mov al, 0x8f
lock cmpxchg byte [0x1404b6b42], cl
je 0x140256865
cmp al, 0x31
jne 0x1402565a0
jmp 0x140256899
movzx eax, byte [0x1404b6cf3]
cmp al, 0x65
je 0x1402568d9
mov cl, 0xc6
nop word [rax + rax]
mov al, 0xd6
lock cmpxchg byte [0x1404b6cf3], cl
je 0x1402568a5
cmp al, 0x65
jne 0x1402565d0
jmp 0x1402568d9
test r9d, r9d
je 0x140256775
movzx eax, byte [0x1404b6b13]
cmp al, 0xa2
je 0x140256919
mov cl, 0xd1
nop word cs:[rax + rax]
mov al, 0x17
lock cmpxchg byte [0x1404b6b13], cl
je 0x1402568e5
cmp al, 0xa2
jne 0x140256610
jmp 0x140256919
xor eax, eax
lea rcx, [0x1404b6cc0]
lea rdx, [0x1403ca270]
nop dword [rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 3
jl 0x140256640
mov al, 0xa8
xchg byte [0x1404b6cc3], al
lea rax, [0x1404b6cc0]
jmp 0x140256a74
movzx eax, byte [0x1404b6c36]
cmp al, 0x42
je 0x140256959
mov cl, 0x2b
nop word cs:[rax + rax]
mov al, 0xe2
lock cmpxchg byte [0x1404b6c36], cl
je 0x140256925
cmp al, 0x42
jne 0x140256680
jmp 0x140256959
movzx eax, byte [0x1404b6b0a]
cmp al, 0x69
je 0x140256999
mov cl, 0x33
nop word [rax + rax]
mov al, 0xda
lock cmpxchg byte [0x1404b6b0a], cl
je 0x140256965
cmp al, 0x69
jne 0x1402566b0
jmp 0x140256999
movzx eax, byte [0x1404b6c73]
cmp al, 0xe0
je 0x1402569d9
mov cl, 0x55
nop word [rax + rax]
mov al, 0xc7
lock cmpxchg byte [0x1404b6c73], cl
je 0x1402569a5
cmp al, 0xe0
jne 0x1402566e0
jmp 0x1402569d9
xor eax, eax
lea rcx, [0x1404b6d00]
lea rdx, [0x1403ca2b0]
nop dword [rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xb
jl 0x140256710
mov al, 0x37
xchg byte [0x1404b6d0b], al
lea rax, [0x1404b6d00]
jmp 0x140256a74
xor eax, eax
lea rcx, [0x1404b6bb0]
lea rdx, [0x1403ca130]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x15
jl 0x140256750
mov al, 0x7d
xchg byte [0x1404b6bc5], al
lea rax, [0x1404b6bb0]
jmp 0x140256a74
movzx eax, byte [0x1404b6c88]
cmp al, 0x3f
je 0x140256a6d
mov esi, dword [rsp + 0x60]
mov cl, 0x19
mov al, 0x57
lock cmpxchg byte [0x1404b6c88], cl
je 0x1402569e5
cmp al, 0x3f
jne 0x14025678a
jmp 0x140256a6d
xor eax, eax
lea rcx, [0x1404b6d90]
lea rdx, [0x1403ca340]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xc
jl 0x1402567c0
mov al, 0x4a
xchg byte [0x1404b6d9c], al
lea rax, [0x1404b6d90]
jmp 0x140256a74
xor eax, eax
lea rcx, [0x1404b6d70]
lea rdx, [0x1403ca320]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xb
jl 0x140256800
mov al, 0x4e
xchg byte [0x1404b6d7b], al
lea rax, [0x1404b6d70]
jmp 0x140256a74
xor eax, eax
lea rcx, [0x1404b6d50]
lea rdx, [0x1403ca300]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 2
jl 0x140256840
mov al, 0xaa
xchg byte [0x1404b6d52], al
lea rax, [0x1404b6d50]
jmp 0x140256a74
xor eax, eax
lea rcx, [0x1404b6b30]
lea rdx, [0x1403ca0c0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x12
jl 0x140256880
mov al, 0x31
xchg byte [0x1404b6b42], al
lea rax, [0x1404b6b30]
jmp 0x140256a74
xor eax, eax
lea rcx, [0x1404b6cd0]
lea rdx, [0x1403ca280]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x23
jl 0x1402568c0
mov al, 0x65
xchg byte [0x1404b6cf3], al
lea rax, [0x1404b6cd0]
jmp 0x140256a74
xor eax, eax
lea rcx, [0x1404b6b10]
lea rdx, [0x1403ca0a0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 3
jl 0x140256900
mov al, 0xa2
xchg byte [0x1404b6b13], al
lea rax, [0x1404b6b10]
jmp 0x140256a74
xor eax, eax
lea rcx, [0x1404b6c20]
lea rdx, [0x1403ca1a0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x16
jl 0x140256940
mov al, 0x42
xchg byte [0x1404b6c36], al
lea rax, [0x1404b6c20]
jmp 0x140256a74
xor eax, eax
lea rcx, [0x1404b6b00]
lea rdx, [0x1403ca090]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xa
jl 0x140256980
mov al, 0x69
xchg byte [0x1404b6b0a], al
lea rax, [0x1404b6b00]
jmp 0x140256a74
xor eax, eax
lea rcx, [0x1404b6c70]
lea rdx, [0x1403ca1e0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 3
jl 0x1402569c0
mov al, 0xe0
xchg byte [0x1404b6c73], al
lea rax, [0x1404b6c70]
jmp 0x140256a74
cmp qword [0x1404efbe8], 0
jne 0x140256a44
mov r9d, esi
xor r9d, 0x5a3f60cb
mov ecx, 1
mov edx, 1
mov r8d, 4
call fcn.140255b60
mov rdi, rax
mov qword [0x1404efbe8], rax
xor esi, 0xe4c45713
lea rcx, [0x140255b30]
mov edx, esi
call fcn.140137f30
xor eax, eax
lea rcx, [0x1403ca220]
movzx edx, byte [rax + rcx]
mov byte [rdi + rax], dl
inc rax
cmp eax, 2
jle 0x140256a35
mov rax, qword [0x1404efbe8]
xor ecx, ecx
lea rdx, [0x1403ca230]
movzx r8d, byte [rcx + rdx]
xor byte [rax + rcx], r8b
inc rcx
cmp ecx, 3
jl 0x140256a54
mov al, 0x3f
xchg byte [0x1404b6c88], al
mov rax, qword [0x1404efbe8]
add rsp, 0x28
pop rdi
pop rsi
ret