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

Disassembly:
sub esp, 0xc4
mov al, byte [0x93f95c]
push esi
push edi
mov edi, ecx
test al, 1
mov dword [esp + 0x44], edi
jne 0x62fa7f
mov dl, al
push fcn.0040de30
or dl, 1
mov byte [0x93f95c], dl
call fcn.00726f2f
add esp, 4
mov eax, dword [esp + 0xd4]
fld dword [esp + 0xd8]
fmul dword [eax]
fstp dword [0x93f960]
fld dword [esp + 0xd8]
fmul dword [eax + 4]
fstp dword [0x93f964]
fld dword [esp + 0xd8]
fmul dword [eax + 8]
mov eax, dword [0x93f960]
mov ecx, dword [0x93f964]
mov dword [esp + 0xc], eax
mov al, byte [0x93f934]
test al, 1
fstp dword [0x93f968]
mov edx, dword [0x93f968]
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], edx
jne 0x62faf3
mov dl, al
push fcn.0040de30
or dl, 1
mov byte [0x93f934], dl
call fcn.00726f2f
add esp, 4
mov esi, dword [esp + 0xd0]
fld dword [esp + 0xc]
fadd dword [esi]
fstp dword [0x93f940]
fld dword [esp + 0x10]
fadd dword [esi + 4]
mov eax, dword [0x93f940]
mov dword [esp + 0xc], eax
mov al, byte [0x93f99c]
test al, 1
fstp dword [0x93f944]
fld dword [esp + 0x14]
fadd dword [esi + 8]
mov ecx, dword [0x93f944]
mov dword [esp + 0x10], ecx
fstp dword [0x93f948]
mov edx, dword [0x93f948]
mov dword [esp + 0x14], edx
jne 0x62fb5e
mov dl, al
push fcn.0040de30
or dl, 1
mov byte [0x93f99c], dl
call fcn.00726f2f
add esp, 4
fld dword [esp + 0xc]
fsub dword [esi]
fstp dword [0x93f9a0]
fld dword [esp + 0x10]
fsub dword [esi + 4]
mov eax, dword [0x93f9a0]
mov dword [esp + 0xc], eax
fstp dword [0x93f9a4]
fld dword [esp + 0x14]
fsub dword [esi + 8]
mov ecx, dword [0x93f9a4]
mov dword [esp + 0x10], ecx
fstp dword [0x93f9a8]
mov edx, dword [0x93f9a8]
mov eax, dword [edi + 0x16c]
mov dword [esp + 0x14], edx
xor dl, dl
fld dword [esp + 0x14]
fmul dword [esp + 0x14]
fld dword [esp + 0x10]
fmul dword [esp + 0x10]
mov ecx, dword [eax]
mov byte [esp + 0xb], dl
cmp ecx, eax
faddp st(1)
fld dword [esp + 0xc]
fmul dword [esp + 0xc]
faddp st(1)
fsqrt
fstp dword [esp + 0x48]
je 0x630198
push ebx
push ebp
jmp 0x62fbe1
mov ecx, dword [esp + 0x44]
mov eax, ecx
mov ecx, dword [ecx]
mov dword [esp + 0x44], ecx
mov ecx, dword [eax + 0xc]
mov ebp, dword [eax + 8]
cmp ecx, 1
mov dword [esp + 0x84], ebp
jg 0x630177
mov eax, dword [ebp + 0x13c]
mov ebx, dword [eax]
cmp ebx, eax
je 0x630177
mov eax, ebx
mov ebx, dword [ebx]
mov edi, dword [eax + 8]
mov esi, dword [edi + 4]
mov ecx, esi
call fcn.00450fb0
mov ecx, eax
mov eax, 0x55555556
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
test edx, edx
jle 0x630163
mov ebp, 2
mov dword [esp + 0x48], edx
lea ecx, [ebp - 2]
push ecx
mov ecx, dword [edi + 4]
call fcn.00450fd0
lea edx, [esp + 0x8c]
push eax
push edx
mov ecx, esi
call fcn.00450ff0
mov ecx, dword [eax]
mov dword [esp + 0x20], ecx
mov edx, dword [eax + 4]
mov dword [esp + 0x24], edx
mov eax, dword [eax + 8]
mov dword [esp + 0x28], eax
mov al, byte [0x93f96c]
test al, 1
jne 0x62fc92
mov dl, al
push fcn.0040de30
or dl, 1
mov byte [0x93f96c], dl
call fcn.00726f2f
add esp, 4
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 0x20]
push ecx
push edx
push eax
mov ecx, 0x93f970
call fcn.004247c0
fld dword [0x93f978]
fmul dword [esi + 0x74]
fld dword [0x93f974]
fmul dword [esi + 0x64]
lea ecx, [ebp - 1]
push ecx
faddp st(1)
fld dword [0x93f970]
fmul dword [esi + 0x54]
faddp st(1)
fadd dword [esi + 0x84]
fstp dword [esp + 0x24]
fld dword [0x93f978]
fmul dword [esi + 0x78]
fld dword [0x93f974]
fmul dword [esi + 0x68]
faddp st(1)
fld dword [0x93f970]
fmul dword [esi + 0x58]
faddp st(1)
fadd dword [esi + 0x88]
fstp dword [esp + 0x28]
fld dword [0x93f978]
fmul dword [esi + 0x7c]
fld dword [0x93f974]
fmul dword [esi + 0x6c]
faddp st(1)
fld dword [0x93f970]
fmul dword [esi + 0x5c]
faddp st(1)
fadd dword [esi + 0x8c]
fstp dword [esp + 0x2c]
mov ecx, dword [edi + 4]
call fcn.00450fd0
lea edx, [esp + 0xa4]
push eax
push edx
mov ecx, esi
call fcn.00450ff0
mov ecx, dword [eax]
mov dword [esp + 0x2c], ecx
mov edx, dword [eax + 4]
mov dword [esp + 0x30], edx
mov eax, dword [eax + 8]
mov dword [esp + 0x34], eax
mov al, byte [0x93f96c]
test al, 1
jne 0x62fd77
mov dl, al
push fcn.0040de30
or dl, 1
mov byte [0x93f96c], dl
call fcn.00726f2f
add esp, 4
mov ecx, dword [esp + 0x34]
mov edx, dword [esp + 0x30]
mov eax, dword [esp + 0x2c]
push ecx
push edx
push eax
mov ecx, 0x93f970
call fcn.004247c0
fld dword [0x93f978]
fmul dword [esi + 0x74]
fld dword [0x93f974]
fmul dword [esi + 0x64]
push ebp
faddp st(1)
fld dword [0x93f970]
fmul dword [esi + 0x54]
faddp st(1)
fadd dword [esi + 0x84]
fstp dword [esp + 0x30]
fld dword [0x93f978]
fmul dword [esi + 0x78]
fld dword [0x93f974]
fmul dword [esi + 0x68]
faddp st(1)
fld dword [0x93f970]
fmul dword [esi + 0x58]
faddp st(1)
fadd dword [esi + 0x88]
fstp dword [esp + 0x34]
fld dword [0x93f978]
fmul dword [esi + 0x7c]
fld dword [0x93f974]
fmul dword [esi + 0x6c]
faddp st(1)
fld dword [0x93f970]
fmul dword [esi + 0x5c]
faddp st(1)
fadd dword [esi + 0x8c]
fstp dword [esp + 0x38]
mov ecx, dword [edi + 4]
call fcn.00450fd0
lea ecx, [esp + 0xbc]
push eax
push ecx
mov ecx, esi
call fcn.00450ff0
mov edx, dword [eax]
mov dword [esp + 0x38], edx
mov ecx, dword [eax + 4]
mov dword [esp + 0x3c], ecx
mov edx, dword [eax + 8]
mov al, byte [0x93f96c]
mov dword [esp + 0x40], edx
test al, 1
jne 0x62fe59
mov dl, al
push fcn.0040de30
or dl, 1
mov byte [0x93f96c], dl
call fcn.00726f2f
add esp, 4
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x3c]
mov edx, dword [esp + 0x38]
push eax
push ecx
push edx
mov ecx, 0x93f970
call fcn.004247c0
fld dword [0x93f978]
fmul dword [esi + 0x74]
fld dword [0x93f974]
fmul dword [esi + 0x64]
mov al, byte [0x93f99c]
test al, 1
faddp st(1)
fld dword [0x93f970]
fmul dword [esi + 0x54]
faddp st(1)
fadd dword [esi + 0x84]
fstp dword [esp + 0x38]
fld dword [0x93f978]
fmul dword [esi + 0x78]
fld dword [0x93f974]
fmul dword [esi + 0x68]
faddp st(1)
fld dword [0x93f970]
fmul dword [esi + 0x58]
faddp st(1)
fadd dword [esi + 0x88]
fstp dword [esp + 0x3c]
fld dword [0x93f978]
fmul dword [esi + 0x7c]
fld dword [0x93f974]
fmul dword [esi + 0x6c]
faddp st(1)
fld dword [0x93f970]
fmul dword [esi + 0x5c]
faddp st(1)
fadd dword [esi + 0x8c]
fstp dword [esp + 0x40]
jne 0x62ff0e
mov dl, al
push fcn.0040de30
or dl, 1
mov byte [0x93f99c], dl
call fcn.00726f2f
add esp, 4
fld dword [esp + 0x2c]
fsub dword [esp + 0x20]
fstp dword [0x93f9a0]
fld dword [esp + 0x30]
fsub dword [esp + 0x24]
mov eax, dword [0x93f9a0]
mov dword [esp + 0x60], eax
mov al, byte [0x93f99c]
test al, 1
fstp dword [0x93f9a4]
fld dword [esp + 0x34]
fsub dword [esp + 0x28]
mov ecx, dword [0x93f9a4]
mov dword [esp + 0x64], ecx
fstp dword [0x93f9a8]
mov edx, dword [0x93f9a8]
mov dword [esp + 0x68], edx
jne 0x62ff76
mov dl, al
push fcn.0040de30
or dl, 1
mov byte [0x93f99c], dl
call fcn.00726f2f
add esp, 4
fld dword [esp + 0x38]
fsub dword [esp + 0x20]
fstp dword [0x93f9a0]
fld dword [esp + 0x3c]
fsub dword [esp + 0x24]
mov eax, dword [0x93f9a0]
mov dword [esp + 0x54], eax
lea eax, [esp + 0x54]
push eax
fstp dword [0x93f9a4]
fld dword [esp + 0x44]
fsub dword [esp + 0x2c]
mov ecx, dword [0x93f9a4]
mov dword [esp + 0x5c], ecx
lea ecx, [esp + 0x64]
push ecx
lea ecx, [esp + 0x1c]
fstp dword [0x93f9a8]
mov edx, dword [0x93f9a8]
mov dword [esp + 0x64], edx
call fcn.00435100
lea ecx, [esp + 0x14]
call fcn.00451240
mov edx, dword [esp + 0x4c]
lea eax, [esp + 0x14]
push eax
lea ecx, [esp + 0x24]
fld dword [edx + 0x124]
fld dword [esp + 0x18]
fmul st(1)
fstp dword [esp + 0x18]
fld dword [esp + 0x1c]
fmul st(1)
fstp dword [esp + 0x1c]
fld dword [esp + 0x20]
fmul st(1)
fstp dword [esp + 0x20]
fstp st(0)
call fcn.00425240
lea ecx, [esp + 0x14]
push ecx
lea ecx, [esp + 0x30]
call fcn.00425240
lea edx, [esp + 0x14]
lea ecx, [esp + 0x38]
push edx
call fcn.00425240
lea eax, [esp + 0x6c]
lea ecx, [esp + 0x7c]
push eax
lea edx, [esp + 0x7c]
push ecx
lea eax, [esp + 0x88]
push edx
lea ecx, [esp + 0x44]
push eax
lea edx, [esp + 0x3c]
push ecx
mov ecx, dword [esp + 0xf0]
lea eax, [esp + 0x34]
push edx
mov edx, dword [esp + 0xf0]
push eax
push ecx
push edx
call fcn.00435140
add esp, 0x24
test al, al
je 0x63014a
mov eax, dword [esp + 0xd8]
lea ecx, [esp + 0x98]
push eax
push ecx
lea ecx, [esp + 0x74]
call fcn.00424c30
mov ecx, eax
call fcn.00424500
fcomp dword [esp + 0x50]
fnstsw ax
test ah, 1
je 0x63014a
mov ecx, dword [esp + 0xe4]
test ecx, ecx
je 0x6300b7
lea edx, [esp + 0x6c]
push edx
call fcn.004345b0
mov eax, dword [esp + 0xe8]
test eax, eax
je 0x630108
lea eax, [esp + 0x20]
lea ecx, [esp + 0xb0]
push eax
push ecx
lea ecx, [esp + 0x40]
call fcn.00424c30
push eax
lea edx, [esp + 0x24]
lea eax, [esp + 0xcc]
push edx
push eax
lea ecx, [esp + 0x38]
call fcn.00424c30
mov ecx, dword [esp + 0xec]
push eax
call fcn.00435100
mov ecx, dword [esp + 0xe8]
call fcn.00451240
mov ecx, dword [esp + 0xec]
test ecx, ecx
je 0x630145
lea edx, [esp + 0x20]
push edx
call fcn.004345b0
mov ecx, dword [esp + 0xec]
lea eax, [esp + 0x2c]
push eax
add ecx, 0xc
call fcn.004345b0
mov eax, dword [esp + 0xec]
lea edx, [esp + 0x38]
push edx
lea ecx, [eax + 0x18]
call fcn.004345b0
mov byte [esp + 0x13], 1
mov eax, dword [esp + 0x48]
add ebp, 3
dec eax
mov dword [esp + 0x48], eax
jne 0x62fc41
mov ebp, dword [esp + 0x84]
cmp ebx, dword [ebp + 0x13c]
jne 0x62fc0f
mov dl, byte [esp + 0x13]
mov edi, dword [esp + 0x4c]
mov ecx, dword [esp + 0x44]
mov eax, dword [edi + 0x16c]
cmp ecx, eax
jne 0x62fbdd
pop ebp
pop ebx
pop edi
mov al, dl
pop esi
add esp, 0xc4
ret 0x18
pop edi
mov al, dl
pop esi
add esp, 0xc4
ret 0x18