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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xffffffc0
sub esp, 0xe34
mov eax, dword [0x904a40]
mov ecx, dword [eax]
mov edx, dword [ecx + 0x94]
push ebx
push esi
push edi
push 2
push 0x11
xor edi, edi
push edi
mov esi, eax
push eax
mov dword [esp + 0xf8], esi
call edx
mov eax, dword [esi]
mov ecx, dword [eax + 0x94]
push 2
push 0x10
push edi
push esi
call ecx
mov esi, dword [ebp + 8]
cmp dword [esi + 0x14], edi
mov dword [esp + 0x50], edi
jle 0x4403ae
fld dword [0x4d6b3c]
mov dword [esp + 0x4c], edi
fld dword [0x4d69b8]
fldz
fld1
jmp 0x43faa7
xor edi, edi
fild dword [esp + 0x4c]
mov eax, dword [esi + 0x10]
cmp eax, edi
mov dword [esp + 0x64], edi
fstp dword [esp + 0xec]
mov dword [esp + 0x34], eax
jle 0x44038c
mov dword [esp + 0x54], edi
lea esp, [esp]
fild dword [esp + 0x54]
xor edx, edx
mov dword [esp + 0x28], edx
lea eax, [esp + 0x244]
fstp dword [esp + 0x38]
jmp 0x43faf9
fld dword [0x4d69b8]
fld dword [0x4d6b3c]
fxch st(3)
fxch st(1)
fxch st(2)
fild dword [esp + 0x28]
xor ecx, ecx
mov dword [esp + 0x2c], ecx
fld st(0)
fmul st(5)
fadd dword [esp + 0xec]
fxch st(1)
fmul st(4)
fst dword [esp + 0x30]
fld st(1)
fadd st(6)
fstp dword [esp + 0x58]
fadd st(4)
fstp dword [esp + 0x28]
jmp 0x43fb3e
fld dword [0x4d69b8]
fld dword [0x4d6b3c]
fxch st(4)
fxch st(1)
fxch st(3)
fxch st(1)
fxch st(2)
fxch st(1)
fild dword [esp + 0x2c]
inc ecx
mov dword [esp + 0x2c], ecx
add eax, 0xc0
fld st(0)
fmul st(6)
fadd dword [esp + 0x38]
fst dword [eax - 0xc4]
fxch st(2)
fst dword [eax - 0xc0]
fxch st(4)
fst dword [eax - 0xbc]
fxch st(3)
fst dword [eax - 0xb8]
fxch st(1)
fmul st(5)
fst dword [eax - 0xac]
fld dword [esp + 0x30]
fstp dword [eax - 0xa8]
fld st(2)
faddp st(7)
fxch st(6)
fst dword [eax - 0xa4]
fxch st(4)
fst dword [eax - 0xa0]
fxch st(3)
fst dword [eax - 0x9c]
fxch st(1)
fst dword [eax - 0x98]
fld st(6)
faddp st(6)
fxch st(5)
fst dword [eax - 0x8c]
fld dword [esp + 0x30]
fstp dword [eax - 0x88]
fxch st(2)
fst dword [eax - 0x84]
fld dword [esp + 0x58]
fstp dword [eax - 0x80]
fxch st(1)
fst dword [eax - 0x7c]
fxch st(5)
fst dword [eax - 0x78]
fxch st(6)
fst dword [eax - 0x6c]
fld dword [esp + 0x28]
fstp dword [eax - 0x68]
fxch st(4)
fst dword [eax - 0x64]
fxch st(3)
fst dword [eax - 0x60]
fxch st(5)
fst dword [eax - 0x5c]
fxch st(6)
fst dword [eax - 0x58]
fxch st(2)
fst dword [eax - 0x4c]
fld dword [esp + 0x30]
fstp dword [eax - 0x48]
fxch st(3)
fstp dword [eax - 0x44]
fld dword [esp + 0x58]
fst dword [eax - 0x40]
fxch st(6)
fst dword [eax - 0x3c]
fxch st(2)
fst dword [eax - 0x38]
fxch st(3)
fstp dword [eax - 0x2c]
fld dword [esp + 0x28]
fst dword [eax - 0x28]
fstp dword [eax - 8]
fstp dword [eax - 0x24]
fxch st(4)
fstp dword [eax - 0x20]
fxch st(3)
fst dword [eax - 0x1c]
fxch st(3)
fst dword [eax - 0x18]
fxch st(1)
fstp dword [eax - 0xc]
cmp ecx, 4
jl 0x43fb26
inc edx
fstp st(1)
cmp edx, 4
mov dword [esp + 0x28], edx
jl 0x43fae7
fild dword [esi + 4]
xor edi, edi
fld dword [0x4d67c8]
fmul st(1), st(0)
fxch st(1)
fst dword [esp + 0x38]
fild dword [esi + 8]
fmul st(2)
fst dword [esp + 0x2c]
fld st(0)
fmul st(1)
fld st(2)
fmul st(3)
faddp st(1)
fsqrt
fild dword [esp + 0x34]
fstp dword [esp + 0x34]
fild dword [esi + 0x14]
lea esi, [esp + 0x264]
fstp dword [esp + 0x28]
jmp 0x43fcb2
fld dword [0x4d67c8]
fld dword [esp + 0x38]
fld dword [esp + 0x2c]
fxch st(2)
fxch st(3)
fxch st(1)
fxch st(2)
fxch st(1)
fld dword [esi - 4]
fsubrp st(3)
fld dword [esi]
fsubrp st(2)
fld st(5)
fucomp st(1)
fnstsw ax
test ah, 0x44
jnp 0x43fcd6
fld st(1)
fmul st(2)
fld st(3)
fmul st(4)
faddp st(1)
fsqrt
fdiv st(1)
jmp 0x43fcd8
fld st(5)
fmulp st(4)
fld dword [ebp + 0xc]
fsubrp st(4)
fxch st(3)
fst dword [esp + edi*4 + 0x1c0]
fcom st(5)
fnstsw ax
test ah, 5
jp 0x43fcf5
fstp st(0)
fld st(4)
fst dword [esp + edi*4 + 0x1c0]
mov edx, 3
fld dword [esp + 0x34]
fmul st(1)
fnstcw word [esp + 0x30]
movzx eax, word [esp + 0x30]
fmulp st(3)
fld dword [esp + 0x28]
or eax, 0xc00
fmul st(1)
mov dword [esp + 0x58], eax
lea eax, [esi - 0x20]
fmulp st(2)
fsubr st(4)
fmul dword [0x4d6b38]
fldcw word [esp + 0x58]
fistp qword [esp + 0x58]
mov ecx, dword [esp + 0x58]
shl ecx, 0x18
or ecx, 0xffffff
fldcw word [esp + 0x30]
fld st(1)
mov dword [eax + 0xc], ecx
fadd dword [eax - 4]
add eax, 0x20
sub edx, 1
fstp dword [eax - 0x24]
fld dword [eax - 0x20]
fadd st(1)
fstp dword [eax - 0x20]
jne 0x43fd47
inc edi
fstp st(1)
add esi, 0x60
fstp st(0)
cmp edi, 0x20
jl 0x43fc9a
fstp st(2)
xor ebx, ebx
fstp st(0)
lea edi, [esp + 0x244]
fstp st(0)
fld dword [edi - 4]
xor eax, eax
mov dword [esp + 0x3c], eax
fst dword [esp + 0x3c]
fld dword [edi]
mov dword [esp + 0x40], eax
fstp dword [esp + 0x40]
lea edx, [esp + 0x1b8]
fld dword [edi + 4]
mov dword [esp + 0x44], eax
push edx
fstp dword [esp + 0x48]
sub esp, 8
fstp qword [esp]
mov dword [esp + 0x54], eax
call fcn.00483dc0
fstp st(0)
fld dword [esp + 0x4c]
add esp, 0xc
lea eax, [esp + 0x1b0]
push eax
sub esp, 8
fstp qword [esp]
call fcn.00483dc0
fstp st(0)
mov eax, 0xaaaaaaab
fld qword [esp + 0x1c4]
mul ebx
fld dword [0x4d67c8]
fsub st(1), st(0)
fxch st(1)
fstp dword [esp + 0x48]
fsubr qword [esp + 0x1bc]
mov esi, edx
fstp dword [esp + 0x4c]
shr esi, 1
lea eax, [esi + esi*2]
shl eax, 5
fld dword [esp + eax + 0x24c]
fst dword [esp + 0x40]
fld dword [esp + eax + 0x250]
fst dword [esp + 0x44]
fldz
fst dword [esp + 0xac]
fst dword [esp + 0xa8]
fst dword [esp + 0xa4]
fst dword [esp + 0xa0]
fst dword [esp + 0x98]
fst dword [esp + 0x94]
fst dword [esp + 0x90]
fst dword [esp + 0x8c]
fst dword [esp + 0x84]
fst dword [esp + 0x80]
fst dword [esp + 0x7c]
fst dword [esp + 0x78]
fld1
fst dword [esp + 0xb0]
fst dword [esp + 0x9c]
fst dword [esp + 0x88]
fst dword [esp + 0x74]
fst dword [esp + 0xf0]
fst dword [esp + 0xdc]
fst dword [esp + 0xc8]
fstp dword [esp + 0xb4]
fst dword [esp + 0xec]
fst dword [esp + 0xe8]
fst dword [esp + 0xe4]
fst dword [esp + 0xe0]
fst dword [esp + 0xd8]
fst dword [esp + 0xd4]
fst dword [esp + 0xd0]
fst dword [esp + 0xcc]
fst dword [esp + 0xc4]
fst dword [esp + 0xc0]
fst dword [esp + 0xbc]
fst dword [esp + 0xb8]
fstp dword [esp + 8]
fchs
fstp dword [esp + 4]
fchs
fstp dword [esp]
lea ecx, [esp + 0xb4]
push ecx
call fcn.004689b6
fld dword [esp + 0x44]
sub esp, 0xc
fstp dword [esp + 8]
lea edx, [esp + 0x74]
fld dword [esp + 0x4c]
fstp dword [esp + 4]
fld dword [esp + 0x48]
fstp dword [esp]
push edx
call fcn.004689b6
lea eax, [esp + 0xa8]
push eax
lea ecx, [esp + 0x6c]
push ecx
mov edx, ecx
push edx
call fcn.00468877
fld dword [esp + 0x98]
fstp dword [esp + 0x3c]
lea esi, [esp + esi*4 + 0x1c0]
fld dword [esp + 0x9c]
sub esp, 0xc
fstp dword [esp + 0x4c]
lea eax, [esp + 0x17c]
fld dword [esp + 0xac]
fstp dword [esp + 0x50]
fld dword [esi]
fmul dword [0x4d6b34]
fstp dword [esp + 0x38]
fldz
fst dword [esp + 0x1b4]
fst dword [esp + 0x1b0]
fst dword [esp + 0x1ac]
fst dword [esp + 0x1a8]
fst dword [esp + 0x1a0]
fst dword [esp + 0x19c]
fst dword [esp + 0x198]
fst dword [esp + 0x194]
fst dword [esp + 0x18c]
fst dword [esp + 0x188]
fst dword [esp + 0x184]
fstp dword [esp + 0x180]
fld1
fst dword [esp + 0x1b8]
fst dword [esp + 0x1a4]
fst dword [esp + 0x190]
fst dword [esp + 0x17c]
fld dword [esi]
fmul dword [0x4d69b8]
fadd st(1)
fxch st(1)
fstp dword [esp + 8]
fst dword [esp + 4]
fstp dword [esp]
push eax
call fcn.0046895a
fldz
fst dword [esp + 0x128]
mov eax, 0xaaaaaaab
fst dword [esp + 0x124]
mul ebx
fst dword [esp + 0x120]
fst dword [esp + 0x11c]
fst dword [esp + 0x114]
fst dword [esp + 0x110]
fst dword [esp + 0x10c]
fst dword [esp + 0x108]
fst dword [esp + 0x100]
fst dword [esp + 0xfc]
fst dword [esp + 0xf8]
shr edx, 2
fst dword [esp + 0xf4]
lea ecx, [edx + edx*2]
fld1
fst dword [esp + 0x12c]
fst dword [esp + 0x118]
fst dword [esp + 0x104]
fstp dword [esp + 0xf0]
fld dword [esp + 0x2c]
add ecx, ecx
mov edx, ebx
sub edx, ecx
sub esp, 0xc
cmp edx, 3
jge 0x4400cf
fchs
lea eax, [esp + 0xfc]
fmul dword [0x4d6b30]
fstp dword [esp + 8]
fst dword [esp + 4]
fstp dword [esp]
push eax
jmp 0x4400e8
fmul dword [0x4d6b30]
lea ecx, [esp + 0xfc]
fstp dword [esp + 8]
fst dword [esp + 4]
fstp dword [esp]
push ecx
call fcn.00468bcd
fldz
fst dword [esp + 0x168]
lea edx, [esp + 0xf0]
fst dword [esp + 0x164]
push edx
fst dword [esp + 0x164]
lea eax, [esp + 0x174]
fst dword [esp + 0x160]
push eax
fst dword [esp + 0x15c]
lea ecx, [esp + 0x138]
fst dword [esp + 0x158]
push ecx
fst dword [esp + 0x158]
fst dword [esp + 0x154]
fst dword [esp + 0x14c]
fst dword [esp + 0x148]
fst dword [esp + 0x144]
fstp dword [esp + 0x140]
fld1
fst dword [esp + 0x178]
fst dword [esp + 0x164]
fst dword [esp + 0x150]
fstp dword [esp + 0x13c]
call fcn.00468877
lea edx, [esp + 0x130]
push edx
lea eax, [esp + 0x40]
push eax
mov ecx, eax
push ecx
call fcn.004687de
fldz
fst dword [esp + 0xa0]
sub esp, 0xc
fst dword [esp + 0xa8]
lea edx, [esp + 0xb4]
fst dword [esp + 0xa4]
fst dword [esp + 0xa0]
fst dword [esp + 0x98]
fst dword [esp + 0x94]
fst dword [esp + 0x90]
fst dword [esp + 0x8c]
fst dword [esp + 0x84]
fst dword [esp + 0x80]
fst dword [esp + 0x7c]
fst dword [esp + 0x78]
fld1
fst dword [esp + 0xb0]
fst dword [esp + 0x9c]
fst dword [esp + 0x88]
fst dword [esp + 0x74]
fst dword [esp + 0xf0]
fst dword [esp + 0xdc]
fst dword [esp + 0xc8]
fstp dword [esp + 0xb4]
fst dword [esp + 0xec]
fst dword [esp + 0xe8]
fst dword [esp + 0xe4]
fst dword [esp + 0xe0]
fst dword [esp + 0xd8]
fst dword [esp + 0xd4]
fst dword [esp + 0xd0]
fst dword [esp + 0xcc]
fst dword [esp + 0xc4]
fst dword [esp + 0xc0]
fst dword [esp + 0xbc]
fst dword [esp + 0xb8]
fstp dword [esp + 8]
fld dword [esp + 0x44]
fstp dword [esp + 4]
fld dword [esp + 0x40]
fstp dword [esp]
push edx
call fcn.004689b6
fld dword [esp + 0x44]
sub esp, 0xc
fstp dword [esp + 8]
fld dword [esp + 0x4c]
fstp dword [esp + 4]
fld dword [esp + 0x48]
lea eax, [esp + 0x74]
fstp dword [esp]
push eax
call fcn.004689b6
lea ecx, [esp + 0xa8]
push ecx
lea edx, [esp + 0x6c]
push edx
mov eax, edx
push eax
call fcn.00468877
fld dword [esp + 0x98]
fstp dword [edi - 4]
inc ebx
fld dword [esp + 0x9c]
add edi, 0x20
cmp ebx, 0x60
fstp dword [edi - 0x20]
fld dword [esp + 0xa0]
fstp dword [edi - 0x1c]
jl 0x43fd82
mov edi, dword [ebp + 8]
mov eax, dword [edi + 0x10]
imul eax, dword [esp + 0x50]
mov ebx, dword [esp + 0x64]
add eax, ebx
cmp eax, dword [edi + 0xc]
jge 0x440317
mov ecx, dword [edi + 0x18]
test ecx, ecx
je 0x440317
mov eax, dword [ecx + eax*4]
jmp 0x440319
xor eax, eax
mov esi, dword [esp + 0xe8]
mov ecx, dword [esi]
mov edx, dword [ecx + 0x8c]
push eax
push 0
push esi
call edx
mov eax, dword [esi]
mov edx, dword [eax + 0x64]
push 0
push 0x60
lea ecx, [esp + 0x248]
push ecx
push 0x1c4
push 4
push esi
call edx
mov eax, dword [esi]
mov ecx, dword [eax + 0x8c]
push 0
push 0
push esi
call ecx
fld dword [0x4d69b8]
fld dword [0x4d6b3c]
mov eax, dword [edi + 0x10]
fldz
add dword [esp + 0x54], 0x100
fld1
inc ebx
cmp ebx, eax
fxch st(2)
fxch st(3)
mov dword [esp + 0x64], ebx
mov dword [esp + 0x34], eax
fxch st(2)
mov esi, edi
jl 0x43fad0
mov eax, dword [esp + 0x50]
add dword [esp + 0x4c], 0x100
inc eax
cmp eax, dword [esi + 0x14]
mov dword [esp + 0x50], eax
jl 0x43faa5
fstp st(1)
fstp st(0)
fstp st(1)
fstp st(0)
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8