Function at 0x180012f90
Capabilities:
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, 0x198
movaps xmmword [rsp + 0x180], xmm11
movaps xmmword [rsp + 0x170], xmm10
movdqa xmmword [rsp + 0x160], xmm9
movaps xmmword [rsp + 0x150], xmm8
movaps xmmword [rsp + 0x140], xmm7
movaps xmmword [rsp + 0x130], xmm6
movzx r14d, byte [rsp + 0x210]
cmp r14b, 0x1f
ja 0x180013268
mov r15, qword [rsp + 0x208]
cmp r15, 2
jb 0x180013268
mov rdi, qword [rsp + 0x218]
mov rbx, qword [rsp + 0x200]
movzx ebp, word [rbx]
rol bp, 8
test bp, bp
jle 0x1800131ae
sub r15, 0xa
jb 0x180013268
add rbx, 0xa
mov qword [rsp + 0xd0], rbx
mov qword [rsp + 0xd8], r15
movzx r14d, bp
add r14d, r14d
cmp r15, r14
jb 0x180013268
lea eax, [r14 + 0x1fffe]
and eax, 0x1fffe
lea edx, [rax + 2]
cmp edx, r14d
ja 0x180013268
movzx esi, word [rbx + rax]
test esi, esi
je 0x1800131b4
cmp esi, 0xffff
je 0x180013268
lea r12, [r14 + 2]
cmp r12, r15
ja 0x180013268
mov qword [rsp + 0x48], rcx
rol si, 8
movzx eax, word [rbx + r14]
rol ax, 8
inc esi
movzx eax, ax
add r12, rax
mov qword [rsp + 0xe0], r12
lea rcx, [rsp + 0x94]
lea rdx, [rsp + 0xd0]
mov r8d, esi
call fcn.18006e630
test byte [rsp + 0x94], 1
je 0x180013892
mov r10, qword [rsp + 0xe0]
mov rax, r10
sub rax, r12
mov qword [rsp + 0xb0], rax
setb al
cmp r10, r15
seta cl
or cl, al
mov rcx, qword [rsp + 0x48]
jne 0x180013268
mov eax, dword [rsp + 0x98]
mov qword [rsp + 0xc0], rax
lea r8, [r10 + rax]
cmp r8, r10
setb al
cmp r8, r15
seta dl
or dl, al
jne 0x180013268
mov eax, dword [rsp + 0x9c]
mov qword [rsp + 0xb8], rax
add rax, r8
cmp rax, r8
setb dl
cmp rax, r15
seta al
or al, dl
jne 0x180013268
movzx r11d, word [rbx]
rol r11w, 8
add r12, rbx
mov qword [rsp + 0xa0], r12
add r10, rbx
add r8, rbx
mov qword [rsp + 0xa8], r8
mov r13w, 1
movaps xmm6, xmmword [0x1801a04c0]
mov qword [rsp + 0x78], 0
xor r12d, r12d
xor eax, eax
xor edx, edx
xor r9d, r9d
mov qword [rsp + 0x80], 0
xor r15d, r15d
mov dword [rsp + 0x68], 0
mov qword [rsp + 0xc8], r10
jmp 0x18001393d
js 0x180013257
movss xmm4, dword [rdi]
movss xmm3, dword [rdi + 4]
ucomiss xmm4, dword [0x1801a04d0]
movss xmm1, dword [rdi + 8]
jne 0x1800131fa
jp 0x1800131fa
ucomiss xmm3, dword [0x1801a04d0]
jne 0x1800131fa
jp 0x1800131fa
ucomiss xmm1, dword [0x1801a04d4]
movss xmm0, dword [rdi + 0xc]
jne 0x1800131ff
jp 0x1800131ff
ucomiss xmm0, dword [0x1801a04d4]
jne 0x1800131ff
jp 0x1800131ff
mov word [rcx], 0
jmp 0x18001326d
movss xmm0, dword [rdi + 0xc]
xor edx, edx
ucomiss xmm4, dword [0x1801a04d8]
jb 0x18001323f
movss xmm2, dword [0x1801a04dc]
ucomiss xmm2, xmm4
jbe 0x18001323f
cvttss2si edx, xmm4
ucomiss xmm4, dword [0x1801a04e0]
mov eax, 0x7fffffff
cmovbe eax, edx
xor edx, edx
ucomiss xmm4, xmm4
cmovp eax, edx
movsx r8d, ax
cmp r8d, eax
je 0x1800137c0
mov word [rcx], dx
mov word [rcx + 2], ax
mov word [rcx + 4], r8w
mov word [rcx + 6], r9w
mov word [rcx + 8], r10w
jmp 0x18001326d
add rbx, 0xa
xor r12d, r12d
sub r15, 0xa
cmovae r12, rbx
jae 0x1800132b5
mov word [rcx], 2
movaps xmm6, xmmword [rsp + 0x130]
movaps xmm7, xmmword [rsp + 0x140]
movaps xmm8, xmmword [rsp + 0x150]
movaps xmm9, xmmword [rsp + 0x160]
movaps xmm10, xmmword [rsp + 0x170]
movaps xmm11, xmmword [rsp + 0x180]
add rsp, 0x198
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
cmp r15, 2
jb 0x1800131b4
movzx r13d, byte [rdx]
mov rax, qword [rdx + 0x10]
mov r10d, eax
shr r10d, 1
mov dword [rsp + 0x60], r10d
mov r10, qword [rdx + 8]
mov qword [rsp + 0x68], r10
mov qword [rsp + 0x50], rax
shr eax, 2
mov dword [rsp + 0x44], eax
inc r14b
mov eax, 2
xor ebx, ebx
movss xmm6, dword [0x1801a049c]
movsd xmm7, qword [0x1801a04a0]
movss xmm8, dword [0x1801a0498]
pxor xmm9, xmm9
movaps xmm10, xmmword [0x1801a04b0]
xorps xmm11, xmm11
lea r11, [rbx + 4]
cmp r11, rax
jb 0x1800131b4
cmp r11, r15
ja 0x1800131b4
movzx r10d, word [r12 + rbx]
rol r10w, 8
movzx eax, word [r12 + rax]
xorps xmm0, xmm0
test r10b, 2
jne 0x180013377
mov rbx, r11
test r10b, r10b
js 0x18001340c
test r10b, 0x40
jne 0x1800134d7
test r10b, 8
jne 0x18001353b
mov r11, rbx
movaps xmm1, xmm7
movaps xmm2, xmm6
jmp 0x18001357a
test r10b, 1
jne 0x1800133b1
cmp r11, r15
jae 0x1800131b4
lea r11, [rbx + 5]
cmp r11, r15
jae 0x1800131b4
movzx r11d, word [r12 + rbx + 4]
add rbx, 6
movd xmm0, r11d
punpcklbw xmm0, xmm0
punpcklwd xmm0, xmm0
psrad xmm0, 0x18
jmp 0x180013400
cmp r11, 0xfffffffffffffffd
ja 0x1800131b4
lea rsi, [rbx + 6]
cmp rsi, r15
ja 0x1800131b4
add rbx, 8
cmp rbx, rsi
jb 0x1800131b4
cmp rbx, r15
ja 0x1800131b4
movd xmm0, dword [r12 + r11]
punpcklbw xmm0, xmm9
pshuflw xmm0, xmm0, 0xb1
pshufhw xmm0, xmm0, 0xb1
packuswb xmm0, xmm0
punpcklwd xmm0, xmm0
psrad xmm0, 0x10
cvtdq2ps xmm0, xmm0
test r10b, r10b
jns 0x180013355
cmp rbx, 0xfffffffffffffffd
ja 0x1800131b4
lea rbp, [rbx + 2]
cmp rbp, r15
ja 0x1800131b4
movzx r11d, word [r12 + rbx]
rol r11w, 8
movsx r11d, r11w
xorps xmm3, xmm3
cvtsi2ss xmm3, r11d
mulss xmm3, xmm8
lea r11, [rbx + 4]
cmp r11, rbp
jb 0x1800131b4
cmp r11, r15
ja 0x1800131b4
movzx esi, word [r12 + rbx + 2]
rol si, 8
movsx esi, si
cvtsi2ss xmm4, esi
mulss xmm4, xmm8
lea rbp, [rbx + 6]
cmp rbp, r11
jb 0x1800131b4
cmp rbp, r15
ja 0x1800131b4
add rbx, 8
cmp rbx, rbp
jb 0x1800131b4
cmp rbx, r15
ja 0x1800131b4
movzx r11d, word [r12 + r11]
rol r11w, 8
movsx r11d, r11w
xorps xmm1, xmm1
cvtsi2ss xmm1, r11d
mulss xmm1, xmm8
movzx r11d, word [r12 + rbp]
rol r11w, 8
movsx r11d, r11w
cvtsi2ss xmm2, r11d
unpcklps xmm1, xmm3
mulss xmm2, xmm8
unpcklps xmm2, xmm4
mov r11, rbx
jmp 0x18001357a
cmp rbx, 0xfffffffffffffffd
ja 0x1800131b4
lea rsi, [rbx + 2]
cmp rsi, r15
ja 0x1800131b4
lea r11, [rbx + 4]
cmp r11, rsi
jb 0x1800131b4
cmp r11, r15
ja 0x1800131b4
movzx esi, word [r12 + rbx]
movzx ebx, word [r12 + rbx + 2]
rol si, 8
movsx esi, si
xorps xmm1, xmm1
cvtsi2ss xmm1, esi
mulss xmm1, xmm8
rol bx, 8
movsx esi, bx
xorps xmm3, xmm3
cvtsi2ss xmm3, esi
mulss xmm3, xmm8
movq xmm1, xmm1
jmp 0x18001356e
cmp rbx, 0xfffffffffffffffd
ja 0x1800131b4
lea r11, [rbx + 2]
cmp r11, r15
ja 0x1800131b4
movzx esi, word [r12 + rbx]
rol si, 8
movsx esi, si
xorps xmm3, xmm3
cvtsi2ss xmm3, esi
mulss xmm3, xmm8
movq xmm1, xmm3
shufps xmm1, xmm9, 0xe2
xorps xmm2, xmm2
movss xmm2, xmm3
test r10b, 0x20
mov rbx, r11
cmove rbx, r15
cmp ax, 0xffff
je 0x1800137a4
rol ax, 8
lea r10d, [rax + 1]
test r13b, 1
je 0x1800135e9
cmp r10w, word [rsp + 0x44]
jae 0x1800137a4
movzx eax, ax
shl eax, 2
lea r11, [rax + 4]
cmp r11, qword [rsp + 0x50]
ja 0x1800137a4
movzx r11d, r10w
shl r11d, 2
lea r10, [r11 + 4]
cmp r10, qword [rsp + 0x50]
ja 0x1800137a4
mov rsi, qword [rsp + 0x68]
mov r10d, dword [rsi + rax]
bswap r10d
mov eax, dword [rsi + r11]
bswap eax
jmp 0x180013644
cmp r10w, word [rsp + 0x60]
jae 0x1800137a4
movzx eax, ax
add eax, eax
lea r11, [rax + 2]
cmp r11, qword [rsp + 0x50]
ja 0x1800137a4
movzx r10d, r10w
add r10d, r10d
lea r11, [r10 + 2]
cmp r11, qword [rsp + 0x50]
ja 0x1800137a4
mov r11, qword [rsp + 0x68]
movzx eax, word [r11 + rax]
rol ax, 8
movzx r11d, word [r11 + r10]
rol r11w, 8
movzx r10d, ax
add r10d, r10d
movzx eax, r11w
add eax, eax
cmp rax, r9
ja 0x1800137a4
cmp eax, r10d
jbe 0x1800137a4
mov byte [rsp + 0x88], r13b
mov qword [rsp + 0x48], rcx
shufps xmm2, xmm2, 5
shufps xmm1, xmm1, 5
lea rcx, [r8 + r10]
sub rax, r10
movups xmm3, xmmword [rdi]
movaps xmmword [rsp + 0xd0], xmm3
movups xmm3, xmmword [rdi + 0x10]
movaps xmmword [rsp + 0xe0], xmm3
movsd xmm4, qword [rdi + 0x20]
movsd xmm3, qword [rdi + 0x28]
movddup xmm5, xmm4
mulps xmm5, xmm1
movddup xmm1, xmm3
mulps xmm1, xmm2
addps xmm1, xmm5
movaps xmmword [rsp + 0xf0], xmm1
cmpeqps xmm1, xmm10
movmskps r11d, xmm1
mov esi, r11d
mov r10d, r11d
shr r10b, 1
and r10b, r11b
shr r11b, 3
shr sil, 2
and sil, r11b
and r10b, sil
movsd xmm1, qword [rdi + 0x30]
movsldup xmm2, xmm0
mulps xmm2, xmm4
movshdup xmm0, xmm0
mulps xmm0, xmm3
addps xmm0, xmm2
addps xmm0, xmm1
ucomiss xmm0, xmm11
setnp r11b
sete sil
and sil, r11b
movshdup xmm1, xmm0
ucomiss xmm1, xmm11
setnp r11b
sete bpl
and bpl, r11b
and bpl, sil
and bpl, r10b
movlps qword [rsp + 0x100], xmm0
mov byte [rsp + 0x12c], bpl
mov dword [rsp + 0x108], 0
mov dword [rsp + 0x114], 0
mov dword [rsp + 0x120], 0
lea r10, [rsp + 0xd0]
mov qword [rsp + 0x38], r10
mov byte [rsp + 0x30], r14b
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea rcx, [rsp + 0x94]
mov rbp, rdx
mov rsi, r8
mov r13, r9
call fcn.180012f90
cmp word [rsp + 0x94], 2
je 0x18001426b
movaps xmm0, xmmword [rsp + 0xd0]
movups xmmword [rdi], xmm0
mov rcx, qword [rsp + 0x48]
mov r9, r13
mov r8, rsi
mov rdx, rbp
movzx r13d, byte [rsp + 0x88]
cmp rbx, 0xfffffffffffffffd
ja 0x1800131b4
lea rax, [rbx + 2]
cmp rax, r15
jbe 0x18001331b
jmp 0x1800131b4
xor edx, edx
ucomiss xmm3, dword [0x1801a04d8]
jb 0x18001323f
ucomiss xmm2, xmm3
jbe 0x18001323f
cvttss2si edx, xmm3
ucomiss xmm3, dword [0x1801a04e0]
mov r8d, 0x7fffffff
cmovbe r8d, edx
xor edx, edx
ucomiss xmm3, xmm3
cmovp r8d, edx
movsx r9d, r8w
cmp r9d, r8d
jne 0x18001323f
xor edx, edx
ucomiss xmm1, dword [0x1801a04d8]
jb 0x18001323f
ucomiss xmm2, xmm1
jbe 0x18001323f
cvttss2si edx, xmm1
ucomiss xmm1, dword [0x1801a04e0]
mov r9d, 0x7fffffff
cmovbe r9d, edx
xor edx, edx
ucomiss xmm1, xmm1
cmovp r9d, edx
movsx r10d, r9w
cmp r10d, r9d
jne 0x18001323f
xor edx, edx
ucomiss xmm0, dword [0x1801a04d8]
jb 0x18001323f
ucomiss xmm2, xmm0
jbe 0x18001323f
cvttss2si edx, xmm0
ucomiss xmm0, dword [0x1801a04e0]
mov r10d, 0x7fffffff
cmovbe r10d, edx
xor edx, edx
ucomiss xmm0, xmm0
cmovp r10d, edx
movsx r11d, r10w
cmp r11d, r10d
jne 0x18001323f
mov dx, 1
jmp 0x18001323f
mov rcx, qword [rsp + 0x48]
jmp 0x180013268
movsd xmm1, qword [rdi]
movsd xmm2, qword [rdi + 8]
movaps xmm3, xmm0
minps xmm3, xmm1
cmpunordps xmm1, xmm1
movaps xmm4, xmm0
andps xmm4, xmm1
andnps xmm1, xmm3
orps xmm1, xmm4
movaps xmm3, xmm0
maxps xmm3, xmm2
cmpunordps xmm2, xmm2
movaps xmm4, xmm0
andps xmm4, xmm2
andnps xmm2, xmm3
orps xmm2, xmm4
movlhps xmm1, xmm2
movups xmmword [rdi], xmm1
mov rcx, qword [rdi + 0x10]
mov rax, qword [rdi + 0x18]
movshdup xmm2, xmm0
movaps xmm1, xmm0
call qword [rax + 0x20]
mov dword [rdi + 0x38], 0
mov dword [rdi + 0x44], 0
mov dword [rdi + 0x50], 0
mov rcx, qword [rdi + 0x10]
mov rax, qword [rdi + 0x18]
call qword [rax + 0x38]
mov rcx, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x50]
mov eax, dword [rsp + 0x44]
dec esi
mov r9d, r13d
mov r8d, dword [rsp + 0x74]
mov r11d, r8d
test si, si
mov r10, qword [rsp + 0xc8]
mov r13, qword [rsp + 0x88]
je 0x1800131b4
test r11w, r11w
je 0x180013951
lea r8d, [r11 - 1]
mov dword [rsp + 0x74], r8d
jmp 0x180013a01
cmp r13w, bp
jae 0x180013982
mov dword [rsp + 0x5c], r12d
mov r12, rdx
movzx edx, r13w
lea r8d, [rdx*2 + 2]
cmp r8d, r14d
jbe 0x180013998
mov dword [rsp + 0x74], 0
mov rdx, r12
mov r12d, dword [rsp + 0x5c]
jmp 0x1800139fe
mov dword [rsp + 0x74], 0
cmp r13w, 0xffff
jne 0x1800139fe
mov r13w, 0xffff
jmp 0x180013a01
mov dword [rsp + 0x44], r9d
lea r8d, [r13 - 1]
cmp r8w, bp
jae 0x1800139b8
movzx r8d, r8w
lea r9d, [r8*2 + 2]
cmp r9d, r14d
jbe 0x1800139bd
xor r8d, r8d
jmp 0x1800139ca
add r8d, r8d
movzx r8d, word [rbx + r8]
rol r8w, 8
add edx, edx
movzx r9d, word [rbx + rdx]
rol r9w, 8
sub r9w, r8w
mov edx, 0
cmovb r9d, edx
sub r9w, 1
cmovb r9d, edx
mov dword [rsp + 0x74], r9d
mov rdx, r12
mov r12d, dword [rsp + 0x5c]
mov r9d, dword [rsp + 0x44]
inc r13d
test r12b, r12b
mov qword [rsp + 0x60], r11
je 0x180013a10
dec r12b
jmp 0x180013a84
mov dword [rsp + 0x44], r9d
mov r9, qword [rsp + 0x78]
cmp r9, qword [rsp + 0xb0]
jae 0x180013a6a
mov r12, rdx
lea rdx, [r9 + 1]
mov r8, qword [rsp + 0xa0]
movzx eax, byte [r8 + r9]
test al, 8
je 0x180013a74
cmp rdx, qword [rsp + 0xb0]
jae 0x180013a74
mov rdx, qword [rsp + 0xa0]
mov r8, qword [rsp + 0x78]
movzx r9d, byte [rdx + r8 + 1]
add r8, 2
mov qword [rsp + 0x78], r8
mov rdx, r12
mov r12d, r9d
jmp 0x180013a7f
mov r11, r15
xor r15d, r15d
xor eax, eax
jmp 0x180013a97
mov qword [rsp + 0x78], rdx
mov rdx, r12
xor r12d, r12d
mov r9d, dword [rsp + 0x44]
test al, 2
jne 0x180013abf
test al, 0x10
jne 0x180013adb
mov dword [rsp + 0x44], r9d
mov r11, r15
mov r15d, r12d
lea r8, [rdx + 2]
cmp rdx, 0xfffffffffffffffe
mov r12, rdx
setae dl
cmp r8, qword [rsp + 0xc0]
seta r9b
or r9b, dl
je 0x180013b06
mov qword [rsp + 0x50], r12
xor edx, edx
jmp 0x180013b14
cmp rdx, qword [rsp + 0xc0]
jae 0x180013ae9
mov r8, rdx
movzx edx, byte [r10 + rdx]
inc r8
mov qword [rsp + 0x50], r8
jmp 0x180013af0
mov qword [rsp + 0x50], rdx
xor edx, edx
mov r10d, dword [rsp + 0x68]
jmp 0x180013b29
mov qword [rsp + 0x50], rdx
xor edx, edx
mov r10d, dword [rsp + 0x68]
movzx edx, dx
mov r8d, edx
neg r8d
test al, 0x10
cmove edx, r8d
jmp 0x180013b29
movzx edx, word [r10 + r12]
rol dx, 8
mov qword [rsp + 0x50], r8
mov r10d, dword [rsp + 0x68]
mov r12d, r15d
mov r15, r11
mov r11, qword [rsp + 0x60]
mov r9d, dword [rsp + 0x44]
test al, 4
mov qword [rsp + 0x88], r13
jne 0x180013b6e
test al, 0x20
jne 0x180013b92
mov dword [rsp + 0x5c], r12d
mov r12d, r9d
mov r13, qword [rsp + 0x80]
lea r15, [r13 + 2]
cmp r13, 0xfffffffffffffffe
setae r8b
cmp r15, qword [rsp + 0xb8]
seta r9b
or r9b, r8b
je 0x180013bac
mov r15, r13
xor r13d, r13d
jmp 0x180013bcb
cmp r15, qword [rsp + 0xb8]
jae 0x180013b97
mov r8, qword [rsp + 0xa8]
movzx r8d, byte [r8 + r15]
inc r15
mov qword [rsp + 0x80], r15
jmp 0x180013b9a
xor r13d, r13d
jmp 0x180013bd3
xor r8d, r8d
movzx r13d, r8w
mov r8d, r13d
neg r8d
test al, 0x20
cmove r13d, r8d
jmp 0x180013bd3
mov r8, qword [rsp + 0xa8]
movzx r13d, word [r8 + r13]
mov r11, qword [rsp + 0x60]
rol r13w, 8
mov qword [rsp + 0x80], r15
mov r9d, r12d
mov r12d, dword [rsp + 0x5c]
add edx, r10d
add r13d, r9d
pxor xmm0, xmm0
pinsrw xmm0, edx, 1
pinsrw xmm0, r13d, 3
psrad xmm0, 0x10
cvtdq2ps xmm3, xmm0
cmp dword [rdi + 0x38], 1
mov dword [rsp + 0x44], eax
mov dword [rsp + 0x68], edx
jne 0x180013c85
cmp dword [rdi + 0x50], 0
je 0x180013dc3
movsd xmm1, qword [rdi + 0x54]
test al, 1
jne 0x180013ddb
mov dword [rdi + 0x50], 1
movlps qword [rdi + 0x54], xmm3
subps xmm3, xmm1
mulps xmm3, xmm6
addps xmm3, xmm1
cmp byte [rdi + 0x5c], 0
jne 0x180013e28
movups xmm0, xmmword [rdi + 0x20]
movsd xmm2, qword [rdi + 0x24]
movss xmm4, dword [rdi + 0x2c]
movlhps xmm4, xmm0
shufps xmm4, xmm0, 0xe2
mulps xmm4, xmm1
mulps xmm1, xmm2
shufps xmm1, xmm1, 0xe1
addps xmm4, xmm1
movsd xmm1, qword [rdi + 0x30]
addps xmm4, xmm1
movsldup xmm5, xmm3
unpcklps xmm0, xmm2
mulps xmm0, xmm5
movshdup xmm2, xmm3
movsd xmm3, qword [rdi + 0x28]
mulps xmm3, xmm2
addps xmm3, xmm0
addps xmm3, xmm1
movaps xmm1, xmm4
jmp 0x180013e28
test al, 1
jne 0x180013d36
test byte [rdi + 0x44], 1
je 0x180013ead
movsd xmm0, qword [rdi + 0x48]
movaps xmm1, xmm3
subps xmm1, xmm0
mulps xmm1, xmm6
addps xmm1, xmm0
mov dword [rdi + 0x38], 1
movlps qword [rdi + 0x3c], xmm1
mov dword [rdi + 0x50], 1
movlps qword [rdi + 0x54], xmm3
cmp byte [rdi + 0x5c], 0
jne 0x180013ce7
movsldup xmm0, xmm1
movsd xmm2, qword [rdi + 0x20]
mulps xmm2, xmm0
movsd xmm0, qword [rdi + 0x28]
movsd xmm3, qword [rdi + 0x30]
movshdup xmm1, xmm1
mulps xmm1, xmm0
addps xmm1, xmm2
addps xmm1, xmm3
movsd xmm0, qword [rdi]
movsd xmm2, qword [rdi + 8]
movaps xmm3, xmm1
minps xmm3, xmm0
cmpunordps xmm0, xmm0
movaps xmm4, xmm1
andps xmm4, xmm0
andnps xmm0, xmm3
orps xmm0, xmm4
movaps xmm3, xmm1
maxps xmm3, xmm2
cmpunordps xmm2, xmm2
movaps xmm4, xmm1
andps xmm4, xmm2
andnps xmm2, xmm3
orps xmm2, xmm4
movlhps xmm0, xmm2
movups xmmword [rdi], xmm0
mov rcx, qword [rdi + 0x10]
mov rax, qword [rdi + 0x18]
movshdup xmm2, xmm1
call qword [rax + 0x18]
jmp 0x180013f3a
mov dword [rdi + 0x38], 1
movlps qword [rdi + 0x3c], xmm3
cmp byte [rdi + 0x5c], 0
jne 0x180013d71
movups xmm0, xmmword [rdi + 0x20]
movsd xmm1, qword [rdi + 0x24]
mulps xmm1, xmm3
shufps xmm1, xmm1, 0xe1
movss xmm2, dword [rdi + 0x2c]
movlhps xmm2, xmm0
shufps xmm2, xmm0, 0xe2
mulps xmm2, xmm3
addps xmm2, xmm1
movsd xmm3, qword [rdi + 0x30]
addps xmm3, xmm2
movsd xmm0, qword [rdi]
movsd xmm1, qword [rdi + 8]
movaps xmm2, xmm3
minps xmm2, xmm0
cmpunordps xmm0, xmm0
movaps xmm4, xmm3
andps xmm4, xmm0
andnps xmm0, xmm2
orps xmm0, xmm4
movaps xmm2, xmm3
maxps xmm2, xmm1
cmpunordps xmm1, xmm1
movaps xmm4, xmm3
andps xmm4, xmm1
andnps xmm1, xmm2
orps xmm1, xmm4
movlhps xmm0, xmm1
movups xmmword [rdi], xmm0
mov rcx, qword [rdi + 0x10]
mov rax, qword [rdi + 0x18]
movshdup xmm2, xmm3
movaps xmm1, xmm3
call qword [rax + 0x18]
jmp 0x180013f3a
test al, 1
jne 0x180013ebd
mov dword [rdi + 0x50], 1
movlps qword [rdi + 0x54], xmm3
jmp 0x180013f48
mov dword [rdi + 0x50], 0
cmp byte [rdi + 0x5c], 0
jne 0x180013e28
movups xmm0, xmmword [rdi + 0x20]
movsd xmm2, qword [rdi + 0x24]
movaps xmm4, xmm1
mulps xmm4, xmm2
shufps xmm4, xmm4, 0xe1
movss xmm5, dword [rdi + 0x2c]
movlhps xmm5, xmm0
shufps xmm5, xmm0, 0xe2
mulps xmm1, xmm5
addps xmm1, xmm4
movsd xmm0, qword [rdi + 0x30]
addps xmm1, xmm0
mulps xmm2, xmm3
shufps xmm2, xmm2, 0xe1
mulps xmm5, xmm3
addps xmm5, xmm2
addps xmm5, xmm0
movaps xmm3, xmm5
movsd xmm0, qword [rdi]
movsd xmm2, qword [rdi + 8]
movaps xmm4, xmm1
minps xmm4, xmm0
cmpunordps xmm0, xmm0
movaps xmm5, xmm1
andps xmm5, xmm0
andnps xmm0, xmm4
orps xmm0, xmm5
movaps xmm4, xmm3
minps xmm4, xmm0
cmpunordps xmm0, xmm0
movaps xmm5, xmm3
andps xmm5, xmm0
andnps xmm0, xmm4
orps xmm0, xmm5
movaps xmm4, xmm1
maxps xmm4, xmm2
cmpunordps xmm2, xmm2
movaps xmm5, xmm1
andps xmm5, xmm2
andnps xmm2, xmm4
orps xmm2, xmm5
movaps xmm4, xmm3
maxps xmm4, xmm2
cmpunordps xmm2, xmm2
movaps xmm5, xmm3
andps xmm5, xmm2
andnps xmm2, xmm4
orps xmm2, xmm5
movlhps xmm0, xmm2
movups xmmword [rdi], xmm0
mov rcx, qword [rdi + 0x10]
mov rax, qword [rdi + 0x18]
movshdup xmm2, xmm1
movshdup xmm0, xmm3
movss dword [rsp + 0x20], xmm0
call qword [rax + 0x28]
jmp 0x180013f3a
mov dword [rdi + 0x44], 1
movlps qword [rdi + 0x48], xmm3
jmp 0x180013f48
cmp byte [rdi + 0x5c], 0
jne 0x180013eed
movups xmm0, xmmword [rdi + 0x20]
movsd xmm1, qword [rdi + 0x24]
mulps xmm1, xmm3
shufps xmm1, xmm1, 0xe1
movss xmm2, dword [rdi + 0x2c]
movlhps xmm2, xmm0
shufps xmm2, xmm0, 0xe2
mulps xmm2, xmm3
addps xmm2, xmm1
movsd xmm3, qword [rdi + 0x30]
addps xmm3, xmm2
movsd xmm0, qword [rdi]
movsd xmm1, qword [rdi + 8]
movaps xmm2, xmm3
minps xmm2, xmm0
cmpunordps xmm0, xmm0
movaps xmm4, xmm3
andps xmm4, xmm0
andnps xmm0, xmm2
orps xmm0, xmm4
movaps xmm2, xmm3
maxps xmm2, xmm1
cmpunordps xmm1, xmm1
movaps xmm4, xmm3
andps xmm4, xmm1
andnps xmm1, xmm2
orps xmm1, xmm4
movlhps xmm0, xmm1
movups xmmword [rdi], xmm0
mov rcx, qword [rdi + 0x10]
mov rax, qword [rdi + 0x18]
movshdup xmm2, xmm3
movaps xmm1, xmm3
call qword [rax + 0x20]
mov rcx, qword [rsp + 0x48]
mov eax, dword [rsp + 0x44]
mov r11, qword [rsp + 0x60]
test r11w, r11w
mov rdx, qword [rsp + 0x50]
jne 0x180013917
cmp dword [rdi + 0x44], 1
movsd xmm3, qword [rdi + 0x48]
jne 0x180014059
cmp dword [rdi + 0x50], 1
jne 0x180014059
movsd xmm1, qword [rdi + 0x54]
mov dword [rdi + 0x50], 0
subps xmm3, xmm1
mulps xmm3, xmm6
addps xmm3, xmm1
cmp byte [rdi + 0x5c], 0
jne 0x180013fd4
movups xmm0, xmmword [rdi + 0x20]
movsd xmm2, qword [rdi + 0x24]
movss xmm4, dword [rdi + 0x2c]
movlhps xmm4, xmm0
shufps xmm4, xmm0, 0xe2
mulps xmm4, xmm1
mulps xmm1, xmm2
shufps xmm1, xmm1, 0xe1
addps xmm4, xmm1
movsd xmm1, qword [rdi + 0x30]
addps xmm4, xmm1
movsldup xmm5, xmm3
unpcklps xmm0, xmm2
mulps xmm0, xmm5
movshdup xmm2, xmm3
movsd xmm3, qword [rdi + 0x28]
mulps xmm3, xmm2
addps xmm3, xmm0
addps xmm3, xmm1
movaps xmm1, xmm4
movsd xmm0, qword [rdi]
movsd xmm2, qword [rdi + 8]
movaps xmm4, xmm1
minps xmm4, xmm0
cmpunordps xmm0, xmm0
movaps xmm5, xmm1
andps xmm5, xmm0
andnps xmm0, xmm4
orps xmm0, xmm5
movaps xmm4, xmm3
minps xmm4, xmm0
cmpunordps xmm0, xmm0
movaps xmm5, xmm3
andps xmm5, xmm0
andnps xmm0, xmm4
orps xmm0, xmm5
movaps xmm4, xmm1
maxps xmm4, xmm2
cmpunordps xmm2, xmm2
movaps xmm5, xmm1
andps xmm5, xmm2
andnps xmm2, xmm4
orps xmm2, xmm5
movaps xmm4, xmm3
maxps xmm4, xmm2
cmpunordps xmm2, xmm2
movaps xmm5, xmm3
andps xmm5, xmm2
andnps xmm2, xmm4
orps xmm2, xmm5
movlhps xmm0, xmm2
movups xmmword [rdi], xmm0
mov rcx, qword [rdi + 0x10]
mov rax, qword [rdi + 0x18]
movshdup xmm2, xmm1
movshdup xmm0, xmm3
movss dword [rsp + 0x20], xmm0
call qword [rax + 0x28]
movsd xmm3, qword [rdi + 0x48]
mov eax, dword [rdi + 0x38]
movsd xmm0, qword [rdi + 0x3c]
cmp eax, 1
jne 0x180014148
cmp dword [rdi + 0x44], 1
jne 0x180014155
cmp byte [rdi + 0x5c], 0
jne 0x1800140c3
movsldup xmm2, xmm3
movsd xmm4, qword [rdi + 0x20]
movsd xmm1, qword [rdi + 0x28]
movsd xmm5, qword [rdi + 0x30]
mulps xmm2, xmm4
movshdup xmm3, xmm3
mulps xmm3, xmm1
addps xmm3, xmm2
addps xmm3, xmm5
movaps xmm2, xmm4
shufps xmm2, xmm1, 1
shufps xmm2, xmm1, 0xe2
shufps xmm1, xmm4, 1
shufps xmm1, xmm4, 0xe2
mulps xmm1, xmm0
shufps xmm0, xmm0, 0xe1
mulps xmm0, xmm2
addps xmm1, xmm0
addps xmm1, xmm5
movaps xmm0, xmm1
movsd xmm1, qword [rdi]
movsd xmm2, qword [rdi + 8]
movaps xmm4, xmm3
minps xmm4, xmm1
cmpunordps xmm1, xmm1
movaps xmm5, xmm3
andps xmm5, xmm1
andnps xmm1, xmm4
orps xmm1, xmm5
movaps xmm4, xmm0
minps xmm4, xmm1
cmpunordps xmm1, xmm1
movaps xmm5, xmm0
andps xmm5, xmm1
andnps xmm1, xmm4
orps xmm1, xmm5
movaps xmm4, xmm3
maxps xmm4, xmm2
cmpunordps xmm2, xmm2
movaps xmm5, xmm3
andps xmm5, xmm2
andnps xmm2, xmm4
orps xmm2, xmm5
movaps xmm4, xmm0
maxps xmm4, xmm2
cmpunordps xmm2, xmm2
movaps xmm5, xmm0
andps xmm5, xmm2
andnps xmm2, xmm4
orps xmm2, xmm5
movlhps xmm1, xmm2
movups xmmword [rdi], xmm1
mov rcx, qword [rdi + 0x10]
mov rax, qword [rdi + 0x18]
movshdup xmm2, xmm3
movshdup xmm1, xmm0
movss dword [rsp + 0x20], xmm1
movaps xmm1, xmm3
jmp 0x180014227
test al, 1
je 0x1800138e9
jmp 0x180014232
cmp dword [rdi + 0x50], 1
jne 0x180014232
movsd xmm1, qword [rdi + 0x54]
cmp byte [rdi + 0x5c], 0
jne 0x1800141aa
movups xmm2, xmmword [rdi + 0x20]
movsd xmm3, qword [rdi + 0x24]
movaps xmm4, xmm1
mulps xmm4, xmm3
shufps xmm4, xmm4, 0xe1
movss xmm5, dword [rdi + 0x2c]
movlhps xmm5, xmm2
shufps xmm5, xmm2, 0xe2
mulps xmm1, xmm5
addps xmm1, xmm4
movsd xmm2, qword [rdi + 0x30]
addps xmm1, xmm2
mulps xmm3, xmm0
shufps xmm3, xmm3, 0xe1
mulps xmm5, xmm0
addps xmm5, xmm3
addps xmm5, xmm2
movaps xmm0, xmm5
movsd xmm2, qword [rdi]
movsd xmm3, qword [rdi + 8]
movaps xmm4, xmm1
minps xmm4, xmm2
cmpunordps xmm2, xmm2
movaps xmm5, xmm1
andps xmm5, xmm2
andnps xmm2, xmm4
orps xmm2, xmm5
movaps xmm4, xmm0
minps xmm4, xmm2
cmpunordps xmm2, xmm2
movaps xmm5, xmm0
andps xmm5, xmm2
andnps xmm2, xmm4
orps xmm2, xmm5
movaps xmm4, xmm1
maxps xmm4, xmm3
cmpunordps xmm3, xmm3
movaps xmm5, xmm1
andps xmm5, xmm3
andnps xmm3, xmm4
orps xmm3, xmm5
movaps xmm4, xmm0
maxps xmm4, xmm3
cmpunordps xmm3, xmm3
movaps xmm5, xmm0
andps xmm5, xmm3
andnps xmm3, xmm4
orps xmm3, xmm5
movlhps xmm2, xmm3
movups xmmword [rdi], xmm2
mov rcx, qword [rdi + 0x10]
mov rax, qword [rdi + 0x18]
movshdup xmm2, xmm1
movshdup xmm3, xmm0
movss dword [rsp + 0x20], xmm3
movaps xmm3, xmm0
call qword [rax + 0x28]
jmp 0x1800138e9
cmp byte [rdi + 0x5c], 0
jne 0x18001389c
movups xmm1, xmmword [rdi + 0x20]
movsd xmm2, qword [rdi + 0x24]
mulps xmm2, xmm0
shufps xmm2, xmm2, 0xe1
movss xmm3, dword [rdi + 0x2c]
movlhps xmm3, xmm1
shufps xmm3, xmm1, 0xe2
mulps xmm3, xmm0
addps xmm3, xmm2
movsd xmm0, qword [rdi + 0x30]
addps xmm0, xmm3
jmp 0x18001389c
mov rax, qword [rsp + 0x48]
mov word [rax], 2
jmp 0x18001326d