Function at 0x140186bb0
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rsi
sub rsp, 0xb8
lea rbp, [rsp + 0x80]
mov qword [rbp - 0x20], rcx
mov eax, 0x10
call fcn.1401d4340
sub rsp, rax
mov rax, rsp
mov qword [rbp - 0x30], rax
sub rsp, 0x20
call fcn.1401870b9
add rsp, 0x20
mov qword [rbp - 0x10], rax
add rax, 0x60
mov qword [rbp - 0x28], rax
mov ecx, 0x18
mov edx, 8
sub rsp, 0x20
call fcn.1400133d1
add rsp, 0x20
mov qword [rbp - 0x18], rax
lea rcx, [rbp + 0x28]
xor eax, eax
mov edx, eax
sub rsp, 0x20
call fcn.14002438a
mov rcx, qword [rbp - 0x20]
mov rdx, qword [rbp - 0x18]
add rsp, 0x20
mov rax, qword [rbp + 0x28]
mov qword [rdx + 8], rax
mov rax, qword [rbp + 0x30]
mov qword [rdx + 0x10], rax
mov rcx, qword [rcx]
add rcx, 0x20
sub rsp, 0x20
call fcn.1401821b0
mov rax, qword [rbp - 0x10]
add rsp, 0x20
cmp byte [rax + 0x60], 0
jne 0x14018702e
mov rcx, qword [rbp - 0x20]
sub rsp, 0x20
call fcn.140182da0
mov rax, qword [rbp - 0x28]
add rsp, 0x20
cmp byte [rax], 0
jne 0x14018702e
mov eax, dword [0x1401df730]
mov ecx, 0x25789118
xor ecx, 0xdee4f802
xor eax, ecx
xor edx, edx
div dword [str.z:_n]
and eax, 0x45db6ae9
mov edx, 0xffffffff
xor edx, 0xa035a6c
mov ecx, eax
and ecx, edx
mov edx, eax
xor edx, 0xa035a6c
add eax, edx
sub eax, ecx
mov r8d, 0xcc300ec2
xor r8d, 0x96a3bd5f
mov ecx, 0xc42c2bdd
xor ecx, 0x3bd3d422
xor r8d, ecx
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0x5a93b39d
or eax, 0x5a93b39d
imul eax, edx
add eax, ecx
cmp eax, 0x82780095
jbe 0x1401870a7
mov eax, dword [0x1401df738]
xor edx, edx
div dword [0x1401df73c]
mov ecx, 0x6218abde
xor ecx, 0x1315a496
sub eax, ecx
or eax, 0xad62fafd
and eax, 0x2d44d06c
mov dword [rbp - 0x3c], eax
mov ecx, 0x644
sub rsp, 0x20
call fcn.140062c50
mov rcx, qword [rbp - 0x28]
add rsp, 0x20
mov edx, eax
mov eax, dword [rbp - 0x3c]
mov dword [rbp - 0x38], edx
cmp byte [rcx], 0
sete cl
mov byte [rbp - 0x31], cl
cmp eax, 0xe5d9cf36
je 0x1401870a7
mov al, byte [rbp - 0x31]
test al, 1
jne 0x140186d67
jmp 0x14018702e
mov rax, qword [rbp - 0x20]
mov rax, qword [rax]
mov rdx, qword [rax + 0x20]
lea rcx, [rbp + 0x18]
sub rsp, 0x20
call fcn.140075600
mov rax, qword [rbp - 0x28]
add rsp, 0x20
mov rcx, qword [rbp + 0x18]
mov qword [rbp - 0x50], rcx
mov rcx, qword [rbp + 0x20]
mov qword [rbp - 0x48], rcx
mov al, byte [rax]
mov cl, 0xe8
xor cl, 0xe8
cmp al, cl
jne 0x14018702e
mov rcx, qword [rbp - 0x30]
mov rax, qword [rbp - 0x20]
mov rdx, qword [rax]
add rdx, 0x18
sub rsp, 0x20
call fcn.140117300
mov rcx, qword [rbp - 0x30]
mov rax, qword [rbp - 0x28]
add rsp, 0x20
mov rdx, qword [rcx]
mov qword [rbp - 0x60], rdx
mov rcx, qword [rcx + 8]
mov qword [rbp - 0x58], rcx
cmp byte [rax], 0
jne 0x14018702e
mov r11d, dword [0x1401df740]
mov r9d, dword [0x1401df744]
xor r9d, 0xb1134c00
mov eax, r11d
xor eax, 0xffffffff
mov edx, 0xb8ba77fd
xor edx, 0x47458802
mov ecx, r9d
xor ecx, edx
mov edx, 0xd8ec0ee1
xor edx, 0x1448d976
mov r8d, 0xcc5bc225
xor r8d, 0x33a43dda
xor edx, r8d
mov r10d, eax
and r10d, 0xcca4d797
and r11d, edx
mov esi, 0xeef17cac
xor esi, 0x2255ab3b
mov r8d, ecx
and r8d, esi
and r9d, edx
or r10d, r11d
or r8d, r9d
xor r10d, r8d
or eax, ecx
mov ecx, 0x1d339f92
xor ecx, 0xe2cc606d
xor eax, ecx
mov ecx, 0x7650c7f9
xor ecx, 0xbaf4106e
or ecx, edx
and eax, ecx
or r10d, eax
sub r10d, 0x79fba59b
mov eax, r10d
xor eax, 0xffffffff
mov edx, 0x2255e6e8
xor edx, 0x92b67dab
mov ecx, 0x1afd48de
xor ecx, 0xe502b721
xor edx, ecx
mov ecx, 0xffffffff
xor ecx, 0x43463c00
mov r11d, eax
and r11d, 0x43463c00
and r10d, ecx
mov r9d, 0x85cac817
xor r9d, 0xc68cf417
mov r8d, edx
and r8d, r9d
mov r9d, ecx
and r9d, 0xb0e39b43
or r11d, r10d
or r8d, r9d
xor r11d, r8d
or eax, edx
xor eax, 0xffffffff
or ecx, 0x43463c00
and eax, ecx
or r11d, eax
mov ecx, r11d
xor ecx, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0xe079127a
mov edx, 0x343d02d1
xor edx, 0x39b6ea65
mov eax, 0x50f42ff
xor eax, 0xfaf0bd00
xor edx, eax
mov eax, ecx
and eax, 0xd8be8b4
and r11d, edx
mov r10d, 0x876e2b3f
xor r10d, 0x8ae5c38b
mov r9d, r8d
and r9d, r10d
mov r10d, edx
and r10d, 0xe079127a
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, r8d
xor ecx, 0xffffffff
or edx, 0xd8be8b4
and ecx, edx
or eax, ecx
mov ecx, 0x1a5e4f9a
xor ecx, 0xcfdd03a4
cmp eax, ecx
jbe 0x1401870b0
mov ecx, dword [rbp - 0x38]
mov rax, qword [rbp - 0x58]
mov rdx, qword [rbp - 0x60]
mov r8, qword [rbp - 0x48]
mov r9, qword [rbp - 0x50]
mov r10d, dword [0x1401df748]
mov r11d, dword [0x1401df74c]
add r10d, 0x9c18d482
sub r10d, r11d
sub r10d, 0x9c18d482
and r10d, 0xad3a2d45
sub r10d, 0x28b47468
or r10d, 0x6c43ff79
mov dword [rbp - 0x68], r10d
mov r10d, 0x471f4b7
xor r10d, 0x693f547e
mov dword [rbp - 0x6c], r10d
mov qword [rbp + 8], r9
mov qword [rbp + 0x10], r8
mov qword [rbp - 8], rdx
mov qword [rbp], rax
lea rdx, [rbp + 8]
lea r8, [rbp - 8]
sub rsp, 0x20
call fcn.140090fe0
mov rdx, qword [rbp - 0x28]
mov ecx, dword [rbp - 0x6c]
mov eax, dword [rbp - 0x68]
add rsp, 0x20
cmp byte [rdx], 0
sete dl
mov byte [rbp - 0x61], dl
cmp eax, ecx
je 0x140186f63
mov al, byte [rbp - 0x61]
test al, 1
jne 0x14018700f
jmp 0x14018702e
mov ecx, 0xc0
sub rsp, 0x20
call fcn.140062e90
mov rax, qword [rbp - 0x28]
add rsp, 0x20
cmp byte [rax], 0
je 0x1401870a0
sub rsp, 0x20
call fcn.140186a4f
add rsp, 0x20
mov rax, qword [rax]
mov qword [rbp - 0x78], rax
cmp word [rax + 0x12], 1
jle 0x1401870a0
mov rax, qword [rbp - 0x78]
mov rax, qword [rax + 0x18]
cmp dword [rax + 8], 0xd4054986
jne 0x1401870a0
mov rax, qword [rbp - 0x28]
mov byte [rax], 0
sub rsp, 0x20
call fcn.140186a61
add rsp, 0x20
mov rcx, rax
sub rsp, 0x20
call fcn.14008f410
mov rax, qword [rbp - 0x28]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401870a0
sub rsp, 0x20
call fcn.140186a8e
add rsp, 0x20
lea rsp, [rbp + 0x38]
pop rsi
pop rbp
ret
call [rcx]
test eax, 0xfc4de9c2
invalid
xlatb
sal dword [rcx - 0x15516d5], cl
invalid