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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
mov eax, 0x422c
call fcn.004ad330
fld dword [ebp + 0xc]
push ebx
push esi
mov esi, dword [ebp + 8]
mov eax, dword [esi + 8]
push edi
push ecx
fstp dword [esp]
push eax
lea ecx, [esp + 0x180]
call fcn.004633b0
mov ecx, dword [esi + 0x10]
call fcn.0044ea00
fstp dword [esp + 0x10]
mov eax, dword [esi + 0x18]
cmp dword [eax + 8], 1
mov ecx, dword [esi + 0x1c]
fld dword [ecx + 8]
mov edx, dword [eax + 8]
mov ecx, dword [eax + 0x18]
fstp dword [esp + 0x48]
fld dword [ecx + edx*4]
mov ecx, dword [esi + 0x2c]
fmul dword [eax + 0x20]
mov edx, dword [esi + 0x10]
fmul dword [0x70c3bc]
fstp dword [esp + 0x1c]
fld dword [edx + 0xc]
mov edx, dword [ecx]
mov edx, dword [edx + 0x10]
fstp dword [esp + 0x5c]
fld dword [edx + 0xc]
mov edx, dword [ecx + 4]
mov edx, dword [edx + 0x10]
fstp dword [esp + 0x2c]
fld dword [edx + 0xc]
mov edx, dword [ecx + 8]
mov edx, dword [edx + 0x10]
fstp dword [esp + 0x58]
fld dword [edx + 0xc]
mov ecx, dword [ecx + 0xc]
mov edx, dword [ecx + 0x10]
fstp dword [esp + 0x60]
fld dword [edx + 0xc]
fstp dword [esp + 0x30]
jne 0x463898
fldz
fstp dword [esp + 0x48]
mov eax, dword [esi + 0x2c]
mov edi, 5
mov dword [esp + 0x1190], edi
mov dword [esp + 0x1194], edi
mov ecx, dword [eax]
mov edx, dword [ecx + 0x10]
mov ecx, dword [eax + 4]
fld dword [edx + 0x1ac]
mov edx, dword [ecx + 0x10]
fstp dword [esp + 0x50]
mov ecx, dword [eax + 8]
fld dword [edx + 0x1ac]
mov edx, dword [ecx + 0x10]
fstp dword [esp + 0x44]
mov eax, dword [eax + 0xc]
fld dword [edx + 0x1ac]
mov ecx, dword [eax + 0x10]
fstp dword [esp + 0x54]
fld dword [ecx + 0x1ac]
mov ecx, dword [esi + 0x24]
mov edx, dword [ecx]
fstp dword [esp + 0x4c]
mov eax, dword [edx + 0x1c]
xor ebx, ebx
push ebx
call eax
fstp dword [esp + 0x20]
mov ecx, dword [esi + 0x24]
mov edx, dword [ecx]
mov eax, dword [edx + 0x1c]
push 1
call eax
fstp dword [esp + 0x18]
mov ecx, dword [esi + 0x24]
mov edx, dword [ecx]
mov eax, dword [edx + 0x1c]
push 2
call eax
fstp dword [esp + 0x38]
fld dword [esp + 0x20]
mov ecx, dword [esi + 0x24]
fld dword [esp + 0x1c]
mov edx, dword [ecx]
mov eax, dword [edx + 0x1c]
fld st(0)
fmulp st(2)
push 3
fxch st(1)
fstp dword [esp + 0x38]
fld dword [esp + 0x1c]
fmul st(1)
fstp dword [esp + 0x68]
fmul dword [esp + 0x3c]
fstp dword [esp + 0x1c]
call eax
fld dword [esp + 0x1c]
mov ecx, dword [esi + 0x2c]
mov edx, dword [ecx]
fld st(0)
mov eax, dword [edx + 0x10]
fmulp st(2)
fxch st(1)
fstp dword [esp + 0x20]
fld dword [eax + 0x18]
fmul st(1)
fldz
fcom st(1)
fnstsw ax
fstp st(1)
test ah, 0x41
fldz
jne 0x46397c
fst dword [esp + 0x34]
mov edx, dword [ecx + 4]
mov eax, dword [edx + 0x10]
fld dword [eax + 0x18]
fmul st(3)
fcomp st(2)
fnstsw ax
test ah, 5
jp 0x463994
fst dword [esp + 0x64]
mov edx, dword [ecx + 8]
mov eax, dword [edx + 0x10]
fld dword [eax + 0x18]
fmul st(3)
fcomp st(2)
fnstsw ax
test ah, 5
jp 0x4639ac
fst dword [esp + 0x18]
mov ecx, dword [ecx + 0xc]
mov edx, dword [ecx + 0x10]
fld dword [edx + 0x18]
fmulp st(3)
fxch st(2)
fcompp
fnstsw ax
test ah, 5
jp 0x4639c8
fstp dword [esp + 0x20]
jmp 0x4639ca
fstp st(0)
fld dword [esp + 0x48]
mov eax, dword [esp + 0x1194]
fld st(0)
fadd dword [esp + 0x10]
fld dword [esp + 0x5c]
fld st(0)
fmulp st(2)
fxch st(1)
fchs
fstp dword [esp + 0x190]
fld dword [esp + 0x34]
fld st(0)
fmul st(3)
fmul st(2)
fstp dword [esp + 0x194]
fld dword [esp + 0x64]
fld st(0)
fmul st(4)
fmul st(3)
fstp dword [esp + 0x198]
fld dword [esp + 0x18]
fld st(0)
fmul st(5)
fmul st(4)
fstp dword [esp + 0x19c]
fld dword [esp + 0x20]
fld st(0)
fmul st(6)
fmulp st(5)
fxch st(4)
fstp dword [esp + 0x1a0]
fld dword [esp + 0x1c]
fmul st(5)
fst qword [esp + 0x20]
fmul dword [esp + 0x50]
fld dword [esp + 0x2c]
fld st(0)
fmulp st(2)
fxch st(1)
fstp dword [esp + eax*4 + 0x190]
mov ecx, dword [esp + 0x1194]
fxch st(5)
fchs
fmul dword [esp + 0x1c]
fld dword [esp + 0x50]
fmul st(1)
fst qword [esp + 0x10]
fmul st(4)
fmul st(6)
fstp dword [esp + ecx*4 + 0x194]
mov edx, dword [esp + 0x1194]
fld st(2)
fmul qword [esp + 0x10]
fmul st(6)
fstp dword [esp + edx*4 + 0x198]
mov eax, dword [esp + 0x1194]
fld st(1)
fmul qword [esp + 0x10]
fmul st(6)
fstp dword [esp + eax*4 + 0x19c]
mov ecx, dword [esp + 0x1194]
fld st(4)
fmul qword [esp + 0x10]
fmulp st(6)
fxch st(5)
fstp dword [esp + ecx*4 + 0x1a0]
mov edx, dword [esp + 0x1194]
fld dword [esp + 0x44]
fmul qword [esp + 0x20]
fld dword [esp + 0x58]
fld st(0)
fmulp st(2)
fxch st(1)
fstp dword [esp + edx*8 + 0x190]
mov eax, dword [esp + 0x1194]
fld dword [esp + 0x44]
fmul st(6)
fst qword [esp + 0x10]
fmul st(4)
fmul st(1)
fstp dword [esp + eax*8 + 0x194]
mov ecx, dword [esp + 0x1194]
fld st(2)
fmul qword [esp + 0x10]
fmul st(1)
fstp dword [esp + ecx*8 + 0x198]
mov edx, dword [esp + 0x1194]
fld st(1)
fmul qword [esp + 0x10]
fmul st(1)
fstp dword [esp + edx*8 + 0x19c]
mov eax, dword [esp + 0x1194]
fld st(4)
fmul qword [esp + 0x10]
fmulp st(1)
fstp dword [esp + eax*8 + 0x1a0]
mov eax, dword [esp + 0x1194]
fld dword [esp + 0x54]
lea ecx, [eax + eax*2]
fmul qword [esp + 0x20]
fld dword [esp + 0x60]
fld st(0)
fmulp st(2)
fxch st(1)
fstp dword [esp + 0x10]
fld dword [esp + 0x10]
fstp dword [esp + ecx*4 + 0x190]
mov eax, dword [esp + 0x1194]
fld dword [esp + 0x54]
lea edx, [eax + eax*2]
fmul st(6)
fst qword [esp + 0x38]
fmul st(4)
fmul st(1)
fstp dword [esp + 0x10]
fld dword [esp + 0x10]
fstp dword [esp + edx*4 + 0x194]
mov eax, dword [esp + 0x1194]
fld st(2)
lea eax, [eax + eax*2]
fmul qword [esp + 0x38]
fmul st(1)
fstp dword [esp + 0x10]
fld dword [esp + 0x10]
fstp dword [esp + eax*4 + 0x198]
mov eax, dword [esp + 0x1194]
fld st(1)
lea ecx, [eax + eax*2]
fmul qword [esp + 0x38]
fmul st(1)
fstp dword [esp + 0x10]
fld dword [esp + 0x10]
fstp dword [esp + ecx*4 + 0x19c]
mov eax, dword [esp + 0x1194]
fld st(4)
lea edx, [eax + eax*2]
fmul qword [esp + 0x38]
fmulp st(1)
fstp dword [esp + 0x10]
fld dword [esp + 0x10]
fstp dword [esp + edx*4 + 0x1a0]
mov eax, dword [esp + 0x1194]
fld dword [esp + 0x4c]
shl eax, 4
fmul qword [esp + 0x20]
fld dword [esp + 0x30]
fld st(0)
fmulp st(2)
fxch st(1)
fstp dword [esp + 0x10]
fld dword [esp + 0x10]
fstp dword [esp + eax + 0x190]
mov ecx, dword [esp + 0x1194]
fld dword [esp + 0x4c]
shl ecx, 4
fmulp st(6)
fxch st(3)
fmul st(5)
fmul st(3)
fstp dword [esp + 0x10]
fld dword [esp + 0x10]
fstp dword [esp + ecx + 0x194]
mov edx, dword [esp + 0x1194]
fxch st(1)
fmul st(4)
shl edx, 4
mov dword [esp + 0x2198], ebx
mov dword [esp + 0x219c], ebx
fmul st(2)
mov dword [esp + 0x31a0], edi
mov dword [esp + 0x31a4], edi
fstp dword [esp + 0x10]
fld dword [esp + 0x10]
fstp dword [esp + edx + 0x198]
mov eax, dword [esp + 0x1194]
shl eax, 4
fmul st(3)
fmul st(1)
fstp dword [esp + 0x10]
fld dword [esp + 0x10]
fstp dword [esp + eax + 0x19c]
mov ecx, dword [esp + 0x1194]
fxch st(1)
shl ecx, 4
fmulp st(2)
fmulp st(1)
fstp dword [esp + 0x10]
fld dword [esp + 0x10]
fstp dword [esp + ecx + 0x1a0]
lea ecx, [esp + 0x21a0]
call fcn.00463540
fld dword [ebp + 0xc]
lea edx, [esp + 0x1198]
push edx
push ecx
lea eax, [esp + 0x198]
fstp dword [esp]
push eax
call fcn.004635a0
lea ecx, [esp + 0x19c]
push ecx
lea edx, [esp + 0x11a8]
push edx
lea eax, [esp + 0x21b4]
push eax
call fcn.00463610
mov ecx, dword [esi + 0x10]
add esp, 0x18
mov dword [esp + 0x170], edi
call fcn.0044ea30
fmul dword [esp + 0x5c]
mov eax, dword [esi + 0x2c]
fstp dword [esp + 0xf0]
mov ecx, dword [eax]
mov ecx, dword [ecx + 0x10]
fld dword [ecx + 0x1a4]
fadd dword [ecx + 0x1a0]
fadd dword [ecx + 0x1a8]
fstp dword [esp + 0x10]
fld dword [esp + 0x10]
fmul dword [esp + 0x2c]
fstp dword [esp + 0xf4]
mov edx, dword [eax + 4]
mov ecx, dword [edx + 0x10]
fld dword [ecx + 0x1a4]
fadd dword [ecx + 0x1a0]
fadd dword [ecx + 0x1a8]
fstp dword [esp + 0x10]
fld dword [esp + 0x10]
fmul dword [esp + 0x58]
fstp dword [esp + 0xf8]
mov ecx, dword [eax + 8]
mov ecx, dword [ecx + 0x10]
fld dword [ecx + 0x1a4]
fadd dword [ecx + 0x1a0]
fadd dword [ecx + 0x1a8]
fstp dword [esp + 0x10]
fld dword [esp + 0x10]
fmul dword [esp + 0x60]
fstp dword [esp + 0xfc]
mov edx, dword [eax + 0xc]
mov ecx, dword [edx + 0x10]
fld dword [ecx + 0x1a4]
fadd dword [ecx + 0x1a0]
fadd dword [ecx + 0x1a8]
mov ecx, dword [esi + 0x10]
mov dword [esp + 0xe8], edi
fstp dword [esp + 0x10]
fld dword [esp + 0x10]
fmul dword [esp + 0x30]
fstp dword [esp + 0x100]
fld dword [ecx + 0x18]
fstp dword [esp + 0x68]
mov edx, dword [eax]
mov ecx, dword [edx + 0x10]
fld dword [ecx + 0x18]
fstp dword [esp + 0x6c]
mov edx, dword [eax + 4]
mov ecx, dword [edx + 0x10]
fld dword [ecx + 0x18]
fstp dword [esp + 0x70]
mov edx, dword [eax + 8]
mov ecx, dword [edx + 0x10]
fld dword [ecx + 0x18]
mov ecx, dword [esp + 0x170]
fstp dword [esp + 0x74]
mov edx, dword [eax + 0xc]
mov eax, dword [edx + 0x10]
fld dword [eax + 0x18]
xor eax, eax
cmp ecx, ebx
fstp dword [esp + 0x78]
jbe 0x463e39
fld dword [ebp + 0xc]
fld dword [esp + eax*4 + 0xf0]
add eax, 1
fmul st(1)
fstp dword [esp + eax*4 + 0xec]
mov ecx, dword [esp + 0x170]
cmp eax, ecx
jb 0x463e19
fstp st(0)
xor eax, eax
cmp ecx, ebx
jbe 0x463e5e
nop
fld dword [esp + eax*4 + 0x68]
add eax, 1
fadd dword [esp + eax*4 + 0xec]
fstp dword [esp + eax*4 + 0xec]
cmp eax, dword [esp + 0x170]
jb 0x463e40
lea ecx, [esp + 0x68]
push ecx
lea edx, [esp + 0xf4]
push edx
lea eax, [esp + 0x198]
push eax
lea ecx, [esp + 0x31b4]
mov dword [esp + 0x41b4], ebx
mov dword [esp + 0x41b8], ebx
mov dword [esp + 0x423c], ebx
call fcn.00469970
mov ecx, dword [esi + 0x30]
xor eax, eax
cmp ecx, ebx
jbe 0x463ec7
mov edx, dword [esi + 0x2c]
fldz
lea edi, [esp + 0x6c]
sub edx, edi
lea edi, [edx + eax*4]
mov edi, dword [esp + edi + 0x6c]
mov edi, dword [edi + 0x10]
cmp dword [edi + 0x19c], ebx
je 0x463ebe
fst dword [esp + eax*4 + 0x6c]
add eax, 1
cmp eax, ecx
jb 0x463ea8
fstp st(0)
mov eax, dword [esi + 0x10]
fld dword [esp + 0x68]
fstp dword [eax + 0x18]
pop edi
fld dword [eax + 8]
fmul dword [esp + 0x64]
fstp dword [eax + 0x14]
mov ecx, dword [esi + 0x2c]
fld dword [esp + 0x68]
mov edx, dword [ecx]
mov eax, dword [edx + 0x10]
fstp dword [eax + 0x18]
fld dword [eax + 8]
fmul dword [esp + 0x68]
fstp dword [eax + 0x14]
mov eax, dword [esi + 0x2c]
mov ecx, dword [eax + 4]
fld dword [esp + 0x6c]
mov eax, dword [ecx + 0x10]
fstp dword [eax + 0x18]
fld dword [eax + 8]
fmul dword [esp + 0x6c]
fstp dword [eax + 0x14]
mov edx, dword [esi + 0x2c]
mov eax, dword [edx + 8]
fld dword [esp + 0x70]
mov eax, dword [eax + 0x10]
fstp dword [eax + 0x18]
fld dword [eax + 8]
fmul dword [esp + 0x70]
fstp dword [eax + 0x14]
mov ecx, dword [esi + 0x2c]
mov edx, dword [ecx + 0xc]
fld dword [esp + 0x74]
mov eax, dword [edx + 0x10]
fstp dword [eax + 0x18]
pop esi
fld dword [eax + 8]
pop ebx
fmul dword [esp + 0x6c]
fstp dword [eax + 0x14]
mov esp, ebp
pop ebp
ret 8