Function at 0x5584a0
Capabilities:
Print debug messages
Resolve function by parsing pe exports

Disassembly:
sub esp, 0x58
push ebx
push ebp
push esi
mov esi, dword [esp + 0x68]
mov eax, esi
mov dword [esp + 0x68], eax
fild dword [esp + 0x68]
push edi
mov dword [esp + 0x10], ecx
test eax, eax
jns 0x5584c3
fadd dword [0x5b9928]
fld qword [0x5bc3e8]
mov edi, dword [esp + 0x70]
fadd st(1), st(0)
mov ecx, edi
fxch st(1)
mov dword [esp + 0x6c], ecx
fstp dword [esp + 0x4c]
fild dword [esp + 0x6c]
test ecx, ecx
jns 0x5584e9
fadd dword [0x5b9928]
mov edx, dword [esp + 0x74]
fadd st(1)
fstp dword [esp + 0x50]
fild dword [esp + 0x74]
test edx, edx
jns 0x558501
fadd dword [0x5b9928]
mov eax, dword [esp + 0x78]
fadd st(1)
fstp dword [esp + 0x54]
fild dword [esp + 0x78]
test eax, eax
jns 0x558519
fadd dword [0x5b9928]
mov edx, dword [esp + 0x54]
faddp st(1)
mov eax, dword [esp + 0x50]
fstp dword [esp + 0x58]
mov ecx, dword [esp + 0x58]
push ecx
mov ecx, dword [esp + 0x50]
push edx
push eax
push ecx
lea ecx, [esp + 0x6c]
call fcn.005576c0
fld dword [esp + 0x54]
fsub dword [esp + 0x4c]
mov dword [esp + 0x6c], 0
fstp dword [esp + 0x70]
fld dword [esp + 0x58]
fsub dword [esp + 0x50]
fstp dword [esp + 0x14]
fld dword [esp + 0x70]
mov ecx, dword [esp + 0x10]
fld dword [esp + 0x14]
inc dword [esp + 0x6c]
fld1
push edi
fldz
push esi
xor ebx, ebx
xor ebp, ebp
call fcn.00558230
test eax, eax
je 0x558a5b
cmp byte [eax + 0x1c], 1
je 0x558a22
cmp byte [eax + 0x1d], bl
jne 0x558a22
mov edx, esi
mov dword [esp + 0x18], edx
fild dword [esp + 0x18]
test edx, edx
jns 0x5585aa
fadd dword [0x5b9928]
fstp dword [esp + 0x18]
mov eax, edi
fld dword [esp + 0x18]
mov dword [esp + 0x18], eax
fst dword [esp + 0x24]
fild dword [esp + 0x18]
test eax, eax
jns 0x5585ca
fadd dword [0x5b9928]
fstp dword [esp + 0x18]
fld dword [esp + 0x18]
fst dword [esp + 0x28]
fld st(1)
fadd st(4)
fstp dword [esp + 0x18]
fld dword [esp + 0x18]
fst dword [esp + 0x1c]
fxch st(1)
fst dword [esp + 0x20]
fst dword [esp + 0x38]
fxch st(2)
fst dword [esp + 0x34]
fst dword [esp + 0x2c]
fld st(2)
faddp st(5)
fxch st(4)
fstp dword [esp + 0x18]
fld dword [esp + 0x18]
fst dword [esp + 0x30]
fst dword [esp + 0x40]
fst dword [esp + 0x58]
fstp dword [esp + 0x50]
fst dword [esp + 0x44]
fst dword [esp + 0x3c]
fstp dword [esp + 0x4c]
fstp dword [esp + 0x48]
fxch st(1)
fstp dword [esp + 0x54]
cmp esi, dword [esp + 0x74]
jne 0x55863e
cmp edi, dword [esp + 0x78]
je 0x558a36
fcom st(2)
fnstsw ax
test ah, 5
jp 0x55868a
fld st(1)
fld st(1)
fucompp
fnstsw ax
test ah, 0x44
jp 0x55868a
mov edx, dword [esp + 0x40]
fstp st(0)
mov eax, dword [esp + 0x3c]
fstp st(0)
lea ecx, [esp + 0x5c]
fstp st(0)
push ecx
mov ecx, dword [esp + 0x4c]
push edx
mov edx, dword [esp + 0x4c]
push eax
push ecx
push edx
call fcn.00557780
add esp, 0x14
cmp eax, 1
jne 0x558a6e
inc esi
jmp 0x558a13
fcom st(2)
fnstsw ax
test ah, 0x41
jne 0x5586d6
fld st(1)
fld st(1)
fucompp
fnstsw ax
test ah, 0x44
jp 0x5586d6
mov ecx, dword [esp + 0x30]
fstp st(0)
mov edx, dword [esp + 0x2c]
fstp st(0)
lea eax, [esp + 0x5c]
fstp st(0)
push eax
mov eax, dword [esp + 0x3c]
push ecx
mov ecx, dword [esp + 0x3c]
push edx
push eax
push ecx
call fcn.00557780
add esp, 0x14
cmp eax, 1
jne 0x558a6e
dec esi
jmp 0x558a13
fld st(2)
fld st(1)
fucompp
fnstsw ax
test ah, 0x44
jp 0x558761
fcom st(1)
fnstsw ax
test ah, 0x41
jne 0x558722
mov eax, dword [esp + 0x20]
fstp st(0)
mov ecx, dword [esp + 0x1c]
fstp st(0)
lea edx, [esp + 0x5c]
fstp st(0)
push edx
mov edx, dword [esp + 0x2c]
push eax
mov eax, dword [esp + 0x2c]
push ecx
push edx
push eax
call fcn.00557780
add esp, 0x14
cmp eax, 1
jne 0x558a6e
dec edi
jmp 0x558a13
fcom st(1)
fnstsw ax
test ah, 5
jp 0x558761
mov edx, dword [esp + 0x50]
fstp st(0)
mov eax, dword [esp + 0x4c]
fstp st(0)
lea ecx, [esp + 0x5c]
fstp st(0)
push ecx
mov ecx, dword [esp + 0x5c]
push edx
mov edx, dword [esp + 0x5c]
push eax
push ecx
push edx
call fcn.00557780
add esp, 0x14
cmp eax, 1
jne 0x558a6e
inc edi
jmp 0x558a13
fcom st(2)
fnstsw ax
test ah, 0x41
jne 0x558801
fcom st(1)
fnstsw ax
test ah, 0x41
jne 0x558801
mov ecx, dword [esp + 0x30]
fstp st(0)
mov edx, dword [esp + 0x2c]
fstp st(0)
lea eax, [esp + 0x5c]
fstp st(0)
push eax
mov eax, dword [esp + 0x3c]
push ecx
mov ecx, dword [esp + 0x3c]
push edx
push eax
push ecx
call fcn.00557780
add esp, 0x14
cmp eax, 1
jne 0x5587a9
mov ebx, eax
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x1c]
lea edx, [esp + 0x5c]
push edx
mov edx, dword [esp + 0x2c]
push eax
mov eax, dword [esp + 0x2c]
push ecx
push edx
push eax
call fcn.00557780
add esp, 0x14
cmp eax, 1
jne 0x5587d1
mov ebp, eax
cmp ebx, 1
jne 0x558880
test ebp, ebp
jne 0x5587e4
dec esi
jmp 0x558a13
cmp ebp, 1
jne 0x558a6e
mov ecx, dword [esp + 0x10]
push edi
lea ebp, [esi - 1]
push ebp
call fcn.00558230
dec edi
jmp 0x5589e8
fcom st(2)
fnstsw ax
test ah, 5
jp 0x5588b4
fcom st(1)
fnstsw ax
test ah, 0x41
jne 0x5588b4
mov edx, dword [esp + 0x40]
fstp st(0)
mov eax, dword [esp + 0x3c]
fstp st(0)
lea ecx, [esp + 0x5c]
fstp st(0)
push ecx
mov ecx, dword [esp + 0x4c]
push edx
mov edx, dword [esp + 0x4c]
push eax
push ecx
push edx
call fcn.00557780
add esp, 0x14
cmp eax, 1
jne 0x558849
mov ebx, eax
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x1c]
lea eax, [esp + 0x5c]
push eax
mov eax, dword [esp + 0x2c]
push ecx
mov ecx, dword [esp + 0x2c]
push edx
push eax
push ecx
call fcn.00557780
add esp, 0x14
cmp eax, 1
jne 0x558871
mov ebp, eax
cmp ebx, 1
jne 0x558880
test ebp, ebp
jne 0x558897
inc esi
jmp 0x558a13
test ebx, ebx
jne 0x558a6e
cmp ebp, 1
jne 0x558a6e
dec edi
jmp 0x558a13
cmp ebp, 1
jne 0x558a6e
mov ecx, dword [esp + 0x10]
push edi
lea ebp, [esi + 1]
push ebp
call fcn.00558230
dec edi
jmp 0x5589e8
fcom st(2)
fnstsw ax
test ah, 0x41
jne 0x558944
fcom st(1)
fnstsw ax
test ah, 5
jp 0x558944
mov eax, dword [esp + 0x30]
fstp st(0)
mov ecx, dword [esp + 0x2c]
fstp st(0)
lea edx, [esp + 0x5c]
fstp st(0)
push edx
mov edx, dword [esp + 0x3c]
push eax
mov eax, dword [esp + 0x3c]
push ecx
push edx
push eax
call fcn.00557780
add esp, 0x14
cmp eax, 1
jne 0x5588f8
mov ebx, eax
mov edx, dword [esp + 0x50]
mov eax, dword [esp + 0x4c]
lea ecx, [esp + 0x5c]
push ecx
mov ecx, dword [esp + 0x5c]
push edx
mov edx, dword [esp + 0x5c]
push eax
push ecx
push edx
call fcn.00557780
add esp, 0x14
cmp eax, 1
jne 0x558920
mov ebp, eax
cmp ebx, 1
jne 0x5589bc
test ebp, ebp
jne 0x558933
dec esi
jmp 0x558a13
cmp ebp, 1
jne 0x558a6e
lea ebp, [esi - 1]
jmp 0x5589dc
fcom st(2)
fnstsw ax
fstp st(2)
test ah, 5
jp 0x558a4b
fcompp
fnstsw ax
test ah, 0x41
jne 0x558a6e
mov ecx, dword [esp + 0x40]
mov edx, dword [esp + 0x3c]
lea eax, [esp + 0x5c]
push eax
mov eax, dword [esp + 0x4c]
push ecx
mov ecx, dword [esp + 0x4c]
push edx
push eax
push ecx
call fcn.00557780
add esp, 0x14
cmp eax, 1
jne 0x558988
mov ebx, eax
mov eax, dword [esp + 0x50]
mov ecx, dword [esp + 0x4c]
lea edx, [esp + 0x5c]
push edx
mov edx, dword [esp + 0x5c]
push eax
mov eax, dword [esp + 0x5c]
push ecx
push edx
push eax
call fcn.00557780
add esp, 0x14
cmp eax, 1
jne 0x5589b0
mov ebp, eax
cmp ebx, 1
jne 0x5589bc
test ebp, ebp
jne 0x5589d0
inc esi
jmp 0x558a13
test ebx, ebx
jne 0x558a6e
cmp ebp, 1
jne 0x558a6e
inc edi
jmp 0x558a13
cmp ebp, 1
jne 0x558a6e
lea ebp, [esi + 1]
mov ecx, dword [esp + 0x10]
push edi
push ebp
call fcn.00558230
inc edi
push edi
push esi
mov ebx, eax
call fcn.00558230
test ebx, ebx
je 0x558a6e
test eax, eax
je 0x558a6e
cmp byte [ebx + 0x1c], 1
je 0x558a6e
cmp byte [ebx + 0x1d], 0
jne 0x558a6e
cmp byte [eax + 0x1c], 1
je 0x558a6e
cmp byte [eax + 0x1d], 0
jne 0x558a6e
mov esi, ebp
cmp dword [esp + 0x6c], 0xc350
jge 0x558a6e
jmp 0x55855c
fstp st(0)
pop edi
fstp st(0)
pop esi
fstp st(0)
pop ebp
fstp st(0)
xor eax, eax
pop ebx
add esp, 0x58
ret 0x10
pop edi
fstp st(0)
pop esi
fstp st(0)
pop ebp
fstp st(0)
mov eax, 1
pop ebx
add esp, 0x58
ret 0x10
pop edi
fstp st(1)
pop esi
fstp st(0)
pop ebp
xor eax, eax
pop ebx
add esp, 0x58
ret 0x10
fstp st(0)
push str._____________________________n
fstp st(0)
fstp st(0)
fstp st(0)
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x58
ret 0x10