Function at 0x14000f8b0
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 [0x1402e6010]
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 0x140010b77
mov rax, qword [r14 + 0x310]
mov rsi, qword [rax + 0xee0]
mov r15, qword [rax + 0xef8]
mov r12, qword [rax + 0xf00]
mov qword [rsp + 0x70], r12
mov rcx, qword [r14 + 0x10]
mov rax, qword [rcx]
call qword [rax + 0x468]
mov rdi, rax
mov qword [rsp + 0x78], rax
test rsi, rsi
je 0x14000f9b5
mov rdx, qword [rsi]
mov rcx, rsi
call qword [rdx + reloc.WSOCK32.dll_htonl]
cmp eax, 0x1c
je 0x14000f9b5
mov rdx, qword [rsi]
mov rcx, rsi
call qword [rdx + reloc.WSOCK32.dll_htonl]
cmp eax, 0x24
je 0x14000f9b5
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + reloc.WSOCK32.dll_htonl]
cmp eax, 0x23
je 0x14000f9b5
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + reloc.WSOCK32.dll_htonl]
cmp eax, 0x1b
je 0x14000f9b5
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + reloc.WSOCK32.dll_htonl]
cmp eax, 0x21
jne 0x14000f9c3
test r15, r15
je 0x140010b77
test rsi, rsi
je 0x14000f9f9
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + reloc.WSOCK32.dll_htonl]
cmp eax, 0x1c
jne 0x14000f9d6
mov rsi, rbx
jmp 0x14000f9f9
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + reloc.WSOCK32.dll_htonl]
cmp eax, 0x24
jne 0x14000f9e9
mov rsi, rbx
jmp 0x14000f9f9
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 0x14000fbd2
test r12, r12
jne 0x140010b77
cmp dword [r13 + 0xc], 0x10
jne 0x14000fbd2
cmp byte [r13 + 0x10], bl
je 0x14000fa9a
cmp dword [r14 + 0x374], 1
je 0x14000fa9a
mov dword [r14 + 0x374], 1
test rsi, rsi
je 0x14000fa9a
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + reloc.WSOCK32.dll_htonl]
cmp eax, 0x1c
je 0x14000fa9a
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + reloc.WSOCK32.dll_htonl]
cmp eax, 0x24
je 0x14000fa9a
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + reloc.WSOCK32.dll_htonl]
cmp eax, 0x23
je 0x14000fa9a
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + reloc.WSOCK32.dll_htonl]
cmp eax, 0x1b
je 0x14000fa9a
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + reloc.WSOCK32.dll_htonl]
cmp eax, 0x21
je 0x14000fa9a
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 0x14000fbd2
test rsi, rsi
je 0x14000fbc7
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + reloc.WSOCK32.dll_htonl]
cmp eax, 0x1c
je 0x14000fbc7
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + reloc.WSOCK32.dll_htonl]
cmp eax, 0x24
je 0x14000fbc7
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + reloc.WSOCK32.dll_htonl]
cmp eax, 0x23
je 0x14000fbc7
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + reloc.WSOCK32.dll_htonl]
cmp eax, 0x1b
je 0x14000fbc7
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + reloc.WSOCK32.dll_htonl]
cmp eax, 0x21
je 0x14000fbc7
mov rdi, qword [r14 + 0x310]
mov ecx, 0x60
call fcn.140241c38
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, [0x140278890]
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.1400ad000
mov rdi, qword [rsp + 0x78]
mov dword [r14 + 0x374], 3
cmp dword [r13], 0
jne 0x140010b77
mov rbx, qword [r14 + 0x310]
lea rdx, [rbp - 0x10]
mov rcx, rbx
call fcn.1400b2470
mov r8, rax
lea rdx, [rbp - 0x30]
mov rcx, rbx
call fcn.1400ace60
xorps xmm12, xmm12
cmp dword [r13 + 0x14], 0
jne 0x14000fd90
lea rdx, [rbp - 0x10]
mov rcx, qword [r14 + 0x310]
call fcn.1400b2470
mov ecx, dword [rax]
mov dword [r14 + 0x338], ecx
mov eax, dword [rax + 4]
mov dword [r14 + 0x33c], eax
test rsi, rsi
je 0x14000fcd0
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + reloc.WSOCK32.dll_htonl]
cmp eax, 0x1c
je 0x14000fcd0
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + reloc.WSOCK32.dll_htonl]
cmp eax, 0x24
je 0x14000fcd0
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + reloc.WSOCK32.dll_htonl]
cmp eax, 0x23
je 0x14000fcd0
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + reloc.WSOCK32.dll_htonl]
cmp eax, 0x1b
je 0x14000fcd0
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + reloc.WSOCK32.dll_htonl]
cmp eax, 0x21
je 0x14000fcd0
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.1400111b0
movss dword [r14 + 0x370], xmm0
test r15, r15
je 0x14000fd61
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 0x14000fd90
movzx eax, byte [r13 + 0x1e]
neg al
sbb ecx, ecx
and ecx, 2
mov dword [r14 + 0x374], ecx
cmp dword [r13 + 0x14], 6
jne 0x1400108ad
movss xmm10, dword [0x1402972e4]
movss xmm11, dword [0x140297aa4]
cmp dword [r14 + 0x374], 0
jne 0x140010297
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 + 0xee0]
test rbx, rbx
je 0x1400100df
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0x30]
test rax, rax
je 0x14000fe1c
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.1400ac920
test al, al
je 0x1400100b9
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + reloc.WSOCK32.dll_htonl]
cmp eax, 0x1c
je 0x1400100b9
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + reloc.WSOCK32.dll_htonl]
cmp eax, 0x24
je 0x1400100b9
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + reloc.WSOCK32.dll_htonl]
cmp eax, 0x23
je 0x1400100b9
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + reloc.WSOCK32.dll_htonl]
cmp eax, 0x1b
je 0x1400100b9
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + reloc.WSOCK32.dll_htonl]
cmp eax, 0x21
je 0x1400100b9
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 0x14000ff37
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 0x14000ff48
movss xmm8, dword [rbp - 8]
movss xmm9, dword [rbp - 0xc]
movss xmm4, dword [rbp - 0x10]
comiss xmm4, xmm12
jbe 0x14000ff54
movaps xmm13, xmm10
jmp 0x14000ff58
movaps xmm13, xmm11
mov rdx, qword [r14 + 0x310]
mov rcx, qword [rdx + 0x1068]
mov rax, qword [rdx + 0x1020]
movss xmm7, dword [rax + rcx*4]
movss dword [rbp - 0x10], xmm4
mov dword [rbp - 0xc], 0
mov rcx, qword [rdx + 0x1068]
mov rax, qword [rdx + 0x1020]
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 xmm14, eax
cvtdq2ps xmm14, xmm14
mulss xmm13, xmm7
mulss xmm14, xmm13
comiss xmm9, xmm12
jbe 0x14000ffc2
movaps xmm13, xmm10
jmp 0x14000ffc6
movaps xmm13, xmm11
movss dword [rbp - 0x10], xmm9
mov dword [rbp - 0xc], 0
mov rax, qword [r14 + 0x310]
mov rcx, qword [rax + 0x1068]
mov rax, qword [rax + 0x1020]
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
movd mm7, eax
cvtdq2ps xmm7, xmm7
mulss xmm13, xmm6
mulss xmm7, xmm13
comiss xmm8, xmm12
jbe 0x14001001c
movaps xmm9, xmm10
jmp 0x140010020
movaps xmm9, xmm11
movss dword [rbp - 0x10], xmm8
mov dword [rbp - 0xc], 0
mov rax, qword [r14 + 0x310]
mov rcx, qword [rax + 0x1068]
mov rax, qword [rax + 0x1020]
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 0x1400100df
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 0x140010297
lea r8, [rsp + 0x30]
lea rdx, [rsp + 0x50]
mov rcx, qword [r14 + 0x310]
call fcn.1400ac920
test al, al
je 0x140010297
movaps xmm0, xmmword [rsp + 0x50]
subps xmm0, xmmword [r14 + 0x340]
movaps xmmword [rsp + 0x60], xmm0
comiss xmm0, xmm12
jbe 0x140010124
movaps xmm7, xmm10
jmp 0x140010128
movaps xmm7, xmm11
mov rax, qword [r14 + 0x310]
mov rcx, qword [rax + 0x1068]
mov rax, qword [rax + 0x1020]
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 0x140010184
movaps xmm9, xmm10
jmp 0x140010188
movaps xmm9, xmm11
mov rdx, qword [r14 + 0x310]
mov rcx, qword [rdx + 0x1068]
mov rax, qword [rdx + 0x1020]
movss xmm7, dword [rax + rcx*4]
movss dword [rbp - 0x10], xmm0
mov dword [rbp - 0xc], 0
mov rcx, qword [rdx + 0x1068]
mov rax, qword [rdx + 0x1020]
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 0x1400101f5
movaps xmm9, xmm10
jmp 0x1400101f9
movaps xmm9, xmm11
movss dword [rbp - 0x10], xmm0
mov dword [rbp - 0xc], 0
mov rax, qword [r14 + 0x310]
mov rcx, qword [rax + 0x1068]
mov rax, qword [rax + 0x1020]
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 0x1400107ed
mov rbx, qword [r14 + 0x310]
mov r12, qword [rbx + 0xee0]
movss xmm7, dword [0x140298d90]
test r12, r12
je 0x140010594
lea rdx, [rbp - 0x10]
mov rcx, rbx
call fcn.1400b2470
mov r8, rax
lea rdx, [rbp - 0x50]
mov rcx, rbx
call fcn.1400ace60
movaps xmm6, xmmword [0x140297be0]
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 [0x140297b10]
movups xmmword [rbp], xmm0
movaps xmm1, xmm6
movups xmmword [rbp + 0x10], xmm6
movaps xmm0, xmmword [0x140297f00]
movups xmmword [rbp + 0x20], xmm0
movaps xmm1, xmmword [0x1402984d0]
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 [0x140298860]
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 0x14001051e
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 0x1400107e8
mov rbx, qword [r14 + 0x310]
lea rdx, [rbp - 0x10]
mov rcx, rbx
call fcn.1400b2470
mov r8, rax
lea rdx, [rbp - 0x50]
mov rcx, rbx
call fcn.1400ace60
movaps xmm0, xmmword [0x140297be0]
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 [0x140297b10]
movups xmmword [rbp], xmm0
movaps xmm1, xmmword [0x140297be0]
movups xmmword [rbp + 0x10], xmm1
movaps xmm0, xmmword [0x140297f00]
movups xmmword [rbp + 0x20], xmm0
movaps xmm1, xmmword [0x1402984d0]
movups xmmword [rbp + 0x30], xmm1
movaps xmm0, xmmword [0x140297be0]
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 [0x140298860]
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 0x1400108ad
lea rdx, [rsp + 0x70]
mov rcx, qword [r14 + 0x310]
call fcn.1400b2470
mov ecx, dword [r14 + 0x33c]
sub ecx, dword [rax + 4]
movd xmm1, ecx
cvtdq2ps xmm1, xmm1
mulss xmm1, dword [0x14029720c]
comiss xmm1, xmm12
ja 0x14001082f
movaps xmm10, xmm11
mov rax, qword [r14 + 0x310]
mov rcx, qword [rax + 0x1068]
mov rax, qword [rax + 0x1020]
movss xmm0, dword [rax + rcx*4]
andps xmm1, xmmword [0x140298d80]
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 0x140010b77
mov eax, dword [r14 + 0x374]
test eax, eax
jne 0x140010b67
test rsi, rsi
je 0x1400109e8
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + reloc.WSOCK32.dll_htonl]
cmp eax, 0x1c
je 0x1400109e8
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + reloc.WSOCK32.dll_htonl]
cmp eax, 0x24
je 0x1400109e8
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + reloc.WSOCK32.dll_htonl]
cmp eax, 0x23
je 0x1400109e8
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + reloc.WSOCK32.dll_htonl]
cmp eax, 0x1b
je 0x1400109e8
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + reloc.WSOCK32.dll_htonl]
cmp eax, 0x21
je 0x1400109e8
mov rdi, qword [r14 + 0x310]
mov ecx, 0x60
call fcn.140241c38
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, [0x140278890]
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.1400ad000
jmp 0x1400109ef
lea r13, vtable.hedgine::IReferenceCounter.0
test r15, r15
je 0x140010ac7
mov rbx, qword [r14 + 0x310]
mov ecx, 0x60
call fcn.140241c38
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, [0x140278890]
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.1400ad000
test r12, r12
je 0x140010b6c
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 0x140010b07
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 0x140010b36
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 0x140010b6c
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x238]
jmp 0x140010b6c
cmp eax, 2
jne 0x140010b77
mov dword [r14 + 0x374], 3
xor al, al
mov rcx, qword [rbp + 0x140]
xor rcx, rsp
call fcn.140241980
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