Function at 0x1400063a0
Capabilities:
Encode data using xor
Terminate process

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x28
lea rbp, [rsp + 0x20]
movups xmmword [rbp - 0x10], xmm6
mov qword [rbp - 0x18], 0xfffffffffffffffe
mov rsi, rcx
imul eax, dword [0x1401d6280], 0x187ce76b
imul ecx, dword [0x1401d6284], 0xb916634d
add eax, ecx
add eax, 0xd71c3ca2
shl rax, 4
lea rax, [rax + rax*2]
call fcn.1400358c0
sub rsp, rax
mov r14, rsp
mov eax, dword [0x1401d6288]
mov ecx, dword [0x1401d628c]
shrd ecx, eax, 0x1b
xor ecx, 0xa34ba569
mov eax, ecx
shl rax, 4
lea rax, [rax + rax*2]
call fcn.1400358c0
sub rsp, rax
mov rdi, rsp
imul eax, dword [0x1401d6290], 0x280e3500
imul ecx, dword [0x1401d6294], 0x1f2047e1
add eax, ecx
add eax, 0x71fbc8a8
lea rax, [rax + rax*2]
lea rax, [rax*8 + 0xf]
and rax, 0xfffffffffffffff0
call fcn.1400358c0
sub rsp, rax
mov r15, rsp
mov eax, dword [0x1401d6298]
mov ecx, dword [0x1401d629c]
shrd ecx, eax, 0x18
xor ecx, 0xcc86f137
mov eax, ecx
imul rax, rax, 0x1388
add rax, 0xf
and rax, 0xfffffffffffffff0
call fcn.1400358c0
sub rsp, rax
mov r13, rsp
mov ebx, dword [0x1401eaf38]
sub rsp, 0x20
call fcn.140020f60
add rsp, 0x20
mov eax, dword [0x1401d62a0]
mov ecx, dword [0x1401d62a4]
shrd ecx, eax, 0x1c
xor ecx, 0xe1745b87
cmp ebx, ecx
je 0x140006a3e
cmp qword [0x1401eaf18], 0
jne 0x140006a3e
xorps xmm0, xmm0
movups xmmword [rdi + 0x20], xmm0
movups xmmword [rdi + 0x10], xmm0
movups xmmword [rdi], xmm0
movabs rax, 0x3715fd6457460203
imul rax, qword [0x1401d62a8]
movabs rcx, 0x41557cc9e3e19864
imul rcx, qword [0x1401d62b0]
add rcx, rax
movabs r8, 0xe2ebedc77a7865bb
add r8, rcx
sub rsp, 0x20
mov rcx, rsi
mov rdx, rdi
call qword [0x1401eafb8]
add rsp, 0x20
mov ebx, eax
sub rsp, 0x20
call fcn.140020ff0
add rsp, 0x20
mov eax, dword [0x1401d62b8]
mov ecx, dword [0x1401d62bc]
shrd ecx, eax, 0x19
mov r12, r15
mov r15, r14
mov r14d, ecx
xor r14d, 0xf313c9e4
mov eax, dword [rdi + 0x28]
mov dword [rbp - 0x20], eax
sub rsp, 0x20
call fcn.140021060
add rsp, 0x20
cmp ebx, r14d
je 0x140006a3e
cdqe
lea rcx, [0x140045ae8]
mov edx, dword [rbp - 0x20]
cmp edx, dword [rcx + rax*4]
jne 0x140006a3e
mov r14, r15
mov r15, r12
mov edi, dword [rdi + 0x24]
sub rsp, 0x20
call fcn.1400210e0
add rsp, 0x20
cdqe
lea rcx, [0x140045af4]
mov ebx, dword [rcx + rax*4]
and ebx, edi
sub rsp, 0x20
call fcn.140021150
add rsp, 0x20
mov eax, dword [0x1401d62c0]
mov ecx, dword [0x1401d62c4]
shrd ecx, eax, 0x17
xor ecx, 0x73f1a2c1
cmp ebx, ecx
jne 0x140006663
mov ebx, dword [0x1401eaf38]
sub rsp, 0x20
call fcn.1400211e0
add rsp, 0x20
cdqe
lea rcx, [0x140045b00]
imul edx, dword [0x1401d62c8], 0x6e04b419
imul r8d, dword [0x1401d62cc], 0xa7e9c963
imul r9d, dword [0x1401d62d0], 0x8ba43e5d
imul r10d, dword [0x1401d62d4], 0x65a65d3e
cmp ebx, dword [rcx + rax*4]
mov eax, r8d
mov ecx, edx
lea eax, [rcx + rax - 0x69c5ae31]
mov ecx, r10d
mov edx, r9d
lea ecx, [rdx + rcx + 0x3b477fce]
cmove ecx, eax
mov ebx, ecx
and ebx, edi
sub rsp, 0x20
call fcn.140021250
add rsp, 0x20
imul eax, dword [0x1401d62d8], 0x47ee02ac
imul ecx, dword [0x1401d62dc], 0xc04d1ac8
add eax, ecx
add eax, 0xc9e0967c
cmp ebx, eax
je 0x140006a3e
mov rbx, r14
mov rdi, r13
sub rsp, 0x20
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
add rsp, 0x20
mov r14, rax
xorps xmm6, xmm6
movups xmmword [r15], xmm6
mov qword [rbp - 0x20], r15
mov qword [r15 + 0x10], 0
movabs r13, 0x5333a88847297db0
xor r15d, r15d
jmp 0x1400066dd
movups xmm0, xmmword [rbx]
movups xmm1, xmmword [rbx + 0x10]
movups xmm2, xmmword [rbx + 0x20]
movups xmmword [rdx + 0x20], xmm2
movups xmmword [rdx + 0x10], xmm1
movups xmmword [rdx], xmm0
add rdx, 0x30
mov qword [rcx + 8], rdx
nop word [rax + rax]
mov rax, r15
add rax, qword [rbx + 0x18]
mov r15, rax
movabs rcx, 0x7fffffffffffffff
cmp rax, rcx
jae 0x1400067f6
movups xmmword [rbx + 0x20], xmm6
movups xmmword [rbx + 0x10], xmm6
movups xmmword [rbx], xmm6
mov rax, qword [0x1401d62e0]
mov rcx, qword [0x1401d62e8]
shrd rcx, rax, 0x30
mov r9, rcx
movabs rax, 0xfa376e17db06fc23
xor r9, rax
nop
sub rsp, 0x20
mov rcx, r14
mov rdx, r15
mov r8, rbx
call qword [0x1401eafc0]
add rsp, 0x20
nop
mov r12, rax
sub rsp, 0x20
call fcn.1400212e0
add rsp, 0x20
mov rax, qword [0x1401d62f0]
mov rcx, qword [0x1401d62f8]
shrd rcx, rax, 0x11
xor rcx, r13
cmp r12, rcx
je 0x1400067f6
mov eax, dword [rbx + 0x24]
cmp eax, 0x20
jge 0x140006770
cmp eax, 4
jne 0x1400066c0
jmp 0x14000677e
cmp eax, 0x40
jge 0x140006778
cmp eax, 0x20
jne 0x1400066c0
mov r12d, dword [rbx + 0x28]
sub rsp, 0x20
call fcn.140021360
add rsp, 0x20
cdqe
lea rcx, [0x140045b0c]
and r12d, dword [rcx + rax*4]
sub rsp, 0x20
call fcn.1400213e0
add rsp, 0x20
imul eax, dword [0x1401d6300], 0xe44b2bf0
imul ecx, dword [0x1401d6304], 0x95c27067
add eax, ecx
add eax, 0x5d5ea9cb
cmp r12d, eax
je 0x1400066c0
mov rcx, qword [rbp - 0x20]
mov rdx, qword [rcx + 8]
cmp rdx, qword [rcx + 0x10]
jne 0x14000669c
nop
sub rsp, 0x20
mov r8, rbx
call fcn.14000ef20
add rsp, 0x20
nop
jmp 0x1400066c0
mov rax, qword [rbp - 0x20]
mov rcx, qword [rax]
mov rax, qword [rax + 8]
cmp rcx, rax
jne 0x14000683f
imul eax, dword [0x1401d630c], 0x37dd82f8
imul ecx, dword [0x1401d6310], 0x763af3ad
add ecx, eax
add ecx, 0x335ae9aa
sub rsp, 0x20
call qword [sym.imp.KERNEL32.dll_ExitProcess]
mov rdx, rcx
add rdx, 0x30
mov rcx, rdx
cmp rdx, rax
je 0x140006806
mov rdx, qword [rcx]
cmp rdx, rsi
jae 0x140006830
mov r8, qword [rcx + 0x18]
lea r9, [r8 + rdx]
cmp r9, rsi
jbe 0x140006830
mov qword [0x1401eaf18], rdx
mov qword [0x1401eaf20], r8
sub rsp, 0x20
call fcn.140021460
add rsp, 0x20
movzx eax, byte [0x1401d6308]
movzx ecx, byte [0x1401d6309]
shr cl, 4
shl al, 4
or al, cl
xor al, 0xe0
mov byte [0x1401eaf28], al
nop
sub rsp, 0x20
call fcn.140035b50
add rsp, 0x20
nop
mov r13d, eax
sub rsp, 0x20
call fcn.1400214d0
add rsp, 0x20
cdqe
lea rcx, [0x140045b18]
mov eax, dword [rcx + rax*4]
mov dword [rdi + 0x1384], eax
mov dword [rdi + 4], r13d
lea rbx, [0x140045b30]
lea r14, [0x140045b40]
lea r15, [0x140045b60]
mov r12d, 1
mov eax, r13d
mov rsi, rdi
nop word cs:[rax + rax]
mov r13d, eax
sub rsp, 0x20
call fcn.140021540
add rsp, 0x20
cdqe
lea rcx, [0x140045b24]
movzx ecx, byte [rcx + rax*4]
mov edi, r13d
shr edi, cl
xor edi, r13d
sub rsp, 0x20
call fcn.1400215d0
add rsp, 0x20
cdqe
imul edi, dword [rbx + rax*4]
mov eax, r12d
mov ecx, edi
lea edi, [rax + rcx]
mov dword [rsi + r12*4 + 4], edi
sub rsp, 0x20
call fcn.140021640
add rsp, 0x20
cdqe
mov r13, r12
add r13, qword [r14 + rax*8]
sub rsp, 0x20
call fcn.1400216e0
add rsp, 0x20
movsxd rcx, eax
mov r12, r13
mov eax, edi
cmp r13, qword [r15 + rcx*8]
jne 0x1400068f0
sub rsp, 0x20
call fcn.140021760
add rsp, 0x20
cdqe
lea rcx, [0x140045b78]
mov eax, dword [rcx + rax*4]
mov dword [rsi], eax
nop
sub rsp, 0x20
mov rcx, rsi
call fcn.14000f260
add rsp, 0x20
nop
mov dword [0x1401eaf2c], eax
mov rax, qword [rbp - 0x20]
mov rbx, qword [rax]
test rbx, rbx
je 0x140006a3e
mov rsi, qword [rax + 0x10]
sub rsi, rbx
sub rsp, 0x20
call fcn.1400217d0
add rsp, 0x20
cdqe
lea rcx, [0x140045b90]
cmp rsi, qword [rcx + rax*8]
jbe 0x140006a2b
mov rdi, qword [rbx - 8]
sub rsp, 0x20
call fcn.140021850
add rsp, 0x20
cdqe
lea rcx, [0x140045bb0]
add rbx, qword [rcx + rax*8]
sub rbx, rdi
sub rsp, 0x20
call fcn.1400218e0
add rsp, 0x20
cdqe
lea rcx, [0x140045bd0]
cmp rbx, qword [rcx + rax*8]
jae 0x140006a53
sub rsp, 0x20
call fcn.140021970
add rsp, 0x20
cdqe
lea rcx, [0x140045bf0]
add rsi, qword [rcx + rax*8]
mov rdx, rsi
mov rcx, rdi
jmp 0x140006a31
mov rdx, rsi
mov rcx, rbx
sub rsp, 0x20
call fcn.14003586c
add rsp, 0x20
movups xmm6, xmmword [rbp - 0x10]
lea rsp, [rbp + 8]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
sub rsp, 0x20
call fcn.140038498
int3