Function at 0x1400c91b0
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x20
mov rsi, rcx
cmp qword [rcx + 0x10], 0
je 0x1400c9266
nop dword [rax]
mov eax, dword [0x141dd5660]
and eax, dword [0x141dd5664]
imul eax, eax, 0x2f674176
add eax, 0xa7ea8e0c
and eax, 0x8eac6aea
cmp eax, 0xa725af02
je 0x1400c91d0
mov rdi, qword [rsi + 0x18]
mov eax, dword [0x141dd5668]
imul eax, dword [0x141dd566c]
or eax, 0x9b22b49
add eax, 0x4c25d972
and eax, 0x914015b
cmp eax, 0xd7625f1c
ja 0x1400c9252
mov eax, dword [0x141dd5670]
add eax, dword [0x141dd5674]
imul ebx, eax, 0xac883795
add ebx, 0xa3242d85
xor ebx, 0xa5153c2b
mov rcx, qword [0x141dda6a0]
xor edx, edx
mov r8, rdi
call qword [sym.imp.KERNEL32.dll_HeapFree]
cmp ebx, 0x6e0c954f
jbe 0x1400c9266
mov rcx, qword [0x141dda6a0]
xor edx, edx
mov r8, rdi
call qword [sym.imp.KERNEL32.dll_HeapFree]
jmp 0x1400c921a
mov rdi, qword [rsi + 0x38]
nop word [rax + rax]
mov eax, dword [0x141dd5678]
sub eax, dword [0x141dd567c]
imul eax, eax, 0xd981922c
add eax, 0xe241a9c1
imul rcx, rax, 0x477ec1af
shr rcx, 0x20
sub eax, ecx
shr eax, 1
add eax, ecx
shr eax, 0x1e
cmp eax, 0xb2147681
ja 0x1400c9270
nop word cs:[rax + rax]
mov eax, dword [0x141dd5680]
add eax, dword [0x141dd5684]
imul eax, eax, 0xa4ee4c9a
add eax, 0x1b49c96e
imul rax, rax, 0x59ac1eb7
shr rax, 0x3e
cmp eax, 0x6495ff8b
je 0x1400c92b0
mov rbx, qword [rsi + 0x40]
test rbx, rbx
je 0x1400c9336
lea r14, [rdi + 8]
mov r15, qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax]
cmp qword [r14 - 8], 0
je 0x1400c9310
mov r8, qword [r14]
mov rcx, qword [0x141dda6a0]
xor edx, edx
call r15
nop word cs:[rax + rax]
mov eax, dword [0x141dd5688]
sub eax, dword [0x141dd568c]
add eax, 0x88777fa3
xor eax, 0xd43c3f1f
cmp eax, 0x355d6956
ja 0x1400c9310
add r14, 0x20
dec rbx
jne 0x1400c92f0
mov eax, 0xdcbbb733
nop dword [rax + rax]
mov ecx, dword [0x141dd5690]
imul ecx, dword [0x141dd5694]
or ecx, 0xf5888836
imul ecx, ecx, 0xa542de92
imul rcx, rax
shr rcx, 0x3e
cmp ecx, 0xb3ca2b03
ja 0x1400c9340
mov rax, qword [rsi + 0x30]
nop dword [rax]
mov ecx, dword [0x141dd5698]
and ecx, dword [0x141dd569c]
xor ecx, 0xa64ed4c1
imul rcx, rcx, 0x60ee7bd7
shr rcx, 0x3c
imul ecx, ecx, 0x731437a8
cmp ecx, 0x6ef5afd1
jb 0x1400c9370
test rax, rax
je 0x1400c9458
mov eax, dword [0x141dd56a0]
or eax, dword [0x141dd56a4]
xor eax, 0x179544df
mov ecx, 0x99078fcf
imul rcx, rax
shr rcx, 0x3d
or ecx, 0xbd5c0d41
cmp ecx, 0x4eb945bf
jae 0x1400c93e0
mov rax, qword [0x141dda6a0]
nop word [rax + rax]
mov eax, dword [0x141dd56a8]
imul eax, dword [0x141dd56ac]
imul eax, eax, 0x7746b1f9
and eax, 0x581b4e29
imul eax, eax, 0x75915ec1
mov rbx, qword [0x141dda6a0]
cmp eax, 0x5546ffc7
jb 0x1400c93e0
mov eax, dword [0x141dd56b0]
xor edx, edx
div dword [0x141dd56b4]
and eax, 0x102001
cmp eax, 0x5d3c34ab
ja 0x1400c9448
mov ebp, dword [0x141dd56b8]
xor ebp, dword [0x141dd56bc]
mov rcx, rbx
xor edx, edx
mov r8, rdi
call qword [sym.imp.KERNEL32.dll_HeapFree]
cmp ebp, 0x49c09094
jne 0x1400c9458
mov rcx, rbx
xor edx, edx
mov r8, rdi
call qword [sym.imp.KERNEL32.dll_HeapFree]
jmp 0x1400c9426
mov rax, qword [rsi + 0x60]
nop dword [rax]
mov ecx, dword [0x141dd56c0]
mov edx, dword [0x141dd56c4]
add ecx, edx
add ecx, 0xa488ba3b
and ecx, 0x9008806c
cmp ecx, 0x1e07bcdc
je 0x1400c9460
shl rax, 1
test rax, rax
jne 0x1400c949f
mov rax, qword [rsi + 0x80]
shl rax, 1
test rax, rax
je 0x1400c95d0
jmp 0x1400c94c5
mov r8, qword [rsi + 0x68]
mov rcx, qword [0x141dda6a0]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rax, qword [rsi + 0x80]
shl rax, 1
test rax, rax
je 0x1400c95d0
mov eax, dword [0x141dd56c8]
xor edx, edx
div dword [0x141dd56cc]
nop word cs:[rax + rax]
mov eax, dword [0x141dd56d0]
imul eax, dword [str.Mcv]
add eax, 0xc159e26
or eax, 0xcbc80e7
cmp eax, 0xbc4099e1
je 0x1400c94e0
mov rdi, qword [rsi + 0x88]
mov eax, dword [0x141dd56d8]
sub eax, dword [0x141dd56dc]
cmp eax, 0xbf9bb7f2
jne 0x1400c9520
mov rax, qword [0x141dda6a0]
nop
mov eax, dword [0x141dd56e0]
mov ecx, dword [0x141dd56e4]
add eax, ecx
add eax, 0x1e0f1382
or eax, 0xa570282a
imul rax, rax, 0x4064ba8f
shr rax, 0x3e
mov rbx, qword [0x141dda6a0]
cmp eax, 0x6deaa4b9
ja 0x1400c9520
mov eax, dword [0x141dd56e8]
and eax, dword [0x141dd56ec]
add eax, 0x7e7f5309
imul rcx, rax, 0x636d7533
shr rcx, 0x20
sub eax, ecx
shr eax, 1
add eax, ecx
shr eax, 0x1d
cmp eax, 0xa0ba4c63
jne 0x1400c958b
mov rcx, rbx
xor edx, edx
mov r8, rdi
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov r14, qword [sym.imp.KERNEL32.dll_HeapFree]
nop word cs:[rax + rax]
mov ebp, dword [0x141dd56f0]
or ebp, dword [0x141dd56f4]
or ebp, 0xace8295a
mov rcx, rbx
xor edx, edx
mov r8, rdi
call r14
cmp ebp, 0xd94d1375
je 0x1400c95a0
nop word cs:[rax + rax]
mov eax, dword [0x141dd56f8]
xor eax, dword [0x141dd56fc]
add eax, 0x1fd6a21d
xor eax, 0xc00f35b4
add eax, 0xf1bfbf1
cmp eax, 0xe848c7a
jb 0x1400c95d0
mov rdi, qword [rsi + 0x50]
nop word cs:[rax + rax]
mov eax, dword [0x141dd5700]
sub eax, dword [0x141dd5704]
imul eax, eax, 0xc3e4edf8
xor eax, 0x25d49e75
cmp eax, 0x8816a18a
jb 0x1400c9600
mov rbx, qword [rsi + 0x58]
test rbx, rbx
je 0x1400c969a
xor r14d, r14d
mov r15, qword [sym.imp.KERNEL32.dll_HeapFree]
xor r12d, r12d
nop word cs:[rax + rax]
mov eax, dword [0x141dd5708]
xor edx, edx
div dword [0x141dd570c]
and eax, 0x3a43104
add eax, 0x82297cf4
cmp eax, 0x4cb137b2
jb 0x1400c9640
mov rax, r12
shl rax, 5
cmp qword [rdi + rax], 0
je 0x1400c9680
add rax, rdi
mov r8, qword [rax + 8]
mov rcx, qword [0x141dda6a0]
xor edx, edx
call r15
inc r12
nop word cs:[rax + rax]
test r14b, r14b
jne 0x1400c9690
cmp r12, rbx
jne 0x1400c9640
mov rcx, qword [rsi + 0x48]
nop
mov eax, dword [0x141dd5710]
xor edx, edx
div dword [0x141dd5714]
and eax, 0xb0a1d8e1
add eax, 0xeec778e8
and eax, 0xb5e51928
cmp eax, 0x65838e0d
jb 0x1400c96a0
nop word cs:[rax + rax]
mov eax, dword [0x141dd5718]
or eax, dword [0x141dd571c]
or eax, 0xfd7c7efc
and eax, 0xfffcfeff
cmp eax, 0x4a03b375
je 0x1400c96d0
test rcx, rcx
je 0x1400c97a0
mov eax, dword [0x141dd5720]
xor eax, dword [0x141dd5724]
imul rax, rax, 0x3328711
shr rax, 0x37
or eax, 0x40723d33
imul eax, eax, 0x13d260d5
cmp eax, 0x2717a90f
jae 0x1400c9730
mov rax, qword [0x141dda6a0]
nop word cs:[rax + rax]
mov eax, dword [0x141dd5728]
or eax, dword [0x141dd572c]
add eax, 0x27ef0a7d
or eax, 0x10c11
and eax, 0x90312c1b
mov rcx, qword [0x141dda6a0]
cmp eax, 0xbff9e25d
je 0x1400c9730
xor edx, edx
mov r8, rdi
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop word cs:[rax + rax]
mov eax, dword [0x141dd5730]
sub eax, dword [0x141dd5734]
add eax, 0x6f124435
or eax, 0xe4bef4a7
xor eax, 0xd4042111
cmp eax, 0xf54829fe
ja 0x1400c9770
nop word cs:[rax + rax]
mov eax, dword [0x141dd5738]
mov ecx, dword [0x141dd573c]
add eax, ecx
add eax, 0xa1d9500
xor eax, 0x559db3cd
imul eax, eax, 0x1665992d
cmp eax, 0x6dd77759
jb 0x1400c97a0
nop word cs:[rax + rax]
mov eax, dword [0x141dd5740]
sub eax, dword [0x141dd5744]
imul eax, eax, 0x27b26d3
add eax, 0x64b7fc30
cmp eax, 0x23b1644d
jb 0x1400c97d0
mov rax, qword [rsi + 0x98]
shl rax, 1
test rax, rax
je 0x1400c9850
mov eax, 0x8473171f
nop word cs:[rax + rax]
mov ecx, dword [0x141dd5748]
sub ecx, dword [0x141dd574c]
or ecx, 0xb1d406d8
shr ecx, 1
imul rcx, rax
shr rcx, 0x3c
or ecx, 0x87991d75
cmp ecx, 0x7710f744
je 0x1400c9810
mov r8, qword [rsi + 0xa0]
mov rcx, qword [0x141dda6a0]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rax, qword [rsi + 0xb8]
nop word [rax + rax]
mov ecx, dword [0x141dd5750]
or ecx, dword [str._n_aB]
and ecx, 0x9980e6
imul ecx, ecx, 0xfef961b2
cmp ecx, 0x34d8a9fb
jb 0x1400c9860
shl rax, 1
test rax, rax
je 0x1400c9960
mov eax, dword [0x141dd5758]
or eax, dword [0x141dd575c]
imul eax, eax, 0xc5aeeca4
or eax, 0xe97a463
imul eax, eax, 0xe5c342a2
cmp eax, 0xe4e3441f
jne 0x1400c98c0
mov rax, qword [0x141dda6a0]
nop word [rax + rax]
mov eax, dword [0x141dd5760]
sub eax, dword [0x141dd5764]
imul eax, eax, 0x203af639
or eax, 0x60a10124
and eax, 0x68a18926
mov rdi, qword [rsi + 0xc0]
mov rbx, qword [0x141dda6a0]
cmp eax, 0x97687b8e
ja 0x1400c98c0
mov eax, dword [0x141dd5768]
xor edx, edx
div dword [0x141dd576c]
and eax, 0xa66140a6
add eax, 0xb021d818
cmp eax, 0xab6c135d
jae 0x1400c991e
mov rcx, rbx
xor edx, edx
mov r8, rdi
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov r14, qword [sym.imp.KERNEL32.dll_HeapFree]
nop word cs:[rax + rax]
mov eax, dword [0x141dd5770]
sub eax, dword [0x141dd5774]
and eax, 0x4970cb98
imul ebp, eax, 0x5b0c28a3
or ebp, 0x2bb1bdbb
mov rcx, rbx
xor edx, edx
mov r8, rdi
call r14
cmp ebp, 0x2494709a
je 0x1400c9930
mov rax, qword [rsi + 0xf8]
nop word [rax + rax]
mov ecx, dword [0x141dd5778]
or ecx, dword [0x141dd577c]
or ecx, 0x422cc60
and ecx, 0x9ce3ee63
imul ecx, ecx, 0x489b50a3
cmp ecx, 0x944c8339
jb 0x1400c9970
test rax, rax
je 0x1400c9a72
mov rcx, 0xffffffffffffffff
lock xadd qword [rax], rcx
nop dword [rax + rax]
mov eax, dword [0x141dd5780]
xor edx, edx
div dword [0x141dd5784]
or eax, 0x64561792
xor eax, 0xfeab9de8
add eax, 0x2588909b
cmp eax, 0xdc5e73ac
ja 0x1400c99b0
xor eax, eax
nop word cs:[rax + rax]
test al, al
jne 0x1400c99e0
cmp rcx, 1
jne 0x1400c9a72
mov eax, dword [0x141dd5788]
xor edx, edx
div dword [0x141dd578c]
add eax, 0xbba82602
imul rax, rax, 0x13753601
shr rax, 0x3b
add eax, 0x94659915
cmp eax, 0xbf820176
jbe 0x1400c9a20
nop dword [rax + rax]
mov eax, dword [0x141dd5790]
xor eax, dword [0x141dd5794]
or eax, 0x9df81a16
xor eax, 0x37e6dca6
add eax, 0xd34b80e7
cmp eax, 0x80e40bd7
ja 0x1400c9a20
mov rcx, qword [rsi + 0xf8]
call fcn.1400c9d60
nop
mov eax, dword [0x141dd5798]
xor eax, dword [0x141dd579c]
add eax, 0x39f87735
or eax, 0xcc013044
and eax, 0xce83b1c6
cmp eax, 0x29fdde94
jb 0x1400c9a50
add rsp, 0x20
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r14
pop r15
ret