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

Disassembly:
push 0xffffffffffffffff
push 0x492378
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x148
push ebx
push ebp
push esi
mov esi, dword [0x4edfe0]
push edi
lea eax, [esp + 0x110]
xor edi, edi
push 0x40
mov ecx, eax
push edi
push ecx
mov dword [esp + 0x20], esi
mov dword [esp + 0x110], edi
mov dword [esp + 0x114], 0x10
mov dword [esp + 0x118], eax
call fcn.0045ed30
add esp, 0xc
mov dword [esp + 0x160], edi
cmp byte [esi + 0xc02], 0
je 0x410e1e
mov eax, dword [esi + 0xcd8]
cmp eax, edi
je 0x410e1e
mov ebp, dword [eax + 0x48]
sub ebp, 1
js 0x410da4
mov edx, dword [esi + 0xcd8]
mov eax, dword [edx + 0x50]
mov edi, dword [eax + ebp*4]
cmp dword [edi + 4], 0
jne 0x410cd6
mov eax, dword [edi + 0x48]
call fcn.00427160
jmp 0x410d9b
xor ebx, ebx
cmp dword [edi + 0x4c], ebx
jle 0x410d23
lea ecx, [ecx]
mov ecx, dword [edi + 0x54]
mov esi, dword [ecx + ebx*4]
mov ecx, esi
mov dword [esp + 0x10], esi
call fcn.00418560
mov edx, dword [esi + 0x414]
cmp byte [edx + 0x336], 0
je 0x410d1b
mov eax, dword [esi + 0x10]
shr eax, 8
test al, 1
jne 0x410d1b
lea ecx, [esp + 0x10]
push ecx
lea esi, [esp + 0x108]
call fcn.00448ab0
add ebx, 1
cmp ebx, dword [edi + 0x4c]
jl 0x410ce0
xor ebx, ebx
mov dword [0x4a2958], 0xffffffff
cmp dword [edi + 0x98], ebx
jle 0x410d8d
jmp 0x410d40
mov edx, dword [edi + 0xa0]
mov esi, dword [edx + ebx*4]
call fcn.00418730
add ebx, 1
cmp ebx, dword [edi + 0x98]
jl 0x410d40
mov edx, dword [0x4a2958]
cmp edx, 6
jl 0x410d8d
mov ecx, dword [0x4e51d0]
mov esi, dword [ecx]
mov eax, 0x55555556
imul edx
push 0x20
mov eax, edx
push 0x4a295c
shr eax, 0x1f
add eax, edx
push eax
push 4
push ecx
mov ecx, dword [esi + 0x14c]
call ecx
mov esi, dword [esp + 0x14]
mov dword [0x4a2958], 0xffffffff
sub ebp, 1
jns 0x410cb7
mov edx, dword [esi + 0xcd4]
cmp dword [edx + 0x25f0], 0
je 0x410e1e
mov eax, dword [esi + 0xcd8]
mov ebx, dword [eax + 0x48]
sub ebx, 1
js 0x410e1e
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0xcd8]
mov eax, dword [edx + 0x50]
mov esi, dword [eax + ebx*4]
cmp dword [esi + 4], 0
je 0x410e19
xor edi, edi
cmp dword [esi + 0x4c], edi
jle 0x410df3
mov edi, edi
mov ecx, dword [esi + 0x54]
mov ecx, dword [ecx + edi*4]
call fcn.00418640
add edi, 1
cmp edi, dword [esi + 0x4c]
jl 0x410de0
xor edi, edi
cmp dword [esi + 0x98], edi
jle 0x410e19
lea ecx, [ecx]
mov edx, dword [esi + 0xa0]
mov ecx, dword [edx + edi*4]
call fcn.00418640
add edi, 1
cmp edi, dword [esi + 0x98]
jl 0x410e00
sub ebx, 1
jns 0x410dc1
xor edi, edi
cmp dword [esp + 0x104], edi
jle 0x4111f0
mov ebx, 0x1c4
mov eax, dword [esp + 0x10c]
mov esi, dword [eax + edi*4]
fld dword [esi + 0x290]
call fcn.0048c510
fld dword [esi + 0x294]
mov dword [esp + 0x2c], eax
call fcn.0048c510
fld1
mov ecx, dword [esi + 0x2a0]
fstp dword [esp + 0x34]
mov edx, dword [esi + 0x2a4]
mov dword [esp + 0x38], ecx
mov ecx, dword [esi + 0x3cc]
mov dword [esp + 0x3c], edx
mov edx, dword [esi + 0x3d0]
mov dword [esp + 0x30], eax
mov eax, dword [esi + 0x3c8]
mov dword [esp + 0x40], ecx
mov dword [esp + 0x48], edx
lea ecx, [esi + 0x2a8]
lea edx, [esp + 0x54]
mov dword [esp + 0x44], eax
call fcn.0040db10
lea ecx, [esi + 0x2b8]
lea edx, [esp + 0x58]
call fcn.0040db10
fild dword [esp + 0x38]
mov eax, dword [esp + 0x14]
mov eax, dword [eax + 0xcd4]
fmul dword [0x499a28]
fild dword [esp + 0x3c]
fmul dword [0x499a24]
fld st(1)
fsin
fmul st(1)
fxch st(2)
fcos
fmulp st(1)
fild dword [eax + 0x1f58]
fld dword [0x499a48]
fmul st(1), st(0)
fxch st(1)
fst dword [esp + 0x10]
fild dword [eax + 0x1f5c]
fmul st(2)
fst dword [esp + 0x18]
fxch st(1)
fchs
fld st(0)
fld st(2)
fchs
fld st(0)
fst dword [esp + 0xe8]
fxch st(3)
fstp dword [esp + 0xec]
fstp dword [esp + 0xf8]
fild dword [esp + 0x2c]
fld st(1)
fmul st(6)
fxch st(3)
fmul st(7)
fsubp st(3)
fadd st(2), st(0)
fxch st(2)
fsub st(4)
fstp dword [esp + 0x64]
fild dword [esp + 0x30]
fld dword [esp + 0xe8]
fmul st(6)
fxch st(2)
fmul st(7)
faddp st(2)
fadd st(1), st(0)
fxch st(1)
fsub st(4)
fstp dword [esp + 0x68]
fld1
fst dword [esp + 0x70]
fld dword [esp + 0x34]
fmul dword [0x499ac4]
fstp dword [esp + 0x6c]
fldz
mov eax, dword [esp + 0x54]
fstp dword [esp + 0x7c]
mov ecx, dword [esp + 0x58]
fldz
mov dword [esp + 0x74], eax
fstp dword [esp + 0x80]
mov dword [esp + 0x94], eax
fxch st(3)
mov dword [esp + 0xb4], eax
fmul st(6)
mov dword [esp + 0xd4], eax
mov eax, dword [esp + 0x44]
cmp eax, dword [0x4e51f4]
mov dword [esp + 0x78], ecx
mov dword [esp + 0x98], ecx
fst dword [esp + 0x20]
mov dword [esp + 0xb8], ecx
fld dword [esp + 0xec]
mov dword [esp + 0xd8], ecx
fmul st(6)
fsubrp st(1)
fadd st(2)
fsub st(4)
fstp dword [esp + 0x84]
fld dword [esp + 0x18]
fmul st(5)
fst dword [esp + 0x1c]
fld dword [esp + 0xec]
fmul st(7)
faddp st(1)
fadd st(1)
fsub st(4)
fstp dword [esp + 0x88]
fld dword [esp + 0x6c]
fstp dword [esp + 0x8c]
fxch st(2)
fst dword [esp + 0x90]
fldz
fstp dword [esp + 0x9c]
fst dword [esp + 0xa0]
fld dword [esp + 0x10]
fmul st(5)
fst dword [esp + 0x18]
fld dword [esp + 0xf8]
fmul st(7)
fsubp st(1)
fadd st(2)
fsub st(4)
fstp dword [esp + 0xa4]
fld dword [esp + 0x10]
fmulp st(6)
fld dword [esp + 0xf8]
fmulp st(5)
fxch st(4)
fadd st(5)
fadd st(2)
fsub st(3)
fstp dword [esp + 0xa8]
fld dword [esp + 0x6c]
fst dword [esp + 0xac]
fxch st(4)
fst dword [esp + 0xb0]
fst dword [esp + 0xbc]
fldz
fstp dword [esp + 0xc0]
fld dword [esp + 0x18]
fsub dword [esp + 0x20]
faddp st(2)
fxch st(1)
fsub st(3)
fstp dword [esp + 0xc4]
fxch st(4)
fadd dword [esp + 0x1c]
faddp st(1)
fsubrp st(1)
fstp dword [esp + 0xc8]
fstp dword [esp + 0xcc]
fst dword [esp + 0xd0]
fst dword [esp + 0xdc]
fstp dword [esp + 0xe0]
je 0x411104
mov dword [0x4e51f4], eax
sub eax, 1
mov eax, dword [0x4e51d0]
mov ecx, dword [eax]
mov edx, dword [ecx + 0x114]
je 0x4110e5
push 1
push 6
push 0
push eax
call edx
push 1
jmp 0x4110f0
push 2
push 6
push 0
push eax
call edx
push 2
mov eax, dword [0x4e51d0]
mov ecx, dword [eax]
mov edx, dword [ecx + 0x114]
push 5
push 0
push eax
call edx
mov eax, dword [esp + 0x40]
mov ecx, 0x4a2958
call fcn.004026b0
mov eax, dword [esp + 0x48]
cmp eax, dword [0x4e51fc]
je 0x411180
mov dword [0x4e51fc], eax
sub eax, 1
je 0x411154
sub eax, 1
mov eax, dword [0x4e51d0]
mov ecx, dword [eax]
mov edx, dword [ecx + 0x114]
je 0x411147
push 3
push 1
push 0
push eax
call edx
push 3
jmp 0x41116c
push 2
push 1
push 0
push eax
call edx
push 2
jmp 0x41116c
mov eax, dword [0x4e51d0]
mov ecx, dword [eax]
mov edx, dword [ecx + 0x114]
push 1
push 1
push 0
push eax
call edx
push 1
mov eax, dword [0x4e51d0]
mov ecx, dword [eax]
mov edx, dword [ecx + 0x114]
push 2
push 0
push eax
call edx
mov eax, dword [0x4e51d8]
cmp eax, dword [0x4e51ec]
je 0x4111a6
mov ecx, dword [0x4e51d0]
push eax
mov dword [0x4e51ec], eax
mov edx, dword [ecx]
mov eax, dword [edx + 0x104]
push 0
push ecx
call eax
cmp dword [0x4e51f0], ebx
je 0x4111c5
mov eax, dword [0x4e51d0]
mov dword [0x4e51f0], ebx
mov ecx, dword [eax]
mov edx, dword [ecx + 0x164]
push ebx
push eax
call edx
mov eax, dword [0x4e51d0]
mov ecx, dword [eax]
push 0x20
lea edx, [esp + 0x68]
push edx
push 2
push 5
push eax
mov eax, dword [ecx + 0x14c]
call eax
add edi, 1
cmp edi, dword [esp + 0x104]
jl 0x410e32
mov ebx, dword [esp + 0x14]
add ebx, 0xc84
call fcn.0040d9b0
cmp dword [esp + 0x108], 0x10
je 0x411219
mov ecx, dword [esp + 0x10c]
push ecx
call fcn.0045a194
add esp, 4
mov ecx, dword [esp + 0x158]
pop edi
pop esi
pop ebp
mov dword fs:[0], ecx
pop ebx
add esp, 0x154
ret