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

Disassembly:
mov rax, rsp
mov qword [rax + 0x20], rbx
push rbp
sub rsp, 0xa0
mov rbx, qword [0x140214df0]
xor ebp, ebp
movaps xmmword [rax - 0x38], xmm8
movaps xmmword [rax - 0x58], xmm10
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
movaps xmmword [rax - 0x18], xmm6
xorps xmm6, xmm6
mov byte [rbx + 0x3af], 0
mov qword [rbx + 0x2018], rbp
mov dword [rbx + 0x2020], ebp
movzx esi, byte [rbx + 8]
and sil, 1
movaps xmmword [rax - 0x48], xmm9
test byte [rbx + 8], 2
movaps xmmword [rax - 0x68], xmm11
je 0x14002761d
test byte [rbx + 0xc], 1
je 0x14002761d
cmp dword [rbx + 0x1f2c], 4
lea rcx, [rbx + 0x1f2c]
mov dil, 1
je 0x140027627
movss xmm0, dword [rbx + 0x358]
comiss xmm0, xmm6
ja 0x140027611
movss xmm0, dword [rbx + 0x360]
comiss xmm0, xmm6
ja 0x140027611
movss xmm0, dword [rbx + 0x35c]
comiss xmm0, xmm6
ja 0x140027611
movss xmm0, dword [rbx + 0x364]
comiss xmm0, xmm6
ja 0x140027611
movss xmm0, dword [rbx + 0x368]
comiss xmm0, xmm6
ja 0x140027611
movss xmm0, dword [rbx + 0x36c]
comiss xmm0, xmm6
ja 0x140027611
movss xmm0, dword [rbx + 0x370]
comiss xmm0, xmm6
ja 0x140027611
movss xmm0, dword [rbx + 0x374]
lea rcx, [rbx + 0x1f2c]
comiss xmm0, xmm6
jbe 0x140027627
mov dword [rbx + 0x1f2c], 4
jmp 0x140027620
xor dil, dil
lea rcx, [rbx + 0x1f2c]
test sil, sil
je 0x14002775d
movsxd rax, dword [rbx + 0x6c]
test eax, eax
js 0x140027652
cmp byte [rax + rbx + 0x158], bpl
je 0x140027652
mov dword [rbx + 0x358], 0x3f800000
mov dword [rcx], 3
movsxd rax, dword [rbx + 0x70]
test eax, eax
js 0x140027674
cmp byte [rax + rbx + 0x158], bpl
je 0x140027674
mov dword [rbx + 0x360], 0x3f800000
mov dword [rcx], 3
movsxd rax, dword [rbx + 0x74]
test eax, eax
js 0x140027696
cmp byte [rax + rbx + 0x158], bpl
je 0x140027696
mov dword [rbx + 0x35c], 0x3f800000
mov dword [rcx], 3
movsxd rax, dword [rbx + 0x40]
test eax, eax
js 0x1400276b8
cmp byte [rax + rbx + 0x158], bpl
je 0x1400276b8
mov dword [rbx + 0x39c], 0x3f800000
mov dword [rcx], 3
movsxd rax, dword [rbx + 0x44]
test eax, eax
js 0x1400276da
cmp byte [rax + rbx + 0x158], bpl
je 0x1400276da
mov dword [rbx + 0x3a0], 0x3f800000
mov dword [rcx], 3
movsxd rax, dword [rbx + 0x48]
test eax, eax
js 0x1400276fc
cmp byte [rax + rbx + 0x158], bpl
je 0x1400276fc
mov dword [rbx + 0x3a4], 0x3f800000
mov dword [rcx], 3
movsxd rax, dword [rbx + 0x4c]
test eax, eax
js 0x14002771e
cmp byte [rax + rbx + 0x158], bpl
je 0x14002771e
mov dword [rbx + 0x3a8], 0x3f800000
mov dword [rcx], 3
movzx eax, byte [rbx + 0x154]
test al, al
je 0x140027733
mov dword [rbx + 0x390], 0x3f800000
cmp byte [rbx + 0x155], bpl
je 0x140027746
mov dword [rbx + 0x394], 0x3f800000
cmp byte [rbx + 0x156], bpl
je 0x14002775d
test al, al
jne 0x14002775d
mov dword [rbx + 0x398], 0x3f800000
movups xmm0, xmmword [rbx + 0x14b0]
mov eax, dword [rbx + 0x1500]
mov r9d, ebp
movups xmm1, xmmword [rbx + 0x14c0]
lea r8, [rbx + 0x18]
mov rcx, rbp
movss xmm9, dword [0x14014f00c]
movups xmmword [rbx + 0x1504], xmm0
movups xmm0, xmmword [rbx + 0x14d0]
movups xmmword [rbx + 0x1514], xmm1
movups xmm1, xmmword [rbx + 0x14e0]
movups xmmword [rbx + 0x1524], xmm0
movups xmm0, xmmword [rbx + 0x14f0]
movups xmmword [rbx + 0x1534], xmm1
movups xmmword [rbx + 0x1544], xmm0
mov dword [rbx + 0x1554], eax
movss xmm0, dword [rbx + rcx*4 + 0x358]
comiss xmm0, xmm6
jbe 0x1400277ee
movss xmm0, dword [rbx + rcx*4 + 0x14b0]
lea r8, [rbx + 0x18]
comiss xmm6, xmm0
jbe 0x1400277e7
movaps xmm0, xmm6
jmp 0x1400277f2
addss xmm0, dword [r8]
jmp 0x1400277f2
movaps xmm0, xmm9
mov edx, 0x52a
mov rax, rcx
add rax, rdx
movss dword [rbx + rax*4 + 8], xmm0
movss xmm0, dword [rbx + rcx*4 + 0x35c]
comiss xmm0, xmm6
jbe 0x14002782b
movss xmm0, dword [rbx + rcx*4 + 0x14b4]
comiss xmm6, xmm0
jbe 0x140027824
movaps xmm0, xmm6
jmp 0x14002782f
addss xmm0, dword [r8]
jmp 0x14002782f
movaps xmm0, xmm9
mov edx, 0x52b
mov rax, rcx
add rax, rdx
movss dword [rbx + rax*4 + 8], xmm0
movss xmm0, dword [rbx + rcx*4 + 0x360]
comiss xmm0, xmm6
jbe 0x140027868
movss xmm0, dword [rbx + rcx*4 + 0x14b8]
comiss xmm6, xmm0
jbe 0x140027861
movaps xmm0, xmm6
jmp 0x14002786c
addss xmm0, dword [r8]
jmp 0x14002786c
movaps xmm0, xmm9
mov edx, 0x52c
mov rax, rcx
add rax, rdx
movss dword [rbx + rax*4 + 8], xmm0
movss xmm0, dword [rbx + rcx*4 + 0x364]
comiss xmm0, xmm6
jbe 0x1400278a5
movss xmm0, dword [rbx + rcx*4 + 0x14bc]
comiss xmm6, xmm0
jbe 0x14002789e
movaps xmm0, xmm6
jmp 0x1400278a9
addss xmm0, dword [r8]
jmp 0x1400278a9
movaps xmm0, xmm9
mov edx, 0x52d
mov rax, rcx
add rax, rdx
movss dword [rbx + rax*4 + 8], xmm0
movss xmm0, dword [rbx + rcx*4 + 0x368]
comiss xmm0, xmm6
jbe 0x1400278e2
movss xmm0, dword [rbx + rcx*4 + 0x14c0]
comiss xmm6, xmm0
jbe 0x1400278db
movaps xmm0, xmm6
jmp 0x1400278e6
addss xmm0, dword [r8]
jmp 0x1400278e6
movaps xmm0, xmm9
mov edx, 0x52e
mov rax, rcx
add rax, rdx
movss dword [rbx + rax*4 + 8], xmm0
movss xmm0, dword [rbx + rcx*4 + 0x36c]
comiss xmm0, xmm6
jbe 0x14002791f
movss xmm0, dword [rbx + rcx*4 + 0x14c4]
comiss xmm6, xmm0
jbe 0x140027918
movaps xmm0, xmm6
jmp 0x140027923
addss xmm0, dword [r8]
jmp 0x140027923
movaps xmm0, xmm9
mov edx, 0x52f
mov rax, rcx
add rax, rdx
movss dword [rbx + rax*4 + 8], xmm0
movss xmm0, dword [rbx + rcx*4 + 0x370]
comiss xmm0, xmm6
jbe 0x14002795c
movss xmm0, dword [rbx + rcx*4 + 0x14c8]
comiss xmm6, xmm0
jbe 0x140027955
movaps xmm0, xmm6
jmp 0x140027960
addss xmm0, dword [r8]
jmp 0x140027960
movaps xmm0, xmm9
mov edx, 0x530
mov rax, rcx
add rax, rdx
movss dword [rbx + rax*4 + 8], xmm0
movss xmm0, dword [rbx + rcx*4 + 0x374]
comiss xmm0, xmm6
jbe 0x140027999
movss xmm0, dword [rbx + rcx*4 + 0x14cc]
comiss xmm6, xmm0
jbe 0x140027992
movaps xmm0, xmm6
jmp 0x14002799d
addss xmm0, dword [r8]
jmp 0x14002799d
movaps xmm0, xmm9
mov edx, 0x531
mov rax, rcx
add rax, rdx
movss dword [rbx + rax*4 + 8], xmm0
movss xmm0, dword [rbx + rcx*4 + 0x378]
comiss xmm0, xmm6
jbe 0x1400279d6
movss xmm0, dword [rbx + rcx*4 + 0x14d0]
comiss xmm6, xmm0
jbe 0x1400279cf
movaps xmm0, xmm6
jmp 0x1400279da
addss xmm0, dword [r8]
jmp 0x1400279da
movaps xmm0, xmm9
mov edx, 0x532
mov rax, rcx
add rax, rdx
movss dword [rbx + rax*4 + 8], xmm0
movss xmm0, dword [rbx + rcx*4 + 0x37c]
comiss xmm0, xmm6
jbe 0x140027a13
movss xmm0, dword [rbx + rcx*4 + 0x14d4]
comiss xmm6, xmm0
jbe 0x140027a0c
movaps xmm0, xmm6
jmp 0x140027a17
addss xmm0, dword [r8]
jmp 0x140027a17
movaps xmm0, xmm9
mov edx, 0x533
mov rax, rcx
add rax, rdx
movss dword [rbx + rax*4 + 8], xmm0
movss xmm0, dword [rbx + rcx*4 + 0x380]
comiss xmm0, xmm6
jbe 0x140027a50
movss xmm0, dword [rbx + rcx*4 + 0x14d8]
comiss xmm6, xmm0
jbe 0x140027a49
movaps xmm0, xmm6
jmp 0x140027a54
addss xmm0, dword [r8]
jmp 0x140027a54
movaps xmm0, xmm9
mov edx, 0x534
mov rax, rcx
add rax, rdx
movss dword [rbx + rax*4 + 8], xmm0
movss xmm0, dword [rbx + rcx*4 + 0x384]
comiss xmm0, xmm6
jbe 0x140027a8d
movss xmm0, dword [rbx + rcx*4 + 0x14dc]
comiss xmm6, xmm0
jbe 0x140027a86
movaps xmm0, xmm6
jmp 0x140027a91
addss xmm0, dword [r8]
jmp 0x140027a91
movaps xmm0, xmm9
mov edx, 0x535
mov rax, rcx
add rax, rdx
movss dword [rbx + rax*4 + 8], xmm0
movss xmm0, dword [rbx + rcx*4 + 0x388]
comiss xmm0, xmm6
jbe 0x140027aca
movss xmm0, dword [rbx + rcx*4 + 0x14e0]
comiss xmm6, xmm0
jbe 0x140027ac3
movaps xmm0, xmm6
jmp 0x140027ace
addss xmm0, dword [r8]
jmp 0x140027ace
movaps xmm0, xmm9
mov edx, 0x536
mov rax, rcx
add rax, rdx
movss dword [rbx + rax*4 + 8], xmm0
movss xmm0, dword [rbx + rcx*4 + 0x38c]
comiss xmm0, xmm6
jbe 0x140027b07
movss xmm0, dword [rbx + rcx*4 + 0x14e4]
comiss xmm6, xmm0
jbe 0x140027b00
movaps xmm0, xmm6
jmp 0x140027b0b
addss xmm0, dword [r8]
jmp 0x140027b0b
movaps xmm0, xmm9
mov edx, 0x537
mov rax, rcx
add rax, rdx
movss dword [rbx + rax*4 + 8], xmm0
movss xmm0, dword [rbx + rcx*4 + 0x390]
comiss xmm0, xmm6
jbe 0x140027b44
movss xmm0, dword [rbx + rcx*4 + 0x14e8]
comiss xmm6, xmm0
jbe 0x140027b3d
movaps xmm0, xmm6
jmp 0x140027b48
addss xmm0, dword [r8]
jmp 0x140027b48
movaps xmm0, xmm9
mov edx, 0x538
mov rax, rcx
add rax, rdx
movss dword [rbx + rax*4 + 8], xmm0
movss xmm0, dword [rbx + rcx*4 + 0x394]
comiss xmm0, xmm6
jbe 0x140027b81
movss xmm0, dword [rbx + rcx*4 + 0x14ec]
comiss xmm6, xmm0
jbe 0x140027b7a
movaps xmm0, xmm6
jmp 0x140027b85
addss xmm0, dword [r8]
jmp 0x140027b85
movaps xmm0, xmm9
mov edx, 0x539
mov rax, rcx
add rax, rdx
movss dword [rbx + rax*4 + 8], xmm0
movss xmm0, dword [rbx + rcx*4 + 0x398]
comiss xmm0, xmm6
jbe 0x140027bbe
movss xmm0, dword [rbx + rcx*4 + 0x14f0]
comiss xmm6, xmm0
jbe 0x140027bb7
movaps xmm0, xmm6
jmp 0x140027bc2
addss xmm0, dword [r8]
jmp 0x140027bc2
movaps xmm0, xmm9
mov edx, 0x53a
mov rax, rcx
add rax, rdx
movss dword [rbx + rax*4 + 8], xmm0
movss xmm0, dword [rbx + rcx*4 + 0x39c]
comiss xmm0, xmm6
jbe 0x140027bfb
movss xmm0, dword [rbx + rcx*4 + 0x14f4]
comiss xmm6, xmm0
jbe 0x140027bf4
movaps xmm0, xmm6
jmp 0x140027bff
addss xmm0, dword [r8]
jmp 0x140027bff
movaps xmm0, xmm9
mov edx, 0x53b
mov rax, rcx
add rax, rdx
movss dword [rbx + rax*4 + 8], xmm0
movss xmm0, dword [rbx + rcx*4 + 0x3a0]
comiss xmm0, xmm6
jbe 0x140027c38
movss xmm0, dword [rbx + rcx*4 + 0x14f8]
comiss xmm6, xmm0
jbe 0x140027c31
movaps xmm0, xmm6
jmp 0x140027c3c
addss xmm0, dword [r8]
jmp 0x140027c3c
movaps xmm0, xmm9
mov edx, 0x53c
mov rax, rcx
add rax, rdx
movss dword [rbx + rax*4 + 8], xmm0
movss xmm0, dword [rbx + rcx*4 + 0x3a4]
comiss xmm0, xmm6
jbe 0x140027c75
movss xmm0, dword [rbx + rcx*4 + 0x14fc]
comiss xmm6, xmm0
jbe 0x140027c6e
movaps xmm0, xmm6
jmp 0x140027c79
addss xmm0, dword [r8]
jmp 0x140027c79
movaps xmm0, xmm9
mov edx, 0x53d
mov rax, rcx
add rax, rdx
movss dword [rbx + rax*4 + 8], xmm0
movss xmm0, dword [rbx + rcx*4 + 0x3a8]
comiss xmm0, xmm6
jbe 0x140027cb2
movss xmm0, dword [rbx + rcx*4 + 0x1500]
comiss xmm6, xmm0
jbe 0x140027cab
movaps xmm0, xmm6
jmp 0x140027cb6
addss xmm0, dword [r8]
jmp 0x140027cba
movaps xmm0, xmm9
lea r8, [rbx + 0x18]
mov rax, rcx
mov edx, 0x53e
add rax, rdx
add r9d, 0x15
add rcx, 0x15
movss dword [rbx + rax*4 + 8], xmm0
cmp r9d, 0x15
jl 0x1400277c2
mov edx, dword [rbx + 0x1f54]
test edx, edx
je 0x140027d7a
cmp byte [rbx + 0x1f4e], bpl
je 0x140027cfd
cmp byte [rbx + 0x1f52], bpl
je 0x140027d7a
mov r9, qword [rbx + 0x1ef8]
test r9, r9
je 0x140027d7a
movsxd rax, dword [rbx + 0x1f44]
mov dword [rbx + 0x1f04], ebp
mov r8, rax
cmp byte [rbx + 0x1f52], bpl
mov dword [rbx + 0x1f00], edx
mov dword [r9 + rax*4 + 0x410], edx
je 0x140027d5a
mov rax, qword [rbx + 0x1ef8]
add r8, r8
movups xmm0, xmmword [rbx + 0x1f58]
movups xmmword [rax + r8*8 + 0x418], xmm0
mov word [rbx + 0x1f4d], 1
mov byte [rbx + 0x1f4f], 1
movsxd rcx, dword [rbx + 0x1f44]
mov rax, qword [rbx + 0x1ef8]
add rcx, rcx
movups xmm0, xmmword [rbx + 0x1f58]
movups xmmword [rax + rcx*8 + 0x418], xmm0
mov word [rbx + 0x1f51], bp
mov dword [rbx + 0x1f54], ebp
mov dword [rbx + 0x1f1c], ebp
cmp byte [rbx + 0x1f68], bpl
je 0x140027d9b
call fcn.140028ae0
cmp dword [rbx + 0x1f70], 2
jne 0x140027dc1
cmp dword [rbx + 0x1f90], ebp
jne 0x140027dbb
cmp dword [rbx + 0x1ff0], ebp
jne 0x140027dbb
mov byte [rbx + 0x1f4e], bpl
mov dword [rbx + 0x1f70], ebp
cmp byte [rbx + 0x1f4d], bpl
je 0x140027e3e
cmp byte [rbx + 0x1f4c], bpl
je 0x140027e3e
test byte [rbx + 8], 4
je 0x140027e37
test byte [rbx + 0xc], 4
je 0x140027e37
cmp byte [rbx + 0x1f4e], bpl
jne 0x140027e37
cmp byte [rbx + 0x1f4f], bpl
je 0x140027e37
cmp qword [rbx + 0x1ef8], rbp
je 0x140027e37
lea rcx, [rsp + 0xb0]
call fcn.140027050
movss xmm0, dword [rax]
movss xmm1, dword [rax + 4]
movss dword [rbx + 0x3d8], xmm0
movss dword [rbx + 0x3dc], xmm1
movss dword [rbx + 0x138], xmm0
movss dword [rbx + 0x13c], xmm1
mov byte [rbx + 0x3af], 1
mov byte [rbx + 0x1f4d], bpl
mov rdx, qword [rbx + 0x1ef8]
mov byte [rbx + 0x1f4c], bpl
mov dword [rbx + 0x1f18], ebp
test rdx, rdx
je 0x140027e92
mov rcx, rdx
nop word [rax + rax]
cmp qword [rcx + 0x3f0], rcx
je 0x140027e86
mov eax, dword [rcx + 0xc]
and eax, 0x15000000
cmp eax, 0x1000000
jne 0x140027e86
mov rcx, qword [rcx + 0x3e0]
test rcx, rcx
jne 0x140027e60
jmp 0x140027e92
cmp rcx, rdx
je 0x140027e92
mov qword [rcx + 0x408], rdx
mov rax, qword [rbx + 0x1ef8]
test rax, rax
je 0x140027eb6
cmp qword [rax + 0x408], rbp
je 0x140027eb6
cmp dword [rbx + 0x1f44], ebp
jne 0x140027eb6
mov qword [rax + 0x408], rbp
call fcn.140029740
test sil, sil
jne 0x140027ec9
test dil, dil
je 0x140027f96
mov rax, qword [rbx + 0x1ef8]
test rax, rax
je 0x140027f96
test dword [rax + 0xc], 0x40000
jne 0x140027f96
mov byte [rbx + 0x3b1], 1
cmp dword [rbx + 0x1f00], ebp
je 0x140027f9d
cmp byte [rbx + 0x1f4e], bpl
jne 0x140027f9d
mov al, 1
mov edx, 1
mov byte [rbx + 0x3b2], al
mov ecx, edx
call fcn.140027190
comiss xmm0, xmm6
jbe 0x1400281d5
cmp dword [rbx + 0x1d70], ebp
je 0x140027fb1
mov rdi, qword [0x140214df0]
mov eax, dword [rdi + 0x1d88]
shr eax, 1
test dl, al
jne 0x1400281dc
mov ecx, dword [rdi + 0x1d70]
test ecx, ecx
setne al
mov byte [rdi + 0x1d7c], al
test ecx, ecx
je 0x140027f68
mov dword [rdi + 0x1d78], ebp
mov word [rdi + 0x1d7f], bp
mov dword [rdi + 0x1d70], ebp
mov word [rdi + 0x1d7d], bp
mov qword [rdi + 0x1da0], rbp
mov byte [rdi + 0x1d81], bpl
mov qword [rdi + 0x1d84], rbp
mov qword [rdi + 0x1d90], rbp
jmp 0x1400281dc
mov byte [rbx + 0x3b1], bpl
cmp qword [rbx + 0x2028], rbp
jne 0x140027f06
xor al, al
jmp 0x140027f08
mov rdi, qword [rbx + 0x1ef8]
test rdi, rdi
je 0x14002802c
mov eax, dword [rdi + 0xc]
and eax, 0x5000000
cmp eax, 0x1000000
jne 0x14002802c
mov rcx, qword [rdi + 0x3e0]
test rcx, rcx
je 0x14002802c
cmp rdi, qword [rdi + 0x3f0]
je 0x14002802c
call fcn.140022a80
mov ecx, dword [rdi + 0x88]
mov rdi, qword [0x140214df0]
mov rax, qword [rdi + 0x1ef8]
mov dword [rdi + 0x1f00], ecx
mov dword [rdi + 0x1f04], ebp
mov dword [rax + 0x410], ecx
mov byte [rbx + 0x1f4c], bpl
cmp byte [rbx + 0x1f4f], bpl
je 0x1400281dc
mov byte [rbx + 0x1f4d], 1
jmp 0x1400281dc
movsxd rdx, dword [rbx + 0x1ea0]
test edx, edx
jle 0x140028066
mov rax, qword [rbx + 0x1ea8]
lea rcx, [rdx + rdx*2]
add rcx, rcx
mov rcx, qword [rax + rcx*8 - 0x28]
test dword [rcx + 0xc], 0x8000000
jne 0x1400281d5
lea ecx, [rdx - 1]
mov dl, 1
call fcn.1400254e0
jmp 0x1400281d5
cmp dword [rbx + 0x1f44], ebp
je 0x1400281b4
mov rdi, qword [0x140214df0]
mov r9, qword [rdi + 0x1ef8]
mov dword [rdi + 0x1f44], ebp
mov rcx, qword [r9 + 0x408]
test rcx, rcx
je 0x14002809b
cmp byte [rcx + 0xc0], bpl
jne 0x1400280f9
mov rdx, qword [r9 + 0x450]
test rdx, rdx
je 0x1400280f6
mov rdx, qword [rdx + 0x38]
test rdx, rdx
je 0x1400280f6
movsxd r8, dword [rdx]
mov rcx, rbp
test r8, r8
jle 0x1400280f6
mov rdx, qword [rdx + 8]
nop
test rcx, rcx
je 0x1400280cd
mov eax, dword [rdx + 0x14]
cmp dword [rcx + 0x14], eax
jge 0x1400280e1
mov rax, qword [rdx + 8]
test rax, rax
je 0x1400280e1
cmp byte [rax + 0xc0], bpl
cmovne rcx, rdx
add rdx, 0x30
sub r8, 1
jne 0x1400280c0
test rcx, rcx
je 0x1400280f6
mov rcx, qword [rcx + 8]
jmp 0x1400280f9
mov rcx, r9
mov qword [rdi + 0x1ef8], rcx
mov edx, dword [rcx + 0x410]
test edx, edx
je 0x140028146
mov dword [rdi + 0x1f00], edx
mov dword [rdi + 0x1f04], ebp
mov dword [rcx + 0x410], edx
movups xmm0, xmmword [rcx + 0x418]
mov rax, qword [rdi + 0x1ef8]
movups xmmword [rax + 0x418], xmm0
mov word [rdi + 0x1f4d], 1
mov byte [rdi + 0x1f4f], 1
jmp 0x1400281dc
mov eax, dword [rcx + 0xc]
mov dword [rdi + 0x1f04], ebp
bt eax, 0x12
jb 0x1400281ac
movsxd rax, dword [rdi + 0x1f44]
mov dword [rdi + 0x1f00], ebp
mov dword [rcx + rax*4 + 0x410], ebp
mov word [rdi + 0x1f51], 1
mov qword [rdi + 0x1f54], rbp
mov qword [rdi + 0x1f5c], rbp
mov dword [rdi + 0x1f64], ebp
cmp byte [rdi + 0x1f68], bpl
jne 0x1400281a2
cmp byte [rdi + 0x1f51], bpl
jne 0x1400281a2
xor al, al
mov byte [rdi + 0x1f50], al
jmp 0x1400281dc
mov al, 1
mov byte [rdi + 0x1f50], al
jmp 0x1400281dc
mov dword [rdi + 0x1f00], edx
jmp 0x1400281dc
test rdi, rdi
je 0x1400281ce
mov eax, dword [rdi + 0xc]
bt eax, 0x1a
jb 0x1400281c8
bt eax, 0x18
jb 0x1400281ce
mov dword [rdi + 0x410], ebp
mov qword [rbx + 0x1f00], rbp
mov rdi, qword [0x140214df0]
mov r9d, dword [rbx + 0x1f00]
mov qword [rbx + 0x1f10], rbp
mov qword [rbx + 0x1f08], rbp
test r9d, r9d
je 0x1400282cb
cmp byte [rbx + 0x1f4e], bpl
jne 0x1400282cb
cmp qword [rbx + 0x2028], rbp
jne 0x1400282cb
mov rax, qword [rbx + 0x1ef8]
test rax, rax
je 0x1400282cb
test dword [rax + 0xc], 0x40000
jne 0x1400282cb
movss xmm0, dword [rdi + 0x358]
comiss xmm0, xmm6
seta r10b
test r10b, r10b
je 0x140028256
mov edx, 1
xor ecx, ecx
call fcn.140027190
comiss xmm0, xmm6
ja 0x140028258
xor dl, dl
mov ecx, dword [rbx + 0x1d70]
test ecx, ecx
jne 0x14002826f
test dl, dl
je 0x140028274
mov dword [rbx + 0x1f08], r9d
jmp 0x140028274
cmp ecx, r9d
jne 0x140028289
test r10b, r10b
je 0x140028285
mov eax, dword [rbx + 0x1f00]
mov dword [rbx + 0x1f0c], eax
test ecx, ecx
je 0x140028291
cmp ecx, dword [rbx + 0x1f00]
jne 0x1400282cb
test dl, dl
je 0x1400282a1
mov eax, dword [rbx + 0x1f00]
mov dword [rbx + 0x1f10], eax
test ecx, ecx
je 0x1400282ad
cmp ecx, dword [rbx + 0x1f00]
jne 0x1400282cb
mov edx, 1
lea ecx, [rdx + 1]
call fcn.140027190
comiss xmm0, xmm6
jbe 0x1400282cb
mov eax, dword [rbx + 0x1f00]
mov dword [rbx + 0x1f14], eax
mov rcx, qword [rbx + 0x1ef8]
test rcx, rcx
je 0x1400282e7
test dword [rcx + 0xc], 0x40000
je 0x1400282e7
mov byte [rbx + 0x1f4e], 1
mov eax, dword [rbx + 0x1f28]
mov byte [rbx + 0x1f68], bpl
test eax, eax
je 0x140028310
mov dword [rbx + 0x1f14], eax
mov dword [rbx + 0x1f10], eax
mov dword [rbx + 0x1f0c], eax
mov dword [rbx + 0x1f08], eax
mov dword [rbx + 0x1f28], ebp
cmp dword [rbx + 0x1f70], ebp
jne 0x140028447
mov dword [rbx + 0x1f78], 0xffffffff
mov r9d, 0xffffffff
mov dword [rbx + 0x1f6c], ebp
test rcx, rcx
je 0x14002843e
cmp qword [rbx + 0x2028], rbp
jne 0x14002843e
test dword [rcx + 0xc], 0x40000
jne 0x14002843e
test byte [rdi + 0x1d84], 1
jne 0x14002838b
lea edx, [r9 + 4]
lea ecx, [rdx + 1]
call fcn.140027190
comiss xmm0, xmm6
ja 0x140028382
lea ecx, [rdx + 0xe]
call fcn.140027190
comiss xmm0, xmm6
jbe 0x14002838b
mov dword [rbx + 0x1f78], ebp
mov r9d, ebp
mov eax, dword [rdi + 0x1d84]
shr eax, 1
test al, 1
jne 0x1400283c6
mov edx, 3
lea ecx, [rdx + 2]
call fcn.140027190
comiss xmm0, xmm6
ja 0x1400283b6
lea ecx, [rdx + 0xf]
call fcn.140027190
comiss xmm0, xmm6
jbe 0x1400283c6
mov dword [rbx + 0x1f78], 1
mov r9d, 1
mov eax, dword [rdi + 0x1d84]
shr eax, 2
test al, 1
jne 0x140028402
mov edx, 3
lea ecx, [rdx + 3]
call fcn.140027190
comiss xmm0, xmm6
ja 0x1400283f2
lea ecx, [rdx + 0x10]
call fcn.140027190
comiss xmm0, xmm6
jbe 0x140028402
mov dword [rbx + 0x1f78], 2
mov r9d, 2
mov eax, dword [rdi + 0x1d84]
shr eax, 3
test al, 1
jne 0x14002843e
mov edx, 3
lea ecx, [rdx + 4]
call fcn.140027190
comiss xmm0, xmm6
ja 0x14002842e
lea ecx, [rdx + 0x11]
call fcn.140027190
comiss xmm0, xmm6
jbe 0x14002843e
mov dword [rbx + 0x1f78], 3
mov r9d, 3
mov dword [rbx + 0x1f80], r9d
jmp 0x140028451
mov dword [rbx + 0x1f70], 2
movaps xmm10, xmm6
test sil, sil
je 0x140028463
call fcn.140028d80
movaps xmm10, xmm0
mov ecx, dword [rbx + 0x1f78]
cmp ecx, 0xffffffff
je 0x140028487
mov byte [rbx + 0x1f68], 1
mov eax, dword [rbx + 0x3d4]
mov dword [rbx + 0x1f74], eax
mov dword [rbx + 0x1f7c], ecx
cmp byte [rbx + 0x1f68], bpl
je 0x1400284ae
cmp dword [rbx + 0x1f00], ebp
jne 0x1400284ae
mov word [rbx + 0x1f51], 0x101
mov dword [rbx + 0x1f54], ebp
mov byte [rbx + 0x1f4e], bpl
cmp byte [rdi + 0x1f68], bpl
jne 0x1400284c4
cmp byte [rdi + 0x1f51], bpl
jne 0x1400284c4
xor al, al
jmp 0x1400284c6
mov al, 1
movss xmm11, dword [0x14014ecc8]
movss xmm8, dword [0x14014ed0c]
mov byte [rdi + 0x1f50], al
mov rsi, qword [rbx + 0x1ef8]
movaps xmmword [rsp + 0x80], xmm7
test rsi, rsi
je 0x1400286ae
test dword [rsi + 0xc], 0x40000
jne 0x1400286ae
cmp qword [rbx + 0x2028], rbp
jne 0x1400286ae
movss xmm0, dword [rdi + 0x1bbc]
mulss xmm0, dword [rsi + 0x308]
mov rax, qword [rsi + 0x3e0]
mulss xmm0, dword [rsi + 0x30c]
test rax, rax
je 0x14002853c
mulss xmm0, dword [rax + 0x308]
mulss xmm0, dword [0x14014eedc]
mulss xmm0, dword [rbx + 0x18]
addss xmm0, xmm11
cvttss2si eax, xmm0
movd xmm7, eax
cvtdq2ps xmm7, xmm7
cmp dword [rsi + 0x188], ebp
jne 0x140028605
cmp byte [rsi + 0x195], bpl
je 0x140028605
cmp byte [rbx + 0x1f68], bpl
je 0x140028605
mov eax, dword [rbx + 0x1f78]
test eax, eax
je 0x140028594
cmp eax, 1
jne 0x1400285c3
movaps xmm0, xmm8
jmp 0x140028598
movaps xmm0, xmm9
mulss xmm0, xmm7
mov dword [rsi + 0xa4], ebp
mov dword [rsi + 0xac], ebp
addss xmm0, dword [rsi + 0x8c]
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rsi + 0x9c], xmm0
mov eax, dword [rbx + 0x1f78]
cmp eax, 2
je 0x1400285d7
cmp eax, 3
jne 0x140028605
movaps xmm9, xmm8
mulss xmm9, xmm7
mov dword [rsi + 0xa8], ebp
mov dword [rsi + 0xb0], ebp
addss xmm9, dword [rsi + 0x90]
cvttss2si eax, xmm9
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rsi + 0xa0], xmm0
movss xmm0, dword [0x14014ee8c]
lea rcx, [rsp + 0xb0]
movss xmm3, dword [0x14014ec9c]
xor r8d, r8d
movss dword [rsp + 0x20], xmm0
lea edx, [r8 + 4]
call fcn.140027310
movss xmm0, dword [rsp + 0xb0]
ucomiss xmm0, xmm6
jp 0x14002863f
je 0x140028673
cmp byte [rsi + 0xbc], bpl
je 0x140028673
mulss xmm0, xmm7
mov dword [rsi + 0xa4], ebp
mov dword [rsi + 0xac], ebp
addss xmm0, dword [rsi + 0x8c]
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rsi + 0x9c], xmm0
movss xmm0, dword [rsp + 0xb4]
ucomiss xmm0, xmm6
jp 0x140028683
je 0x1400286ae
mulss xmm0, xmm7
mov dword [rsi + 0xa8], ebp
mov dword [rsi + 0xb0], ebp
addss xmm0, dword [rsi + 0x90]
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rsi + 0xa0], xmm0
mov qword [rbx + 0x1f88], rbp
mov qword [rbx + 0x1f90], rbp
mov dword [rbx + 0x1fa0], 0x7f7fffff
mov dword [rbx + 0x1f9c], 0x7f7fffff
mov dword [rbx + 0x1f98], 0x7f7fffff
mov qword [rbx + 0x1fa4], rbp
mov qword [rbx + 0x1fac], rbp
mov qword [rbx + 0x1fb8], rbp
mov qword [rbx + 0x1fc0], rbp
mov dword [rbx + 0x1fd0], 0x7f7fffff
mov dword [rbx + 0x1fcc], 0x7f7fffff
mov dword [rbx + 0x1fc8], 0x7f7fffff
mov qword [rbx + 0x1fd4], rbp
mov qword [rbx + 0x1fdc], rbp
mov qword [rbx + 0x1fe8], rbp
mov qword [rbx + 0x1ff0], rbp
mov dword [rbx + 0x2000], 0x7f7fffff
mov dword [rbx + 0x1ffc], 0x7f7fffff
mov dword [rbx + 0x1ff8], 0x7f7fffff
mov qword [rbx + 0x2004], rbp
mov qword [rbx + 0x200c], rbp
mov rsi, qword [rsp + 0xb8]
cmp byte [rbx + 0x1f68], bpl
je 0x1400288fe
cmp dword [rbx + 0x1f2c], 4
jne 0x1400288fe
movsxd rdx, dword [rbx + 0x1f44]
test edx, edx
jne 0x1400288fe
mov rax, qword [rbx + 0x1ef8]
movss xmm2, dword [rax + 0x270]
subss xmm2, dword [rax + 0x48]
movss xmm6, dword [rax + 0x278]
movss xmm7, dword [rax + 0x27c]
movss xmm3, dword [rax + 0x274]
subss xmm6, dword [rax + 0x48]
subss xmm7, dword [rax + 0x4c]
subss xmm3, dword [rax + 0x4c]
movss xmm9, dword [rax + 0x418]
subss xmm2, xmm8
addss xmm6, xmm8
addss xmm7, xmm8
subss xmm3, xmm8
comiss xmm9, xmm2
jb 0x14002880e
movss xmm0, dword [rax + 0x41c]
comiss xmm0, xmm3
jb 0x14002880e
comiss xmm6, dword [rax + 0x420]
jb 0x14002880e
comiss xmm7, dword [rax + 0x424]
jae 0x1400288fe
movss xmm4, dword [rdi + 0x1bbc]
mulss xmm4, dword [rax + 0x308]
mov rcx, qword [rax + 0x3e0]
mulss xmm4, dword [rax + 0x30c]
test rcx, rcx
je 0x14002883a
mulss xmm4, dword [rcx + 0x308]
mulss xmm4, xmm11
movaps xmm1, xmm7
mov rcx, rdx
subss xmm1, xmm3
movaps xmm5, xmm6
subss xmm5, xmm2
add rcx, rcx
movss xmm0, dword [rax + rcx*8 + 0x41c]
minss xmm1, xmm4
minss xmm5, xmm4
xorps xmm1, xmmword [0x14014f680]
xorps xmm5, xmmword [0x14014f680]
subss xmm3, xmm1
movaps xmm4, xmm1
subss xmm2, xmm5
addss xmm5, xmm6
addss xmm4, xmm7
comiss xmm3, xmm0
jbe 0x14002888f
movaps xmm1, xmm3
jmp 0x140028896
movaps xmm1, xmm4
minss xmm1, xmm0
comiss xmm2, xmm9
jbe 0x1400288a1
movaps xmm0, xmm2
jmp 0x1400288a9
movaps xmm0, xmm5
minss xmm0, xmm9
movss dword [rax + rcx*8 + 0x418], xmm0
movss dword [rax + rcx*8 + 0x41c], xmm1
movss xmm0, dword [rax + rcx*8 + 0x424]
comiss xmm3, xmm0
ja 0x1400288d0
movaps xmm3, xmm4
minss xmm3, xmm0
movss xmm0, dword [rax + rcx*8 + 0x420]
comiss xmm2, xmm0
ja 0x1400288e5
movaps xmm2, xmm5
minss xmm2, xmm0
movss dword [rax + rcx*8 + 0x420], xmm2
movss dword [rax + rcx*8 + 0x424], xmm3
mov qword [rbx + 0x1f00], rbp
mov rax, qword [rbx + 0x1ef8]
movaps xmm11, xmmword [rsp + 0x40]
movaps xmm9, xmmword [rsp + 0x60]
movaps xmm7, xmmword [rsp + 0x80]
movaps xmm6, xmmword [rsp + 0x90]
mov rdi, qword [rsp + 0xc0]
test rax, rax
je 0x140028975
movsxd rcx, dword [rbx + 0x1f44]
add rcx, rcx
movss xmm0, dword [rax + rcx*8 + 0x418]
comiss xmm0, dword [rax + rcx*8 + 0x420]
ja 0x140028975
movss xmm0, dword [rax + rcx*8 + 0x41c]
comiss xmm0, dword [rax + rcx*8 + 0x424]
ja 0x140028975
movups xmm0, xmmword [rax + rcx*8 + 0x418]
lea rcx, [rsp + 0x30]
movups xmmword [rsp + 0x30], xmm0
movups xmm5, xmmword [rcx]
jmp 0x14002898a
lea rcx, [rsp + 0x30]
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
movups xmm5, xmmword [rcx]
test rax, rax
je 0x1400289cd
movaps xmm4, xmm5
movaps xmm3, xmm5
shufps xmm4, xmm5, 0xaa
movaps xmm0, xmm5
addss xmm4, dword [rax + 0x48]
addss xmm0, dword [rax + 0x48]
shufps xmm3, xmm5, 0xff
addss xmm3, dword [rax + 0x4c]
shufps xmm5, xmm5, 0x55
addss xmm5, dword [rax + 0x4c]
movss dword [rsp + 0x30], xmm0
movss dword [rsp + 0x38], xmm4
movss dword [rsp + 0x3c], xmm3
movss dword [rsp + 0x34], xmm5
jmp 0x1400289d2
movups xmmword [rsp + 0x30], xmm0
movaps xmm1, xmm10
lea rax, [rsp + 0x30]
movups xmm0, xmmword [rax]
movups xmmword [rbx + 0x1f30], xmm0
addss xmm10, dword [rbx + 0x1f3c]
addss xmm1, dword [rbx + 0x1f34]
movss dword [rbx + 0x1f3c], xmm10
movaps xmm10, xmmword [rsp + 0x50]
movss dword [rbx + 0x1f34], xmm1
movss xmm0, dword [rbx + 0x1f30]
addss xmm0, xmm8
mov dword [rbx + 0x1f40], ebp
movaps xmm8, xmmword [rsp + 0x70]
minss xmm0, dword [rbx + 0x1f38]
movss dword [rbx + 0x1f30], xmm0
movss dword [rbx + 0x1f38], xmm0
mov rbx, qword [rsp + 0xc8]
add rsp, 0xa0
pop rbp
ret