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

Disassembly:
push ebx
push esi
mov ebx, ecx
push edi
sub esp, 0x130
mov eax, dword [ebx + 4]
test eax, eax
je 0x6333e3
add eax, 0x4e20
cmp dword [0x974b34], eax
jbe 0x633ebe
lea eax, [esp + 0x70]
push eax
call fcn.004bc260
lea esi, [esp + 0x74]
pop ecx
lea edi, [esp + 0x64]
movsd dword es:[edi], dword [esi]
fldz
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
fld dword [esp + 0x64]
fcomp dword [ebx + 8]
fnstsw ax
and ah, 5
cmp ah, 1
je 0x633437
fld dword [esp + 0x64]
fcomp dword [ebx + 0x10]
fnstsw ax
test ah, 0x45
je 0x633437
fld dword [esp + 0x68]
fst st(1)
fcomp dword [ebx + 0xc]
fnstsw ax
and ah, 5
cmp ah, 1
je 0x633437
fcom dword [ebx + 0x14]
fnstsw ax
test ah, 0x45
jne 0x633443
add esp, 0x130
fstp st(0)
pop edi
pop esi
pop ebx
ret
movzx eax, byte [ebx]
dec eax
cmp eax, 6
ja case.default.0x633450
jmp dword [eax*4 + 0x6dc3b0]
fstp st(0)
call fcn.004bc140
mov eax, dword [eax + 0x5f4]
mov edx, dword [eax + 0x20]
cmp edx, 1
jl 0x633ebe
call fcn.004bc200
test eax, eax
jne 0x633ebe
mov ecx, ebx
push dword [ebx + 0x2c]
push dword [ebx + 0x28]
push dword [ebx + 0x1c]
push dword [ebx + 0x18]
call fcn.00633230
mov esi, eax
test esi, esi
je 0x633ebe
mov ecx, ebx
push dword [ebx + 0x34]
push dword [ebx + 0x30]
push dword [ebx + 0x24]
push dword [ebx + 0x20]
call fcn.00633230
mov edi, eax
test edi, edi
fldz
je 0x633590
mov al, byte [esi + 0x50]
push esi
and al, 7
or al, 0x18
mov byte [esi + 0x50], al
mov byte [esi + 0x160], 4
movsx eax, byte [esi + 0x160]
mov dword [esp + 0x5c], eax
fild dword [esp + 0x5c]
fstp dword [esi + 0x15c]
mov byte [esi + 0x155], 1
mov byte [esi + 0x156], 0x18
fld dword [ebx + 0x2c]
fstp st(1)
fld dword [ebx + 0x28]
fstp dword [esi + 0x16c]
fst dword [esi + 0x170]
mov dword [esi + 0x174], 0
mov eax, dword [0x974b34]
add eax, 0x61a8
fstp st(0)
mov dword [esi + 0x214], eax
call fcn.00419bb0
mov al, byte [edi + 0x50]
pop ecx
and al, 7
push edi
or al, 0x18
mov byte [edi + 0x50], al
mov byte [edi + 0x160], 4
movsx eax, byte [edi + 0x160]
fldz
mov dword [esp + 0x5c], eax
fild dword [esp + 0x5c]
fstp dword [edi + 0x15c]
mov byte [edi + 0x155], 1
mov byte [edi + 0x156], 0x18
fld dword [ebx + 0x34]
fstp st(1)
fld dword [ebx + 0x30]
fstp dword [edi + 0x16c]
fst dword [edi + 0x170]
mov dword [edi + 0x174], 0
mov eax, dword [0x974b34]
add eax, 0x61a8
fstp st(0)
mov dword [edi + 0x214], eax
jmp 0x633eb0
push esi
fstp st(0)
call fcn.004db330
test esi, esi
pop ecx
je 0x633ebe
mov ecx, esi
mov ebx, dword [ecx]
push 1
call dword [ebx + 8]
jmp 0x633ebe
fstp st(0)
call fcn.004bc140
mov eax, dword [eax + 0x5f4]
mov edx, dword [eax + 0x20]
cmp edx, 2
jl 0x633ebe
call fcn.004bc200
test eax, eax
je 0x633ebe
call fcn.004bc230
fld dword [eax + 4]
lea eax, [esp + 0x88]
push eax
fstp dword [esp + 0x10]
call fcn.004bc260
fld dword [esp + 0x90]
fsub dword [ebx + 0x1c]
pop ecx
fmul dword [esp + 0xc]
fstp dword [esp + 0x38]
call fcn.004bc230
fld dword [eax]
lea eax, [esp + 0x7c]
push eax
fstp dword [esp + 0xc]
call fcn.004bc260
fldz
fld dword [esp + 0x80]
fsub dword [ebx + 0x18]
pop ecx
fmul dword [esp + 8]
fst st(1)
fadd dword [esp + 0x38]
fcomp dword [0x6dc3a8]
fnstsw ax
and ah, 5
cmp ah, 1
jne 0x633ef0
mov ecx, ebx
push dword [ebx + 0x2c]
push dword [ebx + 0x28]
push dword [ebx + 0x1c]
push dword [ebx + 0x18]
fstp st(0)
call fcn.00633230
test eax, eax
fldz
fldz
je 0x633ef4
mov cl, byte [eax + 0x50]
push eax
and cl, 7
or cl, 0x18
mov byte [eax + 0x50], cl
mov byte [eax + 0x160], 0x10
mov byte [eax + 0x155], 3
mov byte [eax + 0x156], 0x1a
mov byte [eax + 0x157], 8
mov edx, dword [0x974b34]
add edx, 0x64
mov dword [eax + 0x158], edx
mov esi, dword [0x974b34]
add esi, 0x2710
mov dword [eax + 0x214], esi
lea edi, [eax + 0x14]
fld dword [0x6dc3ac]
fmul dword [edi + 8]
fstp st(1)
fld dword [0x6dc3ac]
fmul dword [edi + 4]
fstp st(2)
fld dword [0x6dc3ac]
fmul dword [edi]
fstp dword [eax + 0x70]
fld st(1)
fstp dword [eax + 0x74]
fst dword [eax + 0x78]
fcompp
call fcn.00419bb0
mov eax, dword [0x974b34]
pop ecx
mov dword [ebx + 4], eax
jmp 0x633ebe
fstp st(0)
call fcn.004bc140
mov eax, dword [eax + 0x5f4]
mov ecx, dword [eax + 0x20]
cmp ecx, 2
jl 0x633ebe
call fcn.004bc200
test eax, eax
je 0x633ebe
call fcn.004bc230
fld dword [eax + 4]
lea eax, [esp + 0xa0]
push eax
fstp dword [esp + 0x18]
call fcn.004bc260
fld dword [esp + 0xa8]
fsub dword [ebx + 0x1c]
pop ecx
fmul dword [esp + 0x14]
fstp dword [esp + 0x3c]
call fcn.004bc230
fld dword [eax]
lea eax, [esp + 0x94]
push eax
fstp dword [esp + 0x14]
call fcn.004bc260
fldz
fld dword [esp + 0x98]
fsub dword [ebx + 0x18]
pop ecx
fmul dword [esp + 0x10]
fst st(1)
fadd dword [esp + 0x3c]
fcomp dword [0x6dc3a8]
fnstsw ax
and ah, 5
cmp ah, 1
jne 0x633ef8
mov ecx, ebx
push dword [ebx + 0x2c]
push dword [ebx + 0x28]
push dword [ebx + 0x1c]
push dword [ebx + 0x18]
fstp st(0)
call fcn.00633230
test eax, eax
fldz
fldz
je 0x633f00
mov cl, byte [eax + 0x50]
push eax
and cl, 7
or cl, 0x18
mov byte [eax + 0x50], cl
mov byte [eax + 0x160], 0x10
mov byte [eax + 0x155], 2
mov byte [eax + 0x156], 3
mov byte [eax + 0x157], 8
mov edx, dword [0x974b34]
add edx, 0x64
mov dword [eax + 0x158], edx
mov ecx, dword [0x974b34]
add ecx, 0x2710
mov dword [eax + 0x214], ecx
lea esi, [eax + 0x14]
fld dword [0x6dc3ac]
fmul dword [esi + 8]
fstp st(1)
fld dword [0x6dc3ac]
fmul dword [esi + 4]
fstp st(2)
fld dword [0x6dc3ac]
fmul dword [esi]
fstp dword [eax + 0x70]
fld st(1)
fstp dword [eax + 0x74]
fst dword [eax + 0x78]
fcompp
call fcn.00419bb0
mov eax, dword [0x974b34]
pop ecx
mov dword [ebx + 4], eax
jmp 0x633ebe
fstp st(0)
call fcn.004bc140
mov eax, dword [eax + 0x5f4]
mov edx, dword [eax + 0x20]
cmp edx, 1
jl 0x633ebe
call fcn.004bc200
test eax, eax
jne 0x633ebe
mov ecx, ebx
push dword [ebx + 0x1c]
push dword [ebx + 0x18]
call fcn.00633130
mov edi, eax
test edi, edi
je 0x633ebe
push dword [ebx + 0x2c]
push dword [ebx + 0x28]
call fcn.004d5560
fstp dword [esp + 0xc]
mov al, byte [edi + 0x14f]
pop ecx
and al, 0x7f
pop ecx
mov byte [edi + 0x14f], al
mov eax, dword [esp + 4]
fld dword [ebx + 0x28]
fstp dword [esp + 0xac]
fld dword [ebx + 0x2c]
mov ecx, edi
push eax
fstp dword [esp + 0xb4]
push dword [esp + 0xb4]
push dword [esp + 0xb4]
push 0x18
mov dword [esp + 0xc4], eax
call fcn.00521860
mov eax, dword [0x974b34]
add eax, 0x2710
mov dword [edi + 0x35c], eax
mov eax, dword [0x974b34]
mov dword [ebx + 4], eax
jmp 0x633ebe
fstp st(0)
call fcn.004bc140
mov eax, dword [eax + 0x5f4]
mov ecx, dword [eax + 0x20]
cmp ecx, 1
jl 0x633ebe
call fcn.004bc200
test eax, eax
jne 0x633ebe
mov ecx, ebx
push dword [ebx + 0x1c]
push dword [ebx + 0x18]
call fcn.00633130
mov esi, eax
test esi, esi
je 0x633ebe
push dword [ebx + 0x2c]
push dword [ebx + 0x28]
call fcn.004d5560
fstp dword [esp + 0x5c]
mov al, byte [esi + 0x14f]
pop ecx
and al, 0x7f
pop ecx
mov byte [esi + 0x14f], al
mov eax, dword [esp + 0x54]
fld dword [ebx + 0x28]
fstp dword [esp + 0xb8]
fld dword [ebx + 0x2c]
mov ecx, esi
push eax
fstp dword [esp + 0xc0]
push dword [esp + 0xc0]
push dword [esp + 0xc0]
push 0x18
mov dword [esp + 0xd0], eax
call fcn.00521860
mov eax, dword [0x974b34]
mov ecx, ebx
add eax, 0x2710
mov dword [esi + 0x35c], eax
push dword [ebx + 0x24]
push dword [ebx + 0x20]
call fcn.00633130
mov edi, eax
test edi, edi
je 0x633a00
push dword [ebx + 0x34]
push dword [ebx + 0x30]
call fcn.004d5560
fstp dword [esp + 0x58]
mov al, byte [edi + 0x14f]
pop ecx
and al, 0x7f
pop ecx
mov byte [edi + 0x14f], al
mov eax, dword [esp + 0x50]
fld dword [ebx + 0x30]
fstp dword [esp + 0xc4]
fld dword [ebx + 0x34]
mov ecx, edi
push eax
fstp dword [esp + 0xcc]
push dword [esp + 0xcc]
push dword [esp + 0xcc]
push 0x18
mov dword [esp + 0xdc], eax
call fcn.00521860
mov eax, dword [0x974b34]
add eax, 0x2710
mov dword [edi + 0x35c], eax
jmp 0x633eb6
push esi
call fcn.004db330
test esi, esi
pop ecx
je 0x633ebe
mov ecx, esi
mov ebx, dword [ecx]
push 1
call dword [ebx + 8]
jmp 0x633ebe
fstp st(0)
call fcn.004bc140
mov eax, dword [eax + 0x5f4]
mov ecx, dword [eax + 0x20]
cmp ecx, 2
jl 0x633ebe
call fcn.004bc200
test eax, eax
je 0x633ebe
call fcn.004bc230
fld dword [eax + 4]
lea eax, [esp + 0xdc]
push eax
fstp dword [esp + 0x20]
call fcn.004bc260
fld dword [esp + 0xe4]
fsub dword [ebx + 0x1c]
pop ecx
fmul dword [esp + 0x1c]
fstp dword [esp + 0x40]
call fcn.004bc230
fld dword [eax]
lea eax, [esp + 0xd0]
push eax
fstp dword [esp + 0x1c]
call fcn.004bc260
fldz
fld dword [esp + 0xd4]
fsub dword [ebx + 0x18]
pop ecx
fmul dword [esp + 0x18]
fst st(1)
fadd dword [esp + 0x40]
fcomp dword [0x6dc3a8]
fnstsw ax
and ah, 5
cmp ah, 1
jne 0x633ec8
mov ecx, ebx
push dword [ebx + 0x2c]
push dword [ebx + 0x28]
push dword [ebx + 0x1c]
push dword [ebx + 0x18]
fstp st(0)
call fcn.00633230
test eax, eax
fldz
fldz
je 0x633ed0
mov dl, byte [eax + 0x50]
push eax
and dl, 7
or dl, 0x18
mov byte [eax + 0x50], dl
mov byte [eax + 0x160], 0x10
mov byte [eax + 0x155], 3
mov byte [eax + 0x156], 0x1a
mov byte [eax + 0x157], 8
mov edi, dword [0x974b34]
add edi, 0x64
mov dword [eax + 0x158], edi
mov ecx, dword [0x974b34]
add ecx, 0x2710
mov dword [eax + 0x214], ecx
lea esi, [eax + 0x14]
fld dword [0x6dc3ac]
fmul dword [esi + 8]
fstp st(1)
fld dword [0x6dc3ac]
fmul dword [esi + 4]
fstp st(2)
fld dword [0x6dc3ac]
fmul dword [esi]
fstp dword [eax + 0x70]
fld st(1)
fstp dword [eax + 0x74]
fst dword [eax + 0x78]
fcompp
call fcn.00419bb0
mov eax, dword [0x974b34]
pop ecx
mov dword [ebx + 4], eax
call fcn.004bc230
fld dword [eax + 4]
lea eax, [esp + 0xf4]
push eax
fstp dword [esp + 0x28]
call fcn.004bc260
fld dword [esp + 0xfc]
fsub dword [ebx + 0x24]
pop ecx
fmul dword [esp + 0x24]
fstp dword [esp + 0x44]
call fcn.004bc230
fld dword [eax]
lea eax, [esp + 0xe8]
push eax
fstp dword [esp + 0x24]
call fcn.004bc260
fldz
fld dword [esp + 0xec]
fsub dword [ebx + 0x20]
pop ecx
fmul dword [esp + 0x20]
fst st(1)
fadd dword [esp + 0x44]
fcomp dword [0x6dc3a8]
fnstsw ax
and ah, 5
cmp ah, 1
jne 0x633f04
mov ecx, ebx
push dword [ebx + 0x34]
push dword [ebx + 0x30]
push dword [ebx + 0x24]
push dword [ebx + 0x20]
fstp st(0)
call fcn.00633230
test eax, eax
fldz
fldz
je 0x633f08
mov dl, byte [eax + 0x50]
push eax
and dl, 7
or dl, 0x18
mov byte [eax + 0x50], dl
mov byte [eax + 0x160], 0x10
mov byte [eax + 0x155], 3
mov byte [eax + 0x156], 0x1a
mov byte [eax + 0x157], 8
mov edi, dword [0x974b34]
add edi, 0x64
mov dword [eax + 0x158], edi
mov ecx, dword [0x974b34]
add ecx, 0x2710
mov dword [eax + 0x214], ecx
lea esi, [eax + 0x14]
fld dword [0x6dc3ac]
fmul dword [esi + 8]
fstp st(1)
fld dword [0x6dc3ac]
fmul dword [esi + 4]
fstp st(2)
fld dword [0x6dc3ac]
fmul dword [esi]
fstp dword [eax + 0x70]
fld st(1)
fstp dword [eax + 0x74]
fst dword [eax + 0x78]
fcompp
call fcn.00419bb0
pop ecx
jmp 0x633eb6
fstp st(0)
call fcn.004bc140
mov eax, dword [eax + 0x5f4]
mov edx, dword [eax + 0x20]
cmp edx, 2
jl 0x633ebe
call fcn.004bc200
test eax, eax
je 0x633ebe
call fcn.004bc230
fld dword [eax + 4]
lea eax, [esp + 0x10c]
push eax
fstp dword [esp + 0x30]
call fcn.004bc260
fld dword [esp + 0x114]
fsub dword [ebx + 0x1c]
pop ecx
fmul dword [esp + 0x2c]
fstp dword [esp + 0x48]
call fcn.004bc230
fld dword [eax]
lea eax, [esp + 0x100]
push eax
fstp dword [esp + 0x2c]
call fcn.004bc260
fldz
fld dword [esp + 0x104]
fsub dword [ebx + 0x18]
pop ecx
fmul dword [esp + 0x28]
fst st(1)
fadd dword [esp + 0x48]
fcomp dword [0x6dc3a8]
fnstsw ax
and ah, 5
cmp ah, 1
jne 0x633ed7
mov ecx, ebx
push dword [ebx + 0x2c]
push dword [ebx + 0x28]
push dword [ebx + 0x1c]
push dword [ebx + 0x18]
fstp st(0)
call fcn.00633230
test eax, eax
fldz
fldz
je 0x633ee0
mov dl, byte [eax + 0x50]
push eax
and dl, 7
or dl, 0x18
mov byte [eax + 0x50], dl
mov byte [eax + 0x160], 0x10
mov byte [eax + 0x155], 2
mov byte [eax + 0x156], 3
mov byte [eax + 0x157], 8
mov esi, dword [0x974b34]
add esi, 0x64
mov dword [eax + 0x158], esi
mov edi, dword [0x974b34]
add edi, 0x2710
mov dword [eax + 0x214], edi
lea ecx, [eax + 0x14]
fld dword [0x6dc3ac]
fmul dword [ecx + 8]
fstp st(1)
fld dword [0x6dc3ac]
fmul dword [ecx + 4]
fstp st(2)
fld dword [0x6dc3ac]
fmul dword [ecx]
fstp dword [eax + 0x70]
fld st(1)
fstp dword [eax + 0x74]
fst dword [eax + 0x78]
fcompp
call fcn.00419bb0
mov eax, dword [0x974b34]
pop ecx
mov dword [ebx + 4], eax
call fcn.004bc230
fld dword [eax + 4]
lea eax, [esp + 0x124]
push eax
fstp dword [esp + 0x38]
call fcn.004bc260
fld dword [esp + 0x12c]
fsub dword [ebx + 0x24]
pop ecx
fmul dword [esp + 0x34]
fstp dword [esp + 0x4c]
call fcn.004bc230
fld dword [eax]
lea eax, [esp + 0x118]
push eax
fstp dword [esp + 0x34]
call fcn.004bc260
fldz
fld dword [esp + 0x11c]
fsub dword [ebx + 0x20]
pop ecx
fmul dword [esp + 0x30]
fst st(1)
fadd dword [esp + 0x4c]
fcomp dword [0x6dc3a8]
fnstsw ax
and ah, 5
cmp ah, 1
jne 0x633f10
mov ecx, ebx
push dword [ebx + 0x34]
push dword [ebx + 0x30]
push dword [ebx + 0x24]
push dword [ebx + 0x20]
fstp st(0)
call fcn.00633230
test eax, eax
fldz
fldz
je 0x633f14
mov cl, byte [eax + 0x50]
push eax
and cl, 7
or cl, 0x18
mov byte [eax + 0x50], cl
mov byte [eax + 0x160], 0x10
mov byte [eax + 0x155], 2
mov byte [eax + 0x156], 3
mov byte [eax + 0x157], 8
mov edx, dword [0x974b34]
add edx, 0x64
mov dword [eax + 0x158], edx
mov ecx, dword [0x974b34]
add ecx, 0x2710
mov dword [eax + 0x214], ecx
lea esi, [eax + 0x14]
fld dword [0x6dc3ac]
fmul dword [esi + 8]
fstp st(1)
fld dword [0x6dc3ac]
fmul dword [esi + 4]
fstp st(2)
fld dword [0x6dc3ac]
fmul dword [esi]
fstp dword [eax + 0x70]
fld st(1)
fstp dword [eax + 0x74]
fst dword [eax + 0x78]
fcompp
call fcn.00419bb0
pop ecx
mov eax, dword [0x974b34]
mov dword [ebx + 4], eax
add esp, 0x130
pop edi
pop esi
pop ebx
ret
fstp st(0)
jmp 0x633b59
fcompp
jmp 0x633b59
fstp st(0)
jmp 0x633da8
fcompp
jmp 0x633da8
fstp st(0)
jmp 0x633ebe
fstp st(0)
jmp 0x633ebe
fcompp
jmp 0x633ebe
fstp st(0)
jmp 0x633ebe
fcompp
jmp 0x633ebe
fstp st(0)
jmp 0x633ebe
fcompp
jmp 0x633ebe
fstp st(0)
jmp 0x633ebe
fcompp
jmp 0x633ebe