Function at 0x1400871a0
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x198]
sub rsp, 0x270
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
mov rax, qword [0x140391620]
xor rax, rsp
mov qword [rbp + 0x148], rax
xor ebx, ebx
mov dword [rsp + 0x30], ebx
lea rdx, [rsp + 0x38]
mov rcx, qword [0x1403a1c48]
call fcn.140087130
nop
lea r14, [rbx - 1]
cmp byte [0x1403a1c33], bl
jne 0x140087706
mov rdi, qword [rsp + 0x38]
mov rdx, qword [0x1403a2498]
test rdx, rdx
je 0x14008728b
add rdx, 0x1a0
lea rcx, [rbp + 0x68]
call fcn.140012d30
nop
mov dword [rsp + 0x30], 0x401
lea rdx, [rdi + 0x1a0]
lea rcx, [rbp + 0x48]
call fcn.140012d30
nop
mov ebx, 0xc03
mov dword [rsp + 0x30], ebx
lea rdx, [rbp + 0x68]
mov r15, qword [rbp + 0x68]
cmp qword [rbp + 0x80], 0x10
cmovae rdx, r15
lea rcx, [rbp + 0x48]
mov r13, qword [rbp + 0x48]
mov r12, qword [rbp + 0x60]
cmp r12, 0x10
cmovae rcx, r13
mov r8, qword [rbp + 0x58]
cmp r8, qword [rbp + 0x78]
jne 0x140087297
call fcn.140258180
test eax, eax
jne 0x140087297
jmp 0x140087391
mov r15, qword [rbp + 0x68]
mov r12, qword [rbp + 0x60]
mov r13, qword [rbp + 0x48]
mov rdx, qword [0x1403a24a8]
test rdx, rdx
je 0x14008732a
add rdx, 0x1a0
lea rcx, [rbp + 0xe8]
call fcn.140012d30
bts ebx, 0xc
or ebx, 4
mov dword [rsp + 0x30], ebx
lea rdx, [rdi + 0x1a0]
lea rcx, [rbp + 0xc8]
call fcn.140012d30
bts ebx, 0xd
or ebx, 8
mov dword [rsp + 0x30], ebx
lea rdx, [rbp + 0xe8]
cmp qword [rbp + 0x100], 0x10
cmovae rdx, qword [rbp + 0xe8]
lea rcx, [rbp + 0xc8]
cmp qword [rbp + 0xe0], 0x10
cmovae rcx, qword [rbp + 0xc8]
mov r8, qword [rbp + 0xd8]
cmp r8, qword [rbp + 0xf8]
jne 0x14008732a
call fcn.140258180
test eax, eax
je 0x140087391
mov rdx, qword [0x1403a24b8]
test rdx, rdx
je 0x140087712
add rdx, 0x1a0
lea rcx, [rbp + 0x128]
call fcn.140012d30
bts ebx, 0xe
or ebx, 0x10
mov dword [rsp + 0x30], ebx
lea rdx, [rdi + 0x1a0]
lea rcx, [rbp + 0x108]
call fcn.140012d30
bts ebx, 0xf
or ebx, 0x20
mov dword [rsp + 0x30], ebx
lea rdx, [rbp + 0x128]
lea rcx, [rbp + 0x108]
call fcn.14004ef40
test al, al
je 0x140087712
add rdi, 0x140
mov rdx, rdi
lea rcx, [rbp + 0x28]
call fcn.140012d30
bts ebx, 0x10
or ebx, 0x40
mov dword [rsp + 0x30], ebx
movdqa xmm6, xmmword [0x140344720]
movdqu xmmword [rsp + 0x48], xmm6
movdqa xmm7, xmmword [str.HjeoM]
movdqu xmmword [rsp + 0x58], xmm7
mov dword [rsp + 0x68], 0x1e171a6f
mov dword [rsp + 0x6c], 0x1e6a1b4f
mov word [rsp + 0x70], 0x1e4a
mov byte [rsp + 0x72], 0x2e
mov esi, 0x3000
mov rax, qword gs:[0x58]
add rsi, qword [rax]
mov eax, dword [rsi]
cmp dword [0x1403a2ba0], eax
jg 0x140087ad9
lea r9, [0x1403a2ab0]
cmp byte [0x1403a2ada], 0
je 0x14008745e
xor eax, eax
movdqa xmm2, xmmword [0x140344640]
movdqu xmm0, xmmword [rax + r9]
movdqa xmm1, xmm2
pxor xmm1, xmm0
movdqu xmmword [rax + r9], xmm1
add rax, 0x10
cmp rax, 0x20
jb 0x140087420
cmp rax, 0x2b
jae 0x14008745e
nop dword [rax]
nop dword [rax + rax]
xor byte [rax + r9], 0x2e
inc rax
cmp rax, 0x2b
jb 0x140087450
mov rax, r14
inc rax
cmp byte [r9 + rax], 0
jne 0x140087461
lea rcx, [rbp + 0x28]
cmp qword [rbp + 0x40], 0x10
cmovae rcx, qword [rbp + 0x28]
mov qword [rsp + 0x20], rax
xor r8d, r8d
mov rdx, qword [rbp + 0x38]
call fcn.140054830
cmp rax, 0xffffffffffffffff
jne 0x140087712
mov rdx, rdi
lea rcx, [rbp + 8]
call fcn.140012d30
bts ebx, 0x11
bts ebx, 7
mov dword [rsp + 0x30], ebx
movdqa xmm6, xmmword [0x140344660]
movdqu xmmword [rsp + 0x78], xmm6
movdqa xmm7, xmmword [0x1403445b0]
movdqu xmmword [rbp - 0x78], xmm7
mov dword [rbp - 0x68], 0x6a6d174c
mov dword [rbp - 0x64], 0x1648161e
mov word [rbp - 0x60], 0x6f68
mov byte [rbp - 0x5e], 0x2e
mov eax, dword [rsi]
cmp dword [0x1403a2af4], eax
jg 0x140087b3e
lea r9, [0x1403a2b70]
cmp byte [0x1403a2b9a], 0
je 0x14008754e
xor eax, eax
movdqa xmm2, xmmword [0x140344640]
nop word [rax + rax]
movdqu xmm0, xmmword [rax + r9]
movdqa xmm1, xmm2
pxor xmm1, xmm0
movdqu xmmword [rax + r9], xmm1
add rax, 0x10
cmp rax, 0x20
jb 0x140087510
cmp rax, 0x2b
jae 0x14008754e
nop dword [rax]
nop dword [rax + rax]
xor byte [rax + r9], 0x2e
inc rax
cmp rax, 0x2b
jb 0x140087540
mov rax, r14
inc rax
cmp byte [r9 + rax], 0
jne 0x140087551
lea rcx, [rbp + 8]
cmp qword [rbp + 0x20], 0x10
cmovae rcx, qword [rbp + 8]
mov qword [rsp + 0x20], rax
xor r8d, r8d
mov rdx, qword [rbp + 0x18]
call fcn.140054830
cmp rax, 0xffffffffffffffff
jne 0x140087712
mov rdx, rdi
lea rcx, [rbp + 0xa8]
call fcn.140012d30
bts ebx, 0x12
bts ebx, 8
mov dword [rsp + 0x30], ebx
movdqa xmm6, xmmword [0x140344620]
movdqu xmmword [rbp - 0x58], xmm6
movdqa xmm7, xmmword [0x1403445c0]
movdqu xmmword [rbp - 0x48], xmm7
mov dword [rbp - 0x38], 0x1f176a6d
mov dword [rbp - 0x34], 0x18184f1b
mov word [rbp - 0x30], 0x1617
mov byte [rbp - 0x2e], 0x2e
mov eax, dword [rsi]
cmp dword [0x1403a2a28], eax
jg 0x140087ba1
lea rdx, [0x1403a29c0]
cmp byte [0x1403a29ea], 0
je 0x14008762f
xor eax, eax
movdqa xmm2, xmmword [0x140344640]
nop dword [rax]
movdqu xmm0, xmmword [rax + rdx]
movdqa xmm1, xmm2
pxor xmm1, xmm0
movdqu xmmword [rax + rdx], xmm1
add rax, 0x10
cmp rax, 0x20
jb 0x140087600
cmp rax, 0x2b
jae 0x14008762f
xor byte [rax + rdx], 0x2e
inc rax
cmp rax, 0x2b
jb 0x140087622
lea rcx, [rbp + 0xa8]
call fcn.140049680
cmp rax, 0xffffffffffffffff
jne 0x140087712
mov rdx, rdi
lea rcx, [rbp + 0x88]
call fcn.140012d30
or ebx, 0x80200
mov dword [rsp + 0x30], ebx
movdqa xmm6, xmmword [0x140344710]
movdqu xmmword [rbp - 0x28], xmm6
movdqa xmm7, xmmword [0x140344550]
movdqu xmmword [rbp - 0x18], xmm7
mov dword [rbp - 8], 0x1d1f1b4a
mov dword [rbp - 4], 0x19191b4f
mov word [rbp], 0x1b1a
mov byte [rbp + 2], 0x2e
mov eax, dword [rsi]
cmp dword [0x1403a2bdc], eax
jg 0x140087c04
lea rdx, [0x1403a2920]
cmp byte [0x1403a294a], 0
je 0x1400876ef
xor eax, eax
movdqa xmm2, xmmword [0x140344640]
nop dword [rax + rax]
movdqu xmm0, xmmword [rax + rdx]
movdqa xmm1, xmm2
pxor xmm1, xmm0
movdqu xmmword [rax + rdx], xmm1
add rax, 0x10
cmp rax, 0x20
jb 0x1400876c0
cmp rax, 0x2b
jae 0x1400876ef
xor byte [rax + rdx], 0x2e
inc rax
cmp rax, 0x2b
jb 0x1400876e2
lea rcx, [rbp + 0x88]
call fcn.140049680
cmp rax, 0xffffffffffffffff
jne 0x140087712
xor dil, dil
jmp 0x140087715
mov r15, qword [rbp + 0x68]
mov r12, qword [rbp + 0x60]
mov r13, qword [rbp + 0x48]
mov dil, 1
bt ebx, 9
jae 0x140087781
btr ebx, 9
mov dword [rsp + 0x30], ebx
mov rdx, qword [rbp + 0xa0]
cmp rdx, 0x10
jb 0x140087764
inc rdx
mov rcx, qword [rbp + 0x88]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14008775f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140087c67
call fcn.1402550ac
xor esi, esi
mov qword [rbp + 0x98], rsi
mov qword [rbp + 0xa0], 0xf
mov byte [rbp + 0x88], sil
jmp 0x140087783
xor esi, esi
bt ebx, 8
jae 0x1400877eb
btr ebx, 8
mov dword [rsp + 0x30], ebx
mov rdx, qword [rbp + 0xc0]
cmp rdx, 0x10
jb 0x1400877d2
inc rdx
mov rcx, qword [rbp + 0xa8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400877cd
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140087c6d
call fcn.1402550ac
mov qword [rbp + 0xb8], rsi
mov qword [rbp + 0xc0], 0xf
mov byte [rbp + 0xa8], 0
test bl, bl
jns 0x140087842
btr ebx, 7
mov dword [rsp + 0x30], ebx
mov rdx, qword [rbp + 0x20]
cmp rdx, 0x10
jb 0x140087832
inc rdx
mov rcx, qword [rbp + 8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14008782d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140087c73
call fcn.1402550ac
mov qword [rbp + 0x18], rsi
mov qword [rbp + 0x20], 0xf
mov byte [rbp + 8], 0
test bl, 0x40
je 0x140087899
and ebx, 0xffffffbf
mov dword [rsp + 0x30], ebx
mov rdx, qword [rbp + 0x40]
cmp rdx, 0x10
jb 0x140087889
inc rdx
mov rcx, qword [rbp + 0x28]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140087884
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140087c79
call fcn.1402550ac
mov qword [rbp + 0x38], rsi
mov qword [rbp + 0x40], 0xf
mov byte [rbp + 0x28], 0
test bl, 0x20
je 0x1400878e7
and ebx, 0xffffffdf
mov dword [rsp + 0x30], ebx
mov rdx, qword [rbp + 0x120]
cmp rdx, 0x10
jb 0x1400878e7
inc rdx
mov rcx, qword [rbp + 0x108]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400878e1
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140087c7f
call fcn.1402550ac
nop
test bl, 0x10
je 0x140087935
and ebx, 0xffffffef
mov dword [rsp + 0x30], ebx
mov rdx, qword [rbp + 0x140]
cmp rdx, 0x10
jb 0x140087935
inc rdx
mov rcx, qword [rbp + 0x128]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14008792f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140087c85
call fcn.1402550ac
nop
test bl, 8
je 0x140087983
and ebx, 0xfffffff7
mov dword [rsp + 0x30], ebx
mov rdx, qword [rbp + 0xe0]
cmp rdx, 0x10
jb 0x140087983
inc rdx
mov rcx, qword [rbp + 0xc8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14008797d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140087c8b
call fcn.1402550ac
nop
test bl, 4
je 0x1400879d1
and ebx, 0xfffffffb
mov dword [rsp + 0x30], ebx
mov rdx, qword [rbp + 0x100]
cmp rdx, 0x10
jb 0x1400879d1
inc rdx
mov rcx, qword [rbp + 0xe8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400879cb
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140087c91
call fcn.1402550ac
nop
test bl, 2
je 0x140087a16
and ebx, 0xfffffffd
mov dword [rsp + 0x30], ebx
cmp r12, 0x10
jb 0x140087a16
lea rdx, [r12 + 1]
mov rax, r13
cmp rdx, 0x1000
jb 0x140087a0d
add rdx, 0x27
mov r13, qword [r13 - 8]
sub rax, r13
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140087c97
mov rcx, r13
call fcn.1402550ac
nop
test bl, 1
je 0x140087a5a
mov rax, qword [rbp + 0x80]
cmp rax, 0x10
jb 0x140087a5a
lea rdx, [rax + 1]
mov rax, r15
cmp rdx, 0x1000
jb 0x140087a51
add rdx, 0x27
mov r15, qword [r15 - 8]
sub rax, r15
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140087ad3
mov rcx, r15
call fcn.1402550ac
nop
mov rcx, qword [rsp + 0x40]
test rcx, rcx
je 0x140087a95
mov eax, r14d
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x140087a95
mov rbx, qword [rsp + 0x40]
mov rdx, qword [rbx]
mov rcx, rbx
call qword [rdx]
lock xadd dword [rbx + 0xc], r14d
cmp r14d, 1
jne 0x140087a95
mov rcx, qword [rsp + 0x40]
mov rdx, qword [rcx]
call qword [rdx + 8]
movzx eax, dil
mov rcx, qword [rbp + 0x148]
xor rcx, rsp
call fcn.140255050
lea r11, [rsp + 0x270]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.140260990
nop
lea rcx, [0x1403a2ba0]
call fcn.14025550c
cmp dword [0x1403a2ba0], 0xffffffff
jne 0x140087406
movaps xmmword [0x1403a2ab0], xmm6
movaps xmmword [0x1403a2ac0], xmm7
movsd xmm0, qword [rsp + 0x68]
movsd qword [0x1403a2ad0], xmm0
movzx eax, word [rsp + 0x70]
mov word [0x1403a2ad8], ax
mov byte [0x1403a2ada], 0x2e
lea rcx, [0x140299950]
call fcn.140255924
lea rcx, [0x1403a2ba0]
call fcn.1402554ac
jmp 0x140087406
lea rcx, [0x1403a2af4]
call fcn.14025550c
cmp dword [0x1403a2af4], 0xffffffff
jne 0x1400874ed
movaps xmmword [0x1403a2b70], xmm6
movaps xmmword [0x1403a2b80], xmm7
movsd xmm0, qword [rbp - 0x68]
movsd qword [0x1403a2b90], xmm0
movzx eax, word [rbp - 0x60]
mov word [0x1403a2b98], ax
mov byte [0x1403a2b9a], 0x2e
lea rcx, [0x140299920]
call fcn.140255924
lea rcx, [0x1403a2af4]
call fcn.1402554ac
jmp 0x1400874ed
lea rcx, [0x1403a2a28]
call fcn.14025550c
cmp dword [0x1403a2a28], 0xffffffff
jne 0x1400875df
movaps xmmword [0x1403a29c0], xmm6
movaps xmmword [0x1403a29d0], xmm7
movsd xmm0, qword [rbp - 0x38]
movsd qword [0x1403a29e0], xmm0
movzx eax, word [rbp - 0x30]
mov word [0x1403a29e8], ax
mov byte [0x1403a29ea], 0x2e
lea rcx, [0x1402998f0]
call fcn.140255924
lea rcx, [0x1403a2a28]
call fcn.1402554ac
jmp 0x1400875df
lea rcx, [0x1403a2bdc]
call fcn.14025550c
cmp dword [0x1403a2bdc], 0xffffffff
jne 0x14008769e
movaps xmmword [0x1403a2920], xmm6
movaps xmmword [0x1403a2930], xmm7
movsd xmm0, qword [rbp - 8]
movsd qword [0x1403a2940], xmm0
movzx eax, word [rbp]
mov word [0x1403a2948], ax
mov byte [0x1403a294a], 0x2e
lea rcx, [0x1402998c0]
call fcn.140255924
lea rcx, [0x1403a2bdc]
call fcn.1402554ac
jmp 0x14008769e
call fcn.140260990
nop
call fcn.140260990
nop
call fcn.140260990
nop
call fcn.140260990
nop
call fcn.140260990
nop
call fcn.140260990
nop
call fcn.140260990
nop
call fcn.140260990
nop
call fcn.140260990
int3