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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x94
push ebx
mov ebx, dword [ebp + 0xc]
fild dword [ebx]
push esi
push edi
mov edi, dword [ebp + 8]
sub esp, 0x10
fstp qword [esp + 8]
mov dword [esp + 0x2c], ecx
fild dword [edi]
fstp qword [esp]
call fcn.0046a0f9
fadd qword [0x4a79e0]
call fcn.00469dd0
mov esi, eax
mov dword [esp + 0x30], esi
fild dword [esp + 0x30]
fstp qword [esp + 0x48]
fild dword [ebx]
fstp qword [esp + 8]
fild dword [edi]
fstp qword [esp]
call fcn.0046a0f9
fsub qword [esp + 0x48]
mov eax, dword [esp + 0x2c]
mov ecx, dword [eax + 0x180]
mov edx, dword [eax + 0x184]
mov edi, dword [edi]
fabs
mov ebx, dword [ebx]
fstp qword [esp + 0x58]
fld qword [eax + 0x178]
mov dword [esp + 0x70], ecx
fsub qword [eax + 0x168]
mov ecx, dword [eax + 0x188]
mov dword [esp + 0x74], edx
mov edx, dword [eax + 0x18c]
fstp qword [esp + 8]
mov dword [esp + 0x90], ecx
fld qword [eax + 0x170]
mov dword [esp + 0x94], edx
fsub qword [eax + 0x160]
fstp qword [esp]
call fcn.0042b550
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x2c]
fld qword [eax + 0x188]
fsub qword [eax + 0x168]
fstp qword [esp + 8]
fld qword [eax + 0x180]
fsub qword [eax + 0x160]
fstp qword [esp]
call fcn.0042b550
add esp, 0x10
mov dword [esp + 0x44], eax
xor eax, eax
mov dword [esp + 0x18], eax
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x1c]
fld qword [eax + 0x190]
fld qword [eax + 0x190]
fdiv qword [0x4b0690]
fmul qword [0x4a8720]
call fcn.00469dd0
mov edx, dword [esp + 0x1c]
mov ecx, 1
sub ecx, eax
mov dword [esp + 0x20], ecx
fild dword [esp + 0x20]
fmul qword [0x4b0690]
fmul qword [0x4a79e0]
fsub st(1)
fld qword [edx + 0x198]
fsub st(2)
fcomp qword [0x4b0690]
fnstsw ax
test ah, 0x41
jne 0x45726b
fld st(1)
fcomp qword [edx + 0x198]
fnstsw ax
test ah, 1
je 0x45726b
movzx eax, word [esp + 0x10]
add eax, 0xffffffcf
cmp eax, 3
ja case.default.0x4571a5
jmp dword [eax*4 + 0x457638]
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
add eax, edi
mov dword [esp + 0x18], eax
mov eax, esi
sub eax, ebx
add ecx, eax
mov dword [esp + 0x14], ecx
xor edi, edi
mov ebx, esi
mov dword [esp + 0x10], 0x32
jmp case.default.0x4571a5
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
add ecx, ebx
add edi, esi
mov dword [esp + 0x14], ecx
add eax, edi
mov ecx, esi
neg ecx
mov dword [esp + 0x18], eax
mov edi, ecx
mov dword [esp + 0x10], 0x33
jmp 0x457242
mov eax, dword [esp + 0x18]
sub eax, edi
mov edi, dword [esp + 0x14]
add ebx, esi
add edi, ebx
mov dword [esp + 0x18], eax
mov dword [esp + 0x14], edi
mov eax, esi
xor edi, edi
neg eax
mov ebx, eax
mov dword [esp + 0x10], 0x34
jmp case.default.0x4571a5
mov eax, dword [esp + 0x14]
mov ecx, esi
sub ecx, edi
mov edi, dword [esp + 0x18]
add edi, ecx
sub eax, ebx
mov dword [esp + 0x18], edi
mov dword [esp + 0x14], eax
mov edi, esi
mov dword [esp + 0x10], 0x31
xor ebx, ebx
faddp st(1)
fld qword [0x4b0690]
fmul qword [0x4a79e0]
fld qword [edx + 0x198]
fsub st(2)
fcomp qword [0x4b0690]
fnstsw ax
test ah, 0x41
je 0x457181
mov ecx, dword [esp + 0x44]
cmp word [esp + 0x10], cx
je 0x457350
lea ebx, [ebx]
fld st(1)
fcomp qword [edx + 0x198]
fnstsw ax
test ah, 1
je 0x457350
movzx eax, word [esp + 0x10]
add eax, 0xffffffcf
cmp eax, 3
ja case.default.0x4572a4
jmp dword [eax*4 + 0x457648]
mov eax, dword [esp + 0x18]
add eax, edi
mov edi, dword [esp + 0x14]
mov dword [esp + 0x18], eax
mov eax, esi
sub eax, ebx
add edi, eax
mov dword [esp + 0x14], edi
xor edi, edi
mov ebx, esi
mov dword [esp + 0x10], 0x32
jmp case.default.0x4572a4
mov eax, dword [esp + 0x18]
add edi, esi
add eax, edi
mov dword [esp + 0x18], eax
add dword [esp + 0x14], ebx
mov eax, esi
neg eax
mov edi, eax
mov dword [esp + 0x10], 0x33
jmp 0x457335
sub dword [esp + 0x18], edi
mov eax, dword [esp + 0x14]
add ebx, esi
add eax, ebx
mov dword [esp + 0x14], eax
mov eax, esi
xor edi, edi
neg eax
mov ebx, eax
mov dword [esp + 0x10], 0x34
jmp case.default.0x4572a4
mov eax, esi
sub eax, edi
mov edi, dword [esp + 0x18]
add edi, eax
mov eax, dword [esp + 0x14]
sub eax, ebx
mov dword [esp + 0x18], edi
mov dword [esp + 0x14], eax
mov edi, esi
mov dword [esp + 0x10], 0x31
xor ebx, ebx
cmp word [esp + 0x10], cx
faddp st(1)
fld qword [0x4b0690]
fmul qword [0x4a79e0]
jne 0x457280
fstp st(0)
mov dword [esp + 0x20], 0
fstp st(0)
mov dword [esp + 0x68], 0
fld qword [0x4a8720]
mov dword [esp + 0x6c], 0x40590000
fst qword [esp + 0x88]
mov dword [esp + 0x58], 0
fld qword [esp + 0x60]
mov dword [esp + 0x5c], 0x40590000
fabs
fstp qword [esp + 0x90]
fld qword [esp + 0x80]
fabs
fstp qword [esp + 0x98]
fld qword [esp + 0x48]
fmul qword [0x4b06d8]
fstp qword [esp + 0x48]
fld qword [esp + 0x90]
lea edx, [esp + 0x10]
fcomp qword [esp + 0x98]
fnstsw ax
test ah, 0x41
jp 0x4573e9
fadd qword [esp + 0x60]
mov eax, dword [esp + 0x3c]
lea ecx, [esp + 0x24]
push ecx
mov ecx, dword [esp + 0x3c]
push edx
sub esp, 8
fstp qword [esp]
push eax
push ecx
jmp 0x457406
fadd qword [esp + 0x80]
mov ecx, dword [esp + 0x3c]
push edx
mov edx, dword [esp + 0x3c]
lea eax, [esp + 0x28]
push eax
sub esp, 8
fstp qword [esp]
push ecx
push edx
call fcn.00456da0
fstp qword [esp + 0x68]
mov eax, dword [esp + 0x5c]
add esp, 0x18
cmp ax, 0x32
je 0x457422
cmp ax, 0x33
jne 0x457436
mov ecx, dword [esp + 0x10]
test ecx, ecx
jle 0x457430
neg ecx
mov dword [esp + 0x10], ecx
cmp ax, 0x33
je 0x45743c
cmp ax, 0x34
jne 0x45744a
mov eax, dword [esp + 0x24]
test eax, eax
jle 0x45744a
neg eax
mov dword [esp + 0x24], eax
mov ecx, dword [ebp + 8]
mov edx, dword [ecx]
mov eax, dword [esp + 0x10]
mov esi, dword [esp + 0x1c]
sub eax, edx
mov edx, dword [esp + 0x24]
mov dword [esp + 0x28], eax
fild dword [esp + 0x28]
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax]
movzx eax, byte [esi + 0x528]
fsubr qword [esi + 0x510]
sub edx, ecx
sub eax, 0x58
mov dword [esp + 0x28], edx
fst qword [esp + 0x70]
fabs
fstp qword [esp + 0x30]
fild dword [esp + 0x28]
fsubr qword [esi + 0x518]
fabs
fstp qword [esp + 0x28]
je 0x4574c8
dec eax
je 0x4574b1
mov dword [esp + 0x30], 0
mov dword [esp + 0x34], 0
jmp 0x4574e7
fld qword [esp + 0x30]
fcomp qword [0x4a7a18]
fnstsw ax
test ah, 0x41
jne 0x4574e7
fld qword [esp + 0x30]
jmp 0x4574dd
fld qword [esp + 0x28]
fcomp qword [0x4a7a18]
fnstsw ax
test ah, 0x41
jne 0x4574e7
fld qword [esp + 0x28]
fmul qword [0x4a9970]
fstp qword [esp + 0x30]
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x28]
mov eax, dword [esp + 0x74]
push ecx
mov ecx, dword [esp + 0x74]
push edx
push eax
push ecx
call fcn.0046a0f9
fadd qword [esp + 0x40]
fld qword [esp + 0x60]
add esp, 0x10
fmul qword [0x4af8a8]
fadd qword [esp + 0x48]
fadd st(1)
fcomp qword [esi + 0x530]
fnstsw ax
test ah, 5
jnp 0x45752c
mov eax, dword [esp + 0x20]
test eax, eax
jne 0x45755a
mov edx, dword [esp + 0x50]
fstp qword [esp + 0x68]
mov eax, dword [esp + 0x54]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x58], edx
mov edx, dword [esp + 0x24]
mov dword [esp + 0x20], 1
mov dword [esp + 0x5c], eax
mov dword [esp + 0x78], ecx
mov dword [esp + 0x7c], edx
jmp 0x45755c
fstp st(0)
fld qword [esp + 0x88]
fadd qword [str.333333]
fcom qword [0x4a8740]
fst qword [esp + 0x88]
fnstsw ax
test ah, 5
jnp 0x4573b4
mov ecx, dword [esp + 0x78]
fstp st(0)
mov esi, dword [esp + 0x7c]
fld qword [esp + 0x58]
fmul qword [0x4af8a8]
mov eax, edi
mov edi, dword [esp + 0x18]
sub eax, ecx
cdq
fadd qword [esp + 0x48]
xor eax, edx
sub eax, edx
add edi, eax
fadd qword [esp + 0x68]
mov eax, ebx
mov ebx, dword [esp + 0x14]
sub eax, esi
fld st(0)
cdq
xor eax, edx
sub eax, edx
add ebx, eax
mov eax, esi
cdq
mov esi, eax
xor esi, edx
sub esi, edx
mov eax, ecx
cdq
xor eax, edx
sub eax, edx
mov edx, dword [esp + 0x1c]
xor ecx, ecx
cmp eax, esi
fcomp qword [edx + 0x530]
setg cl
fnstsw ax
add ecx, 0x58
test ah, 5
jp 0x45762a
mov eax, dword [ebp + 0x10]
cmp cx, 0x58
mov ecx, dword [ebp + 0x14]
jne 0x45760f
mov dword [eax], edi
mov word [ecx], 0x58
fstp qword [edx + 0x530]
mov eax, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x10
mov dword [eax], ebx
mov word [ecx], 0x59
fstp qword [edx + 0x530]
mov eax, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x10
pop edi
fstp st(0)
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret 0x10