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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0x174
push ebx
push esi
push edi
push 0x47
pop edi
push 0x46
mov esi, ecx
pop ecx
push 0x45
pop eax
push 0x44
pop edx
push 0x43
pop ebx
mov dword [esp + 0xbc], eax
mov dword [esp + 0xc8], eax
mov dword [esp + 0xd4], eax
mov dword [esp + 0xe8], eax
mov dword [esp + 0xf4], eax
lea eax, [esp + 0x60]
mov dword [esp + 0xb8], ecx
mov dword [esp + 0xc4], ecx
mov dword [esp + 0xd0], ecx
mov dword [esp + 0xe4], ecx
mov dword [esp + 0xf0], ecx
push eax
lea ecx, [esi + 0x14]
mov dword [esp + 0xa4], 0x50
mov dword [esp + 0xa8], 0x4f
mov dword [esp + 0xac], 0x4e
mov dword [esp + 0xb0], 0x4c
mov dword [esp + 0xb4], 0x48
mov dword [esp + 0xb8], edi
mov dword [esp + 0xc4], edi
mov dword [esp + 0xd0], edx
mov dword [esp + 0xdc], edx
mov dword [esp + 0xe0], ebx
mov dword [esp + 0xe4], edi
mov dword [esp + 0xf0], edx
mov dword [esp + 0xfc], edx
mov dword [esp + 0x100], ebx
call fcn.004065e2
push 0x6a2b1c
lea eax, [esp + 0x2c]
push eax
lea ecx, [esp + 0x78]
mov dword [esp + 0x30], 0xbfc90fda
call fcn.0041b253
lea eax, [esp + 0x60]
push eax
lea eax, [esp + 0x104]
push eax
lea ecx, [esp + 0x78]
call fcn.0041b2a6
mov ecx, dword [eax]
mov dword [esp + 0x60], ecx
mov ecx, dword [eax + 4]
mov dword [esp + 0x64], ecx
mov ecx, dword [eax + 8]
mov eax, dword [eax + 0xc]
mov dword [esp + 0x68], ecx
mov dword [esp + 0x6c], eax
xor ebx, ebx
mov ecx, dword [esi + 0x12c]
cmp byte [ecx + ebx + 0x374], 0
mov dword [esp + 0x28], ecx
je 0x4358f6
mov eax, dword [ecx + 0x24]
mov eax, dword [eax + 0x80]
lea edx, [ebx + ebx*2]
shl edx, 6
fld dword [eax + edx + 0x8c]
fstp dword [esi + ebx*4 + 0x3dc]
jmp 0x43596e
lea eax, [esi + ebx*4 + 0x3dc]
fld dword [eax]
lea edi, [ebx + ebx*2]
fmul dword [0x6484d4]
shl edi, 6
fstp dword [eax]
mov eax, dword [ecx + 0x24]
mov eax, dword [eax + 0x80]
fld dword [eax + edi + 0x90]
fstp dword [esp + 0x50]
call fcn.004061e8
fld dword [eax + 4]
mov eax, dword [esp + 0x28]
fmul dword [esi + ebx*4 + 0x3dc]
mov eax, dword [eax + 0x20]
push 0
push 0x6a32ac
fadd dword [esp + 0x58]
push 0x6a328c
push 0
push eax
fstp dword [esp + 0x64]
call fcn.0060161a
mov eax, dword [eax + 0xc]
fld dword [esp + 0x64]
mov eax, dword [eax + 0x80]
mov ecx, dword [esp + 0x3c]
fstp dword [eax + edi + 0x90]
add esp, 0x14
lea eax, [esp + 0x110]
push eax
lea eax, [esp + 0x84]
push eax
mov eax, dword [ecx + 8]
push ebx
push dword [ecx + 0x3c]
mov ecx, dword [ecx + 0x24]
push dword [eax + 4]
call fcn.004f2c80
mov eax, dword [esp + 0x80]
mov dword [esp + 0x54], eax
mov eax, dword [esp + 0x84]
mov dword [esp + 0x58], eax
mov eax, dword [esp + 0x88]
mov dword [esp + 0x5c], eax
lea eax, [esp + 0x110]
push eax
lea ecx, [esp + 0x74]
call fcn.00432064
mov eax, dword [esi + 0x98]
shl eax, 4
test ebx, ebx
jne 0x4359d8
mov edi, dword [esp + eax + 0xa0]
jmp 0x4359df
mov edi, dword [esp + eax + 0xa4]
fldz
lea eax, [esp + 0x94]
fstp dword [esp + 0x2c]
push eax
fldz
lea eax, [esp + 0x148]
fstp dword [esp + 0x34]
push eax
fldz
lea ecx, [esp + 0x68]
sub edi, 0x41
fstp dword [esp + 0x3c]
fld1
fstp dword [esp + 0x20]
fldz
fstp dword [esp + 0x24]
fldz
fstp dword [esp + 0x28]
fldz
fstp dword [esp + 0x2c]
fld dword [esp + 0x88]
fsub dword [esi + 8]
fstp dword [esp + 0x9c]
fld dword [esp + 0x8c]
fsub dword [esi + 0xc]
fstp dword [esp + 0xa0]
fld dword [esp + 0x90]
fsub dword [esi + 0x10]
fstp dword [esp + 0xa4]
call fcn.00425d35
mov ecx, dword [eax]
mov dword [esp + 0x2c], ecx
mov ecx, dword [eax + 4]
mov dword [esp + 0x30], ecx
mov eax, dword [eax + 8]
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x70]
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x74]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x78]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x7c]
mov dword [esp + 0x24], eax
push 0x6c0944
lea eax, [esp + 0x174]
push eax
lea ecx, [esp + 0x20]
call fcn.0041b2a6
mov ecx, dword [eax]
mov dword [esp + 0x18], ecx
mov ecx, dword [eax + 4]
mov dword [esp + 0x1c], ecx
mov ecx, dword [eax + 8]
mov dword [esp + 0x20], ecx
mov eax, dword [eax + 0xc]
mov dword [esp + 0x24], eax
lea eax, [esp + 0x18]
push eax
lea eax, [esp + 0x154]
push eax
lea ecx, [esp + 0x68]
call fcn.0041b2a6
mov ecx, dword [eax]
mov dword [esp + 0x18], ecx
mov ecx, dword [eax + 4]
mov dword [esp + 0x1c], ecx
mov ecx, dword [eax + 8]
mov dword [esp + 0x20], ecx
mov eax, dword [eax + 0xc]
mov dword [esp + 0x24], eax
mov eax, dword [esi + 0x30]
lea eax, [eax + edi*4]
mov eax, dword [eax]
push dword [eax + 4]
lea eax, [esp + 0x1c]
push eax
lea eax, [esp + 0x34]
push eax
call fcn.0048f3b6
add esp, 0xc
test ebx, ebx
jne 0x435c18
fld dword [esp + 0x54]
lea eax, [esp + 0x38]
fsub dword [esi + 8]
push eax
lea eax, [esp + 0x13c]
push eax
fstp dword [esp + 0x40]
lea ecx, [esp + 0x68]
fld dword [esp + 0x60]
fsub dword [esi + 0xc]
fstp dword [esp + 0x44]
fld dword [esp + 0x64]
fsub dword [esi + 0x10]
fstp dword [esp + 0x48]
call fcn.00425d35
mov ecx, dword [eax]
mov dword [esp + 0x38], ecx
fld dword [esp + 0x38]
mov ecx, dword [eax + 4]
mov dword [esp + 0x3c], ecx
mov eax, dword [eax + 8]
mov ecx, dword [esi + 0x50]
mov dword [esp + 0x40], eax
lea eax, [edi + edi*2]
lea eax, [ecx + eax*4]
fsub dword [eax]
fstp dword [esp + 0x38]
fld dword [esp + 0x3c]
fsub dword [eax + 4]
fstp dword [esp + 0x3c]
fld dword [esp + 0x40]
fsub dword [eax + 8]
mov eax, dword [esi + 0x98]
shl eax, 4
mov edi, dword [esp + eax + 0xa8]
fstp dword [esp + 0x40]
sub edi, 0x41
lea eax, [edi + edi*2]
lea eax, [ecx + eax*4]
fld dword [eax]
fst dword [esp + 0x2c]
fld dword [eax + 4]
fst dword [esp + 0x30]
mov eax, dword [eax + 8]
fld dword [esp + 0x38]
mov dword [esp + 0x34], eax
mov eax, edi
fadd st(2)
shl eax, 4
add eax, dword [esi + 0x40]
mov ecx, dword [eax]
mov dword [esp + 0x18], ecx
mov ecx, dword [eax + 4]
mov dword [esp + 0x1c], ecx
mov ecx, dword [eax + 8]
mov dword [esp + 0x20], ecx
mov eax, dword [eax + 0xc]
fstp dword [esp + 0x2c]
fld dword [esp + 0x3c]
mov dword [esp + 0x24], eax
mov eax, dword [esi + 0x30]
fadd st(1)
lea eax, [eax + edi*4]
fstp dword [esp + 0x30]
fstp st(0)
fstp st(0)
fld dword [esp + 0x40]
fadd dword [esp + 0x34]
fstp dword [esp + 0x34]
mov eax, dword [eax]
push dword [eax + 4]
lea eax, [esp + 0x1c]
push eax
lea eax, [esp + 0x34]
push eax
call fcn.0048f3b6
add esp, 0xc
cmp ebx, 1
jne 0x435d45
fld dword [esp + 0x54]
lea eax, [esp + 0x44]
fsub dword [esi + 8]
push eax
lea eax, [esp + 0x130]
push eax
fstp dword [esp + 0x4c]
lea ecx, [esp + 0x68]
fld dword [esp + 0x60]
fsub dword [esi + 0xc]
fstp dword [esp + 0x50]
fld dword [esp + 0x64]
fsub dword [esi + 0x10]
fstp dword [esp + 0x54]
call fcn.00425d35
mov ecx, dword [eax]
mov dword [esp + 0x44], ecx
fld dword [esp + 0x44]
mov ecx, dword [eax + 4]
mov dword [esp + 0x48], ecx
mov eax, dword [eax + 8]
mov ecx, dword [esi + 0x50]
mov dword [esp + 0x4c], eax
lea eax, [edi + edi*2]
lea eax, [ecx + eax*4]
fsub dword [eax]
push 0x6a2b10
fstp dword [esp + 0x48]
fld dword [esp + 0x4c]
fsub dword [eax + 4]
fstp dword [esp + 0x4c]
fld dword [esp + 0x50]
fsub dword [eax + 8]
mov eax, dword [esi + 0x98]
shl eax, 4
mov edi, dword [esp + eax + 0xb0]
fstp dword [esp + 0x50]
sub edi, 0x41
fld dword [esp + 0x4c]
lea eax, [edi + edi*2]
lea eax, [ecx + eax*4]
fmul dword [0x6484d0]
mov ecx, dword [eax]
mov dword [esp + 0x30], ecx
mov ecx, dword [eax + 4]
mov dword [esp + 0x34], ecx
mov eax, dword [eax + 8]
mov dword [esp + 0x38], eax
mov eax, edi
shl eax, 4
add eax, dword [esi + 0x40]
fmul dword [0x6484cc]
mov ecx, dword [eax]
mov dword [esp + 0x1c], ecx
mov ecx, dword [eax + 4]
fstp dword [esp + 0x2c]
mov dword [esp + 0x20], ecx
mov ecx, dword [eax + 8]
mov dword [esp + 0x24], ecx
mov eax, dword [eax + 0xc]
mov dword [esp + 0x28], eax
lea eax, [esp + 0x2c]
push eax
lea ecx, [esp + 0x108]
call fcn.0041b253
lea eax, [esp + 0x100]
push eax
lea eax, [esp + 0x164]
push eax
lea ecx, [esp + 0x20]
call fcn.00425dd6
mov eax, dword [esi + 0x30]
lea eax, [eax + edi*4]
mov eax, dword [eax]
push dword [eax + 4]
lea eax, [esp + 0x1c]
push eax
lea eax, [esp + 0x34]
push eax
call fcn.0048f3b6
add esp, 0xc
inc ebx
cmp ebx, 2
jl 0x4358c3
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret