Function at 0x1400cd5d0
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x48
mov qword [rsp + 0x28], rcx
nop word cs:[rax + rax]
mov eax, dword [0x141dd3f70]
imul eax, dword [0x141dd3f74]
imul eax, eax, 0xf12c8a72
and eax, 0x23ada0b2
imul eax, eax, 0xc3d74460
cmp eax, 0x8e35037b
jb 0x1400cd5f0
mov rax, qword [rsp + 0x28]
mov rax, qword [rax]
test rax, rax
je 0x1400cdb54
cmp eax, 1
jne 0x1400cd9e5
mov eax, dword [0x141dd3fb8]
xor edx, edx
div dword [0x141dd3fbc]
mov rax, qword [rsp + 0x28]
add rax, 0x10
mov qword [rsp + 0x30], rax
nop dword [rax + rax]
mov eax, dword [0x141dd3fc0]
xor edx, edx
div dword [0x141dd3fc4]
imul eax, eax, 0x52ae3b29
cmp eax, 0xba18cb75
je 0x1400cd650
mov eax, dword [0x141dd3fc8]
xor edx, edx
div dword [0x141dd3fcc]
nop dword [rax]
mov eax, dword [0x141dd3fd0]
xor eax, dword [0x141dd3fd4]
add eax, 0x63c1c6a9
or eax, 0x5d980e20
cmp eax, 0xdf7b6b2
jb 0x1400cd680
mov rax, qword [rsp + 0x28]
mov rdi, qword [rax + 8]
test rdi, rdi
je 0x1400cdb54
nop
mov eax, dword [0x141dd3fd8]
sub eax, dword [0x141dd3fdc]
add eax, 0x99c9f727
and eax, 0xf6e7ab6a
xor eax, 0xcd369594
cmp eax, 0x9b3315ce
jb 0x1400cd6b0
mov rax, qword [rsp + 0x28]
mov r8, qword [rax + 0x18]
nop dword [rax + rax]
mov eax, dword [0x141dd3fe0]
xor edx, edx
div dword [0x141dd3fe4]
imul rax, rax, 0x1787d4e5
shr rax, 0x3c
or eax, 0x665353ee
imul eax, eax, 0x5fb4eaf0
cmp eax, 0x5fb7cf60
jb 0x1400cd6e0
mov r13d, 0xc9e130e7
mov rbp, qword [sym.imp.KERNEL32.dll_HeapFree]
mov r15d, 0xa0c8c383
nop
mov rdx, qword [rdi + 0x18]
mov rcx, qword [rsp + 0x28]
mov qword [rcx + 8], rdx
lea rax, [rdx + 0x20]
mov qword [rsp + 0x38], rdx
test rdx, rdx
cmove rax, qword [rsp + 0x30]
mov qword [rax], 0
dec r8
mov qword [rsp + 0x40], r8
mov qword [rcx + 0x18], r8
mov rbx, qword [rdi + 8]
mov r14, qword [rdi + 0x10]
test r14, r14
je 0x1400cd7f0
xor r12d, r12d
nop word cs:[rax + rax]
mov eax, dword [0x141dd3fe8]
and eax, dword [0x141dd3fec]
xor eax, 0x1aaeb7b2
imul eax, eax, 0xd37df34e
add eax, 0x1afb075e
cmp eax, 0xb05e0c9
jae 0x1400cd7b0
imul rcx, r12, 0x158
add rcx, rbx
call fcn.1400c8390
nop word cs:[rax + rax]
mov eax, dword [0x141dd3ff0]
imul eax, dword [0x141dd3ff4]
imul rax, r15
shr rax, 0x3d
imul esi, eax, 0xd0aa3a29
and esi, 0x62783cab
imul rcx, r12, 0x158
add rcx, rbx
call fcn.1400c8390
cmp esi, 0x7fb4b9e7
ja 0x1400cd7b0
inc r12
cmp r12, r14
jne 0x1400cd770
mov eax, dword [0x141dd3ff8]
xor eax, dword [0x141dd3ffc]
xor eax, 0x32a97352
imul rax, r13
shr rax, 0x3f
cmp eax, 0x727c476d
ja 0x1400cd7f0
mov rax, qword [rdi]
nop word cs:[rax + rax]
mov ecx, dword [0x141dd4000]
xor ecx, dword [0x141dd4004]
add ecx, 0x16569067
and ecx, 0x2058e769
imul ecx, ecx, 0xd159d44d
cmp ecx, 0xb71b579c
ja 0x1400cd820
nop word cs:[rax + rax]
mov ecx, dword [0x141dd4008]
sub ecx, dword [0x141dd400c]
add ecx, 0x378afabf
and ecx, 0x9bdbe264
cmp ecx, 0xbf0b591
je 0x1400cd850
test rax, rax
je 0x1400cd971
mov eax, dword [0x141dd4010]
imul eax, dword [0x141dd4014]
mov ecx, 0xa2b61873
imul rax, rcx
shr rax, 0x3f
imul eax, eax, 0xd465ac15
cmp eax, 0xc3ff0534
jne 0x1400cd8b0
mov rax, qword [0x141dd7fe0]
nop word [rax + rax]
mov eax, dword [0x141dd4018]
or eax, dword [0x141dd401c]
or eax, 0x1c35f5a7
add eax, 0xf8dae41d
or eax, 0xacecf025
mov r14, qword [0x141dd7fe0]
cmp eax, 0xfd08f488
ja 0x1400cd8b0
mov eax, dword [0x141dd4020]
imul eax, dword [0x141dd4024]
imul eax, eax, 0xc6fd1c45
add eax, 0x7e230c6b
cmp eax, 0x8dec0e93
ja 0x1400cd930
nop dword [rax + rax]
mov eax, dword [0x141dd4028]
xor eax, dword [0x141dd402c]
imul esi, eax, 0xf1ab414a
add esi, 0x75be56c4
or esi, 0x8437ef24
mov rcx, r14
xor edx, edx
mov r8, rbx
call rbp
cmp esi, 0xd319a73f
jbe 0x1400cd940
mov rcx, r14
xor edx, edx
mov r8, rbx
call rbp
jmp 0x1400cd900
mov eax, dword [0x141dd4030]
or eax, dword [0x141dd4034]
or eax, 0x4a8dbe68
imul rcx, rax, 0x1188bbbd
shr rcx, 0x20
sub eax, ecx
shr eax, 1
add eax, ecx
shr eax, 0x1f
or eax, 0xdc535fe8
cmp eax, 0x3ecc35ec
jb 0x1400cd940
mov rbx, qword [0x141dd7fe0]
mov eax, dword [0x141dd4038]
xor eax, dword [0x141dd403c]
or eax, 0xe6c94184
add eax, 0x6136c40b
cmp eax, 0x3bacfe39
jae 0x1400cd9a0
mov rcx, rbx
xor edx, edx
mov r8, rdi
call rbp
nop
mov esi, dword [0x141dd4040]
or esi, dword [0x141dd4044]
xor esi, 0xbe324f8a
add esi, 0x9a54e62
mov rcx, rbx
xor edx, edx
mov r8, rdi
call rbp
cmp esi, 0x818a386b
jb 0x1400cd9a0
mov rax, qword [rsp + 0x38]
mov rdi, rax
test rax, rax
mov r8, qword [rsp + 0x40]
jne 0x1400cd720
jmp 0x1400cdb54
mov eax, 0xe2f00b3b
nop word [rax + rax]
mov ecx, dword [str._g]
add ecx, dword [0x141dd3f7c]
imul rcx, rax
shr rcx, 0x3e
or ecx, 0x6507bf3e
cmp ecx, 0xd95caaf
je 0x1400cd9f0
mov rax, qword [rsp + 0x28]
mov rdi, qword [rax + 8]
mov rsi, qword [rax + 0x10]
mov rax, qword [rsi]
test rax, rax
je 0x1400cda45
mov rcx, rdi
call rax
nop dword [rax]
mov eax, dword [0x141dd3f80]
xor edx, edx
div dword [0x141dd3f84]
cmp eax, 0x1985abff
je 0x1400cda30
cmp qword [rsi + 8], 0
je 0x1400cdb54
mov rax, qword [rsi + 0x10]
nop word cs:[rax + rax]
mov ecx, dword [0x141dd3f88]
add ecx, dword [0x141dd3f8c]
xor ecx, 0x3699e266
imul rcx, rcx, 0x66ce1f5d
shr rcx, 0x3e
cmp ecx, 0xe02a0dc0
je 0x1400cda60
cmp rax, 0x11
jb 0x1400cdae2
nop dword [rax + rax]
mov eax, dword [0x141dd3f90]
imul eax, dword [0x141dd3f94]
or eax, 0x9104a484
and eax, 0x93ceaea5
add eax, 0xb6291538
cmp eax, 0xd59cc5f3
ja 0x1400cda90
mov rdi, qword [rdi - 8]
nop word [rax + rax]
mov eax, dword [0x141dd3f98]
xor eax, dword [0x141dd3f9c]
and eax, 0x1d458ff9
add eax, 0x10365c0
and eax, 0x13021881
cmp eax, 0x4ce75535
ja 0x1400cdac0
mov eax, dword [0x141dd3fa0]
or eax, dword [0x141dd3fa4]
and eax, 0xb5f60dcb
imul eax, eax, 0x2dcaf1ae
add eax, 0xb81b25fa
cmp eax, 0xd7098621
jbe 0x1400cdb17
mov rcx, qword [0x141dd7fe0]
xor edx, edx
mov r8, rdi
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rsi, qword [sym.imp.KERNEL32.dll_HeapFree]
nop
mov ebx, dword [0x141dd3fa8]
sub ebx, dword [0x141dd3fac]
and ebx, 0x204cda1
add ebx, 0x95bc47d6
xor ebx, 0xe792e112
mov rcx, qword [0x141dd7fe0]
xor edx, edx
mov r8, rdi
call rsi
cmp ebx, 0xa97d7201
ja 0x1400cdb20
mov eax, 0xf179c041
nop dword [rax]
mov ecx, dword [0x141dd3fb0]
imul ecx, dword [0x141dd3fb4]
imul ecx, ecx, 0x4b529e31
add ecx, 0xad04af2b
imul rcx, rax
shr rcx, 0x3e
cmp ecx, 0x7c06d9e0
je 0x1400cdb60
add rsp, 0x48
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret