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

Disassembly:
push ebx
push esi
push edi
push ebp
sub esp, 0xa0
push 1
push 2
call fcn.00649bf0
pop ecx
pop ecx
push 1
push 5
call fcn.00649bf0
pop ecx
pop ecx
push 0
push 0xe
call fcn.00649bf0
pop ecx
pop ecx
push 0
push 8
call fcn.00649bf0
pop ecx
pop ecx
push 1
push 0xc
call fcn.00649bf0
pop ecx
pop ecx
push 5
push 0xa
mov dword [esp + 0x30], 4
call fcn.00649bf0
pop ecx
pop ecx
push 6
push 0xb
call fcn.00649bf0
pop ecx
pop ecx
mov dword [esp + 0x1c], 0
call fcn.00577760
mov dword [esp + 0x20], 0x975430
mov dword [esp + 0x14], 0
lea eax, [eax]
mov ebp, dword [esp + 0x20]
mov byte [esp + 0x24], 0
mov ecx, ebp
mov eax, ebp
mov ebx, dword [eax + 0x90]
mov eax, dword [ecx + 0x8c]
mov dword [esp + 0x18], eax
mov eax, ebp
mov ecx, dword [eax]
cmp ecx, 0x39
je 0x5609a0
cmp ecx, 0x21
je 0x5609a0
lea eax, [ecx - 0x3a]
cmp eax, 1
jbe 0x5609a0
lea eax, [ecx - 0x43]
cmp eax, 2
jbe 0x5609a0
cmp ecx, 0x3f
jne 0x5609a5
mov byte [esp + 0x24], 1
test ebx, ebx
je 0x561d54
mov eax, dword [esp + 0x20]
mov edi, dword [eax + 0x6c]
mov eax, dword [esp + 0x28]
mov edx, edi
and eax, 4
and edx, 4
cmp eax, edx
jne 0x5609d7
mov eax, dword [esp + 0x28]
and edi, 0x80
and eax, 0x80
cmp eax, edi
je 0x560a37
call fcn.005777b0
mov eax, dword [esp + 0x20]
mov eax, dword [eax + 0x6c]
mov esi, eax
and esi, 4
je 0x560a00
push 5
push 0xa
call fcn.00649bf0
pop ecx
pop ecx
push 6
jmp 0x560a23
and eax, 0x80
je 0x560a16
push 5
push 0xa
call fcn.00649bf0
pop ecx
pop ecx
push 2
jmp 0x560a23
push 2
push 0xa
call fcn.00649bf0
pop ecx
pop ecx
push 2
push 0xb
call fcn.00649bf0
pop ecx
pop ecx
mov ecx, dword [esp + 0x20]
mov eax, dword [ecx + 0x6c]
mov dword [esp + 0x28], eax
cmp dword [esp + 0x18], 0
je 0x561d54
mov eax, dword [esp + 0x18]
mov edi, dword [eax]
cmp edi, dword [esp + 0x1c]
je 0x561d54
call fcn.005777b0
push edi
push 1
call fcn.00649bf0
mov dword [esp + 0x24], edi
pop ecx
pop ecx
jmp 0x561d54
cmp byte [ebx + 0x3b], 0
mov edi, 1
jne 0x560a7d
xor edi, edi
test edi, edi
je 0x560ab2
cmp byte [ebp + 0x41], 0
je 0x560ab2
cmp dword [esp + 0x18], 0
je 0x560ab2
movzx edx, byte [ebx + 0x4e]
mov eax, dword [esp + 0x18]
mov esi, dword [eax + edx*4]
cmp dword [esp + 0x1c], esi
je 0x560ab2
call fcn.005777b0
push esi
push 1
call fcn.00649bf0
mov dword [esp + 0x24], esi
pop ecx
pop ecx
mov eax, dword [ebx + 0x4f]
test edi, edi
mov dword [esp + 0x5c], eax
mov al, byte [esp + 0x5c]
mov byte [esp + 4], al
mov al, byte [esp + 0x5d]
mov byte [esp + 0x10], al
mov al, byte [esp + 0x5e]
fldz
mov byte [esp + 0xc], al
je 0x561330
mov eax, dword [ebp + 0x6c]
and eax, 0x400
je 0x561330
fld dword [0x69835c]
fstp dword [esp + 0x34]
fld dword [0x69835c]
fstp dword [esp + 0x38]
fld dword [0xa10680]
fsub dword [0x97853c]
fld dword [ebx + 8]
fstp st(2)
mov eax, dword [esp + 0x14]
fmul st(1)
fld st(1)
fsub dword [0x97853c]
fld dword [0x97f344]
fsub dword [0x978644]
add eax, 0xffffffde
cmp eax, 1
fmulp st(1)
fmul dword [0xa10680]
fdivrp st(1)
fadd dword [0x978644]
fstp dword [esp + 0x3c]
jbe 0x560b4f
cmp dword [esp + 0x14], 0x50
jne 0x560bd0
fstp st(0)
call fcn.00649a40
and eax, 0xffff
mov dword [esp + 0x40], eax
mov al, byte [ebx + 0x4e]
fild dword [esp + 0x40]
and eax, 0xff
fmul dword [0x69831c]
fmul dword [0x698360]
fadd dword [0x698338]
fmul dword [ebp + 0x80]
mov dword [esp + 0x40], eax
fimul dword [esp + 0x40]
fadd dword [esp + 0x34]
fstp dword [esp + 0x34]
call fcn.00649a40
and eax, 0xffff
mov dword [esp + 0x40], eax
mov al, byte [ebx + 0x4e]
fild dword [esp + 0x40]
and eax, 0xff
fmul dword [0x69831c]
fmul dword [0x698360]
fadd dword [0x698338]
fmul dword [ebp + 0x84]
mov dword [esp + 0x40], eax
fimul dword [esp + 0x40]
jmp 0x560c2e
fstp st(0)
call fcn.00649a40
and eax, 0xffff
mov dword [esp + 0x40], eax
fild dword [esp + 0x40]
fmul dword [0x69831c]
fmul dword [0x698360]
fadd dword [0x698338]
fmul dword [ebp + 0x80]
fadd dword [esp + 0x34]
fstp dword [esp + 0x34]
call fcn.00649a40
and eax, 0xffff
mov dword [esp + 0x40], eax
fild dword [esp + 0x40]
fmul dword [0x69831c]
fmul dword [0x698360]
fadd dword [0x698338]
fmul dword [ebp + 0x84]
fadd dword [esp + 0x38]
fstp dword [esp + 0x38]
cmp dword [esp + 0x14], 0x28
fldz
fldz
jne 0x560d91
mov esi, dword [ebx + 0x18]
xor edx, edx
mov eax, esi
mov dword [esp + 0x44], 0
sub eax, dword [0x974b34]
div esi
mov dword [esp + 0x40], eax
mov dword [esp + 0x40], eax
fild qword [esp + 0x40]
fsubr dword [0x698320]
fmul dword [ebp + 0x84]
fadd dword [esp + 0x38]
fstp dword [esp + 0x38]
fild dword [0x9b48ec]
fmul dword [0x698364]
fstp st(2)
fld dword [ebx + 0x3c]
fmul dword [esp + 0x34]
fmul st(2)
fsubr dword [ebx]
fnstcw word [esp + 0x2c]
mov eax, dword [esp + 0x2c]
or byte [esp + 0x2d], 0xc
fldcw word [esp + 0x2c]
mov dword [esp + 0x2c], eax
fistp dword [esp + 0x40]
fldcw word [esp + 0x2c]
fild dword [0x9b48f0]
mov eax, dword [esp + 0x40]
mov dword [esp + 0x4c], eax
fmul dword [0x698368]
fstp st(1)
fld dword [ebx + 0x3c]
fmul dword [esp + 0x38]
fmul st(1)
fsubr dword [ebx + 4]
fnstcw word [esp + 0x2c]
mov eax, dword [esp + 0x2c]
or byte [esp + 0x2d], 0xc
fldcw word [esp + 0x2c]
mov dword [esp + 0x2c], eax
fistp dword [esp + 0x40]
mov eax, dword [esp + 0x40]
fldcw word [esp + 0x2c]
mov dword [esp + 0x50], eax
fld dword [ebx + 0x3c]
fmul dword [esp + 0x34]
fmul st(2)
fadd dword [ebx]
fnstcw word [esp + 0x2c]
mov eax, dword [esp + 0x2c]
or byte [esp + 0x2d], 0xc
fldcw word [esp + 0x2c]
mov dword [esp + 0x2c], eax
fistp dword [esp + 0x40]
mov eax, dword [esp + 0x40]
fldcw word [esp + 0x2c]
mov dword [esp + 0x54], eax
fld dword [ebx + 0x3c]
fmul dword [esp + 0x38]
fmul st(1)
fadd dword [ebx + 4]
fnstcw word [esp + 0x2c]
mov eax, dword [esp + 0x2c]
or byte [esp + 0x2d], 0xc
fldcw word [esp + 0x2c]
mov dword [esp + 0x2c], eax
fistp dword [esp + 0x40]
fldcw word [esp + 0x2c]
mov eax, dword [esp + 0x40]
mov dword [esp + 0x58], eax
cmp byte [ebx + 0x4e], 0
je 0x560d70
lea ecx, [esp + 0x4c]
push 1
push dword [esp + 0x40]
push ecx
jmp 0x560d7b
lea edi, [esp + 0x4c]
push 0
push dword [esp + 0x40]
push edi
fcompp
mov eax, dword [0x8100c4]
push eax
call fcn.0055d180
add esp, 0x10
xor edi, edi
fldz
fldz
cmp dword [esp + 0x14], 0x29
jne 0x560f11
mov esi, dword [ebx + 0x18]
xor edx, edx
mov eax, esi
mov dword [esp + 0x44], 0
sub eax, dword [0x974b34]
div esi
mov edx, eax
mov dword [esp + 0x40], eax
mov dword [esp + 0x40], edx
fild qword [esp + 0x40]
fadd dword [0x698320]
fmul dword [ebp + 0x84]
mov dword [esp + 0x40], eax
mov dword [esp + 0x40], eax
mov dword [esp + 0x44], 0
fadd dword [esp + 0x38]
fstp dword [esp + 0x38]
fild qword [esp + 0x40]
fsubr dword [0x698320]
fmul dword [ebp + 0x80]
fadd dword [esp + 0x34]
fstp dword [esp + 0x34]
fild dword [0x9b48ec]
fmul dword [0x698364]
fstp st(2)
fld dword [ebx + 0x3c]
fmul dword [esp + 0x34]
fmul st(2)
fsubr dword [ebx]
fnstcw word [esp + 0x2c]
mov eax, dword [esp + 0x2c]
or byte [esp + 0x2d], 0xc
fldcw word [esp + 0x2c]
mov dword [esp + 0x2c], eax
fistp dword [esp + 0x40]
fldcw word [esp + 0x2c]
fild dword [0x9b48f0]
mov eax, dword [esp + 0x40]
mov dword [esp + 0x4c], eax
fmul dword [0x698368]
fstp st(1)
fld dword [ebx + 0x3c]
fmul dword [esp + 0x38]
fmul st(1)
fsubr dword [ebx + 4]
fnstcw word [esp + 0x2c]
mov eax, dword [esp + 0x2c]
or byte [esp + 0x2d], 0xc
fldcw word [esp + 0x2c]
mov dword [esp + 0x2c], eax
fistp dword [esp + 0x40]
mov eax, dword [esp + 0x40]
fldcw word [esp + 0x2c]
mov dword [esp + 0x50], eax
fld dword [ebx + 0x3c]
fmul dword [esp + 0x34]
fmul st(2)
fadd dword [ebx]
fnstcw word [esp + 0x2c]
mov eax, dword [esp + 0x2c]
or byte [esp + 0x2d], 0xc
fldcw word [esp + 0x2c]
mov dword [esp + 0x2c], eax
fistp dword [esp + 0x40]
mov eax, dword [esp + 0x40]
fldcw word [esp + 0x2c]
mov dword [esp + 0x54], eax
fld dword [ebx + 0x3c]
fmul dword [esp + 0x38]
fmul st(1)
fadd dword [ebx + 4]
fnstcw word [esp + 0x2c]
mov eax, dword [esp + 0x2c]
or byte [esp + 0x2d], 0xc
fldcw word [esp + 0x2c]
mov dword [esp + 0x2c], eax
fistp dword [esp + 0x40]
fldcw word [esp + 0x2c]
mov eax, dword [esp + 0x40]
mov dword [esp + 0x58], eax
cmp byte [ebx + 0x4e], 0
je 0x560ef0
lea esi, [esp + 0x4c]
push 3
push dword [esp + 0x40]
push esi
jmp 0x560efb
lea ecx, [esp + 0x4c]
push 2
push dword [esp + 0x40]
push ecx
fcompp
mov eax, dword [0x8100c4]
push eax
call fcn.0055d180
add esp, 0x10
xor edi, edi
fldz
fldz
cmp dword [esp + 0x14], 0x52
jne 0x561dc0
fild dword [0x9b48ec]
push 4
push dword [esp + 0x40]
fmul dword [0x698364]
fstp st(2)
fld dword [ebx + 0x3c]
fmul dword [esp + 0x3c]
fmul st(2)
fsubr dword [ebx]
fnstcw word [esp + 0x34]
mov eax, dword [esp + 0x34]
or byte [esp + 0x35], 0xc
fldcw word [esp + 0x34]
mov dword [esp + 0x34], eax
fistp dword [esp + 0x48]
fldcw word [esp + 0x34]
fild dword [0x9b48f0]
mov eax, dword [esp + 0x48]
mov dword [esp + 0x54], eax
lea edi, [esp + 0x54]
fmul dword [0x698368]
push edi
fstp st(1)
fld dword [ebx + 0x3c]
fmul dword [esp + 0x44]
fmul dword [0x69836c]
fmul st(1)
fsubr dword [ebx + 4]
fnstcw word [esp + 0x38]
mov eax, dword [esp + 0x38]
or byte [esp + 0x39], 0xc
fldcw word [esp + 0x38]
mov dword [esp + 0x38], eax
fistp dword [esp + 0x4c]
mov eax, dword [esp + 0x4c]
fldcw word [esp + 0x38]
mov dword [esp + 0x5c], eax
fld dword [ebx + 0x3c]
fmul dword [esp + 0x40]
fmul st(2)
fadd dword [ebx]
fnstcw word [esp + 0x38]
mov eax, dword [esp + 0x38]
or byte [esp + 0x39], 0xc
fldcw word [esp + 0x38]
mov dword [esp + 0x38], eax
fistp dword [esp + 0x4c]
mov eax, dword [esp + 0x4c]
fldcw word [esp + 0x38]
mov dword [esp + 0x60], eax
fld dword [ebx + 0x3c]
fmul dword [esp + 0x44]
fmul dword [0x69836c]
fmul st(1)
fadd dword [ebx + 4]
fnstcw word [esp + 0x38]
mov eax, dword [esp + 0x38]
or byte [esp + 0x39], 0xc
fldcw word [esp + 0x38]
mov dword [esp + 0x38], eax
fistp dword [esp + 0x4c]
fldcw word [esp + 0x38]
mov eax, dword [esp + 0x4c]
fcompp
mov dword [esp + 0x64], eax
mov eax, dword [0x8100c4]
push eax
call fcn.0055d180
add esp, 0x10
xor edi, edi
cmp dword [esp + 0x14], 0x51
jne 0x561283
mov ecx, 0x7e4690
call fcn.0046f6ce
dec eax
cmp eax, 1
fldz
fldz
ja case.default.0x561046
jmp dword [eax*4 + 0x6985fc]
fild dword [0x9b48ec]
fmul dword [0x698364]
fstp st(2)
fld dword [ebx + 0x3c]
fmul dword [ebp + 0x80]
fmul dword [0x69833c]
fmul st(2)
fsubr dword [ebx]
fnstcw word [esp + 0x2c]
mov eax, dword [esp + 0x2c]
or byte [esp + 0x2d], 0xc
fldcw word [esp + 0x2c]
mov dword [esp + 0x2c], eax
fistp dword [esp + 0x40]
fldcw word [esp + 0x2c]
fild dword [0x9b48f0]
mov eax, dword [esp + 0x40]
mov dword [esp + 0x4c], eax
fmul dword [0x698368]
fstp st(1)
fld dword [ebx + 0x3c]
fmul dword [ebp + 0x84]
fmul st(1)
fsubr dword [ebx + 4]
fnstcw word [esp + 0x2c]
mov eax, dword [esp + 0x2c]
or byte [esp + 0x2d], 0xc
fldcw word [esp + 0x2c]
mov dword [esp + 0x2c], eax
fistp dword [esp + 0x40]
mov eax, dword [esp + 0x40]
fldcw word [esp + 0x2c]
mov dword [esp + 0x50], eax
fld dword [ebx + 0x3c]
fmul dword [ebp + 0x80]
fmul st(2)
fsubr dword [ebx]
jmp 0x56120e
fild dword [0x9b48ec]
fmul dword [0x698364]
fstp st(2)
fld dword [ebx + 0x3c]
fmul dword [ebp + 0x80]
fmul st(2)
fadd dword [ebx]
fnstcw word [esp + 0x2c]
mov eax, dword [esp + 0x2c]
or byte [esp + 0x2d], 0xc
fldcw word [esp + 0x2c]
mov dword [esp + 0x2c], eax
fistp dword [esp + 0x40]
fldcw word [esp + 0x2c]
fild dword [0x9b48f0]
mov eax, dword [esp + 0x40]
mov dword [esp + 0x4c], eax
fmul dword [0x698368]
fstp st(1)
fld dword [ebx + 0x3c]
fmul dword [ebp + 0x84]
fmul st(1)
fsubr dword [ebx + 4]
fnstcw word [esp + 0x2c]
mov eax, dword [esp + 0x2c]
or byte [esp + 0x2d], 0xc
fldcw word [esp + 0x2c]
mov dword [esp + 0x2c], eax
fistp dword [esp + 0x40]
mov eax, dword [esp + 0x40]
fldcw word [esp + 0x2c]
mov dword [esp + 0x50], eax
fld dword [ebx + 0x3c]
fmul dword [ebp + 0x80]
fmul dword [0x698340]
fmul st(2)
fadd dword [ebx]
jmp 0x56120e
fild dword [0x9b48ec]
fmul dword [0x698364]
fstp st(2)
fld dword [ebx + 0x3c]
fmul dword [ebp + 0x80]
fmul st(2)
fsubr dword [ebx]
fnstcw word [esp + 0x2c]
mov eax, dword [esp + 0x2c]
or byte [esp + 0x2d], 0xc
fldcw word [esp + 0x2c]
mov dword [esp + 0x2c], eax
fistp dword [esp + 0x40]
fldcw word [esp + 0x2c]
fild dword [0x9b48f0]
mov eax, dword [esp + 0x40]
mov dword [esp + 0x4c], eax
fmul dword [0x698368]
fstp st(1)
fld dword [ebx + 0x3c]
fmul dword [ebp + 0x84]
fmul st(1)
fsubr dword [ebx + 4]
fnstcw word [esp + 0x2c]
mov eax, dword [esp + 0x2c]
or byte [esp + 0x2d], 0xc
fldcw word [esp + 0x2c]
mov dword [esp + 0x2c], eax
fistp dword [esp + 0x40]
mov eax, dword [esp + 0x40]
fldcw word [esp + 0x2c]
mov dword [esp + 0x50], eax
fld dword [ebx + 0x3c]
fmul dword [ebp + 0x80]
fmul st(2)
fadd dword [ebx]
fnstcw word [esp + 0x2c]
mov eax, dword [esp + 0x2c]
or byte [esp + 0x2d], 0xc
fldcw word [esp + 0x2c]
mov dword [esp + 0x2c], eax
fistp dword [esp + 0x40]
mov eax, dword [esp + 0x40]
mov dword [esp + 0x54], eax
fldcw word [esp + 0x2c]
fld dword [ebx + 0x3c]
fmul dword [ebp + 0x84]
fmul st(1)
fadd dword [ebx + 4]
fnstcw word [esp + 0x2c]
mov eax, dword [esp + 0x2c]
or byte [esp + 0x2d], 0xc
fldcw word [esp + 0x2c]
mov dword [esp + 0x2c], eax
fistp dword [esp + 0x40]
fldcw word [esp + 0x2c]
mov eax, dword [esp + 0x40]
mov dword [esp + 0x58], eax
fcompp
mov eax, dword [0x8100c4]
lea esi, [esp + 0x4c]
push 4
push dword [esp + 0x40]
push esi
push eax
call fcn.0055d180
add esp, 0x10
xor edi, edi
test edi, edi
fldz
je 0x561e00
mov di, word [ebx + 0x4c]
test di, di
je 0x5612f0
movsx eax, di
mov dl, byte [ebx + 0x3b]
push edx
mov dword [esp + 0x44], eax
push eax
fild dword [esp + 0x48]
fmul dword [0x698370]
fmul dword [0x698374]
fstp dword [esp]
fld dword [ebx + 0x3c]
movzx ecx, byte [ebx + 0x3a]
fst st(1)
fmul dword [esp + 0x40]
lea eax, [esp + 0x64]
push ecx
push eax
push eax
fstp dword [esp]
fld st(0)
fmul dword [esp + 0x48]
push eax
fstp dword [esp]
push dword [ebx + 4]
push dword [ebx]
fstp st(0)
call fcn.00575460
add esp, 0x20
jmp 0x561d51
fld dword [ebx + 0x3c]
movzx edx, byte [ebx + 0x3a]
mov al, byte [ebx + 0x3b]
fst st(1)
fmul dword [esp + 0x38]
push eax
lea eax, [esp + 0x60]
push edx
push eax
push eax
fstp dword [esp]
fld st(0)
fmul dword [esp + 0x44]
push eax
fstp dword [esp]
push dword [ebx + 4]
push dword [ebx]
fstp st(0)
call fcn.005756a0
add esp, 0x1c
jmp 0x561d51
test edi, edi
je 0x561e07
lea eax, [esp + 0x70]
lea ecx, [esp + 0x6c]
push 1
push eax
lea eax, [esp + 0x68]
push ecx
push eax
push ebx
fstp st(0)
call fcn.005778d0
add esp, 0x14
test al, al
fldz
je 0x561e10
cmp dword [esp + 0x14], 0x21
je 0x561388
mov eax, dword [esp + 0x14]
add eax, 0xffffffc7
cmp eax, 2
jbe 0x561388
mov eax, dword [esp + 0x14]
add eax, 0xffffffbd
cmp eax, 2
jbe 0x561388
cmp dword [esp + 0x14], 0x3f
jne 0x561480
mov ecx, 0x7e4690
fstp st(0)
call fcn.0046f6ce
dec eax
cmp eax, 1
ja case.default.0x56139a
jmp dword [eax*4 + 0x6985f4]
call fcn.00649a40
and eax, 0xffff
mov dword [esp + 0x40], eax
fild dword [esp + 0x40]
fmul dword [0x69831c]
fmul dword [0x698378]
fadd dword [0x698320]
fmul dword [ebp + 0x80]
fadd dword [esp + 0x6c]
fstp dword [esp + 0x6c]
call fcn.00649a40
and eax, 0xffff
mov dword [esp + 0x40], eax
fild dword [esp + 0x40]
fmul dword [0x69831c]
fmul dword [0x698360]
fadd dword [0x698338]
fmul dword [ebp + 0x84]
fadd dword [esp + 0x70]
fstp dword [esp + 0x70]
jmp 0x561dc7
call fcn.00649a40
and eax, 0xffff
mov dword [esp + 0x40], eax
fild dword [esp + 0x40]
fmul dword [0x69831c]
fmul dword [0x698360]
fadd dword [0x698338]
fmul dword [ebp + 0x80]
fadd dword [esp + 0x6c]
fstp dword [esp + 0x6c]
call fcn.00649a40
and eax, 0xffff
mov dword [esp + 0x40], eax
fild dword [esp + 0x40]
fmul dword [0x69831c]
fmul dword [0x698360]
fadd dword [0x698338]
fmul dword [ebp + 0x84]
fadd dword [esp + 0x70]
fstp dword [esp + 0x70]
jmp 0x561dd4
cmp dword [esp + 0x14], 0x31
jne 0x561500
mov esi, dword [ebx + 0x18]
xor edx, edx
mov eax, esi
mov dword [esp + 0x44], 0
sub eax, dword [0x974b34]
div esi
mov dword [esp + 0x40], eax
mov dword [esp + 0x40], eax
fild qword [esp + 0x40]
xor edx, edx
fsubr dword [0x698320]
fmul dword [ebp + 0x80]
fadd dword [esp + 0x6c]
fstp dword [esp + 0x6c]
mov edi, dword [ebx + 0x18]
mov eax, edi
sub eax, dword [0x974b34]
div edi
mov dword [esp + 0x40], eax
mov dword [esp + 0x40], eax
mov dword [esp + 0x44], 0
fild qword [esp + 0x40]
fsubr dword [0x698320]
fmul dword [ebp + 0x84]
fadd dword [esp + 0x70]
fstp dword [esp + 0x70]
jmp 0x561de1
cmp dword [esp + 0x14], 0xb
jne 0x561574
fld dword [esp + 0x6c]
fadd dword [ebp + 0x80]
fstp dword [esp + 0x6c]
fld dword [esp + 0x70]
fadd dword [ebp + 0x84]
fstp dword [esp + 0x70]
fld dword [esp + 0x6c]
fcomp dword [0x69837c]
fnstsw ax
test ah, 0x45
jne 0x561540
fld dword [esp + 0x6c]
jmp 0x561546
fld dword [0x69837c]
fstp st(1)
fst dword [esp + 0x6c]
fld dword [esp + 0x70]
fcomp dword [0x69837c]
fnstsw ax
test ah, 0x45
jne 0x561563
fld dword [esp + 0x70]
jmp 0x561569
fld dword [0x69837c]
fstp st(1)
fst dword [esp + 0x70]
jmp 0x561df0
fstp st(0)
call fcn.00649a40
and eax, 0xffff
mov dword [esp + 0x40], eax
fild dword [esp + 0x40]
fmul dword [0x69831c]
fmul dword [0x698360]
fadd dword [0x698338]
fmul dword [ebp + 0x80]
fadd dword [esp + 0x6c]
fstp dword [esp + 0x6c]
call fcn.00649a40
and eax, 0xffff
mov dword [esp + 0x40], eax
fild dword [esp + 0x40]
fmul dword [0x69831c]
fmul dword [0x698360]
fadd dword [0x698338]
fmul dword [ebp + 0x84]
fadd dword [esp + 0x70]
fstp dword [esp + 0x70]
fldz
fldz
fldz
fldz
cmp dword [esp + 0x14], 0x31
je 0x56162c
cmp byte [esp + 0x24], 0
je 0x56160e
fild dword [0x9b48ec]
fmul dword [0x698308]
fcomp dword [esp + 0x6c]
fnstsw ax
and ah, 5
cmp ah, 1
je 0x561e17
fild dword [0x9b48f0]
fmul dword [0x698308]
fcomp dword [esp + 0x70]
fnstsw ax
and ah, 5
cmp ah, 1
je 0x561e20
cmp dword [esp + 0x14], 0x31
jne 0x561888
fld dword [0xa10680]
fsub dword [0x97853c]
fld dword [esp + 0x68]
fstp st(5)
fmul st(4)
fld st(4)
fsub dword [0x97853c]
fld dword [0x97f344]
fsub dword [0x978644]
fmulp st(1)
fmul dword [0xa10680]
fdivrp st(1)
fadd dword [0x978644]
fstp st(4)
fld dword [esp + 0x6c]
fcomp dword [0x698310]
fnstsw ax
test ah, 0x45
jne 0x5616f6
fild dword [0x9b48ec]
fmul dword [0x698364]
fstp st(3)
fld dword [ebx + 0x3c]
fmul dword [esp + 0x6c]
fmul st(3)
fsubr dword [esp + 0x60]
fnstcw word [esp + 0x2c]
mov eax, dword [esp + 0x2c]
or byte [esp + 0x2d], 0xc
fldcw word [esp + 0x2c]
mov dword [esp + 0x2c], eax
fistp dword [esp + 0x40]
mov eax, dword [esp + 0x40]
fldcw word [esp + 0x2c]
mov dword [esp + 0x4c], eax
fld dword [ebx + 0x3c]
fmul dword [esp + 0x6c]
fmul st(3)
fadd dword [esp + 0x60]
fnstcw word [esp + 0x2c]
mov eax, dword [esp + 0x2c]
or byte [esp + 0x2d], 0xc
fldcw word [esp + 0x2c]
mov dword [esp + 0x2c], eax
fistp dword [esp + 0x40]
fldcw word [esp + 0x2c]
mov eax, dword [esp + 0x40]
mov dword [esp + 0x54], eax
jmp 0x561768
fild dword [0x9b48ec]
fmul dword [0x698364]
fstp st(3)
fld dword [ebx + 0x3c]
fmul dword [esp + 0x6c]
fmul st(3)
fsubr dword [esp + 0x60]
fnstcw word [esp + 0x2c]
mov eax, dword [esp + 0x2c]
or byte [esp + 0x2d], 0xc
fldcw word [esp + 0x2c]
mov dword [esp + 0x2c], eax
fistp dword [esp + 0x40]
mov eax, dword [esp + 0x40]
fldcw word [esp + 0x2c]
mov dword [esp + 0x54], eax
fld dword [ebx + 0x3c]
fmul dword [esp + 0x6c]
fmul st(3)
fadd dword [esp + 0x60]
fnstcw word [esp + 0x2c]
mov eax, dword [esp + 0x2c]
or byte [esp + 0x2d], 0xc
fldcw word [esp + 0x2c]
mov dword [esp + 0x2c], eax
fistp dword [esp + 0x40]
fldcw word [esp + 0x2c]
mov eax, dword [esp + 0x40]
mov dword [esp + 0x4c], eax
fld dword [esp + 0x70]
fcomp dword [0x698310]
fnstsw ax
test ah, 0x45
jne 0x5617f0
fild dword [0x9b48f0]
fmul dword [0x698368]
fstp st(3)
fld dword [ebx + 0x3c]
fmul dword [esp + 0x70]
fmul st(3)
fld dword [esp + 0x64]
fstp st(3)
fsubr st(2)
fnstcw word [esp + 0x2c]
mov eax, dword [esp + 0x2c]
or byte [esp + 0x2d], 0xc
fldcw word [esp + 0x2c]
mov dword [esp + 0x2c], eax
fistp dword [esp + 0x40]
mov eax, dword [esp + 0x40]
fldcw word [esp + 0x2c]
mov dword [esp + 0x50], eax
fld dword [ebx + 0x3c]
fmul dword [esp + 0x70]
fmul st(3)
fadd st(2)
fnstcw word [esp + 0x2c]
mov eax, dword [esp + 0x2c]
or byte [esp + 0x2d], 0xc
fldcw word [esp + 0x2c]
mov dword [esp + 0x2c], eax
fistp dword [esp + 0x40]
fldcw word [esp + 0x2c]
mov eax, dword [esp + 0x40]
mov dword [esp + 0x58], eax
jmp 0x561864
fild dword [0x9b48f0]
fmul dword [0x698368]
fstp st(3)
fld dword [ebx + 0x3c]
fmul dword [esp + 0x70]
fmul st(3)
fld dword [esp + 0x64]
fstp st(3)
fsubr st(2)
fnstcw word [esp + 0x2c]
mov eax, dword [esp + 0x2c]
or byte [esp + 0x2d], 0xc
fldcw word [esp + 0x2c]
mov dword [esp + 0x2c], eax
fistp dword [esp + 0x40]
mov eax, dword [esp + 0x40]
fldcw word [esp + 0x2c]
mov dword [esp + 0x58], eax
fld dword [ebx + 0x3c]
fmul dword [esp + 0x70]
fmul st(3)
fadd st(2)
fnstcw word [esp + 0x2c]
mov eax, dword [esp + 0x2c]
or byte [esp + 0x2d], 0xc
fldcw word [esp + 0x2c]
mov dword [esp + 0x2c], eax
fistp dword [esp + 0x40]
fldcw word [esp + 0x2c]
mov eax, dword [esp + 0x40]
mov dword [esp + 0x50], eax
fld st(3)
push 5
push eax
fstp dword [esp]
fcompp
fcompp
mov eax, dword [0x8100c4]
lea edi, [esp + 0x54]
push edi
push eax
call fcn.0055d180
add esp, 0x10
jmp 0x561d51
mov cx, word [ebx + 0x4c]
test cx, cx
je 0x561923
cmp dword [esp + 0x14], 0x4f
je 0x561923
movsx eax, cx
mov dl, byte [ebx + 0x3b]
push edx
mov dword [esp + 0x44], eax
push eax
fild dword [esp + 0x48]
fmul dword [0x698370]
fmul dword [0x698374]
fstp dword [esp]
fld dword [esp + 0x70]
fstp st(3)
fld dword [0x698320]
fdiv st(3)
push eax
fstp dword [esp]
fld dword [ebx + 0x3c]
fstp st(4)
movzx eax, byte [ebx + 0x3a]
fld st(3)
fmul dword [esp + 0x7c]
push eax
push dword [esp + 0x1c]
push dword [esp + 0x24]
push dword [esp + 0x1c]
push eax
fstp dword [esp]
fld st(3)
fmul dword [esp + 0x8c]
push eax
fstp dword [esp]
push eax
fld st(2)
fstp dword [esp]
fcompp
fcompp
push dword [esp + 0x8c]
push dword [esp + 0x8c]
call fcn.00576210
add esp, 0x30
jmp 0x561d51
mov eax, dword [ebp + 0x6c]
mov esi, eax
and esi, 8
je 0x561ab0
fld dword [ebx + 0x20]
fstp st(4)
fld dword [0x698310]
fcomp st(4)
fnstsw ax
and ah, 0x44
cmp ah, 0x40
jne 0x561960
fld dword [0x698310]
fstp st(2)
fld dword [0x698310]
fstp st(1)
jmp 0x561a23
fld dword [esp + 0x60]
fsub st(4)
fstp st(1)
fld dword [esp + 0x64]
fsub dword [ebx + 0x40]
fstp st(4)
fld st(3)
fmul st(0)
fld st(1)
fmul st(0)
faddp st(1)
fsqrt
fstp dword [esp + 0x40]
fld dword [esp + 0x40]
fstp st(3)
fld st(2)
fstp st(2)
fld st(0)
fdiv st(3)
fld st(0)
fmul st(0)
fld1
fsubrp st(1)
fsqrt
fpatan
fstp dword [esp + 0x40]
mov eax, dword [esp + 0x40]
mov dword [esp + 0x30], eax
fld dword [esp + 0x30]
fstp st(1)
fld st(3)
fcomp dword [0x698310]
fnstsw ax
and ah, 5
cmp ah, 1
jne 0x5619d1
fld dword [0x698314]
fmul dword [esp + 0x30]
fadd dword [0x698370]
fstp st(1)
fld dword [ebx + 0x10]
fstp st(4)
fld st(3)
fmul st(0)
fld dword [ebx + 0xc]
fstp st(5)
fld st(4)
fmul st(0)
faddp st(1)
fld dword [ebx + 0x14]
fstp st(5)
fld st(4)
fmul st(0)
faddp st(1)
fstp st(4)
fld st(3)
fsqrt
fstp dword [esp + 0x40]
fld dword [esp + 0x40]
fstp st(4)
fld st(3)
fmul dword [0x97542c]
fmul dword [esp + 0x6c]
fmul dword [0x69833c]
fstp st(4)
fld st(2)
fcomp st(4)
fnstsw ax
test ah, 0x45
jne 0x561a23
fld st(3)
fstp st(2)
mov al, byte [ebx + 0x3b]
push eax
push eax
fst dword [esp]
fld dword [esp + 0x70]
fstp st(3)
fld dword [0x698320]
fdiv st(3)
push eax
fstp dword [esp]
fld dword [ebp + 0x68]
fmul st(2)
fld dword [ebx + 0x3c]
fstp st(5)
movzx ecx, byte [ebx + 0x3a]
fld st(4)
fmul dword [esp + 0x7c]
mov al, byte [esp + 0x18]
push ecx
mov dl, byte [esp + 0x20]
push eax
mov al, byte [esp + 0x18]
push edx
push eax
push eax
faddp st(1)
fstp dword [esp]
fld st(3)
fmul dword [esp + 0x8c]
push eax
fstp dword [esp]
push eax
fld st(2)
fstp dword [esp]
fcompp
fcompp
push dword [esp + 0x8c]
push dword [esp + 0x8c]
call fcn.00576210
fld dword [esp + 0x90]
fstp dword [ebx + 0x20]
fld dword [esp + 0x94]
add esp, 0x30
fstp dword [ebx + 0x40]
jmp 0x561d51
mov ecx, eax
and ecx, 0x10
je 0x561c30
fld dword [ebx]
fsub dword [ebx + 0xc]
lea edi, [esp + 0x88]
push 1
fstp dword [esp + 0x98]
fld dword [ebx + 4]
fsub dword [ebx + 0x10]
lea esi, [esp + 0x98]
fstp dword [esp + 0x9c]
fld dword [ebx + 8]
fsub dword [ebx + 0x14]
fstp dword [esp + 0xa0]
movsd dword es:[edi], dword [esi]
fcompp
fcompp
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
lea eax, [esp + 0x78]
lea edi, [esp + 0x7c]
lea esi, [esp + 0x80]
push edi
push eax
lea eax, [esp + 0x94]
push esi
push eax
call fcn.005778d0
add esp, 0x14
test al, al
fldz
fldz
fldz
je 0x561ba0
fld dword [esp + 0x60]
fsub dword [esp + 0x7c]
fstp st(3)
fld dword [esp + 0x64]
fsub dword [esp + 0x80]
fstp st(2)
fld st(1)
fmul st(0)
fld st(3)
fmul st(0)
faddp st(1)
fsqrt
fstp dword [esp + 0x40]
fld dword [esp + 0x40]
fst st(1)
fstp dword [esp + 0x74]
fld st(2)
fdiv st(1)
fld st(0)
fmul st(0)
fld1
fsubrp st(1)
fsqrt
fpatan
fstp dword [esp + 0x40]
fld dword [esp + 0x40]
fstp st(3)
fld st(2)
fstp dword [esp + 0x78]
fld st(1)
fcomp dword [0x698310]
fnstsw ax
and ah, 5
cmp ah, 1
jne 0x561bb0
fld dword [0x698314]
fmul st(3)
fadd dword [0x698370]
fstp dword [esp + 0x78]
jmp 0x561bb0
mov dword [esp + 0x78], 0
mov dword [esp + 0x74], 0
fld dword [esp + 0x68]
fstp st(2)
fld dword [0x698320]
fdiv st(2)
mov al, byte [ebx + 0x3b]
push eax
push dword [esp + 0x7c]
push eax
fstp dword [esp]
fld dword [ebp + 0x68]
fmul dword [esp + 0x80]
fld dword [ebx + 0x3c]
fstp st(4)
movzx edx, byte [ebx + 0x3a]
fld st(3)
fmul dword [esp + 0x7c]
mov al, byte [esp + 0x18]
push edx
mov cl, byte [esp + 0x20]
push eax
mov al, byte [esp + 0x18]
push ecx
push eax
push eax
faddp st(1)
fstp dword [esp]
fld st(2)
fmul dword [esp + 0x8c]
push eax
fstp dword [esp]
push eax
fld st(1)
fstp dword [esp]
fcompp
push dword [esp + 0x8c]
push dword [esp + 0x8c]
fstp st(0)
call fcn.00576210
add esp, 0x30
jmp 0x561d51
and eax, 0x100
je 0x561c97
fld dword [0x698380]
fmul dword [ebx + 0x14]
fstp st(4)
fld st(3)
fcomp dword [0x698310]
fnstsw ax
and ah, 5
cmp ah, 1
jne 0x561c5c
fld dword [0x698314]
fmulp st(4)
fld dword [esp + 0x68]
fstp st(3)
fld dword [0x698320]
fdiv st(3)
mov al, byte [ebx + 0x3b]
push eax
push eax
fstp dword [esp]
fld dword [ebp + 0x68]
fmul st(4)
fld dword [ebx + 0x3c]
movzx edx, byte [ebx + 0x3a]
fstp st(5)
mov al, byte [esp + 0x14]
mov cl, byte [esp + 0x18]
fadd st(4)
push edx
push eax
mov al, byte [esp + 0x14]
push ecx
push eax
jmp 0x561d19
cmp dword [esp + 0x14], 0x23
jne 0x561ce8
fld dword [esp + 0x68]
fstp st(3)
fld dword [0x698320]
fdiv st(3)
mov al, byte [ebx + 0x3b]
push eax
push eax
fstp dword [esp]
fld dword [ebx + 0x3c]
fstp st(4)
movzx edx, byte [ebx + 0x3a]
fld st(3)
fmul dword [esp + 0x78]
mov al, byte [esp + 0x14]
push edx
mov cl, byte [esp + 0x1c]
push eax
mov al, byte [esp + 0x14]
push ecx
push eax
push eax
fstp dword [esp]
fld st(3)
fmul dword [esp + 0x88]
fmul dword [0x698384]
jmp 0x561d2d
fld dword [esp + 0x68]
fstp st(3)
fld dword [0x698320]
fdiv st(3)
mov al, byte [ebx + 0x3b]
push eax
push eax
fstp dword [esp]
movzx edx, byte [ebx + 0x3a]
fld dword [ebx + 0x3c]
mov al, byte [esp + 0x14]
mov cl, byte [esp + 0x18]
fstp st(4)
push edx
push eax
mov al, byte [esp + 0x14]
push ecx
fld st(3)
push eax
fmul dword [esp + 0x88]
push eax
fstp dword [esp]
fld st(3)
fmul dword [esp + 0x88]
push eax
fstp dword [esp]
push eax
fld st(2)
fstp dword [esp]
fcompp
fcompp
push dword [esp + 0x88]
push dword [esp + 0x88]
call fcn.00577370
add esp, 0x2c
mov ebx, dword [ebx + 0x54]
test ebx, ebx
jne 0x560a70
call fcn.005777b0
inc dword [esp + 0x14]
add dword [esp + 0x20], 0x94
cmp dword [esp + 0x14], 0x53
jl 0x560960
push 0
push 0xc
call fcn.00649bf0
pop ecx
pop ecx
push 1
push 8
call fcn.00649bf0
pop ecx
pop ecx
push 1
push 6
call fcn.00649bf0
pop ecx
pop ecx
push 5
push 0xa
call fcn.00649bf0
pop ecx
pop ecx
push 6
push 0xb
call fcn.00649bf0
pop ecx
pop ecx
add esp, 0xa0
pop ebp
pop edi
pop esi
pop ebx
ret
fcompp
jmp 0x561023
fldz
fldz
fldz
fldz
jmp 0x5615e2
fldz
fldz
fldz
fldz
jmp 0x5615e2
fldz
fldz
fldz
jmp 0x5615e2
fldz
fldz
fldz
jmp 0x5615e2
fstp st(0)
jmp 0x561d51
fstp st(0)
jmp 0x561d51
fstp st(0)
jmp 0x561d51
fcompp
fcompp
jmp 0x561d51
fcompp
fcompp
jmp 0x561d51