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

Disassembly:
mov ecx, dword [ecx + 0x1f4]
test ecx, ecx
jne 0x55004f
xor eax, eax
ret 0x14
jmp 0x554090
sub esp, 0x14c
mov eax, dword [0x6e50b4]
xor eax, esp
mov dword [esp + 0x148], eax
push ebx
push ebp
push esi
mov esi, dword [esp + 0x15c]
fld dword [esi]
mov eax, dword [esp + 0x164]
fld qword [0x5b69f8]
mov ebx, dword [esp + 0x160]
fdiv st(1), st(0)
mov dword [esp + 0x1c], ecx
mov ecx, dword [esp + 0x16c]
push edi
mov dword [esp + 0x18], eax
mov dword [esp + 0x30], ecx
fxch st(1)
call fcn.00582f70
fld dword [esi + 8]
fdiv st(1)
mov edi, eax
mov dword [esp + 0x28], edi
call fcn.00582f70
fld dword [ebx]
fdiv st(1)
mov ebp, eax
mov dword [esp + 0x24], ebp
call fcn.00582f70
fld dword [ebx + 8]
fdiv st(1)
mov esi, edi
sub esi, eax
call fcn.00582f70
mov ebx, ebp
sub ebx, eax
mov eax, esi
cdq
mov ecx, eax
xor ecx, edx
sub ecx, edx
mov eax, ebx
cdq
xor eax, edx
sub eax, edx
mov dword [esp + 0x34], ecx
mov dword [esp + 0x3c], eax
mov dword [esp + 0x1c], ecx
cmp ecx, eax
jg 0x554136
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x20]
mov ecx, dword [eax + 4]
mov dword [esp + 0x14], edi
mov dword [esp + 0x10], ebp
mov dword [esp + 0x38], ecx
cmp edi, ecx
jae 0x55416c
mov edx, dword [eax + 8]
mov dword [esp + 0x2c], edx
cmp ebp, edx
jae 0x55416c
mov eax, dword [eax + 0xc]
imul edx, ebp
lea ecx, [edx + edi]
imul ecx, ecx, 0x2c
add ecx, eax
mov dword [esp + 0x40], eax
jne 0x5541d9
mov eax, dword [esp + 0x18]
test eax, eax
je 0x55418a
fild dword [esp + 0x28]
fmul st(1)
fstp dword [eax]
fldz
fstp dword [eax + 4]
fimul dword [esp + 0x24]
fstp dword [eax + 8]
jmp 0x55418c
fstp st(0)
push 0xff
lea edx, [esp + 0x5d]
push 0
push edx
mov byte [esp + 0x64], 0
call fcn.005825d0
mov eax, dword [esp + 0x3c]
add eax, 0x131
push eax
push ebp
push edi
lea ecx, [esp + 0x70]
push str._d__d__s
push ecx
call fcn.00582c5f
lea edx, [esp + 0x78]
push edx
push 0x182
push 0x5c4278
call fcn.0052b690
add esp, 0x2c
jmp 0x554385
cmp byte [ecx + 0x1c], 1
je 0x5541e9
cmp byte [ecx + 0x1d], 0
je 0x554365
xor eax, eax
xor ecx, ecx
test esi, esi
jle 0x5541f6
lea esi, [eax + 1]
jmp 0x5541fa
neg esi
sbb esi, esi
neg esi
mov dword [esp + 0x4c], esi
test ebx, ebx
jle 0x55420b
mov ebx, 1
jmp 0x55420f
neg ebx
sbb ebx, ebx
mov esi, dword [esp + 0x1c]
neg ebx
mov ebp, ebx
xor ebx, ebx
mov dword [esp + 0x44], ebp
mov dword [esp + 0x20], ebx
test esi, esi
js 0x554365
mov edi, dword [esp + 0x2c]
imul edi, ebp
mov ebp, dword [esp + 0x10]
mov dword [esp + 0x54], edi
mov edi, dword [esp + 0x14]
cmp ebx, 2
jg 0x5542b0
add eax, dword [esp + 0x34]
add ecx, dword [esp + 0x3c]
mov dword [esp + 0x48], edi
mov dword [esp + 0x50], ebp
mov dword [esp + 0x1c], ecx
cmp eax, esi
jle 0x55425f
sub eax, esi
add edi, dword [esp + 0x4c]
cmp ecx, esi
jle 0x554271
add ebp, dword [esp + 0x44]
sub ecx, esi
add edx, dword [esp + 0x54]
mov dword [esp + 0x1c], ecx
cmp edi, dword [esp + 0x38]
jae 0x5542dd
cmp ebp, dword [esp + 0x2c]
jae 0x5542dd
lea ecx, [edx + edi]
imul ecx, ecx, 0x2c
add ecx, dword [esp + 0x40]
je 0x5542dd
cmp byte [ecx + 0x1c], 1
je 0x554299
cmp byte [ecx + 0x1d], 0
je 0x554331
mov ebx, dword [esp + 0x20]
inc ebx
mov dword [esp + 0x20], ebx
cmp ebx, esi
jg 0x554365
mov ecx, dword [esp + 0x1c]
jmp 0x55423c
mov eax, dword [esp + 0x18]
mov dword [esp + 0x10], ebp
mov dword [esp + 0x14], edi
test eax, eax
je 0x554383
fild dword [esp + 0x14]
fmul st(1)
fstp dword [eax]
fldz
fstp dword [eax + 4]
fimul dword [esp + 0x10]
fstp dword [eax + 8]
jmp 0x554385
mov eax, dword [esp + 0x18]
test eax, eax
je 0x5542fb
fild dword [esp + 0x48]
fmul st(1)
fstp dword [eax]
fldz
fstp dword [eax + 4]
fimul dword [esp + 0x50]
fstp dword [eax + 8]
jmp 0x5542fd
fstp st(0)
mov eax, dword [esp + 0x30]
add eax, 0x131
push eax
push ebp
push edi
lea ecx, [esp + 0x64]
push str._d__d__s
push ecx
call fcn.00582c5f
lea edx, [esp + 0x6c]
push edx
push 0x1c8
push 0x5c4278
call fcn.0052b690
add esp, 0x20
jmp 0x554385
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x10], ebp
mov dword [esp + 0x14], edi
test ecx, ecx
je 0x55435c
fild dword [esp + 0x14]
mov eax, 1
fmul st(1)
fstp dword [ecx]
fldz
fstp dword [ecx + 4]
fimul dword [esp + 0x10]
fstp dword [ecx + 8]
jmp 0x554387
fstp st(0)
mov eax, 1
jmp 0x554387
mov eax, dword [esp + 0x18]
test eax, eax
je 0x554383
fild dword [esp + 0x28]
fmul st(1)
fstp dword [eax]
fldz
fstp dword [eax + 4]
fimul dword [esp + 0x24]
fstp dword [eax + 8]
jmp 0x554385
fstp st(0)
xor eax, eax
mov ecx, dword [esp + 0x158]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.005825b3
add esp, 0x14c
ret 0x14