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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x1bc
mov eax, dword [ebp + 0x10]
push ebx
push esi
mov esi, dword [eax + 0x18]
push edi
mov edi, dword [ebp + 0xc]
mov edx, dword [edi + 4]
mov eax, dword [edx]
xor ebx, ebx
xor ecx, ecx
cmp eax, ebx
mov dword [esp + 0x24], esi
jle 0x45a60e
add edx, 4
lea esp, [esp]
cmp dword [edx], esi
je 0x45a63f
add ecx, 1
add edx, 4
cmp ecx, eax
jl 0x45a600
mov dword [esp + 0x10], ebx
mov dword [esp + 0x14], ebx
mov eax, dword [edi + 0x14]
mov esi, dword [edi + 0x1c]
lea ecx, [eax + eax*4]
lea eax, [esi + ecx*8]
cmp esi, eax
mov dword [esp + 0x28], eax
mov dword [esp + 0x20], esi
jae 0x45a808
fldz
mov ebx, dword [ebp + 0x18]
fld qword [0x4cf480]
jmp 0x45a659
mov eax, 1
xor edx, edx
call fcn.004b8f40
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], edx
jmp 0x45a616
fldz
fxch st(1)
cmp word [esi + 0x10], 0x100
jne 0x45a7f3
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
not eax
and eax, dword [esi + 0x20]
not ecx
and ecx, dword [esi + 0x24]
and eax, dword [ebp + 0x14]
and ecx, ebx
or eax, ecx
jne 0x45a7f3
mov ecx, dword [esi + 0xc]
mov eax, dword [ecx + 0x160]
mov edx, dword [ecx + 0x164]
and eax, dword [esp + 0x10]
and edx, dword [esp + 0x14]
or eax, edx
je 0x45a7f3
mov edi, dword [ecx + 0x1c]
fld st(1)
mov ecx, dword [ecx + 0x14]
fst qword [esp + 0x30]
lea edx, [ecx + ecx*4]
fxch st(2)
lea eax, [edi + edx*8]
fst qword [esp + 0x38]
xor ecx, ecx
cmp edi, eax
mov dword [esp + 0x2c], eax
mov dword [esp + 0x18], ecx
mov dword [esp + 0x1c], ecx
jae 0x45a783
cmp word [edi + 0x10], 0x200
jne 0x45a6de
mov ecx, dword [edi + 0xc]
jmp 0x45a713
mov edx, dword [esp + 0x24]
cmp dword [edi + 8], edx
jne 0x45a778
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax]
mov edx, dword [eax + 4]
mov dword [esp + 0x68], ecx
mov dword [esp + 0x6c], edx
mov byte [esp + 0x78], 0x45
mov dword [esp + 0x84], edi
mov dword [esp + 0x7c], 1
lea ecx, [esp + 0x68]
mov eax, dword [ebp + 0x14]
fstp st(0)
mov esi, dword [ebp + 8]
fstp st(1)
push ebx
fstp st(0)
push eax
mov eax, dword [ebp + 0x10]
push ecx
lea ecx, [esp + 0x4c]
call fcn.0045b340
fld qword [esp + 0x5c]
fadd qword [esp + 0x3c]
mov ecx, dword [ebp + 0x20]
mov eax, dword [esp + 0x70]
or dword [esp + 0x28], eax
mov edx, dword [esp + 0x6c]
fst qword [esp + 0x3c]
fld qword [esp + 0x64]
or dword [esp + 0x24], edx
fadd qword [esp + 0x44]
mov esi, dword [esp + 0x2c]
add esp, 0xc
fst qword [esp + 0x38]
fld qword [ecx + 0x10]
fcomp st(2)
fnstsw ax
fld qword [0x4cf480]
test ah, 0x41
fxch st(1)
jnp 0x45a786
mov eax, dword [esp + 0x2c]
add edi, 0x28
cmp edi, eax
jb 0x45a6d1
mov ecx, dword [ebp + 0x20]
cmp dword [ebp + 0x1c], 0
je 0x45a7c2
fld1
fld st(0)
fld st(3)
fxch st(3)
fcom st(4)
fnstsw ax
test ah, 0x41
je 0x45a7a7
fstp st(3)
fstp st(1)
jmp 0x45a7be
fxch st(3)
fxch st(1)
fxch st(1)
fadd st(2)
fxch st(3)
fmul st(4)
fcom st(1)
fnstsw ax
test ah, 5
jnp 0x45a7a3
fstp st(0)
fstp st(1)
fxch st(1)
fmul st(1)
faddp st(3)
fld qword [ecx + 0x10]
fcomp st(3)
fnstsw ax
test ah, 0x41
jne 0x45a7f1
mov edx, dword [esp + 0x18]
fxch st(2)
mov eax, dword [esp + 0x1c]
fstp qword [ecx + 0x10]
fxch st(1)
mov dword [ecx + 0x20], edx
fstp qword [ecx + 0x18]
mov dword [ecx + 0x24], eax
mov dword [ecx], 0x10000000
mov dword [ecx + 8], esi
jmp 0x45a7f5
fstp st(0)
fstp st(1)
add esi, 0x28
cmp esi, dword [esp + 0x28]
mov dword [esp + 0x20], esi
jb 0x45a655
fstp st(0)
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret