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

Disassembly:
mov qword [rsp + 8], rcx
push rbp
push rdi
push r15
lea rbp, [rsp - 0x90]
sub rsp, 0x190
mov rdi, rdx
mov r15, rcx
test rcx, rcx
jne 0x1800f29d8
mov rax, qword [0x1801901d8]
test rax, rax
je 0x1800f3969
lea rcx, str.PackCharts:_atlas_is_null._n
add rsp, 0x190
pop r15
pop rdi
pop rbp
jmp rax
cmp dword [rcx + 0xb4], 0
mov qword [rsp + 0x188], rsi
lea rsi, [rcx + 0xfc]
mov qword [rsp + 0x50], rsi
jne 0x1800f2a18
cmp dword [rsi], 0
jne 0x1800f2a2b
mov rax, qword [0x1801901d8]
test rax, rax
je 0x1800f3961
lea rcx, str.PackCharts:_No_meshes._Call_AddMesh_or_AddUvMesh_first._n
call rax
jmp 0x1800f3961
cmp dword [rsi], 0
mov qword [rsp + 0x50], rsi
jne 0x1800f2a2b
cmp byte [rcx + 0x88], 0
jmp 0x1800f2a32
cmp byte [rcx + 0x108], 0
jne 0x1800f2a52
mov rax, qword [0x1801901d8]
test rax, rax
je 0x1800f3961
lea rcx, str.PackCharts:_ComputeCharts_must_be_called_first._n
call rax
jmp 0x1800f3961
mov qword [rsp + 0x170], r14
xor r14d, r14d
movaps xmmword [rsp + 0x160], xmm6
xorps xmm6, xmm6
comiss xmm6, dword [rdx + 8]
jbe 0x1800f2a87
mov rax, qword [0x1801901d8]
test rax, rax
je 0x1800f2a83
lea rcx, str.PackCharts:_PackOptions::texelsPerUnit_is_negative._n
call rax
mov dword [rdi + 8], r14d
mov rcx, r15
call fcn.1800e6320
mov rcx, qword [r15 + 0x10]
test rcx, rcx
je 0x1800f2ab4
mov rax, qword [0x180192138]
test rax, rax
je 0x1800f2aa8
call rax
jmp 0x1800f2ab0
xor edx, edx
call qword [0x180192130]
mov qword [r15 + 0x10], r14
mov rcx, qword [r15]
test rcx, rcx
je 0x1800f2ad7
mov rax, qword [0x180192138]
test rax, rax
je 0x1800f2acc
call rax
jmp 0x1800f2ad4
xor edx, edx
call qword [0x180192130]
mov qword [r15], r14
mov eax, dword [rsi]
mov qword [rsp + 0x1b8], rbx
mov dword [r15 + 0x28], r14d
mov qword [rbp - 0x80], r14
mov qword [rbp - 0x78], 8
mov dword [rbp - 0x70], r14d
mov qword [rbp - 0x68], r14
mov qword [rbp - 0x60], 4
mov dword [rbp - 0x58], r14d
mov qword [rbp - 0x50], r14
mov qword [rbp - 0x48], 8
mov dword [rbp - 0x40], r14d
mov qword [rbp - 0x38], r14
mov qword [rbp - 0x30], 8
mov dword [rbp - 0x28], r14d
mov qword [rbp - 0x10], r14
mov qword [rbp - 8], 4
mov dword [rbp], r14d
mov qword [rbp + 8], r14
mov qword [rbp + 0x10], 4
mov dword [rbp + 0x18], r14d
mov byte [rbp + 0x20], r14b
mov qword [rbp + 0x28], r14
mov dword [rbp + 0x30], r14d
mov dword [rbp + 0x34], 0x75bcd15
mov dword [rbp + 0x38], 0x159a55a0
mov dword [rbp + 0x3c], 0x1f123bb5
mov dword [rbp + 0x40], 0x74cbb1
test eax, eax
je 0x1800f2b9e
mov ebx, r14d
nop dword [rax]
nop dword [rax + rax]
mov rdx, qword [r15 + 0xf0]
lea rcx, [rbp - 0x80]
mov eax, ebx
mov rdx, qword [rdx + rax*8]
call fcn.18010a9b0
inc ebx
cmp ebx, dword [rsi]
jb 0x1800f2b80
jmp 0x1800f2bb2
mov rdx, qword [r15 + 0xa0]
lea r8, [r15 + 0x40]
lea rcx, [rbp - 0x80]
call fcn.1801094b0
mov r9, qword [r15 + 0x98]
lea rcx, [rbp - 0x80]
mov r8, qword [r15 + 0x90]
mov rdx, rdi
call fcn.18013e740
test al, al
je 0x1800f3940
mov eax, dword [rbp - 0x2c]
mov ecx, dword [rbp - 0x44]
movss xmm0, dword [rbp + 0x30]
mov dword [r15 + 0x24], eax
mov eax, dword [rbp + 0x28]
mov dword [r15 + 0x18], eax
mov eax, dword [rbp + 0x2c]
mov dword [r15 + 0x1c], eax
movss dword [r15 + 0x2c], xmm0
mov dword [r15 + 0x20], ecx
test ecx, ecx
je 0x1800f2c4a
mov edx, ecx
shl rdx, 2
test rdx, rdx
jne 0x1800f2c0f
mov rax, r14
jmp 0x1800f2c17
xor ecx, ecx
call qword [0x180192130]
mov ecx, dword [r15 + 0x20]
mov r8d, r14d
mov qword [r15 + 0x10], rax
test ecx, ecx
je 0x1800f2c4a
mov r9, qword [rbp - 0x68]
nop word [rax + rax]
mov rcx, qword [r15 + 0x10]
mov edx, r8d
inc r8d
mov eax, dword [r9 + rdx*4]
mov dword [rcx + rdx*4], eax
mov ecx, dword [r15 + 0x20]
cmp r8d, ecx
jb 0x1800f2c30
mov qword [rsp + 0x180], r12
mov qword [rsp + 0x178], r13
cmp byte [rdi + 0x13], r14b
je 0x1800f2d56
imul ecx, dword [r15 + 0x1c]
imul ecx, dword [r15 + 0x18]
mov edx, ecx
shl rdx, 2
test rdx, rdx
jne 0x1800f2c7e
mov rdx, r14
jmp 0x1800f2c89
xor ecx, ecx
call qword [0x180192130]
mov rdx, rax
mov r13d, r14d
mov qword [r15], rdx
mov dword [rbp + 0xc0], r14d
cmp dword [r15 + 0x20], r14d
jbe 0x1800f2d56
mov esi, dword [rdi + 4]
nop dword [rax]
nop word [rax + rax]
mov rax, qword [rbp - 0x80]
mov ebx, r14d
mov r12d, dword [r15 + 0x1c]
mov r15d, dword [r15 + 0x18]
mov ecx, r13d
mov rdi, qword [rax + rcx*8]
mov eax, r15d
imul eax, r12d
imul eax, r13d
lea rcx, [rdx + rax*4]
test r12d, r12d
je 0x1800f2d36
mov r14d, r15d
mov r13, rcx
shl r14, 2
nop dword [rax]
nop dword [rax + rax]
mov rax, qword [rdi + 8]
lea ecx, [rbx + rsi]
imul ecx, dword [rdi]
mov r8, r14
add ecx, esi
lea rdx, [rax + rcx*4]
mov eax, ebx
imul eax, r15d
lea rcx, [rax*4]
add rcx, r13
call sub.VCRUNTIME140.dll_memcpy
inc ebx
cmp ebx, r12d
jb 0x1800f2cf0
mov r15, qword [rbp + 0xb0]
xor r14d, r14d
mov r13d, dword [rbp + 0xc0]
mov rdx, qword [r15]
jmp 0x1800f2d3d
mov r15, qword [rbp + 0xb0]
inc r13d
mov dword [rbp + 0xc0], r13d
cmp r13d, dword [r15 + 0x20]
jb 0x1800f2cb0
mov rsi, qword [rsp + 0x50]
mov r10, qword [0x1801901d8]
test r10, r10
je 0x1800f2d75
cmp byte [0x180193546], 0
je 0x1800f2d75
lea rcx, str.Building_output_meshes_n
call r10
mov rax, qword [r15 + 0x90]
mov dword [rbp + 0xc0], r14d
test rax, rax
je 0x1800f2d9e
mov r8, qword [r15 + 0x98]
xor edx, edx
lea ecx, [rdx + 3]
call rax
test al, al
je 0x1800f3930
mov eax, dword [rsi]
test eax, eax
jne 0x1800f2dab
mov eax, dword [r15 + 0xb4]
lea rdx, [rax + rax*4]
mov dword [r15 + 0x28], eax
shl rdx, 3
test rdx, rdx
jne 0x1800f2dc0
xor eax, eax
jmp 0x1800f2dc8
xor ecx, ecx
call qword [0x180192130]
mov ecx, dword [r15 + 0x28]
xor edx, edx
movaps xmmword [rsp + 0x150], xmm7
mov qword [r15 + 8], rax
lea r8, [rcx + rcx*4]
mov rcx, rax
shl r8, 3
call sub.VCRUNTIME140.dll_memset
mov eax, dword [rsi]
test eax, eax
jne 0x1800f365b
xor ebx, ebx
mov dword [rsp + 0x4c], eax
mov dword [rsp + 0x34], ebx
cmp dword [r15 + 0x28], ebx
jbe 0x1800f3905
movss xmm7, dword [0x18016ffa0]
mov rax, qword [r15 + 0xc0]
lea r12, [rbx + rbx*4]
mov r13, qword [r15 + 8]
mov qword [rsp + 0x58], 0
mov r14, qword [rax + rbx*8]
xor eax, eax
mov qword [rsp + 0x68], r14
mov dword [rsp + 0x40], eax
test r14, r14
je 0x1800f2e88
mov eax, dword [r14 + 0xc]
add eax, 0x1f
shr eax, 5
mov dword [rsp + 0x40], eax
test eax, eax
je 0x1800f2e88
lea eax, [rax*4]
mov edi, eax
test eax, eax
jne 0x1800f2e66
mov qword [rsp + 0x58], 0
jmp 0x1800f2e88
mov rdx, rdi
xor ecx, ecx
call qword [0x180192130]
mov qword [rsp + 0x58], rax
test rax, rax
je 0x1800f2e88
mov r8, rdi
xor edx, edx
mov rcx, rax
call sub.VCRUNTIME140.dll_memset
mov rcx, qword [r15 + 0x58]
lea rsi, [rbx + rbx*8]
lea rdx, [rbx + rbx*2]
mov qword [rbp + 0xc8], rsi
mov rbx, qword [rbp + 0xb0]
xor r15d, r15d
mov qword [rsp + 0x50], rdx
mov eax, dword [rcx + rsi*8 + 0x3c]
add dword [r13 + r12*8 + 0x20], eax
mov eax, dword [rcx + rsi*8 + 0xc]
lea ecx, [rax + rax*2]
add dword [r13 + r12*8 + 0x1c], ecx
mov rax, qword [rbx + 0x70]
cmp dword [rax + rdx*8 + 0xc], r15d
jbe 0x1800f2fb5
nop
mov rax, qword [rax + rdx*8]
xor edi, edi
mov rsi, qword [rax + r15*8]
mov qword [rsp + 0x38], rsi
cmp dword [rsi + 0x44], edi
jbe 0x1800f2f9c
mov r8d, dword [r13 + r12*8 + 0x18]
nop dword [rax]
mov rax, qword [rsi + 0x38]
mov rbx, qword [rax + rdi*8]
mov eax, dword [rbx + 0x3c]
add dword [r13 + r12*8 + 0x20], eax
mov eax, 0xaaaaaaab
mov rcx, qword [rbx + 0x28]
mul dword [rcx + 0x4c]
shr edx, 1
test r14, r14
je 0x1800f2f75
test edx, edx
je 0x1800f2f7d
mov rsi, qword [rsp + 0x58]
xor r9d, r9d
mov r10d, edx
mov rax, qword [rbx + 0x58]
mov r8d, 1
mov ecx, dword [r9 + rax]
mov rax, qword [r14 + 0x18]
mov edx, dword [rax + rcx*4]
mov ecx, edx
and ecx, 0x1f
shl r8d, cl
mov ecx, edx
shr rcx, 5
mov eax, dword [rsi + rcx*4]
test r8d, eax
jne 0x1800f2f5f
or eax, r8d
mov dword [rsi + rcx*4], eax
mov rax, qword [r14]
movzx ecx, byte [rax + rdx]
add dword [r13 + r12*8 + 0x1c], ecx
add r9, 4
sub r10, 1
jne 0x1800f2f22
mov r8d, dword [r13 + r12*8 + 0x18]
mov rsi, qword [rsp + 0x38]
jmp 0x1800f2f7d
lea eax, [rdx + rdx*2]
add dword [r13 + r12*8 + 0x1c], eax
inc r8d
inc edi
mov dword [r13 + r12*8 + 0x18], r8d
cmp edi, dword [rsi + 0x44]
jb 0x1800f2ef0
mov rbx, qword [rbp + 0xb0]
mov rdx, qword [rsp + 0x50]
mov rax, qword [rbx + 0x70]
inc r15d
cmp r15d, dword [rax + rdx*8 + 0xc]
jb 0x1800f2ed0
mov rsi, qword [rbp + 0xc8]
mov eax, dword [r13 + r12*8 + 0x20]
lea rdx, [rax + rax*4]
shl rdx, 2
test rdx, rdx
jne 0x1800f2fcb
xor eax, eax
jmp 0x1800f2fd3
xor ecx, ecx
call qword [0x180192130]
mov edx, dword [r13 + r12*8 + 0x1c]
shl rdx, 2
mov qword [r13 + r12*8 + 0x10], rax
test rdx, rdx
jne 0x1800f2fea
xor eax, eax
jmp 0x1800f2ff2
xor ecx, ecx
call qword [0x180192130]
mov qword [r13 + r12*8 + 8], rax
mov eax, dword [r13 + r12*8 + 0x18]
lea rdx, [rax + rax*2]
shl rdx, 3
test rdx, rdx
jne 0x1800f300d
xor eax, eax
jmp 0x1800f3015
xor ecx, ecx
call qword [0x180192130]
mov r10, qword [0x1801901d8]
mov qword [r13 + r12*8], rax
test r10, r10
je 0x1800f305a
cmp byte [0x180193546], 0
je 0x1800f305a
mov r8d, dword [r13 + r12*8 + 0x20]
lea rcx, str.___Mesh__u:__u_vertices___u_triangles___u_charts_n
mov eax, 0xaaaaaaab
mul dword [r13 + r12*8 + 0x1c]
mov eax, dword [r13 + r12*8 + 0x18]
shr edx, 1
mov r9d, edx
mov dword [rsp + 0x20], eax
mov edx, dword [rsp + 0x34]
call r10
mov rax, qword [rbx + 0x58]
xor r11d, r11d
mov rcx, qword [rbp + 0xc8]
mov rbx, qword [rax + rsi*8]
mov r15d, dword [rax + rsi*8 + 0xc]
mov rdi, qword [rax + rsi*8 + 0x18]
mov rsi, qword [rax + rsi*8 + 0x30]
mov eax, dword [rax + rcx*8 + 0x3c]
mov dword [rbp + 0xc8], eax
cmp eax, 4
jb 0x1800f3143
add eax, 0xfffffffc
lea r8, [rsi + 8]
shr eax, 2
xor edx, edx
inc eax
mov r9d, eax
lea r11d, [rax*4]
lea r10, [rax*4]
nop
mov rcx, qword [r13 + r12*8 + 0x10]
lea rdx, [rdx + 0x50]
xor eax, eax
lea r8, [r8 + 0x10]
mov qword [rdx + rcx - 0x50], 0xffffffffffffffff
mov qword [rdx + rcx - 0x48], rax
mov eax, dword [r8 - 0x18]
mov dword [rdx + rcx - 0x40], eax
xor eax, eax
mov rcx, qword [r13 + r12*8 + 0x10]
mov qword [rdx + rcx - 0x3c], 0xffffffffffffffff
mov qword [rdx + rcx - 0x34], rax
mov eax, dword [r8 - 0x14]
mov dword [rdx + rcx - 0x2c], eax
xor eax, eax
mov rcx, qword [r13 + r12*8 + 0x10]
mov qword [rcx + rdx - 0x28], 0xffffffffffffffff
mov qword [rcx + rdx - 0x20], rax
mov eax, dword [r8 - 0x10]
mov dword [rcx + rdx - 0x18], eax
xor eax, eax
mov rcx, qword [r13 + r12*8 + 0x10]
mov qword [rcx + rdx - 0x14], 0xffffffffffffffff
mov qword [rcx + rdx - 0xc], rax
mov eax, dword [r8 - 0xc]
mov dword [rcx + rdx - 4], eax
sub r9, 1
jne 0x1800f30b0
mov eax, dword [rbp + 0xc8]
cmp r11d, eax
jb 0x1800f314a
jmp 0x1800f3187
test eax, eax
je 0x1800f3187
xor r10d, r10d
lea rdx, [r10 + r10*4]
shl rdx, 2
lea r8, [rsi + r10*4]
sub eax, r11d
mov r9d, eax
mov rcx, qword [r13 + r12*8 + 0x10]
lea rdx, [rdx + 0x14]
xor eax, eax
lea r8, [r8 + 4]
mov qword [rdx + rcx - 0x14], 0xffffffffffffffff
mov qword [rdx + rcx - 0xc], rax
mov eax, dword [r8 - 4]
mov dword [rdx + rcx - 4], eax
sub r9, 1
jne 0x1800f315c
xor r11d, r11d
test r15d, r15d
je 0x1800f31d9
nop
mov eax, dword [rbx]
lea r9d, [r11 + r11*2]
mov rcx, qword [r13 + r12*8 + 8]
lea rbx, [rbx + 4]
inc r11d
lea r10d, [rax + rax*2]
mov eax, dword [rdi + r9*4]
mov dword [rcx + r10*4], eax
lea edx, [r10 + 1]
mov rcx, qword [r13 + r12*8 + 8]
lea eax, [r9 + 1]
mov eax, dword [rdi + rax*4]
mov dword [rcx + rdx*4], eax
lea eax, [r9 + 2]
mov rcx, qword [r13 + r12*8 + 8]
lea edx, [r10 + 2]
mov eax, dword [rdi + rax*4]
mov dword [rcx + rdx*4], eax
cmp r11d, r15d
jb 0x1800f3190
mov r15, qword [rbp + 0xb0]
xor ecx, ecx
mov rdx, qword [rsp + 0x50]
mov dword [rsp + 0x48], 0
mov dword [rsp + 0x30], ecx
mov rax, qword [r15 + 0x70]
cmp dword [rax + rdx*8 + 0xc], ecx
jbe 0x1800f359b
mov rax, qword [rax + rdx*8]
mov rdx, qword [rax + rcx*8]
xor eax, eax
mov qword [rsp + 0x70], rdx
mov dword [rsp + 0x60], eax
cmp dword [rdx + 0x44], eax
jbe 0x1800f357e
mov edi, dword [rbp + 0xc8]
mov ebx, dword [rsp + 0x4c]
nop word [rax + rax]
mov ecx, eax
xor r10d, r10d
mov rax, qword [rdx + 0x38]
mov rsi, qword [rax + rcx*8]
mov eax, 0xaaaaaaab
mov r11, qword [rsi + 0x28]
mul dword [r11 + 0x4c]
mov eax, ebx
mov r15d, edx
mov qword [rsp + 0x38], rax
shr r15d, 1
mov dword [rsp + 0x44], r15d
cmp dword [rsi + 0x3c], r10d
jbe 0x1800f32df
mov r14, qword [rbp - 0x38]
mov r15d, eax
nop dword [rax]
mov r8, qword [r13 + r12*8 + 0x10]
lea eax, [r10 + rdi]
lea r9, [rax + rax*4]
movaps xmm0, xmm6
mov rax, qword [r14 + r15*8]
movaps xmm1, xmm6
mov ecx, dword [rax]
mov dword [r8 + r9*4], ecx
mov dword [r8 + r9*4 + 4], ebx
mov rax, qword [rsi + 0x88]
mov ecx, dword [rax + r10*4]
mov rax, qword [r11 + 0x88]
maxss xmm0, dword [rax + rcx*8]
movss dword [r8 + r9*4 + 8], xmm0
maxss xmm1, dword [rax + rcx*8 + 4]
movss dword [r8 + r9*4 + 0xc], xmm1
mov rax, qword [rsi + 0x70]
mov ecx, dword [rax + r10*4]
inc r10d
mov dword [r8 + r9*4 + 0x10], ecx
cmp r10d, dword [rsi + 0x3c]
jb 0x1800f3270
mov r14, qword [rsp + 0x68]
mov r15d, dword [rsp + 0x44]
jmp 0x1800f32e4
mov qword [rsp + 0x38], rax
xor r10d, r10d
test r15d, r15d
je 0x1800f3396
xor ebx, ebx
nop dword [rax]
nop word [rax + rax]
mov rax, qword [rsi + 0x58]
lea r11d, [r10 + r10*2]
mov ecx, dword [rbx + rax]
lea r8d, [rcx + rcx*2]
mov r9d, r8d
test r14, r14
je 0x1800f331f
mov rax, qword [r14 + 0x30]
mov r9d, dword [rax + r8*4]
mov rcx, qword [rsi + 0x40]
mov rax, qword [r13 + r12*8 + 8]
mov edx, dword [rcx + r11*4]
mov ecx, r9d
add edx, edi
lea r9d, [r8 + 1]
mov dword [rax + rcx*4], edx
test r14, r14
je 0x1800f3345
mov rax, qword [r14 + 0x30]
mov r9d, dword [rax + r9*4]
mov rdx, qword [rsi + 0x40]
lea eax, [r11 + 1]
mov ecx, r9d
add r8d, 2
mov edx, dword [rdx + rax*4]
mov rax, qword [r13 + r12*8 + 8]
add edx, edi
mov dword [rax + rcx*4], edx
test r14, r14
je 0x1800f336e
mov rax, qword [r14 + 0x30]
mov r8d, dword [rax + r8*4]
mov rdx, qword [rsi + 0x40]
lea eax, [r11 + 2]
mov ecx, r8d
inc r10d
add rbx, 4
mov edx, dword [rdx + rax*4]
mov rax, qword [r13 + r12*8 + 8]
add edx, edi
mov dword [rax + rcx*4], edx
cmp r10d, r15d
jb 0x1800f3300
mov eax, dword [rsp + 0x48]
mov rcx, qword [rbp - 0x38]
mov rdi, qword [r13 + r12*8]
lea rbx, [rax + rax*2]
mov rax, qword [rsp + 0x38]
mov rax, qword [rcx + rax*8]
mov ecx, dword [rax]
mov eax, 4
mov dword [rdi + rbx*8 + 8], ecx
cmp byte [rsi + 0xe0], 0
jne 0x1800f33c7
mov eax, dword [rsi + 0x30]
mov dword [rdi + rbx*8 + 0x10], eax
test r14, r14
je 0x1800f34eb
mov r15, qword [rsp + 0x58]
test r15, r15
je 0x1800f33f8
mov eax, dword [rsp + 0x40]
test eax, eax
je 0x1800f33f8
lea r8d, [rax*4]
xor edx, edx
mov rcx, r15
call sub.VCRUNTIME140.dll_memset
mov eax, dword [rsp + 0x44]
mov dword [rdi + rbx*8 + 0xc], 0
test eax, eax
je 0x1800f3451
xor r9d, r9d
mov r10d, eax
nop
mov rax, qword [rsi + 0x58]
mov r8d, 1
mov ecx, dword [rax + r9]
mov rax, qword [r14 + 0x18]
mov edx, dword [rax + rcx*4]
mov ecx, edx
and ecx, 0x1f
shl r8d, cl
mov ecx, edx
shr rcx, 5
mov eax, dword [r15 + rcx*4]
test r8d, eax
jne 0x1800f3447
or eax, r8d
mov dword [r15 + rcx*4], eax
inc dword [rdi + rbx*8 + 0xc]
add r9, 4
sub r10, 1
jne 0x1800f3410
mov edx, dword [rdi + rbx*8 + 0xc]
shl rdx, 2
test rdx, rdx
jne 0x1800f3462
xor eax, eax
jmp 0x1800f346a
xor ecx, ecx
call qword [0x180192130]
mov qword [rdi + rbx*8], rax
test r15, r15
je 0x1800f348d
mov eax, dword [rsp + 0x40]
test eax, eax
je 0x1800f348d
lea r8d, [rax*4]
xor edx, edx
mov rcx, r15
call sub.VCRUNTIME140.dll_memset
mov eax, dword [rsp + 0x44]
xor r10d, r10d
test eax, eax
je 0x1800f353a
xor r8d, r8d
mov r11d, eax
mov rax, qword [rsi + 0x58]
mov edx, 1
mov ecx, dword [rax + r8]
mov rax, qword [r14 + 0x18]
mov r9d, dword [rax + rcx*4]
mov ecx, r9d
and ecx, 0x1f
shl edx, cl
mov ecx, r9d
shr rcx, 5
mov eax, dword [r15 + rcx*4]
test edx, eax
jne 0x1800f34df
or eax, edx
mov dword [r15 + rcx*4], eax
mov rax, qword [rdi + rbx*8]
mov dword [rax + r10*4], r9d
inc r10d
add r8, 4
sub r11, 1
jne 0x1800f34a2
jmp 0x1800f353a
mov edx, r15d
shl rdx, 2
mov dword [rdi + rbx*8 + 0xc], r15d
test rdx, rdx
jne 0x1800f3500
xor eax, eax
jmp 0x1800f3508
xor ecx, ecx
call qword [0x180192130]
xor r8d, r8d
mov qword [rdi + rbx*8], rax
cmp dword [rdi + rbx*8 + 0xc], r8d
jbe 0x1800f353a
nop word [rax + rax]
mov rax, qword [rsi + 0x58]
mov rcx, qword [rdi + rbx*8]
mov eax, dword [rax + r8*4]
mov dword [rcx + r8*4], eax
inc r8d
cmp r8d, dword [rdi + rbx*8 + 0xc]
jb 0x1800f3520
mov eax, dword [rsp + 0x60]
mov rdx, qword [rsp + 0x70]
inc eax
inc dword [rsp + 0x48]
mov dword [rdi + rbx*8 + 0x14], 0
mov ebx, dword [rsp + 0x4c]
mov edi, dword [rbp + 0xc8]
inc ebx
add edi, dword [rsi + 0x3c]
mov dword [rsp + 0x4c], ebx
mov dword [rbp + 0xc8], edi
mov dword [rsp + 0x60], eax
cmp eax, dword [rdx + 0x44]
jb 0x1800f3230
mov r15, qword [rbp + 0xb0]
mov ecx, dword [rsp + 0x30]
mov rax, qword [r15 + 0x70]
inc ecx
mov rdx, qword [rsp + 0x50]
mov dword [rsp + 0x30], ecx
cmp ecx, dword [rax + rdx*8 + 0xc]
jb 0x1800f3201
mov r9, qword [r15 + 0x90]
mov ebx, dword [rsp + 0x34]
mov r14d, dword [rbp + 0xc0]
test r9, r9
je 0x1800f35f6
mov eax, dword [r15 + 0x28]
lea ecx, [rbx + 1]
xorps xmm1, xmm1
xorps xmm0, xmm0
cvtsi2ss xmm1, rcx
cvtsi2ss xmm0, rax
divss xmm1, xmm0
mulss xmm1, xmm7
cvttss2si edx, xmm1
cmp edx, r14d
je 0x1800f35f6
mov r8, qword [r15 + 0x98]
mov ecx, 3
mov r14d, edx
mov dword [rbp + 0xc0], edx
call r9
test al, al
je 0x1800f362d
mov rcx, qword [rsp + 0x58]
test rcx, rcx
je 0x1800f3618
mov rax, qword [0x180192138]
test rax, rax
je 0x1800f3610
call rax
jmp 0x1800f3618
xor edx, edx
call qword [0x180192130]
inc ebx
mov dword [rsp + 0x34], ebx
cmp ebx, dword [r15 + 0x28]
jb 0x1800f2e10
jmp 0x1800f3905
mov rcx, qword [rsp + 0x58]
test rcx, rcx
je 0x1800f3928
mov rax, qword [0x180192138]
test rax, rax
je 0x1800f364e
call rax
jmp 0x1800f3928
xor edx, edx
call qword [0x180192130]
jmp 0x1800f3928
xor esi, esi
xor edi, edi
mov dword [rbp + 0xc8], esi
mov dword [rsp + 0x30], edi
test eax, eax
je 0x1800f3905
mov rbx, qword [rbp - 0x38]
movss xmm6, dword [0x18016ffa0]
mov qword [rsp + 0x38], rbx
nop dword [rax]
nop word [rax + rax]
mov rax, qword [r15 + 0xf0]
lea r12, [rdi + rdi*4]
mov r13, qword [r15 + 8]
mov r14, qword [rax + rdi*8]
mov edx, dword [r14 + 0x14]
mov dword [r13 + r12*8 + 0x20], edx
mov rax, qword [r14]
lea rdx, [rdx + rdx*4]
shl rdx, 2
mov ecx, dword [rax + 0x74]
mov dword [r13 + r12*8 + 0x1c], ecx
mov rax, qword [r14]
mov ecx, dword [rax + 0xa4]
mov dword [r13 + r12*8 + 0x18], ecx
test rdx, rdx
jne 0x1800f36d6
xor eax, eax
jmp 0x1800f36de
xor ecx, ecx
call qword [0x180192130]
mov edx, dword [r13 + r12*8 + 0x1c]
shl rdx, 2
mov qword [r13 + r12*8 + 0x10], rax
test rdx, rdx
jne 0x1800f36f5
xor eax, eax
jmp 0x1800f36fd
xor ecx, ecx
call qword [0x180192130]
mov qword [r13 + r12*8 + 8], rax
mov eax, dword [r13 + r12*8 + 0x18]
lea rdx, [rax + rax*2]
shl rdx, 3
test rdx, rdx
jne 0x1800f3718
xor eax, eax
jmp 0x1800f3720
xor ecx, ecx
call qword [0x180192130]
mov r10, qword [0x1801901d8]
mov qword [r13 + r12*8], rax
test r10, r10
je 0x1800f3763
cmp byte [0x180193546], 0
je 0x1800f3763
mov r8d, dword [r13 + r12*8 + 0x20]
lea rcx, str.___UV_mesh__u:__u_vertices___u_triangles___u_charts_n
mov eax, 0xaaaaaaab
mul dword [r13 + r12*8 + 0x1c]
mov eax, dword [r13 + r12*8 + 0x18]
shr edx, 1
mov r9d, edx
mov dword [rsp + 0x20], eax
mov edx, edi
call r10
xor eax, eax
mov r10d, eax
cmp dword [r14 + 0x14], eax
jbe 0x1800f37d0
nop
mov rax, qword [r14 + 8]
mov r9, qword [r13 + r12*8 + 0x10]
mov edx, r10d
mov ecx, dword [rax + rdx*8]
lea r8, [rdx + rdx*4]
mov dword [r9 + r8*4 + 8], ecx
mov rax, qword [r14 + 8]
mov ecx, dword [rax + rdx*8 + 4]
mov dword [r9 + r8*4 + 0xc], ecx
mov dword [r9 + r8*4 + 0x10], r10d
mov rax, qword [r14]
mov rcx, qword [rax + 0xb0]
mov eax, dword [rcx + rdx*4]
cmp eax, 0xffffffff
jne 0x1800f37b5
mov edx, 0xffffffff
mov eax, edx
jmp 0x1800f37be
lea edx, [rax + rsi]
mov rcx, qword [rbx + rdx*8]
mov eax, dword [rcx]
mov dword [r9 + r8*4], eax
inc r10d
mov dword [r9 + r8*4 + 4], edx
cmp r10d, dword [r14 + 0x14]
jb 0x1800f3770
mov rdx, qword [r14]
mov rcx, qword [r13 + r12*8 + 8]
mov r8d, dword [rdx + 0x74]
mov rdx, qword [rdx + 0x68]
shl r8, 2
call sub.VCRUNTIME140.dll_memcpy
mov rax, qword [r14]
xor r15d, r15d
cmp dword [rax + 0xa4], r15d
jbe 0x1800f3894
nop dword [rax]
mov rdi, qword [r13 + r12*8]
lea rbx, [r15 + r15*2]
mov rcx, qword [rsp + 0x38]
mov rsi, qword [rcx + rsi*8]
mov eax, dword [rsi]
mov dword [rdi + rbx*8 + 8], eax
mov eax, dword [rsi + 0x7c]
mov edx, eax
mov dword [rdi + rbx*8 + 0xc], eax
shl rdx, 2
test rdx, rdx
jne 0x1800f382e
xor eax, eax
jmp 0x1800f3836
xor ecx, ecx
call qword [0x180192130]
xor r8d, r8d
mov qword [rdi + rbx*8], rax
mov eax, dword [rsi + 4]
mov dword [rdi + rbx*8 + 0x14], eax
cmp dword [rdi + rbx*8 + 0xc], r8d
jbe 0x1800f386a
nop dword [rax + rax]
mov rax, qword [rsi + 0x70]
mov rcx, qword [rdi + rbx*8]
mov eax, dword [rax + r8*4]
mov dword [rcx + r8*4], eax
inc r8d
cmp r8d, dword [rdi + rbx*8 + 0xc]
jb 0x1800f3850
mov esi, dword [rbp + 0xc8]
inc r15d
mov rax, qword [r14]
inc esi
mov dword [rbp + 0xc8], esi
cmp r15d, dword [rax + 0xa4]
jb 0x1800f3800
mov rbx, qword [rsp + 0x38]
mov edi, dword [rsp + 0x30]
mov r15, qword [rbp + 0xb0]
mov r14d, dword [rbp + 0xc0]
mov r9, qword [r15 + 0x90]
test r9, r9
je 0x1800f38f2
mov eax, dword [r15 + 0x28]
lea ecx, [rdi + 1]
xorps xmm1, xmm1
xorps xmm0, xmm0
cvtsi2ss xmm1, rcx
cvtsi2ss xmm0, rax
divss xmm1, xmm0
mulss xmm1, xmm6
cvttss2si edx, xmm1
cmp edx, r14d
je 0x1800f38f2
mov r8, qword [r15 + 0x98]
mov ecx, 3
mov r14d, edx
mov dword [rbp + 0xc0], edx
call r9
test al, al
je 0x1800f3928
mov rax, qword [rsp + 0x50]
inc edi
mov dword [rsp + 0x30], edi
cmp edi, dword [rax]
jb 0x1800f3690
mov rax, qword [r15 + 0x90]
test rax, rax
je 0x1800f3928
cmp r14d, 0x64
je 0x1800f3928
mov r8, qword [r15 + 0x98]
mov edx, 0x64
lea ecx, [rdx - 0x61]
call rax
movaps xmm7, xmmword [rsp + 0x150]
mov r12, qword [rsp + 0x180]
mov r13, qword [rsp + 0x178]
lea rcx, [rbp - 0x80]
call fcn.1800cef60
movaps xmm6, xmmword [rsp + 0x160]
mov r14, qword [rsp + 0x170]
mov rbx, qword [rsp + 0x1b8]
mov rsi, qword [rsp + 0x188]
add rsp, 0x190
pop r15
pop rdi
pop rbp
ret