Function at 0x140311b20
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xf8
mov qword [rsp + 0x80], r9
mov r12, r8
mov qword [rsp + 0x70], rdx
mov qword [rsp + 0x78], rcx
mov rax, qword [0x140602660]
xor rax, rsp
mov qword [rsp + 0xf0], rax
mov al, 1
jmp 0x140311b67
mov rcx, qword [0x1405d7b70]
test al, al
je 0x140311b60
mov dword [0x140614328], 0
mov rsi, qword [0x1405d7b70]
test al, al
je 0x140311b60
mov eax, dword [0x140614328]
cmp eax, 0x5d
jg 0x140311ba0
mov ebx, dword [rsi]
mov dil, 1
test dil, dil
jne 0x140311bb0
nop word cs:[rax + rax]
mov eax, dword [rsi]
cmp dword [0x1405d7d20], 0x6b7f0e60
jne 0x140311ba0
jmp 0x140311b8b
lea r14, [rsp + 0xc0]
lea r15, [rsp + 0xb0]
mov eax, dword [0x140614324]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
jne 0x140311bfe
mov dword [rsp + 0x20], 0x257517c7
mov ecx, ebx
mov rdx, r14
mov r8, r15
mov r9d, 0xbd07c7bd
call fcn.140313350
mov eax, dword [rsp + 0xb0]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
je 0x140311c05
test dil, dil
je 0x140311bc0
jmp 0x140311bd1
movabs rax, 0x653a25dedfc2751c
movabs rdx, 0xb8a3aee8fa4b8db6
movabs r8, 0xc08637ce7bfef6f0
lea rcx, [rdx + r8]
add rcx, qword [rsp + 0xc0]
sub rcx, rdx
movabs rdx, 0x960b9e4e8e44fdf
sub rcx, rdx
sub rcx, rax
sub rcx, r8
add rcx, rdx
mov edx, dword [0x140614324]
lea eax, [rdx - 1]
imul eax, edx
mov r8d, dword [0x1405d7d20]
lea r9d, [r8 - 0x6b7f0e5e]
xor edx, edx
div r9d
mov eax, r8d
xor eax, 0x6b7f0e5f
and eax, r8d
xor r8d, 0x9480f1a0
add eax, eax
mov r9d, r8d
xor r9d, eax
and eax, r8d
lea eax, [r9 + rax*2]
cmp edx, eax
mov rdi, qword [rsp + 0x78]
mov rbx, qword [rsp + 0x70]
nop word cs:[rax + rax]
lea r14, [rcx + rsi]
add r14, qword [0x1405d7d28]
mov eax, dword [0x140614324]
mov edx, dword [0x1405d7d20]
neg edx
add edx, eax
inc edx
imul edx, eax
test dl, 1
jne 0x140311ca0
movabs rax, 0xddfa327b835407cb
add r14, rax
mov ecx, 0xffc5d6d2
mov edx, 0x40bc1c36
call fcn.1403136c0
xor eax, eax
nop word cs:[rax + rax]
test al, al
jne 0x140311cf0
mov eax, dword [0x1404dc574]
mov dword [rsp + 0x8c], eax
test rdi, rdi
sete al
test rbx, rbx
sete cl
or cl, al
cmp qword [rsp + 0x80], 0
setne dl
sete r8b
xor r8b, cl
mov eax, ecx
not al
and al, dl
or al, r8b
xor al, 1
or al, r8b
test r12, r12
sete cl
setne dl
xor r15d, r15d
test cl, al
jne 0x140312c67
and dl, al
jne 0x140312c67
xor al, 1
and cl, al
jne 0x140312c67
lea r15, [rsp + 0xc0]
mov rcx, r12
mov rdx, r15
mov r8d, 0xef580f21
mov r9d, 0xfb45d6c
call fcn.140313440
movzx eax, byte [rsp + 0xc0]
mov byte [rsp + 0x5f], al
mov esi, 0x9480f1cc
jmp 0x140311dc0
lea rcx, [rsp + 0xb0]
mov rdx, r15
mov r8d, 0x95658eea
mov r9d, 0x47151346
call fcn.140313660
mov eax, dword [rsp + 0xb0]
imul eax, dword [rsp + 0xc0]
test al, 1
je 0x140311ea0
nop dword [rax + rax]
mov eax, dword [0x140614324]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
jne 0x140311e18
mov ebp, dword [0x1405d7b60]
mov ecx, ebp
mov rdx, r15
mov r8d, 0x257517c7
mov r9d, 0x66d54dd6
call fcn.1401879e0
mov ebx, dword [rsp + 0xc0]
mov r8d, dword [0x1405d7d20]
lea edx, [r8 + 0x43d2e155]
add r8d, 0x72a6f10e
xor ecx, ecx
call fcn.1400a9120
test al, 1
jne 0x140311d88
mov eax, dword [0x1405d7d20]
add eax, esi
mov dword [0x140614328], eax
mov dword [rsp + 0x20], 0x8eab609c
mov ecx, 1
mov r8, r15
mov r9d, 0xe7a8e456
call fcn.1403134c0
mov ecx, dword [rsp + 0xc0]
mov eax, ecx
not eax
imul eax, ecx
not eax
mov edx, eax
mov ecx, eax
shl edx, cl
mov ecx, edx
shl eax, cl
neg eax
mov dword [rsp + 0x20], 0xac4abf12
mov ecx, eax
mov r8, r15
mov r9d, 0x5b03bd2d
call fcn.140313410
mov eax, dword [0x140614324]
mov ecx, dword [0x1405d7d20]
mov edx, ecx
not edx
add edx, eax
imul edx, eax
and edx, 1
add ecx, 0x9480f1a0
cmp edx, ecx
jne 0x140311dc0
jmp 0x140311dd1
mov qword [rsp + 0x98], r14
mov qword [rsp + 0x90], r12
mov eax, dword [0x140614328]
cmp eax, 0x57
jg 0x140311ee2
mov esi, dword [0x1405d7d20]
sub esi, ebx
add esi, 0x9480f1a0
mov dword [0x1405d7b60], esi
mov ecx, 0x515089bb
mov edx, 0xc8e53490
call fcn.1403130f0
test al, 1
jne 0x140311f57
lea rcx, [rsp + 0xc0]
mov edx, 0x718a59ec
mov r8d, 0xafb47186
call fcn.140313520
mov r14d, dword [rsp + 0xc0]
add r14d, ebx
mov dword [rsp + 0x20], 0xce2643c0
lea r8, [rsp + 0xc0]
mov ecx, r14d
mov edx, ebx
mov r9d, 0x97d127ca
call fcn.140187170
mov eax, dword [rsp + 0xc0]
mov ecx, r14d
sub ecx, eax
imul ecx, eax
mov eax, r14d
sub eax, ecx
imul eax, ecx
sub r14d, eax
mov ecx, r14d
mov edx, 0x98413c1
mov r8d, 0x63ced4ce
call fcn.1403130e0
jmp 0x140311ebb
xor r12d, r12d
mov ebx, 0
mov dword [rsp + 0xa4], esi
test ebp, esi
jne 0x140311f81
xor esi, esi
mov r12d, 0
mov ebx, 0
cmp dword [rsp + 0x8c], 0
jg 0x140311f9f
mov eax, dword [0x140614328]
mov ecx, 0x9480f1bd
add ecx, dword [0x1405d7d20]
cmp eax, ecx
jl 0x1403122d3
jmp 0x1403122ee
lea rdi, [rsp + 0xc0]
lea rax, [fcn.140311b20]
add eax, eax
add eax, 0x3a80
mov dword [rsp + 0x68], eax
mov r14b, 1
xor ecx, ecx
xor r12d, r12d
xor ebx, ebx
jmp 0x140312034
not r12
not rbx
mov rax, rbx
mov rdx, qword [rsp + 0x60]
and rax, rdx
mov rcx, r12
and rcx, r13
or r12, r13
or rbx, rdx
not rbx
or rbx, rax
not r12
or r12, rcx
mov dword [rsp + 0x20], 0x89dce40d
mov ecx, dword [rsp + 0xa8]
mov edx, dword [rsp + 0x8c]
lea rdi, [rsp + 0xc0]
mov r8, rdi
mov r9d, 0x63ced4ce
call fcn.140313360
mov ecx, dword [rsp + 0xc0]
test al, 1
jne 0x140311f81
mov dword [rsp + 0xa8], ecx
mov rdx, rdi
mov r8d, 0xe502c405
mov r9d, 0x9792dddd
call fcn.140193200
mov rax, qword [rsp + 0xc0]
mov qword [rsp + 0x60], rax
cmp dword [0x1405d7d20], 0x6b7f0e60
jne 0x140312100
nop dword [rax]
lea rax, [rsp + 0xb0]
mov qword [rsp + 0x20], rax
mov dword [rsp + 0x30], 0x1632ebf7
mov dword [rsp + 0x28], 0x89dce40d
mov rcx, qword [rsp + 0x98]
mov rdx, qword [rsp + 0x60]
lea rdi, [rsp + 0xc0]
mov r8, rdi
lea r9, [rsp + 0xac]
call fcn.1403134a0
mov r13, qword [rsp + 0xc0]
mov ecx, dword [rsp + 0xac]
imul ecx, dword [rsp + 0xb0]
mov eax, dword [0x1405d7d20]
lea r8d, [rax - 0x290e2ced]
mov edx, eax
xor edx, 0x1bce411c
and eax, 0x1bce411c
lea r9d, [rdx + rax*2]
mov rdx, rdi
call fcn.1403135f0
cmp dword [rsp + 0xc0], 0
je 0x140312110
nop dword [rax]
test r14b, r14b
je 0x140312100
jmp 0x140312070
lea rdi, [fcn.140311b20]
mov r8d, 0x9480f1a1
nop dword [rax]
mov eax, dword [0x1405d7d20]
mov ecx, eax
xor ecx, 0x9480f1a1
not eax
and eax, 0x6b7f0e5e
or eax, ecx
not eax
lea eax, [rcx + rax*2]
mov edx, dword [rsp + 0x68]
mov ecx, edx
xor ecx, eax
or eax, edx
not eax
or eax, ecx
cmp eax, 0xffffffff
jne 0x140312175
mov rcx, r13
lea rdx, [rsp + 0xc0]
mov r8d, 0x61c5bed6
mov r9d, 0x95658eea
call fcn.140313220
mov r8d, 0x9480f1a1
test al, 1
jne 0x1403121b0
mov rax, qword [r13]
mov rax, qword [r13 + 8]
mov eax, dword [0x1405d7d20]
add eax, r8d
lea ecx, [rdi + rdi]
add ecx, 0x1f20
mov edx, ecx
not edx
xor ecx, eax
not eax
and eax, edx
or eax, ecx
cmp eax, 0xffffffff
jne 0x140312120
jmp 0x14031214f
mov r13, qword [rsp + 0xc0]
mov rax, qword [rsp + 0xc8]
mov qword [rsp + 0x60], rax
mov edi, 0x9480f1e7
nop word [rax + rax]
mov eax, dword [0x140614328]
cmp eax, 0xe
jg 0x14031222b
test sil, sil
jne 0x140312240
mov eax, dword [0x140614328]
mov ecx, dword [0x1405d7d20]
add ecx, edi
cmp eax, ecx
jge 0x140312240
mov ecx, dword [0x140614324]
lea rdx, [rsp + 0xc0]
mov r8d, 0x3939f14d
mov r9d, 0x40cd8715
call fcn.140313510
mov eax, dword [0x1405d7d20]
mov ecx, 0x9480f1a0
add eax, ecx
cmp dword [rsp + 0xc0], eax
je 0x140311fd0
test r14b, r14b
je 0x1403121d0
jmp 0x1403121db
mov rax, rbx
mov ecx, r13d
shld rax, r12, cl
mov rdx, r12
shl rdx, cl
test r13b, 0x40
cmovne rax, rdx
cmovne rdx, rsi
mov r8, r12
neg r8
mov r9d, 0
sbb r9, rbx
mov rcx, r9
xor rcx, rax
mov r10, r8
xor r10, rdx
and r9, rax
and r8, rdx
shld r9, r8, 1
add r8, r8
add r8, r10
adc r9, rcx
mov rdx, rbx
mov ecx, r8d
shld rdx, r12, cl
mov rax, r12
shl rax, cl
test r8b, 0x40
cmovne rdx, rax
cmovne rax, rsi
mov dword [rsp + 0x28], 0x78560187
mov dword [rsp + 0x20], 0xb2c934dc
mov rcx, rax
call fcn.14008ab10
mov ecx, 0xda89d7f6
mov edx, 0x5aba8040
call fcn.14008ab10
jmp 0x1403121e0
mov edx, dword [0x1405d7d20]
lea ecx, [rdx - 0x1e99fe6]
add edx, 0x8166e87f
call fcn.140313050
test al, 1
jne 0x140312329
lea r14, [rsp + 0xc0]
nop word cs:[rax + rax]
mov r8d, dword [0x1405d7d20]
lea edx, [r8 + 0x129eb1c3]
add r8d, 0xf219ba34
mov rcx, r14
call fcn.1400a9a10
cmp dword [rsp + 0xc0], 0
jne 0x140312300
jmp 0x1403122d3
movabs rdx, 0x78c00c9ca39192af
test byte [rsp + 0x5f], 1
mov rdi, qword [rsp + 0x90]
mov r14, qword [rsp + 0x80]
je 0x14031239f
mov rax, qword [0x1405d7d28]
lea rcx, [rdx + 0x10]
mov rdx, rcx
xor rdx, rax
and rcx, rax
lea r14, [rdx + rcx*2]
sub r14, rdi
mov rax, qword [rsp + 0x78]
lea rdx, [rax + rdi]
add rdx, 0x50
lea rcx, [rsp + 0xe0]
mov r8, r14
call fcn.1404ad090
lea rcx, [rsp + r14]
add rcx, 0xe0
mov rdx, qword [rsp + 0x70]
mov r8, rdi
call fcn.1404ad090
jmp 0x140312535
mov rax, qword [0x140612bb8]
add rax, rdi
mov ecx, dword [0x1405d7d28]
add ecx, edx
add cl, 4
shr rdi, cl
mov qword [rsp + 0x68], rdi
mov rcx, qword [rsp + 0x70]
movups xmm0, xmmword [rcx + rax - 0x10]
movaps xmmword [rsp + 0xe0], xmm0
mov rax, qword [rsp + 0x78]
add rax, 0x50
mov qword [rsp + 0x60], rax
mov r13, qword [rsp + 0x60]
nop word cs:[rax + rax]
mov rcx, qword [rsp + 0x78]
mov rax, qword [rcx + 0x20]
mov rdx, r13
lea rsi, [rsp + 0xd0]
mov r8, rsi
call qword [case.0x14016c073.0]
mov rdi, qword [rsp + 0x70]
movups xmm0, xmmword [rdi]
movups xmmword [r13], xmm0
mov edx, dword [rdi]
mov qword [rsp + 0x20], r15
mov dword [rsp + 0x30], 0x30861b87
mov dword [rsp + 0x28], 0xc878aa7a
mov rcx, rsi
mov r8, r14
mov r9, rdi
call fcn.140313030
mov edx, dword [rsp + 0xc0]
mov r8d, dword [rsp + 0xd4]
mov ecx, r8d
not ecx
mov r9d, edx
not r9d
mov eax, dword [0x1405d7d20]
lea r10d, [rax + 0x3a381006]
add eax, 0x46bdf61b
mov dword [rsp + 0x38], eax
mov dword [rsp + 0x30], r10d
mov qword [rsp + 0x28], r15
mov rsi, r14
lea r14, [rsp + 0xb0]
mov qword [rsp + 0x20], r14
call fcn.140313470
mov eax, dword [rsp + 0xb0]
or eax, dword [rsp + 0xc0]
mov dword [rsi + 4], eax
mov eax, dword [rdi + 8]
mov ecx, dword [rsp + 0xd8]
mov edx, eax
not edx
mov r8d, ecx
and r8d, edx
xor edx, ecx
not ecx
mov r9d, ecx
xor r9d, eax
or r8d, r9d
not r8d
and ecx, eax
or ecx, edx
not ecx
or ecx, r8d
mov dword [rsi + 8], ecx
mov eax, dword [rsp + 0xdc]
xor eax, dword [rdi + 0xc]
mov dword [rsi + 0xc], eax
mov dword [rsp + 0x28], 0xf7316c68
mov dword [rsp + 0x20], 0x6a5c995e
mov rcx, rdi
mov rdx, qword [rsp + 0x68]
mov r8, r14
mov r9, r15
call fcn.1403133f0
mov rcx, qword [rsp + 0xb0]
mov qword [rsp + 0x70], rcx
test al, 1
jne 0x140312529
mov rax, qword [rsp + 0xc0]
mov qword [rsp + 0x68], rax
add rsi, 0x10
mov r14, rsi
jmp 0x1403123f0
add rsi, 0x10
mov qword [rsp + 0x80], rsi
mov rdx, qword [0x1404dc558]
mov rcx, qword [0x1404dc550]
xor eax, eax
test dword [rsp + 0xa4], ebp
setne al
xor r8d, r8d
add rax, 0xffffffffffffffff
adc r8, 0xffffffffffffffff
mov qword [rsp + 0x38], r15
lea r9, [rsp + 0xb0]
mov qword [rsp + 0x30], r9
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x28], r8
mov dword [rsp + 0x48], 0x49513b69
mov dword [rsp + 0x40], 0xf91d78f7
mov r8, r12
mov r9, rbx
call fcn.140313150
mov rax, qword [rsp + 0xc0]
mov rcx, qword [rsp + 0xc8]
mov rsi, qword [rsp + 0xb0]
mov qword [rsp + 0x68], rax
xor rsi, rax
mov r12, qword [rsp + 0xb8]
mov qword [rsp + 0x60], rcx
xor r12, rcx
not r12
not rsi
mov eax, dword [0x140614328]
cmp eax, 0x44
jge 0x140312600
mov rax, rsi
and rax, qword [rsp + 0x68]
mov rcx, r12
and rcx, qword [rsp + 0x60]
or rcx, rax
setne al
or al, byte [0x140612890]
and al, 1
mov byte [0x140612890], al
mov al, 1
test al, al
jne 0x14031283b
lea rbx, [rsp + 0xb0]
mov r13, rsi
and r13, qword [rsp + 0x68]
mov rdi, r12
and rdi, qword [rsp + 0x60]
lea r14, [rsp + 0xac]
jmp 0x14031264a
mov ecx, dword [0x140614324]
mov edx, 0xece5f6df
mov r8d, 0xe7a8e456
call fcn.140313020
test al, 1
jne 0x1403125d2
mov rcx, rbx
mov rdx, r15
mov r8d, 0x76979635
mov r9d, 0xec443998
call fcn.140313430
mov eax, dword [rsp + 0xb0]
imul eax, dword [rsp + 0xc0]
test al, 1
jne 0x1403126ce
nop word cs:[rax + rax]
mov rax, r13
or rax, rdi
setne cl
movzx eax, byte [0x140612890]
add al, cl
mul cl
mov ebp, eax
add bpl, cl
mov dword [rsp + 0x20], 0x874100c9
mov ecx, ebp
xor edx, edx
mov r8, r15
mov r9d, 0xec68a4fe
call fcn.1403136b0
and bpl, 1
mov byte [0x140612890], bpl
cmp dword [0x1405d7d20], 0x6b7f0e60
je 0x140312630
mov rax, r13
or rax, rdi
setne bpl
movzx ecx, byte [0x140612890]
mov eax, ecx
sub al, bpl
mul bpl
mov qword [rsp + 0x20], r15
mov dword [rsp + 0x30], 0x8f7e4fd6
mov dword [rsp + 0x28], 0x2c1ca50a
mov edx, eax
mov r8, r14
mov r9, rbx
call fcn.1403133b0
movzx ecx, byte [rsp + 0xc0]
movzx r8d, byte [rsp + 0xb0]
movzx edx, byte [rsp + 0xac]
mov eax, dword [0x1405d7d20]
lea r9d, [rax + 0x1d251ada]
add eax, 0x301bcdbe
mov dword [rsp + 0x30], eax
mov dword [rsp + 0x28], r9d
mov qword [rsp + 0x20], r15
mov r9, rbx
call fcn.140313550
movzx edx, byte [rsp + 0xb0]
movzx ecx, byte [rsp + 0xc0]
mov eax, ecx
sub al, dl
mul dl
sub cl, al
mov dword [rsp + 0x20], 0xc61f7c62
mov edx, ebp
mov r8, r15
mov r9d, 0x773003d
call fcn.1403132c0
mov dword [rsp + 0x20], 0xb569b7f3
xor ecx, ecx
xor edx, edx
mov r8, r15
mov r9d, 0xce2643c0
call fcn.140313370
mov qword [rsp + 0x20], r15
mov dword [rsp + 0x30], 0xa00312ce
mov dword [rsp + 0x28], 0xc13bf1f4
xor ecx, ecx
xor edx, edx
xor r8d, r8d
mov r9, rbx
call fcn.140313690
movzx ecx, byte [rsp + 0xc0]
movzx edx, byte [rsp + 0xb0]
mov eax, dword [0x1405d7d20]
lea r8d, [rax - 0x39680f06]
add eax, 0x3fdd54e1
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], r8d
mov r8, rbx
mov r9, r15
call fcn.140313680
movzx ecx, byte [rsp + 0xc0]
movzx ebp, byte [rsp + 0xb0]
mov dword [rsp + 0x28], 0xe67eaa26
mov dword [rsp + 0x20], 0x30861b87
mov edx, ebp
mov r8, rbx
mov r9, r15
call fcn.1403133a0
xor bpl, byte [rsp + 0xc0]
or bpl, byte [rsp + 0xb0]
and bpl, 1
mov byte [0x140612890], bpl
jmp 0x140312680
xor eax, eax
test al, al
jne 0x140312cd9
jmp 0x140312c8e
mov qword [rsp + 0x68], rdi
mov eax, dword [0x140614324]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
mov rsi, qword [rsp + 0x78]
jne 0x1403128a1
mov rax, qword [rsi + 0x20]
lea rdx, [rsi + 0x50]
lea r8, [rsp + 0xd0]
mov rcx, rsi
call qword [case.0x14016c073.0]
mov rax, qword [0x1405d7d28]
add rax, rbx
mov ecx, dword [0x140614328]
mov edx, 0x9480f1fc
add edx, dword [0x1405d7d20]
cmp ecx, edx
jl 0x14031294b
lea r14, [rsi + 0x50]
lea r12, [rsp + 0xd0]
movabs rdi, 0xbbd4d1857344820c
sub rdi, r15
lea r13, [rsp + 0xb0]
lea rbp, [rsp + 0xc0]
nop word [rax + rax]
mov rax, qword [rsi + 0x20]
mov rcx, rsi
mov rdx, r14
mov r8, r12
call qword [case.0x14016c073.0]
mov rax, qword [0x1405d7d28]
mov rcx, rbx
xor rcx, rax
and rax, rbx
lea rax, [rcx + rax*2]
sub rax, r15
lea rcx, [rdi + rax]
add rcx, 3
add rax, 3
movabs rdx, 0xbbd4d1857344820c
sub rdx, rcx
imul rdx, rax
mov dword [rsp + 0x28], 0xe8daa324
mov dword [rsp + 0x20], 0x69428b02
mov rcx, r15
mov r8, r13
mov r9, rbp
call fcn.140313120
mov eax, dword [0x140614324]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
jne 0x1403128d0
jmp 0x140312865
mov rcx, 0xfffffffffffffffc
sub rcx, rax
not r15
mov rdx, r15
xor rdx, rcx
and rdx, r15
or rdx, rcx
mov rax, rdx
not rax
mov r12, qword [rsp + 0x68]
cmp r12d, 4
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x98], rdx
jae 0x140312997
xor r14d, r14d
mov rsi, qword [rsp + 0x80]
mov rbx, qword [rsp + 0x70]
jmp 0x140312b3c
sub r12, rax
xor r14d, r14d
xor r13d, r13d
mov rsi, qword [rsp + 0x80]
mov rbx, qword [rsp + 0x70]
nop dword [rax]
lea rdi, [rsp + 0xc0]
mov qword [rsp + 0x28], rdi
lea rax, [rsp + 0xb0]
mov qword [rsp + 0x20], rax
mov dword [rsp + 0x38], 0xfa30c4a5
mov dword [rsp + 0x30], 0x3c2b7ddd
mov rcx, rbx
mov rdx, r14
lea r15, [rsp + 0xd0]
mov r8, r15
mov r9, rsi
call fcn.140313200
movzx eax, byte [rsp + 0xb0]
mov rcx, qword [rsp + 0xc0]
mov byte [rcx], al
mov rcx, r14
xor rcx, 0xfffffffffffffffe
and rcx, r14
mov rax, r14
not rax
mov edx, eax
and edx, 1
mov r8, r14
and r8, 0xfffffffffffffffe
or r8, rdx
or r8, rcx
movzx ecx, byte [rbx + r8]
mov edx, ecx
xor dl, cl
not dl
and dl, byte [rsp + r8 + 0xd0]
xor dl, cl
mov byte [rsi + r8], dl
mov ecx, r14d
and ecx, 2
mov rdx, r14
xor rdx, 2
or rdx, rcx
movzx ecx, byte [rsp + rdx + 0xd0]
xor cl, byte [rbx + rdx]
mov byte [rsi + rdx], cl
mov ecx, r14d
and ecx, 3
and eax, 3
mov rbp, r14
and rbp, 0xfffffffffffffffc
or rbp, rax
or rbp, rcx
lea rcx, [rbx + rbp]
mov eax, dword [0x1405d7d20]
lea edx, [rax + 0x59f6e559]
add eax, 0x76235dcb
mov dword [rsp + 0x30], eax
mov dword [rsp + 0x28], edx
mov qword [rsp + 0x20], rdi
mov rdx, r15
mov r8, rbp
lea r9, [rsp + 0xb0]
call fcn.140313380
movzx eax, byte [rsp + 0xb0]
mov rcx, qword [rsp + 0xc0]
xor al, byte [rcx]
mov byte [rsi + rbp], al
mov rcx, r14
mov rdx, rdi
mov r8d, 0x8964399a
mov r9d, 0xaf1d362c
call fcn.1403132b0
mov r14, qword [rsp + 0xc0]
mov rcx, r13
mov rdx, rdi
mov r8d, 0x465f70da
mov r9d, 0x3e7d7cd9
call fcn.1403133d0
movabs rcx, 0x87ecf37653b0559a
mov rax, rcx
sub rax, qword [rsp + 0xc0]
sub rax, rcx
movabs rdx, 0xa2eed0580975ef98
add rax, rdx
movabs rcx, 0x27d8d88f58714ad9
sub rcx, rax
mov rax, rcx
xor rax, rdx
and rcx, rdx
lea r13, [rax + rcx*2]
cmp r13, r12
jne 0x1403129b0
lea rax, [fcn.140311b20]
add eax, eax
add eax, 0x12e0
mov ecx, eax
not ecx
test ecx, eax
mov eax, dword [0x140614324]
mov ecx, dword [0x1405d7d20]
add ecx, eax
dec ecx
imul ecx, eax
test cl, 1
jne 0x140312b50
cmp qword [rsp + 0x60], 0
mov r15, qword [rsp + 0x90]
movabs rdx, 0x78c00c9ca39192af
mov r8, qword [rsp + 0x98]
je 0x140312c31
movabs rax, 0x7edf62f4960cb38a
add r8, 2
sub rdx, rax
nop
movzx ecx, byte [rsp + r14 + 0xd0]
xor cl, byte [rbx + r14]
mov byte [rsi + r14], cl
test r8, r8
je 0x140312c31
mov rcx, qword [0x1405d7d28]
add rcx, rdx
add rcx, rax
add r14, rcx
inc r14
inc r8
jmp 0x140312ba0
mov r15, qword [rsp + 0x90]
mov rdi, r15
and rdi, 0xf
movzx eax, byte [0x140612890]
setne r8b
sete r9b
mov edx, eax
xor dl, 1
and r9b, dl
xor dl, r8b
mov ecx, edx
and dl, al
and al, r8b
or al, r9b
not cl
and cl, r8b
or cl, al
xor cl, 1
or dl, r9b
mov r8d, 0xc61f7c62
mov r9d, 0x62f1d08a
call fcn.1403136e0
test al, 1
movabs rbx, 0x78c00c9ca39192af
je 0x14031284a
xor eax, eax
test al, al
mov rdx, qword [rsp + 0x78]
jne 0x140312c59
movaps xmm0, xmmword [rsp + 0xe0]
movups xmmword [rdx + 0x50], xmm0
mov eax, dword [0x140614324]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
je 0x140312c67
movaps xmm0, xmmword [rsp + 0xe0]
movups xmmword [rdx + 0x50], xmm0
jmp 0x140312c3c
mov rcx, qword [rsp + 0xf0]
xor rcx, rsp
call fcn.140485180
mov rax, r15
add rsp, 0xf8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea rcx, [rsp + 0xb0]
lea rdx, [rsp + 0xc0]
mov r8d, 0x524a9d75
mov r9d, 0x92dfd5c1
call fcn.140313430
mov ecx, dword [rsp + 0xb0]
imul ecx, dword [rsp + 0xc0]
and ecx, 1
mov edx, 0x87486b96
mov r8d, 0x795a04d6
call fcn.140313450
test al, 1
jne 0x140312bce
lea rbx, [rsp + 0xc0]
nop word cs:[rax + rax]
mov eax, dword [0x140614324]
lea ecx, [rax - 1]
imul ecx, eax
mov rdx, rbx
mov r8d, 0x9792dddd
mov r9d, 0x3216ff5a
call fcn.140313240
cmp dword [rsp + 0xc0], 0
jne 0x140312cf0
jmp 0x140312c8e