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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x58b3c8
mov eax, dword fs:[0]
push eax
sub esp, 0x98
push ebx
push esi
push edi
mov eax, dword [0x6a3b20]
xor eax, esp
push eax
lea eax, [esp + 0xa8]
mov dword fs:[0], eax
mov esi, ecx
mov ecx, dword [esi + 0x38]
mov eax, dword [ecx]
mov eax, dword [eax + 4]
lea edx, [esp + 0x54]
push edx
call eax
fld qword [eax]
mov ecx, dword [esi + 0x3c]
fstp qword [esp + 0x44]
fld qword [eax + 8]
mov edx, dword [ecx]
mov edx, dword [edx + 4]
fstp qword [esp + 0x4c]
lea eax, [esp + 0x64]
push eax
call edx
fld qword [eax]
fst qword [esp + 0x54]
fld qword [eax + 8]
fst qword [esp + 0x5c]
fld qword [esp + 0x44]
fsubrp st(2)
fxch st(1)
fst qword [esp + 0x74]
fld qword [esp + 0x4c]
fsubrp st(2)
fxch st(1)
fst qword [esp + 0x64]
fld st(1)
fmulp st(2)
fmul st(0), st(0)
faddp st(1)
fldz
fcom st(1)
fnstsw ax
test ah, 0x41
jnp 0x47934d
fxch st(1)
fchs
fxch st(1)
fld qword [0x5acb20]
fcomp st(2)
fnstsw ax
fstp st(1)
test ah, 1
je 0x4795e4
mov ecx, dword [esi + 0x68]
lea eax, [esi + 0x68]
mov dword [esp + 0x2c], eax
cmp ecx, 9
ja case.0x479378.0
movzx ecx, byte [ecx + 0x47960c]
jmp dword [ecx*4 + 0x479600]
fld st(0)
fst qword [esp + 0x14]
jmp 0x4793a4
fstp st(0)
fld qword [eax + 0x10]
fld qword [eax + 8]
fmul st(0), st(0)
fld st(1)
fmulp st(2)
faddp st(1)
call fcn.00580afa
fst qword [esp + 0x14]
fldz
fxch st(1)
mov ecx, dword [esi + 0x48]
fst qword [esp + 0x34]
lea eax, [esi + 0x48]
mov dword [esp + 0x30], eax
cmp ecx, 9
ja case.0x4793be.0
movzx edx, byte [ecx + 0x479624]
jmp dword [edx*4 + 0x479618]
fld qword [eax + 8]
fmul qword [0x5ac168]
fst qword [esp + 0x14]
jmp 0x4793a4
fstp st(1)
fstp st(0)
fld qword [eax + 0x10]
fld qword [eax + 8]
fld st(1)
fmulp st(2)
fmul st(0), st(0)
faddp st(1)
call fcn.00580afa
fld qword [esp + 0x14]
jmp case.0x4793be.0
fstp st(1)
fld qword [eax + 8]
fmul qword [0x5ac168]
fxch st(1)
fxch st(1)
fst qword [esp + 0x14]
fcompp
fnstsw ax
test ah, 5
lea eax, [esp + 0x34]
jnp 0x479415
lea eax, [esp + 0x14]
fld qword [eax]
lea eax, [esp + 0x14]
push eax
fstp qword [esp + 0x38]
mov ecx, esi
call fcn.00429370
mov ecx, eax
mov dword [esp + 0xb0], 0
call dword [0x5a7f1c]
fst qword [esp + 0x1c]
fcomp qword [esp + 0x34]
fnstsw ax
test ah, 0x41
lea eax, [esp + 0x1c]
je 0x479451
lea eax, [esp + 0x34]
fld qword [eax]
lea ecx, [esp + 0x14]
fstp qword [esp + 0x34]
mov dword [esp + 0xb0], 0xffffffff
call dword [0x5a7e5c]
fld qword [esp + 0x34]
fld st(0)
call fcn.00580800
fchs
mov edi, eax
call fcn.00580800
mov edx, dword [esi]
mov edx, dword [edx + 0x38]
mov ebx, eax
lea eax, [esp + 0x34]
push eax
mov ecx, esi
call edx
mov ecx, dword [eax + 0xc]
mov edx, dword [eax + 8]
add ecx, edi
add edx, edi
mov edi, dword [eax + 4]
mov eax, dword [eax]
mov dword [esp + 0x28], ecx
add eax, ebx
lea ecx, [esp + 0x1c]
push ecx
mov dword [esp + 0x28], edx
lea edx, [esp + 0x58]
mov dword [esp + 0x20], eax
push edx
lea eax, [esp + 0x4c]
push eax
lea ecx, [esp + 0x90]
push ecx
add edi, ebx
mov ecx, esi
mov dword [esp + 0x30], edi
call fcn.0046a580
lea ecx, [esp + 0x84]
call dword [0x5a78a8]
test al, al
jne 0x4795e6
lea edx, [esp + 0x14]
push edx
mov ecx, esi
call fcn.00429370
mov esi, dword [ebp + 8]
mov ebx, 1
push eax
mov ecx, esi
mov dword [esp + 0xb4], ebx
call dword [0x5a7f14]
test byte [esi + 4], 4
je 0x479517
mov ecx, esi
call fcn.00430770
lea ecx, [esp + 0x14]
mov dword [esp + 0xb0], 0xffffffff
call dword [0x5a7e5c]
cmp byte [esi + 8], 0
jne 0x479555
test byte [esi + 4], bl
jne 0x479555
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x88]
call dword [0x5a79bc]
push ebx
push eax
mov ecx, esi
call dword [0x5a7f08]
jmp 0x479566
push ebx
lea ecx, [esp + 0x88]
push ecx
mov ecx, esi
call dword [0x5a7f04]
push ebx
mov ecx, esi
call dword [0x5a7ff0]
mov ecx, dword [esp + 0x2c]
cmp dword [ecx], 0
je 0x47959b
fld qword [esp + 0x74]
lea edx, [esp + 0x74]
push edx
fstp qword [esp + 0x78]
fld qword [esp + 0x68]
lea eax, [esp + 0x48]
push eax
fstp qword [esp + 0x84]
push esi
call fcn.0043a600
mov ecx, dword [esp + 0x30]
cmp dword [ecx], 0
je 0x4795e6
fld qword [esp + 0x54]
lea edx, [esp + 0x64]
fsub qword [esp + 0x44]
push edx
lea eax, [esp + 0x58]
push eax
fstp qword [esp + 0x6c]
push esi
fld qword [esp + 0x68]
fsub qword [esp + 0x58]
fstp qword [esp + 0x78]
call fcn.0043a600
mov ecx, dword [esp + 0xa8]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
fstp st(0)
mov ecx, dword [esp + 0xa8]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4