Function at 0x558fb0
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 0x558fd3
fadd dword [0x5ba9e4]
fld qword [0x5bd7b0]
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 0x558ff9
fadd dword [0x5ba9e4]
mov edx, dword [esp + 0x74]
fadd st(1)
fstp dword [esp + 0x50]
fild dword [esp + 0x74]
test edx, edx
jns 0x559011
fadd dword [0x5ba9e4]
mov eax, dword [esp + 0x78]
fadd st(1)
fstp dword [esp + 0x54]
fild dword [esp + 0x78]
test eax, eax
jns 0x559029
fadd dword [0x5ba9e4]
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.005581d0
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.00558d40
test eax, eax
je 0x55956b
cmp byte [eax + 0x1c], 1
je 0x559532
cmp byte [eax + 0x1d], bl
jne 0x559532
mov edx, esi
mov dword [esp + 0x18], edx
fild dword [esp + 0x18]
test edx, edx
jns 0x5590ba
fadd dword [0x5ba9e4]
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 0x5590da
fadd dword [0x5ba9e4]
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 0x55914e
cmp edi, dword [esp + 0x78]
je 0x559546
fcom st(2)
fnstsw ax
test ah, 5
jp 0x55919a
fld st(1)
fld st(1)
fucompp
fnstsw ax
test ah, 0x44
jp 0x55919a
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.00558290
add esp, 0x14
cmp eax, 1
jne 0x55957e
inc esi
jmp 0x559523
fcom st(2)
fnstsw ax
test ah, 0x41
jne 0x5591e6
fld st(1)
fld st(1)
fucompp
fnstsw ax
test ah, 0x44
jp 0x5591e6
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.00558290
add esp, 0x14
cmp eax, 1
jne 0x55957e
dec esi
jmp 0x559523
fld st(2)
fld st(1)
fucompp
fnstsw ax
test ah, 0x44
jp 0x559271
fcom st(1)
fnstsw ax
test ah, 0x41
jne 0x559232
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.00558290
add esp, 0x14
cmp eax, 1
jne 0x55957e
dec edi
jmp 0x559523
fcom st(1)
fnstsw ax
test ah, 5
jp 0x559271
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.00558290
add esp, 0x14
cmp eax, 1
jne 0x55957e
inc edi
jmp 0x559523
fcom st(2)
fnstsw ax
test ah, 0x41
jne 0x559311
fcom st(1)
fnstsw ax
test ah, 0x41
jne 0x559311
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.00558290
add esp, 0x14
cmp eax, 1
jne 0x5592b9
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.00558290
add esp, 0x14
cmp eax, 1
jne 0x5592e1
mov ebp, eax
cmp ebx, 1
jne 0x559390
test ebp, ebp
jne 0x5592f4
dec esi
jmp 0x559523
cmp ebp, 1
jne 0x55957e
mov ecx, dword [esp + 0x10]
push edi
lea ebp, [esi - 1]
push ebp
call fcn.00558d40
dec edi
jmp 0x5594f8
fcom st(2)
fnstsw ax
test ah, 5
jp 0x5593c4
fcom st(1)
fnstsw ax
test ah, 0x41
jne 0x5593c4
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.00558290
add esp, 0x14
cmp eax, 1
jne 0x559359
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.00558290
add esp, 0x14
cmp eax, 1
jne 0x559381
mov ebp, eax
cmp ebx, 1
jne 0x559390
test ebp, ebp
jne 0x5593a7
inc esi
jmp 0x559523
test ebx, ebx
jne 0x55957e
cmp ebp, 1
jne 0x55957e
dec edi
jmp 0x559523
cmp ebp, 1
jne 0x55957e
mov ecx, dword [esp + 0x10]
push edi
lea ebp, [esi + 1]
push ebp
call fcn.00558d40
dec edi
jmp 0x5594f8
fcom st(2)
fnstsw ax
test ah, 0x41
jne 0x559454
fcom st(1)
fnstsw ax
test ah, 5
jp 0x559454
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.00558290
add esp, 0x14
cmp eax, 1
jne 0x559408
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.00558290
add esp, 0x14
cmp eax, 1
jne 0x559430
mov ebp, eax
cmp ebx, 1
jne 0x5594cc
test ebp, ebp
jne 0x559443
dec esi
jmp 0x559523
cmp ebp, 1
jne 0x55957e
lea ebp, [esi - 1]
jmp 0x5594ec
fcom st(2)
fnstsw ax
fstp st(2)
test ah, 5
jp 0x55955b
fcompp
fnstsw ax
test ah, 0x41
jne 0x55957e
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.00558290
add esp, 0x14
cmp eax, 1
jne 0x559498
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.00558290
add esp, 0x14
cmp eax, 1
jne 0x5594c0
mov ebp, eax
cmp ebx, 1
jne 0x5594cc
test ebp, ebp
jne 0x5594e0
inc esi
jmp 0x559523
test ebx, ebx
jne 0x55957e
cmp ebp, 1
jne 0x55957e
inc edi
jmp 0x559523
cmp ebp, 1
jne 0x55957e
lea ebp, [esi + 1]
mov ecx, dword [esp + 0x10]
push edi
push ebp
call fcn.00558d40
inc edi
push edi
push esi
mov ebx, eax
call fcn.00558d40
test ebx, ebx
je 0x55957e
test eax, eax
je 0x55957e
cmp byte [ebx + 0x1c], 1
je 0x55957e
cmp byte [ebx + 0x1d], 0
jne 0x55957e
cmp byte [eax + 0x1c], 1
je 0x55957e
cmp byte [eax + 0x1d], 0
jne 0x55957e
mov esi, ebp
cmp dword [esp + 0x6c], 0xc350
jge 0x55957e
jmp 0x55906c
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