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

Disassembly:
mov r11, rsp
push rbp
push rdi
push r13
push r14
push r15
lea rbp, [r11 - 0x78]
sub rsp, 0x150
mov rax, qword [0x140184c80]
xor rax, rsp
mov qword [rbp - 0x68], rax
test byte [rcx + 0xc], 0x42
mov r13d, r9d
mov r14, qword [rbp + 0xa0]
mov rdi, rcx
mov r15, qword [0x1401bac18]
mov qword [rsp + 0x70], r14
mov qword [rsp + 0x68], r8
mov qword [rsp + 0x40], rdx
jne 0x14002d422
cmp byte [rcx + 0xe8], 0
jg 0x14002d422
cmp byte [rcx + 0xe9], 0
jg 0x14002d422
cmp byte [rcx + 0xd0], 0
je 0x14002d422
movss xmm1, dword [r15 + 0x1a80]
movss xmm0, dword [rcx + 0x88]
movaps xmm2, xmm1
mulss xmm1, dword [0x1400cb00c]
mov qword [r11 + 0x20], rbx
mulss xmm2, dword [0x1400cb058]
mov qword [r11 - 0x30], rsi
movzx esi, byte [r15 + 0xd3]
movaps xmmword [r11 - 0x58], xmm7
movaps xmmword [r11 - 0x68], xmm8
xorps xmm8, xmm8
movaps xmmword [r11 - 0x78], xmm9
movaps xmmword [r11 - 0x98], xmm11
movaps xmmword [r11 - 0xa8], xmm12
movaps xmmword [r11 - 0xb8], xmm13
xorps xmm13, xmm13
movaps xmmword [r11 - 0xc8], xmm14
movss xmm14, dword [0x1400ca424]
movaps xmmword [r11 - 0xd8], xmm15
addss xmm0, xmm14
mov byte [rsp + 0x30], 0
mov byte [rsp + 0x7a], sil
addss xmm0, xmm1
maxss xmm2, xmm0
xorps xmm0, xmm0
cvttss2si eax, xmm2
cvtsi2ss xmm0, eax
mulss xmm0, dword [0x1400cb038]
cvttss2si eax, xmm0
cvtsi2ss xmm8, eax
movss dword [rbp - 0x80], xmm8
test sil, sil
je 0x14002cb5d
movss xmm15, dword [0x1400cb080]
jmp 0x14002cb61
xorps xmm15, xmm15
test dword [r15 + 0xc], 0x800
movss xmm11, dword [0x1400cb0bc]
movaps xmm7, xmm11
movss dword [rsp + 0x38], xmm11
movss dword [rsp + 0x48], xmm7
movaps xmm9, xmm11
mov dword [rsp + 0x4c], 0x7f7fffff
mov dword [rsp + 0x3c], 0x7f7fffff
je 0x14002cbaf
mov eax, dword [rcx + 0x40]
cmp dword [r15 + 0x138], eax
jne 0x14002cbaf
mov rax, qword [rcx + 0x38]
test byte [rax + 4], 8
jne 0x14002cbf4
mov rax, qword [rcx + 0x38]
movss xmm3, dword [rax + 8]
movss xmm0, dword [rax + 0xc]
movaps xmm1, xmm3
addss xmm1, dword [rax + 0x10]
shufps xmm3, xmm3, 0xe1
movaps xmm2, xmm0
addss xmm2, dword [rax + 0x14]
movss xmm3, xmm0
shufps xmm3, xmm3, 0xc6
movss xmm3, xmm1
shufps xmm3, xmm3, 0x27
movss xmm3, xmm2
shufps xmm3, xmm3, 0x39
movups xmmword [rbp - 0x78], xmm3
movups xmmword [rcx + 0x290], xmm3
mov dword [rcx + 0x18c], 1
lea rcx, str.RESIZE
mov qword [rsp + 0x140], r12
movaps xmmword [rsp + 0x130], xmm6
call fcn.140024fa0
movss xmm12, dword [0x1400cb0c8]
xor ebx, ebx
test r13d, r13d
jle 0x14002cfa5
mov r12, r14
movaps xmmword [rsp + 0xf0], xmm10
lea rsi, [0x14011a494]
movss xmm0, dword [rdi + 0x50]
movss xmm1, dword [rdi + 0x54]
movaps xmm3, xmm0
addss xmm3, dword [rdi + 0x58]
movaps xmm2, xmm1
addss xmm2, dword [rdi + 0x5c]
subss xmm3, xmm0
subss xmm2, xmm1
mulss xmm3, dword [rsi - 4]
mulss xmm2, dword [rsi]
addss xmm3, xmm0
movss xmm0, dword [rsi + 4]
movaps xmm5, xmm0
mulss xmm0, xmm15
addss xmm2, xmm1
mulss xmm5, xmm8
movss xmm1, dword [rsi + 8]
movaps xmm4, xmm1
mulss xmm1, xmm15
addss xmm5, xmm3
mulss xmm4, xmm8
subss xmm3, xmm0
addss xmm4, xmm2
subss xmm2, xmm1
movss dword [rbp - 0x70], xmm5
comiss xmm3, xmm5
movss dword [rbp - 0x78], xmm3
movss dword [rbp - 0x74], xmm2
movss dword [rbp - 0x6c], xmm4
jbe 0x14002cccb
movss dword [rbp - 0x78], xmm5
movss dword [rbp - 0x70], xmm3
comiss xmm2, xmm4
jbe 0x14002ccda
movss dword [rbp - 0x74], xmm4
movss dword [rbp - 0x6c], xmm2
mov edx, ebx
mov rcx, rdi
call fcn.14001cd10
lea r9, [rsp + 0x79]
mov dword [rsp + 0x20], 0x40800
lea r8, [rsp + 0x78]
mov edx, eax
lea rcx, [rbp - 0x78]
call fcn.140049e60
movzx edx, byte [rsp + 0x78]
movzx ecx, byte [rsp + 0x79]
test dl, dl
jne 0x14002cd17
test cl, cl
je 0x14002cf28
mov eax, ebx
not eax
and eax, 1
add eax, 5
mov dword [r15 + 0x20d0], eax
test cl, cl
je 0x14002cf28
cmp byte [r15 + 0x41d], 0
je 0x14002cdf6
test ebx, ebx
jne 0x14002cdf6
mov r8, qword [rsp + 0x40]
lea rcx, [rsp + 0x50]
mov rdx, rdi
call fcn.1400112e0
mov rdx, qword [0x1401bac18]
mov byte [rsp + 0x30], 1
movss xmm9, dword [rax]
movss xmm0, dword [rax + 4]
mov ecx, dword [rdx + 0x1d6c]
test ecx, ecx
movss dword [rsp + 0x38], xmm9
setne al
movss dword [rsp + 0x3c], xmm0
mov byte [rdx + 0x1d78], al
xor eax, eax
test ecx, ecx
je 0x14002cda9
mov dword [rdx + 0x1d74], eax
mov word [rdx + 0x1d7b], ax
mov dword [rdx + 0x1da4], 0xffffffff
mov dword [rdx + 0x1d6c], eax
mov word [rdx + 0x1d79], 0
mov qword [rdx + 0x1d98], rax
mov word [rdx + 0x1d7d], 0
mov qword [rdx + 0x1d80], 0
mov qword [rdx + 0x1d88], rax
movzx ecx, byte [rsp + 0x79]
movzx edx, byte [rsp + 0x78]
test cl, cl
je 0x14002cf3c
mov ecx, reloc.WLDAP32.dll_Ordinal_32
jmp 0x14002cf47
movss xmm10, dword [rsi]
ucomiss xmm10, xmm14
jp 0x14002ce11
jne 0x14002ce11
mov rax, qword [rbp + 0xa8]
movss xmm6, dword [rax + 4]
jmp 0x14002ce1c
mov rax, qword [rbp + 0xa8]
movaps xmm6, xmm12
movss xmm9, dword [rsi - 4]
ucomiss xmm9, xmm14
jp 0x14002ce30
jne 0x14002ce30
movss xmm4, dword [rax]
jmp 0x14002ce34
movaps xmm4, xmm12
ucomiss xmm10, xmm13
jp 0x14002ce44
jne 0x14002ce44
movss xmm8, dword [rax + 0xc]
jmp 0x14002ce48
movaps xmm8, xmm11
ucomiss xmm9, xmm13
jp 0x14002ce57
jne 0x14002ce57
movss xmm7, dword [rax + 8]
jmp 0x14002ce5b
movaps xmm7, xmm11
movss xmm5, dword [rsi + 4]
movss xmm3, dword [rsi + 8]
movaps xmm0, xmm5
movss xmm2, dword [rbp - 0x80]
movaps xmm1, xmm3
xorps xmm2, xmmword [0x1400cb100]
mulss xmm0, xmm15
mulss xmm5, xmm2
mulss xmm3, xmm2
subss xmm5, xmm0
mulss xmm1, xmm15
subss xmm3, xmm1
mulss xmm5, xmm9
addss xmm5, xmm0
mulss xmm3, xmm10
movss xmm0, dword [r15 + 0x120]
subss xmm0, dword [r15 + 0x1d90]
addss xmm3, xmm1
addss xmm5, xmm0
movss xmm0, dword [r15 + 0x124]
subss xmm0, dword [r15 + 0x1d94]
addss xmm0, xmm3
comiss xmm6, xmm0
ja 0x14002cedc
movaps xmm6, xmm8
minss xmm6, xmm0
comiss xmm4, xmm5
ja 0x14002cee8
movaps xmm4, xmm7
minss xmm4, xmm5
unpcklps xmm4, xmm6
lea rax, [rsp + 0x38]
lea r9, [rsp + 0x48]
movsd qword [rsp + 0x58], xmm4
lea r8, [rsi - 4]
mov qword [rsp + 0x20], rax
lea rdx, [rsp + 0x58]
mov rcx, rdi
call fcn.140010bd0
movzx ecx, byte [rsp + 0x79]
movzx edx, byte [rsp + 0x78]
movss xmm9, dword [rsp + 0x38]
movss xmm8, dword [rbp - 0x80]
test ebx, ebx
je 0x14002cde4
test cl, cl
jne 0x14002cdec
test dl, dl
je 0x14002cf7e
xor ecx, ecx
test dl, dl
setne cl
add rcx, 0x1e
mov rax, qword [0x1401bac18]
add rcx, rcx
movups xmm0, xmmword [rax + rcx*8 + 0x16fc]
lea rcx, [rsp + 0x58]
movups xmmword [rsp + 0x58], xmm0
shufps xmm0, xmm0, 0xff
mulss xmm0, dword [rax + 0x1638]
movss dword [rsp + 0x64], xmm0
call fcn.140011e20
mov dword [r12], eax
inc ebx
add rsi, 0x18
add r12, 4
cmp ebx, r13d
jl 0x14002cc41
movaps xmm10, xmmword [rsp + 0xf0]
movss xmm7, dword [rsp + 0x48]
movzx esi, byte [rsp + 0x7a]
movaps xmm15, xmmword [rsp + 0xa0]
xor ebx, ebx
movaps xmm14, xmmword [rsp + 0xb0]
neg sil
sbb rax, rax
and eax, 4
mov qword [rsp + 0x40], rax
jbe 0x14002d161
movss xmm6, dword [0x1400caff8]
lea rsi, [0x14011a504]
movss xmm7, dword [0x1400cb080]
cmp ebx, 1
jbe 0x14002d001
mov r14d, 3
lea rax, [rbp - 0x7c]
mov r12d, 0x124
mov r13d, 0x1d94
jmp 0x14002d017
mov r14d, 4
lea rax, [rbp - 0x80]
mov r12d, 0x120
mov r13d, 0x1d90
movaps xmm3, xmm8
movss dword [rsp + 0x20], xmm7
mov r8d, ebx
mov qword [rsp + 0x50], rax
mov rdx, rdi
lea rcx, [rbp - 0x78]
call fcn.14001d570
lea edx, [rbx + 4]
mov rcx, rdi
call fcn.14001cd10
lea r9, [rsp + 0x7a]
mov dword [rsp + 0x20], 0x800
lea r8, [rsp + 0x78]
mov edx, eax
lea rcx, [rbp - 0x78]
call fcn.140049e60
cmp byte [rsp + 0x78], 0
movzx eax, byte [rsp + 0x7a]
je 0x14002d077
movss xmm0, dword [r15 + 0x1d64]
comiss xmm0, xmm6
ja 0x14002d07f
test al, al
je 0x14002d142
mov dword [r15 + 0x20d0], r14d
test al, al
je 0x14002d142
mov rax, qword [rsp + 0x68]
mov dword [rax], ebx
cmp ebx, 3
jne 0x14002d1de
mov rax, qword [rbp + 0xa8]
movaps xmm3, xmm12
movss xmm2, dword [rax + 4]
movaps xmm4, xmm11
movaps xmm5, xmm11
movsd xmm0, qword [rdi + 0x50]
movss xmm1, dword [r12 + r15]
subss xmm1, dword [r15 + r13]
mov rax, qword [rsp + 0x50]
movsd qword [rbp - 0x80], xmm0
addss xmm1, xmm7
movss dword [rax], xmm1
movss xmm0, dword [rbp - 0x7c]
comiss xmm2, xmm0
ja 0x14002d0ea
movaps xmm2, xmm4
minss xmm2, xmm0
movss xmm0, dword [rbp - 0x80]
comiss xmm3, xmm0
ja 0x14002d0fb
movaps xmm3, xmm5
minss xmm3, xmm0
movss xmm1, dword [rsi - 0xc]
lea rax, [rsp + 0x38]
movss xmm0, dword [rsi - 8]
lea r9, [rsp + 0x48]
minss xmm1, dword [rsi - 4]
minss xmm0, dword [rsi]
unpcklps xmm3, xmm2
lea r8, [rsp + 0x58]
lea rdx, [rbp - 0x80]
movsd qword [rbp - 0x80], xmm3
mov rcx, rdi
mov qword [rsp + 0x20], rax
movss dword [rsp + 0x58], xmm1
movss dword [rsp + 0x5c], xmm0
call fcn.140010bd0
inc ebx
add rsi, 0x1c
sub qword [rsp + 0x40], 1
jne 0x14002cfe4
movss xmm7, dword [rsp + 0x48]
movss xmm9, dword [rsp + 0x38]
mov rax, qword [0x1401bac18]
movaps xmm12, xmmword [rsp + 0xd0]
mov r12, qword [rsp + 0x140]
mov rsi, qword [rsp + 0x148]
mov rcx, qword [rax + 0x1d18]
mov rbx, qword [rsp + 0x198]
dec dword [rcx + 0x108]
mov dword [rdi + 0x18c], 0
mov rax, qword [r15 + 0x2080]
test rax, rax
je 0x14002d354
cmp qword [rax + 0x3d8], rdi
jne 0x14002d354
mov eax, dword [r15 + 0x1f84]
cmp eax, 2
jne 0x14002d22e
cmp byte [r15 + 0x13d], 0
je 0x14002d354
mov edx, 1
jmp 0x14002d23c
movaps xmm2, xmm12
cmp ebx, 1
jne 0x14002d1f7
mov rax, qword [rbp + 0xa8]
movss xmm3, dword [rax]
jmp 0x14002d0ae
movaps xmm3, xmm12
cmp ebx, 2
jne 0x14002d211
mov rax, qword [rbp + 0xa8]
movss xmm4, dword [rax + 0xc]
jmp 0x14002d0b2
movaps xmm4, xmm11
test ebx, ebx
jne 0x14002d0b2
mov rax, qword [rbp + 0xa8]
movss xmm5, dword [rax + 8]
jmp 0x14002d0b6
cmp eax, 3
jne 0x14002d354
mov edx, 2
movaps xmm3, xmm13
movss dword [rsp + 0x20], xmm13
xor r8d, r8d
lea rcx, [rsp + 0x68]
call fcn.14001d200
movss xmm8, dword [rax]
ucomiss xmm8, xmm13
movss xmm6, dword [rax + 4]
jp 0x14002d272
jne 0x14002d272
ucomiss xmm6, xmm13
jp 0x14002d272
je 0x14002d354
movss xmm0, dword [r15 + 0x18]
lea rcx, [rbp - 0x78]
mulss xmm0, dword [0x1400cb0b0]
movss xmm1, dword [r15 + 0xc0]
minss xmm1, dword [r15 + 0xc4]
mulss xmm1, xmm0
cvttss2si eax, xmm1
movd xmm2, eax
mov rax, qword [rbp + 0xa8]
cvtdq2ps xmm2, xmm2
movss xmm0, dword [rax]
subss xmm0, dword [rdi + 0x50]
mulss xmm8, xmm2
mulss xmm6, xmm2
subss xmm0, dword [rdi + 0x58]
maxss xmm8, xmm0
movss xmm0, dword [rax + 4]
subss xmm0, dword [rdi + 0x54]
subss xmm0, dword [rdi + 0x5c]
mov byte [r15 + 0x20a0], 0
mov byte [r15 + 0x1fa7], 1
mov rax, qword [0x1401bac18]
maxss xmm6, xmm0
movups xmm0, xmmword [rax + 0x18fc]
movups xmmword [rbp - 0x78], xmm0
shufps xmm0, xmm0, 0xff
mulss xmm0, dword [rax + 0x1638]
movss dword [rbp - 0x6c], xmm0
call fcn.140011e20
mov rcx, qword [rsp + 0x70]
lea r8, [rsp + 0x40]
mov rdx, rdi
mov dword [rcx], eax
lea rcx, [rsp + 0x70]
addss xmm8, dword [rdi + 0x60]
addss xmm6, dword [rdi + 0x64]
movss dword [rsp + 0x40], xmm8
movss dword [rsp + 0x44], xmm6
call fcn.1400112e0
movss xmm0, dword [rax + 4]
movss xmm9, dword [rax]
movss dword [rsp + 0x3c], xmm0
ucomiss xmm9, xmm11
movaps xmm8, xmmword [rsp + 0x110]
movaps xmm6, xmmword [rsp + 0x130]
jp 0x14002d36d
je 0x14002d3a1
test dword [rdi + 0xc], 0x100
movss xmm0, dword [rsp + 0x3c]
movss dword [rdi + 0x64], xmm0
movss dword [rdi + 0x60], xmm9
mov rcx, qword [0x1401bac18]
jne 0x14002d3a1
comiss xmm13, dword [rcx + 0x31fc]
jb 0x14002d3a1
mov eax, dword [rcx + 0x1c]
mov dword [rcx + 0x31fc], eax
movaps xmm9, xmmword [rsp + 0x100]
ucomiss xmm7, xmm11
movaps xmm11, xmmword [rsp + 0xe0]
jp 0x14002d3bb
je 0x14002d400
test dword [rdi + 0xc], 0x100
cvttss2si eax, xmm7
movd xmm1, eax
cvttss2si eax, dword [rsp + 0x4c]
cvtdq2ps xmm1, xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rdi + 0x50], xmm1
movss dword [rdi + 0x54], xmm0
mov rdx, qword [0x1401bac18]
jne 0x14002d400
comiss xmm13, dword [rdx + 0x31fc]
jb 0x14002d400
mov ecx, dword [rdx + 0x1c]
mov dword [rdx + 0x31fc], ecx
movsd xmm0, qword [rdi + 0x60]
movzx eax, byte [rsp + 0x30]
movaps xmm13, xmmword [rsp + 0xc0]
movaps xmm7, xmmword [rsp + 0x120]
movsd qword [rdi + 0x58], xmm0
jmp 0x14002d424
xor al, al
mov rcx, qword [rbp - 0x68]
xor rcx, rsp
call fcn.1400c4570
add rsp, 0x150
pop r15
pop r14
pop r13
pop rdi
pop rbp
ret