Function at 0x1400fb900
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x28
mov rsi, rcx
movzx ecx, byte [rcx]
cmp cl, 1
jne 0x1400fb940
mov eax, 0xffffff9d
pause
movzx ecx, byte [rsi]
cmp cl, 1
jne 0x1400fb940
lea edx, [rax + 1]
test eax, eax
mov eax, edx
jne 0x1400fb920
nop word cs:[rax + rax]
mov eax, dword [0x141dcfb98]
mov edx, dword [0x141dcfb9c]
add eax, edx
add eax, 0x1f7c5abe
and eax, 0x79e9df38
cmp eax, 0x3313787a
je 0x1400fb940
test cl, cl
jne 0x1400fb991
mov eax, dword [0x141dcfba0]
xor edx, edx
div dword [0x141dcfba4]
xor eax, 0x10919054
and eax, 0x7299915c
imul eax, eax, 0x23eba595
cmp eax, 0x5a0ab3d7
jae 0x1400fbc5a
jmp 0x1400fbc95
lea rdi, [rsp + 0x27]
mov r14, qword [sym.imp.api_ms_win_core_synch_l1_2_0.dll_WaitOnAddress]
xor ebp, ebp
mov r15d, 0xdb99aff3
mov r12, qword [sym.imp.KERNEL32.dll_GetLastError]
mov r13d, 0x870c63ad
nop word cs:[rax + rax]
cmp cl, 2
je 0x1400fba18
mov al, 2
xchg byte [rsi], al
mov ecx, dword [0x141dcfbb0]
xor ecx, dword [0x141dcfbb4]
xor ecx, 0x6985cc54
imul rcx, r13
shr rcx, 0x3e
cmp ecx, 0xc925902f
je 0x1400fb9c9
nop dword [rax + rax]
mov ecx, dword [0x141dcfbb8]
or ecx, dword [0x141dcfbbc]
add ecx, 0x99f6aec7
or ecx, 0xe9b52ec1
cmp ecx, 0x7cae3ecb
je 0x1400fb9f0
test al, al
je 0x1400fbcbc
mov eax, dword [0x141dcfbc0]
xor eax, dword [0x141dcfbc4]
and eax, 0x64df6623
add eax, 0x28479e9f
cmp eax, 0x759a5d4f
ja 0x1400fba90
nop word cs:[rax + rax]
mov eax, dword [0x141dcfbc8]
sub eax, dword [str._To]
or eax, 0xaa733b2c
mov byte [rsp + 0x27], 2
cmp eax, 0xf69945c5
je 0x1400fba90
mov eax, dword [0x141dcfbd0]
xor eax, dword [0x141dcfbd4]
and eax, 0xaf30698b
xor eax, 0x6776f62d
add eax, 0xe163f4fb
cmp eax, 0x2cb8d1da
jae 0x1400fbaa0
jmp 0x1400fbc40
mov byte [rsp + 0x27], 2
jmp 0x1400fba40
mov r8d, 1
mov rcx, rsi
mov rdx, rdi
mov r9d, 0xffffffff
call r14
test bpl, bpl
jne 0x1400fbc40
cmp eax, 1
je 0x1400fbb4e
mov eax, dword [0x141dcfbd8]
xor eax, dword [0x141dcfbdc]
and eax, 0x7f778ab0
imul eax, eax, 0x68daf686
or eax, 0xb400b53a
cmp eax, 0x728cbf5b
jae 0x1400fbaf0
call r12
nop dword [rax]
mov eax, dword [0x141dcfbe0]
xor edx, edx
div dword [0x141dcfbe4]
mov ebx, eax
or ebx, 0x35e521e2
call r12
cmp ebx, 0x227aa99d
je 0x1400fbaf0
nop word cs:[rax + rax]
mov eax, dword [0x141dcfbe8]
xor edx, edx
div dword [0x141dcfbec]
and eax, 0x4de52772
imul rcx, rax, 0x1f999b0d
shr rcx, 0x20
sub eax, ecx
shr eax, 1
add eax, ecx
shr eax, 0x1f
cmp eax, 0x8c89a486
je 0x1400fbb20
movzx ecx, byte [rsi]
nop word cs:[rax + rax]
mov eax, dword [0x141dcfbf0]
sub eax, dword [0x141dcfbf4]
or eax, 0x28fbb1b2
add eax, 0x87554892
imul rax, r15
shr rax, 0x3a
cmp eax, 0xa9217d93
ja 0x1400fbb60
nop word cs:[rax + rax]
mov eax, dword [0x141dcfbf8]
xor edx, edx
div dword [0x141dcfbfc]
add eax, 0xf0c0073
xor eax, 0xb4a09e04
and eax, 0xb5a2df34
cmp eax, 0x17ba4b13
jb 0x1400fbb90
cmp cl, 1
jne 0x1400fb9c0
mov eax, 0x64
jmp 0x1400fbbdd
or dl, r8b
dec eax
test dl, dl
jne 0x1400fb9c0
mov ecx, dword [0x141dcfc00]
or ecx, dword [0x141dcfc04]
add ecx, 0x49815bf1
imul rcx, rcx, 0x5ec21625
shr rcx, 0x3e
xor ecx, 0xd0a39779
cmp ecx, 0x39fef47c
jb 0x1400fbc39
nop dword [rax + rax]
mov r9d, dword [0x141dcfc08]
add r9d, dword [0x141dcfc0c]
pause
movzx ecx, byte [rsi]
cmp cl, 1
setne dl
cmp eax, 1
sete r8b
cmp r9d, 0xe2ff81a8
jne 0x1400fbbd0
pause
movzx ecx, byte [rsi]
jmp 0x1400fbc10
mov r8d, 1
mov rcx, rsi
mov rdx, rdi
mov r9d, 0xffffffff
call r14
jmp 0x1400fbaa0
mov eax, dword [0x141dcfba8]
imul eax, dword [0x141dcfbac]
mov ecx, 0xad05e911
imul rcx, rax
shr rcx, 0x3c
imul edx, ecx, 0xe90fedb5
add edx, 0xd6c86b65
mov cl, 1
xor eax, eax
lock cmpxchg byte [rsi], cl
mov ecx, eax
sete al
cmp edx, 0x89b00fc9
jbe 0x1400fbc9f
mov cl, 1
xor eax, eax
lock cmpxchg byte [rsi], cl
jmp 0x1400fbc5a
xor edx, edx
nop word cs:[rax + rax]
test dl, dl
jne 0x1400fbcb0
test al, al
je 0x1400fb991
add rsp, 0x28
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret