Function at 0x140082290
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xc38
movaps xmmword [rsp + 0xc20], xmm6
mov qword [rsp + 0x30], r8
mov qword [rsp + 0x28], rdx
mov rsi, rcx
mov rax, qword [rcx]
mov rcx, qword [rcx + 0x80]
xor rcx, rax
mov qword [rsp + 0x38], rcx
mov r14, qword [rsi + 0x80]
mov r10, qword [rsi + 0x88]
lea rbx, [rsp + 0x200]
mov eax, dword [0x141dcd660]
xor edx, edx
div dword [0x141dcd664]
add eax, 0x29fb63ba
or eax, 0x31bf1362
cmp eax, 0x5484a624
je 0x1400822e0
xor r12d, r12d
mov r15d, 0xa2b5890d
mov rdi, qword [sym.imp.KERNEL32.dll_SwitchToThread]
xorps xmm6, xmm6
xor ebp, ebp
mov qword [rsp + 0x40], rsi
nop dword [rax]
mov eax, dword [0x141dcd668]
add eax, dword [0x141dcd66c]
or eax, 0xb8e4eb61
imul eax, eax, 0x6dae2e73
or eax, 0x385227ba
cmp eax, 0xa4985efd
ja 0x140082320
mov r13d, r14d
shr r13d, 1
and r13d, 0x3f
nop dword [rax]
cmp r13d, 0x3f
jne 0x140082479
cmp ebp, 6
ja 0x1400823f0
xor eax, eax
mov edx, 1
jmp 0x14008237d
inc edx
inc eax
test r8d, r8d
jne 0x140082425
mov ecx, dword [0x141dcd680]
or ecx, dword [0x141dcd684]
imul ecx, ecx, 0x54838c0c
xor ecx, 0xc20b1720
or ecx, 0x2de0a85e
cmp ecx, 0x88d56d6b
jb 0x1400823e6
nop word cs:[rax + rax]
mov r9d, dword [0x141dcd688]
sub r9d, dword [0x141dcd68c]
add r9d, 0x479f62d5
pause
xor r9d, 0xddf903f7
add r9d, 0xd8eef0f3
mov r8d, edx
mov ecx, ebp
shr r8d, cl
cmp r9d, 0x31811192
jae 0x140082370
pause
jmp 0x1400823b0
call rdi
nop word cs:[rax + rax]
mov eax, dword [0x141dcd670]
xor edx, edx
div dword [0x141dcd674]
and eax, 0x521a0120
imul rax, rax, 0x475fb87d
shr rax, 0x3b
cmp eax, 0xf9e80b6b
je 0x140082400
cmp ebp, 0xb
adc ebp, 0
mov r14, qword [rsi + 0x80]
mov r10, qword [rsi + 0x88]
mov r13d, r14d
shr r13d, 1
and r13d, 0x3f
nop word cs:[rax + rax]
mov eax, dword [0x141dcd678]
imul eax, dword [0x141dcd67c]
xor eax, 0x6ba2ca11
imul rax, r15
shr rax, 0x3a
and eax, 0x1b
cmp eax, 0xe26cc009
je 0x140082450
jmp 0x140082350
cmp r13d, 0x3e
jne 0x140082b27
test r12, r12
jne 0x140082b27
mov qword [rsp + 0x48], r10
movaps xmmword [rsp + 0x50], xmm6
mov qword [rsp + 0x60], 0
lea rax, [rsp + 0x68]
movups xmmword [rax], xmm6
mov qword [rax + 0x10], 0
movups xmmword [rax + 0x18], xmm6
mov qword [rax + 0x28], 0
movups xmmword [rax + 0x30], xmm6
mov qword [rax + 0x40], 0
movups xmmword [rax + 0x48], xmm6
mov qword [rax + 0x58], 0
movups xmmword [rax + 0x60], xmm6
mov qword [rax + 0x70], 0
movups xmmword [rax + 0x78], xmm6
mov qword [rax + 0x88], 0
movups xmmword [rax + 0x90], xmm6
mov qword [rax + 0xa0], 0
movups xmmword [rax + 0xa8], xmm6
mov qword [rax + 0xb8], 0
movups xmmword [rax + 0xc0], xmm6
mov qword [rax + 0xd0], 0
movups xmmword [rax + 0xd8], xmm6
mov qword [rax + 0xe8], 0
movups xmmword [rax + 0xf0], xmm6
mov qword [rax + 0x100], 0
movups xmmword [rax + 0x108], xmm6
mov qword [rax + 0x118], 0
movups xmmword [rax + 0x120], xmm6
mov qword [rax + 0x130], 0
movups xmmword [rax + 0x138], xmm6
mov qword [rax + 0x148], 0
movups xmmword [rax + 0x150], xmm6
mov qword [rax + 0x160], 0
movups xmmword [rax + 0x168], xmm6
mov qword [rax + 0x178], 0
movups xmmword [rax + 0x180], xmm6
mov qword [rax + 0x190], 0
movups xmmword [rbx], xmm6
mov qword [rbx + 0x10], 0
movups xmmword [rbx + 0x18], xmm6
mov qword [rbx + 0x28], 0
movups xmmword [rbx + 0x30], xmm6
mov qword [rbx + 0x40], 0
movups xmmword [rbx + 0x48], xmm6
mov qword [rbx + 0x58], 0
movups xmmword [rbx + 0x60], xmm6
mov qword [rbx + 0x70], 0
movups xmmword [rbx + 0x78], xmm6
mov qword [rbx + 0x88], 0
movups xmmword [rbx + 0x90], xmm6
mov qword [rbx + 0xa0], 0
movups xmmword [rbx + 0xa8], xmm6
mov qword [rbx + 0xb8], 0
movups xmmword [rbx + 0xc0], xmm6
mov qword [rbx + 0xd0], 0
movups xmmword [rbx + 0xd8], xmm6
mov qword [rbx + 0xe8], 0
movups xmmword [rbx + 0xf0], xmm6
mov qword [rbx + 0x100], 0
movups xmmword [rbx + 0x108], xmm6
mov qword [rbx + 0x118], 0
movups xmmword [rbx + 0x120], xmm6
mov qword [rbx + 0x130], 0
movups xmmword [rbx + 0x138], xmm6
mov qword [rbx + 0x148], 0
movups xmmword [rbx + 0x150], xmm6
mov qword [rbx + 0x160], 0
movups xmmword [rbx + 0x168], xmm6
mov qword [rbx + 0x178], 0
movups xmmword [rbx + 0x180], xmm6
mov qword [rbx + 0x190], 0
movups xmmword [rbx + 0x198], xmm6
mov qword [rbx + 0x1a8], 0
movups xmmword [rbx + 0x1b0], xmm6
mov qword [rbx + 0x1c0], 0
movups xmmword [rbx + 0x1c8], xmm6
mov qword [rbx + 0x1d8], 0
movups xmmword [rbx + 0x1e0], xmm6
mov qword [rbx + 0x1f0], 0
movups xmmword [rbx + 0x1f8], xmm6
mov qword [rbx + 0x208], 0
movups xmmword [rbx + 0x210], xmm6
mov qword [rbx + 0x220], 0
movups xmmword [rbx + 0x228], xmm6
mov eax, dword [0x141dcd690]
imul eax, dword [0x141dcd694]
mov qword [rbx + 0x238], 0
add eax, 0x90ceb013
and eax, 0x11218404
cmp eax, 0x529158bb
jbe 0x140082909
movups xmmword [rbx + 0x240], xmm6
mov qword [rbx + 0x250], 0
movups xmmword [rbx + 0x258], xmm6
mov qword [rbx + 0x268], 0
movups xmmword [rbx + 0x270], xmm6
mov qword [rbx + 0x280], 0
movups xmmword [rbx + 0x288], xmm6
mov qword [rbx + 0x298], 0
movups xmmword [rbx + 0x2a0], xmm6
mov qword [rbx + 0x2b0], 0
movups xmmword [rbx + 0x2b8], xmm6
mov qword [rbx + 0x2c8], 0
movups xmmword [rbx + 0x2d0], xmm6
mov qword [rbx + 0x2e0], 0
movups xmmword [rbx + 0x2e8], xmm6
mov qword [rbx + 0x2f8], 0
movups xmmword [rbx + 0x300], xmm6
mov qword [rbx + 0x310], 0
movups xmmword [rbx + 0x318], xmm6
mov qword [rbx + 0x328], 0
movups xmmword [rbx + 0x330], xmm6
mov qword [rbx + 0x340], 0
movups xmmword [rbx + 0x348], xmm6
mov qword [rbx + 0x358], 0
movups xmmword [rbx + 0x360], xmm6
mov qword [rbx + 0x370], 0
movups xmmword [rbx + 0x378], xmm6
mov qword [rbx + 0x388], 0
movups xmmword [rbx + 0x390], xmm6
mov qword [rbx + 0x3a0], 0
movups xmmword [rbx + 0x3a8], xmm6
mov qword [rbx + 0x3b8], 0
movups xmmword [rbx + 0x3c0], xmm6
mov qword [rbx + 0x3d0], 0
movups xmmword [rbx + 0x3d8], xmm6
mov qword [rbx + 0x3e8], 0
movups xmmword [rbx + 0x3f0], xmm6
mov qword [rbx + 0x400], 0
movups xmmword [rbx + 0x408], xmm6
mov qword [rbx + 0x418], 0
movups xmmword [rbx + 0x420], xmm6
mov qword [rbx + 0x430], 0
mov r8d, 0x5e8
lea rcx, [rsp + 0x638]
lea rdx, [rsp + 0x50]
call sub.VCRUNTIME140.dll_memcpy
movzx eax, byte [0x141ddb278]
mov edx, 0x5f0
xor ecx, ecx
call fcn.1400c0180
lea rdx, [rsp + 0x638]
lea rsi, [rsp + 0x50]
nop word cs:[rax + rax]
mov eax, dword [0x141dcd698]
and eax, dword [0x141dcd69c]
and eax, 0xde7ff2f1
imul edi, eax, 0xa3d68698
movups xmmword [rbx + 0x240], xmm6
mov qword [rbx + 0x250], 0
movups xmmword [rbx + 0x258], xmm6
mov qword [rbx + 0x268], 0
movups xmmword [rbx + 0x270], xmm6
mov qword [rbx + 0x280], 0
movups xmmword [rbx + 0x288], xmm6
mov qword [rbx + 0x298], 0
movups xmmword [rbx + 0x2a0], xmm6
mov qword [rbx + 0x2b0], 0
movups xmmword [rbx + 0x2b8], xmm6
mov qword [rbx + 0x2c8], 0
movups xmmword [rbx + 0x2d0], xmm6
mov qword [rbx + 0x2e0], 0
movups xmmword [rbx + 0x2e8], xmm6
mov qword [rbx + 0x2f8], 0
movups xmmword [rbx + 0x300], xmm6
mov qword [rbx + 0x310], 0
movups xmmword [rbx + 0x318], xmm6
mov qword [rbx + 0x328], 0
movups xmmword [rbx + 0x330], xmm6
mov qword [rbx + 0x340], 0
movups xmmword [rbx + 0x348], xmm6
mov qword [rbx + 0x358], 0
movups xmmword [rbx + 0x360], xmm6
mov qword [rbx + 0x370], 0
movups xmmword [rbx + 0x378], xmm6
mov qword [rbx + 0x388], 0
movups xmmword [rbx + 0x390], xmm6
mov qword [rbx + 0x3a0], 0
movups xmmword [rbx + 0x3a8], xmm6
mov qword [rbx + 0x3b8], 0
movups xmmword [rbx + 0x3c0], xmm6
mov qword [rbx + 0x3d0], 0
movups xmmword [rbx + 0x3d8], xmm6
mov qword [rbx + 0x3e8], 0
movups xmmword [rbx + 0x3f0], xmm6
mov qword [rbx + 0x400], 0
movups xmmword [rbx + 0x408], xmm6
mov qword [rbx + 0x418], 0
movups xmmword [rbx + 0x420], xmm6
mov qword [rbx + 0x430], 0
mov r8d, 0x5e8
mov rcx, rdx
mov rdx, rsi
call sub.VCRUNTIME140.dll_memcpy
movzx eax, byte [0x141ddb278]
mov edx, 0x5f0
xor ecx, ecx
call fcn.1400c0180
lea rdx, [rsp + 0x638]
cmp edi, 0x8a2dd59b
je 0x140082920
mov r12, rax
test rax, rax
je 0x140082e19
mov eax, dword [0x141dcd6a0]
sub eax, dword [0x141dcd6a4]
xor eax, 0x52230a0
or eax, 0xa8580f4e
cmp eax, 0xd133958b
mov rdi, qword [sym.imp.KERNEL32.dll_SwitchToThread]
mov rsi, qword [rsp + 0x40]
jne 0x140082d20
jmp 0x140082d95
lea rcx, [r14 + 2]
mov rax, r14
lock cmpxchg qword [rsi + 0x80], rcx
je 0x140082d9f
mov r8, rax
mov r9d, 1
mov ecx, ebp
shl r9d, cl
mov r10, qword [rsi + 0x88]
cmp ebp, 7
mov eax, 0x40
cmovae r9d, eax
mov eax, dword [0x141dcd6c0]
xor eax, dword [0x141dcd6c4]
imul eax, eax, 0x4314f9f1
add eax, 0xeb483c6d
and eax, 0x7644ec6c
cmp eax, 0x8169b62d
ja 0x140082b5e
test r9d, r9d
jle 0x140082cc0
mov eax, dword [0x141dcd6c8]
xor eax, dword [0x141dcd6cc]
xor eax, 0x260398ad
add eax, 0x6f937474
cmp eax, 0x41fea70a
ja 0x140082b8a
cmp r9d, 8
jb 0x140082c3e
mov eax, r9d
and eax, 0xfffffff8
xor ecx, ecx
mov dl, 1
test dl, dl
je 0x140082bb1
nop
mov edx, dword [0x141dcd6f8]
imul edx, dword [str.N_8pm]
and edx, 0xc071d6
add edx, 0x28c2c9cd
cmp edx, 0x23d69783
jae 0x140082c00
pause
pause
pause
pause
pause
pause
pause
pause
nop word cs:[rax + rax]
mov edx, dword [0x141dcd700]
imul edx, dword [0x141dcd704]
pause
pause
pause
pause
pause
pause
pause
pause
imul edx, edx, 0xeda94b58
xor edx, 0x620e242c
or edx, 0x89b14381
cmp edx, 0x2e62cd5c
je 0x140082c00
add ecx, 8
cmp ecx, eax
jne 0x140082bc0
and r9d, 7
mov eax, dword [0x141dcd6d0]
and eax, dword [0x141dcd6d4]
and eax, 0xe6f92060
cmp eax, 0xbc8cd8ed
je 0x140082c42
test r9d, r9d
je 0x140082cc0
xor ecx, ecx
nop word cs:[rax + rax]
mov eax, dword [0x141dcd6d8]
xor eax, dword [0x141dcd6dc]
cmp eax, 0x5126e476
jne 0x140082c90
pause
nop word cs:[rax + rax]
mov eax, dword [0x141dcd6e0]
xor edx, edx
div dword [0x141dcd6e4]
pause
imul eax, eax, 0xc52ead4f
xor eax, 0xe981c080
and eax, 0xe997ccc4
cmp eax, 0xe98fb91b
ja 0x140082c90
inc ecx
cmp ecx, r9d
jne 0x140082c70
nop
mov edx, dword [0x141dcd6e8]
and edx, dword [0x141dcd6ec]
or edx, 0xa0081010
xor edx, 0x80800082
or edx, 0x59774f6c
xor eax, eax
cmp ebp, 7
setb cl
cmp edx, 0xc99919e
jb 0x140082cc0
mov al, cl
mov ecx, dword [0x141dcd6f0]
add ecx, dword [0x141dcd6f4]
or ecx, 0x58e9d986
imul ecx, ecx, 0xb8e17a39
or ecx, 0x33993e02
cmp ecx, 0x5ea4e383
jbe 0x140082cf0
add ebp, eax
mov r14, r8
jmp 0x140082320
mov eax, dword [0x141dcd6a8]
xor eax, dword [0x141dcd6ac]
imul rax, rax, 0x14c90287
shr rax, 0x3c
add eax, 0xe2bb55af
or eax, 0xf8f0bcfb
mov qword [r12], 0
cmp eax, 0xabd56893
jb 0x140082d95
mov rcx, r12
add rcx, 8
mov r8d, 0x5e8
call sub.VCRUNTIME140.dll_memcpy
nop word cs:[rax + rax]
mov eax, dword [0x141dcd6b0]
xor edx, edx
div dword [0x141dcd6b4]
imul eax, eax, 0x3d9cfdf6
cmp eax, 0x5e1a3e5e
je 0x140082d70
mov r10, qword [rsp + 0x48]
jmp 0x140082b27
mov qword [r12], 0
jmp 0x140082d20
xor eax, eax
nop word cs:[rax + rax]
test al, al
jne 0x140082db0
cmp r13d, 0x3e
jne 0x140082de9
test r12, r12
je 0x140082e5f
mov eax, dword [0x141dcd718]
or eax, dword [0x141dcd71c]
add eax, 0xc819033f
and eax, 0x75efae02
cmp eax, 0x257be43a
jae 0x140082eac
jmp 0x140082ede
mov eax, dword [0x141dcd728]
and eax, dword [0x141dcd72c]
and eax, 0x31000380
add eax, 0xd889d30
cmp eax, 0xb3db6b54
mov rdx, qword [rsp + 0x30]
mov r8, qword [rsp + 0x28]
jbe 0x140082f1b
jmp 0x140082f50
xor eax, eax
test al, al
je 0x140082e30
ud2
mov eax, dword [0x141dcd6b8]
xor edx, edx
div dword [0x141dcd6bc]
imul eax, eax, 0x52be733c
imul rax, rax, 0x5f3c8417
shr rax, 0x3e
or eax, 0x274517ea
ud2
mov eax, dword [0x141dcd708]
or eax, dword [0x141dcd70c]
imul eax, eax, 0x1d23e400
cmp eax, 0x2f25b8e0
jne 0x140082e7a
ud2
mov eax, 0xb7ecf873
nop
mov ecx, dword [0x141dcd710]
or ecx, dword [str.w__]
imul ecx, ecx, 0x94d4bb17
imul rcx, rax
shr rcx, 0x3c
add ecx, 0x3f19129d
ud2
mov eax, dword [0x141dcd720]
sub eax, dword [0x141dcd724]
or eax, 0x5004a908
and eax, 0x5404b908
lea rcx, [r14 + 4]
mov qword [rsi + 0x88], r12
mov qword [rsi + 0x80], rcx
mov qword [r10], r12
cmp eax, 0x7667140b
jbe 0x140082ef5
lea rax, [r14 + 4]
mov qword [rsi + 0x88], r12
mov qword [rsi + 0x80], rax
mov qword [r10], r12
jmp 0x140082eac
mov rax, qword [rsp + 0x28]
mov qword [r10 + 0x5d8], rax
mov rax, qword [rsp + 0x30]
mov qword [r10 + 0x5e0], rax
lock or qword [r10 + 0x5e8], 1
jmp 0x140083020
mov eax, dword [0x141dcd730]
xor eax, dword [0x141dcd734]
imul ecx, eax, 0xbc5e3e62
or ecx, 0x5368e0bf
lea rax, [r13*2]
add rax, r13
mov qword [r10 + rax*8 + 8], r8
mov qword [r10 + rax*8 + 0x10], rdx
cmp ecx, 0xcdc6dc7a
jae 0x140082f67
lea rax, [r13*2]
add rax, r13
mov qword [r10 + rax*8 + 8], r8
mov qword [r10 + rax*8 + 0x10], rdx
jmp 0x140082f1b
lea rax, [r10 + rax*8]
add rax, 8
lock or qword [rax + 0x10], 1
test r12, r12
je 0x140083020
mov eax, dword [0x141dcd738]
xor eax, dword [0x141dcd73c]
or eax, 0x28cc0d5c
shr eax, 1
mov ecx, 0x9d4255e5
imul rcx, rax
shr rcx, 0x3c
or ecx, 0x7db5b930
cmp ecx, 0xb6a040f5
jbe 0x140082fc0
mov rax, qword [0x141ddb260]
nop word cs:[rax + rax]
mov eax, dword [0x141dcd740]
xor edx, edx
div dword [0x141dcd744]
add eax, 0xfc117c47
or eax, 0xcc8aeb56
mov rcx, qword [0x141ddb260]
cmp eax, 0xf1cd7e07
je 0x140082fc0
xor edx, edx
mov r8, r12
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop word cs:[rax + rax]
mov eax, dword [0x141dcd748]
imul eax, dword [0x141dcd74c]
and eax, 0xcf94aad2
cmp eax, 0x743c3e1f
je 0x140083000
nop dword [rax]
mov eax, dword [0x141dcd750]
sub eax, dword [0x141dcd754]
or eax, 0xc8000042
and eax, 0xecc2404b
imul eax, eax, 0x9bf1cc93
cmp eax, 0x7dc8aa26
ja 0x140083020
mov eax, dword [0x141dcd758]
xor edx, edx
div dword [0x141dcd75c]
add eax, 0x71db7a38
shr eax, 1
mov ecx, 0x8ff85935
imul rcx, rax
shr rcx, 0x3e
cmp ecx, 0xa3ff0cc3
jbe 0x140083070
mfence
mov eax, dword [0x141dcd760]
add eax, dword [0x141dcd764]
xor eax, 0x351cb72d
add eax, 0xeb1920f1
xor eax, 0xb567760b
mfence
cmp eax, 0xe7880292
ja 0x140083070
nop word cs:[rax + rax]
mov eax, dword [0x141dcd768]
or eax, dword [0x141dcd76c]
xor eax, 0x10060d7
or eax, 0xf6ed8620
cmp eax, 0x4619c216
jb 0x1400830a0
mov r8d, 0xffffffff
lea r9, [r8 + 1]
nop word [rax + rax]
mov rax, qword [rsi + 0x170]
test rax, r9
jne 0x14008311d
lea rcx, [r8 + rax]
inc rcx
lock cmpxchg qword [rsi + 0x170], rcx
sete r10b
mov eax, dword [0x141dcd770]
xor edx, edx
div dword [0x141dcd774]
mov eax, dword [0x141dcd778]
and eax, dword [0x141dcd77c]
or eax, 0x8cd4550f
cmp eax, 0x797a9ac3
je 0x1400830fe
test r10b, r10b
je 0x1400830d0
jmp 0x140083120
mov rcx, rax
mov eax, dword [0x141dcd780]
xor edx, edx
div dword [0x141dcd784]
or eax, 0x2cf05bda
xor eax, 0x5f423451
add eax, 0xcfd38528
cmp eax, 0xbb3ca6ef
ja 0x140083120
movzx eax, cx
test rax, rax
je 0x1400831d0
cmp qword [rsp + 0x38], 2
jae 0x140083205
nop dword [rax]
mov edx, dword [0x141dcd790]
add edx, dword [0x141dcd794]
imul rdx, rdx, 0x7bff0f1f
shr rdx, 0x3b
cmp edx, 0x8ceefc67
je 0x140083160
shr ecx, 0x10
sub rcx, rax
mov eax, dword [0x141dcd798]
xor edx, edx
div dword [0x141dcd79c]
mov eax, 0xc7918ff9
nop dword [rax + rax]
mov edx, dword [0x141dcd7a0]
xor edx, dword [0x141dcd7a4]
add edx, 0xfaaa855d
imul rdx, rax
shr rdx, 0x3e
cmp edx, 0x6a9f4b08
ja 0x1400831a0
test ecx, ecx
je 0x140083205
nop word cs:[rax + rax]
mov eax, dword [0x141dcd7a8]
sub eax, dword [0x141dcd7ac]
imul eax, eax, 0xaf54b382
cmp eax, 0x94e0f0fd
jb 0x1400831d0
movaps xmm6, xmmword [rsp + 0xc20]
add rsp, 0xc38
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
add rsi, 0x158
mov rcx, rsi
mov edx, 1
call fcn.1400f8190
nop dword [rax]
mov eax, dword [0x141dcd788]
and eax, dword [0x141dcd78c]
imul rax, rax, 0x160d8ea1
shr rax, 0x3b
imul eax, eax, 0xb2053383
xor eax, 0xb696ae62
cmp eax, 0x2943503e
ja 0x140083220
jmp 0x1400831d0