Function at 0x1400b4bd0
Capabilities:
Encrypt data using rc4 ksa

Disassembly:
mov rax, rsp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x510
mov qword [rax - 0x390], 0xfffffffffffffffe
movaps xmmword [rax - 0x48], xmm6
movaps xmmword [rax - 0x58], xmm7
movaps xmmword [rax - 0x68], xmm8
movaps xmmword [rax - 0x78], xmm9
movaps xmmword [rax - 0x88], xmm10
mov rax, qword [0x140e22df8]
xor rax, rsp
mov qword [rsp + 0x4b0], rax
mov qword [rsp + 0xa8], rcx
mov qword [rsp + 0xb8], rcx
mov rdi, rcx
mov qword [rsp + 0x90], rcx
mov qword [rsp + 0x128], rdx
mov qword [rsp + 0x110], r8
xor r15d, r15d
mov r13d, r15d
mov dword [rsp + 0x84], r15d
add rcx, 0x178
mov qword [rsp + 0x160], rcx
call fcn.140124cb0
test eax, eax
je 0x1400b4c75
mov ecx, eax
call fcn.140125314
nop
call fcn.140080b70
movsd qword [rdi + 0x2e0], xmm0
mov eax, r15d
xchg byte [rdi + 0x2f8], al
mov ecx, dword [rdi + 0xba8]
call fcn.140003e20
mov ecx, eax
xor r8d, r8d
xor edx, edx
call fcn.14010cbe0
mov ecx, 2
call fcn.1400013b0
mov ecx, eax
xor r8d, r8d
xor edx, edx
call fcn.14010cbe0
cmp qword [rdi + 0x7c8], 0
jne 0x1400b4ed3
mov ecx, dword [rdi + 0x7b8]
mov eax, 8
mul rcx
mov rbx, 0xffffffffffffffff
cmovo rax, rbx
mov rcx, rax
call fcn.14014392c
mov qword [rdi + 0x7d0], rax
mov ecx, dword [rdi + 0x7b8]
mov eax, 8
mul rcx
cmovo rax, rbx
mov rcx, rax
call fcn.14014392c
mov qword [rdi + 0x7c8], rax
mov ecx, dword [rdi + 0x7b8]
mov eax, 8
mul rcx
cmovo rax, rbx
mov rcx, rax
call fcn.14014392c
mov qword [rdi + 0xc10], rax
mov esi, r15d
cmp dword [rdi + 0x7b8], r15d
je 0x1400b4e18
mov ebx, esi
mov rax, qword [rdi + 0x7d0]
lea rcx, [rax + rbx*8]
xor r8d, r8d
mov edx, 0x100
call fcn.1400027f0
mov ecx, eax
xor r8d, r8d
xor edx, edx
call fcn.14010cbe0
mov rcx, qword [rdi + 0x7d0]
xor edx, edx
mov r8d, 0x100
mov rcx, qword [rcx + rbx*8]
call fcn.1401625d0
mov rax, qword [rdi + 0x7c8]
lea rcx, [rax + rbx*8]
xor r8d, r8d
mov edx, 0x100
call fcn.1400027f0
mov ecx, eax
xor r8d, r8d
xor edx, edx
call fcn.14010cbe0
mov rax, qword [rdi + 0xc10]
lea rcx, [rax + rbx*8]
mov edx, 8
call fcn.140002e50
mov ecx, eax
xor r8d, r8d
xor edx, edx
call fcn.14010cbe0
lea rdx, [rsp + 0x100]
lea rcx, [rsp + 0x178]
call fcn.140001150
mov ecx, eax
xor r8d, r8d
xor edx, edx
call fcn.14010cbe0
mov rax, qword [rdi + 0x7d8]
lea rcx, [rax + rbx*8]
mov r8d, dword [rsp + 0x100]
xor edx, edx
call fcn.1400042d0
mov ecx, eax
xor r8d, r8d
xor edx, edx
call fcn.14010cbe0
inc esi
cmp esi, dword [rdi + 0x7b8]
jne 0x1400b4d40
lea rcx, [rdi + 0x848]
mov edx, dword [rdi + 0xba8]
call fcn.140002340
mov ecx, eax
xor r8d, r8d
xor edx, edx
call fcn.14010cbe0
mov eax, dword [rdi + 0x9b0]
cmp eax, 6
jg 0x1400b4e4e
mov qword [rdi + 0xbb8], 0x80
jmp 0x1400b4e63
cmp eax, 7
je 0x1400b4e58
cmp eax, 8
jl 0x1400b4e63
mov qword [rdi + 0xbb8], 0x100
mov rsi, qword [rdi + 0x7f8]
mov rbx, qword [rdi + 0x7f0]
cmp rbx, rsi
je 0x1400b4e99
cmp qword [rbx], 0
jne 0x1400b4e90
mov rcx, rbx
call fcn.140001870
mov ecx, eax
xor r8d, r8d
xor edx, edx
call fcn.14010cbe0
add rbx, 8
cmp rbx, rsi
jne 0x1400b4e76
mov rsi, qword [rdi + 0x7e0]
mov rbx, qword [rdi + 0x7d8]
cmp rbx, rsi
je 0x1400b4ed3
nop dword [rax]
cmp qword [rbx], 0
jne 0x1400b4eca
mov rcx, rbx
call fcn.140004060
mov ecx, eax
xor r8d, r8d
xor edx, edx
call fcn.14010cbe0
add rbx, 8
cmp rbx, rsi
jne 0x1400b4eb0
mov qword [rsp + 0xa0], r15
mov qword [rsp + 0x118], r15
mov byte [rsp + 0x8a], 1
mov byte [rsp + 0x80], 0
movsd xmm0, qword [0x14021b490]
movsd qword [rsp + 0xd0], xmm0
nop dword [rax]
nop dword [rax + rax]
movzx eax, byte [rdi + 0x174]
test al, al
jne 0x1400b6ced
movzx eax, byte [rdi + 0x175]
test al, al
jne 0x1400b6ced
call fcn.140080b70
movsd qword [rdi + 0x2e0], xmm0
xor r12b, r12b
lea rbx, [rdi + 0x10]
mov qword [rsp + 0x1c0], rbx
mov rcx, rbx
call fcn.140124cb0
test eax, eax
je 0x1400b4f5e
mov ecx, eax
call fcn.140125314
nop
lea rsi, [rdi + 0xb0]
lea r14, [rdi + 0xc20]
mov rdx, rsi
cmp qword [rsi + 0x18], 0x10
jb 0x1400b4f79
mov rdx, qword [rsi]
mov r8, qword [r14 + 0x10]
mov rcx, r14
cmp qword [r14 + 0x18], 0x10
jb 0x1400b4f8a
mov rcx, qword [r14]
cmp r8, qword [rsi + 0x10]
jne 0x1400b5055
call fcn.1401624d0
test eax, eax
jne 0x1400b5055
lea rcx, [r14 + 0x20]
lea rdx, [rsi + 0x20]
mov rax, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0x10
jb 0x1400b4fb7
mov rdx, qword [rdx]
mov r8, qword [rcx + 0x10]
cmp qword [rcx + 0x18], 0x10
jb 0x1400b4fc5
mov rcx, qword [rcx]
cmp r8, rax
jne 0x1400b5055
call fcn.1401624d0
test eax, eax
jne 0x1400b5055
mov rax, qword [rsi + 0x40]
cmp qword [r14 + 0x40], rax
jne 0x1400b5055
mov rax, qword [rsi + 0x48]
cmp qword [r14 + 0x48], rax
jne 0x1400b5055
lea rdx, [rsi + 0x50]
lea rcx, [r14 + 0x50]
mov r8d, 0x20
call fcn.1401624d0
test eax, eax
jne 0x1400b5055
lea rdx, [rsi + 0x70]
lea rcx, [r14 + 0x70]
lea r8d, [rax + 0x20]
call fcn.1401624d0
test eax, eax
jne 0x1400b5055
lea rdx, [rsi + 0x90]
lea rcx, [r14 + 0x90]
lea r8d, [rax + 0x20]
call fcn.1401624d0
test eax, eax
jne 0x1400b5055
mov eax, dword [rsi + 0xb0]
cmp dword [r14 + 0xb0], eax
jne 0x1400b5055
mov rax, qword [rsi + 0xb8]
cmp qword [r14 + 0xb8], rax
je 0x1400b5109
mov r12b, 1
cmp r14, rsi
je 0x1400b5076
mov rdx, rsi
cmp qword [rsi + 0x18], 0x10
jb 0x1400b506a
mov rdx, qword [rsi]
mov r8, qword [rsi + 0x10]
mov rcx, r14
call fcn.140038020
lea rdx, [rsi + 0x20]
lea rcx, [r14 + 0x20]
cmp rcx, rdx
je 0x1400b5096
mov r8, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0x10
jb 0x1400b5091
mov rdx, qword [rdx]
call fcn.140038020
mov rax, qword [rsi + 0x40]
mov qword [r14 + 0x40], rax
mov rax, qword [rsi + 0x48]
mov qword [r14 + 0x48], rax
movups xmm0, xmmword [rsi + 0x50]
movups xmmword [r14 + 0x50], xmm0
movups xmm1, xmmword [rsi + 0x60]
movups xmmword [r14 + 0x60], xmm1
movups xmm0, xmmword [rsi + 0x70]
movups xmmword [r14 + 0x70], xmm0
movups xmm1, xmmword [rsi + 0x80]
movups xmmword [r14 + 0x80], xmm1
movups xmm0, xmmword [rsi + 0x90]
movups xmmword [r14 + 0x90], xmm0
movups xmm1, xmmword [rsi + 0xa0]
movups xmmword [r14 + 0xa0], xmm1
mov eax, dword [rsi + 0xb0]
mov dword [r14 + 0xb0], eax
mov rax, qword [rsi + 0xb8]
mov qword [r14 + 0xb8], rax
mov rcx, rbx
call fcn.140124d10
test eax, eax
je 0x1400b511d
mov ecx, eax
call fcn.140125314
nop
lea r8, [rsp + 0x98]
mov edx, 0x20
lea rcx, [rsp + 0x180]
call fcn.1400705f0
nop
mov rax, qword [rsp + 0x180]
movups xmm0, xmmword [rdi + 0xc90]
movups xmmword [rax], xmm0
movups xmm1, xmmword [rdi + 0xca0]
movups xmmword [rax + 0x10], xmm1
mov ecx, dword [0x140e34fe0]
mov rax, qword gs:[0x58]
mov edx, 0x2000
mov ebx, edx
mov rsi, qword [rax + rcx*8]
mov eax, dword [rsi + rdx]
cmp dword [0x140e2d928], eax
jg 0x1400b6d9a
mov r8d, dword [0x140e2d920]
lea rdx, [rsp + 0x130]
lea rcx, [0x140e2d810]
call fcn.14008eab0
or r13d, 1
mov dword [rsp + 0x84], r13d
mov eax, dword [rsi + rbx]
cmp dword [0x140e2d928], eax
jg 0x1400b6dde
cmp dword [0x140e2d920], 0
jl 0x1400b51fa
mov r8, qword [rsp + 0x138]
mov rcx, qword [rsp + 0x130]
sub r8, rcx
mov rax, qword [rsp + 0x188]
mov rdx, qword [rsp + 0x180]
sub rax, rdx
cmp r8, rax
jne 0x1400b51fa
call fcn.1401624d0
test eax, eax
sete al
test al, al
je 0x1400b51fa
mov al, 1
jmp 0x1400b51fc
xor al, al
lea rbx, [rdi + 0xcf0]
mov qword [rsp + 0x108], rbx
xchg byte [rbx], al
test r12b, r12b
je 0x1400b669b
mov rax, qword [rdi + 0xc68]
mov qword [rsp + 0xa0], rax
cmp qword [rdi + 0x7a8], 0
jbe 0x1400b5286
movzx eax, byte [rbx]
test al, al
setne al
cmp byte [rsp + 0x80], al
jne 0x1400b5286
movzx eax, byte [rbx]
test al, al
jne 0x1400b5286
cmp dword [rdi + 0xc1c], 2
jne 0x1400b5286
movzx eax, byte [rbx]
test al, al
setne cl
mov r9d, dword [rdi + 0xc1c]
movzx eax, byte [rbx]
neg al
sbb rax, rax
and eax, 8
mov byte [rsp + 0x20], cl
movsd xmm2, qword [rsp + rax + 0x168]
mov edx, dword [rsp + 0xc8]
mov rcx, rdi
call fcn.1400b6f40
inc qword [rdi + 0x7a8]
mov dword [rsp + 0xc8], r15d
movzx eax, byte [rbx]
test al, al
jne 0x1400b52db
cmp byte [rdi + 0x841], al
jne 0x1400b52db
mov rcx, qword [rdi + 0xb80]
test rcx, rcx
je 0x1400b52bc
call fcn.140001ec0
mov qword [rdi + 0xb80], r15
mov rcx, qword [rdi + 0xb88]
test rcx, rcx
je 0x1400b52d4
call fcn.140001fe0
mov qword [rdi + 0xb88], r15
mov byte [rdi + 0xb99], 0
mov byte [rsp + 0x88], 0
mov rax, qword [rdi + 0xcd8]
cmp qword [rsp + 0x118], rax
je 0x1400b533a
mov qword [rsp + 0x118], rax
movzx eax, byte [rbx]
test al, al
jne 0x1400b533a
xor r9d, r9d
lea r8, [rsp + 0x88]
mov rdx, r14
mov rcx, rdi
call fcn.1400b3f90
nop
jmp 0x1400b533a
cmp qword [rdi + 0xbb0], 0
je 0x1400b5352
cmp byte [rsp + 0x88], 0
je 0x1400b5eea
lea r14, [rdi + 0xc1c]
mov qword [rsp + 0xc0], r14
mov r9d, dword [r14]
lea r8, [rdi + 0xc20]
movsd xmm1, qword [0x14021c1c0]
mov rcx, rdi
call fcn.1400b3c60
mov ebx, eax
mov ecx, dword [r14]
mov dword [rsp + 0x20], ecx
mov r9d, ebx
lea r8, [rdi + 0xc20]
mov dl, 1
mov rcx, rdi
call fcn.1400b47a0
movaps xmm10, xmm0
movsd qword [rsp + 0xe0], xmm0
mov eax, dword [r14]
mov dword [rsp + 0x20], eax
mov r9d, ebx
lea r8, [rdi + 0xc20]
xor edx, edx
mov rcx, rdi
call fcn.1400b47a0
movaps xmm9, xmm0
movsd qword [rsp + 0xd8], xmm0
comisd xmm10, xmm0
seta al
mov byte [rdi + 0xc18], al
mov qword [rdi + 0xbb0], rbx
mov eax, dword [r14]
dec eax
cmp eax, 1
ja 0x1400b5eea
mov r12, qword [rdi + 0xba0]
mov rax, qword [r12]
mov r13, qword [rax + 0x38]
mov qword [rsp + 0x330], r15
mov qword [rsp + 0x338], 0xf
mov byte [rsp + 0x320], 0
mov r8d, 4
lea rdx, str.gray
lea rcx, [rsp + 0x320]
call fcn.140038020
nop
mov r8, qword [rdi + 8]
lea r9, [rsp + 0x475]
movabs r10, 0xcccccccccccccccd
nop dword [rax]
dec r9
mov rax, r10
mul r8
shr rdx, 3
movzx eax, dl
shl al, 2
lea ecx, [rax + rdx]
add cl, cl
sub r8b, cl
add r8b, 0x30
mov byte [r9], r8b
mov r8, rdx
test rdx, rdx
jne 0x1400b5450
mov r8, r15
mov qword [rsp + 0x250], r15
mov ecx, 0xf
mov qword [rsp + 0x258], rcx
mov byte [rsp + 0x240], dl
lea rax, [rsp + 0x475]
cmp r9, rax
je 0x1400b54d1
lea r8, [rsp + 0x475]
sub r8, r9
mov rdx, r9
lea rcx, [rsp + 0x240]
call fcn.140038020
mov rcx, qword [rsp + 0x258]
mov r8, qword [rsp + 0x250]
mov esi, dword [rsp + 0x84]
or esi, 6
mov dword [rsp + 0x84], esi
mov rax, rcx
sub rax, r8
cmp rax, 0xf
jb 0x1400b5598
lea rax, [r8 + 0xf]
mov qword [rsp + 0x250], rax
lea rbx, [rsp + 0x240]
cmp rcx, 0x10
cmovae rbx, qword [rsp + 0x240]
lea rax, [0x14021e0ef]
cmp rax, rbx
jbe 0x1400b5541
lea rax, [rbx + r8]
lea rcx, str.Tuning_device_
cmp rcx, rax
ja 0x1400b5541
cmp rbx, rcx
ja 0x1400b5539
mov rsi, r15
jmp 0x1400b5546
mov rsi, rbx
sub rsi, rcx
jmp 0x1400b5546
mov esi, 0xf
inc r8
lea rcx, [rbx + 0xf]
mov rdx, rbx
call fcn.140161720
mov r8, rsi
lea rdx, str.Tuning_device_
mov rcx, rbx
call fcn.140161720
mov r8d, 0xf
sub r8, rsi
lea rdx, str.Tuning_device_
add rdx, 0xf
add rdx, rsi
lea rcx, [rbx + rsi]
call fcn.140161720
lea rax, [rsp + 0x240]
mov esi, dword [rsp + 0x84]
jmp 0x1400b55c4
mov qword [rsp + 0x28], 0xf
lea rax, str.Tuning_device_
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
lea edx, [r9 + 0xf]
lea rcx, [rsp + 0x240]
call fcn.140030a70
mov qword [rsp + 0x230], r15
mov qword [rsp + 0x238], r15
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x220], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x230], xmm1
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
or esi, 8
mov dword [rsp + 0x84], esi
mov rcx, qword [rsp + 0x230]
mov rdx, qword [rsp + 0x238]
mov rax, rdx
sub rax, rcx
cmp rax, 3
jb 0x1400b5667
lea rax, [rcx + 3]
mov qword [rsp + 0x230], rax
lea rbx, [rsp + 0x220]
cmp rdx, 0x10
cmovae rbx, qword [rsp + 0x220]
add rbx, rcx
mov r8d, 3
lea rdx, [0x140219eec]
mov rcx, rbx
call fcn.140161720
mov byte [rbx + 3], 0
lea rax, [rsp + 0x220]
jmp 0x1400b568b
mov qword [rsp + 0x20], 3
lea r9, [0x140219eec]
xor r8d, r8d
lea edx, [r8 + 3]
lea rcx, [rsp + 0x220]
call fcn.1400307a0
mov qword [rsp + 0x2b0], r15
mov qword [rsp + 0x2b8], r15
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x2a0], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x2b0], xmm1
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
or esi, 0x10
mov dword [rsp + 0x84], esi
mov r9b, 1
lea r8, [rsp + 0x320]
lea rdx, [rsp + 0x2a0]
mov rcx, r12
call r13
nop
mov rdx, qword [rsp + 0x2b8]
cmp rdx, 0x10
jb 0x1400b5728
inc rdx
mov rcx, qword [rsp + 0x2a0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400b5723
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400b6e22
call fcn.140143924
mov qword [rsp + 0x2b0], r15
mov qword [rsp + 0x2b8], 0xf
mov byte [rsp + 0x2a0], 0
mov rdx, qword [rsp + 0x238]
cmp rdx, 0x10
jb 0x1400b5787
inc rdx
mov rcx, qword [rsp + 0x220]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400b5782
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400b6e28
call fcn.140143924
mov qword [rsp + 0x230], r15
mov qword [rsp + 0x238], 0xf
mov byte [rsp + 0x220], 0
mov rdx, qword [rsp + 0x258]
cmp rdx, 0x10
jb 0x1400b57e6
inc rdx
mov rcx, qword [rsp + 0x240]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400b57e1
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400b6e2e
call fcn.140143924
mov qword [rsp + 0x250], r15
mov qword [rsp + 0x258], 0xf
mov byte [rsp + 0x240], 0
mov rdx, qword [rsp + 0x338]
cmp rdx, 0x10
jb 0x1400b5845
inc rdx
mov rcx, qword [rsp + 0x320]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400b5840
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400b6e34
call fcn.140143924
mov rcx, qword [rdi + 0xc08]
test rcx, rcx
je 0x1400b585d
call fcn.140001ec0
mov qword [rdi + 0xc08], r15
mov rcx, qword [rdi + 0x838]
test rcx, rcx
je 0x1400b5875
call fcn.140001fe0
mov qword [rdi + 0x838], r15
lea r12, [rdi + 0xc20]
mov qword [rsp + 0xe8], r12
mov r9d, 3
mov r8, r12
movsd xmm1, qword [0x14021c1c0]
mov rcx, rdi
call fcn.1400b3c60
mov esi, eax
mov dword [rsp + 0xb0], eax
mov dword [rsp + 0x20], 3
mov r9d, eax
mov r8, r12
mov dl, 1
mov rcx, rdi
call fcn.1400b47a0
movaps xmm8, xmm0
movsd qword [rsp + 0x148], xmm0
mov dword [rsp + 0x20], 3
mov r9d, esi
mov r8, r12
xor edx, edx
mov rcx, rdi
call fcn.1400b47a0
movaps xmm7, xmm0
movsd qword [rsp + 0x150], xmm0
mov eax, r15d
cmp dword [r14], 1
sete al
inc eax
mov dword [r14], eax
mov r9b, 1
lea r8, [rsp + 0x89]
mov rdx, r12
mov rcx, rdi
call fcn.1400b3f90
nop
mov r9d, dword [r14]
mov r8, r12
movsd xmm1, qword [0x14021c1c0]
mov rcx, rdi
call fcn.1400b3c60
mov ebx, eax
mov ecx, dword [r14]
mov dword [rsp + 0x20], ecx
mov r9d, ebx
mov r8, r12
mov dl, 1
mov rcx, rdi
call fcn.1400b47a0
movaps xmm6, xmm0
movsd qword [rsp + 0x198], xmm0
mov eax, dword [r14]
mov dword [rsp + 0x20], eax
mov r9d, ebx
mov r8, r12
xor edx, edx
mov rcx, rdi
call fcn.1400b47a0
movsd qword [rsp + 0x1a0], xmm0
movaps xmm3, xmm6
movaps xmm1, xmm0
movaps xmm2, xmm0
comisd xmm9, xmm10
lea rax, [rsp + 0xd8]
ja 0x1400b5990
lea rax, [rsp + 0xe0]
comisd xmm1, xmm3
ja 0x1400b5999
movaps xmm1, xmm3
comisd xmm1, xmmword [rax]
jbe 0x1400b59d2
mov qword [rdi + 0xbb0], rbx
movaps xmm10, xmm6
movsd qword [rsp + 0xe0], xmm6
movaps xmm9, xmm0
movsd qword [rsp + 0xd8], xmm0
comisd xmm6, xmm2
seta al
mov byte [rdi + 0xc18], al
jmp 0x1400b5a72
mov eax, r15d
cmp dword [r14], 1
sete al
inc eax
mov dword [r14], eax
mov r9b, 1
lea r8, [rsp + 0x89]
mov rdx, r12
mov rcx, rdi
call fcn.1400b3f90
jmp 0x1400b5a72
movabs rbx, 0xcccccccccccccccd
cmp dword [r14], 3
je 0x1400b5b03
lea rax, [rsp + 0xd8]
lea rcx, [rsp + 0xe0]
comisd xmm9, xmm10
cmovbe rax, rcx
comisd xmm7, xmm8
jbe 0x1400b5aab
movaps xmm0, xmm7
jmp 0x1400b5aaf
movaps xmm0, xmm8
comisd xmm0, xmmword [rax]
jbe 0x1400b5b03
mov eax, esi
mov qword [rdi + 0xbb0], rax
mov dword [r14], 3
comisd xmm8, xmm7
seta al
mov byte [rdi + 0xc18], al
mov rcx, qword [rdi + 0xc08]
test rcx, rcx
je 0x1400b5aeb
call fcn.140001ec0
mov qword [rdi + 0xc08], r15
mov rcx, qword [rdi + 0x838]
test rcx, rcx
je 0x1400b5b03
call fcn.140001fe0
mov qword [rdi + 0x838], r15
mov r14, qword [rdi + 0xba0]
mov rax, qword [r14]
mov r12, qword [rax + 0x38]
mov qword [rsp + 0x350], r15
mov qword [rsp + 0x358], 0xf
mov byte [rsp + 0x340], 0
mov r8d, 4
lea rdx, str.gray
lea rcx, [rsp + 0x340]
call fcn.140038020
nop
mov r8, qword [rdi + 8]
lea r9, [rsp + 0x48d]
nop dword [rax]
nop dword [rax + rax]
dec r9
mov rax, rbx
mul r8
shr rdx, 3
movzx eax, dl
shl al, 2
lea ecx, [rax + rdx]
add cl, cl
sub r8b, cl
add r8b, 0x30
mov byte [r9], r8b
mov r8, rdx
test rdx, rdx
jne 0x1400b5b60
mov r8, r15
mov qword [rsp + 0x270], r15
mov ecx, 0xf
mov qword [rsp + 0x278], rcx
mov byte [rsp + 0x260], dl
lea rax, [rsp + 0x48d]
cmp r9, rax
je 0x1400b5be1
lea r8, [rsp + 0x48d]
sub r8, r9
mov rdx, r9
lea rcx, [rsp + 0x260]
call fcn.140038020
mov rcx, qword [rsp + 0x278]
mov r8, qword [rsp + 0x270]
mov r13d, dword [rsp + 0x84]
or r13d, 0x60
mov dword [rsp + 0x84], r13d
mov rax, rcx
sub rax, r8
cmp rax, 0x13
jb 0x1400b5ca4
lea rax, [r8 + 0x13]
mov qword [rsp + 0x270], rax
lea rbx, [rsp + 0x260]
cmp rcx, 0x10
cmovae rbx, qword [rsp + 0x260]
lea rax, [0x14021b243]
cmp rax, rbx
jbe 0x1400b5c54
lea rax, [rbx + r8]
lea rcx, str.Tuning_for_device_
cmp rcx, rax
ja 0x1400b5c54
cmp rbx, rcx
ja 0x1400b5c4c
mov rsi, r15
jmp 0x1400b5c59
mov rsi, rbx
sub rsi, rcx
jmp 0x1400b5c59
mov esi, 0x13
inc r8
lea rcx, [rbx + 0x13]
mov rdx, rbx
call fcn.140161720
mov r8, rsi
lea rdx, str.Tuning_for_device_
mov rcx, rbx
call fcn.140161720
mov r8d, 0x13
sub r8, rsi
lea rdx, str.Tuning_for_device_
add rdx, 0x13
add rdx, rsi
lea rcx, [rbx + rsi]
call fcn.140161720
lea rax, [rsp + 0x260]
jmp 0x1400b5cd0
mov qword [rsp + 0x28], 0x13
lea rax, str.Tuning_for_device_
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
lea edx, [r9 + 0x13]
lea rcx, [rsp + 0x260]
call fcn.140030a70
mov qword [rsp + 0x2f0], r15
mov qword [rsp + 0x2f8], r15
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x2e0], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x2f0], xmm1
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
bts r13d, 7
mov dword [rsp + 0x84], r13d
mov r8d, 0xa
lea rdx, str._complete.
lea rcx, [rsp + 0x2e0]
call fcn.140037ce0
mov qword [rsp + 0x2d0], r15
mov qword [rsp + 0x2d8], r15
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x2c0], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x2d0], xmm1
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
bts r13d, 8
mov dword [rsp + 0x84], r13d
mov r9b, 1
lea r8, [rsp + 0x340]
lea rdx, [rsp + 0x2c0]
mov rcx, r14
call r12
nop
mov rdx, qword [rsp + 0x2d8]
cmp rdx, 0x10
jb 0x1400b5dcd
inc rdx
mov rcx, qword [rsp + 0x2c0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400b5dc8
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400b6e3a
call fcn.140143924
mov qword [rsp + 0x2d0], r15
mov qword [rsp + 0x2d8], 0xf
mov byte [rsp + 0x2c0], 0
mov rdx, qword [rsp + 0x2f8]
cmp rdx, 0x10
jb 0x1400b5e2c
inc rdx
mov rcx, qword [rsp + 0x2e0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400b5e27
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400b6e40
call fcn.140143924
mov qword [rsp + 0x2f0], r15
mov qword [rsp + 0x2f8], 0xf
mov byte [rsp + 0x2e0], 0
mov rdx, qword [rsp + 0x278]
cmp rdx, 0x10
jb 0x1400b5e8b
inc rdx
mov rcx, qword [rsp + 0x260]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400b5e86
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400b6e46
call fcn.140143924
mov qword [rsp + 0x270], r15
mov qword [rsp + 0x278], 0xf
mov byte [rsp + 0x260], 0
mov rdx, qword [rsp + 0x358]
cmp rdx, 0x10
jb 0x1400b5eea
inc rdx
mov rcx, qword [rsp + 0x340]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400b5ee5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400b6e4c
call fcn.140143924
lea rbx, [rdi + 0xc70]
mov r8d, 0x20
mov rdx, rbx
lea rcx, [rdi + 0xbc0]
call fcn.1401624d0
test eax, eax
je 0x1400b6061
movzx eax, byte [rbx]
mov byte [rdi + 0xbc0], al
movzx eax, byte [rbx + 1]
mov rcx, qword [rsp + 0xa8]
mov byte [rcx + 0xbc1], al
movzx eax, byte [rbx + 2]
mov byte [rcx + 0xbc2], al
movzx eax, byte [rbx + 3]
mov byte [rcx + 0xbc3], al
movzx eax, byte [rbx + 4]
mov byte [rcx + 0xbc4], al
movzx eax, byte [rbx + 5]
mov byte [rcx + 0xbc5], al
movzx eax, byte [rbx + 6]
mov byte [rcx + 0xbc6], al
movzx eax, byte [rbx + 7]
mov byte [rcx + 0xbc7], al
movzx eax, byte [rbx + 8]
mov byte [rcx + 0xbc8], al
movzx eax, byte [rbx + 9]
mov byte [rcx + 0xbc9], al
movzx eax, byte [rbx + 0xa]
mov byte [rcx + 0xbca], al
movzx eax, byte [rbx + 0xb]
mov byte [rcx + 0xbcb], al
movzx eax, byte [rbx + 0xc]
mov byte [rcx + 0xbcc], al
movzx eax, byte [rbx + 0xd]
mov byte [rcx + 0xbcd], al
movzx eax, byte [rbx + 0xe]
mov byte [rcx + 0xbce], al
movzx eax, byte [rbx + 0xf]
mov byte [rcx + 0xbcf], al
movzx eax, byte [rbx + 0x10]
mov byte [rcx + 0xbd0], al
movzx eax, byte [rbx + 0x11]
mov byte [rcx + 0xbd1], al
movzx eax, byte [rbx + 0x12]
mov byte [rcx + 0xbd2], al
movzx eax, byte [rbx + 0x13]
mov byte [rcx + 0xbd3], al
movzx eax, byte [rbx + 0x14]
mov byte [rcx + 0xbd4], al
movzx eax, byte [rbx + 0x15]
mov byte [rcx + 0xbd5], al
movzx eax, byte [rbx + 0x16]
mov byte [rcx + 0xbd6], al
movzx eax, byte [rbx + 0x17]
mov byte [rcx + 0xbd7], al
movzx eax, byte [rbx + 0x18]
mov byte [rcx + 0xbd8], al
movzx eax, byte [rbx + 0x19]
mov byte [rcx + 0xbd9], al
movzx eax, byte [rbx + 0x1a]
mov byte [rcx + 0xbda], al
movzx eax, byte [rbx + 0x1b]
mov byte [rcx + 0xbdb], al
movzx eax, byte [rbx + 0x1c]
mov byte [rcx + 0xbdc], al
movzx eax, byte [rbx + 0x1d]
mov byte [rcx + 0xbdd], al
movzx eax, byte [rbx + 0x1e]
mov byte [rcx + 0xbde], al
movzx eax, byte [rbx + 0x1f]
mov byte [rcx + 0xbdf], al
lea rcx, [rdi + 0xbc0]
call fcn.1400b8c30
mov rcx, qword [rdi + 0xcb0]
cmp qword [rdi + 0xbe0], rcx
je 0x1400b6080
mov qword [rdi + 0xbe0], rcx
bswap rcx
call fcn.1400b8c70
mov ecx, dword [0x140e34fe0]
mov rax, qword gs:[0x58]
mov edx, 0x2000
mov ebx, edx
mov rsi, qword [rax + rcx*8]
mov eax, dword [rsi + rdx]
cmp dword [0x140e2d928], eax
jg 0x1400b6e52
cmp dword [0x140e2d920], 0
jl 0x1400b64ae
cmp byte [rdi + 0xb99], 0
jne 0x1400b64ae
cmp byte [rdi + 0x841], 0
je 0x1400b64ae
mov qword [rsp + 0x158], r15
mov qword [rsp + 0x120], r15
lea rdx, [rsp + 0x158]
lea rcx, [rsp + 0x120]
call fcn.1400030d0
mov ecx, eax
xor r8d, r8d
xor edx, edx
call fcn.14010cbe0
mov eax, dword [0x140e2d928]
cmp eax, dword [rsi + rbx]
jg 0x1400b6e96
mov dword [rsp + 0xf0], r15d
cmp eax, dword [rsi + rbx]
jg 0x1400b6ee1
imul edx, dword [0x140e2d920], 0x7530
lea r8, [rsp + 0xf0]
lea rcx, [0x140e2d810]
call fcn.14008e870
cmp qword [rsp + 0x120], rax
jae 0x1400b642e
mov byte [rdi + 0x841], 0
mov r14, qword [rdi + 0xba0]
mov rax, qword [r14]
mov r12, qword [rax + 0x40]
mov qword [rsp + 0x450], r15
mov qword [rsp + 0x458], 0xf
mov byte [rsp + 0x440], 0
mov r8d, 5
lea rdx, str.white
lea rcx, [rsp + 0x440]
call fcn.140038020
nop
mov rdx, qword [rdi + 8]
lea rcx, [rsp + 0x4a5]
call fcn.1400b3a30
mov r8, r15
mov qword [rsp + 0x290], r15
mov ecx, 0xf
mov qword [rsp + 0x298], rcx
mov byte [rsp + 0x280], 0
lea rdx, [rsp + 0x4a5]
cmp rax, rdx
je 0x1400b6202
lea r8, [rsp + 0x4a5]
sub r8, rax
mov rdx, rax
lea rcx, [rsp + 0x280]
call fcn.140038020
mov rcx, qword [rsp + 0x298]
mov r8, qword [rsp + 0x290]
or r13d, 0x600
mov dword [rsp + 0x84], r13d
mov rax, rcx
sub rax, r8
cmp rax, 0x25
jb 0x1400b62c0
lea rax, [r8 + 0x25]
mov qword [rsp + 0x290], rax
lea rbx, [rsp + 0x280]
cmp rcx, 0x10
cmovae rbx, qword [rsp + 0x280]
lea rax, [0x14021b1b5]
cmp rax, rbx
jbe 0x1400b6270
lea rax, [rbx + r8]
lea rcx, str.Disabled_Zilliqa_caching_for_device_
cmp rcx, rax
ja 0x1400b6270
cmp rbx, rcx
ja 0x1400b6268
mov rsi, r15
jmp 0x1400b6275
mov rsi, rbx
sub rsi, rcx
jmp 0x1400b6275
mov esi, 0x25
inc r8
lea rcx, [rbx + 0x25]
mov rdx, rbx
call fcn.140161720
mov r8, rsi
lea rdx, str.Disabled_Zilliqa_caching_for_device_
mov rcx, rbx
call fcn.140161720
mov r8d, 0x25
sub r8, rsi
lea rdx, str.Disabled_Zilliqa_caching_for_device_
add rdx, 0x25
add rdx, rsi
lea rcx, [rbx + rsi]
call fcn.140161720
lea rax, [rsp + 0x280]
jmp 0x1400b62ec
mov qword [rsp + 0x28], 0x25
lea rax, str.Disabled_Zilliqa_caching_for_device_
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
lea edx, [r9 + 0x25]
lea rcx, [rsp + 0x280]
call fcn.140030a70
mov qword [rsp + 0x370], r15
mov qword [rsp + 0x378], r15
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x360], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x370], xmm1
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
bts r13d, 0xb
mov dword [rsp + 0x84], r13d
mov r8d, 0x24
lea rdx, str._because_it_has_insufficient_memory.
lea rcx, [rsp + 0x360]
call fcn.140037ce0
mov qword [rsp + 0x310], r15
mov qword [rsp + 0x318], r15
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x300], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x310], xmm1
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
bts r13d, 0xc
mov dword [rsp + 0x84], r13d
mov r9b, 1
lea r8, [rsp + 0x440]
lea rdx, [rsp + 0x300]
mov rcx, r14
call r12
nop
mov rdx, qword [rsp + 0x318]
cmp rdx, 0x10
jb 0x1400b63e9
inc rdx
mov rcx, qword [rsp + 0x300]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400b63e4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400b6f25
call fcn.140143924
mov qword [rsp + 0x310], r15
mov qword [rsp + 0x318], 0xf
mov byte [rsp + 0x300], 0
lea rcx, [rsp + 0x360]
call fcn.140037720
nop
lea rcx, [rsp + 0x280]
call fcn.140037720
nop
lea rcx, [rsp + 0x440]
call fcn.140037720
cmp byte [rdi + 0x841], 0
je 0x1400b6496
mov dword [rsp + 0xf4], r15d
lea rax, [rdi + 0x840]
lea rcx, [rdi + 0xb90]
lea rdx, [rdi + 0xb88]
lea r9, [rdi + 0xb80]
mov dword [rsp + 0x40], 0x100
mov byte [rsp + 0x38], 0
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x20], rdx
lea r8, [rsp + 0x130]
lea rdx, [rsp + 0xf4]
mov rcx, rdi
call fcn.1400a0f00
mov byte [rdi + 0xb99], 1
jmp 0x1400b64ae
movzx eax, byte [rdi + 0xcf0]
test al, al
je 0x1400b65f1
cmp byte [rdi + 0xb99], 0
jne 0x1400b6560
mov rcx, qword [rdi + 0xc08]
test rcx, rcx
je 0x1400b64e2
call fcn.140001ec0
mov qword [rdi + 0xc08], r15
mov rcx, qword [rdi + 0x838]
test rcx, rcx
je 0x1400b64fa
call fcn.140001fe0
mov qword [rdi + 0x838], r15
mov dword [rdi + 0xbe8], r15d
mov dword [rsp + 0xf8], r15d
lea rax, [rdi + 0x840]
lea rcx, [rdi + 0xb90]
lea rdx, [rdi + 0xb88]
lea r9, [rdi + 0xb80]
mov dword [rsp + 0x40], 0x100
mov byte [rsp + 0x38], 0
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x20], rdx
lea r8, [rsp + 0x130]
lea rdx, [rsp + 0xf8]
mov rcx, rdi
call fcn.1400a0f00
mov byte [rdi + 0xb99], 1
cmp byte [rsp + 0x8a], 0
je 0x1400b65a5
mov rax, qword [rdi + 0xb90]
mov qword [rdi + 0x7bc], rax
mov dword [rsp + 0xfc], r15d
mov r9b, 1
lea r8, [rsp + 0xfc]
movsd xmm1, qword [0x14021b470]
mov rcx, rdi
call fcn.1400a0530
mov edx, eax
mov rcx, rdi
call fcn.1400a3bf0
mov byte [rsp + 0x8a], 0
mov rax, qword [rdi + 0x7d8]
movaps xmm0, xmmword [rdi + 0xbc0]
movaps xmmword [rsp + 0x1d0], xmm0
movaps xmm1, xmmword [rdi + 0xbd0]
movaps xmmword [rsp + 0x1e0], xmm1
mov rdx, qword [rax]
lea rcx, [rsp + 0x1d0]
call fcn.14009db30
mov rcx, qword [rdi + 0xbe0]
bswap rcx
call fcn.14009dca0
mov qword [rdi + 0x7b0], r15
mov ebx, r15d
nop dword [rax + rax]
cmp ebx, dword [rdi + 0x7b8]
jae 0x1400b6665
mov r10d, ebx
mov rax, qword [rdi + 0x7d0]
mov rcx, qword [rax + r10*8]
mov dword [rcx], r15d
mov qword [rsp + r10*8 + 0x168], r15
movzx eax, byte [rdi + 0xcf0]
test al, al
jne 0x1400b6661
cmp dword [rdi + 0xc1c], 2
jne 0x1400b6661
mov rax, qword [rdi + 0x7d8]
mov r9, qword [rax]
mov rax, qword [rdi + 0xc10]
xor edx, edx
lea r8d, [rdx + 8]
mov rcx, qword [rax + r10*8]
call fcn.140003b70
mov ecx, eax
xor r8d, r8d
xor edx, edx
call fcn.14010cbe0
inc ebx
jmp 0x1400b6600
movsd xmm0, qword [0x14021b490]
movsd qword [rsp + 0xd0], xmm0
mov rax, qword [rdi + 0x7d8]
mov rdx, qword [rax]
mov rax, qword [rdi + 0x7f0]
mov rcx, qword [rax]
call fcn.140001c30
mov ecx, eax
xor r8d, r8d
xor edx, edx
call fcn.14010cbe0
mov ecx, dword [rdi + 0x7b8]
mov r8, qword [rdi + 0x7b0]
xor edx, edx
mov rax, r8
div rcx
mov r12, rdx
mov qword [rsp + 0xe8], rdx
mov rax, qword [rdi + 0x7d8]
mov r10, qword [rax + rdx*8]
mov qword [rsp + 0xb0], r10
mov rax, qword [rdi + 0x7d0]
mov r13, qword [rax + rdx*8]
mov rax, qword [rdi + 0x7c8]
mov r14, qword [rax + rdx*8]
mov rax, qword [rdi + 0xc10]
mov r9, qword [rax + rdx*8]
mov qword [rsp + 0xc0], r9
cmp byte [rsp + 0x80], 0
je 0x1400b6712
mov rbx, qword [rdi + 0xb28]
imul rbx, qword [rdi + 0xb20]
jmp 0x1400b6721
mov rbx, qword [rdi + 0xbb8]
imul rbx, qword [rdi + 0xbb0]
mov rax, rcx
imul rax, rbx
mov rsi, qword [rsp + 0xa0]
sub rsi, rax
cmp r8, rcx
jb 0x1400b6a8a
mov rcx, r10
call fcn.1400046c0
mov ecx, eax
xor r8d, r8d
xor edx, edx
call fcn.14010cbe0
cmp dword [r13], 0
jbe 0x1400b69c9
mov edx, r15d
mov r12, qword [rsp + 0x108]
cmp edx, dword [r13]
jae 0x1400b699a
lea ebx, [rdx + 1]
mov ecx, dword [r13 + rbx*4]
add rcx, rsi
mov qword [rsp + 0x1f0], rcx
movzx eax, byte [r12]
test al, al
je 0x1400b6969
lea eax, [rdx*8]
mov ecx, eax
movzx eax, byte [r14 + rax*4]
mov byte [rsp + 0x1f8], al
movzx eax, byte [r14 + rcx*4 + 1]
mov byte [rsp + 0x1f9], al
movzx eax, byte [r14 + rcx*4 + 2]
mov byte [rsp + 0x1fa], al
movzx eax, byte [r14 + rcx*4 + 3]
mov byte [rsp + 0x1fb], al
movzx eax, byte [r14 + rcx*4 + 4]
mov byte [rsp + 0x1fc], al
movzx eax, byte [r14 + rcx*4 + 5]
mov byte [rsp + 0x1fd], al
movzx eax, byte [r14 + rcx*4 + 6]
mov byte [rsp + 0x1fe], al
movzx eax, byte [r14 + rcx*4 + 7]
mov byte [rsp + 0x1ff], al
movzx eax, byte [r14 + rcx*4 + 8]
mov byte [rsp + 0x200], al
movzx eax, byte [r14 + rcx*4 + 9]
mov byte [rsp + 0x201], al
movzx eax, byte [r14 + rcx*4 + 0xa]
mov byte [rsp + 0x202], al
movzx eax, byte [r14 + rcx*4 + 0xb]
mov byte [rsp + 0x203], al
movzx eax, byte [r14 + rcx*4 + 0xc]
mov byte [rsp + 0x204], al
movzx eax, byte [r14 + rcx*4 + 0xd]
mov byte [rsp + 0x205], al
movzx eax, byte [r14 + rcx*4 + 0xe]
mov byte [rsp + 0x206], al
movzx eax, byte [r14 + rcx*4 + 0xf]
mov byte [rsp + 0x207], al
movzx eax, byte [r14 + rcx*4 + 0x10]
mov byte [rsp + 0x208], al
movzx eax, byte [r14 + rcx*4 + 0x11]
mov byte [rsp + 0x209], al
movzx eax, byte [r14 + rcx*4 + 0x12]
mov byte [rsp + 0x20a], al
movzx eax, byte [r14 + rcx*4 + 0x13]
mov byte [rsp + 0x20b], al
movzx eax, byte [r14 + rcx*4 + 0x14]
mov byte [rsp + 0x20c], al
movzx eax, byte [r14 + rcx*4 + 0x15]
mov byte [rsp + 0x20d], al
movzx eax, byte [r14 + rcx*4 + 0x16]
mov byte [rsp + 0x20e], al
movzx eax, byte [r14 + rcx*4 + 0x17]
mov byte [rsp + 0x20f], al
movzx eax, byte [r14 + rcx*4 + 0x18]
mov byte [rsp + 0x210], al
movzx eax, byte [r14 + rcx*4 + 0x19]
mov byte [rsp + 0x211], al
movzx eax, byte [r14 + rcx*4 + 0x1a]
mov byte [rsp + 0x212], al
movzx eax, byte [r14 + rcx*4 + 0x1b]
mov byte [rsp + 0x213], al
movzx eax, byte [r14 + rcx*4 + 0x1c]
mov byte [rsp + 0x214], al
movzx eax, byte [r14 + rcx*4 + 0x1d]
mov byte [rsp + 0x215], al
movzx eax, byte [r14 + rcx*4 + 0x1e]
mov byte [rsp + 0x216], al
movzx eax, byte [r14 + rcx*4 + 0x1f]
mov byte [rsp + 0x217], al
mov rax, qword [rsp + 0x110]
mov rcx, qword [rax + 0x38]
test rcx, rcx
je 0x1400b6f2b
mov rax, qword [rcx]
lea r8, [rdi + 0xc20]
lea rdx, [rsp + 0x1f0]
call qword [rax + 0x10]
mov edx, ebx
jmp 0x1400b6766
mov rax, qword [rsp + 0x128]
mov rcx, qword [rax + 0x38]
test rcx, rcx
je 0x1400b6f30
mov rax, qword [rcx]
lea r8, [rdi + 0xc20]
lea rdx, [rsp + 0x1f0]
call qword [rax + 0x10]
mov edx, ebx
jmp 0x1400b6766
xor edx, edx
lea r8d, [rdx + 4]
mov rcx, r13
call fcn.140003a20
mov ecx, eax
xor r8d, r8d
xor edx, edx
call fcn.14010cbe0
movsd xmm0, qword [0x14021b490]
mov r12, qword [rsp + 0xe8]
jmp 0x1400b6a71
test r12, r12
jne 0x1400b6a7a
mov rsi, qword [rsp + 0x108]
movzx eax, byte [rsi]
test al, al
jne 0x1400b69ee
cmp dword [rdi + 0xc1c], 2
je 0x1400b6a7a
movsd xmm0, qword [rsp + 0xd0]
ucomisd xmm0, qword [0x14021b490]
jp 0x1400b6a03
je 0x1400b6a6c
call fcn.140080b70
mov edx, dword [rdi + 0x7b8]
imul rdx, rbx
movzx eax, byte [rsi]
mov ebx, r15d
test al, al
setne bl
mov eax, ebx
lea rsi, [rax + rax*2]
shl rsi, 5
subsd xmm0, qword [rsp + 0xd0]
movaps xmm2, xmm0
lea rcx, [rdi + 0x218]
add rcx, rsi
call fcn.1401d3b20
mov rax, qword [rdi]
mov r12, qword [rax + 0x28]
lea rcx, [rdi + 0x218]
add rcx, rsi
call fcn.1401d3ba0
mov r8d, ebx
movaps xmm1, xmm0
mov rcx, rdi
call r12
mov r12, qword [rsp + 0xe8]
call fcn.140080b70
movsd qword [rsp + 0xd0], xmm0
mov r9, qword [rsp + 0xc0]
mov r10, qword [rsp + 0xb0]
mov rbx, qword [rsp + 0x108]
movzx eax, byte [rbx]
test al, al
je 0x1400b6b0b
lea rcx, [rdi + 0x848]
mov qword [rsp + 0x70], r15
mov qword [rsp + 0x68], r15
mov dword [rsp + 0x60], r15d
mov qword [rsp + 0x58], r15
movzx eax, byte [rdi + 0x840]
mov byte [rsp + 0x50], al
mov eax, dword [rdi + 0xb94]
mov dword [rsp + 0x48], eax
mov eax, dword [rdi + 0xb90]
mov dword [rsp + 0x40], eax
mov qword [rsp + 0x38], rcx
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], r14
mov qword [rsp + 0x20], r13
mov r9, r10
xor r8d, r8d
mov edx, dword [rdi + 0xb28]
mov ecx, dword [rdi + 0xb20]
call fcn.14009d9d0
jmp 0x1400b6ba3
lea rax, [rdi + 0x848]
movzx ecx, byte [rdi + 0xc01]
movzx edx, byte [rdi + 0xc00]
mov r8, r10
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x68], r9
mov eax, dword [rdi + 0xc1c]
mov r9, qword [rdi + 0xcd8]
mov dword [rsp + 0x60], eax
mov dword [rsp + 0x58], ecx
mov rax, qword [rdi + 0xbf8]
mov dword [rsp + 0x50], edx
mov ecx, dword [rdi + 0xbb0]
mov qword [rsp + 0x48], rax
mov edx, dword [rdi + 0xbb8]
mov eax, dword [rdi + 0xbf4]
mov dword [rsp + 0x40], eax
mov eax, dword [rdi + 0xbf0]
mov dword [rsp + 0x38], eax
mov eax, dword [rdi + 0xbe8]
mov dword [rsp + 0x30], eax
mov qword [rsp + 0x28], r13
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0x20], rax
cmp byte [rdi + 0xc18], 0
je 0x1400b6b9e
call fcn.1400b8870
jmp 0x1400b6ba3
call fcn.1400b8520
mov dword [rsp + 0xc8], r12d
movzx eax, byte [rbx]
test al, al
setne byte [rsp + 0x80]
movzx eax, byte [rbx]
test al, al
je 0x1400b6bd0
mov rax, qword [rdi + 0xb28]
imul rax, qword [rdi + 0xb20]
jmp 0x1400b6bdf
mov rax, qword [rdi + 0xbb8]
imul rax, qword [rdi + 0xbb0]
add qword [rsp + 0xa0], rax
movzx eax, byte [rbx]
test al, al
je 0x1400b6bff
mov rax, qword [rdi + 0xb28]
imul rax, qword [rdi + 0xb20]
jmp 0x1400b6c0e
mov rax, qword [rdi + 0xbb8]
imul rax, qword [rdi + 0xbb0]
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
test rax, rax
jns 0x1400b6c23
addsd xmm0, qword [0x140215b58]
movzx eax, byte [rbx]
neg al
sbb rcx, rcx
and ecx, 8
addsd xmm0, qword [rsp + rcx + 0x168]
movsd qword [rsp + rcx + 0x168], xmm0
mov rcx, qword [rsp + 0x130]
test rcx, rcx
je 0x1400b6c96
mov rdx, qword [rsp + 0x140]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400b6c7d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400b6f36
call fcn.140143924
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x130], xmm0
mov qword [rsp + 0x140], r15
lea rcx, [rsp + 0x180]
call fcn.140055b10
nop
inc qword [rdi + 0x7b0]
mov r13d, dword [rsp + 0x84]
jmp 0x1400b4f10
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + 0x10]
nop
mov rcx, qword [rsp + 0x160]
call fcn.140124d10
test eax, eax
je 0x1400b6d10
mov ecx, eax
call fcn.140125314
nop
mov rbx, qword [rsp + 0x128]
mov rcx, qword [rbx + 0x38]
test rcx, rcx
je 0x1400b6d34
mov rax, qword [rcx]
cmp rcx, rbx
sete dl
xor dl, 1
call qword [rax + 0x20]
mov qword [rbx + 0x38], r15
mov rbx, qword [rsp + 0x110]
mov rcx, qword [rbx + 0x38]
test rcx, rcx
je 0x1400b6d55
mov rax, qword [rcx]
cmp rcx, rbx
setne dl
call qword [rax + 0x20]
mov qword [rbx + 0x38], r15
mov rcx, qword [rsp + 0x4b0]
xor rcx, rsp
call fcn.140143d80
lea r11, [rsp + 0x510]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
ret
lea rcx, [0x140e2d928]
call fcn.14014425c
cmp dword [0x140e2d928], 0xffffffff
jne 0x1400b517e
lea rcx, [0x140e2d810]
call fcn.14008c660
lea rcx, [0x140202c60]
call fcn.140143bd0
nop
lea rcx, [0x140e2d928]
call fcn.1401441fc
nop
jmp 0x1400b517e
lea rcx, [0x140e2d928]
call fcn.14014425c
cmp dword [0x140e2d928], 0xffffffff
jne 0x1400b51b4
lea rcx, [0x140e2d810]
call fcn.14008c660
lea rcx, [0x140202c60]
call fcn.140143bd0
nop
lea rcx, [0x140e2d928]
call fcn.1401441fc
nop
jmp 0x1400b51b4
call fcn.140165594
nop
call fcn.140165594
nop
call fcn.140165594
nop
call fcn.140165594
nop
call fcn.140165594
nop
call fcn.140165594
nop
call fcn.140165594
nop
call fcn.140165594
int3
lea rcx, [0x140e2d928]
call fcn.14014425c
cmp dword [0x140e2d928], 0xffffffff
jne 0x1400b60a9
lea rcx, [0x140e2d810]
call fcn.14008c660
lea rcx, [0x140202c60]
call fcn.140143bd0
nop
lea rcx, [0x140e2d928]
call fcn.1401441fc
nop
jmp 0x1400b60a9
lea rcx, [0x140e2d928]
call fcn.14014425c
mov eax, dword [0x140e2d928]
cmp eax, 0xffffffff
jne 0x1400b6110
lea rcx, [0x140e2d810]
call fcn.14008c660
lea rcx, [0x140202c60]
call fcn.140143bd0
nop
lea rcx, [0x140e2d928]
call fcn.1401441fc
mov eax, dword [0x140e2d928]
jmp 0x1400b6110
lea rcx, [0x140e2d928]
call fcn.14014425c
cmp dword [0x140e2d928], 0xffffffff
jne 0x1400b6121
lea rcx, [0x140e2d810]
call fcn.14008c660
lea rcx, [0x140202c60]
call fcn.140143bd0
nop
lea rcx, [0x140e2d928]
call fcn.1401441fc
nop
jmp 0x1400b6121
call fcn.140165594
nop
call fcn.140123258
call fcn.140123258
nop
call fcn.140165594
int3