Function at 0x1400c8390
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x28
mov rsi, rcx
xor eax, eax
nop word cs:[rax + rax]
test al, al
jne 0x1400c83b0
cmp qword [rsi + 0x10], 0
je 0x1400c844d
mov eax, dword [0x141dd31e8]
add eax, dword [0x141dd31ec]
xor eax, 0xfe4dc9ae
add eax, 0x39cbe79a
and eax, 0xb058a869
cmp eax, 0x81d494e0
je 0x1400c841b
mov eax, dword [0x141dd31f0]
imul eax, dword [0x141dd31f4]
imul edi, eax, 0xb46feff2
add edi, 0xbede0a5
and edi, 0xaf28c4ea
mov r8, qword [rsi + 0x18]
mov rcx, qword [0x141dd7fe0]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
cmp edi, 0xcc60c91e
jne 0x1400c8430
mov r8, qword [rsi + 0x18]
mov rcx, qword [0x141dd7fe0]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
jmp 0x1400c83e1
mov eax, dword [0x141dd31f8]
add eax, dword [0x141dd31fc]
or eax, 0x4aedad88
and eax, 0x6bfdbdac
cmp eax, 0x234fa7d5
je 0x1400c8430
mov rdi, qword [rsi + 0x38]
mov qword [rsp + 0x20], rsi
mov r15, qword [rsi + 0x40]
test r15, r15
je 0x1400c8519
xor r12d, r12d
mov r13, qword [sym.imp.KERNEL32.dll_HeapFree]
mov ebp, 0xc1c07481
jmp 0x1400c848c
inc r12
cmp r12, r15
je 0x1400c8519
mov rax, r12
shl rax, 5
cmp qword [rdi + rax], 0
je 0x1400c8480
add rax, rdi
mov rbx, qword [rax + 8]
mov r14, qword [0x141dd7fe0]
mov eax, dword [0x141dd3200]
or eax, dword [0x141dd3204]
imul eax, eax, 0xd0b84529
or eax, 0xd9c60df2
cmp eax, 0xabefa4bc
jne 0x1400c84e0
mov rcx, r14
xor edx, edx
mov r8, rbx
call r13
nop word cs:[rax + rax]
mov eax, dword [0x141dd3208]
imul eax, dword [0x141dd320c]
imul esi, eax, 0x63efea37
xor esi, 0x52e2726f
imul rsi, rbp
shr rsi, 0x3d
mov rcx, r14
xor edx, edx
mov r8, rbx
call r13
cmp esi, 0x3580cc22
ja 0x1400c84e0
jmp 0x1400c8480
mov r13, qword [rsp + 0x20]
nop
mov eax, dword [0x141dd3210]
xor eax, dword [0x141dd3214]
and eax, 0x69777876
imul eax, eax, 0xb630e9f2
shr eax, 1
imul rax, rax, 0x413591e9
shr rax, 0x3c
cmp eax, 0x6193bc4
ja 0x1400c8520
mov rax, qword [r13 + 0x30]
nop
mov ecx, dword [0x141dd3218]
xor ecx, dword [0x141dd321c]
add ecx, 0xcdad005b
xor ecx, 0x28bb3dd5
cmp ecx, 0x508fd19f
jb 0x1400c8550
test rax, rax
je 0x1400c8680
mov eax, dword [0x141dd3220]
sub eax, dword [0x141dd3224]
imul eax, eax, 0x29e84445
and eax, 0x46742f6e
add eax, 0x8b613bd
cmp eax, 0xa782148a
jbe 0x1400c85b0
mov rax, qword [0x141dd7fe0]
nop word cs:[rax + rax]
mov eax, dword [0x141dd3228]
xor eax, dword [0x141dd322c]
xor eax, 0x3cb7e965
imul eax, eax, 0x6aee72f8
mov rbx, qword [0x141dd7fe0]
cmp eax, 0xd6120599
ja 0x1400c85b0
mov eax, dword [0x141dd3230]
imul eax, dword [0x141dd3234]
add eax, 0x73dc6f93
mov ecx, 0xa52f643b
imul rcx, rax
shr rcx, 0x3e
imul eax, ecx, 0xecbaf42d
cmp eax, 0xa12900e8
je 0x1400c8636
mov eax, dword [0x141dd3238]
imul eax, dword [0x141dd323c]
add eax, 0x325d9c9
mov esi, 0x88519119
imul rsi, rax
shr rsi, 0x3e
mov rcx, rbx
xor edx, edx
mov r8, rdi
call qword [sym.imp.KERNEL32.dll_HeapFree]
cmp esi, 0x9241619f
jne 0x1400c8646
mov rcx, rbx
xor edx, edx
mov r8, rdi
call qword [sym.imp.KERNEL32.dll_HeapFree]
jmp 0x1400c8601
mov eax, 0xc248dbd3
nop dword [rax + rax]
mov ecx, dword [0x141dd3240]
add ecx, dword [0x141dd3244]
imul rcx, rax
shr rcx, 0x3e
imul ecx, ecx, 0x54a2f92e
and ecx, 0xb61822e
cmp ecx, 0x7621fff8
ja 0x1400c8650
nop dword [rax + rax]
mov eax, dword [str._E]
imul eax, dword [0x141dd324c]
and eax, 0xce2cba52
imul eax, eax, 0xa9b7d043
add eax, 0x7932b67
cmp eax, 0xb5b3c924
jb 0x1400c8680
mov rax, qword [r13 + 0x60]
nop dword [rax + rax]
mov ecx, dword [0x141dd3250]
or ecx, dword [0x141dd3254]
and ecx, 0x6d53e21a
add ecx, 0x5f9e2844
xor ecx, 0x1ea3c315
cmp ecx, 0x60b58164
jb 0x1400c86b0
shl rax, 1
test rax, rax
je 0x1400c8770
nop word cs:[rax + rax]
mov eax, dword [str.C2I_f8_a]
and eax, dword [0x141dd325c]
xor eax, 0x13d768c5
add eax, 0x7d75372c
imul rax, rax, 0x1fdbcb01
shr rax, 0x3c
cmp eax, 0x285f18ff
ja 0x1400c86f0
mov r8, qword [r13 + 0x68]
mov eax, dword [0x141dd3260]
sub eax, dword [0x141dd3264]
add eax, 0x4c2b72d
cmp eax, 0xb427a71e
jbe 0x1400c8740
mov rax, qword [0x141dd7fe0]
nop dword [rax + rax]
mov eax, dword [0x141dd3268]
xor eax, dword [0x141dd326c]
or eax, 0x34bf7f1c
add eax, 0x86313a94
mov rcx, qword [0x141dd7fe0]
cmp eax, 0x32f73505
jb 0x1400c8740
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax]
mov eax, dword [0x141dd3270]
xor edx, edx
div dword [str.3Xe0]
and eax, 0x54402211
add eax, 0x6071ce06
cmp eax, 0x5a22cbc8
jb 0x1400c8770
mov rax, qword [r13 + 0x80]
shl rax, 1
test rax, rax
je 0x1400c8850
nop word cs:[rax + rax]
mov eax, dword [0x141dd3278]
mov ecx, dword [0x141dd327c]
add eax, ecx
add eax, 0xce4c07f6
or eax, 0xaf56873f
cmp eax, 0xe64b716
jb 0x1400c87b0
mov eax, dword [0x141dd3280]
xor edx, edx
div dword [0x141dd3284]
nop dword [rax]
mov eax, dword [0x141dd3288]
or eax, dword [0x141dd328c]
imul eax, eax, 0x21ee3139
cmp eax, 0xf0cbd5b4
je 0x1400c87e0
mov rdi, qword [r13 + 0x88]
mov eax, dword [0x141dd3290]
xor eax, dword [0x141dd3294]
add eax, 0x82344846
cmp eax, 0x2c46e722
jb 0x1400c8831
mov rcx, qword [0x141dd7fe0]
xor esi, esi
xor edx, edx
mov r8, rdi
call qword [sym.imp.KERNEL32.dll_HeapFree]
test sil, sil
je 0x1400c8850
mov rcx, qword [0x141dd7fe0]
xor edx, edx
mov r8, rdi
call qword [sym.imp.KERNEL32.dll_HeapFree]
jmp 0x1400c8818
mov eax, dword [0x141dd3298]
sub eax, dword [0x141dd329c]
or eax, 0x2066d231
imul eax, eax, 0x4e0a772e
or eax, 0x8d5e053a
cmp eax, 0xbd583346
je 0x1400c8850
mov rdi, qword [r13 + 0x50]
mov rbx, qword [r13 + 0x58]
nop dword [rax + rax]
mov eax, dword [0x141dd32a0]
or eax, dword [0x141dd32a4]
or eax, 0xefff7c6e
cmp eax, 0xd2b66a06
je 0x1400c8880
test rbx, rbx
je 0x1400c8978
xor r14d, r14d
mov r15, qword [sym.imp.KERNEL32.dll_HeapFree]
xor r12d, r12d
nop
mov eax, dword [0x141dd32a8]
xor eax, dword [0x141dd32ac]
add eax, 0x5b6287ca
or eax, 0x2429cd63
imul eax, eax, 0xc1a3991c
cmp eax, 0x36b2e194
je 0x1400c88b0
mov rax, r12
shl rax, 5
cmp qword [rdi + rax], 0
je 0x1400c8925
add rax, rdi
mov ecx, dword [0x141dd32b0]
xor ecx, dword [0x141dd32b4]
add ecx, 0x13ed25c
xor ecx, 0x8e71b838
imul rcx, rcx, 0xc787c3b
shr rcx, 0x3a
cmp ecx, 0x53aeaa53
ja 0x1400c88e4
mov r8, qword [rax + 8]
mov rcx, qword [0x141dd7fe0]
xor edx, edx
call r15
nop
test r14b, r14b
jne 0x1400c8920
inc r12
mov eax, dword [0x141dd32b8]
or eax, dword [0x141dd32bc]
imul eax, eax, 0x65c130a0
add eax, 0xa0ddc728
or eax, 0x8a68d5c
cmp eax, 0x54e1cee2
je 0x1400c8928
nop dword [rax + rax]
mov eax, dword [0x141dd32c0]
xor edx, edx
div dword [0x141dd32c4]
add eax, 0x49e53b6d
and eax, 0xfa92f712
cmp eax, 0xc021a3b4
ja 0x1400c8950
cmp r12, rbx
jne 0x1400c88b0
xor eax, eax
nop word [rax + rax]
test al, al
jne 0x1400c8980
mov rax, qword [r13 + 0x48]
xor ecx, ecx
nop word [rax + rax]
test cl, cl
jne 0x1400c8990
test rax, rax
je 0x1400c8a38
mov eax, dword [0x141dd32c8]
sub eax, dword [0x141dd32cc]
and eax, 0x731366a6
cmp eax, 0xbf389976
jne 0x1400c89bc
mov rax, qword [0x141dd7fe0]
xor eax, eax
nop
mov rbx, qword [0x141dd7fe0]
test al, al
jne 0x1400c89c0
mov eax, dword [0x141dd32d0]
imul eax, dword [0x141dd32d4]
add eax, 0x8f9b8cc8
imul rax, rax, 0x4c079513
shr rax, 0x3e
xor eax, 0x6f6b53bb
cmp eax, 0x28e32c10
jb 0x1400c8a28
mov esi, dword [0x141dd32d8]
add esi, dword [0x141dd32dc]
and esi, 0x8e6020b0
xor esi, 0x26c00014
or esi, 0x501fda4b
mov rcx, rbx
xor edx, edx
mov r8, rdi
call qword [sym.imp.KERNEL32.dll_HeapFree]
cmp esi, 0x9272302b
jae 0x1400c8a38
mov rcx, rbx
xor edx, edx
mov r8, rdi
call qword [sym.imp.KERNEL32.dll_HeapFree]
jmp 0x1400c89f4
mov rax, qword [r13 + 0x98]
shl rax, 1
test rax, rax
je 0x1400c8b20
mov eax, 0xf003e1cf
mov ecx, dword [0x141dd32e0]
add ecx, dword [0x141dd32e4]
imul rcx, rax
shr rcx, 0x3e
or ecx, 0xfdac1fbd
xor ecx, 0x577d7b0b
cmp ecx, 0x665ac4c6
jb 0x1400c8a50
nop dword [rax + rax]
mov eax, dword [0x141dd32e8]
add eax, dword [0x141dd32ec]
and eax, 0xec1ce7fb
xor eax, 0xbef5e721
add eax, 0x15b8378d
cmp eax, 0xa341aae9
jb 0x1400c8a80
mov rdi, qword [r13 + 0xa0]
mov eax, dword [0x141dd32f0]
imul eax, dword [0x141dd32f4]
add eax, 0xad8d71cc
and eax, 0xa2730fa3
add eax, 0xcd851d8f
cmp eax, 0x2f456f12
jb 0x1400c8b04
mov esi, dword [0x141dd32f8]
and esi, dword [0x141dd32fc]
add esi, 0x8975fd49
xor esi, 0x2205b00
or esi, 0xa15ca4b7
mov rcx, qword [0x141dd7fe0]
xor edx, edx
mov r8, rdi
call qword [sym.imp.KERNEL32.dll_HeapFree]
cmp esi, 0x57e98626
jne 0x1400c8b20
mov rcx, qword [0x141dd7fe0]
xor edx, edx
mov r8, rdi
call qword [sym.imp.KERNEL32.dll_HeapFree]
jmp 0x1400c8acc
mov eax, dword [0x141dd3300]
xor eax, dword [0x141dd3304]
xor eax, 0x378cd569
add eax, 0x41ce2d93
cmp eax, 0xbd82168
jb 0x1400c8b20
mov rax, qword [r13 + 0xb8]
nop word cs:[rax + rax]
mov ecx, dword [0x141dd3308]
add ecx, dword [0x141dd330c]
imul ecx, ecx, 0x4a1650e9
add ecx, 0x19a97186
cmp ecx, 0xd7983c4d
ja 0x1400c8b50
shl rax, 1
test rax, rax
je 0x1400c8b90
mov r8, qword [r13 + 0xc0]
mov rcx, qword [0x141dd7fe0]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop
mov eax, dword [0x141dd3310]
and eax, dword [0x141dd3314]
xor eax, 0x6061cc8a
imul eax, eax, 0x3c0bedc0
add eax, 0x9630264f
cmp eax, 0xef633d4f
ja 0x1400c8b90
mov rcx, qword [r13 + 0xf8]
test rcx, rcx
je 0x1400c8d00
mov eax, dword [0x141dd3318]
xor edx, edx
div dword [0x141dd331c]
and eax, 0xb43c8b3f
imul eax, eax, 0x42a5daf9
cmp eax, 0x7afe9589
jne 0x1400c8bf0
lock dec qword [rcx]
nop word [rax + rax]
mov eax, dword [0x141dd3320]
or eax, dword [0x141dd3324]
and eax, 0x9dfa8f2f
imul edx, eax, 0xe12782cb
add edx, 0x52e7e71
lock dec qword [rcx]
sete al
cmp edx, 0x99e9e9bc
ja 0x1400c8bf0
nop dword [rax]
mov ecx, dword [0x141dd3328]
sub ecx, dword [0x141dd332c]
and ecx, 0xf32cd45f
cmp ecx, 0x5e88cb4
je 0x1400c8c20
test al, al
je 0x1400c8d00
mov eax, dword [0x141dd3330]
and eax, dword [0x141dd3334]
add eax, 0x801fc9ae
shr eax, 2
imul rax, rax, 0x242b3a0d
shr rax, 0x3b
xor eax, 0x4fd54cc7
cmp eax, 0x7d448431
jbe 0x1400c8c6d
mov eax, 0x89e31fdd
nop word cs:[rax + rax]
mov ecx, dword [0x141dd3338]
sub ecx, dword [0x141dd333c]
add ecx, 0xcf1c7fd4
imul rcx, rax
shr rcx, 0x3b
or ecx, 0x27290500
cmp ecx, 0x2f0005d1
ja 0x1400c8c80
mov eax, dword [0x141dd3340]
xor edx, edx
div dword [0x141dd3344]
nop word cs:[rax + rax]
mov eax, dword [0x141dd3348]
sub eax, dword [0x141dd334c]
imul rax, rax, 0x6597c379
shr rax, 0x3d
or eax, 0x63a69dba
add eax, 0xbf0d4160
cmp eax, 0x1c9aa63b
jb 0x1400c8cc0
mov rcx, qword [r13 + 0xf8]
call fcn.1400c8fd0
nop word cs:[rax + rax]
mov eax, dword [0x141dd3350]
xor eax, dword [0x141dd3354]
xor eax, 0x742004
or eax, 0x9f885599
imul eax, eax, 0x2c3d609
cmp eax, 0xc77c168a
ja 0x1400c8d00
add rsp, 0x28
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret