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

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x1c8]
sub rsp, 0x290
movaps xmmword [rax - 0x48], xmm6
movaps xmmword [rax - 0x58], xmm7
movaps xmmword [rax - 0x68], xmm8
movaps xmmword [rax - 0x78], xmm9
movaps xmmword [rax - 0x88], xmm10
movaps xmmword [rax - 0x98], xmm11
movaps xmmword [rax - 0xa8], xmm12
movaps xmmword [rax - 0xb8], xmm13
movaps xmmword [rax - 0xc8], xmm14
movaps xmmword [rax - 0xd8], xmm15
mov rax, qword [0x140424b58]
xor rax, rsp
mov qword [rbp + 0xe0], rax
mov r13d, r8d
mov dword [rsp + 0x30], r13d
mov rbx, rdx
mov rsi, rcx
xor r15d, r15d
mov dword [rsp + 0x50], r15d
cmp qword [rdx + 0x10], r15
je 0x1401ac0b0
cmp dword [rdx + 4], r15d
jbe 0x1401ac0b0
cmp qword [rdx + 0xd0], r15
je 0x1401ac0b0
cmp dword [rdx + 8], r15d
jbe 0x1401ac0b0
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x38], xmm0
mov qword [rsp + 0x48], r15
mov eax, dword [rdx + 4]
test rax, rax
je 0x1401aac1c
movabs rcx, 0xf0f0f0f0f0f0f0
cmp rax, rcx
ja 0x1401ac11a
mov edx, eax
lea rcx, [rsp + 0x38]
call fcn.1401ac1e0
mov eax, dword [rbx + 4]
mov edi, eax
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x70], xmm0
mov qword [rbp - 0x80], r15
test eax, eax
je 0x1401aac66
mov edx, edi
lea rcx, [rsp + 0x70]
call fcn.140028560
mov r12, rax
mov qword [rsp + 0x70], rax
lea r14, [rax + rdi*4]
mov qword [rbp - 0x80], r14
shl rdi, 2
mov r8, rdi
mov edx, 0xffffffff
mov rcx, rax
call sub.VCRUNTIME140.dll_memset
mov qword [rsp + 0x78], r14
jmp 0x1401aac6b
mov r12, qword [rsp + 0x70]
lea rcx, [rbp - 0x78]
call fcn.140248650
nop
mov rdx, qword [rsi + 8]
test rdx, rdx
je 0x1401aacf2
mov qword [rsp + 0x50], r15
mov rdx, qword [rdx]
mov rax, qword [rdx + 8]
mov rcx, rdx
cmp byte [rax + 0x19], 0
jne 0x1401aacae
cmp dword [rax + 0x20], 0x43cdbce0
jae 0x1401aaca2
mov rax, qword [rax + 0x10]
jmp 0x1401aaca8
mov rcx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x1401aac93
cmp byte [rcx + 0x19], 0
jne 0x1401aacc8
cmp dword [rcx + 0x20], 0x43cdbce0
ja 0x1401aacc8
cmp rcx, rdx
je 0x1401aacc8
add rcx, 0x28
jmp 0x1401aaccd
lea rcx, [rsp + 0x50]
mov rax, qword [rcx]
test rax, rax
je 0x1401aacf2
mov rcx, qword [rax + 8]
test rcx, rcx
je 0x1401aacf2
lea r14, [r13*2]
add r14, r13
shl r14, 4
add r14, qword [rcx]
jne 0x1401aad12
mov byte [rsp + 0x20], 1
mov r9d, 0xc
mov r8d, dword [rbx + 4]
mov rdx, qword [rbx + 0x10]
lea rcx, [rbp - 0x78]
call fcn.140266dc0
lea r14, [rbp - 0x78]
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x58], xmm0
mov qword [rsp + 0x68], r15
mov edx, 0xa
lea rcx, [rsp + 0x58]
call fcn.1400283e0
xor r10d, r10d
mov eax, r10d
lea rcx, [rbx + 0x30]
nop dword [rax]
cmp qword [rcx], r10
je 0x1401aad50
inc eax
add rcx, 8
cmp eax, 8
jb 0x1401aad40
test eax, eax
jne 0x1401aad7a
mov eax, r10d
lea rcx, [rbx + 0x70]
nop dword [rax + rax]
cmp qword [rcx], r10
je 0x1401aad70
inc eax
add rcx, 8
cmp eax, 8
jb 0x1401aad60
cmp eax, 1
ja 0x1401aad7a
xor r15b, r15b
jmp 0x1401aad7d
mov r15b, 1
mov esi, r10d
cmp dword [rbx + 4], r10d
jbe 0x1401ab59f
movss xmm6, dword [0x14037e210]
movabs r13, 0x7878787878787879
jmp 0x1401aada3
xor r10d, r10d
xorps xmm0, xmm0
movaps xmmword [rbp - 0x30], xmm0
xorps xmm1, xmm1
movaps xmmword [rbp - 0x20], xmm1
movaps xmmword [rbp - 0x10], xmm0
mov ecx, 8
lea rax, [rbp + 8]
nop
mov qword [rax - 8], 0
mov dword [rax], r10d
lea rax, [rax + 0xc]
sub rcx, 1
jne 0x1401aadc0
mov ecx, 8
lea rax, [rbp + 0x68]
nop
mov qword [rax - 8], 0
mov qword [rax], 0
lea rax, [rax + 0x10]
sub rcx, 1
jne 0x1401aade0
mov edi, esi
lea r8, [rdi + rdi*2]
mov rax, qword [rbx + 0x10]
movsd xmm0, qword [rax + r8*4]
movsd qword [rbp - 0x30], xmm0
mov eax, dword [rax + r8*4 + 8]
mov dword [rbp - 0x28], eax
mov rax, qword [rbx + 0x18]
mov ecx, dword [rbx + 4]
test rax, rax
je 0x1401aae39
test ecx, ecx
je 0x1401aae39
movsd xmm0, qword [rax + r8*4]
movsd qword [rbp - 0x24], xmm0
mov eax, dword [rax + r8*4 + 8]
mov dword [rbp - 0x1c], eax
mov rax, qword [rbx + 0x20]
test rax, rax
je 0x1401aae77
cmp qword [rbx + 0x28], 0
je 0x1401aae77
test ecx, ecx
je 0x1401aae77
movsd xmm0, qword [rax + r8*4]
movsd qword [rbp - 0x18], xmm0
mov eax, dword [rax + r8*4 + 8]
mov dword [rbp - 0x10], eax
mov rax, qword [rbx + 0x28]
movsd xmm0, qword [rax + r8*4]
movsd qword [rbp - 0xc], xmm0
mov eax, dword [rax + r8*4 + 8]
mov dword [rbp - 4], eax
mov edx, r10d
nop word [rax + rax]
cmp edx, 8
jae 0x1401aaeb4
mov eax, edx
mov r9, qword [rbx + rax*8 + 0x70]
test r9, r9
je 0x1401aaeb4
cmp dword [rbx + 4], 0
jbe 0x1401aaeb4
lea rcx, [rax + rax*2]
movsd xmm0, qword [r9 + r8*4]
movsd qword [rbp + rcx*4], xmm0
mov eax, dword [r9 + r8*4 + 8]
mov dword [rbp + rcx*4 + 8], eax
inc edx
jmp 0x1401aae80
mov edx, r10d
cmp edx, 8
jae 0x1401aaee5
mov ecx, edx
mov r8, qword [rbx + rcx*8 + 0x30]
test r8, r8
je 0x1401aaee5
cmp dword [rbx + 4], 0
jbe 0x1401aaee5
mov rax, rdi
add rax, rax
add rcx, rcx
movups xmm0, xmmword [r8 + rax*8]
movups xmmword [rbp + rcx*8 + 0x60], xmm0
inc edx
jmp 0x1401aaeb7
lea r8, [rsp + 0x58]
lea rdx, [rbp - 0x30]
mov rcx, r14
call fcn.140266e20
xor r9d, r9d
mov r8, qword [rsp + 0x60]
mov r10, qword [rsp + 0x58]
sub r8, r10
sar r8, 2
mov r11, qword [rsp + 0x38]
test r8, r8
je 0x1401ab52c
xor eax, eax
movss xmm4, dword [rbp + 0x5c]
movss xmm5, dword [rbp + 0x58]
movss xmm7, dword [rbp + 0x54]
movss xmm8, dword [rbp + 0x50]
movss xmm9, dword [rbp + 0x4c]
movss xmm10, dword [rbp + 0x48]
movss xmm11, dword [rbp + 0x44]
movss xmm12, dword [rbp + 0x40]
movss xmm13, dword [rbp + 0x3c]
movss xmm14, dword [rbp + 0x38]
movss xmm15, dword [rbp + 0x34]
nop dword [rax]
mov eax, dword [r10 + rax*4]
mov edx, dword [r12 + rax*4]
test edx, edx
js 0x1401ab51d
imul rcx, rdx, 0x110
add rcx, r11
movss xmm2, dword [rcx + 0x14]
subss xmm2, dword [rbp - 0x1c]
movss xmm0, dword [rcx + 0x10]
subss xmm0, dword [rbp - 0x20]
movss xmm1, dword [rcx + 0xc]
subss xmm1, dword [rbp - 0x24]
mulss xmm1, xmm1
mulss xmm0, xmm0
addss xmm1, xmm0
mulss xmm2, xmm2
addss xmm1, xmm2
comiss xmm1, xmm6
ja 0x1401ab51d
movss xmm2, dword [rcx + 0x38]
subss xmm2, dword [rbp + 8]
movss xmm0, dword [rcx + 0x34]
subss xmm0, dword [rbp + 4]
movss xmm1, dword [rcx + 0x30]
subss xmm1, dword [rbp]
mulss xmm1, xmm1
mulss xmm0, xmm0
addss xmm1, xmm0
mulss xmm2, xmm2
addss xmm1, xmm2
comiss xmm1, xmm6
ja 0x1401ab51d
movss xmm2, dword [rcx + 0x20]
subss xmm2, dword [rbp - 0x10]
movss xmm1, dword [rcx + 0x1c]
subss xmm1, dword [rbp - 0x14]
movss xmm0, dword [rcx + 0x18]
subss xmm0, dword [rbp - 0x18]
mulss xmm1, xmm1
mulss xmm0, xmm0
addss xmm1, xmm0
mulss xmm2, xmm2
addss xmm1, xmm2
comiss xmm1, xmm6
ja 0x1401ab51d
movss xmm2, dword [rcx + 0x2c]
subss xmm2, dword [rbp - 4]
movss xmm1, dword [rcx + 0x28]
subss xmm1, dword [rbp - 8]
movss xmm0, dword [rcx + 0x24]
subss xmm0, dword [rbp - 0xc]
mulss xmm1, xmm1
mulss xmm0, xmm0
addss xmm1, xmm0
mulss xmm2, xmm2
addss xmm1, xmm2
comiss xmm1, xmm6
ja 0x1401ab51d
test r15b, r15b
je 0x1401ab56f
movss xmm2, dword [rcx + 0x44]
subss xmm2, dword [rbp + 0x14]
movss xmm1, dword [rcx + 0x40]
subss xmm1, dword [rbp + 0x10]
movss xmm0, dword [rcx + 0x3c]
subss xmm0, dword [rbp + 0xc]
mulss xmm1, xmm1
mulss xmm0, xmm0
addss xmm1, xmm0
mulss xmm2, xmm2
addss xmm1, xmm2
comiss xmm1, xmm6
ja 0x1401ab51d
movss xmm3, dword [rcx + 0x9c]
subss xmm3, dword [rbp + 0x6c]
movss xmm1, dword [rcx + 0x98]
subss xmm1, dword [rbp + 0x68]
movss xmm2, dword [rcx + 0x94]
subss xmm2, dword [rbp + 0x64]
movss xmm0, dword [rcx + 0x90]
subss xmm0, dword [rbp + 0x60]
mulss xmm2, xmm2
mulss xmm0, xmm0
addss xmm2, xmm0
mulss xmm1, xmm1
addss xmm2, xmm1
mulss xmm3, xmm3
addss xmm2, xmm3
comiss xmm2, xmm6
ja 0x1401ab51d
movss xmm2, dword [rcx + 0x50]
subss xmm2, dword [rbp + 0x20]
movss xmm1, dword [rcx + 0x4c]
subss xmm1, dword [rbp + 0x1c]
movss xmm0, dword [rcx + 0x48]
subss xmm0, dword [rbp + 0x18]
mulss xmm1, xmm1
mulss xmm0, xmm0
addss xmm1, xmm0
mulss xmm2, xmm2
addss xmm1, xmm2
comiss xmm1, xmm6
ja 0x1401ab51d
movss xmm3, dword [rcx + 0xac]
subss xmm3, dword [rbp + 0x7c]
movss xmm1, dword [rcx + 0xa8]
subss xmm1, dword [rbp + 0x78]
movss xmm2, dword [rcx + 0xa4]
subss xmm2, dword [rbp + 0x74]
movss xmm0, dword [rcx + 0xa0]
subss xmm0, dword [rbp + 0x70]
mulss xmm2, xmm2
mulss xmm0, xmm0
addss xmm2, xmm0
mulss xmm1, xmm1
addss xmm2, xmm1
mulss xmm3, xmm3
addss xmm2, xmm3
comiss xmm2, xmm6
ja 0x1401ab51d
movss xmm2, dword [rcx + 0x5c]
subss xmm2, dword [rbp + 0x2c]
movss xmm1, dword [rcx + 0x58]
subss xmm1, dword [rbp + 0x28]
movss xmm0, dword [rcx + 0x54]
subss xmm0, dword [rbp + 0x24]
mulss xmm1, xmm1
mulss xmm0, xmm0
addss xmm1, xmm0
mulss xmm2, xmm2
addss xmm1, xmm2
comiss xmm1, xmm6
ja 0x1401ab51d
movss xmm3, dword [rcx + 0xbc]
subss xmm3, dword [rbp + 0x8c]
movss xmm1, dword [rcx + 0xb8]
subss xmm1, dword [rbp + 0x88]
movss xmm2, dword [rcx + 0xb4]
subss xmm2, dword [rbp + 0x84]
movss xmm0, dword [rcx + 0xb0]
subss xmm0, dword [rbp + 0x80]
mulss xmm2, xmm2
mulss xmm0, xmm0
addss xmm2, xmm0
mulss xmm1, xmm1
addss xmm2, xmm1
mulss xmm3, xmm3
addss xmm2, xmm3
comiss xmm2, xmm6
ja 0x1401ab51d
movss xmm2, dword [rcx + 0x68]
subss xmm2, xmm14
movss xmm1, dword [rcx + 0x64]
subss xmm1, xmm15
movss xmm0, dword [rcx + 0x60]
subss xmm0, dword [rbp + 0x30]
mulss xmm1, xmm1
mulss xmm0, xmm0
addss xmm1, xmm0
mulss xmm2, xmm2
addss xmm1, xmm2
comiss xmm1, xmm6
ja 0x1401ab51d
movss xmm3, dword [rcx + 0xcc]
subss xmm3, dword [rbp + 0x9c]
movss xmm1, dword [rcx + 0xc8]
subss xmm1, dword [rbp + 0x98]
movss xmm2, dword [rcx + 0xc4]
subss xmm2, dword [rbp + 0x94]
movss xmm0, dword [rcx + 0xc0]
subss xmm0, dword [rbp + 0x90]
mulss xmm2, xmm2
mulss xmm0, xmm0
addss xmm2, xmm0
mulss xmm1, xmm1
addss xmm2, xmm1
mulss xmm3, xmm3
addss xmm2, xmm3
comiss xmm2, xmm6
ja 0x1401ab51d
movss xmm2, dword [rcx + 0x74]
subss xmm2, xmm11
movss xmm1, dword [rcx + 0x70]
subss xmm1, xmm12
movss xmm0, dword [rcx + 0x6c]
subss xmm0, xmm13
mulss xmm1, xmm1
mulss xmm0, xmm0
addss xmm1, xmm0
mulss xmm2, xmm2
addss xmm1, xmm2
comiss xmm1, xmm6
ja 0x1401ab51d
movss xmm3, dword [rcx + 0xdc]
subss xmm3, dword [rbp + 0xac]
movss xmm2, dword [rcx + 0xd8]
subss xmm2, dword [rbp + 0xa8]
movss xmm0, dword [rcx + 0xd4]
subss xmm0, dword [rbp + 0xa4]
movss xmm1, dword [rcx + 0xd0]
subss xmm1, dword [rbp + 0xa0]
mulss xmm1, xmm1
mulss xmm0, xmm0
addss xmm1, xmm0
mulss xmm2, xmm2
addss xmm1, xmm2
mulss xmm3, xmm3
addss xmm1, xmm3
comiss xmm1, xmm6
ja 0x1401ab51d
movss xmm2, dword [rcx + 0x80]
subss xmm2, xmm8
movss xmm0, dword [rcx + 0x7c]
subss xmm0, xmm9
movss xmm1, dword [rcx + 0x78]
subss xmm1, xmm10
mulss xmm1, xmm1
mulss xmm0, xmm0
addss xmm1, xmm0
mulss xmm2, xmm2
addss xmm1, xmm2
comiss xmm1, xmm6
ja 0x1401ab51d
movss xmm3, dword [rcx + 0xec]
subss xmm3, dword [rbp + 0xbc]
movss xmm2, dword [rcx + 0xe8]
subss xmm2, dword [rbp + 0xb8]
movss xmm0, dword [rcx + 0xe4]
subss xmm0, dword [rbp + 0xb4]
movss xmm1, dword [rcx + 0xe0]
subss xmm1, dword [rbp + 0xb0]
mulss xmm1, xmm1
mulss xmm0, xmm0
addss xmm1, xmm0
mulss xmm2, xmm2
addss xmm1, xmm2
mulss xmm3, xmm3
addss xmm1, xmm3
comiss xmm1, xmm6
ja 0x1401ab51d
movss xmm2, dword [rcx + 0x8c]
subss xmm2, xmm4
movss xmm1, dword [rcx + 0x88]
subss xmm1, xmm5
movss xmm0, dword [rcx + 0x84]
subss xmm0, xmm7
mulss xmm1, xmm1
mulss xmm0, xmm0
addss xmm1, xmm0
mulss xmm2, xmm2
addss xmm1, xmm2
comiss xmm1, xmm6
ja 0x1401ab51d
movss xmm3, dword [rcx + 0xfc]
subss xmm3, dword [rbp + 0xcc]
movss xmm1, dword [rcx + 0xf8]
subss xmm1, dword [rbp + 0xc8]
movss xmm2, dword [rcx + 0xf4]
subss xmm2, dword [rbp + 0xc4]
movss xmm0, dword [rcx + 0xf0]
subss xmm0, dword [rbp + 0xc0]
mulss xmm2, xmm2
mulss xmm0, xmm0
addss xmm2, xmm0
mulss xmm1, xmm1
addss xmm2, xmm1
mulss xmm3, xmm3
addss xmm2, xmm3
comiss xmm2, xmm6
ja 0x1401ab51d
movss xmm3, dword [rcx + 0x10c]
subss xmm3, dword [rbp + 0xdc]
movss xmm1, dword [rcx + 0x108]
subss xmm1, dword [rbp + 0xd8]
movss xmm2, dword [rcx + 0x104]
subss xmm2, dword [rbp + 0xd4]
movss xmm0, dword [rcx + 0x100]
subss xmm0, dword [rbp + 0xd0]
mulss xmm2, xmm2
mulss xmm0, xmm0
addss xmm2, xmm0
mulss xmm1, xmm1
addss xmm2, xmm1
mulss xmm3, xmm3
addss xmm2, xmm3
comiss xmm2, xmm6
jbe 0x1401ab56f
inc r9d
mov eax, r9d
cmp rax, r8
jb 0x1401aaf60
mov rcx, qword [rsp + 0x40]
sub rcx, r11
mov rax, r13
imul rcx
sar rdx, 7
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov dword [r12 + rdi*4], edx
mov rax, qword [rsp + 0x40]
cmp rax, qword [rsp + 0x48]
je 0x1401ab57e
lea rdx, [rbp - 0x30]
mov rcx, rax
call fcn.1401aa840
add qword [rsp + 0x40], 0x110
jmp 0x1401ab58f
cmp edx, 0xffffffff
je 0x1401ab52c
bts edx, 0x1f
mov dword [r12 + rdi*4], edx
jmp 0x1401ab58f
lea r8, [rbp - 0x30]
mov rdx, rax
lea rcx, [rsp + 0x38]
call fcn.1401aa680
inc esi
cmp esi, dword [rbx + 4]
jb 0x1401aada0
mov r13d, dword [rsp + 0x30]
call fcn.1400f2f10
test al, al
jne 0x1401ab896
call fcn.1400f2ee0
cmp dword [rax + 8], 1
jne 0x1401ab896
call fcn.1400f2ee0
mov rdi, rax
lea rax, [rbp - 0x30]
mov qword [rsp + 0x30], rax
lea rax, [0x140356568]
mov qword [rbp - 0x30], rax
lea rcx, [rbp + 0x58]
call qword [sym.imp.MSVCP140.dll_protected:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::constructor_void____ptr64]
nop
mov dword [rsp + 0x50], 1
xor r9d, r9d
xor r8d, r8d
lea rdx, [rbp - 0x28]
lea rcx, [rbp - 0x30]
call qword [sym.imp.MSVCP140.dll_public:_void___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::constructor_class_std::basic_streambuf_char__struct_std::char_traits_char______ptr64__bool____ptr64]
nop
mov rax, qword [rbp - 0x30]
movsxd rcx, dword [rax + 4]
lea rsi, vtable.std::basic_ostringstream_char__struct_std::char_traits_char___class_std::allocator_char__.0
mov qword [rbp + rcx - 0x30], rsi
mov rax, qword [rbp - 0x30]
movsxd rcx, dword [rax + 4]
lea r8d, [rcx - 0x88]
mov dword [rbp + rcx - 0x34], r8d
lea rcx, [rbp - 0x28]
call qword [sym.imp.MSVCP140.dll_protected:_void___cdecl_std::basic_streambuf_char__struct_std::char_traits_char__::constructor_void____ptr64]
lea rax, vtable.std::basic_stringbuf_char__struct_std::char_traits_char___class_std::allocator_char__.0
mov qword [rbp - 0x28], rax
mov qword [rbp + 0x40], 0
mov dword [rbp + 0x48], 4
lea rdx, [0x14037e168]
lea rcx, [rbp - 0x30]
call fcn.140073ad0
mov edx, r13d
lea rcx, [rbp - 0x30]
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___unsigned_int____ptr64]
lea rdx, [0x140364b8c]
lea rcx, [rbp - 0x30]
call fcn.140073ad0
cmp qword [rbx + 0xf0], 0
lea rdx, [rbx + 0xf8]
jne 0x1401ab690
lea rdx, str.unnamed
lea rcx, [rbp - 0x30]
call fcn.140073ad0
lea rdx, str.___Verts_in:
lea rcx, [rbp - 0x30]
call fcn.140073ad0
mov edx, dword [rbx + 4]
lea rcx, [rbp - 0x30]
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___unsigned_int____ptr64]
lea rdx, str._out:
lea rcx, [rbp - 0x30]
call fcn.140073ad0
mov rcx, qword [rsp + 0x40]
sub rcx, qword [rsp + 0x38]
movabs r13, 0x7878787878787879
mov rax, r13
imul rcx
sar rdx, 7
mov rax, rdx
shr rax, 0x3f
add rdx, rax
lea rcx, [rbp - 0x30]
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___unsigned_long_long_unsigned___int64_____ptr64]
lea rdx, [0x14037e188]
lea rcx, [rbp - 0x30]
call fcn.140073ad0
mov rcx, qword [rsp + 0x40]
sub rcx, qword [rsp + 0x38]
mov rax, r13
imul rcx
sar rdx, 7
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov r8d, dword [rbx + 4]
mov ecx, r8d
sub rcx, rdx
xorps xmm1, xmm1
js 0x1401ab73c
cvtsi2ss xmm1, rcx
jmp 0x1401ab751
mov rax, rcx
shr rax, 1
and ecx, 1
or rax, rcx
cvtsi2ss xmm1, rax
addss xmm1, xmm1
xorps xmm0, xmm0
cvtsi2ss xmm0, r8
divss xmm1, xmm0
mulss xmm1, dword [0x140354ba8]
lea rcx, [rbp - 0x30]
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___float____ptr64]
lea rdx, [0x14037e190]
lea rcx, [rbp - 0x30]
call fcn.140073ad0
nop
xor r13d, r13d
mov qword [rbp - 0x40], r13
mov qword [rbp - 0x38], 0xf
mov byte [rbp - 0x50], r13b
mov dword [rsp + 0x50], 9
mov ecx, dword [rbp + 0x48]
test cl, 2
jne 0x1401ab7c4
mov rax, qword [rbp + 0x18]
mov r8, qword [rax]
test r8, r8
je 0x1401ab7c4
mov rax, qword [rbp - 8]
mov rdx, qword [rax]
cmp r8, qword [rbp + 0x40]
cmovb r8, qword [rbp + 0x40]
sub r8, rdx
jmp 0x1401ab7e9
test cl, 4
jne 0x1401ab7f3
mov rax, qword [rbp + 0x10]
mov rcx, qword [rax]
test rcx, rcx
je 0x1401ab7f3
mov rax, qword [rbp - 0x10]
mov rdx, qword [rax]
mov rax, qword [rbp + 0x28]
movsxd r8, dword [rax]
sub r8, rdx
add r8, rcx
lea rcx, [rbp - 0x50]
call fcn.140028740
nop
lea rdx, [rbp - 0x50]
cmp qword [rbp - 0x38], 0x10
cmovae rdx, qword [rbp - 0x50]
mov rcx, rdi
call fcn.1400f2ea0
nop
mov rdx, qword [rbp - 0x38]
cmp rdx, 0x10
jb 0x1401ab848
inc rdx
mov rcx, qword [rbp - 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1401ab843
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1401ab843
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1401a68e0
mov qword [rbp - 0x40], r13
mov qword [rbp - 0x38], 0xf
mov byte [rbp - 0x50], 0
mov rax, qword [rbp - 0x30]
movsxd rcx, dword [rax + 4]
mov qword [rbp + rcx - 0x30], rsi
mov rax, qword [rbp - 0x30]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x88]
mov dword [rbp + rcx - 0x34], edx
lea rcx, [rbp - 0x28]
call fcn.14004cb90
lea rcx, [rbp - 0x20]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::destructor_void____ptr64]
lea rcx, [rbp + 0x58]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::destructor_void____ptr64]
jmp 0x1401ab899
xor r13d, r13d
mov rcx, qword [rsp + 0x40]
sub rcx, qword [rsp + 0x38]
movabs rax, 0x7878787878787879
imul rcx
sar rdx, 7
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov dword [rbx + 4], edx
mov rcx, qword [rbx + 0x10]
call fcn.1401a68e0
mov edi, dword [rbx + 4]
mov qword [rsp + 0x30], rdi
mov eax, 0xc
mul rdi
mov r15, 0xffffffffffffffff
cmovo rax, r15
mov rcx, rax
call fcn.1401a68d0
mov qword [rsp + 0x30], rax
test rdi, rdi
je 0x1401ab915
lea rcx, [rax + 8]
nop dword [rax + rax]
mov qword [rcx - 8], 0
mov dword [rcx], r13d
lea rcx, [rcx + 0xc]
sub rdi, 1
jne 0x1401ab900
mov qword [rbx + 0x10], rax
mov r9d, r13d
mov ecx, dword [rbx + 4]
test ecx, ecx
je 0x1401ab966
nop dword [rax]
nop word [rax + rax]
mov eax, r9d
imul rcx, rax, 0x110
add rcx, qword [rsp + 0x38]
mov r8d, dword [rcx + 8]
lea rdx, [rax + rax*2]
mov rax, qword [rbx + 0x10]
movsd xmm0, qword [rcx]
movsd qword [rax + rdx*4], xmm0
mov dword [rax + rdx*4 + 8], r8d
inc r9d
mov eax, dword [rbx + 4]
cmp r9d, eax
jb 0x1401ab930
mov ecx, eax
mov rax, qword [rbx + 0x18]
test rax, rax
je 0x1401aba17
mov rcx, rax
call fcn.1401a68e0
mov edi, dword [rbx + 4]
mov qword [rsp + 0x30], rdi
mov eax, 0xc
mul rdi
cmovo rax, r15
mov rcx, rax
call fcn.1401a68d0
mov qword [rsp + 0x30], rax
test rdi, rdi
je 0x1401ab9c5
lea rcx, [rax + 8]
nop word [rax + rax]
mov qword [rcx - 8], 0
mov dword [rcx], r13d
lea rcx, [rcx + 0xc]
sub rdi, 1
jne 0x1401ab9b0
mov qword [rbx + 0x18], rax
mov r9d, r13d
mov eax, dword [rbx + 4]
mov ecx, eax
test eax, eax
je 0x1401aba17
nop word [rax + rax]
mov eax, r9d
imul rcx, rax, 0x110
add rcx, qword [rsp + 0x38]
mov r8d, dword [rcx + 0x14]
lea rdx, [rax + rax*2]
mov rax, qword [rbx + 0x18]
movsd xmm0, qword [rcx + 0xc]
movsd qword [rax + rdx*4], xmm0
mov dword [rax + rdx*4 + 8], r8d
inc r9d
mov eax, dword [rbx + 4]
cmp r9d, eax
jb 0x1401ab9e0
mov ecx, eax
mov rax, qword [rbx + 0x20]
test rax, rax
je 0x1401abac7
mov rcx, rax
call fcn.1401a68e0
mov edi, dword [rbx + 4]
mov qword [rsp + 0x30], rdi
mov eax, 0xc
mul rdi
cmovo rax, r15
mov rcx, rax
call fcn.1401a68d0
mov qword [rsp + 0x30], rax
test rdi, rdi
je 0x1401aba75
lea rcx, [rax + 8]
nop word [rax + rax]
mov qword [rcx - 8], 0
mov dword [rcx], r13d
lea rcx, [rcx + 0xc]
sub rdi, 1
jne 0x1401aba60
mov qword [rbx + 0x20], rax
mov r9d, r13d
mov eax, dword [rbx + 4]
mov ecx, eax
test eax, eax
je 0x1401abac7
nop word [rax + rax]
mov eax, r9d
imul rcx, rax, 0x110
add rcx, qword [rsp + 0x38]
mov r8d, dword [rcx + 0x20]
lea rdx, [rax + rax*2]
mov rax, qword [rbx + 0x20]
movsd xmm0, qword [rcx + 0x18]
movsd qword [rax + rdx*4], xmm0
mov dword [rax + rdx*4 + 8], r8d
inc r9d
mov eax, dword [rbx + 4]
cmp r9d, eax
jb 0x1401aba90
mov ecx, eax
mov rax, qword [rbx + 0x28]
test rax, rax
je 0x1401abb77
mov rcx, rax
call fcn.1401a68e0
mov edi, dword [rbx + 4]
mov qword [rsp + 0x30], rdi
mov eax, 0xc
mul rdi
cmovo rax, r15
mov rcx, rax
call fcn.1401a68d0
mov qword [rsp + 0x30], rax
test rdi, rdi
je 0x1401abb25
lea rcx, [rax + 8]
nop word [rax + rax]
mov qword [rcx - 8], 0
mov dword [rcx], r13d
lea rcx, [rcx + 0xc]
sub rdi, 1
jne 0x1401abb10
mov qword [rbx + 0x28], rax
mov r9d, r13d
mov eax, dword [rbx + 4]
mov ecx, eax
test eax, eax
je 0x1401abb77
nop word [rax + rax]
mov eax, r9d
imul rcx, rax, 0x110
add rcx, qword [rsp + 0x38]
mov r8d, dword [rcx + 0x2c]
lea rdx, [rax + rax*2]
mov rax, qword [rbx + 0x28]
movsd xmm0, qword [rcx + 0x24]
movsd qword [rax + rdx*4], xmm0
mov dword [rax + rdx*4 + 8], r8d
inc r9d
mov eax, dword [rbx + 4]
cmp r9d, eax
jb 0x1401abb40
mov ecx, eax
mov r14d, r13d
nop word [rax + rax]
cmp r14d, 8
jae 0x1401abc4b
mov esi, r14d
mov rax, qword [rbx + rsi*8 + 0x30]
test rax, rax
je 0x1401abc4b
test ecx, ecx
je 0x1401abc4b
mov rcx, rax
call fcn.1401a68e0
mov edi, dword [rbx + 4]
mov qword [rsp + 0x30], rdi
mov eax, 0x10
mul rdi
cmovo rax, r15
mov rcx, rax
call fcn.1401a68d0
mov qword [rsp + 0x30], rax
test rdi, rdi
je 0x1401abbf9
lea rcx, [rax + 8]
nop word [rax + rax]
mov qword [rcx - 8], 0
mov qword [rcx], 0
lea rcx, [rcx + 0x10]
sub rdi, 1
jne 0x1401abbe0
mov qword [rbx + rsi*8 + 0x30], rax
mov r8d, r13d
mov ecx, dword [rbx + 4]
test ecx, ecx
je 0x1401abc43
nop dword [rax + rax]
mov edx, r8d
imul rcx, rdx, 0x11
add rcx, 9
add rcx, rsi
add rcx, rcx
mov rax, qword [rsp + 0x38]
movups xmm0, xmmword [rax + rcx*8]
add rdx, rdx
mov rax, qword [rbx + rsi*8 + 0x30]
movups xmmword [rax + rdx*8], xmm0
inc r8d
mov eax, dword [rbx + 4]
cmp r8d, eax
jb 0x1401abc10
mov ecx, eax
inc r14d
jmp 0x1401abb80
mov r14d, r13d
nop
cmp r14d, 8
jae 0x1401abd25
mov esi, r14d
mov rax, qword [rbx + rsi*8 + 0x70]
test rax, rax
je 0x1401abd25
test ecx, ecx
je 0x1401abd25
mov rcx, rax
call fcn.1401a68e0
mov edi, dword [rbx + 4]
mov qword [rsp + 0x30], rdi
mov eax, 0xc
mul rdi
cmovo rax, r15
mov rcx, rax
call fcn.1401a68d0
mov qword [rsp + 0x30], rax
test rdi, rdi
je 0x1401abcc5
lea rcx, [rax + 8]
nop word [rax + rax]
mov qword [rcx - 8], 0
mov dword [rcx], r13d
lea rcx, [rcx + 0xc]
sub rdi, 1
jne 0x1401abcb0
mov qword [rbx + rsi*8 + 0x70], rax
mov r10d, r13d
mov ecx, dword [rbx + 4]
test ecx, ecx
je 0x1401abd1d
lea r11, [rsi + 4]
lea r11, [r11 + r11*2]
shl r11, 2
mov ecx, r10d
imul rdx, rcx, 0x110
add rdx, r11
mov rax, qword [rsp + 0x38]
mov r9d, dword [rdx + rax + 8]
lea r8, [rcx + rcx*2]
mov rcx, qword [rbx + rsi*8 + 0x70]
movsd xmm0, qword [rdx + rax]
movsd qword [rcx + r8*4], xmm0
mov dword [rcx + r8*4 + 8], r9d
inc r10d
mov eax, dword [rbx + 4]
cmp r10d, eax
jb 0x1401abce0
mov ecx, eax
inc r14d
jmp 0x1401abc50
mov r11d, r13d
cmp dword [rbx + 8], 0
jbe 0x1401abd78
nop
mov r10d, r11d
shl r10, 4
add r10, qword [rbx + 0xd0]
mov r9d, r13d
cmp dword [r10], 0
jbe 0x1401abd6f
nop word [rax + rax]
mov r8d, r9d
mov rdx, qword [r10 + 8]
mov eax, dword [rdx + r8*4]
mov ecx, dword [r12 + rax*4]
btr ecx, 0x1f
mov dword [rdx + r8*4], ecx
inc r9d
cmp r9d, dword [r10]
jb 0x1401abd50
inc r11d
cmp r11d, dword [rbx + 8]
jb 0x1401abd30
mov r14d, r13d
cmp dword [rbx + 0xd8], 0
jle 0x1401abf91
mov r15, r13
movabs rcx, 0x1fffffffffffffff
mov rax, qword [rbx + 0xe0]
mov rsi, qword [r15 + rax]
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x50], xmm0
mov qword [rbp - 0x40], r13
mov edx, dword [rsi + 0x408]
test rdx, rdx
je 0x1401abdc9
cmp rdx, rcx
ja 0x1401ac114
lea rcx, [rbp - 0x50]
call fcn.140064810
cmp qword [rsi + 0x410], 0
je 0x1401abe48
mov edi, r13d
mov rcx, qword [rbp - 0x48]
cmp dword [rsi + 0x408], 0
jbe 0x1401abe60
mov edx, edi
mov r8, qword [rsi + 0x410]
mov eax, dword [r8 + rdx*8]
mov r9d, dword [r12 + rax*4]
test r9d, r9d
js 0x1401abe3c
mov dword [rsp + 0x30], r9d
movss xmm0, dword [r8 + rdx*8 + 4]
movss dword [rsp + 0x34], xmm0
cmp rcx, qword [rbp - 0x40]
je 0x1401abe27
mov rax, qword [rsp + 0x30]
mov qword [rcx], rax
mov rcx, qword [rbp - 0x48]
add rcx, 8
mov qword [rbp - 0x48], rcx
jmp 0x1401abe3c
lea r8, [rsp + 0x30]
mov rdx, rcx
lea rcx, [rbp - 0x50]
call fcn.1400522c0
mov rcx, qword [rbp - 0x48]
inc edi
cmp edi, dword [rsi + 0x408]
jb 0x1401abde3
jmp 0x1401abe60
call fcn.1400f2ee0
lea rdx, str.X_Export:_aiBone_shall_contain_weights__but_pointer_to_them_is_NULL.
mov rcx, rax
call fcn.1400f2ec0
mov rcx, qword [rbp - 0x48]
sub rcx, qword [rbp - 0x50]
sar rcx, 3
mov rax, qword [rsi + 0x410]
test rcx, rcx
mov rcx, rax
je 0x1401abed0
call fcn.1401a68e0
mov rcx, qword [rbp - 0x48]
sub rcx, qword [rbp - 0x50]
sar rcx, 3
mov ecx, ecx
mov dword [rsi + 0x408], ecx
mov eax, 8
mul rcx
mov rcx, 0xffffffffffffffff
cmovo rax, rcx
mov rcx, rax
call fcn.1401a68d0
mov qword [rsp + 0x50], rax
mov qword [rsi + 0x410], rax
mov r8d, dword [rsi + 0x408]
shl r8, 3
mov rdx, qword [rbp - 0x50]
mov rcx, rax
call sub.VCRUNTIME140.dll_memcpy
jmp 0x1401abf3b
call fcn.1401a68e0
mov edx, 0x458
mov rcx, rsi
call fcn.1401a68e0
dec dword [rbx + 0xd8]
mov ecx, r14d
cmp r14d, dword [rbx + 0xd8]
jae 0x1401abf1f
nop dword [rax]
nop dword [rax + rax]
lea r8d, [rcx + 1]
mov rdx, qword [rbx + 0xe0]
mov rax, qword [rdx + r8*8]
mov qword [rdx + rcx*8], rax
mov ecx, r8d
cmp r8d, dword [rbx + 0xd8]
jb 0x1401abf00
dec r14d
sub r15, 8
call fcn.1400f2ee0
lea rdx, str.Removing_bone____no_weights_remaining
mov rcx, rax
call fcn.1400f2f30
nop
mov rcx, qword [rbp - 0x50]
test rcx, rcx
je 0x1401abf7d
mov rax, qword [rbp - 0x40]
sub rax, rcx
sar rax, 3
lea rdx, [rax*8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1401abf78
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401abfda
call fcn.1401a68e0
inc r14d
add r15, 8
cmp r14d, dword [rbx + 0xd8]
jl 0x1401abd8b
mov ebx, dword [rbx + 4]
mov rcx, qword [rsp + 0x58]
test rcx, rcx
je 0x1401abff4
mov rax, qword [rsp + 0x68]
sub rax, rcx
sar rax, 2
lea rdx, [rax*4]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1401abfe1
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1401abfe1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call fcn.1401a68e0
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x58], xmm0
mov qword [rsp + 0x68], r13
lea rcx, [rbp - 0x78]
call fcn.140266c00
nop
test r12, r12
je 0x1401ac048
mov rax, qword [rbp - 0x80]
sub rax, r12
sar rax, 2
lea rdx, [rax*4]
mov rax, r12
cmp rdx, 0x1000
jb 0x1401ac03f
add rdx, 0x27
mov r12, qword [r12 - 8]
sub rax, r12
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1401ac03f
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rcx, r12
call fcn.1401a68e0
nop
mov r8, qword [rsp + 0x38]
test r8, r8
je 0x1401ac0ac
mov rcx, qword [rsp + 0x48]
sub rcx, r8
movabs rax, 0x7878787878787879
imul rcx
sar rdx, 7
mov rax, rdx
shr rax, 0x3f
add rdx, rax
imul rdx, rdx, 0x110
mov rax, r8
cmp rdx, 0x1000
jb 0x1401ac0a4
add rdx, 0x27
mov r8, qword [r8 - 8]
sub rax, r8
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1401ac0a4
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rcx, r8
call fcn.1401a68e0
mov eax, ebx
jmp 0x1401ac0b2
xor eax, eax
mov rcx, qword [rbp + 0xe0]
xor rcx, rsp
call fcn.14032b620
lea r11, [rsp + 0x290]
mov rbx, qword [r11 + 0x40]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
movaps xmm11, xmmword [r11 - 0x60]
movaps xmm12, xmmword [r11 - 0x70]
movaps xmm13, xmmword [r11 - 0x80]
movaps xmm14, xmmword [r11 - 0x90]
movaps xmm15, xmmword [r11 - 0xa0]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.1400072d0
nop
call fcn.1400072d0
int3