Function at 0x140030b60
Capabilities:
Encode data using xor
Encrypt data using salsa20 or chacha

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x80
movaps xmmword [rsp + 0x70], xmm6
movaps xmmword [rsp + 0x60], xmm7
mov rax, qword [0x14008c020]
xor rax, rsp
mov qword [rbp - 0x28], rax
movss xmm7, dword [0x1400864bc]
mov edi, 2
movss xmm6, dword [0x1400864b8]
mov rbx, rcx
mov qword [rbp - 0x38], rdx
mov eax, 0x55555556
mov dword [rbp - 0x30], 0x50
xor r15d, r15d
mov dword [rbp - 0x40], 0x7bf480
lea esi, [rdi + 3]
mov ecx, dword [rbp - 0x40]
lea r12d, [rdi - 3]
imul ecx
mov r13, r8
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
je 0x140030c32
mov ecx, dword [rbp - 0x40]
add ecx, edi
add ecx, r13d
mov dword [rbp - 0x40], ecx
mov eax, dword [rbp - 0x40]
and eax, 0x80000003
jge 0x140030bfd
dec eax
or eax, 0xfffffffc
inc eax
test eax, eax
jne 0x14003124e
nop word [rax + rax]
mov eax, dword [rbp - 0x40]
inc eax
mov dword [rbp - 0x40], eax
mov eax, dword [rbp - 0x40]
and eax, 0x80000003
jge 0x140030c29
dec eax
or eax, 0xfffffffc
inc eax
test eax, eax
je 0x140030c10
jmp 0x14003124e
mov eax, dword [rbp - 0x40]
and eax, 0x80000001
mov eax, dword [rbp - 0x40]
je 0x140030c95
mov ecx, edi
sub ecx, r13d
add ecx, eax
mov eax, 0x55555556
mov dword [rbp - 0x40], ecx
mov ecx, dword [rbp - 0x40]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
jne 0x14003124e
nop word [rax + rax]
mov eax, dword [rbp - 0x40]
inc eax
mov dword [rbp - 0x40], eax
mov eax, 0x55555556
mov ecx, dword [rbp - 0x40]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
je 0x140030c70
jmp 0x14003124e
mov ecx, dword [rbp - 0x40]
and eax, 0x80000003
je 0x140030d10
add ecx, edi
lea eax, [r8 + 3]
imul ecx, eax
mov dword [rbp - 0x40], ecx
mov eax, dword [rbp - 0x40]
and eax, 0x80000001
jge 0x140030cbc
dec eax
or eax, 0xfffffffe
inc eax
test eax, eax
jne 0x14003124e
nop dword [rax]
nop dword [rax + rax]
mov ecx, dword [rbp - 0x40]
mov eax, 0x66666667
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
cmp ecx, eax
mov eax, dword [rbp - 0x40]
je 0x140030cf1
dec eax
jmp 0x140030cf3
inc eax
mov dword [rbp - 0x40], eax
mov eax, dword [rbp - 0x40]
and eax, 0x80000001
jge 0x140030d07
dec eax
or eax, 0xfffffffe
inc eax
test eax, eax
je 0x140030cd0
jmp 0x14003124e
mov eax, 0x66666667
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
cmp ecx, eax
je 0x140030da3
mov eax, dword [rbp - 0x40]
lea ecx, [r8 + 0x17]
add eax, 0xb
cdq
idiv ecx
mov dword [rbp - 0x40], eax
mov eax, 0x55555556
mov ecx, dword [rbp - 0x40]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
jne 0x14003124e
nop dword [rax]
nop word [rax + rax]
mov ecx, dword [rbp - 0x40]
mov eax, 0x66666667
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
cmp ecx, eax
mov eax, dword [rbp - 0x40]
je 0x140030d81
inc eax
jmp 0x140030d83
dec eax
mov dword [rbp - 0x40], eax
mov eax, 0x55555556
mov ecx, dword [rbp - 0x40]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
je 0x140030d60
jmp 0x14003124e
mov ecx, dword [rbp - 0x40]
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 7
cmp ecx, eax
je 0x140030dfc
mov eax, dword [rbp - 0x40]
mov ecx, r13d
or ecx, 1
xor ecx, eax
mov dword [rbp - 0x40], ecx
mov eax, dword [rbp - 0x40]
test al, 1
jne 0x14003124e
nop dword [rax]
mov ecx, dword [rbp - 0x40]
mov eax, dword [rbp - 0x40]
add ecx, ecx
or ecx, 3
xor eax, ecx
mov dword [rbp - 0x40], eax
mov eax, dword [rbp - 0x40]
test al, 1
je 0x140030de0
jmp 0x14003124e
mov ecx, dword [rbp - 0x40]
mov eax, 0x2e8ba2e9
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0xb
cmp ecx, eax
je 0x140030e9b
movd xmm0, dword [rbp - 0x40]
mov eax, 0x55555556
imul r13d
cvtdq2ps xmm0, xmm0
mov eax, edx
shr eax, 0x1f
add edx, eax
mulss xmm0, xmm7
mov eax, 0x2aaaaaab
cvttss2si ecx, xmm0
sub edx, ecx
mov dword [rbp - 0x40], edx
mov ecx, dword [rbp - 0x40]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
add eax, eax
sub ecx, eax
cmp ecx, edi
je 0x14003124e
nop
movd xmm0, dword [rbp - 0x40]
mov ecx, 7
cvtdq2ps xmm0, xmm0
divss xmm0, xmm6
cvttss2si eax, xmm0
sub ecx, eax
mov eax, 0x2aaaaaab
mov dword [rbp - 0x40], ecx
mov ecx, dword [rbp - 0x40]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
add eax, eax
sub ecx, eax
cmp ecx, edi
jne 0x140030e60
jmp 0x14003124e
mov ecx, dword [rbp - 0x40]
mov eax, 0x4ec4ec4f
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0xd
cmp ecx, eax
mov ecx, dword [rbp - 0x40]
je 0x140030efa
mov edx, dword [rbp - 0x40]
mov rdi, rsi
imul ecx, r13d
or edx, 3
mov eax, ecx
and eax, 7
xor edx, eax
lea eax, [rdx*4]
xor eax, ecx
mov ecx, r12d
mov dword [rbp - 0x40], eax
nop dword [rax]
mov eax, dword [rbp - 0x40]
add eax, ecx
add ecx, edx
mov dword [rbp - 0x40], eax
sub rdi, 1
jne 0x140030ee0
mov edi, 2
jmp 0x14003124e
mov eax, 0x8d3dcb09
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x1d
cmp ecx, eax
je 0x140030f57
mov eax, 0x92492493
mov ecx, r13d
imul r13d
add edx, r13d
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 7
sub ecx, eax
mov eax, dword [rbp - 0x40]
imul ecx, eax
mov dword [rbp - 0x40], ecx
mov ecx, r15d
nop dword [rax]
mov eax, dword [rbp - 0x40]
add eax, eax
xor eax, ecx
add ecx, 0x1d
mov dword [rbp - 0x40], eax
cmp ecx, 0x57
jl 0x140030f40
jmp 0x14003124e
mov ecx, dword [rbp - 0x40]
mov eax, 0x84210843
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x1f
cmp ecx, eax
mov ecx, dword [rbp - 0x40]
je 0x140030fa6
mov eax, dword [rbp - 0x40]
not eax
add eax, 0x1f
add eax, r13d
mov dword [rbp - 0x40], eax
mov eax, dword [rbp - 0x40]
and eax, 0x80000001
jge 0x140030f96
dec eax
or eax, 0xfffffffe
inc eax
test eax, eax
jne 0x14003124e
mov dword [rbp - 0x40], ecx
jmp 0x14003124e
mov eax, 0xdd67c8a7
imul ecx
add edx, ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x25
cmp ecx, eax
mov ecx, dword [rbp - 0x40]
je 0x14003100c
mov eax, dword [rbp - 0x40]
add ecx, 0x25
add eax, 0x25
add ecx, r13d
xor eax, ecx
mov dword [rbp - 0x40], eax
mov eax, dword [rbp - 0x40]
cmp eax, 0x3fffffff
jge 0x14003124e
nop dword [rax]
nop word [rax + rax]
mov eax, dword [rbp - 0x40]
lea eax, [rax*2 - 0x25]
mov dword [rbp - 0x40], eax
mov eax, dword [rbp - 0x40]
cmp eax, 0x3fffffff
jl 0x140030ff0
jmp 0x14003124e
mov eax, 0x63e7063f
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x29
cmp ecx, eax
je 0x14003108b
mov eax, 0x63e7063f
mov ecx, r13d
imul r13d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x29
sub ecx, eax
mov eax, dword [rbp - 0x40]
add ecx, eax
mov eax, 0x63e7063f
mov dword [rbp - 0x40], ecx
mov ecx, dword [rbp - 0x40]
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x29
cmp ecx, eax
je 0x14003106f
mov eax, dword [rbp - 0x40]
imul edx, eax, 0x29
mov dword [rbp - 0x40], edx
jmp 0x14003124e
mov ecx, dword [rbp - 0x40]
mov eax, 0x63e7063f
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov dword [rbp - 0x40], edx
jmp 0x14003124e
mov ecx, dword [rbp - 0x40]
mov eax, 0x2fa0be83
imul ecx
sar edx, 3
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x2b
cmp ecx, eax
je 0x140031100
mov eax, dword [rbp - 0x40]
mov ecx, r13d
add eax, 0x2b
mov dword [rbp - 0x40], eax
mov eax, 0x66666667
imul r13d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
sub ecx, eax
mov eax, dword [rbp - 0x40]
inc ecx
cdq
idiv ecx
test edx, edx
je 0x14003124e
nop dword [rax + rax]
mov eax, dword [rbp - 0x40]
cdq
idiv ecx
mov eax, dword [rbp - 0x40]
imul edx, ecx
add eax, edx
mov dword [rbp - 0x40], eax
mov eax, dword [rbp - 0x40]
cdq
idiv ecx
test edx, edx
jne 0x1400310e0
jmp 0x14003124e
mov ecx, dword [rbp - 0x40]
mov eax, 0x4d4873ed
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x35
cmp ecx, eax
je 0x140031168
mov eax, dword [rbp - 0x40]
mov ecx, r13d
dec eax
mov dword [rbp - 0x40], eax
mov eax, 0x4d4873ed
imul r13d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x35
sub ecx, eax
mov eax, dword [rbp - 0x40]
inc ecx
cdq
idiv ecx
test edx, edx
je 0x14003124e
nop dword [rax]
mov eax, dword [rbp - 0x40]
sub eax, 0x35
mov dword [rbp - 0x40], eax
mov eax, dword [rbp - 0x40]
cdq
idiv ecx
test edx, edx
jne 0x140031150
jmp 0x14003124e
mov ecx, dword [rbp - 0x40]
mov eax, 0x6bca1af3
imul ecx
sar edx, 3
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x13
cmp ecx, eax
je 0x14003124e
mov ecx, dword [rbp - 0x40]
mov eax, 0x55555556
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
jne 0x1400311c2
call fcn.140063afc
mov ecx, eax
mov eax, 0x66666667
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
mov edx, dword [rbp - 0x40]
sub ecx, eax
inc edx
jmp 0x1400311e3
call fcn.140063afc
mov ecx, eax
mov eax, 0x66666667
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
mov edx, dword [rbp - 0x40]
sub ecx, eax
not ecx
add edx, ecx
mov eax, 0x92492493
mov dword [rbp - 0x40], edx
mov ecx, dword [rbp - 0x40]
imul ecx
add edx, ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 7
sub ecx, eax
cmp ecx, 4
je 0x14003124e
nop dword [rax + rax]
mov ecx, dword [rbp - 0x40]
mov eax, 0x6bca1af3
add ecx, ecx
imul ecx
sar edx, 3
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x13
sub ecx, eax
mov eax, 0x92492493
mov dword [rbp - 0x40], ecx
mov ecx, dword [rbp - 0x40]
imul ecx
add edx, ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 7
sub ecx, eax
cmp ecx, 4
jne 0x140031210
mov edx, 0x10
xor ecx, ecx
mov r8d, 0xe6b09957
lea r9d, [rdx + 0x25]
call fcn.140018170
lea r14, [r13 + 0x68]
mov edx, 0x40
mov r8, r14
mov rcx, rbx
call rax
test eax, eax
je 0x140032724
mov dword [rbp - 0x40], 0x7bf480
mov eax, 0x55555556
mov ecx, dword [rbp - 0x40]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
je 0x1400312f2
mov ecx, dword [rbp - 0x40]
add ecx, 2
add ecx, r14d
mov dword [rbp - 0x40], ecx
mov eax, dword [rbp - 0x40]
and eax, 0x80000003
jge 0x1400312b9
dec eax
or eax, 0xfffffffc
inc eax
test eax, eax
jne 0x14003190e
nop dword [rax]
nop word [rax + rax]
mov eax, dword [rbp - 0x40]
inc eax
mov dword [rbp - 0x40], eax
mov eax, dword [rbp - 0x40]
and eax, 0x80000003
jge 0x1400312e9
dec eax
or eax, 0xfffffffc
inc eax
test eax, eax
je 0x1400312d0
jmp 0x14003190e
mov eax, dword [rbp - 0x40]
and eax, 0x80000001
mov eax, dword [rbp - 0x40]
je 0x140031355
mov ecx, edi
sub ecx, r14d
add ecx, eax
mov eax, 0x55555556
mov dword [rbp - 0x40], ecx
mov ecx, dword [rbp - 0x40]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
jne 0x14003190e
nop word [rax + rax]
mov eax, dword [rbp - 0x40]
inc eax
mov dword [rbp - 0x40], eax
mov eax, 0x55555556
mov ecx, dword [rbp - 0x40]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
je 0x140031330
jmp 0x14003190e
mov ecx, dword [rbp - 0x40]
and eax, 0x80000003
je 0x1400313d0
add ecx, 2
lea eax, [r14 + 3]
imul ecx, eax
mov dword [rbp - 0x40], ecx
mov eax, dword [rbp - 0x40]
and eax, 0x80000001
jge 0x14003137d
dec eax
or eax, 0xfffffffe
inc eax
test eax, eax
jne 0x14003190e
nop word [rax + rax]
mov ecx, dword [rbp - 0x40]
mov eax, 0x66666667
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
cmp ecx, eax
mov eax, dword [rbp - 0x40]
je 0x1400313b1
dec eax
jmp 0x1400313b3
inc eax
mov dword [rbp - 0x40], eax
mov eax, dword [rbp - 0x40]
and eax, 0x80000001
jge 0x1400313c7
dec eax
or eax, 0xfffffffe
inc eax
test eax, eax
je 0x140031390
jmp 0x14003190e
mov eax, 0x66666667
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
cmp ecx, eax
je 0x140031463
mov eax, dword [rbp - 0x40]
lea ecx, [r14 + 0x17]
add eax, 0xb
cdq
idiv ecx
mov dword [rbp - 0x40], eax
mov eax, 0x55555556
mov ecx, dword [rbp - 0x40]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
jne 0x14003190e
nop dword [rax]
nop word [rax + rax]
mov ecx, dword [rbp - 0x40]
mov eax, 0x66666667
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
cmp ecx, eax
mov eax, dword [rbp - 0x40]
je 0x140031441
inc eax
jmp 0x140031443
dec eax
mov dword [rbp - 0x40], eax
mov eax, 0x55555556
mov ecx, dword [rbp - 0x40]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
je 0x140031420
jmp 0x14003190e
mov ecx, dword [rbp - 0x40]
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 7
cmp ecx, eax
je 0x1400314bc
mov eax, dword [rbp - 0x40]
mov ecx, r14d
or ecx, 1
xor ecx, eax
mov dword [rbp - 0x40], ecx
mov eax, dword [rbp - 0x40]
test al, 1
jne 0x14003190e
nop dword [rax]
mov ecx, dword [rbp - 0x40]
mov eax, dword [rbp - 0x40]
add ecx, ecx
or ecx, 3
xor eax, ecx
mov dword [rbp - 0x40], eax
mov eax, dword [rbp - 0x40]
test al, 1
je 0x1400314a0
jmp 0x14003190e
mov ecx, dword [rbp - 0x40]
mov eax, 0x2e8ba2e9
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0xb
cmp ecx, eax
je 0x14003155c
movd xmm0, dword [rbp - 0x40]
mov eax, 0x55555556
imul r14d
cvtdq2ps xmm0, xmm0
mov eax, edx
shr eax, 0x1f
add edx, eax
mulss xmm0, xmm7
mov eax, 0x2aaaaaab
cvttss2si ecx, xmm0
sub edx, ecx
mov dword [rbp - 0x40], edx
mov ecx, dword [rbp - 0x40]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
add eax, eax
sub ecx, eax
cmp ecx, 2
je 0x14003190e
nop
movd xmm0, dword [rbp - 0x40]
mov ecx, 7
cvtdq2ps xmm0, xmm0
divss xmm0, xmm6
cvttss2si eax, xmm0
sub ecx, eax
mov eax, 0x2aaaaaab
mov dword [rbp - 0x40], ecx
mov ecx, dword [rbp - 0x40]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
add eax, eax
sub ecx, eax
cmp ecx, 2
jne 0x140031520
jmp 0x14003190e
mov ecx, dword [rbp - 0x40]
mov eax, 0x4ec4ec4f
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0xd
cmp ecx, eax
mov ecx, dword [rbp - 0x40]
je 0x1400315b5
mov edi, dword [rbp - 0x40]
mov rdx, rsi
imul ecx, r14d
or edi, 3
mov eax, ecx
and eax, 7
xor edi, eax
lea eax, [rdi*4]
xor eax, ecx
mov ecx, r12d
mov dword [rbp - 0x40], eax
nop dword [rax]
mov eax, dword [rbp - 0x40]
add eax, ecx
add ecx, edi
mov dword [rbp - 0x40], eax
sub rdx, 1
jne 0x1400315a0
jmp 0x14003190e
mov eax, 0x8d3dcb09
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x1d
cmp ecx, eax
je 0x140031617
mov eax, 0x92492493
mov ecx, r14d
imul r14d
add edx, r14d
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 7
sub ecx, eax
mov eax, dword [rbp - 0x40]
imul ecx, eax
mov dword [rbp - 0x40], ecx
mov ecx, r15d
nop dword [rax + rax]
mov eax, dword [rbp - 0x40]
add eax, eax
xor eax, ecx
add ecx, 0x1d
mov dword [rbp - 0x40], eax
cmp ecx, 0x57
jl 0x140031600
jmp 0x14003190e
mov ecx, dword [rbp - 0x40]
mov eax, 0x84210843
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x1f
cmp ecx, eax
mov ecx, dword [rbp - 0x40]
je 0x140031666
mov eax, dword [rbp - 0x40]
not eax
add eax, 0x1f
add eax, r14d
mov dword [rbp - 0x40], eax
mov eax, dword [rbp - 0x40]
and eax, 0x80000001
jge 0x140031656
dec eax
or eax, 0xfffffffe
inc eax
test eax, eax
jne 0x14003190e
mov dword [rbp - 0x40], ecx
jmp 0x14003190e
mov eax, 0xdd67c8a7
imul ecx
add edx, ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x25
cmp ecx, eax
mov ecx, dword [rbp - 0x40]
je 0x1400316cc
mov eax, dword [rbp - 0x40]
add ecx, 0x25
add eax, 0x25
add ecx, r14d
xor eax, ecx
mov dword [rbp - 0x40], eax
mov eax, dword [rbp - 0x40]
cmp eax, 0x3fffffff
jge 0x14003190e
nop dword [rax]
nop word [rax + rax]
mov eax, dword [rbp - 0x40]
lea eax, [rax*2 - 0x25]
mov dword [rbp - 0x40], eax
mov eax, dword [rbp - 0x40]
cmp eax, 0x3fffffff
jl 0x1400316b0
jmp 0x14003190e
mov eax, 0x63e7063f
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x29
cmp ecx, eax
je 0x14003174b
mov eax, 0x63e7063f
mov ecx, r14d
imul r14d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x29
sub ecx, eax
mov eax, dword [rbp - 0x40]
add ecx, eax
mov eax, 0x63e7063f
mov dword [rbp - 0x40], ecx
mov ecx, dword [rbp - 0x40]
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x29
cmp ecx, eax
je 0x14003172f
mov eax, dword [rbp - 0x40]
imul edx, eax, 0x29
mov dword [rbp - 0x40], edx
jmp 0x14003190e
mov ecx, dword [rbp - 0x40]
mov eax, 0x63e7063f
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov dword [rbp - 0x40], edx
jmp 0x14003190e
mov ecx, dword [rbp - 0x40]
mov eax, 0x2fa0be83
imul ecx
sar edx, 3
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x2b
cmp ecx, eax
je 0x1400317c0
mov eax, dword [rbp - 0x40]
mov ecx, r14d
add eax, 0x2b
mov dword [rbp - 0x40], eax
mov eax, 0x66666667
imul r14d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
sub ecx, eax
mov eax, dword [rbp - 0x40]
inc ecx
cdq
idiv ecx
test edx, edx
je 0x14003190e
nop dword [rax + rax]
mov eax, dword [rbp - 0x40]
cdq
idiv ecx
mov eax, dword [rbp - 0x40]
imul edx, ecx
add eax, edx
mov dword [rbp - 0x40], eax
mov eax, dword [rbp - 0x40]
cdq
idiv ecx
test edx, edx
jne 0x1400317a0
jmp 0x14003190e
mov ecx, dword [rbp - 0x40]
mov eax, 0x4d4873ed
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x35
cmp ecx, eax
je 0x140031828
mov eax, dword [rbp - 0x40]
mov ecx, r14d
dec eax
mov dword [rbp - 0x40], eax
mov eax, 0x4d4873ed
imul r14d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x35
sub ecx, eax
mov eax, dword [rbp - 0x40]
inc ecx
cdq
idiv ecx
test edx, edx
je 0x14003190e
nop dword [rax]
mov eax, dword [rbp - 0x40]
sub eax, 0x35
mov dword [rbp - 0x40], eax
mov eax, dword [rbp - 0x40]
cdq
idiv ecx
test edx, edx
jne 0x140031810
jmp 0x14003190e
mov ecx, dword [rbp - 0x40]
mov eax, 0x6bca1af3
imul ecx
sar edx, 3
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x13
cmp ecx, eax
je 0x14003190e
mov ecx, dword [rbp - 0x40]
mov eax, 0x55555556
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
jne 0x140031882
call fcn.140063afc
mov ecx, eax
mov eax, 0x66666667
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
mov edx, dword [rbp - 0x40]
sub ecx, eax
inc edx
jmp 0x1400318a3
call fcn.140063afc
mov ecx, eax
mov eax, 0x66666667
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
mov edx, dword [rbp - 0x40]
sub ecx, eax
not ecx
add edx, ecx
mov eax, 0x92492493
mov dword [rbp - 0x40], edx
mov ecx, dword [rbp - 0x40]
imul ecx
add edx, ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 7
sub ecx, eax
cmp ecx, 4
je 0x14003190e
nop dword [rax + rax]
mov ecx, dword [rbp - 0x40]
mov eax, 0x6bca1af3
add ecx, ecx
imul ecx
sar edx, 3
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x13
sub ecx, eax
mov eax, 0x92492493
mov dword [rbp - 0x40], ecx
mov edi, dword [rbp - 0x40]
imul edi
add edx, edi
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 7
sub edi, eax
cmp edi, 4
jne 0x1400318d0
mov edx, 0x10
xor ecx, ecx
mov r8d, 0xe6b09957
lea r9d, [rdx + 0x25]
call fcn.140018170
lea rsi, [r13 + 0x58]
mov edx, 0x10
mov r8, rsi
mov rcx, rbx
call rax
test eax, eax
je 0x140032724
mov dword [rbp - 0x40], 0x7bf480
mov eax, 0x55555556
mov ecx, dword [rbp - 0x40]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
je 0x1400319a2
mov ecx, dword [rbp - 0x40]
add ecx, 2
add ecx, esi
mov dword [rbp - 0x40], ecx
mov eax, dword [rbp - 0x40]
and eax, 0x80000003
jge 0x140031978
dec eax
or eax, 0xfffffffc
inc eax
test eax, eax
jne 0x140031f9e
mov eax, dword [rbp - 0x40]
inc eax
mov dword [rbp - 0x40], eax
mov eax, dword [rbp - 0x40]
and eax, 0x80000003
jge 0x140031999
dec eax
or eax, 0xfffffffc
inc eax
test eax, eax
je 0x140031980
jmp 0x140031f9e
mov eax, dword [rbp - 0x40]
and eax, 0x80000001
mov eax, dword [rbp - 0x40]
je 0x140031a05
mov r10d, 2
mov ecx, r10d
sub ecx, esi
add ecx, eax
mov eax, 0x55555556
mov dword [rbp - 0x40], ecx
mov ecx, dword [rbp - 0x40]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
jne 0x140031fa4
nop dword [rax + rax]
mov eax, dword [rbp - 0x40]
inc eax
mov dword [rbp - 0x40], eax
mov eax, 0x55555556
mov ecx, dword [rbp - 0x40]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
je 0x1400319e0
jmp 0x140031fa4
mov ecx, dword [rbp - 0x40]
and eax, 0x80000003
je 0x140031a80
add ecx, 2
lea eax, [rsi + 3]
imul ecx, eax
mov dword [rbp - 0x40], ecx
mov eax, dword [rbp - 0x40]
and eax, 0x80000001
jge 0x140031a2c
dec eax
or eax, 0xfffffffe
inc eax
test eax, eax
jne 0x140031f9e
nop dword [rax]
nop dword [rax + rax]
mov ecx, dword [rbp - 0x40]
mov eax, 0x66666667
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
cmp ecx, eax
mov eax, dword [rbp - 0x40]
je 0x140031a61
dec eax
jmp 0x140031a63
inc eax
mov dword [rbp - 0x40], eax
mov eax, dword [rbp - 0x40]
and eax, 0x80000001
jge 0x140031a77
dec eax
or eax, 0xfffffffe
inc eax
test eax, eax
je 0x140031a40
jmp 0x140031f9e
mov eax, 0x66666667
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
cmp ecx, eax
je 0x140031b05
mov eax, dword [rbp - 0x40]
lea ecx, [rsi + 0x17]
add eax, 0xb
cdq
idiv ecx
mov dword [rbp - 0x40], eax
mov eax, 0x55555556
mov ecx, dword [rbp - 0x40]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
jne 0x140031f9e
mov ecx, dword [rbp - 0x40]
mov eax, 0x66666667
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
cmp ecx, eax
mov eax, dword [rbp - 0x40]
je 0x140031ae3
inc eax
jmp 0x140031ae5
dec eax
mov dword [rbp - 0x40], eax
mov eax, 0x55555556
mov ecx, dword [rbp - 0x40]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
je 0x140031ac2
jmp 0x140031f9e
mov ecx, dword [rbp - 0x40]
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 7
cmp ecx, eax
je 0x140031b5c
mov eax, dword [rbp - 0x40]
mov ecx, esi
or ecx, 1
xor ecx, eax
mov dword [rbp - 0x40], ecx
mov eax, dword [rbp - 0x40]
test al, 1
jne 0x140031f9e
nop word [rax + rax]
mov ecx, dword [rbp - 0x40]
mov eax, dword [rbp - 0x40]
add ecx, ecx
or ecx, 3
xor eax, ecx
mov dword [rbp - 0x40], eax
mov eax, dword [rbp - 0x40]
test al, 1
je 0x140031b40
jmp 0x140031f9e
mov ecx, dword [rbp - 0x40]
mov eax, 0x2e8ba2e9
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0xb
cmp ecx, eax
je 0x140031bfc
movd xmm0, dword [rbp - 0x40]
mov eax, 0x55555556
imul esi
cvtdq2ps xmm0, xmm0
mov eax, edx
shr eax, 0x1f
add edx, eax
mulss xmm0, xmm7
mov eax, 0x2aaaaaab
cvttss2si ecx, xmm0
sub edx, ecx
mov dword [rbp - 0x40], edx
mov ecx, dword [rbp - 0x40]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
add eax, eax
sub ecx, eax
cmp ecx, 2
je 0x140031f9e
nop
movd xmm0, dword [rbp - 0x40]
mov ecx, 7
cvtdq2ps xmm0, xmm0
divss xmm0, xmm6
cvttss2si eax, xmm0
sub ecx, eax
mov eax, 0x2aaaaaab
mov dword [rbp - 0x40], ecx
mov ecx, dword [rbp - 0x40]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
add eax, eax
sub ecx, eax
cmp ecx, 2
jne 0x140031bc0
jmp 0x140031f9e
mov ecx, dword [rbp - 0x40]
mov eax, 0x4ec4ec4f
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0xd
cmp ecx, eax
mov ecx, dword [rbp - 0x40]
je 0x140031c5b
mov edi, dword [rbp - 0x40]
mov r9d, 5
imul ecx, esi
or edi, 3
mov edx, r9d
mov eax, ecx
and eax, 7
xor edi, eax
lea eax, [rdi*4]
xor eax, ecx
mov ecx, r12d
mov dword [rbp - 0x40], eax
mov eax, dword [rbp - 0x40]
add eax, ecx
add ecx, edi
mov dword [rbp - 0x40], eax
sub rdx, 1
jne 0x140031c42
lea r10d, [rdx + 2]
jmp 0x140031faa
mov eax, 0x8d3dcb09
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x1d
cmp ecx, eax
je 0x140031cb7
mov eax, 0x92492493
mov ecx, esi
imul esi
add edx, esi
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 7
sub ecx, eax
mov eax, dword [rbp - 0x40]
imul ecx, eax
mov dword [rbp - 0x40], ecx
mov ecx, r15d
nop dword [rax + rax]
mov eax, dword [rbp - 0x40]
add eax, eax
xor eax, ecx
add ecx, 0x1d
mov dword [rbp - 0x40], eax
cmp ecx, 0x57
jl 0x140031ca0
jmp 0x140031f9e
mov ecx, dword [rbp - 0x40]
mov eax, 0x84210843
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x1f
cmp ecx, eax
mov ecx, dword [rbp - 0x40]
je 0x140031d0f
mov eax, dword [rbp - 0x40]
not eax
add eax, 0x1f
add eax, esi
mov dword [rbp - 0x40], eax
mov eax, dword [rbp - 0x40]
and eax, 0x80000001
jge 0x140031cf5
dec eax
or eax, 0xfffffffe
inc eax
mov r9d, 5
lea r10d, [r9 - 3]
test eax, eax
jne 0x140031faa
mov dword [rbp - 0x40], ecx
jmp 0x140031faa
mov eax, 0xdd67c8a7
imul ecx
add edx, ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x25
cmp ecx, eax
mov ecx, dword [rbp - 0x40]
je 0x140031d6c
mov eax, dword [rbp - 0x40]
add ecx, 0x25
add eax, 0x25
add ecx, esi
xor eax, ecx
mov dword [rbp - 0x40], eax
mov eax, dword [rbp - 0x40]
cmp eax, 0x3fffffff
jge 0x140031f9e
nop word [rax + rax]
mov eax, dword [rbp - 0x40]
lea eax, [rax*2 - 0x25]
mov dword [rbp - 0x40], eax
mov eax, dword [rbp - 0x40]
cmp eax, 0x3fffffff
jl 0x140031d50
jmp 0x140031f9e
mov eax, 0x63e7063f
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x29
cmp ecx, eax
je 0x140031de9
mov eax, 0x63e7063f
mov ecx, esi
imul esi
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x29
sub ecx, eax
mov eax, dword [rbp - 0x40]
add ecx, eax
mov eax, 0x63e7063f
mov dword [rbp - 0x40], ecx
mov ecx, dword [rbp - 0x40]
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x29
cmp ecx, eax
je 0x140031dcd
mov eax, dword [rbp - 0x40]
imul edx, eax, 0x29
mov dword [rbp - 0x40], edx
jmp 0x140031f9e
mov ecx, dword [rbp - 0x40]
mov eax, 0x63e7063f
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov dword [rbp - 0x40], edx
jmp 0x140031f9e
mov ecx, dword [rbp - 0x40]
mov eax, 0x2fa0be83
imul ecx
sar edx, 3
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x2b
cmp ecx, eax
je 0x140031e54
mov eax, dword [rbp - 0x40]
mov ecx, esi
add eax, 0x2b
mov dword [rbp - 0x40], eax
mov eax, 0x66666667
imul esi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
sub ecx, eax
mov eax, dword [rbp - 0x40]
inc ecx
cdq
idiv ecx
test edx, edx
je 0x140031f9e
mov eax, dword [rbp - 0x40]
cdq
idiv ecx
mov eax, dword [rbp - 0x40]
imul edx, ecx
add eax, edx
mov dword [rbp - 0x40], eax
mov eax, dword [rbp - 0x40]
cdq
idiv ecx
test edx, edx
jne 0x140031e34
jmp 0x140031f9e
mov ecx, dword [rbp - 0x40]
mov eax, 0x4d4873ed
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x35
cmp ecx, eax
je 0x140031eb8
mov eax, dword [rbp - 0x40]
mov ecx, esi
dec eax
mov dword [rbp - 0x40], eax
mov eax, 0x4d4873ed
imul esi
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x35
sub ecx, eax
mov eax, dword [rbp - 0x40]
inc ecx
cdq
idiv ecx
test edx, edx
je 0x140031f9e
nop
mov eax, dword [rbp - 0x40]
sub eax, 0x35
mov dword [rbp - 0x40], eax
mov eax, dword [rbp - 0x40]
cdq
idiv ecx
test edx, edx
jne 0x140031ea0
jmp 0x140031f9e
mov ecx, dword [rbp - 0x40]
mov eax, 0x6bca1af3
imul ecx
sar edx, 3
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x13
cmp ecx, eax
je 0x140031f9e
mov ecx, dword [rbp - 0x40]
mov eax, 0x55555556
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
jne 0x140031f12
call fcn.140063afc
mov ecx, eax
mov eax, 0x66666667
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
mov edx, dword [rbp - 0x40]
sub ecx, eax
inc edx
jmp 0x140031f33
call fcn.140063afc
mov ecx, eax
mov eax, 0x66666667
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
mov edx, dword [rbp - 0x40]
sub ecx, eax
not ecx
add edx, ecx
mov eax, 0x92492493
mov dword [rbp - 0x40], edx
mov ecx, dword [rbp - 0x40]
imul ecx
add edx, ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 7
sub ecx, eax
cmp ecx, 4
je 0x140031f9e
nop dword [rax + rax]
mov ecx, dword [rbp - 0x40]
mov eax, 0x6bca1af3
add ecx, ecx
imul ecx
sar edx, 3
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x13
sub ecx, eax
mov eax, 0x92492493
mov dword [rbp - 0x40], ecx
mov edi, dword [rbp - 0x40]
imul edi
add edx, edi
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 7
sub edi, eax
cmp edi, 4
jne 0x140031f60
mov r10d, 2
mov r9d, 5
xor eax, eax
lea rdi, [r13 + 0x18]
mov ecx, 0x40
lea rbx, [r13 + 0xa8]
rep stosb byte [rdi], al
mov eax, dword [r14]
mov ecx, 8
mov dword [r13 + 0x28], eax
mov eax, dword [r14 + 4]
mov dword [r13 + 0x2c], eax
mov eax, dword [r14 + 8]
mov dword [r13 + 0x30], eax
mov eax, dword [r14 + 0xc]
mov dword [r13 + 0x34], eax
mov eax, dword [r14 + 0x10]
mov dword [r13 + 0x38], eax
mov eax, dword [r14 + 0x14]
mov dword [r13 + 0x3c], eax
mov eax, dword [r14 + 0x18]
mov dword [r13 + 0x40], eax
mov eax, dword [r14 + 0x1c]
mov dword [r13 + 0x44], eax
mov dword [r13 + 0x18], 0x61707865
mov dword [r13 + 0x1c], 0x3320646e
mov dword [r13 + 0x20], 0x79622d32
mov dword [r13 + 0x24], 0x6b206574
mov qword [r13 + 0x48], r15
mov eax, dword [rsi]
mov dword [r13 + 0x50], eax
mov eax, dword [rsi + 4]
mov dword [r13 + 0x54], eax
nop dword [rax]
nop word [rax + rax]
mov rax, qword [r14]
mov qword [r14 + 0x40], rax
lea r14, [r14 + 8]
sub rcx, 1
jne 0x140032040
mov rcx, r10
nop dword [rax]
nop dword [rax + rax]
mov rax, qword [rsi]
mov qword [rsi + 0x90], rax
lea rsi, [rsi + 8]
sub rcx, 1
jne 0x140032060
mov dword [rbp - 0x40], 0x7bf480
mov eax, 0x55555556
mov ecx, dword [rbp - 0x40]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
je 0x1400320e2
mov ecx, dword [rbp - 0x40]
add ecx, 2
add ecx, ebx
mov dword [rbp - 0x40], ecx
mov eax, dword [rbp - 0x40]
and eax, 0x80000003
jge 0x1400320af
dec eax
or eax, 0xfffffffc
inc eax
test eax, eax
jne 0x1400326de
nop word [rax + rax]
mov eax, dword [rbp - 0x40]
inc eax
mov dword [rbp - 0x40], eax
mov eax, dword [rbp - 0x40]
and eax, 0x80000003
jge 0x1400320d9
dec eax
or eax, 0xfffffffc
inc eax
test eax, eax
je 0x1400320c0
jmp 0x1400326de
mov eax, dword [rbp - 0x40]
and eax, 0x80000001
mov eax, dword [rbp - 0x40]
je 0x140032145
sub r10d, ebx
add r10d, eax
mov eax, 0x55555556
mov dword [rbp - 0x40], r10d
mov ecx, dword [rbp - 0x40]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
jne 0x1400326de
nop word [rax + rax]
mov eax, dword [rbp - 0x40]
inc eax
mov dword [rbp - 0x40], eax
mov eax, 0x55555556
mov ecx, dword [rbp - 0x40]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
je 0x140032120
jmp 0x1400326de
mov ecx, dword [rbp - 0x40]
and eax, 0x80000003
je 0x1400321c0
add ecx, 2
lea eax, [rbx + 3]
imul ecx, eax
mov dword [rbp - 0x40], ecx
mov eax, dword [rbp - 0x40]
and eax, 0x80000001
jge 0x14003216c
dec eax
or eax, 0xfffffffe
inc eax
test eax, eax
jne 0x1400326de
nop dword [rax]
nop dword [rax + rax]
mov ecx, dword [rbp - 0x40]
mov eax, 0x66666667
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
cmp ecx, eax
mov eax, dword [rbp - 0x40]
je 0x1400321a1
dec eax
jmp 0x1400321a3
inc eax
mov dword [rbp - 0x40], eax
mov eax, dword [rbp - 0x40]
and eax, 0x80000001
jge 0x1400321b7
dec eax
or eax, 0xfffffffe
inc eax
test eax, eax
je 0x140032180
jmp 0x1400326de
mov eax, 0x66666667
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
cmp ecx, eax
je 0x140032245
mov eax, dword [rbp - 0x40]
lea ecx, [rbx + 0x17]
add eax, 0xb
cdq
idiv ecx
mov dword [rbp - 0x40], eax
mov eax, 0x55555556
mov ecx, dword [rbp - 0x40]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
jne 0x1400326de
mov ecx, dword [rbp - 0x40]
mov eax, 0x66666667
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
cmp ecx, eax
mov eax, dword [rbp - 0x40]
je 0x140032223
inc eax
jmp 0x140032225
dec eax
mov dword [rbp - 0x40], eax
mov eax, 0x55555556
mov ecx, dword [rbp - 0x40]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
je 0x140032202
jmp 0x1400326de
mov ecx, dword [rbp - 0x40]
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 7
cmp ecx, eax
je 0x14003229c
mov eax, dword [rbp - 0x40]
mov ecx, ebx
or ecx, 1
xor ecx, eax
mov dword [rbp - 0x40], ecx
mov eax, dword [rbp - 0x40]
test al, 1
jne 0x1400326de
nop word [rax + rax]
mov ecx, dword [rbp - 0x40]
mov eax, dword [rbp - 0x40]
add ecx, ecx
or ecx, 3
xor eax, ecx
mov dword [rbp - 0x40], eax
mov eax, dword [rbp - 0x40]
test al, 1
je 0x140032280
jmp 0x1400326de
mov edi, dword [rbp - 0x40]
mov eax, 0x2e8ba2e9
imul edi
sar edx, 1
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
imul ecx, edx, 0xb
cmp edi, ecx
je 0x14003233c
movd xmm0, dword [rbp - 0x40]
mov eax, 0x55555556
imul ebx
cvtdq2ps xmm0, xmm0
mov eax, edx
shr eax, 0x1f
add edx, eax
mulss xmm0, xmm7
mov eax, 0x2aaaaaab
cvttss2si ecx, xmm0
sub edx, ecx
mov dword [rbp - 0x40], edx
mov ecx, dword [rbp - 0x40]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
add eax, eax
sub ecx, eax
cmp ecx, 2
je 0x1400326de
nop
movd xmm0, dword [rbp - 0x40]
mov ecx, 7
cvtdq2ps xmm0, xmm0
divss xmm0, xmm6
cvttss2si eax, xmm0
sub ecx, eax
mov eax, 0x2aaaaaab
mov dword [rbp - 0x40], ecx
mov ecx, dword [rbp - 0x40]
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
add eax, eax
sub ecx, eax
cmp ecx, 2
jne 0x140032300
jmp 0x1400326de
mov ecx, dword [rbp - 0x40]
mov eax, 0x4ec4ec4f
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0xd
cmp ecx, eax
je 0x140032397
mov ecx, dword [rbp - 0x40]
mov edx, dword [rbp - 0x40]
imul ecx, ebx
or edx, 3
mov eax, ecx
and eax, 7
xor edx, eax
lea eax, [rdx*4]
xor eax, ecx
mov dword [rbp - 0x40], eax
nop word [rax + rax]
mov eax, dword [rbp - 0x40]
add eax, r12d
add r12d, edx
mov dword [rbp - 0x40], eax
sub r9, 1
jne 0x140032380
jmp 0x1400326de
mov edi, dword [rbp - 0x40]
mov eax, 0x8d3dcb09
imul edi
add edx, edi
sar edx, 4
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
imul ecx, edx, 0x1d
cmp edi, ecx
je 0x1400323fa
mov eax, 0x92492493
mov ecx, ebx
imul ebx
add edx, ebx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 7
sub ecx, eax
mov eax, dword [rbp - 0x40]
imul ecx, eax
mov dword [rbp - 0x40], ecx
nop word [rax + rax]
mov eax, dword [rbp - 0x40]
add eax, eax
xor eax, r15d
add r15d, 0x1d
mov dword [rbp - 0x40], eax
cmp r15d, 0x57
jl 0x1400323e0
jmp 0x1400326de
mov ecx, dword [rbp - 0x40]
mov eax, 0x84210843
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x1f
cmp ecx, eax
mov ecx, dword [rbp - 0x40]
je 0x140032448
mov eax, dword [rbp - 0x40]
not eax
add eax, 0x1f
add eax, ebx
mov dword [rbp - 0x40], eax
mov eax, dword [rbp - 0x40]
and eax, 0x80000001
jge 0x140032438
dec eax
or eax, 0xfffffffe
inc eax
test eax, eax
jne 0x1400326de
mov dword [rbp - 0x40], ecx
jmp 0x1400326de
mov eax, 0xdd67c8a7
imul ecx
add edx, ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x25
cmp ecx, eax
mov ecx, dword [rbp - 0x40]
je 0x1400324ac
mov eax, dword [rbp - 0x40]
add ecx, 0x25
add eax, 0x25
add ecx, ebx
xor eax, ecx
mov dword [rbp - 0x40], eax
mov eax, dword [rbp - 0x40]
cmp eax, 0x3fffffff
jge 0x1400326de
nop dword [rax]
nop word [rax + rax]
mov eax, dword [rbp - 0x40]
lea eax, [rax*2 - 0x25]
mov dword [rbp - 0x40], eax
mov eax, dword [rbp - 0x40]
cmp eax, 0x3fffffff
jl 0x140032490
jmp 0x1400326de
mov eax, 0x63e7063f
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x29
cmp ecx, eax
je 0x140032529
mov eax, 0x63e7063f
mov ecx, ebx
imul ebx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x29
sub ecx, eax
mov eax, dword [rbp - 0x40]
add ecx, eax
mov eax, 0x63e7063f
mov dword [rbp - 0x40], ecx
mov ecx, dword [rbp - 0x40]
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x29
cmp ecx, eax
je 0x14003250d
mov eax, dword [rbp - 0x40]
imul edx, eax, 0x29
mov dword [rbp - 0x40], edx
jmp 0x1400326de
mov ecx, dword [rbp - 0x40]
mov eax, 0x63e7063f
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov dword [rbp - 0x40], edx
jmp 0x1400326de
mov edi, dword [rbp - 0x40]
mov eax, 0x2fa0be83
imul edi
sar edx, 3
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
imul ecx, edx, 0x2b
cmp edi, ecx
je 0x140032594
mov ecx, dword [rbp - 0x40]
mov eax, 0x66666667
imul ebx
add ecx, 0x2b
sar edx, 1
mov eax, edx
mov dword [rbp - 0x40], ecx
shr eax, 0x1f
mov ecx, ebx
add edx, eax
lea eax, [rdx + rdx*4]
sub ecx, eax
mov eax, dword [rbp - 0x40]
inc ecx
cdq
idiv ecx
test edx, edx
je 0x1400326de
mov eax, dword [rbp - 0x40]
cdq
idiv ecx
mov eax, dword [rbp - 0x40]
imul edx, ecx
add eax, edx
mov dword [rbp - 0x40], eax
mov eax, dword [rbp - 0x40]
cdq
idiv ecx
test edx, edx
jne 0x140032574
jmp 0x1400326de
mov edi, dword [rbp - 0x40]
mov eax, 0x4d4873ed
imul edi
sar edx, 4
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
imul ecx, edx, 0x35
cmp edi, ecx
mov ecx, dword [rbp - 0x40]
je 0x1400325f8
dec ecx
mov eax, 0x4d4873ed
imul ebx
mov dword [rbp - 0x40], ecx
mov ecx, ebx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x35
sub ecx, eax
mov eax, dword [rbp - 0x40]
inc ecx
cdq
idiv ecx
test edx, edx
je 0x1400326de
nop
mov eax, dword [rbp - 0x40]
sub eax, 0x35
mov dword [rbp - 0x40], eax
mov eax, dword [rbp - 0x40]
cdq
idiv ecx
test edx, edx
jne 0x1400325e0
jmp 0x1400326de
mov eax, 0x6bca1af3
imul ecx
sar edx, 3
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x13
cmp ecx, eax
je 0x1400326de
mov ecx, dword [rbp - 0x40]
mov eax, 0x55555556
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
cmp ecx, eax
jne 0x14003264f
call fcn.140063afc
mov edi, eax
mov eax, 0x66666667
imul edi
sar edx, 1
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
lea ecx, [rdx + rdx*4]
sub edi, ecx
mov ecx, dword [rbp - 0x40]
inc ecx
jmp 0x140032670
call fcn.140063afc
mov edi, eax
mov eax, 0x66666667
imul edi
sar edx, 1
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
lea ecx, [rdx + rdx*4]
sub edi, ecx
mov ecx, dword [rbp - 0x40]
not edi
add ecx, edi
mov eax, 0x92492493
mov dword [rbp - 0x40], ecx
mov ecx, dword [rbp - 0x40]
imul ecx
add edx, ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 7
sub ecx, eax
cmp ecx, 4
je 0x1400326de
nop word [rax + rax]
mov ecx, dword [rbp - 0x40]
mov eax, 0x6bca1af3
add ecx, ecx
imul ecx
sar edx, 3
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x13
sub ecx, eax
mov eax, 0x92492493
mov dword [rbp - 0x40], ecx
mov ecx, dword [rbp - 0x40]
imul ecx
add edx, ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 7
sub ecx, eax
cmp ecx, 4
jne 0x1400326a0
mov edx, 0x10
xor ecx, ecx
mov r8d, 0xd3bb19e6
lea r9d, [rdx + 0x26]
call fcn.140018170
xor r9d, r9d
mov dword [rsp + 0x30], 0x219
lea rcx, [rbp - 0x30]
xor edx, edx
mov qword [rsp + 0x28], rcx
mov rcx, qword [rbp - 0x38]
lea r8d, [r9 + 1]
mov qword [rsp + 0x20], rbx
call rax
test eax, eax
je 0x140032724
mov eax, 1
jmp 0x140032726
xor eax, eax
mov rcx, qword [rbp - 0x28]
xor rcx, rsp
call fcn.14005b090
mov rbx, qword [rsp + 0xd8]
movaps xmm6, xmmword [rsp + 0x70]
movaps xmm7, xmmword [rsp + 0x60]
add rsp, 0x80
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret