Function at 0x1400d7a30
Capabilities:
Encode data using xor
Hash data using fnv
Resolve function by parsing pe exports

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x258
vmovaps xmmword [rsp + 0x240], xmm15
vmovaps xmmword [rsp + 0x230], xmm14
vmovaps xmmword [rsp + 0x220], xmm13
vmovaps xmmword [rsp + 0x210], xmm12
vmovaps xmmword [rsp + 0x200], xmm11
vmovaps xmmword [rsp + 0x1f0], xmm10
vmovaps xmmword [rsp + 0x1e0], xmm9
vmovaps xmmword [rsp + 0x1d0], xmm8
vmovaps xmmword [rsp + 0x1c0], xmm7
vmovaps xmmword [rsp + 0x1b0], xmm6
mov rsi, rcx
vmovsd xmm7, qword [rcx + 0x2c]
vmovss xmm6, dword [rcx + 0x34]
call fcn.1400d9920
test al, al
je 0x1400d7c71
vmovsd xmm0, qword [rsi + 0x2c]
vcmpneqps xmm0, xmm0, xmm7
vshufps xmm0, xmm0, xmm0, 0x50
vmovmskpd eax, xmm0
test al, 1
jne 0x1400d7adf
shr al, 1
jne 0x1400d7adf
vmovss xmm0, dword [rsi + 0x34]
vucomiss xmm0, xmm6
jne 0x1400d7adf
jnp 0x1400d7af8
movzx eax, byte [0x14012fa40]
lea rcx, [0x14012f720]
mov rax, qword [rcx + rax*8]
mov qword [rsi + 0x288], rax
mov al, 1
cmp byte [rsi + 0x215], 0
jne 0x1400d7c73
mov rax, qword [rsi + 0x280]
mov qword [rsp + 0x110], rax
mov rax, qword [rsi + 0x50]
mov byte [rsi + 0x248], 0
mov qword [rsi + 0x220], 0
mov qword [rsp + 0x28], rsi
mov qword [rsi + 0x238], 0
lea rbp, [rax + 0x1bc]
mov rdx, qword [0x14012f520]
mov qword [rsp + 0x60], rax
lea r14, [rax + 0x1be]
mov rbx, qword [0x14012f4d8]
mov r15d, dword [0x14012f4e0]
mov rax, qword [0x14012f4f0]
mov qword [rsp + 0x38], rax
lea rax, [r15*8]
lea rax, [rax + rax*2]
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x9a]
mov qword [rsp + 0xa0], rax
lea rax, [rsp + 0x48]
lea rcx, [0x14012f448]
lea r9, [rsp + 0x68]
mov qword [rsp + 0x40], rdx
mov qword [rsp + 0x20], rax
mov rsi, rcx
mov r8, rbp
mov rdi, r9
call fcn.14000c5d0
test al, al
mov r8, qword [rsp + 0x30]
je 0x1400d7c71
mov r13, qword [rsp + 0x48]
cmp r13, r14
mov r12, r14
cmovb r12, r13
sub r12, rbp
mov rdx, qword [rsp + 0x68]
mov rax, r12
add rax, rdx
jb 0x1400d7c71
test r15d, r15d
je 0x1400d7c71
xor ecx, ecx
jmp 0x1400d7c09
add rcx, 0x18
cmp r8, rcx
je 0x1400d7c71
cmp qword [rbx + rcx], rdx
ja 0x1400d7c00
cmp rax, qword [rbx + rcx + 8]
ja 0x1400d7c00
add rdx, qword [rsp + 0x38]
mov rbp, qword [rsp + 0xa0]
mov rcx, rbp
mov r8, r12
call fcn.1400224e0
cmp r14, r13
jbe 0x1400d7c56
add rbp, r12
mov qword [rsp + 0xa0], rbp
mov rbp, r13
lea rax, [rsp + 0x48]
mov rdx, qword [rsp + 0x40]
mov rcx, rsi
mov r9, rdi
jmp 0x1400d7ba7
movzx ecx, word [rsp + 0x9a]
test rcx, rcx
je 0x1400d911e
movzx eax, cx
cmp eax, 0x3e8
jbe 0x1400d7ce4
xor eax, eax
vmovaps xmm6, xmmword [rsp + 0x1b0]
vmovaps xmm7, xmmword [rsp + 0x1c0]
vmovaps xmm8, xmmword [rsp + 0x1d0]
vmovaps xmm9, xmmword [rsp + 0x1e0]
vmovaps xmm10, xmmword [rsp + 0x1f0]
vmovaps xmm11, xmmword [rsp + 0x200]
vmovaps xmm12, xmmword [rsp + 0x210]
vmovaps xmm13, xmmword [rsp + 0x220]
vmovaps xmm14, xmmword [rsp + 0x230]
vmovaps xmm15, xmmword [rsp + 0x240]
add rsp, 0x258
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
vzeroupper
ret
mov qword [rsp + 0xa0], rcx
mov rax, qword [rsp + 0x60]
lea rdi, [rax + 0x1e0]
lea r15, [rax + 0x1e8]
lea r14, [rsp + 0x178]
lea rsi, [0x14012f448]
lea r12, [rsp + 0x68]
lea rax, [rsp + 0x48]
mov qword [rsp + 0x20], rax
mov rcx, rsi
mov rdx, qword [rsp + 0x40]
mov r8, rdi
mov r9, r12
call fcn.14000c5d0
test al, al
mov r8, qword [rsp + 0x30]
je 0x1400d7c71
mov rbp, qword [rsp + 0x48]
cmp rbp, r15
mov r13, r15
cmovb r13, rbp
sub r13, rdi
mov rdx, qword [rsp + 0x68]
mov rax, r13
add rax, rdx
jb 0x1400d7c71
xor ecx, ecx
jmp 0x1400d7d71
add rcx, 0x18
cmp r8, rcx
je 0x1400d7c71
cmp qword [rbx + rcx], rdx
ja 0x1400d7d64
cmp rax, qword [rbx + rcx + 8]
ja 0x1400d7d64
add rdx, qword [rsp + 0x38]
mov rcx, r14
mov r8, r13
call fcn.1400224e0
cmp r15, rbp
jbe 0x1400d7d9e
add r14, r13
mov rdi, rbp
jmp 0x1400d7d13
movzx eax, word [0x14012fb64]
mov rcx, qword [rsp + 0x60]
add rcx, rax
movzx eax, word [0x14012fb86]
lea r15, [rcx + rax]
lea rbp, [rax + rcx]
add rbp, 8
lea r14, [rsp + 0x170]
lea rsi, [0x14012f448]
lea r12, [rsp + 0x68]
lea rax, [rsp + 0x48]
mov qword [rsp + 0x20], rax
mov rcx, rsi
mov rdx, qword [rsp + 0x40]
mov r8, r15
mov r9, r12
call fcn.14000c5d0
test al, al
mov r8, qword [rsp + 0x30]
je 0x1400d7c71
mov rdi, qword [rsp + 0x48]
cmp rdi, rbp
mov r13, rbp
cmovb r13, rdi
sub r13, r15
mov rdx, qword [rsp + 0x68]
mov rax, r13
add rax, rdx
jb 0x1400d7c71
xor ecx, ecx
jmp 0x1400d7e32
add rcx, 0x18
cmp r8, rcx
je 0x1400d7c71
cmp qword [rbx + rcx], rdx
ja 0x1400d7e25
cmp rax, qword [rbx + rcx + 8]
ja 0x1400d7e25
add rdx, qword [rsp + 0x38]
mov rcx, r14
mov r8, r13
call fcn.1400224e0
cmp rbp, rdi
jbe 0x1400d7e5f
add r14, r13
mov r15, rdi
jmp 0x1400d7dd4
mov r15, qword [rsp + 0x170]
lea rdi, [r15 + 8]
lea r14, [rsp + 0x168]
lea rsi, [0x14012f448]
lea r12, [rsp + 0x68]
lea rax, [rsp + 0x48]
mov qword [rsp + 0x20], rax
mov rcx, rsi
mov rdx, qword [rsp + 0x40]
mov r8, r15
mov r9, r12
call fcn.14000c5d0
test al, al
je 0x1400d7c71
mov rbp, qword [rsp + 0x48]
cmp rbp, rdi
mov r13, rdi
cmovb r13, rbp
sub r13, r15
mov rdx, qword [rsp + 0x68]
mov rax, r13
add rax, rdx
jb 0x1400d7c71
xor ecx, ecx
jmp 0x1400d7eda
add rcx, 0x18
cmp qword [rsp + 0x30], rcx
je 0x1400d7c71
cmp qword [rbx + rcx], rdx
ja 0x1400d7ecb
cmp rax, qword [rbx + rcx + 8]
ja 0x1400d7ecb
add rdx, qword [rsp + 0x38]
mov rcx, r14
mov r8, r13
call fcn.1400224e0
cmp rdi, rbp
jbe 0x1400d7f07
add r14, r13
mov r15, rbp
jmp 0x1400d7e7f
mov rax, qword [rsp + 0x168]
lea r15, [rax + 0x78]
mov qword [rsp + 0x60], rax
lea rdi, [rax + 0x80]
lea r14, [rsp + 0x160]
lea rsi, [0x14012f448]
lea r12, [rsp + 0x68]
lea rax, [rsp + 0x48]
mov qword [rsp + 0x20], rax
mov rcx, rsi
mov rdx, qword [rsp + 0x40]
mov r8, r15
mov r9, r12
call fcn.14000c5d0
test al, al
je 0x1400d7c71
mov rbp, qword [rsp + 0x48]
cmp rbp, rdi
mov r13, rdi
cmovb r13, rbp
sub r13, r15
mov rdx, qword [rsp + 0x68]
mov rax, r13
add rax, rdx
jb 0x1400d7c71
xor ecx, ecx
jmp 0x1400d7f8e
add rcx, 0x18
cmp qword [rsp + 0x30], rcx
je 0x1400d7c71
cmp qword [rbx + rcx], rdx
ja 0x1400d7f7f
cmp rax, qword [rbx + rcx + 8]
ja 0x1400d7f7f
add rdx, qword [rsp + 0x38]
mov rcx, r14
mov r8, r13
call fcn.1400224e0
cmp rdi, rbp
jbe 0x1400d7fbb
add r14, r13
mov r15, rbp
jmp 0x1400d7f33
mov rax, qword [rsp + 0x60]
lea r15, [rax + 0x238]
lea rdi, [rax + 0x240]
lea r14, [rsp + 0x140]
lea rsi, [0x14012f448]
lea r12, [rsp + 0x68]
lea rax, [rsp + 0x48]
mov qword [rsp + 0x20], rax
mov rcx, rsi
mov rdx, qword [rsp + 0x40]
mov r8, r15
mov r9, r12
call fcn.14000c5d0
test al, al
je 0x1400d7c71
mov rbp, qword [rsp + 0x48]
cmp rbp, rdi
mov r13, rdi
cmovb r13, rbp
sub r13, r15
mov rdx, qword [rsp + 0x68]
mov rax, r13
add rax, rdx
jb 0x1400d7c71
xor ecx, ecx
jmp 0x1400d803d
add rcx, 0x18
cmp qword [rsp + 0x30], rcx
je 0x1400d7c71
cmp qword [rbx + rcx], rdx
ja 0x1400d802e
cmp rax, qword [rbx + rcx + 8]
ja 0x1400d802e
add rdx, qword [rsp + 0x38]
mov rcx, r14
mov r8, r13
call fcn.1400224e0
cmp rdi, rbp
jbe 0x1400d806a
add r14, r13
mov r15, rbp
jmp 0x1400d7fe2
mov rax, qword [rsp + 0x60]
lea r15, [rax + 0x220]
lea rdi, [rax + 0x228]
lea r14, [rsp + 0x138]
lea rsi, [0x14012f448]
lea r12, [rsp + 0x68]
lea rax, [rsp + 0x48]
mov qword [rsp + 0x20], rax
mov rcx, rsi
mov rdx, qword [rsp + 0x40]
mov r8, r15
mov r9, r12
call fcn.14000c5d0
test al, al
je 0x1400d7c71
mov rbp, qword [rsp + 0x48]
cmp rbp, rdi
mov r13, rdi
cmovb r13, rbp
sub r13, r15
mov rdx, qword [rsp + 0x68]
mov rax, r13
add rax, rdx
jb 0x1400d7c71
xor ecx, ecx
jmp 0x1400d80ec
add rcx, 0x18
cmp qword [rsp + 0x30], rcx
je 0x1400d7c71
cmp qword [rbx + rcx], rdx
ja 0x1400d80dd
cmp rax, qword [rbx + rcx + 8]
ja 0x1400d80dd
add rdx, qword [rsp + 0x38]
mov rcx, r14
mov r8, r13
call fcn.1400224e0
cmp rdi, rbp
jbe 0x1400d8119
add r14, r13
mov r15, rbp
jmp 0x1400d8091
mov rax, qword [rsp + 0x60]
lea r15, [rax + 0x2e8]
lea rdi, [rax + 0x2f0]
lea r14, [rsp + 0x130]
lea rsi, [0x14012f448]
lea r12, [rsp + 0x68]
lea rax, [rsp + 0x48]
mov qword [rsp + 0x20], rax
mov rcx, rsi
mov rdx, qword [rsp + 0x40]
mov r8, r15
mov r9, r12
call fcn.14000c5d0
test al, al
je 0x1400d7c71
mov rbp, qword [rsp + 0x48]
cmp rbp, rdi
mov r13, rdi
cmovb r13, rbp
sub r13, r15
mov rdx, qword [rsp + 0x68]
mov rax, r13
add rax, rdx
jb 0x1400d7c71
xor ecx, ecx
jmp 0x1400d819b
add rcx, 0x18
cmp qword [rsp + 0x30], rcx
je 0x1400d7c71
cmp qword [rbx + rcx], rdx
ja 0x1400d818c
cmp rax, qword [rbx + rcx + 8]
ja 0x1400d818c
add rdx, qword [rsp + 0x38]
mov rcx, r14
mov r8, r13
call fcn.1400224e0
cmp rdi, rbp
jbe 0x1400d81c8
add r14, r13
mov r15, rbp
jmp 0x1400d8140
mov rax, qword [rsp + 0x60]
lea r15, [rax + 0x230]
lea rdi, [rax + 0x234]
lea r14, [rsp + 0xd8]
lea rsi, [0x14012f448]
lea r12, [rsp + 0x68]
lea rax, [rsp + 0x48]
mov qword [rsp + 0x20], rax
mov rcx, rsi
mov rdx, qword [rsp + 0x40]
mov r8, r15
mov r9, r12
call fcn.14000c5d0
test al, al
je 0x1400d7c71
mov rbp, qword [rsp + 0x48]
cmp rbp, rdi
mov r13, rdi
cmovb r13, rbp
sub r13, r15
mov rdx, qword [rsp + 0x68]
mov rax, r13
add rax, rdx
jb 0x1400d7c71
xor ecx, ecx
jmp 0x1400d824a
add rcx, 0x18
cmp qword [rsp + 0x30], rcx
je 0x1400d7c71
cmp qword [rbx + rcx], rdx
ja 0x1400d823b
cmp rax, qword [rbx + rcx + 8]
ja 0x1400d823b
add rdx, qword [rsp + 0x38]
mov rcx, r14
mov r8, r13
call fcn.1400224e0
cmp rdi, rbp
jbe 0x1400d8277
add r14, r13
mov r15, rbp
jmp 0x1400d81ef
mov r14d, dword [rsp + 0xd8]
lea eax, [r14 - 0x3e9]
cmp eax, 0xfffffc18
jb 0x1400d7c71
mov rax, qword [rsp + 0x60]
lea r13, [rax + 0x218]
lea rdi, [rax + 0x21c]
lea r15, [rsp + 0x9c]
lea rsi, [0x14012f448]
lea rax, [rsp + 0x48]
mov qword [rsp + 0x20], rax
mov rcx, rsi
mov rdx, qword [rsp + 0x40]
mov r8, r13
lea r9, [rsp + 0x68]
call fcn.14000c5d0
test al, al
je 0x1400d7c71
mov r12, qword [rsp + 0x48]
cmp r12, rdi
mov rbp, rdi
cmovb rbp, r12
sub rbp, r13
mov rdx, qword [rsp + 0x68]
mov rax, rbp
add rax, rdx
jb 0x1400d7c71
xor ecx, ecx
jmp 0x1400d8310
add rcx, 0x18
cmp qword [rsp + 0x30], rcx
je 0x1400d7c71
cmp qword [rbx + rcx], rdx
ja 0x1400d8301
cmp rax, qword [rbx + rcx + 8]
ja 0x1400d8301
add rdx, qword [rsp + 0x38]
mov rcx, r15
mov r8, rbp
call fcn.1400224e0
cmp rdi, r12
jbe 0x1400d833d
add r15, rbp
mov r13, r12
jmp 0x1400d82b3
mov eax, dword [rsp + 0x9c]
mov qword [rsp + 0xb0], rax
add eax, 0xfffffc17
cmp eax, 0xfffffc18
jb 0x1400d7c71
mov r15, qword [rsp + 0x60]
lea rbp, [r15 + 0x2e0]
add r15, 0x2e4
lea r12, [rsp + 0xd4]
lea rsi, [0x14012f448]
lea rax, [rsp + 0x48]
mov qword [rsp + 0x20], rax
mov rcx, rsi
mov rdx, qword [rsp + 0x40]
mov r8, rbp
lea r9, [rsp + 0x68]
call fcn.14000c5d0
test al, al
je 0x1400d7c71
mov rdi, qword [rsp + 0x48]
mov r13, r15
cmp rdi, r15
cmovb r13, rdi
sub r13, rbp
mov rdx, qword [rsp + 0x68]
mov rax, r13
add rax, rdx
jb 0x1400d7c71
xor ecx, ecx
jmp 0x1400d83db
add rcx, 0x18
cmp qword [rsp + 0x30], rcx
je 0x1400d7c71
cmp qword [rbx + rcx], rdx
ja 0x1400d83cc
cmp rax, qword [rbx + rcx + 8]
ja 0x1400d83cc
add rdx, qword [rsp + 0x38]
mov rcx, r12
mov r8, r13
call fcn.1400224e0
cmp r15, rdi
jbe 0x1400d8408
add r12, r13
mov rbp, rdi
jmp 0x1400d837e
mov r12d, dword [rsp + 0xd4]
lea eax, [r12 - 0x3e9]
cmp eax, 0xfffffc18
jb 0x1400d7c71
mov r8, qword [rsp + 0x140]
lea rcx, [rsp + 0xf8]
mov rdx, qword [rsp + 0x40]
mov r9, r14
call fcn.14000c9b0
movzx eax, byte [rsp + 0x108]
mov byte [rsp + 0x40], al
cmp al, 2
je 0x1400d7c71
mov r8, qword [rsp + 0x138]
mov rdx, qword [0x14012f520]
lea rcx, [rsp + 0x198]
mov r9, qword [rsp + 0xb0]
call fcn.14000c9b0
movzx eax, byte [rsp + 0x1a8]
mov byte [rsp + 0x60], al
cmp al, 2
jne 0x1400d84b1
cmp byte [rsp + 0x40], 1
jne 0x1400d7c71
mov byte [rsp + 0x108], 2
mov rcx, qword [rsp + 0xf8]
add rcx, 0xfffffffffffffff0
call fcn.140009440
jmp 0x1400d7c71
mov r8, qword [rsp + 0x130]
mov rdx, qword [0x14012f520]
lea rcx, [rsp + 0x180]
mov r9, r12
call fcn.14000c9b0
movzx eax, byte [rsp + 0x190]
mov byte [rsp + 0xb0], al
cmp al, 2
jne 0x1400d84f5
xor esi, esi
cmp byte [rsp + 0x60], 1
jne 0x1400d8850
jmp 0x1400d90ee
mov r12, qword [rsp + 0x160]
mov rax, qword [0x14012f520]
mov qword [rsp + 0x30], rax
lea rdi, [r12 + 8]
mov rsi, qword [0x14012f4d8]
mov r15d, dword [0x14012f4e0]
mov rax, qword [0x14012f4f0]
mov qword [rsp + 0x38], rax
lea rax, [r15*8]
lea rbx, [rax + rax*2]
lea r14, [rsp + 0x158]
lea rax, [rsp + 0x48]
mov qword [rsp + 0x20], rax
lea rcx, [0x14012f448]
mov rdx, qword [rsp + 0x30]
mov r8, r12
lea r9, [rsp + 0x68]
call fcn.14000c5d0
test al, al
je 0x1400d8819
mov rbp, qword [rsp + 0x48]
cmp rbp, rdi
mov r13, rdi
cmovb r13, rbp
sub r13, r12
mov rdx, qword [rsp + 0x68]
mov rax, r13
add rax, rdx
jb 0x1400d8819
test r15d, r15d
je 0x1400d8819
xor ecx, ecx
jmp 0x1400d85a4
add rcx, 0x18
cmp rbx, rcx
je 0x1400d8819
cmp qword [rsi + rcx], rdx
ja 0x1400d8597
cmp rax, qword [rsi + rcx + 8]
ja 0x1400d8597
add rdx, qword [rsp + 0x38]
mov rcx, r14
mov r8, r13
call fcn.1400224e0
cmp rdi, rbp
jbe 0x1400d85d1
add r14, r13
mov r12, rbp
jmp 0x1400d853c
mov rdi, qword [rsp + 0x158]
lea r15, [rdi + 0x138]
add rdi, 0x140
lea r14, [rsp + 0x150]
lea r12, [rsp + 0x68]
lea rax, [rsp + 0x48]
mov qword [rsp + 0x20], rax
lea rcx, [0x14012f448]
mov rdx, qword [rsp + 0x30]
mov r8, r15
mov r9, r12
call fcn.14000c5d0
test al, al
je 0x1400d8819
mov rbp, qword [rsp + 0x48]
cmp rbp, rdi
mov r13, rdi
cmovb r13, rbp
sub r13, r15
mov rdx, qword [rsp + 0x68]
mov rax, r13
add rax, rdx
jb 0x1400d8819
xor ecx, ecx
jmp 0x1400d8651
add rcx, 0x18
cmp rbx, rcx
je 0x1400d8819
cmp qword [rsi + rcx], rdx
ja 0x1400d8644
cmp rax, qword [rsi + rcx + 8]
ja 0x1400d8644
add rdx, qword [rsp + 0x38]
mov rcx, r14
mov r8, r13
call fcn.1400224e0
cmp rdi, rbp
jbe 0x1400d867e
add r14, r13
mov r15, rbp
jmp 0x1400d85f4
mov rdi, qword [rsp + 0x150]
lea r12, [rdi + 0x28]
lea r15, [rdi + 0x2c]
lea r14, [rsp + 0xdc]
lea rax, [rsp + 0x48]
mov qword [rsp + 0x20], rax
lea rcx, [0x14012f448]
mov rdx, qword [rsp + 0x30]
mov r8, r12
lea r9, [rsp + 0x68]
call fcn.14000c5d0
test al, al
je 0x1400d8819
mov rbp, qword [rsp + 0x48]
cmp rbp, r15
mov r13, r15
cmovb r13, rbp
sub r13, r12
mov rdx, qword [rsp + 0x68]
mov rax, r13
add rax, rdx
jb 0x1400d8819
xor ecx, ecx
jmp 0x1400d86f5
add rcx, 0x18
cmp rbx, rcx
je 0x1400d8819
cmp qword [rsi + rcx], rdx
ja 0x1400d86e8
cmp rax, qword [rsi + rcx + 8]
ja 0x1400d86e8
add rdx, qword [rsp + 0x38]
mov rcx, r14
mov r8, r13
call fcn.1400224e0
cmp r15, rbp
jbe 0x1400d8722
add r14, r13
mov r12, rbp
jmp 0x1400d8696
mov r14d, dword [rsp + 0xdc]
test r14, r14
je 0x1400d87d4
cmp r14d, 0x3e8
ja 0x1400d8819
lea r13, [rdi + 0x30]
add rdi, 0x38
lea r15, [rsp + 0x148]
lea rax, [rsp + 0x48]
mov qword [rsp + 0x20], rax
lea rcx, [0x14012f448]
mov rdx, qword [rsp + 0x30]
mov r8, r13
lea r9, [rsp + 0x68]
call fcn.14000c5d0
test al, al
je 0x1400d8819
mov r12, qword [rsp + 0x48]
cmp r12, rdi
mov rbp, rdi
cmovb rbp, r12
sub rbp, r13
mov rdx, qword [rsp + 0x68]
mov rax, rbp
add rax, rdx
jb 0x1400d8819
xor ecx, ecx
jmp 0x1400d87a7
add rcx, 0x18
cmp rbx, rcx
je 0x1400d8819
cmp qword [rsi + rcx], rdx
ja 0x1400d879e
cmp rax, qword [rsi + rcx + 8]
ja 0x1400d879e
add rdx, qword [rsp + 0x38]
mov rcx, r15
mov r8, rbp
call fcn.1400224e0
cmp rdi, r12
jbe 0x1400d87e7
add r15, rbp
mov r13, r12
jmp 0x1400d8750
mov sil, 1
cmp byte [rsp + 0xb0], 1
jne 0x1400d90e3
jmp 0x1400d8829
mov r8, qword [rsp + 0x178]
lea rcx, [rsp + 0xe0]
mov rdx, qword [rsp + 0x30]
mov r9, qword [rsp + 0xa0]
call fcn.1400d1330
movzx eax, byte [rsp + 0xf0]
mov byte [rsp + 0x30], al
cmp al, 2
jne 0x1400d8885
xor esi, esi
cmp byte [rsp + 0xb0], 1
jne 0x1400d90e3
mov byte [rsp + 0x190], 2
mov rcx, qword [rsp + 0x180]
add rcx, 0xfffffffffffffff0
vzeroupper
call fcn.140009440
cmp byte [rsp + 0x60], 1
je 0x1400d90ee
cmp byte [rsp + 0x40], 1
jne 0x1400d9115
mov byte [rsp + 0x108], 2
mov rcx, qword [rsp + 0xf8]
add rcx, 0xfffffffffffffff0
vzeroupper
call fcn.140009440
test sil, sil
je 0x1400d7c71
jmp 0x1400d911e
mov r8, qword [rsp + 0x148]
mov rdx, qword [0x14012f520]
lea rcx, [rsp + 0x118]
mov r9, r14
call fcn.1400d1550
movzx ebp, byte [rsp + 0x128]
cmp bpl, 2
jne 0x1400d88c4
xor esi, esi
cmp byte [rsp + 0x30], 1
jne 0x1400d90d5
jmp 0x1400d98e8
mov rax, qword [rsp + 0x120]
test rax, rax
je 0x1400d8fe9
mov r12, qword [rsp + 0x118]
imul r13, rax, 0x70
add r13, r12
mov r14d, 0x7fffffff
jmp 0x1400d88f9
add r12, 0x70
cmp r12, r13
je 0x1400d8fe9
movzx eax, word [r12 + 0x48]
mov rcx, qword [rsp + 0xf8]
movzx ecx, word [rcx]
add rcx, rax
mov rax, qword [rsp + 0x180]
movzx eax, word [rax]
add rax, rcx
cmp eax, dword [rsp + 0x9c]
jae 0x1400d88ec
mov rcx, qword [rsp + 0x198]
movzx eax, word [rcx + rax*2]
cmp ax, word [rsp + 0xa0]
jae 0x1400d88ec
mov rcx, qword [rsp + 0xe0]
shl rax, 5
vmovss xmm9, dword [rcx + rax + 0xc]
vmovss xmm1, dword [rcx + rax + 0x10]
vmovss xmm2, dword [rcx + rax + 0x14]
vaddss xmm3, xmm1, xmm1
vaddss xmm4, xmm2, xmm2
vmovss xmm5, dword [rcx + rax + 0x18]
vaddss xmm6, xmm5, xmm5
vmulss xmm0, xmm1, xmm3
vmulss xmm7, xmm1, xmm4
vmulss xmm10, xmm1, xmm6
vmulss xmm1, xmm2, xmm4
vmulss xmm2, xmm2, xmm6
vmulss xmm5, xmm5, xmm6
vmovss xmm8, dword [rcx + rax + 0x1c]
vmulss xmm3, xmm8, xmm3
vmulss xmm4, xmm8, xmm4
vmulss xmm6, xmm8, xmm6
vaddss xmm8, xmm1, xmm5
vmovss xmm11, dword [0x1400f84f0]
vsubss xmm8, xmm11, xmm8
vmulss xmm8, xmm8, xmm9
vmovaps xmm14, xmm8
vmovss dword [rsp + 0x68], xmm8
vaddss xmm8, xmm7, xmm6
vmulss xmm8, xmm8, xmm9
vmovss dword [rsp + 0xd0], xmm8
vmovss dword [rsp + 0x78], xmm8
vsubss xmm8, xmm10, xmm4
vmulss xmm8, xmm8, xmm9
vmovss dword [rsp + 0x38], xmm8
vmovss dword [rsp + 0x88], xmm8
vsubss xmm6, xmm7, xmm6
vmulss xmm6, xmm9, xmm6
vmovss dword [rsp + 0x6c], xmm6
vaddss xmm5, xmm0, xmm5
vsubss xmm5, xmm11, xmm5
vmulss xmm5, xmm9, xmm5
vmovaps xmm8, xmm5
vmovss dword [rsp + 0x7c], xmm5
vaddss xmm5, xmm2, xmm3
vmulss xmm5, xmm9, xmm5
vmovss dword [rsp + 0xcc], xmm5
vmovss dword [rsp + 0x8c], xmm5
vaddss xmm4, xmm10, xmm4
vmulss xmm4, xmm9, xmm4
vmovss dword [rsp + 0x70], xmm4
vsubss xmm2, xmm2, xmm3
vmulss xmm2, xmm9, xmm2
vmovss dword [rsp + 0x80], xmm2
vaddss xmm0, xmm0, xmm1
vsubss xmm0, xmm11, xmm0
vmovss dword [rsp + 0xc0], xmm9
vmulss xmm0, xmm9, xmm0
vmovss dword [rsp + 0xc8], xmm0
vmovss dword [rsp + 0x90], xmm0
vmovss xmm0, dword [rcx + rax]
vmovaps xmm9, xmm0
vmovss dword [rsp + 0x74], xmm0
vmovss xmm0, dword [rcx + rax + 4]
vmovaps xmm11, xmm0
vmovss dword [rsp + 0x84], xmm0
vmovss xmm0, dword [rcx + rax + 8]
vmovss dword [rsp + 0xc4], xmm0
vmovss dword [rsp + 0x94], xmm0
movzx eax, word [r12 + 0x3c]
test eax, eax
je 0x1400d8b45
cmp eax, 2
jne 0x1400d9087
vmovaps xmm7, xmm6
vmovaps xmm12, xmm4
vmovaps xmm15, xmm2
mov rax, qword [rsp + 0x28]
mov rbx, qword [rax + 0x220]
mov rdi, qword [rax + 0x228]
lea rsi, [rbx + 1]
cmp rsi, rdi
jbe 0x1400d8c02
add rdi, rdi
cmp rdi, rsi
cmovbe rdi, rsi
mov rcx, rdi
shl rcx, 5
vzeroupper
call fcn.14000abb0
mov r15, rax
mov rax, qword [rsp + 0x28]
cmp qword [rax + 0x220], 0
je 0x1400d8c13
xor ecx, ecx
xor eax, eax
mov r8, qword [rsp + 0x28]
mov rdx, qword [r8 + 0x218]
vmovups ymm0, ymmword [rdx + rcx]
vmovups ymmword [r15 + rcx], ymm0
inc rax
add rcx, 0x20
cmp rax, qword [r8 + 0x220]
jne 0x1400d8b19
jmp 0x1400d8c15
mov rax, qword [rsp + 0x28]
mov rdi, qword [rax + 0x238]
mov rbx, qword [rax + 0x240]
lea rsi, [rdi + 1]
cmp rsi, rbx
jbe 0x1400d8eb8
add rbx, rbx
cmp rbx, rsi
cmovbe rbx, rsi
mov rax, rbx
shl rax, 7
lea rcx, [rax + rbx*8]
vzeroupper
call fcn.14000abb0
mov r15, rax
mov rax, qword [rsp + 0x28]
cmp qword [rax + 0x238], 0
je 0x1400d8ec9
xor ecx, ecx
xor eax, eax
mov r9, qword [rsp + 0x28]
mov rdx, qword [r9 + 0x230]
mov r8, qword [rdx + rcx + 0x80]
mov qword [r15 + rcx + 0x80], r8
vmovups ymm0, ymmword [rdx + rcx]
vmovups ymm1, ymmword [rdx + rcx + 0x20]
vmovups ymm2, ymmword [rdx + rcx + 0x40]
vmovups ymm3, ymmword [rdx + rcx + 0x60]
vmovups ymmword [r15 + rcx + 0x60], ymm3
vmovups ymmword [r15 + rcx + 0x40], ymm2
vmovups ymmword [r15 + rcx + 0x20], ymm1
vmovups ymmword [r15 + rcx], ymm0
inc rax
add rcx, 0x88
cmp rax, qword [r9 + 0x238]
jne 0x1400d8b9c
jmp 0x1400d8ecb
mov rax, qword [rsp + 0x28]
mov r15, qword [rax + 0x218]
mov rax, rbx
jmp 0x1400d8c51
xor eax, eax
mov rcx, qword [rsp + 0x28]
mov rcx, qword [rcx + 0x218]
test rcx, rcx
je 0x1400d8c3e
add rcx, 0xfffffffffffffff0
vzeroupper
call fcn.140009440
mov rax, qword [rsp + 0x28]
mov rax, qword [rax + 0x220]
mov rcx, qword [rsp + 0x28]
mov qword [rcx + 0x218], r15
mov qword [rcx + 0x228], rdi
vmovss xmm0, dword [r12 + 0x18]
vmovss xmm1, dword [r12 + 0x1c]
vmovaps xmm6, xmm7
vmulss xmm2, xmm7, xmm1
vmulss xmm3, xmm14, xmm0
vaddss xmm2, xmm3, xmm2
vmovss xmm3, dword [r12 + 0x20]
vmulss xmm4, xmm12, xmm3
vaddss xmm2, xmm4, xmm2
shl rax, 5
vaddss xmm2, xmm9, xmm2
vmovss dword [r15 + rax], xmm2
vmulss xmm2, xmm8, xmm1
vmovss xmm13, dword [rsp + 0xd0]
vmulss xmm4, xmm13, xmm0
vaddss xmm2, xmm4, xmm2
vmovaps xmm10, xmm15
vmulss xmm4, xmm15, xmm3
vaddss xmm2, xmm4, xmm2
vmovss dword [rsp + 0xbc], xmm11
vaddss xmm2, xmm11, xmm2
vmovss dword [r15 + rax + 4], xmm2
vmovss xmm15, dword [rsp + 0xcc]
vmulss xmm1, xmm15, xmm1
vmovss xmm5, dword [rsp + 0x38]
vmulss xmm0, xmm5, xmm0
vaddss xmm0, xmm0, xmm1
vmovss xmm7, dword [rsp + 0xc8]
vmulss xmm1, xmm7, xmm3
vaddss xmm0, xmm1, xmm0
vmovss xmm11, dword [rsp + 0xc4]
vaddss xmm0, xmm11, xmm0
vmovss dword [r15 + rax + 8], xmm0
vmovss xmm0, dword [r12 + 0x24]
vmovss xmm1, dword [r12 + 0x28]
vmulss xmm2, xmm6, xmm1
vmulss xmm3, xmm14, xmm0
vaddss xmm2, xmm3, xmm2
vmovss xmm3, dword [r12 + 0x2c]
vmulss xmm4, xmm12, xmm3
vaddss xmm2, xmm4, xmm2
vaddss xmm2, xmm9, xmm2
vmovss dword [r15 + rax + 0xc], xmm2
vmulss xmm2, xmm8, xmm1
vmulss xmm4, xmm13, xmm0
vaddss xmm2, xmm4, xmm2
vmulss xmm4, xmm10, xmm3
vaddss xmm2, xmm4, xmm2
vaddss xmm2, xmm2, dword [rsp + 0xbc]
vmovss dword [r15 + rax + 0x10], xmm2
vmulss xmm1, xmm15, xmm1
vmulss xmm0, xmm5, xmm0
vaddss xmm0, xmm0, xmm1
vmulss xmm1, xmm7, xmm3
vaddss xmm0, xmm1, xmm0
vaddss xmm0, xmm11, xmm0
vmovss dword [r15 + rax + 0x14], xmm0
vmovss xmm0, dword [rsp + 0xc0]
vmulss xmm0, xmm0, dword [r12 + 0x30]
vmovss dword [r15 + rax + 0x18], xmm0
mov ecx, dword [r12 + 0x38]
mov dword [r15 + rax + 0x1c], ecx
mov rax, qword [rsp + 0x28]
mov qword [rax + 0x220], rsi
mov rax, qword [rax + 0x218]
shl rbx, 5
mov ecx, dword [rax + rbx]
and ecx, r14d
cmp ecx, 0x7f7fffff
jg 0x1400d9087
mov ecx, dword [rax + rbx + 4]
and ecx, r14d
cmp ecx, 0x7f7fffff
jg 0x1400d9087
vmovd xmm0, dword [rax + rbx + 8]
vmovd ecx, xmm0
and ecx, 0x7fffffff
cmp ecx, 0x7f7fffff
jg 0x1400d9087
mov ecx, dword [rax + rbx + 0xc]
and ecx, r14d
cmp ecx, 0x7f7fffff
jg 0x1400d9087
mov ecx, dword [rax + rbx + 0x10]
and ecx, r14d
cmp ecx, 0x7f7fffff
jg 0x1400d9087
vmovd xmm1, dword [rax + rbx + 0x14]
vmovd ecx, xmm1
and ecx, 0x7fffffff
cmp ecx, 0x7f7fffff
jg 0x1400d9087
mov ecx, dword [rax + rbx + 0x18]
lea edx, [rcx - 1]
cmp edx, 0x7fffff
setb dl
mov r8d, ecx
and r8d, 0x7fffffff
sete r9b
or r9b, dl
test ecx, ecx
setns cl
add r8d, 0xff800000
cmp r8d, 0x7f000000
setb dl
and dl, cl
or dl, r9b
cmp dl, 1
jne 0x1400d9087
shl rsi, 5
add rsi, rax
add rbx, rax
vaddss xmm0, xmm1, xmm0
vmulss xmm0, xmm0, dword [0x1400f84f4]
mov rax, qword [rsp + 0x28]
vsubss xmm0, xmm0, dword [rax + 0x34]
vmovsd xmm1, qword [rsi - 0x14]
vmovsd xmm2, qword [rbx]
vaddps xmm1, xmm1, xmm2
vbroadcastss xmm2, dword [0x1400f84f4]
vmulps xmm1, xmm1, xmm2
jmp 0x1400d8fad
mov rax, qword [rsp + 0x28]
mov r15, qword [rax + 0x230]
mov rax, rdi
jmp 0x1400d8f07
xor eax, eax
mov rcx, qword [rsp + 0x28]
mov rcx, qword [rcx + 0x230]
test rcx, rcx
je 0x1400d8ef4
add rcx, 0xfffffffffffffff0
vzeroupper
call fcn.140009440
mov rax, qword [rsp + 0x28]
mov rax, qword [rax + 0x238]
mov rcx, qword [rsp + 0x28]
mov qword [rcx + 0x230], r15
mov qword [rcx + 0x240], rbx
mov rcx, rax
shl rcx, 7
lea rbx, [rcx + rax*8]
lea rcx, [r15 + rbx]
mov eax, dword [r12 + 0x20]
mov dword [rsp + 0x50], eax
mov rax, qword [r12 + 0x18]
mov qword [rsp + 0x48], rax
mov eax, dword [r12 + 0x2c]
lea rdx, [rsp + 0x54]
mov dword [rdx + 8], eax
mov rax, qword [r12 + 0x24]
mov qword [rdx], rax
lea rdx, [rsp + 0x48]
lea r8, [rsp + 0x68]
vzeroupper
call fcn.1400d1ed0
mov eax, dword [r12 + 0x38]
mov dword [r15 + rbx + 0x84], eax
mov rax, qword [rsp + 0x28]
mov qword [rax + 0x238], rsi
mov rbx, qword [rax + 0x230]
mov rax, rdi
shl rax, 7
lea rdi, [rax + rdi*8]
lea rcx, [rbx + rdi]
call fcn.1400d1c40
test al, al
je 0x1400d9087
mov rax, rsi
shl rax, 7
lea rax, [rax + rsi*8]
vmovss xmm0, dword [rbx + rax - 0x38]
mov rax, qword [rsp + 0x28]
vsubss xmm0, xmm0, dword [rax + 0x34]
vmovsd xmm1, qword [rbx + rdi + 0x48]
vmovsd xmm2, qword [rax + 0x2c]
vsubps xmm1, xmm1, xmm2
vmulps xmm1, xmm1, xmm1
vmulss xmm0, xmm0, xmm0
vmovshdup xmm2, xmm1
vaddss xmm0, xmm2, xmm0
vaddss xmm0, xmm1, xmm0
vucomiss xmm0, dword [0x1400f9ec8]
jbe 0x1400d88ec
mov rax, qword [rsp + 0x28]
mov byte [rax + 0x248], 1
jmp 0x1400d88ec
mov rax, qword [rsp + 0xe8]
test rax, rax
je 0x1400d908b
mov rdx, qword [rsp + 0xe0]
shl rax, 5
add rax, rdx
movabs rcx, 0xcbf29ce484222325
movabs r8, 0x100000001b3
movzx r9d, byte [rdx]
imul rcx, r8
xor rcx, r9
movzx r9d, byte [rdx + 1]
imul rcx, r8
xor rcx, r9
movzx r9d, byte [rdx + 2]
imul rcx, r8
xor rcx, r9
movzx r9d, byte [rdx + 3]
imul rcx, r8
xor rcx, r9
movzx r9d, byte [rdx + 4]
imul rcx, r8
xor rcx, r9
movzx r9d, byte [rdx + 5]
imul rcx, r8
xor rcx, r9
movzx r9d, byte [rdx + 6]
imul rcx, r8
xor rcx, r9
movzx r9d, byte [rdx + 7]
imul rcx, r8
xor rcx, r9
add rdx, 8
cmp rdx, rax
jne 0x1400d901d
jmp 0x1400d9095
xor esi, esi
jmp 0x1400d90a4
movabs rcx, 0xcbf29ce484222325
mov rax, qword [rsp + 0x28]
mov qword [rax + 0x280], rcx
mov sil, 1
cmp bpl, 1
jne 0x1400d98dd
mov byte [rsp + 0x128], 2
mov rcx, qword [rsp + 0x118]
add rcx, 0xfffffffffffffff0
vzeroupper
call fcn.140009440
cmp byte [rsp + 0x30], 1
je 0x1400d98e8
cmp byte [rsp + 0xb0], 1
je 0x1400d8829
cmp byte [rsp + 0x60], 1
jne 0x1400d8850
mov byte [rsp + 0x1a8], 2
mov rcx, qword [rsp + 0x198]
add rcx, 0xfffffffffffffff0
vzeroupper
call fcn.140009440
cmp byte [rsp + 0x40], 1
je 0x1400d885b
test sil, sil
je 0x1400d7c71
mov rsi, qword [rsp + 0x28]
mov rax, qword [rsi + 0x238]
test rax, rax
je 0x1400d9448
mov rcx, qword [rsi + 0x230]
mov rdx, rax
shl rdx, 7
lea rdx, [rdx + rax*8]
mov al, 1
xor r8d, r8d
jmp 0x1400d916e
vmovups xmmword [rsi + 0x250], xmm1
vmovlps qword [rsi + 0x260], xmm0
xor eax, eax
add r8, 0x88
cmp rdx, r8
je 0x1400d944a
vmovss xmm2, dword [rcx + r8 + 0x5c]
vmulss xmm0, xmm2, dword [rcx + r8 + 0x78]
vmovss xmm5, dword [rcx + r8 + 0x58]
vmulss xmm1, xmm5, dword [rcx + r8 + 0x6c]
vmovups xmm6, xmmword [rcx + r8 + 0x70]
vmovss xmm7, dword [rcx + r8 + 0x54]
vmulss xmm8, xmm7, dword [rcx + r8 + 0x60]
vmovups xmm9, xmmword [rcx + r8 + 0x64]
vmovss xmm10, dword [rcx + r8 + 0x48]
vsubss xmm3, xmm10, xmm8
vsubss xmm4, xmm3, xmm1
vsubss xmm12, xmm4, xmm0
vaddss xmm13, xmm0, xmm4
vaddss xmm4, xmm1, xmm3
vsubss xmm3, xmm4, xmm0
vaddss xmm10, xmm8, xmm10
vsubss xmm8, xmm10, xmm1
vaddss xmm1, xmm10, xmm1
vmovss dword [rsp + 0x30], xmm1
vminss xmm11, xmm12, xmm13
vmaxss xmm10, xmm12, xmm13
vmovss xmm12, dword [rcx + r8 + 0x7c]
vinsertps xmm13, xmm2, dword [rcx + r8 + 0x80], 0x10
vinsertps xmm2, xmm12, xmm2, 0x10
vmulps xmm2, xmm13, xmm2
vinsertps xmm12, xmm6, xmm5, 0x10
vblendps xmm5, xmm6, xmm5, 1
vmulps xmm13, xmm12, xmm5
vinsertps xmm5, xmm9, xmm7, 0x10
vblendps xmm6, xmm9, xmm7, 1
vmulps xmm5, xmm5, xmm6
vmovsd xmm6, qword [rcx + r8 + 0x4c]
vaddps xmm7, xmm5, xmm6
vsubps xmm12, xmm7, xmm13
vaddps xmm7, xmm13, xmm7
vsubps xmm9, xmm6, xmm5
vsubps xmm6, xmm9, xmm13
vsubps xmm1, xmm6, xmm2
vmovaps xmmword [rsp + 0xa0], xmm1
vaddps xmm6, xmm2, xmm6
vaddps xmm13, xmm13, xmm9
vsubps xmm9, xmm13, xmm2
vminps xmm14, xmm1, xmm6
vshufps xmm15, xmm9, xmm9, 0xd0
vblendps xmm15, xmm15, xmm3, 1
vmovaps xmm5, xmm3
vshufps xmm15, xmm15, xmm15, 0x24
vshufps xmm1, xmm14, xmm14, 0xd0
vblendps xmm1, xmm1, xmm11, 1
vinsertps xmm1, xmm1, xmm10, 0x30
vcmpltps xmm3, xmm15, xmm1
vcmpltps xmm1, xmm1, xmm15
vblendps xmm1, xmm3, xmm1, 8
vmovlhps xmm3, xmm11, xmm14
vshufps xmm3, xmm3, xmm14, 0xd8
vaddss xmm4, xmm0, xmm4
vinsertps xmm3, xmm3, xmm10, 0x30
vsubss xmm10, xmm8, xmm0
vaddss xmm8, xmm8, xmm0
vaddps xmm11, xmm13, xmm2
vshufps xmm13, xmm5, xmm9, 0x40
vshufps xmm13, xmm13, xmm13, 0x78
vblendvps xmm1, xmm3, xmm13, xmm1
vshufps xmm3, xmm4, xmm11, 0x40
vshufps xmm3, xmm3, xmm3, 0x78
vcmpltps xmm4, xmm3, xmm1
vcmpltps xmm13, xmm1, xmm3
vblendps xmm4, xmm4, xmm13, 8
vsubps xmm13, xmm12, xmm2
vblendvps xmm1, xmm1, xmm3, xmm4
vshufps xmm3, xmm10, xmm13, 0x40
vshufps xmm3, xmm3, xmm3, 0x78
vcmpltps xmm4, xmm3, xmm1
vcmpltps xmm10, xmm1, xmm3
vblendps xmm4, xmm4, xmm10, 8
vmovss xmm14, dword [rsp + 0x30]
vsubss xmm10, xmm14, xmm0
vaddps xmm12, xmm12, xmm2
vblendvps xmm1, xmm1, xmm3, xmm4
vshufps xmm3, xmm8, xmm12, 0x40
vshufps xmm3, xmm3, xmm3, 0x78
vcmpltps xmm4, xmm3, xmm1
vcmpltps xmm8, xmm1, xmm3
vblendps xmm4, xmm4, xmm8, 8
vsubps xmm8, xmm7, xmm2
vblendvps xmm1, xmm1, xmm3, xmm4
vshufps xmm3, xmm10, xmm8, 0x40
vshufps xmm3, xmm3, xmm3, 0x78
vcmpltps xmm4, xmm3, xmm1
vcmpltps xmm10, xmm1, xmm3
vblendps xmm4, xmm4, xmm10, 8
vblendvps xmm1, xmm1, xmm3, xmm4
vaddss xmm0, xmm14, xmm0
vaddps xmm2, xmm2, xmm7
vshufps xmm0, xmm0, xmm2, 0x40
vshufps xmm0, xmm0, xmm0, 0x78
vcmpltps xmm3, xmm0, xmm1
vcmpltps xmm4, xmm1, xmm0
vblendps xmm3, xmm3, xmm4, 8
vblendvps xmm1, xmm1, xmm0, xmm3
vmovaps xmm0, xmmword [rsp + 0xa0]
vmaxps xmm0, xmm0, xmm6
vmaxps xmm0, xmm9, xmm0
vmaxps xmm0, xmm11, xmm0
vmaxps xmm0, xmm13, xmm0
vmaxps xmm0, xmm12, xmm0
vmaxps xmm0, xmm8, xmm0
vmaxps xmm0, xmm2, xmm0
test al, 1
jne 0x1400d914c
vmovss xmm2, dword [rsi + 0x250]
vucomiss xmm2, xmm1
jbe 0x1400d93cb
vmovss dword [rsi + 0x250], xmm1
vmovshdup xmm2, xmm1
vmovss xmm3, dword [rsi + 0x254]
vucomiss xmm3, xmm2
jbe 0x1400d93e5
vmovss dword [rsi + 0x254], xmm2
vshufpd xmm2, xmm1, xmm1, 1
vmovss xmm3, dword [rsi + 0x258]
vucomiss xmm3, xmm2
jbe 0x1400d9400
vmovss dword [rsi + 0x258], xmm2
vshufps xmm1, xmm1, xmm1, 0xff
vucomiss xmm1, dword [rsi + 0x25c]
jbe 0x1400d9417
vmovss dword [rsi + 0x25c], xmm1
vucomiss xmm0, dword [rsi + 0x260]
jbe 0x1400d9429
vmovss dword [rsi + 0x260], xmm0
vmovshdup xmm0, xmm0
vucomiss xmm0, dword [rsi + 0x264]
jbe 0x1400d915e
vmovss dword [rsi + 0x264], xmm0
jmp 0x1400d915e
mov al, 1
mov rcx, qword [rsi + 0x220]
test rcx, rcx
je 0x1400d9695
mov rdx, qword [rsi + 0x218]
shl rcx, 5
xor r8d, r8d
vxorps xmm0, xmm0, xmm0
vxorps xmm1, xmm1, xmm1
jmp 0x1400d9491
vmovups xmmword [rsi + 0x250], xmm4
vmovlps qword [rsi + 0x260], xmm2
xor eax, eax
add r8, 0x20
cmp rcx, r8
je 0x1400d9695
vmovsd xmm5, qword [rdx + r8]
vmovss xmm8, dword [rdx + r8 + 8]
vbroadcastss xmm4, dword [rdx + r8 + 0x18]
vsubss xmm2, xmm8, xmm4
vmovshdup xmm6, xmm5
vaddss xmm9, xmm4, xmm6
vaddss xmm3, xmm8, xmm0
vsubss xmm10, xmm6, xmm4
vsubss xmm11, xmm5, xmm4
vmovss xmm6, dword [rdx + r8 + 0xc]
vaddss xmm12, xmm6, xmm0
vaddss xmm7, xmm4, xmm6
vsubss xmm6, xmm6, xmm4
vinsertps xmm5, xmm5, xmm8, 0x20
vshufps xmm5, xmm5, xmm5, 0x24
vblendps xmm8, xmm4, xmm1, 0xa
vaddps xmm5, xmm8, xmm5
vmovshdup xmm8, xmm5
vminss xmm13, xmm9, xmm8
vminss xmm13, xmm10, xmm13
vshufps xmm14, xmm5, xmm5, 0x27
vinsertps xmm13, xmm14, xmm13, 0x10
vinsertps xmm13, xmm13, xmm2, 0x20
vcmpltps xmm14, xmm5, xmm13
vshufps xmm15, xmm5, xmm5, 0x24
vshufps xmm13, xmm13, xmm13, 0x24
vblendvps xmm13, xmm13, xmm15, xmm14
vmaxss xmm8, xmm9, xmm8
vmaxss xmm9, xmm10, xmm8
vmovsd xmm10, qword [rdx + r8 + 0x10]
vaddps xmm8, xmm10, xmm1
vunpcklps xmm11, xmm11, xmm8
vinsertps xmm11, xmm11, xmm3, 0x20
vshufps xmm11, xmm11, xmm11, 0x24
vcmpltps xmm14, xmm11, xmm13
vcmpltps xmm15, xmm13, xmm11
vblendps xmm14, xmm14, xmm15, 8
vblendps xmm15, xmm10, xmm4, 2
vblendvps xmm11, xmm13, xmm11, xmm14
vblendps xmm13, xmm10, xmm4, 1
vaddps xmm13, xmm15, xmm13
vshufps xmm12, xmm12, xmm13, 0x40
vshufps xmm12, xmm12, xmm12, 0x78
vcmpltps xmm14, xmm12, xmm11
vcmpltps xmm15, xmm11, xmm12
vblendps xmm14, xmm14, xmm15, 8
vblendvps xmm11, xmm11, xmm12, xmm14
vsubps xmm10, xmm10, xmm4
vshufps xmm4, xmm7, xmm10, 0x40
vshufps xmm4, xmm4, xmm4, 0x78
vcmpltps xmm7, xmm4, xmm11
vcmpltps xmm12, xmm11, xmm4
vblendps xmm7, xmm7, xmm12, 8
vblendvps xmm4, xmm11, xmm4, xmm7
vshufps xmm6, xmm6, xmm8, 0x40
vshufps xmm6, xmm6, xmm6, 0x78
vcmpltps xmm7, xmm6, xmm4
vcmpltps xmm11, xmm4, xmm6
vblendps xmm7, xmm7, xmm11, 8
vblendvps xmm4, xmm4, xmm6, xmm7
vshufps xmm5, xmm5, xmm5, 0xe9
vinsertps xmm2, xmm9, xmm2, 0x10
vmaxps xmm2, xmm5, xmm2
vinsertps xmm3, xmm8, xmm3, 0x10
vmaxps xmm2, xmm3, xmm2
vmaxps xmm2, xmm13, xmm2
vmaxps xmm2, xmm10, xmm2
vmaxps xmm2, xmm8, xmm2
test al, 1
jne 0x1400d9472
vmovss xmm3, dword [rsi + 0x250]
vucomiss xmm3, xmm4
jbe 0x1400d9618
vmovss dword [rsi + 0x250], xmm4
vmovshdup xmm3, xmm4
vmovss xmm5, dword [rsi + 0x254]
vucomiss xmm5, xmm3
jbe 0x1400d9632
vmovss dword [rsi + 0x254], xmm3
vshufpd xmm3, xmm4, xmm4, 1
vmovss xmm5, dword [rsi + 0x258]
vucomiss xmm5, xmm3
jbe 0x1400d964d
vmovss dword [rsi + 0x258], xmm3
vshufps xmm3, xmm4, xmm4, 0xff
vucomiss xmm3, dword [rsi + 0x25c]
jbe 0x1400d9664
vmovss dword [rsi + 0x25c], xmm3
vucomiss xmm2, dword [rsi + 0x260]
jbe 0x1400d9676
vmovss dword [rsi + 0x260], xmm2
vmovshdup xmm2, xmm2
vucomiss xmm2, dword [rsi + 0x264]
jbe 0x1400d9484
vmovss dword [rsi + 0x264], xmm2
jmp 0x1400d9484
not al
and al, 1
mov byte [rsi + 0x268], al
mov rax, qword [rsp + 0x110]
cmp qword [rsi + 0x280], rax
jne 0x1400d96b9
mov rax, qword [rsi + 0x290]
jmp 0x1400d96d2
movzx eax, byte [0x14012fa40]
lea rcx, [0x14012f720]
mov rax, qword [rcx + rax*8]
mov qword [rsi + 0x290], rax
mov rcx, qword [rsi + 0x288]
sub rcx, rax
vxorps xmm13, xmm13, xmm13
vcvtsi2sd xmm0, xmm13, rcx
vmulsd xmm0, xmm0, qword [0x140131d90]
vucomisd xmm0, qword [0x1400f8160]
jbe 0x1400d96ff
mov byte [rsi + 0x248], 1
movzx eax, byte [0x140131469]
test al, al
je 0x1400d974c
movzx ecx, byte [0x14013146a]
and cl, 0xfe
cmp cl, 2
je 0x1400d974c
movzx ecx, byte [rsi + 0x212]
cmp cl, 2
lea rdx, [0x14012fbe4]
lea r8, [0x14012fbf8]
cmove r8, rdx
add r8, 0x1c8
cmp cl, 3
lea rcx, [0x14012fd98]
cmovne rcx, r8
jmp 0x1400d9777
cmp dword [0x14013108c], 6
jne 0x1400d97c7
mov ecx, dword [rsi + 0x38]
cmp ecx, dword [0x140131288]
lea rdx, [0x14012fbe4]
lea rcx, [0x14012fbd0]
cmove rcx, rdx
add rcx, 0x1c8
mov edx, dword [rsi + 0xc]
vxorps xmm13, xmm13, xmm13
vcvtsi2ss xmm0, xmm13, rdx
mov r8d, dword [rsi + 0x10]
vxorps xmm13, xmm13, xmm13
vcvtsi2ss xmm1, xmm13, r8
vdivss xmm0, xmm0, xmm1
vxorps xmm1, xmm1, xmm1
vucomiss xmm1, xmm0
jae 0x1400d97c1
vmovss xmm1, dword [0x1400f84f0]
vucomiss xmm1, xmm0
vmovss xmm1, dword [rcx]
vmovss xmm2, dword [rcx + 4]
jbe 0x1400d9806
vmulss xmm0, xmm2, xmm0
vaddss xmm0, xmm0, xmm1
jmp 0x1400d980a
vmovss xmm0, dword [rcx]
jmp 0x1400d980a
cmp byte [0x140131462], 2
movzx ecx, byte [rsi + 0x212]
je 0x1400d9720
cmp cl, 2
lea rdx, [0x14012fbd0]
lea r8, [0x14012fbf8]
cmove r8, rdx
add r8, 0x1c8
cmp cl, 3
lea rcx, [0x14012fdac]
jmp 0x1400d9746
vaddss xmm0, xmm1, xmm2
vmovss xmm1, dword [rcx + 8]
vmovss dword [rsp + 0x68], xmm0
vmovsd xmm6, qword [rcx + 0xc]
vshufps xmm0, xmm6, xmm6, 0xe1
vmovlps qword [rsp + 0x6c], xmm0
vmovss dword [rsp + 0x74], xmm1
test edx, edx
je 0x1400d98a8
cmp byte [rsi + 0x1c], 0
jne 0x1400d98a8
cmp byte [rsi + 0x216], 0
je 0x1400d98b6
test al, al
lea rax, [0x14013147c]
lea rcx, [0x1401311c0]
cmove rcx, rax
mov eax, dword [rcx]
vxorps xmm13, xmm13, xmm13
vcvtsi2ss xmm0, xmm13, rax
vmulss xmm0, xmm0, dword [0x140131194]
vmulss xmm0, xmm0, dword [0x1400fa00c]
vzeroupper
call fcn.1400a14b0
vxorps xmm1, xmm1, xmm1
vucomiss xmm1, xmm0
jae 0x1400d9892
vmovss xmm1, dword [0x1400f84f0]
vucomiss xmm0, xmm1
jae 0x1400d9892
vmovaps xmm1, xmm0
vmovss xmm0, dword [0x1400f84f0]
vsubss xmm0, xmm0, xmm6
vmulss xmm0, xmm0, xmm1
vaddss xmm0, xmm0, xmm6
jmp 0x1400d98b0
vmulss xmm0, xmm6, dword [0x1400fa008]
vmovss dword [rsp + 0x70], xmm0
lea rcx, [rsp + 0x48]
lea rdx, [rsp + 0x68]
vzeroupper
call fcn.140049730
vmovups xmm0, xmmword [rsp + 0x48]
vmovups xmmword [rsi + 0x270], xmm0
mov al, 1
jmp 0x1400d7c73
cmp byte [rsp + 0x30], 1
jne 0x1400d90d5
mov byte [rsp + 0xf0], 2
mov rcx, qword [rsp + 0xe0]
add rcx, 0xfffffffffffffff0
vzeroupper
call fcn.140009440
cmp byte [rsp + 0xb0], 1
jne 0x1400d90e3
jmp 0x1400d8829