Function at 0x1401fa0c0
Capabilities:
Encode data using xor

Disassembly:
push rsi
push rdi
push rbx
sub rsp, 0x30
test ecx, ecx
je 0x1401fa119
mov esi, dword [rsp + 0x70]
test edx, edx
je 0x1401fa169
test r8d, r8d
je 0x1401fa1a9
test r9d, r9d
je 0x1401fa229
movzx eax, byte [0x1404ab9e5]
cmp al, 0xb3
je 0x1401fa439
mov cl, 0x81
nop word [rax + rax]
mov al, 0x20
lock cmpxchg byte [0x1404ab9e5], cl
je 0x1401fa3a9
cmp al, 0xb3
jne 0x1401fa100
jmp 0x1401fa439
test edx, edx
je 0x1401fa1e9
test r8d, r8d
je 0x1401fa259
test r9d, r9d
je 0x1401fa2d9
movzx eax, byte [0x1404abfd8]
cmp al, 0x2e
je 0x1401fa509
mov cl, 0xb0
nop word cs:[rax + rax]
mov al, 0xbe
lock cmpxchg byte [0x1404abfd8], cl
je 0x1401fa4d9
cmp al, 0x2e
jne 0x1401fa150
jmp 0x1401fa509
test r8d, r8d
je 0x1401fa299
test r9d, r9d
je 0x1401fa309
movzx eax, byte [0x1404abc43]
cmp al, 0x8d
je 0x1401fa549
mov cl, 0xf8
nop dword [rax]
mov al, 0xd8
lock cmpxchg byte [0x1404abc43], cl
je 0x1401fa515
cmp al, 0x8d
jne 0x1401fa190
jmp 0x1401fa549
test r9d, r9d
je 0x1401fa339
movzx eax, byte [0x1404abf8d]
cmp al, 0xae
je 0x1401fa589
mov cl, 0x19
nop word cs:[rax + rax]
mov al, 0x62
lock cmpxchg byte [0x1404abf8d], cl
je 0x1401fa555
cmp al, 0xae
jne 0x1401fa1d0
jmp 0x1401fa589
test r8d, r8d
je 0x1401fa369
test r9d, r9d
je 0x1401fa445
movzx eax, byte [0x1404ac0fd]
cmp al, 0xd2
je 0x1401fa629
mov cl, 0x91
nop dword [rax]
mov al, 0x7e
lock cmpxchg byte [0x1404ac0fd], cl
je 0x1401fa5ff
cmp al, 0xd2
jne 0x1401fa210
jmp 0x1401fa629
movzx eax, byte [0x1404abbfc]
cmp al, 0xc0
je 0x1401fa5c9
mov cl, 0x1d
nop word [rax + rax]
mov al, 0x89
lock cmpxchg byte [0x1404abbfc], cl
je 0x1401fa595
cmp al, 0xc0
jne 0x1401fa240
jmp 0x1401fa5c9
test r9d, r9d
je 0x1401fa479
movzx eax, byte [0x1404ac08d]
cmp al, 0xdd
je 0x1401fa669
mov cl, 0x76
nop word cs:[rax + rax]
mov al, 0xbd
lock cmpxchg byte [0x1404ac08d], cl
je 0x1401fa635
cmp al, 0xdd
jne 0x1401fa280
jmp 0x1401fa669
test r9d, r9d
je 0x1401fa4a9
movzx eax, byte [0x1404ab9e6]
cmp al, 0xc2
je 0x1401fa709
mov cl, 0x5e
nop word cs:[rax + rax]
mov al, 0xe
lock cmpxchg byte [0x1404ab9e6], cl
je 0x1401fa675
cmp al, 0xc2
jne 0x1401fa2c0
jmp 0x1401fa709
movzx eax, byte [0x1404ac02d]
cmp al, 7
je 0x1401fa749
mov cl, 0xdb
nop word [rax + rax]
mov al, 0x7f
lock cmpxchg byte [0x1404ac02d], cl
je 0x1401fa715
cmp al, 7
jne 0x1401fa2f0
jmp 0x1401fa749
movzx eax, byte [0x1404abe5d]
cmp al, 0xf4
je 0x1401fa789
mov cl, 0x7e
nop word [rax + rax]
mov al, 0x28
lock cmpxchg byte [0x1404abe5d], cl
je 0x1401fa755
cmp al, 0xf4
jne 0x1401fa320
jmp 0x1401fa789
movzx eax, byte [0x1404ac18d]
cmp al, 0x8d
je 0x1401fa7c9
mov cl, 0x90
nop word [rax + rax]
mov al, 0x66
lock cmpxchg byte [0x1404ac18d], cl
je 0x1401fa795
cmp al, 0x8d
jne 0x1401fa350
jmp 0x1401fa7c9
test r9d, r9d
je 0x1401fa5d5
movzx eax, byte [0x1404ab7a0]
cmp al, 0xa8
je 0x1401fa809
mov cl, 0x4b
nop word cs:[rax + rax]
mov al, 0xe
lock cmpxchg byte [0x1404ab7a0], cl
je 0x1401fa7d5
cmp al, 0xa8
jne 0x1401fa390
jmp 0x1401fa809
cmp qword [0x1404ef030], 0
jne 0x1401fa40f
mov eax, esi
xor eax, 0x5e257155
mov dword [rsp + 0x28], eax
mov qword [rsp + 0x20], 0
xor ebx, ebx
xor ecx, ecx
xor edx, edx
mov r8d, 0x1a
xor r9d, r9d
call fcn.1401f7d00
mov rdi, rax
mov qword [0x1404ef030], rax
xor esi, 0xc205a008
lea rcx, [0x1401f7c00]
mov edx, esi
call fcn.140137f30
lea rax, [0x1403c3dc0]
movzx ecx, byte [rbx + rax]
mov byte [rdi + rbx], cl
inc rbx
cmp ebx, 0x18
jle 0x1401fa400
mov rax, qword [0x1404ef030]
xor ecx, ecx
lea rdx, [0x1403c3de0]
nop
movzx r8d, byte [rcx + rdx]
add byte [rax + rcx], r8b
inc rcx
cmp ecx, 0x19
jl 0x1401fa420
mov al, 0xb3
xchg byte [0x1404ab9e5], al
mov rax, qword [0x1404ef030]
jmp 0x1401fa902
movzx eax, byte [0x1404abcdd]
cmp al, 0x61
je 0x1401fa849
mov cl, 0xad
nop word cs:[rax + rax]
mov al, 0x13
lock cmpxchg byte [0x1404abcdd], cl
je 0x1401fa815
cmp al, 0x61
jne 0x1401fa460
jmp 0x1401fa849
movzx eax, byte [0x1404abc6f]
cmp al, 0xba
je 0x1401fa889
mov cl, 0x6a
nop word [rax + rax]
mov al, 0xef
lock cmpxchg byte [0x1404abc6f], cl
je 0x1401fa855
cmp al, 0xba
jne 0x1401fa490
jmp 0x1401fa889
movzx eax, byte [0x1404ab934]
cmp al, 0x86
je 0x1401fa8c9
mov cl, 9
nop word [rax + rax]
mov al, 0x3d
lock cmpxchg byte [0x1404ab934], cl
je 0x1401fa892
cmp al, 0x86
jne 0x1401fa4c0
jmp 0x1401fa8c9
xor eax, eax
lea rcx, [0x1404abfc0]
lea rdx, [0x1403c44d0]
nop dword [rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x18
jl 0x1401fa4f0
mov al, 0x2e
xchg byte [0x1404abfd8], al
lea rax, [0x1404abfc0]
jmp 0x1401fa902
xor eax, eax
lea rcx, [0x1404abc20]
lea rdx, [0x1403c4140]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x23
jl 0x1401fa530
mov al, 0x8d
xchg byte [0x1404abc43], al
lea rax, [0x1404abc20]
jmp 0x1401fa902
xor eax, eax
lea rcx, [0x1404abf80]
lea rdx, [0x1403c4490]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x1401fa570
mov al, 0xae
xchg byte [0x1404abf8d], al
lea rax, [0x1404abf80]
jmp 0x1401fa902
xor eax, eax
lea rcx, [0x1404abbe0]
lea rdx, [0x1403c4100]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0x1c
jl 0x1401fa5b0
mov al, 0xc0
xchg byte [0x1404abbfc], al
lea rax, [0x1404abbe0]
jmp 0x1401fa902
movzx eax, byte [0x1404ac12d]
cmp al, 0x2d
je 0x1401fa8fb
mov cl, 0xf3
mov al, 0x11
lock cmpxchg byte [0x1404ac12d], cl
je 0x1401fa8d2
cmp al, 0x2d
jne 0x1401fa5e6
jmp 0x1401fa8fb
xor eax, eax
lea rcx, [0x1404ac0f0]
lea rdx, [0x1403c4600]
nop
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x1401fa610
mov al, 0xd2
xchg byte [0x1404ac0fd], al
lea rax, [0x1404ac0f0]
jmp 0x1401fa902
xor eax, eax
lea rcx, [0x1404ac080]
lea rdx, [0x1403c4590]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x1401fa650
mov al, 0xdd
xchg byte [0x1404ac08d], al
lea rax, [0x1404ac080]
jmp 0x1401fa902
cmp qword [0x1404ef038], 0
jne 0x1401fa6db
mov eax, esi
xor eax, 0x4dcf760f
mov dword [rsp + 0x28], eax
mov qword [rsp + 0x20], 0
xor ebx, ebx
xor ecx, ecx
xor edx, edx
mov r8d, 0xf
xor r9d, r9d
call fcn.1401f7d00
mov rdi, rax
mov qword [0x1404ef038], rax
xor esi, 0xd1efa752
lea rcx, [0x1401f7c20]
mov edx, esi
call fcn.140137f30
lea rax, [0x1403c3e00]
movzx ecx, byte [rbx + rax]
mov byte [rdi + rbx], cl
inc rbx
cmp ebx, 0xd
jle 0x1401fa6cc
mov rax, qword [0x1404ef038]
xor ecx, ecx
lea rdx, [0x1403c3e10]
nop dword [rax + rax]
movzx r8d, byte [rcx + rdx]
xor byte [rax + rcx], r8b
inc rcx
cmp ecx, 0xe
jl 0x1401fa6f0
mov al, 0xc2
xchg byte [0x1404ab9e6], al
mov rax, qword [0x1404ef038]
jmp 0x1401fa902
xor eax, eax
lea rcx, [0x1404ac020]
lea rdx, [0x1403c4530]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x1401fa730
mov al, 7
xchg byte [0x1404ac02d], al
lea rax, [0x1404ac020]
jmp 0x1401fa902
xor eax, eax
lea rcx, [0x1404abe50]
lea rdx, [0x1403c4360]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x1401fa770
mov al, 0xf4
xchg byte [0x1404abe5d], al
lea rax, [0x1404abe50]
jmp 0x1401fa902
xor eax, eax
lea rcx, [0x1404ac180]
lea rdx, [0x1403c4690]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x1401fa7b0
mov al, 0x8d
xchg byte [0x1404ac18d], al
lea rax, [0x1404ac180]
jmp 0x1401fa902
xor eax, eax
lea rcx, [0x1404ab790]
lea rdx, [0x1403c3b00]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x10
jl 0x1401fa7f0
mov al, 0xa8
xchg byte [0x1404ab7a0], al
lea rax, [0x1404ab790]
jmp 0x1401fa902
xor eax, eax
lea rcx, [0x1404abcd0]
lea rdx, [0x1403c41f0]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x1401fa830
mov al, 0x61
xchg byte [0x1404abcdd], al
lea rax, [0x1404abcd0]
jmp 0x1401fa902
xor eax, eax
lea rcx, [0x1404abc60]
lea rdx, [0x1403c4180]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xf
jl 0x1401fa870
mov al, 0xba
xchg byte [0x1404abc6f], al
lea rax, [0x1404abc60]
jmp 0x1401fa902
xor eax, eax
lea rcx, [0x1404ab8f0]
lea rdx, [0x1403c3c80]
nop word cs:[rax + rax]
movzx r8d, byte [rax + rdx]
add byte [rax + rcx], r8b
inc rax
cmp eax, 0x44
jl 0x1401fa8b0
mov al, 0x86
xchg byte [0x1404ab934], al
lea rax, [0x1404ab8f0]
jmp 0x1401fa902
xor eax, eax
lea rcx, [0x1404ac120]
lea rdx, [0x1403c4630]
movzx r8d, byte [rax + rdx]
xor byte [rax + rcx], r8b
inc rax
cmp eax, 0xd
jl 0x1401fa8e2
mov al, 0x2d
xchg byte [0x1404ac12d], al
lea rax, [0x1404ac120]
add rsp, 0x30
pop rbx
pop rdi
pop rsi
ret