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

Disassembly:
mov eax, dword [esp + 0x2c]
sub esp, 0x28
push ebx
push ebp
inc eax
cmp eax, 6
push esi
push edi
mov esi, ecx
mov dword [esp + 0x64], eax
jne 0x5b4deb
mov eax, dword [esp + 0x3c]
mov edx, dword [esp + 0x58]
mov ecx, eax
mov dword [ecx], edx
mov edx, dword [esp + 0x5c]
mov dword [ecx + 4], edx
mov edx, dword [esp + 0x60]
mov dword [ecx + 8], edx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x28
ret 0x34
fld dword [esp + 0x4c]
mov ecx, dword [esp + 0x4c]
fadd dword [esp + 0x40]
mov edx, dword [esp + 0x50]
lea eax, [esi + 0x34]
mov dword [eax], ecx
mov ecx, dword [esp + 0x54]
fstp dword [esp + 0x40]
fld dword [esp + 0x50]
mov dword [eax + 4], edx
fadd dword [esp + 0x44]
mov edx, dword [esp + 0x40]
mov dword [eax + 8], ecx
lea eax, [esi + 0x40]
fstp dword [esp + 0x44]
mov ecx, dword [esp + 0x44]
fld dword [esp + 0x54]
mov dword [eax], edx
fadd dword [esp + 0x48]
mov dword [eax + 4], ecx
mov dword [esi + 0x2c], 0
mov ecx, esi
fstp dword [esp + 0x48]
mov edx, dword [esp + 0x48]
mov dword [eax + 8], edx
mov eax, dword [esi + 0x50]
mov dword [esp + 0x10], eax
mov eax, dword [0xb1a20c]
test eax, eax
je 0x5b4e5d
call fcn.005b1e30
jmp 0x5b4e70
mov al, byte [esi + 0x24]
test al, al
je 0x5b4e6b
call fcn.005aa030
jmp 0x5b4e70
call fcn.005ad0c0
mov al, byte [esp + 0x6c]
test al, al
je 0x5b4e90
mov ecx, esi
call fcn.005b0480
mov ecx, esi
call fcn.005b1200
push 1
mov ecx, esi
call fcn.005b1c40
nop
mov ebp, dword [esi + 0x2c]
test ebp, ebp
mov ecx, dword [esp + 0x10]
mov dword [esi + 0x50], ecx
jne 0x5b4ecc
mov edx, dword [esp + 0x68]
mov eax, dword [esp + 0x3c]
mov dword [edx], 4
mov edx, dword [esp + 0x40]
mov ecx, eax
mov dword [ecx], edx
mov edx, dword [esp + 0x44]
mov dword [ecx + 4], edx
mov edx, dword [esp + 0x48]
mov dword [ecx + 8], edx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x28
ret 0x34
xor eax, eax
test ebp, ebp
jle 0x5b4ef4
mov ebx, dword [esi + 0x28]
lea ecx, [ebx + 0x28]
jmp 0x5b4ee0
cmp dword [ecx], 1
je 0x5b4fa6
mov edx, dword [esi + 0x2c]
inc eax
add ecx, 0x2c
cmp eax, edx
jl 0x5b4ee0
or edi, 0xffffffff
xor edx, edx
test ebp, ebp
mov dword [esp + 0x64], 0x4e6e6b28
jle 0x5b4f5e
mov ebp, dword [esp + 0x68]
xor ebx, ebx
jmp 0x5b4f10
mov ecx, dword [esi + 0x28]
fld dword [ecx + ebx]
add ecx, ebx
fcomp dword [esp + 0x64]
fnstsw ax
test ah, 5
jp 0x5b4f2a
mov eax, dword [ecx + 0x28]
test eax, eax
je 0x5b4f3f
fld dword [ecx]
fcomp dword [esp + 0x64]
fnstsw ax
test ah, 5
jp 0x5b4f4a
mov eax, dword [ecx + 0x28]
cmp eax, 2
jne 0x5b4f4a
mov ecx, dword [ecx]
mov dword [esp + 0x64], ecx
mov edi, edx
mov dword [ebp], eax
mov eax, dword [esi + 0x2c]
inc edx
add ebx, 0x2c
cmp edx, eax
jl 0x5b4f10
cmp edi, 0xffffffff
jne 0x5b519d
fld dword [esp + 0x40]
fsub dword [esp + 0x4c]
fstp dword [esp + 0x58]
fld dword [esp + 0x44]
fsub dword [esp + 0x50]
fstp dword [esp + 0x5c]
fld dword [esp + 0x48]
fsub dword [esp + 0x54]
fstp dword [esp + 0x60]
mov eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0x58]
mov edx, eax
mov dword [edx], ecx
mov ecx, dword [esp + 0x5c]
mov dword [edx + 4], ecx
mov ecx, dword [esp + 0x60]
mov dword [edx + 8], ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x28
ret 0x34
mov edi, eax
xor edx, edx
xor ecx, ecx
imul eax, eax, 0x2c
mov ebp, eax
fld dword [ecx + ebx]
fcomp dword [ebx + ebp]
fnstsw ax
test ah, 5
jp 0x5b4fc9
cmp dword [ecx + ebx + 0x28], 1
jne 0x5b4fc9
mov edi, edx
mov ebp, ecx
mov eax, dword [esi + 0x2c]
inc edx
add ecx, 0x2c
cmp edx, eax
jl 0x5b4fb1
fld dword [esp + 0x40]
imul edi, edi, 0x2c
fsub dword [esp + 0x4c]
fstp dword [esp + 0x2c]
fld dword [esp + 0x44]
fsub dword [esp + 0x50]
lea eax, [esp + 0x40]
fstp dword [esp + 0x30]
push eax
fld dword [esp + 0x4c]
lea ecx, [edi + ebx + 0x1c]
fsub dword [esp + 0x58]
push ecx
lea edx, [edi + ebx + 0x10]
push edx
fstp dword [esp + 0x40]
call fcn.005770ce
mov eax, dword [esi + 0x28]
fld dword [esi + 0x4c]
lea eax, [eax + edi + 0x10]
fadd dword [0x64fe84]
add esp, 0xc
fsubrp st(1)
fld st(0)
fmul dword [eax]
fstp dword [esp + 0x20]
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x14], ecx
fld st(0)
fmul dword [eax + 4]
fstp dword [esp + 0x24]
mov edx, dword [esp + 0x24]
mov dword [esp + 0x18], edx
fmul dword [eax + 8]
fstp dword [esp + 0x28]
mov eax, dword [esp + 0x28]
mov dword [esp + 0x1c], eax
fld dword [esp + 0x1c]
fmul dword [esp + 0x1c]
fld dword [esp + 0x18]
fmul dword [esp + 0x18]
faddp st(1)
fld dword [esp + 0x14]
fmul dword [esp + 0x14]
faddp st(1)
fsqrt
fcom dword [0x64fed4]
fnstsw ax
test ah, 0x41
jp 0x5b5095
fstp st(0)
fld dword [0x64fe74]
fld dword [0x64fe74]
fld dword [0x64fe74]
jmp 0x5b50bb
fld dword [0x64fe64]
fdiv st(1)
fstp dword [esp + 0x4c]
fstp st(0)
fld dword [esp + 0x4c]
fmul dword [esp + 0x14]
fld dword [esp + 0x18]
fmul dword [esp + 0x4c]
fld dword [esp + 0x1c]
fmul dword [esp + 0x4c]
fadd st(2)
fmul dword [0x64fe74]
fadd st(1)
fcomp dword [0x65a93c]
fnstsw ax
fstp st(0)
test ah, 0x41
fstp st(0)
jp 0x5b50e5
mov ecx, dword [esp + 0x68]
mov dword [ecx], 1
jmp 0x5b4f82
fld dword [esp + 0x20]
mov edx, dword [esp + 0x6c]
fadd dword [esp + 0x40]
mov eax, dword [esp + 0x68]
fld dword [esp + 0x24]
push edx
fadd dword [esp + 0x48]
mov edx, dword [esp + 0x5c]
fld dword [esp + 0x2c]
push eax
fadd dword [esp + 0x50]
mov edi, dword [esp + 0x44]
mov dword [eax], 1
mov eax, dword [esp + 0x6c]
fstp dword [esp + 0x30]
push eax
mov eax, dword [esp + 0x68]
fxch st(1)
fsub dword [esp + 0x38]
sub esp, 0xc
mov ecx, esp
mov dword [ecx], edx
mov edx, dword [esp + 0x78]
fstp dword [esp + 0x64]
mov dword [ecx + 4], eax
fsub dword [esp + 0x48]
mov dword [ecx + 8], edx
mov ecx, dword [esp + 0x64]
sub esp, 0xc
fstp dword [esp + 0x74]
mov edx, dword [esp + 0x74]
fld dword [esp + 0x4c]
mov eax, esp
fsub dword [esp + 0x58]
mov dword [eax], ecx
mov dword [eax + 4], edx
sub esp, 0xc
fstp dword [esp + 0x84]
mov ecx, dword [esp + 0x84]
mov dword [eax + 8], ecx
mov eax, dword [esp + 0x5c]
mov ecx, dword [esp + 0x60]
mov edx, esp
mov dword [edx], eax
mov eax, dword [esp + 0x64]
mov dword [edx + 4], ecx
push edi
mov ecx, esi
mov dword [edx + 8], eax
call fcn.005b4db0
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x28
ret 0x34
mov edx, dword [esi + 0x28]
fld dword [esi + 0x50]
imul edi, edi, 0x2c
fadd dword [edi + edx + 8]
fstp dword [esp + 0x50]
mov ecx, dword [edi + edx + 4]
lea eax, [edi + edx + 4]
mov edx, dword [eax + 8]
mov dword [esi + 0x40], ecx
mov dword [esp + 0x54], edx
mov edx, dword [esp + 0x50]
mov dword [esi + 0x44], edx
mov edx, dword [esi + 0x50]
mov dword [esp + 0x4c], ecx
mov ecx, dword [esp + 0x54]
mov dword [esi + 0x48], ecx
mov ecx, dword [eax]
fld dword [eax + 8]
mov dword [esp + 0x50], edx
pop edi
fld dword [esp + 0x4c]
pop esi
fadd dword [eax + 4]
mov eax, dword [esp + 0x34]
pop ebp
mov dword [eax], ecx
fstp dword [eax + 4]
pop ebx
fstp dword [eax + 8]
add esp, 0x28
ret 0x34