Function at 0x140078690
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
nop word cs:[rax + rax]
mov eax, dword [0x141dcf210]
add eax, dword [0x141dcf214]
imul eax, eax, 0x54134a71
imul rax, rax, 0x5fcdc3e5
shr rax, 0x3b
cmp eax, 0x25d1e107
ja 0x1400786b0
mov r14, qword [rsi]
lea rbp, [r14 + 0x10]
nop dword [rax + rax]
mov eax, dword [0x141dcf218]
and eax, dword [0x141dcf21c]
imul ecx, eax, 0x1dffb679
xor ecx, 0x54a3582e
mov rax, qword [r14 + 0x18]
mov rbx, qword [r14 + 0x20]
test rax, rax
setne r15b
test rbx, rbx
setne r12b
cmp ecx, 0x34554269
jb 0x1400786e0
test rax, rax
je 0x14007894f
nop
mov eax, dword [0x141dcf220]
or eax, dword [0x141dcf224]
imul eax, eax, 0xf4827c34
and eax, 0xadda34bc
cmp eax, 0xf97a4cf2
ja 0x140078720
nop
mov eax, dword [0x141dcf228]
and eax, dword [0x141dcf22c]
or eax, 0x9040b551
imul rax, rax, 0x2340609d
shr rax, 0x3c
imul eax, eax, 0x7fe786b
cmp eax, 0x599fcc13
ja 0x140078740
test rbx, rbx
je 0x14007894f
mov r13, qword [r14 + 0x28]
mov eax, 0xe1904a6f
nop dword [rax + rax]
mov ecx, dword [0x141dcf230]
or ecx, dword [0x141dcf234]
add ecx, 0xa12dde7e
imul rcx, rax
shr rcx, 0x3f
xor ecx, 0x7b465079
cmp ecx, 0x645db2c2
jb 0x140078780
mov rdi, qword [r13]
nop dword [rax]
mov eax, dword [0x141dcf238]
xor edx, edx
div dword [0x141dcf23c]
or eax, 0xb914795d
add eax, 0x564cf4b4
xor eax, 0xcebd9359
cmp eax, 0x1eebe48d
jb 0x1400787b0
test rdi, rdi
je 0x140078872
mov qword [rsp + 0x20], rsi
mov rsi, rbp
mov eax, dword [0x141dcf240]
and eax, dword [0x141dcf244]
or eax, 0x1e46a085
cmp eax, 0xe6c908b
jne 0x140078810
mov rcx, rbx
call rdi
nop word cs:[rax + rax]
mov eax, dword [0x141dcf248]
xor edx, edx
div dword [0x141dcf24c]
mov ebp, eax
add ebp, 0x22a7ef76
and ebp, 0x884008c
mov rcx, rbx
call rdi
cmp ebp, 0x25002699
ja 0x140078810
mov rbp, rsi
mov rsi, qword [rsp + 0x20]
nop word cs:[rax + rax]
mov eax, dword [0x141dcf250]
and eax, dword [0x141dcf254]
add eax, 0xa5989b93
and eax, 0x317c66cf
xor eax, 0x5e29c4e8
cmp eax, 0x9ac2dc6
jb 0x140078850
mov rcx, qword [r13 + 8]
mov rax, qword [r13 + 0x10]
mov edx, 0x92828e8d
nop
mov r8d, dword [0x141dcf258]
sub r8d, dword [0x141dcf25c]
xor r8d, 0xa2140130
and r8d, 0xb7d6e5f9
imul r8, rdx
shr r8, 0x3d
cmp r8d, 0xd675c68f
ja 0x140078880
nop dword [rax]
mov edx, dword [0x141dcf260]
and edx, dword [0x141dcf264]
and edx, 0x48f6ebb9
add edx, 0x5af6cf1
xor edx, 0x8d04eedc
cmp edx, 0xbf37b6c1
ja 0x1400788b0
test rcx, rcx
je 0x14007894f
cmp rax, 0x11
jb 0x14007893d
nop word cs:[rax + rax]
mov eax, dword [str.N.dX_]
xor edx, edx
div dword [0x141dcf26c]
add eax, 0x90e66785
or eax, 0x1131b4af
and eax, 0x33b9febf
cmp eax, 0x104ed127
jb 0x1400788f0
mov rbx, qword [rbx - 8]
nop dword [rax + rax]
mov eax, dword [0x141dcf270]
xor eax, dword [0x141dcf274]
or eax, 0x4ae29ef7
and eax, 0x7ffbbeff
cmp eax, 0x85ba3692
je 0x140078920
mov rcx, qword [0x141dde6e0]
xor edx, edx
mov r8, rbx
call qword [sym.imp.KERNEL32.dll_HeapFree]
and r15b, r12b
mov qword [r14 + 0x18], 0
mov rbx, qword [r14 + 0x10]
nop
mov eax, dword [0x141dcf278]
xor eax, dword [0x141dcf27c]
imul eax, eax, 0xf4b4b217
and eax, 0xbc089bd5
cmp eax, 0x346341b5
je 0x140078960
test rbx, rbx
je 0x140078dfe
nop word [rax + rax]
mov eax, dword [0x141dcf280]
or eax, dword [0x141dcf284]
add eax, 0xb750ab9d
and eax, 0x2c064180
cmp eax, 0x633c7fd
je 0x140078990
test r15b, r15b
je 0x1400789e7
nop word cs:[rax + rax]
mov eax, dword [0x141dcf2a8]
add eax, dword [0x141dcf2ac]
or eax, 0xe62c036e
imul rax, rax, 0x7ef003df
shr rax, 0x3e
cmp eax, 0xad896b8c
je 0x1400789c0
mov byte [rbx + 0x20], 1
lea rax, [rbx + 0x18]
nop dword [rax + rax]
mov ecx, dword [0x141dcf288]
sub ecx, dword [0x141dcf28c]
imul ecx, ecx, 0xfc40fb29
add ecx, 0xcd84f9a5
cmp ecx, 0xb3e97954
ja 0x1400789f0
mov ecx, dword [0x141dcf290]
and ecx, dword [0x141dcf294]
add ecx, 0x825158a6
mov edx, 0xd2e1754f
imul rdx, rcx
shr rdx, 0x3f
xor edx, 0xdb2371b5
cmp edx, 0x30a48fe1
jae 0x140078a50
lock dec qword [rax]
nop word cs:[rax + rax]
mov edx, dword [0x141dcf298]
add edx, dword [0x141dcf29c]
or edx, 0x9d64fbc7
add edx, 0xc000aa25
and edx, 0xe90f27a8
lock dec qword [rax]
sete cl
cmp edx, 0x4c64bd12
je 0x140078a50
nop dword [rax]
mov eax, dword [0x141dcf2a0]
and eax, dword [0x141dcf2a4]
and eax, 0x3000808a
or eax, 0xc3fb6635
imul eax, eax, 0x36bd60e2
cmp eax, 0x7bc6a7c2
je 0x140078a80
test cl, cl
je 0x140078b73
nop dword [rax + rax]
mov eax, dword [0x141dcf2b0]
xor edx, edx
div dword [0x141dcf2b4]
add eax, 0x948b8b0f
or eax, 0xf3a53980
imul eax, eax, 0xe7bc43a3
cmp eax, 0x9ec85de
jb 0x140078ab0
mov rcx, qword [rbx + 0x10]
add rcx, 0x30
mov eax, dword [0x141dcf2b8]
xor edx, edx
div dword [str.TwdA]
add eax, 0xd90fe6a2
and eax, 0x11374239
imul eax, eax, 0xf6e73351
cmp eax, 0xeaa7f47c
jne 0x140078b10
mov al, 1
xchg byte [rcx], al
nop word cs:[rax + rax]
mov eax, dword [0x141dcf2c0]
or eax, dword [0x141dcf2c4]
imul rdx, rax, 0x65d95fd
shr rdx, 0x38
xor edx, 0x40022109
mov al, 1
xchg byte [rcx], al
cmp edx, 0xa031dcab
ja 0x140078b10
cmp al, 0xff
jne 0x140078b73
call qword [sym.imp.api_ms_win_core_synch_l1_2_0.dll_WakeByAddressSingle]
nop word cs:[rax + rax]
mov eax, dword [0x141dcf2c8]
and eax, dword [0x141dcf2cc]
imul eax, eax, 0x2e30f2ef
add eax, 0xd4425a47
or eax, 0xdc52bbc
cmp eax, 0xaa0a2fdf
ja 0x140078b50
mov eax, dword [0x141dcf2d0]
sub eax, dword [0x141dcf2d4]
imul rax, rax, 0x69439709
shr rax, 0x3e
or eax, 0x7527a184
xor eax, 0xcf5f6178
cmp eax, 0xecdb4d25
jbe 0x140078ba0
lock dec qword [rbx]
nop
mov ecx, dword [0x141dcf2d8]
or ecx, dword [0x141dcf2dc]
and ecx, 0x90211509
imul rax, rcx, 0x3a566015
shr rax, 0x20
sub ecx, eax
shr ecx, 1
add ecx, eax
shr ecx, 0x1c
and ecx, 4
mov rax, 0xffffffffffffffff
lock xadd qword [rbx], rax
cmp ecx, 0xace6683d
je 0x140078ba0
xor ecx, ecx
nop
test cl, cl
jne 0x140078be0
cmp rax, 1
jne 0x140078bf2
mov rcx, rbp
call fcn.1400791f0
mov rax, qword [r14 + 0x18]
mov ecx, 0xb96e2ce3
nop dword [rax + rax]
mov edx, dword [0x141dcf2e0]
xor edx, dword [0x141dcf2e4]
imul rdx, rcx
shr rdx, 0x3e
xor edx, 0xb21a5d87
cmp edx, 0x43e3978e
jb 0x140078c00
test rax, rax
je 0x140078dfe
mov rdi, qword [r14 + 0x20]
nop
mov eax, dword [0x141dcf2e8]
xor eax, dword [0x141dcf2ec]
and eax, 0xdfc567c4
add eax, 0xb1001fee
and eax, 0x8440b3e0
cmp eax, 0x42495bd0
jb 0x140078c30
test rdi, rdi
je 0x140078dfe
mov rbx, qword [r14 + 0x28]
nop
mov eax, dword [0x141dcf2f0]
or eax, dword [0x141dcf2f4]
xor eax, 0x489420
and eax, 0x704a94a0
cmp eax, 0x5ea805c7
je 0x140078c60
mov r14, qword [rbx]
mov eax, dword [0x141dcf2f8]
xor edx, edx
div dword [0x141dcf2fc]
imul eax, eax, 0xae54559c
add eax, 0xd66100a4
and eax, 0xa176d980
cmp eax, 0xd5adac22
ja 0x140078c80
test r14, r14
je 0x140078cdc
mov eax, dword [0x141dcf300]
or eax, dword [0x141dcf304]
or eax, 0x373821ae
imul eax, eax, 0xd92eb541
cmp eax, 0x222c60f5
je 0x140078cd4
mov rcx, rdi
call r14
xor eax, eax
test al, al
je 0x140078cdc
mov rcx, rdi
call r14
jmp 0x140078cc8
mov r8, qword [rbx + 8]
mov rcx, qword [rbx + 0x10]
nop word cs:[rax + rax]
mov eax, dword [0x141dcf308]
xor edx, edx
div dword [0x141dcf30c]
imul rax, rax, 0x39d0e51d
shr rax, 0x3a
imul eax, eax, 0x852277a8
add eax, 0xfc4ebe88
cmp eax, 0x49077710
jb 0x140078cf0
nop dword [rax + rax]
mov eax, dword [0x141dcf310]
xor edx, edx
div dword [0x141dcf314]
add eax, 0x72565d5d
and eax, 0x3bcf3fd8
cmp eax, 0xb668c56c
je 0x140078d20
test r8, r8
je 0x140078dfe
nop dword [rax + rax]
mov eax, dword [0x141dcf318]
xor eax, dword [0x141dcf31c]
imul rax, rax, 0x62e9e695
shr rax, 0x3d
imul eax, eax, 0xb25480f3
add eax, 0xac06985e
cmp eax, 0xa49bffb
jb 0x140078d50
mov eax, 0x8722546d
nop
mov edx, dword [0x141dcf320]
add edx, dword [0x141dcf324]
imul rdx, rax
shr rdx, 0x3e
add edx, 0x4aa6a40d
or edx, 0xafe7a984
cmp edx, 0x842857aa
jb 0x140078d80
cmp rcx, 0x11
jb 0x140078dec
mov eax, 0xa79d67b9
nop word cs:[rax + rax]
mov ecx, dword [0x141dcf328]
and ecx, dword [0x141dcf32c]
imul ecx, ecx, 0x7ef277cf
imul rcx, rax
shr rcx, 0x39
imul ecx, ecx, 0xc5095e8d
cmp ecx, 0xaf1034e2
ja 0x140078dc0
mov rdi, qword [rdi - 8]
mov rcx, qword [0x141dde6e0]
xor edx, edx
mov r8, rdi
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rsi, qword [rsi]
cmp rsi, 0xffffffffffffffff
je 0x140078fc0
mov eax, dword [0x141dcf330]
and eax, dword [0x141dcf334]
xor eax, 0x6c55231a
imul rax, rax, 0x52c030af
shr rax, 0x3b
or eax, 0xe7cf9227
cmp eax, 0xe5a94a13
je 0x140078e63
mov eax, dword [0x141dcf338]
xor edx, edx
div dword [0x141dcf33c]
shr eax, 2
imul rax, rax, 0x40fc80d1
shr rax, 0x39
mov rcx, 0xffffffffffffffff
lock xadd qword [rsi + 8], rcx
cmp eax, 0xeb9999be
jne 0x140078e6a
lock dec qword [rsi + 8]
jmp 0x140078e33
mov eax, dword [0x141dcf340]
xor edx, edx
div dword [0x141dcf344]
nop dword [rax + rax]
mov eax, dword [0x141dcf348]
imul eax, dword [0x141dcf34c]
imul eax, eax, 0x2069cf04
add eax, 0x663bed1f
cmp eax, 0x38f93a74
ja 0x140078e80
cmp rcx, 1
jne 0x140078fc0
mov eax, dword [0x141dcf350]
add eax, dword [0x141dcf354]
xor eax, 0x15406024
or eax, 0xa2198fd3
imul eax, eax, 0x9f462847
cmp eax, 0xc57aa913
jbe 0x140078ed0
nop dword [rax]
mov eax, dword [0x141dcf358]
xor edx, edx
div dword [0x141dcf35c]
imul eax, eax, 0x7205d605
xor eax, 0x644e4c7e
imul eax, eax, 0xbd7a4687
cmp eax, 0xb85b7c1f
ja 0x140078ed0
mov eax, dword [0x141dcf360]
or eax, dword [0x141dcf364]
imul eax, eax, 0x33bfb00c
add eax, 0xee68c07e
cmp eax, 0x38e4dfa2
jb 0x140078f46
mov eax, dword [0x141dcf368]
or eax, dword [0x141dcf36c]
shr eax, 3
imul rax, rax, 0x139c954d
shr rax, 0x37
or eax, 0xab881074
and eax, 0xab881076
mov rdi, qword [0x141dde6e0]
cmp eax, 0x65ab9a48
jae 0x140078f4f
mov rax, qword [0x141dde6e0]
jmp 0x140078f14
mov eax, dword [0x141dcf370]
sub eax, dword [0x141dcf374]
add eax, 0x5399cd25
mov ecx, 0x90568623
imul rcx, rax
shr rcx, 0x3f
imul eax, ecx, 0x2eef39a9
cmp eax, 0xe3d8e7df
jne 0x140078f88
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
mov eax, dword [0x141dcf378]
add eax, dword [0x141dcf37c]
imul ebp, eax, 0x9edb6bfb
add ebp, 0x7927a02c
and ebp, 0x77609cbf
mov rcx, rdi
xor edx, edx
mov r8, rsi
call rbx
cmp ebp, 0x71047a81
je 0x140078f90
mov eax, dword [0x141dcf380]
imul eax, dword [0x141dcf384]
add eax, 0xab2b2124
cmp eax, 0x908d6346
ja 0x140078fc0
add rsp, 0x28
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret