Function at 0x140084dd0
Capabilities:
Encode data using xor

Disassembly:
push rsi
push rdi
sub rsp, 0x68
mov rsi, rcx
mov rdi, qword [rcx + 0x28]
nop dword [rax]
mov eax, dword [0x141dcdb50]
imul eax, dword [0x141dcdb54]
add eax, 0xd62a4b0b
or eax, 0xa69658f6
imul rcx, rax, 0x3c6dafd9
shr rcx, 0x20
sub eax, ecx
shr eax, 1
add eax, ecx
shr eax, 0x1f
cmp eax, 0xad789127
ja 0x140084de0
mov eax, dword [0x141ddb27c]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
movzx eax, byte [rax + 0x98]
nop dword [rax]
mov ecx, dword [0x141dcdb58]
or ecx, dword [0x141dcdb5c]
imul ecx, ecx, 0x777ba937
cmp ecx, 0x58d6ba75
je 0x140084e30
test rax, rax
jne 0x140084e7e
mov eax, dword [0x141dcdb68]
and eax, dword [0x141dcdb6c]
mov ecx, 0xd9154e77
imul rcx, rax
shr rcx, 0x3f
imul eax, ecx, 0x12f09f19
cmp eax, 0xeb6cbb37
jbe 0x140084fe4
jmp 0x140084fef
cmp eax, 1
je 0x140085030
cmp eax, 2
jne 0x140084fc0
mov rcx, 0xffffffffffffffff
lock xadd qword [rsi], rcx
mov eax, dword [0x141dcdb78]
xor edx, edx
div dword [0x141dcdb7c]
nop word [rax + rax]
mov eax, dword [0x141dcdb80]
imul eax, dword [0x141dcdb84]
imul rax, rax, 0x401c36c1
shr rax, 0x3e
or eax, 0x87f08428
xor eax, 0xdbde12db
cmp eax, 0x90a8db38
ja 0x140084eb0
cmp rcx, 1
jne 0x140084f64
mov eax, dword [0x141dcdb88]
mov ecx, dword [0x141dcdb8c]
add eax, ecx
add eax, 0x7a82dce6
or eax, 0x2ce07325
add eax, 0xff72ef28
cmp eax, 0x2e26da4c
jae 0x140084f0f
mov rcx, rsi
call fcn.140076430
mov edi, dword [0x141dcdb90]
and edi, dword [0x141dcdb94]
xor edi, 0xf3cff37
add edi, 0x9e4ad640
or edi, 0xbaef7c7c
mov rcx, rsi
call fcn.140076430
cmp edi, 0x382a3a21
je 0x140084f0f
nop dword [rax]
mov eax, dword [0x141dcdb98]
imul eax, dword [0x141dcdb9c]
add eax, 0x308c2135
imul rax, rax, 0x626f24ff
shr rax, 0x3e
cmp eax, 0x9d01a6ec
je 0x140084f40
mov eax, dword [0x141dcdbc0]
xor edx, edx
div dword [0x141dcdbc4]
and eax, 0xae120f44
add eax, 0x335d9f27
or eax, 0x22731f5
cmp eax, 0x445aeb22
jbe 0x140084f90
ud2
mov eax, dword [0x141dcdbc8]
and eax, dword [0x141dcdbcc]
add eax, 0x99999407
xor eax, 0x363bd537
ud2
mov eax, dword [0x141dcdb60]
and eax, dword [0x141dcdb64]
and eax, 0x2ffc72d3
add eax, 0xe21c78bc
and eax, 0x398c933a
cmp eax, 0xf15065ff
je 0x140084fc0
ud2
call fcn.1400fb7c0
xor eax, eax
test al, al
je 0x140085000
call fcn.1400fb7c0
jmp 0x140084fe4
mov eax, dword [0x141dcdb70]
and eax, dword [0x141dcdb74]
xor eax, 0x8808240
or eax, 0xe3657c2c
xor eax, 0xa24adcea
cmp eax, 0xd0716883
ja 0x140085000
nop word cs:[rax + rax]
mov eax, dword [0x141dcdba0]
or eax, dword [0x141dcdba4]
imul eax, eax, 0xf8b2e145
xor eax, 0x874af0ce
imul rax, rax, 0x48b8c97d
shr rax, 0x3e
cmp eax, 0xa6b22c82
ja 0x140085030
mov eax, dword [0x141ddb27c]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov rax, qword [rax + 0x90]
nop word cs:[rax + rax]
mov ecx, dword [0x141dcdba8]
or ecx, dword [0x141dcdbac]
imul ecx, ecx, 0x6c7ca9c1
cmp ecx, 0x6ecb8a8c
je 0x140085080
test rax, rax
jne 0x1400850c7
mov eax, dword [0x141ddb27c]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov qword [rax + 0x90], rsi
mov qword [rax + 0x88], rdi
add rsp, 0x68
pop rdi
pop rsi
ret
mov eax, dword [0x141dcdbb0]
xor eax, dword [0x141dcdbb4]
add eax, 0x682756ac
imul rax, rax, 0x422f1e13
shr rax, 0x3e
add eax, 0xb87d5b69
cmp eax, 0xc6e66e0e
jbe 0x140085108
mov dword [rsp + 0x30], 0
mov byte [rsp + 0x34], 0
lea rax, [0x141db9218]
mov qword [rsp + 0x38], rax
lea rax, [0x141db9218]
nop
mov ecx, dword [0x141dcdbb8]
sub ecx, dword [0x141dcdbbc]
imul ecx, ecx, 0xa249a19b
add ecx, 0xf925ffc3
or ecx, 0x864280b1
mov dword [rsp + 0x30], 0
mov byte [rsp + 0x34], 0
mov qword [rsp + 0x38], rax
cmp ecx, 0xd8687891
jb 0x140085110
mov qword [rsp + 0x40], 1
lea rax, [rsp + 0x28]
mov qword [rsp + 0x48], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x50], xmm0
lea rcx, [rsp + 0x30]
lea rdx, [rsp + 0x38]
call fcn.1400885c0
mov rcx, rax
call fcn.140088a00
mov ecx, 7
int 0x29
ud2