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

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x208]
sub rsp, 0x2e0
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
movaps xmmword [rax - 0x58], xmm8
movaps xmmword [rax - 0x68], xmm9
movaps xmmword [rax - 0x78], xmm10
movaps xmmword [rax - 0x88], xmm11
movaps xmmword [rax - 0x98], xmm12
movaps xmmword [rax - 0xa8], xmm13
movaps xmmword [rax - 0xb8], xmm14
mov rax, qword [0x1402dc010]
xor rax, rsp
mov qword [rbp + 0x140], rax
mov r13, rdx
mov r14, rcx
xor ebx, ebx
mov rax, qword [rcx]
call qword [rax + 0x40]
test al, al
je 0x140010bd7
mov rax, qword [r14 + 0x310]
mov rsi, qword [rax + 0xe60]
mov r15, qword [rax + 0xe78]
mov r12, qword [rax + 0xe80]
mov qword [rsp + 0x70], r12
mov rcx, qword [r14 + 0x10]
mov rax, qword [rcx]
call qword [rax + 0x460]
mov rdi, rax
mov qword [rsp + 0x78], rax
test rsi, rsi
je 0x14000fa15
mov rdx, qword [rsi]
mov rcx, rsi
call qword [rdx + reloc.WSOCK32.dll_htonl]
cmp eax, 0x1c
je 0x14000fa15
mov rdx, qword [rsi]
mov rcx, rsi
call qword [rdx + reloc.WSOCK32.dll_htonl]
cmp eax, 0x24
je 0x14000fa15
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + reloc.WSOCK32.dll_htonl]
cmp eax, 0x23
je 0x14000fa15
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + reloc.WSOCK32.dll_htonl]
cmp eax, 0x1b
je 0x14000fa15
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + reloc.WSOCK32.dll_htonl]
cmp eax, 0x21
jne 0x14000fa23
test r15, r15
je 0x140010bd7
test rsi, rsi
je 0x14000fa59
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + reloc.WSOCK32.dll_htonl]
cmp eax, 0x1c
jne 0x14000fa36
mov rsi, rbx
jmp 0x14000fa59
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + reloc.WSOCK32.dll_htonl]
cmp eax, 0x24
jne 0x14000fa49
mov rsi, rbx
jmp 0x14000fa59
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + reloc.WSOCK32.dll_htonl]
cmp eax, 0x23
cmove rsi, rbx
cmp dword [r13], 1
jne 0x14000fc32
test r12, r12
jne 0x140010bd7
cmp dword [r13 + 0xc], 0x10
jne 0x14000fc32
cmp byte [r13 + 0x10], bl
je 0x14000fafa
cmp dword [r14 + 0x374], 1
je 0x14000fafa
mov dword [r14 + 0x374], 1
test rsi, rsi
je 0x14000fafa
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + reloc.WSOCK32.dll_htonl]
cmp eax, 0x1c
je 0x14000fafa
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + reloc.WSOCK32.dll_htonl]
cmp eax, 0x24
je 0x14000fafa
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + reloc.WSOCK32.dll_htonl]
cmp eax, 0x23
je 0x14000fafa
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + reloc.WSOCK32.dll_htonl]
cmp eax, 0x1b
je 0x14000fafa
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + reloc.WSOCK32.dll_htonl]
cmp eax, 0x21
je 0x14000fafa
mov rax, qword [rsi]
lea rdx, [rsp + 0x40]
mov rcx, rsi
call qword [rax + 0xb8]
movups xmm0, xmmword [rax]
movups xmmword [r14 + 0x360], xmm0
cmp byte [r13 + 0x11], bl
je 0x14000fc32
test rsi, rsi
je 0x14000fc27
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + reloc.WSOCK32.dll_htonl]
cmp eax, 0x1c
je 0x14000fc27
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + reloc.WSOCK32.dll_htonl]
cmp eax, 0x24
je 0x14000fc27
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + reloc.WSOCK32.dll_htonl]
cmp eax, 0x23
je 0x14000fc27
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + reloc.WSOCK32.dll_htonl]
cmp eax, 0x1b
je 0x14000fc27
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + reloc.WSOCK32.dll_htonl]
cmp eax, 0x21
je 0x14000fc27
mov rdi, qword [r14 + 0x310]
mov ecx, 0x60
call fcn.140239a18
mov rbx, rax
mov qword [rbp - 0x10], rax
mov rcx, qword [rsi]
mov r8, qword [rcx + 0xb8]
lea rdx, [rsp + 0x40]
mov rcx, rsi
call r8
mov r9, rax
mov r8, qword [r14 + 0x310]
lea rax, [0x14026f7f0]
mov qword [rbx + 8], rax
lea rax, vtable.hedgine::IReferenceCounter.0
mov qword [rbx + 0x50], rax
mov dword [rbx + 0x58], 1
lea rax, vtable.IEditAction.1.0
mov qword [rbx], rax
mov rcx, qword [rbx + 8]
movsxd rdx, dword [rcx + 4]
lea rax, vtable.IEditAction.0
mov qword [rdx + rbx + 8], rax
mov qword [rbx + 0x10], r8
lea rax, vtable.._AVCRotateAction__CB___ProcessEvent_CMoveAutoTool__QEAA_NAEBUSEvent_hedgine___Z_.1.0
mov qword [rbx], rax
mov rax, qword [rbx + 8]
movsxd rdx, dword [rax + 4]
lea rax, vtable.._AVCRotateAction__CB___ProcessEvent_CMoveAutoTool__QEAA_NAEBUSEvent_hedgine___Z_.0
mov qword [rdx + rbx + 8], rax
mov qword [rbx + 0x18], r14
movups xmm0, xmmword [r14 + 0x360]
movups xmmword [rbx + 0x20], xmm0
movups xmm0, xmmword [r9]
movups xmmword [rbx + 0x30], xmm0
mov qword [rbx + 0x40], rsi
mov rdx, rbx
mov rcx, rdi
call fcn.1400a8660
mov rdi, qword [rsp + 0x78]
mov dword [r14 + 0x374], 3
cmp dword [r13], 0
jne 0x140010bd7
mov rbx, qword [r14 + 0x310]
lea rdx, [rbp - 0x10]
mov rcx, rbx
call fcn.1400ae080
mov r8, rax
lea rdx, [rbp - 0x30]
mov rcx, rbx
call fcn.1400a84c0
xorps xmm12, xmm12
cmp dword [r13 + 0x14], 0
jne 0x14000fdf0
lea rdx, [rbp - 0x10]
mov rcx, qword [r14 + 0x310]
call fcn.1400ae080
mov ecx, dword [rax]
mov dword [r14 + 0x338], ecx
mov eax, dword [rax + 4]
mov dword [r14 + 0x33c], eax
test rsi, rsi
je 0x14000fd30
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + reloc.WSOCK32.dll_htonl]
cmp eax, 0x1c
je 0x14000fd30
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + reloc.WSOCK32.dll_htonl]
cmp eax, 0x24
je 0x14000fd30
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + reloc.WSOCK32.dll_htonl]
cmp eax, 0x23
je 0x14000fd30
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + reloc.WSOCK32.dll_htonl]
cmp eax, 0x1b
je 0x14000fd30
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + reloc.WSOCK32.dll_htonl]
cmp eax, 0x21
je 0x14000fd30
mov rax, qword [rsi]
lea rdx, [rsp + 0x40]
mov rcx, rsi
call qword [rax + 0xa8]
movups xmm0, xmmword [rax]
movups xmmword [r14 + 0x340], xmm0
mov rax, qword [rsi]
lea rdx, [rsp + 0x40]
mov rcx, rsi
call qword [rax + 0x98]
movups xmm0, xmmword [rax]
movups xmmword [r14 + 0x350], xmm0
mov rdx, rsi
mov rcx, r14
call fcn.140011210
movss dword [r14 + 0x370], xmm0
test r15, r15
je 0x14000fdc1
movss xmm3, dword [r15 + 0x38]
movss xmm1, dword [r15 + 0x34]
movss xmm0, dword [r15 + 0x30]
mov dword [rsp + 0x3c], 0
movaps xmm2, xmmword [rsp + 0x30]
movss xmm2, xmm0
shufps xmm2, xmm2, 0xe1
movss xmm2, xmm1
shufps xmm2, xmm2, 0xc6
movss xmm2, xmm3
shufps xmm2, xmm2, 0xc9
movaps xmmword [rsp + 0x30], xmm2
movups xmmword [r14 + 0x340], xmm2
movss xmm3, dword [r15 + 0x38]
movss xmm1, dword [r15 + 0x34]
movss xmm0, dword [r15 + 0x30]
mov dword [rsp + 0x3c], 0
movaps xmm2, xmmword [rsp + 0x30]
movss xmm2, xmm0
shufps xmm2, xmm2, 0xe1
movss xmm2, xmm1
shufps xmm2, xmm2, 0xc6
movss xmm2, xmm3
shufps xmm2, xmm2, 0xc9
movaps xmmword [rsp + 0x30], xmm2
movups xmmword [r14 + 0x350], xmm2
mov rcx, qword [r14 + 0x320]
add rcx, 0x2e0
lea rdx, [rbp - 0x30]
call qword [sym.imp.Hedgine_x64.dll_bool___cdecl_hedgine::IntersectsWithLine_class_hedgine::bbox3Df_const____ptr64__class_hedgine::line3Df_const____ptr64_]
test al, al
je 0x14000fdf0
movzx eax, byte [r13 + 0x1e]
neg al
sbb ecx, ecx
and ecx, 2
mov dword [r14 + 0x374], ecx
cmp dword [r13 + 0x14], 6
jne 0x14001090d
movss xmm10, dword [0x14028dcb4]
movss xmm11, dword [0x14028e474]
cmp dword [r14 + 0x374], 0
jne 0x1400102f7
mov qword [rsp + 0x50], 0
mov qword [rsp + 0x30], 0
mov qword [rsp + 0x58], 0
mov qword [rsp + 0x38], 0
mov rax, qword [r14 + 0x310]
mov rbx, qword [rax + 0xe60]
test rbx, rbx
je 0x14001013f
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0x30]
test rax, rax
je 0x14000fe7c
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0x30]
mov rcx, qword [rax]
mov r8, qword [rcx + 8]
xor edx, edx
mov rcx, rax
call r8
lea r8, [rsp + 0x30]
lea rdx, [rsp + 0x50]
mov rcx, qword [r14 + 0x310]
call fcn.1400a7f80
test al, al
je 0x140010119
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + reloc.WSOCK32.dll_htonl]
cmp eax, 0x1c
je 0x140010119
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + reloc.WSOCK32.dll_htonl]
cmp eax, 0x24
je 0x140010119
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + reloc.WSOCK32.dll_htonl]
cmp eax, 0x23
je 0x140010119
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + reloc.WSOCK32.dll_htonl]
cmp eax, 0x1b
je 0x140010119
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + reloc.WSOCK32.dll_htonl]
cmp eax, 0x21
je 0x140010119
movaps xmm0, xmmword [rsp + 0x50]
subps xmm0, xmmword [r14 + 0x350]
movaps xmmword [rbp - 0x10], xmm0
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0x20]
test rax, rax
je 0x14000ff97
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0x20]
add rax, 0x1a0
movss xmm8, dword [rbp - 0x10]
movss xmm3, dword [rbp - 0xc]
movaps xmm4, xmm3
mulss xmm4, dword [rax + 4]
movaps xmm0, xmm8
mulss xmm0, dword [rax]
addss xmm4, xmm0
movss xmm2, dword [rbp - 8]
movaps xmm1, xmm2
mulss xmm1, dword [rax + 8]
addss xmm4, xmm1
movaps xmm9, xmm3
mulss xmm9, dword [rax + 0x14]
movaps xmm0, xmm8
mulss xmm0, dword [rax + 0x10]
addss xmm9, xmm0
movaps xmm1, xmm2
mulss xmm1, dword [rax + 0x18]
addss xmm9, xmm1
mulss xmm8, dword [rax + 0x20]
mulss xmm3, dword [rax + 0x24]
addss xmm8, xmm3
mulss xmm2, dword [rax + 0x28]
addss xmm8, xmm2
jmp 0x14000ffa8
movss xmm8, dword [rbp - 8]
movss xmm9, dword [rbp - 0xc]
movss xmm4, dword [rbp - 0x10]
comiss xmm4, xmm12
jbe 0x14000ffb4
movaps xmm13, xmm10
jmp 0x14000ffb8
movaps xmm13, xmm11
mov rdx, qword [r14 + 0x310]
mov rcx, qword [rdx + 0xfe8]
mov rax, qword [rdx + 0xfa0]
movss xmm7, dword [rax + rcx*4]
movss dword [rbp - 0x10], xmm4
mov dword [rbp - 0xc], 0
mov rcx, qword [rdx + 0xfe8]
mov rax, qword [rdx + 0xfa0]
movss xmm6, dword [rax + rcx*4]
lea rcx, [rbp - 0x10]
call qword [sym.imp.Hedgine_x64.dll_float___cdecl_hedgine::length_class_hedgine::vector2Df__class_hedgine::vector2Df_const____ptr64_]
divss xmm0, xmm6
cvttss2si eax, xmm0
cvttps2pi mm0, xmm0
movd xmm14, eax
cvtdq2ps xmm14, xmm14
mulss xmm13, xmm7
mulss xmm14, xmm13
comiss xmm9, xmm12
jbe 0x140010022
movaps xmm13, xmm10
jmp 0x140010026
movaps xmm13, xmm11
movss dword [rbp - 0x10], xmm9
mov dword [rbp - 0xc], 0
mov rax, qword [r14 + 0x310]
mov rcx, qword [rax + 0xfe8]
mov rax, qword [rax + 0xfa0]
movss xmm6, dword [rax + rcx*4]
lea rcx, [rbp - 0x10]
call qword [sym.imp.Hedgine_x64.dll_float___cdecl_hedgine::length_class_hedgine::vector2Df__class_hedgine::vector2Df_const____ptr64_]
divss xmm0, xmm6
cvttss2si eax, xmm0
movd xmm7, eax
cvtdq2ps xmm7, xmm7
mulss xmm13, xmm6
mulss xmm7, xmm13
comiss xmm8, xmm12
jbe 0x14001007c
movaps xmm9, xmm10
jmp 0x140010080
movaps xmm9, xmm11
movss dword [rbp - 0x10], xmm8
mov dword [rbp - 0xc], 0
mov rax, qword [r14 + 0x310]
mov rcx, qword [rax + 0xfe8]
mov rax, qword [rax + 0xfa0]
movss xmm6, dword [rax + rcx*4]
lea rcx, [rbp - 0x10]
call qword [sym.imp.Hedgine_x64.dll_float___cdecl_hedgine::length_class_hedgine::vector2Df__class_hedgine::vector2Df_const____ptr64_]
divss xmm0, xmm6
cvttss2si eax, xmm0
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mulss xmm9, xmm6
mulss xmm1, xmm9
addss xmm7, dword [r14 + 0x370]
mov dword [rbp - 4], 0
movaps xmm0, xmmword [rbp - 0x10]
movss xmm0, xmm14
shufps xmm0, xmm0, 0xe1
movss xmm0, xmm7
shufps xmm0, xmm0, 0xc6
movss xmm0, xmm1
shufps xmm0, xmm0, 0xc9
movaps xmmword [rbp - 0x10], xmm0
addps xmm0, xmmword [r14 + 0x340]
movaps xmmword [rsp + 0x60], xmm0
mov rax, qword [rbx]
lea rdx, [rsp + 0x60]
mov rcx, rbx
call qword [rax + 0xb0]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0x30]
test rax, rax
je 0x14001013f
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0x30]
mov rcx, qword [rax]
mov r8, qword [rcx + 8]
mov dl, 1
mov rcx, rax
call r8
test r15, r15
je 0x1400102f7
lea r8, [rsp + 0x30]
lea rdx, [rsp + 0x50]
mov rcx, qword [r14 + 0x310]
call fcn.1400a7f80
test al, al
je 0x1400102f7
movaps xmm0, xmmword [rsp + 0x50]
subps xmm0, xmmword [r14 + 0x340]
movaps xmmword [rsp + 0x60], xmm0
comiss xmm0, xmm12
jbe 0x140010184
movaps xmm7, xmm10
jmp 0x140010188
movaps xmm7, xmm11
mov rax, qword [r14 + 0x310]
mov rcx, qword [rax + 0xfe8]
mov rax, qword [rax + 0xfa0]
movss xmm6, dword [rax + rcx*4]
movss dword [rbp - 0x10], xmm0
mov dword [rbp - 0xc], 0
lea rcx, [rbp - 0x10]
call qword [sym.imp.Hedgine_x64.dll_float___cdecl_hedgine::length_class_hedgine::vector2Df__class_hedgine::vector2Df_const____ptr64_]
divss xmm0, xmm6
cvttss2si eax, xmm0
movd xmm8, eax
cvtdq2ps xmm8, xmm8
mulss xmm6, xmm7
mulss xmm8, xmm6
movss xmm0, dword [rsp + 0x64]
comiss xmm0, xmm12
jbe 0x1400101e4
movaps xmm9, xmm10
jmp 0x1400101e8
movaps xmm9, xmm11
mov rdx, qword [r14 + 0x310]
mov rcx, qword [rdx + 0xfe8]
mov rax, qword [rdx + 0xfa0]
movss xmm7, dword [rax + rcx*4]
movss dword [rbp - 0x10], xmm0
mov dword [rbp - 0xc], 0
mov rcx, qword [rdx + 0xfe8]
mov rax, qword [rdx + 0xfa0]
movss xmm6, dword [rax + rcx*4]
lea rcx, [rbp - 0x10]
call qword [sym.imp.Hedgine_x64.dll_float___cdecl_hedgine::length_class_hedgine::vector2Df__class_hedgine::vector2Df_const____ptr64_]
divss xmm0, xmm7
cvttss2si eax, xmm0
movd xmm7, eax
cvtdq2ps xmm7, xmm7
mulss xmm6, xmm9
mulss xmm7, xmm6
movss xmm0, dword [rsp + 0x68]
comiss xmm0, xmm12
jbe 0x140010255
movaps xmm9, xmm10
jmp 0x140010259
movaps xmm9, xmm11
movss dword [rbp - 0x10], xmm0
mov dword [rbp - 0xc], 0
mov rax, qword [r14 + 0x310]
mov rcx, qword [rax + 0xfe8]
mov rax, qword [rax + 0xfa0]
movss xmm6, dword [rax + rcx*4]
lea rcx, [rbp - 0x10]
call qword [sym.imp.Hedgine_x64.dll_float___cdecl_hedgine::length_class_hedgine::vector2Df__class_hedgine::vector2Df_const____ptr64_]
divss xmm0, xmm6
cvttss2si eax, xmm0
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mulss xmm6, xmm9
mulss xmm1, xmm6
mov rcx, qword [r15 + 0x88]
mov rax, qword [rcx]
addss xmm7, dword [r14 + 0x370]
mov dword [rbp - 4], 0
movaps xmm0, xmmword [rbp - 0x10]
movss xmm0, xmm8
shufps xmm0, xmm0, 0xe1
movss xmm0, xmm7
shufps xmm0, xmm0, 0xc6
movss xmm0, xmm1
shufps xmm0, xmm0, 0xc9
movaps xmmword [rbp - 0x10], xmm0
addps xmm0, xmmword [r14 + 0x340]
movaps xmmword [rsp + 0x60], xmm0
lea r8, [rsp + 0x60]
mov rdx, r15
call qword [rax + 0x1f0]
cmp dword [r14 + 0x374], 1
jne 0x14001084d
mov rbx, qword [r14 + 0x310]
mov r12, qword [rbx + 0xe60]
movss xmm7, dword [0x14028f730]
test r12, r12
je 0x1400105f4
lea rdx, [rbp - 0x10]
mov rcx, rbx
call fcn.1400ae080
mov r8, rax
lea rdx, [rbp - 0x50]
mov rcx, rbx
call fcn.1400a84c0
movaps xmm6, xmmword [0x14028e5b0]
mov rax, qword [r12]
lea rdx, [rsp + 0x40]
mov rcx, r12
call qword [rax + 0x98]
movaps xmmword [rbp - 0x70], xmm6
movss xmm2, dword [rax + 8]
xorps xmm2, xmm7
movss xmm1, dword [rax + 4]
xorps xmm1, xmm7
movss xmm0, dword [rax]
xorps xmm0, xmm7
movss dword [rsp + 0x30], xmm0
movss dword [rsp + 0x34], xmm1
movss dword [rsp + 0x38], xmm2
mov dword [rsp + 0x3c], 0
lea rdx, [rbp - 0x70]
lea rcx, [rsp + 0x30]
call qword [sym.imp.Hedgine_x64.dll_float___cdecl_hedgine::dot_class_hedgine::vector3Df__class_hedgine::vector3Df_const____ptr64__class_hedgine::vector3Df_const____ptr64_]
movss dword [rbp - 0x60], xmm0
xorps xmm0, xmm0
movaps xmmword [rsp + 0x50], xmm0
lea r8, [rsp + 0x50]
lea rdx, [rbp - 0x50]
lea rcx, [rbp - 0x70]
call qword [sym.imp.Hedgine_x64.dll_bool___cdecl_hedgine::IntersectsWithLine_class_hedgine::plane3Df_const____ptr64__class_hedgine::line3Df_const____ptr64__class_hedgine::vector3Df____ptr64_]
movaps xmm0, xmmword [0x14028e4e0]
movups xmmword [rbp], xmm0
movaps xmm1, xmm6
movups xmmword [rbp + 0x10], xmm6
movaps xmm0, xmmword [0x14028e8b0]
movups xmmword [rbp + 0x20], xmm0
movaps xmm1, xmmword [0x14028ee70]
movups xmmword [rbp + 0x30], xmm1
movaps xmm0, xmm6
movaps xmmword [rsp + 0x30], xmm6
mov rax, qword [r12]
lea rdx, [rsp + 0x40]
mov rcx, r12
call qword [rax + 0x98]
lea r9, [rsp + 0x30]
lea r8, [rsp + 0x50]
mov rdx, rax
lea rcx, [rbp]
call qword [sym.imp.Hedgine_x64.dll_void___cdecl_hedgine::BuildCameraLookAtMatrix_LH_class_hedgine::matrix4f____ptr64__class_hedgine::vector3Df_const____ptr64__class_hedgine::vector3Df_const____ptr64__class_hedgine::vector3Df_const____ptr64_]
lea rdx, [rbp]
lea rcx, [rbp + 0x40]
call qword [sym.imp.Hedgine_x64.dll_class_hedgine::matrix4f___cdecl_hedgine::inverse_class_hedgine::matrix4f__class_hedgine::matrix4f_const____ptr64_]
movups xmm0, xmmword [rax]
movaps xmmword [rbp + 0x80], xmm0
movups xmm1, xmmword [rax + 0x10]
movaps xmmword [rbp + 0x90], xmm1
movups xmm0, xmmword [rax + 0x20]
movaps xmmword [rbp + 0xa0], xmm0
movups xmm1, xmmword [rax + 0x30]
movaps xmmword [rbp + 0xb0], xmm1
lea rdx, [rbp + 0x80]
lea rcx, [rsp + 0x60]
call qword [sym.imp.Hedgine_x64.dll_class_hedgine::vector3Df___cdecl_hedgine::GetRotationDegrees_class_hedgine::matrix4f_]
mov rax, qword [rdi]
lea rdx, [rsp + 0x40]
mov rcx, rdi
call qword [rax + 0x98]
movaps xmm0, xmmword [rsp + 0x50]
subps xmm0, xmmword [rax]
movaps xmmword [rsp + 0x30], xmm0
lea rdx, [rsp + 0x30]
lea rcx, [rbp - 0x80]
call qword [sym.imp.Hedgine_x64.dll_class_hedgine::vector3Df___cdecl_hedgine::normalize_class_hedgine::vector3Df__class_hedgine::vector3Df_const____ptr64_]
mov rdi, qword [r14 + 0x328]
mov rax, qword [rdi]
mov rbx, qword [rax + 0xb0]
mov rcx, qword [rsp + 0x78]
mov rax, qword [rcx]
lea rdx, [rsp + 0x40]
call qword [rax + 0x98]
movaps xmm0, xmmword [rbp - 0x80]
mulps xmm0, xmmword [0x14028f200]
addps xmm0, xmmword [rax]
movaps xmmword [rsp + 0x30], xmm0
lea rdx, [rsp + 0x30]
mov rcx, rdi
call rbx
mov rcx, qword [r14 + 0x328]
mov rax, qword [rcx]
lea rdx, [rsp + 0x60]
call qword [rax + 0xc0]
mov rax, qword [r12]
mov rcx, r12
call qword [rax + 0x20]
test rax, rax
je 0x14001057e
lea rdx, [rbp]
lea rcx, [rbp + 0x100]
call qword [sym.imp.Hedgine_x64.dll_class_hedgine::matrix4f___cdecl_hedgine::inverse_class_hedgine::matrix4f__class_hedgine::matrix4f_const____ptr64_]
mov rbx, rax
mov rdx, qword [r12]
mov rcx, r12
call qword [rdx + 0x20]
lea rdx, [rax + 0x1a0]
lea rcx, [rbp + 0xc0]
call qword [sym.imp.Hedgine_x64.dll_class_hedgine::matrix4f___cdecl_hedgine::inverse_class_hedgine::matrix4f__class_hedgine::matrix4f_const____ptr64_]
mov r8, rax
mov rdx, rbx
lea rcx, [rbp + 0x80]
call qword [sym.imp.Hedgine_x64.dll_class_hedgine::matrix4f___cdecl_hedgine::mul_class_hedgine::matrix4f__class_hedgine::matrix4f__class_hedgine::matrix4f_const____ptr64__class_hedgine::matrix4f_const____ptr64_]
movups xmm0, xmmword [rbp + 0x80]
movaps xmmword [rbp + 0x40], xmm0
movups xmm1, xmmword [rbp + 0x90]
movaps xmmword [rbp + 0x50], xmm1
movups xmm0, xmmword [rbp + 0xa0]
movaps xmmword [rbp + 0x60], xmm0
movups xmm1, xmmword [rbp + 0xb0]
movaps xmmword [rbp + 0x70], xmm1
lea rdx, [rbp + 0x40]
lea rcx, [rsp + 0x40]
call qword [sym.imp.Hedgine_x64.dll_class_hedgine::vector3Df___cdecl_hedgine::GetRotationDegrees_class_hedgine::matrix4f_]
movups xmm0, xmmword [rax]
movaps xmmword [rsp + 0x60], xmm0
mov rax, qword [r12]
lea rdx, [rsp + 0x60]
mov rcx, r12
call qword [rax + 0xc0]
mov rcx, qword [r14 + 0x330]
mov rax, qword [rcx]
xor edx, edx
call qword [rax + 0x1b8]
mov rbx, rax
mov rcx, qword [r14 + 0x320]
mov rdx, qword [rcx]
mov r8, qword [rdx + 0x98]
lea rdx, [rsp + 0x40]
call r8
movups xmm0, xmmword [rax]
movups xmmword [rbx + 0x10], xmm0
mov rcx, qword [r14 + 0x328]
mov rdx, qword [rcx]
mov rax, qword [rdx + 0xa8]
lea rdx, [rsp + 0x40]
call rax
movups xmm0, xmmword [rax]
movups xmmword [rbx + 0x20], xmm0
mov rcx, qword [r14 + 0x330]
mov rax, qword [rcx]
call qword [rax + 0x1d0]
test r15, r15
je 0x140010848
mov rbx, qword [r14 + 0x310]
lea rdx, [rbp - 0x10]
mov rcx, rbx
call fcn.1400ae080
mov r8, rax
lea rdx, [rbp - 0x50]
mov rcx, rbx
call fcn.1400a84c0
movaps xmm0, xmmword [0x14028e5b0]
movss xmm2, dword [r15 + 0x38]
movss xmm1, dword [r15 + 0x34]
movaps xmmword [rbp - 0x70], xmm0
xorps xmm2, xmm7
xorps xmm1, xmm7
movss xmm0, dword [r15 + 0x30]
xorps xmm0, xmm7
movss dword [rsp + 0x30], xmm0
movss dword [rsp + 0x34], xmm1
movss dword [rsp + 0x38], xmm2
mov dword [rsp + 0x3c], 0
lea rdx, [rbp - 0x70]
lea rcx, [rsp + 0x30]
call qword [sym.imp.Hedgine_x64.dll_float___cdecl_hedgine::dot_class_hedgine::vector3Df__class_hedgine::vector3Df_const____ptr64__class_hedgine::vector3Df_const____ptr64_]
movss dword [rbp - 0x60], xmm0
xorps xmm0, xmm0
movaps xmmword [rsp + 0x60], xmm0
lea r8, [rsp + 0x60]
lea rdx, [rbp - 0x50]
lea rcx, [rbp - 0x70]
call qword [sym.imp.Hedgine_x64.dll_bool___cdecl_hedgine::IntersectsWithLine_class_hedgine::plane3Df_const____ptr64__class_hedgine::line3Df_const____ptr64__class_hedgine::vector3Df____ptr64_]
movaps xmm0, xmmword [0x14028e4e0]
movups xmmword [rbp], xmm0
movaps xmm1, xmmword [0x14028e5b0]
movups xmmword [rbp + 0x10], xmm1
movaps xmm0, xmmword [0x14028e8b0]
movups xmmword [rbp + 0x20], xmm0
movaps xmm1, xmmword [0x14028ee70]
movups xmmword [rbp + 0x30], xmm1
movaps xmm0, xmmword [0x14028e5b0]
movaps xmmword [rbp - 0x80], xmm0
movss xmm2, dword [r15 + 0x38]
movss xmm1, dword [r15 + 0x34]
movss xmm0, dword [r15 + 0x30]
movss dword [rsp + 0x30], xmm0
movss dword [rsp + 0x34], xmm1
movss dword [rsp + 0x38], xmm2
mov dword [rsp + 0x3c], 0
lea r9, [rbp - 0x80]
lea r8, [rsp + 0x60]
lea rdx, [rsp + 0x30]
lea rcx, [rbp]
call qword [sym.imp.Hedgine_x64.dll_void___cdecl_hedgine::BuildCameraLookAtMatrix_LH_class_hedgine::matrix4f____ptr64__class_hedgine::vector3Df_const____ptr64__class_hedgine::vector3Df_const____ptr64__class_hedgine::vector3Df_const____ptr64_]
lea rdx, [rbp]
lea rcx, [rbp + 0xc0]
call qword [sym.imp.Hedgine_x64.dll_class_hedgine::matrix4f___cdecl_hedgine::inverse_class_hedgine::matrix4f__class_hedgine::matrix4f_const____ptr64_]
movups xmm0, xmmword [rax]
movaps xmmword [rbp + 0x40], xmm0
movups xmm1, xmmword [rax + 0x10]
movaps xmmword [rbp + 0x50], xmm1
movups xmm0, xmmword [rax + 0x20]
movaps xmmword [rbp + 0x60], xmm0
movups xmm1, xmmword [rax + 0x30]
movaps xmmword [rbp + 0x70], xmm1
lea rdx, [rbp + 0x40]
lea rcx, [rsp + 0x50]
call qword [sym.imp.Hedgine_x64.dll_class_hedgine::vector3Df___cdecl_hedgine::GetRotationDegrees_class_hedgine::matrix4f_]
mov r12, qword [rsp + 0x78]
mov rax, qword [r12]
lea rdx, [rsp + 0x30]
mov rcx, r12
call qword [rax + 0x98]
movaps xmm0, xmmword [rsp + 0x60]
subps xmm0, xmmword [rax]
movaps xmmword [rbp - 0x80], xmm0
lea rdx, [rbp - 0x80]
lea rcx, [rsp + 0x40]
call qword [sym.imp.Hedgine_x64.dll_class_hedgine::vector3Df___cdecl_hedgine::normalize_class_hedgine::vector3Df__class_hedgine::vector3Df_const____ptr64_]
mov rdi, qword [r14 + 0x328]
mov rax, qword [rdi]
mov rbx, qword [rax + 0xb0]
mov rax, qword [r12]
lea rdx, [rsp + 0x30]
mov rcx, r12
call qword [rax + 0x98]
movaps xmm0, xmmword [rsp + 0x40]
mulps xmm0, xmmword [0x14028f200]
addps xmm0, xmmword [rax]
movaps xmmword [rbp - 0x80], xmm0
lea rdx, [rbp - 0x80]
mov rcx, rdi
call rbx
mov rcx, qword [r14 + 0x328]
mov rax, qword [rcx]
lea rdx, [rsp + 0x50]
call qword [rax + 0xc0]
mov rcx, qword [r15 + 0x88]
mov rax, qword [rcx]
lea r8, [rsp + 0x50]
mov rdx, r15
call qword [rax + 0x1f8]
mov rcx, qword [r14 + 0x330]
mov rax, qword [rcx]
xor edx, edx
call qword [rax + 0x1b8]
mov rbx, rax
mov rcx, qword [r14 + 0x320]
mov rdx, qword [rcx]
mov r8, qword [rdx + 0x98]
lea rdx, [rbp - 0x80]
call r8
movups xmm0, xmmword [rax]
movups xmmword [rbx + 0x10], xmm0
mov rcx, qword [r14 + 0x328]
mov rdx, qword [rcx]
mov rax, qword [rdx + 0xa8]
lea rdx, [rbp - 0x80]
call rax
movups xmm0, xmmword [rax]
movups xmmword [rbx + 0x20], xmm0
mov rcx, qword [r14 + 0x330]
mov rax, qword [rcx]
call qword [rax + 0x1d0]
mov r12, qword [rsp + 0x70]
cmp dword [r14 + 0x374], 2
jne 0x14001090d
lea rdx, [rsp + 0x70]
mov rcx, qword [r14 + 0x310]
call fcn.1400ae080
mov ecx, dword [r14 + 0x33c]
sub ecx, dword [rax + 4]
movd xmm1, ecx
cvtdq2ps xmm1, xmm1
mulss xmm1, dword [0x14028dbdc]
comiss xmm1, xmm12
ja 0x14001088f
movaps xmm10, xmm11
mov rax, qword [r14 + 0x310]
mov rcx, qword [rax + 0xfe8]
mov rax, qword [rax + 0xfa0]
movss xmm0, dword [rax + rcx*4]
andps xmm1, xmmword [0x14028f720]
divss xmm1, xmm0
cvttss2si eax, xmm1
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mulss xmm0, xmm10
mulss xmm1, xmm0
mov dword [rsp + 0x30], 0
mov qword [rsp + 0x38], 0
movaps xmm0, xmmword [rsp + 0x30]
shufps xmm0, xmm0, 0xe1
movss xmm0, xmm1
shufps xmm0, xmm0, 0xe1
movaps xmmword [rsp + 0x30], xmm0
addps xmm0, xmmword [r14 + 0x340]
movaps xmmword [rsp + 0x40], xmm0
mov rax, qword [rsi]
lea rdx, [rsp + 0x40]
mov rcx, rsi
call qword [rax + 0xb0]
cmp dword [r13 + 0x14], 1
jne 0x140010bd7
mov eax, dword [r14 + 0x374]
test eax, eax
jne 0x140010bc7
test rsi, rsi
je 0x140010a48
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + reloc.WSOCK32.dll_htonl]
cmp eax, 0x1c
je 0x140010a48
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + reloc.WSOCK32.dll_htonl]
cmp eax, 0x24
je 0x140010a48
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + reloc.WSOCK32.dll_htonl]
cmp eax, 0x23
je 0x140010a48
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + reloc.WSOCK32.dll_htonl]
cmp eax, 0x1b
je 0x140010a48
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + reloc.WSOCK32.dll_htonl]
cmp eax, 0x21
je 0x140010a48
mov rdi, qword [r14 + 0x310]
mov ecx, 0x60
call fcn.140239a18
mov rbx, rax
mov qword [rsp + 0x70], rax
mov rcx, qword [rsi]
mov r8, qword [rcx + 0xa8]
lea rdx, [rsp + 0x40]
mov rcx, rsi
call r8
mov r9, rax
mov r8, qword [r14 + 0x310]
lea rax, [0x14026f7f0]
mov qword [rbx + 8], rax
lea r13, vtable.hedgine::IReferenceCounter.0
mov qword [rbx + 0x50], r13
mov dword [rbx + 0x58], 1
lea rax, vtable.IEditAction.1.0
mov qword [rbx], rax
mov rcx, qword [rbx + 8]
movsxd rdx, dword [rcx + 4]
lea rax, vtable.IEditAction.0
mov qword [rdx + rbx + 8], rax
mov qword [rbx + 0x10], r8
lea rax, vtable.._AVCMoveAction__GJ___ProcessEvent_CMoveAutoTool__QEAA_NAEBUSEvent_hedgine___Z_.1.0
mov qword [rbx], rax
mov rax, qword [rbx + 8]
movsxd rdx, dword [rax + 4]
lea rax, vtable.._AVCMoveAction__GJ___ProcessEvent_CMoveAutoTool__QEAA_NAEBUSEvent_hedgine___Z_.0
mov qword [rdx + rbx + 8], rax
mov qword [rbx + 0x18], r14
movups xmm0, xmmword [r14 + 0x340]
movups xmmword [rbx + 0x20], xmm0
movups xmm0, xmmword [r9]
movups xmmword [rbx + 0x30], xmm0
mov qword [rbx + 0x40], rsi
mov rdx, rbx
mov rcx, rdi
call fcn.1400a8660
jmp 0x140010a4f
lea r13, vtable.hedgine::IReferenceCounter.0
test r15, r15
je 0x140010b27
mov rbx, qword [r14 + 0x310]
mov ecx, 0x60
call fcn.140239a18
mov r8, rax
mov qword [rsp + 0x70], rax
movss xmm2, dword [r15 + 0x30]
movss xmm3, dword [r15 + 0x34]
movss xmm4, dword [r15 + 0x38]
mov dword [rsp + 0x3c], 0
mov rdx, qword [r14 + 0x310]
lea rax, [0x14026f7f0]
mov qword [r8 + 8], rax
mov qword [r8 + 0x50], r13
mov dword [r8 + 0x58], 1
lea rax, vtable.IEditAction.1.0
mov qword [r8], rax
mov rax, qword [r8 + 8]
movsxd rcx, dword [rax + 4]
lea rax, vtable.IEditAction.0
mov qword [rcx + r8 + 8], rax
mov qword [r8 + 0x10], rdx
lea rax, vtable.._AVCMoveAction__GM___ProcessEvent_CMoveAutoTool__QEAA_NAEBUSEvent_hedgine___Z_.0
mov qword [r8], rax
mov rax, qword [r8 + 8]
movsxd rcx, dword [rax + 4]
lea rax, vtable.._AVCMoveAction__GM___ProcessEvent_CMoveAutoTool__QEAA_NAEBUSEvent_hedgine___Z_.1.0
mov qword [rcx + r8 + 8], rax
movups xmm0, xmmword [r14 + 0x340]
movups xmmword [r8 + 0x20], xmm0
movaps xmm1, xmmword [rsp + 0x30]
movss xmm1, xmm2
shufps xmm1, xmm1, 0xe1
movss xmm1, xmm3
shufps xmm1, xmm1, 0xc6
movss xmm1, xmm4
shufps xmm1, xmm1, 0xc9
movups xmmword [r8 + 0x30], xmm1
mov qword [r8 + 0x40], r15
mov rdx, r8
mov rcx, rbx
call fcn.1400a8660
test r12, r12
je 0x140010bcc
xor ebx, ebx
mov dword [rsp + 0x20], ebx
lea r9, vtable.type_info.0
lea r8, vtable.type_info.0
xor edx, edx
mov rcx, qword [r12 + 0x50]
call sub.VCRUNTIME140.dll___RTDynamicCast
test rax, rax
je 0x140010b67
mov r8, qword [rax]
mov rdx, qword [r12 + 0x58]
mov rcx, rax
call qword [r8 + 0x1c0]
mov dword [rsp + 0x20], ebx
lea r9, vtable.type_info.0
lea r8, vtable.type_info.0
xor edx, edx
mov rcx, qword [r12 + 0x50]
call sub.VCRUNTIME140.dll___RTDynamicCast
test rax, rax
je 0x140010b96
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x238]
mov dword [rsp + 0x20], ebx
lea r9, vtable.type_info.0
lea r8, vtable.type_info.0
xor edx, edx
mov rcx, qword [r12 + 0x50]
call sub.VCRUNTIME140.dll___RTDynamicCast
test rax, rax
je 0x140010bcc
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x238]
jmp 0x140010bcc
cmp eax, 2
jne 0x140010bd7
mov dword [r14 + 0x374], 3
xor al, al
mov rcx, qword [rbp + 0x140]
xor rcx, rsp
call fcn.140239760
lea r11, [rsp + 0x2e0]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
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 r15
pop r14
pop r13
pop r12
pop rbp
ret