Function at 0x140077f80
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, rdx
mov rdi, rcx
lea r14, [rdx + 0x38]
mov r15, qword [rdx + 0x28]
movzx ebp, byte [rdx + 0x30]
movzx eax, byte [0x141dde6f8]
mov edx, 0x5f0
xor ecx, ecx
call fcn.1400c29b0
mov rbx, rax
mov eax, dword [0x141dcf158]
xor edx, edx
div dword [0x141dcf15c]
nop word cs:[rax + rax]
mov eax, dword [0x141dcf160]
xor edx, edx
div dword [0x141dcf164]
add eax, 0xa5a4f17
xor eax, 0x302b938c
add eax, 0x8f747f27
cmp eax, 0x25320718
jb 0x140077fd0
nop word cs:[rax + rax]
mov eax, dword [0x141dcf168]
and eax, dword [0x141dcf16c]
and eax, 0x42099448
cmp eax, 0xa2baaac9
je 0x140078000
test rbx, rbx
je 0x140078239
mov r8d, 0x5f0
mov rcx, rbx
xor edx, edx
call sub.VCRUNTIME140.dll_memset
nop word cs:[rax + rax]
mov eax, dword [0x141dcf188]
or eax, dword [0x141dcf18c]
imul eax, eax, 0xdda24ad9
or eax, 0xd6e57847
cmp eax, 0xd24c6ffc
je 0x140078040
movabs rcx, 0x800000000000000
mov rax, qword [rsi + 0x60]
movabs r11, 0xe414a674f0de7325
mov r12d, 0xa1c9afab
nop dword [rax]
mov r9d, 1
lock xadd qword [0x141dde640], r9
mov r8, r9
movabs rdx, 0x7465646279746573
xor r8, rdx
movabs rdx, 0x6c7967656e657261
add rdx, r8
mov r10, r8
rol r10, 0x10
xor r10, rdx
movabs rdx, 0xa60c596fc19fead0
add r8, rdx
movabs rdx, 0xded7d4e2d7dedfc6
add rdx, r10
mov r13, r8
xor r13, r11
rol r10, 0x15
rol r8, 0x20
xor r9, rdx
xor rdx, rcx
xor rdx, r10
add r9, r13
add r8, rdx
rol r13, 0xd
xor r13, r9
rol rdx, 0x10
rol r9, 0x20
xor rdx, r8
add r8, r13
rol r13, 0x11
add r9, rdx
xor r13, r8
rol rdx, 0x15
xor rdx, r9
rol r8, 0x20
xor r9, rcx
xor r8, 0xff
add r9, r13
rol r13, 0xd
add r8, rdx
xor r13, r9
rol rdx, 0x10
xor rdx, r8
rol r9, 0x20
add r8, r13
nop dword [rax]
mov r10d, dword [0x141dcf190]
sub r10d, dword [0x141dcf194]
shr r10d, 1
imul r10, r12
shr r10, 0x3d
or r10d, 0x43c26909
cmp r10d, 0xb0357476
je 0x140078140
rol r13, 0x11
add r9, rdx
xor r13, r8
rol rdx, 0x15
xor rdx, r9
rol r8, 0x20
add r9, r13
nop word cs:[rax + rax]
mov r10d, dword [0x141dcf198]
imul r10d, dword [0x141dcf19c]
xor r10d, 0x1040
or r10d, 0x62802008
and r10d, 0x7aa07868
cmp r10d, 0x1b3fb0a2
jb 0x140078190
rol r13, 0xd
add r8, rdx
xor r13, r9
rol rdx, 0x10
xor rdx, r8
rol r9, 0x20
add r8, r13
add r9, rdx
rol r13, 0x11
xor r13, r8
rol rdx, 0x15
rol r8, 0x20
xor rdx, r9
add r9, r13
rol r13, 0xd
add r8, rdx
xor r13, r9
rol rdx, 0x10
xor rdx, r8
add r8, r13
rol r13, 0x11
rol rdx, 0x15
xor rdx, r13
mov r9, r8
rol r9, 0x20
xor r9, rdx
xor r9, r8
je 0x140078080
mov ecx, dword [0x141dcf1a0]
imul ecx, dword [0x141dcf1a4]
cmp ecx, 0x445712c2
jne 0x14007829b
jmp 0x14007831d
mov eax, dword [0x141dcf170]
sub eax, dword [0x141dcf174]
imul eax, eax, 0x39d3fab8
cmp eax, 0xf5a79f24
je 0x14007827c
mov eax, dword [0x141dcf178]
mov ecx, dword [0x141dcf17c]
add eax, ecx
add eax, 0x654626d1
mov ecx, 0xb64ff97d
imul rcx, rax
shr rcx, 0x3e
ud2
ud2
mov ecx, dword [0x141dcf1a8]
sub ecx, dword [0x141dcf1ac]
add ecx, 0x887f68e8
mov edx, 0xad54ef35
imul rdx, rcx
shr rdx, 0x3e
mov rcx, qword [rsi + 0x58]
movups xmm0, xmmword [r14]
movups xmm1, xmmword [r14 + 0x10]
movups xmmword [rdi + 0x128], xmm1
movups xmmword [rdi + 0x118], xmm0
mov qword [rdi + 0x138], r15
mov byte [rdi + 0x140], bpl
mov qword [rdi], 0
mov qword [rdi + 8], rbx
mov qword [rdi + 0x80], 0
mov qword [rdi + 0x88], rbx
mov qword [rdi + 0x100], rax
mov qword [rdi + 0x108], r9
mov qword [rdi + 0x110], rcx
cmp edx, 0x7897378d
jne 0x14007837d
mov rcx, qword [rsi + 0x58]
movups xmm0, xmmword [r14]
movups xmm1, xmmword [r14 + 0x10]
movups xmmword [rdi + 0x128], xmm1
movups xmmword [rdi + 0x118], xmm0
mov qword [rdi + 0x138], r15
mov byte [rdi + 0x140], bpl
mov qword [rdi], 0
mov qword [rdi + 8], rbx
mov qword [rdi + 0x80], 0
mov qword [rdi + 0x88], rbx
mov qword [rdi + 0x100], rax
mov qword [rdi + 0x108], r9
mov qword [rdi + 0x110], rcx
jmp 0x14007829b
mov rax, qword [rsi + 0x10]
shl rax, 1
test rax, rax
je 0x14007842a
nop dword [rax]
mov eax, dword [0x141dcf1b0]
imul eax, dword [0x141dcf1b4]
and eax, 0xfa250c78
shr eax, 3
imul rax, rax, 0x2212e275
shr rax, 0x3a
cmp eax, 0x88d0265c
je 0x140078390
mov rsi, qword [rsi + 0x18]
mov rdi, qword [0x141dde6e0]
mov eax, dword [0x141dcf1b8]
and eax, dword [0x141dcf1bc]
xor eax, 0x29ed8cf9
add eax, 0xc86eab35
or eax, 0x7c6eda2a
cmp eax, 0x8df6ee15
jbe 0x1400783f2
mov rcx, rdi
xor edx, edx
mov r8, rsi
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rbx, qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax]
mov ebp, dword [0x141dcf1c0]
and ebp, dword [0x141dcf1c4]
add ebp, 0x926339d6
and ebp, 0x44a41909
mov rcx, rdi
xor edx, edx
mov r8, rsi
call rbx
cmp ebp, 0xd7eb57a7
ja 0x140078400
mov eax, 0x8d19c0af
nop
mov ecx, dword [0x141dcf1c8]
or ecx, dword [0x141dcf1cc]
xor ecx, 0x7a3ab518
imul rcx, rax
shr rcx, 0x3a
add ecx, 0x5dcbeb17
cmp ecx, 0x83e13dd5
ja 0x140078430
add rsp, 0x28
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret