Function at 0x1400da5b0
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x30
mov rdi, rdx
mov edx, 0x18
mov rax, rdi
mul rdx
mov r14, rax
mov rsi, rcx
seto cl
movabs r8, 0x7ffffffffffffffc
nop
mov eax, dword [0x141ddb860]
xor edx, edx
div dword [0x141ddb864]
add eax, 0x3c5355f3
or eax, 0x8730381c
and eax, 0x8f35381f
cmp eax, 0x2127d860
je 0x1400da5e0
nop word cs:[rax + rax]
cmp r14, r8
seta al
mov edx, dword [0x141ddb868]
imul edx, dword [0x141ddb86c]
or edx, 0x3d9e21d8
add edx, 0xfb545614
and edx, 0x71545c92
cmp edx, 0xfb734698
je 0x1400da610
or cl, al
jne 0x1400da6d2
nop word cs:[rax + rax]
mov eax, dword [0x141ddb880]
add eax, dword [0x141ddb884]
imul eax, eax, 0x9c42f8ce
add eax, 0x2427edb9
cmp eax, 0xb8eab4ed
ja 0x1400da650
nop
mov eax, dword [0x141ddb888]
sub eax, dword [0x141ddb88c]
shr eax, 1
imul rax, rax, 0x2c72ce7f
shr rax, 0x39
xor eax, 0x5a048508
or eax, 0x21da7af5
cmp eax, 0xe7d07b1
je 0x1400da670
test r14, r14
je 0x1400da6c8
movzx eax, byte [0x141dde6f8]
mov eax, dword [0x141ddb890]
or eax, dword [0x141ddb894]
imul eax, eax, 0x621f7b8e
cmp eax, 0xa6939277
jne 0x1400da9cf
jmp 0x1400da9f9
mov ebx, 4
xor r12d, r12d
jmp 0x1400da71e
mov eax, dword [0x141ddb870]
add eax, dword [0x141ddb874]
imul rax, rax, 0x2623fe05
shr rax, 0x39
add eax, 0xbe3c2a67
and eax, 0x1c1c00d1
cmp eax, 0x7869135f
jbe 0x1400da700
ud2
mov eax, dword [0x141ddb878]
imul eax, dword [0x141ddb87c]
imul eax, eax, 0x619f6304
ud2
ud2
mov eax, dword [0x141ddb8b8]
xor edx, edx
div dword [0x141ddb8bc]
mov ecx, 0x90256117
imul rcx, rax
shr rcx, 0x3f
imul eax, ecx, 0xf1bac858
cmp eax, 0xac2022af
jbe 0x1400da767
lea eax, [rdi*8]
lea eax, [rax + rax*2]
mov dword [rsp + 0x20], eax
mov ecx, 0xb
xor edx, edx
xor r8d, r8d
mov r9, rbx
call qword [sym.imp.powrprof.dll_CallNtPowerInformation]
mov r15, qword [sym.imp.powrprof.dll_CallNtPowerInformation]
nop
mov eax, dword [0x141ddb8c0]
xor eax, dword [0x141ddb8c4]
imul ebp, eax, 0x109af70a
lea eax, [rdi*8]
lea eax, [rax + rax*2]
mov dword [rsp + 0x20], eax
mov ecx, 0xb
xor edx, edx
xor r8d, r8d
mov r9, rbx
call r15
cmp ebp, 0xa11403a7
je 0x1400da770
test eax, eax
js 0x1400da810
nop dword [rax]
mov eax, dword [0x141ddb908]
sub eax, dword [0x141ddb90c]
imul eax, eax, 0xa11a372c
and eax, 0xcba1ca48
cmp eax, 0x968e5203
je 0x1400da7b0
xor eax, eax
test al, al
jne 0x1400da7d0
test rdi, rdi
je 0x1400da95f
mov eax, dword [0x141ddb910]
add eax, dword [0x141ddb914]
or eax, 0xc4802020
and eax, 0xecb532b0
add eax, 0x8f65f6ce
cmp eax, 0xd32e53c5
jbe 0x1400dab16
jmp 0x1400dab33
mov eax, dword [0x141ddb8c8]
or eax, dword [0x141ddb8cc]
or eax, 0x6bae4654
cmp eax, 0x37d1cbec
je 0x1400da810
xor eax, eax
nop word [rax + rax]
test al, al
jne 0x1400da830
test rdi, rdi
je 0x1400da96d
mov eax, dword [0x141ddb8d0]
xor eax, dword [0x141ddb8d4]
add eax, 0xe289adc0
imul rcx, rax, 0x1463f8b9
shr rcx, 0x20
sub eax, ecx
shr eax, 1
add eax, ecx
shr eax, 0x1f
cmp eax, 0x1ea71c99
jbe 0x1400da87b
lea rdx, [rdi*8]
mov ecx, 8
call fcn.1400c29b0
lea r14, [rdi*8]
nop word cs:[rax + rax]
mov ebp, dword [0x141ddb8d8]
imul ebp, dword [0x141ddb8dc]
and ebp, 0x380528
add ebp, 0xaddd1fa1
mov ecx, 8
mov rdx, r14
call fcn.1400c29b0
cmp ebp, 0x26ae2c97
jb 0x1400da890
nop
mov ecx, dword [0x141ddb8e0]
and ecx, dword [0x141ddb8e4]
cmp ecx, 0xbc72bafc
je 0x1400da8c0
nop word cs:[rax + rax]
mov ecx, dword [0x141ddb8e8]
imul ecx, dword [0x141ddb8ec]
imul ecx, ecx, 0xd8255088
cmp ecx, 0x6887b292
je 0x1400da8e0
test rax, rax
je 0x1400da71c
nop word cs:[rax + rax]
mov ecx, dword [0x141ddb8f0]
imul ecx, dword [0x141ddb8f4]
add ecx, 0xed1cd213
or ecx, 0xa17c8c67
cmp ecx, 0xefcaf3f
jb 0x1400da910
nop word cs:[rax + rax]
mov ecx, dword [0x141ddb8f8]
and ecx, dword [0x141ddb8fc]
imul ecx, ecx, 0x6d667f13
cmp ecx, 0x644016ae
ja 0x1400da940
mov rcx, rdi
jmp 0x1400da974
mov r15d, 8
xor r14d, r14d
jmp 0x1400daa99
mov eax, 8
xor ecx, ecx
mov qword [rsi], rcx
mov qword [rsi + 8], rax
mov qword [rsi + 0x10], rdi
test r12, r12
je 0x1400dab07
nop dword [rax + rax]
mov eax, dword [0x141ddb900]
xor eax, dword [0x141ddb904]
imul eax, eax, 0xec3a1c64
xor eax, 0x22300640
cmp eax, 0x9364b82a
ja 0x1400da990
mov rcx, qword [0x141dde6e0]
xor edx, edx
mov r8, rbx
add rsp, 0x30
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r14
pop r15
jmp qword [sym.imp.KERNEL32.dll_HeapFree]
mov ebp, dword [0x141ddb898]
or ebp, dword [0x141ddb89c]
and ebp, 0xc02019c0
add ebp, 0x479352b8
xor ecx, ecx
mov rdx, r14
call fcn.1400c29b0
cmp ebp, 0xae21ae9f
jbe 0x1400daa05
xor ecx, ecx
mov rdx, r14
call fcn.1400c29b0
jmp 0x1400da9cf
mov rbx, rax
mov r12, rdi
test rax, rax
jne 0x1400da71e
mov eax, dword [0x141ddb8a0]
mov ecx, dword [0x141ddb8a4]
add eax, ecx
add eax, 0x5c24f8ce
or eax, 0x492c10fb
and eax, 0xddae97fb
cmp eax, 0x25014436
jae 0x1400daa40
ud2
mov eax, dword [0x141ddb8a8]
xor edx, edx
div dword [0x141ddb8ac]
and eax, 0x6a74111a
imul eax, eax, 0x27a06560
ud2
test r12, r12
je 0x1400daab0
mov rcx, qword [0x141dde6e0]
xor edx, edx
mov r8, rbx
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rsi], rdi
mov qword [rsi + 8], r15
mov eax, dword [0x141ddb960]
or eax, dword [0x141ddb964]
imul eax, eax, 0xb2201996
add eax, 0xa8e6c937
and eax, 0xf2de54b
cmp eax, 0x44b855c0
jbe 0x1400daae0
mov qword [rsi + 0x10], r14
nop
mov eax, dword [0x141ddb968]
add eax, dword [0x141ddb96c]
imul eax, eax, 0x6cfa5bb1
or eax, 0x6e14f9ac
and eax, 0x6f56fbae
mov qword [rsi + 0x10], r14
cmp eax, 0x275c09d7
jb 0x1400daae0
add rsp, 0x30
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r14
pop r15
ret
lea rdx, [rdi*8]
movzx eax, byte [0x141dde6f8]
xor ebp, ebp
xor ecx, ecx
call fcn.1400c29b0
test bpl, bpl
je 0x1400dab4b
lea rdx, [rdi*8]
movzx eax, byte [0x141dde6f8]
xor ecx, ecx
call fcn.1400c29b0
jmp 0x1400dab16
mov r15, rax
nop
mov eax, dword [0x141ddb918]
add eax, dword [0x141ddb91c]
not eax
or eax, 0x946517d4
and eax, 0x94e51ff4
cmp eax, 0xd8b128d7
ja 0x1400dab50
nop
mov eax, dword [0x141ddb920]
imul eax, dword [0x141ddb924]
imul eax, eax, 0x860eb34e
and eax, 0xb474ff7a
cmp eax, 0xab64d325
ja 0x1400dab70
test r15, r15
je 0x1400dacda
add r14, 0xffffffffffffffe8
movabs rcx, 0xaaaaaaaaaaaaaaab
nop word cs:[rax + rax]
mov eax, dword [0x141ddb928]
xor edx, edx
div dword [0x141ddb92c]
imul r8d, eax, 0xfa52cb6
mov rax, r14
mul rcx
cmp r8d, 0x817425cc
je 0x1400dabb0
shr rdx, 4
inc rdx
mov eax, edx
and eax, 3
cmp r14, 0x48
jae 0x1400dabf0
xor r14d, r14d
mov rcx, rbx
jmp 0x1400dac50
mov ecx, dword [0x141ddb930]
or ecx, dword [0x141ddb934]
add ecx, 0xa6dfb286
cmp ecx, 0x5bb96389
jb 0x1400dabf0
and rdx, 0xfffffffffffffffc
xor r14d, r14d
mov rcx, rbx
nop word cs:[rax + rax]
mov r8d, dword [rcx + 8]
mov qword [r15 + r14*8], r8
mov r8d, dword [rcx + 0x20]
mov qword [r15 + r14*8 + 8], r8
mov r8d, dword [rcx + 0x38]
mov qword [r15 + r14*8 + 0x10], r8
mov r8d, dword [rcx + 0x50]
add rcx, 0x60
mov qword [r15 + r14*8 + 0x18], r8
add r14, 4
cmp rdx, r14
jne 0x1400dac20
test rax, rax
je 0x1400daa99
xor edx, edx
nop dword [rax + rax]
mov r8d, dword [0x141ddb950]
xor r8d, dword [0x141ddb954]
imul r8d, r8d, 0x872ddec3
xor r8d, 0x8110c81
and r8d, 0x4d33cec1
cmp r8d, 0x2b9cc283
jbe 0x1400daca0
mov r8d, dword [rcx + 8]
mov qword [r15 + r14*8], r8
nop word cs:[rax + rax]
mov r8d, dword [0x141ddb958]
or r8d, dword [0x141ddb95c]
imul r8d, r8d, 0x5b53d166
mov r9d, dword [rcx + 8]
mov qword [r15 + r14*8], r9
cmp r8d, 0x7f008af9
je 0x1400daca0
add rcx, 0x18
inc r14
inc rdx
cmp rdx, rax
jne 0x1400dac60
jmp 0x1400daa99
mov eax, dword [0x141ddb938]
xor edx, edx
div dword [0x141ddb93c]
add eax, 0x3ce1e3aa
and eax, 0x4eaaf75
imul eax, eax, 0x647c19e8
cmp eax, 0x784c9620
jbe 0x1400dad10
ud2
mov eax, dword [0x141ddb940]
sub eax, dword [0x141ddb944]
add eax, 0x75e7896b
xor eax, 0x2ab04d9e
imul rax, rax, 0x49b81671
shr rax, 0x3d
ud2