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

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
push rbp
push r14
push r15
lea rbp, [rax - 0xa8]
sub rsp, 0x190
movaps xmmword [rax - 0x28], xmm6
movaps xmmword [rax - 0x38], xmm7
movaps xmmword [rax - 0x48], xmm8
movaps xmmword [rax - 0x58], xmm9
movaps xmmword [rax - 0x68], xmm10
movaps xmmword [rax - 0x78], xmm11
movaps xmmword [rax - 0x88], xmm12
movaps xmmword [rax - 0x98], xmm13
movaps xmmword [rax - 0xa8], xmm14
movaps xmmword [rax - 0xb8], xmm15
mov rax, qword [0x180051040]
xor rax, rsp
mov qword [rbp - 0x20], rax
xor r15d, r15d
call fcn.180001a40
xorps xmm6, xmm6
cmp byte [rax + 0x34], r15b
je 0x180001415
cmp qword [0x180051e48], r15
je 0x1800019c3
mov esi, r15d
call fcn.180001a40
mov rcx, qword [rax + 0x40]
sub rcx, qword [rax + 0x38]
sar rcx, 3
test rcx, rcx
je 0x180001415
mov edi, r15d
nop
call fcn.180001a40
mov rax, qword [rax + 0x38]
mov rbx, qword [rdi + rax]
test rbx, rbx
je 0x1800013f2
lea rdx, [rbp - 0x80]
mov rcx, rbx
call fcn.18003a030
movsd xmm0, qword [rax]
movsd qword [rsp + 0x40], xmm0
mov eax, dword [rax + 8]
mov dword [rsp + 0x48], eax
mov qword [rsp + 0x30], 0
cmp qword [0x180051e60], 0
je 0x180001354
lea r8, [rsp + 0x30]
lea rdx, [rsp + 0x40]
call fcn.18003acd0
movss xmm7, dword [rsp + 0x30]
movss xmm8, dword [rsp + 0x34]
jmp 0x18000135b
movaps xmm7, xmm6
movaps xmm8, xmm6
movaps xmm0, xmmword [0x180049290]
movups xmmword [rsp + 0x50], xmm0
lea rcx, [rsp + 0x50]
call fcn.180004fc0
mov r14d, eax
lea rdx, [rbp - 0x50]
mov rcx, rbx
call fcn.180039b30
nop
movss dword [rsp + 0x38], xmm7
movss dword [rsp + 0x3c], xmm8
mov rcx, qword [0x180051e80]
add rcx, 0x1d40
cmp qword [rax + 0x18], 0xf
jbe 0x1800013a6
mov rax, qword [rax]
mov r9, rax
mov r8d, r14d
lea rdx, [rsp + 0x38]
call fcn.180022d40
nop
mov rdx, qword [rbp - 0x38]
cmp rdx, 0xf
jbe 0x1800013f2
inc rdx
mov rcx, qword [rbp - 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800013ed
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180001502
call fcn.18003d078
inc esi
add rdi, 8
call fcn.180001a40
mov rcx, qword [rax + 0x40]
sub rcx, qword [rax + 0x38]
sar rcx, 3
movsxd rax, esi
cmp rax, rcx
jb 0x1800012f0
cmp qword [0x180051e48], 0
je 0x1800019c3
cmp qword [0x180051da0], 0
je 0x1800019c3
cmp qword [0x180051d98], 0
je 0x1800019c3
cmp qword [0x180051e60], 0
je 0x1800019c3
mov r14d, r15d
call fcn.180001a40
mov rcx, qword [rax + 0x58]
sub rcx, qword [rax + 0x50]
sar rcx, 3
test rcx, rcx
je 0x180001969
mov rsi, r15
movss xmm12, dword [0x18004908c]
movss xmm11, dword [0x1800490e4]
movss xmm13, dword [0x180049108]
movss xmm14, dword [0x180049128]
movss xmm15, dword [0x180049118]
nop word [rax + rax]
call fcn.180001a40
mov rax, qword [rax + 0x50]
mov rbx, qword [rsi + rax]
test rbx, rbx
je 0x180001945
lea rdx, [rbp - 0x70]
mov rcx, rbx
call fcn.18003a030
movsd xmm0, qword [rbp - 0x70]
movsd qword [rbp - 0x80], xmm0
mov eax, dword [rbp - 0x68]
mov dword [rbp - 0x78], eax
mov qword [rsp + 0x30], 0
cmp qword [0x180051e60], 0
je 0x180001509
lea r8, [rsp + 0x30]
lea rdx, [rbp - 0x80]
call fcn.18003acd0
movss xmm8, dword [rsp + 0x30]
movss xmm7, dword [rsp + 0x34]
jmp 0x180001510
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
movaps xmm8, xmm6
movaps xmm7, xmm6
lea rdx, [rbp - 0x30]
mov rcx, rbx
call fcn.18003a030
movsd xmm1, qword [rax]
movss xmm2, dword [0x180051e50]
subss xmm2, xmm1
movss xmm3, dword [0x180051e54]
movaps xmm0, xmm1
shufps xmm0, xmm0, 0x55
movsd qword [rsp + 0x50], xmm1
subss xmm3, xmm0
movss xmm1, dword [0x180051e58]
subss xmm1, dword [rax + 8]
mulss xmm3, xmm3
mulss xmm2, xmm2
addss xmm3, xmm2
mulss xmm1, xmm1
addss xmm3, xmm1
xorps xmm0, xmm0
ucomiss xmm0, xmm3
ja 0x180001577
xorps xmm0, xmm0
sqrtss xmm0, xmm3
jmp 0x18000157f
movaps xmm0, xmm3
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
mulss xmm0, xmm12
movaps xmm10, xmm11
maxss xmm10, xmm0
divss xmm10, xmm13
mov qword [rsp + 0x40], 0
mov dword [rsp + 0x48], 0
lea r8, [rsp + 0x40]
mov rdx, rbx
call fcn.18003a990
movzx edi, al
call fcn.180001a40
cmp byte [rax + 1], 0
je 0x180001945
call fcn.180001a40
movss xmm0, dword [rax + 8]
comiss xmm0, xmm10
jbe 0x180001945
call fcn.180001a40
test dil, dil
je 0x1800015e6
add rax, 0xc
jmp 0x1800015ea
add rax, 0x1c
movups xmm9, xmmword [rax]
movups xmmword [rbp - 0x60], xmm9
call fcn.180001a40
cmp byte [rax + 2], 0
je 0x180001678
ucomiss xmm8, xmm6
jp 0x18000160d
jne 0x18000160d
ucomiss xmm7, xmm6
jp 0x18000160d
je 0x180001678
call fcn.180001a40
mov edi, dword [rax + 0x88]
call fcn.180001a40
movd xmm1, dword [rax + 0x8c]
cvtdq2ps xmm1, xmm1
comiss xmm6, xmm8
jae 0x18000163d
comiss xmm8, xmm1
ja 0x18000163d
movd xmm0, edi
cvtdq2ps xmm0, xmm0
jmp 0x18000164e
comiss xmm6, xmm7
jae 0x180001678
movd xmm0, edi
cvtdq2ps xmm0, xmm0
comiss xmm7, xmm0
ja 0x180001678
comiss xmm6, xmm8
jae 0x180001678
comiss xmm8, xmm1
ja 0x180001678
comiss xmm6, xmm7
jae 0x180001678
comiss xmm7, xmm0
ja 0x180001678
movdqa xmmword [rsp + 0x50], xmm9
lea rdx, [rsp + 0x50]
mov rcx, rbx
call fcn.180002070
call fcn.180001a40
cmp byte [rax + 3], 0
je 0x180001782
ucomiss xmm8, xmm6
jp 0x18000169a
jne 0x18000169a
ucomiss xmm7, xmm6
jp 0x18000169a
je 0x180001782
call fcn.180001a40
mov ebx, dword [rax + 0x88]
call fcn.180001a40
movd xmm1, dword [rax + 0x8c]
cvtdq2ps xmm1, xmm1
comiss xmm6, xmm8
jae 0x1800016ca
comiss xmm8, xmm1
ja 0x1800016ca
movd xmm0, ebx
cvtdq2ps xmm0, xmm0
jmp 0x1800016e3
comiss xmm6, xmm7
jae 0x180001782
movd xmm0, ebx
cvtdq2ps xmm0, xmm0
comiss xmm7, xmm0
ja 0x180001782
comiss xmm6, xmm8
jae 0x180001782
comiss xmm8, xmm1
ja 0x180001782
comiss xmm6, xmm7
jae 0x180001782
comiss xmm7, xmm0
ja 0x180001782
lea rcx, [rbp - 0x60]
call fcn.180004fc0
mov edi, eax
movss dword [rsp + 0x38], xmm8
movss dword [rsp + 0x3c], xmm7
mov rbx, qword [0x180051e80]
test eax, 0xff000000
je 0x180001782
mov dword [rsp + 0x28], 0x77
movss dword [rsp + 0x20], xmm14
movaps xmm3, xmm6
movaps xmm2, xmm15
lea rdx, [rsp + 0x38]
lea rcx, [rbx + 0x1d40]
call fcn.180022080
movss dword [rsp + 0x28], xmm11
mov byte [rsp + 0x20], 1
mov r9d, edi
mov r8d, dword [rbx + 0x1dc0]
mov rdx, qword [rbx + 0x1dc8]
lea rcx, [rbx + 0x1d40]
call fcn.180020a40
mov dword [rbx + 0x1dc0], r15d
call fcn.180001a40
cmp byte [rax + 4], 0
je 0x180001945
ucomiss xmm8, xmm6
jp 0x1800017a4
jne 0x1800017a4
ucomiss xmm7, xmm6
jp 0x1800017a4
je 0x180001945
call fcn.180001a40
mov ebx, dword [rax + 0x88]
call fcn.180001a40
movd xmm1, dword [rax + 0x8c]
cvtdq2ps xmm1, xmm1
comiss xmm6, xmm8
jae 0x1800017d4
comiss xmm8, xmm1
ja 0x1800017d4
movd xmm0, ebx
cvtdq2ps xmm0, xmm0
jmp 0x1800017e5
comiss xmm6, xmm7
jae 0x1800017fe
movd xmm0, ebx
cvtdq2ps xmm0, xmm0
comiss xmm7, xmm0
ja 0x1800017fe
comiss xmm6, xmm8
jae 0x1800017fe
comiss xmm8, xmm1
ja 0x1800017fe
comiss xmm6, xmm7
jae 0x1800017fe
comiss xmm7, xmm0
mov eax, r15d
jbe 0x180001803
mov eax, 1
test eax, eax
jne 0x180001945
movaps xmm0, xmmword [0x180049290]
movups xmmword [rbp - 0x60], xmm0
lea rcx, [rbp - 0x60]
call fcn.180004fc0
mov ebx, eax
cvttss2si edx, xmm10
lea rcx, [rbp - 0x50]
call fcn.180001c80
nop
mov r8d, 1
lea rdx, [0x18003f708]
lea rcx, [rbp - 0x50]
call fcn.180001bc0
xorps xmm0, xmm0
movups xmmword [rsp + 0x50], xmm0
mov qword [rsp + 0x60], r15
mov qword [rsp + 0x68], r15
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x50], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x60], xmm1
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
addss xmm7, dword [0x18004912c]
movss dword [rsp + 0x70], xmm8
movss dword [rsp + 0x74], xmm7
mov rcx, qword [0x180051e80]
add rcx, 0x1d40
lea r9, [rsp + 0x50]
cmp qword [rsp + 0x68], 0xf
cmova r9, qword [rsp + 0x50]
mov r8d, ebx
lea rdx, [rsp + 0x70]
call fcn.180022d40
nop
mov rdx, qword [rsp + 0x68]
cmp rdx, 0xf
jbe 0x1800018f7
inc rdx
mov rcx, qword [rsp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800018f2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180001a24
call fcn.18003d078
mov qword [rsp + 0x60], r15
mov qword [rsp + 0x68], 0xf
mov byte [rsp + 0x50], 0
mov rdx, qword [rbp - 0x38]
cmp rdx, 0xf
jbe 0x180001945
inc rdx
mov rcx, qword [rbp - 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180001940
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180001a2b
call fcn.18003d078
inc r14d
add rsi, 8
call fcn.180001a40
mov rcx, qword [rax + 0x58]
sub rcx, qword [rax + 0x50]
sar rcx, 3
movsxd rax, r14d
cmp rax, rcx
jb 0x1800014a0
call fcn.180001a40
cmp byte [rax + 0x2c], 0
je 0x18000199b
mov rax, qword [0x180051da0]
mov rcx, qword [rax + 0xc70]
test rcx, rcx
je 0x18000199b
movss xmm0, dword [rcx + 0x2fc]
comiss xmm0, xmm6
jbe 0x18000199b
mov dword [rcx + 0x2fc], r15d
call fcn.180001a40
cmp byte [rax + 0x2d], 0
je 0x1800019c3
mov rax, qword [0x180051da0]
mov rcx, qword [rax + 0xc48]
test rcx, rcx
je 0x1800019c3
mov dword [rcx + 0xc0], 0x497423f0
mov rcx, qword [rbp - 0x20]
xor rcx, rsp
call fcn.18003cbc0
lea r11, [rsp + 0x190]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x30]
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 rbp
ret
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]
int3