Function at 0x14024acb0
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0xc8
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x40], 0xfffffffffffffffe
mov dword [rbp + 0x34], r8d
mov qword [rbp + 0x28], rcx
lea r14, [rdx + 0x10]
movzx esi, word [rdx + 0xe]
mov eax, dword [0x14069441c]
cmp eax, 0x1c
jge 0x14024ad30
mov rax, qword [0x140625b80]
movabs rcx, 0x433bd34531e082cc
xor rcx, rax
movabs r8, 0x3cc42cbace1f7d33
xor r8, rax
and r8, rax
lea rax, [rcx + r8*2]
movabs rcx, 0x3237e9c3d32c9d67
add rcx, rax
cmp rdx, rcx
jne 0x14024ad3d
nop dword [rax + rax]
mov eax, dword [0x14069441c]
cmp eax, 0x4d
jge 0x14024ad30
jmp 0x14024acee
mov eax, 0x78359410
add eax, dword [0x140625b90]
not eax
lea rcx, [fcn.14024acb0]
add ecx, ecx
add ecx, 0x4c20
not ecx
mov r8d, ecx
xor r8d, eax
and r8d, ecx
or r8d, eax
cmp r8d, 0xffffffff
jne 0x14024ad80
movsxd rbx, dword [0x140536ea0]
cmp dword [0x140625b90], 0x87ca6bf1
je 0x14024ad88
mov eax, dword [0x140536ea0]
jmp 0x14024ad6d
mov r15d, dword [0x140536e88]
mov edi, dword [0x140694424]
movzx r12d, word [rdx + 0xc]
cmp qword [0x140696b78], 0
jne 0x14024add0
mov ecx, 0x900
mov edx, 0xd8d4659
mov r8d, 0x46fe8ef3
call fcn.1400a8810
mov qword [rbp + 0x38], rax
mov rcx, rax
call fcn.140085690
mov rax, qword [rbp + 0x38]
mov qword [0x140696b78], rax
lea rax, [0x140536ea0]
mov rcx, rbx
not rcx
mov rdx, rcx
and rdx, rax
xor rbx, rax
not rax
mov r8, rax
xor r8, rcx
and r8, rax
or r8, rdx
and rax, rcx
or rax, rbx
not rax
add rax, rax
mov rcx, rax
xor rcx, rax
not rcx
and rcx, r8
xor rcx, rax
and rax, r8
lea rbx, [rcx + rax*2]
mov eax, edi
xor eax, esi
not edi
not esi
and esi, edi
or esi, eax
not esi
add esi, esi
mov ecx, esi
xor ecx, esi
not ecx
and ecx, eax
xor ecx, esi
and esi, eax
add esi, esi
mov eax, ecx
xor eax, esi
and esi, ecx
lea eax, [rax + rsi*2]
add r12d, eax
mov dword [rbp + 0x30], r12d
mov rax, qword [0x140696b78]
mov rax, qword [rax + 0x8e8]
call qword [0x1405fc400]
movzx eax, al
mov dword [rbp + 0x24], eax
xor eax, eax
mov qword [rbp + 0x38], rax
mov r13d, 0x78359410
lea rax, [fcn.14024acb0]
lea esi, [rax + rax]
add esi, 0x23a0
mov edi, esi
not edi
jmp 0x14024aea7
add rax, 0x28
mov rdx, rax
mov rcx, r8
call fcn.1400a75d0
test r12b, r12b
jne 0x14024b592
add r14, 8
mov rax, qword [rbp + 0x38]
inc eax
mov qword [rbp + 0x38], rax
mov ecx, dword [0x1406258e0]
mov eax, ecx
xor eax, 1
mov edx, ecx
and edx, 1
lea edx, [rax + rdx*2]
mov eax, dword [0x14069441c]
cmp eax, 0x54
jge 0x14024aeea
nop word cs:[rax + rax]
mov dword [0x1406258e0], edx
mov eax, dword [0x140694418]
lea r8d, [rax - 1]
imul r8d, eax
test r8b, 1
je 0x14024af00
mov dword [0x1406258e0], edx
jmp 0x14024aed0
mov eax, ecx
not eax
mov r8d, edx
not r8d
mov r9d, dword [0x14069441c]
nop word cs:[rax + rax]
mov r9d, dword [0x140625b90]
add r9d, r13d
mov r10d, esi
xor r10d, edi
and r10d, r9d
mov r9d, edi
xor r9d, edi
xor r9d, r10d
test esi, r9d
jne 0x14024af20
mov r9d, r8d
xor r9d, ecx
and r9d, r8d
or r9d, ecx
not r9d
mov ecx, eax
xor ecx, edx
and ecx, eax
or ecx, edx
not ecx
or ecx, r9d
and eax, r8d
mov edx, dword [0x14069441c]
cmp edx, 0x43
jg 0x14024af76
mov edx, dword [0x14069441c]
cmp edx, 0x24
jle 0x14024af90
mov edx, dword [0x140694418]
lea r8d, [rdx - 1]
imul r8d, edx
test r8b, 1
jne 0x14024af60
jmp 0x14024af6b
or ecx, eax
not ecx
mov eax, 0
mov edx, 0
test ecx, ecx
jne 0x14024b060
mov eax, 0
mov edx, 0
test r15d, r15d
jle 0x14024b060
xor r8d, r8d
xor r10d, r10d
xor r9d, r9d
nop word cs:[rax + rax]
movsxd r8, r8d
mov rax, qword [rbx + r8]
mov rdx, qword [rbx + r8 + 8]
not rdx
mov r11, r9
xor r11, rdx
not rax
mov r12, r10
xor r12, rax
and r12, r10
and r11, r9
or r11, rdx
or r12, rax
not r12
not r11
and rax, r10
or rax, r12
and rdx, r9
or rdx, r11
mov r9d, dword [0x140625b90]
sub r8d, r9d
mov r10d, r9d
xor r10d, 0x7835940f
and r9d, 0x7835940f
lea r9d, [r10 + r9*2]
lea r10d, [r8 - 0x783593ff]
xor r10d, r9d
not r9d
mov r11d, 0x783593fe
sub r11d, r8d
and r11d, r9d
or r11d, r10d
not r11d
lea r8d, [r10 + r11*2]
mov r10, rax
mov r9, rdx
cmp r8d, r15d
jl 0x14024afd0
nop dword [rax]
mov r8, qword [rbp + 0x38]
cmp r8d, dword [rbp + 0x30]
jae 0x14024b592
mov r12d, dword [r14 + 4]
mov r8d, dword [0x140625b90]
mov r9d, 0x7835940e
add r8d, r9d
cmp r12d, r8d
jle 0x14024b110
cmp dword [r14], 0
js 0x14024ae99
cmp dword [rbp + 0xb0], 6
jne 0x14024ae99
mov rax, qword [rbp + 0x28]
add r12, qword [rax + 0x18]
movzx eax, word [r14]
cmp eax, dword [rbp + 0xb8]
sete cl
test eax, eax
sete dl
mov r8d, edx
and r8b, cl
xor dl, cl
xor dl, r8b
cmp word [rbp + 0x24], ax
sete al
xor al, dl
mov ecx, eax
not cl
test cl, dl
jne 0x14024b0e0
test al, al
je 0x14024ae99
mov rax, qword [rbp + 0xd0]
mov qword [rsp + 0x20], rax
mov rcx, qword [rbp + 0x28]
mov edx, dword [rbp + 0xb8]
mov r8d, dword [rbp + 0x34]
mov r9, r12
call fcn.14024a910
test al, al
je 0x14024ae99
jmp 0x14024b588
xor r8d, r8d
test ecx, ecx
setne r8b
neg r8
mov ecx, 0
sbb rcx, rcx
sub rax, qword [0x140536e90]
sbb rdx, qword [0x140536e98]
mov r9, rax
neg r9
mov r10d, 0
sbb r10, rdx
xor r10, rcx
xor r9, r8
add rax, 0xffffffffffffffff
adc rdx, 0xffffffffffffffff
not r10
not r9
and rdx, rcx
or rdx, r10
and rax, r8
or rax, r9
not rdx
not rax
or rax, rdx
mov ecx, dword [0x14069441c]
cmp ecx, 0xc
jl 0x14024b191
nop word cs:[rax + rax]
mov ecx, dword [0x140694418]
lea edx, [rcx - 1]
imul edx, ecx
test dl, 1
jne 0x14024b180
mov rcx, rax
shr rcx, 0x20
mov edx, ecx
not edx
mov r8d, eax
not r8d
mov r9d, r8d
xor r9d, edx
and r9d, r8d
or r9d, edx
not r9d
xor ecx, eax
or ecx, r9d
mov eax, dword [0x140694424]
mov edx, dword [0x140694418]
nop word cs:[rax + rax]
mov edx, dword [0x14069441c]
cmp edx, 0x45
jg 0x14024b1d0
mov edx, 0x64c0fe7b
sub edx, eax
mov eax, edx
xor eax, 0x9b3f0185
and edx, 0x1b3f0185
lea r8d, [rax + rdx*2]
neg ecx
mov edx, dword [0x140694418]
lea eax, [rdx - 1]
imul eax, edx
mov r9d, dword [0x140625b90]
mov edx, 0x78359411
add r9d, edx
xor edx, edx
div r9d
test edx, edx
jne 0x14024b248
nop dword [rax]
lea eax, [r8 + rcx]
neg eax
mov dword [0x140694424], eax
mov eax, dword [0x140694418]
mov edx, dword [0x140625b90]
add edx, eax
add edx, 0x800acba8
imul edx, eax
test dl, 1
je 0x14024b260
mov dword [0x140694424], 0
jmp 0x14024b220
mov qword [rbp - 0x18], 0
mov qword [rbp - 0x10], 0xf
mov byte [rbp - 0x28], 0
lea r12, [0x14052ecd8]
mov qword [rbp - 0x30], r12
mov ecx, dword [r14]
test ecx, ecx
js 0x14024b28f
movzx r8d, word [r14]
jmp 0x14024b4cd
mov rax, qword [rbp + 0x28]
mov rax, qword [rax + 0x18]
mov edx, ecx
not edx
add ecx, 0x80000000
mov r8d, edx
and r8d, 0x7fffffff
or ecx, r8d
not ecx
or ecx, r8d
and edx, 0x80000000
mov r8d, ecx
not r8d
mov r9d, edx
not r9d
mov r10d, r9d
xor r10d, r8d
and r10d, r9d
or r10d, r8d
mov r11d, r10d
not r11d
and r8d, edx
and r9d, ecx
or r9d, r8d
mov ecx, r11d
and ecx, r9d
xor r10d, r11d
and r10d, r9d
xor ecx, r11d
xor ecx, r10d
not ecx
movzx r8d, word [rax + rcx]
lea rdx, [rax + rcx]
add rdx, 2
mov qword [rbp + 0x10], 0
mov qword [rbp + 0x18], 0xf
mov byte [rbp], 0
mov qword [rbp - 8], r12
lea r12, [rbp - 8]
mov rcx, r12
call fcn.1402f1c00
lea rcx, [rbp - 0x30]
mov rdx, r12
call fcn.1402f02e0
mov rax, qword [rbp + 0x18]
mov rcx, qword [0x140625b80]
movabs rdx, 0x7573bd09050d2042
add rcx, rdx
cmp rax, rcx
jbe 0x14024b4ca
mov rcx, qword [rbp]
mov rdx, rax
not rdx
mov r8d, edx
and r8d, 1
mov r9, rax
and r9, 0xfffffffffffffffe
or r9, r8
mov r8, rax
xor r8, 1
movabs r10, 0x7ffffffffffffffe
and rdx, r10
or rdx, r8
not rdx
add rdx, rdx
neg r9
neg rdx
mov r8, r9
xor r8, rdx
and rdx, r9
lea rdx, [r8 + rdx*2]
neg rdx
mov r8, qword [0x140625b80]
movabs r9, 0x7573bd09050d3032
add r8, r9
cmp rdx, r8
jbe 0x14024b4c5
mov r8, qword [rcx - 8]
mov rdx, qword [0x140625b80]
movabs r9, 0xd312ae6880b28a55
add rdx, r9
mov r9, rdx
not r9
mov r10, r9
movabs r11, 0xa2610ea0845a95de
and r10, r11
mov r11, rdx
movabs r12, 0x5d9ef15f7ba56a21
and r11, r12
or r11, r10
movabs r10, 0x22610ea0845a95de
xor rdx, r10
and r9, r12
or r9, rdx
not r9
lea rdx, [r11 + r9*2]
sub rdx, rcx
mov rcx, rdx
not rcx
mov r9, rdx
xor r9, 8
mov r10, r9
and r10, rcx
and rdx, 0xfffffffffffffff7
or rdx, r10
movabs r10, 0x7ffffffffffffff7
and rcx, r10
or rcx, r9
not rcx
lea rcx, [rdx + rcx*2]
neg rcx
mov rdx, rcx
movabs r9, 0x3cd17752068c53fa
xor rdx, r9
and rcx, r9
lea rcx, [rdx + rcx*2]
sub rcx, r8
movabs rdx, 0xc32e88adf973ac06
add rcx, rdx
cmp rcx, 0x20
jae 0x14024b5b0
add rax, qword [0x140625b80]
movabs rcx, 0x177859686e0bb7a5
add rax, rcx
mov rcx, rax
movabs rdx, 0x8ad1f932ccd77fda
xor rcx, rdx
movabs rdx, 0xad1f932ccd77fda
and rax, rdx
lea rdx, [rcx + rax*2]
movabs rax, 0xd3296a6dca29e8dc
add rdx, rax
mov rcx, r8
call fcn.1400a75d0
xor r8d, r8d
mov eax, dword [r14 + 4]
lea edx, [rax - 0x80000000]
and edx, eax
mov rcx, qword [rbp + 0x28]
add rdx, qword [rcx + 0x18]
mov rax, qword [rbp + 0xd0]
mov qword [rsp + 0x40], rax
mov rax, qword [rbp + 0xc8]
mov qword [rsp + 0x38], rax
mov rax, qword [rbp + 0xc0]
mov qword [rsp + 0x30], rax
mov eax, dword [rbp + 0xb8]
mov dword [rsp + 0x28], eax
mov eax, dword [rbp + 0x34]
mov dword [rsp + 0x20], eax
call fcn.14024acb0
mov r12d, eax
mov rax, qword [rbp - 0x10]
cmp rax, 0x10
jb 0x14024ae90
mov rcx, qword [rbp - 0x28]
lea rdx, [rax + 1]
mov r8, qword [0x140625b80]
movabs r9, 0x7573bd09050d3032
add r8, r9
cmp rdx, r8
jbe 0x14024ae8b
mov r8, qword [rcx - 8]
mov rdx, qword [0x140625b80]
mov r9, rdx
movabs r10, 0x7573bd09050d202b
xor r9, r10
and rdx, r10
lea rdx, [r9 + rdx*2]
add rdx, rcx
sub rdx, r8
cmp rdx, 0x20
jb 0x14024ae81
call fcn.1404ca324
mov rax, qword [rbp + 0xc8]
mov qword [rax], r12
mov rax, qword [rbp + 0x38]
cmp eax, dword [rbp + 0x30]
setb al
add rsp, 0xc8
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
call fcn.1404ca324
int3