Function at 0x14008b710
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x48
lea rbp, [rsp + 0x40]
movaps xmmword [rbp - 0x10], xmm6
mov r10, r9
mov rbx, r8
mov r13, rdx
mov eax, dword [0x14158e8c0]
mov r8d, dword [0x14158e8c4]
mov edx, r8d
not edx
and edx, eax
xor r8d, eax
add r8d, eax
sub r8d, edx
mov eax, r8d
not eax
or r8d, 0xa1402242
and r8d, 0xa3406ae3
and eax, 0x18aa9114
or eax, r8d
not eax
add eax, 0xe346d745
cmp eax, 0x85c95eaf
jbe 0x14008b790
mov eax, 0x10
call fcn.14020e090
sub rsp, rax
nop word cs:[rax + rax]
mov eax, dword [0x14158e8c8]
add eax, dword [str.RuW]
mov r8d, eax
not r8d
mov edx, eax
and edx, 0xa3da6e03
and r8d, 0x5c2591fc
imul r8d, edx
mov edx, eax
and edx, 0x5c2591fc
or eax, 0x5c2591fc
imul eax, edx
add eax, r8d
imul edx, eax, 0xb758815c
add edx, 0x290d9ff0
mov eax, 0x10
call fcn.14020e090
sub rsp, rax
mov r11, rsp
cmp edx, 0x759fce4d
ja 0x14008b790
mov eax, 0x10
call fcn.14020e090
sub rsp, rax
mov r14, rsp
mov eax, 0x10
call fcn.14020e090
sub rsp, rax
mov rdi, rsp
mov eax, 0x20
call fcn.14020e090
sub rsp, rax
mov rsi, rsp
mov eax, 0x40
call fcn.14020e090
sub rsp, rax
mov r12, rsp
mov eax, 0x40
call fcn.14020e090
sub rsp, rax
mov r15, rsp
mov eax, 0x10
call fcn.14020e090
sub rsp, rax
mov r9, rsp
mov eax, 0x20
call fcn.14020e090
sub rsp, rax
mov r8, rsp
cmp r13, 0x41
jae 0x14008b8e0
nop word cs:[rax + rax]
mov eax, dword [0x14158e8f0]
xor edx, edx
div dword [0x14158e8f4]
mov edx, eax
and edx, 0x7fe57f86
xor eax, 0xffe57f86
lea eax, [rax + rdx*2]
imul eax, eax, 0xfcb37af4
imul rax, rax, 0x1a4260f5
shr rax, 0x38
cmp eax, 0xcecd3a5c
je 0x14008b870
mov dword [r9], r13d
mov qword [r8], r9
mov qword [r8 + 8], 4
mov qword [r8 + 0x10], rbx
mov qword [r8 + 0x18], r10
sub rsp, 0x20
mov r9d, 2
mov rdx, r13
call fcn.14020c140
jmp 0x14008bdf5
mov eax, dword [0x14158e8d0]
mov r8d, dword [0x14158e8d4]
mov edx, r8d
and edx, eax
add eax, r8d
sub eax, edx
imul rdx, rax, 0x2949a3f3
shr rdx, 0x20
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 0x1f
xor eax, 0x285973eb
add eax, 0x9491808
cmp eax, 0xc31bd6eb
ja 0x14008b8e0
mov qword [rbp - 0x28], r11
mov eax, dword [0x14158e8d8]
add eax, dword [0x14158e8dc]
imul eax, eax, 0xa2c3998e
add eax, 0xb8bfb1ba
and eax, 0x9ebd47f8
cmp eax, 0x879893a9
mov qword [rbp - 0x20], rcx
mov qword [rbp - 0x18], r13
jbe 0x14008b9da
xorps xmm0, xmm0
movups xmmword [r15 + 0x30], xmm0
movups xmmword [r15 + 0x20], xmm0
movups xmmword [r15 + 0x10], xmm0
movups xmmword [r15], xmm0
movups xmmword [r12 + 0x30], xmm0
movups xmmword [r12 + 0x20], xmm0
movups xmmword [r12 + 0x10], xmm0
movups xmmword [r12], xmm0
mov dword [rdi], r13d
mov qword [rsi], rdi
mov qword [rsi + 8], 4
mov qword [rsi + 0x10], rbx
mov qword [rsi + 0x18], r10
sub rsp, 0x20
mov edx, 0x40
mov r9d, 2
mov rcx, r15
mov r8, rsi
mov r13, rsi
mov rsi, rdi
mov rdi, r10
call fcn.14008a160
mov r10, rdi
mov rdi, rsi
mov rsi, r13
mov r13, qword [rbp - 0x18]
mov rax, qword [rbp - 0x20]
add rsp, 0x20
movups xmm0, xmmword [r15]
movups xmm1, xmmword [r15 + 0x10]
movups xmmword [rax + 0x10], xmm1
movups xmmword [rax], xmm0
xorps xmm6, xmm6
movabs rcx, 0x7fffffffffffffe0
mov rax, r13
and rax, rcx
xor r13, 0xffffffffffffffe0
lea rax, [rax*2]
add rax, r13
mov qword [rbp - 0x30], rax
mov qword [rbp - 0x38], rsi
nop word cs:[rax + rax]
mov eax, dword [0x14158e8e0]
mov ecx, dword [0x14158e8e4]
not eax
not ecx
or ecx, eax
not ecx
add ecx, 0xb44023d
imul r13, rcx, 0x35cd0d3
shr r13, 0x39
movups xmmword [r15 + 0x30], xmm6
movups xmmword [r15 + 0x20], xmm6
movups xmmword [r15 + 0x10], xmm6
movups xmmword [r15], xmm6
movups xmmword [r12 + 0x30], xmm6
movups xmmword [r12 + 0x20], xmm6
movups xmmword [r12 + 0x10], xmm6
movups xmmword [r12], xmm6
mov rax, qword [rbp - 0x18]
mov dword [rdi], eax
mov qword [rsi], rdi
mov qword [rsi + 8], 4
mov qword [rsi + 0x10], rbx
mov qword [rsi + 0x18], r10
sub rsp, 0x20
mov edx, 0x40
mov r9d, 2
mov rcx, r15
mov r8, rsi
mov rsi, rdi
mov rdi, rbx
mov rbx, r10
call fcn.14020c140
mov r10, rbx
mov rbx, rdi
mov rdi, rsi
mov rsi, qword [rbp - 0x38]
mov rcx, qword [rbp - 0x20]
add rsp, 0x20
movups xmm0, xmmword [r15]
movups xmm1, xmmword [r15 + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmmword [rcx], xmm0
cmp r13d, 0xe5f2fffc
je 0x14008ba10
mov eax, 0x20
mov r13, qword [rbp - 0x30]
cmp r13, 0x41
mov rbx, qword [rbp - 0x18]
jb 0x14008bdbe
nop word cs:[rax + rax]
mov eax, dword [0x14158e8e8]
and eax, dword [0x14158e8ec]
mov ecx, eax
not ecx
and ecx, 0x446e8fe2
mov edx, eax
and edx, 0xbb91701d
imul edx, ecx
mov ecx, eax
and ecx, 0x446e8fe2
or eax, 0x446e8fe2
imul eax, ecx
add eax, edx
mov ecx, eax
not ecx
or ecx, 0x6ccf19c8
add eax, ecx
add eax, 0xe4cd64a9
cmp eax, 0x5cb575d0
jb 0x14008baf0
mov esi, 0x20
mov eax, dword [0x14158e8f8]
mov ecx, dword [0x14158e8fc]
mov edx, ecx
and edx, eax
add eax, ecx
sub eax, edx
mov ecx, eax
or ecx, 0x43600187
not eax
and eax, 0x8081f628
and ecx, 0x576401d7
sub ecx, eax
mov eax, ecx
not eax
and eax, 0xadb5e820
mov edx, ecx
and edx, 0x104a16dd
imul edx, eax
mov eax, ecx
and eax, 0xc7b5e922
or ecx, 0xefb5e922
imul ecx, eax
add ecx, edx
cmp ecx, 0x7b61e9ee
jae 0x14008bbf0
movups xmm0, xmmword [r15]
movups xmm1, xmmword [r15 + 0x10]
movups xmm2, xmmword [r15 + 0x20]
movups xmm3, xmmword [r15 + 0x30]
movups xmmword [r12 + 0x30], xmm3
movups xmmword [r12 + 0x20], xmm2
movups xmmword [r12 + 0x10], xmm1
movups xmmword [r12], xmm0
mov qword [r14], r12
mov qword [r14 + 8], 0x40
sub rsp, 0x20
mov edx, 0x40
mov r9d, 1
mov rcx, r15
mov r8, r14
call fcn.14008a160
add rsp, 0x20
nop dword [rax]
mov eax, dword [0x14158e900]
mov ecx, dword [0x14158e904]
mov edi, eax
not edi
mov edx, ecx
not edx
mov r8d, edi
and r8d, 0x20241888
and eax, 0x47018063
or eax, r8d
or edi, edx
and edx, 0x20241888
and ecx, 0x47018063
or ecx, edx
xor ecx, eax
not edi
or edi, ecx
or edi, 0x98da6714
add edi, 0x31f5328b
or edi, 0x558ca9c5
movups xmm0, xmmword [r15]
movups xmm1, xmmword [r15 + 0x10]
movups xmm2, xmmword [r15 + 0x20]
movups xmm3, xmmword [r15 + 0x30]
movups xmmword [r12 + 0x30], xmm3
movups xmmword [r12 + 0x20], xmm2
movups xmmword [r12 + 0x10], xmm1
movups xmmword [r12], xmm0
mov qword [r14], r12
mov qword [r14 + 8], 0x40
sub rsp, 0x20
mov edx, 0x40
mov r9d, 1
mov rcx, r15
mov r8, r14
call fcn.14020c140
add rsp, 0x20
cmp edi, 0x2ad3e823
jb 0x14008bbf0
cmp rsi, 0xffffffffffffffe0
je 0x14008be4b
mov eax, esi
and eax, 0x20
mov rcx, rsi
xor rcx, 0x20
lea rax, [rcx + rax*2]
mov rcx, qword [rbp - 0x20]
nop dword [rax + rax]
mov r9d, dword [0x14158e910]
mov edx, dword [0x14158e914]
mov r8d, edx
not r8d
or r8d, r9d
not r9d
or r9d, edx
and r9d, r8d
not r9d
add r9d, 0x538f08ab
imul rdx, r9, 0x6b812ecb
shr rdx, 0x3e
not edx
and edx, 0x3d3e42e9
cmp edx, 0x18bfc2da
je 0x14008bcc0
nop word cs:[rax + rax]
mov r8d, dword [0x14158e918]
or r8d, dword [0x14158e91c]
mov edx, r8d
xor edx, 0x44ca1810
xor r8d, 0x8834e641
and r8d, 0xba35e66d
and edx, 0x45ca1992
or edx, r8d
xor edx, 0x23a94bb1
cmp edx, 0x207e4be6
jb 0x14008bd10
cmp rax, rbx
ja 0x14008be82
movups xmm0, xmmword [r15]
movups xmm1, xmmword [r15 + 0x10]
movups xmmword [rcx + rsi + 0x10], xmm1
movups xmmword [rcx + rsi], xmm0
mov rdx, r13
movabs r8, 0x7fffffffffffffe0
and rdx, r8
xor r13, 0xffffffffffffffe0
lea r13, [r13 + rdx*2]
mov edx, dword [0x14158e938]
imul edx, dword [0x14158e93c]
or edx, 0xf2410a4e
imul r8d, edx, 0xb24fa4a8
mov edx, r8d
and edx, 0x15e59960
add edx, edx
sub r8d, edx
cmp r8d, 0xf2cb9c87
je 0x14008bd80
mov rsi, rax
cmp r13, 0x40
ja 0x14008bb40
movabs r8, 0xf8c1bdb6783d0e3b
sub rbx, r8
sub rbx, rax
add rbx, r8
add rcx, rax
mov r8, qword [rbp - 0x28]
mov qword [r8], r15
mov qword [r8 + 8], 0x40
sub rsp, 0x20
mov r9d, 1
mov rdx, rbx
call fcn.14008a160
add rsp, 0x20
mov eax, 0xb16d1955
nop
mov ecx, dword [0x14158e908]
sub ecx, dword [str._bB_9]
mov edx, ecx
and edx, 0x29dc2665
or ecx, 0x29dc2665
add ecx, edx
mov edx, ecx
xor edx, 0x8c17e8b9
and edx, ecx
imul rdx, rax
shr rdx, 0x3f
cmp edx, 0xad0127da
je 0x14008be00
movaps xmm6, xmmword [rbp - 0x10]
lea rsp, [rbp + 8]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
mov eax, dword [0x14158e920]
mov ecx, dword [0x14158e924]
not ecx
add eax, ecx
add eax, 0x3099bb57
mov ecx, eax
or ecx, 0xe70edc54
not eax
or eax, 0x18f123ab
and eax, ecx
xor eax, 0xd14616c4
cmp eax, 0x9dea5d9
jne 0x14008bed9
jmp 0x14008bf30
mov eax, dword [0x14158e940]
and eax, dword [0x14158e944]
mov ecx, 0x8f1695c9
imul rcx, rax
shr rcx, 0x3c
mov eax, ecx
not eax
xor ecx, 0x9c0f5c86
mov edx, ecx
and edx, 0x900a5407
and eax, 0x42302058
imul eax, edx
mov edx, ecx
and edx, 0xc050888
or ecx, 0x4e3528d8
imul ecx, edx
add ecx, eax
cmp ecx, 0x54236066
jae 0x14008bf91
jmp 0x14008bfad
mov ecx, dword [0x14158e928]
mov eax, dword [0x14158e92c]
mov edx, ecx
xor edx, eax
not eax
and eax, ecx
add eax, eax
sub eax, edx
mov ecx, eax
or ecx, 0x2973ebdc
mov edx, eax
not edx
and edx, 0x82000021
mov r8d, ecx
and r8d, 0x5dfcf646
imul r8d, edx
and ecx, 0xa20309b9
or eax, 0xab73ebfd
imul eax, ecx
add eax, r8d
add eax, 0xa09b6fee
ud2
ud2
mov eax, dword [0x14158e948]
xor edx, edx
div dword [0x14158e94c]
or eax, 0xf7effefd
ud2
ud2