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

Disassembly:
mov rax, rsp
mov qword [rax + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x70]
sub rsp, 0x170
vmovaps xmmword [rax - 0x48], xmm6
vmovaps xmmword [rax - 0x58], xmm7
vmovaps xmmword [rax - 0x68], xmm8
vmovaps xmmword [rax - 0x78], xmm9
vmovaps xmmword [rax - 0x88], xmm10
vmovaps xmmword [rax - 0x98], xmm11
vmovaps xmmword [rax - 0xa8], xmm12
vmovaps xmmword [rax - 0xb8], xmm13
mov rax, qword [0x14005f040]
xor rax, rsp
mov qword [rbp - 0x18], rax
mov r12, rdx
mov r14, rcx
mov rbx, qword [0x1400ad480]
mov r15, rbx
mov rax, qword [rbx + 0x3ea0]
mov byte [rax + 0x98], 1
mov r13, qword [rbx + 0x3ea0]
cmp byte [r13 + 0x9b], 0
jne 0x14003d4a5
movsxd r8, dword [r13 + 0xd0]
mov rax, qword [r13 + 0xd8]
mov r8d, dword [rax + r8*4 - 4]
xor edx, edx
call fcn.14000bdc0
mov edi, eax
cmp dword [rbx + 0x3ee8], eax
jne 0x14003cb0d
mov r8, r14
mov edx, 0xb
mov ecx, eax
call fcn.140023ab0
mov rbx, qword [0x1400ad480]
mov rcx, r14
cmp r14, 0xffffffffffffffff
jae 0x14003cb33
movzx edx, byte [rcx]
test dl, dl
je 0x14003cb33
lea rax, [rcx + 1]
cmp dl, 0x23
jne 0x14003cb2a
cmp byte [rax], dl
je 0x14003cb33
mov rcx, rax
cmp rax, 0xffffffffffffffff
jb 0x14003cb16
vmovss xmm4, dword [rbx + 0x3c00]
vxorps xmm10, xmm10, xmm10
cmp r14, rcx
jne 0x14003cb4b
vxorps xmm3, xmm3, xmm3
jmp 0x14003cb98
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], r14
vmovss xmm0, dword [0x14005598c]
vmovss dword [rsp + 0x20], xmm0
vmovaps xmm2, xmm4
lea rdx, [rsp + 0x58]
mov rcx, qword [rbx + 0x3bf8]
call fcn.140033b30
vmovss xmm0, dword [rsp + 0x58]
vaddss xmm1, xmm0, dword [0x140055758]
vcvttss2si eax, xmm1
vxorps xmm3, xmm3, xmm3
vcvtsi2ss xmm3, xmm3, eax
vmovss xmm4, dword [rsp + 0x5c]
vmovss xmm0, dword [rbx + 0x3820]
vaddss xmm2, xmm0, xmm0
vmovss xmm1, dword [rbx + 0x3c00]
vaddss xmm0, xmm1, dword [0x140055760]
vaddss xmm13, xmm2, xmm0
vmovss xmm12, dword [r13 + 0xe0]
vmovss xmm11, dword [r13 + 0xe4]
vmovss xmm1, dword [r15 + 0x3820]
vaddss xmm0, xmm1, xmm1
vaddss xmm2, xmm0, xmm4
vcomiss xmm3, xmm10
jbe 0x14003cbed
vaddss xmm0, xmm3, dword [r15 + 0x3834]
jmp 0x14003cbf1
vxorps xmm0, xmm0, xmm0
vaddss xmm3, xmm0, xmm13
vaddss xmm2, xmm2, xmm11
vaddss xmm0, xmm3, xmm12
vmovss dword [rbp - 0x28], xmm12
vmovss dword [rbp - 0x24], xmm11
vmovss dword [rbp - 0x20], xmm0
vmovss dword [rbp - 0x1c], xmm2
vsubss xmm0, xmm2, xmm11
vmovss dword [rsp + 0x58], xmm3
vmovss dword [rsp + 0x5c], xmm0
lea rcx, [rsp + 0x58]
call fcn.14001bec0
xor r9d, r9d
xor r8d, r8d
mov edx, edi
lea rcx, [rbp - 0x28]
call fcn.14001c030
test al, al
je 0x14003d4a5
xor ebx, ebx
mov dword [rsp + 0x20], ebx
lea r9, [rsp + 0x50]
lea r8, [rsp + 0x51]
mov edx, edi
lea rcx, [rbp - 0x28]
call fcn.14003af90
mov byte [rsp + 0x50], al
call fcn.140014430
test al, al
je 0x14003cc92
cmp byte [r12], bl
sete cl
mov byte [r12], cl
mov rcx, qword [0x1400ad480]
mov word [rcx + 0x3f10], 0x101
or dword [rcx + 0x4744], 4
mov ecx, 4
mov rax, qword gs:[0x58]
mov rax, qword [rax]
mov eax, dword [rcx + rax]
cmp dword [0x1400ae710], eax
jle 0x14003cd0c
lea rcx, [0x1400ae710]
call fcn.1400485d8
cmp dword [0x1400ae710], 0xffffffff
jne 0x14003cd0c
mov qword [0x1400ae6b0], rbx
mov qword [0x1400ae6b8], rbx
mov ecx, 0x78
call fcn.140048650
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [rax + 0x10], rax
mov word [rax + 0x18], 0x101
mov qword [0x1400ae6b0], rax
lea rcx, [0x14004d7e0]
call fcn.140048984
nop
lea rcx, [0x1400ae710]
call fcn.14004856c
mov rsi, qword [0x1400ae6b0]
mov rax, qword [rsi + 8]
mov rbx, rsi
movzx edx, byte [rax + 0x19]
test dl, dl
jne 0x14003cd3c
mov rcx, rax
cmp dword [rcx + 0x1c], edi
jae 0x14003cd30
mov rcx, qword [rcx + 0x10]
jmp 0x14003cd36
mov rbx, rcx
mov rcx, qword [rcx]
cmp byte [rcx + 0x19], 0
je 0x14003cd25
cmp byte [rbx + 0x19], 0
jne 0x14003cd47
cmp edi, dword [rbx + 0x1c]
jae 0x14003cd4a
mov rbx, rsi
cmp rbx, rsi
jne 0x14003ce95
xor ecx, ecx
vxorps xmm0, xmm0, xmm0
vxorps xmm1, xmm1, xmm1
vxorps xmm2, xmm2, xmm2
mov dword [rbp - 0x80], edi
vmovups ymmword [rbp - 0x7c], ymm0
vmovups ymmword [rbp - 0x5c], ymm1
vmovups xmmword [rbp - 0x3c], xmm2
mov dword [rbp - 0x2c], ecx
mov qword [rsp + 0x58], rax
xor r8d, r8d
mov dword [rsp + 0x60], r8d
mov rcx, rsi
test dl, dl
jne 0x14003cdb9
nop word [rax + rax]
mov qword [rsp + 0x58], rax
cmp dword [rax + 0x1c], edi
jae 0x14003cda5
mov dword [rsp + 0x60], r8d
mov rax, qword [rax + 0x10]
jmp 0x14003cdb3
mov dword [rsp + 0x60], 1
mov rcx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], r8b
je 0x14003cd90
cmp byte [rcx + 0x19], r8b
jne 0x14003cdc8
cmp edi, dword [rcx + 0x1c]
jae 0x14003ce5d
movabs rax, 0x222222222222222
cmp qword [0x1400ae6b8], rax
je 0x14003d4fe
lea rbx, [0x1400ae6b0]
mov qword [rsp + 0x70], rbx
mov qword [rsp + 0x78], r8
mov ecx, 0x78
vzeroupper
call fcn.140048650
nop
vmovups ymm0, ymmword [rbp - 0x80]
vmovups ymmword [rax + 0x1c], ymm0
vmovups ymm1, ymmword [rbp - 0x60]
vmovups ymmword [rax + 0x3c], ymm1
vmovups xmm0, xmmword [rbp - 0x40]
vmovups xmmword [rax + 0x5c], xmm0
vmovsd xmm1, qword [rbp - 0x30]
vmovsd qword [rax + 0x6c], xmm1
mov qword [rax], rsi
mov qword [rax + 8], rsi
mov qword [rax + 0x10], rsi
mov word [rax + 0x18], 0
vmovups xmm0, xmmword [rsp + 0x58]
vmovups xmmword [rsp + 0x70], xmm0
mov r8, rax
lea rdx, [rsp + 0x70]
mov rcx, rbx
vzeroupper
call fcn.1400089d0
mov rsi, qword [0x1400ae6b0]
mov rax, qword [rsi + 8]
mov rbx, rsi
cmp byte [rax + 0x19], 0
jne 0x14003ce87
nop word [rax + rax]
cmp dword [rax + 0x1c], edi
jae 0x14003ce7b
mov rax, qword [rax + 0x10]
jmp 0x14003ce81
mov rbx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x14003ce70
cmp byte [rbx + 0x19], 0
jne 0x14003ce92
cmp edi, dword [rbx + 0x1c]
jae 0x14003ce95
mov rbx, rsi
vmovss xmm8, dword [0x14005581c]
vmulss xmm4, xmm8, dword [r15 + 0x18]
movzx ecx, byte [rsp + 0x51]
cmp byte [r12], 0
je 0x14003cec8
vmovups xmm3, xmmword [0x1400ae748]
vshufps xmm5, xmm3, xmm3, 0x55
vshufps xmm6, xmm3, xmm3, 0xaa
vshufps xmm7, xmm3, xmm3, 0xff
jmp 0x14003cedf
vxorps xmm2, xmm2, xmm2
vxorps xmm3, xmm3, xmm3
vshufps xmm5, xmm2, xmm2, 0x55
vshufps xmm6, xmm2, xmm2, 0xaa
vshufps xmm7, xmm2, xmm2, 0xff
vsubss xmm1, xmm3, dword [rbx + 0x20]
vmovss xmm2, dword [rbx + 0x20]
vfmadd231ss xmm2, xmm4, xmm1
vmovss dword [rsp + 0x58], xmm2
vsubss xmm1, xmm5, dword [rbx + 0x24]
vmovss xmm2, dword [rbx + 0x24]
vfmadd231ss xmm2, xmm4, xmm1
vmovss dword [rsp + 0x5c], xmm2
vsubss xmm1, xmm6, dword [rbx + 0x28]
vmovss xmm2, dword [rbx + 0x28]
vfmadd231ss xmm2, xmm4, xmm1
vmovss dword [rsp + 0x60], xmm2
vsubss xmm1, xmm7, dword [rbx + 0x2c]
vmovss xmm2, dword [rbx + 0x2c]
vfmadd231ss xmm2, xmm4, xmm1
vmovss dword [rsp + 0x64], xmm2
vmovups xmm0, xmmword [rsp + 0x58]
vmovups xmmword [rbx + 0x20], xmm0
vmulss xmm4, xmm8, dword [r15 + 0x18]
cmp byte [r12], 0
je 0x14003cf64
vmovups xmm3, xmmword [0x1400ae800]
vshufps xmm5, xmm3, xmm3, 0x55
vshufps xmm6, xmm3, xmm3, 0xaa
vshufps xmm7, xmm3, xmm3, 0xff
jmp 0x14003cf7b
vxorps xmm2, xmm2, xmm2
vxorps xmm3, xmm3, xmm3
vshufps xmm5, xmm2, xmm2, 0x55
vshufps xmm6, xmm2, xmm2, 0xaa
vshufps xmm7, xmm2, xmm2, 0xff
vsubss xmm1, xmm3, dword [rbx + 0x30]
vmovss xmm2, dword [rbx + 0x30]
vfmadd231ss xmm2, xmm4, xmm1
vmovss dword [rsp + 0x58], xmm2
vsubss xmm1, xmm5, dword [rbx + 0x34]
vmovss xmm2, dword [rbx + 0x34]
vfmadd231ss xmm2, xmm4, xmm1
vmovss dword [rsp + 0x5c], xmm2
vsubss xmm1, xmm6, dword [rbx + 0x38]
vmovss xmm2, dword [rbx + 0x38]
vfmadd231ss xmm2, xmm4, xmm1
vmovss dword [rsp + 0x60], xmm2
vsubss xmm1, xmm7, dword [rbx + 0x3c]
vmovss xmm2, dword [rbx + 0x3c]
vfmadd231ss xmm2, xmm4, xmm1
vmovss dword [rsp + 0x64], xmm2
vmovups xmm0, xmmword [rsp + 0x58]
vmovups xmmword [rbx + 0x30], xmm0
vmovss xmm1, dword [r15 + 0x18]
vmulss xmm4, xmm1, dword [0x140055850]
cmp byte [r12], 0
je 0x14003d008
vmovups xmm3, xmmword [0x1400ae898]
vshufps xmm5, xmm3, xmm3, 0x55
vshufps xmm6, xmm3, xmm3, 0xaa
vshufps xmm7, xmm3, xmm3, 0xff
jmp 0x14003d01f
vxorps xmm2, xmm2, xmm2
vxorps xmm3, xmm3, xmm3
vshufps xmm5, xmm2, xmm2, 0x55
vshufps xmm6, xmm2, xmm2, 0xaa
vshufps xmm7, xmm2, xmm2, 0xff
vsubss xmm1, xmm3, dword [rbx + 0x50]
vmovss xmm2, dword [rbx + 0x50]
vfmadd231ss xmm2, xmm4, xmm1
vmovss dword [rsp + 0x58], xmm2
vsubss xmm1, xmm5, dword [rbx + 0x54]
vmovss xmm2, dword [rbx + 0x54]
vfmadd231ss xmm2, xmm4, xmm1
vmovss dword [rsp + 0x5c], xmm2
vsubss xmm1, xmm6, dword [rbx + 0x58]
vmovss xmm2, dword [rbx + 0x58]
vfmadd231ss xmm2, xmm4, xmm1
vmovss dword [rsp + 0x60], xmm2
vsubss xmm1, xmm7, dword [rbx + 0x5c]
vmovss xmm2, dword [rbx + 0x5c]
vfmadd231ss xmm2, xmm4, xmm1
vmovss dword [rsp + 0x64], xmm2
vmovups xmm0, xmmword [rsp + 0x58]
vmovups xmmword [rbx + 0x50], xmm0
xor eax, eax
vmovd xmm1, eax
movzx eax, byte [r12]
vmovd xmm0, eax
vpcmpeqd xmm3, xmm0, xmm1
vmovss xmm2, dword [0x140055858]
vblendvps xmm0, xmm10, xmm2, xmm3
vsubss xmm1, xmm0, dword [rbx + 0x70]
vmulss xmm3, xmm1, dword [r15 + 0x18]
vmovss xmm2, dword [rbx + 0x70]
vfmadd231ss xmm2, xmm3, dword [0x14005580c]
vmovss dword [rbx + 0x70], xmm2
vmulss xmm4, xmm8, dword [r15 + 0x18]
cmp byte [r12], 0
je 0x14003d0db
lea rax, [0x1400ae850]
vmovss xmm1, dword [0x1400ae850]
jmp 0x14003d0f3
lea rdx, [0x1400ae908]
lea rax, [0x1400ae6f0]
test cl, cl
cmovne rax, rdx
vmovss xmm1, dword [rax]
vsubss xmm1, xmm1, dword [rbx + 0x40]
vmovss xmm2, dword [rbx + 0x40]
vfmadd231ss xmm2, xmm4, xmm1
vmovss dword [rsp + 0x58], xmm2
vmovss xmm0, dword [rax + 4]
vsubss xmm1, xmm0, dword [rbx + 0x44]
vmovss xmm2, dword [rbx + 0x44]
vfmadd231ss xmm2, xmm4, xmm1
vmovss dword [rsp + 0x5c], xmm2
vmovss xmm0, dword [rax + 8]
vsubss xmm1, xmm0, dword [rbx + 0x48]
vmovss xmm2, dword [rbx + 0x48]
vfmadd231ss xmm2, xmm4, xmm1
vmovss dword [rsp + 0x60], xmm2
vmovss xmm0, dword [rax + 0xc]
vsubss xmm1, xmm0, dword [rbx + 0x4c]
vmovss xmm2, dword [rbx + 0x4c]
vfmadd231ss xmm2, xmm4, xmm1
vmovss dword [rsp + 0x64], xmm2
vmovups xmm0, xmmword [rsp + 0x58]
vmovups xmmword [rbx + 0x40], xmm0
vaddss xmm9, xmm12, xmm13
vaddss xmm6, xmm11, xmm13
mov r8d, 1
mov edx, edi
lea rcx, [rbp - 0x28]
vzeroupper
call fcn.14000d8e0
vmovss xmm0, dword [0x1400ae8b8]
vmovss dword [rbp - 0x28], xmm0
vmovss xmm1, dword [0x1400ae8bc]
vmovss dword [rbp - 0x24], xmm1
vmovss xmm0, dword [0x1400ae8c0]
vmovss dword [rbp - 0x20], xmm0
vmovss xmm1, dword [0x1400ae8c4]
mov rax, qword [0x1400ad480]
vmulss xmm0, xmm1, dword [rax + 0x37e0]
vmovss dword [rbp - 0x1c], xmm0
lea rcx, [rbp - 0x28]
call fcn.14000c290
mov r8d, eax
vmovss xmm0, dword [r15 + 0x3824]
vmovss dword [rsp + 0x20], xmm0
vunpcklps xmm8, xmm9, xmm6
vmovq rdx, xmm8
vunpcklps xmm7, xmm12, xmm11
vmovq rcx, xmm7
call fcn.14000d750
mov rdx, qword [0x1400ad480]
mov rax, qword [rdx + 0x3ea0]
mov byte [rax + 0x98], 1
mov rax, qword [rdx + 0x3ea0]
mov rcx, qword [rax + 0x278]
mov esi, dword [rcx + 0x20]
vmovups xmm0, xmmword [rbx + 0x20]
vmovups xmmword [rsp + 0x70], xmm0
vshufps xmm0, xmm0, xmm0, 0xff
vmulss xmm0, xmm0, dword [rdx + 0x37e0]
vmovss dword [rsp + 0x7c], xmm0
vmovss xmm2, dword [rbx + 0x70]
vsubss xmm1, xmm9, xmm2
vmovss dword [rsp + 0x58], xmm1
vsubss xmm0, xmm6, xmm2
vmovss dword [rsp + 0x5c], xmm0
vaddss xmm1, xmm2, xmm12
vmovss dword [rbp - 0x28], xmm1
vaddss xmm0, xmm2, xmm11
vmovss dword [rbp - 0x24], xmm0
lea rcx, [rsp + 0x70]
call fcn.14000c290
mov r9d, eax
xor eax, eax
mov dword [rsp + 0x28], eax
vmovss xmm0, dword [r15 + 0x3824]
vmovss dword [rsp + 0x20], xmm0
lea r8, [rsp + 0x58]
lea rdx, [rbp - 0x28]
mov rcx, qword [r13 + 0x278]
call fcn.14002f6c0
vmovups xmm0, xmmword [rbx + 0x20]
vmovups xmmword [rsp + 0x70], xmm0
mov rdi, qword [0x1400ad480]
vmovss xmm2, dword [rdi + 0x37e0]
vshufps xmm0, xmm0, xmm0, 0xff
vmulss xmm0, xmm0, xmm2
vmovss dword [rsp + 0x7c], xmm0
vmovups xmm1, xmmword [rbx + 0x30]
vmovups xmmword [rbp - 0x28], xmm1
vshufps xmm1, xmm1, xmm1, 0xff
vmulss xmm0, xmm1, xmm2
vmovss dword [rbp - 0x1c], xmm0
mov rax, qword [rdi + 0x3ea0]
mov byte [rax + 0x98], 1
mov rcx, qword [rdi + 0x3ea0]
mov rax, qword [rcx + 0x278]
mov r8d, dword [rax + 0x20]
mov byte [rcx + 0x98], 1
lea rcx, [rsp + 0x70]
call fcn.14000c290
mov r9d, eax
lea rcx, [rbp - 0x28]
call fcn.14000c290
mov rcx, qword [rdi + 0x3ea0]
mov dword [rsp + 0x30], r9d
mov dword [rsp + 0x28], eax
vmovsd qword [rsp + 0x20], xmm8
vmovq r9, xmm7
mov edx, esi
mov rcx, qword [rcx + 0x278]
call fcn.1400305a0
vmulss xmm0, xmm13, dword [0x1400556f8]
vcvttss2si eax, xmm0
vxorps xmm1, xmm1, xmm1
vcvtsi2ss xmm1, xmm1, eax
vmaxss xmm2, xmm1, dword [0x140055760]
vmovups xmm0, xmmword [rbx + 0x50]
vmovups xmmword [rsp + 0x70], xmm0
vshufps xmm0, xmm0, xmm0, 0xff
vmulss xmm0, xmm0, dword [rdi + 0x37e0]
vmovss dword [rsp + 0x7c], xmm0
vmovss xmm1, dword [0x1400557e0]
vmovaps xmm0, xmm2
vfmadd231ss xmm0, xmm1, dword [0x14005f0b4]
vaddss xmm8, xmm0, xmm12
vaddss xmm0, xmm0, dword [rbx + 0x70]
vaddss xmm7, xmm0, xmm11
vmovaps xmm6, xmm13
vfnmadd231ss xmm6, xmm2, dword [0x1400557fc]
lea rcx, [rsp + 0x70]
call fcn.14000c290
mov r8d, eax
vmovaps xmm3, xmm6
vunpcklps xmm0, xmm8, xmm7
vmovq rdx, xmm0
mov rcx, qword [r13 + 0x278]
call fcn.140034630
vaddss xmm0, xmm9, dword [r15 + 0x3834]
vmovss dword [rbp - 0x28], xmm0
vaddss xmm1, xmm11, dword [r15 + 0x3820]
vmovss dword [rbp - 0x24], xmm1
mov r8, qword [r13 + 0x278]
vmovups xmm0, xmmword [rbx + 0x40]
vmovups xmmword [rsp + 0x70], xmm0
vshufps xmm0, xmm0, xmm0, 0xff
mov rax, qword [0x1400ad480]
vmulss xmm0, xmm0, dword [rax + 0x37e0]
vmovss dword [rsp + 0x7c], xmm0
lea rcx, [rsp + 0x70]
call fcn.14000c290
mov r9d, eax
test eax, 0xff000000
je 0x14003d49e
mov rcx, 0xffffffffffffffff
nop dword [rax]
inc rcx
cmp byte [r14 + rcx], 0
jne 0x14003d440
add rcx, r14
cmp r14, rcx
je 0x14003d49e
mov rax, qword [r8 + 0x38]
vmovups xmm0, xmmword [r8 + 0x88]
vmovups xmmword [rsp + 0x70], xmm0
mov byte [rsp + 0x48], 0
vmovss dword [rsp + 0x40], xmm10
mov qword [rsp + 0x38], rcx
mov qword [rsp + 0x30], r14
lea rcx, [rsp + 0x70]
mov qword [rsp + 0x28], rcx
mov dword [rsp + 0x20], r9d
lea r9, [rbp - 0x28]
vmovss xmm2, dword [rax + 0x10]
mov rdx, r8
mov rcx, qword [rax + 8]
call fcn.140033d70
movzx eax, byte [rsp + 0x50]
jmp 0x14003d4a7
xor al, al
mov rcx, qword [rbp - 0x18]
xor rcx, rsp
call fcn.140048510
lea r11, [rsp + 0x170]
mov rbx, qword [r11 + 0x50]
vmovaps xmm6, xmmword [r11 - 0x10]
vmovaps xmm7, xmmword [r11 - 0x20]
vmovaps xmm8, xmmword [r11 - 0x30]
vmovaps xmm9, xmmword [r11 - 0x40]
vmovaps xmm10, xmmword [r11 - 0x50]
vmovaps xmm11, xmmword [r11 - 0x60]
vmovaps xmm12, xmmword [r11 - 0x70]
vmovaps xmm13, xmmword [r11 - 0x80]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
vzeroupper
call fcn.1400031c0
int3