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

Disassembly:
sub esp, 0x1ac
fld dword [0xa8e674]
push ebp
mov ebp, dword [esp + 0x1b4]
fmul qword [0x881b70]
mov eax, dword [ebp]
cmp dword [eax + 0x18], 0
push esi
fstp dword [esp + 0x10]
fld dword [esp + 0x10]
setne byte [esp + 0x1f]
cmp dword [eax + 0x1c], 0
push edi
push ecx
fstp dword [esp]
setne byte [esp + 0x2f]
call fcn.0057afe6
add esp, 4
cmp eax, 0xff
jle 0x6247a3
mov byte [esp + 0x26], 0xff
jmp 0x6247b1
test eax, eax
setl cl
sub cl, 1
and ecx, eax
mov byte [esp + 0x26], cl
fld dword [0xa8e678]
push ecx
fmul qword [0x881b70]
fstp dword [esp + 0x18]
fld dword [esp + 0x18]
fstp dword [esp]
call fcn.0057afe6
add esp, 4
cmp eax, 0xff
jle 0x6247df
mov byte [esp + 0x25], 0xff
jmp 0x6247ed
test eax, eax
setl cl
sub cl, 1
and ecx, eax
mov byte [esp + 0x25], cl
fld dword [0xa8e67c]
push ecx
fmul qword [0x881b70]
fstp dword [esp + 0x18]
fld dword [esp + 0x18]
fstp dword [esp]
call fcn.0057afe6
add esp, 4
cmp eax, 0xff
jle 0x62481b
mov byte [esp + 0x24], 0xff
jmp 0x624829
test eax, eax
setl cl
sub cl, 1
and ecx, eax
mov byte [esp + 0x24], cl
fld dword [0xa8e680]
push ecx
fmul qword [0x881b70]
fstp dword [esp + 0x18]
fld dword [esp + 0x18]
fstp dword [esp]
call fcn.0057afe6
add esp, 4
cmp eax, 0xff
jle 0x624857
mov byte [esp + 0x27], 0xff
jmp 0x624865
test eax, eax
setl cl
sub cl, 1
and ecx, eax
mov byte [esp + 0x27], cl
fld dword [0xa8e684]
push ecx
fmul qword [0x881b70]
fstp dword [esp + 0x18]
fld dword [esp + 0x18]
fstp dword [esp]
call fcn.0057afe6
add esp, 4
cmp eax, 0xff
jle 0x624893
mov byte [esp + 0x1e], 0xff
jmp 0x6248a1
test eax, eax
setl cl
sub cl, 1
and ecx, eax
mov byte [esp + 0x1e], cl
fld dword [0xa8e688]
push ecx
fmul qword [0x881b70]
fstp dword [esp + 0x18]
fld dword [esp + 0x18]
fstp dword [esp]
call fcn.0057afe6
add esp, 4
cmp eax, 0xff
jle 0x6248cf
mov byte [esp + 0x1d], 0xff
jmp 0x6248dd
test eax, eax
setl cl
sub cl, 1
and ecx, eax
mov byte [esp + 0x1d], cl
fld dword [0xa8e68c]
push ecx
fmul qword [0x881b70]
fstp dword [esp + 0x18]
fld dword [esp + 0x18]
fstp dword [esp]
call fcn.0057afe6
add esp, 4
cmp eax, 0xff
jle 0x62490b
mov byte [esp + 0x1c], 0xff
jmp 0x624919
test eax, eax
setl cl
sub cl, 1
and ecx, eax
mov byte [esp + 0x1c], cl
fld dword [0xa8e690]
push ecx
fmul qword [0x881b70]
fstp dword [esp + 0x18]
fld dword [esp + 0x18]
fstp dword [esp]
call fcn.0057afe6
add esp, 4
cmp eax, 0xff
jle 0x624947
mov byte [esp + 0x1f], 0xff
jmp 0x624955
test eax, eax
setl cl
sub cl, 1
and ecx, eax
mov byte [esp + 0x1f], cl
xor esi, esi
cmp dword [0xb1a528], esi
jbe 0x6249d7
mov edi, 0x9ff48c
jmp 0x624970
fld dword [edi + 4]
lea eax, [esp + esi*4 + 0x178]
fmul qword [0x881950]
push eax
lea ecx, [esp + 0x148]
push ecx
fstp dword [esp + 0x1c]
push ecx
fld dword [esp + 0x20]
fstp dword [esp]
call fcn.0057fe10
fld dword [edi]
add esp, 0xc
fmul qword [0x881950]
lea edx, [esp + esi*4 + 0x198]
push edx
lea eax, [esp + 0x148]
fstp dword [esp + 0x18]
push eax
fld dword [esp + 0x1c]
push ecx
fstp dword [esp]
call fcn.0057fe10
add esi, 1
add esp, 0xc
add edi, 0x68
cmp esi, dword [0xb1a528]
jb 0x624970
mov eax, dword [ebp]
movzx edx, word [ebp + 8]
mov ecx, dword [eax + 4]
cmp dword [ecx + 8], 2
mov ecx, dword [ebp + 0xc]
mov esi, dword [ebp + 0xf8]
mov dword [esp + 0x130], edx
mov edx, dword [eax + 0x5c]
mov eax, dword [eax + 0x58]
mov dword [esp + 0x120], edx
mov edx, dword [ebp + 0xf0]
sete byte [esp + 0x2a]
test ecx, ecx
mov dword [esp + 0xbc], edx
mov dword [esp + 0x140], eax
jbe 0x625a94
fldz
mov dword [esp + 0x14], ecx
fld qword [0x884a30]
fld dword [0x884a2c]
jmp 0x624a50
fld dword [0x884a2c]
fld qword [0x884a30]
fldz
fxch st(2)
mov ecx, dword [esp + 0xbc]
mov eax, dword [ecx]
imul eax, dword [esp + 0x140]
add eax, dword [esp + 0x120]
test ebx, ebx
mov dword [esp + 0x2c], eax
jne 0x624a9e
mov edx, dword [esi]
mov eax, dword [esi + 4]
mov ecx, dword [esi + 8]
mov dword [esp + 0x74], edx
mov edx, dword [esi + 0xc]
mov dword [esp + 0x78], eax
mov eax, dword [esi + 0x10]
mov dword [esp + 0x7c], ecx
mov ecx, dword [esi + 0x14]
mov dword [esp + 0x58], edx
mov dword [esp + 0x5c], eax
mov dword [esp + 0x60], ecx
jmp 0x624bd6
fstp st(2)
sub esp, 0xc
fstp st(0)
fstp st(0)
fld dword [esi + 4]
fmul dword [ebx + 0x10]
fld dword [esi]
fmul dword [ebx]
faddp st(1)
fld dword [esi + 8]
fmul dword [ebx + 0x20]
faddp st(1)
fadd dword [ebx + 0x30]
fstp dword [esp + 0x154]
mov edx, dword [esp + 0x154]
fld dword [ebx + 0x14]
mov dword [esp + 0x80], edx
fmul dword [esi + 4]
fld dword [esi]
fmul dword [ebx + 4]
faddp st(1)
fld dword [esi + 8]
fmul dword [ebx + 0x24]
faddp st(1)
fadd dword [ebx + 0x34]
fstp dword [esp + 0x158]
mov eax, dword [esp + 0x158]
fld dword [esi + 4]
mov dword [esp + 0x84], eax
fmul dword [ebx + 0x18]
mov eax, esp
fld dword [ebx + 8]
fmul dword [esi]
faddp st(1)
fld dword [esi + 8]
fmul dword [ebx + 0x28]
faddp st(1)
fadd dword [ebx + 0x38]
fstp dword [esp + 0x15c]
mov ecx, dword [esp + 0x15c]
fld dword [esi + 0xc]
mov dword [esp + 0x88], ecx
fmul dword [ebx]
fld dword [ebx + 0x10]
fmul dword [esi + 0x10]
faddp st(1)
fld dword [esi + 0x14]
fmul dword [ebx + 0x20]
faddp st(1)
fstp dword [esp + 0xf0]
mov edx, dword [esp + 0xf0]
fld dword [esi + 0xc]
mov dword [eax], edx
fmul dword [ebx + 4]
fld dword [ebx + 0x14]
fmul dword [esi + 0x10]
faddp st(1)
fld dword [esi + 0x14]
fmul dword [ebx + 0x24]
faddp st(1)
fstp dword [esp + 0xf4]
mov ecx, dword [esp + 0xf4]
fld dword [ebx + 8]
mov dword [eax + 4], ecx
fmul dword [esi + 0xc]
fld dword [ebx + 0x18]
fmul dword [esi + 0x10]
faddp st(1)
fld dword [esi + 0x14]
fmul dword [ebx + 0x28]
faddp st(1)
fstp dword [esp + 0xf8]
mov edx, dword [esp + 0xf8]
mov dword [eax + 8], edx
lea eax, [esp + 0x160]
push eax
call fcn.0057ca26
mov ecx, dword [eax]
mov edx, dword [eax + 4]
add esp, 0x10
mov dword [esp + 0x58], ecx
fld dword [0x884a2c]
mov eax, dword [eax + 8]
fld qword [0x884a30]
mov dword [esp + 0x5c], edx
fldz
mov dword [esp + 0x60], eax
fxch st(2)
cmp byte [esp + 0x1c0], 0
je 0x624c52
fstp st(2)
push ecx
fstp st(0)
fstp st(0)
fld dword [esp + 0x60]
fld dword [esp + 0x5c]
fld dword [esp + 0x64]
fld st(1)
fmulp st(2)
fld st(2)
fmulp st(3)
fxch st(1)
faddp st(2)
fmul st(0), st(0)
faddp st(1)
fstp dword [esp + 0x10]
fld dword [esp + 0x10]
fstp dword [esp]
call fcn.0057f9c9
fld1
add esp, 4
fdivrp st(1)
fstp dword [esp + 0xc]
fld dword [esp + 0x58]
fld dword [esp + 0xc]
fld st(0)
fmulp st(2)
fxch st(1)
fstp dword [esp + 0x58]
fld dword [esp + 0x5c]
fmul st(1)
fstp dword [esp + 0x5c]
fmul dword [esp + 0x60]
fstp dword [esp + 0x60]
fld dword [0x884a2c]
fld qword [0x884a30]
fldz
fxch st(2)
cmp dword [0xb1a528], 0
fxch st(2)
fst dword [esp + 0x44]
mov dword [esp + 0x10], 0
fst dword [esp + 0x48]
fst dword [esp + 0x4c]
fst dword [esp + 0x34]
fst dword [esp + 0x38]
fst dword [esp + 0x3c]
fst dword [esp + 0x8c]
fst dword [esp + 0x90]
fst dword [esp + 0x94]
fst dword [esp + 0xa0]
fst dword [esp + 0xa4]
fst dword [esp + 0xa8]
fst dword [esp + 0xc]
jbe 0x6253d9
fstp st(0)
mov ebp, 0x9ff468
fstp st(0)
mov edi, 0xa8e6c4
lea ecx, [ecx]
cmp dword [ebp - 0x3c], 3
fstp st(0)
fld dword [esp + 0x60]
fld dword [esp + 0x5c]
jne 0x624e27
mov edx, dword [ebp + 8]
mov ecx, dword [ebp + 4]
mov eax, dword [ebp + 0xc]
mov dword [esp + 0xb4], edx
fld dword [esp + 0xb4]
fld st(0)
mov dword [esp + 0xb0], ecx
fchs
mov dword [esp + 0xb8], eax
fmul st(2)
fld dword [esp + 0xb0]
fld st(0)
fchs
fmul dword [esp + 0x58]
faddp st(2)
fld dword [esp + 0xb8]
fld st(0)
fchs
fmul st(6)
faddp st(3)
fxch st(2)
fstp dword [esp + 0x30]
fldz
fld dword [esp + 0x30]
fcom st(1)
fnstsw ax
test ah, 5
jp 0x624d40
fstp st(0)
fstp dword [esp + 0x30]
fld dword [esp + 0x30]
jmp 0x624d42
fstp st(1)
cmp byte [esp + 0x2a], 0
je 0x624da9
fadd dword [esp + 0xc]
fstp dword [esp + 0xc]
fld dword [esp + 0x44]
fadd dword [edi]
fstp dword [esp + 0x44]
fld dword [edi + 4]
fadd dword [esp + 0x48]
fstp dword [esp + 0x48]
fld dword [edi + 8]
fadd dword [esp + 0x4c]
fstp dword [esp + 0x4c]
fld dword [edi + 0x20]
fadd dword [esp + 0x8c]
fstp dword [esp + 0x8c]
fld dword [edi + 0x24]
fadd dword [esp + 0x90]
fstp dword [esp + 0x90]
fld dword [edi + 0x28]
fadd dword [esp + 0x94]
fstp dword [esp + 0x94]
jmp 0x625080
fld st(0)
fmul dword [edi]
fstp dword [esp + 0x64]
fld dword [edi + 4]
fmul st(1)
fstp dword [esp + 0x68]
fmul dword [edi + 8]
fstp dword [esp + 0x6c]
fld dword [esp + 0x64]
fld st(0)
fadd dword [esp + 0xa0]
fstp dword [esp + 0xa0]
fld dword [esp + 0x68]
fadd dword [esp + 0xa4]
fstp dword [esp + 0xa4]
fld dword [esp + 0x6c]
fadd dword [esp + 0xa8]
fstp dword [esp + 0xa8]
fadd dword [edi + 0x20]
fadd dword [esp + 0x44]
fstp dword [esp + 0x44]
fld dword [edi + 0x24]
fadd dword [esp + 0x68]
fadd dword [esp + 0x48]
fstp dword [esp + 0x48]
fld dword [edi + 0x28]
fadd dword [esp + 0x6c]
fadd dword [esp + 0x4c]
fstp dword [esp + 0x4c]
jmp 0x625080
fstp st(1)
sub esp, 0xc
fstp st(0)
mov eax, esp
fld dword [ebp - 8]
fsub dword [esp + 0x80]
fstp dword [esp + 0xcc]
mov ecx, dword [esp + 0xcc]
fld dword [ebp - 4]
mov dword [eax], ecx
fsub dword [esp + 0x84]
fstp dword [esp + 0xd0]
mov edx, dword [esp + 0xd0]
fld dword [ebp]
mov dword [eax + 4], edx
fsub dword [esp + 0x88]
fstp dword [esp + 0xd4]
mov ecx, dword [esp + 0xd4]
mov dword [eax + 8], ecx
call fcn.0057bf72
fstp dword [esp + 0xa8]
fld dword [esp + 0xcc]
add esp, 0xc
cmp dword [ebp - 0x3c], 2
fld dword [esp + 0x9c]
fld st(0)
fdivp st(2)
fxch st(1)
fstp dword [esp + 0x108]
fld dword [esp + 0xc4]
fdiv st(1)
fstp dword [esp + 0x10c]
fld dword [esp + 0xc8]
fdiv st(1)
fstp dword [esp + 0x110]
fld dword [esp + 0x108]
fld st(0)
fchs
fstp dword [esp + 0xb0]
fld dword [esp + 0x10c]
fld st(0)
fchs
fstp dword [esp + 0xb4]
fld dword [esp + 0x110]
fld st(0)
fchs
fstp dword [esp + 0xb8]
fld dword [edi + 0x3c]
fmul st(4)
fadd dword [edi + 0x38]
fld dword [edi + 0x40]
fmul st(5)
fmulp st(5)
faddp st(4)
fld1
fdivrp st(4)
fxch st(3)
fstp dword [esp + 0x9c]
jne 0x624f7c
fld dword [ebp + 0xc]
mov edx, dword [esp + 0x10]
fchs
lea ecx, [esp + edx*4 + 0x178]
fmulp st(3)
fmul dword [ebp + 8]
fld dword [ebp + 4]
fmulp st(2)
faddp st(1)
fsubp st(1)
fstp dword [esp + 0x18]
fld dword [esp + 0x18]
fld dword [ecx]
fcomp st(1)
fnstsw ax
test ah, 0x41
jne 0x624f5b
fstp st(0)
fldz
jmp 0x624f84
fld dword [esp + edx*4 + 0x198]
lea edx, [esp + edx*4 + 0x198]
fcomp st(1)
fnstsw ax
test ah, 5
jnp 0x624f80
fsub dword [ecx]
fld dword [edx]
fsub dword [ecx]
fdivp st(1)
jmp 0x624f84
fstp st(1)
fstp st(0)
fstp st(0)
fld1
fstp dword [esp + 0x54]
fld dword [esp + 0xb4]
fld st(0)
fchs
fld dword [esp + 0x5c]
fld st(0)
fmulp st(2)
fld dword [esp + 0xb0]
fld st(0)
fchs
fmul dword [esp + 0x58]
faddp st(3)
fld dword [esp + 0xb8]
fld st(0)
fchs
fld dword [esp + 0x60]
fld st(0)
fmulp st(2)
fxch st(5)
faddp st(1)
fstp dword [esp + 0x30]
fldz
fcom dword [esp + 0x30]
fnstsw ax
test ah, 0x41
jne 0x624fda
fstp dword [esp + 0x30]
jmp 0x624fdc
fstp st(0)
fld dword [esp + 0x9c]
fld st(0)
fmul dword [esp + 0x30]
fmul dword [esp + 0x54]
fstp dword [esp + 0x18]
fld dword [esp + 0x18]
fmul dword [edi]
fadd dword [esp + 0xa0]
fstp dword [esp + 0xa0]
fld dword [edi + 4]
fmul dword [esp + 0x18]
fadd dword [esp + 0xa4]
fstp dword [esp + 0xa4]
fld dword [edi + 8]
fmul dword [esp + 0x18]
fadd dword [esp + 0xa8]
fstp dword [esp + 0xa8]
fld dword [esp + 0x30]
fmul dword [edi]
fadd dword [edi + 0x20]
fmul st(1)
fmul dword [esp + 0x54]
fadd dword [esp + 0x44]
fstp dword [esp + 0x44]
fld dword [edi + 4]
fmul dword [esp + 0x30]
fadd dword [edi + 0x24]
fmul st(1)
fmul dword [esp + 0x54]
fadd dword [esp + 0x48]
fstp dword [esp + 0x48]
fld dword [edi + 8]
fmul dword [esp + 0x30]
fadd dword [edi + 0x28]
fmulp st(1)
fmul dword [esp + 0x54]
fadd dword [esp + 0x4c]
fstp dword [esp + 0x4c]
fxch st(3)
fxch st(4)
fxch st(2)
fxch st(3)
fxch st(1)
fld dword [esp + 0x78]
fmul dword [0xb1619c]
fld dword [esp + 0x74]
fmul dword [0xb1618c]
faddp st(1)
fld dword [esp + 0x7c]
fmul dword [0xb161ac]
faddp st(1)
fadd dword [0xb161bc]
fstp dword [esp + 0x124]
fld dword [esp + 0x78]
fmul dword [0xb161a0]
fld dword [esp + 0x74]
fmul dword [0xb16190]
faddp st(1)
fld dword [esp + 0x7c]
fmul dword [0xb161b0]
faddp st(1)
fadd dword [0xb161c0]
fstp dword [esp + 0x128]
fld dword [0xb161a4]
fmul dword [esp + 0x78]
fld dword [0xb16194]
fmul dword [esp + 0x74]
faddp st(1)
fld dword [0xb161b4]
fmul dword [esp + 0x7c]
faddp st(1)
fadd dword [0xb161c4]
fstp dword [esp + 0x12c]
fld st(3)
fmul dword [0xb1619c]
fld dword [esp + 0x58]
fmul dword [0xb1618c]
faddp st(1)
fld st(5)
fmul dword [0xb161ac]
faddp st(1)
fstp dword [esp + 0xf0]
fld st(3)
fmul dword [0xb161a0]
fld dword [esp + 0x58]
fmul dword [0xb16190]
faddp st(1)
fld st(5)
fmul dword [0xb161b0]
faddp st(1)
fstp dword [esp + 0xf4]
fld dword [0xb161a4]
fld st(0)
fmulp st(5)
fld dword [0xb16194]
fmul dword [esp + 0x58]
faddp st(5)
fld dword [0xb161b4]
fld st(0)
fmulp st(7)
fxch st(5)
faddp st(6)
fxch st(5)
fstp dword [esp + 0xf8]
fld st(2)
fmul dword [0xb1619c]
fld st(1)
fmul dword [0xb1618c]
faddp st(1)
fld st(2)
fmul dword [0xb161ac]
faddp st(1)
fstp dword [esp + 0x114]
fld st(2)
fmul dword [0xb161a0]
fld st(1)
fmul dword [0xb16190]
faddp st(1)
fld st(2)
fmul dword [0xb161b0]
faddp st(1)
fstp dword [esp + 0x118]
fxch st(4)
fmulp st(2)
fld dword [0xb16194]
sub esp, 0xc
fmulp st(4)
mov eax, esp
fxch st(1)
faddp st(3)
fmulp st(1)
faddp st(1)
fstp dword [esp + 0x128]
fld dword [esp + 0x130]
fld qword [0x881908]
fmul st(1), st(0)
fxch st(1)
fstp dword [esp + 0x108]
mov edx, dword [esp + 0x108]
fld dword [esp + 0x134]
mov dword [eax], edx
fmul st(1)
fstp dword [esp + 0x10c]
mov ecx, dword [esp + 0x10c]
mov dword [eax + 4], ecx
fmul dword [esp + 0x138]
fstp dword [esp + 0x110]
mov edx, dword [esp + 0x110]
mov dword [eax + 8], edx
lea eax, [esp + 0x16c]
push eax
call fcn.0057ca26
mov ecx, dword [eax]
mov edx, dword [eax + 4]
mov eax, dword [eax + 8]
mov dword [esp + 0xdc], ecx
fld dword [esp + 0xdc]
fsub dword [esp + 0x124]
mov dword [esp + 0xe0], edx
mov dword [esp + 0xe4], eax
add esp, 4
fstp dword [esp + 0x140]
mov ecx, dword [esp + 0x140]
fld dword [esp + 0xdc]
mov eax, esp
fsub dword [esp + 0x124]
mov dword [eax], ecx
fstp dword [esp + 0x144]
mov edx, dword [esp + 0x144]
fld dword [esp + 0xe0]
mov dword [eax + 4], edx
fsub dword [esp + 0x128]
lea edx, [esp + 0x178]
push edx
fstp dword [esp + 0x14c]
mov ecx, dword [esp + 0x14c]
mov dword [eax + 8], ecx
call fcn.0057ca26
fld dword [0xa8e694]
mov edx, dword [eax + 4]
fstp dword [esp + 0xc]
mov ecx, dword [eax]
mov eax, dword [eax + 8]
add esp, 8
mov dword [esp + 0xe4], edx
fld dword [esp + 0xe4]
fmul dword [esp + 0xfc]
mov dword [esp + 0xe0], ecx
fld dword [esp + 0xe0]
mov dword [esp + 0xe8], eax
fmul dword [esp + 0xf8]
faddp st(1)
fld dword [esp + 0xe8]
fmul dword [esp + 0x100]
faddp st(1)
fstp dword [esp + 0x20]
fld dword [esp + 0x20]
fstp dword [esp]
call fcn.0057f55f
fstp dword [esp + 0x20]
add esp, 8
fldz
fld dword [esp + 0x18]
fcom st(1)
fnstsw ax
test ah, 5
jp 0x62535d
fstp st(0)
fst dword [esp + 0x18]
fld dword [esp + 0x18]
cmp dword [ebp - 0x3c], 3
jne 0x62536e
fld dword [edi + 0x10]
fmul st(1)
fadd dword [esp + 0x34]
jmp 0x625392
fld dword [esp + 0x54]
fmul dword [esp + 0x9c]
fmulp st(1)
fstp dword [esp + 0x18]
fld dword [edi + 0x10]
fld dword [esp + 0x18]
fld st(0)
fmulp st(2)
fld dword [esp + 0x34]
faddp st(2)
fxch st(1)
mov eax, dword [esp + 0x10]
fstp dword [esp + 0x34]
fld dword [edi + 0x14]
add eax, 1
fmul st(1)
add edi, 0x70
add ebp, 0x68
cmp eax, dword [0xb1a528]
fadd dword [esp + 0x38]
mov dword [esp + 0x10], eax
fstp dword [esp + 0x38]
fmul dword [edi - 0x58]
fadd dword [esp + 0x3c]
fstp dword [esp + 0x3c]
jb 0x624cc0
fld qword [0x884a30]
fld dword [0x884a2c]
fxch st(2)
cmp byte [esp + 0x2a], 0
je 0x62573c
cmp byte [esp + 0x23], 0
fld dword [esp + 0x8c]
fadd dword [0xa8e5d4]
fstp dword [esp + 0x8c]
fld dword [esp + 0x90]
fadd dword [0xa8e5d8]
fstp dword [esp + 0x90]
fld dword [esp + 0x94]
fadd dword [0xa8e5dc]
fstp dword [esp + 0x94]
je 0x625483
mov eax, dword [esp + 0x2c]
movzx ecx, byte [eax + 0xa]
movzx edx, byte [eax + 9]
movzx eax, byte [eax + 8]
mov dword [esp + 0x10], ecx
fild dword [esp + 0x10]
mov dword [esp + 0x10], edx
fmul dword [esp + 0x44]
fld dword [esp + 0x8c]
fld qword [0x881b70]
fmul st(1), st(0)
fxch st(2)
faddp st(1)
fstp dword [esp + 0x64]
fild dword [esp + 0x10]
mov dword [esp + 0x10], eax
fmul dword [esp + 0x48]
fld dword [esp + 0x90]
fmul st(2)
faddp st(1)
fstp dword [esp + 0x68]
fild dword [esp + 0x10]
fmul dword [esp + 0x4c]
jmp 0x6254e2
movzx ecx, byte [esp + 0x26]
fld dword [esp + 0x44]
movzx edx, byte [esp + 0x25]
mov dword [esp + 0x10], ecx
movzx eax, byte [esp + 0x24]
fild dword [esp + 0x10]
mov dword [esp + 0x10], edx
fmulp st(1)
fld dword [esp + 0x8c]
fld qword [0x881b70]
fmul st(1), st(0)
fxch st(2)
faddp st(1)
fstp dword [esp + 0x64]
fld dword [esp + 0x48]
fild dword [esp + 0x10]
mov dword [esp + 0x10], eax
fmulp st(1)
fld dword [esp + 0x90]
fmul st(2)
faddp st(1)
fstp dword [esp + 0x68]
fld dword [esp + 0x4c]
fild dword [esp + 0x10]
fmulp st(1)
fld dword [esp + 0x94]
fmulp st(2)
faddp st(1)
fstp dword [esp + 0x6c]
fld dword [esp + 0x64]
fcom st(2)
fnstsw ax
test ah, 0x41
jne 0x625508
fstp st(0)
fxch st(2)
fst dword [esp + 0x64]
jmp 0x625517
fcomp st(1)
fnstsw ax
test ah, 5
jp 0x625515
fst dword [esp + 0x64]
fxch st(2)
fld dword [esp + 0x68]
fcom st(2)
fnstsw ax
test ah, 0x41
jne 0x62552c
fstp st(0)
fst dword [esp + 0x68]
jmp 0x62553d
fcomp st(3)
fnstsw ax
test ah, 5
jp 0x62553d
fxch st(2)
fst dword [esp + 0x68]
fxch st(2)
fld dword [esp + 0x6c]
fcom st(2)
fnstsw ax
test ah, 0x41
jne 0x625552
fstp st(0)
fst dword [esp + 0x6c]
jmp 0x625563
fcomp st(3)
fnstsw ax
test ah, 5
jp 0x625563
fxch st(2)
fst dword [esp + 0x6c]
fxch st(2)
fld dword [esp + 0x34]
fcom st(2)
fnstsw ax
test ah, 0x41
jne 0x625578
fstp st(0)
fst dword [esp + 0x34]
jmp 0x625589
fcomp st(3)
fnstsw ax
test ah, 5
jp 0x625589
fxch st(2)
fst dword [esp + 0x34]
fxch st(2)
fld dword [esp + 0x38]
fcom st(2)
fnstsw ax
test ah, 0x41
jne 0x62559e
fstp st(0)
fst dword [esp + 0x38]
jmp 0x6255af
fcomp st(3)
fnstsw ax
test ah, 5
jp 0x6255af
fxch st(2)
fst dword [esp + 0x38]
fxch st(2)
fld dword [esp + 0x3c]
fcom st(2)
fnstsw ax
fstp st(2)
test ah, 0x41
jne 0x6255c8
fstp st(2)
fstp st(0)
fstp dword [esp + 0x3c]
jmp 0x6255db
fstp st(0)
fcomp st(1)
fnstsw ax
test ah, 5
jp 0x6255d9
fstp dword [esp + 0x3c]
jmp 0x6255db
fstp st(0)
fld dword [esp + 0x64]
push ecx
fstp dword [esp]
call fcn.0057afe6
fld dword [esp + 0x6c]
mov byte [esi + 0x1a], al
fstp dword [esp]
call fcn.0057afe6
fld dword [esp + 0x70]
mov byte [esi + 0x19], al
fstp dword [esp]
call fcn.0057afe6
mov edi, dword [esp + 0x30]
add esp, 4
cmp byte [esp + 0x23], 0
mov byte [esi + 0x18], al
je 0x62561c
mov al, byte [edi + 0xb]
jmp 0x625620
mov al, byte [esp + 0x27]
cmp byte [esp + 0x2b], 0
mov byte [esi + 0x1b], al
je 0x6256b0
movzx ecx, byte [edi + 0xe]
mov dword [esp + 0x10], ecx
push ecx
fild dword [esp + 0x14]
fmul dword [esp + 0x38]
fstp dword [esp + 0x14]
fld dword [esp + 0x14]
fstp dword [esp]
call fcn.0057afe6
mov byte [esi + 0x1e], al
movzx edx, byte [edi + 0xd]
mov dword [esp + 0x14], edx
fild dword [esp + 0x14]
fmul dword [esp + 0x3c]
fstp dword [esp + 0x14]
fld dword [esp + 0x14]
fstp dword [esp]
call fcn.0057afe6
mov byte [esi + 0x1d], al
movzx eax, byte [edi + 0xc]
mov dword [esp + 0x14], eax
fild dword [esp + 0x14]
fmul dword [esp + 0x40]
fstp dword [esp + 0x14]
fld dword [esp + 0x14]
fstp dword [esp]
call fcn.0057afe6
fld dword [esp + 0x10]
mov byte [esi + 0x1c], al
mov cl, byte [edi + 0xf]
fst dword [esi + 0x30]
fstp dword [esi + 0x34]
mov byte [esi + 0x1f], cl
add esp, 4
jmp 0x625a7a
movzx edx, byte [esp + 0x1e]
fld dword [esp + 0x34]
mov dword [esp + 0x10], edx
push ecx
fild dword [esp + 0x14]
fmulp st(1)
fstp dword [esp + 0x14]
fld dword [esp + 0x14]
fstp dword [esp]
call fcn.0057afe6
fld dword [esp + 0x3c]
mov byte [esi + 0x1e], al
movzx eax, byte [esp + 0x21]
mov dword [esp + 0x14], eax
fild dword [esp + 0x14]
fmulp st(1)
fstp dword [esp + 0x14]
fld dword [esp + 0x14]
fstp dword [esp]
call fcn.0057afe6
movzx ecx, byte [esp + 0x20]
fld dword [esp + 0x40]
mov dword [esp + 0x14], ecx
mov byte [esi + 0x1d], al
fild dword [esp + 0x14]
fmulp st(1)
fstp dword [esp + 0x14]
fld dword [esp + 0x14]
fstp dword [esp]
call fcn.0057afe6
fld dword [esp + 0x10]
mov dl, byte [esp + 0x23]
fst dword [esi + 0x30]
mov byte [esi + 0x1c], al
fstp dword [esi + 0x34]
mov byte [esi + 0x1f], dl
add esp, 4
jmp 0x625a7a
fstp st(0)
lea eax, [esp + 0x88]
fstp st(0)
push eax
fstp st(0)
lea ecx, [esp + 0x84]
fld dword [esp + 0x48]
push ecx
fadd dword [0xa8e5d4]
lea edx, [esp + 0x8c]
push edx
sub esp, 0xc
fstp dword [esp + 0x5c]
fld dword [esp + 0x60]
fadd dword [0xa8e5d8]
fstp dword [esp + 0x60]
fld dword [esp + 0x64]
fadd dword [0xa8e5dc]
fstp dword [esp + 0x64]
fld dword [esp + 0xc0]
fstp dword [esp + 8]
fld dword [esp + 0xbc]
fstp dword [esp + 4]
fld dword [esp + 0xb8]
fstp dword [esp]
call fcn.0057f6a9
add esp, 0x18
cmp byte [esp + 0x23], 0
je 0x62583c
mov edi, dword [esp + 0x2c]
movzx eax, byte [edi + 0xa]
mov dword [esp + 0xc], eax
push ecx
fild dword [esp + 0x10]
fmul dword [esp + 0x88]
fstp dword [esp + 0x10]
fld dword [esp + 0x10]
fstp dword [esp]
call fcn.0057afe6
mov byte [esi + 0x1a], al
movzx ecx, byte [edi + 9]
mov dword [esp + 0x10], ecx
fild dword [esp + 0x10]
fmul dword [esp + 0x84]
fstp dword [esp + 0x10]
fld dword [esp + 0x10]
fstp dword [esp]
call fcn.0057afe6
mov byte [esi + 0x19], al
movzx edx, byte [edi + 8]
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
fmul dword [esp + 0x8c]
fstp dword [esp + 0x10]
fld dword [esp + 0x10]
fstp dword [esp]
call fcn.0057afe6
mov byte [esi + 0x18], al
mov al, byte [edi + 0xb]
mov byte [esi + 0x1b], al
jmp 0x6258c3
movzx ecx, byte [esp + 0x26]
fld dword [esp + 0x84]
mov dword [esp + 0xc], ecx
push ecx
fild dword [esp + 0x10]
fmulp st(1)
fstp dword [esp + 0x10]
fld dword [esp + 0x10]
fstp dword [esp]
call fcn.0057afe6
movzx edx, byte [esp + 0x29]
fld dword [esp + 0x84]
mov dword [esp + 0x10], edx
mov byte [esi + 0x1a], al
fild dword [esp + 0x10]
fmulp st(1)
fstp dword [esp + 0x10]
fld dword [esp + 0x10]
fstp dword [esp]
call fcn.0057afe6
fld dword [esp + 0x8c]
mov byte [esi + 0x19], al
movzx eax, byte [esp + 0x28]
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
fmulp st(1)
fstp dword [esp + 0x10]
fld dword [esp + 0x10]
fstp dword [esp]
call fcn.0057afe6
mov cl, byte [esp + 0x2b]
mov edi, dword [esp + 0x30]
mov byte [esi + 0x18], al
mov byte [esi + 0x1b], cl
fld dword [esp + 0x40]
add esp, 4
lea edx, [esp + 0x88]
push edx
lea eax, [esp + 0x84]
push eax
lea ecx, [esp + 0x8c]
push ecx
sub esp, 0xc
fstp dword [esp + 8]
fld dword [esp + 0x50]
fstp dword [esp + 4]
fld dword [esp + 0x4c]
fstp dword [esp]
call fcn.0057f6a9
add esp, 0x18
cmp byte [esp + 0x2b], 0
push ecx
je 0x625985
movzx edx, byte [edi + 0xe]
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
fmul dword [esp + 0x88]
fstp dword [esp + 0x10]
fld dword [esp + 0x10]
fstp dword [esp]
call fcn.0057afe6
mov byte [esi + 0x1e], al
movzx eax, byte [edi + 0xd]
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
fmul dword [esp + 0x84]
fstp dword [esp + 0x10]
fld dword [esp + 0x10]
fstp dword [esp]
call fcn.0057afe6
mov byte [esi + 0x1d], al
movzx ecx, byte [edi + 0xc]
mov dword [esp + 0x10], ecx
fild dword [esp + 0x10]
fmul dword [esp + 0x8c]
fstp dword [esp + 0x10]
fld dword [esp + 0x10]
fstp dword [esp]
call fcn.0057afe6
mov byte [esi + 0x1c], al
mov dl, byte [edi + 0xf]
mov byte [esi + 0x1f], dl
jmp 0x625a07
movzx eax, byte [esp + 0x22]
fld dword [esp + 0x88]
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
fmulp st(1)
fstp dword [esp + 0x10]
fld dword [esp + 0x10]
fstp dword [esp]
call fcn.0057afe6
movzx ecx, byte [esp + 0x21]
fld dword [esp + 0x84]
mov dword [esp + 0x10], ecx
mov byte [esi + 0x1e], al
fild dword [esp + 0x10]
fmulp st(1)
fstp dword [esp + 0x10]
fld dword [esp + 0x10]
fstp dword [esp]
call fcn.0057afe6
movzx edx, byte [esp + 0x20]
fld dword [esp + 0x8c]
mov dword [esp + 0x10], edx
mov byte [esi + 0x1d], al
fild dword [esp + 0x10]
fmulp st(1)
fstp dword [esp + 0x10]
fld dword [esp + 0x10]
fstp dword [esp]
call fcn.0057afe6
mov byte [esi + 0x1c], al
mov al, byte [esp + 0x23]
mov byte [esi + 0x1f], al
fld dword [esp + 0x48]
add esp, 4
fld dword [esp + 0x48]
fcom st(1)
fnstsw ax
test ah, 5
jp 0x625a2e
fstp st(0)
fld dword [esp + 0x4c]
fcom st(1)
fnstsw ax
test ah, 5
jp 0x625a32
fstp st(0)
jmp 0x625a34
fstp st(1)
jmp 0x625a1d
fstp st(1)
fstp dword [esp + 0x2c]
fld dword [esp + 0x34]
fld dword [esp + 0x38]
fcom st(1)
fnstsw ax
test ah, 5
jp 0x625a5c
fstp st(0)
fld dword [esp + 0x3c]
fcom st(1)
fnstsw ax
test ah, 5
jp 0x625a60
fstp st(0)
jmp 0x625a62
fstp st(1)
jmp 0x625a4b
fstp st(1)
fstp dword [esp + 0x18]
fld dword [esp + 0x2c]
fst dword [esi + 0x30]
fstp dword [esi + 0x34]
fld dword [esp + 0x18]
fst dword [esi + 0x40]
fstp dword [esi + 0x44]
add esi, dword [esp + 0x130]
add dword [esp + 0xbc], 4
sub dword [esp + 0x14], 1
jne 0x624a40
pop edi
pop esi
pop ebp
add esp, 0x1ac
ret