Function at 0x140080790
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]
mov qword [rbp], 0xfffffffffffffffe
mov rsi, rcx
mov eax, dword [0x1406939fc]
cmp eax, 0x33
jg 0x140080800
mov rcx, rsi
mov edx, 0x44fc342b
mov r8d, 0xa76360c9
mov r9d, 0x237567fa
call fcn.1400a8cd0
mov ecx, dword [0x1406939fc]
mov edx, dword [0x1405ff11c]
mov r8d, edx
xor r8d, 0x5b65d721
and edx, 0x5b65d721
lea edx, [r8 + rdx*2]
cmp ecx, edx
jl 0x14008082c
nop dword [rax + rax]
mov rcx, rsi
mov edx, 0x44fc342b
mov r8d, 0xa76360c9
mov r9d, 0x237567fa
call fcn.1400a8cd0
mov eax, dword [0x1406939f8]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
jne 0x140080800
jmp 0x1400807bb
test al, al
jne 0x1400808ef
mov rcx, rsi
mov edx, 0x86180424
mov r8d, 0xe5347a90
mov r9d, 0x58ea9e9b
call fcn.1400aabd0
test al, al
jne 0x1400808ef
lea rcx, [rsi + 0x210]
mov edx, 0x8e5d93d8
mov r8d, 0x99a81de8
mov r9d, 0x627fbf3b
call fcn.1400aab80
test al, al
jne 0x1400808ef
lea rcx, [rsi + 0x68]
mov edx, 0x94961e16
mov r8d, 0xf9e4fb59
mov r9d, 0xace671dd
call fcn.1400ab540
test al, al
jne 0x1400808ef
lea rcx, [rsi + 0x230]
mov eax, dword [0x14068737f]
mov edx, eax
not edx
xor eax, 0x800
and edx, 0xfffff7ff
or edx, eax
cmp edx, 0xffffffff
setne r9b
mov r8d, dword [rsi + 0x87c]
and r8d, 8
shr r8d, 3
mov dword [rsp + 0x30], 0xdde7e326
mov dword [rsp + 0x28], 0x312b9606
mov dword [rsp + 0x20], 0x8da38207
mov dl, 1
call fcn.1400a9980
test eax, eax
je 0x140080b3f
mov eax, dword [rsi + 0x87c]
and eax, 0x10
mov ecx, 0x5b65d711
add ecx, dword [0x1405ff11c]
cmp eax, ecx
je 0x14008090f
mov rcx, rsi
call fcn.14007e510
mov rax, qword [0x140693db0]
test rax, rax
je 0x140080942
mov rdi, qword [rax + 0x20]
mov rbx, qword [rdi]
cmp rbx, rdi
jne 0x1400809ec
mov rax, qword [0x140693db0]
mov rax, qword [rax + 0x30]
mov rcx, qword [rax]
cmp rcx, rax
jne 0x140080adc
mov byte [0x140694078], 1
movaps xmm0, xmmword [0x14052e790]
movups xmmword [0x1406873ff], xmm0
movups xmmword [0x14068740f], xmm0
movups xmmword [0x14068741f], xmm0
movups xmmword [0x14068742f], xmm0
cmp qword [0x140693e88], 0
jne 0x1400809a2
mov ecx, 0x700
mov edx, 0x1ffd6751
mov r8d, 0x3ef7940b
call fcn.1400a8810
mov qword [rbp - 8], rax
mov rcx, rax
call fcn.140094bf0
mov rax, qword [rbp - 8]
mov qword [0x140693e88], rax
mov rdi, qword [0x140693e88]
mov rsi, qword [rdi + 0x3b0]
test rsi, rsi
je 0x1400809c5
mov rcx, rsi
call fcn.140096760
mov rcx, rsi
call fcn.1400a75e0
mov eax, dword [0x1406939f8]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
jne 0x140080bb3
jmp 0x140080b96
mov rbx, rax
cmp rax, rdi
je 0x14008092b
mov dword [rbx + 0x30], 0
mov dword [rbx + 0x28], 0
mov rsi, qword [rbx + 0x58]
test rsi, rsi
je 0x140080a39
mov eax, dword [0x1406939f8]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
jne 0x140080ab0
nop dword [rax + rax]
mov rcx, qword [rbx + 0x50]
mov dl, 1
mov r8, rsi
call fcn.140512320
mov eax, dword [0x1406939fc]
cmp eax, 0x19
jge 0x140080ab0
mov r8, qword [rbx + 0x98]
test r8, r8
je 0x140080a53
mov rcx, qword [rbx + 0x90]
mov dl, 1
call fcn.140512320
mov rcx, qword [rbx + 0x10]
cmp byte [rcx + 0x19], 0
je 0x140080a90
nop dword [rax]
mov rax, qword [rbx + 8]
cmp byte [rax + 0x19], 0
jne 0x1400809e0
mov rcx, rbx
mov rbx, rax
cmp rcx, qword [rax + 0x10]
je 0x140080a60
mov rax, rbx
jmp 0x1400809e0
mov rax, rcx
mov rcx, qword [rcx]
movzx edx, byte [0x1405ff118]
add dl, 0x8a
cmp byte [rcx + 0x19], dl
je 0x140080a90
jmp 0x1400809e0
mov rcx, qword [rbx + 0x50]
mov dl, 1
mov r8, rsi
call fcn.140512320
jmp 0x140080a20
mov rdx, rcx
nop word cs:[rax + rax]
mov rcx, rdx
cmp rdx, rax
je 0x140080942
mov dword [rcx + 0x20], 0xffffffff
mov r8, qword [rcx + 0x10]
cmp byte [r8 + 0x19], 0
je 0x140080b30
mov rdx, qword [rcx + 8]
movzx r8d, byte [0x1405ff118]
add r8b, 0x8a
cmp byte [rdx + 0x19], r8b
jne 0x140080ad0
nop word cs:[rax + rax]
mov r8, rcx
mov rcx, rdx
cmp r8, qword [rdx + 0x10]
jne 0x140080ac3
mov rdx, qword [rcx + 8]
cmp byte [rdx + 0x19], 0
je 0x140080b10
jmp 0x140080ad0
mov rdx, r8
mov r8, qword [r8]
cmp byte [r8 + 0x19], 0
je 0x140080b30
jmp 0x140080ad0
movzx eax, byte [0x1405ff118]
add al, 0x8a
cmp byte [rsi + 0x1d8], al
je 0x140080b7f
mov ecx, dword [rsi + 0x87c]
mov r9d, dword [0x1405ff11c]
lea edx, [r9 - 0x72f133a0]
lea r8d, [r9 - 0x58a9c139]
add r9d, 0x7856210c
call fcn.1400ab700
test al, al
jne 0x1400808ef
xor edi, edi
jmp 0x140080b83
mov eax, edi
add rsp, 0x48
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
mov qword [rdi + 0x3b0], 0
mov rcx, qword [0x140694178]
mov eax, dword [0x1406939fc]
cmp eax, 0x10
jle 0x140080bc0
mov qword [rdi + 0x3b0], 0
jmp 0x140080b96
test rcx, rcx
je 0x140080be1
mov rax, qword [rcx]
mov rax, qword [rax]
mov edx, 1
call qword [0x1405fc400]
mov qword [0x140694178], 0
cmp qword [0x140693e88], 0
je 0x140080cd3
mov eax, 0x5b65d767
mov ecx, 0x5b65d711
nop dword [rax]
mov edx, dword [0x1406939fc]
mov r8d, dword [0x1405ff11c]
add r8d, eax
cmp edx, r8d
jge 0x140080c45
mov rdx, qword [0x140693e88]
mov r8, qword [rdx + 0x560]
mov r9d, dword [0x1406939f8]
lea r10d, [r9 - 1]
imul r10d, r9d
and r10d, 1
mov r9d, dword [0x1405ff11c]
add r9d, ecx
cmp r10d, r9d
je 0x140080c64
mov edx, dword [0x1405ff11c]
mov r8d, edx
xor r8d, 0x5b65d711
and edx, 0x5b65d711
add edx, edx
add edx, r8d
jne 0x140080c00
jmp 0x140080c15
test r8, r8
je 0x140080d57
mov rcx, qword [rdx + 0x558]
mov dl, 1
call fcn.140512320
cmp qword [0x140693e88], 0
jne 0x140080d57
mov ecx, 0x700
mov edx, 0x1ffd6751
mov r8d, 0x3ef7940b
call fcn.1400a8810
mov qword [rbp - 8], rax
mov rcx, rax
call fcn.140094bf0
mov ecx, dword [0x1406939f8]
lea eax, [rcx - 1]
imul eax, ecx
mov ecx, 0x5b65d713
add ecx, dword [0x1405ff11c]
xor edx, edx
div ecx
test edx, edx
mov rax, qword [rbp - 8]
jne 0x140080d4e
jmp 0x140080d3b
mov ecx, 0x700
mov edx, 0x1ffd6751
mov r8d, 0x3ef7940b
call fcn.1400a8810
mov qword [rbp - 8], rax
mov rcx, rax
call fcn.140094bf0
mov rdx, qword [rbp - 8]
nop dword [rax + rax]
mov eax, dword [0x1406939fc]
cmp eax, 0x60
jg 0x140080d21
mov qword [0x140693e88], rdx
mov eax, dword [0x1406939fc]
cmp eax, 0x3d
jl 0x140080bef
mov qword [0x140693e88], rdx
mov eax, dword [0x1406939f8]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
jne 0x140080d00
jmp 0x140080d0b
mov qword [0x140693e88], rax
cmp dword [0x1405ff11c], 0xa49a28ef
je 0x140080d57
mov qword [0x140693e88], rax
jmp 0x140080d3b
mov eax, dword [0x1406939f8]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
nop word cs:[rax + rax]
mov rsi, qword [0x140693e88]
mov rax, qword [rsi + 0x370]
mov rcx, qword [rsi + 0x378]
mov edx, dword [0x1406939f8]
lea r8d, [rdx - 1]
imul r8d, edx
test r8b, 1
jne 0x140080d70
sub rcx, rax
shr rcx, 5
imul ecx, ecx, 0xcccccccd
test ecx, ecx
jle 0x140080f53
xor ebx, ebx
lea rdi, [0x1400a7750]
movabs r14, 0x243c83c7e537ebba
mov r15d, 0x5b65d712
lea r12, [fcn.140080790]
jmp 0x140080dec
inc rbx
sub rcx, rax
shr rcx, 5
imul ecx, ecx, 0xcccccccd
movsxd rcx, ecx
cmp rbx, rcx
jge 0x140080f53
lea rcx, [rbx + rbx*4]
shl rcx, 5
cmp dword [rax + rcx + 0x88], 0
jne 0x140080e0d
cmp qword [rax + rcx + 0x88], 0
je 0x140080f0c
lea r8, [rax + rcx]
add r8, 0x80
mov edx, dword [rax + rcx + 0x24]
mov dword [rsp + 0x20], 0xf8583229
mov rcx, rsi
mov r9d, 0x471668be
call fcn.1400a8290
jmp 0x140080f0c
mov r13, qword [rsi + 0x378]
mov ecx, 0x1f
call fcn.1404ca39c
mov qword [0x1406939e8], rax
mov rcx, rdi
call fcn.1404ea090
mov rax, qword [rsi + 0x370]
mov rcx, r13
sub rcx, rax
imul rcx, rax
mov r8, rcx
sub r8, r13
shl r8, cl
shl r8, cl
sub r8, rcx
imul r8, rcx
sub r8, rcx
imul r8, rcx
mov rax, r8
shl rax, cl
mov rcx, r8
sub rcx, rax
imul rcx, rax
sub r8, rcx
mov eax, r8d
neg eax
mov ecx, eax
xor ecx, 0xa0
and eax, 0x20
lea ecx, [rcx + rax*2]
mov rdx, r8
shl rdx, cl
mov rax, qword [0x1405ff110]
sub rax, r8
mov ecx, edx
shl r8, cl
add rax, r14
add rax, r8
mov ecx, r8d
shl rax, cl
shl rax, cl
mov rcx, rax
or rcx, r8
shr rcx, 0x20
je 0x140080ef0
cqo
idiv r8
jmp 0x140080ef5
xor edx, edx
div r8d
mov eax, dword [0x1405ff11c]
add eax, r15d
lea ecx, [r12 + r12]
add ecx, 0x4e0
test ecx, eax
je 0x140080f31
mov eax, dword [0x1406939fc]
mov ecx, dword [0x1405ff11c]
mov edx, ecx
xor edx, 0x5b65d743
and ecx, 0x5b65d743
lea ecx, [rdx + rcx*2]
cmp eax, ecx
jge 0x140080e40
mov rax, qword [rsi + 0x370]
mov rcx, qword [rsi + 0x378]
mov edx, dword [0x1406939fc]
cmp edx, 9
jg 0x140080e40
jmp 0x140080dd0
mov rax, qword [rsi + 0x398]
sub rax, qword [rsi + 0x390]
movzx ecx, byte [0x1405ff110]
add cl, 0xbc
shr rax, cl
mov dil, 1
test eax, eax
jle 0x140080b83
xor ebx, ebx
nop dword [rax + rax]
mov dword [rsp + 0x20], 0xf8583229
mov rcx, rsi
mov edx, ebx
xor r8d, r8d
mov r9d, 0x471668be
call fcn.1400a8290
mov eax, dword [0x1405ff11c]
mov ecx, eax
xor ecx, 0x5b65d712
and eax, 0x5b65d712
lea eax, [rcx + rax*2]
add ebx, eax
mov rax, qword [rsi + 0x398]
sub rax, qword [rsi + 0x390]
shr rax, 2
cmp ebx, eax
jl 0x140080f80
jmp 0x140080b83