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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0x204
fldz
mov ecx, dword [ebp + 8]
test ecx, ecx
fst dword [esp + 0x144]
fst dword [esp + 0x148]
push ebx
fst dword [esp + 0x150]
push esi
fst dword [esp + 0x158]
lea eax, [esp + 0x14c]
fst dword [esp + 0x15c]
push edi
fst dword [esp + 0x164]
mov dword [esp + 0x104], eax
fst dword [esp + 0x168]
mov dword [esp + 0x8c], 0
fst dword [esp + 0x16c]
fst dword [esp + 0x170]
fst dword [esp + 0x174]
fst dword [esp + 0x178]
fst dword [esp + 0x17c]
fst dword [esp + 0x180]
fst dword [esp + 0x184]
fst dword [esp + 0x188]
fst dword [esp + 0x18c]
fst dword [esp + 0x190]
fst dword [esp + 0x194]
fst dword [esp + 0x198]
fst dword [esp + 0x19c]
fst dword [esp + 0x1a0]
fst dword [esp + 0x1a4]
fst dword [esp + 0x1a8]
fst dword [esp + 0x1ac]
fst dword [esp + 0x1b0]
fst dword [esp + 0x1b4]
fst dword [esp + 0x1b8]
fst dword [esp + 0x1bc]
fst dword [esp + 0x1c0]
fst dword [esp + 0x1c4]
fst dword [esp + 0x1c8]
fst dword [esp + 0x1cc]
fst dword [esp + 0x1d0]
fst dword [esp + 0x1d4]
fst dword [esp + 0x1d8]
fst dword [esp + 0x1dc]
fst dword [esp + 0x1e0]
fst dword [esp + 0x1e4]
fst dword [esp + 0x1e8]
fst dword [esp + 0x1ec]
fst dword [esp + 0x1f0]
fst dword [esp + 0x1f4]
fst dword [esp + 0x1f8]
fst dword [esp + 0x1fc]
fst dword [esp + 0x200]
fst dword [esp + 0x204]
fst dword [esp + 0x208]
fst dword [esp + 0x20c]
jle 0x4aa2b0
mov eax, dword [ebp + 0x14]
mov edi, dword [ebp + 0x1c]
mov esi, dword [ebp + 0xc]
lea ecx, [eax + 0xa8]
mov dword [esp + 0x24], ecx
mov ecx, dword [ebp + 0x18]
lea edx, [ecx + 0x68]
mov dword [esp + 0x2c], edx
mov edx, dword [ebp + 0x24]
mov ebx, 0xffffff98
sub ebx, ecx
add edi, 4
add edx, 0x348
mov ecx, 0xffffff58
sub ecx, eax
mov dword [esp + 0x44], edi
mov dword [esp + 0x4c], edx
mov dword [esp + 0x10c], ebx
mov dword [esp + 0x100], ecx
jmp 0x4a99bb
mov ecx, dword [esp + 0x100]
mov ebx, dword [esp + 0x24]
add ecx, ebx
mov ebx, dword [esp + 0x10c]
mov dword [esp + 0x88], ecx
mov ecx, dword [esp + 0x2c]
add ebx, ecx
add ecx, 0xffffffb0
mov dword [esp + 0x1c], ecx
mov ecx, dword [esp + 0x24]
mov dword [esp + 0x28], ebx
xor ebx, ebx
lea eax, [edx - 0x108]
add ecx, 0xffffff70
cmp ebx, 3
mov dword [esp + 0x14], ebx
mov dword [esp + 0x10], eax
jge 0x4a9d38
mov edx, dword [edi - 4]
mov ebx, dword [ebp + 0x20]
mov esi, dword [edi]
add edx, ebx
add esi, ebx
lea edi, [eax + 0x90]
mov ebx, 3
sub ebx, dword [esp + 0x14]
mov dword [esp + 0x48], edi
mov edi, dword [esp + 0x1c]
mov dword [esp + 0x40], eax
mov eax, ecx
mov dword [esp + 0x18], ebx
fld dword [eax - 0x18]
fmul dword [ecx - 0x18]
fstp dword [esp + 0x110]
fld dword [eax - 0x14]
fmul dword [ecx - 0x14]
fstp dword [esp + 0x114]
fld dword [eax - 0x10]
fmul dword [ecx - 0x10]
fstp dword [esp + 0x118]
fld dword [eax - 8]
fmul dword [ecx - 8]
fstp dword [esp + 0x30]
fld dword [eax - 4]
fmul dword [ecx - 4]
fstp dword [esp + 0x34]
fld dword [eax]
fmul dword [ecx]
fstp dword [esp + 0x38]
fld dword [eax + 8]
fmul dword [ecx + 8]
fstp dword [esp + 0xe0]
fld dword [eax + 0xc]
fmul dword [ecx + 0xc]
fstp dword [esp + 0xe4]
fld dword [eax + 0x10]
fmul dword [ecx + 0x10]
fstp dword [esp + 0xe8]
fld dword [edx + 0x3c]
fstp dword [esp + 0x108]
fld dword [esi + 0x3c]
fstp dword [esp + 0x20]
fld dword [esp + 0x108]
fld st(0)
fld dword [esp + 0x110]
fld st(0)
fmulp st(2)
fxch st(1)
fstp dword [esp + 0x90]
fld dword [esp + 0x114]
fld st(0)
fmul st(3)
fstp dword [esp + 0x94]
fld dword [esp + 0x118]
fld st(0)
fmulp st(4)
fxch st(3)
fstp dword [esp + 0x98]
fld dword [esp + 0x20]
fld st(0)
fmulp st(3)
fxch st(2)
fstp dword [esp + 0x140]
fmul st(1)
fstp dword [esp + 0x144]
fmulp st(1)
fstp dword [esp + 0x148]
fld dword [esp + 0x30]
fmul dword [edx + 0x30]
fstp dword [esp + 0x30]
fld dword [edx + 0x34]
fmul dword [esp + 0x34]
fstp dword [esp + 0x34]
fld dword [edx + 0x38]
fmul dword [esp + 0x38]
fstp dword [esp + 0x38]
fld dword [esp + 0xe0]
fmul dword [esi + 0x30]
fstp dword [esp + 0xe0]
fld dword [esi + 0x34]
fmul dword [esp + 0xe4]
fstp dword [esp + 0xe4]
fld dword [esi + 0x38]
fmul dword [esp + 0xe8]
fstp dword [esp + 0xe8]
fld dword [esp + 0x140]
fadd dword [esp + 0x90]
fstp dword [esp + 0x90]
fld dword [esp + 0x144]
fadd dword [esp + 0x94]
fstp dword [esp + 0x94]
fld dword [esp + 0x148]
fadd dword [esp + 0x98]
mov ebx, dword [esp + 0x40]
fstp dword [esp + 0x98]
fld dword [esp + 0xe0]
fadd dword [esp + 0x30]
fstp dword [esp + 0x30]
fld dword [esp + 0xe4]
fadd dword [esp + 0x34]
fstp dword [esp + 0x34]
fld dword [esp + 0xe8]
fadd dword [esp + 0x38]
fstp dword [esp + 0x38]
fld dword [esp + 0x90]
fadd dword [esp + 0x30]
fstp dword [esp + 0x30]
fld dword [esp + 0x94]
fadd dword [esp + 0x34]
fstp dword [esp + 0x34]
fld dword [esp + 0x98]
fadd dword [esp + 0x38]
fstp dword [esp + 0x38]
fld dword [esp + 0x34]
fadd dword [esp + 0x30]
fadd dword [esp + 0x38]
fstp dword [esp + 0x20]
fld dword [esp + 0x20]
fst dword [ebx]
mov ebx, dword [esp + 0x48]
fstp dword [ebx - 0x90]
mov ebx, dword [esp + 0x1c]
fld dword [edi - 0x18]
fmul dword [ebx - 0x18]
fstp dword [esp + 0x70]
fld dword [edi - 0x14]
fmul dword [ebx - 0x14]
fstp dword [esp + 0x74]
fld dword [edi - 0x10]
fmul dword [ebx - 0x10]
fstp dword [esp + 0x78]
fld dword [edi - 8]
fmul dword [ebx - 8]
fstp dword [esp + 0xb0]
fld dword [edi - 4]
fmul dword [ebx - 4]
fstp dword [esp + 0xb4]
fld dword [edi]
fmul dword [ebx]
mov ebx, dword [esp + 0x40]
fstp dword [esp + 0xb8]
fld dword [esp + 0x70]
fmul dword [edx + 0x30]
fstp dword [esp + 0x70]
fld dword [esp + 0x74]
fmul dword [edx + 0x34]
fstp dword [esp + 0x74]
fld dword [esp + 0x78]
fmul dword [edx + 0x38]
fstp dword [esp + 0x78]
fld dword [esp + 0xb0]
fmul dword [esi + 0x30]
fstp dword [esp + 0xb0]
fld dword [esp + 0xb4]
fmul dword [esi + 0x34]
fstp dword [esp + 0xb4]
fld dword [esp + 0xb8]
fmul dword [esi + 0x38]
fstp dword [esp + 0xb8]
fld dword [esp + 0xb0]
fadd dword [esp + 0x70]
fstp dword [esp + 0x70]
fld dword [esp + 0xb4]
fadd dword [esp + 0x74]
fstp dword [esp + 0x74]
fld dword [esp + 0xb8]
fadd dword [esp + 0x78]
fstp dword [esp + 0x78]
fld dword [esp + 0x74]
fadd dword [esp + 0x70]
fadd dword [esp + 0x78]
fstp dword [esp + 0x20]
fld dword [esp + 0x20]
add dword [esp + 0x40], 0x10
fst dword [ebx + 0x90]
mov ebx, dword [esp + 0x48]
add dword [esp + 0x48], 4
fstp dword [ebx]
add eax, 0x30
add edi, 0x20
sub dword [esp + 0x18], 1
jne 0x4a9a30
mov esi, dword [ebp + 0xc]
mov edx, dword [esp + 0x4c]
mov edi, dword [esp + 0x44]
mov eax, dword [esp + 0x10]
fld dword [esi + 4]
add dword [esp + 0x14], 1
fmul dword [eax]
mov ebx, dword [esp + 0x14]
add dword [esp + 0x1c], 0x20
add eax, 0x14
fstp dword [eax - 0x14]
add ecx, 0x30
cmp ebx, 3
fld dword [esi + 0xc]
fmul dword [eax + 0x7c]
mov dword [esp + 0x10], eax
fstp dword [eax + 0x7c]
fld dword [eax - 0x14]
fadd dword [esi]
fstp dword [eax - 0x14]
fld dword [esi + 8]
fadd dword [eax + 0x7c]
fstp dword [eax + 0x7c]
jl 0x4a9a03
mov ecx, dword [edi - 4]
mov eax, dword [ebp + 0x20]
lea esi, [ecx + eax + 0x30]
mov ecx, dword [edi]
mov edi, dword [ebp + 0x14]
add eax, ecx
mov ecx, dword [esp + 0x88]
lea ecx, [ecx + edi + 0x28]
add edx, 0xfffffef8
lea edi, [edx + 0x60]
mov edx, dword [esp + 0x28]
mov dword [esp + 0x88], ecx
mov ecx, dword [ebp + 0x18]
mov dword [esp + 0x20], edi
mov dword [esp + 0x10], edi
lea edx, [edx + ecx + 0x18]
mov dword [esp + 0x18], 3
mov ecx, dword [esp + 0x88]
mov ebx, 3
fld dword [ecx - 0x18]
add ecx, 0x30
fmul dword [edx - 0x18]
add edi, 0x10
sub ebx, 1
fstp dword [esp + 0x50]
fld dword [ecx - 0x44]
fmul dword [edx - 0x14]
fstp dword [esp + 0x54]
fld dword [ecx - 0x40]
fmul dword [edx - 0x10]
fstp dword [esp + 0x58]
fld dword [ecx - 0x38]
fmul dword [edx - 8]
fstp dword [esp + 0xd0]
fld dword [ecx - 0x34]
fmul dword [edx - 4]
fstp dword [esp + 0xd4]
fld dword [ecx - 0x30]
fmul dword [edx]
fstp dword [esp + 0xd8]
fld dword [esp + 0x50]
fmul dword [esi]
fstp dword [esp + 0x50]
fld dword [esp + 0x54]
fmul dword [esi + 4]
fstp dword [esp + 0x54]
fld dword [esp + 0x58]
fmul dword [esi + 8]
fstp dword [esp + 0x58]
fld dword [eax + 0x30]
fmul dword [esp + 0xd0]
fstp dword [esp + 0xd0]
fld dword [esp + 0xd4]
fmul dword [eax + 0x34]
fstp dword [esp + 0xd4]
fld dword [esp + 0xd8]
fmul dword [eax + 0x38]
fstp dword [esp + 0xd8]
fld dword [esp + 0xd0]
fadd dword [esp + 0x50]
fstp dword [esp + 0x50]
fld dword [esp + 0xd4]
fadd dword [esp + 0x54]
fstp dword [esp + 0x54]
fld dword [esp + 0xd8]
fadd dword [esp + 0x58]
fstp dword [esp + 0x58]
fld dword [esp + 0x54]
fadd dword [esp + 0x50]
fadd dword [esp + 0x58]
fstp dword [edi - 0x10]
jne 0x4a9dce
mov edi, dword [esp + 0x10]
add edi, 4
add edx, 0x20
sub dword [esp + 0x18], 1
mov dword [esp + 0x10], edi
jne 0x4a9dc2
mov ecx, dword [esp + 0x20]
fld dword [ecx]
mov edx, dword [esp + 0x4c]
fstp dword [edx - 0xd8]
fld dword [ecx + 0x14]
fstp dword [edx - 0xc4]
fld dword [ecx + 0x28]
fstp dword [edx - 0xb0]
fst dword [edx - 0xcc]
fst dword [edx - 0xbc]
fst dword [edx - 0xac]
fld dword [ecx + 0x10]
fstp dword [edx - 0xd4]
fld dword [ecx + 4]
fstp dword [edx - 0xc8]
fld dword [ecx + 0x20]
fstp dword [edx - 0xd0]
fld dword [ecx + 8]
fstp dword [edx - 0xb8]
fld dword [ecx + 0x24]
fstp dword [edx - 0xc0]
fld dword [ecx + 0x18]
mov ecx, dword [ebp + 8]
lea esi, [ecx - 1]
fstp dword [edx - 0xb4]
cmp dword [esp + 0x8c], esi
jge 0x4aa1e3
mov edi, dword [esp + 0x2c]
add edx, 0xffffffe8
mov dword [esp + 0x14], edx
mov edx, dword [esp + 0x24]
add edi, 0xffffffa8
add edx, 0xffffff80
mov dword [esp + 0x1c], 3
mov ecx, dword [esp + 0x14]
mov esi, dword [esp + 0x2c]
mov dword [esp + 0x10], ecx
mov ecx, dword [esp + 0x24]
mov dword [esp + 0x18], 3
fld dword [ecx - 0x18]
mov ebx, dword [esp + 0x10]
fmul dword [edx - 0x28]
fstp dword [esp + 0x120]
fld dword [edx - 0x24]
fmul dword [ecx - 0x14]
fstp dword [esp + 0x124]
fld dword [edx - 0x20]
fmul dword [ecx - 0x10]
fstp dword [esp + 0x128]
fld dword [edx - 8]
fmul dword [ecx - 8]
fstp dword [esp + 0x60]
fld dword [edx - 4]
fmul dword [ecx - 4]
fstp dword [esp + 0x64]
fld dword [edx]
fmul dword [ecx]
fstp dword [esp + 0x68]
fld dword [eax + 0x3c]
fstp dword [esp + 0x28]
fld dword [esp + 0x28]
fld st(0)
fmul dword [esp + 0x120]
fstp dword [esp + 0x130]
fld dword [esp + 0x124]
fmul st(1)
fstp dword [esp + 0x134]
fmul dword [esp + 0x128]
fstp dword [esp + 0x138]
fld dword [esp + 0x60]
fmul dword [eax + 0x30]
fstp dword [esp + 0x60]
fld dword [eax + 0x34]
fmul dword [esp + 0x64]
fstp dword [esp + 0x64]
fld dword [eax + 0x38]
fmul dword [esp + 0x68]
fstp dword [esp + 0x68]
fld dword [esp + 0x60]
fsub dword [esp + 0x130]
fstp dword [esp + 0x60]
fld dword [esp + 0x64]
fsub dword [esp + 0x134]
fstp dword [esp + 0x64]
fld dword [esp + 0x68]
fsub dword [esp + 0x138]
fstp dword [esp + 0x68]
fld dword [esp + 0x64]
fadd dword [esp + 0x60]
fadd dword [esp + 0x68]
fstp dword [ebx - 0x30]
fld dword [edi]
fmul dword [esi - 8]
fstp dword [esp + 0xa0]
fld dword [edi + 4]
fmul dword [esi - 4]
fstp dword [esp + 0xa4]
fld dword [edi + 8]
fmul dword [esi]
fstp dword [esp + 0xa8]
fld dword [esp + 0xa0]
fmul dword [eax + 0x30]
fstp dword [esp + 0xa0]
fld dword [eax + 0x34]
fmul dword [esp + 0xa4]
fstp dword [esp + 0xa4]
fld dword [eax + 0x38]
fmul dword [esp + 0xa8]
fstp dword [esp + 0xa8]
fld dword [esp + 0xa4]
fadd dword [esp + 0xa0]
fadd dword [esp + 0xa8]
fstp dword [ebx + 0x60]
fld dword [edx - 8]
fmul dword [esi - 8]
fstp dword [esp + 0xf0]
fld dword [esi - 4]
fmul dword [edx - 4]
fstp dword [esp + 0xf4]
fld dword [esi]
fmul dword [edx]
add ebx, 0x10
add esi, 0x20
add ecx, 0x30
sub dword [esp + 0x18], 1
fstp dword [esp + 0xf8]
fld dword [esp + 0xf0]
mov dword [esp + 0x10], ebx
fmul dword [eax + 0x30]
fstp dword [esp + 0xf0]
fld dword [eax + 0x34]
fmul dword [esp + 0xf4]
fstp dword [esp + 0xf4]
fld dword [eax + 0x38]
fmul dword [esp + 0xf8]
fstp dword [esp + 0xf8]
fld dword [esp + 0xf4]
fadd dword [esp + 0xf0]
fadd dword [esp + 0xf8]
fstp dword [ebx - 0x10]
fld dword [edi]
fmul dword [ecx - 0x38]
fstp dword [esp + 0xc0]
fld dword [ecx - 0x34]
fmul dword [edi + 4]
fstp dword [esp + 0xc4]
fld dword [edi + 8]
fmul dword [ecx - 0x30]
fstp dword [esp + 0xc8]
fld dword [esp + 0xc0]
fmul dword [eax + 0x30]
fstp dword [esp + 0xc0]
fld dword [esp + 0xc4]
fmul dword [eax + 0x34]
fstp dword [esp + 0xc4]
fld dword [esp + 0xc8]
fmul dword [eax + 0x38]
fstp dword [esp + 0xc8]
fld dword [esp + 0xc4]
fadd dword [esp + 0xc0]
fadd dword [esp + 0xc8]
fstp dword [ebx + 0x20]
jne 0x4a9f7b
add dword [esp + 0x14], 4
add edx, 0x30
add edi, 0x20
sub dword [esp + 0x1c], 1
jne 0x4a9f63
mov edx, dword [esp + 0x4c]
mov ecx, dword [ebp + 8]
jmp 0x4aa272
fst dword [edx - 0x48]
fst dword [edx - 0x44]
fst dword [edx - 0x40]
fst dword [edx - 0x3c]
fst dword [edx - 0x38]
fst dword [edx - 0x34]
fst dword [edx - 0x30]
fst dword [edx - 0x2c]
fst dword [edx - 0x28]
fst dword [edx - 0x24]
fst dword [edx - 0x20]
fst dword [edx - 0x1c]
fst dword [edx - 0x18]
fst dword [edx - 0x14]
fst dword [edx - 0x10]
fst dword [edx - 0xc]
fst dword [edx - 8]
fst dword [edx - 4]
fst dword [edx]
fst dword [edx + 4]
fst dword [edx + 8]
fst dword [edx + 0xc]
fst dword [edx + 0x10]
fst dword [edx + 0x14]
fst dword [edx + 0x18]
fst dword [edx + 0x1c]
fst dword [edx + 0x20]
fst dword [edx + 0x24]
fst dword [edx + 0x28]
fst dword [edx + 0x2c]
fst dword [edx + 0x30]
fst dword [edx + 0x34]
fst dword [edx + 0x38]
fst dword [edx + 0x3c]
fst dword [edx + 0x40]
fst dword [edx + 0x44]
fst dword [edx + 0x48]
fst dword [edx + 0x4c]
fst dword [edx + 0x50]
fst dword [edx + 0x54]
fst dword [edx + 0x58]
fst dword [edx + 0x5c]
fst dword [edx + 0x60]
fst dword [edx + 0x64]
fst dword [edx + 0x68]
fst dword [edx + 0x6c]
fst dword [edx + 0x70]
fst dword [edx + 0x74]
mov eax, dword [esp + 0x8c]
mov edi, dword [esp + 0x44]
add dword [esp + 0x2c], 0x60
add dword [esp + 0x24], 0x90
mov esi, dword [ebp + 0xc]
add eax, 1
add edi, 4
add edx, 0x3c0
cmp eax, ecx
mov dword [esp + 0x8c], eax
mov dword [esp + 0x44], edi
mov dword [esp + 0x4c], edx
jl 0x4a99b4
test ecx, ecx
fstp st(0)
jle 0x4aa2fe
mov ebx, dword [ebp + 0x24]
mov edi, dword [ebp + 0x10]
lea esi, [ecx - 1]
mov dword [esp + 0x10], ecx
lea eax, [esp + 0x104]
push eax
lea ecx, [esp + 0x154]
push ecx
test esi, esi
setne dl
push edi
mov byte [esp + 0x34], dl
mov edx, dword [esp + 0x34]
push ebx
push edx
call fcn.004a73a0
add esp, 0x14
sub esi, 1
add edi, 0x40
add ebx, 0x3c0
sub dword [esp + 0x10], 1
jne 0x4aa2c3
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret