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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x48
push ebx
push esi
mov esi, ecx
push edi
mov ecx, dword [esi + 0xc]
mov eax, dword [ecx + 0x14]
push eax
call fcn.00450590
mov dword [ebp - 8], eax
mov eax, dword [esi + 0xc]
mov ecx, dword [eax + 0x3c]
mov edi, dword [eax + 0x38]
movsx edx, word [ecx + 0xc]
cmp word [edi + 0xc], 1
mov dword [ebp - 4], edx
jle 0x4618a9
mov edi, dword [edi + 0x64]
add edi, 0xc
jmp 0x4618cc
push str.Returning_a_NULL_CenterVertice_vector.
call fcn.00558640
movsx eax, word [edi + 0xe]
add esp, 4
push eax
push 1
push str.Bad_Idx:__d__Path_Id:__d
call fcn.00558640
add esp, 0xc
xor edi, edi
mov ecx, dword [esi + 0xc]
mov ebx, dword [ecx + 0x38]
cmp word [ebx + 0xc], 2
jle 0x4618e1
mov eax, dword [ebx + 0x64]
add eax, 0x18
jmp 0x461904
push str.Returning_a_NULL_CenterVertice_vector.
call fcn.00558640
movsx edx, word [ebx + 0xe]
add esp, 4
push edx
push 2
push str.Bad_Idx:__d__Path_Id:__d
call fcn.00558640
add esp, 0xc
xor eax, eax
fld dword [eax]
fld dword [eax + 4]
fld dword [eax + 8]
fxch st(2)
fsub dword [edi]
fxch st(1)
fsub dword [edi + 4]
fxch st(2)
fsub dword [edi + 8]
fxch st(1)
fstp dword [ebp - 0x14]
mov ecx, dword [ebp - 4]
mov eax, dword [esi + 0xc]
fxch st(1)
fstp dword [ebp - 0x10]
mov ebx, dword [eax + 0x3c]
lea edi, [ecx - 2]
test edi, edi
fstp dword [ebp - 0xc]
jl 0x46194a
movsx edx, word [ebx + 0xc]
cmp edi, edx
jge 0x46194a
mov ecx, dword [ebx + 0x68]
lea eax, [edi + edi*2]
lea eax, [ecx + eax*4]
jmp 0x46196c
push str.Returning_a_NULL_VertXDir_vector.
call fcn.00558640
movsx edx, word [ebx + 0xe]
add esp, 4
push edx
push edi
push str.Bad_Idx:__d__Path_Id:__d
call fcn.00558640
add esp, 0xc
xor eax, eax
fld dword [eax + 4]
fld dword [eax + 8]
fld dword [eax]
fxch st(2)
fchs
fxch st(1)
fchs
fxch st(1)
fmul dword [ebp - 0x10]
fxch st(1)
fst dword [ebp - 0x18]
fmul dword [ebp - 0xc]
fxch st(2)
fchs
fst dword [ebp - 0x20]
fmul dword [ebp - 0x14]
fxch st(2)
faddp st(1)
fxch st(1)
mov eax, dword [esi + 0xc]
faddp st(1)
mov ebx, dword [eax + 0x3c]
test edi, edi
fstp dword [ebp - 4]
jl 0x4619bb
movsx ecx, word [ebx + 0xc]
cmp edi, ecx
jge 0x4619bb
mov eax, dword [ebx + 0x70]
lea edx, [edi + edi*2]
lea eax, [eax + edx*4]
jmp 0x4619dd
push str.Returning_a_NULL_VertZDir_vector.
call fcn.00558640
movsx ecx, word [ebx + 0xe]
add esp, 4
push ecx
push edi
push str.Bad_Idx:__d__Path_Id:__d
call fcn.00558640
add esp, 0xc
xor eax, eax
fld dword [eax + 4]
fld dword [eax + 8]
fld dword [eax]
fxch st(2)
fchs
fxch st(1)
fchs
fxch st(1)
fmul dword [ebp - 0x10]
fxch st(1)
fst dword [ebp - 0x18]
fmul dword [ebp - 0xc]
fxch st(2)
fchs
fst dword [ebp - 0x20]
fmul dword [ebp - 0x14]
fxch st(2)
faddp st(1)
fld dword [ebp - 4]
fxch st(2)
faddp st(1)
mov eax, dword [ebp - 8]
mov edx, 1
cmp eax, edx
fpatan
je 0x461a62
fld dword [0x5a9aa0]
fld st(1)
fxch st(1)
fchs
fxch st(1)
fcompp
fnstsw ax
test ah, 0x41
jne 0x461a50
fcomp dword [0x5a9aa0]
fnstsw ax
test dl, ah
jne 0x461a64
mov ecx, esi
call fcn.00462c80
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
mov ecx, esi
fstp st(0)
call fcn.00462c80
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
fstp st(0)
mov eax, dword [esi + 0xc]
mov ecx, dword [ebp + 8]
cmp ecx, edx
fld dword [eax + 0xc]
fadd dword [eax + 8]
fsub dword [0x590d30]
jne 0x461b4a
fld st(0)
fmul dword [0x590d20]
movsx ecx, word [esi + 0xa4]
fsubr dword [esi + 0xc8]
cmp ecx, edx
fsub dword [0x590d00]
fstp dword [ebp - 0x48]
jle 0x461ad5
lea ebx, [ebp - 0x44]
lea edi, [esi + 0xcc]
dec ecx
fld dword [edi + 4]
fsub dword [edi]
fcom st(1)
fnstsw ax
test ah, 0x41
jne 0x461acd
fmul qword [0x590d38]
fld dword [edi]
fxch st(1)
fsubp st(1)
inc edx
add ebx, 4
fstp dword [ebx - 4]
jmp 0x461acf
fstp st(0)
add edi, 8
dec ecx
jne 0x461aaa
movsx eax, word [esi + 0xa4]
fmul dword [0x590d24]
xor edi, edi
inc edx
fsubr dword [esi + eax*8 + 0xc4]
test edx, edx
fsub dword [0x590cfc]
fstp dword [ebp + edx*4 - 0x4c]
jle 0x461b1d
lea ebx, [ebp - 0x48]
fld dword [ebx]
fcomp dword [esi + 0xb8]
fnstsw ax
test ah, 0x41
je 0x461b16
inc edi
add ebx, 4
cmp edi, edx
jl 0x461afd
jmp 0x461b1d
fld dword [ebp + edi*4 - 0x48]
fstp dword [ebp - 4]
dec edx
test edx, edx
jl 0x461c26
lea edi, [ebp + edx*4 - 0x48]
fld dword [edi]
fcomp dword [esi + 0xb8]
fnstsw ax
test ah, 1
jne 0x461c0d
dec edx
sub edi, 4
test edx, edx
jge 0x461b2a
jmp 0x461c26
cmp word [esi + 0xa4], 0
jne 0x461c16
movsx ecx, word [esi + 0xa6]
fld st(0)
fmul dword [0x590d20]
cmp ecx, edx
fsubr dword [esi + 0x128]
fstp dword [ebp - 0x48]
jle 0x461ba9
lea ebx, [ebp - 0x44]
lea edi, [esi + 0x12c]
dec ecx
fld dword [edi + 4]
fsub dword [edi]
fcom st(1)
fnstsw ax
test ah, 0x41
jne 0x461ba1
fmul qword [0x590d38]
fld dword [edi]
fxch st(1)
fsubp st(1)
inc edx
add ebx, 4
fstp dword [ebx - 4]
jmp 0x461ba3
fstp st(0)
add edi, 8
dec ecx
jne 0x461b7e
movsx eax, word [esi + 0xa6]
fmul dword [0x590d24]
xor edi, edi
inc edx
fsubr dword [esi + eax*8 + 0x124]
test edx, edx
fstp dword [ebp + edx*4 - 0x4c]
jle 0x461beb
lea ebx, [ebp - 0x48]
fld dword [ebx]
fcomp dword [esi + 0xb8]
fnstsw ax
test ah, 0x41
je 0x461be4
inc edi
add ebx, 4
cmp edi, edx
jl 0x461bcb
jmp 0x461beb
fld dword [ebp + edi*4 - 0x48]
fstp dword [ebp - 4]
dec edx
test edx, edx
jl 0x461c26
lea edi, [ebp + edx*4 - 0x48]
fld dword [edi]
fcomp dword [esi + 0xb8]
fnstsw ax
test ah, 1
jne 0x461c0d
dec edx
sub edi, 4
test edx, edx
jge 0x461bf4
jmp 0x461c26
fld dword [ebp + edx*4 - 0x48]
fstp dword [ebp + 8]
jmp 0x461c26
mov edx, dword [esi + 0xb8]
mov eax, edx
mov dword [ebp + 8], edx
fstp st(0)
mov dword [ebp - 4], eax
fld dword [ebp - 4]
fld dword [esi + 0xb8]
fsub dword [ebp + 8]
fxch st(1)
fsub dword [esi + 0xb8]
mov ecx, dword [esi + 0xc]
mov edx, dword [ecx + 0x3c]
fcompp
fnstsw ax
test ah, 0x41
movsx eax, word [edx + 0x10]
jne 0x461c85
fld dword [ebp + 8]
fld dword [edx + eax*8 + 0xd4]
fchs
fxch st(1)
fcompp
fnstsw ax
test ah, 0x41
jne 0x461c96
cmp word [edx + 0x1c], 0
je 0x461c80
fld dword [ebp + 8]
fcomp dword [0x590d10]
fnstsw ax
test ah, 1
je 0x461c80
mov edx, dword [ebp - 4]
jmp 0x461cd6
mov eax, dword [ebp + 8]
jmp 0x461cb5
fld dword [edx + eax*8 + 0xd4]
fcomp dword [ebp - 4]
fnstsw ax
test ah, 0x41
jne 0x461c9b
mov edx, dword [ebp - 4]
jmp 0x461cd6
cmp word [edx + 0x1c], 0
je 0x461cd3
fld dword [ebp + 8]
fcomp dword [0x590d10]
fnstsw ax
test ah, 1
je 0x461cd3
mov eax, dword [ebp - 4]
fld dword [esi + 0xc0]
fadd dword [ecx + 0x14]
mov edx, dword [esi + 0x10]
push eax
push ecx
add edx, 0xd0
lea eax, [esi + 0x78]
fstp dword [esp]
push edx
push eax
jmp 0x461cf1
mov edx, dword [ebp + 8]
fld dword [esi + 0xc0]
fadd dword [ecx + 0x14]
mov eax, dword [esi + 0x10]
push edx
push ecx
add eax, 0xd0
lea edx, [esi + 0x78]
fstp dword [esp]
push eax
push edx
call fcn.0044e140
mov ecx, esi
call fcn.00461d10
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4