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

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rdi
push rbp
lea rbp, [rax - 0x78]
sub rsp, 0x170
movaps xmmword [rax - 0x18], xmm6
movaps xmmword [rax - 0x28], xmm7
movaps xmmword [rax - 0x38], xmm8
movaps xmmword [rax - 0x48], xmm9
movaps xmmword [rax - 0x58], xmm10
movaps xmmword [rax - 0x68], xmm11
movaps xmmword [rax - 0x78], xmm12
movaps xmmword [rax - 0x88], xmm13
movaps xmmword [rax - 0x98], xmm14
mov rax, qword [0x18008f2c0]
xor rax, rsp
mov qword [rbp - 0x30], rax
movaps xmm7, xmm1
mov rdi, rcx
call fcn.18000cfd0
mov edx, dword [rax + 0xcc]
dec edx
cmp edx, 1
ja 0x180039500
call fcn.18000cfd0
mov rbx, rax
lea rax, [rsp + 0x30]
mov qword [rsp + 0x20], rax
xor r8d, r8d
mov qword [rsp + 0x68], r8
mov rcx, qword [rbx + 0x40]
test rcx, rcx
je 0x18003901b
mov rdx, qword [rcx]
mov r8, qword [rdx]
lea rdx, [rsp + 0x30]
call r8
mov r8, rax
mov qword [rsp + 0x68], rax
lea rax, [rsp + 0x70]
mov qword [rsp + 0x20], rax
xor r9d, r9d
mov qword [rbp - 0x58], r9
mov rcx, qword [rbx + 0x80]
test rcx, rcx
je 0x18003904e
mov rax, qword [rcx]
lea rdx, [rsp + 0x70]
call qword [rax]
mov r9, rax
mov qword [rbp - 0x58], rax
mov r8, qword [rsp + 0x68]
movups xmm0, xmmword [rbx + 0x88]
movaps xmmword [rbp - 0x50], xmm0
mov ecx, dword [rbx + 0x98]
mov dword [rbp - 0x40], ecx
movzx ecx, word [rbx + 0x9c]
mov word [rbp - 0x3c], cx
movzx ecx, byte [rbx + 0x9e]
mov byte [rbp - 0x3a], cl
movzx eax, byte [rbx + 0x9f]
mov byte [rbp - 0x39], al
movzx eax, byte [rbx + 0xa0]
mov byte [rbp - 0x38], al
test cl, cl
je 0x1800394c1
call fcn.18000cfd0
movzx edx, word [rbp - 0x3c]
movzx ecx, dx
shr cx, 0xf
test cl, cl
je 0x1800390b1
movss xmm7, dword [rax + 0xb4]
jmp 0x1800390c2
shr dx, 0xe
test dl, 1
je 0x1800390c2
movss xmm7, dword [rax + 0xb8]
movsx edx, word [rbp - 0x44]
mov eax, edx
neg eax
cmovs eax, edx
movss xmm14, dword [0x18008362c]
movss xmm12, dword [0x18008363c]
movss xmm13, dword [0x180083584]
xorps xmm10, xmm10
movsx ecx, word [rbp - 0x42]
cmp eax, 0x21f1
jg 0x18003910e
mov eax, ecx
neg eax
cmovs eax, ecx
cmp eax, 0x21f1
jg 0x18003910e
xorps xmm8, xmm8
xorps xmm6, xmm6
jmp 0x18003915a
movd xmm8, edx
cvtdq2ps xmm8, xmm8
divss xmm8, xmm14
cmp byte [rbp - 0x38], 0
je 0x180039128
movaps xmm0, xmm12
jmp 0x18003912c
movaps xmm0, xmm13
movd xmm6, ecx
cvtdq2ps xmm6, xmm6
mulss xmm6, xmm0
divss xmm6, xmm14
minss xmm8, xmm13
comiss xmm8, xmm12
ja 0x18003914b
movaps xmm8, xmm12
minss xmm6, xmm13
comiss xmm6, xmm12
ja 0x18003915a
movaps xmm6, xmm12
mulss xmm6, xmm7
movss xmm9, dword [rdi + 0x1c]
call fcn.18000cfd0
cmp byte [rax + 0xb0], 0
je 0x18003917a
xorps xmm9, xmmword [0x1800839e0]
call fcn.18000cfd0
mulss xmm6, dword [rax + 0xc4]
mulss xmm6, xmm9
addss xmm6, dword [rdi + 0x10]
movss xmm11, dword [0x180083644]
movss xmm9, dword [0x1800835c0]
comiss xmm6, xmm9
jbe 0x1800391bb
nop dword [rax]
addss xmm6, xmm11
comiss xmm6, xmm9
ja 0x1800391b0
comiss xmm10, xmm6
jbe 0x1800391cc
addss xmm6, xmm9
comiss xmm10, xmm6
ja 0x1800391c1
movss dword [rdi + 0x10], xmm6
mulss xmm8, xmm7
call fcn.18000cfd0
mulss xmm8, dword [rax + 0xc4]
addss xmm8, dword [rdi + 0xc]
comiss xmm8, xmm9
jbe 0x1800391fb
addss xmm8, xmm11
comiss xmm8, xmm9
ja 0x1800391f0
comiss xmm10, xmm8
jbe 0x18003920c
addss xmm8, xmm9
comiss xmm10, xmm8
ja 0x180039201
movss dword [rdi + 0xc], xmm8
movsx edx, word [rbp - 0x48]
mov eax, edx
neg eax
cmovs eax, edx
movsx ecx, word [rbp - 0x46]
cmp eax, 0x21f1
jg 0x180039240
mov eax, ecx
neg eax
cmovs eax, ecx
cmp eax, 0x21f1
jg 0x180039240
movaps xmm8, xmm10
movaps xmm6, xmm10
jmp 0x18003928c
movd xmm8, edx
cvtdq2ps xmm8, xmm8
divss xmm8, xmm14
cmp byte [rbp - 0x39], 0
je 0x18003925a
movaps xmm0, xmm12
jmp 0x18003925e
movaps xmm0, xmm13
movd xmm6, ecx
cvtdq2ps xmm6, xmm6
mulss xmm6, xmm0
divss xmm6, xmm14
minss xmm8, xmm13
comiss xmm8, xmm12
ja 0x18003927d
movaps xmm8, xmm12
minss xmm6, xmm13
comiss xmm6, xmm12
ja 0x18003928c
movaps xmm6, xmm12
movss xmm0, dword [0x18008361c]
movzx eax, byte [rbp - 0x4a]
cmp al, 0x1e
jbe 0x1800392ac
movd xmm12, eax
cvtdq2ps xmm12, xmm12
divss xmm12, xmm0
jmp 0x1800392b0
movaps xmm12, xmm10
movzx eax, byte [rbp - 0x49]
cmp al, 0x1e
jbe 0x1800392c8
movd xmm13, eax
cvtdq2ps xmm13, xmm13
divss xmm13, xmm0
jmp 0x1800392cc
movaps xmm13, xmm10
call fcn.18000cfd0
mov rbx, rax
call fcn.18000cfd0
subss xmm12, xmm13
mulss xmm12, xmm7
mulss xmm12, dword [rax + 0xc0]
mulss xmm12, dword [rbx + 0xbc]
addss xmm12, dword [rdi + 4]
movss dword [rdi + 4], xmm12
mov byte [rdi + 0x18], 1
mulss xmm6, xmm7
call fcn.18000cfd0
mulss xmm6, dword [rax + 0xc0]
addss xmm6, dword [rdi + 8]
movss dword [rdi + 8], xmm6
mov byte [rdi + 0x18], 1
mulss xmm8, xmm7
call fcn.18000cfd0
mulss xmm8, dword [rax + 0xc0]
movss xmm0, dword [rdi]
subss xmm0, xmm8
movss dword [rdi], xmm0
mov byte [rdi + 0x18], 1
movzx eax, byte [rbp - 0x3c]
shr al, 2
test al, 1
je 0x180039391
call fcn.18000cfd0
movaps xmm0, xmm7
mulss xmm0, dword [rax + 0xc4]
addss xmm0, dword [rdi + 0x14]
comiss xmm0, xmm9
jbe 0x18003937b
nop
addss xmm0, xmm11
comiss xmm0, xmm9
ja 0x180039370
comiss xmm10, xmm0
jbe 0x18003938c
addss xmm0, xmm9
comiss xmm10, xmm0
ja 0x180039381
movss dword [rdi + 0x14], xmm0
movzx eax, byte [rbp - 0x3c]
shr al, 3
test al, 1
je 0x1800393e1
call fcn.18000cfd0
xorps xmm7, xmmword [0x1800839e0]
mulss xmm7, dword [rax + 0xc4]
addss xmm7, dword [rdi + 0x14]
comiss xmm7, xmm9
jbe 0x1800393cb
nop dword [rax + rax]
addss xmm7, xmm11
comiss xmm7, xmm9
ja 0x1800393c0
comiss xmm10, xmm7
jbe 0x1800393dc
addss xmm7, xmm9
comiss xmm10, xmm7
ja 0x1800393d1
movss dword [rdi + 0x14], xmm7
movzx eax, word [rbp - 0x3c]
shr ax, 0xd
test al, 1
je 0x18003941f
mov rax, qword [0x180092ed0]
test rax, rax
je 0x180039406
movss xmm0, dword [0x18009672c]
movss dword [rax + 0xc], xmm0
mov rax, qword [0x180092ec8]
test rax, rax
je 0x18003941f
movss xmm0, dword [0x180096730]
movss dword [rax + 0x3c], xmm0
test byte [rbp - 0x3c], 1
je 0x18003946d
call fcn.18000cfd0
movss xmm1, dword [rax + 0xc8]
xorps xmm1, xmmword [0x1800839e0]
mov rax, qword [0x180092ed0]
test rax, rax
je 0x180039453
movss xmm0, dword [rax + 0xc]
subss xmm0, xmm1
movss dword [rax + 0xc], xmm0
mov rax, qword [0x180092ec8]
test rax, rax
je 0x18003946d
movss xmm0, dword [rax + 0x3c]
subss xmm0, xmm1
movss dword [rax + 0x3c], xmm0
movzx eax, byte [rbp - 0x3c]
shr al, 1
test al, 1
je 0x1800394b8
call fcn.18000cfd0
movss xmm1, dword [rax + 0xc8]
mov rax, qword [0x180092ed0]
test rax, rax
je 0x18003949e
movss xmm0, dword [rax + 0xc]
subss xmm0, xmm1
movss dword [rax + 0xc], xmm0
mov rax, qword [0x180092ec8]
test rax, rax
je 0x1800394b8
movss xmm0, dword [rax + 0x3c]
subss xmm0, xmm1
movss dword [rax + 0x3c], xmm0
mov r8, qword [rsp + 0x68]
mov r9, qword [rbp - 0x58]
test r9, r9
je 0x1800394e7
mov rax, qword [r9]
lea rcx, [rsp + 0x70]
cmp r9, rcx
setne dl
mov rcx, r9
call qword [rax + 0x20]
mov qword [rbp - 0x58], 0
mov r8, qword [rsp + 0x68]
test r8, r8
je 0x180039500
mov rax, qword [r8]
lea rcx, [rsp + 0x30]
cmp r8, rcx
setne dl
mov rcx, r8
call qword [rax + 0x20]
mov rcx, qword [rbp - 0x30]
xor rcx, rsp
call fcn.1800408b0
lea r11, [rsp + 0x170]
mov rbx, qword [r11 + 0x18]
mov rdi, qword [r11 + 0x20]
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]
mov rsp, r11
pop rbp
ret