Function at 0x140261de0
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x98
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x10], 0xfffffffffffffffe
mov rdi, r8
mov r9, rdx
mov r13, rcx
mov eax, dword [0x140590334]
cmp eax, 0x47
jg 0x140261e40
test r9, r9
setne al
sete cl
test rdi, rdi
setne dl
sete r8b
mov r10d, dword [0x140590330]
lea r11d, [r10 - 1]
imul r11d, r10d
test r11b, 1
je 0x140261e4d
nop
mov eax, dword [0x140590334]
cmp eax, 0x41
jge 0x140261e40
jmp 0x140261e17
xor cl, r8b
and al, dl
or al, cl
xor al, 1
or al, cl
je 0x140261e67
cmp qword [r13 + 0x20], 8
jb 0x140261e7e
mov rax, qword [r13 + 8]
jmp 0x140261e82
mov eax, dword [0x140590330]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
jne 0x140261f03
jmp 0x140261eaf
lea rax, [r13 + 8]
mov qword [r13 + 0x18], 0
mov ecx, 0xffff8a2b
add ecx, dword [0x140545f08]
mov word [rax], cx
mov rax, r13
add rsp, 0x98
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
mov qword [rbp], 0
mov qword [rbp + 8], 7
mov word [rbp - 0x10], 0
movabs r15, 0xb30d86c2e49c2064
mov rcx, qword [0x140545ef8]
add rcx, r15
mov edx, dword [0x140590330]
mov r8d, dword [0x140545f00]
mov eax, edx
sub eax, r8d
add eax, 0x7b4d1135
imul eax, edx
add r8d, 0x84b2eecc
xor edx, edx
div r8d
test edx, edx
je 0x140261f1b
mov qword [rbp], 0
mov qword [rbp + 8], 7
mov word [rbp - 0x10], 0
jmp 0x140261eaf
cmp rdi, rcx
mov qword [rbp - 0x50], r13
jbe 0x140261f32
lea rcx, [rbp - 0x10]
mov rdx, rdi
call fcn.14008fd10
jmp 0x140261f4d
mov qword [rbp], rdi
lea r8, [rdi + rdi]
lea rcx, [rbp - 0x10]
mov rdx, r9
call fcn.14042d4b0
mov word [rbp + rdi*2 - 0x10], 0
lea r8, [rbp - 0x40]
cmp dword [0x140545f00], 0x7b4d1136
jne 0x140261f82
movsxd r13, dword [0x1404570f4]
mov eax, dword [0x140590330]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
mov eax, 0x84b2eeca
add eax, dword [0x140545f00]
cmp ecx, eax
je 0x140261f8a
mov eax, dword [0x1404570f4]
jmp 0x140261f5d
mov eax, 0x84b2eed5
nop
mov ecx, dword [0x140590334]
cmp ecx, 0x4e
jle 0x140261fad
mov ecx, dword [0x140590334]
mov edx, dword [0x140545f00]
add edx, eax
cmp ecx, edx
jge 0x140261f90
mov edi, dword [0x140457108]
mov rbx, qword [rbp]
cmp qword [rbp + 8], 8
jb 0x140261fc4
mov r14, qword [rbp - 0x10]
jmp 0x140261fc8
lea r14, [rbp - 0x10]
movabs rax, 0xb30d86c2e49c2065
add rax, qword [0x140545ef8]
cmp rbx, rax
jae 0x140261ff1
movups xmm0, xmmword [r14]
movups xmmword [r8], xmm0
mov r12d, 7
jmp 0x140262168
mov rax, rbx
not rax
mov rcx, rbx
xor rcx, 7
mov rdx, rax
and rdx, 0xfffffffffffffff8
or rdx, rcx
not rdx
and eax, 7
mov r12, rbx
and r12, 0xfffffffffffffff8
or r12, rax
or r12, rdx
movabs rsi, 0x7ffffffffffffffe
cmp r12, rsi
cmovae r12, rsi
lea rcx, [r12 + r12]
movabs rax, 0xb30d86c2e49c285b
add rax, qword [0x140545ef8]
cmp r12, rax
jbe 0x140262115
movabs rax, 0x7fffffffffffffec
cmp r12, rax
jae 0x140262440
cmp dword [0x140545f00], 0x7b4d1136
nop word [rax + rax]
mov eax, dword [0x140545f00]
mov edx, 0x7b4d1134
sub edx, eax
add eax, 0x84b2eecb
lea r8, [fcn.140261de0]
add r8d, r8d
add r8d, 0x21a0
mov r9d, r8d
not r9d
and eax, r9d
and r8d, edx
or r8d, eax
and r9d, edx
or r9d, r8d
cmp r9d, 0xffffffff
jne 0x140262070
add rcx, 0x29
call fcn.1404058bc
xor ecx, ecx
sub rcx, qword [0x140545ef8]
movabs rdx, 0x5dd05e9697596903
mov r8, rcx
xor r8, rdx
and rcx, rdx
lea rcx, [r8 + rcx*2]
movabs rdx, 0xef221aa6840a76c7
add rdx, rcx
add rdx, rax
mov r8, rdx
not r8
mov ecx, r8d
and ecx, 0x1f
mov r9, rdx
and r9, 0xffffffffffffffe0
or r9, rcx
mov rcx, r9
not rcx
xor r9, rdx
and rcx, r8
or rcx, r9
not rcx
mov qword [rcx - 8], rax
jmp 0x140262121
add rcx, 2
call fcn.1404058bc
mov rcx, rax
mov qword [rbp - 0x40], rcx
lea rax, [rbx + rbx]
and rsi, rax
movabs rdx, 0x7ffffffffffffffc
and rdx, rax
xor rax, 2
movabs r8, 0x7fffffffffffffff
xor r8, rsi
or rdx, r8
not rdx
add rdx, rdx
mov r8, rax
xor r8, rdx
and rdx, rax
lea r8, [r8 + rdx*2]
mov rdx, r14
call fcn.14042d4b0
lea rax, [0x1404570f4]
add r13, rax
mov qword [rbp - 0x30], rbx
mov qword [rbp - 0x28], r12
lea rcx, [fcn.140261de0]
lea edx, [rcx + rcx]
add edx, 0x41c0
mov eax, edx
not eax
and edx, eax
add ecx, ecx
add ecx, 0x41c1
and eax, 0xfffffffe
xor eax, ecx
or eax, edx
nop
cmp eax, 0xffffffff
je 0x1402621b0
mov ecx, dword [0x140590334]
cmp ecx, 0x3a
jge 0x1402621a0
mov eax, dword [0x140545080]
lea ecx, [rax + 1]
mov edx, ecx
not edx
mov qword [rbp - 0x20], rax
not eax
mov r8d, 0x84b2ef13
nop dword [rax]
mov r9d, dword [0x140590334]
cmp r9d, 0x57
jg 0x14026224a
mov dword [0x140545080], ecx
mov esi, dword [0x14058f4cc]
add esi, edx
mov r9d, dword [0x140590330]
lea r10d, [r9 + 1]
imul r10d, r9d
and r10d, 1
mov r9d, dword [0x140545f00]
mov r11d, r9d
xor r11d, 0x84b2eeca
and r9d, 0x4b2eeca
lea r9d, [r11 + r9*2]
cmp r10d, r9d
jne 0x14026224a
jmp 0x14026228f
mov dword [0x140545080], ecx
mov r9d, dword [0x140590334]
mov r10d, dword [0x140545f00]
add r10d, r8d
cmp r9d, r10d
mov dword [0x140545080], ecx
mov r9d, dword [0x140590330]
mov r10d, dword [0x140545f00]
neg r10d
add r10d, r9d
inc r10d
imul r10d, r9d
test r10b, 1
jne 0x140262230
mov r9d, dword [0x140590330]
lea r10d, [r9 - 1]
imul r10d, r9d
test r10b, 1
jne 0x1402621d0
jmp 0x1402621dd
mov ecx, eax
and ecx, esi
or esi, eax
not esi
or esi, ecx
xor esi, eax
test dword [rbp - 0x20], esi
mov qword [rbp - 0x18], rbx
je 0x1402622a8
xor ebx, ebx
jmp 0x140262319
mov eax, dword [0x140590334]
mov ecx, dword [0x140545f00]
mov edx, ecx
not edx
mov r8d, ecx
and r8d, 0x7b4d10ec
mov r9d, edx
and r9d, 0x84b2ef13
or r9d, r8d
xor ecx, 0x4b2ef13
and edx, 0x7b4d10ec
or edx, ecx
not edx
lea ecx, [r9 + rdx*2]
cmp eax, ecx
nop word cs:[rax + rax]
mov ecx, 0x84b2eeca
add ecx, dword [0x140545f00]
mov eax, dword [0x140590330]
lea edx, [rax + 1]
imul edx, eax
and edx, 1
cmp edx, ecx
jne 0x1402622f0
xor eax, eax
mov ebx, 0
cmp ecx, edi
jl 0x140262374
mov eax, dword [0x140590334]
cmp eax, 0x5d
nop word cs:[rax + rax]
cmp dword [0x140545f00], 0x7b4d1136
jne 0x140262330
mov eax, 0x84b2eecb
add eax, dword [0x140545f00]
lea rcx, [fcn.140261de0]
add ecx, ecx
add ecx, 0x480
mov edx, ecx
xor edx, eax
not eax
not ecx
and ecx, eax
or ecx, edx
cmp ecx, 0xffffffff
mov r13, qword [rbp - 0x50]
jne 0x140262781
jmp 0x14026276c
mov cl, 1
xor ebx, ebx
jmp 0x140262392
xor bx, word [rdx]
sub eax, dword [0x140545f00]
add eax, 0x7b4d1138
cmp eax, edi
jge 0x140262319
cmp dword [0x140545f00], 0x7b4d1136
jne 0x140262430
nop word cs:[rax + rax]
test cl, cl
je 0x140262430
movsxd rdx, eax
add rdx, r13
nop word [rax + rax]
mov r8d, dword [0x140590330]
lea r9d, [r8 + 1]
imul r9d, r8d
test r9b, 1
je 0x140262380
nop word cs:[rax + rax]
mov r8d, dword [0x140590334]
mov r9d, dword [0x140545f00]
mov r10d, r9d
not r10d
mov r11d, r9d
and r11d, 0x7b4d1121
mov r14d, r10d
and r14d, 0x84b2eede
or r14d, r11d
xor r9d, 0x4b2eede
and r10d, 0x7b4d1121
or r10d, r9d
not r10d
lea r9d, [r14 + r10*2]
cmp r8d, r9d
jge 0x1402623e0
jmp 0x1402623c0
mov edx, dword [0x140590334]
cmp edx, 0x24
jge 0x140262430
jmp 0x1402623b0
call fcn.140085110
lea rax, [0x14044a170]
mov ecx, 0x84b2ef11
nop word cs:[rax + rax]
mov qword [rbp - 0x48], rax
mov edx, dword [0x140590334]
mov r8d, dword [0x140545f00]
add r8d, ecx
cmp edx, r8d
jl 0x14026247f
mov qword [rbp - 0x48], rax
jmp 0x140262460
lea rax, [rbp - 0x48]
cmp rax, r13
je 0x14026252f
lea r14, [r13 + 8]
cmp qword [rbp - 0x18], 0
je 0x1402624bc
cmp r12, 8
lea r9, [rbp - 0x40]
jb 0x1402624a5
mov r9, qword [rbp - 0x40]
mov rax, qword [r13 + 0x20]
mov rdx, qword [rbp - 0x18]
cmp rax, rdx
jae 0x1402624d1
mov rcx, r14
call fcn.14008fd10
jmp 0x14026252b
cmp qword [r13 + 0x20], 8
jb 0x1402624c7
mov r14, qword [r13 + 8]
mov qword [r13 + 0x18], 0
jmp 0x1402624f5
cmp rax, 8
jb 0x1402624db
mov r14, qword [r13 + 8]
mov rdi, rdx
mov qword [r13 + 0x18], rdx
lea r8, [rdx + rdx]
mov rcx, r14
mov rdx, r9
call fcn.14042d4b0
lea r14, [r14 + rdi*2]
mov eax, dword [0x140590330]
mov ecx, dword [0x140545f00]
lea edx, [rax + rcx]
inc edx
imul edx, eax
and edx, 1
add ecx, 0x84b2eeca
cmp edx, ecx
je 0x140262525
mov eax, 0xffff8a2b
add eax, dword [0x140545f08]
mov word [r14], ax
mov word [r14], 0
mov r12, qword [rbp - 0x28]
mov rax, qword [0x140545ef8]
xor r15, rax
not rax
movabs rcx, 0x4cf2793d1b63df9b
and rcx, rax
or rcx, r15
not rcx
lea rcx, [r15 + rcx*2]
movzx r8d, word [0x140457114]
and esi, dword [rbp - 0x20]
movzx eax, word [0x140545f08]
cmp esi, 1
adc ax, 0xffff
add eax, 0xffff8a2b
not eax
sub r8d, ebx
mov edx, r8d
xor edx, eax
or r8d, eax
not r8d
or r8d, edx
not r8d
nop word [rax + rax]
mov eax, dword [0x140590330]
lea edx, [rax - 1]
imul edx, eax
test dl, 1
jne 0x1402625d0
mov edx, dword [0x140590330]
lea eax, [rdx - 1]
imul eax, edx
mov edx, dword [0x140545f00]
mov r9d, edx
xor r9d, 0x84b2eecc
and edx, 0x4b2eecc
lea r9d, [r9 + rdx*2]
xor edx, edx
div r9d
test edx, edx
je 0x1402625e3
mov eax, dword [0x140590330]
lea edx, [rax - 1]
imul edx, eax
test dl, 1
jne 0x140262590
jmp 0x1402625a1
movzx eax, r8w
add dword [0x14058f4ac], eax
cmp r12, rcx
jbe 0x1402626f3
mov rdi, qword [rbp - 0x40]
lea rbx, [r12 + r12]
add rbx, 2
cmp rbx, 0x1000
jb 0x140262629
mov rax, qword [rdi - 8]
sub rdi, rax
add rdi, 0xfffffffffffffff8
cmp rdi, 0x20
jae 0x140262636
add r12, r12
add r12, 0x29
mov rbx, r12
mov rdi, rax
mov eax, dword [0x140590334]
cmp eax, 0x2b
jle 0x14026263b
jmp 0x1402626a7
call fcn.1403e571c
mov eax, dword [0x140545f00]
mov ecx, eax
not ecx
mov edx, eax
and edx, 0x7b4d1135
mov r8d, ecx
and r8d, 0x84b2eeca
or r8d, edx
mov edx, eax
xor edx, 0x4b2eeca
and ecx, 0x7b4d1135
or ecx, edx
not ecx
lea ecx, [r8 + rcx*2]
lea edx, [rax - 0x7b4d1135]
lea r8d, [rax + 0x2cd90bdc]
add eax, 0xfa6ffe88
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], r8d
mov r8, rdi
mov r9, rbx
call fcn.140262c70
mov eax, dword [0x140590330]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
je 0x1402626f3
mov esi, 0x84b2eecc
nop dword [rax]
mov dword [rsp + 0x28], 0x75bd0fbe
mov dword [rsp + 0x20], 0xa8261d12
xor ecx, ecx
mov edx, 1
mov r8, rdi
mov r9, rbx
call fcn.140262c70
mov ecx, dword [0x140590330]
lea eax, [rcx - 1]
imul eax, ecx
mov ecx, dword [0x140545f00]
add ecx, esi
xor edx, edx
div ecx
test edx, edx
jne 0x1402626b0
jmp 0x14026263b
mov rax, qword [rbp + 8]
cmp rax, 8
jb 0x140261e98
mov r8, qword [rbp - 0x10]
mov rdx, qword [0x140545ef8]
lea ecx, [rdx + 0x5e]
shl rax, cl
movabs r9, 0xb30d86c2e49c205f
add r9, rdx
add r9, rax
cmp r9, 0x1000
jb 0x140262746
mov rcx, qword [r8 - 8]
sub r8, rcx
add r8, 0xfffffffffffffff8
cmp r8, 0x20
jae 0x140262767
add rax, 0x29
mov r9, rax
mov r8, rcx
mov dword [rsp + 0x28], 0x75bd0fbe
mov dword [rsp + 0x20], 0xa8261d12
xor ecx, ecx
mov edx, 1
call fcn.140262c70
jmp 0x140261e98
call fcn.1403e571c
mov eax, dword [0x140590330]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
je 0x140262445
mov ecx, 0x84b2eecc
nop word cs:[rax + rax]
mov edx, dword [0x140590330]
lea eax, [rdx - 1]
imul eax, edx
mov r8d, dword [0x140545f00]
add r8d, ecx
xor edx, edx
div r8d
test edx, edx
jne 0x140262790
jmp 0x14026276c