Function at 0x14008a900
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r14
push rsi
push rdi
push rbx
sub rsp, 0x10
lea rbp, [rsp + 0x10]
mov rsi, rcx
mov eax, dword [0x141f3b500]
and eax, dword [0x141f3b504]
or eax, 0xc3fe785a
cmp eax, 0x2de5078a
je 0x14008a96e
mov eax, dword [0x141f3b508]
xor edx, edx
div dword [0x141f3b50c]
mov ecx, eax
or ecx, 0xefffbf9b
xor ecx, 0x83d823dd
mov eax, 0x30
call fcn.1400f4d10
sub rsp, rax
mov rdi, rsp
mov eax, 0x10
call fcn.1400f4d10
sub rsp, rax
mov rbx, rsp
cmp ecx, 0x1711a7d4
jae 0x14008a98a
mov eax, 0x30
call fcn.1400f4d10
sub rsp, rax
mov eax, 0x10
call fcn.1400f4d10
sub rsp, rax
jmp 0x14008a92a
mov r14, qword [rsi + 0x28]
mov eax, dword [0x141f4907c]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
movzx eax, byte [rax + 0x98]
cmp eax, 1
jne 0x14008aaa2
nop word cs:[rax + rax]
mov eax, dword [0x141f3b548]
xor edx, edx
div dword [0x141f3b54c]
imul eax, eax, 0xa1b07006
add eax, 0x885959be
or eax, 0x27d9831d
cmp eax, 0xb3c95711
je 0x14008a9c0
mov eax, dword [0x141f3b550]
xor edx, edx
div dword [0x141f3b554]
nop word cs:[rax + rax]
mov eax, dword [0x141f3b558]
sub eax, dword [0x141f3b55c]
imul eax, eax, 0xc319054d
or eax, 0x63906f47
imul rcx, rax, 0x8853593
shr rcx, 0x20
sub eax, ecx
shr eax, 1
add eax, ecx
shr eax, 0x1c
cmp eax, 0x8e4fe34a
ja 0x14008aa00
mov eax, dword [0x141f4907c]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov rax, qword [rax + 0x90]
nop dword [rax]
mov ecx, dword [0x141f3b560]
and ecx, dword [0x141f3b564]
add ecx, 0x5057c1b3
and ecx, 0x58401030
cmp ecx, 0x666958b2
ja 0x14008aa50
test rax, rax
jne 0x14008aaed
mov eax, dword [0x141f3b580]
mov ecx, dword [0x141f3b584]
add eax, ecx
add eax, 0xbee63703
or eax, 0x8b82d54c
xor eax, 0xc1db7d88
cmp eax, 0xf9a5640d
jbe 0x14008acfb
jmp 0x14008ad42
test rax, rax
jne 0x14008ab16
sub rsp, 0x20
call fcn.140100d30
add rsp, 0x20
nop word cs:[rax + rax]
mov eax, dword [0x141f3b510]
or eax, dword [0x141f3b514]
and eax, 0xfd35927f
add eax, 0x4ea1334
imul rax, rax, 0x2b6ec911
shr rax, 0x37
cmp eax, 0x5c890d20
ja 0x14008aac0
jmp 0x14008a9c0
mov eax, dword [0x141f3b568]
sub eax, dword [0x141f3b56c]
imul rax, rax, 0x45d70b25
shr rax, 0x3e
imul eax, eax, 0x7bfe85c2
cmp eax, 0xc2fb6adc
jne 0x14008ab89
jmp 0x14008abcb
mov rcx, 0xffffffffffffffff
lock xadd qword [rsi], rcx
mov eax, 0xb55d012d
mov edx, dword [0x141f3b518]
imul edx, dword [0x141f3b51c]
add edx, 0x4c4b1f76
imul rdx, rax
shr rdx, 0x3f
or edx, 0x6695220c
cmp edx, 0x9f2d7323
ja 0x14008ab27
mov eax, dword [0x141f3b520]
xor edx, edx
div dword [0x141f3b524]
imul eax, eax, 0xff1128fb
add eax, 0x5ae33f22
cmp eax, 0x7dbe6986
ja 0x14008ab50
cmp rcx, 1
jne 0x14008acca
xor eax, eax
test al, al
je 0x14008ac25
jmp 0x14008ac47
mov eax, dword [0x141f3b570]
imul eax, dword [0x141f3b574]
lea rcx, [0x141f25700]
mov qword [rdi], rcx
add eax, 0x4eb2bfa9
and eax, 0x3fa09ce5
mov dword [rbx], 0
mov byte [rbx + 4], 0
mov qword [rdi + 8], 1
mov qword [rdi + 0x20], 0
cmp eax, 0xed319b66
jbe 0x14008abf1
mov dword [rbx], 0
mov byte [rbx + 4], 0
lea rax, [0x141f25700]
mov qword [rdi], rax
mov qword [rdi + 8], 1
mov qword [rdi + 0x20], 0
jmp 0x14008ab89
lea rax, [rbp - 8]
mov qword [rdi + 0x10], rax
mov qword [rdi + 0x18], 0
sub rsp, 0x20
mov rcx, rbx
mov rdx, rdi
call fcn.14008e020
mov rcx, rax
call fcn.14008e440
add rsp, 0x20
mov ecx, 7
int 0x29
ud2
mov eax, dword [0x141f3b528]
and eax, dword [0x141f3b52c]
add eax, 0xd99b0505
xor eax, 0x69683177
add eax, 0xd17edf52
cmp eax, 0xaeb75a92
jbe 0x14008ac49
jmp 0x14008ac25
mov eax, dword [0x141f3b530]
or eax, dword [0x141f3b534]
xor eax, 0xb23be4ef
imul eax, eax, 0x8b2e401f
imul rax, rax, 0xfdcad1d
shr rax, 0x3b
cmp eax, 0xcaded8a6
jbe 0x14008ac82
sub rsp, 0x20
mov rcx, rsi
call fcn.14007b600
add rsp, 0x20
mov eax, dword [0x141f3b538]
xor eax, dword [0x141f3b53c]
imul edi, eax, 0x60c7aaed
sub rsp, 0x20
mov rcx, rsi
call fcn.14007b600
add rsp, 0x20
cmp edi, 0xf652df2d
je 0x14008ac82
mov eax, dword [0x141f3b540]
imul eax, dword [0x141f3b544]
add eax, 0xb5cd71bd
and eax, 0x3c00396e
cmp eax, 0x2ecb421a
je 0x14008acac
xor eax, eax
test al, al
jne 0x14008acf5
mov eax, dword [0x141f3b578]
and eax, dword [0x141f3b57c]
imul eax, eax, 0xfa6dffe8
and eax, 0xbac439a0
add eax, 0xc1c19c3e
ud2
ud2
mov eax, dword [0x141f4907c]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov ecx, dword [0x141f3b588]
or ecx, dword [0x141f3b58c]
imul ecx, ecx, 0x2dd1d814
and ecx, 0xbac48160
xor ecx, 0xbb1c58ae
mov qword [rax + 0x90], rsi
mov qword [rax + 0x88], r14
cmp ecx, 0xcfc89dc2
jbe 0x14008ad70
mov eax, dword [0x141f4907c]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov qword [rax + 0x90], rsi
mov qword [rax + 0x88], r14
jmp 0x14008acfb
mov eax, dword [0x141f3b590]
xor edx, edx
div dword [0x141f3b594]
add eax, 0x3cb37bb4
or eax, 0x948a96cf
imul rax, rax, 0x5477d861
shr rax, 0x3e
cmp eax, 0x2427a59c
ja 0x14008ad70
nop word [rax + rax]
mov eax, dword [0x141f3b598]
or eax, dword [0x141f3b59c]
imul eax, eax, 0x6af72aa2
cmp eax, 0x6143540f
je 0x14008ada0
mov rsp, rbp
pop rbx
pop rdi
pop rsi
pop r14
pop rbp
ret