Function at 0x14003fab0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov rax, rsp
push rbx
push r14
sub rsp, 0xa8
mov rbx, qword [0x1400f5860]
xor r14d, r14d
movaps xmmword [rax - 0x48], xmm8
movaps xmmword [rax - 0x58], xmm9
mov qword [rax + 0x10], rbp
mov qword [rax + 0x18], rsi
mov byte [rbx + 0x39b], 0
mov qword [rbx + 0x1ee8], r14
mov dword [rbx + 0x1ef0], r14d
movzx ebp, byte [rbx + 8]
mov qword [rax - 0x18], rdi
and bpl, 1
test byte [rbx + 8], 2
movaps xmmword [rax - 0x68], xmm10
xorps xmm10, xmm10
movaps xmmword [rax - 0x78], xmm11
je 0x14003fbb6
test byte [rbx + 0xc], 1
je 0x14003fbb6
cmp dword [rbx + 0x1dfc], 3
lea rcx, [rbx + 0x1dfc]
mov dil, 1
je 0x14003fbc0
movss xmm0, dword [rbx + 0x344]
comiss xmm0, xmm10
ja 0x14003fbaa
movss xmm0, dword [rbx + 0x34c]
comiss xmm0, xmm10
ja 0x14003fbaa
movss xmm0, dword [rbx + 0x348]
comiss xmm0, xmm10
ja 0x14003fbaa
movss xmm0, dword [rbx + 0x350]
comiss xmm0, xmm10
ja 0x14003fbaa
movss xmm0, dword [rbx + 0x354]
comiss xmm0, xmm10
ja 0x14003fbaa
movss xmm0, dword [rbx + 0x358]
comiss xmm0, xmm10
ja 0x14003fbaa
movss xmm0, dword [rbx + 0x35c]
comiss xmm0, xmm10
ja 0x14003fbaa
movss xmm0, dword [rbx + 0x360]
lea rcx, [rbx + 0x1dfc]
comiss xmm0, xmm10
jbe 0x14003fbc0
mov dword [rbx + 0x1dfc], 3
jmp 0x14003fbb9
xor dil, dil
lea rcx, [rbx + 0x1dfc]
test bpl, bpl
je 0x14003fcf6
movsxd rax, dword [rbx + 0x6c]
test eax, eax
js 0x14003fbeb
cmp byte [rax + rbx + 0x144], r14b
je 0x14003fbeb
mov dword [rbx + 0x344], 0x3f800000
mov dword [rcx], 2
movsxd rax, dword [rbx + 0x70]
test eax, eax
js 0x14003fc0d
cmp byte [rax + rbx + 0x144], r14b
je 0x14003fc0d
mov dword [rbx + 0x34c], 0x3f800000
mov dword [rcx], 2
movsxd rax, dword [rbx + 0x74]
test eax, eax
js 0x14003fc2f
cmp byte [rax + rbx + 0x144], r14b
je 0x14003fc2f
mov dword [rbx + 0x348], 0x3f800000
mov dword [rcx], 2
movsxd rax, dword [rbx + 0x40]
test eax, eax
js 0x14003fc51
cmp byte [rax + rbx + 0x144], r14b
je 0x14003fc51
mov dword [rbx + 0x388], 0x3f800000
mov dword [rcx], 2
movsxd rax, dword [rbx + 0x44]
test eax, eax
js 0x14003fc73
cmp byte [rax + rbx + 0x144], r14b
je 0x14003fc73
mov dword [rbx + 0x38c], 0x3f800000
mov dword [rcx], 2
movsxd rax, dword [rbx + 0x48]
test eax, eax
js 0x14003fc95
cmp byte [rax + rbx + 0x144], r14b
je 0x14003fc95
mov dword [rbx + 0x390], 0x3f800000
mov dword [rcx], 2
movsxd rax, dword [rbx + 0x4c]
test eax, eax
js 0x14003fcb7
cmp byte [rax + rbx + 0x144], r14b
je 0x14003fcb7
mov dword [rbx + 0x394], 0x3f800000
mov dword [rcx], 2
movzx eax, byte [rbx + 0x140]
test al, al
je 0x14003fccc
mov dword [rbx + 0x37c], 0x3f800000
cmp byte [rbx + 0x141], r14b
je 0x14003fcdf
mov dword [rbx + 0x380], 0x3f800000
cmp byte [rbx + 0x142], r14b
je 0x14003fcf6
test al, al
jne 0x14003fcf6
mov dword [rbx + 0x384], 0x3f800000
movups xmm0, xmmword [rbx + 0x14a0]
mov eax, dword [rbx + 0x14f0]
movups xmm1, xmmword [rbx + 0x14b0]
movss xmm11, dword [0x1400a3c1c]
movups xmmword [rbx + 0x14f4], xmm0
movups xmm0, xmmword [rbx + 0x14c0]
movups xmmword [rbx + 0x1504], xmm1
movups xmm1, xmmword [rbx + 0x14d0]
movups xmmword [rbx + 0x1514], xmm0
movups xmm0, xmmword [rbx + 0x14e0]
movups xmmword [rbx + 0x1524], xmm1
movups xmmword [rbx + 0x1534], xmm0
mov dword [rbx + 0x1544], eax
movss xmm0, dword [rbx + 0x344]
comiss xmm0, xmm10
jbe 0x14003fd79
movss xmm0, dword [rbx + 0x14a0]
comiss xmm10, xmm0
jbe 0x14003fd72
xorps xmm0, xmm0
jmp 0x14003fd7d
addss xmm0, dword [rbx + 0x18]
jmp 0x14003fd7d
movaps xmm0, xmm11
movss dword [rbx + 0x14a0], xmm0
movss xmm0, dword [rbx + 0x348]
comiss xmm0, xmm10
jbe 0x14003fdad
movss xmm0, dword [rbx + 0x14a4]
comiss xmm10, xmm0
jbe 0x14003fda6
xorps xmm0, xmm0
jmp 0x14003fdb1
addss xmm0, dword [rbx + 0x18]
jmp 0x14003fdb1
movaps xmm0, xmm11
movss dword [rbx + 0x14a4], xmm0
movss xmm0, dword [rbx + 0x34c]
comiss xmm0, xmm10
jbe 0x14003fde1
movss xmm0, dword [rbx + 0x14a8]
comiss xmm10, xmm0
jbe 0x14003fdda
xorps xmm0, xmm0
jmp 0x14003fde5
addss xmm0, dword [rbx + 0x18]
jmp 0x14003fde5
movaps xmm0, xmm11
movss dword [rbx + 0x14a8], xmm0
movss xmm0, dword [rbx + 0x350]
comiss xmm0, xmm10
jbe 0x14003fe15
movss xmm0, dword [rbx + 0x14ac]
comiss xmm10, xmm0
jbe 0x14003fe0e
xorps xmm0, xmm0
jmp 0x14003fe19
addss xmm0, dword [rbx + 0x18]
jmp 0x14003fe19
movaps xmm0, xmm11
movss dword [rbx + 0x14ac], xmm0
movss xmm0, dword [rbx + 0x354]
comiss xmm0, xmm10
jbe 0x14003fe49
movss xmm0, dword [rbx + 0x14b0]
comiss xmm10, xmm0
jbe 0x14003fe42
xorps xmm0, xmm0
jmp 0x14003fe4d
addss xmm0, dword [rbx + 0x18]
jmp 0x14003fe4d
movaps xmm0, xmm11
movss dword [rbx + 0x14b0], xmm0
movss xmm0, dword [rbx + 0x358]
comiss xmm0, xmm10
jbe 0x14003fe7d
movss xmm0, dword [rbx + 0x14b4]
comiss xmm10, xmm0
jbe 0x14003fe76
xorps xmm0, xmm0
jmp 0x14003fe81
addss xmm0, dword [rbx + 0x18]
jmp 0x14003fe81
movaps xmm0, xmm11
movss dword [rbx + 0x14b4], xmm0
movss xmm0, dword [rbx + 0x35c]
comiss xmm0, xmm10
jbe 0x14003feb1
movss xmm0, dword [rbx + 0x14b8]
comiss xmm10, xmm0
jbe 0x14003feaa
xorps xmm0, xmm0
jmp 0x14003feb5
addss xmm0, dword [rbx + 0x18]
jmp 0x14003feb5
movaps xmm0, xmm11
movss dword [rbx + 0x14b8], xmm0
movss xmm0, dword [rbx + 0x360]
comiss xmm0, xmm10
jbe 0x14003fee5
movss xmm0, dword [rbx + 0x14bc]
comiss xmm10, xmm0
jbe 0x14003fede
xorps xmm0, xmm0
jmp 0x14003fee9
addss xmm0, dword [rbx + 0x18]
jmp 0x14003fee9
movaps xmm0, xmm11
movss dword [rbx + 0x14bc], xmm0
movss xmm0, dword [rbx + 0x364]
comiss xmm0, xmm10
jbe 0x14003ff19
movss xmm0, dword [rbx + 0x14c0]
comiss xmm10, xmm0
jbe 0x14003ff12
xorps xmm0, xmm0
jmp 0x14003ff1d
addss xmm0, dword [rbx + 0x18]
jmp 0x14003ff1d
movaps xmm0, xmm11
movss dword [rbx + 0x14c0], xmm0
movss xmm0, dword [rbx + 0x368]
comiss xmm0, xmm10
jbe 0x14003ff4d
movss xmm0, dword [rbx + 0x14c4]
comiss xmm10, xmm0
jbe 0x14003ff46
xorps xmm0, xmm0
jmp 0x14003ff51
addss xmm0, dword [rbx + 0x18]
jmp 0x14003ff51
movaps xmm0, xmm11
movss dword [rbx + 0x14c4], xmm0
movss xmm0, dword [rbx + 0x36c]
comiss xmm0, xmm10
jbe 0x14003ff81
movss xmm0, dword [rbx + 0x14c8]
comiss xmm10, xmm0
jbe 0x14003ff7a
xorps xmm0, xmm0
jmp 0x14003ff85
addss xmm0, dword [rbx + 0x18]
jmp 0x14003ff85
movaps xmm0, xmm11
movss dword [rbx + 0x14c8], xmm0
movss xmm0, dword [rbx + 0x370]
comiss xmm0, xmm10
jbe 0x14003ffb5
movss xmm0, dword [rbx + 0x14cc]
comiss xmm10, xmm0
jbe 0x14003ffae
xorps xmm0, xmm0
jmp 0x14003ffb9
addss xmm0, dword [rbx + 0x18]
jmp 0x14003ffb9
movaps xmm0, xmm11
movss dword [rbx + 0x14cc], xmm0
movss xmm0, dword [rbx + 0x374]
comiss xmm0, xmm10
jbe 0x14003ffe9
movss xmm0, dword [rbx + 0x14d0]
comiss xmm10, xmm0
jbe 0x14003ffe2
xorps xmm0, xmm0
jmp 0x14003ffed
addss xmm0, dword [rbx + 0x18]
jmp 0x14003ffed
movaps xmm0, xmm11
movss dword [rbx + 0x14d0], xmm0
movss xmm0, dword [rbx + 0x378]
comiss xmm0, xmm10
jbe 0x14004001d
movss xmm0, dword [rbx + 0x14d4]
comiss xmm10, xmm0
jbe 0x140040016
xorps xmm0, xmm0
jmp 0x140040021
addss xmm0, dword [rbx + 0x18]
jmp 0x140040021
movaps xmm0, xmm11
movss dword [rbx + 0x14d4], xmm0
movss xmm0, dword [rbx + 0x37c]
comiss xmm0, xmm10
jbe 0x140040051
movss xmm0, dword [rbx + 0x14d8]
comiss xmm10, xmm0
jbe 0x14004004a
xorps xmm0, xmm0
jmp 0x140040055
addss xmm0, dword [rbx + 0x18]
jmp 0x140040055
movaps xmm0, xmm11
movss dword [rbx + 0x14d8], xmm0
movss xmm0, dword [rbx + 0x380]
comiss xmm0, xmm10
jbe 0x140040085
movss xmm0, dword [rbx + 0x14dc]
comiss xmm10, xmm0
jbe 0x14004007e
xorps xmm0, xmm0
jmp 0x140040089
addss xmm0, dword [rbx + 0x18]
jmp 0x140040089
movaps xmm0, xmm11
movss dword [rbx + 0x14dc], xmm0
movss xmm0, dword [rbx + 0x384]
comiss xmm0, xmm10
jbe 0x1400400b9
movss xmm0, dword [rbx + 0x14e0]
comiss xmm10, xmm0
jbe 0x1400400b2
xorps xmm0, xmm0
jmp 0x1400400bd
addss xmm0, dword [rbx + 0x18]
jmp 0x1400400bd
movaps xmm0, xmm11
movss dword [rbx + 0x14e0], xmm0
movss xmm0, dword [rbx + 0x388]
comiss xmm0, xmm10
jbe 0x1400400ed
movss xmm0, dword [rbx + 0x14e4]
comiss xmm10, xmm0
jbe 0x1400400e6
xorps xmm0, xmm0
jmp 0x1400400f1
addss xmm0, dword [rbx + 0x18]
jmp 0x1400400f1
movaps xmm0, xmm11
movss dword [rbx + 0x14e4], xmm0
movss xmm0, dword [rbx + 0x38c]
comiss xmm0, xmm10
jbe 0x140040121
movss xmm0, dword [rbx + 0x14e8]
comiss xmm10, xmm0
jbe 0x14004011a
xorps xmm0, xmm0
jmp 0x140040125
addss xmm0, dword [rbx + 0x18]
jmp 0x140040125
movaps xmm0, xmm11
movss dword [rbx + 0x14e8], xmm0
movss xmm0, dword [rbx + 0x390]
comiss xmm0, xmm10
jbe 0x140040155
movss xmm0, dword [rbx + 0x14ec]
comiss xmm10, xmm0
jbe 0x14004014e
xorps xmm0, xmm0
jmp 0x140040159
addss xmm0, dword [rbx + 0x18]
jmp 0x140040159
movaps xmm0, xmm11
movss dword [rbx + 0x14ec], xmm0
movss xmm0, dword [rbx + 0x394]
comiss xmm0, xmm10
jbe 0x140040189
movss xmm0, dword [rbx + 0x14f0]
comiss xmm10, xmm0
jbe 0x140040182
xorps xmm0, xmm0
jmp 0x14004018d
addss xmm0, dword [rbx + 0x18]
jmp 0x14004018d
movaps xmm0, xmm11
movss dword [rbx + 0x14f0], xmm0
mov edx, dword [rbx + 0x1e24]
test edx, edx
je 0x140040202
mov r8, qword [rbx + 0x1dc8]
test r8, r8
je 0x140040202
movsxd rax, dword [rbx + 0x1e14]
mov dword [rbx + 0x1e14], eax
mov rcx, rax
mov dword [rbx + 0x1dd0], edx
add rcx, rcx
mov dword [rbx + 0x1dd4], r14d
mov dword [r8 + rax*4 + 0x3c0], edx
mov rax, qword [rbx + 0x1dc8]
movups xmm0, xmmword [rbx + 0x1e28]
movups xmmword [rax + rcx*8 + 0x3c8], xmm0
cmp byte [rbx + 0x1e22], r14b
je 0x140040202
mov word [rbx + 0x1e1d], 1
mov byte [rbx + 0x1e1f], 1
mov word [rbx + 0x1e21], r14w
mov dword [rbx + 0x1e24], r14d
mov dword [rbx + 0x1dec], r14d
cmp byte [rbx + 0x1e38], r14b
je 0x140040226
call fcn.140040ee0
cmp dword [rbx + 0x1e40], 2
jne 0x14004024f
cmp dword [rbx + 0x1e60], r14d
jne 0x140040248
cmp dword [rbx + 0x1ec0], r14d
jne 0x140040248
mov byte [rbx + 0x1e1e], r14b
mov dword [rbx + 0x1e40], r14d
cmp byte [rbx + 0x1e1d], r14b
je 0x1400402cc
cmp byte [rbx + 0x1e1c], r14b
je 0x1400402cc
test byte [rbx + 8], 4
je 0x1400402c5
test byte [rbx + 0xc], 4
je 0x1400402c5
cmp byte [rbx + 0x1e1e], r14b
jne 0x1400402c5
cmp byte [rbx + 0x1e1f], r14b
je 0x1400402c5
cmp qword [rbx + 0x1dc8], r14
je 0x1400402c5
lea rcx, [rsp + 0xc0]
call fcn.14003f5b0
movss xmm0, dword [rax]
movss xmm1, dword [rax + 4]
movss dword [rbx + 0x3c4], xmm0
movss dword [rbx + 0x3c8], xmm1
movss dword [rbx + 0x128], xmm0
movss dword [rbx + 0x12c], xmm1
mov byte [rbx + 0x39b], 1
mov byte [rbx + 0x1e1d], r14b
mov rcx, qword [rbx + 0x1dc8]
mov byte [rbx + 0x1e1c], r14b
mov dword [rbx + 0x1de8], r14d
test rcx, rcx
je 0x14004031c
mov rax, rcx
nop dword [rax]
cmp qword [rax + 0x3a0], rax
je 0x140040310
test dword [rax + 0x1c], 0x14000000
jne 0x140040310
mov rax, qword [rax + 0x398]
test rax, rax
jne 0x1400402f0
jmp 0x14004031c
cmp rax, rcx
je 0x14004031c
mov qword [rax + 0x3b8], rcx
mov rax, qword [rbx + 0x1dc8]
test rax, rax
je 0x140040341
cmp qword [rax + 0x3b8], r14
je 0x140040341
cmp dword [rbx + 0x1e14], r14d
jne 0x140040341
mov qword [rax + 0x3b8], r14
call fcn.140041a70
test bpl, bpl
jne 0x140040354
test dil, dil
je 0x140040443
mov rax, qword [rbx + 0x1dc8]
test rax, rax
je 0x140040443
test dword [rax + 0x1c], 0x40000
jne 0x140040443
mov byte [rbx + 0x39d], 1
cmp dword [rbx + 0x1dd0], r14d
je 0x14004044a
cmp byte [rbx + 0x1e1e], r14b
jne 0x14004044a
mov al, 1
mov edx, 1
movaps xmmword [rsp + 0x90], xmm6
mov ecx, edx
movaps xmmword [rsp + 0x80], xmm7
mov byte [rbx + 0x39e], al
call fcn.14003f720
comiss xmm0, xmm10
jbe 0x140040685
cmp dword [rbx + 0x1c58], r14d
je 0x14004045e
mov rdi, qword [0x1400f5860]
mov eax, dword [rdi + 0x1c70]
shr eax, 1
test dl, al
jne 0x14004068c
mov ecx, dword [rdi + 0x1c58]
test ecx, ecx
setne al
mov byte [rdi + 0x1c64], al
test ecx, ecx
je 0x140040412
mov dword [rdi + 0x1c60], r14d
mov word [rdi + 0x1c67], r14w
mov dword [rdi + 0x1c94], 0xffffffff
mov dword [rdi + 0x1c58], r14d
mov word [rdi + 0x1c65], r14w
mov qword [rdi + 0x1c88], r14
mov word [rdi + 0x1c69], r14w
mov qword [rdi + 0x1c6c], r14
mov qword [rdi + 0x1c78], r14
jmp 0x14004068c
mov byte [rbx + 0x39d], r14b
cmp qword [rbx + 0x1ef8], r14
jne 0x140040392
xor al, al
jmp 0x140040394
mov rdi, qword [rbx + 0x1dc8]
test rdi, rdi
je 0x140040544
cmp rdi, qword [rdi + 0x3a0]
je 0x140040544
test dword [rdi + 0x1c], 0x4000000
jne 0x140040544
mov rsi, qword [rdi + 0x398]
test rsi, rsi
je 0x140040544
movss xmm9, dword [rdi + 0x20]
mov rcx, rsi
movss xmm8, dword [rdi + 0x24]
movss xmm6, dword [rdi + 0x28]
movss xmm7, dword [rdi + 0x2c]
call fcn.14003bfb0
mov ecx, dword [rdi + 0x68]
movaps xmm3, xmm9
subss xmm9, dword [rsi + 0x20]
mov rdi, qword [0x1400f5860]
addss xmm3, xmm6
movaps xmm2, xmm8
subss xmm8, dword [rsi + 0x24]
addss xmm2, xmm7
mov rax, qword [rdi + 0x1dc8]
subss xmm3, dword [rsi + 0x20]
shufps xmm9, xmm9, 0xe1
movss xmm9, xmm8
subss xmm2, dword [rsi + 0x24]
shufps xmm9, xmm9, 0xc6
movss xmm9, xmm3
mov dword [rdi + 0x1dd0], ecx
mov dword [rdi + 0x1e14], r14d
mov dword [rdi + 0x1dd4], r14d
shufps xmm9, xmm9, 0x27
mov dword [rax + 0x3c0], ecx
movss xmm9, xmm2
mov rax, qword [rdi + 0x1dc8]
shufps xmm9, xmm9, 0x39
movups xmmword [rsp + 0x30], xmm9
movups xmmword [rax + 0x3c8], xmm9
jmp 0x14004068c
movsxd rdx, dword [rbx + 0x1d98]
test edx, edx
jle 0x14004057e
mov rax, qword [rbx + 0x1da0]
lea rcx, [rdx + rdx*2]
add rcx, rcx
mov rcx, qword [rax + rcx*8 - 0x28]
test dword [rcx + 0x1c], 0x8000000
jne 0x140040685
lea ecx, [rdx - 1]
mov dl, 1
call fcn.14003e010
jmp 0x140040685
cmp dword [rbx + 0x1e14], r14d
je 0x140040663
mov rdi, qword [0x1400f5860]
mov rax, qword [rdi + 0x1dc8]
mov rcx, qword [rax + 0x3b8]
test rcx, rcx
je 0x1400405ae
cmp byte [rcx + 0x9f], r14b
jne 0x1400405b1
mov rcx, rax
mov qword [rdi + 0x1dc8], rcx
mov eax, dword [rcx + 0x3c0]
mov dword [rdi + 0x1e14], r14d
test eax, eax
je 0x140040606
mov dword [rdi + 0x1dd0], eax
mov dword [rdi + 0x1dd4], r14d
mov dword [rcx + 0x3c0], eax
movups xmm0, xmmword [rcx + 0x3c8]
mov rax, qword [rdi + 0x1dc8]
movups xmmword [rax + 0x3c8], xmm0
mov word [rdi + 0x1e1d], 1
mov byte [rdi + 0x1e1f], 1
jmp 0x14004068c
test dword [rcx + 0x1c], 0x40000
jne 0x14004064e
mov qword [rdi + 0x1dd0], r14
xorps xmm0, xmm0
mov dword [rcx + 0x3c0], r14d
mov rax, qword [rdi + 0x1dc8]
movups xmmword [rax + 0x3c8], xmm0
mov word [rdi + 0x1e21], 1
mov dword [rdi + 0x1e24], r14d
movups xmmword [rdi + 0x1e28], xmm0
mov byte [rdi + 0x1e20], 1
jmp 0x14004068c
mov eax, dword [rcx + 0x3c0]
mov dword [rdi + 0x1dd0], eax
mov dword [rdi + 0x1dd4], r14d
jmp 0x14004068c
test rdi, rdi
je 0x14004067e
mov eax, dword [rdi + 0x1c]
bt eax, 0x1a
jb 0x140040677
bt eax, 0x18
jb 0x14004067e
mov dword [rdi + 0x3c0], r14d
mov qword [rbx + 0x1dd0], r14
mov rdi, qword [0x1400f5860]
mov r9d, dword [rbx + 0x1dd0]
mov qword [rbx + 0x1de0], r14
mov qword [rbx + 0x1dd8], r14
test r9d, r9d
je 0x140040770
cmp byte [rbx + 0x1e1e], r14b
jne 0x140040770
cmp qword [rbx + 0x1ef8], r14
jne 0x140040770
mov rax, qword [rbx + 0x1dc8]
test rax, rax
je 0x140040770
test dword [rax + 0x1c], 0x40000
jne 0x140040770
movss xmm0, dword [rdi + 0x344]
comiss xmm0, xmm10
seta r10b
test r10b, r10b
je 0x14004070d
mov edx, 1
xor ecx, ecx
call fcn.14003f720
comiss xmm0, xmm10
jbe 0x14004070d
movzx ecx, dl
jmp 0x14004070f
xor cl, cl
mov eax, dword [rbx + 0x1c58]
test eax, eax
jne 0x140040726
test cl, cl
je 0x14004072b
mov dword [rbx + 0x1dd8], r9d
jmp 0x14004072b
cmp eax, r9d
jne 0x140040770
test r10b, r10b
je 0x140040737
mov dword [rbx + 0x1ddc], r9d
test eax, eax
je 0x140040740
cmp eax, r9d
jne 0x140040770
test cl, cl
je 0x14004074b
mov dword [rbx + 0x1de0], r9d
test eax, eax
je 0x140040754
cmp eax, r9d
jne 0x140040770
mov edx, 1
mov ecx, 2
call fcn.14003f720
comiss xmm0, xmm10
jbe 0x140040770
mov dword [rbx + 0x1de4], r9d
mov rcx, qword [rbx + 0x1dc8]
test rcx, rcx
je 0x14004078c
test dword [rcx + 0x1c], 0x40000
je 0x14004078c
mov byte [rbx + 0x1e1e], 1
mov eax, dword [rbx + 0x1df8]
mov byte [rbx + 0x1e38], r14b
test eax, eax
je 0x1400407b5
mov dword [rbx + 0x1de4], eax
mov dword [rbx + 0x1de0], eax
mov dword [rbx + 0x1ddc], eax
mov dword [rbx + 0x1dd8], eax
mov dword [rbx + 0x1df8], r14d
cmp dword [rbx + 0x1e40], r14d
jne 0x140040909
mov dword [rbx + 0x1e48], 0xffffffff
mov r9d, 0xffffffff
mov dword [rbx + 0x1e3c], r14d
test rcx, rcx
je 0x140040900
cmp qword [rbx + 0x1ef8], r14
jne 0x140040900
test dword [rcx + 0x1c], 0x40000
jne 0x140040900
test byte [rdi + 0x1c6c], 1
jne 0x14004083b
mov edx, 3
mov ecx, 4
call fcn.14003f720
comiss xmm0, xmm10
ja 0x140040831
mov ecx, 0x11
call fcn.14003f720
comiss xmm0, xmm10
jbe 0x14004083b
mov dword [rbx + 0x1e48], r14d
mov r9d, r14d
mov eax, dword [rdi + 0x1c6c]
shr eax, 1
test al, 1
jne 0x14004087c
mov edx, 3
mov ecx, 5
call fcn.14003f720
comiss xmm0, xmm10
ja 0x14004086c
mov ecx, 0x12
call fcn.14003f720
comiss xmm0, xmm10
jbe 0x14004087c
mov dword [rbx + 0x1e48], 1
mov r9d, 1
mov eax, dword [rdi + 0x1c6c]
shr eax, 2
test al, 1
jne 0x1400408be
mov edx, 3
mov ecx, 6
call fcn.14003f720
comiss xmm0, xmm10
ja 0x1400408ae
mov ecx, 0x13
call fcn.14003f720
comiss xmm0, xmm10
jbe 0x1400408be
mov dword [rbx + 0x1e48], 2
mov r9d, 2
mov eax, dword [rdi + 0x1c6c]
shr eax, 3
test al, 1
jne 0x140040900
mov edx, 3
mov ecx, 7
call fcn.14003f720
comiss xmm0, xmm10
ja 0x1400408f0
mov ecx, 0x14
call fcn.14003f720
comiss xmm0, xmm10
jbe 0x140040900
mov dword [rbx + 0x1e48], 3
mov r9d, 3
mov dword [rbx + 0x1e50], r9d
jmp 0x140040913
mov dword [rbx + 0x1e40], 2
xor al, al
movaps xmm9, xmm10
test bpl, bpl
mov rbp, qword [rsp + 0xc8]
je 0x140040936
call fcn.140041180
movzx eax, byte [rbx + 0x1e38]
movaps xmm9, xmm0
mov ecx, dword [rbx + 0x1e48]
cmp ecx, 0xffffffff
je 0x14004095c
mov byte [rbx + 0x1e38], 1
mov eax, dword [rbx + 0x3c0]
mov dword [rbx + 0x1e44], eax
mov dword [rbx + 0x1e4c], ecx
jmp 0x140040960
test al, al
je 0x140040980
cmp dword [rbx + 0x1dd0], r14d
jne 0x140040980
mov word [rbx + 0x1e21], 0x101
mov dword [rbx + 0x1e24], r14d
mov byte [rbx + 0x1e1e], r14b
cmp byte [rdi + 0x1e38], r14b
jne 0x140040996
cmp byte [rdi + 0x1e21], r14b
jne 0x140040996
xor al, al
jmp 0x140040998
mov al, 1
movss xmm8, dword [0x1400a3a20]
mov byte [rdi + 0x1e20], al
mov rsi, qword [rbx + 0x1dc8]
test rsi, rsi
je 0x140040b64
test dword [rsi + 0x1c], 0x40000
jne 0x140040b64
cmp qword [rbx + 0x1ef8], r14
jne 0x140040b64
mov rax, qword [rsi + 0x398]
movss xmm0, dword [rdi + 0x1984]
mulss xmm0, dword [rsi + 0x2c0]
test rax, rax
je 0x1400409f5
mulss xmm0, dword [rax + 0x2c0]
mulss xmm0, dword [0x1400a3b40]
mulss xmm0, dword [rbx + 0x18]
addss xmm0, dword [0x1400a3974]
cvttss2si eax, xmm0
movd xmm6, eax
cvtdq2ps xmm6, xmm6
cmp dword [rsi + 0x160], r14d
jne 0x140040abd
cmp byte [rsi + 0x16d], r14b
je 0x140040abd
cmp byte [rbx + 0x1e38], r14b
je 0x140040abd
mov eax, dword [rbx + 0x1e48]
test eax, eax
je 0x140040a51
cmp eax, 1
jne 0x140040a7c
movaps xmm0, xmm8
jmp 0x140040a55
movaps xmm0, xmm11
mulss xmm0, xmm6
mov dword [rsi + 0x84], r14d
mov dword [rsi + 0x8c], r14d
addss xmm0, dword [rsi + 0x6c]
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rsi + 0x7c], xmm0
mov eax, dword [rbx + 0x1e48]
cmp eax, 2
je 0x140040a90
cmp eax, 3
jne 0x140040abd
movaps xmm11, xmm8
mulss xmm11, xmm6
mov dword [rsi + 0x88], r14d
mov dword [rsi + 0x90], r14d
addss xmm11, dword [rsi + 0x70]
cvttss2si eax, xmm11
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rsi + 0x80], xmm0
movss xmm0, dword [0x1400a3ae4]
lea rcx, [rsp + 0xc0]
movss xmm3, dword [0x1400a38fc]
xor r8d, r8d
mov edx, 4
movss dword [rsp + 0x20], xmm0
call fcn.14003f8a0
movss xmm0, dword [rsp + 0xc0]
ucomiss xmm0, xmm10
jp 0x140040af9
je 0x140040b29
cmp byte [rsi + 0x9c], r14b
je 0x140040b29
mulss xmm0, xmm6
mov dword [rsi + 0x84], r14d
mov dword [rsi + 0x8c], r14d
addss xmm0, dword [rsi + 0x6c]
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rsi + 0x7c], xmm0
movss xmm0, dword [rsp + 0xc4]
ucomiss xmm0, xmm10
jp 0x140040b3a
je 0x140040b64
mulss xmm0, xmm6
mov dword [rsi + 0x88], r14d
mov dword [rsi + 0x90], r14d
addss xmm0, dword [rsi + 0x70]
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rsi + 0x80], xmm0
movaps xmm11, xmmword [rsp + 0x40]
xorps xmm0, xmm0
mov rsi, qword [rsp + 0xd0]
movups xmmword [rbx + 0x1e74], xmm0
mov qword [rbx + 0x1e58], r14
mov qword [rbx + 0x1e60], r14
mov dword [rbx + 0x1e70], 0x7f7fffff
mov dword [rbx + 0x1e6c], 0x7f7fffff
mov dword [rbx + 0x1e68], 0x7f7fffff
mov qword [rbx + 0x1e88], r14
mov qword [rbx + 0x1e90], r14
mov dword [rbx + 0x1ea0], 0x7f7fffff
mov dword [rbx + 0x1e9c], 0x7f7fffff
mov dword [rbx + 0x1e98], 0x7f7fffff
movups xmmword [rbx + 0x1ea4], xmm0
mov qword [rbx + 0x1eb8], r14
mov qword [rbx + 0x1ec0], r14
mov dword [rbx + 0x1ed0], 0x7f7fffff
mov dword [rbx + 0x1ecc], 0x7f7fffff
mov dword [rbx + 0x1ec8], 0x7f7fffff
movups xmmword [rbx + 0x1ed4], xmm0
cmp byte [rbx + 0x1e38], r14b
je 0x140040da4
cmp dword [rbx + 0x1dfc], 3
jne 0x140040da4
movsxd rdx, dword [rbx + 0x1e14]
test edx, edx
jne 0x140040da4
mov rax, qword [rbx + 0x1dc8]
movss xmm2, dword [rax + 0x228]
subss xmm2, dword [rax + 0x20]
movss xmm6, dword [rax + 0x230]
movss xmm7, dword [rax + 0x234]
movss xmm3, dword [rax + 0x22c]
subss xmm6, dword [rax + 0x20]
subss xmm7, dword [rax + 0x24]
subss xmm3, dword [rax + 0x24]
movss xmm10, dword [rax + 0x3c8]
subss xmm2, xmm8
addss xmm6, xmm8
addss xmm7, xmm8
subss xmm3, xmm8
comiss xmm10, xmm2
jb 0x140040cb8
movss xmm0, dword [rax + 0x3cc]
comiss xmm0, xmm3
jb 0x140040cb8
comiss xmm6, dword [rax + 0x3d0]
jb 0x140040cb8
comiss xmm7, dword [rax + 0x3d4]
jae 0x140040da4
mov rcx, qword [rax + 0x398]
movss xmm1, dword [rdi + 0x1984]
mulss xmm1, dword [rax + 0x2c0]
test rcx, rcx
je 0x140040cdc
mulss xmm1, dword [rcx + 0x2c0]
mulss xmm1, dword [0x1400a3974]
movaps xmm4, xmm7
mov rcx, rdx
subss xmm4, xmm3
movaps xmm5, xmm6
subss xmm5, xmm2
add rcx, rcx
movss xmm0, dword [rax + rcx*8 + 0x3cc]
minss xmm4, xmm1
minss xmm5, xmm1
xorps xmm4, xmmword [0x1400a4060]
xorps xmm5, xmmword [0x1400a4060]
subss xmm3, xmm4
subss xmm2, xmm5
addss xmm5, xmm6
addss xmm4, xmm7
comiss xmm3, xmm0
jbe 0x140040d31
movaps xmm1, xmm3
jmp 0x140040d38
movaps xmm1, xmm4
minss xmm1, xmm0
comiss xmm2, xmm10
jbe 0x140040d43
movaps xmm0, xmm2
jmp 0x140040d4f
movaps xmm0, xmm5
minss xmm0, dword [rax + rcx*8 + 0x3c8]
movss dword [rax + rcx*8 + 0x3c8], xmm0
movss dword [rax + rcx*8 + 0x3cc], xmm1
movss xmm0, dword [rax + rcx*8 + 0x3d4]
comiss xmm3, xmm0
ja 0x140040d76
movaps xmm3, xmm4
minss xmm3, xmm0
movss xmm0, dword [rax + rcx*8 + 0x3d0]
comiss xmm2, xmm0
ja 0x140040d8b
movaps xmm2, xmm5
minss xmm2, xmm0
movss dword [rax + rcx*8 + 0x3d0], xmm2
movss dword [rax + rcx*8 + 0x3d4], xmm3
mov qword [rbx + 0x1dd0], r14
mov rax, qword [rbx + 0x1dc8]
movaps xmm10, xmmword [rsp + 0x50]
movaps xmm7, xmmword [rsp + 0x80]
movaps xmm6, xmmword [rsp + 0x90]
mov rdi, qword [rsp + 0xa0]
test rax, rax
je 0x140040e08
movsxd rcx, dword [rbx + 0x1e14]
add rcx, rcx
movss xmm0, dword [rax + rcx*8 + 0x3c8]
comiss xmm0, dword [rax + rcx*8 + 0x3d0]
ja 0x140040e08
movss xmm0, dword [rax + rcx*8 + 0x3cc]
comiss xmm0, dword [rax + rcx*8 + 0x3d4]
ja 0x140040e08
movups xmm5, xmmword [rax + rcx*8 + 0x3c8]
jmp 0x140040e10
xorps xmm5, xmm5
test rax, rax
je 0x140040e53
movaps xmm4, xmm5
movaps xmm3, xmm5
shufps xmm4, xmm5, 0xaa
movaps xmm0, xmm5
addss xmm4, dword [rax + 0x20]
addss xmm0, dword [rax + 0x20]
shufps xmm3, xmm5, 0xff
addss xmm3, dword [rax + 0x24]
shufps xmm5, xmm5, 0x55
addss xmm5, dword [rax + 0x24]
movss dword [rsp + 0x30], xmm0
movss dword [rsp + 0x38], xmm4
movss dword [rsp + 0x3c], xmm3
movss dword [rsp + 0x34], xmm5
jmp 0x140040e5b
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
movaps xmm1, xmm9
lea rax, [rsp + 0x30]
movups xmm0, xmmword [rax]
movups xmmword [rbx + 0x1e00], xmm0
addss xmm9, dword [rbx + 0x1e0c]
addss xmm1, dword [rbx + 0x1e04]
movss dword [rbx + 0x1e0c], xmm9
movaps xmm9, xmmword [rsp + 0x60]
movss dword [rbx + 0x1e04], xmm1
movss xmm0, dword [rbx + 0x1e00]
addss xmm0, xmm8
mov dword [rbx + 0x1e10], r14d
movaps xmm8, xmmword [rsp + 0x70]
minss xmm0, dword [rbx + 0x1e08]
movss dword [rbx + 0x1e00], xmm0
movss dword [rbx + 0x1e08], xmm0
add rsp, 0xa8
pop r14
pop rbx
ret