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

Disassembly:
mov rax, rsp
mov dword [rax + 0x18], r8d
mov dword [rax + 0x10], edx
push rsi
sub rsp, 0x150
mov qword [rax - 0x10], rbx
mov qword [rax - 0x18], rbp
mov qword [rax - 0x20], rdi
mov qword [rax - 0x28], r12
mov qword [rax - 0x30], r13
mov qword [rax - 0x38], r14
mov qword [rax - 0x40], r15
xor ebp, ebp
mov r10d, r8d
mov rsi, rcx
mov edi, ebp
mov dword [rsp + 0x168], ebp
movaps xmmword [rax - 0x58], xmm6
movss xmm6, dword [0x18039326c]
movaps xmmword [rax - 0x68], xmm7
movss xmm7, dword [0x1803930f0]
movaps xmmword [rax - 0x78], xmm8
movaps xmmword [rax - 0x88], xmm9
movss xmm9, dword [0x180393198]
xorps xmm8, xmm8
movaps xmmword [rax - 0x98], xmm10
movaps xmmword [rax - 0xa8], xmm11
movaps xmmword [rax - 0xb8], xmm12
movss xmm11, dword [0x180393150]
movss xmm12, dword [0x18039354c]
movss xmm10, dword [0x18039388c]
movaps xmmword [rax - 0xc8], xmm13
movss xmm13, dword [0x1803930a0]
movaps xmmword [rax - 0xd8], xmm14
mov eax, dword [rcx + 0x2c]
movss xmm14, dword [0x180393114]
movaps xmmword [rsp + 0x70], xmm15
movss xmm15, dword [0x180393620]
cmp dword [rcx + 0x28], ebp
jle 0x18026141f
movss xmm7, dword [rsp + 0x170]
nop word [rax + rax]
mov r15, qword [rsi + 0x20]
movsxd rcx, dword [rsi + 0x40]
cdqe
lea r14, [rax + rax*4]
mov qword [rsp + 0x48], r15
mov ebx, dword [r15 + r14*8]
mov rax, qword [r15 + r14*8 + 0x10]
mov qword [rsp + 0x40], r14
mov dword [rsp + 0x160], ebx
sub ebx, ecx
mov qword [rsp + 0x68], rax
sub r10d, ebx
mov dword [rsi + 0x34], ebx
mov dword [rsp + 0x170], r10d
test ebx, ebx
jle 0x1802613b9
mov eax, dword [rsi + 0x30]
cmp eax, 3
jne 0x180260c86
mov rax, qword [rsi + 0xc8]
mov r12, qword [rsi + 0xe0]
mov r8, rbp
lea r15, [rax + rcx*4]
mov rax, qword [rsi + 0xd0]
lea r13, [rax + rcx*4]
mov rax, qword [rsi + 0xb8]
lea rax, [rax + rcx*4]
mov qword [rsp + 0x58], rax
mov rax, qword [rsi + 0x88]
lea rax, [rax + rcx*4]
mov qword [rsp + 0x60], rax
mov rax, qword [rsi + 0x98]
lea rax, [rax + rcx*4]
mov qword [rsp + 0x50], rax
test ebx, ebx
jle 0x180260bd6
cmp ebx, 4
jb 0x180260bd6
lea eax, [rbx - 1]
movsxd rcx, eax
lea rax, [rcx*4]
lea rdx, [r15 + rcx*4]
add rax, r13
cmp r15, rax
ja 0x180260b89
cmp rdx, r13
jae 0x180260bd6
mov eax, ebx
and eax, 0x80000003
jge 0x180260b99
dec eax
or eax, 0xfffffffc
inc eax
mov ecx, ebx
sub ecx, eax
movsxd rax, ecx
add r8, 4
cmp r8, rax
jl 0x180260ba0
lea eax, [rcx + 3]
mov rdi, r13
cdq
and edx, 3
add eax, edx
sar eax, 2
movsxd rdx, eax
xor eax, eax
shl rdx, 4
mov rcx, rdx
shr rcx, 2
shr rdx, 2
rep stosd dword [rdi], eax
mov rdi, r15
mov rcx, rdx
rep stosd dword [rdi], eax
movsxd rcx, ebx
cmp r8, rcx
jge 0x180260bfe
mov rdx, r13
lea rax, [r15 + r8*4]
sub rdx, r15
sub rcx, r8
nop dword [rax + rax]
mov dword [rdx + rax], ebp
mov dword [rax], ebp
lea rax, [rax + 4]
dec rcx
jne 0x180260bf0
cmp dword [r12 + 0xc], 0
mov r14d, ebp
jle 0x180260c48
lea rdi, [r12 + 0x5c]
nop
mov rcx, qword [r12]
movss xmm0, dword [rdi + 0x20]
movss xmm3, dword [rdi]
mov r8, r13
mov rdx, r15
mov dword [rsp + 0x28], ebx
mov rcx, qword [rcx + rbp]
movss dword [rsp + 0x20], xmm0
call fcn.18008b6f0
inc r14d
lea rdi, [rdi + 4]
lea rbp, [rbp + 8]
cmp r14d, dword [r12 + 0xc]
jl 0x180260c10
mov rax, qword [rsp + 0x50]
mov r9, qword [rsp + 0x60]
mov rcx, qword [rsi + 0xe0]
mov dword [rsp + 0x30], ebx
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x58]
mov r8, r13
mov rdx, r15
mov qword [rsp + 0x20], rax
call fcn.18008c190
mov r14, qword [rsp + 0x40]
mov r15, qword [rsp + 0x48]
jmp 0x1802613b2
cmp eax, 0xb
jne 0x18026132c
mov rax, qword [rsi + 0xc8]
mov rdx, qword [rsi + 0xe0]
lea r12, [rax + rcx*4]
mov rax, qword [rsi + 0xd0]
lea r13, [rax + rcx*4]
mov rax, qword [rsi + 0xb8]
lea rax, [rax + rcx*4]
mov qword [rsp + 0x58], rax
mov rax, qword [rsi + 0x88]
lea rax, [rax + rcx*4]
mov qword [rsp + 0x50], rax
mov rax, qword [rsi + 0x98]
lea rax, [rax + rcx*4]
mov qword [rsp + 0x60], rax
mov rax, qword [rsi + 0x90]
movss xmm5, dword [rax + rcx*4]
mov rax, qword [rsi + 0x80]
movss xmm3, dword [rax + rcx*4]
ucomiss xmm3, dword [rdx + 0x20]
je 0x180260d9f
mov r9d, dword [rdx + 0xc]
movss dword [rdx + 0x20], xmm3
mulss xmm3, xmm9
sar r9d, 1
movaps xmm2, xmm9
mov rcx, rbp
movsxd r8, r9d
movaps xmm1, xmm3
subss xmm2, xmm3
addss xmm1, xmm9
mulss xmm2, dword [rdx + 0x58]
mulss xmm1, dword [rdx + 0x58]
test r9d, r9d
jle 0x180260d6f
lea rdi, [rdx + 0x7c]
nop dword [rax + rax]
movss dword [rdi - 0x20], xmm1
movss dword [rdi], xmm2
movsxd rax, dword [rdx + 0xc]
sub rax, rcx
lea rdi, [rdi + 4]
movss dword [rdx + rax*4 + 0x58], xmm2
movsxd rax, dword [rdx + 0xc]
sub rax, rcx
inc rcx
movss dword [rdx + rax*4 + 0x78], xmm1
cmp rcx, r8
jl 0x180260d40
mov ecx, dword [rdx + 0xc]
lea eax, [r9 + r9]
sub ecx, eax
cmp ecx, 1
jne 0x180260d9f
movss xmm0, dword [rdx + 0x58]
mulss xmm0, xmm9
movss dword [rdx + r8*4 + 0x5c], xmm0
movss xmm1, dword [rdx + 0x58]
mulss xmm1, xmm9
movss dword [rdx + r8*4 + 0x7c], xmm1
mov rdi, qword [rsi + 0xe0]
ucomiss xmm5, dword [rdi + 0x24]
je 0x180261164
mov eax, dword [rdi + 0xc]
movaps xmm4, xmm5
movss dword [rdi + 0x24], xmm5
mulss xmm4, xmm5
mulss xmm4, xmm5
movd xmm0, eax
mulss xmm4, xmm13
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm9
mulss xmm4, xmm0
cmp eax, 1
jne 0x180260de4
mov dword [rdi + 0x28], 0x3f800000
cmp eax, 2
jne 0x180260e01
movaps xmm1, xmm4
movaps xmm0, xmm6
addss xmm1, xmm6
movss dword [rdi + 0x2c], xmm1
divss xmm0, xmm1
movss dword [rdi + 0x28], xmm0
cmp eax, 3
jne 0x180260e25
movaps xmm1, xmm4
movaps xmm0, xmm6
mov dword [rdi + 0x2c], 0x3f800000
addss xmm1, xmm6
movss dword [rdi + 0x30], xmm1
divss xmm0, xmm1
movss dword [rdi + 0x28], xmm0
cmp eax, 4
jne 0x180260e5f
movaps xmm0, xmm6
movaps xmm2, xmm4
movaps xmm1, xmm4
addss xmm2, xmm6
mulss xmm1, xmm11
divss xmm0, xmm2
addss xmm1, xmm6
movss dword [rdi + 0x30], xmm2
movss dword [rdi + 0x2c], xmm1
movss dword [rdi + 0x28], xmm0
movaps xmm0, xmm6
divss xmm0, xmm1
movss dword [rdi + 0x34], xmm0
cmp eax, 5
jne 0x180260ea0
movaps xmm0, xmm6
movaps xmm2, xmm4
movaps xmm1, xmm4
mov dword [rdi + 0x30], 0x3f800000
addss xmm2, xmm6
mulss xmm1, xmm9
divss xmm0, xmm2
addss xmm1, xmm6
movss dword [rdi + 0x34], xmm2
movss dword [rdi + 0x2c], xmm1
movss dword [rdi + 0x28], xmm0
movaps xmm0, xmm6
divss xmm0, xmm1
movss dword [rdi + 0x38], xmm0
cmp eax, 6
jne 0x180260efc
movaps xmm0, xmm6
movaps xmm1, xmm4
movaps xmm3, xmm4
mulss xmm1, xmm15
addss xmm3, xmm6
divss xmm0, xmm3
mulss xmm1, xmm14
movss dword [rdi + 0x3c], xmm3
movaps xmm2, xmm4
addss xmm1, xmm6
movss dword [rdi + 0x30], xmm1
movss dword [rdi + 0x28], xmm0
movaps xmm0, xmm6
divss xmm0, xmm1
mulss xmm2, xmm14
movaps xmm1, xmm6
addss xmm2, xmm6
movss dword [rdi + 0x2c], xmm2
movss dword [rdi + 0x34], xmm0
divss xmm1, xmm2
movss dword [rdi + 0x38], xmm1
cmp eax, 7
jne 0x180260f5f
movaps xmm0, xmm6
movaps xmm3, xmm4
movaps xmm1, xmm4
mov dword [rdi + 0x34], 0x3f800000
addss xmm3, xmm6
mulss xmm1, xmm11
divss xmm0, xmm3
addss xmm1, xmm6
movss dword [rdi + 0x40], xmm3
movaps xmm2, xmm4
movss dword [rdi + 0x38], xmm1
mulss xmm2, xmm12
movss dword [rdi + 0x28], xmm0
movaps xmm0, xmm6
divss xmm0, xmm1
mulss xmm2, xmm11
addss xmm2, xmm6
movss dword [rdi + 0x2c], xmm2
movss dword [rdi + 0x30], xmm0
movaps xmm0, xmm6
divss xmm0, xmm2
movss dword [rdi + 0x3c], xmm0
cmp eax, 8
jne 0x180260fe2
movss xmm5, dword [0x1803930f0]
movaps xmm1, xmm4
movaps xmm3, xmm4
addss xmm3, xmm6
movaps xmm2, xmm4
movaps xmm0, xmm6
mulss xmm1, xmm5
mulss xmm2, dword [0x1803936a8]
divss xmm0, xmm3
addss xmm1, xmm6
movss dword [rdi + 0x3c], xmm1
movss dword [rdi + 0x44], xmm3
movss dword [rdi + 0x28], xmm0
movaps xmm0, xmm6
divss xmm0, xmm1
mulss xmm4, xmm15
mulss xmm2, xmm5
movaps xmm1, xmm6
addss xmm2, xmm6
movss dword [rdi + 0x2c], xmm2
movss dword [rdi + 0x30], xmm0
movaps xmm0, xmm6
mulss xmm4, xmm5
divss xmm1, xmm2
addss xmm4, xmm6
movss dword [rdi + 0x34], xmm4
movss dword [rdi + 0x40], xmm1
divss xmm0, xmm4
movss dword [rdi + 0x38], xmm0
movss xmm0, dword [rdi + 0x14]
movaps xmm1, xmm0
mulss xmm1, dword [rdi + 0x50]
addss xmm1, dword [rdi + 0x54]
comiss xmm1, xmm8
jb 0x180261293
mov rax, qword [rdi]
xor r15b, r15b
xor r14b, r14b
mov r10, qword [rax]
movaps xmm2, xmm8
cvttss2si eax, xmm1
cmp eax, 0x7fff
jl 0x18026102b
mov rax, qword [0x180423050]
add rax, 0x3fff8
mov r8, rax
jmp 0x18026104b
movd xmm0, eax
movsxd rcx, eax
mov rax, qword [0x180423050]
lea r8, [rax + rcx*8]
movaps xmm2, xmm1
cvtdq2ps xmm0, xmm0
subss xmm2, xmm0
lea rax, [r8 + 8]
movsxd r9, dword [r10 + 0x18]
movaps xmm1, xmm6
subss xmm1, xmm2
mulss xmm2, dword [rax]
mov rax, qword [0x180423048]
mulss xmm1, dword [r8]
addss xmm1, xmm2
test r9d, r9d
jne 0x180261086
mov dword [r10 + 0x14], ebp
mov rcx, qword [rax]
mov r10, qword [rsp + 0x178]
mov rbp, qword [rcx]
jmp 0x18026110a
movzx edx, byte [r8 + 4]
mov dword [r10 + 0x14], edx
mov r11, qword [rax + r9*8]
mov rbp, qword [r11 + rdx*8]
test edx, edx
jne 0x1802610b7
lea eax, [r9 - 3]
cmp eax, 3
jbe 0x1802610aa
cmp r9d, 1
jne 0x1802610b7
mov r10, qword [rsp + 0x178]
mov r14b, 1
jmp 0x18026110a
movzx eax, byte [r8 + 5]
cmp al, 0xff
jne 0x1802610d1
mov r10, rbp
mov qword [rsp + 0x178], rbp
movaps xmm7, xmm8
jmp 0x18026110a
movzx eax, al
mov r15b, 1
movd xmm7, eax
cvtdq2ps xmm7, xmm7
mulss xmm7, dword [0x180393044]
comiss xmm7, xmm9
jbe 0x1802610f3
mov r10, qword [r11 + rdx*8 + 8]
jmp 0x180261102
mov r10, qword [r11 + rdx*8 - 8]
movaps xmm0, xmm6
subss xmm0, xmm7
movaps xmm7, xmm0
mov qword [rsp + 0x178], r10
xor r9d, r9d
cmp dword [rdi + 0xc], r9d
jle 0x180261162
xor edx, edx
lea r8, [rdi + 0x28]
nop dword [rax]
mov rax, qword [rdi]
movaps xmm0, xmm1
inc r9d
mov rcx, qword [rdx + rax]
lea r8, [r8 + 4]
lea rdx, [rdx + 8]
mulss xmm0, dword [r8 - 4]
mulss xmm0, xmm10
mov qword [rcx + 0x20], rbp
mov qword [rcx + 0x30], r10
mov byte [rcx + 0x3d], r14b
movss dword [rcx + 0x38], xmm7
cvttss2si eax, xmm0
mov dword [rcx + 0x4c], eax
mov byte [rcx + 0x3c], r15b
cmp r9d, dword [rdi + 0xc]
jl 0x180261120
xor ebp, ebp
mov r15, qword [rsi + 0xe0]
mov r8, rbp
test ebx, ebx
jle 0x1802611e6
cmp ebx, 4
jb 0x1802611e6
lea eax, [rbx - 1]
movsxd rcx, eax
lea rax, [rcx*4]
lea rdx, [r12 + rcx*4]
add rax, r13
cmp r12, rax
ja 0x180261196
cmp rdx, r13
jae 0x1802611e6
mov eax, ebx
and eax, 0x80000003
jge 0x1802611a6
dec eax
or eax, 0xfffffffc
inc eax
mov ecx, ebx
sub ecx, eax
movsxd rax, ecx
nop dword [rax]
add r8, 4
cmp r8, rax
jl 0x1802611b0
lea eax, [rcx + 3]
mov rdi, r13
cdq
and edx, 3
add eax, edx
sar eax, 2
movsxd rdx, eax
xor eax, eax
shl rdx, 4
mov rcx, rdx
shr rcx, 2
shr rdx, 2
rep stosd dword [rdi], eax
mov rdi, r12
mov rcx, rdx
rep stosd dword [rdi], eax
movsxd rcx, ebx
cmp r8, rcx
jge 0x18026120e
mov rdx, r13
lea rax, [r12 + r8*4]
sub rdx, r12
sub rcx, r8
nop dword [rax + rax]
mov dword [rdx + rax], ebp
mov dword [rax], ebp
lea rax, [rax + 4]
dec rcx
jne 0x180261200
cmp dword [r15 + 0xc], 0
jle 0x180261255
xor r14d, r14d
lea rdi, [r15 + 0x5c]
nop dword [rax]
mov rcx, qword [r15]
movss xmm0, dword [rdi + 0x20]
movss xmm3, dword [rdi]
mov r8, r13
mov rdx, r12
mov dword [rsp + 0x28], ebx
mov rcx, qword [r14 + rcx]
movss dword [rsp + 0x20], xmm0
call fcn.18008b6f0
inc ebp
lea rdi, [rdi + 4]
lea r14, [r14 + 8]
cmp ebp, dword [r15 + 0xc]
jl 0x180261220
mov rax, qword [rsp + 0x60]
mov r9, qword [rsp + 0x50]
mov rcx, qword [rsi + 0xe0]
mov dword [rsp + 0x30], ebx
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x58]
mov r8, r13
mov rdx, r12
mov qword [rsp + 0x20], rax
call fcn.18008c190
mov r14, qword [rsp + 0x40]
mov r15, qword [rsp + 0x48]
jmp 0x1802613b2
mulss xmm0, dword [0x1803936ec]
movaps xmm1, xmm0
movaps xmm0, xmm12
call fcn.180291d20
cmp dword [rdi + 0xc], 0
mov r11d, ebp
movaps xmm1, xmm0
mulss xmm1, dword [rdi + 0x4c]
jle 0x180261164
mov r14, qword [0x180423048]
mov r9, rbp
lea r10, [rdi + 0x28]
nop word [rax + rax]
mov rax, qword [rdi]
movaps xmm0, xmm1
mulss xmm0, dword [r10]
mov rdx, qword [r9 + rax]
movsxd r8, dword [rdx + 0x18]
mulss xmm0, dword [rdx + 0xc]
mov dword [rdx + 0x14], ebp
cvttss2si eax, xmm0
mov dword [rdx + 0x4c], eax
mov rcx, qword [r14 + r8*8]
mov rax, qword [rcx]
mov qword [rdx + 0x20], rax
lea eax, [r8 - 3]
cmp eax, 3
jbe 0x18026130e
mov eax, ebp
cmp r8d, 1
jne 0x180261313
mov eax, 1
inc r11d
mov byte [rdx + 0x3d], al
add r10, 4
add r9, 8
cmp r11d, dword [rdi + 0xc]
jl 0x1802612d0
jmp 0x180261164
cmp eax, 0xa
jne 0x180261340
mov edx, ecx
mov r8d, ebx
mov rcx, rsi
call fcn.18008dd80
jmp 0x1802613b9
cmp eax, 0xc
jne 0x180261354
mov edx, ecx
mov r8d, ebx
mov rcx, rsi
call fcn.18008e420
jmp 0x1802613b9
cmp eax, 2
jne 0x1802613b9
mov edi, dword [rsi + 0xf0]
test edi, edi
jg 0x180261371
mov rax, qword [rsi]
mov rcx, rsi
mov dword [rsi + 0x30], ebp
call qword [rax + 0x30]
jmp 0x1802613b2
mov rax, qword [rsi + 0xc8]
cmp edi, ebx
lea rdx, [rax + rcx*4]
mov rax, qword [rsi + 0xd0]
cmovl ebx, edi
sub edi, ebx
lea rax, [rax + rcx*4]
mov dword [rsi + 0xf0], edi
test ebx, ebx
jle 0x1802613b2
nop dword [rax + rax]
mov dword [rax], ebp
dec ebx
mov dword [rdx], ebp
lea rdx, [rdx + 4]
lea rax, [rax + 4]
test ebx, ebx
jg 0x1802613a0
mov edi, dword [rsp + 0x168]
mov eax, dword [rsp + 0x160]
mov r10, qword [rsp + 0x68]
mov dword [rsi + 0x40], eax
cmp dword [r10 + 0x2c], 0
mov eax, dword [r15 + r14*8 + 4]
mov dword [r10 + 8], eax
jne 0x1802613e7
mov ecx, dword [r15 + r14*8 + 0x18]
mov rax, qword [r10 + 0x60]
mov dword [r10 + 0x68], ecx
mov dword [rax], ecx
mov rax, qword [rsi]
mov rdx, r10
mov rcx, rsi
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov eax, dword [r15 + r14*8 + 0x20]
mov r10d, dword [rsp + 0x170]
inc edi
mov ebp, 0
mov dword [rsp + 0x168], edi
cmp edi, dword [rsi + 0x28]
jl 0x180260ac0
movss xmm7, dword [0x1803930f0]
mov dword [rsi + 0x34], r10d
test r10d, r10d
jle 0x180261d04
mov eax, dword [rsi + 0x30]
cmp eax, 3
jne 0x1802615b4
movsxd rcx, dword [rsi + 0x40]
mov rax, qword [rsi + 0xc8]
mov r15, qword [rsi + 0xe0]
lea r14, [rax + rcx*4]
mov rax, qword [rsi + 0xd0]
mov r8d, ebp
lea r12, [rax + rcx*4]
mov rax, qword [rsi + 0xb8]
lea r13, [rax + rcx*4]
mov rax, qword [rsi + 0x88]
lea rax, [rax + rcx*4]
mov qword [rsp + 0x178], rax
mov rax, qword [rsi + 0x98]
lea rax, [rax + rcx*4]
mov qword [rsp + 0x160], rax
test r10d, r10d
jle 0x1802614fd
cmp r10d, 4
jb 0x1802614fd
lea eax, [r10 - 1]
movsxd rcx, eax
lea rax, [r12 + rcx*4]
lea rdx, [r14 + rcx*4]
cmp r14, rax
ja 0x1802614b1
cmp rdx, r12
jae 0x1802614fd
mov eax, r10d
and eax, 0x80000003
jge 0x1802614c2
dec eax
or eax, 0xfffffffc
inc eax
mov ecx, r10d
sub ecx, eax
add r8d, 4
cmp r8d, ecx
jl 0x1802614c7
lea eax, [rcx + 3]
mov rdi, r12
cdq
and edx, 3
add eax, edx
sar eax, 2
movsxd rdx, eax
xor eax, eax
shl rdx, 4
mov rcx, rdx
shr rcx, 2
shr rdx, 2
rep stosd dword [rdi], eax
mov rdi, r14
mov rcx, rdx
rep stosd dword [rdi], eax
movsxd rdi, r8d
movsxd rcx, r10d
cmp rdi, rcx
jge 0x18026152e
mov rdx, r12
lea rax, [r14 + rdi*4]
sub rdx, r14
sub rcx, rdi
nop word [rax + rax]
mov dword [rdx + rax], ebp
mov dword [rax], ebp
lea rax, [rax + 4]
dec rcx
jne 0x180261520
cmp dword [r15 + 0xc], 0
mov ebx, ebp
jle 0x18026157e
lea rdi, [r15 + 0x5c]
nop dword [rax + rax]
mov rcx, qword [r15]
movss xmm0, dword [rdi + 0x20]
movss xmm3, dword [rdi]
mov dword [rsp + 0x28], r10d
mov r8, r12
mov rdx, r14
mov rcx, qword [rcx + rbp]
movss dword [rsp + 0x20], xmm0
call fcn.18008b6f0
mov r10d, dword [rsp + 0x170]
inc ebx
lea rdi, [rdi + 4]
lea rbp, [rbp + 8]
cmp ebx, dword [r15 + 0xc]
jl 0x180261540
mov rax, qword [rsp + 0x160]
mov r9, qword [rsp + 0x178]
mov rcx, qword [rsi + 0xe0]
mov dword [rsp + 0x30], r10d
mov qword [rsp + 0x28], rax
mov r8, r12
mov rdx, r14
mov qword [rsp + 0x20], r13
call fcn.18008c190
jmp 0x180261d04
cmp eax, 0xb
jne 0x180261c6e
movsxd rcx, dword [rsi + 0x40]
mov rax, qword [rsi + 0xc8]
mov rdx, qword [rsi + 0xe0]
lea r12, [rax + rcx*4]
mov rax, qword [rsi + 0xd0]
xor r14d, r14d
lea r13, [rax + rcx*4]
mov rax, qword [rsi + 0xb8]
lea rbp, [rax + rcx*4]
mov rax, qword [rsi + 0x88]
lea rax, [rax + rcx*4]
mov qword [rsp + 0x160], rbp
mov qword [rsp + 0x68], rax
mov rax, qword [rsi + 0x98]
lea rax, [rax + rcx*4]
mov qword [rsp + 0x178], rax
mov rax, qword [rsi + 0x90]
movss xmm5, dword [rax + rcx*4]
mov rax, qword [rsi + 0x80]
movss xmm3, dword [rax + rcx*4]
ucomiss xmm3, dword [rdx + 0x20]
je 0x1802616df
mov r9d, dword [rdx + 0xc]
movss dword [rdx + 0x20], xmm3
mulss xmm3, xmm9
sar r9d, 1
movaps xmm2, xmm9
mov ecx, r14d
movsxd r8, r9d
movaps xmm1, xmm3
subss xmm2, xmm3
addss xmm1, xmm9
mulss xmm2, dword [rdx + 0x58]
mulss xmm1, dword [rdx + 0x58]
test r9d, r9d
jle 0x1802616af
lea rdi, [rdx + 0x7c]
nop dword [rax]
nop word [rax + rax]
movss dword [rdi - 0x20], xmm1
movss dword [rdi], xmm2
movsxd rax, dword [rdx + 0xc]
sub rax, rcx
lea rdi, [rdi + 4]
movss dword [rdx + rax*4 + 0x58], xmm2
movsxd rax, dword [rdx + 0xc]
sub rax, rcx
inc rcx
movss dword [rdx + rax*4 + 0x78], xmm1
cmp rcx, r8
jl 0x180261680
mov ecx, dword [rdx + 0xc]
lea eax, [r9 + r9]
sub ecx, eax
cmp ecx, 1
jne 0x1802616df
movss xmm0, dword [rdx + 0x58]
mulss xmm0, xmm9
movss dword [rdx + r8*4 + 0x5c], xmm0
movss xmm1, dword [rdx + 0x58]
mulss xmm1, xmm9
movss dword [rdx + r8*4 + 0x7c], xmm1
mov rdi, qword [rsi + 0xe0]
ucomiss xmm5, dword [rdi + 0x24]
je 0x180261aa2
mov eax, dword [rdi + 0xc]
movaps xmm4, xmm5
movss dword [rdi + 0x24], xmm5
mulss xmm4, xmm5
mulss xmm4, xmm5
movd xmm0, eax
mulss xmm4, xmm13
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm9
mulss xmm4, xmm0
cmp eax, 1
jne 0x180261724
mov dword [rdi + 0x28], 0x3f800000
cmp eax, 2
jne 0x180261741
movaps xmm1, xmm4
movaps xmm0, xmm6
addss xmm1, xmm6
movss dword [rdi + 0x2c], xmm1
divss xmm0, xmm1
movss dword [rdi + 0x28], xmm0
cmp eax, 3
jne 0x180261765
movaps xmm1, xmm4
movaps xmm0, xmm6
mov dword [rdi + 0x2c], 0x3f800000
addss xmm1, xmm6
movss dword [rdi + 0x30], xmm1
divss xmm0, xmm1
movss dword [rdi + 0x28], xmm0
cmp eax, 4
jne 0x18026179f
movaps xmm0, xmm6
movaps xmm2, xmm4
movaps xmm1, xmm4
addss xmm2, xmm6
mulss xmm1, xmm11
divss xmm0, xmm2
addss xmm1, xmm6
movss dword [rdi + 0x30], xmm2
movss dword [rdi + 0x2c], xmm1
movss dword [rdi + 0x28], xmm0
movaps xmm0, xmm6
divss xmm0, xmm1
movss dword [rdi + 0x34], xmm0
cmp eax, 5
jne 0x1802617e0
movaps xmm0, xmm6
movaps xmm2, xmm4
movaps xmm1, xmm4
mov dword [rdi + 0x30], 0x3f800000
addss xmm2, xmm6
mulss xmm1, xmm9
divss xmm0, xmm2
addss xmm1, xmm6
movss dword [rdi + 0x34], xmm2
movss dword [rdi + 0x2c], xmm1
movss dword [rdi + 0x28], xmm0
movaps xmm0, xmm6
divss xmm0, xmm1
movss dword [rdi + 0x38], xmm0
cmp eax, 6
jne 0x18026183c
movaps xmm0, xmm6
movaps xmm1, xmm4
movaps xmm3, xmm4
mulss xmm1, xmm15
addss xmm3, xmm6
divss xmm0, xmm3
mulss xmm1, xmm14
movss dword [rdi + 0x3c], xmm3
movaps xmm2, xmm4
addss xmm1, xmm6
movss dword [rdi + 0x30], xmm1
movss dword [rdi + 0x28], xmm0
movaps xmm0, xmm6
divss xmm0, xmm1
mulss xmm2, xmm14
movaps xmm1, xmm6
addss xmm2, xmm6
movss dword [rdi + 0x2c], xmm2
movss dword [rdi + 0x34], xmm0
divss xmm1, xmm2
movss dword [rdi + 0x38], xmm1
cmp eax, 7
jne 0x18026189f
movaps xmm0, xmm6
movaps xmm3, xmm4
movaps xmm1, xmm4
mov dword [rdi + 0x34], 0x3f800000
addss xmm3, xmm6
mulss xmm1, xmm11
divss xmm0, xmm3
addss xmm1, xmm6
movss dword [rdi + 0x40], xmm3
movaps xmm2, xmm4
movss dword [rdi + 0x38], xmm1
mulss xmm2, xmm12
movss dword [rdi + 0x28], xmm0
movaps xmm0, xmm6
divss xmm0, xmm1
mulss xmm2, xmm11
addss xmm2, xmm6
movss dword [rdi + 0x2c], xmm2
movss dword [rdi + 0x30], xmm0
movaps xmm0, xmm6
divss xmm0, xmm2
movss dword [rdi + 0x3c], xmm0
cmp eax, 8
jne 0x18026191a
movaps xmm1, xmm4
movaps xmm3, xmm4
movaps xmm2, xmm4
mulss xmm4, xmm15
mulss xmm2, dword [0x1803936a8]
mulss xmm1, xmm7
mulss xmm4, xmm7
addss xmm3, xmm6
movss dword [rdi + 0x44], xmm3
movaps xmm0, xmm6
addss xmm1, xmm6
addss xmm4, xmm6
movss dword [rdi + 0x3c], xmm1
movss dword [rdi + 0x34], xmm4
divss xmm0, xmm3
mulss xmm2, xmm7
addss xmm2, xmm6
movss dword [rdi + 0x2c], xmm2
movss dword [rdi + 0x28], xmm0
movaps xmm0, xmm6
divss xmm0, xmm1
movaps xmm1, xmm6
divss xmm1, xmm2
movss dword [rdi + 0x30], xmm0
movaps xmm0, xmm6
divss xmm0, xmm4
movss dword [rdi + 0x40], xmm1
movss dword [rdi + 0x38], xmm0
movss xmm0, dword [rdi + 0x14]
movaps xmm1, xmm0
mulss xmm1, dword [rdi + 0x50]
addss xmm1, dword [rdi + 0x54]
comiss xmm1, xmm8
jb 0x180261bd1
mov rax, qword [rdi]
xor bpl, bpl
xor bl, bl
mov r10, qword [rax]
movaps xmm2, xmm8
cvttss2si eax, xmm1
cmp eax, 0x7fff
jl 0x180261962
mov rax, qword [0x180423050]
add rax, 0x3fff8
mov r8, rax
jmp 0x180261982
movd xmm0, eax
movsxd rcx, eax
mov rax, qword [0x180423050]
lea r8, [rax + rcx*8]
movaps xmm2, xmm1
cvtdq2ps xmm0, xmm0
subss xmm2, xmm0
lea rax, [r8 + 8]
movsxd r9, dword [r10 + 0x18]
movaps xmm1, xmm6
subss xmm1, xmm2
mulss xmm2, dword [rax]
mov rax, qword [0x180423048]
mulss xmm1, dword [r8]
addss xmm1, xmm2
test r9d, r9d
jne 0x1802619c4
movss xmm8, dword [rsp + 0x170]
mov dword [r10 + 0x14], r14d
mov rcx, qword [rax]
mov r11, qword [rcx]
mov r10, qword [rsp + 0x160]
jmp 0x180261a3f
movzx edx, byte [r8 + 4]
mov dword [r10 + 0x14], edx
mov rcx, qword [rax + r9*8]
mov r11, qword [rcx + rdx*8]
test edx, edx
jne 0x1802619fe
lea eax, [r9 - 3]
cmp eax, 3
jbe 0x1802619e8
cmp r9d, 1
jne 0x1802619fe
movss xmm8, dword [rsp + 0x170]
mov r10, qword [rsp + 0x160]
mov bl, 1
jmp 0x180261a3f
movzx eax, byte [r8 + 5]
cmp al, 0xff
jne 0x180261a0c
mov r10, r11
jmp 0x180261a3f
movzx eax, al
mov bpl, 1
movd xmm8, eax
cvtdq2ps xmm8, xmm8
mulss xmm8, dword [0x180393044]
comiss xmm8, xmm9
jbe 0x180261a31
mov r10, qword [rcx + rdx*8 + 8]
jmp 0x180261a3f
mov r10, qword [rcx + rdx*8 - 8]
subss xmm6, xmm8
movaps xmm8, xmm6
cmp dword [rdi + 0xc], 0
mov r9d, r14d
jle 0x180261a92
mov rdx, r14
lea r8, [rdi + 0x28]
nop
mov rax, qword [rdi]
movaps xmm0, xmm1
inc r9d
mov rcx, qword [rdx + rax]
lea r8, [r8 + 4]
lea rdx, [rdx + 8]
mulss xmm0, dword [r8 - 4]
mulss xmm0, xmm10
mov qword [rcx + 0x20], r11
mov qword [rcx + 0x30], r10
mov byte [rcx + 0x3d], bl
movss dword [rcx + 0x38], xmm8
cvttss2si eax, xmm0
mov dword [rcx + 0x4c], eax
mov byte [rcx + 0x3c], bpl
cmp r9d, dword [rdi + 0xc]
jl 0x180261a50
mov rbp, qword [rsp + 0x160]
mov r10d, dword [rsp + 0x170]
mov r15, qword [rsi + 0xe0]
mov r8d, r14d
test r10d, r10d
jle 0x180261b26
cmp r10d, 4
jb 0x180261b26
lea eax, [r10 - 1]
movsxd rcx, eax
lea rax, [rcx*4]
lea rdx, [r12 + rcx*4]
add rax, r13
cmp r12, rax
ja 0x180261ad7
cmp rdx, r13
jae 0x180261b26
mov eax, r10d
and eax, 0x80000003
jge 0x180261ae8
dec eax
or eax, 0xfffffffc
inc eax
mov ecx, r10d
sub ecx, eax
nop dword [rax]
add r8d, 4
cmp r8d, ecx
jl 0x180261af0
lea eax, [rcx + 3]
mov rdi, r13
cdq
and edx, 3
add eax, edx
sar eax, 2
movsxd rdx, eax
xor eax, eax
shl rdx, 4
mov rcx, rdx
shr rcx, 2
shr rdx, 2
rep stosd dword [rdi], eax
mov rdi, r12
mov rcx, rdx
rep stosd dword [rdi], eax
movsxd rdi, r8d
movsxd rcx, r10d
cmp rdi, rcx
jge 0x180261b50
mov rdx, r13
lea rax, [r12 + rdi*4]
sub rdx, r12
sub rcx, rdi
nop
mov dword [rdx + rax], r14d
mov dword [rax], r14d
lea rax, [rax + 4]
dec rcx
jne 0x180261b40
cmp dword [r15 + 0xc], 0
mov ebx, r14d
jle 0x180261b9e
lea rdi, [r15 + 0x5c]
nop
mov rcx, qword [r15]
movss xmm0, dword [rdi + 0x20]
movss xmm3, dword [rdi]
mov dword [rsp + 0x28], r10d
mov r8, r13
mov rdx, r12
mov rcx, qword [r14 + rcx]
movss dword [rsp + 0x20], xmm0
call fcn.18008b6f0
mov r10d, dword [rsp + 0x170]
inc ebx
lea rdi, [rdi + 4]
lea r14, [r14 + 8]
cmp ebx, dword [r15 + 0xc]
jl 0x180261b60
mov rax, qword [rsp + 0x178]
mov r9, qword [rsp + 0x68]
mov rcx, qword [rsi + 0xe0]
mov dword [rsp + 0x30], r10d
mov qword [rsp + 0x28], rax
mov r8, r13
mov rdx, r12
mov qword [rsp + 0x20], rbp
call fcn.18008c190
jmp 0x180261d04
mulss xmm0, dword [0x1803936ec]
movaps xmm1, xmm0
movaps xmm0, xmm12
call fcn.180291d20
cmp dword [rdi + 0xc], 0
mov r9d, r14d
movaps xmm1, xmm0
mulss xmm1, dword [rdi + 0x4c]
jle 0x180261a9a
mov rbx, qword [0x180423048]
mov r10, r14
lea r11, [rdi + 0x28]
nop dword [rax + rax]
mov rax, qword [rdi]
movaps xmm0, xmm1
mulss xmm0, dword [r11]
mov rdx, qword [r10 + rax]
movsxd r8, dword [rdx + 0x18]
mulss xmm0, dword [rdx + 0xc]
mov dword [rdx + 0x14], r14d
cvttss2si eax, xmm0
mov dword [rdx + 0x4c], eax
mov rcx, qword [rbx + r8*8]
mov rax, qword [rcx]
mov qword [rdx + 0x20], rax
lea eax, [r8 - 3]
cmp eax, 3
jbe 0x180261c50
mov eax, r14d
cmp r8d, 1
jne 0x180261c55
mov eax, 1
inc r9d
mov byte [rdx + 0x3d], al
add r11, 4
add r10, 8
cmp r9d, dword [rdi + 0xc]
jl 0x180261c10
jmp 0x180261a9a
cmp eax, 0xa
jne 0x180261c86
mov edx, dword [rsi + 0x40]
mov r8d, r10d
mov rcx, rsi
call fcn.18008dd80
jmp 0x180261d04
cmp eax, 0xc
jne 0x180261c9b
mov edx, dword [rsi + 0x40]
mov r8d, r10d
mov rcx, rsi
call fcn.18008e420
jmp 0x180261d04
cmp eax, 2
jne 0x180261d04
mov edi, dword [rsi + 0xf0]
test edi, edi
jg 0x180261cb8
mov rax, qword [rsi]
mov rcx, rsi
mov dword [rsi + 0x30], ebp
call qword [rax + 0x30]
jmp 0x180261d04
movsxd rcx, dword [rsi + 0x40]
mov rax, qword [rsi + 0xc8]
cmp edi, r10d
lea rdx, [rax + rcx*4]
mov rax, qword [rsi + 0xd0]
cmovl r10d, edi
sub edi, r10d
lea rax, [rax + rcx*4]
mov dword [rsi + 0xf0], edi
test r10d, r10d
jle 0x180261d04
nop word [rax + rax]
mov dword [rax], ebp
dec r10d
mov dword [rdx], ebp
lea rdx, [rdx + 4]
lea rax, [rax + 4]
test r10d, r10d
jg 0x180261cf0
cmp dword [rsi + 0x30], 0
movaps xmm15, xmmword [rsp + 0x70]
movaps xmm14, xmmword [rsp + 0x80]
mov r15, qword [rsp + 0x118]
mov r14, qword [rsp + 0x120]
mov r13, qword [rsp + 0x128]
movaps xmm13, xmmword [rsp + 0x90]
movaps xmm12, xmmword [rsp + 0xa0]
movaps xmm11, xmmword [rsp + 0xb0]
mov r12, qword [rsp + 0x130]
mov rdi, qword [rsp + 0x138]
mov rbp, qword [rsp + 0x140]
movaps xmm10, xmmword [rsp + 0xc0]
movaps xmm9, xmmword [rsp + 0xd0]
movaps xmm8, xmmword [rsp + 0xe0]
mov rbx, qword [rsp + 0x148]
mov qword [rsi + 0x28], 0
movaps xmm7, xmmword [rsp + 0xf0]
movaps xmm6, xmmword [rsp + 0x100]
jne 0x180261da8
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + 0x30]
add rsp, 0x150
pop rsi
ret