Function at 0x1402e5970
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x138
lea rbp, [rsp + 0x80]
movaps xmmword [rbp + 0xa0], xmm6
mov qword [rbp + 0x98], 0xfffffffffffffffe
mov qword [rbp + 0x80], r8
mov qword [rbp + 0x78], rdx
mov qword [rbp + 0x90], rcx
mov rax, qword [rbp + 0x128]
mov r15d, dword [rbp + 0x120]
mov ecx, r9d
mov qword [rbp + 0x50], rcx
mov qword [rbp + 0x70], rax
mov qword [rbp + 0x88], r9
mov eax, r9d
and al, 1
mov byte [rbp + 0x68], al
and r15d, 0x1f
cmp r15d, 9
jae 0x1402e5a74
cmp r15d, 4
jae 0x1402e5bfc
cmp r15d, 2
jae 0x1402e5cc7
test r15d, r15d
je 0x1402e6476
nop
mov esi, dword [0x140740d70]
mov rdi, qword [rbp + 0x90]
mov rdx, qword [rdi + 0x38]
add rdx, 0x10
lea rcx, [rbp - 0x18]
call fcn.1402e3830
mov qword [rbp + 0x38], 0
mov qword [rbp + 0x40], 0xf
mov byte [rbp + 0x28], 0
lea rax, [0x1405e7948]
mov qword [rbp + 0x20], rax
lea rdx, [rbp + 0x20]
mov r9d, 0xd851
mov r8d, 0x43a3fac1
call fcn.1402eb0c0
add rdi, 0x18
mov rcx, rdi
mov rax, qword [rbp + 0x38]
cmp qword [rbp + 0x40], 0x10
jb 0x1402e67d3
mov r9, qword [rbp + 0x28]
jmp 0x1402e67d7
cmp r15d, 0xd
jbe 0x1402e5c56
cmp r15d, 0x10
jae 0x1402e5d21
cmp r15d, 0xe
jne 0x1402e5fab
call fcn.1402e3b60
mov rcx, qword [0x140740e68]
mov edx, dword [0x140740e24]
mov r8d, 0x687
mov qword [rbp + 0x50], rax
sub r8d, eax
mov dword [rbp + 0x78], r8d
sub edx, r8d
movsxd rax, edx
add rax, rcx
call qword [0x140704440]
mov rdx, qword [rbp + 0x90]
test rdx, rdx
je 0x1402e84c7
nop
mov rcx, qword [rbp + 0x80]
lea r14, [rcx + rdx]
dec r14
movzx r8d, byte [0x1407912b8]
add r8b, byte [rcx + rdx - 1]
xor r8b, al
cmp r8b, 0x29
sete byte [rbp + 0x68]
mov rcx, qword [rbp + 0x128]
cmp qword [rcx + 0x68], 0
je 0x1402e6b91
mov qword [rbp + 0x48], r14
mov qword [rbp + 0x70], rax
mov r14d, eax
cmp r8b, 0x29
jne 0x1402e71d4
mov rax, r14
shl rax, 0x21
or rax, r14
movabs rcx, 0x242600469213002b
xor rcx, rax
lea rdi, [rcx + rbp]
add rdi, 0x20
mov rdx, r14
shl rdx, 0x22
or rdx, r14
movabs r8, 0x484c008c9213003b
xor r8, rdx
movabs r15, 0x2426004692130003
xor r15, rax
mov rbx, r14
shl rbx, 0x1b
xor rbx, r14
movabs rax, 0x49098018a13002c
xor rax, rbx
mov qword [rbp + r15 + 0x20], rax
mov qword [rbp + r8 + 0x20], 1
mov rax, qword [rbp + 0x70]
xor al, 0x2e
mov byte [rbp + rcx + 0x20], al
mov rax, r14
shl rax, 0x1d
movabs rcx, 0x12426004f213002a
xor rcx, r14
xor rcx, rax
mov byte [rbp + rcx + 0x20], 0
lea rax, [0x1405e7948]
mov qword [rbp + 0x20], rax
mov rsi, qword [rbp + 0x128]
lea rcx, [rsi + 0xa8]
mov rax, qword [rsi + 0xb8]
mov rdx, qword [rsi + 0xc0]
cmp rdx, rax
jne 0x1402e7053
nop
mov qword [rsp + 0x20], 1
mov edx, 1
mov r9, rdi
call fcn.140143430
jmp 0x1402e70ce
cmp r15d, 6
jae 0x1402e5e1d
cmp r15d, 4
jne 0x1402e610e
nop
mov r12, qword [rbp + 0x80]
mov rbx, qword [r12 + 8]
cmp rbx, qword [r12 + 0x10]
je 0x1402e6a3b
add r12, 8
lea rsi, [rbx + 8]
xorps xmm0, xmm0
movups xmmword [rbx + 0x18], xmm0
mov r13, qword [rbp + 0x88]
mov rdi, qword [r13 + 0x18]
cmp qword [r13 + 0x20], 0x10
jb 0x1402e69ce
mov r13, qword [r13 + 8]
jmp 0x1402e69d2
cmp r15d, 0xa
jbe 0x1402e5e5c
cmp r15d, 0xb
je 0x1402e6501
cmp r15d, 0xd
jne 0x1402e66c5
nop
mov r13d, dword [0x140740d74]
mov rsi, qword [rbp + 0x88]
mov rdx, qword [rsi + 0x38]
add rdx, 0x10
mov edi, r13d
xor edi, 0x96ed2525
lea rcx, [rbp + 0x58]
call fcn.1402e3830
xor r12d, r12d
test byte [rbp + 0x78], 1
movzx esi, byte [rsi + 0x2d]
je 0x1402e6cac
test sil, sil
mov ebx, 0
mov r14d, 0
jne 0x1402e692e
jmp 0x1402e8234
cmp r15d, 3
jne 0x1402e626c
nop
mov eax, dword [0x140740d74]
mov qword [rbp + 0x50], rax
lea rdi, [rbp + 0x38]
mov qword [rbp + 0x30], 0
mov qword [rbp + 0x38], 0xf
mov byte [rbp + 0x20], 0
mov rsi, qword [rbp + 0x128]
mov rcx, rsi
call fcn.140095650
cmp rax, 0xf
jbe 0x1402e6889
lea rcx, [rbp + 0x20]
mov rdx, rax
mov r9, rsi
call fcn.14008c3c0
jmp 0x1402e68aa
jne 0x1402e6342
nop
mov eax, dword [0x140740d74]
mov qword [rbp + 0x70], rax
xorps xmm0, xmm0
mov rdi, qword [rbp + 0x128]
movups xmmword [rdi + 8], xmm0
mov dword [rdi + 0x18], 0x201
mov qword [rdi + 0x20], 6
movups xmmword [rdi + 0x38], xmm0
movups xmmword [rdi + 0x28], xmm0
mov ecx, 0x10
call fcn.1400954c0
mov rsi, rax
call fcn.140095660
nop
mov qword [rsi + 8], rax
mov qword [rdi + 0x40], rsi
mov rcx, qword [rbp + 0x90]
mov qword [rdi + 0x48], rcx
mov qword [rdi + 0x50], 0
mov qword [rbp + 0x28], rax
mov rcx, qword [rax]
mov rdx, qword [rcx + 8]
mov rcx, rax
mov rax, rdx
call qword [0x140704440]
nop
mov dword [rsp + 0x20], 0x69beca86
lea r8, [rbp + 0x20]
call fcn.1402e5970
nop
mov rcx, qword [rax]
mov r8, qword [rcx + 0x40]
mov rcx, rax
mov dl, 0x20
mov rax, r8
call qword [0x140704440]
mov qword [rbp + 0x78], rax
nop
mov rax, qword [rbp + 0x128]
lea rsi, [rax + 0x14]
lea rdi, [rax + 0x10]
lea rbx, [rax + 0x48]
mov rcx, qword [rbp + 0x28]
test rcx, rcx
je 0x1402e6a7b
nop
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [0x140704440]
test rax, rax
je 0x1402e847d
nop
mov rcx, qword [rax]
mov r8, qword [rcx]
mov rcx, rax
mov edx, 1
mov rax, r8
call qword [0x140704440]
jmp 0x1402e847d
je 0x1402e6585
cmp r15d, 8
jne 0x1402e6751
nop
cmp dword [rbp + 0x70], 0
mov eax, 8
lea r14, [rbp - 0x18]
mov cl, 1
mov dword [rbp + 0x68], ecx
je 0x1402e6a87
nop
test byte [0x140790231], 1
jne 0x1402e6a87
xor r14d, r14d
jmp 0x1402e82c5
cmp r15d, 9
jne 0x1402e6405
movabs r14, 0x666666666666666
mov r8, qword [rbp + 0x88]
cmp r8, r14
ja 0x1402e7e8f
nop
mov rdx, qword [rbp + 0x80]
mov rdi, qword [rdx]
mov rax, qword [rdx + 0x10]
sub rax, rdi
sar rax, 3
movabs rcx, 0xcccccccccccccccd
imul rcx, rax
mov rbx, rcx
shr rbx, 1
mov rax, r14
sub rax, rbx
add rbx, rcx
cmp rbx, r8
cmovbe rbx, r8
cmp rcx, rax
cmova rbx, r14
test rdi, rdi
je 0x1402e5f5c
nop
mov esi, dword [0x140740d70]
mov r15, qword [rdx + 8]
cmp rdi, r15
je 0x1402e5efb
nop word [rax + rax]
nop
mov rax, qword [rdi]
mov rax, qword [rax]
mov rcx, rdi
xor edx, edx
call qword [0x140704440]
add rdi, 0x28
cmp rdi, r15
jne 0x1402e5ee0
nop
mov rax, qword [rbp + 0x80]
mov rcx, qword [rax]
mov r9, qword [rax + 0x10]
sub r9, rcx
cmp r9, 0x1000
jb 0x1402e5f33
nop
mov rax, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rax
cmp rcx, 0x20
jae 0x1402e7f70
add r9, 0x27
mov rcx, rax
xor rsi, 0x4b888dd9
mov edx, 0x75b9abd0
mov r8, rsi
call fcn.1402ecc00
xorps xmm0, xmm0
mov rax, qword [rbp + 0x80]
movups xmmword [rax], xmm0
mov qword [rax + 0x10], 0
movabs rax, 0x666666666666667
cmp rbx, rax
jae 0x1402e7e99
lea rax, [rbx*8]
lea rcx, [rax + rax*4]
cmp rbx, 0x67
jb 0x1402e699f
cmp rbx, r14
je 0x1402e7f66
add rcx, 0x27
call fcn.1400954c0
mov rcx, rax
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x1402e6c83
nop
cmp dword [rbp + 0x70], 0
nop
mov rdi, qword [rbp + 0x80]
je 0x1402e5ff2
lea rax, [0x1405ecda0]
mov qword [rdi], rax
mov qword [rdi + 0x90], 0
xorps xmm0, xmm0
movups xmmword [rdi + 0xb8], xmm0
mov qword [rdi + 0xc8], 0
lea rax, [0x1405e89f8]
mov qword [rdi + 0x88], rax
nop
mov rax, qword [rdi]
movsxd rax, dword [rax + 4]
lea rsi, [0x1405ecdb0]
mov qword [rdi + rax], rsi
mov rax, qword [rdi]
movsxd rax, dword [rax + 4]
lea ecx, [rax - 0x88]
mov dword [rdi + rax - 4], ecx
lea rcx, [rdi + 8]
mov rax, qword [rdi]
movsxd rax, dword [rax + 4]
lea rdx, [0x1405e9dc8]
mov qword [rdi + rax], rdx
mov rax, qword [rdi]
movsxd rax, dword [rax + 4]
lea edx, [rax - 0x10]
mov dword [rdi + rax - 4], edx
mov rax, qword [rdi]
movsxd rax, dword [rax + 4]
add rax, rdi
nop
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0x37833970
xor r9d, r9d
call fcn.1402e5970
nop
mov rax, qword [rdi]
movsxd rax, dword [rax + 4]
mov qword [rdi + rax], rsi
mov rax, qword [rdi]
movsxd rax, dword [rax + 4]
lea ecx, [rax - 0x88]
mov dword [rdi + rax - 4], ecx
lea rax, [0x1405e8c48]
mov qword [rdi + 8], rax
mov ecx, 0x10
call fcn.1400954c0
mov rsi, rax
call fcn.140095660
nop
mov qword [rsi + 8], rax
mov rcx, qword [rbp + 0x80]
mov qword [rcx + 0x68], rsi
lea rax, [rcx + 0x10]
mov qword [rcx + 0x20], rax
lea rax, [rcx + 0x18]
mov qword [rcx + 0x28], rax
lea rax, [rcx + 0x30]
mov qword [rcx + 0x40], rax
lea rax, [rcx + 0x38]
mov qword [rcx + 0x48], rax
lea rax, [rcx + 0x50]
mov qword [rcx + 0x58], rax
lea rax, [rcx + 0x54]
mov qword [rcx + 0x60], rax
mov qword [rcx + 0x50], 0
xorps xmm0, xmm0
movups xmmword [rcx + 0x10], xmm0
movups xmmword [rcx + 0x30], xmm0
lea rax, [0x1405e9c88]
mov qword [rcx + 8], rax
mov qword [rcx + 0x70], 0
mov dword [rcx + 0x78], 4
nop
mov qword [rbp + 0x90], rcx
jmp 0x1402e872c
nop
mov rcx, qword [rbp + 0x80]
mov r14, qword [rcx + 0x10]
movabs rdi, 0x7fffffffffffffff
mov rax, r14
xor rax, rdi
mov rdx, qword [rbp + 0x128]
cmp rax, rdx
jb 0x1402e7e94
nop
mov ebx, dword [0x140740d70]
lea rax, [rcx + 0x10]
mov qword [rbp + 0x78], rax
add rdx, r14
lea rax, [rcx + 0x18]
mov qword [rbp + 0x68], rax
mov r15, qword [rcx + 0x18]
movabs rcx, 0x8000000000000000
mov r13, rdx
test rdx, rdx
js 0x1402e61aa
mov rax, r15
shr rax, 1
mov rdx, rax
xor rdx, rdi
cmp rdx, r15
jb 0x1402e61aa
mov rcx, r13
or rcx, 0xf
add rax, r15
cmp rcx, rax
mov rdi, rax
cmova rdi, rcx
lea rcx, [rdi + 1]
cmp rcx, 0x1000
jb 0x1402e6cb6
cmp rcx, 0xffffffffffffffd9
jae 0x1402e7f7f
add rcx, 0x27
call fcn.1400954c0
lea rsi, [rax + 0x27]
and rsi, 0xffffffffffffffe0
mov qword [rsi - 8], rax
nop
mov rax, qword [rbp + 0x78]
mov qword [rax], r13
mov rax, qword [rbp + 0x68]
mov qword [rax], rdi
cmp r15, 0x10
jb 0x1402e6837
nop
mov rax, qword [rbp + 0x80]
mov rdi, qword [rax]
mov rcx, rdi
mov edx, 0xa218ee47
mov r8, r14
mov r9, rsi
call fcn.1402ecc00
add r14, rsi
mov rcx, qword [rbp + 0x88]
mov edx, 0xa218ee47
mov r12, qword [rbp + 0x90]
mov r8, r12
mov r9, r14
call fcn.1402ecc00
mov byte [r12 + r14], 0
lea r9, [r15 + 1]
cmp r9, 0x1000
jb 0x1402e6249
nop
mov rax, qword [rdi - 8]
add rdi, 0xfffffffffffffff8
sub rdi, rax
cmp rdi, 0x20
jae 0x1402e7f75
add r15, 0x28
mov r9, r15
mov rdi, rax
xor ebx, 0x4b888dd9
mov rcx, rdi
mov edx, 0x3e9146d0
mov r8, rbx
call fcn.1402ecc00
nop
mov rdi, qword [rbp + 0x80]
jmp 0x1402e6878
nop
mov rcx, qword [rbp + 0x90]
mov rax, qword [rcx]
mov ebx, dword [rax + 4]
movsxd r14, ebx
mov rax, qword [rcx + r14 + 0x40]
mov rcx, qword [rax + 8]
mov qword [rbp + 0x60], rcx
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [0x140704440]
nop
mov dword [rsp + 0x20], 0x69beca86
lea r8, [rbp + 0x58]
call fcn.1402e5970
nop
mov rcx, qword [rax]
mov r8, qword [rcx + 0x40]
mov rcx, rax
mov dl, 0xa
mov rax, r8
call qword [0x140704440]
mov r12d, eax
mov rcx, qword [rbp + 0x60]
test rcx, rcx
je 0x1402e8885
nop
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [0x140704440]
test rax, rax
je 0x1402e6bf5
mov ebx, 2
mov rcx, qword [rbp + 0x128]
mov qword [rbp + 0x48], rcx
mov rcx, qword [rbp + 0x90]
mov qword [rbp + 0x18], rcx
test dword [rbp + 0x120], 0x200
jne 0x1402e6cf4
nop
mov rcx, qword [rax]
mov r8, qword [rcx]
mov rcx, rax
mov edx, 1
mov rax, r8
call qword [0x140704440]
lea r14, [rbp + 0x20]
xor ebx, ebx
nop
mov r13, qword [rbp + 0x70]
mov rax, qword [rbp + 0x50]
mov edi, eax
mov esi, r12d
jmp 0x1402e8879
cmp r15d, 0x11
jbe 0x1402e694d
nop
mov rcx, qword [rbp + 0x128]
mov rsi, qword [rcx]
mov r10, qword [rcx + 8]
sub r10, rsi
sar r10, 3
movabs rax, 0xcccccccccccccccd
imul r10, rax
inc r10
mov rcx, qword [rcx + 0x10]
sub rcx, rsi
sar rcx, 3
imul rcx, rax
mov r8, rcx
shr r8, 1
movabs rax, 0x666666666666666
mov rdx, rax
sub rdx, r8
add r8, rcx
cmp r8, r10
mov r9, r10
mov qword [rbp + 0x70], r10
cmovbe r8, r10
cmp rcx, rdx
cmova r8, rax
cmp r8, rax
nop
mov qword [rbp + 0x68], r8
ja 0x1402e7f61
nop
mov ecx, dword [0x140740d74]
mov qword [rbp + 0x50], rcx
mov rdx, r8
lea rcx, [r8*8]
lea rcx, [rcx + rcx*4]
cmp r8, 0x67
jb 0x1402e6b7b
cmp rdx, rax
je 0x1402e7f7a
add rcx, 0x27
call fcn.1400954c0
lea r15, [rax + 0x27]
and r15, 0xffffffffffffffe0
mov qword [r15 - 8], rax
jmp 0x1402e7472
nop
mov rcx, qword [rbp + 0x88]
mov rax, qword [rcx]
movsxd rdi, dword [rax + 4]
cmp dword [rcx + rdi + 0x10], 0
jne 0x1402e84c7
lea r13, [rcx + rdi]
test byte [r13 + 0x18], 2
je 0x1402e84c7
nop
mov esi, dword [0x140740d74]
mov rcx, qword [r13 + 0x48]
mov rax, qword [rcx]
mov rax, qword [rax + 0x68]
nop
call qword [0x140704440]
cmp eax, 0xffffffff
je 0x1402e7a11
mov eax, dword [rbp + 0x120]
test al, 0x20
jne 0x1402e84c7
add r13, 0x48
lea r12, [rbp + 0x58]
lea rsi, [rbp + 0x58]
lea r14, [rbp - 0x18]
mov rbx, rsi
jmp 0x1402e69fd
nop
mov ebx, dword [0x140740ca0]
mov rcx, qword [rbp + 0x78]
call fcn.140095650
mov r9, rax
mov r8, qword [rbp + 0x88]
mov rax, qword [r8]
movsxd rcx, dword [rax + 4]
mov rcx, qword [r8 + rcx + 0x28]
xor edx, edx
mov r10, rcx
mov qword [rbp + 0x18], r9
sub r10, r9
mov r14d, 0
mov qword [rbp + 0x48], r10
cmovg r14, r10
test rcx, rcx
cmovle r14, rdx
mov qword [rbp + 0x58], r8
movsxd rax, dword [rax + 4]
mov rcx, qword [r8 + rax + 0x48]
test rcx, rcx
je 0x1402e64dd
nop
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [0x140704440]
nop
mov rdx, qword [rbp + 0x88]
mov rax, qword [rdx]
movsxd rax, dword [rax + 4]
cmp dword [rdx + rax + 0x10], 0
je 0x1402e6a9c
nop
mov byte [rbp + 0x60], 0
jmp 0x1402e6cf9
nop
mov r8, qword [rbp + 0x90]
mov rax, qword [r8]
movsxd rcx, dword [rax + 4]
mov rcx, qword [r8 + rcx + 0x28]
xor edx, edx
mov rdi, rcx
sub rdi, qword [rbp + 0x128]
mov esi, 0
cmova rsi, rdi
mov r9d, dword [0x140740ca0]
mov qword [rbp + 0x78], r9
test rcx, rcx
cmovle rsi, rdx
mov qword [rbp - 0x28], r8
movsxd rax, dword [rax + 4]
mov rcx, qword [r8 + rax + 0x48]
test rcx, rcx
je 0x1402e655c
nop
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [0x140704440]
nop
mov rdx, qword [rbp + 0x90]
mov rax, qword [rdx]
movsxd rax, dword [rax + 4]
cmp dword [rdx + rax + 0x10], 0
je 0x1402e6ae2
nop
mov byte [rbp - 0x20], 0
mov ebx, 4
jmp 0x1402e7a63
nop
mov eax, dword [0x140740ca4]
mov esi, 0xa221ceb1
xor rsi, rax
lea r8, [rbp + 0x58]
mov rcx, rsi
mov edx, 0x3b538b15
xor r9d, r9d
call fcn.1402ecc00
mov rax, qword [0x14078ffd8]
mov qword [rbp + 0x20], rax
cmp qword [0x140793a90], 0
jne 0x1402e65fc
lea r8, [rbp - 0x18]
mov rcx, rsi
mov edx, 0x15073215
xor r9d, r9d
call fcn.1402ecc00
cmp qword [0x140793a90], 0
jne 0x1402e65f3
nop
movsxd rax, dword [0x140793a78]
inc rax
mov dword [0x140793a78], eax
mov qword [0x140793a90], rax
lea rcx, [rbp - 0x18]
call fcn.140095690
nop
mov rsi, qword [0x140793a90]
mov rax, qword [rbp + 0x80]
mov rax, qword [rax + 8]
cmp qword [rax + 0x18], rsi
jbe 0x1402e662a
nop
mov rcx, qword [rax + 0x10]
mov rcx, qword [rcx + rsi*8]
mov rdx, rcx
test rcx, rcx
jne 0x1402e66af
nop
cmp byte [rax + 0x24], 0
je 0x1402e664e
call fcn.1400956a0
nop
cmp qword [rax + 0x18], rsi
jbe 0x1402e664e
nop
mov rax, qword [rax + 0x10]
mov rax, qword [rax + rsi*8]
mov rdx, rax
test rax, rax
jne 0x1402e66af
nop
mov rax, qword [rbp + 0x20]
mov rdx, rax
test rax, rax
jne 0x1402e66af
lea r9, [rbp + 0x20]
mov edx, 0xa3d60d7
mov r8, qword [rbp + 0x80]
call fcn.1402e3b70
cmp rax, 0xffffffffffffffff
je 0x1402e7f89
nop
mov rcx, qword [rbp + 0x20]
nop
mov qword [rbp + 0x88], rcx
call fcn.140095680
nop
mov rcx, qword [rbp + 0x88]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [0x140704440]
mov rax, qword [rbp + 0x20]
mov rdx, rax
mov qword [0x14078ffd8], rax
nop
mov qword [rbp + 0x90], rdx
lea rcx, [rbp + 0x58]
call fcn.140095690
jmp 0x1402e872c
xorps xmm0, xmm0
mov rax, qword [rbp + 0x80]
movups xmmword [rax], xmm0
mov qword [rax + 0x10], 0
mov rcx, qword [rbp + 0x90]
mov rdi, qword [rcx]
mov r13, qword [rcx + 8]
cmp rdi, r13
je 0x1402e6b6f
mov rcx, r13
sub rcx, rdi
mov rax, rcx
sar rax, 3
movabs rsi, 0xcccccccccccccccd
imul rsi, rax
movabs rax, 0x666666666666667
cmp rsi, rax
jae 0x1402e7f6b
mov eax, dword [rbp + 0x120]
test al, al
js 0x1402e872c
cmp rsi, 0x67
jb 0x1402e701a
add rcx, 0x27
call fcn.1400954c0
lea rdx, [rax + 0x27]
and rdx, 0xffffffffffffffe0
mov qword [rdx - 8], rax
jmp 0x1402e7022
mov eax, 0xffffffff
mov rcx, qword [rbp + 0x78]
test byte [rcx + 0x70], 2
jne 0x1402e7ca8
xor eax, eax
cmp dword [rbp + 0x50], 0xffffffff
je 0x1402e7ca8
nop
test byte [0x140790231], 1
jne 0x1402e7ca8
nop
mov r14d, dword [0x140740d70]
mov rcx, qword [rbp + 0x78]
mov rax, qword [rcx + 0x40]
mov rcx, qword [rcx + 0x58]
mov r15, qword [rax]
mov eax, dword [rcx]
test r15, r15
je 0x1402e7979
test eax, eax
jle 0x1402e7979
dec eax
mov dword [rcx], eax
mov r8, qword [rbp + 0x78]
mov rax, qword [r8 + 0x40]
mov rcx, qword [rax]
lea rdx, [rcx + 1]
mov qword [rax], rdx
mov rax, qword [rbp + 0x88]
mov byte [rcx], al
inc r15
mov qword [r8 + 0x68], r15
jmp 0x1402e7ca8
lea r9, [rbp + 0x28]
nop
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0x16cec70b
call fcn.1402e5970
nop
mov rdx, qword [rbp + 0x40]
cmp rdx, 0x10
jb 0x1402e84ec
nop
mov rcx, qword [rbp + 0x28]
lea rbx, [rdx + 1]
cmp rbx, 0x1000
jb 0x1402e6a94
nop
mov r8, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, r8
cmp rcx, 0x20
jae 0x1402e6c4c
mov rax, rsi
add rdx, 0x28
mov rbx, rdx
mov rcx, r8
jmp 0x1402e84d7
nop
mov rdi, qword [rbp + 0x80]
mov rcx, rdi
mov edx, 0xa218ee47
mov r8, r14
mov r9, rsi
call fcn.1402ecc00
add r14, rsi
mov rcx, qword [rbp + 0x88]
mov edx, 0xa218ee47
mov rbx, qword [rbp + 0x90]
mov r8, rbx
mov r9, r14
call fcn.1402ecc00
mov byte [rbx + r14], 0
nop
mov qword [rdi], rsi
nop
mov qword [rbp + 0x90], rdi
jmp 0x1402e872c
nop
mov qword [rbp + 0x30], rax
lea r9, [rbp + 0x20]
mov rcx, rsi
mov edx, 0xa218ee47
mov r8, rax
mov rsi, rax
call fcn.1402ecc00
mov byte [rbp + rsi + 0x20], 0
lea rsi, [rbp - 0x18]
mov r8d, 0x10
mov rcx, qword [rbp + 0x90]
mov edx, 0xa218ee47
mov r9, rsi
call fcn.1402ecc00
nop
mov dword [rsp + 0x20], 0x493b8111
lea r9, [rbp + 0x20]
mov rcx, qword [rbp + 0x80]
mov r8, rsi
call fcn.1402e5970
nop
mov rax, qword [rdi]
cmp rax, 0x10
jb 0x1402e6d5f
nop
mov rcx, qword [rbp + 0x20]
lea r9, [rax + 1]
cmp r9, 0x1000
jb 0x1402e6d49
nop
mov rdx, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rdx
cmp rcx, 0x20
jae 0x1402e7e64
nop
mov ecx, dword [rbp + 0x120]
test cl, 0x20
jne 0x1402e6d3f
nop
mov rcx, qword [rbp + 0x88]
add rcx, 0x18
nop
mov dword [rsp + 0x20], 0x59061562
call fcn.1402e5970
jmp 0x1402e85f6
nop
mov rax, qword [rbp + 0x88]
mov rsi, qword [rax + 0x10]
cmp qword [rax + 0x18], 0x10
jb 0x1402e696a
mov rax, qword [rax]
mov qword [rbp + 0x88], rax
mov ebx, dword [0x140740ca4]
cmp rsi, 0x10
jae 0x1402e6b27
lea r9, [rbp - 0x18]
mov r8d, 0x10
mov rcx, qword [rbp + 0x88]
mov edx, 0xa218ee47
call fcn.1402ecc00
mov edi, 0xf
jmp 0x1402e6f1e
test rbx, rbx
je 0x1402e6c81
call fcn.1400954c0
test dword [rbp + 0x120], 0x100
je 0x1402e6c83
lea rsi, [rbp - 0x20]
lea r12, [rbp - 0x18]
lea rbx, [rbp - 0x28]
jmp 0x1402e5c30
add r13, 8
lea r14, [rbx + 0x18]
cmp rdi, 0xf
ja 0x1402e69fd
mov r8d, 0x10
mov rcx, r13
mov edx, 0xa218ee47
mov r9, rsi
call fcn.1402ecc00
mov r15d, 0xf
jmp 0x1402e6c35
mov rax, rdi
or rax, 0xf
movabs r15, 0x7fffffffffffffff
cmp rax, r15
cmovb r15, rax
cmp rax, 0xfff
jb 0x1402e6c14
lea rcx, [r15 + 0x28]
call fcn.1400954c0
lea r9, [rax + 0x27]
and r9, 0xffffffffffffffe0
mov qword [r9 - 8], rax
jmp 0x1402e6c20
mov eax, dword [rbp + 0x120]
test al, al
js 0x1402e6c5f
nop
mov rax, qword [rbp + 0x80]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0x67b34a52
mov rcx, qword [rbp + 0x88]
mov r9, rbx
call fcn.1402e5970
xor eax, eax
mov qword [rbp + 0x90], rax
jmp 0x1402e872c
mov dword [rbp + 0x68], 0
jmp 0x1402e8318
mov rcx, qword [rbp + 0x70]
mov qword [rbp + 0x50], rcx
jmp 0x1402e73e9
mov rax, rsi
jmp 0x1402e84d7
nop
mov rcx, qword [rdx + rax + 0x50]
test rcx, rcx
lea rax, [rbp - 0x18]
je 0x1402e6cdd
cmp rcx, rdx
je 0x1402e6cdd
call fcn.1400c4410
nop
mov rcx, qword [rbp + 0x88]
mov rax, qword [rcx]
movsxd rax, dword [rax + 4]
cmp dword [rcx + rax + 0x10], 1
movzx eax, byte [0x1407912b8]
adc al, 0
mov byte [rbp + 0x60], al
jmp 0x1402e6cf9
nop
mov rcx, qword [rdx + rax + 0x50]
test rcx, rcx
je 0x1402e6d7d
cmp rcx, rdx
je 0x1402e6d7d
call fcn.1400c4410
nop
mov rcx, qword [rbp + 0x90]
mov rax, qword [rcx]
movsxd rax, dword [rax + 4]
cmp dword [rcx + rax + 0x10], 0
sete byte [rbp - 0x20]
mov ebx, 4
jne 0x1402e7a63
jmp 0x1402e6d82
mov rax, rsi
or rax, 0xf
movabs rdi, 0x7fffffffffffffff
cmp rax, rdi
cmovb rdi, rax
mov dword [0x140740c9c], 0x9f7e6b7c
cmp rax, 0xfff
jb 0x1402e6ef8
lea rcx, [rdi + 0x28]
call fcn.1400954c0
lea r9, [rax + 0x27]
and r9, 0xffffffffffffffe0
mov qword [r9 - 8], rax
jmp 0x1402e6f04
mov qword [rbp + 0x90], rax
jmp 0x1402e872c
test rdx, rdx
je 0x1402e746f
call fcn.1400954c0
mov r15, rax
jmp 0x1402e7472
nop
mov qword [rbp + 0x70], rax
cmp byte [rcx + 0xc8], 0
je 0x1402e7d9c
cmp qword [rbp + 0x90], 2
jl 0x1402e79d8
nop
movzx eax, byte [0x140740235]
mov rcx, qword [rbp + 0x70]
mov r8d, ecx
xor r8b, 0x34
cmp al, r8b
je 0x1402e7d19
mov rax, qword [rbp + 0x70]
mov ecx, eax
xor cl, 0x20
mov edx, eax
xor dl, 2
mov eax, ecx
lock cmpxchg byte [0x140740235], dl
je 0x1402e7cb6
cmp al, r8b
jne 0x1402e6bdb
jmp 0x1402e7d19
lea rax, [rbp - 0x18]
mov qword [rbp + 0x78], rax
mov qword [rbp + 0x68], rax
xor esi, esi
xor edi, edi
mov r15, qword [rbp + 0x128]
mov r13, r14
jmp 0x1402e6cca
lea rcx, [r15 + 1]
call fcn.1400954c0
mov r9, rax
nop
mov qword [rsi], r9
lea r8, [rdi + 1]
mov rcx, r13
mov edx, 0xa218ee47
call fcn.1402ecc00
nop
mov qword [r14], rdi
mov qword [rbx + 0x20], r15
lea rax, [0x1405e7948]
mov qword [rbx], rax
add qword [r12], 0x28
mov eax, dword [rbp + 0x120]
test al, 0x40
je 0x1402e84c7
call fcn.1400954e0
lea r8, [rbp + 0x58]
lea r9, [rbp - 0x18]
mov rbx, qword [rbp + 0x50]
mov r10d, ebx
mov rax, qword [rbp + 0x78]
mov r14, qword [rbp + 0x90]
mov r12d, ebx
jmp 0x1402e81be
xor eax, eax
nop
mov rdx, qword [rbp + 0x80]
mov qword [rdx], rax
mov qword [rdx + 8], rax
lea rcx, [rbx + rbx*4]
lea rax, [rax + rcx*8]
mov qword [rdx + 0x10], rax
xor eax, eax
mov qword [rbp + 0x90], rax
jmp 0x1402e872c
xor ebx, ebx
xor r14d, r14d
jmp 0x1402e8234
test rcx, rcx
je 0x1402e7ae7
call fcn.1400954c0
mov rsi, rax
xor r12d, r12d
mov eax, dword [rbp + 0x120]
test al, 0x20
je 0x1402e61bf
jmp 0x1402e8885
mov rcx, qword [rbp + 0x78]
mov r12d, ecx
test dword [rbp + 0x120], 0x200
je 0x1402e6311
nop
mov byte [rbp + 0x60], 1
nop
cmp byte [rbp + 0x60], 0
je 0x1402e6d34
nop
mov rcx, qword [rbp + 0x88]
mov rax, qword [rcx]
movsxd r12, dword [rax + 4]
mov eax, 0x1c0
and eax, dword [rcx + r12 + 0x18]
cmp eax, 0x40
je 0x1402e8100
test r14, r14
jle 0x1402e8100
lea r14, [rbp + 0x60]
jmp 0x1402e805e
mov r12d, 4
jmp 0x1402e85a7
add rax, 0x28
mov r9, rax
mov rcx, rdx
nop
mov r8, qword [rbp + 0x50]
xor r8d, 0x3c722f3f
mov edx, 0x52c0c650
call fcn.1402ecc00
lea rax, [0x1405e8198]
mov rcx, qword [rbp + 0x80]
mov qword [rcx], rax
nop
mov qword [rbp + 0x90], rcx
jmp 0x1402e872c
nop
mov byte [rbp - 0x20], 1
test rsi, rsi
je 0x1402e6e30
nop
mov rdx, qword [rbp + 0x90]
mov rax, qword [rdx]
movsxd rax, dword [rax + 4]
mov ecx, 0x1c0
and ecx, dword [rdx + rax + 0x18]
cmp ecx, 0x40
je 0x1402e6e30
xor esi, esi
jmp 0x1402e6dd5
dec r8d
mov dword [rdx], r8d
mov rcx, qword [rcx + 0x40]
mov rdx, qword [rcx]
lea r8, [rdx + 1]
mov qword [rcx], r8
mov byte [rdx], al
dec rdi
mov dword [0x140740c94], 0xb9a8c814
je 0x1402e6e30
nop
mov rdx, qword [rbp + 0x90]
mov rax, qword [rdx]
movsxd rax, dword [rax + 4]
mov rcx, qword [rdx + rax + 0x48]
movzx eax, byte [rdx + rax + 0x58]
mov rdx, qword [rcx + 0x40]
cmp qword [rdx], 0
je 0x1402e6e05
nop
mov rdx, qword [rcx + 0x58]
mov r8d, dword [rdx]
test r8d, r8d
jg 0x1402e6db0
movzx edx, al
mov rax, qword [rcx]
mov rax, qword [rax + 0x18]
mov r8, qword [0x140704440]
mov dword [rbp + 0xc], 0
call r8
cmp eax, 0xffffffff
jne 0x1402e6dc6
mov r14d, 4
mov rsi, rdi
jmp 0x1402e6e97
nop
mov rcx, qword [rbp + 0x90]
mov rax, qword [rcx]
movsxd rax, dword [rax + 4]
mov rcx, qword [rcx + rax + 0x48]
mov rax, qword [rcx]
mov rax, qword [rax + 0x48]
mov r9, qword [0x140704440]
mov dword [rbp + 0xc], 0
nop
mov rdx, qword [rbp + 0x88]
mov r8, qword [rbp + 0x128]
call r9
mov ebx, 4
xor r14d, r14d
cmp rax, qword [rbp + 0x128]
je 0x1402e6e97
jmp 0x1402e7a4b
dec r8d
mov dword [rdx], r8d
mov rcx, qword [rcx + 0x40]
mov rdx, qword [rcx]
lea r8, [rdx + 1]
mov qword [rcx], r8
mov byte [rdx], al
sub rsi, 1
jb 0x1402e7a48
nop
mov rdx, qword [rbp + 0x90]
mov rax, qword [rdx]
movsxd rax, dword [rax + 4]
mov rcx, qword [rdx + rax + 0x48]
movzx eax, byte [rdx + rax + 0x58]
mov rdx, qword [rcx + 0x40]
cmp qword [rdx], 0
je 0x1402e6ed1
nop
mov rdx, qword [rcx + 0x58]
mov r8d, dword [rdx]
test r8d, r8d
jg 0x1402e6e81
movzx edx, al
mov rax, qword [rcx]
mov rax, qword [rax + 0x18]
mov r8, qword [0x140704440]
mov dword [rbp + 0xc], r14d
call r8
cmp eax, 0xffffffff
jne 0x1402e6e97
mov ebx, 4
jmp 0x1402e7a4b
lea rcx, [rdi + 1]
call fcn.1400954c0
mov r9, rax
nop
mov qword [rbp - 0x18], r9
lea r8, [rsi + 1]
mov rcx, qword [rbp + 0x88]
mov edx, 0xa218ee47
call fcn.1402ecc00
nop
mov qword [rbp - 8], rsi
mov qword [rbp], rdi
lea rdi, [rbp - 0x28]
mov r8d, 0x10
mov rcx, qword [rbp + 0x80]
mov edx, 0xa218ee47
mov r9, rdi
call fcn.1402ecc00
lea rsi, [rbp + 0x20]
lea r8, [rbp - 0x18]
mov rcx, rsi
mov rdx, rdi
call fcn.14008c500
cmp qword [rbp + 0x38], 0x10
jb 0x1402e6f63
mov rsi, qword [rbp + 0x20]
lea rax, [0x1405e7b68]
mov rdi, qword [rbp + 0x90]
mov qword [rdi], rax
lea rdx, [rdi + 8]
xorps xmm0, xmm0
movups xmmword [rdi + 8], xmm0
mov qword [rbp + 0x58], rsi
mov byte [rbp + 0x60], 1
lea rcx, [rbp + 0x58]
call fcn.140095510
lea rax, [0x1405e8218]
mov qword [rdi], rax
mov rax, qword [rbp + 0x38]
cmp rax, 0x10
jb 0x1402e6fe9
nop
mov rcx, qword [rbp + 0x20]
lea r9, [rax + 1]
cmp r9, 0x1000
jb 0x1402e6fd6
nop
mov rdx, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rdx
cmp rcx, 0x20
jae 0x1402e7f8e
add rax, 0x28
mov r9, rax
mov rcx, rdx
mov r8d, 0xaeb71622
xor r8, rbx
mov edx, 0xc7711210
call fcn.1402ecc00
lea rax, [0x1405e81d8]
mov rcx, qword [rbp + 0x90]
mov qword [rcx], rax
lea r9, [rcx + 0x18]
mov r8d, 0x10
mov rcx, qword [rbp + 0x80]
mov edx, 0xa218ee47
call fcn.1402ecc00
jmp 0x1402e872c
call fcn.1400954c0
mov rdx, rax
nop
mov rcx, qword [rbp + 0x80]
lea rax, [rcx + 8]
mov qword [rbp + 0x78], rax
mov qword [rcx], rdx
mov qword [rcx + 8], rdx
lea rax, [rsi + rsi*4]
lea rax, [rdx + rax*8]
mov qword [rcx + 0x10], rax
mov qword [rbp + 0x20], rcx
nop
mov qword [rbp + 0x68], rdx
jmp 0x1402e874e
mov r8, r14
shl r8, 0x20
or r8, r14
movabs r9, 0x6090ab1e30caeb3a
xor r9, r8
mov r8, r14
shl r8, 0x23
or r8, r14
movabs r10, 0x621baa2530caeb3a
xor r10, r8
mov r11, rax
sub r11, r10
lea r8, [r9 + r11]
add r9, r11
inc r9
mov qword [rsi + 0xb8], r9
mov r9, r14
shl r9, 0x1c
movabs r10, 0x9213002a213002c
xor r10, r14
xor r10, r9
cmp rdx, r10
jbe 0x1402e70c2
mov rcx, qword [rbp + 0x128]
mov rcx, qword [rcx + 0xa8]
movzx edx, byte [rdi]
mov byte [rcx + rax], dl
mov byte [rcx + r8 + 1], 0
nop
mov rax, qword [rbp + r15 + 0x20]
mov rcx, r14
shl rcx, 0x23
or rcx, r14
movabs rdx, 0x909801189213002c
xor rdx, rcx
cmp rax, rdx
jbe 0x1402e71d4
nop
mov rcx, qword [rdi]
lea rdx, [rax + 1]
mov r9, r14
shl r9, 0x20
or r9, r14
movabs r8, 0x9213002392130fdc
xor r8, r9
cmp rdx, r8
jbe 0x1402e71aa
nop
mov r8, qword [rcx - 8]
mov rdx, r14
shl rdx, 0x1f
xor rdx, r14
cmp byte [0x140790231], 0
jne 0x1402e7194
movabs r10, 0xfb6f67fe75ecffdb
xor rbx, r10
add rbx, rcx
movabs rcx, 0x513c29eeea56f489
xor rcx, rdx
mov r10, r14
shl r10, 0x1e
movabs r11, 0xc34e960855a90b76
xor r11, r14
xor r11, r10
add r11, rcx
sub r11, r8
inc r11
mov rcx, r11
xor rcx, rbx
and r11, rbx
lea rcx, [rcx + r11*2]
movabs r10, 0x9213002392130003
xor r9, r10
cmp rcx, r9
jae 0x1402e8050
movabs rcx, 0x490980111213000b
xor rdx, rcx
add rax, rdx
mov rdx, rax
mov rcx, r8
nop
mov rax, qword [rbp + 0x70]
mov r8d, eax
xor r8d, 0x4b888dd9
mov r9, qword [0x140740e58]
mov eax, dword [0x140740e38]
sub eax, dword [rbp + 0x78]
cdqe
add rax, r9
call qword [0x140704440]
nop
mov r11, qword [rbp + 0x128]
lea rax, [r11 + 0x68]
mov qword [rbp + 0x18], rax
mov rax, r14
shl rax, 0x21
or rax, r14
movabs rdx, 0xc8e6c204cee34673
xor rdx, rax
mov rax, r14
shl rax, 0x23
or rax, r14
mov r9, r14
shl r9, 0x1b
xor r9, r14
movabs rbx, 0x17afa5bc291cb98c
xor rbx, r9
mov rcx, r14
shl rcx, 0x20
or rcx, r14
movabs r10, 0xcf58bc499af14012
xor r10, rcx
movabs r8, 0xa624db947d0ebfed
xor r8, r9
add r8, r10
mov r9, r14
shl r9, 0x24
or r9, r14
movabs r10, 0x6ab2ffe73956cf00
xor r10, r9
add r10, rdx
mov rdx, r14
shl rdx, 0x22
or rdx, r14
movabs r9, 0xfc3102a4c6a930ff
xor r9, rdx
movabs rdx, 0xb93bd7f94f07fe93
xor rdx, rax
add rdx, r9
lea rsi, [r11 + 0xa8]
add rdx, r10
movabs r9, 0xd33c8c17f9c5ee33
xor r9, rcx
add r9, r8
lea r12, [r11 + 0xb8]
add r9, rdx
movabs r13, 0xbbb0d6c24f07fe93
xor r13, rcx
movabs rdx, 0x2e4872d3063a11cc
xor rdx, rax
mov rcx, qword [r11 + 0xb8]
add rdx, rbx
add rdx, r9
sub rdx, r13
sub rdx, rcx
mov rax, qword [r11 + 0xc0]
lea r8, [rdx + rax]
add r8, 4
mov rdx, qword [rbp + 0x90]
cmp r8, rdx
lea r8, [r11 + 0xc0]
mov qword [rbp - 0x38], r8
jae 0x1402e732b
nop
mov rcx, qword [0x140740e98]
mov eax, dword [0x140740e20]
sub eax, dword [rbp + 0x78]
cdqe
add rax, rcx
mov qword [rsp + 0x20], rdx
mov rcx, rsi
mov r9, qword [rbp + 0x80]
call qword [0x140704440]
jmp 0x1402e73b2
mov r9, rcx
xor r9, rdx
mov r8, rcx
and r8, rdx
lea r15, [r9 + r8*2]
mov qword [r12], r15
mov rdx, r14
shl rdx, 0x1e
movabs r8, 0x2484c0085213002c
xor r8, r14
xor r8, rdx
mov rdi, rsi
cmp rax, r8
jbe 0x1402e7361
mov rdi, qword [rsi]
add rcx, rdi
mov rdx, qword [0x140740e70]
mov r14d, dword [0x140740e2c]
sub r14d, dword [rbp + 0x78]
movsxd rax, r14d
add rax, rdx
mov rdx, qword [rbp + 0x80]
mov r8, qword [rbp + 0x90]
call qword [0x140704440]
mov byte [rdi + r15], 0
lea rdx, [rbp + 0x58]
lea rdi, [rbp + 0x20]
lea r8, [rbp - 0x18]
nop
test dword [rbp + 0x120], 0x200
jne 0x1402e7c61
nop
mov ebx, dword [rbp + 0x70]
mov rax, rbx
shl rax, 0x1f
movabs rcx, 0x49098011121300eb
xor rcx, rbx
xor rcx, rax
cmp qword [r12], rcx
ja 0x1402e7400
nop
cmp byte [rbp + 0x68], 0
jne 0x1402e7400
mov dword [rbp + 0x68], 0
mov rax, qword [rbp + 0x70]
mov r14, qword [rbp + 0x48]
mov qword [rbp + 0x70], rax
mov eax, dword [rbp + 0x120]
test al, 0x20
jne 0x1402e7d9c
jmp 0x1402e8326
nop
mov rax, qword [rbp + 0x18]
mov rax, qword [rax]
mov rcx, rbx
shl rcx, 0x1d
movabs rdx, 0x12426004f213002c
xor rdx, rbx
xor rdx, rcx
mov rcx, qword [rbp - 0x38]
cmp qword [rcx], rdx
mov r14, qword [rbp + 0x48]
jbe 0x1402e742f
mov rsi, qword [rsi]
mov rcx, rsi
call qword [0x140704440]
mov rax, rbx
shl rax, 0x21
or rax, rbx
movabs rcx, 0x242600469213002c
xor rcx, rax
mov rdx, qword [rbp + 0x128]
cmp qword [rdx + 0xc0], rcx
jbe 0x1402e79be
mov rax, qword [rdx + 0xa8]
jmp 0x1402e79c5
xor r15d, r15d
nop
mov rax, qword [rbp + 0x88]
sub rax, rsi
xorps xmm0, xmm0
mov r12, rax
movups xmmword [r15 + rax + 0x18], xmm0
mov r14, qword [rbp + 0x90]
mov rsi, qword [r14 + 0x18]
cmp qword [r14 + 0x20], 0x10
jb 0x1402e74a1
mov r14, qword [r14 + 8]
jmp 0x1402e74a5
add r14, 8
mov rax, r12
lea rcx, [r15 + r12]
add rcx, 0x28
mov qword [rbp + 0x48], rcx
lea rdi, [r15 + r12]
add rdi, 8
cmp rsi, 0xf
nop
mov qword [rbp + 0x80], r15
ja 0x1402e74e7
mov r8d, 0x10
mov rcx, r14
mov edx, 0xa218ee47
mov r9, rdi
call fcn.1402ecc00
mov ebx, 0xf
jmp 0x1402e755a
mov rax, rsi
or rax, 0xf
movabs rbx, 0x7fffffffffffffff
cmp rax, rbx
cmovb rbx, rax
cmp rax, 0xfff
jb 0x1402e7529
lea rcx, [rbx + 0x28]
mov rax, qword [rbp + 0x48]
mov qword [rbp - 0x30], rax
call fcn.1400954c0
mov r9, rax
add r9, 0x27
and r9, 0xffffffffffffffe0
mov qword [r9 - 8], rax
jmp 0x1402e753d
lea rcx, [rbx + 1]
mov rax, qword [rbp + 0x48]
mov qword [rbp - 0x30], rax
call fcn.1400954c0
mov r9, rax
nop
mov qword [rdi], r9
lea r8, [rsi + 1]
mov rcx, r14
mov edx, 0xa218ee47
call fcn.1402ecc00
nop
mov r15, qword [rbp + 0x80]
add r12, r15
mov qword [r12 + 0x18], rsi
mov qword [r12 + 0x20], rbx
lea rax, [0x1405e7948]
mov qword [rbp + 0x90], r12
mov qword [r12], rax
mov rax, qword [rbp + 0x128]
mov rdi, qword [rax]
mov r13, qword [rax + 8]
mov rax, qword [rbp + 0x88]
cmp r13, rax
je 0x1402e77c2
cmp rdi, rax
je 0x1402e7687
xor eax, eax
xorps xmm6, xmm6
movabs r13, 0x7fffffffffffffff
mov rsi, qword [rbp + 0x80]
jmp 0x1402e7604
mov r8d, 0x10
mov rcx, rbx
mov edx, 0xa218ee47
mov r9, r14
call fcn.1402ecc00
mov r12d, 0xf
nop
mov qword [rsi + 0x18], r15
mov qword [rsi + 0x20], r12
lea rax, [0x1405e7948]
mov qword [rsi], rax
add rsi, 0x28
add rdi, 0x28
mov rax, qword [rbp + 0x78]
add rax, 0xffffffffffffffd8
cmp rdi, qword [rbp + 0x88]
je 0x1402e7687
nop
movups xmmword [rsi + 0x18], xmm6
cmp qword [rdi + 0x20], 0x10
mov qword [rbp + 0x78], rax
jb 0x1402e761a
mov rbx, qword [rdi + 8]
jmp 0x1402e761e
lea rbx, [rdi + 8]
lea r14, [rsi + 8]
mov r15, qword [rdi + 0x18]
cmp r15, 0xf
jbe 0x1402e75b8
mov rax, r15
or rax, 0xf
cmp rax, r13
mov r12, r13
cmovb r12, rax
cmp rax, 0xfff
jb 0x1402e7660
lea rcx, [r12 + 0x28]
call fcn.1400954c0
mov rcx, rax
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x1402e766a
lea rcx, [r12 + 1]
call fcn.1400954c0
nop
mov qword [r14], rax
lea r8, [r15 + 1]
mov rcx, rbx
mov edx, 0xa218ee47
mov r9, rax
call fcn.1402ecc00
jmp 0x1402e75d4
nop
cmp byte [0x140790231], 0
nop
mov rcx, qword [rbp + 0x88]
jne 0x1402e78af
nop
mov rax, qword [rbp + 0x128]
mov r14, qword [rax + 8]
cmp r14, rcx
je 0x1402e78af
xor r13d, r13d
xorps xmm6, xmm6
movabs rsi, 0x7fffffffffffffff
jmp 0x1402e771a
mov r8d, 0x10
mov rcx, rdi
mov edx, 0xa218ee47
mov r9, rbx
call fcn.1402ecc00
mov r12d, 0xf
nop
mov rax, qword [rbp + 0x90]
mov qword [rax + r13 + 0x40], r15
mov qword [rax + r13 + 0x48], r12
lea rcx, [0x1405e7948]
mov qword [rax + r13 + 0x28], rcx
mov rcx, qword [rbp + 0x88]
lea rax, [rcx + r13]
add rax, 0x28
add r13, 0x28
cmp rax, r14
je 0x1402e78af
nop
mov rax, qword [rbp + 0x90]
movups xmmword [rax + r13 + 0x40], xmm6
cmp qword [rcx + r13 + 0x20], 0x10
jb 0x1402e7737
mov rdi, qword [rcx + r13 + 8]
jmp 0x1402e773f
lea rdi, [rcx + r13]
add rdi, 8
mov rax, qword [rbp + 0x90]
lea rbx, [rax + r13]
add rbx, 0x30
mov r15, qword [rcx + r13 + 0x18]
cmp r15, 0xf
jbe 0x1402e76c4
nop
mov qword [rbp + 0x78], r13
mov rax, r15
or rax, 0xf
cmp rax, rsi
mov r12, rsi
cmovb r12, rax
cmp rax, 0xfff
jb 0x1402e7796
lea rcx, [r12 + 0x28]
call fcn.1400954c0
mov rcx, rax
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x1402e77a0
lea rcx, [r12 + 1]
call fcn.1400954c0
nop
mov qword [rbx], rax
lea r8, [r15 + 1]
mov rcx, rdi
mov edx, 0xa218ee47
mov r9, rax
call fcn.1402ecc00
nop
mov r13, qword [rbp + 0x78]
jmp 0x1402e76e0
cmp rdi, r13
je 0x1402e78ba
xor eax, eax
mov qword [rbp + 0x88], rax
xorps xmm6, xmm6
mov r15, qword [rbp + 0x80]
jmp 0x1402e7828
mov r8d, 0x10
mov rcx, rbx
mov edx, 0xa218ee47
mov r9, r14
call fcn.1402ecc00
mov r12d, 0xf
nop
mov qword [r15 + 0x18], rsi
mov qword [r15 + 0x20], r12
lea rax, [0x1405e7948]
mov qword [r15], rax
add r15, 0x28
add rdi, 0x28
add qword [rbp + 0x88], 0xffffffffffffffd8
cmp rdi, r13
je 0x1402e78af
nop
movups xmmword [r15 + 0x18], xmm6
cmp qword [rdi + 0x20], 0x10
jb 0x1402e783b
mov rbx, qword [rdi + 8]
jmp 0x1402e783f
lea rbx, [rdi + 8]
lea r14, [r15 + 8]
mov rsi, qword [rdi + 0x18]
cmp rsi, 0xf
jbe 0x1402e77e0
mov rax, rsi
or rax, 0xf
movabs r12, 0x7fffffffffffffff
cmp rax, r12
cmovb r12, rax
cmp rax, 0xfff
jb 0x1402e7888
lea rcx, [r12 + 0x28]
call fcn.1400954c0
mov rcx, rax
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x1402e7892
lea rcx, [r12 + 1]
call fcn.1400954c0
nop
mov qword [r14], rax
lea r8, [rsi + 1]
mov rcx, rbx
mov edx, 0xa218ee47
mov r9, rax
call fcn.1402ecc00
jmp 0x1402e77fc
nop
mov rax, qword [rbp + 0x128]
mov rdi, qword [rax]
test rdi, rdi
nop
mov rbx, qword [rbp + 0x80]
je 0x1402e7949
nop
mov rax, qword [rbp + 0x128]
mov rsi, qword [rax + 8]
cmp rdi, rsi
je 0x1402e78fb
nop dword [rax]
nop
mov rax, qword [rdi]
mov rax, qword [rax]
mov rcx, rdi
xor edx, edx
call qword [0x140704440]
add rdi, 0x28
cmp rdi, rsi
jne 0x1402e78e0
nop
mov rax, qword [rbp + 0x128]
mov rcx, qword [rax]
mov r9, qword [rax + 0x10]
sub r9, rcx
cmp r9, 0x1000
jb 0x1402e7933
nop
mov rax, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rax
cmp rcx, 0x20
jae 0x1402e7f84
add r9, 0x27
mov rcx, rax
nop
mov r8, qword [rbp + 0x50]
xor r8, 0x3c722f3f
mov edx, 0x9987d590
call fcn.1402ecc00
nop
mov rcx, qword [rbp + 0x128]
mov qword [rcx], rbx
mov rax, qword [rbp + 0x70]
lea rax, [rax + rax*4]
lea rax, [rbx + rax*8]
mov qword [rcx + 8], rax
mov rax, qword [rbp + 0x68]
lea rax, [rax + rax*4]
lea rax, [rbx + rax*8]
mov qword [rcx + 0x10], rax
jmp 0x1402e872c
movsxd r13, eax
add r13, r15
mov rax, qword [rbp + 0x78]
mov rax, qword [rax + 0x18]
mov rax, qword [rax]
mov rbx, rax
sub r13, rax
test r15, r15
cmovne r15, r13
cmp r15, 0x20
jae 0x1402e7af5
mov r12d, 0x20
mov eax, dword [rbp + 0x120]
test al, al
jns 0x1402e7b0b
lea rdi, [rbp + 0x20]
jmp 0x1402e68aa
lea rax, [rdx + 0xa8]
mov qword [rdx + 0xb8], 0
mov byte [rax], 0
jmp 0x1402e7d9c
nop
mov rax, qword [rbp + 0x80]
movsx ecx, byte [rax]
mov rsi, qword [rbp + 0x70]
mov edx, esi
xor edx, 0x2d91c805
mov r8, qword [0x140740e50]
mov eax, dword [0x140740e40]
mov edi, dword [rbp + 0x78]
sub eax, edi
cdqe
add rax, r8
call qword [0x140704440]
jmp 0x1402e7d51
nop
mov rcx, qword [rbp + 0x88]
mov rax, qword [rcx]
movsxd rax, dword [rax + 4]
mov ebx, dword [rcx + rax + 0x10]
and ebx, 0x13
or ebx, 4
mov dword [rcx + rax + 0x10], ebx
mov edi, dword [rcx + rax + 0x14]
and ebx, edi
jne 0x1402e7f93
xor eax, eax
mov qword [rbp + 0x90], rax
jmp 0x1402e872c
mov ebx, r14d
nop
mov rcx, qword [rbp + 0x90]
mov rax, qword [rcx]
movsxd rax, dword [rax + 4]
mov qword [rcx + rax + 0x28], 0
nop
mov rdx, qword [rbp + 0x90]
mov rax, qword [rdx]
movsxd rax, dword [rax + 4]
or ebx, dword [rdx + rax + 0x10]
cmp qword [rdx + rax + 0x48], 0
sete cl
or cl, byte [0x140790231]
movzx ecx, cl
and ecx, 1
shl ecx, 2
and ebx, 0x17
or ebx, ecx
mov dword [rdx + rax + 0x10], ebx
and ebx, dword [rdx + rax + 0x14]
jne 0x1402e7e9e
call fcn.1400957f0
test al, al
jne 0x1402e7abd
nop
mov r9, qword [rbp - 0x28]
nop
mov dword [rsp + 0x20], 0xadc0b66a
call fcn.1402e5970
nop
mov rax, qword [rbp - 0x28]
mov rcx, qword [rax]
movsxd rcx, dword [rcx + 4]
mov rcx, qword [rax + rcx + 0x48]
test rcx, rcx
je 0x1402e7ae2
nop
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
nop
call qword [0x140704440]
jmp 0x1402e872c
mov rdi, 0xffffffffffffffff
xor esi, esi
jmp 0x1402e61bf
cmp r15, 0x3fffffff
jae 0x1402e7b18
lea r12, [r15 + r15]
cmp r15, 0x800
jae 0x1402e7b30
mov rcx, r12
call fcn.1400954c0
mov rdi, rax
jmp 0x1402e7b46
mov r12d, 0x7fffffff
mov eax, 0xffffffff
cmp r15, 0x7fffffff
jae 0x1402e7ca8
lea rcx, [r12 + 0x27]
call fcn.1400954c0
lea rdi, [rax + 0x27]
and rdi, 0xffffffffffffffe0
mov qword [rdi - 8], rax
mov rsi, rbx
mov rcx, rbx
mov edx, 0xa218ee47
mov r8, r15
mov r9, rdi
call fcn.1402ecc00
lea rax, [rdi + r15]
lea rcx, [rdi + r15]
inc rcx
mov r8, qword [rbp + 0x78]
mov qword [r8 + 0x68], rcx
add r12d, edi
mov rcx, qword [r8 + 0x20]
mov qword [rcx], rdi
mov rcx, qword [r8 + 0x40]
mov qword [rcx], rax
sub r12d, eax
mov rax, qword [r8 + 0x58]
mov dword [rax], r12d
test byte [r8 + 0x70], 4
sete byte [rbp + 0x68]
jne 0x1402e7bd1
nop
mov rax, qword [r8 + 0x68]
mov rdx, qword [r8 + 0x18]
mov rcx, qword [r8 + 0x38]
mov rcx, qword [rcx]
sub rcx, rsi
add rcx, rdi
mov qword [rdx], rdi
mov rdx, qword [r8 + 0x38]
mov qword [rdx], rcx
test dword [rbp + 0x120], 0x100
jne 0x1402e7e69
sub rax, rcx
mov rdi, rax
mov r8, qword [rbp + 0x78]
jmp 0x1402e7be4
nop
mov rax, qword [r8 + 0x18]
mov qword [rax], rdi
mov rax, qword [r8 + 0x38]
mov qword [rax], 0
lea rsi, [r8 + 0x70]
lea rdx, [r8 + 0x40]
lea r12, [r8 + 0x58]
mov rax, qword [r8 + 0x50]
mov dword [rax], edi
test byte [r8 + 0x70], 1
jne 0x1402e7c05
mov rdi, rdx
jmp 0x1402e7c88
cmp r15, 0x1000
jb 0x1402e7e71
mov rax, rbx
mov rbx, qword [rbx - 8]
add rax, 0xfffffffffffffff8
mov qword [rbp + 0x48], rax
sub rax, rbx
cmp rax, 0x20
jae 0x1402e7e7c
mov rdi, rdx
mov r8, r12
mov rdx, rsi
xor eax, eax
mov qword [rbp + 0x50], rax
lea rax, [rbp + 0x20]
mov qword [rbp + 0x18], rax
lea rsi, [rbp - 0x18]
lea r12, [rbp + 0x20]
mov qword [rbp - 0x38], rax
test dword [rbp + 0x120], 0x200
je 0x1402e73b2
add r13, 0x27
mov r15, r13
mov rcx, rbx
mov rsi, rdx
mov r12, r8
xor r14d, 0x4b888dd9
mov edx, 0x2eef8cd0
mov r8, r14
mov r9, r15
call fcn.1402ecc00
nop
or byte [rsi], 1
mov rax, qword [r12]
dec dword [rax]
mov rax, qword [rdi]
mov rcx, qword [rax]
lea rdx, [rcx + 1]
mov qword [rax], rdx
mov rax, qword [rbp + 0x88]
mov byte [rcx], al
mov eax, eax
mov qword [rbp + 0x90], rax
jmp 0x1402e872c
nop
mov rsi, qword [rbp + 0x70]
mov ecx, esi
xor ecx, 0xaf21e17a
mov r9d, esi
xor r9d, 0x92130026
cmp r9d, 2
mov r10d, 1
cmovge r10d, r9d
xor r11d, r11d
lea rdi, [0x140740230]
lea rbx, [0x1405f7990]
lea eax, [rcx + r11]
xor edx, edx
div r9d
movsxd rax, edx
movzx eax, byte [rax + rbx]
xor al, sil
xor al, byte [r11 + rdi]
xor al, 0x58
mov byte [r11 + rdi], al
inc r11
cmp r10, r11
jne 0x1402e7cec
nop
xchg byte [0x140740235], r8b
nop
mov rcx, qword [0x140740e88]
mov eax, dword [0x140740e3c]
mov edi, dword [rbp + 0x78]
sub eax, edi
cdqe
add rax, rcx
lea rcx, [0x140740230]
mov rdx, qword [rbp + 0x90]
mov r8, qword [rbp + 0x80]
call qword [0x140704440]
nop
mov rsi, qword [rbp + 0x70]
nop
mov rcx, qword [0x140740e60]
mov eax, dword [0x140740e48]
sub eax, edi
cdqe
add rax, rcx
mov ecx, 1
call qword [0x140704440]
mov edx, esi
xor edx, 0x7d68766c
mov rcx, qword [0x140740ea0]
mov r8d, dword [0x140740e34]
sub r8d, edi
movsxd r8, r8d
add r8, rcx
mov rcx, rax
mov rax, r8
call qword [0x140704440]
nop
mov rax, qword [rbp + 0x128]
mov rcx, qword [rax + 0x70]
test rcx, rcx
je 0x1402e872c
nop
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
mov rdx, qword [rbp + 0x80]
mov rsi, qword [rbp + 0x90]
mov r8, rsi
call qword [0x140704440]
mov rax, qword [0x1407912b0]
add rax, rsi
mov qword [0x1407912b0], rax
mov ecx, dword [rbp + 0x70]
mov rdx, rcx
shl rdx, 0x22
or rdx, rcx
movabs rcx, 0x484c008c9213006c
xor rcx, rdx
cmp rax, rcx
jle 0x1402e7e40
nop
mov qword [0x1407912b0], 0
mov rax, qword [rbp + 0x128]
mov rcx, qword [rax + 0x70]
mov rdx, qword [0x140740e78]
mov eax, dword [0x140740e28]
mov r8, qword [rbp + 0x50]
add eax, r8d
add eax, 0xfffff979
cdqe
add rax, rdx
call qword [0x140704440]
jmp 0x1402e872c
nop
movzx eax, byte [r14]
cmp al, 0xc
jae 0x1402e7e52
cmp al, 0xa
je 0x1402e7e00
jmp 0x1402e872c
cmp al, 0xd
jne 0x1402e872c
mov eax, dword [rbp + 0x120]
test al, 0x40
jne 0x1402e7e00
call fcn.1400954e0
xor r12d, r12d
jmp 0x1402e8885
mov rcx, rbx
mov rdi, rdx
jmp 0x1402e7c71
mov eax, dword [rbp + 0x120]
test al, 0x20
je 0x1402e84ec
call fcn.1400954e0
call fcn.1402e2fa0
call fcn.14008bd90
call fcn.14008b830
nop
mov rdi, qword [rbp + 0x78]
mov r9, rdi
xor r9, 0x7a62b944
mov edx, 0x2f96b98c
call fcn.1402ecc00
mov r8, rdi
xor r8, 0x2822336e
mov edx, 0x1b262e86
call fcn.1402ecc00
test bl, 2
lea rax, [0x1407401d0]
lea rsi, [0x1407401b0]
cmove rsi, rax
xor edi, 0x3fce2330
mov rcx, rdi
mov edx, 0x95d796dd
call fcn.1402ecc00
test bl, 4
lea rbx, [0x140740190]
cmove rbx, rsi
lea rsi, [rbp + 0x58]
mov rcx, rsi
mov edx, 1
call fcn.14008c180
lea rdi, [rbp - 0x18]
mov r8d, 0x10
mov rcx, rsi
mov edx, 0xa218ee47
mov r9, rdi
call fcn.1402ecc00
nop
mov qword [rsp + 0x28], rbx
mov dword [rsp + 0x20], 0x29a8ffa3
lea r8, [rbp + 0x20]
mov rcx, rdi
call fcn.1402e5970
lea rax, [0x1405e8038]
mov qword [rbp + 0x20], rax
lea rdx, [0x140647838]
lea rcx, [rbp + 0x20]
call fcn.1400954f0
call fcn.14008b830
call fcn.14008b830
call fcn.14008b830
call fcn.1400954e0
call fcn.1400954e0
call fcn.14008b830
call fcn.14008b830
call fcn.1400954e0
call fcn.14008c900
call fcn.1400954e0
mov r9d, 0xed62857c
xor r9, rsi
mov edx, 0x8c3e160c
call fcn.1402ecc00
mov r8d, 0xbf220f56
xor r8, rsi
mov edx, 0xa10fee46
call fcn.1402ecc00
test bl, 2
lea rax, [0x1407401d0]
lea rbx, [0x1407401b0]
cmove rbx, rax
xor esi, 0xa8ce1f08
mov rcx, rsi
mov edx, 0x6e6f5c5d
call fcn.1402ecc00
test dil, 4
lea r14, [0x140740190]
cmove r14, rbx
lea rsi, [rbp + 0x58]
mov rcx, rsi
mov edx, 1
call fcn.14008c180
lea rdi, [rbp - 0x18]
mov r8d, 0x10
mov rcx, rsi
mov edx, 0xa218ee47
mov r9, rdi
call fcn.1402ecc00
nop
mov qword [rsp + 0x28], r14
mov dword [rsp + 0x20], 0x29a8ffa3
lea r8, [rbp + 0x20]
mov rcx, rdi
call fcn.1402e5970
lea rax, [0x1405e8038]
mov qword [rbp + 0x20], rax
lea rdx, [0x140647838]
lea rcx, [rbp + 0x20]
call fcn.1400954f0
call fcn.1400954e0
nop
mov ebx, dword [rbp + 0xc]
jmp 0x1402e7a63
nop
mov rdx, qword [rbp + 0x88]
mov rax, qword [rdx]
movsxd r13, dword [rax + 4]
mov rcx, qword [rdx + r13 + 0x48]
movzx esi, byte [rdx + r13 + 0x58]
movzx edx, sil
mov rax, qword [rcx + 0x40]
cmp qword [rax], 0
je 0x1402e8097
nop
mov rax, qword [rcx + 0x58]
mov edi, dword [rax]
test edi, edi
jle 0x1402e8097
add rcx, 0x40
jmp 0x1402e80bd
nop
mov rax, qword [rcx]
mov rax, qword [rax + 0x18]
mov r8, qword [0x140704440]
mov dword [rbp + 0x14], ebx
mov dword [rbp + 0x10], 0
call r8
cmp eax, 0xffffffff
jne 0x1402e80e5
jmp 0x1402e8202
mov edx, dword [rbp + 0x120]
test dl, 0x40
jne 0x1402e82a3
dec edi
mov dword [rax], edi
mov rax, qword [rcx]
mov rcx, qword [rax]
lea r13, [rcx + 1]
mov qword [rax], r13
mov byte [rcx], sil
test dl, 0x20
jne 0x1402e815d
nop
mov rax, qword [rbp + 0x48]
cmp rax, 1
lea rax, [rax - 1]
jle 0x1402e80fd
mov qword [rbp + 0x48], rax
jmp 0x1402e805e
xor r14d, r14d
nop
mov rcx, qword [rbp + 0x88]
mov rax, qword [rcx]
movsxd rax, dword [rax + 4]
mov rcx, qword [rcx + rax + 0x48]
mov rax, qword [rcx]
mov rax, qword [rax + 0x48]
mov r9, qword [0x140704440]
mov dword [rbp + 0x14], ebx
mov dword [rbp + 0x10], 0
nop
mov rdx, qword [rbp + 0x78]
mov r8, qword [rbp + 0x18]
call r9
xor r12d, r12d
mov rcx, qword [rbp + 0x18]
cmp rax, rcx
setne r12b
shl r12d, 2
cmp rax, rcx
jne 0x1402e8208
test r14, r14
jg 0x1402e8188
jmp 0x1402e8208
lea rax, [rbp + 0x58]
mov qword [rbp + 0x68], rax
lea rax, [rbp + 0x20]
mov qword [rbp + 0x78], rax
lea rdi, [rbp + 0x20]
mov qword [rbp + 0x90], rax
lea rsi, [rbp + 0x58]
lea r15, [rbp + 0x58]
xor r9d, r9d
jmp 0x1402e87ef
nop
mov rdx, qword [rbp + 0x88]
mov rax, qword [rdx]
movsxd rax, dword [rax + 4]
mov rcx, qword [rdx + rax + 0x48]
movzx eax, byte [rdx + rax + 0x58]
movzx edx, al
mov r8, qword [rcx + 0x40]
cmp qword [r8], 0
je 0x1402e81d5
lea r8, [rcx + 0x40]
mov r9, qword [rcx + 0x58]
mov r10d, dword [r9]
test r10d, r10d
jle 0x1402e81d5
dec r10d
mov dword [r9], r10d
mov rcx, qword [r8]
mov rdx, qword [rcx]
lea r8, [rdx + 1]
mov qword [rcx], r8
mov byte [rdx], al
jmp 0x1402e81f3
nop
mov rax, qword [rcx]
mov rax, qword [rax + 0x18]
mov r8, qword [0x140704440]
mov dword [rbp + 0x14], ebx
mov dword [rbp + 0x10], r12d
call r8
cmp eax, 0xffffffff
je 0x1402e8202
lea rax, [r14 - 1]
cmp r14, 1
mov r14, rax
jg 0x1402e8188
jmp 0x1402e8208
mov r12d, 4
nop
mov rcx, qword [rbp + 0x88]
mov rax, qword [rcx]
movsxd rax, dword [rax + 4]
mov qword [rcx + rax + 0x28], 0
nop
movzx eax, byte [rbp + 0x68]
mov r14d, eax
mov rax, qword [rbp + 0x78]
mov esi, eax
mov edi, r15d
mov r13d, r12d
test dword [rbp + 0x120], 0x400
jne 0x1402e85a7
mov ecx, 2
call fcn.1402e3840
mov ecx, r13d
xor ecx, 0x16d6dac8
mov r9d, 0xd
mov edx, 0xb564adc3
mov r8, rax
call fcn.1402ecc00
mov rcx, qword [rbp + 0x88]
cmp dword [rcx + 0x20], 1
jle 0x1402e8299
xor ebx, ebx
test dword [rbp + 0x120], 0x200
je 0x1402e84d5
mov rax, qword [rbp + 0x88]
lea r14, [rax + 0x20]
jmp 0x1402e8851
mov eax, dword [rbp + 0x120]
test al, al
js 0x1402e82c5
xor r13d, 0x5a6b6ae3
mov r8d, 0xd
mov edx, 0x71cad863
mov r9, r13
call fcn.1402ecc00
mov r12, rax
jmp 0x1402e85ea
nop
mov dword [rbp + 0x68], r14d
lea rax, [0x1405f7570]
mov rcx, qword [rbp + 0x80]
mov qword [rcx + 8], rax
lea rax, [0x1405f7578]
mov qword [rcx + 0x18], rax
mov qword [rcx + 0x50], 0
xorps xmm0, xmm0
movups xmmword [rcx + 0x78], xmm0
mov qword [rcx + 0x88], 0
lea rax, [0x1405e89f8]
mov qword [rcx + 0x48], rax
lea rsi, [rbp + 0x58]
lea rdi, [rbp - 0x18]
lea rbx, [rbp - 0x18]
mov eax, dword [rbp + 0x120]
test al, 0x40
jne 0x1402e847d
lea rcx, [0x140791228]
mov edx, 0x715bb2a3
call fcn.1402e3b70
nop
mov r9, qword [rbp + 0x80]
lea rcx, [r9 + 8]
mov rdx, qword [r9 + 8]
movsxd rdx, dword [rdx + 4]
lea r8, [0x1405e8a20]
mov qword [r9 + rdx + 8], r8
mov rdx, qword [r9 + 8]
movsxd rdx, dword [rdx + 4]
lea r8d, [rdx - 0x18]
mov dword [r9 + rdx + 4], r8d
mov qword [r9 + 0x10], 0
mov rdx, qword [r9 + 8]
movsxd rdx, dword [rdx + 4]
add rdx, rcx
nop
mov qword [rsp + 0x28], rdx
mov dword [rsp + 0x20], 0x37833970
mov rcx, rax
xor r9d, r9d
call fcn.1402e5970
nop
mov rdx, qword [rbp + 0x80]
mov rax, qword [rdx + 0x18]
movsxd rax, dword [rax + 4]
lea rcx, [0x1405e9dc8]
mov qword [rdx + rax + 0x18], rcx
mov rax, qword [rdx + 0x18]
movsxd rax, dword [rax + 4]
lea ecx, [rax - 0x10]
mov dword [rdx + rax + 0x14], ecx
mov rax, qword [rdx + 8]
movsxd rax, dword [rax + 4]
lea rcx, [0x1405e9d80]
mov qword [rdx + rax + 8], rcx
mov rax, qword [rdx + 8]
movsxd rax, dword [rax + 4]
lea ecx, [rax - 0x20]
mov dword [rdx + rax + 4], ecx
lea rax, [0x1405f7588]
mov qword [rdx], rax
mov rax, qword [rdx + 8]
movsxd rax, dword [rax + 4]
lea rcx, [0x1405f7598]
mov qword [rdx + rax + 8], rcx
mov rax, qword [rdx + 8]
movsxd rax, dword [rax + 4]
lea ecx, [rax - 0x40]
mov dword [rdx + rax + 4], ecx
mov qword [rdx + 0x38], 0
xorps xmm0, xmm0
movups xmmword [rdx + 0x20], xmm0
mov byte [rdx + 0x30], 0
mov ecx, 0x18
call fcn.1400954c0
nop
mov qword [rax], 0
lea rcx, [rax + 8]
nop
mov qword [rbp + 0x90], rcx
mov qword [rbp + 0x88], rax
call fcn.1402e38c0
nop
mov rcx, qword [rbp + 0x88]
add rcx, 0x10
call fcn.1402e38c0
nop
mov rax, qword [rbp + 0x80]
mov rcx, qword [rbp + 0x88]
mov qword [rax + 0x38], rcx
nop
mov qword [rbp + 0x90], rax
jmp 0x1402e872c
nop
mov rax, qword [rbp + 0x128]
mov rcx, qword [rbp + 0x78]
mov byte [rax + 0x58], cl
cmp qword [rbx], 0
jne 0x1402e84a3
nop
mov ebx, dword [rdi]
and ebx, 0x13
or ebx, 4
mov dword [rdi], ebx
mov esi, dword [rsi]
and ebx, esi
jne 0x1402e8508
test byte [rbp + 0x88], 1
je 0x1402e84c7
nop
mov rcx, qword [rbp + 0x128]
call fcn.140095610
xor eax, eax
mov qword [rbp + 0x90], rax
jmp 0x1402e872c
xor eax, eax
mov qword [rbp + 0x90], rax
jmp 0x1402e872c
xor ecx, ecx
xor eax, 0x4b888dd9
mov edx, 0x3add56d0
mov r8, rax
mov r9, rbx
call fcn.1402ecc00
lea r8, [rbp - 0x18]
mov edx, 0x6c4790e2
call fcn.1402ecc00
xor eax, eax
mov qword [rbp + 0x90], rax
jmp 0x1402e872c
nop
mov r14, qword [rbp + 0x70]
mov r9d, r14d
xor r9d, 0xed62857c
mov edx, 0x892f35cc
call fcn.1402ecc00
mov r8d, r14d
xor r8d, 0xbf220f56
mov edx, 0xf54f20c6
call fcn.1402ecc00
test bl, 2
lea rax, [0x1407401d0]
lea rdi, [0x1407401b0]
cmove rdi, rax
xor r14d, 0xa8ce1f08
mov rcx, r14
mov edx, 0xfefa261d
call fcn.1402ecc00
test sil, 4
lea rsi, [0x140740190]
cmove rsi, rdi
lea rdi, [rbp - 0x18]
mov rcx, rdi
mov edx, 1
call fcn.14008c180
lea rbx, [rbp + 0x20]
mov rcx, rbx
mov rdx, rsi
mov r8, rdi
call fcn.140096540
lea rdx, [0x140647838]
mov rcx, rbx
call fcn.1400954f0
nop
mov ebx, dword [rbp + 0x14]
mov r12d, dword [rbp + 0x10]
nop
mov rdx, qword [rbp + 0x88]
mov rax, qword [rdx]
movsxd rax, dword [rax + 4]
or r12d, dword [rdx + rax + 0x10]
cmp qword [rdx + rax + 0x48], 0
sete cl
or cl, byte [0x140790231]
movzx ecx, cl
and ecx, 1
shl ecx, 2
and r12d, 0x17
or r12d, ecx
mov dword [rdx + rax + 0x10], r12d
and r12d, dword [rdx + rax + 0x14]
mov qword [rbp + 0x50], rbx
je 0x1402e8612
test dword [rbp + 0x120], 0x100
jne 0x1402e8667
lea r8, [rbp + 0x58]
mov edx, 0x6e217de2
call fcn.1402ecc00
xor eax, eax
mov qword [rbp + 0x90], rax
jmp 0x1402e872c
call fcn.1400957f0
test al, al
jne 0x1402e862e
nop
mov r9, qword [rbp + 0x58]
nop
mov dword [rsp + 0x20], 0xadc0b66a
call fcn.1402e5970
nop
mov rax, qword [rbp + 0x58]
mov rcx, qword [rax]
movsxd rcx, dword [rcx + 4]
mov rcx, qword [rax + rcx + 0x48]
test rcx, rcx
je 0x1402e8653
nop
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
nop
call qword [0x140704440]
nop
mov rax, qword [rbp + 0x88]
mov qword [rbp + 0x90], rax
jmp 0x1402e872c
nop
mov rdi, qword [rbp + 0x50]
mov r9d, edi
xor r9d, 0x7a62b944
mov edx, 0x9521634c
call fcn.1402ecc00
mov r8d, edi
xor r8d, 0x2822336e
mov edx, 0xd5cae6c6
call fcn.1402ecc00
test r12b, 2
lea rax, [0x1407401d0]
lea rsi, [0x1407401b0]
cmove rsi, rax
xor edi, 0x3fce2330
mov rcx, rdi
mov edx, 0x426f155d
call fcn.1402ecc00
test r12b, 4
lea rbx, [0x140740190]
cmove rbx, rsi
lea rsi, [rbp - 0x28]
mov rcx, rsi
mov edx, 1
call fcn.14008c180
lea rdi, [rbp - 0x18]
mov r8d, 0x10
mov rcx, rsi
mov edx, 0xa218ee47
mov r9, rdi
call fcn.1402ecc00
nop
mov qword [rsp + 0x28], rbx
mov dword [rsp + 0x20], 0x29a8ffa3
lea r8, [rbp + 0x20]
mov rcx, rdi
call fcn.1402e5970
lea rax, [0x1405e8038]
mov qword [rbp + 0x20], rax
lea rdx, [0x140647838]
lea rcx, [rbp + 0x20]
call fcn.1400954f0
mov rax, qword [rbp + 0x90]
movaps xmm6, xmmword [rbp + 0xa0]
add rsp, 0x138
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
lea rsi, [rdx + 8]
lea r14, [rdi + 8]
lea r15, [rdx + 0x18]
xorps xmm0, xmm0
mov qword [rbp + 0x90], rdx
movups xmmword [rdx + 0x18], xmm0
mov rax, qword [rdi + 0x18]
mov qword [rbp + 0x88], rax
cmp qword [rdi + 0x20], 0x10
jb 0x1402e877e
mov r14, qword [rdi + 8]
mov rbx, qword [rbp + 0x88]
cmp rbx, 0xf
ja 0x1402e87a9
mov r8d, 0x10
mov rcx, r14
mov edx, 0xa218ee47
mov r9, rsi
call fcn.1402ecc00
mov r12d, 0xf
jmp 0x1402e880b
or rbx, 0xf
movabs r12, 0x7fffffffffffffff
cmp rbx, r12
cmovb r12, rbx
cmp rbx, 0xfff
jb 0x1402e87e2
lea rcx, [r12 + 0x28]
call fcn.1400954c0
mov r9, rax
add r9, 0x27
and r9, 0xffffffffffffffe0
mov qword [r9 - 8], rax
jmp 0x1402e87ef
lea rcx, [r12 + 1]
call fcn.1400954c0
mov r9, rax
nop
mov qword [rsi], r9
mov rbx, qword [rbp + 0x88]
lea r8, [rbx + 1]
mov rcx, r14
mov edx, 0xa218ee47
call fcn.1402ecc00
nop
mov qword [r15], rbx
mov rdx, qword [rbp + 0x90]
mov qword [rdx + 0x20], r12
lea rax, [0x1405e7948]
mov qword [rdx], rax
add rdx, 0x28
add rdi, 0x28
cmp rdi, r13
jne 0x1402e874e
nop
mov rax, qword [rbp + 0x78]
mov qword [rax], rdx
nop
mov rax, qword [rbp + 0x80]
mov qword [rbp + 0x90], rax
jmp 0x1402e872c
mov r9d, r13d
xor r9d, 0x5a6b6ae3
mov r8d, 0x20
mov edx, 0xab127663
call fcn.1402ecc00
inc ebx
mov eax, dword [r14]
dec eax
xor r12d, r12d
cmp ebx, eax
jge 0x1402e88af
test dword [rbp + 0x120], 0x800
jne 0x1402e8851
movzx eax, r12b
mov qword [rsp + 0x20], rax
mov edx, 0x22ddb040
mov rsi, qword [rbp + 0x90]
mov r8, rsi
call fcn.1402e3b70
mov rcx, rsi
call fcn.1400c4410
jmp 0x1402e872c
lea r14, [rbp - 0x18]
lea rcx, [rbp - 0x28]
lea rax, [rbp + 0x20]
mov rdx, qword [rbp + 0x128]
mov qword [rbp + 0x48], rdx
mov r12, qword [rbp + 0x90]
mov qword [rbp + 0x18], rdx
jmp 0x1402e80bd