Function at 0x6da131f0
Capabilities:
Hash data using sha256

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0xc18
test rdx, rdx
mov rsi, rcx
mov qword [rsp + 0x88], rdx
mov dword [rsp + 0xa0], 0
je 0x6da147df
test r8, r8
je 0x6da1482c
test r9, r9
je 0x6da14811
mov r14, qword [r8 + 8]
mov rcx, qword [r8 + 0x18]
movabs rax, 0xfffffffffffff
mov r10, qword [r8]
mov rbx, qword [r8 + 0x10]
mov r13, qword [r8 + 0x20]
mov r12, qword [r8 + 0x28]
mov r11, r14
mov rbp, qword [r8 + 0x30]
mov rdi, qword [r8 + 0x38]
shl r11, 0xc
mov r8, rcx
mov rdx, r10
and r11, rax
shr r10, 0x34
shl r8, 0x24
or r11, r10
and r8, rax
mov r10, rbx
shr rbx, 0x1c
shr rcx, 0x10
shl r10, 0x18
or r8, rbx
mov rbx, r13
shr r13, 0x34
and rbx, rax
and rdx, rax
and r10, rax
mov qword [rsp + 0x1e8], rbx
mov rbx, r12
shr r12, 0x28
shl rbx, 0xc
shr r14, 0x28
mov qword [rsp + 0x1c0], rdx
and rbx, rax
or r10, r14
mov qword [rsp + 0x1c8], r11
or rbx, r13
mov qword [rsp + 0x1d0], r10
mov qword [rsp + 0x1d8], r8
mov qword [rsp + 0x1f0], rbx
mov rbx, rbp
shr rbp, 0x1c
shl rbx, 0x18
mov qword [rsp + 0x1e0], rcx
mov dword [rsp + 0x210], 0
and rbx, rax
or rbx, r12
mov qword [rsp + 0x1f8], rbx
mov rbx, rdi
shr rdi, 0x10
shl rbx, 0x24
mov qword [rsp + 0x208], rdi
and rbx, rax
mov rax, rcx
or rax, rdx
or rbx, rbp
or rax, r11
mov qword [rsp + 0x200], rbx
or rax, r10
or rax, r8
je 0x6da147fa
lea rcx, [rsp + 0xb0]
lea r8, [rsp + 0xa0]
mov rdx, r9
call fcn.6da09510
mov esi, dword [rsp + 0xa0]
xor eax, eax
test esi, esi
jne 0x6da13394
mov r8, qword [rsp + 0xb8]
mov rcx, qword [rsp + 0xb0]
mov rdx, r8
or rdx, rcx
or rdx, qword [rsp + 0xc0]
or rdx, qword [rsp + 0xc8]
jne 0x6da133a8
add rsp, 0xc18
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
mov rax, qword [rsp + 0xc8]
movabs rdx, 0x7ffffffffffffffe
xor r10d, r10d
mov r9, qword [rsp + 0xc0]
mov qword [rsp + 0xd8], r8
mov qword [rsp + 0xf8], r8
mov qword [rsp + 0xd0], rcx
cmp rax, rdx
mov qword [rsp + 0xe8], rax
mov qword [rsp + 0x108], rax
setbe r10b
shr rax, 0x3f
mov qword [rsp + 0xe0], r9
mov edx, r10d
mov qword [rsp + 0x100], r9
mov qword [rsp + 0xf0], rcx
not edx
and edx, eax
cmp r9, 0xffffffffffffffff
movabs rax, 0x5d576e7357a4501c
setne r9b
cmp r8, rax
mov r11d, edx
setbe al
movzx r9d, r9b
not r11d
movzx eax, al
or eax, r9d
movabs r9, 0x5d576e7357a4501d
and eax, r11d
or eax, r10d
cmp r8, r9
movabs r9, 0xdfe92f46681b20a0
seta r8b
xor ebx, ebx
cmp rcx, r9
seta bl
movzx r8d, r8b
not eax
or ebx, r8d
and ecx, 1
xor ebp, ebp
and ebx, eax
lea rax, [rsp + 0x810]
mov r14d, ecx
or ebx, edx
lea rdx, [rsp + 0xf0]
mov rcx, rax
mov qword [rsp + 0x48], rax
xor r14d, ebx
call fcn.6da04f70
mov rax, qword [rsp + 0x820]
or rax, qword [rsp + 0x818]
or rax, qword [rsp + 0x828]
mov rdx, qword [rsp + 0x810]
mov rsi, qword [rsp + 0xf0]
mov dword [rsp + 0x94], 1
xor rdx, 1
or rax, rdx
setne bpl
xor r9d, r9d
lea eax, [rbp - 1]
and eax, 0x100
add eax, r14d
mov r8d, eax
and eax, 0x3f
shr r8d, 6
mov ecx, eax
test r8d, r8d
sete r9b
xor edx, edx
xor edi, edi
shl r9, cl
add rsi, r9
adc rdi, rdx
mov r13, rsi
xor r9d, r9d
mov rsi, rdi
xor edi, edi
cmp r8d, 1
sete r9b
xor r10d, r10d
xor edx, edx
shl r9, cl
mov rax, r9
mov r9, qword [rsp + 0xf8]
add rax, r9
adc rdx, r10
add rax, rsi
adc rdx, rdi
mov rsi, rax
xor r9d, r9d
mov rax, rdx
xor edx, edx
cmp r8d, 2
sete r9b
mov r11, rax
mov r12, rdx
shl r9, cl
xor r10d, r10d
xor edx, edx
mov rax, r9
mov r9, qword [rsp + 0x100]
add rax, r9
adc rdx, r10
add rax, r11
mov r11, qword [rsp + 0x108]
adc rdx, r12
mov rdi, rax
xor eax, eax
cmp r8d, 3
movsxd r8, ebx
sete al
mov r15, rax
mov rax, rsi
shl r15, cl
mov r9, r15
add r9, r11
or rax, r13
neg r8
lea r12, [r9 + rdx]
or rax, rdi
xor r11d, r11d
movabs r9, 0xbfd25e8cd0364142
or rax, r12
setne r11b
xor r13, r8
and r9, r8
mov rax, r13
neg r11
xor ebx, ebx
xor edx, edx
add rax, r9
mov r13, r11
adc rdx, rbx
and r13, rax
xor rsi, r8
mov rax, rdx
xor ebx, ebx
xor edx, edx
movabs r9, 0xbaaedce6af48a03b
add rax, rsi
mov rsi, r11
adc rdx, rbx
and r9, r8
xor ebx, ebx
add rax, r9
adc rdx, rbx
xor rdi, r8
and rsi, rax
mov r9, rdi
mov rdi, r8
mov rax, rdx
and rdi, 0xfffffffffffffffe
xor edx, edx
xor r10d, r10d
mov rcx, rdi
xor ebx, ebx
mov rdi, r11
add rcx, r9
adc rbx, r10
add rcx, rax
lea r10d, [rbp + rbp]
adc rbx, rdx
xor r12, r8
and rdi, rcx
mov rax, r12
mov ecx, r14d
lea rbp, [rsp + 0x400]
add rax, r8
add rax, rbx
lea rbx, [rsp + 0x300]
and rax, r11
cmp r8, 1
mov r8, rsi
sbb edx, edx
sub r10d, 1
mov r9, rax
and edx, 2
mov r11d, r13d
shl r8, 0x3c
sub edx, 1
shr r13, 4
shr rsi, 4
imul r10d, edx
mov rdx, rdi
shl r9, 0x3c
shl rdx, 0x3c
shr rdi, 4
shl dword [rsp + 0x94], cl
and r11d, 0xf
mov qword [rsp + 0x40], rbx
mov rcx, rbx
shr rax, 4
add r9, rdi
add rdx, rsi
add r8, r13
jmp 0x6da136b9
mov rdx, rsi
mov r8, rdi
mov r11d, ebx
mov rdi, rdx
mov rsi, r8
shr rdx, 4
shr rsi, 4
shl rdi, 0x3c
mov ebx, r8d
add rdi, rsi
mov rsi, r9
shr r9, 4
shl rsi, 0x3c
and ebx, 0xf
add rsi, rdx
mov rdx, rax
shr rax, 4
shl rdx, 0x3c
add r9, rdx
xor edx, edx
test r11d, r11d
setg dl
and r8d, 1
add rcx, 4
lea edx, [rdx + rdx - 1]
xor r8d, 1
imul edx, r8d
add ebx, edx
shl edx, 4
sub r11d, edx
imul r11d, r10d
mov dword [rcx - 4], r11d
cmp rcx, rbp
jne 0x6da136b0
mov qword [rsp + 0x20], rdi
movq xmm0, qword [rsp + 0x20]
mov qword [rsp + 0x20], rsi
movhps xmm0, qword [rsp + 0x20]
mov qword [rsp + 0x20], r9
imul r10d, ebx
movdqa xmmword [rsp + 0xf0], xmm0
movq xmm0, qword [rsp + 0x20]
mov qword [rsp + 0x20], rax
mov eax, dword [rsp + 0x210]
movhps xmm0, qword [rsp + 0x20]
mov dword [rsp + 0x400], r10d
movdqa xmmword [rsp + 0x100], xmm0
mov dword [rsp + 0x2f8], eax
mov rax, qword [rsp + 0x1c0]
mov qword [rsp + 0x280], rax
mov rax, qword [rsp + 0x1c8]
mov qword [rsp + 0x288], rax
mov rax, qword [rsp + 0x1d0]
mov qword [rsp + 0x290], rax
mov rax, qword [rsp + 0x1d8]
mov qword [rsp + 0x298], rax
mov rax, qword [rsp + 0x1e0]
mov qword [rsp + 0x2a0], rax
mov rax, qword [rsp + 0x1e8]
mov qword [rsp + 0x2a8], rax
mov rax, qword [rsp + 0x1f0]
mov qword [rsp + 0x2b0], rax
mov rax, qword [rsp + 0x1f8]
mov qword [rsp + 0x2b8], rax
mov rax, qword [rsp + 0x200]
mov qword [rsp + 0x2c0], rax
mov rax, qword [rsp + 0x208]
mov qword [rsp + 0x2c8], rax
lea rax, [rsp + 0x280]
mov qword [rsp + 0x2d0], 1
mov rsi, qword [rsp + 0x48]
mov qword [rsp + 0x2f0], 0
mov r8, rax
mov qword [rsp + 0x38], rax
lea rax, [rsp + 0x410]
mov qword [rsp + 0x2e8], 0
mov qword [rsp + 0x2e0], 0
mov rdx, rax
mov rcx, rsi
mov rbx, rax
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x2d8], 0
call fcn.6da0cee0
lea rax, [rsp + 0x110]
mov r9, rbx
mov r8, rsi
mov rdx, rax
mov qword [rsp + 0x98], rax
lea rax, [rsp + 0x550]
mov rbx, rax
mov rcx, rax
mov qword [rsp + 0x68], rax
lea rsi, [rbx + 0x28]
lea rbx, [rbx + 0x2e8]
call fcn.6da09880
nop
mov rcx, rsi
add rsi, 0x58
call fcn.6da04300
cmp rsi, rbx
jne 0x6da138c0
mov eax, dword [rsp + 0x400]
mov r13, qword [rsp + 0x220]
mov r12, qword [rsp + 0x228]
mov rbp, qword [rsp + 0x230]
mov rdi, qword [rsp + 0x238]
mov rsi, qword [rsp + 0x240]
mov ebx, eax
mov dword [rsp + 0x28], eax
xor eax, eax
test ebx, ebx
mov r11, qword [rsp + 0x250]
mov r10, qword [rsp + 0x258]
setg al
mov r9, qword [rsp + 0x260]
mov r15, qword [rsp + 0x268]
lea eax, [rax + rax - 1]
xor r8d, r8d
imul eax, ebx
mov ebx, eax
mov dword [rsp + 0x30], eax
shr eax, 0x1f
add eax, ebx
mov rbx, qword [rsp + 0x248]
mov dword [rsp + 0x20], eax
mov rax, qword [rsp + 0x68]
sar dword [rsp + 0x20], 1
jmp 0x6da1397e
mov r9, r10
mov r15, rcx
mov r10, r11
mov r11, rbx
mov rbx, rsi
mov rsi, rdi
mov rdi, rbp
mov rbp, r12
mov r12, r13
mov r13, r14
xor edx, edx
cmp dword [rsp + 0x20], r8d
sete dl
add r8d, 1
add rax, 0x58
sub rdx, 1
mov rcx, rdx
and r13, rdx
and r12, rdx
not rcx
and rbp, rdx
and rdi, rdx
mov r14, rcx
and r14, qword [rax - 0x58]
and rsi, rdx
and rbx, rdx
and r11, rdx
and r10, rdx
and r9, rdx
and rdx, r15
or r14, r13
mov r13, rcx
and r13, qword [rax - 0x50]
or r13, r12
mov r12, rcx
and r12, qword [rax - 0x48]
or r12, rbp
mov rbp, rcx
and rbp, qword [rax - 0x40]
or rbp, rdi
mov rdi, rcx
and rdi, qword [rax - 0x38]
or rdi, rsi
mov rsi, rcx
and rsi, qword [rax - 0x30]
or rsi, rbx
mov rbx, rcx
and rbx, qword [rax - 0x28]
or rbx, r11
mov r11, rcx
and r11, qword [rax - 0x20]
or r11, r10
mov r10, rcx
and rcx, qword [rax - 0x10]
and r10, qword [rax - 0x18]
or rcx, rdx
or r10, r9
cmp r8d, 8
jne 0x6da13960
mov eax, dword [rsp + 0x30]
cmp dword [rsp + 0x28], eax
movabs r9, 0x3ffffffffffffc
mov rdx, r9
mov qword [rsp + 0x220], r14
mov qword [rsp + 0x228], r13
mov qword [rsp + 0x230], r12
mov qword [rsp + 0x238], rbp
mov qword [rsp + 0x240], rdi
mov dword [rsp + 0x270], 0
setne al
sub rdx, rbx
mov dword [rsp + 0x2f8], 0
movzx eax, al
mov qword [rsp + 0x280], r14
mov qword [rsp + 0x288], r13
lea r15, [rax - 1]
mov qword [rsp + 0x290], r12
mov qword [rsp + 0x298], rbp
mov qword [rsp + 0x2a0], rdi
mov qword [rsp + 0x2d0], 1
mov rax, r15
and rbx, r15
mov qword [rsp + 0x2f0], 0
not rax
mov qword [rsp + 0x2e8], 0
mov qword [rsp + 0x2e0], 0
mov r8, rax
movabs rax, 0x3ffffbfffff0bc
mov qword [rsp + 0x2d8], 0
sub rax, rsi
and rsi, r15
and rdx, r8
and rax, r8
or rdx, rbx
or rax, rsi
mov rsi, r8
mov r8, r9
mov qword [rsp + 0x248], rax
mov qword [rsp + 0x2a8], rax
sub r8, r11
mov rax, qword [rsp + 0x40]
sub r9, r10
and r8, rsi
and r11, r15
and r10, r15
mov qword [rsp + 0x250], rdx
or r8, r11
mov r11, r9
movabs r9, 0x3fffffffffffc
lea rbx, [rax + 0xfc]
sub r9, rcx
and r11, rsi
and r9, rsi
and rcx, r15
or r11, r10
mov qword [rsp + 0x40], rbx
lea rbx, [rsp + 0x140]
or r9, rcx
sub rax, 4
mov qword [rsp + 0x258], r8
mov qword [rsp + 0x260], r11
mov qword [rsp + 0x28], rbx
lea rbx, [rsp + 0x180]
mov qword [rsp + 0x78], rax
mov qword [rsp + 0x268], r9
mov qword [rsp + 0x2b0], rdx
xor eax, eax
mov qword [rsp + 0x2b8], r8
mov qword [rsp + 0x2c0], r11
mov qword [rsp + 0x2c8], r9
mov qword [rsp + 0x50], rbx
lea rbx, [rsp + 0x220]
mov qword [rsp + 0x80], rbx
mov rbx, qword [rsp + 0x38]
lea rsi, [rbx + 0x28]
add rbx, 0x50
mov qword [rsp + 0x58], rbx
mov qword [rsp + 0x30], rsi
test eax, eax
mov ebx, 4
mov rsi, qword [rsp + 0x70]
jne 0x6da13f63
mov rdi, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x58]
mov r8, rdi
mov rdx, rcx
call fcn.6da03c70
mov r14, qword [rsp + 0x28]
mov r15, qword [rsp + 0x38]
shl qword [rsp + 0x2d0], 1
shl qword [rsp + 0x2d8], 1
mov rdx, r15
mov rcx, r14
shl qword [rsp + 0x2e0], 1
shl qword [rsp + 0x2e8], 1
shl qword [rsp + 0x2f0], 1
call fcn.6da03fa0
mov rax, qword [rsp + 0x140]
mov rdx, r14
mov rcx, qword [rsp + 0x50]
lea rax, [rax + rax*2]
mov qword [rsp + 0x28], r14
mov qword [rsp + 0x140], rax
mov rax, qword [rsp + 0x148]
lea rax, [rax + rax*2]
mov qword [rsp + 0x148], rax
mov rax, qword [rsp + 0x150]
lea rax, [rax + rax*2]
mov qword [rsp + 0x150], rax
mov rax, qword [rsp + 0x158]
lea rax, [rax + rax*2]
mov qword [rsp + 0x158], rax
mov rax, qword [rsp + 0x160]
lea rax, [rax + rax*2]
mov qword [rsp + 0x160], rax
call fcn.6da03fa0
mov rdx, rdi
mov rcx, rsi
mov qword [rsp + 0x30], rdi
call fcn.6da03fa0
mov rcx, qword [rsp + 0x48]
mov rdx, rsi
shl qword [rsp + 0x410], 1
shl qword [rsp + 0x418], 1
shl qword [rsp + 0x420], 1
shl qword [rsp + 0x428], 1
shl qword [rsp + 0x430], 1
call fcn.6da03fa0
mov r8, r15
mov rdx, rsi
mov rcx, rsi
shl qword [rsp + 0x810], 1
shl qword [rsp + 0x818], 1
shl qword [rsp + 0x820], 1
shl qword [rsp + 0x828], 1
shl qword [rsp + 0x830], 1
call fcn.6da03c70
mov rax, qword [rsp + 0x410]
mov rbp, qword [rsp + 0x180]
movabs r10, 0x9ffff5ffffd9d6
mov rdi, qword [rsp + 0x188]
mov r9, qword [rsp + 0x418]
lea r11, [rax*4]
add r10, rbp
mov r8, qword [rsp + 0x420]
mov rcx, qword [rsp + 0x428]
mov rdx, qword [rsp + 0x430]
lea rax, [rax + rax*2]
sub r10, r11
lea r15, [r9*4]
lea r9, [r9 + r9*2]
mov qword [rsp + 0x280], r10
movabs r10, 0x9ffffffffffff6
lea r14, [r8*4]
lea r11, [rdi + r10]
lea r13, [rcx*4]
lea r12, [rdx*4]
lea r8, [r8 + r8*2]
lea rcx, [rcx + rcx*2]
lea rdx, [rdx + rdx*2]
sub r11, r15
mov r15, qword [rsp + 0x190]
mov qword [rsp + 0x288], r11
lea r11, [r15 + r10]
sub r11, r14
mov qword [rsp + 0x290], r11
mov r11, qword [rsp + 0x198]
add r10, r11
sub r10, r13
mov r13, qword [rsp + 0x1a0]
mov qword [rsp + 0x298], r10
movabs r10, 0x9fffffffffff6
add r10, r13
sub r10, r12
mov qword [rsp + 0x2a0], r10
movabs r10, 0x3ffffbfffff0bc
sub r10, rbp
movabs rbp, 0x3ffffffffffffc
mov r12, rbp
lea rax, [r10 + rax*2]
mov qword [rsp + 0x180], r10
sub r12, rdi
mov rdi, r12
mov qword [rsp + 0x188], r12
mov qword [rsp + 0x410], rax
mov r12, rbp
lea rax, [rdi + r9*2]
sub rbp, r11
sub r12, r15
movabs r11, 0x3fffffffffffc
mov qword [rsp + 0x198], rbp
mov qword [rsp + 0x418], rax
lea rax, [r12 + r8*2]
sub r11, r13
mov r8, rsi
mov qword [rsp + 0x190], r12
mov qword [rsp + 0x1a0], r11
mov qword [rsp + 0x420], rax
lea rax, [rbp + rcx*2]
mov rcx, qword [rsp + 0x30]
mov qword [rsp + 0x428], rax
lea rax, [r11 + rdx*2]
mov rdx, qword [rsp + 0x28]
mov qword [rsp + 0x430], rax
call fcn.6da03c70
movabs rax, 0x5ffff9ffffe91a
add rax, qword [rsp + 0x2a8]
sub rax, qword [rsp + 0x810]
mov qword [rsp + 0x2a8], rax
movabs rax, 0x5ffffffffffffa
mov rdx, rax
sub rdx, qword [rsp + 0x818]
add qword [rsp + 0x2b0], rdx
mov rdx, rax
sub rax, qword [rsp + 0x828]
sub rdx, qword [rsp + 0x820]
add qword [rsp + 0x2c0], rax
movabs rax, 0x5fffffffffffa
sub rax, qword [rsp + 0x830]
add qword [rsp + 0x2b8], rdx
add qword [rsp + 0x2c8], rax
sub ebx, 1
je 0x6da13f7c
mov eax, dword [rsp + 0x2f8]
test eax, eax
je 0x6da13c05
sub ebx, 1
jne 0x6da13f68
mov rax, qword [rsp + 0x40]
mov r12, qword [rsp + 0x220]
mov rbp, qword [rsp + 0x228]
mov rdi, qword [rsp + 0x230]
mov rsi, qword [rsp + 0x238]
mov r11, qword [rsp + 0x240]
mov eax, dword [rax]
mov r10, qword [rsp + 0x248]
mov r9, qword [rsp + 0x250]
mov r8, qword [rsp + 0x258]
mov r15, qword [rsp + 0x260]
mov r14, qword [rsp + 0x268]
mov ebx, eax
mov dword [rsp + 0x64], eax
xor eax, eax
test ebx, ebx
setg al
lea eax, [rax + rax - 1]
imul eax, ebx
mov ebx, eax
mov dword [rsp + 0x90], eax
shr eax, 0x1f
add eax, ebx
xor ebx, ebx
mov dword [rsp + 0x20], eax
mov rax, qword [rsp + 0x68]
sar dword [rsp + 0x20], 1
jmp 0x6da1402e
mov r15, r8
mov r14, rcx
mov r8, r9
mov r9, r10
mov r10, r11
mov r11, rsi
mov rsi, rdi
mov rdi, rbp
mov rbp, r12
mov r12, r13
xor edx, edx
cmp dword [rsp + 0x20], ebx
sete dl
add ebx, 1
add rax, 0x58
sub rdx, 1
mov rcx, rdx
and r12, rdx
and rbp, rdx
not rcx
and rdi, rdx
and rsi, rdx
mov r13, rcx
and r13, qword [rax - 0x58]
and r11, rdx
and r10, rdx
and r9, rdx
and r8, rdx
and r15, rdx
and rdx, r14
or r13, r12
mov r12, rcx
and r12, qword [rax - 0x50]
or r12, rbp
mov rbp, rcx
and rbp, qword [rax - 0x48]
or rbp, rdi
mov rdi, rcx
and rdi, qword [rax - 0x40]
or rdi, rsi
mov rsi, rcx
and rsi, qword [rax - 0x38]
or rsi, r11
mov r11, rcx
and r11, qword [rax - 0x30]
or r11, r10
mov r10, rcx
and r10, qword [rax - 0x28]
or r10, r9
mov r9, rcx
and r9, qword [rax - 0x20]
or r9, r8
mov r8, rcx
and rcx, qword [rax - 0x10]
and r8, qword [rax - 0x18]
or rcx, rdx
or r8, r15
cmp ebx, 8
jne 0x6da14010
mov eax, dword [rsp + 0x90]
xor edx, edx
cmp dword [rsp + 0x64], eax
movabs rax, 0x3ffffbfffff0bc
mov qword [rsp + 0x220], r13
mov qword [rsp + 0x228], r12
mov qword [rsp + 0x230], rbp
mov qword [rsp + 0x238], rdi
mov qword [rsp + 0x240], rsi
mov dword [rsp + 0x270], 0
setne dl
sub rax, r11
sub rdx, 1
mov rbx, rdx
and r11, rdx
not rbx
and rax, rbx
or rax, r11
movabs r11, 0x3ffffffffffffc
mov qword [rsp + 0x248], rax
mov rax, r11
sub rax, r10
and r10, rdx
and rax, rbx
or rax, r10
mov qword [rsp + 0x250], rax
mov rax, r11
sub r11, r8
sub rax, r9
and r9, rdx
and r8, rdx
and rax, rbx
and r11, rbx
or rax, r9
or r11, r8
mov r8, qword [rsp + 0x80]
mov qword [rsp + 0x258], rax
movabs rax, 0x3fffffffffffc
mov qword [rsp + 0x260], r11
sub rax, rcx
and rcx, rdx
and rax, rbx
or rax, rcx
mov rcx, qword [rsp + 0x38]
mov qword [rsp + 0x268], rax
mov rdx, rcx
call fcn.6da0a940
sub qword [rsp + 0x40], 4
mov rax, qword [rsp + 0x78]
cmp qword [rsp + 0x40], rax
je 0x6da141d8
mov eax, dword [rsp + 0x2f8]
jmp 0x6da13bf3
mov rax, qword [rsp + 0x38]
mov r8, qword [rsp + 0x98]
lea rcx, [rax + 0x50]
mov rdx, rcx
call fcn.6da03c70
mov rax, qword [rsp + 0x210]
mov r11, qword [rsp + 0x1c0]
mov r10, qword [rsp + 0x1c8]
mov r9, qword [rsp + 0x1d0]
mov r8, qword [rsp + 0x1d8]
mov rcx, qword [rsp + 0x1e0]
mov rdx, qword [rsp + 0x1e8]
mov rbx, qword [rsp + 0x1f0]
test eax, eax
mov rsi, qword [rsp + 0x1f8]
mov rdi, qword [rsp + 0x200]
mov rbp, qword [rsp + 0x208]
mov qword [rsp + 0x410], r11
mov qword [rsp + 0x418], r10
mov qword [rsp + 0x420], r9
mov qword [rsp + 0x428], r8
mov qword [rsp + 0x430], rcx
mov qword [rsp + 0x438], rdx
mov qword [rsp + 0x440], rbx
mov qword [rsp + 0x448], rsi
mov qword [rsp + 0x450], rdi
mov qword [rsp + 0x458], rbp
mov qword [rsp + 0x460], rax
mov dword [rsp + 0x888], eax
mov qword [rsp + 0x810], r11
mov qword [rsp + 0x818], r10
mov qword [rsp + 0x820], r9
mov qword [rsp + 0x828], r8
mov qword [rsp + 0x830], rcx
mov qword [rsp + 0x838], rdx
mov qword [rsp + 0x840], rbx
mov qword [rsp + 0x848], rsi
mov qword [rsp + 0x850], rdi
mov qword [rsp + 0x858], rbp
mov qword [rsp + 0x860], 1
mov qword [rsp + 0x880], 0
mov qword [rsp + 0x878], 0
mov qword [rsp + 0x870], 0
mov qword [rsp + 0x868], 0
jne 0x6da14348
mov rcx, qword [rsp + 0x48]
xor r8d, r8d
mov rdx, rcx
call fcn.6da0a580
mov r14, qword [rsp + 0x48]
mov r15, qword [rsp + 0x70]
lea rbx, [rsp + 0x1c0]
mov rcx, r15
mov rdx, r14
call fcn.6da05fc0
mov rcx, qword [rsp + 0x28]
mov rdx, rbx
call fcn.6da09e30
mov rcx, qword [rsp + 0x50]
mov rdx, r15
call fcn.6da09e30
xor eax, eax
cmp dword [rsp + 0x94], 2
mov dword [rsp + 0x460], 0
sete al
sub rax, 1
mov rdx, rax
mov rcx, rax
and rcx, qword [rsp + 0x140]
not rdx
mov rbp, rax
and rbp, qword [rsp + 0x170]
mov rdi, rdx
and rdi, qword [rsp + 0x180]
mov rsi, rdx
and rsi, qword [rsp + 0x188]
mov r11, rdx
and r11, qword [rsp + 0x190]
mov r10, rdx
and r10, qword [rsp + 0x198]
mov r9, rdx
and r9, qword [rsp + 0x1a0]
mov r8, rdx
and r8, qword [rsp + 0x1a8]
or rdi, rcx
mov rcx, rax
and rcx, qword [rsp + 0x148]
mov qword [rsp + 0x140], rdi
or rsi, rcx
mov rcx, rax
and rcx, qword [rsp + 0x150]
mov qword [rsp + 0x148], rsi
or r11, rcx
mov rcx, rax
and rcx, qword [rsp + 0x158]
mov qword [rsp + 0x150], r11
or r10, rcx
mov rcx, rax
and rcx, qword [rsp + 0x160]
mov qword [rsp + 0x158], r10
or r9, rcx
mov rcx, rax
and rcx, qword [rsp + 0x168]
and rax, qword [rsp + 0x178]
mov qword [rsp + 0x160], r9
or r8, rcx
mov rcx, rdx
and rdx, qword [rsp + 0x1b8]
and rcx, qword [rsp + 0x1b0]
mov qword [rsp + 0x168], r8
or rdx, rax
movabs rax, 0xfffffffffffff
or rcx, rbp
mov rbp, rdi
shr rdi, 0x34
and rbp, rax
mov qword [rsp + 0x170], rcx
mov qword [rsp + 0x178], rdx
mov qword [rsp + 0x410], rbp
mov rbp, rsi
shr rsi, 0x28
shl rbp, 0xc
and rbp, rax
or rbp, rdi
mov rdi, r11
shl rdi, 0x18
mov qword [rsp + 0x418], rbp
and rdi, rax
or rdi, rsi
mov rsi, r10
shr r11, 0x1c
shl rsi, 0x24
shr r10, 0x10
mov qword [rsp + 0x420], rdi
and rsi, rax
mov qword [rsp + 0x430], r10
mov r10, rdx
or rsi, r11
mov r11, rcx
mov rdi, r9
mov qword [rsp + 0x428], rsi
mov rsi, r8
shl r11, 0x18
shl rsi, 0xc
shl r10, 0x24
and rdi, rax
and rsi, rax
and r11, rax
and r10, rax
movabs rax, 0x3ffffbfffff0bc
shr r9, 0x34
shr rcx, 0x1c
sub rax, rdi
or rsi, r9
or r10, rcx
mov qword [rsp + 0x438], rax
movabs rax, 0x3ffffffffffffc
shr r8, 0x28
mov rcx, rax
or r11, r8
shr rdx, 0x10
sub rcx, rsi
mov r8, r15
mov qword [rsp + 0x440], rcx
mov rcx, rax
sub rax, r10
sub rcx, r11
mov qword [rsp + 0x448], rcx
mov rdi, qword [rsp + 0x38]
mov qword [rsp + 0x450], rax
movabs rax, 0x3fffffffffffc
sub rax, rdx
mov rcx, rdi
mov rdx, rdi
lea rsi, [rdi + 0x50]
mov qword [rsp + 0x458], rax
call fcn.6da0a940
mov eax, dword [rsp + 0x2f8]
mov rdx, rsi
mov rcx, rsi
mov dword [rsp + 0x210], eax
call fcn.6da04880
mov r15, qword [rsp + 0x68]
mov rdx, rsi
mov rcx, r15
call fcn.6da03fa0
mov r8, r15
mov rdx, rsi
mov rcx, r14
call fcn.6da03c70
mov r8, r15
mov rdx, rdi
mov rcx, rdi
call fcn.6da03c70
lea rcx, [rdi + 0x28]
mov r8, r14
mov rdx, rcx
call fcn.6da03c70
mov rax, qword [rsp + 0x280]
mov rcx, rbx
mov qword [rsp + 0x2d0], 1
mov qword [rsp + 0x2f0], 0
mov qword [rsp + 0x2e8], 0
mov qword [rsp + 0x2e0], 0
mov qword [rsp + 0x2d8], 0
mov qword [rsp + 0x1c0], rax
mov rax, qword [rsp + 0x288]
mov qword [rsp + 0x1c8], rax
mov rax, qword [rsp + 0x290]
mov qword [rsp + 0x1d0], rax
mov rax, qword [rsp + 0x298]
mov qword [rsp + 0x1d8], rax
mov rax, qword [rsp + 0x2a0]
mov qword [rsp + 0x1e0], rax
mov rax, qword [rsp + 0x2a8]
mov qword [rsp + 0x1e8], rax
mov rax, qword [rsp + 0x2b0]
mov qword [rsp + 0x1f0], rax
mov rax, qword [rsp + 0x2b8]
mov qword [rsp + 0x1f8], rax
mov rax, qword [rsp + 0x2c0]
mov qword [rsp + 0x200], rax
mov rax, qword [rsp + 0x2c8]
mov qword [rsp + 0x208], rax
call fcn.6da041f0
lea rcx, [rbx + 0x28]
call fcn.6da041f0
mov rdx, rbx
mov rcx, r15
call fcn.6da04720
mov eax, dword [rsp + 0x1e8]
mov rdx, qword [rsp + 0x88]
mov rcx, r14
mov dword [rsp + 0x810], 0x6a09e667
mov dword [rsp + 0x814], 0xbb67ae85
mov dword [rsp + 0x818], 0x3c6ef372
mov dword [rsp + 0x81c], 0xa54ff53a
and eax, 1
mov dword [rsp + 0x820], 0x510e527f
mov dword [rsp + 0x824], 0x9b05688c
or eax, 2
mov dword [rsp + 0x828], 0x1f83d9ab
mov dword [rsp + 0x82c], 0x5be0cd19
mov byte [rsp + 0x830], al
mov rax, qword [rsp + 0x550]
mov qword [rsp + 0x870], 0x21
mov qword [rsp + 0x831], rax
mov rax, qword [rsp + 0x558]
mov qword [rsp + 0x839], rax
mov rax, qword [rsp + 0x560]
mov qword [rsp + 0x841], rax
mov rax, qword [rsp + 0x568]
mov qword [rsp + 0x849], rax
call fcn.6da0bfc0
mov eax, 1
jmp 0x6da13394
mov rdx, qword [rcx + 0xb8]
lea rcx, str.result___NULL
call qword [rsi + 0xb0]
xor eax, eax
jmp 0x6da13394
mov rcx, rsi
mov qword [rsp + 0x20], r9
call fcn.6dacab10
mov r9, qword [rsp + 0x20]
jmp 0x6da13347
mov rdx, qword [rcx + 0xb8]
lea rcx, str.scalar___NULL
call qword [rsi + 0xb0]
xor eax, eax
jmp 0x6da13394
mov rdx, qword [rcx + 0xb8]
lea rcx, str.point___NULL
call qword [rsi + 0xb0]
xor eax, eax
jmp 0x6da13394