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

Disassembly:
push 0xffffffffffffffff
push 0x100d8f39
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x104
push esi
mov esi, ecx
mov eax, dword [esi + 0xc8]
mov ecx, dword [esi + 0x138]
push edi
mov edi, dword [eax + 0x30]
call fcn.10066220
test ax, ax
mov dword [esp + 0x34], 0
mov dword [esp + 0xb4], eax
jbe 0x10027aa3
push ebx
mov ebx, dword [sym.imp.MSVCP71.dll_bool___cdecl_std::operator_char__struct_std::char_traits_char___class_std::allocator_char___class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const___char_const__]
push ebp
mov ecx, dword [esp + 0x3c]
push ecx
mov ecx, dword [esi + 0x138]
call fcn.10066300
fld dword [esp + 0x128]
fcomp dword [esp + 0x124]
mov ebp, eax
mov edx, dword [ebp + 8]
mov dword [esp + 0x28], edx
fnstsw ax
test ah, 1
jne 0x10026f65
fld dword [esp + 0x28]
fcomp dword [esp + 0x124]
fnstsw ax
test ah, 1
jne 0x10026f65
fld dword [esp + 0x28]
fcomp dword [esp + 0x128]
fnstsw ax
test ah, 5
jnp 0x10026f9e
fld dword [esp + 0x128]
fcomp dword [esp + 0x124]
fnstsw ax
test ah, 5
jp 0x10026fa7
fld dword [esp + 0x28]
fcomp dword [esp + 0x124]
fnstsw ax
test ah, 1
je 0x10026f9e
fld dword [esp + 0x28]
fcomp dword [esp + 0x128]
fnstsw ax
test ah, 5
jp 0x10026fa7
mov byte [esi + 0x268], 1
jmp 0x10026fb5
mov al, byte [esi + 0x268]
test al, al
je 0x10027a8a
mov eax, dword [ebp + 0xc]
lea ecx, [ebp + 0x10]
push ecx
lea ecx, [esp + 0x84]
mov dword [esp + 0x14], eax
call dword [sym.imp.OgreMain.dll_public:_void___thiscall_Ogre::Vector3::constructor_class_Ogre::Vector3_const__]
mov edx, dword [ebp + 0x1c]
mov eax, dword [ebp + 0x20]
mov ecx, dword [ebp + 0x24]
mov dword [esp + 0x1c], edx
mov edx, dword [ebp + 0x28]
mov dword [esp + 0x20], eax
mov eax, dword [ebp + 0x2c]
mov dword [esp + 0x24], ecx
mov ecx, dword [ebp + 0x30]
mov dword [esp + 0x70], edx
mov edx, dword [ebp + 0x34]
mov dword [esp + 0x74], eax
mov eax, dword [ebp + 0x38]
mov dword [esp + 0x78], ecx
mov ecx, dword [ebp + 0x3c]
mov dword [esp + 0x2c], edx
mov edx, dword [ebp + 0x40]
mov dword [esp + 0x30], eax
mov eax, dword [ebp + 0x44]
mov dword [esp + 0x34], ecx
add ebp, 0x48
push ebp
lea ecx, [esp + 0xcc]
mov dword [esp + 0x80], edx
mov dword [esp + 0x3c], eax
call dword [sym.imp.MSVCP71.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const__]
mov al, byte [esi + 0x269]
xor ebp, ebp
test al, al
mov dword [esp + 0x11c], ebp
jne 0x10027533
mov ecx, edi
call dword [sym.imp.OgreMain.dll_public:_class_Ogre::Vector3_const____thiscall_Ogre::Camera::getPosition_void_const]
mov ecx, dword [eax]
mov dword [esi + 0x26c], ecx
mov edx, dword [eax + 4]
mov dword [esi + 0x270], edx
mov eax, dword [eax + 8]
mov ecx, edi
mov dword [esi + 0x274], eax
call dword [sym.imp.OgreMain.dll_public:_class_Ogre::Quaternion_const____thiscall_Ogre::Camera::getOrientation_void_const]
mov ecx, dword [eax]
mov dword [esi + 0x278], ecx
mov edx, dword [eax + 4]
mov dword [esi + 0x27c], edx
mov ecx, dword [eax + 8]
mov dword [esi + 0x280], ecx
mov edx, dword [eax + 0xc]
mov dword [esi + 0x284], edx
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 0x118]
mov ecx, dword [eax]
lea edx, [esp + 0xc8]
push str.QuadraticDecrease
push edx
mov dword [esi + 0x288], ecx
call ebx
add esp, 8
test al, al
je 0x100270f9
fld dword [esi + 0x264]
fld dword [esp + 0x10]
fcomp dword [0x100ecb9c]
fnstsw ax
test ah, 0x41
jp 0x100270de
fstp st(0)
fld dword [0x100ecb9c]
jmp 0x100271ac
fld dword [0x100ec514]
fdiv dword [esp + 0x10]
fmulp st(1)
fsubr dword [0x100ec514]
fld st(0)
fmulp st(1)
jmp 0x100271ac
lea eax, [esp + 0xc8]
push str.QuadraticIncrease
push eax
call ebx
add esp, 8
test al, al
je 0x10027142
fld dword [esi + 0x264]
fld dword [esp + 0x10]
fcomp dword [0x100ecb9c]
fnstsw ax
test ah, 0x41
jp 0x10027130
fstp st(0)
fld dword [0x100ecb9c]
jmp 0x100271ac
fld dword [0x100ec514]
fdiv dword [esp + 0x10]
fmulp st(1)
fld st(0)
fmulp st(1)
jmp 0x100271ac
lea ecx, [esp + 0xc8]
push str.LinearDecrease
push ecx
call ebx
add esp, 8
test al, al
je 0x10027183
fld dword [esp + 0x10]
fcomp dword [0x100ecb9c]
fnstsw ax
test ah, 0x41
jp 0x10027171
fld dword [0x100ecb9c]
jmp 0x100271ac
fld dword [esi + 0x264]
fdiv dword [esp + 0x10]
fsubr dword [0x100ec514]
jmp 0x100271ac
lea edx, [esp + 0xc8]
push str.LinearIncrease
push edx
call ebx
add esp, 8
test al, al
je 0x100271b0
mov eax, dword [esp + 0x10]
mov ecx, dword [esi + 0x264]
push eax
push ecx
mov ecx, esi
call fcn.10025530
fstp dword [esp + 0x14]
fld dword [esp + 0x1c]
mov edx, dword [esp + 0x80]
fcomp dword [0x100ecb9c]
mov dword [esp + 0xc4], edx
fnstsw ax
test ah, 0x41
jp 0x100271d7
fld dword [0x100ecb9c]
jmp 0x10027203
fld dword [0x100ec514]
mov eax, dword [sym.imp.OgreMain.dll_float_const_Ogre::Math::TWO_PI]
fdiv dword [esp + 0x1c]
push ebp
push ecx
fdivr dword [eax]
fmul dword [0x100ecb9c]
fstp dword [esp]
call dword [sym.imp.OgreMain.dll_public:_static_float___cdecl_Ogre::Math::Cos_float__bool_]
fmul dword [esp + 0xcc]
add esp, 8
fmul dword [esp + 0x14]
mov ecx, dword [esp + 0x84]
mov dword [esp + 0xac], ecx
fstp dword [esp + 0x40]
fld dword [esp + 0x20]
fcomp dword [0x100ecb9c]
fnstsw ax
test ah, 0x41
jp 0x10027232
fld dword [0x100ecb9c]
jmp 0x1002725f
fld dword [0x100ec514]
mov edx, dword [sym.imp.OgreMain.dll_float_const_Ogre::Math::TWO_PI]
fdiv dword [esp + 0x20]
push ebp
push ecx
fdivr dword [edx]
fmul dword [0x100ecb9c]
fstp dword [esp]
call dword [sym.imp.OgreMain.dll_public:_static_float___cdecl_Ogre::Math::Cos_float__bool_]
fmul dword [esp + 0xb4]
add esp, 8
fmul dword [esp + 0x14]
mov eax, dword [esp + 0x88]
mov dword [esp + 0xb8], eax
fstp dword [esp + 0x44]
fld dword [esp + 0x24]
fcomp dword [0x100ecb9c]
fnstsw ax
test ah, 0x41
jp 0x1002728e
fld dword [0x100ecb9c]
jmp 0x100272bb
fld dword [0x100ec514]
mov ecx, dword [sym.imp.OgreMain.dll_float_const_Ogre::Math::TWO_PI]
fdiv dword [esp + 0x24]
push ebp
push ecx
fdivr dword [ecx]
fmul dword [0x100ecb9c]
fstp dword [esp]
call dword [sym.imp.OgreMain.dll_public:_static_float___cdecl_Ogre::Math::Cos_float__bool_]
fmul dword [esp + 0xc0]
add esp, 8
fmul dword [esp + 0x14]
lea ecx, [esp + 0xb4]
fld dword [esp + 0x40]
push ecx
fld dword [esp + 0x48]
mov ecx, edi
fld st(2)
fstp dword [esp + 0xf0]
mov edx, dword [esp + 0xf0]
fld dword [esp + 0x44]
fsub dword [esi + 0x298]
fstp dword [esp + 0x44]
fld dword [esp + 0x48]
fsub dword [esi + 0x29c]
fstp dword [esp + 0x48]
fxch st(2)
fsub dword [esi + 0x2a0]
mov dword [esi + 0x2a0], edx
fstp dword [esp + 0x4c]
fstp dword [esi + 0x298]
fstp dword [esi + 0x29c]
mov eax, dword [sym.imp.OgreMain.dll_float_const_Ogre::Math::fDeg2Rad]
fld dword [esp + 0x48]
fmul dword [eax]
fstp dword [esp + 0xb8]
call dword [sym.imp.OgreMain.dll_public:_void___thiscall_Ogre::Camera::yaw_class_Ogre::Radian_const__]
mov edx, dword [sym.imp.OgreMain.dll_float_const_Ogre::Math::fDeg2Rad]
fld dword [esp + 0x40]
fmul dword [edx]
lea eax, [esp + 0x90]
push eax
mov ecx, edi
fstp dword [esp + 0x94]
call dword [sym.imp.OgreMain.dll_public:_void___thiscall_Ogre::Camera::pitch_class_Ogre::Radian_const__]
mov ecx, dword [sym.imp.OgreMain.dll_float_const_Ogre::Math::fDeg2Rad]
fld dword [esp + 0x48]
fmul dword [ecx]
lea edx, [esp + 0x98]
push edx
mov ecx, edi
fstp dword [esp + 0x9c]
call dword [sym.imp.OgreMain.dll_public:_void___thiscall_Ogre::Camera::roll_class_Ogre::Radian_const__]
fld dword [esp + 0x2c]
fcomp dword [0x100ecb9c]
fnstsw ax
test ah, 0x41
jp 0x10027392
fld dword [0x100ecb9c]
jmp 0x100273bb
fld dword [0x100ec514]
mov eax, dword [sym.imp.OgreMain.dll_float_const_Ogre::Math::TWO_PI]
fdiv dword [esp + 0x2c]
push ebp
push ecx
fdivr dword [eax]
fmul dword [0x100ecb9c]
fstp dword [esp]
call dword [sym.imp.OgreMain.dll_public:_static_float___cdecl_Ogre::Math::Cos_float__bool_]
fmul dword [esp + 0x78]
add esp, 8
fmul dword [esp + 0x14]
fstp dword [esp + 0x64]
fld dword [esp + 0x30]
fcomp dword [0x100ecb9c]
fnstsw ax
test ah, 0x41
jp 0x100273dc
fld dword [0x100ecb9c]
jmp 0x10027406
fld dword [0x100ec514]
mov ecx, dword [sym.imp.OgreMain.dll_float_const_Ogre::Math::TWO_PI]
fdiv dword [esp + 0x30]
push ebp
push ecx
fdivr dword [ecx]
fmul dword [0x100ecb9c]
fstp dword [esp]
call dword [sym.imp.OgreMain.dll_public:_static_float___cdecl_Ogre::Math::Cos_float__bool_]
fmul dword [esp + 0x7c]
add esp, 8
fmul dword [esp + 0x14]
fstp dword [esp + 0x68]
fld dword [esp + 0x34]
fcomp dword [0x100ecb9c]
fnstsw ax
test ah, 0x41
jp 0x10027427
fld dword [0x100ecb9c]
jmp 0x10027454
fld dword [0x100ec514]
mov edx, dword [sym.imp.OgreMain.dll_float_const_Ogre::Math::TWO_PI]
fdiv dword [esp + 0x34]
push ebp
push ecx
fdivr dword [edx]
fmul dword [0x100ecb9c]
fstp dword [esp]
call dword [sym.imp.OgreMain.dll_public:_static_float___cdecl_Ogre::Math::Cos_float__bool_]
fmul dword [esp + 0x80]
add esp, 8
fmul dword [esp + 0x14]
lea ecx, [esp + 0x64]
fld dword [esp + 0x64]
push ecx
fld dword [esp + 0x6c]
mov ecx, edi
fld st(2)
fstp dword [esp + 0x114]
mov eax, dword [esp + 0x114]
fld dword [esp + 0x68]
fsub dword [esi + 0x28c]
fstp dword [esp + 0x68]
fld dword [esp + 0x6c]
fsub dword [esi + 0x290]
fstp dword [esp + 0x6c]
fxch st(2)
fsub dword [esi + 0x294]
mov dword [esi + 0x294], eax
fstp dword [esp + 0x70]
fstp dword [esi + 0x28c]
fstp dword [esi + 0x290]
call dword [sym.imp.OgreMain.dll_public:_void___thiscall_Ogre::Camera::moveRelative_class_Ogre::Vector3_const__]
fld dword [esp + 0x38]
fcomp dword [0x100ecb9c]
fnstsw ax
test ah, 0x41
jp 0x100274d0
fld dword [0x100ecb9c]
jmp 0x100274fd
fld dword [0x100ec514]
mov edx, dword [sym.imp.OgreMain.dll_float_const_Ogre::Math::TWO_PI]
fdiv dword [esp + 0x38]
push ebp
push ecx
fdivr dword [edx]
fmul dword [0x100ecb9c]
fstp dword [esp]
call dword [sym.imp.OgreMain.dll_public:_static_float___cdecl_Ogre::Math::Cos_float__bool_]
fmul dword [esp + 0x84]
add esp, 8
fmul dword [esp + 0x14]
mov eax, dword [sym.imp.OgreMain.dll_float_const_Ogre::Math::fDeg2Rad]
mov edx, dword [edi]
mov ecx, edi
fmul dword [eax]
lea eax, [esp + 0xa0]
push eax
fadd dword [esi + 0x288]
fstp dword [esp + 0xa4]
call dword [edx + 0x114]
mov byte [esi + 0x269], 1
jmp 0x10027a72
fld dword [esp + 0x12c]
fadd dword [esi + 0x264]
fst dword [esi + 0x264]
fcomp dword [esp + 0x10]
fnstsw ax
test ah, 0x41
jne 0x100275db
lea ecx, [esi + 0x278]
push ecx
mov ecx, edi
call dword [sym.imp.OgreMain.dll_public:_void___thiscall_Ogre::Camera::setOrientation_class_Ogre::Quaternion_const__]
lea edx, [esi + 0x26c]
push edx
mov ecx, edi
call dword [sym.imp.OgreMain.dll_public:_void___thiscall_Ogre::Camera::setPosition_class_Ogre::Vector3_const__]
mov eax, dword [edi]
lea ecx, [esi + 0x288]
push ecx
mov ecx, edi
call dword [eax + 0x114]
mov dword [esi + 0x264], ebp
mov byte [esi + 0x268], 0
mov byte [esi + 0x269], 0
mov eax, dword [sym.imp.OgreMain.dll_class_Ogre::Vector3_const_Ogre::Vector3::ZERO]
mov edx, dword [eax]
mov dword [esi + 0x28c], edx
mov ecx, dword [eax + 4]
mov dword [esi + 0x290], ecx
mov edx, dword [eax + 8]
mov dword [esi + 0x294], edx
mov eax, dword [sym.imp.OgreMain.dll_class_Ogre::Vector3_const_Ogre::Vector3::ZERO]
mov ecx, dword [eax]
mov dword [esi + 0x298], ecx
mov edx, dword [eax + 4]
mov dword [esi + 0x29c], edx
mov eax, dword [eax + 8]
mov dword [esi + 0x2a0], eax
jmp 0x10027a72
lea ecx, [esp + 0xc8]
push str.QuadraticDecrease
push ecx
call ebx
add esp, 8
test al, al
je 0x10027630
fld dword [esi + 0x264]
fld dword [esp + 0x10]
fcomp dword [0x100ecb9c]
fnstsw ax
test ah, 0x41
jp 0x10027615
fstp st(0)
fld dword [0x100ecb9c]
jmp 0x100276cd
fld dword [0x100ec514]
fdiv dword [esp + 0x10]
fmulp st(1)
fsubr dword [0x100ec514]
fld st(0)
fmulp st(1)
jmp 0x100276cd
lea edx, [esp + 0xc8]
push str.QuadraticIncrease
push edx
call ebx
add esp, 8
test al, al
je 0x10027679
fld dword [esi + 0x264]
fld dword [esp + 0x10]
fcomp dword [0x100ecb9c]
fnstsw ax
test ah, 0x41
jp 0x10027667
fstp st(0)
fld dword [0x100ecb9c]
jmp 0x100276cd
fld dword [0x100ec514]
fdiv dword [esp + 0x10]
fmulp st(1)
fld st(0)
fmulp st(1)
jmp 0x100276cd
lea eax, [esp + 0xc8]
push str.LinearDecrease
push eax
call ebx
add esp, 8
test al, al
je 0x100276a4
mov ecx, dword [esp + 0x10]
mov edx, dword [esi + 0x264]
push ecx
push edx
mov ecx, esi
call fcn.10025560
jmp 0x100276cd
lea eax, [esp + 0xc8]
push str.LinearIncrease
push eax
call ebx
add esp, 8
test al, al
je 0x100276d1
mov ecx, dword [esp + 0x10]
mov edx, dword [esi + 0x264]
push ecx
push edx
mov ecx, esi
call fcn.10025530
fstp dword [esp + 0x18]
fld dword [esi + 0x264]
mov eax, dword [esp + 0x80]
fld dword [esp + 0x1c]
mov dword [esp + 0xa8], eax
fcomp dword [0x100ecb9c]
fnstsw ax
test ah, 0x41
jp 0x10027700
fstp st(0)
fld dword [0x100ecb9c]
jmp 0x1002772b
fld dword [0x100ec514]
mov ecx, dword [sym.imp.OgreMain.dll_float_const_Ogre::Math::TWO_PI]
fdiv dword [esp + 0x1c]
push ebp
push ecx
fdivr dword [ecx]
fmul st(1)
fstp dword [esp]
fstp st(0)
call dword [sym.imp.OgreMain.dll_public:_static_float___cdecl_Ogre::Math::Cos_float__bool_]
fmul dword [esp + 0xb0]
add esp, 8
fmul dword [esp + 0x18]
mov edx, dword [esp + 0x84]
mov dword [esp + 0xb0], edx
fstp dword [esp + 0x4c]
fld dword [esi + 0x264]
fld dword [esp + 0x20]
fcomp dword [0x100ecb9c]
fnstsw ax
test ah, 0x41
jp 0x10027762
fstp st(0)
fld dword [0x100ecb9c]
jmp 0x1002778c
fld dword [0x100ec514]
mov eax, dword [sym.imp.OgreMain.dll_float_const_Ogre::Math::TWO_PI]
fdiv dword [esp + 0x20]
push ebp
push ecx
fdivr dword [eax]
fmul st(1)
fstp dword [esp]
fstp st(0)
call dword [sym.imp.OgreMain.dll_public:_static_float___cdecl_Ogre::Math::Cos_float__bool_]
fmul dword [esp + 0xb8]
add esp, 8
fmul dword [esp + 0x18]
mov ecx, dword [esp + 0x88]
mov dword [esp + 0x94], ecx
fstp dword [esp + 0x50]
fld dword [esi + 0x264]
fld dword [esp + 0x24]
fcomp dword [0x100ecb9c]
fnstsw ax
test ah, 0x41
jp 0x100277c3
fstp st(0)
fld dword [0x100ecb9c]
jmp 0x100277ee
fld dword [0x100ec514]
mov edx, dword [sym.imp.OgreMain.dll_float_const_Ogre::Math::TWO_PI]
fdiv dword [esp + 0x24]
push ebp
push ecx
fdivr dword [edx]
fmul st(1)
fstp dword [esp]
fstp st(0)
call dword [sym.imp.OgreMain.dll_public:_static_float___cdecl_Ogre::Math::Cos_float__bool_]
fmul dword [esp + 0x9c]
add esp, 8
fmul dword [esp + 0x18]
lea edx, [esp + 0x8c]
fld dword [esp + 0x4c]
push edx
fld dword [esp + 0x54]
fld st(2)
fstp dword [esp + 0x108]
mov eax, dword [esp + 0x108]
fld dword [esp + 0x50]
fsub dword [esi + 0x298]
fstp dword [esp + 0x50]
fld dword [esp + 0x54]
fsub dword [esi + 0x29c]
fstp dword [esp + 0x54]
fxch st(2)
fsub dword [esi + 0x2a0]
mov dword [esi + 0x2a0], eax
fstp dword [esp + 0x58]
fstp dword [esi + 0x298]
fstp dword [esi + 0x29c]
mov ecx, dword [sym.imp.OgreMain.dll_float_const_Ogre::Math::fDeg2Rad]
fld dword [esp + 0x54]
fmul dword [ecx]
mov ecx, edi
fstp dword [esp + 0x90]
call dword [sym.imp.OgreMain.dll_public:_void___thiscall_Ogre::Camera::yaw_class_Ogre::Radian_const__]
mov eax, dword [sym.imp.OgreMain.dll_float_const_Ogre::Math::fDeg2Rad]
fld dword [esp + 0x4c]
fmul dword [eax]
lea ecx, [esp + 0x9c]
push ecx
mov ecx, edi
fstp dword [esp + 0xa0]
call dword [sym.imp.OgreMain.dll_public:_void___thiscall_Ogre::Camera::pitch_class_Ogre::Radian_const__]
mov edx, dword [sym.imp.OgreMain.dll_float_const_Ogre::Math::fDeg2Rad]
fld dword [esp + 0x54]
fmul dword [edx]
lea eax, [esp + 0xc0]
push eax
mov ecx, edi
fstp dword [esp + 0xc4]
call dword [sym.imp.OgreMain.dll_public:_void___thiscall_Ogre::Camera::roll_class_Ogre::Radian_const__]
fld dword [esi + 0x264]
fld dword [esp + 0x2c]
fcomp dword [0x100ecb9c]
fnstsw ax
test ah, 0x41
jp 0x100278cd
fstp st(0)
fld dword [0x100ecb9c]
jmp 0x100278f5
fld dword [0x100ec514]
mov ecx, dword [sym.imp.OgreMain.dll_float_const_Ogre::Math::TWO_PI]
fdiv dword [esp + 0x2c]
push ebp
push ecx
fdivr dword [ecx]
fmul st(1)
fstp dword [esp]
fstp st(0)
call dword [sym.imp.OgreMain.dll_public:_static_float___cdecl_Ogre::Math::Cos_float__bool_]
fmul dword [esp + 0x78]
add esp, 8
fmul dword [esp + 0x18]
fstp dword [esp + 0x58]
fld dword [esi + 0x264]
fld dword [esp + 0x30]
fcomp dword [0x100ecb9c]
fnstsw ax
test ah, 0x41
jp 0x1002791e
fstp st(0)
fld dword [0x100ecb9c]
jmp 0x10027946
fld dword [0x100ec514]
mov edx, dword [sym.imp.OgreMain.dll_float_const_Ogre::Math::TWO_PI]
fdiv dword [esp + 0x30]
push ebp
push ecx
fdivr dword [edx]
fmul st(1)
fstp dword [esp]
fstp st(0)
call dword [sym.imp.OgreMain.dll_public:_static_float___cdecl_Ogre::Math::Cos_float__bool_]
fmul dword [esp + 0x7c]
add esp, 8
fmul dword [esp + 0x18]
fstp dword [esp + 0x5c]
fld dword [esi + 0x264]
fld dword [esp + 0x34]
fcomp dword [0x100ecb9c]
fnstsw ax
test ah, 0x41
jp 0x1002796f
fstp st(0)
fld dword [0x100ecb9c]
jmp 0x10027999
fld dword [0x100ec514]
mov eax, dword [sym.imp.OgreMain.dll_float_const_Ogre::Math::TWO_PI]
fdiv dword [esp + 0x34]
push ebp
push ecx
fdivr dword [eax]
fmul st(1)
fstp dword [esp]
fstp st(0)
call dword [sym.imp.OgreMain.dll_public:_static_float___cdecl_Ogre::Math::Cos_float__bool_]
fmul dword [esp + 0x80]
add esp, 8
fmul dword [esp + 0x18]
lea edx, [esp + 0x58]
fld dword [esp + 0x58]
push edx
fld dword [esp + 0x60]
fld st(2)
fstp dword [esp + 0xfc]
mov ecx, dword [esp + 0xfc]
fld dword [esp + 0x5c]
fsub dword [esi + 0x28c]
fstp dword [esp + 0x5c]
fld dword [esp + 0x60]
fsub dword [esi + 0x290]
fstp dword [esp + 0x60]
fxch st(2)
fsub dword [esi + 0x294]
mov dword [esi + 0x294], ecx
mov ecx, edi
fstp dword [esp + 0x64]
fstp dword [esi + 0x28c]
fstp dword [esi + 0x290]
call dword [sym.imp.OgreMain.dll_public:_void___thiscall_Ogre::Camera::moveRelative_class_Ogre::Vector3_const__]
fld dword [esi + 0x264]
fld dword [esp + 0x38]
fcomp dword [0x100ecb9c]
fnstsw ax
test ah, 0x41
jp 0x10027a1d
fstp st(0)
fld dword [0x100ecb9c]
jmp 0x10027a47
fld dword [0x100ec514]
mov eax, dword [sym.imp.OgreMain.dll_float_const_Ogre::Math::TWO_PI]
fdiv dword [esp + 0x38]
push ebp
push ecx
fdivr dword [eax]
fmul st(1)
fstp dword [esp]
fstp st(0)
call dword [sym.imp.OgreMain.dll_public:_static_float___cdecl_Ogre::Math::Cos_float__bool_]
fmul dword [esp + 0x84]
add esp, 8
fmul dword [esp + 0x18]
mov ecx, dword [sym.imp.OgreMain.dll_float_const_Ogre::Math::fDeg2Rad]
mov edx, dword [edi]
lea eax, [esp + 0xa4]
fmul dword [ecx]
push eax
mov ecx, edi
fadd dword [esi + 0x288]
fstp dword [esp + 0xa8]
call dword [edx + 0x114]
lea ecx, [esp + 0xc8]
mov dword [esp + 0x11c], 0xffffffff
call dword [sym.imp.MSVCP71.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov eax, dword [esp + 0x3c]
inc eax
cmp ax, word [esp + 0xbc]
mov dword [esp + 0x3c], eax
jb 0x10026f13
pop ebp
pop ebx
mov ecx, dword [esp + 0x10c]
pop edi
pop esi
mov dword fs:[0], ecx
add esp, 0x110
ret 0xc