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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
push 0xffffffffffffffff
push 0x7712c9
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x4e8
push ebx
push esi
push edi
push fcn.004022d0
push 0x40c590
push 6
push 0xc0
lea eax, [esp + 0x80]
push eax
call fcn.0075c18d
mov ecx, dword [0x88d218]
xor eax, eax
xor esi, esi
cmp ecx, eax
mov dword [esp + 0x4fc], eax
mov dword [esp + 0x18], esi
mov dword [esp + 0x20], eax
jle 0x41baea
mov edi, dword [ebp + 0xc]
jmp 0x41b8c0
mov esi, dword [esp + 0x18]
lea esp, [esp]
mov ebx, dword [eax*4 + 0x88d21c]
push 0
push edi
lea ecx, [ebx + 0x68]
push ecx
lea edx, [ebx + 0x60]
push edx
mov dword [esp + 0x3c], ebx
call fcn.0043d480
add esp, 0x10
test eax, eax
je 0x41bacf
cmp word [ebx + 0x34], 0
mov byte [esp + 0x17], 0
mov dword [esp + 0x10], 0
jle 0x41bacf
lea eax, [esi + esi*2]
shl eax, 6
lea ecx, [esp + eax + 0x70]
mov dword [esp + 0x24], ecx
lea esp, [esp]
mov al, byte [esp + 0x17]
test al, al
jne 0x41bacf
mov edx, dword [esp + 0x10]
imul edx, edx, 0x38
movsx eax, word [edx + ebx + 0xa6]
movsx ecx, word [edx + ebx + 0xa4]
lea esi, [edx + ebx + 0x8c]
movsx edx, word [esi + 0x12]
mov dword [esp + 0x1c], eax
mov eax, dword [ebp + 0x10]
shl edx, 0xd
fild dword [esp + 0x1c]
mov dword [esp + 0x1c], ecx
fmul dword [0x81e7fc]
fst dword [esp + 0x30]
fild dword [esp + 0x1c]
mov dword [esp + 0x1c], edx
fmul dword [0x81e7fc]
fst dword [esp + 0x28]
fxch st(1)
fmul dword [eax + 4]
fxch st(1)
fmul dword [eax]
faddp st(1)
fstp dword [esp + 0x34]
fild dword [esp + 0x1c]
fmul dword [0x784278]
fsubr dword [edi + 8]
fabs
fcomp dword [0x783d44]
fnstsw ax
test ah, 5
jp 0x41ba8a
push edi
mov ecx, esi
call fcn.0040cd70
fcomp dword [0x7d7d3c]
fnstsw ax
test ah, 0x41
jp 0x41ba8a
fld dword [esp + 0x30]
push ecx
fld dword [esp + 0x2c]
mov ecx, esi
fld dword [edi + 4]
fsub dword [esi + 4]
fmul st(2)
fld dword [edi]
fsub dword [esi]
fmul st(2)
faddp st(1)
fstp dword [esp]
fstp st(0)
fstp st(0)
call fcn.0040ce80
fcomp dword [0x7d7d3c]
fnstsw ax
test ah, 0x41
jp 0x41ba8a
mov eax, dword [ebp + 0x20]
xor ecx, ecx
sub eax, ecx
jne 0x41ba8a
fld dword [esp + 0x34]
mov dword [esp + 0x38], ecx
fcomp dword [0x7d7d3c]
mov byte [esp + 0x3c], 1
mov dword [esp + 0x60], ecx
fnstsw ax
test ah, 0x41
jne 0x41ba1b
mov al, 1
jmp 0x41ba1d
xor al, al
mov ecx, dword [ebp + 0x1c]
mov edx, dword [ebp + 0x18]
push ecx
push eax
mov eax, dword [ebp + 0x14]
push edx
push eax
lea ecx, [esp + 0x48]
push esi
push ecx
call fcn.0041b260
fld dword [ebp + 0x18]
mov edx, dword [ebp + 0x14]
fsub dword [esp + 0x80]
add esp, 0x18
push edx
push ecx
mov ecx, dword [ebp + 8]
fstp dword [esp]
mov bl, al
lea eax, [esp + 0x40]
push eax
call fcn.0040c650
test bl, bl
mov byte [esp + 0x17], 1
je 0x41ba86
mov ebx, dword [esp + 0x24]
push ecx
mov ecx, ebx
call fcn.0040a300
mov eax, dword [esp + 0x18]
inc eax
add ebx, 0xc0
cmp eax, 6
mov dword [esp + 0x18], eax
mov dword [esp + 0x24], ebx
jge 0x41bae6
mov ebx, dword [esp + 0x2c]
fld dword [esi]
fsub dword [edi]
fld dword [esi + 4]
fsub dword [edi + 4]
fld st(0)
fmul st(1)
fld st(2)
fmul st(3)
faddp st(1)
fsqrt
fstp st(2)
fstp st(0)
fmul dword [0x7851c0]
call fcn.0075bc00
cmp eax, 1
jge 0x41bab9
mov eax, 1
mov ecx, dword [esp + 0x10]
movsx edx, word [ebx + 0x34]
add ecx, eax
cmp ecx, edx
mov dword [esp + 0x10], ecx
jl 0x41b910
mov eax, dword [esp + 0x20]
mov ecx, dword [0x88d218]
inc eax
cmp eax, ecx
mov dword [esp + 0x20], eax
jl 0x41b8b8
mov esi, dword [esp + 0x18]
or edi, 0xffffffff
xor ebx, ebx
cmp esi, 4
mov dword [esp + 0x10], 0
mov ecx, edi
jl 0x41bba4
mov esi, 3
lea edx, [esp + 0x138]
test ecx, ecx
jl 0x41bb23
fld dword [edx - 0xc0]
fcomp dword [esp + 0x10]
fnstsw ax
test ah, 5
jp 0x41bb2f
mov eax, dword [edx - 0xc0]
mov ecx, ebx
mov dword [esp + 0x10], eax
test ecx, ecx
jl 0x41bb40
fld dword [edx]
fcomp dword [esp + 0x10]
fnstsw ax
test ah, 5
jp 0x41bb49
mov eax, dword [edx]
lea ecx, [esi - 2]
mov dword [esp + 0x10], eax
test ecx, ecx
jl 0x41bb5e
fld dword [edx + 0xc0]
fcomp dword [esp + 0x10]
fnstsw ax
test ah, 5
jp 0x41bb6b
mov eax, dword [edx + 0xc0]
lea ecx, [esi - 1]
mov dword [esp + 0x10], eax
test ecx, ecx
jl 0x41bb80
fld dword [edx + 0x180]
fcomp dword [esp + 0x10]
fnstsw ax
test ah, 5
jp 0x41bb8c
mov eax, dword [edx + 0x180]
mov ecx, esi
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x18]
add esi, 4
add ebx, 4
add edx, 0x300
cmp esi, eax
jl 0x41bb0e
mov esi, dword [esp + 0x18]
cmp ebx, esi
jge 0x41bbda
lea edx, [ebx + ebx*2]
shl edx, 6
lea edx, [esp + edx + 0x78]
test ecx, ecx
jl 0x41bbc7
fld dword [edx]
fcomp dword [esp + 0x10]
fnstsw ax
test ah, 5
jp 0x41bbcf
mov eax, dword [edx]
mov ecx, ebx
mov dword [esp + 0x10], eax
inc ebx
add edx, 0xc0
cmp ebx, esi
jl 0x41bbb6
test ecx, ecx
jl 0x41bc25
lea ecx, [ecx + ecx*2]
shl ecx, 6
lea edx, [esp + ecx + 0x70]
mov ecx, dword [ebp + 8]
push edx
call fcn.0040a300
push fcn.004022d0
push 6
push 0xc0
lea eax, [esp + 0x7c]
push eax
mov dword [esp + 0x50c], edi
call fcn.0075c12d
mov al, 1
mov ecx, dword [esp + 0x4f4]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push fcn.004022d0
push 6
push 0xc0
lea ecx, [esp + 0x7c]
push ecx
mov dword [esp + 0x50c], edi
call fcn.0075c12d
mov ecx, dword [esp + 0x4f4]
pop edi
pop esi
xor al, al
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret