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

Disassembly:
sub esp, 0x64
push ebx
push ebp
push esi
push edi
mov edi, ecx
mov ecx, dword [esp + 0x78]
mov eax, ecx
mov dword [esp + 0x78], eax
fild dword [esp + 0x78]
mov dword [esp + 0x10], edi
test eax, eax
jge 0x5575f5
fadd dword [0x5af1c8]
fld qword [0x5af5e8]
mov edx, dword [esp + 0x7c]
fadd st(1), st(0)
mov eax, edx
fxch st(1)
mov dword [esp + 0x78], eax
fstp dword [esp + 0x60]
fild dword [esp + 0x78]
test eax, eax
jge 0x55761b
fadd dword [0x5af1c8]
mov eax, dword [esp + 0x80]
fadd st(1)
fstp dword [esp + 0x64]
fild dword [esp + 0x80]
test eax, eax
jge 0x557639
fadd dword [0x5af1c8]
mov eax, dword [esp + 0x84]
fadd st(1)
fstp dword [esp + 0x58]
fild dword [esp + 0x84]
test eax, eax
jge 0x557657
fadd dword [0x5af1c8]
faddp st(1)
fstp dword [esp + 0x5c]
fld dword [esp + 0x60]
fld st(0)
fld dword [esp + 0x58]
fld st(0)
fsubp st(2)
fldz
fucomp st(2)
fnstsw ax
fld dword [esp + 0x64]
fld dword [esp + 0x5c]
fldz
test ah, 0x44
jp 0x557698
fstp st(4)
mov dword [esp + 0x70], 1
fxch st(3)
fst dword [esp + 0x68]
fxch st(4)
fst dword [esp + 0x6c]
jmp 0x5576be
fld st(2)
mov dword [esp + 0x70], 0
fsub st(2)
fdivrp st(5)
fxch st(4)
fstp dword [esp + 0x68]
fld st(1)
fld dword [esp + 0x68]
fmul st(6)
fsubp st(1)
fstp dword [esp + 0x6c]
fxch st(3)
fxch st(4)
fsubp st(2)
mov dword [esp + 0x78], ecx
mov ecx, dword [edi]
fxch st(1)
mov dword [esp + 0x7c], edx
fstp dword [esp + 0x20]
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], ecx
fsubp st(1)
fstp dword [esp + 0x1c]
fld dword [esp + 0x20]
fld dword [esp + 0x1c]
fld1
jmp 0x5576f2
fxch st(3)
fxch st(1)
mov edx, dword [esp + 0x14]
inc dword [esp + 0x18]
xor ebp, ebp
xor esi, esi
cmp dword [esp + 0x78], edx
jae 0x55801b
mov eax, dword [esp + 0x7c]
cmp eax, dword [edi + 4]
jae 0x55801b
mov eax, dword [esp + 0x10]
mov edi, dword [eax + 4]
imul edi, dword [esp + 0x7c]
mov ebx, dword [eax + 0xc]
mov ecx, dword [esp + 0x78]
lea eax, [edi + ecx]
mov edx, eax
shl edx, 4
sub edx, eax
lea eax, [ebx + edx*4]
test eax, eax
je 0x55801b
cmp byte [eax], 0
jne 0x55801b
cmp byte [eax + 1], 0
jne 0x55801b
mov eax, ecx
mov dword [esp + 0x24], eax
fild dword [esp + 0x24]
test eax, eax
jge 0x557764
fadd dword [0x5af1c8]
mov eax, dword [esp + 0x7c]
fstp dword [esp + 0x24]
fld dword [esp + 0x24]
mov edx, eax
mov dword [esp + 0x24], edx
fst dword [esp + 0x28]
fild dword [esp + 0x24]
test edx, edx
jge 0x557788
fadd dword [0x5af1c8]
fstp dword [esp + 0x24]
fld dword [esp + 0x24]
fst dword [esp + 0x2c]
fld st(1)
fadd st(3)
fstp dword [esp + 0x24]
fld dword [esp + 0x24]
fst dword [esp + 0x30]
fxch st(1)
fst dword [esp + 0x34]
fst dword [esp + 0x4c]
fxch st(2)
fst dword [esp + 0x48]
fst dword [esp + 0x50]
fld st(2)
faddp st(4)
fxch st(3)
fstp dword [esp + 0x24]
fld dword [esp + 0x24]
fst dword [esp + 0x54]
fst dword [esp + 0x64]
fst dword [esp + 0x3c]
fstp dword [esp + 0x44]
fst dword [esp + 0x58]
fst dword [esp + 0x60]
fstp dword [esp + 0x40]
fstp dword [esp + 0x5c]
fstp dword [esp + 0x38]
cmp ecx, dword [esp + 0x80]
jne 0x557800
cmp eax, dword [esp + 0x84]
je 0x558006
fxch st(1)
fcom st(2)
fnstsw ax
test ah, 0x41
jne 0x55785f
fld st(2)
fucomp st(2)
fnstsw ax
test ah, 0x44
jp 0x55785f
mov eax, dword [esp + 0x5c]
fstp st(2)
mov ecx, dword [esp + 0x58]
fstp st(0)
push eax
fstp st(0)
push ecx
lea ecx, [esp + 0x70]
call fcn.005572c0
mov ecx, dword [esp + 0x60]
mov edx, eax
mov eax, dword [esp + 0x64]
push eax
push ecx
lea ecx, [esp + 0x70]
call fcn.005572c0
cmp edx, 2
je 0x557856
cmp eax, 2
je 0x557856
cmp edx, eax
je 0x558023
inc dword [esp + 0x78]
jmp 0x557fe7
fcom st(2)
fnstsw ax
test ah, 5
jp 0x5578bc
fld st(2)
fucomp st(2)
fnstsw ax
test ah, 0x44
jp 0x5578bc
mov edx, dword [esp + 0x4c]
fstp st(2)
mov eax, dword [esp + 0x48]
fstp st(0)
push edx
fstp st(0)
push eax
lea ecx, [esp + 0x70]
call fcn.005572c0
mov ecx, dword [esp + 0x54]
mov edx, eax
mov eax, dword [esp + 0x50]
push ecx
push eax
lea ecx, [esp + 0x70]
call fcn.005572c0
cmp edx, 2
je 0x5578b3
cmp eax, 2
je 0x5578b3
cmp edx, eax
je 0x558023
dec dword [esp + 0x78]
jmp 0x557fe7
fld st(2)
fucomp st(1)
fnstsw ax
test ah, 0x44
jp 0x557973
fxch st(1)
fcom st(2)
fnstsw ax
test ah, 5
jp 0x55791f
mov ecx, dword [esp + 0x2c]
fstp st(2)
mov edx, dword [esp + 0x28]
fstp st(1)
push ecx
fstp st(0)
push edx
lea ecx, [esp + 0x70]
call fcn.005572c0
mov ecx, dword [esp + 0x30]
mov edx, eax
mov eax, dword [esp + 0x34]
push eax
push ecx
lea ecx, [esp + 0x70]
call fcn.005572c0
cmp edx, 2
je 0x557916
cmp eax, 2
je 0x557916
cmp edx, eax
je 0x558023
dec dword [esp + 0x7c]
jmp 0x557fe7
fcom st(2)
fnstsw ax
test ah, 0x41
jne 0x557971
mov edx, dword [esp + 0x3c]
fstp st(2)
mov eax, dword [esp + 0x38]
fstp st(1)
push edx
fstp st(0)
push eax
lea ecx, [esp + 0x70]
call fcn.005572c0
mov ecx, dword [esp + 0x44]
mov edx, eax
mov eax, dword [esp + 0x40]
push ecx
push eax
lea ecx, [esp + 0x70]
call fcn.005572c0
cmp edx, 2
je 0x557968
cmp eax, 2
je 0x557968
cmp edx, eax
je 0x558023
inc dword [esp + 0x7c]
jmp 0x557fe7
fxch st(1)
fcom st(2)
fnstsw ax
test ah, 5
jp 0x557b0a
fxch st(1)
fcom st(2)
fnstsw ax
test ah, 5
jp 0x557b08
mov ecx, dword [esp + 0x4c]
fstp st(2)
mov edx, dword [esp + 0x48]
fstp st(1)
push ecx
fstp st(0)
push edx
lea ecx, [esp + 0x70]
call fcn.005572c0
mov ecx, dword [esp + 0x50]
mov edx, eax
mov eax, dword [esp + 0x54]
push eax
push ecx
lea ecx, [esp + 0x70]
call fcn.005572c0
cmp edx, 2
je 0x5579cb
cmp eax, 2
je 0x5579cb
cmp edx, eax
je 0x5579d0
mov ebp, 1
cmp dword [esp + 0x70], 1
jne 0x557a60
fld dword [esp + 0x28]
fld dword [esp + 0x6c]
fcom st(1)
fnstsw ax
test ah, 0x41
jne 0x557a45
fstp st(1)
xor ecx, ecx
fld dword [esp + 0x30]
fcom st(1)
fnstsw ax
test ah, 5
jnp 0x557ab0
fucompp
fnstsw ax
test ah, 0x44
mov eax, 2
jnp 0x557a14
mov eax, 1
cmp ecx, 2
je 0x557a22
cmp eax, 2
je 0x557a22
cmp ecx, eax
je 0x557a27
mov esi, 1
mov eax, 1
cmp ebp, eax
jne 0x557c69
test esi, esi
jne 0x557ad2
sub dword [esp + 0x78], eax
jmp 0x557fe7
fld st(0)
fucomp st(2)
fnstsw ax
fstp st(1)
test ah, 0x44
jp 0x557a59
mov ecx, 2
jmp 0x5579f0
mov ecx, 1
jmp 0x5579f0
fld dword [esp + 0x68]
fld st(0)
fmul dword [esp + 0x28]
fld dword [esp + 0x6c]
fld st(0)
faddp st(2)
fxch st(1)
fstp dword [esp + 0x24]
fld dword [esp + 0x24]
fld dword [esp + 0x2c]
fcom st(1)
fnstsw ax
test ah, 0x41
jne 0x557abb
fstp st(1)
xor ecx, ecx
fstp st(0)
fld dword [esp + 0x30]
fmulp st(2)
faddp st(1)
fstp dword [esp + 0x24]
fld dword [esp + 0x24]
fld dword [esp + 0x34]
fcom st(1)
fnstsw ax
test ah, 0x41
jne 0x557a01
fstp st(1)
xor eax, eax
fstp st(0)
jmp 0x557a14
fucompp
fnstsw ax
test ah, 0x44
jp 0x557acb
mov ecx, 2
jmp 0x557a8f
mov ecx, 1
jmp 0x557a8f
cmp esi, eax
jne 0x558023
mov esi, dword [esp + 0x78]
dec esi
cmp esi, dword [esp + 0x14]
jae 0x557afc
mov ecx, dword [esp + 0x7c]
lea eax, [esi + edi]
mov edx, eax
shl edx, 4
sub edx, eax
lea edx, [ebx + edx*4]
dec ecx
jmp 0x557f9f
mov ecx, dword [esp + 0x7c]
xor edx, edx
dec ecx
jmp 0x557f9f
fxch st(1)
fcom st(2)
fnstsw ax
test ah, 0x41
jne 0x557c96
fxch st(1)
fcom st(2)
fnstsw ax
test ah, 5
jp 0x557c94
mov ecx, dword [esp + 0x5c]
fstp st(2)
mov edx, dword [esp + 0x58]
fstp st(1)
push ecx
fstp st(0)
push edx
lea ecx, [esp + 0x70]
call fcn.005572c0
mov ecx, dword [esp + 0x60]
mov edx, eax
mov eax, dword [esp + 0x64]
push eax
push ecx
lea ecx, [esp + 0x70]
call fcn.005572c0
cmp edx, 2
je 0x557b62
cmp eax, 2
je 0x557b62
cmp edx, eax
je 0x557b67
mov ebp, 1
cmp dword [esp + 0x70], 1
jne 0x557bf7
fld dword [esp + 0x28]
fld dword [esp + 0x6c]
fcom st(1)
fnstsw ax
test ah, 0x41
jne 0x557bdc
fstp st(1)
xor ecx, ecx
fld dword [esp + 0x30]
fcom st(1)
fnstsw ax
test ah, 5
jnp 0x557c47
fucompp
fnstsw ax
test ah, 0x44
mov eax, 2
jnp 0x557bab
mov eax, 1
cmp ecx, 2
je 0x557bb9
cmp eax, 2
je 0x557bb9
cmp ecx, eax
je 0x557bbe
mov esi, 1
mov eax, 1
cmp ebp, eax
jne 0x557c69
test esi, esi
jne 0x557c82
add dword [esp + 0x78], eax
jmp 0x557fe7
fld st(0)
fucomp st(2)
fnstsw ax
fstp st(1)
test ah, 0x44
jp 0x557bf0
mov ecx, 2
jmp 0x557b87
mov ecx, 1
jmp 0x557b87
fld dword [esp + 0x68]
fld st(0)
fmul dword [esp + 0x28]
fld dword [esp + 0x6c]
fld st(0)
faddp st(2)
fxch st(1)
fstp dword [esp + 0x24]
fld dword [esp + 0x24]
fld dword [esp + 0x2c]
fcom st(1)
fnstsw ax
test ah, 0x41
jne 0x557c52
fstp st(1)
xor ecx, ecx
fstp st(0)
fld dword [esp + 0x30]
fmulp st(2)
faddp st(1)
fstp dword [esp + 0x24]
fld dword [esp + 0x24]
fld dword [esp + 0x34]
fcom st(1)
fnstsw ax
test ah, 0x41
jne 0x557b98
fstp st(1)
xor eax, eax
fstp st(0)
jmp 0x557bab
fucompp
fnstsw ax
test ah, 0x44
jp 0x557c62
mov ecx, 2
jmp 0x557c26
mov ecx, 1
jmp 0x557c26
test ebp, ebp
jne 0x558023
cmp esi, eax
jne 0x558023
sub dword [esp + 0x7c], eax
jmp 0x557fe7
cmp esi, eax
jne 0x558023
mov esi, dword [esp + 0x78]
inc esi
jmp 0x557adf
fxch st(1)
fcom st(2)
fnstsw ax
test ah, 5
jp 0x557e09
fxch st(1)
fcom st(2)
fnstsw ax
test ah, 0x41
jne 0x557e07
mov ecx, dword [esp + 0x4c]
fstp st(2)
mov edx, dword [esp + 0x48]
fstp st(1)
push ecx
fstp st(0)
push edx
lea ecx, [esp + 0x70]
call fcn.005572c0
mov ecx, dword [esp + 0x50]
mov edx, eax
mov eax, dword [esp + 0x54]
push eax
push ecx
lea ecx, [esp + 0x70]
call fcn.005572c0
cmp edx, 2
je 0x557cee
cmp eax, 2
je 0x557cee
cmp edx, eax
je 0x557cf3
mov ebp, 1
cmp dword [esp + 0x70], 1
jne 0x557d83
fld dword [esp + 0x38]
fld dword [esp + 0x6c]
fcom st(1)
fnstsw ax
test ah, 0x41
jne 0x557d68
fstp st(1)
xor ecx, ecx
fld dword [esp + 0x40]
fcom st(1)
fnstsw ax
test ah, 5
jnp 0x557dd3
fucompp
fnstsw ax
test ah, 0x44
mov eax, 2
jnp 0x557d37
mov eax, 1
cmp ecx, 2
je 0x557d45
cmp eax, 2
je 0x557d45
cmp ecx, eax
je 0x557d4a
mov esi, 1
mov eax, 1
cmp ebp, eax
jne 0x557f60
test esi, esi
jne 0x557df5
sub dword [esp + 0x78], eax
jmp 0x557fe7
fld st(0)
fucomp st(2)
fnstsw ax
fstp st(1)
test ah, 0x44
jp 0x557d7c
mov ecx, 2
jmp 0x557d13
mov ecx, 1
jmp 0x557d13
fld dword [esp + 0x68]
fld st(0)
fmul dword [esp + 0x38]
fld dword [esp + 0x6c]
fld st(0)
faddp st(2)
fxch st(1)
fstp dword [esp + 0x24]
fld dword [esp + 0x24]
fld dword [esp + 0x3c]
fcom st(1)
fnstsw ax
test ah, 0x41
jne 0x557dde
fstp st(1)
xor ecx, ecx
fstp st(0)
fld dword [esp + 0x40]
fmulp st(2)
faddp st(1)
fstp dword [esp + 0x24]
fld dword [esp + 0x24]
fld dword [esp + 0x44]
fcom st(1)
fnstsw ax
test ah, 0x41
jne 0x557d24
fstp st(1)
xor eax, eax
fstp st(0)
jmp 0x557d37
fucompp
fnstsw ax
test ah, 0x44
jp 0x557dee
mov ecx, 2
jmp 0x557db2
mov ecx, 1
jmp 0x557db2
cmp esi, eax
jne 0x558023
mov esi, dword [esp + 0x78]
dec esi
jmp 0x557f83
fxch st(1)
fcomp st(2)
fnstsw ax
test ah, 0x41
jne 0x55801f
fcompp
fnstsw ax
test ah, 0x41
jne 0x558023
mov ecx, dword [esp + 0x5c]
mov edx, dword [esp + 0x58]
push ecx
push edx
lea ecx, [esp + 0x70]
call fcn.005572c0
mov ecx, dword [esp + 0x60]
mov edx, eax
mov eax, dword [esp + 0x64]
push eax
push ecx
lea ecx, [esp + 0x70]
call fcn.005572c0
cmp edx, 2
je 0x557e59
cmp eax, 2
je 0x557e59
cmp edx, eax
je 0x557e5e
mov ebp, 1
cmp dword [esp + 0x70], 1
jne 0x557eee
fld dword [esp + 0x38]
fld dword [esp + 0x6c]
fcom st(1)
fnstsw ax
test ah, 0x41
jne 0x557ed3
fstp st(1)
xor ecx, ecx
fld dword [esp + 0x40]
fcom st(1)
fnstsw ax
test ah, 5
jnp 0x557f3e
fucompp
fnstsw ax
test ah, 0x44
mov eax, 2
jnp 0x557ea2
mov eax, 1
cmp ecx, 2
je 0x557eb0
cmp eax, 2
je 0x557eb0
cmp ecx, eax
je 0x557eb5
mov esi, 1
mov eax, 1
cmp ebp, eax
jne 0x557f60
test esi, esi
jne 0x557f76
add dword [esp + 0x78], eax
jmp 0x557fe7
fld st(0)
fucomp st(2)
fnstsw ax
fstp st(1)
test ah, 0x44
jp 0x557ee7
mov ecx, 2
jmp 0x557e7e
mov ecx, 1
jmp 0x557e7e
fld dword [esp + 0x68]
fld st(0)
fmul dword [esp + 0x38]
fld dword [esp + 0x6c]
fld st(0)
faddp st(2)
fxch st(1)
fstp dword [esp + 0x24]
fld dword [esp + 0x24]
fld dword [esp + 0x3c]
fcom st(1)
fnstsw ax
test ah, 0x41
jne 0x557f49
fstp st(1)
xor ecx, ecx
fstp st(0)
fld dword [esp + 0x40]
fmulp st(2)
faddp st(1)
fstp dword [esp + 0x24]
fld dword [esp + 0x24]
fld dword [esp + 0x44]
fcom st(1)
fnstsw ax
test ah, 0x41
jne 0x557e8f
fstp st(1)
xor eax, eax
fstp st(0)
jmp 0x557ea2
fucompp
fnstsw ax
test ah, 0x44
jp 0x557f59
mov ecx, 2
jmp 0x557f1d
mov ecx, 1
jmp 0x557f1d
test ebp, ebp
jne 0x558023
cmp esi, eax
jne 0x558023
add dword [esp + 0x7c], eax
jmp 0x557fe7
cmp esi, eax
jne 0x558023
mov esi, dword [esp + 0x78]
inc esi
cmp esi, dword [esp + 0x14]
jae 0x557f98
lea eax, [esi + edi]
mov edx, eax
shl edx, 4
sub edx, eax
lea edx, [ebx + edx*4]
jmp 0x557f9a
xor edx, edx
mov ecx, dword [esp + 0x7c]
inc ecx
mov eax, dword [esp + 0x10]
mov edi, dword [eax + 4]
cmp ecx, edi
jae 0x557fbf
mov eax, ecx
imul eax, edi
add eax, dword [esp + 0x78]
mov edi, eax
shl edi, 4
sub edi, eax
lea eax, [ebx + edi*4]
jmp 0x557fc1
xor eax, eax
test edx, edx
je 0x558023
test eax, eax
je 0x558023
cmp byte [edx], 0
jne 0x558023
cmp byte [edx + 1], 0
jne 0x558023
cmp byte [eax], 0
jne 0x558023
cmp byte [eax + 1], 0
jne 0x558023
mov dword [esp + 0x7c], ecx
mov dword [esp + 0x78], esi
cmp dword [esp + 0x18], 0xc350
jge 0x558023
fld dword [esp + 0x1c]
mov edi, dword [esp + 0x10]
fld dword [esp + 0x20]
fld1
fldz
jmp 0x5576ee
pop edi
fstp st(2)
pop esi
fstp st(1)
pop ebp
fstp st(0)
mov eax, 1
pop ebx
add esp, 0x64
ret 0x10
fstp st(3)
fstp st(2)
fstp st(1)
fstp st(0)
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x64
ret 0x10