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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x2c
mov eax, dword [ebp + 0x10]
push ebx
push esi
push edi
mov esi, dword [eax]
xor ebx, ebx
push ebx
push 0x1016b5c0
push ebx
mov ecx, dword [esi + 0x24]
push eax
mov dword [ebp - 0x14], ebx
call dword [0x10155aa8]
call dword [esi + 0x24]
mov edi, dword [ebp + 8]
test eax, eax
jne 0x101134cc
mov esi, dword [edi]
push 1
push ebx
push 0x3f2
mov ecx, dword [esi + 0x1c]
push edi
call dword [0x10155aa8]
call dword [esi + 0x1c]
mov byte [ebp - 2], bl
test eax, eax
je 0x101134d0
mov byte [ebp - 2], 1
mov eax, dword [edi + 0xe0]
xor edx, edx
mov ebx, dword [ebp + 0xc]
inc edx
mov dword [ebp - 8], edx
cmp dword [eax + 0x24], edx
jle 0x10113529
mov eax, dword [edi + 0xe0]
push edx
push eax
mov ecx, dword [eax]
mov esi, dword [ecx + 0x10]
mov ecx, esi
call dword [0x10155aa8]
call esi
mov esi, dword [ebx]
push 0x1007
push dword [ebp + 0x10]
mov esi, dword [esi + 0xcc]
mov ecx, esi
push eax
push ebx
call dword [0x10155aa8]
call esi
mov edx, dword [ebp - 8]
mov eax, dword [edi + 0xe0]
inc edx
mov dword [ebp - 8], edx
cmp edx, dword [eax + 0x24]
jl 0x101134e4
mov eax, dword [ebx]
push 0x100
push ebx
mov esi, dword [eax + 0xa0]
mov ecx, esi
call dword [0x10155aa8]
call esi
push dword [ebp + 0x10]
push ebx
push edi
call sym.rt3d.dll_struct_POINT3D___stdcall_GetRightAngle_struct_MATRIX3D___struct_POINT3D__bool_
mov eax, dword [ebx]
push ebx
mov esi, dword [eax + 0xa4]
mov ecx, esi
call dword [0x10155aa8]
call esi
cmp byte [ebp - 2], 0
je 0x101135a1
mov eax, dword [ebx]
push 0x100c
push ebx
mov esi, dword [eax + 0xa0]
mov ecx, esi
call dword [0x10155aa8]
call esi
mov eax, dword [ebx]
push 0xa
push ebx
mov esi, dword [eax + 0x68]
mov ecx, esi
call dword [0x10155aa8]
call esi
mov eax, dword [ebx]
push ebx
mov esi, dword [eax + 0xa4]
mov ecx, esi
call dword [0x10155aa8]
call esi
cmp byte [edi + 0x349], 0
je 0x101135ec
mov eax, dword [ebx]
push 0x101f
push ebx
mov esi, dword [eax + 0xa0]
mov ecx, esi
call dword [0x10155aa8]
call esi
mov esi, dword [ebx]
movzx eax, byte [edi + 0x349]
push eax
push ebx
mov ecx, dword [esi + 0x60]
call dword [0x10155aa8]
call dword [esi + 0x60]
mov eax, dword [ebx]
push ebx
mov esi, dword [eax + 0xa4]
mov ecx, esi
call dword [0x10155aa8]
call esi
lea eax, [edi + 0x118]
movss xmm0, dword [eax]
comiss xmm0, dword [eax + 0xc]
ja 0x10113647
mov eax, dword [ebx]
push 0x102a
push ebx
mov esi, dword [eax + 0xa0]
mov ecx, esi
call dword [0x10155aa8]
call esi
push 1
lea eax, [edi + 0x118]
mov ecx, ebx
push eax
call sym.rt3d.dll_struct_POINT3D___stdcall_GetRightAngle_struct_MATRIX3D___struct_POINT3D__bool_
push 1
lea eax, [edi + 0x124]
mov ecx, ebx
push eax
call sym.rt3d.dll_struct_POINT3D___stdcall_GetRightAngle_struct_MATRIX3D___struct_POINT3D__bool_
mov eax, dword [ebx]
push ebx
mov esi, dword [eax + 0xa4]
mov ecx, esi
call dword [0x10155aa8]
call esi
lea eax, [ebp - 0x20]
mov ecx, edi
push eax
call sym.rt3d.dll_struct_POINT3D___stdcall_GetRightAngle_struct_MATRIX3D___struct_POINT3D__bool_
and dword [ebp - 0x24], 0
lea eax, [ebp - 0x2c]
and dword [ebp - 0x28], 0
and dword [ebp - 0x2c], 0
push eax
lea eax, [ebp - 0x20]
push eax
call sym.rt3d.dll_struct_POINT3D___stdcall_GetRightAngle_struct_MATRIX3D___struct_POINT3D__bool_
pop ecx
pop ecx
test al, al
je 0x10113680
push 0x1001
push ebx
lea eax, [ebp - 0x20]
push eax
call sym.rt3d.dll_struct_POINT3D___stdcall_GetRightAngle_struct_MATRIX3D___struct_POINT3D__bool_
mov ecx, dword [edi + 0x28]
lea eax, [ebp - 0x2c]
push eax
call sym.rt3d.dll_struct_POINT3D___stdcall_GetRightAngle_struct_MATRIX3D___struct_POINT3D__bool_
mov esi, eax
lea edi, [ebp - 0x20]
lea eax, [ebp - 0x2c]
push eax
lea eax, [ebp - 0x20]
movsd dword es:[edi], dword [esi]
push eax
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
and dword [ebp - 0x24], 0
and dword [ebp - 0x28], 0
and dword [ebp - 0x2c], 0
call sym.rt3d.dll_struct_POINT3D___stdcall_GetRightAngle_struct_MATRIX3D___struct_POINT3D__bool_
pop ecx
pop ecx
test al, al
je 0x101136c2
push 0x1002
push ebx
lea eax, [ebp - 0x20]
push eax
call sym.rt3d.dll_struct_POINT3D___stdcall_GetRightAngle_struct_MATRIX3D___struct_POINT3D__bool_
mov ecx, dword [ebp + 0x10]
xor eax, eax
push eax
push str.viewports
push eax
mov esi, dword [ecx]
push ecx
mov ecx, dword [esi + 0x24]
call dword [0x10155aa8]
call dword [esi + 0x24]
mov edi, dword [ebp + 8]
test eax, eax
je 0x10113b11
cmp dword [edi + 0x164], 0
je 0x10113b11
mov al, byte [edi + 0x348]
mov byte [ebp - 2], 1
test al, al
je 0x10113749
cmp al, 0xff
je 0x10113749
mov eax, dword [ebx]
push 0x101d
push ebx
mov esi, dword [eax + 0xa0]
mov ecx, esi
call dword [0x10155aa8]
call esi
mov esi, dword [ebx]
movzx eax, byte [edi + 0x348]
push eax
push ebx
mov ecx, dword [esi + 0x60]
call dword [0x10155aa8]
call dword [esi + 0x60]
mov eax, dword [ebx]
push ebx
mov esi, dword [eax + 0xa4]
mov ecx, esi
call dword [0x10155aa8]
call esi
mov eax, dword [ebx]
push 0x100e
push ebx
mov esi, dword [eax + 0xa0]
mov ecx, esi
call dword [0x10155aa8]
call esi
mov eax, dword [edi + 0x164]
mov esi, dword [ebx]
push 1
mov al, byte [eax + 0x14]
mov ecx, dword [esi + 0x40]
mov byte [ebp - 1], al
lea eax, [ebp - 1]
push eax
push ebx
call dword [0x10155aa8]
call dword [esi + 0x40]
mov eax, dword [edi + 0x164]
mov esi, dword [ebx]
push 1
mov al, byte [eax + 0x1c]
mov ecx, dword [esi + 0x40]
mov byte [ebp - 1], al
lea eax, [ebp - 1]
push eax
push ebx
call dword [0x10155aa8]
call dword [esi + 0x40]
mov eax, dword [edi + 0x164]
mov esi, dword [ebx]
push 1
mov al, byte [eax + 0x20]
mov ecx, dword [esi + 0x40]
mov byte [ebp - 1], al
lea eax, [ebp - 1]
push eax
push ebx
call dword [0x10155aa8]
call dword [esi + 0x40]
mov eax, dword [edi + 0x164]
mov esi, dword [ebx]
push 1
mov al, byte [eax + 0x2e]
mov ecx, dword [esi + 0x40]
mov byte [ebp - 1], al
lea eax, [ebp - 1]
push eax
push ebx
call dword [0x10155aa8]
call dword [esi + 0x40]
mov eax, dword [edi + 0x164]
mov esi, dword [ebx]
push ecx
movss xmm0, dword [eax + 0x24]
mov esi, dword [esi + 0xdc]
mov ecx, esi
movss dword [esp], xmm0
push ebx
call dword [0x10155aa8]
call esi
mov eax, dword [edi + 0x164]
mov esi, dword [ebx]
push ecx
movss xmm0, dword [eax + 0x50]
mov esi, dword [esi + 0xdc]
mov ecx, esi
movss dword [esp], xmm0
push ebx
call dword [0x10155aa8]
call esi
mov eax, dword [edi + 0x164]
mov esi, dword [ebx]
push ecx
movss xmm0, dword [eax + 0x54]
mov esi, dword [esi + 0xdc]
mov ecx, esi
movss dword [esp], xmm0
push ebx
call dword [0x10155aa8]
call esi
mov eax, dword [edi + 0x164]
mov esi, dword [ebx]
push ecx
movss xmm0, dword [eax + 0x58]
mov esi, dword [esi + 0xdc]
mov ecx, esi
movss dword [esp], xmm0
push ebx
call dword [0x10155aa8]
call esi
mov eax, dword [edi + 0x164]
mov esi, dword [ebx]
push ecx
movss xmm0, dword [eax + 0x90]
mov esi, dword [esi + 0xdc]
mov ecx, esi
movss dword [esp], xmm0
push ebx
call dword [0x10155aa8]
call esi
mov eax, dword [edi + 0x164]
mov esi, dword [ebx]
push ecx
movss xmm0, dword [eax + 0x94]
mov esi, dword [esi + 0xdc]
mov ecx, esi
movss dword [esp], xmm0
push ebx
call dword [0x10155aa8]
call esi
mov eax, dword [edi + 0x164]
mov esi, dword [ebx]
push ecx
movss xmm0, dword [eax + 0x94]
mov esi, dword [esi + 0xdc]
mov ecx, esi
movss dword [esp], xmm0
push ebx
call dword [0x10155aa8]
call esi
mov eax, dword [edi + 0x164]
mov ecx, ebx
push 4
sub eax, 0xffffff80
push eax
call sym.rt3d.dll_struct_POINT3D___stdcall_GetRightAngle_struct_MATRIX3D___struct_POINT3D__bool_
mov eax, dword [edi + 0x164]
mov ecx, ebx
push 4
add eax, 0x70
push eax
call sym.rt3d.dll_struct_POINT3D___stdcall_GetRightAngle_struct_MATRIX3D___struct_POINT3D__bool_
mov eax, dword [edi + 0x164]
mov ecx, dword [eax + 0x18]
mov edi, dword [eax + 0x28]
and ecx, 1
mov edx, ecx
mov eax, edi
or edx, 2
and al, 1
mov eax, edi
cmove edx, ecx
mov ecx, edx
or ecx, 4
and al, 2
mov eax, edi
cmove ecx, edx
mov edx, ecx
or edx, 8
and al, 4
mov eax, edi
cmove edx, ecx
mov ecx, edx
or ecx, 0x10
and al, 8
mov eax, edi
cmove ecx, edx
mov edx, ecx
or edx, 0x20
and al, 0x10
cmove edx, ecx
mov ecx, edx
mov eax, edi
or ecx, 0x40
mov esi, 0x100
and al, 0x20
mov eax, edi
cmove ecx, edx
mov edx, ecx
or edx, 0x80
and al, 0x40
mov eax, edi
cmove edx, ecx
mov ecx, edx
or ecx, esi
and al, 0x80
mov eax, edi
cmove ecx, edx
and eax, esi
mov edx, ecx
mov esi, 0x200
or edx, esi
test eax, eax
mov eax, edi
cmove edx, ecx
and eax, esi
mov esi, edx
or esi, 0x400
test eax, eax
mov eax, edi
cmove esi, edx
mov ecx, esi
or ecx, 0x800
and eax, 0x10000
mov eax, edi
cmove ecx, esi
mov esi, dword [ebx]
mov edx, ecx
or edx, 0x1000
and eax, 0x400
cmove edx, ecx
mov ecx, dword [esi + 0x68]
mov eax, edx
or eax, 0x2000
and edi, 0x800
cmove eax, edx
push eax
push ebx
call dword [0x10155aa8]
call dword [esi + 0x68]
mov edi, dword [ebp + 8]
mov eax, dword [edi + 0x164]
cmp byte [eax + 0x60], 0
je 0x10113a41
mov eax, dword [ebx]
push 0x1024
push ebx
mov esi, dword [eax + 0xa0]
mov ecx, esi
call dword [0x10155aa8]
call esi
mov eax, dword [edi + 0x164]
mov esi, dword [ebx]
movzx eax, byte [eax + 0x60]
mov ecx, dword [esi + 0x60]
push eax
push ebx
call dword [0x10155aa8]
call dword [esi + 0x60]
mov eax, dword [ebx]
push ebx
mov esi, dword [eax + 0xa4]
mov ecx, esi
call dword [0x10155aa8]
call esi
mov eax, dword [ebx]
push ebx
mov esi, dword [eax + 0xa4]
mov ecx, esi
call dword [0x10155aa8]
call esi
mov eax, dword [edi + 0x164]
test dword [eax + 0x28], 0x4000
je 0x10113b15
cmp dword [edi + 0x2a8], 0
je 0x10113b15
mov eax, dword [ebx]
push 0x1020
push ebx
mov esi, dword [eax + 0xa0]
mov ecx, esi
call dword [0x10155aa8]
call esi
mov eax, dword [edi + 0x2a8]
cmp dword [eax + 0x68], 0
je 0x10113aa8
push 1
push 0x1021
push ebx
push dword [eax + 0x68]
call sym.rt3d.dll_struct_POINT3D___stdcall_GetRightAngle_struct_MATRIX3D___struct_POINT3D__bool_
mov eax, dword [ebx]
push 0x1022
push ebx
mov esi, dword [eax + 0xa0]
mov ecx, esi
call dword [0x10155aa8]
call esi
mov eax, dword [edi + 0x2a8]
mov esi, dword [ebx]
push ecx
mov eax, dword [eax + 0x70]
mov esi, dword [esi + 0xdc]
mov ecx, esi
mov eax, dword [eax + 0x62]
movss xmm0, dword [eax]
movss dword [esp], xmm0
push ebx
call dword [0x10155aa8]
call esi
mov eax, dword [ebx]
push ebx
mov esi, dword [eax + 0xa4]
mov ecx, esi
call dword [0x10155aa8]
call esi
mov eax, dword [ebx]
push ebx
mov esi, dword [eax + 0xa4]
mov ecx, esi
call dword [0x10155aa8]
call esi
jmp 0x10113b15
mov byte [ebp - 2], 0
mov ecx, dword [edi + 0xf4]
xor edx, edx
mov dword [ebp - 0x10], edx
cmp dword [ecx + 0x24], edx
jle 0x10113e78
mov eax, dword [ecx]
push edx
push ecx
mov esi, dword [eax + 0x10]
mov ecx, esi
call dword [0x10155aa8]
call esi
mov cl, byte [ebp - 2]
mov dword [ebp - 8], eax
cmp dword [eax + 0x7c], 0
jne 0x10113b4e
test cl, cl
je 0x10113e62
cmp eax, dword [edi + 0x10c]
jne 0x10113b5f
test cl, cl
mov ecx, 0x100f
jne 0x10113b64
mov ecx, 0x100d
mov eax, dword [ebx]
push ecx
push ebx
mov esi, dword [eax + 0xa0]
mov ecx, esi
call dword [0x10155aa8]
call esi
mov esi, dword [ebp - 8]
mov eax, dword [esi + 0xc]
test eax, eax
je 0x10113ba1
mov esi, dword [ebx]
push 0x1009
push dword [ebp + 0x10]
mov esi, dword [esi + 0xcc]
mov ecx, esi
push eax
push ebx
call dword [0x10155aa8]
call esi
mov esi, dword [ebp - 8]
mov eax, dword [esi + 0x10]
test eax, eax
je 0x10113bc7
mov esi, dword [ebx]
push 0x100a
push dword [ebp + 0x10]
mov esi, dword [esi + 0xcc]
mov ecx, esi
push eax
push ebx
call dword [0x10155aa8]
call esi
mov esi, dword [ebp - 8]
mov eax, dword [esi + 0x18]
test eax, eax
je 0x10113bed
mov esi, dword [ebx]
push 0x101b
push dword [ebp + 0x10]
mov esi, dword [esi + 0xcc]
mov ecx, esi
push eax
push ebx
call dword [0x10155aa8]
call esi
mov esi, dword [ebp - 8]
cmp dword [esi + 0x28], 0
je 0x10113c02
push 0x1027
push ebx
lea eax, [esi + 0x24]
push eax
call sym.rt3d.dll_struct_POINT3D___stdcall_GetRightAngle_struct_MATRIX3D___struct_POINT3D__bool_
push 0x1010
push dword [esi + 0x38]
push ebx
call sym.rt3d.dll_struct_POINT3D___stdcall_GetRightAngle_struct_MATRIX3D___struct_POINT3D__bool_
push 0x1012
push dword [esi + 0x3c]
push ebx
call sym.rt3d.dll_struct_POINT3D___stdcall_GetRightAngle_struct_MATRIX3D___struct_POINT3D__bool_
push 0x1012
push dword [esi + 0x40]
push ebx
call sym.rt3d.dll_struct_POINT3D___stdcall_GetRightAngle_struct_MATRIX3D___struct_POINT3D__bool_
push 0x1013
push dword [esi + 0x44]
push ebx
call sym.rt3d.dll_struct_POINT3D___stdcall_GetRightAngle_struct_MATRIX3D___struct_POINT3D__bool_
push 0x1014
push dword [esi + 0x48]
push ebx
call sym.rt3d.dll_struct_POINT3D___stdcall_GetRightAngle_struct_MATRIX3D___struct_POINT3D__bool_
push 0x1015
push dword [esi + 0x4c]
push ebx
call sym.rt3d.dll_struct_POINT3D___stdcall_GetRightAngle_struct_MATRIX3D___struct_POINT3D__bool_
add esp, 0x48
push 0x1016
push dword [esi + 0x50]
push ebx
call sym.rt3d.dll_struct_POINT3D___stdcall_GetRightAngle_struct_MATRIX3D___struct_POINT3D__bool_
push 0x1017
push dword [esi + 0x54]
push ebx
call sym.rt3d.dll_struct_POINT3D___stdcall_GetRightAngle_struct_MATRIX3D___struct_POINT3D__bool_
push 0x1018
push dword [esi + 0x58]
push ebx
call sym.rt3d.dll_struct_POINT3D___stdcall_GetRightAngle_struct_MATRIX3D___struct_POINT3D__bool_
push 0x1019
push dword [esi + 0x5c]
push ebx
call sym.rt3d.dll_struct_POINT3D___stdcall_GetRightAngle_struct_MATRIX3D___struct_POINT3D__bool_
push 0x101a
push dword [esi + 0x60]
push ebx
call sym.rt3d.dll_struct_POINT3D___stdcall_GetRightAngle_struct_MATRIX3D___struct_POINT3D__bool_
push 0x1025
push dword [esi + 0x64]
push ebx
call sym.rt3d.dll_struct_POINT3D___stdcall_GetRightAngle_struct_MATRIX3D___struct_POINT3D__bool_
mov ecx, dword [esi + 0x7c]
add esp, 0x48
test ecx, ecx
je 0x10113cee
mov eax, dword [ebx]
cmp ecx, 1
mov esi, dword [eax + 0xa0]
mov ecx, esi
jne 0x10113ccd
push 0x101c
jmp 0x10113cd2
push 0x1026
push ebx
call dword [0x10155aa8]
call esi
mov eax, dword [ebx]
push ebx
mov esi, dword [eax + 0xa4]
mov ecx, esi
call dword [0x10155aa8]
call esi
mov eax, dword [edi + 0xf4]
cmp dword [eax + 0x24], 0
je 0x10113d81
mov eax, dword [ebx]
push 0x101e
push ebx
mov esi, dword [eax + 0xa0]
mov ecx, esi
call dword [0x10155aa8]
call esi
mov ecx, dword [ebp - 8]
mov eax, dword [ebx]
push dword [ecx + 0x6c]
mov esi, dword [eax + 0x68]
mov ecx, esi
push ebx
call dword [0x10155aa8]
call esi
mov ecx, dword [ebp - 8]
mov eax, dword [ebx]
push dword [ecx + 0x70]
mov esi, dword [eax + 0x68]
mov ecx, esi
push ebx
call dword [0x10155aa8]
call esi
mov ecx, dword [ebp - 8]
mov eax, dword [ebx]
push dword [ecx + 0x74]
mov esi, dword [eax + 0x68]
mov ecx, esi
push ebx
call dword [0x10155aa8]
call esi
mov ecx, dword [ebp - 8]
mov eax, dword [ebx]
push dword [ecx + 0x78]
mov esi, dword [eax + 0x68]
mov ecx, esi
push ebx
call dword [0x10155aa8]
call esi
mov eax, dword [ebx]
push ebx
mov esi, dword [eax + 0xa4]
mov ecx, esi
call dword [0x10155aa8]
call esi
mov eax, dword [ebp - 8]
mov ecx, dword [eax + 0x2c]
test ecx, ecx
je 0x10113dc3
mov eax, dword [ecx]
push ecx
mov esi, dword [eax + 0x64]
mov ecx, esi
call dword [0x10155aa8]
call esi
test eax, eax
mov eax, dword [ebp - 8]
je 0x10113dc3
mov esi, dword [ebx]
push 0x1023
push dword [ebp + 0x10]
push dword [eax + 0x2c]
mov esi, dword [esi + 0xcc]
mov ecx, esi
push ebx
call dword [0x10155aa8]
call esi
mov eax, dword [ebp - 8]
mov ecx, dword [eax + 0x30]
test ecx, ecx
je 0x10113e4f
xor eax, eax
mov edx, eax
mov dword [ebp - 0xc], edx
cmp dword [ecx + 0x24], eax
jle 0x10113e4f
mov eax, dword [ecx]
push edx
push ecx
mov esi, dword [eax + 0x10]
mov ecx, esi
call dword [0x10155aa8]
call esi
mov edi, eax
mov eax, dword [ebx]
push 0x1028
push ebx
mov esi, dword [eax + 0xa0]
mov ecx, esi
call dword [0x10155aa8]
call esi
cmp dword [edi], 0
je 0x10113e27
mov esi, dword [ebx]
push 0x1029
push dword [ebp + 0x10]
push dword [edi]
mov esi, dword [esi + 0xcc]
mov ecx, esi
push ebx
call dword [0x10155aa8]
call esi
mov eax, dword [ebx]
push ebx
mov esi, dword [eax + 0xa4]
mov ecx, esi
call dword [0x10155aa8]
call esi
mov eax, dword [ebp - 8]
mov edx, dword [ebp - 0xc]
inc edx
mov dword [ebp - 0xc], edx
mov ecx, dword [eax + 0x30]
cmp edx, dword [ecx + 0x24]
jl 0x10113dda
mov edi, dword [ebp + 8]
mov eax, dword [ebx]
push ebx
mov esi, dword [eax + 0xa4]
mov ecx, esi
call dword [0x10155aa8]
call esi
mov edx, dword [ebp - 0x10]
mov ecx, dword [edi + 0xf4]
inc edx
mov dword [ebp - 0x10], edx
cmp edx, dword [ecx + 0x24]
jl 0x10113b29
cmp byte [ebp - 2], 0
jne 0x10113edf
mov eax, dword [edi + 0x10c]
test eax, eax
je 0x10113eac
cmp dword [eax + 0x10], 0
je 0x10113eac
mov esi, dword [ebx]
push 0x100a
push dword [ebp + 0x10]
push dword [eax + 0x10]
mov esi, dword [esi + 0xcc]
mov ecx, esi
push ebx
call dword [0x10155aa8]
call esi
mov eax, dword [edi]
push edi
mov esi, dword [eax + 0x154]
mov ecx, esi
call dword [0x10155aa8]
call esi
test eax, eax
je 0x10113edf
mov esi, dword [ebx]
push 0x1009
push dword [ebp + 0x10]
mov esi, dword [esi + 0xcc]
mov ecx, esi
push eax
push ebx
call dword [0x10155aa8]
call esi
movss xmm0, dword [edi + 0x294]
ucomiss xmm0, dword [0x10159c18]
lahf
test ah, 0x44
jnp 0x10113f40
mov eax, dword [ebx]
push 0x1003
push ebx
mov esi, dword [eax + 0xa0]
mov ecx, esi
call dword [0x10155aa8]
call esi
mov esi, dword [ebx]
movss xmm0, dword [edi + 0x294]
push ecx
movss dword [esp], xmm0
mov esi, dword [esi + 0xdc]
mov ecx, esi
push ebx
call dword [0x10155aa8]
call esi
mov eax, dword [ebx]
push ebx
mov esi, dword [eax + 0xa4]
mov ecx, esi
call dword [0x10155aa8]
call esi
xor edx, edx
cmp dword [edi + 0xe8], edx
je 0x10114015
mov eax, dword [ebp + 0x10]
push 1
push str.animation
push edx
mov esi, dword [eax]
push eax
mov ecx, dword [esi + 0x24]
call dword [0x10155aa8]
call dword [esi + 0x24]
test eax, eax
je 0x10114013
mov eax, dword [edi + 0xe8]
xor ecx, ecx
mov edx, ecx
mov dword [ebp - 0x10], ecx
cmp dword [eax + 0x24], ecx
jle 0x10113fc7
mov eax, dword [edi + 0xe8]
push edx
push eax
mov ecx, dword [eax]
mov esi, dword [ecx + 0x10]
mov ecx, esi
call dword [0x10155aa8]
call esi
mov esi, dword [ebx]
push 0x1004
push dword [ebp + 0x10]
mov esi, dword [esi + 0xcc]
mov ecx, esi
push eax
push ebx
call dword [0x10155aa8]
call esi
mov edx, dword [ebp - 0x10]
mov eax, dword [edi + 0xe8]
inc edx
mov dword [ebp - 0x10], edx
cmp edx, dword [eax + 0x24]
jl 0x10113f82
mov eax, dword [edi + 0xfc]
test eax, eax
je 0x10113fed
mov esi, dword [ebx]
push 0x1006
push dword [ebp + 0x10]
mov esi, dword [esi + 0xcc]
mov ecx, esi
push eax
push ebx
call dword [0x10155aa8]
call esi
mov eax, dword [edi + 0xf8]
test eax, eax
je 0x10114013
mov esi, dword [ebx]
push 0x1005
push dword [ebp + 0x10]
mov esi, dword [esi + 0xcc]
mov ecx, esi
push eax
push ebx
call dword [0x10155aa8]
call esi
xor edx, edx
mov eax, dword [edi + 0xec]
test eax, eax
je 0x10114071
cmp dword [eax + 0x24], edx
jle 0x10114071
mov ecx, dword [ebp + 8]
mov edi, dword [ebx]
push 0x100b
push dword [ebp + 0x10]
mov ecx, dword [ecx + 0xec]
push edx
push ecx
mov eax, dword [ecx]
mov esi, dword [eax + 0x10]
mov ecx, esi
call dword [0x10155aa8]
call esi
mov ecx, dword [edi + 0xcc]
push eax
push ebx
call dword [0x10155aa8]
call dword [edi + 0xcc]
mov edi, dword [ebp + 8]
mov edx, dword [ebp - 0x14]
inc edx
mov dword [ebp - 0x14], edx
mov eax, dword [edi + 0xec]
cmp edx, dword [eax + 0x24]
jl 0x10114024
mov eax, dword [ebx]
push ebx
mov esi, dword [eax + 0xd8]
mov ecx, esi
call dword [0x10155aa8]
call esi
push dword [edi + 0x170]
mov ecx, eax
push ecx
mov eax, dword [ecx]
mov esi, dword [eax + 0x2c]
mov ecx, esi
call dword [0x10155aa8]
call esi
test eax, eax
js 0x101140c1
mov esi, dword [ebx]
push 0x1008
push dword [ebp + 0x10]
push dword [edi + 0x170]
mov esi, dword [esi + 0xcc]
mov ecx, esi
push ebx
call dword [0x10155aa8]
call esi
pop edi
xor eax, eax
pop esi
inc eax
pop ebx
leave
ret 0xc